User Datagram Protocol – Уикипедия

OSI модел
7. Приложен слой
NNTP • SIP • SSI • DNS • FTP • Gopher • HTTP • NFS • NTP • SMPP • SMTP • DHCP • SNMP • SSH • Telnet • Netconf • други...
6. Представителен слой
MIME • XDR • TLS • SSL
5. Сесиен слой
Named Pipes • NetBIOS • SAP • L2TP • PPTP
4. Транспортен слой
TCP • UDP • SCTP • DCCP • SPX
3. Мрежов слой
IP (IPv4, IPv6) • ICMP • IPsec • IGMP • IPX • AppleTalk • IS-IS • OSPF • RIP • BGP • IGRP • EIGRP
2. Канален слой
MAC адрес • ATM • SDLC • HDLC • ARP • CSLIP • SLIP • PLIP • IEEE 802.3 • Frame Relay • ITU-T G.hn DLL • PPP • X.25 • Суич
1. Физически слой
EIA/TIA-232 • EIA/TIA-449 • ITU-T V-Series • I.430 • I.431 • POTS • PDH • SONET/SDH • PON • OTN • DSL • IEEE 802.3 • IEEE 802.11 • IEEE 802.15 • IEEE 802.16 • IEEE 1394 • ITU-T G.hn PHY • USB • Bluetooth • Хъб

User Datagram Protocol (UDP) е минимален транспортен пакетен протокол, документиран в IETF RFC 768.

В семейството от TCP/IP протоколи UDP предоставя прост интерфейс между мрежовия протокол под него и приложните протоколи над него. UDP не гарантира доставката на данните: не се пази информация за изпратено съобщение, заради което UDP понякога се превежда и като Unreliable Datagram Protocol. UDP добавя към IP пакета единствено мултиплексиране на приложения (чрез номерата на портовете) и проверка на целостта на данните (чрез контролна сума).[1] В случай че е необходима надеждност на предаването, тя трябва да се реализира в потребителското приложение.

Строеж на UDP пакета в IP4[редактиране | редактиране на кода]

+ Битове от 0 – 15 Битове 16 – 31
0 Изходен порт Порт на дестинацията
32 Дължина Контролна сума
64
Данни

Този строеж на пакета касае версия 4 на интернет протокола (IP v4). Заглавната част на UDP пакета се състои от 4 полета, от които две не са задължителни. Изходящият (source) и входящият (destination) порт са 16-битови полета, идентифициращи изпращащия и получаващия процеси. Тъй като UDP не пази междинно състояние и няма повторно изпращане на UDP пакети, изходящият порт не е задължителен; в такъв случай следва да е нула. След портовете се намира задължително 16-битово поле за дължина в байтове на UDP пакета (заглавие и данни). Така минималната дължина става 8 байта (големината на заглавието). Последното поле е 16-битова контролна сума върху заглавието и данните. Контролната сума също не е задължителна, но се използва почти винаги.

Употреба[редактиране | редактиране на кода]

Приложенията, използващи UDP, трябва да толерират загуба на пакети, дублиране и дори размяна в последователността на пристигането им. Някои приложения като Trivial File Transfer Protocol може да добавят базови механизми за надеждно доставяне на данните в приложния слой, но най-често UDP се използва от приложения, които не изискват надеждна доставка, или такива, при които това пречи. Примери за приложения, които обикновено използват UDP, са Streaming media, мрежови игри в реално време и глас през IP (VoIP). Когато е необходима по-висока степен на надеждност, може да се използва TCP.

UDP няма механизми за избягване на задръствания, заради което общи механизми в самата мрежа се грижат да намалят ефекта на неконтролиран UDP трафик. С други думи, изпращащите UDP пакети не могат да установят дали не претоварват мрежата с трафика си. Когато това стане, мрежовото оборудване (рутерите) започват да редят пакетите в опашки до освобождаване на канал, по който да ги изпратят. Ако това не стане достатъчно бързо, част от пакетите се изхвърлят. Частично решение на този проблем е Datagram Congestion Control Protocol (DCCP), в който към UDP поток се добавя контролна информация, подпомагаща избягване на задръствания.

Въпреки че UDP трафикът в една обикновена мрежа често е само няколко процента, много ключови приложения използват UDP. Такива са например Domain Name System (DNS), Simple Network Management Protocol (SNMP), Dynamic host configuration protocol (DHCP) Routing Information Protocol (RIP).

Източници[редактиране | редактиране на кода]

  1. ((en)) Clark, M.P. (2003). Data Networks IP and the Internet, 1st ed. West Sussex, England: John Wiley & Sons Ltd.

Външни препратки[редактиране | редактиране на кода]