Сетевые информационные технологии

       

IP протокол


Как уже неоднократно указывалось,  IP - это основной протокол стека TCP/IP.

Пакет IP состоит из заголовка и блока данных (рис. 32). Протокол IP "работает" только с заголовком. Рассмотрим более подробно кодирование полей заголовка.

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

"Длина заголовка" дает значение длины заголовка пакета, измеренное в 32битовых словах. Это поле предусматривает изменение длины заголовка в соответствии с полями "Услуги" (переменной длины) и "Дополнение (нули) поля "Услуги" до 32битовой границы".

Октеты

0...7

8...15

16...23



24.. .31

1...4

Версия          протоко-ла IP               (4 бита)            

Длина заголовка пакета в

32 битовых словах

(4 бита)

Категория обслужива-ния пакета (приоритет) (8 бит)

Длина пакета в октетах вместе с заголовком (16 бит)

5.. .8

Идентификатор передаваемого исходного "большого" пакета (16 битов)

Индикатор "Еще данные" (3 бита)

Номер байта, на котором произведена очередная фрагментация исходного "большого" пакета (13 бит)

9.. .72

Время "жизни" пакета в сети (8 битов)

Тип транспорт-ного протокола TCP/UDP (8 битов)

Поле контрольной проверки заголовка пакета (16 бит)

13.. .16

Адрес отправителя (32 бита)

17.. .20

Адрес получателя (32 бита)

21. ..24

Поле "Услуги" (переменная длина)

Дополнение (нули) поля "Услуги" до 32 бит

25...

Данные

Рис. 32. Формат пакета IP

