Skip to main content

Keep Alive

Unter Keep Alive (auch KA genannt) handelt es sich um eine Nachricht, die von einem Gerät an ein anderes Gerät gesendet wird, um zu überprüfen, ob die Verbindung zwischen beiden funktioniert oder um zu verhindern, dass die Verbindung unterbrochen wird.

Beschreibung von Keep Alive

Ein Signal von Keep Alive wird sehr häufig in vordefinierten Intervallen gesendet und spielt im Internet eine bedeutsame Rolle. Wird nach dem Signal-Versand keine Antwort empfangen, nimmt das Programm an, dass es sich um eine Verbindungs-Unterbrechung handelt. Somit werden alle weiteren Daten über einen anderweitigen Pfad versendet. Dies geschieht solange, bis wieder eine Verbindung hergestellt werden konnte.

Da der einzige Zweck darin besteht, nicht funktionierende Links zu finden oder Verbindungen anzugeben, die beibehalten werden sollen, sind Keep Alive-Nachrichten in der Regel kurz und beanspruchen nicht sehr viel Bandbreite. Ihr genaues Format und ihre Nutzungsbedingungen hängen jedoch vom Kommunikationsprotokoll ab.

TCP-Keep Alives

TCP-Keep Alives (Transmission Control Protocol) sind eine optionale Funktion und müssen, falls enthalten, standardmäßig deaktiviert sein. Das KA-Paket enthält keine Daten. In einem Ethernet-Netzwerk führt dies zu Frames mit einer Mindestgröße (64 Byte). Es sind drei Parameter vorhanden, die sich auf KAs beziehen:

  • Die KA-Zeit ist die Dauer zwischen zwei KA-Übertragungen im Leerlauf. Die TCP-Aufbewahrungsdauer muss konfigurierbar sein und ist standardmäßig auf mindestens zwei Stunden eingestellt.
  • Das KA-Intervall ist die Dauer zwischen zwei aufeinanderfolgenden KA-Neuübertragungen, wenn keine Bestätigung für die vorherige KA-Übertragung empfangen wird.
  • Der KA-Wiederholungsversuch ist die Anzahl der erneuten Übertragungen, die ausgeführt werden müssen, bevor erklärt wird, dass das Remote-Ende nicht verfügbar ist.
TCP-KA Pakete können auch für die Prüfung eingesetzt werden, ob die gewünschte Verbindung noch Gültigkeit hat. Hier müssen jedoch zwei Hosts über TCP/IP verbunden sein (ein Netzwerk). Die meisten Hosts, die TCP unterstützen, unterstützen auch TCP-Keep Alives. Jeder Host (oder Peer) sendet regelmäßig ein TCP-Paket an seinen Peer, der eine Antwort anfordert. Wenn eine bestimmte Anzahl von Keep Alives gesendet wird und keine Antwort (ACK) empfangen wird, beendet der sendende Host die Verbindung von seinem Ende. Wenn eine Verbindung aufgrund eines TCP-KA Timeouts beendet wurde und der andere Host schließlich ein Paket für die alte Verbindung sendet, sendet der Host, der die Verbindung beendet hat, ein Paket mit gesetztem RST-Flag, um dem anderen Host zu signalisieren, dass die alte Verbindung nicht mehr aktiv ist. Dadurch wird der andere Host gezwungen, das Ende der Verbindung zu beenden, damit eine neue Verbindung hergestellt werden kann.

In der Regel werden TCP Keep Alives bei einer inaktiven TCP-Verbindung alle 45 oder 60 Sekunden gesendet. Die Verbindung wird getrennt, nachdem drei aufeinanderfolgende ACKs übersehen wurden. Dies variiert je nach Host. Beispielsweise senden Windows-PCs standardmäßig das erste TCP Keep Alive Paket nach 7.200.000 ms (2 Stunden) und anschließend 5 Keep Alives in Intervallen von 1.000 ms. Die Verbindung wird getrennt, wenn auf keines der KA-Pakete eine Antwort erfolgt.

Keep Alives auf höheren Schichten

Da TCP-KA optional ist, implementieren verschiedene Protokolle (z. B. SMB und TLS) zusätzlich zu TCP ihre eigene KA-Funktion. Es ist auch üblich für Protokolle, die eine Sitzung über ein verbindungsloses Protokoll verwalten, z. B. OpenVPN über UDP, ihre eigene KA-Funktion zu implementieren.


Sie haben noch Fragen?

Kontaktieren Sie uns


Weitere Inhalte