Persistente HTTP-Verbindung, HTTP Keepalive, F5 OneConnect

Persistente HTTP-Verbindung

Eine persistente HTTP-Verbindung, auch bekannt als HTTP-Keep-Alive, verwendet in einer TCP Verbindung mehrere HTTP-Anfragen / Antworten.
Unter HTTP 1.0 gibt es keine offizielle Spezifikation wie keepalive funktioniert.  Wenn der Browser keep-alive unterstützt, fügt er einen zusätzlichen Header hinzu:

Connection: Keep-Alive

Nachdem der Server diese Anforderung empfangen hatte, erzeugt er eine Antwort und fügt auch ein Headerfeld in die Antwort hinzu :

Connection: Keep-Alive

Anschließend wird die TCP Verbindung nicht beendet sondern bleibt offen und wandert in einen Connecion Pool. Wenn der Client eine weitere Anforderung sendet, verwendet er die gleiche Verbindung. Dies wird fortgesetzt bis entweder der Client oder der Server entscheiden, dass das Session beendet ist und einer von ihnen die Verbindung beendet.

In HTTP 1.1 gelten alle Verbindungen als persistent.

Die persistenten HTTP-Verbindungen verwenden keine getrennten Keepalive-Nachrichten, sie erlauben lediglich mehrere Anfragen in einer einzigen TCP Verbindung. Standard Timeouts sorgen für das Schliessen der TCP Verbindungen.

Diese Technologie wir auch in Loadbalancern genutzt, um die Anzahl der Verbindungen vom LB zum Server zu begrenzen. Es hat sich herausgestellt, dass die Server schneller Antworten, wenn sie nicht für jeden Request zuerst eine TCP Verbindung aufbauen müssen. Die Loadbalancer nutzen also eine TCP Verbindung auch weiter, indem sie nicht abgebaut sondern in einem Reuse Pool zur Weiterverwendung verwaltet wird.

noch zu klären:
Um OneConnect nutzen zu können muss der Loadbalancer die Verbindung einsehen können, eine SSL Verbindung, die erst auf dem Server terminiert wird, kann mit dem OneConnect Feature nicht behandelt werden.

http://www.f5.com/pdf/deployment-guides/oneconnect-tuning-dg.pdf 

http://en.wikipedia.org/wiki/HTTP_persistent_connection

http://devcentral.f5.com/Tutorials/TechTips/tabid/63/articleType/ArticleView/articleId/262/Persisting-SSL-Connections.aspx