Das Transmission Control Protocol, welches im Schichtenmodell direkt über dem Internet Protocol liegt, sorgt für den verlustfreien Datentransfer. So stellt es z. B. durch Prüfsummenbildung und andere Kontrollmechanismen sicher, dass Dateien, die zur schnelleren Übertragung gesplittet wurden, korrekt und vollständig beim Empfänger ankommen. Es bietet also den Komponenten der Anwendungsschicht einen zuverlässigen und verbindungsorientierten Dienst, in dem es eine bidirektionale Verbindung zwischen den Partnern herstellt.
Der Verbindungsaufbau erfolgt in Analogie zum herkömmlichen Telefonsystem. Ein Anrufer sendet einen sogenannten Request an einen Server. Dieser sendet eine Reply an den Anrufer zurück, woraufhin der Datenaustausch stattfindet. Dabei wird die Verbindung so lange aufrecht erhalten, bis sie explizit beendet wird.
Der hohe Aufwand für dieses Sicherungsverfahren verursacht eine relativ starke Netzbelastung, so dass TCP für Anwendungen wie dem Login auf fremden Rechnern oder dem Dateitransfer, welche eine hohe Übertragungszuverlässigkeit benötigen, benutzt wird. Als wichtigste Alternative zu TCP wäre UDP zu nennen.