Eine offene TCP-Verbindung ist ein logischer Zustand. Dies bedeutet nicht, dass diese Daten immer hin und her gesendet werden. Nach dem ersten Drei-Wege-Handshake sind Sie in den Status "Verbunden" eingetreten. Sie sind in diesem Zustand, bis entweder eine 3-Wege-Trennung auftritt oder ein Keep-Alive-Fehler auftritt.
Während der Lebensdauer der Verbindung können Ressourcen vom zugrunde liegenden "physischen" Medium eingerichtet werden, um Datenübertragungen für diese Verbindung durchzuführen. Bei einer Kabelverbindung handelt es sich um die Übertragung von Ethernet-Frames. Im Fall einer 3G / 4G-Funkverbindung erfolgt dies, indem nach Bedarf Verbindungen mit den Protokollen der niedrigeren Ebene hergestellt werden.
Während der gesamten Verbindungsdauer gibt es keine physische zugrunde liegende Datenverbindung. Stattdessen ruht die Wartezeit, bis ein Peer in der TCP-Verbindung Daten senden muss.
Ein weiteres Problem ist, dass TCP ack- basiert ist. TCP-Peers können sich gegenseitig auf dem Laufenden halten, was definitiv empfangen wurde. Bei einem Fehler wird TCP erneut übertragen. Dies funktioniert gut für ziemlich zuverlässige physische Verbindungen, neigt jedoch dazu, bei sehr lauten / unterbrochenen Verbindungen auseinanderzufallen, wie bei Ihren drahtlosen Verbindungen. Wie Sie sich vorstellen können, treten in diesen Umgebungen Bestätigungen / Neuübertragungen sehr häufig auf.
Daher unternimmt das zugrunde liegende WLAN-Protokoll normalerweise alles, um die Notwendigkeit von TCP-Neuübertragungen zu verringern. Zum Beispiel sind viele Fehlerprüfungen in die drahtlose Schicht integriert. Kollegen im Mobilfunkbereich (Basisstation / Telefon) verwenden ebenfalls ein NAK- basiertes Protokoll, um der anderen Seite mitzuteilen, wenn sie etwas nicht erhalten haben. Wobei nak basierend reduziert den Aufwand für Fehler bei der Überprüfung (nehmen wir an, alles in Ordnung , wenn die andere Seite sagt , es ist nicht). Es hilft auch, Fehler vorher zu behebenSie sprudeln in die TCP-Ebene und vermeiden so viele TCP-Thrashs, die erneut übertragen werden sollen. Darüber hinaus wird der Umfang von erneuten Übertragungen an drahtlose Peers verringert. Das Telefon muss nicht erneut den Server im Internet nach dem Paket fragen, sondern nur die Basisstation über die drahtlose Verbindung.