User Datagram Protocol (UDP) je protokol transportnej vrstvy. UDP je súčasťou balíka internetových protokolov, ktorý sa označuje ako balík UDP/IP. Na rozdiel od TCP je to an nespoľahlivý a nespojiteľný protokol. Pred prenosom údajov teda nie je potrebné vytvárať spojenie. UDP pomáha vytvoriť spojenia s nízkou latenciou a tolerujúce straty cez sieť. UDP umožňuje komunikáciu medzi procesmi.
Čo je User Datagram Protocol?
Hoci protokol TCP (Transmission Control Protocol) je protokol dominantnej transportnej vrstvy používaný s väčšinou internetových služieb; poskytuje zaručené doručenie, spoľahlivosť a oveľa viac, ale všetky tieto služby nás stoja dodatočnú réžiu a latenciu. Tu prichádza do úvahy UDP. Pre služby v reálnom čase, ako sú počítačové hry, hlasová alebo video komunikácia a živé konferencie; potrebujeme UDP. Keďže je potrebný vysoký výkon, protokol UDP umožňuje zahadzovanie paketov namiesto spracovania oneskorených paketov. V UDP nedochádza k žiadnej kontrole chýb, takže šetrí aj šírku pásma.
Hlavička UDP
Hlavička UDP je an 8-bajtový pevná a jednoduchá hlavička, zatiaľ čo pre TCP sa môže meniť od 20 bajtov do 60 bajtov. Prvých 8 bajtov obsahuje všetky potrebné informácie v hlavičke a zvyšnú časť tvoria dáta. Polia čísla portov UDP majú dĺžku 16 bitov, preto je rozsah čísel portov definovaný od 0 do 65535; číslo portu 0 je rezervované. Čísla portov pomáhajú rozlíšiť rôzne požiadavky alebo procesy používateľov.
Hlavička UDP
- Zdrojový port: Zdrojový port je 2 bajtové pole, ktoré sa používa na identifikáciu čísla portu zdroja.
- Cieľový prístav: Je to pole dlhé 2 bajty, ktoré sa používa na identifikáciu portu určeného paketu.
- dĺžka: Dĺžka je dĺžka UDP vrátane hlavičky a údajov. Ide o 16-bitové pole.
- Kontrolný súčet: Kontrolný súčet je pole dlhé 2 bajty. Ide o 16-bitový doplnok k súčtu jedného doplnku hlavičky UDP, pseudohlavičky informácií z hlavičky IP a údajov, doplnených na konci nulovými oktetmi (ak je to potrebné), aby sa vytvoril násobok dvoch. oktety.
poznámky – Na rozdiel od TCP nie je výpočet kontrolného súčtu v UDP povinný. UDP neposkytuje žiadne riadenie chýb ani riadenie toku. Preto UDP závisí od IP a ICMP pri hlásení chýb. UDP tiež poskytuje čísla portov, aby bolo možné rozlišovať medzi požiadavkami používateľov.
Aplikácie UDP
- Používa sa na jednoduchú komunikáciu medzi žiadosťou a odpoveďou, keď je veľkosť údajov menšia, a preto sú menšie obavy z riadenia toku a chýb.
- Je to vhodný protokol pre multicasting, keďže UDP podporuje prepínanie paketov.
- UDP sa používa pre niektoré protokoly aktualizácie smerovania, ako je RIP (Routing Information Protocol).
- Normálne sa používa pre aplikácie v reálnom čase, ktoré nedokážu tolerovať nerovnomerné oneskorenia medzi časťami prijatej správy.
- UDP je široko používaný v online hrách, kde je nízka latencia a vysokorýchlostná komunikácia nevyhnutná pre dobrý herný zážitok. Herné servery často posielajú klientom malé, časté pakety údajov a protokol UDP je pre tento typ komunikácie veľmi vhodný, pretože je rýchly a ľahký.
- Aplikácie pre streamovanie médií, ako je IPTV, online rádio a videokonferencie, používajú UDP na prenos zvukových a obrazových údajov v reálnom čase. Strata niektorých paketov môže byť v týchto aplikáciách tolerovaná, pretože dáta neustále prúdia a nevyžadujú opakovaný prenos.
- Služby VoIP (Voice over Internet Protocol), ako sú Skype a WhatsApp, využívajú UDP na hlasovú komunikáciu v reálnom čase. Oneskorenie v hlasovej komunikácii môže byť badateľné, ak sa pakety oneskorujú z dôvodu kontroly preťaženia, preto sa na zabezpečenie rýchleho a efektívneho prenosu dát používa protokol UDP.
- DNS (Domain Name System) tiež používa UDP pre svoje správy s dopytom/odpoveďou. DNS dotazy sú zvyčajne malé a vyžadujú si rýchlu odozvu, vďaka čomu je protokol UDP pre túto aplikáciu vhodný.
- DHCP (Dynamic Host Configuration Protocol) používa UDP na dynamické prideľovanie IP adries zariadeniam v sieti. Správy DHCP sú zvyčajne malé a oneskorenie spôsobené stratou paketov alebo opakovaným prenosom nie je pre túto aplikáciu vo všeobecnosti kritické.
- Nasledujúce implementácie používajú UDP ako protokol transportnej vrstvy:
- NTP (Network Time Protocol)
- DNS (služba názvov domén)
- BOOTP, DHCP.
- NNP (Network News Protocol)
- Protokol citácie dňa
- TFTP, RTSP, RIP.
- Aplikačná vrstva môže vykonávať niektoré úlohy prostredníctvom UDP-
- Trasovať trasu
- Zaznamenať trasu
- Časová značka
- UDP vezme datagram zo sieťovej vrstvy, pripojí jeho hlavičku a odošle ho používateľovi. Takže to funguje rýchlo.
- Ak odstránite pole kontrolného súčtu, UDP je v skutočnosti nulový protokol.
- Znížte požiadavky na počítačové zdroje.
- Keď na prenos používate Multicast alebo Broadcast.
- Prenos paketov v reálnom čase, hlavne v multimediálnych aplikáciách.
Výhody UDP
- rýchlosť: UDP je rýchlejší ako TCP, pretože nemá réžiu na vytvorenie spojenia a zabezpečenie spoľahlivého doručovania údajov.
- Nižšia latencia: Keďže nedochádza k nadviazaniu spojenia, je tu nižšia latencia a rýchlejšia doba odozvy.
- jednoduchosť: UDP má jednoduchší návrh protokolu ako TCP, čo uľahčuje jeho implementáciu a správu.
- Podpora vysielania: UDP podporuje vysielanie pre viacerých príjemcov, vďaka čomu je užitočný pre aplikácie, ako je streamovanie videa a online hranie.
- Veľkosť menšieho balenia: UDP používa menšie veľkosti paketov ako TCP, čo môže znížiť preťaženie siete a zlepšiť celkový výkon siete.
- User Datagram Protocol (UDP) je efektívnejší z hľadiska latencie aj šírky pásma.
Nevýhody UDP
- Žiadna spoľahlivosť: UDP nezaručuje doručenie paketov alebo poradie doručenia, čo môže viesť k chýbajúcim alebo duplicitným údajom.
- Žiadna kontrola preťaženia: UDP nemá kontrolu preťaženia, čo znamená, že môže odosielať pakety rýchlosťou, ktorá môže spôsobiť preťaženie siete.
- Žiadna kontrola prietoku: UDP nemá riadenie toku, čo znamená, že môže zahltiť prijímač paketmi, ktoré nedokáže spracovať.
- Zraniteľné voči útokom: UDP je zraniteľný voči útokom odmietnutia služby, pri ktorých môže útočník zaplaviť sieť paketmi UDP, zahltiť sieť a spôsobiť jej zlyhanie.
- Obmedzené prípady použitia: UDP nie je vhodné pre aplikácie, ktoré vyžadujú spoľahlivé doručovanie údajov, ako sú e-maily alebo prenosy súborov, a je vhodnejšie pre aplikácie, ktoré môžu tolerovať určitú stratu údajov, ako je streamovanie videa alebo online hranie.
Pseudohlavička UDP
- Účelom použitia pseudohlavičky je overiť, či paket UDP dosiahol svoj správny cieľ
- Správne miesto určenia pozostáva zo špecifického stroja a špecifického čísla portu protokolu v tomto stroji

