Sobes.tech
Junior

Kuo išsiskiria UDP duomenų perdavimo protokolai?

sobes.tech AI

Atsakymas iš AI

UDP (User Datagram Protocol) — tai OSI modelio transporto sluoksnio protokolas, teikiantis nesaugų (be pristatymo garantijų), nereikalaujantį ryšio ir greitą duomenų perdavimą.

UDP ypatybės:

  • Nesaugumas (Unreliable): nėra garantijų dėl paketų pristatymo. Paketai gali būti prarasti, dubliuoti arba atkeliauti ne pagal tvarką.
  • Ryšio nesusiejimas (Connectionless): prieš siunčiant duomenis, tarp siuntėjo ir gavėjo nėra nustatomas ryšys. Kiekvienas paketas siunčiamas nepriklausomai.
  • Srauto ir klaidų kontrolės nėra: UDP nesprendžia duomenų siuntimo greičio ir nepatikrina paketų dėl klaidų (išskyrus kontrolinę sumą, kuri yra neprivaloma).
  • Maži papildomi kaštai: UDP antraštės yra daug mažesnės nei TCP, tai sumažina perduodamų paslaugos duomenų kiekį.
  • Didelis greitis: Dėl ryšio nustatymo procedūrų, srauto kontrolės ir pakartotinės siuntimo nebuvimo, UDP yra žymiai greitesnis nei TCP.
  • Naudoja datagramas: duomenų perdavimo vienetas UDP yra datagramas.

UDP naudojimo pavyzdžiai:

  • srautinė garso ir vaizdo transliacija (pvz., internetinės transliacijos)
  • internetiniai žaidimai
  • DNS (Domain Name System)
  • DHCP (Dynamic Host Configuration Protocol)
  • SNMP (Simple Network Management Protocol)

UDP antraštės struktūra:

laukas dydis (baitai) aprašymas
šaltinio prtorius 2 siuntėjo programos prtorius.
paskirties prtorius 2 gavėjo programos prtorius.
UDP ilgis 2 UDP antraštės ir duomenų ilgis baitais.
kontrolinė suma 2 neprivaloma duomenų vientisumo patikrai.
# Pavyzdinė UDP paketo struktūra
# UDP antraštė (8 baitai): šaltinio prtorius, paskirties prtorius, ilgis, kontrolinė suma
# Duomenys

# Tikrame kode su tokio lygio paketais dažniausiai dirbama bibliotekų pagalba