TCP (Transmission Control Protocol) implementeert een betrouwbare, geordende en verbindingsgerichte bytestream-service tussen applicaties die op verschillende hosts draaien. Dit betekent dat het het volgende biedt:
* Betrouwbare gegevenslevering: TCP garandeert dat alle verzonden gegevens zonder verlies, duplicatie of corruptie op de bestemming aankomen. Het maakt gebruik van bevestigingen (ACK's) en hertransmissies om dit te bereiken.
* Bestelde levering van gegevens: Gegevens arriveren in dezelfde volgorde waarin ze zijn verzonden. TCP nummert elk gegevenssegment en herschikt ze indien nodig bij de ontvanger.
* Verbindingsgericht: Voordat de gegevensoverdracht kan beginnen, brengt TCP een verbinding tot stand tussen de zender en de ontvanger. Dit omvat een handdruk in drie richtingen. De verbinding blijft actief totdat deze expliciet wordt gesloten. Dit biedt een stabiel, speciaal communicatiekanaal.
* Full-duplexcommunicatie: Gegevens kunnen tegelijkertijd in beide richtingen stromen.
* Stroomcontrole: TCP voorkomt dat een snelle afzender een langzame ontvanger overweldigt. Het maakt gebruik van een schuifraammechanisme om de snelheid van de gegevensoverdracht te regelen.
* Congestiebeheersing: TCP helpt bij het beheren van netwerkcongestie door de transmissiesnelheid aan te passen op basis van de netwerkomstandigheden. Algoritmen zoals Slow Start, Congestion Prevention en Fast Retransmit worden gebruikt om netwerkoverbelasting te voorkomen.
Kortom, TCP biedt een robuuste en betrouwbare manier voor toepassingen om via een netwerk te communiceren, waarbij veel van de complexiteiten van gegevensoverdracht automatisch worden afgehandeld. Het is ideaal voor toepassingen waarbij betrouwbaarheid van het grootste belang is, zoals surfen op het web, e-mail en bestandsoverdracht. |