Фрагментация IP-пакетов
В узле-отправителе задача фрагментации поступающих с прикладного уровня сообщений возлагается на протокол TCP.
На промежуточных же узлах фрагментацию должен обеспечивать сам протокол IP. Это делается, если нужно передать пакет в следующую сеть, где используется меньший размер поля данных протокола канального уровня.В большинстве локальных и глобальных сетей значения MTU (максимальная единица передачи) значительно отличаются. Сеть Ethernet имеет MTU=1500 байт, для сети FDDI значение MTU=4096 байт, сети же Х.25 чаще всего работает с MTU=128 байт (рис.6.10.).
Рис.6.10.
IP-пакет может быть помечен при передаче как нефрагментируемый (бит DF=1). Это означает для маршрутизаторов запрет этой операции. Если такой пакет поступает в сеть с меньшим MTU, то он просто уничтожается, а узлу-отправителю отправляется ICMP-сообщение. Фрагментирование может выполняться и средствами самой сети. Так поступает, например, сеть ATM, которая с помощью уровня AAL (ATM Adaptation Layer) делит поступающие IP-пакеты на 48-байтовые фрагменты (в ATM размер ячейки равен 53 байтам), а затем вновь их собирает. Поле «идентификатор пакета» (2 байта) используется получателем для сборки фрагментов, относящихся к определенному пакету. Поле «смещение фрагмента» (13 бит) сообщает получателю положение фрагмента вв исходном пакете. Флаг MF=0 указывает на то, что данный фрагмент является последним.
При фрагментации модуль IP на маршрутизаторе создает несколько новых пакетов и копирует заголовок в каждый из них (меняя признаки фрагментации). Соответствующая часть данных помещается в информационное поле нового фрагмента (см. рис.6.11.). Размер этой части должен быть кратен 8 байтам (кроме последнего пакета).
Рис.6.11.
По стандарту каждый модуль IP должен быть способен передать пакет из 68 байт без дальнейшей фрагментации. Надо отметить, что IP-маршрутизаторы не собирают фрагменты пакетов в более крупные пакеты, даже если на пути встречается сеть, допускающая такое укрупнение. Это связано с тем, что фрагменты в Интернет могут проходить по разным маршрутам.
Классы IP-адресов
IP-адрес имеет длину 32 бита и обычно записывается в виде 4-х чисел, представляющих значение каждого байта в десятичной форме и разделенных точками. Например:
128.10.2.5 = 10000000000010100000001000000101
Адрес состоит из двух логических частей — номера сети и номера узла в сети.В зависимости от того, сколько цифр в адресе используются для задания номера сети, выделяют IP-адреса пяти классов: от A до E (см. рис.6.12.).
Рис.6.12.
Сети класса А имеют адреса от 1 до 126 (0 – не используется, а 127 – зарезервирован для специальных целей). Число узлов — 224 или 16777216.
В сети класса В может быть до 216 узлов или 65536.
Сеть класса С может иметь до 28 или 256 узлов.
Для сетей класса D задается групповой адрес multicast. Пакет будут получать все члены группы, которым присвоен такой адрес.
Адреса класса Е зарезервированы для будущих применений.
Особые IP-адреса.
1. Если весь адрес – одни нули, то он обозначает адрес того узла, который сгенерировал этот пакет.
2. Если в поле номера сети стоят одни нули – считается, что узел назначения принадлежит той же сети, что и узел-отправитель.
3. Если все разряды IP-адреса равны 1, то пакет с таким адресом рассылается всем узлам, находящимся в той же сети, что и узел-источник. Этот режим называется ограниченной широковещательной рассылкой (limited broadcast).
4. Если в поле номера узла назначения стоят только единицы, то такой пакет рассылается всем узлам сети с заданным номером. Такой режим определяется как широковещательное сообщение (broadcast). Например: 192.190.21.255 — сообщение рассылается всем узлам сети 192.190.21.
5. Адрес с первым байтом равным 127 используется для тестирования взаимодействия процессов внутри одной машины. Образуется «петля» внутри одного узла-отправителя — данные считаются только что принятыми. Этот адрес обозначается как loopback.
Дата добавления: 2016-04-11; просмотров: 774;