Сетевые информационные технологии


Протоколы транспортного уровня TCP и UDP - часть 2


Сообщение протокола UDP называют абонентской дейтаграммой (user datagram). Оно состоит из заголовка и блока данных. Заголовок пользовательской дейтаграммы состоит из четырех шестнадцатибитовых полей (рис. 39).

0                   7

8                  15

16                 23

 

             24          31

 

Адрес порта процесса отправителя

Адрес порта  процесса получателя

Полная длина (в октетах) дейтаграммы (заголовка и блока данных пользователя)

Контрольная сумма

 

Рис. 39. Формат заголовка дейтаграммы протокола UDP

Поля "Адрес порта процесса отправителя" и "Адрес порта процесса получателя" определяют адреса портов процесса отправителя и процесса получателя. Поле "Адрес порта процесса отправителя" имеет конкретное значение только в том случае, если процесс отправитель должен получить ответное сообщение, в противном случае оно заполняется нулями.

Поле "Полная длина дейтаграммы" указывает полную длину (в октетах) заголовка и блока данных пользовательской дейтаграммы.

Поле "Контрольная сумма" содержит контрольную сумму. При ее расчете учитываются также сетевые адреса. В целом расчет контрольной суммы производится следующим образом:

1.       Блок данных сообщения дополняется нулями до целого числа 16 битовых слов.

2.       Поле "Контрольная сумма" заполняется нулями.

3.       Перед  сообщением  помещается  псевдозаголовок, структура которого показана на рис. 40.

4.       Расчет контрольной суммы производится по всей этой совокупности данных, после чего снимаются псевдозаголовок и дополнение нулями, значение контрольной суммы помещается в соответствующее поле заголовка, а дейтаграмма передается сетевому уровню (протокол IP).

 

0                   7

8                 15

16

       23

24

       31

Адрес IP отправителя

 

Адрес IP получателя

00000000

Код протокола (для1ЮР"17")

Длина сообщения

<


Начало  Назад  Вперед



Книжный магазин