Protokol uporabniškega datagrama (UDP) je protokol transportne plasti. UDP je del zbirke internetnih protokolov, imenovane zbirka UDP/IP. Za razliko od TCP je an nezanesljiv protokol brez povezave. Pred prenosom podatkov torej ni treba vzpostaviti povezave. UDP pomaga vzpostaviti povezave prek omrežja z nizko zakasnitvijo in tolerantnimi izgubami. UDP omogoča komunikacijo med procesi.
Kaj je protokol uporabniškega datagrama?
Čeprav je protokol za nadzor prenosa (TCP) prevladujoči protokol transportne plasti, ki se uporablja pri večini internetnih storitev; zagotavlja zagotovljeno dostavo, zanesljivost in še veliko več, vendar nas vse te storitve stanejo dodatnih režijskih stroškov in zakasnitev. Tu nastopi UDP. Za storitve v realnem času, kot so računalniške igre, glasovna ali video komunikacija in konference v živo; potrebujemo UDP. Ker je potrebna visoka zmogljivost, UDP dovoljuje izpuščanje paketov namesto obdelave zakasnjenih paketov. V UDP ni preverjanja napak, zato prihrani tudi pasovno širino.
Glava UDP
Glava UDP je 8-bajtni fiksna in preprosta glava, medtem ko se za TCP lahko razlikuje od 20 bajtov do 60 bajtov. Prvih 8 bajtov vsebuje vse potrebne informacije o glavi, preostali del pa so podatki. Vsako polje s številko vrat UDP je dolgo 16 bitov, zato je obseg za številke vrat definiran od 0 do 65535; vrata številka 0 so rezervirana. Številke vrat pomagajo razlikovati med različnimi uporabniškimi zahtevami ali procesi.
Glava UDP
- Izvorna vrata: Izvorna vrata so 2 bajta dolgo polje, ki se uporablja za identifikacijo številke vrat vira.
- Ciljna vrata: To je 2 bajta dolgo polje, ki se uporablja za identifikacijo vrat namenjenega paketa.
- Dolžina: Dolžina je dolžina UDP, vključno z glavo in podatki. To je 16-bitno polje.
- Kontrolna vsota: Kontrolna vsota je 2 bajta dolgo polje. Je 16-bitni komplement ena vsote komplementa ena glave UDP, psevdo-glave informacij iz glave IP in podatkov, podloženih z nič okteti na koncu (če je potrebno), da je večkratnik dva okteti.
Opombe – Za razliko od TCP izračun kontrolne vsote v UDP ni obvezen. UDP ne zagotavlja nadzora napak ali nadzora toka. Zato je UDP za poročanje o napakah odvisen od IP in ICMP. UDP ponuja tudi številke vrat, tako da lahko razlikuje med zahtevami uporabnikov.
Aplikacije UDP
- Uporablja se za preprosto komunikacijo med zahtevo in odgovorom, ko je velikost podatkov manjša in je zato manj skrbi glede nadzora toka in napak.
- Je primeren protokol za multicasting, saj UDP podpira preklapljanje paketov.
- UDP se uporablja za nekatere protokole za posodabljanje usmerjanja, kot je RIP (Routing Information Protocol).
- Običajno se uporablja za aplikacije v realnem času, ki ne prenesejo neenakomernih zakasnitev med deli prejetega sporočila.
- UDP se pogosto uporablja v spletnih igrah, kjer sta nizka zakasnitev in hitra komunikacija bistvenega pomena za dobro igralno izkušnjo. Strežniki iger odjemalcem pogosto pošiljajo majhne, pogoste pakete podatkov, UDP pa je zelo primeren za to vrsto komunikacije, saj je hiter in lahek.
- Pretočne medijske aplikacije, kot so IPTV, spletni radio in videokonference, uporabljajo UDP za prenos avdio in video podatkov v realnem času. Izguba nekaterih paketov je v teh aplikacijah dopustna, saj podatki neprekinjeno tečejo in ne zahtevajo ponovnega prenosa.
- Storitve VoIP (Voice over Internet Protocol), kot sta Skype in WhatsApp, uporabljajo UDP za govorno komunikacijo v realnem času. Zakasnitev pri glasovni komunikaciji je lahko opazna, če paketi zamujajo zaradi nadzora zastojev, zato se UDP uporablja za zagotavljanje hitrega in učinkovitega prenosa podatkov.
- DNS (Domain Name System) prav tako uporablja UDP za svoja sporočila poizvedb/odgovorov. Poizvedbe DNS so običajno majhne in zahtevajo hiter odzivni čas, zaradi česar je UDP primeren protokol za to aplikacijo.
- DHCP (Dynamic Host Configuration Protocol) uporablja UDP za dinamično dodeljevanje naslovov IP napravam v omrežju. Sporočila DHCP so običajno majhna in zakasnitev, ki jo povzroči izguba paketa ali ponovni prenos, na splošno ni kritična za to aplikacijo.
- Naslednje izvedbe uporabljajo UDP kot protokol transportne plasti:
- NTP (omrežni časovni protokol)
- DNS (Domain Name Service)
- BOOTP, DHCP.
- NNP (Network News Protocol)
- Citat protokola dneva
- TFTP, RTSP, RIP.
- Aplikacijska plast lahko opravi nekatere naloge prek UDP-
- Trace Route
- Snemanje poti
- Časovni žig
- UDP vzame datagram iz omrežne plasti, pripne njegovo glavo in ga pošlje uporabniku. Torej, deluje hitro.
- Pravzaprav je UDP ničelni protokol, če odstranite polje s kontrolno vsoto.
- Zmanjšajte porabo računalniških virov.
- Ko za prenos uporabljate Multicast ali Broadcast.
- Prenos paketov v realnem času, predvsem v multimedijskih aplikacijah.
Prednosti UDP
- Hitrost: UDP je hitrejši od TCP, ker nima dodatnih stroškov vzpostavljanja povezave in zagotavljanja zanesljive dostave podatkov.
- Nižja zakasnitev: Ker ni vzpostavljanja povezave, je zakasnitev manjša in odzivni čas hitrejši.
- Enostavnost: UDP ima enostavnejšo zasnovo protokola kot TCP, zaradi česar je lažja za implementacijo in upravljanje.
- Podpora za oddajanje: UDP podpira oddajanje več prejemnikom, zaradi česar je uporaben za aplikacije, kot so pretakanje videa in spletne igre.
- Manjša velikost paketa: UDP uporablja manjše velikosti paketov kot TCP, kar lahko zmanjša prezasedenost omrežja in izboljša splošno delovanje omrežja.
- Protokol uporabniškega datagrama (UDP) je učinkovitejši v smislu zakasnitve in pasovne širine.
Slabosti UDP
- Brez zanesljivosti: UDP ne jamči dostave paketov ali vrstnega reda dostave, kar lahko povzroči manjkajoče ali podvojene podatke.
- Brez nadzora zastojev: UDP nima nadzora prezasedenosti, kar pomeni, da lahko pošilja pakete s hitrostjo, ki lahko povzroči prezasedenost omrežja.
- Brez nadzora pretoka: UDP nima nadzora pretoka, kar pomeni, da lahko preobremeni prejemnika s paketi, ki jih ne more obdelati.
- Ranljiv za napade: UDP je ranljiv za napade zavrnitve storitve, kjer lahko napadalec preplavi omrežje s paketi UDP, preplavi omrežje in povzroči, da se zruši.
- Primeri omejene uporabe: UDP ni primeren za aplikacije, ki zahtevajo zanesljivo dostavo podatkov, kot so e-pošta ali prenosi datotek, in je bolj primeren za aplikacije, ki lahko dopuščajo izgubo nekaterih podatkov, kot je pretakanje videa ali spletno igranje.
Psevdo glava UDP
- Namen uporabe psevdo-glave je preveriti, ali je paket UDP dosegel pravi cilj
- Pravi cilj je sestavljen iz določene naprave in določene številke vrat protokola znotraj te naprave

