TCP (Transmission Control Protocol) en UDP (User Datagram Protocol) zijn twee fundamentele transportlaagprotocollen in computernetwerken, die elk verschillende doelen en kenmerken dienen:
TCP is een verbindingsgericht protocol dat bovenop de IP-laag (Internet Protocol) werkt. Het zorgt voor een betrouwbare en geordende communicatie tussen twee eindpunten, waardoor wordt gegarandeerd dat gegevens nauwkeurig en in de juiste volgorde worden verzonden. TCP zorgt voor foutdetectie en -correctie via mechanismen zoals bevestiging van ontvangen gegevens, hertransmissie van verloren pakketten en stroomcontrole om de gegevensoverdrachtsnelheden te beheren. Het wordt veel gebruikt voor toepassingen die een gegarandeerde levering van gegevens vereisen, zoals surfen op het web, e-mail, bestandsoverdracht en beheer op afstand.
TCP/IP (Transmission Control Protocol/Internet Protocol) is een reeks protocollen die TCP als transportlaagprotocol en IP als netwerklaagprotocol omvat. Samen vormen TCP en IP de basis van de communicatie op internet. IP is verantwoordelijk voor het adresseren en routeren van gegevenspakketten over netwerken, terwijl TCP zorgt voor een betrouwbare gegevenslevering tussen applicaties die op verschillende hosts draaien. TCP/IP maakt end-to-end-communicatie tussen diverse netwerken mogelijk, waardoor de naadloze uitwisseling van gegevens wereldwijd wordt vergemakkelijkt.
UDP daarentegen is een verbindingsloos protocol dat bovenop IP werkt. Het biedt een lichtgewicht en snelle gegevensoverdracht zonder de betrouwbaarheid en bestelgaranties van TCP. UDP brengt geen verbinding tot stand voordat gegevens worden verzonden en voert geen foutherstel of hertransmissie van verloren pakketten uit. Het wordt vaak gebruikt voor realtime toepassingen zoals VoIP, videostreaming, online gaming en DNS-query’s, waarbij snelheid en verminderde latentie prioriteit krijgen boven gegevensintegriteit.
De TCP-laag verwijst naar de transportlaag in de TCP/IP-protocolstack. Het is verantwoordelijk voor het segmenteren van gegevens die worden ontvangen van applicaties uit de bovenste laag in kleinere eenheden (segmenten), het toevoegen van volgnummers voor geordende levering en het garanderen van betrouwbare gegevensoverdracht door middel van foutdetectie, hertransmissie en stroomcontrolemechanismen. De TCP-laag op de transportlaag bevindt zich boven de netwerklaag (IP) en onder de applicatielaag, waardoor end-to-end communicatie mogelijk wordt tussen applicaties die op verschillende hosts via een netwerk draaien.