Протокол UDP

Матеріал з Вікі ЦДУ
Версія від 06:08, 20 листопада 2010; Козінцев Олексій (обговореннявнесок)

(різн.) ← Попередня версія • Поточна версія (різн.) • Новіша версія → (різн.)
Перейти до: навігація, пошук

4.8 Протокол UDP
Протокол передачі призначених для користувача дейтаграм - User Datagram Protocol (UDP) значно простіше розглянутого в попередньому параграфі протоколу TCP і призначається для обміну дейтаграммами між процесами комп'ютерів, розташованих в об'єднаній системі комп'ютерних мереж.
Протокол UDP базується на протоколі IP і надає прикладним процесам транспортні послуги, трохи відрізняються від послуг протоколу IP.
Протокол UDP забезпечує негарантовану доставку даних, тобто не вимагає підтвердження їх отримання;
крім того, даний протокол не потребує встановлення з'єднання між джерелом і приймачем інформації, тобто між модулями UDP.
До заголовку IP-пакету протокол UDP додає службову інформацію у вигляді заголовка UDP-пакета (мал. 4.6).

VoIP 4.6.png
Рис. 4.6. Формат UDP-пакета Порт відправника (Source Port) - поле вказує порт робочої станції, яка передала дейтаграму. На цей порт слід адресувати відповідну дейтаграму. Якщо дане поле не використовується, воно заповнюється нулями.
Порт одержувача (Destination Port) - поле ідентифікує порт робочої станції, на яку буде доставлено пакет.
Довжина (Length) - це поле інформує про довжину UDP-пакета в октетах, включаючи як заголовок, так і дані. Мінімальне значення довжини дорівнює восьми.
Контрольна сума (Checksum) - поле перевірки правильності передачі даних заголовка пакету, псевдозаголовка і поля корисного навантаження пакета. Якщо дане поле не використовується, воно заповнюється нулями.
Модуль IP, реалізований в приймаючій робочої станції, передає надходить з мережі IP-пакет модулю UDP, якщо в заголовку цього пакету зазначено, що протоколом верхнього рівня є протокол UDP. При отриманні пакету від модуля IP модуль UDP перевіряє контрольну суму, що міститься в його заголовку. Якщо контрольна сума дорівнює нулю, значить, відправник її не підрахував. Протоколи UDP і TCP мають один і той же алгоритм обчислення контрольної суми (RFC-1071), але механізм її обчислення для UDP-пакета має деякі особливості. Зокрема, UDP-дейтаграмма може містити непарне число байтів, і в цьому випадку до неї, для уніфікації алгоритму, додається нульовий байт, який нікуди не пересилається.
Більш докладну інформацію про протокол UDP можна знайти в RFC-768.


--Козінцев Олексій 36 гр. 06:08, 20 листопада 2010 (EET)