TCP (Transmission Control Protocol) ist ein verbindungsorientiertes, zuverlässiges Protokoll, das für die Kommunikation über ein Netzwerk verwendet wird. Zu den wichtigsten Eigenschaften gehören:
1. Verbindungsorientiert: Bevor die Datenübertragung beginnt, stellt TCP eine Verbindung zwischen Absender und Empfänger her. Dies beinhaltet einen Drei-Wege-Handschlag, um sicherzustellen, dass beide Enden fertig sind und sich auf Parameter wie die Fenstergröße einigen. Dies steht im Gegensatz zu UDP (User Datagram Protocol), das verbindungslos ist.
2. Zuverlässig: TCP garantiert eine zuverlässige Datenbereitstellung. Dies bedeutet, dass alle gesendeten Daten in der richtigen Reihenfolge und ohne Fehler am Ziel ankommen. Es erreicht dies durch:
* Bestätigung (ACKs): Der Empfänger sendet ACKs, um den Erhalt von Datenpaketen zu bestätigen. Wenn ein ACK nicht innerhalb eines bestimmten Zeitrahmens empfangen wird, überträgt der Absender das Paket.
* Sequenznummern: Jedem Paket wird eine Sequenznummer zugewiesen, sodass der Empfänger Pakete neu ordnet, wenn sie außerhalb der Reihenfolge ankommen und fehlende Pakete erkennen.
* Prüfsummen: TCP verwendet Prüfsummen, um Fehler in Daten während der Übertragung zu erkennen. Verfälschte Pakete werden weggeworfen und erneut übertragen.
* Flussregelung: TCP verwendet einen Schiebefenstermechanismus, um die Datenübertragungsrate zu steuern, um zu verhindern, dass der Absender den Empfänger überwältigt. Der Empfänger wirbt für die Datenmenge, die er pufferen kann, und der Absender passt seine Übertragungsrate entsprechend an.
* Überlastungskontrolle: TCP umfasst Algorithmen (wie langsame Start, Überlastung, schneller Wiederaufnahme und schnelle Wiederherstellung), um die Netzwerküberlastung zu verwalten und die Überlastung der Netzwerke zu verhindern. Diese Algorithmen passen die Übertragungsrate dynamisch anhand der Netzwerkbedingungen an.
3. Bestellte Lieferung: TCP garantiert, dass Datenpakete in der gleichen Reihenfolge ankommen, die sie gesendet haben. Die Sequenznummern spielen eine entscheidende Rolle bei der Erreichung dieser.
4. Full-Duplex-Kommunikation: Sowohl der Absender als auch der Empfänger können Daten gleichzeitig übertragen.
5. Schwergewicht: Aufgrund seiner Merkmale wie Fehlererkennung und Korrektur, Verbindungsaufbau, Durchfluss- und Stauungsregelung hat TCP einen höheren Overhead als UDP. Dies bedeutet, dass es mehr Systemressourcen verbraucht und langsamer ist als UDP.
6. Schwerere Verarbeitung: Aufgrund der zusätzlichen Schritte, die bei der Herstellung von Verbindungen, der Verwaltung von Bestätigungen und der Fehlerprüfung beteiligt sind, erfordert TCP mehr Verarbeitungsleistung vom Absender und Empfänger.
Zusammenfassend bietet TCP einen zuverlässigen und geordneten Datenablieferungsmechanismus, jedoch auf Kosten erhöhter Gemeinkosten- und Verarbeitungsanforderungen. Es ist für Anwendungen geeignet, bei denen eine zuverlässige Datenübertragung kritisch ist, z. B. Webbrowsing, E -Mail und Dateiübertragung. UDP hingegen ist effizienter, aber weniger zuverlässig, was es besser für Anwendungen wie Streaming von Videos oder Online -Spielen eignet, bei denen ein gewisser Datenverlust akzeptabel ist.