logo

User Datagram Protocol (UDP)

User Datagram Protocol (UDP) er en Transport Layer-protokoll. UDP er en del av Internet Protocol suite, referert til som UDP/IP suite. I motsetning til TCP er det en upålitelig og tilkoblingsløs protokoll. Så det er ikke nødvendig å opprette en forbindelse før dataoverføring. UDP hjelper til med å etablere lav latens og tapstolererende forbindelser over nettverket. UDP muliggjør prosess-til-prosess-kommunikasjon.

Hva er User Datagram Protocol?

Skjønt Transmission Control Protocol (TCP) er den dominerende transportlagprotokollen som brukes med de fleste Internett-tjenester; gir sikker levering, pålitelighet og mye mer, men alle disse tjenestene koster oss ekstra overhead og ventetid. Her kommer UDP inn i bildet. For sanntidstjenester som dataspilling, tale- eller videokommunikasjon og direktekonferanser; vi trenger UDP. Siden høy ytelse er nødvendig, tillater UDP at pakker droppes i stedet for å behandle forsinkede pakker. Det er ingen feilkontroll i UDP, så det sparer også båndbredde.

UDP-gif



UDP-hode

UDP-header er en 8-byte fast og enkel header, mens den for TCP kan variere fra 20 byte til 60 byte. De første 8 bytene inneholder all nødvendig overskriftsinformasjon og den resterende delen består av data. UDP-portnummerfelt er hver 16 bit lange, derfor er området for portnummer definert fra 0 til 65535; portnummer 0 er reservert. Portnumre hjelper til med å skille forskjellige brukerforespørsler eller prosesser.

UDP-header

UDP-hode

  1. Kildeport: Kildeport er et 2 byte langt felt som brukes til å identifisere portnummeret til kilden.
  2. Destinasjonshavn: Det er et 2 byte langt felt som brukes til å identifisere porten til den destinerte pakken.
  3. Lengde: Lengde er lengden på UDP inkludert overskriften og dataene. Det er et 16-bits felt.
  4. Sjekksum: Sjekksum er 2 byte langt felt. Det er 16-bits ens komplement av ens komplement summen av UDP-headeren, pseudo-headeren av informasjon fra IP-headeren og dataene, polstret med null oktetter på slutten (om nødvendig) for å lage et multiplum av to oktetter.

Merknader – I motsetning til TCP, er ikke Checksum-beregningen obligatorisk i UDP. Ingen feilkontroll eller flytkontroll leveres av UDP. Derfor avhenger UDP av IP og ICMP for feilrapportering. Også UDP gir portnumre slik at det kan skille mellom brukerforespørsler.

Applikasjoner av UDP

  • Brukes for enkel forespørsel-svar-kommunikasjon når størrelsen på data er mindre og derfor er det mindre bekymring for flyt og feilkontroll.
  • Det er en passende protokoll for multicasting da UDP støtter pakkesvitsjing.
  • UDP brukes for noen rutingoppdateringsprotokoller som RIP (Routing Information Protocol).
  • Brukes normalt for sanntidsapplikasjoner som ikke tåler ujevne forsinkelser mellom deler av en mottatt melding.
  • UDP er mye brukt i nettspill, hvor lav latens og høyhastighetskommunikasjon er avgjørende for en god spillopplevelse. Spillservere sender ofte små, hyppige pakker med data til klienter, og UDP er godt egnet for denne typen kommunikasjon siden den er rask og lett.
  • Streamingmediaapplikasjoner, som IPTV, nettradio og videokonferanser, bruker UDP til å overføre lyd- og videodata i sanntid. Tap av noen pakker kan tolereres i disse applikasjonene, siden dataene flyter kontinuerlig og ikke krever retransmisjon.
  • VoIP-tjenester (Voice over Internet Protocol), som Skype og WhatsApp, bruker UDP for talekommunikasjon i sanntid. Forsinkelsen i talekommunikasjon kan være merkbar hvis pakker er forsinket på grunn av overbelastningskontroll, så UDP brukes for å sikre rask og effektiv dataoverføring.
  • DNS (Domain Name System) bruker også UDP for sine spørrings-/svarmeldinger. DNS-spørringer er vanligvis små og krever rask responstid, noe som gjør UDP til en passende protokoll for denne applikasjonen.
  • DHCP (Dynamic Host Configuration Protocol) bruker UDP til å dynamisk tildele IP-adresser til enheter på et nettverk. DHCP-meldinger er vanligvis små, og forsinkelsen forårsaket av pakketap eller reoverføring er vanligvis ikke kritisk for denne applikasjonen.
  • Følgende implementeringer bruker UDP som en transportlagsprotokoll:
    • NTP (Network Time Protocol)
    • DNS (domenenavntjeneste)
    • BOOTP, DHCP.
    • NNP (Network News Protocol)
    • Dagens sitat protokoll
    • TFTP, RTSP, RIP.
  • Applikasjonslaget kan gjøre noen av oppgavene gjennom UDP-
    • Spor rute
    • Registrer rute
    • Tidsstempel
  • UDP tar et datagram fra Network Layer, legger ved overskriften og sender den til brukeren. Så det fungerer raskt.
  • Faktisk er UDP en null-protokoll hvis du fjerner kontrollsum-feltet.
    1. Reduser behovet for datamaskinressurser.
    2. Når du bruker Multicast eller Broadcast for å overføre.
    3. Overføring av sanntidspakker, hovedsakelig i multimediaapplikasjoner.

