RFC 768 — Вікіпедія

RFC 768 — Запит коментарів, що описує протокол дейтаграм користувача

Вступ

[ред. | ред. код]

Протокол датаграм користувача (UDP) проектувався для створення в об'єднаній системі комп'ютерних мереж з комутацією пакетів режиму передачі датаграм користувача. Протокол UDP передбачає використанням рівнем нижче протоколу IP.

Цей протокол надає прикладній програмі процедуру пересилання повідомлень іншим програмам використовуючи мінімальний механізм протоколу. Застосунок («згідно з Microsoft», «програма» згідно з Apple, Application англійською), що потребує гарантоване отримання даних має використовувати протокол керування передачею.

Формат заголовка для датаграм користувача

[ред. | ред. код]
                 0      7 8     15 16    23 24    31                   +--------+--------+--------+--------+                  |      Порт       |      Порт       |                  |   Відправника   |   Отримувача    |                  +--------+--------+--------+--------+                  |                 |                 |                  |     Довжина     | Контрольна Сума |                  +--------+--------+--------+--------+                  |                                                      |          октети даних ...                             +---------------- ...                                

Якщо задіяний порт відправника, то він вказує порт процесу, що відправляє датаграму і може вважатися портом, на який слід адресувати датаграму у відповідь за відсутності іншої додаткової інформації. Якщо значення відсутнє, то підставляється нуль.

Порт отримувача має сенс лише в контексті конкретної Інтернет адреси отримувача.

Довжина — довжина октета даних даної датаграми, включаючи як заголовок так і дані. (Це означає, що мінімальне значення довжини — вісім.)

Контрольна сума — 16 бітне доповнення до одиниці суми доповнення до одиниці псевдозаголовка інформації з заголовка IP, заголовка UDP і даних, доповнених при необхідності нульовим октетом, щоб загальна кількість октетів була парна.

Формат псевдозаголовка для датаграм користувача

[ред. | ред. код]
                 0      7 8     15 16    23 24    31                  +--------+--------+--------+--------+                 |         адреса відправника        |                 +--------+--------+--------+--------+                 |         адреса отримувача         |                 +--------+--------+--------+--------+                 |  нулі  |протокол|   довжина UDP   |                 +--------+--------+--------+--------+ 

Псевдозаголовок, що згідно з концепцією передує заголовку UDP, містить адресу відправника, адресу отримувача, протокол і довжину UDP. Ця інформація призначена для запобігання помилки в маршруті датаграм. Процедура обчислення контрольної суми збігається з протоколом TCP.

Якщо обчислена контрольна сума рівна нулю, вона передається як поле, що цілком складається з одиниць (еквівалент доповнення до одиниці). Якщо контрольна сума містить тільки нулі, то відправник датаграми не обчислював контрольної суми (для відлагодження (debugging) або протоколів що не потребують точності передачі).

Інтерфейс користувача

[ред. | ред. код]

Інтерфейс користувача має реалізувати:

  • операції створення нових портів для отримування (receive ports),
  • операції отримування на портах отримування, які здатні отримувати октети даних а також визначати порт і адресу відправника,
  • операції для відправлення датаграм з вказаними даними, адресами і портами відправника і отримувача.

Інтерфейс протоколу IP

[ред. | ред. код]

Модуль протоколу UDP повинен мати можливість визначати інтернет адреси і поля протоколів відправника і отримувача з інтернет заголовка. Один з можливих UDP інтерфейсів міг би у відповідь на команду повертати інтернет діаграму повністю, включаючи інтернет заголовок. Цей інтерфейс також міг би дозволяти протоколу UDP передавати протоколу IP для відправлення певну готову інтернет датаграму із заголовком. Протокол IP міг би перевіряти лише визначені поля інтернет заголовка на сумісність та обчислювати контрольну суму інтернет заголовка.

Застосування протоколу

[ред. | ред. код]

Головними застосуваннями протоколу UDP є Internet Name Server і Trivial File Transfer.

Номер протоколу

[ред. | ред. код]

При використанні протоколу IP, UDP має номер 17 (21 у системі числення з основою вісім) Список інших номерів протоколу наведений тут [Архівовано 18 грудня 2008 у Wayback Machine.]

Посилання

[ред. | ред. код]
  1. Запит коментарів (RFC)
  2. Протокол Датаграм користувача (UDP)
  3. RFC 760. Internet Protocol [Архівовано 18 грудня 2008 у Wayback Machine.]
  4. RFC 762. Assigned Numbers [Архівовано 18 грудня 2008 у Wayback Machine.]
  5. RFC 761. Transmission Control Protocol [Архівовано 18 грудня 2008 у Wayback Machine.]
  6. RFC 768. UDP [Архівовано 22 липня 2012 у Archive.is]
  7. IEN 116. Internet Name Server
  8. IEN 133. The TFTP Protocol