UDP (User Datagram Protocol) er einn af grunn samskiptastöðlum internetsins. Með UDP geta forrit á nettengdum tölvum sent hvort öðru stutt gagnaskeyti án þess að þurfa að stofna til tengingar eins og með TCP staðlinum. UDP staðallinn var hannaður af David P. Reed árið 1980.

Öfugt við TCP tryggir UDP hvorki að gagnaskeyti skili sér né að þau komi í réttri röð. Gagnaskeytin geta komið í rangri röð, geta komi oftar en einu sinni eða jafnvel horfið sporlaust. Þessir gallar eru hinsvegar einnig styrkleikar UDP staðalsins þar sem að sé þeim athugunum sem TCP framkvæmir sleppt fæst skilvirkari samskiptastaðall með minnir yfirbyggingu. Í tölvuleikjum til dæmis þar sem tímasetning skilaboða skiptir meira máli en að þau skili sér er UDP notað í samskiptum milli þjóns og biðlara. Stöðuleysi UDP-staðalsins er einnig mjög gagnlegt fyrir þjóna sem þurfa að svara gífurlegum fjölda biðlara með litlum upplýsingum eins og til dæmis DNS þjónar.

Port

UDP-portum er eingöngu ætlað að taka við gagnaskeytum. Til að senda gagnaskeyti þarf ekki annað en að smíða pakkann og senda hann af stað. Port númerið er 16 bita tala sem þýðir að portnúmer geta verið frá 0 til 65.535. Port 0 er frátekið en hægt er að skilgeina það sem upprunaport ef ekki er búist við svari. Port 1-1023 eru einnig frátekin fyrir stýrikerfið og eru þau svokölluð vel þekkt port.

Pakkar

Uppbygging UDP pakka

                0      7 8     15 16    23 24    31  
                +--------+--------+--------+--------+ 
                |     Portnúmer   |   Portnúmer     | 
                |     Sendanda    |   móttakanda    | 
                +--------+--------+--------+--------+ 
                |                 |                 | 
                |     Lengd       |  Tékksumma  | 
                +--------+--------+--------+--------+ 
                |                                     
                |          Gögn...           
                +---------------- ...

Portnúmer sendanda þarf ekki að stilla en ef það er stillt er venjulega miðað við að það bendi á það port sem sendandi býst við svari á. Einnig er hægt að stilla það sem 0 til að gefa í skyn að ekki sé búist við svari. Portnúmer móttakanda verður að stilla til að stýrikerfi vélar þeirrar sem móttekur viti hvert skal skila pakkanum. Lengd og tékksumma eru svo notuð til að athuga hvort allur pakkinn hafi skilað sér og hann hafi ekki skemmst á leiðinni.

Það sést glöggt að yfirbygging UDP pakka er mjög lítil sem gerir það að verkum að UDP er mjög skilvirkur staðall.

Munur á UDP og TCP

TCP er tengingamiðaður staðall sem þýðir að áður en samskipti geta átt sér stað þarf frumstilling að eiga sér stað til að setja upp tengingu milli endapúnkta. Aðeins eftir að þessi tenging hefur verið sett upp er hægt að senda gögn um tenginguna.

UDP er einfaldur skeytamiðaður staðall sem krefst engra tenginga. Skilaboð eru send af stað án þess að athuga hvort móttakandi er einusinni til staðar.

Heimildir