
- •Реферат на тему:
- •Обзор протоколов tcp/ip
- •Введение Назначение ip
- •Введение в функциональность ip
- •Обзор ip Связь с другими протоколами
- •Сценарий работы
- •Описание функций
- •Адресация
- •Классы ip-адресов
- •Соглашения о специальных адресах: broadcast, multicast, loopback
- •Фрагментация
- •Формат заголовка ip
Формат заголовка ip
Ниже приведена полная схема полей заголовка Internet.
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
0 |
1 |
|||
Version |
IHL |
Type of Service |
Total Length |
|||||||||||||||||||||||||||||||
Identification |
Flags |
Fragment Offset |
||||||||||||||||||||||||||||||||
Time to Live |
Protocol |
Header checksum |
||||||||||||||||||||||||||||||||
Source Address |
||||||||||||||||||||||||||||||||||
Destination Address |
||||||||||||||||||||||||||||||||||
Options |
Padding |
Каждая позиция соответствует одному биту.
Version (версия) 4 бита.
Поле версии показывает формат заголовка Internet. В работе используется IP версии 4.
IHL (длина Internet заголовка) 4 бита.
Длина Internet заголовка измеряется в словах по 32 бита каждый и указывает на начало поля данных. Корректный заголовок может иметь минимальный размер 5 слов.
Type of Service (тип обслуживания) 8 бит.
Тип обслуживания определяет с помощью неких абстрактных параметров тип требуемого обслуживания. Эти параметры должны использоваться для управления выбором реальных рабочих характеристик при передаче датаграммы через конкретную сеть. екоторые сети осуществляют обслуживание с приоритетом, которое неким образом дает преимущество для продвижения данной датаграммы по сравнению со всеми остальными.
Реально выбор осуществляется между тремя альтернативами: малой задержкой, высокой достоверностью и высокой пропускной способностью.
Total Length (общая длина) 16 бит.
Общая длина — это длина датаграммы, измеренная в октетах, включая Internet заголовок и поле данных. Это поле может задавать длину датаграммы вплоть до 65535 октетов. В большинстве случаев столь большие датаграммы не используются. Все узлы должны быть готовы принимать датаграммы вплоть до 576 октетов длиной (приходят ли они целиком или по фрагментам). Узлам рекомендуется отправлять датаграммы размером более чем 576 октетов, только если они уверены, что принимающий узел готов обслуживать датаграммы повышенного размера.
Identification (идентификатор) 16 бит.
Идентификатор устанавливается отправителем для сборки фрагментов какой-либо датаграммы.
Flags (контрольные биты) 3 бита.
Ниже приведена таблица значений контрольных битов.
Смещение |
Значение |
0 |
Зарезервирован, всегда должен быть ноль |
1 |
0 — возможно фрагментирование 1 — запрет фрагментации |
2 |
0 — последний фрагмент или нет фрагментации 1 — будут еще фрагменты |
Fragment Offset (смещение фрагмента) 13 бит.
Это поле показывает, где в датаграмме находится этот фрагмент. Смещение фрагмента изменяется порциями по 8 октет (64 бита). Первый фрагмент имеет смещение ноль.
Time to Live (Время жизни) 8 бит.
Это поле показывает максимальное время, в течении которого датаграмме позволено находиться в системе Internet. Если это поле имеет значение нуль, то датаграмма должна быть разрушена. Значение этого поля изменяется при обработке заголовка Internet. Время измеряется в секундах. Однако, поскольку каждый модуль, обрабатывающий датаграмму, должен уменьшать значение поля TTL по крайней мере на единицу, даже если он обрабатывает эту датаграмму менее, чем за секунду, то поле TTL следует понимать как максимальный интервал времени, в течении которого датаграмма может существовать.
Protocol (Протокол) 8 бит.
Это поле показывает, какой протокол следующего уровня использует данные из Internet датаграммы. Например, при использовании TCP данное поле будет принимать значение 6.
Header Checksum (Контрольная сумма заголовка) 16 бит.
Поскольку некоторые поля заголовка меняют свое значение (например, время жизни), это значение проверяется и повторно рассчитывается при каждой обработке Internet заголовка.
Source Address (адрес отправителя) 32 бита.
Destination Address (адрес получателя) 32 бита.
Options (опции) поле переменной длины.
Опции могут появиться в датаграммах, а могут и не появляться. Они должны поддерживаться всеми Internet модулями. Не обязательно каждая конкретная датаграмма несет опции, но нести их все же может.
Октет — форма представления восьми бит данных в виде двух шестнадцатиричных цифр.
Для того, чтобы преобразовать в октет восемь двоичных разрядов, нужно перевести двоичное число, которое они образуют, в шестнадцатиричное и, если результат меньше 0x10, дополнить его нулем слева. Например, при преобразовании 00000000, получим 00; 11111111 — FF; 00001111 — 0F.
Стоит подчеркнуть, что один октет всегда содержит восемь бит данных, но далеко не всегда — восьмиразрядное двоичное число.
Чтобы из октета восстановить битовые данные, значение октета следует перевести в двоичное число и дополнить его нулями слева до получения восьми бит данных.
Узел — активный аппаратный элемент сети, на котором выполняется IP модуль. Например, компьютер или брэндмауер.