Примеры

Up Поле опций Коментарий Интерфейсы Примеры

Примеры и сценарии

Форматы заголовков
Порядок передачи данных

Пример 1

Пример минимальной Internet датаграммы, несущей данные

Ver = 4 IHL = 5 Type of Service

Total Length = 21

Identification = 111

Flg = 0

Fragment Offset = 0

Time = 123

Protocol = 1

Header Checksum

Source Address

Destination Address

data

.

Рис. 5 Пример Internet датаграммы

Напомним, что каждая метка означает место для одного бита. Здесь приведена Internet датаграмма версии 4 Internet протокола. Internet заголовок состоит из пяти 32 битных слов, а общая длина датаграммы составляет 21 октет. Данная датаграмма является полноценной датаграммой (а не фрагментом).

Пример 2

В данном примере мы показываем сперва Internet датаграмму промежуточного размера (452 октета данных), а затем два Internet фрагмента, которые могли бы возникнуть при фрагментации исходной датаграммы в случае, когда максимальная допустимая единица пересылки составляла 280 октетов.

Ver = 4 IHL = 5 Type of Service

Total Length = 472

Identification = 111

Flg = 0

Fragment Offset = 0

Time = 123

Protocol = 6

Header Checksum

Source Address

Destination Address

data

data

data

data

.

Рис. 6 Пример Internet датаграммы

Теперь приведем первый фрагмент, который возникает при расщеплении исходной датаграммы по границе после 256 октета данных.

Ver = 4 IHL = 5 Type of Service

Total Length = 276

Identification = 111

Flg = 1

Fragment Offset = 0

Time = 119

Protocol = 6

Header Checksum

Source Address

Destination Address

data

data

data

data

Рис. 7 Пример Internet фрагмента

и второй фрагмент

Ver = 4 IHL = 5 Type of Service

Total Length = 216

Identification = 111

Flg = 0

Fragment Offset = 32

Time = 119

Protocol = 6

Header Checksum

Source Address

Destination Address

data

data

data

data

.

Рис. 8 Пример Internet заголовка

Пример 3

Здесь мы показываем пример, когда датаграмма имеет опции

Ver = 4 IHL = 8 Type of Service

Total Length = 576

Identification = 111

Flg = 0

Fragment Offset = 32

Time = 123

Protocol = 6

Header Checksum

Source Address

Destination Address

Opt.Code = x

Opt.Len. = 3

option value

Opt.Code = x

Opt.Len. = 4

option value

Opt.Code = 1

Opt. Code = y

Opt.Len. = 3

option value

Opt. Code = 0

data

data

data

Рис. 9 Пример Internet датаграммы

 

Порядок передачи данных

Порядок передачи заголовка и данных, описанных в данном документе, определяется на уровне октетов. В то время как диаграмма обозначает группу октетов, порядок их передачи является таким же, как при чтении на английском языке. Например, в нижеприведенной диаграмме октеты передаются в порядке номеров.

01234567 89012345 67890123 45678901

1

2

3

4

5

6

7

8

9

10

11

12

Рис. 10 Порядок передачи байтов

Октет представляет собой число, для которого самый левый бит на диаграмме является самым старшим или самым значащим битом. Так бит, отмеченный нулем, является наиболее значащим битом. Например, следующая диаграмма представляет число 170 (десятичное)

0 1 2 3 4 5 6 7
1 0 1 0 1 0 1 0

Рис. 11 Старшинство битов

Аналогично, если многооктетное поле представляет число, то самый левый бит в этом поле является самым значащим битом. При передаче многооктетного числа самый значащий октет передается первым.