Поле "Категория обслуживания пакета" (рис. 33) – 1 байт. Оно включает:

  • сегмент "Приоритет" (3 бита). Может принимать восемь значений: от 0 (обычный приоритет) до 7 (сетевое управление);
  • биты "D", "Т", "R". Они указывают на тип транспортировки, который "запрашивает" пакет.
    Установка этих бит в состояние "1" требует соответственно низкой задержки при передаче пакета (delay), высокой пропускной способности (throughput) и высокой надежности (reliability). Последние два бита не используются.


  • Поле "Длина пакета в октетах, вместе с заголовком" задает полную (включая заголовок и данные) длину пакета, измеренную в октетах (байтах). Полная длина пакета IP принципиально может достигать 65 535 байтов.

    Биты

    0

    1

    2

    3

    4

    5

    6

    7

    Поле "Категория обслуживания пакета"

    Приоритет

    D D

    ТT

    RR

    Резерв

    Рис. 33. Кодирование поля "Категория обслуживания пакета"

    Протоколу IP, обеспечивающему межсетевое взаимодействие, приходится сталкиваться с различиями в конкретных физических сетях, одним из которых является ограничение на максимальную длину кадра, разрешенную в той или иной физической сети (maximum transfer unit, MTU). Поэтому IP также решает задачу деления (фрагментирования) больших пакетов на малые (и наоборот, их сборку). Это требуется делать в тех случаях, когда на вход некоторой физической сети поступает пакет, превосходящий по длине максимальное значение для данной сети.

    Фрагментирование осуществляется следующим образом. Блок данных исходного (большого) пакета разделяется таким образом, чтобы размер полученных фрагментов в сумме с длиной заголовка не превышал размера кадра для физической сети, в которую направляются фрагменты. При этом фрагменты упаковываются в пакеты, заголовки которых очень похожи на заголовок исходного пакета. Чтобы понять, что данные пакеты содержат фрагменты одного большого пакета, и обеспечить его последующую сборку, производится установка специальных признаков в поле "Индикатор "Еще данные" байты, по которым разрезался исходный блок данных, помещаются в поле "Номер байта, на котором произведена очередная фрагментация исходного "большого" пакета"; а в поле "Идентификатор передаваемого исходного "большого" пакета" записывается один, общий для всех фрагментов, идентификатор, указывающий на принадлежность фрагментов к одному "большому" блоку данных.



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

    Поле "Тип транспортного протокола TCP/UDP" (8 битов)  указывает протокол вышележащего уровня, которому предназначена информация, содержащаяся в поле данных пакета IP.

    Поле "Контрольная проверка заголовка пакета"

    (16 бит)  используется для контроля целостности заголовка пакета IP;

    Поле "Адрес отправителя" (32 бита) – IР-адрес отправителя пакета;

    Поле "Адрес получателя" (32 бита)  IP-адрес получателя пакета;

    Поле "Услуги" (изменяемой длины)  применяется для указания необязательных параметров IP, связанных, например, с режимами безопасности или маршрутизации. Поле "Дополнение (нули) поля "Услуги" до 32битовой границы" (изменяемой длины)  дополняет заголовок пакета таким образом, чтобы он составлял целое число 32битовых слов.

    Адреса IP

    Физические объекты (ГВМ, КВМ, маршрутизаторы, серверы, подсети) в IP сети идентифицируются при помощи имен, называемых IP адресами.

    IP адреса представляют собой 32 битовые идентификаторы. Обычно для удобства представления IP адресов используется так называемое цифровое написание IP адресов, когда адрес записывается как десятичное представление 4 байт, разделенных точками, например 192.171.153.60.

    В общем случае каждый адрес можно представить как пару идентификаторов: номер сети и номер ГВМ. Практически каждый IPадрес должен быть представлен в виде одной из первых трех показанных на рис. 34 битовых структур.

    Биты

    0       7

    8            15

    16           23

    24           31

    Класс А

    0

    Номер сети

    Номер узла

    Класс В

    1 0

    Номер сети

    Номер узла

    КлассС

    1

    0

    Номер сети

    Номер узла

    Класс D

    1

    1 0

    Групповой адрес

    Класс Е

    1

    1 1 0

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

    <


    Рис. 34. Структура и классы IP адресов

    Все IP адреса разделены на пять классов, но практическое применение находят в основном первые три.

    Класс А определен для сетей с огромным (от 65 535 до 16 777 215) числом машин. В адресе этого класса 7 бит отведены под номер сети, а 24 бита  под номер узла.

    Адреса класса В используются для среднемасштабных сетей, в которых содержится от 256 до 65 536 машин; под номер сети и номер узла отводится 14 и 16 бит соответственно.

    Адреса класса С предназначены для сетей с числом узлов менее 256, под номер машины отведено 8 бит и под номер сети  21 бит.

    Структура IP адресов ориентирована на определенное сетевое соединение, а не на ЭВМ, что вызвано необходимостью обеспечения высокой эффективности маршрутизации IP пакетов. Следовательно, при "перемещении" ЭВМ из одной подсети в другую у нее должен быть обязательно изменен IP адрес.

    IP адресация включает адреса, обращенные к совокупности машин и/или сетей. Среди таких адресов различают два класса: широковещательные (broadcast), обращенные "ко всем", и групповые (multicast), обращенные к заданному множеству объектов. Сущность этого класса адресации заключается в заполнении адресных полей нулями (обращение к данному объекту) или единицами (обращение ко всем объектам).

    Формируемые по этим правилам специальные IP адреса показаны на рис. 35.

    Тип адреса

    Номер сети

    Номер ГВМ

    1

    0000000000000000

    0000000000000000

    2

    0000000000000000

    хххххххххххххххх

    4

    1111111111111111

    1111111111111111

    5

    хххххххххххххххх

    1111111111111111

    Рис.35 Специальные IP-адреса

    Адрес 1 может использоваться в процедуре инициализации, когда рабочая станция не знает (при согласовании) своего IP адреса.

    Адрес 2, в котором номер сети заполнен нулями, а номер ЭВМ имеет определенное значение, есть адрес конкретной машины в сети, из которой она получила пакет. Применение такого адреса возможно в том случае, когда ЭВМ отправитель не знает номер сети, в которой работает.


    Этот адрес используется только как адрес получателя и никогда как адрес отправителя.

    Адрес 4, в котором номер сети имеет некоторое значение, а номер ГВМ заполнен единицами, называется прямым широковещательным адресом (direct broadcast address), обращенным ко всем ЭВМ в данной подсети. Вместе с ним в качестве широковещательного может применяется также локальный, или ограниченный, адрес (limited, или local broadcast address), целиком заполненный единицами (адрес 3), используемый в том случае, когда номер сети по каким-либо причинам неизвестен. Использование этого, адреса не рекомендуется.

    Групповой адрес (multicast address), в отличие от широковещательного, применяется при обращении к выделенной группе ЭВМ (но не ко всем ЭВМ) некоторой физической сети или группы сетей. В этом случае используются адреса класса D (рис. 34). Групповая адресация в TCP/IP регламентируется протоколом Internet Group Management Protocol (IGMP, RFC1112), входящим составной частью в IP.

    Групповой адрес может объединять ЭВМ разных физических сетей. Это достигается путем использования специальных протоколов групповой маршрутизации.

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

    В конце 1992 года сообщество Интернет для решения проблем адресного пространства и ряда смежных задач разработало три проекта протоколов: “TCP and UDP with Bigger Addresses (TUBA)”; “Common Architecture for the Internet (CatnIP)” и “Simple Internet Protocol Plus (SIPP) [“Протоколы и ресурсы Интернет” Семенов Ю.А., Радио и связь, М 1995]. После анализа всех этих предложений был принят новый протокол IPv6 с IP-адресами в 128 бит вместо 32 для IPv4. Внедрение этого нового протокола представляет отдельную серьезную проблему, так как этот процесс не предполагает замены всего программного обеспечения во всем мире одновременно.

    Адресное пространство IPv6 распределяется IANA(Internet Assigned Numbers Authority - комиссия по стандартным числам в Интернет [RFC-1881]).



    IANA делегирует права выдачи IP-адресов региональным сервис-провайдерам, субрегиональным структурам и организациям. Отдельные лица и организации могут получить адреса непосредственно от регионального распределителя или сервис провайдера.

    Передача адресного пространства от IANA не является необратимым. Если, по мнению IANA, распорядитель адресного пространства допустил серьезные ошибки, IANA может аннулировать выполненное ранее выделение.

    IPv6 представляет собой новую версию протокола Интернет (RFC-1883), являющуюся преемницей версии 4 (IPv4; RFC-791). Изменения IPv6 по отношению к IPv4 можно поделить на следующие группы:

    • Расширение адресации


    • В IPv6 длина адреса расширена до 128 бит (против 32 в IPv4), что позволяет обеспечить больше уровней иерархии адресации, увеличить число адресуемых узлов, упростить авто-конфигурацию. Для расширения возможности мультикастинг-маршрутизации в адресное поле введено субполе "scope" (группа адресов). Определен новый тип адреса "anycast address" (эникастный), который используется для посылки запросов клиента любой группе серверов. Эникаст адресация предназначена для использования с набором взаимодействующих серверов, чьи адреса не известны клиенту заранее.

      • Спецификация формата заголовков


      • Некоторые поля заголовка IPv4 отбрасываются или делаются опционными, уменьшая издержки, связанные с обработкой заголовков пакетов с тем, чтобы уменьшить влияние расширения длины адресов в IPv6.

        • Улучшенная поддержка расширений и опций


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

          • Возможность пометки потоков данных


          • Введена возможность помечать пакеты, принадлежащие определенным транспортным потокам, для которых отправитель запросил определенную процедуру обработки, например, нестандартный тип TOS (вид услуг) или обработка данных в реальном масштабе времени.

            • Идентификация и защита частных обменов




            • В IPv6 введена спецификация идентификации сетевых объектов или субъектов, для обеспечения целостности данных и при желании защиты частной информации.

              Формат и семантика адресов IPv6 описаны в документе RFC-1884. Версия ICMP IPv6 рассмотрена в RFC-1885.



              Рис. 36. Формат заголовка пакета IPv6

              Версия

              4-битный код номера версии Интернет протокола (версия Интернет протокола для IPv6= 6)

              Приор.

              4-битный код приоритета

              Метка потока

              24-битный код метки потока (для мультимедиа)

              Размер поля данных

              16-битовое число без знака. Несет в себе код длины поля данных в октетах, которое следует сразу после заголовка пакета. Если код равен нулю, то длина поля данных записана в поле данных jumbo, которое в свою очередь хранится в зоне опций.

              Следующий заголовок

              8-битовый разделитель. Идентифицирует тип заголовка, который следует непосредственно за IPv6 заголовком. Использует те же значения, что и протокол IPv4 [RFC-1700].

              Предельное число шагов

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

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

              128-битовый адрес отправителя пакета. См. RFC-1884.

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

              128-битовый адрес получателя пакета (возможно не конечный получатель, если присутствует маршрутный заголовок). См. RFC-1884.

              IP версия 6 архитектуры адресации

              Существует три типа адресов:

              unicast:

              Идентификатор одиночного интерфейса. Пакет, посланный по уникастному адресу, доставляется интерфейсу, указанному в адресе.

              anycast:

              Идентификатор набора интерфейсов (принадлежащих разным узлам). Пакет, посланный по эникастному адресу, доставляется одному из интерфейсов, указанному в адресе (ближайший, в соответствии с мерой, определенной протоколом маршрутизации).

              multicast:

              Идентификатор набора интерфейсов (обычно принадлежащих разным узлам). Пакет, посланный по мультикастинг-адресу, доставляется всем интерфейсам, заданным этим адресом.

              <


              В IPv6 не существует широковещательных адресов, их функции переданы мультикастинг-адресам.

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

              Модель адресации

              IPv6 адреса всех типов ассоциируются с интерфейсами, а не узлами. Так как каждый интерфейс принадлежит только одному узлу, уникастный адрес интерфейса может идентифицировать узел.

              IPv6 уникастный адрес соотносится только с одним интерфейсом. Одному интерфейсу могут соответствовать много IPv6 адресов различного типа (уникастные, эникастные и мультикстные). Существует два исключения из этого правила:

              1.                Одиночный адрес может приписываться нескольким физическим интерфейсам, если приложение рассматривает эти несколько интерфейсов как единое целое при представлении его на уровне Интернет.

              2.                Маршрутизаторы могут иметь ненумерованные интерфейсы (например, интерфейсу не присваивается никакого IPv6 адреса) для соединений точка-точка, чтобы исключить необходимость вручную конфигурировать и объявлять (advertise) эти адреса. Адреса не нужны для соединений точка-точка маршрутизаторов, если эти интерфейсы не используются в качестве точки отправления или назначения при посылке IPv6 дейтограмм. Маршрутизация здесь осуществляется по схеме близкой к используемой протоколом CIDR в IPv4.

              IPv6 соответствует модели IPv4, где субсеть ассоциируется с каналом. Одному каналу могут соответствовать несколько субсетей.

              Уникастные адреса

              IPv6 уникастные адреса, сходны с традиционными IPv4 адресами при бесклассовой междоменной маршрутизации (Class-less InterDomain Routing - CIDR).

              Существует несколько форм присвоения уникастных адресов в IPv6, включая глобальный уникастный адрес провайдера (global provider based unicast address), географический уникастный адрес, NSAP адрес, IPX иерархический адрес, IPv4-compatible host address, и т.д..



              Узлы IPv6 могут иметь существенную или малую информацию о внутренней структуре IPv6 адресов, в зависимости от выполняемой узлом роли, (например, ЭВМ или маршрутизатор). Как минимум, узел может считать, что уникастный адрес (включая его собственный адрес) не имеет никакой внутренней структуры. То есть представляет собой 128 битовый неструктурированный образ.

              ЭВМ может дополнительно знать о префиксе субсети для каналов, c которыми она соединена, где различные адреса могут иметь разные значения n:



              Рис.37

              Более сложные ЭВМ могут использовать и другие иерархические границы в уникастном адресе. Хотя простейшие маршрутизаторы могут не знать о внутренней структуре IPv6 уникастных адресов, маршрутизаторы должны знать об одной или более иерархических границах для обеспечения работы протоколов маршрутизации. Известные границы для разных маршрутизаторов могут отличаться и зависят от того, какое положение занимает данный прибор в иерархии маршрутизации.

              Эникаст-адреса

              Эникаст-адрес IPv6 является адресом, который приписан нескольким интерфейсам (обычно принадлежащим разным узлам), при этом пакет, посланный по эникастному адресу, будет доставлен ближайшему интерфейсу.

              Эникастные адреса выделяются из уникастного адресного пространства, и используют один из известных уникастных форматов. Таким образом эникастные адреса синтаксически неотличимы от уникастных. Когда уникастный адрес приписан более чем одному интерфейсу, он превращается в эникастный адрес и узлы, которым он приписан, должны быть сконфигурированы так, чтобы распознавать этот адрес.

              Одним приложением эникастных адресов является идентификация набора маршрутизаторов, принадлежащих Интернет сервис провайдеру. Такие адреса в маршрутном заголовке IPv6 могут использоваться в качестве промежуточных, чтобы обеспечить доставку пакета через определенного провайдера или последовательность провайдеров. Другим приложением является идентификация набора маршрутизаторов, связанных с определенной субсетью, или набора маршрутизаторов, обеспечивающих доступ в определенный домен.



              Имеются следующие ограничения при использовании эникастных IPv6 адресов:

              • Эникастный адрес не может использоваться в качестве адреса отправителя в ipv6 пакете.


              • Эникастный адрес не может быть приписан ЭВМ IPv6, таким образом, он может принадлежать только маршрутизатору.


              • Мультикаст-адреса

                Мультикастинг-адрес IPv6 является идентификатором для группы узлов. Узел может принадлежать к любому числу мультикастинг групп. Мультикастинг-адреса имеют следующий формат (рис. 38):



                Рис. 38

                11111111 в начале адреса идентифицирует адрес, как мультикатинг-адрес.

                В поле Флаги старшие 3 флага зарезервированы и должны быть обнулены.

                t = 0 указывает на то, что адрес является стандартным ("well-known") мультикастным, официально выделенным для глобального использования в Интернет.

                t = 1 указывает, что данный мультикастинг-адрес присвоен временно ("transient").

                Поле scope представляет собой 4-битовый код мультикастинга, предназначенный для определения предельной области действия мультикастинг-группы.

                Значение постоянно присвоенного мультикастинг-адреса не зависит от значения поля scope.

                Непостоянно выделенные мультикаст-адреса имеют значение только в пределах данного ограничения (scope).

                Мультикастинг адреса не должны использоваться в качестве адреса отправителя в IPv6 дейтограммах или встречаться в любых заголовках маршрутизации.


                Содержание раздела







                Forekc.ru
                Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий