U hebt waarschijnlijk verwijzingen naar TCP en UDP gezien bij het instellen van port-forwarding op een router of bij het configureren van firewallsoftware. Deze twee protocollen worden gebruikt voor verschillende soorten gegevens.
TCP / IP is een reeks protocollen die door apparaten worden gebruikt om via internet en de meeste lokale netwerken te communiceren. Het is genoemd naar twee van zijn oorspronkelijke protocollen: het Transmission Control Protocol (TCP) en het Internet Protocol (IP). TCP biedt apps een manier om een geordende en op fouten gecontroleerde stroom informatiepakketten over het netwerk te leveren (en te ontvangen). Het User Datagram Protocol (UDP) wordt door apps gebruikt om een snellere informatiestroom te leveren door foutcontrole overbodig te maken. Wanneer u bepaalde netwerkhardware of -software configureert, moet u wellicht het verschil weten.
Wat ze gemeen hebben
VERWANT: Hoe u uw privé- en openbare IP-adressen kunt vinden
Zowel TCP als UDP zijn protocollen die worden gebruikt voor het verzenden van gegevensbits, ook wel pakketten genoemd, via internet. Beide protocollen bouwen voort op het IP-protocol. Met andere woorden, of u nu een pakket verzendt via TCP of UDP, dat pakket wordt naar een IP adres . Deze pakketten worden op dezelfde manier behandeld, aangezien ze van uw computer naar tussenliggende routers en naar de bestemming worden doorgestuurd.
TCP en UDP zijn niet de enige protocollen die naast IP werken. Ze worden echter het meest gebruikt.
Hoe TCP werkt
TCP is het meest gebruikte protocol op internet.
Wanneer u een webpagina in uw browser opvraagt, verzendt uw computer TCP-pakketten naar het adres van de webserver, met het verzoek de webpagina naar u terug te sturen. De webserver reageert door een stroom TCP-pakketten te verzenden, die uw webbrowser samenvoegt om de webpagina te vormen. Wanneer u op een link klikt, u aanmeldt, een opmerking plaatst of iets anders doet, stuurt uw webbrowser TCP-pakketten naar de server en de server stuurt TCP-pakketten terug.
Bij TCP draait alles om betrouwbaarheid: pakketten die met TCP worden verzonden, worden gevolgd, zodat er tijdens de overdracht geen gegevens verloren gaan of beschadigd raken. Dit is de reden waarom het downloaden van bestanden niet beschadigd raakt, zelfs niet als er netwerkproblemen zijn. Als de ontvanger volledig offline is, geeft uw computer het natuurlijk op en ziet u een foutmelding dat hij niet kan communiceren met de externe host.
TCP bereikt dit op twee manieren. Ten eerste bestelt het pakketten door ze te nummeren. Ten tweede controleert het op fouten door de ontvanger een antwoord terug te laten sturen naar de afzender met de mededeling dat hij het bericht heeft ontvangen. Als de afzender geen correct antwoord krijgt, kan deze de pakketten opnieuw verzenden om ervoor te zorgen dat de ontvanger ze correct ontvangt.
VERWANT: Inzicht in Process Explorer
Procesverkenner en andere systeemhulpprogramma's kunnen het type verbindingen weergeven dat een proces maakt. Hier kunnen we de Chrome-browser zien met open TCP-verbindingen met verschillende webservers.
Hoe UDP werkt
VERWANT: Hoe latentie zelfs snelle internetverbindingen traag kan maken
Het UDP-protocol werkt op dezelfde manier als TCP, maar het gooit alle foutcontroles weg. Alle heen-en-weer communicatie introduceren latentie , dingen vertragen.
Wanneer een app UDP gebruikt, worden pakketten gewoon naar de ontvanger gestuurd. De afzender wacht niet om er zeker van te zijn dat de ontvanger het pakket heeft ontvangen; hij gaat gewoon door met het verzenden van de volgende pakketten. Als de ontvanger hier en daar een paar UDP-pakketten mist, zijn ze gewoon verloren - de afzender zal ze niet opnieuw verzenden. Door al deze overhead te verliezen, kunnen de apparaten sneller communiceren.
UDP wordt gebruikt wanneer snelheid wenselijk is en foutcorrectie niet nodig is. UDP wordt bijvoorbeeld veel gebruikt voor live-uitzendingen en online games.
Stel dat u een live videostream bekijkt, die vaak wordt uitgezonden met UDP in plaats van TCP. De server stuurt gewoon een constante stroom UDP-pakketten naar computers die kijken. Als je de verbinding een paar seconden verliest, kan de video even vastlopen of springerig worden en dan naar het huidige deel van de uitzending gaan. Als u een klein pakketverlies ervaart, kan de video of audio even vervormd raken terwijl de video doorgaat met afspelen zonder de ontbrekende gegevens.
Dit werkt op dezelfde manier in online games. Als je een aantal UDP-pakketten mist, kan het lijken alsof spelerspersonages over de kaart teleporteren als je de nieuwere UDP-pakketten ontvangt. Het heeft geen zin om de oude pakketten aan te vragen als je ze hebt gemist, want het spel gaat verder zonder jou. Het enige dat telt is wat er nu gebeurt op de gameserver - niet wat er een paar seconden geleden is gebeurd. Het negeren van de foutcorrectie van TCP helpt de game-verbinding te versnellen en de latentie te verminderen.
En dan?
VERWANT: Hoe Wireshark te gebruiken om pakketten op te vangen, te filteren en te inspecteren
Of een applicatie TCP of UDP gebruikt, is aan de ontwikkelaar en de keuze hangt af van wat een applicatie nodig heeft. De meeste apps hebben de foutcorrectie en robuustheid van TCP nodig, maar sommige toepassingen hebben de snelheid en verminderde overhead van UDP nodig. Als je schiet een netwerkanalysetool zoals Wireshark Kun je de verschillende soorten pakketten heen en weer zien reizen.
Tenzij u een netwerkbeheerder of softwareontwikkelaar bent, heeft dit niet al te veel invloed op u. Als u uw router of firewallsoftware configureert en u niet zeker weet of een toepassing TCP of UDP gebruikt, kunt u doorgaans de optie 'Beide' selecteren om ervoor te zorgen dat uw router of firewall dezelfde regel toepast op zowel TCP- als UDP-verkeer.