logo

UDP protokols

Datortīklos UDP apzīmē User Datagram Protocol. Deivids P. Rīds 1980. gadā izstrādāja UDP protokolu. Tas ir definēts RFC 768, un tas ir daļa no TCP/IP protokola, tāpēc tas ir standarta protokols internetā. UDP protokols ļauj datora lietojumprogrammām nosūtīt ziņojumus datagrammu veidā no vienas iekārtas uz otru, izmantojot interneta protokola (IP) tīklu. UDP ir alternatīvs saziņas protokols TCP protokolam (pārraides kontroles protokolam). Tāpat kā TCP, arī UDP nodrošina noteikumu kopumu, kas nosaka datu apmaiņas veidu internetā. UDP darbojas, iekapsulējot datus paketē un nodrošinot paketei savu galvenes informāciju. Pēc tam šī UDP pakete tiek iekapsulēta IP paketē un tiek nosūtīta uz galamērķi. Gan TCP un UDP protokoli nosūta datus pa interneta protokola tīklu, tāpēc to sauc arī par TCP/IP un UDP/IP. Starp šiem diviem protokoliem ir daudz atšķirību. UDP ļauj procesam apstrādāt saziņu, savukārt TCP nodrošina resursdatora un resursdatora saziņu. Tā kā UDP nosūta ziņojumus datu diagrammu veidā, tas tiek uzskatīts par vislabāko saziņas veidu. TCP nosūta atsevišķas paketes, tāpēc tas ir uzticams transporta līdzeklis. Vēl viena atšķirība ir tā, ka TCP ir uz savienojumu orientēts protokols, turpretim UDP ir bezsavienojuma protokols, jo datu pārsūtīšanai nav nepieciešama virtuāla shēma.

UDP nodrošina arī atšķirīgu porta numuru, lai atšķirtu dažādus lietotāju pieprasījumus, kā arī nodrošina kontrolsummas iespēju, lai pārbaudītu, vai ir saņemti visi dati; IP slānis nenodrošina šos divus pakalpojumus.

UDP protokola iezīmes

Tālāk ir norādītas UDP protokola funkcijas:

lineārā meklēšana java
    Transporta slāņa protokols

UDP ir vienkāršākais transporta slāņa sakaru protokols. Tas satur minimālu saziņas mehānismu skaitu. Tas tiek uzskatīts par neuzticamu protokolu, un tā pamatā ir vislabākie piegādes pakalpojumi. UDP nenodrošina apstiprinājuma mehānismu, kas nozīmē, ka saņēmējs nesūta apstiprinājumu par saņemto paketi, kā arī sūtītājs negaida apstiprinājumu par paketi, kuru tas ir nosūtījis.

    Bez savienojuma

UDP ir bezsavienojumu protokols, jo tas nerada virtuālu ceļu datu pārsūtīšanai. Tas neizmanto virtuālo ceļu, tāpēc paketes tiek sūtītas dažādos ceļos starp sūtītāju un saņēmēju, kas noved pie pakešu pazaudēšanas vai saņemšanas ārpus ierindas.

Pasūtītā datu piegāde netiek garantēta.

UDP gadījumā datagrammas tiek nosūtītas noteiktā secībā, ja tās tiks saņemtas tādā pašā secībā, netiek garantēta, jo datagrammas nav numurētas.

    Ostas

UDP protokols izmanto dažādus portu numurus, lai datus varētu nosūtīt uz pareizo galamērķi. Portu numuri ir definēti no 0 līdz 1023.

    Ātrāka pārraide

UDP nodrošina ātrāku pārraidi, jo tas ir bezsavienojumu protokols, t.i., datu pārsūtīšanai nav nepieciešams virtuāls ceļš. Bet pastāv iespēja, ka tiek pazaudēta atsevišķa pakete, kas ietekmē pārraides kvalitāti. No otras puses, ja pakete tiek zaudēta TCP savienojumā, šī pakete tiks nosūtīta atkārtoti, tādējādi garantējot datu pakešu piegādi.

    Atzīšanas mehānisms

UDP ir jebkāds apstiprinājuma mehānisms, t.i., starp UDP sūtītāju un UDP uztvērēju nav rokasspiediena. Ja ziņojums tiek nosūtīts TCP, tad saņēmējs apstiprina, ka esmu gatavs, tad sūtītājs nosūta datus. TCP gadījumā rokasspiediens notiek starp sūtītāju un saņēmēju, savukārt UDP gadījumā starp sūtītāju un saņēmēju nav rokasspiediena.

    Segmenti tiek apstrādāti neatkarīgi.

Katrs UDP segments tiek apstrādāts atsevišķi, jo katrs segments izmanto atšķirīgu ceļu, lai sasniegtu galamērķi. UDP segmenti var tikt pazaudēti vai piegādāti neregulāri, lai sasniegtu galamērķi, jo nav izveidots savienojums starp sūtītāju un saņēmēju.

java aizstāt visu
    Bezvalstnieks

Tas ir bezvalstniecības protokols, kas nozīmē, ka sūtītājs nesaņem apstiprinājumu par nosūtīto paketi.

