Мир протоколов
Welcome to Энциклопедия сетевых протоколов
Поиск

Модули
· Титульная страница
· Мир протоколов
· Основные темы
· Архив публикаций
· Поиск
· Каталог ссылок
· Участники
· Документы и программы

Выбор языка
Язык интерфейса:


Статистика
20490626
запросов с 22 сентября 2005

Внешняя статистика
Rambler's Top100

  
Протокол IP
краткое описание структуры пакетов IP




IP

RFC 791 http://www.cis.ohio-state.edu/htbin/rfc/rfc791.html
(перевод на русский язык - PDF )

RFC 1853 http://www.cis.ohio-state.edu/htbin/rfc/rfc1853.html

IP (Internet Protocol) представляет собой протокол уровня маршрутизируемых дейтаграмм в стеке TCP/IP. Все другие протоколы стека TCP/IP (кроме ARP и RARP) используют протокол IP для маршрутизации кадров между хостами. Заголовок кадров IP содержит маршрутную и управляющую информацию, связанную с доставкой дейтаграмм.

Структура заголовков IP показана на рисунке.


4

8

16

32

Версия

IHL

Тип сервиса

Общий размер

Идентификация

Флаги

Смещение фрагмента

Время жизни

Протокол

Контрольная сумма заголовка

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

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

Опции и заполнение

Данные

Структура заголовка IP.

Версия

Поле версии определяет формат заголовка Internet.

IHL

Internet Header Length - размер заголовка Internet указывает размер заголовка в 32-битовых словах, задавая смещение данных от начала пакета. Минимальный размер заголовка составляет 5 слов (160 битов).

Тип сервиса

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

Биты 0 - 2 - преимущественная доставка

111 сетевое управление

110 межсетевое управление

101 CRITIC/ECP

100 Flash override

011 Flash

010 немедленная доставка

001 приоритетная доставка

000 Routine (нормальный режим)

Бит 3 - задержка

0 Нормальная

1 Малая

Бит 4 - пропускная способность

0 Нормальная

1 Высокая

Бит 5 - надежность доставки

0 Нормальная

1 Высокая

Биты 6 - 7 - зарезервированы для использования в будущем

Общий размер

Размер дейтаграммы в байтах с учетом заголовка и данных. Размер поля позволяет использовать дейтаграммы длиной до 65535 байтов, хотя такой размер нежелателен для многих сетей и хостов. Все хосты должны быть готовы к приему дейтаграмм размером до 576 байтов, независимо от того как они доставляются - целиком или фрагментами. Рекомендуется передавать дейтаграммы, размер которых превышает 576 байтов только в тех случаях, когда адресат готов принять такие дейтаграммы.

Идентификация

Значение идентификатора, которое отправитель задает для обеспечения корректного порядка сборки фрагментов дейтаграммы на приемной стороне.

Флаги

Трехбитовое поле флагов управления:

Бит 0 - зарезервирован и должен иметь нулевое значение

Бит 1 - возможность фрагментирования

0 Можно фрагментировать

1 Не фрагментировать

Бит 2 - наличие дополнительных фрагментов

0 Последний фрагмент

1 Есть последующие фрагменты

Смещение фрагмента

13-битовое значение, задающее смещение фрагмента от начала целой дейтаграммы. Смещение фрагмента измеряется в 8-байтовых (64 бита) словах. Первый фрагмент имеет нулевое смещение.

Время жизни

Показывает максимальное время существования дейтаграммы в сети Internet. При нулевом значении этого поля дейтаграмма должна быть уничтожена. Время жизни дейтаграмм измеряется в секундах. Однако, поскольку каждый модуль, работающий с дейтаграммой, должен уменьшать значение поля TTL (time-to-life) по крайней мере на 1 (даже в тех случаях, когда обработка дейтаграммы занимает меньше секунды), значение этого поля должно быть не меньше желаемого времени жизни дейтаграммы. Дейтаграммы с истекшим в процессе доставки временем жизни не попадают к получателю.

Протокол

Указывает протокол следующего уровня, содержащийся в поле данных дейтаграммы IP.

Контрольная сумма заголовка

Контрольная сумма, рассчитанная с учетом только полей заголовка дейтаграммы. Поскольку некоторые поля заголовка (например, время жизни) могут меняться в процессе доставки, значение контрольной суммы заново вычисляется и проверяется в каждой точке обработки заголовков.

Адрес отправителя/ получателя

32-битовые значения адресов отправителя и получателя дейтаграммы. Следует четко различать имена, адреса и маршруты. Имя показывает название объекта, адрес говорит о его местоположении в сети, а маршрут - показывает путь к объекту. Протокол IP имеет дело преимущественно с адресами. Связь между адресами и именами реализуется протоколами вышележащих уровней. Модуль Internet отображает адреса IP на локальные сетевые адреса. Связь локальных сетевых адресов с маршрутами обеспечивается протоколами нижележащих уровней.

Опции

Это поле содержит необязательные опции дейтаграммы. Используемые опции должны быть реализованы во всех модулях IP (хосты и шлюзы). В некоторых опции безопасности являются обязательными для всех дейтаграмм.

Поле опций имеет переменную длину и может содержать различное число опций. Существуют два формата опций:

  • Однооктетные опции

  • Многооктетные опции, содержащие поля типа опции (1 октет), ее размера (1 октет) и собственно опций.

Поле длины опции учитывает все субполя опции - тип, размер и сами опции.

Октет типа опции имеет три поля:

1 бит - флаг копирования показывает, что должна ли данная опция копироваться во все фрагменты дейтаграммы:

0 опция копируется

1 опция не копируется.

2 бита - класс опции:

0 управление

1 зарезервировано

2 отладка и измерение

3 зарезервировано

5 битов - номер опции

Данные

Данные IP или протоколов вышележащих уровней.


Авторские права Энциклопедия сетевых протоколов
Все права защищены.

Дата публикации: 2005-09-22 (15977 просм.)

Назад ]
Обсудить статью на Форуме.
Copyright © Nikolai Malykh
Все права на опубликованные на сайте материалы принадлежат Nikolai Malykh, если в опубликованном на сайте документе явно не указано иное.
Не разрешается воспроизведение опубликованных на сайте документов без согласия правообладателя.

Hosted By Web Hosting by iPage

Copyright © 2005 by Nikolai Malykh
Based on PHP-Nuke by Francisco Burzi. This is free software, and you may redistribute it under the GPL. Author comes with absolutely no warranty.
Время генерации страницы: 0.34 сек.