logo

UDP-protokoll

Inom datornätverk står UDP för User Datagram Protocol. David P. Reed utvecklade UDP-protokollet 1980. Det definieras i RFC 768, och det är en del av TCP/IP-protokollet, så det är ett standardprotokoll över internet. UDP-protokollet tillåter datorapplikationer att skicka meddelanden i form av datagram från en maskin till en annan maskin över Internet Protocol (IP)-nätverket. UDP är ett alternativt kommunikationsprotokoll till TCP-protokollet (överföringskontrollprotokoll). Precis som TCP tillhandahåller UDP en uppsättning regler som styr hur data ska utbytas över internet. UDP fungerar genom att kapsla in data i paketet och tillhandahålla sin egen rubrikinformation till paketet. Sedan inkapslas detta UDP-paket till IP-paketet och skickas till dess destination. Både TCP och UDP protokoll skickar data över internetprotokollnätverket, så det är också känt som TCP/IP och UDP/IP. Det finns många skillnader mellan dessa två protokoll. UDP gör det möjligt för processen att bearbeta kommunikation, medan TCP tillhandahåller värd-till-värd-kommunikation. Eftersom UDP skickar meddelanden i form av datagram anses det vara det bästa kommunikationssättet. TCP skickar de enskilda paketen, så det är ett pålitligt transportmedium. En annan skillnad är att TCP är ett anslutningsorienterat protokoll medan UDP är ett anslutningslöst protokoll eftersom det inte kräver någon virtuell krets för att överföra data.

UDP tillhandahåller också ett annat portnummer för att särskilja olika användarförfrågningar och tillhandahåller även kontrollsumma för att verifiera om fullständig data har anlänt eller inte; IP-lagret tillhandahåller inte dessa två tjänster.

Funktioner i UDP-protokollet

Följande är funktionerna i UDP-protokollet:

    Transportlagerprotokoll

UDP är det enklaste kommunikationsprotokollet för transportlager. Den innehåller ett minimum av kommunikationsmekanismer. Det anses vara ett opålitligt protokoll, och det är baserat på bästa möjliga leveranstjänster. UDP tillhandahåller ingen bekräftelsemekanism, vilket innebär att mottagaren inte skickar bekräftelsen för det mottagna paketet, och avsändaren väntar inte heller på bekräftelsen för paketet som den har skickat.

    Anslutningslös

UDP är ett anslutningslöst protokoll eftersom det inte skapar en virtuell sökväg för att överföra data. Den använder inte den virtuella sökvägen, så paket skickas i olika vägar mellan avsändaren och mottagaren, vilket leder till att paket går förlorade eller tas emot i oordning.

Beställd leverans av data garanteras inte.

I fallet med UDP, skickas datagrammen i någon ordning kommer att tas emot i samma ordning är inte garanterat eftersom datagrammen inte är numrerade.

    Hamnar

UDP-protokollet använder olika portnummer så att data kan skickas till rätt destination. Portnumren är definierade mellan 0 och 1023.

    Snabbare överföring

UDP möjliggör snabbare överföring eftersom det är ett anslutningslöst protokoll, d.v.s. ingen virtuell sökväg krävs för att överföra data. Men det finns en chans att det enskilda paketet går förlorat, vilket påverkar överföringskvaliteten. Å andra sidan, om paketet går förlorat i TCP-anslutningen, kommer det paketet att skickas om, så det garanterar leveransen av datapaketen.

    Bekräftelsemekanism

UDP har någon bekräftelsemekanism, d.v.s. det finns ingen handskakning mellan UDP-sändaren och UDP-mottagaren. Om meddelandet skickas i TCP, då bekräftar mottagaren att jag är redo, sedan skickar avsändaren data. I fallet med TCP sker handskakning mellan avsändaren och mottagaren, medan det i UDP inte finns någon handskakning mellan avsändaren och mottagaren.

    Segment hanteras oberoende.

Varje UDP-segment hanteras individuellt av andra eftersom varje segment tar olika vägar för att nå destinationen. UDP-segmenten kan gå förlorade eller levereras ur funktion för att nå destinationen eftersom det inte finns någon anslutning mellan avsändaren och mottagaren.

    Statslös

