Definition und Zweck:
Handshake ist ein Kommunikationsprotokoll oder ein Mechanismus, der von zwei oder mehr Geräten oder Softwarekomponenten verwendet wird, um eine Verbindung aufzubauen, Parameter auszutauschen und ihre Bereitschaft für die Datenübertragung zu bestätigen. Es ist im Wesentlichen ein „Begrüßungsritual“, das sicherstellt, dass beide Seiten bereit sind und sich auf die Regeln der Kommunikation einigen, bevor die eigentlichen Daten übertragen werden.
Das Hauptziel des Handshakes ist es, einen zuverlässigen und geordneten Datenaustausch zu gewährleisten und Datenverlust oder Fehlinterpretationen zu vermeiden.
Ablauf (Beispiel):
Ein einfacher Handshake könnte wie folgt ablaufen:
- Sender: „Ich möchte Daten senden.“
- Empfänger: „Ich bin bereit, Daten zu empfangen.“
- Sender: „Hier sind die Daten.“
- Empfänger: „Ich habe die Daten erhalten.“
Je nach Protokoll können auch komplexere Parameter wie Baudrate, Datenformat, Fehlerprüfmechanismen oder Authentifizierungsinformationen ausgetauscht werden.
Relevanz in der Automatisierungstechnik:
Handshakes sind in der industriellen Kommunikation weit verbreitet, um die Zuverlässigkeit von Verbindungen zu gewährleisten:
- Serielle Schnittstellen (RS232/RS485): Bei der seriellen Kommunikation werden oft Hardware-Handshake-Leitungen (RTS/CTS) oder Software-Handshake-Protokolle (XON/XOFF) verwendet, um den Datenfluss zu steuern und Pufferüberläufe zu verhindern.
- Feldbusse und Industrial Ethernet: Obwohl moderne Busse oft sehr schnell sind und auf komplexeren Protokollen basieren, finden Handshake-Mechanismen auf verschiedenen Ebenen statt, um die Verbindungsaufnahme und den Datenaustausch zwischen Master und Slave zu gewährleisten.
- Geräte-zu-Gerät-Kommunikation: Wenn eine SPS mit einem Drucker, einem Barcode-Leser oder einem Roboter kommuniziert, wird oft ein Handshake-Protokoll verwendet, um die Datenübertragung zu synchronisieren.
- Authentifizierung: Bei der Aufnahme einer sicheren Verbindung (z.B. VPN, TLS) findet ein kryptografischer Handshake statt, um die Identität der Kommunikationspartner zu überprüfen und eine verschlüsselte Verbindung aufzubauen.
Ein fehlender oder fehlerhafter Handshake ist eine häufige Ursache für Kommunikationsprobleme in Automatisierungssystemen. Die Diagnose konzentriert sich dann oft auf die Überprüfung der korrekten Handshake-Einstellungen.
→ Siehe auch: Handshaking, Kommunikation, Serielle Schnittstelle, Fehlererkennung, Authentifizierung