Psevdo glava UDP
Podrobnosti psevdo glave UDP
- Glava UDP sama določa samo številko vrat protokola. Tako za preverjanje ciljnega UDP na stroju pošiljatelja izračuna kontrolno vsoto, ki zajema ciljni naslov IP in tudi paket UDP.
- Na končnem cilju programska oprema UDP preveri kontrolno vsoto z uporabo ciljnega naslova IP, pridobljenega iz glave paketa IP, ki je nosil sporočilo UDP.
- Če se kontrolna vsota ujema, mora biti res, da je paket dosegel predvidenega ciljnega gostitelja, kot tudi pravilna vrata protokola znotraj tega gostitelja.
Uporabniški vmesnik
Uporabniški vmesnik mora omogočati ustvarjanje novih sprejemnih vrat, sprejemne operacije na sprejemnih vratih, ki vrnejo podatkovne oktete in navedbo izvornih vrat in izvornega naslova, ter operacijo, ki omogoča pošiljanje datagrama, ki določa podatke, vir in ciljna vrata in naslov za pošiljanje.
IP vmesnik
- Modul UDP mora biti sposoben določiti izvorni in ciljni internetni naslov ter polje protokola iz internetne glave
- Eden od možnih vmesnikov UDP/IP bi vrnil celoten internetni datagram, vključno s celotno internetno glavo, kot odgovor na operacijo sprejema
- Tak vmesnik bi tudi omogočil, da UDP posreduje celoten internetni datagram skupaj z glavo na IP za pošiljanje. IP bi preveril doslednost določenih polj in izračunal kontrolno vsoto internetne glave.
- Vmesnik IP omogoča modulu UDP interakcijo z omrežno plastjo sklada protokolov, ki je odgovorna za usmerjanje in dostavo podatkov po omrežju.
- Vmesnik IP zagotavlja mehanizem za komunikacijo modula UDP z drugimi gostitelji v omrežju z zagotavljanjem dostopa do osnovnega protokola IP.
- Vmesnik IP lahko modul UDP uporablja za pošiljanje in prejemanje podatkovnih paketov prek omrežja s pomočjo usmerjanja IP in mehanizmov naslavljanja.
- Vmesnik IP zagotavlja raven abstrakcije, ki modulu UDP omogoča interakcijo z omrežno plastjo, ne da bi se morali neposredno ukvarjati s kompleksnostjo IP usmerjanja in naslavljanja.
- Vmesnik IP obravnava tudi fragmentacijo in ponovno sestavljanje paketov IP, kar je pomembno za velike prenose podatkov, ki lahko presežejo največjo velikost paketa, ki jo dovoljuje omrežje.
- Vmesnik IP lahko nudi tudi dodatne storitve, kot je podpora za parametre kakovosti storitve (QoS) in varnostne mehanizme, kot je IPsec.
- Vmesnik IP je kritična komponenta zbirke internetnih protokolov, saj omogoča komunikacijo med gostitelji na internetu in omogoča brezhiben prenos podatkovnih paketov po omrežju.
GATE Vprašanja za vajo
- GATE CS 2013, vprašanje 12
- GATE CS 2012, vprašanje 65
- GATE CS 2007, vprašanje 20
- GATE CS 2005, vprašanje 23
- GATE IT 2008, vprašanje 66
- GATE Mock 2015, vprašanje 5
Pogosto zastavljena vprašanja o UDP – pogosta vprašanja
1. Poimenujte protokole, ki uporabljajo UDP?
Protokoli, ki uporabljajo model UDP, so:
2. Kateri je hitrejši: TCP ali UDP?
UDP je hitrejši od TCP.