Kāpēc mums ir nepieciešams UDP protokols?

Kā mēs zinām, UDP ir neuzticams protokols, taču dažos gadījumos mums joprojām ir nepieciešams UDP protokols. UDP tiek izvietots tur, kur paketēm kopā ar faktiskajiem datiem ir nepieciešams liels joslas platums. Piemēram, video straumēšanas gadījumā tūkstošiem pakešu apstiprināšana ir apgrūtinoša un tērē lielu joslas platumu. Video straumēšanas gadījumā dažu pakešu zudums nevarēja radīt problēmas, un to var arī ignorēt.

UDP galvenes formāts

UDP protokols

UDP formātā galvenes lielums ir 8 baiti, un paketes izmērs ir līdz 65 535 baitiem. Bet šis paketes izmērs nav iespējams, jo dati ir jāiekapsulē IP datagrammā un IP paketē, galvenes izmērs var būt 20 baiti; tāpēc UDP maksimālais apjoms būtu 65 535 mīnus 20. Datu lielums, ko UDP pakete var pārnēsāt, būtu 65 535 mīnus 28, jo 8 baiti UDP paketes galvenei un 20 baiti IP galvenei.

saraksts kā masīvs

UDP galvenē ir četri lauki:

    Avota porta numurs:Tā ir 16 bitu informācija, kas identificē, kurš ports sūta paketi.Galamērķa porta numurs:Tas nosaka, kura osta pieņems informāciju. Tā ir 16 bitu informācija, kas tiek izmantota, lai mērķa mašīnā identificētu lietojumprogrammas līmeņa pakalpojumu.Garums:Tas ir 16 bitu lauks, kas norāda visu UDP paketes garumu, kas ietver arī galveni. Minimālā vērtība būtu 8 baiti, jo galvenes izmērs ir 8 baiti.Kontrolsumma:Tas ir 16 bitu lauks, un tas ir izvēles lauks. Šis kontrolsummas lauks pārbauda, ​​vai informācija ir precīza vai nē, jo pastāv iespēja, ka pārraides laikā informācija var tikt bojāta. Tas ir neobligāts lauks, kas nozīmē, ka tas ir atkarīgs no lietojumprogrammas, vai tā vēlas rakstīt kontrolsummu vai nē. Ja tas nevēlas rakstīt kontrolsummu, tad visi 16 biti ir nulle; pretējā gadījumā tas raksta kontrolsummu. UDP gadījumā kontrolsummas lauks tiek lietots visai paketei, t.i., galvenei, kā arī datu daļai, savukārt IP gadījumā kontrolsummas lauks tiek piemērots tikai galvenes laukam.

Rindas jēdziens UDP protokolā

UDP protokols

UDP protokolā cipari tiek izmantoti, lai atšķirtu dažādus procesus serverī un klientā. Mēs zinām, ka UDP nodrošina komunikācijas apstrādes procesu. Klients ģenerē procesus, kuriem nepieciešami pakalpojumi, savukārt serveris ģenerē procesus, kas nodrošina pakalpojumus. Rindas ir pieejamas abiem procesiem, t.i., divas rindas katram procesam. Pirmā rinda ir ienākošā rinda, kas saņem ziņojumus, un otrā ir izejošā rinda, kas nosūta ziņojumus. Rinda darbojas, kad process darbojas. Ja process tiek pārtraukts, tiks iznīcināta arī rinda.

UDP apstrādā UDP pakešu nosūtīšanu un saņemšanu, izmantojot šādus komponentus:

    Ievades rinda:UDP paketes katram procesam izmanto rindu kopu.Ievades modulis:Šis modulis ņem lietotāja datagrammu no IP un pēc tam atrod informāciju no tā paša porta vadības bloka tabulas. Ja tas atrod ierakstu vadības bloka tabulā ar tādu pašu portu kā lietotāja datagramma, tas ievieto datus rindā.Vadības bloka modulis:Tas pārvalda vadības bloka tabulu.Vadības bloku tabula:Vadības bloka tabulā ir atvērto portu ievade.Izvades modulis:Izvades modulis izveido un nosūta lietotāja datagrammu.

Vairāki procesi vēlas izmantot UDP pakalpojumus. UDP multipleksē un demultipleksē procesus, lai vairāki procesi varētu darboties vienā resursdatorā.

Ierobežojumi

  • Tas nodrošina neuzticamu savienojuma piegādes pakalpojumu. Tas nenodrošina nekādus IP pakalpojumus, izņemot to, ka tas nodrošina saziņu starp procesiem.
  • UDP ziņojums var tikt pazaudēts, aizkavēts, dublēts vai var nebūt kārtībā.
  • Tas nenodrošina uzticamu transporta piegādes pakalpojumu. Tas nenodrošina nekādu apstiprinājumu vai plūsmas kontroles mehānismu. Tomēr tas zināmā mērā nodrošina kļūdu kontroli.

Priekšrocības

  • Tas rada minimālu pieskaitāmo izmaksu skaitu.