Формат заголовка IP-дейтаграммы



Слово/ Бит 0...3 4...7 8...15 16...18 19...31
  Version IHL Type of Service Total Length
  Identification Flags Fragment Offset
  Time тo Live Protocol Header Checksum
  Source IP Address
  Destination IP Address
  Option

Поля заголовков имеют следующие назначения.

Version, 4 бита – номер версии протокола, определяющий формат заголовка. В настоящее время широко используется версия 4, и дальнейшее описание относится к ней.

IHL (Internet Header Length), 4 бита – длина заголовка в 32-битных словах (не менее 5).

Type of Service, 8 бит – абстрактное описание качества сервиса:

· биты 0-2 – Precedence (старшинство, преимущество) – параметр, определяющий приоритет трафика (большему значению соответствует больший приоритет);

· бит 3 – Delay (задержка): 0 – нормальная, 1 – малая;

· бит 4 – Throughput (пропускная способность): 0 – нормальная, 1 – высокая;

· бит 5 – Reliability (надежность): 0 – нормальная, 1 – высокая;

· биты 6-7 – резерв.

Total Length, 16 бит – общая длина дейтаграммы (заголовок и данные) в октетах (байтах). Допускается длина до 65 535 байт, но все хосты, безусловно, допускают прием пакетов длиной только до 576 байт. Пакеты большей длины рекомендуется посылать только по предварительной договоренности с принимающим хостом.

Identification, 16 бит – идентификатор, назначаемый посылающим узлом для сборки фрагментов дейтаграмм.

Flags, 3 бита – управляющие флаги:

· бит 0 – резерв, должен быть нулевым;

· бит 1 – DF (Don't Fragment – запрет фрагментирования):0 – дейтаграмму можно фрагментировать, 1 – нельзя;

· бит 2 – MF (More Fragments – будут еще фрагменты): 0 – последний фрагмент, 1 – не последний.

Fragment Offset, 13 бит – местоположение фрагмента в дейтаграмме (смещение в 8-байтных блоках). Первый фрагмент имеет нулевое смещение.

Time to Live (TTL), 8 бит – время жизни пакета в сети, формально – в секундах. Нулевое значение вызывает необходимость удаления дейтаграммы. Начальное значение задается отправителем, шлюзы декрементируют поле по получении пакета и каждую секунду пребывания пакета в очереди на обработку (пересылку). Поскольку современное оборудование редко задерживает пакет более чем на секунду, это поле может использоваться для подсчета промежуточных узлов (hop count). Заданием TTL можно управ­лять дальностью распространения пакетов: при TTL=1 пакет не может выйти за пределы подсети отправителя.

Protocol, 8 бит – идентификатор протокола более высокого уровня, использующего поле данных пакета.

Header Checksum, 16 бит – контрольная сумма заголовка, которая должна проверяться и пересчитываться в каждом шлюзе в связи с модификацией некоторых полей (TTL).

Source Address, 32 бита – IP-адрес отправителя.

Destination Address, 32 бита – IP-адрес получателя.

Options – опции пакета, длина произвольна (опции могут и отсутствовать). В дейтаграмму длиной 576 байт умещается 512-байтный блок данных и 64-байтный заголовок (размер заголовка может составлять 20–60 байт). Длина дейтаграммы определяется сетевым ПО так, чтобы она умещалась в поле данных сете­вого кадра, осуществляющего транспортировку. Поскольку по пути следования к адресату могут встречаться сети с меньшим размером поля данных кадра, IP специфицирует единый для всех маршрутизаторов метод сегментации – разбивки дейтаграммы на фрагменты (тоже IP-дейтаграммы) и реассемблирования – обратной ее сборки приемником. Фрагментированная дейтаграмма собирается только ее окончательным приемником, поскольку отдельные фрагменты могут добираться до него различными путями. Порядок сборки определяется смещением фрагмента, перекрытие фрагментов и даже выход фрагмента за заявленный размер собираемого пакета, как правило, не контролируются. На основе этих свойств алгоритма сборки «умельцы» осуществляют взлом сетевых ОС. Возможна также конкатенация – соединение нескольких дейтаграмм в одну и сепарация – действие, обратное конкатенации.

Казавшийся вполне достаточным во времена разработки формат заголовка пакета стал уже тесным. В настоящее время готовится переход на протокол IP v.6, который имеет следующие основные отличия:

· расширение поля адреса с 32 до 128 бит;

· обеспечение возможности автоконфигурирования узлов;

· выравнивание полей заголовка с целью ускорения обработки пакетов;

· обеспечение возможностей для большей расширяемости протокола.

Дальнейшее изложение относится к существующей 32-битной адресации IP v.4.

Адресация в IP

В отличие от физических (MAC) адресов, формат которых зависит от конкретной сетевой технологии, IP-адрес любого узла сети представляется 32-разрядным двоичным числом. Соответствие IP-адреса узла его физическому адресу внутри сети (подсети) устанавливается динамически посредством широковещательных запросов ARP-протокола.

При написании IP-адрес состоит из четырех чисел в диапазоне 0-255, представляемых в двоичной, восьмеричной, десятичной или шестнадцатеричной системе счисления и разделяемых точками.

Адрес состоит из префикса – сетевой части (n), общей для всех узлов данной сети, и хост-части (h), уникальной для каждого узла. Соотношение размеров частей адреса определяется в зависимости от принятого способа адресации, которых сменилось уже три поколения.

Изначально (1980 год) было определено разделение на основе класса (classful addressing) и допускались три фиксированных размера префикса – 1, 2 или 3 байта. Они соответствовали классу сети, однозначно определяемому значениями старших бит адреса. В табл.7 приведена структура адресов пяти классов се­тей. Сети класса D предназначены для группового (multicast) вещания, здесь хост-часть адреса отсутствует, а n представляет идентификатор группы. Класс Е обозначен как резерв для будущих применений.

Позже (1985 год, RFC 950) было введено деление на подсети (subnetting) относительно произвольных размеров. Адрес подсети (s) использует несколько стар­ших бит, отводимых при стандартной классовой разбивке под хост-часть адреса. Подсети могут делиться на еще более мелкие подсети. Деление на подсети не допускает пересечения границы адресов класса.

Таблица 7


Дата добавления: 2015-12-17; просмотров: 63; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!