UDP

tiedonsiirtoprotokolla
Tämä artikkeli käsittelee lyhenteen UDP käyttöä tietotekniikassa. Biokemiassa UDP tarkoittaa uridiinidifosfaattia

UDP (lyhenne sanoista User Datagram Protocol) on ns. yhteydetön tietoliikenneprotokolla, joka ei vaadi yhteyttä laitteiden välille, mutta mahdollistaa tiedon siirron.[1][2] UDP on yksinkertainen datagram-pohjainen (tietosähke) kuljetuskerroksen protokolla.[2] UDP ei sisällä virheen korjausta mutta voi sisältää virheen havaitsemisen tarkistussummalla. UDP ei sisällä sekvenssejä (järjestys), kaksoiskappaleiden poistoa, vuon- tai ruuhkanhallintamekanismeja[2], mutta siihen perustuvat sovellukset voivat niitä itse lisätä.

UDP eroaa TCP:stä monin tavoin. Muun muassa paketin perillemenoa ei varmisteta päästä päähän (alempi taso kyllä varmistaa seuraavaan solmuun asti). UDP:ta käytetään esimerkiksi DNS-pyyntöjen lähettämiseen, verkkopeleissä ja reaaliaikaisen videon ja äänen välittämiseen. UDP:n yleisrasite on pienempi kuin TCP:n, siinä ei suoriteta alkukättelyä, pakettien kuittausta eikä yhteyden lopettamista. Se ei silti välttämättä ole nopeampi kuin TCP, koska TCP:n liukuva ikkuna (sliding window) kompensoi tehokkaasti kuittausten viemää aikaa.

UDP:n käyttöön TCP:n asemasta viitataan toisinaan termillä UDP/IP.[3]

UDP:tä käytetään myös perustana HTTP/3-protokollassa[4] jossa aiemmista HTTP-versioista poiketen ei käytetä TCP:tä lainkaan, vaan UDP:hen perustuvaa QUIC:iä.

UDP-datapaketti

muokkaa
+ Bitit 0 - 15 16 - 31
0 Lähdeosoitteen portti Kohdeosoitteen portti
32 Datan koko Tarkistussumma
64  
Data
 

Vaaleanpunaisella taustalla näkyvät kohdat eivät ole pakollisia. Data-osion teoreettinen maksimikoko on 65,527 tavua.

UDP-paketti on kapseloinnin johdosta läpinäkymätön kuorma IPv4 / IPv6 -paketeille ja siinä itsessään ei ole eroa.[2] Koska IPv6-paketissa itsessään ei ole tarkistussummaa on se oltava pseudoheader-osiossa UDP-paketin yhteydessä.[2]

UDP-paketti IPv4 verkossa

muokkaa
IPv4 pseudoheader-muoto
Offsetit Oktetti 0 1 2 3
Oktetti Bitti 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
0 0 Lähdeosoite (IPv4)
4 32 Kohdeosoite (IPv4)
8 64 Nollaa Protokolla UDP-pituus
12 96 Lähdeportti Kohdeportti
16 128 Pituus Tarkistussumma
20 160+ Data

UDP-paketti IPv6-verkossa

muokkaa
IPv6 pseudoheader-muoto
Offsetit Oktetti 0 1 2 3
Oktetti Bitti 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
0 0 Lähdeosoite (IPv6)
4 32
8 64
12 96
16 128 Kohdeosoite (IPv6)
20 160
24 192
28 224
32 256 UDP-pituus
36 288 Nollaa Seuraava otsikko
40 320 Lähdeportti Kohdeportti
44 352 Pituus Tarkistussumma
48 384+ Data

Hyötykuorma tarkoittaa datan pituutta IPv6-paketin otsakkeen jälkeen, siihen lasketaan pakettiin lisänä tulevat ylimääräiset otsakkeet.

Standardointi

muokkaa
 

UDP on IP-protokolla numero 17. UDP-porttien numerointi löytyy artikkelista portti.

Käyttö

muokkaa

Sovellustasolla

muokkaa
  • CoAP on vähävirtaisille laitteille sekä muihin rajattuihin oloihin luotu sovellustason protokolla.
  • DNS välittää verkko-osoitteita verkkoon kytkettyjen laitteiden välillä.
  • HTTP/3 on HTTP-protokollaperheen kolmas täysi versio, joka perustuu HTTP/2:een ja QUIC:iin parilla muutoksella.[4] Sitä tukee ainakin 78% selaimista[5] ja yli 30% verkkosivustoista[6].

Kuljetustasolla

muokkaa

Vaikka UDP onkin kuljetustason protokolla, se on yksinkertaisiin tietosähkeisiin perustuva. Siitä syystä se on osoittautunut hyväksi alustaksi, joten siihen perustuu moni muukin kuljetustason protokolla, kuten SCTP, UDT ja QUIC.

  • QUIC on viime vuosien aikana internetin jättiyritysten kesken suosioon noussut kuljetuskerroksen protokolla, joka on monin paikoin syrjäyttänyt TCP/IP:n käytön[7]. Niiden ulkopuolella QUIC-teknologia vaikuttaa kuitenkin vielä olevan marginaalissa, kun kesäkuussa 2024 vain 8% sivustoista tuki kyseistä protokollaa.[8] Se on hiemainen nousu vuodesta 2020[7] mutta eniten sivuja tuki sitä huhtikuussa 2023[9].

Katso myös

muokkaa

Lähteet

muokkaa
  1. Deon Reynders ja Edwin Wright: Practical TCP/IP and Ethernet networking, s. 131. Newnes, 2003. ISBN 9780750658065 (englanniksi)
  2. a b c d e Fall, Kevin R. & Stevens, W. Richard: TCP/IP Illustrated, Volume 1. (Second Edition) Addison-Wesley. ISBN 978-0-321-33631-6
  3. UDP – USER DATAGRAM PROTOCOL ipv6.com. Viitattu 4.6.2019. (englanniksi)
  4. a b Mike Bishop: HTTP/3. IETF Request for Comments (RFC) Pages - TEST, 2022-06, nro RFC 9114. Internet Engineering Task Force. ISSN 2070-1721 Artikkelin verkkoversio. Viitattu 23.6.2024. (englanti)
  5. HTTP/3 protocol | Can I use... caniuse.com. Arkistoitu 18.4.2024. Viitattu 23.6.2024.
  6. Usage Statistics of HTTP/3 for Websites, June 2024 w3techs.com. Arkistoitu 23.6.2024. Viitattu 23.6.2024.
  7. a b Muropaketin toimitus: Kohta yhä useampi nettisivu latautuu nopeammin - Google ilmoitti tukevansa HTTP/3- ja QUIC -protokollia Muropaketti.com. 14.10.2020. ”Yli puolet Chromen tiedonsiirrosta Googlen palvelimille tapahtuu jo Googlen QUIC-protokollan kautta...Tällä hetkellä HTTP/3- ja IETF QUIC -protokollia tukevat kuitenkin vain 7,5 prosenttia kaikista nettisivuista” Viitattu 23.6.2024.
  8. Usage Statistics of QUIC for Websites, June 2024 w3techs.com. 23.6.2024. Viitattu 23.6.2024.
  9. Usage statistics of QUIC for websites W3TECHS. 7.7.2023. Arkistoitu 7 Jun 2023 06:21:10 UTC. Viitattu 23.6.2024.

Aiheesta muualla

muokkaa