TCP ist ein Netzwerkprotokoll, Teil der Internetprotokollfamilie und die Grundlage des Internets. Es definiert wie Daten zwischen Netzwerkkomponenten ausgetauscht werden. Im Gegensatz zu UDP ist TCP ein zuverlässiges und verbindungsorientiertes Transportprotokoll.

TCP stellt eine Verbindung zwischen zwei Punkten her. Sobald die Verbindung steht kann in beide Richtungen kommuniziert werden.

Vorteil dieses Protokolls ist, dass Datenverluste automatisch erkannt und behoben werden und sogar Netzüberlastungen umgehen werden.

Der Verbindungsaufbau nach dem Drei-Wege-Handschlag läuft folgendermaßen ab(synchronize & acknowledgement):

• Der Client sendet einen Verbindungswunsch zum Server(SYN-Bit)

• Nach Erhalt bestätigt der Server und sendet einen Verbindungswunsch(ACK-Bit + SYN-Bit)

• Der Client bestätigt(ACK-Bit) und der Datenaustausch kann erfolgen

Von 300px-Tcp-handshake.png: ???derivative work: Snubcube (talk) – 300px-Tcp-handshake.png (Imagen cogida de la wikipedia italiana.), CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=11680600

Der Verbindungsabbau erfolgt ähnlich(finish & acknowledgement):

• Einer der Gegenstellen sendet einen Verbindungsabbauwunsch(FIN-Bit)

• Die Gegenstelle bestätigt den Abbauwunsch(ACK-Bit) und sendet ebenfalls einen Verbindungsabbauwunsch(FIN-Bit)

• Diese wird ebenfalls bestätigt(ACK-Bit)

Von D235, SVG: Marlus_Gancher – drawn based on Datei:Tcp-teardown.png (bitmap version), GFDL, https://commons.wikimedia.org/w/index.php?curid=12877624