Det är ett tillståndslöst protokoll som gör att avsändaren inte får bekräftelsen på paketet som har skickats.

Varför kräver vi UDP-protokollet?

Eftersom vi vet att UDP är ett opålitligt protokoll, men vi kräver fortfarande ett UDP-protokoll i vissa fall. UDP:n distribueras där paketen kräver en stor mängd bandbredd tillsammans med den faktiska datan. Till exempel i videostreaming är det besvärligt att erkänna tusentals paket och slösar mycket bandbredd. När det gäller videoströmning kunde förlusten av vissa paket inte skapa ett problem, och det kan också ignoreras.

oj koncept

UDP Header Format

UDP-protokoll

I UDP är huvudstorleken 8 byte och paketstorleken är upp till 65 535 byte. Men denna paketstorlek är inte möjlig eftersom data måste inkapslas i IP-datagrammet, och ett IP-paket, huvudstorleken kan vara 20 byte; därför skulle maxvärdet för UDP vara 65 535 minus 20. Storleken på data som UDP-paketet kan bära skulle vara 65 535 minus 28 som 8 byte för UDP-paketets huvud och 20 byte för IP-huvud.

UDP-huvudet innehåller fyra fält:

    Källportnummer:Det är 16-bitars information som identifierar vilken port som inte ska skicka paketet.Destinationsportnummer:Den identifierar vilken port som kommer att acceptera informationen. Det är 16-bitars information som används för att identifiera tjänst på applikationsnivå på destinationsdatorn.Längd:Det är ett 16-bitars fält som specificerar hela längden på UDP-paketet som också inkluderar rubriken. Minsta värdet skulle vara 8-byte eftersom storleken på rubriken är 8 byte.Kontrollsumma:Det är ett 16-bitars fält, och det är ett valfritt fält. Detta kontrollsummafält kontrollerar om informationen är korrekt eller inte eftersom det finns möjlighet att informationen kan förvanskas under överföring. Det är ett valfritt fält, vilket betyder att det beror på applikationen, om den vill skriva checksumman eller inte. Om den inte vill skriva kontrollsumman är alla 16 bitar noll; annars skriver den kontrollsumman. I UDP appliceras kontrollsummefältet på hela paketet, d.v.s. header såväl som datadel medan, i IP, checksummefältet appliceras endast på headerfältet.

Begreppet kö i UDP-protokoll

UDP-protokoll

I UDP-protokollet används siffror för att särskilja de olika processerna på en server och klient. Vi vet att UDP tillhandahåller en process för att bearbeta kommunikation. Klienten genererar de processer som behöver tjänster medan servern genererar de processer som tillhandahåller tjänster. Köerna är tillgängliga för båda processerna, dvs två köer för varje process. Den första kön är den inkommande kön som tar emot meddelanden, och den andra är den utgående kön som skickar meddelandena. Kön fungerar när processen körs. Om processen avslutas kommer även kön att förstöras.

UDP hanterar sändning och mottagning av UDP-paketen med hjälp av följande komponenter:

    Inmatningskö:UDP-paketen använder en uppsättning köer för varje process.Ingångsmodul:Denna modul tar användardatagrammet från IP:n och hittar sedan informationen från kontrollblockstabellen för samma port. Om den hittar posten i kontrollblockstabellen med samma port som användardatagrammet, ställer den data i kö.Styrblocksmodul:Den hanterar kontrollblocktabellen.Kontrollblockstabell:Kontrollblockstabellen innehåller inmatningen av öppna portar.Utgångsmodul:Utgångsmodulen skapar och skickar användardatagrammet.

Flera processer vill använda UDP:s tjänster. UDP:n multiplexerar och demultiplexar processerna så att de flera processerna kan köras på en enda värd.

Begränsningar

  • Det ger en opålitlig anslutningsleveranstjänst. Det tillhandahåller inga IP-tjänster förutom att det tillhandahåller process-till-process-kommunikation.
  • UDP-meddelandet kan gå förlorat, försenas, dupliceras eller vara ur funktion.
  • Det tillhandahåller inte en pålitlig transportleveranstjänst. Den tillhandahåller ingen bekräftelse eller flödeskontrollmekanism. Det ger dock felkontroll i viss utsträckning.

Fördelar

  • Det ger ett minimalt antal omkostnader.