10 Protokol UDP (User Datagram Protocol)


    Protokol UDP je jednoduchou alternativou k protokolu TCP. Protokol UDP je nespojovaná služba (na rozdíl od protokolu TCP), tj. nenavazuje spojení. Odesilatel odešle UDP datagram příjemci a už se nestará o tom, zda-li se datagram náhodou neztratil (o to se musí postarat aplikační protokol).UDP datagramy jsou baleny do IP-datagramu.

    Obr. 10.1 Záhlaví UDP datagramu
     
     


    Obr. 10.2 UDP datagram
     

    Pole délka dat obsahuje délku UDP datagramu (délku záhlaví + délku dat). Minimální délka je tedy 8, tj. UDP datagram obsahující pouze záhlaví a žádná data.

    Zajímavé je že pole kontrolní součet nemusí být povinně vyplněné. Výpočet kontrolního součtu je tak v protokolu UDP nepovinný.

    Zejména u důležitých serverů je třeba vždy zkontrolovat, zda-li je opravdu výpočet kontrolního součtu zapnut. Nejnebezpečnější je to v případě DNS serveru, protože kontrolní součet pak je počítán jen na linkové vrstvě, ale např. linkový protokol SLIP výpočet kontrolního součtu také nepočítá, takže i technická porucha může způsobit poškození aplikačních dat, aniž by to měl příjemce šanci zjistit.

    Pakliže se kontrolní součet počítá, pak se podobně jako pro protokol TCP počítá ze struktury (pseudozáhlaví) znázorněné na obrázku 10.3.
     


    Obr. 10.3 Pseudozáhlaví pro výpočet kontrolního součtu v UDP datagramu

       
      ...

Oběžníky

Na první pohled by se zdálo, že protokol UDP je chudým příbuzným protokolu TCP. Muže však existovat něco co umí protokol UDP a nelze to udělat protokolem TCP? Právě zvláštností protokolu UDP je skutečnost, že adresátem UDP datagramu nemusí být pouze jednoznačná IP-adresa, tj. síťové rozhraní konkrétního počítače. Adresátem může být skupina stanice – adresovat lze i oběžník.

Adresovat lze všeobecné oběžníky (broadcast), ale podstatně zajímavějším případem je adresování adresných oběžníků (multicast). Např. u aplikací typu RealAudio navazuje každý klient spojení se serverem. Kdežto u ProgresiveRealAudio se šíři data pomocí adresných oběžníků, tj. dochází k ohromné úspoře kapacity přenosových cest. A právě to je příležitost pro UDP.