IP ist das Basisprotocol, besitzt aber keine Fehlerüberprüfung. Pakete werden zwar verschickt, aber ob die Daten wirklich beim Empfänger ankommen, ist dem IP-Protokoll vereinfacht gesagt egal.
Für die Überwachung und Zuverlässigkeit bei der Datenübertragung ist TCP zuständig. TCP beinhaltet Mechanismen zur Überprüfung, ob die Daten wirklich beim Empfänger angekommen sind. Ist das nicht der Fall, wird das Datenpaket erneut gesendet.
Bevor TCP Daten ist Netz sendet, werden die Daten in kleinere Segmente zerlegt. Die Standardgröße eines Segments beträgt dabei 536 Byte + 40 Byte an Header. Die tatsächliche Segmentgröße wird jedoch zwischen den Stationen ausgehandelt. Jedes Segment des Datenpakets erhält zur Identifizierung eine sogenannte Segment-Nummer. Da es im Netzwerk und speziell im Internet verschiedene Wege vom Sender zum Empfänger gibt, kommen die einzelnen Segmente natürlich in unterschiedlicher Reihenfolge beim Empfänger an. Anhand der Segment-Nummer und weiterer Informationen kann TCP beim Ziel-Host erkennen, in welcher Reihenfolge die Segmente wieder zusammengesetzt werden müssen und ob das Datenpaket vollständig ist. Fehlt ein Segment, wird angefordert, daß die Paketsequenz seit der letzten Bestätigung erneut übertragen wird