Fordeler med UDP

  • Hastighet: UDP er raskere enn TCP fordi det ikke har overhead for å etablere en tilkobling og sikre pålitelig datalevering.
  • Lavere ventetid: Siden det ikke er opprettet tilkobling, er det lavere ventetid og raskere responstid.
  • Enkelhet: UDP har en enklere protokolldesign enn TCP, noe som gjør det enklere å implementere og administrere.
  • Kringkastingsstøtte: UDP støtter kringkasting til flere mottakere, noe som gjør det nyttig for applikasjoner som videostreaming og online spill.
  • Mindre pakkestørrelse: UDP bruker mindre pakkestørrelser enn TCP, som kan redusere nettverksoverbelastning og forbedre den generelle nettverksytelsen.
  • User Datagram Protocol (UDP) er mer effektiv når det gjelder både latens og båndbredde.

Ulemper med UDP

  • Ingen pålitelighet: UDP garanterer ikke levering av pakker eller leveringsrekkefølge, noe som kan føre til manglende eller dupliserte data.
  • Ingen overbelastningskontroll: UDP har ikke overbelastningskontroll, noe som betyr at den kan sende pakker med en hastighet som kan forårsake nettverksoverbelastning.
  • Ingen flytkontroll: UDP har ikke flytkontroll, noe som betyr at den kan overvelde mottakeren med pakker den ikke kan håndtere.
  • Sårbar for angrep: UDP er sårbart for tjenestenektangrep, der en angriper kan oversvømme et nettverk med UDP-pakker, overvelde nettverket og få det til å krasje.
  • Tilfeller med begrenset bruk: UDP er ikke egnet for applikasjoner som krever pålitelig datalevering, for eksempel e-post eller filoverføringer, og er bedre egnet for applikasjoner som tåler noe tap av data, for eksempel videostreaming eller nettspill.

UDP Pseudo Header

  • Hensikten med å bruke en pseudo-header er å bekrefte at UDP-pakken har nådd sin riktige destinasjon
  • Den riktige destinasjonen består av en spesifikk maskin og et spesifikt protokollportnummer på den maskinen

UDP-pseudo-header

UDP Pseudo Header Detaljer

  • UDP-hodet spesifiserer kun protokollportnummeret. For å bekrefte destinasjonen beregner UDP på ​​avsendermaskinen en kontrollsum som dekker destinasjons-IP-adressen så vel som UDP-pakken.
  • Ved den endelige destinasjonen verifiserer UDP-programvaren kontrollsummen ved å bruke destinasjons-IP-adressen hentet fra overskriften til IP-pakken som bar UDP-meldingen.
  • Hvis kontrollsummen stemmer overens, må det være sant at pakken har nådd den tiltenkte destinasjonsverten samt riktig protokollport innenfor den verten.

Brukergrensesnitt

Et brukergrensesnitt skal tillate opprettelse av nye mottaksporter, mottaksoperasjoner på mottaksportene som returnerer dataoktettene og en indikasjon på kildeport og kildeadresse, og en operasjon som lar et datagram sendes, spesifisere data, kilde og destinasjonsporter og adresse som skal sendes.

IP-grensesnitt

  • UDP-modulen må kunne bestemme kilde- og destinasjonsnettadressen og protokollfeltet fra internetthodet
  • Et mulig UDP/IP-grensesnitt vil returnere hele internettdatagrammet inkludert hele internetthodet som svar på en mottaksoperasjon
  • Et slikt grensesnitt vil også tillate UDP å sende et fullstendig internettdatagram komplett med overskrift til IP-en som skal sendes. IP-en vil verifisere visse felt for konsistens og beregne internetthodekontrollsummen.
  • IP-grensesnittet lar UDP-modulen samhandle med nettverkslaget til protokollstakken, som er ansvarlig for ruting og levering av data over nettverket.
  • IP-grensesnittet gir en mekanisme for UDP-modulen for å kommunisere med andre verter på nettverket ved å gi tilgang til den underliggende IP-protokollen.
  • IP-grensesnittet kan brukes av UDP-modulen til å sende og motta datapakker over nettverket, ved hjelp av IP-ruting og adresseringsmekanismer.
  • IP-grensesnittet gir et abstraksjonsnivå som lar UDP-modulen samhandle med nettverkslaget uten å måtte forholde seg til kompleksiteten til IP-ruting og adressering direkte.
  • IP-grensesnittet håndterer også fragmentering og remontering av IP-pakker, noe som er viktig for store dataoverføringer som kan overskride den maksimale pakkestørrelsen tillatt av nettverket.
  • IP-grensesnittet kan også tilby tilleggstjenester, for eksempel støtte for Quality of Service (QoS) parametere og sikkerhetsmekanismer som IPsec.
  • IP-grensesnittet er en kritisk komponent i Internet Protocol Suite, da det muliggjør kommunikasjon mellom verter på internett og muliggjør sømløs overføring av datapakker over nettverket.

GATE-spørsmål for praksis

  1. GATE CS 2013, spørsmål 12
  2. GATE CS 2012, spørsmål 65
  3. GATE CS 2007, spørsmål 20
  4. GATE CS 2005, spørsmål 23
  5. GATE IT 2008, spørsmål 66
  6. GATE Mock 2015, spørsmål 5

Vanlige spørsmål om UDP – Vanlige spørsmål

1. Nevn protokollene som bruker UDP?

Protokollen som bruker UDP-modellen er:

2. Hva er raskere: TCP eller UDP?

UDP er raskere enn TCP.