Структура заголовка
Протокол IP (Internet Protocol) – один из основных протоколов стека. Он просто передает данные по сети в форме пакетов, не обеспечивая проверку возникновения ошибок. Надежность обеспечивается протоколом более высокого уровня, так называемым протоколом управления передачей TCP (Transmission Control Protocol).
Протокол IP обеспечивает наилучший маршрут доставки дейтаграмм без прямого соединения. Другими словами, нет никакой гарантии, что пакеты прибудут по назначению. Также не гарантируется прием пакетов в той последовательности, в какой они были отправлены. Целостность и правильная последовательность данных, содержащихся в IP-пакетах может быть обеспечена только протоколом более высокого уровня.
Формат пакета называется IP-дейтаграммой. Пакет IP состоит из заголовка и поля данных. Заголовок содержит различные поля, в том числе и IP-адреса получателя и отправителя.
● Поле версии (VERS), в котором помещается номер используемой версии протокола.
0 31 | |||
Версия | IHL | Тип сервиса | Длина пакета |
Идентификация | Флаги | Смещение фрагмента | |
Время жизни | Протокол | Контрольная сумма заголовка | |
Адрес отправителя | |||
Адрес получателя | |||
Опции (+ заполнение) | |||
Данные (переменная длина) |
Рисунок 6.2
● Поле типа сервиса ToS (Type of Service) занимает 1 байт и включает информацию о приоритете пакета и критерий выбора маршрута. Первые 3 бита этого поля образуют подполе приоритетов. Приоритет может иметь значения от 0 до 7. В это поле включается 3 бита, определяющих критерии выбора маршрута. Бит D говорит о том, что пакет должен передаваться с минимальной задержкой. Бит Т используется для максимизации пропускной способности. Бит R – для максимизации надежности доставки.
● Поле длина пакета занимает 2 байта и определяет полную длину IP-пакета в байтах, включая данные и заголовок. Максимальная длина пакета равна 65536 октетов. В любой сети размер кадра намного меньше, например, в сетях Ethernet максимальный размер кадра составляет 1500 байт, а сетях FDDI – 4096 байт. В функции уровня IP входит разбивка слишком длинных сообщений на более короткие, называемые фрагментами. Размер фрагмента кратен 8 байтам. В IP-заголовке предусмотрено 3 поля, управляющие процессом фрагментации и сборки пакетов в цельный пакет на приемной стороне (идентификатор данных, смещение фрагмента и биты флага).
● Поле идентификации занимает 2 байта и содержит целое число, определяющее порядковый номер дейтаграммы в последовательности. Это поле используется принимающим узлом для соединения в единое целое фрагментов дейтаграммы.
● Поле флагов - это трехбитное поле. Младшие два бита из этих трех используются для контроля фрагментации. Средний бит определяет, может ли пакет фрагментироваться. Самый младший бит показывает, является ли пакет последним в серии фрагментированных пакетов.
● Поле смещение фрагмента занимает 13 бит и используется для указания смещения в поле данных этого пакета от начала общего поля данных исходного пакета, который подвергается фрагментации.
● Поле времени жизни TTL (Time to Live) занимает 1 байт и указывает предельный срок, в течение которого пакет может перемещаться в сети. Это поле содержит счетчик, из которого вычитается единица при каждой транзитной передаче. Как только в счетчике будет записан код нуля, дейтаграмма уничтожается. Это предотвращает бесконечное зацикливание пакетов.
● Поле протокола показывает, какой протокол более высокого уровня получит входящий пакет после его IP-обработки. Каждому протоколу стека TCP/IP присвоен свой номер (например, протокол TCP имеет номер 6, а протокол UDP - номер 17). Этот номер и записывается поле протокола.
● Поле контрольной суммы заголовка содержит CRC для проверки целостности заголовка. Эта контрольная сумма рассчитывается только для обеспечения целостности заголовка IP-пакета. Она не используется для проверки целостности поля данных. Если данные потеряны или повреждены во время передачи, протокол IP не имеет средств сообщить об этом.
IP-адрес отправителя определяет узел-источник пакета. IP-адрес получателя определяет узел, которому этот пакет отправлен.
Поле опций позволяют протоколу IP выполнять такие функции, как обеспечение безопасности, тестирование сети, отладка и т.п.
И наконец, поле данных содержит информацию, поступившую с более высокого уровня (транспортного).
Дата добавления: 2015-02-16; просмотров: 1004;