UDP pseudo hlavička
Podrobnosti Pseudo hlavičky UDP
- Samotná hlavička UDP špecifikuje iba číslo portu protokolu. Na overenie cieľového UDP na odosielajúcom stroji sa teda vypočíta kontrolný súčet, ktorý pokrýva cieľovú IP adresu, ako aj paket UDP.
- V konečnom mieste určenia softvér UDP overí kontrolný súčet pomocou cieľovej adresy IP získanej z hlavičky paketu IP, ktorý preniesol správu UDP.
- Ak kontrolný súčet súhlasí, potom musí platiť, že paket dosiahol zamýšľaného cieľového hostiteľa, ako aj správny port protokolu v rámci tohto hostiteľa.
Používateľské rozhranie
Používateľské rozhranie by malo umožňovať vytváranie nových prijímacích portov, prijímacie operácie na prijímacích portoch, ktoré vracajú dátové oktety a označenie zdrojového portu a zdrojovej adresy, a operáciu, ktorá umožňuje odoslanie datagramu s uvedením údajov, zdroja a cieľové porty a adresy, ktoré sa majú odoslať.
IP rozhranie
- UDP modul musí byť schopný určiť zdrojovú a cieľovú internetovú adresu a pole protokolu z internetovej hlavičky
- Jedno možné rozhranie UDP/IP by vrátilo celý internetový datagram vrátane celej internetovej hlavičky ako odpoveď na operáciu príjmu
- Takéto rozhranie by tiež umožnilo UDP odovzdať úplný internetový datagram s hlavičkou IP na odoslanie. IP by overila konzistenciu určitých polí a vypočítala kontrolný súčet internetovej hlavičky.
- Rozhranie IP umožňuje modulu UDP interakciu so sieťovou vrstvou zásobníka protokolov, ktorá je zodpovedná za smerovanie a doručovanie údajov v sieti.
- Rozhranie IP poskytuje modul UDP mechanizmus na komunikáciu s inými hostiteľmi v sieti poskytovaním prístupu k základnému protokolu IP.
- Rozhranie IP môže modul UDP použiť na odosielanie a prijímanie dátových paketov cez sieť pomocou mechanizmov smerovania a adresovania IP.
- Rozhranie IP poskytuje úroveň abstrakcie, ktorá umožňuje modulu UDP interagovať so sieťovou vrstvou bez toho, aby sa musel priamo zaoberať zložitosťou smerovania a adresovania IP.
- Rozhranie IP tiež rieši fragmentáciu a opätovné zostavenie paketov IP, čo je dôležité pre veľké dátové prenosy, ktoré môžu prekročiť maximálnu veľkosť paketov povolenú sieťou.
- IP rozhranie môže tiež poskytovať dodatočné služby, ako je podpora parametrov kvality služieb (QoS) a bezpečnostných mechanizmov, ako je IPsec.
- IP rozhranie je kritickým komponentom Internet Protocol Suite, pretože umožňuje komunikáciu medzi hostiteľmi na internete a umožňuje bezproblémový prenos dátových paketov cez sieť.
GATE Otázky pre prax
- GATE CS 2013, otázka 12
- GATE CS 2012, otázka 65
- GATE CS 2007, otázka 20
- GATE CS 2005, otázka 23
- GATE IT 2008, otázka 66
- GATE Mock 2015, otázka 5
Často kladené otázky o UDP – často kladené otázky
1. Vymenujte protokoly, ktoré používajú UDP?
Protokoly, ktoré používajú model UDP, sú:
2. Čo je rýchlejšie: TCP alebo UDP?
UDP je rýchlejší ako TCP.