User Datagram Protocol
Het User Datagram Protocol (UDP) is een van de basisprotocollen van het internet. Het protocol opereert op hetzelfde niveau als TCP en wordt beschreven in RFC 768.
UDP geldt als onbetrouwbaar: het protocol verifieert niet of de gegevens daadwerkelijk aankomen en garandeert niet dat de gegevens in dezelfde volgorde aankomen, wat bij TCP wel het geval is. Een aantal protocollen dat via UDP werkt, implementeert zelf een verificatiemethode. Hiermee zorgen ze effectief voor een vervanging van de functionaliteit die TCP heeft op dit gebied.
UDP wordt veel gebruikt bij toepassingen waar het snel overdragen van de gegevens en een korte reactietijd zeer belangrijk is, en het minder erg is dat er gegevens verloren kunnen gaan, zoals bij telefonie, videoconferencing, DNS of het online spelen van actievolle spellen, zoals first-person shooters.
Indien TCP gebruikt zou worden voor dit soort toepassingen, zou een fout bij de datacommunicatie leiden tot het telkens opnieuw verzenden/ontvangen van een ontbrekend datapakket totdat het foutloos is overgezet.[1]
Structuur
[bewerken | brontekst bewerken]Een UDP-bericht (merk op dat we hier niet spreken over een pakket of frame) bestaat uit een header (de 'koptekst') en een datadeel:
bron | bestemming | lengte | controle | data |
Het kopstuk, het volledige stuk voor het datadeel, bevat vier velden van elk twee bytes:
- bron: poortnummer van het verzendende proces
- bestemming: poortnummer van het ontvangende proces
- lengte: aantal bytes in het bericht
- controle: 0000 wil zeggen dat er geen controlewaarde gegenereerd is, anders bevat dit veld de controlewaarde. Het controlegetal of checksum dient om fouten te detecteren, niet voor foutcorrectie.
Poorten
[bewerken | brontekst bewerken]Lijst van enkele poorten die gebruikt worden door UDP-diensten:
- 7 Echo
- Message Send Protocol 18
- Domain Name System 53
- Trivial File Transfer Protocol 69
- Network Printing Protocol 92
- Simple File Transfer Protocol 115
- Network Time Protocol 123
- NetBIOS Name Service 137
- Simple Network Management Protocol 161
- 1194 OpenVPN