Назад
191
бит 2 – MF (More Fragments – будут еще фрагменты): 0 – по-
следний фрагмент, 1 – не последний.
– Fragment Offset, 13 бит (смещение фрагмента)– местополо-
жение фрагмента в дейтаграмме (смещение в 8-байтных блоках).
Задает смещение поля данных пакета от начала общего поля дан-
ных исходного пакета, подвергшегося фрагментации. Первый
фрагмент имеет нулевое смещение. Используется при сбор-
ке/разборке фрагментов пакетов при передачах
их между сетями
с разной длиной поля данных.
– Time to Live (TTL), 8 битвремя жизни пакета в сети в се-
кундах. Начальное значение задается отправителем. В узлах сети,
в которые попадает пакет, по истечении каждой секунды время
жизни убавляется на одну секунду. Нулевое значение поля приво-
дит к необходимости удаления дейтаграммы, не зависимо от
того
достигла ли она получателя. Поскольку современное оборудова-
ние редко задерживает пакет более чем на секунду, это поле мо-
жет использоваться для подсчета промежуточных узлов. Заданием
TTL можно управлять дальностью распространения пакетов: при
TTL=1 пакет не может выйти за пределы подсети отправителя.
– Protocol, 8.битидентификатор протокола более высокого
уровня, использующего поле данных
пакета.
– Header Checksum, 16 битконтрольная сумма заголовка.
Сумма по модулю 2 всех 16-битных слов заголовка (вместе с
контрольной суммой) должна быть нулевой. Контрольная сумма
должна проверяться и пересчитываться в каждом шлюзе в связи с
модификацией некоторых полей (TTL). Если контрольная сумма
не верна, то пакет будет отброшен.
– Source Address, 32 бита – IP-адрес отправителя.
– Destination Address, 32 бита – IP-адрес получателя.
– Options – опции пакета, длина произвольна, но кратна 4 бай-
там (опции могут и отсутствовать).
На сегодняшний день определены пять разновидностей поля
Options, однако не все маршрутизаторы поддерживают их всех:
безопасность, строгая маршрутизация от источника, свободная
маршрутизация от источника, запомнить маршрут, временной
штамп.
Параметр «Безопасность» указывает уровень секретности
дейтаграммы. Теоретически военный маршрутизатор может
ис-
192
пользовать это поле, чтобы запретить маршрутизацию дейта-
граммы через определенные государства. На практике все совре-
менные маршрутизаторы игнорируют этот параметр.
Параметр «Строгая маршрутизация от источника» задает
полный путь следования дейтаграммы от отправителя до получа-
теля в виде последовательности IP- адресов. Дейтаграмма обязана
следовать именно по этому маршруту. Наибольшая польза этого
параметра
заключается в возможности системному менеджеру
послать экстренные пакеты, когда таблицы маршрутизатора по-
вреждены или для тестирования сети.
Параметр «Свободная маршрутизация от источника» требу-
ет, чтобы пакет прошел через указанный список маршрутизато-
ров в указанном порядке, но при этом по пути он может прохо-
дить через любые другие маршрутизаторы. Этот параметр
наибо-
лее всего полезен, когда по политическим или экономическим
соображениям следует избегать прохождения пакетов через оп-
ределенные государства.
Параметр «Запомнить маршрут» требует от всех маршрути-
заторов, встречающихся по пути следования пакета, добавлять
свой IP-адрес к полю Options. Этот параметр позволяет систем-
ным менеджерам вылавливать ошибки в алгоритмах маршрути-
зации
Наконец, параметр
«Временной штамп» действует полностью
аналогично параметру «Запомнить маршрут», но кроме 32-
разрядного IP-адреса каждый маршрутизатор также записывает
32-разрядную запись о текущем времени. Этот параметр также
применяется в основном для отладки алгоритмов маршрутизации.
В дейтаграмму длиной 576 байт умещается 512-байтный блок
данных и 64-байтный заголовок. Длина дейтаграммы определяет-
ся сетевым ПО так
, чтобы она умещалась в поле данных сетевого
кадра, осуществляющего ее транспортировку. Поскольку по пути
следования к адресату могут встречаться сети с меньшим разме-
ром поля данных кадра, IP специфицирует единый для всех мар-
шрутизаторов метод сегментацииразбивки дейтаграммы на
фрагменты (тоже IP-дейтаграммы) и реассемблированияобрат-
ной ее сборки приемником. Фрагментированная дейтаграмма
со-
бирается только ее окончательным приемником, поскольку от-
дельные фрагменты могут добираться до него различными путя-
193
ми. Порядок сборки определяется смещением фрагмента, пере-
крытие фрагментов и даже выход фрагмента за заявленный раз-
мер собираемого пакета, как правило, не контролируются. На ос-
нове этих свойств алгоритма сборки «умельцы» осуществляют
взлом сетевых ОС. Возможна также конкатенациясоединение
нескольких дейтаграмм в одну и сепарациядействие, обратное
конкатенации.
5.6.5. Протокол (IPv6)
Всем понятно, что дни протокола IP в его теперешнем виде
(IPv4) сочтены. В связи с лавинообразным ростом интереса к Ин-
тернету, начавшимся в середине 90-х годов, в третьем тысячеле-
тии, скорее всего, им будет пользоваться гораздо большее коли-
чество пользователей, и особенно пользователей с принципиаль-
но иными требованиями. При неминуемой конвергенции компь-
ютерной промышленности, средств связи и индустрии развлече-
ний, возможно, очень скоро каждый телевизор планеты станет
узлом Интернета, что в результате приведет к появлению милли-
ардов машин. В таких обстоятельствах становится очевидным,
что протокол IP должен эволюционировать и стать более гибким.
Предвидя появление этих проблем, проблемная группа проекти-
рования Интернета IETF начала в 1990 г
. работу над новой верси-
ей протокола IP, в которой никогда не должна возникнуть про-
блема нехватки адресов, а также будут решены многие другие
проблемы. Кроме того, новая версия протокола должна была
быть более гибкой и эффективной. Были сформулированы сле-
дующие основные цели.
1. Поддержка миллиардов хостов, даже при неэффективном
использовании адресного пространства
.
2. Уменьшение размера таблиц маршрутизации.
3. Упрощение протокола для ускорения обработки пакетов
маршрутизаторами.
4. Лучшее обеспечение безопасности (аутентификации и кон-
фиденциальности).
5. Уделение большего внимания типу сервиса, в частности,
при передаче данных реального времени.
194
6. Добавление многоадресной рассылки с помощью указания
области рассылки.
7. Возможность изменения положения хоста без необходимо-
сти изменять свой адрес.
8. Возможность дальнейшего развития протокола в будущем.
9. Возможность сосуществования старого и нового протоко-
лов в течение нескольких лет.
Чтобы найти протокол, удовлетворяющий всем этим требова-
ниям, IETF издал в RFC 1550 приглашение к дискуссиям и
пред-
ложениям. После долгих обсуждений была выбрана версия, на-
зываемая в настоящий момент протоколом SIPP (Simple Internet
Protocol Plus – простой Интернет-протокол плюс). Новому прото-
колу было дано обозначение IPv6 (протокол IPv5 уже использо-
вался в качестве экспериментального протокола потоков реаль-
ного времени). Протокол IPv6 прекрасно справляется с постав-
ленными задачами. Он обладает достоинствами протокола IP и
лишен некоторых его недостатков (либо обладает ими в меньшей
степени), к тому же наделен некоторыми новыми способностями.
В общем случае протокол IPv6 не совместим с протоколом IPv4,
но зато совместим со всеми другими протоколами Интернета.
Прежде всего, у протокола IPv6 поля адресов длиннее, чем у
IPv4. Они имеют длину 16 байт, что решает основную проблему
,
поставленную при разработке протокола: обеспечить практиче-
ски неограниченный запас Интернет-адресов.
Второе главное улучшение протокола IPv6 состоит в более
простом заголовке пакета. Он состоит всего из 7 полей (вместо 13
у протокола IPv4). Таким образом, маршрутизаторы могут быст-
рее обрабатывать пакеты, что повышает производительность.
Третье основное усовершенствование заключается в лучшей
поддержке необязательных параметров. Подобное
изменение бы-
ло существенным, так как в новом заголовке требуемые прежде
поля стали необязательными. Кроме того, изменился способ
представления необязательных параметров, что упростило для
маршрутизаторов пропуск не относящихся к ним параметров и
ускорило обработку пакетов.
В-четвертых, протокол IPv6 демонстрирует большой шаг впе-
ред в области безопасности. Аутентификация и конфиденциаль-
ность являются
ключевыми чертами нового IP-протокола.
195
Наконец, в новом протоколе было уделено больше внимания
типу предоставляемых услуг. Для этой цели в заголовке пакета
IPv4 было отведено 8-разрядное поле (на практике не используе-
мое), но при ожидаемом росте мультимедийного трафика в бу-
дущем требовалось значительно больше разрядов.
Переход с протокола IPv4 на IPv6 не может произойти одно-
временно на всей
сети Интернет. Первоначально появятся «ост-
ровки» IPv6, которые будут общаться между собой. Со временем
эти островки будут расширяться пока все они объединятся и Ин-
тернет будет полностью трансформирован. Учитывая огромные
средства, вложенные в используемые в настоящее время IPv4-
маршрутизаторы, процесс полного перехода на IPv6 по прогно-
зам займет около 10 лет.
Контрольные вопросы к главе
5
1. В чем заключается многоуровневый подход к разработке
средств сетевого взаимодействия?
2. В чем заключается различие между понятиями «интерфейс» и
«протокол» в многоуровневой модели взаимодействия узлов сети?
3. Перечислите основные уровни эталонной модели OSI.
4. Назовите основные функции каждого уровня в модели OSI.
5. Какие аппаратные коммуникационные средства соответствуют
уровням OSI?
6. Назовите стандартные стеки
коммуникационных протоколов и
сферы их применения.
7. В чем заключается особенность стека протоколов OSI?
8. Каковы недостатки протокола IPX/SPX?
9. Перечислите основные уровни стека протоколов TCP/IP.
10. Назовите основные протоколы, работающие на каждом уров-
не стека TCP/IP.
11. Какие уровни протокола TCP/IP зависят от технической реа-
лизации сети?
12. Опишите структуру блоков данных на каждом уровне стека
TCP/IP.
13. Какова
структура заголовка IP-пакета (IPv4)?
14. В чем причина перехода на протокол IPv6?
15. Каковы основные отличия протокола IPv6 от IPv4?
196
ГЛАВА 6
СОСТАВНЫЕ СЕТИ
6.1. Архитектура составной сети
Сеть в общем случае рассматривается как совокупность не-
скольких сетей и называется составной сетью, или интер-
сетью (internetwork, или internet). Сети, входящие в составную
сеть, называются подсетями (subnet), составляющими сетями
или просто сетями (рис. 6.1).
Рис. 6.1. Структура составной сети
Подсети соединяются между собой маршрутизаторами. Мар-
шрутизатор (router) представляет собой устройство, имеющее
один или несколько интерфейсов (портов) для подключения ло-
кальных сетей или удаленных соединений. На маршрутизаторы
возлагаются и задачи фильтрациипропускания пакетов, удов-
197
летворяющих определенным критериям, или наоборот, непро-
пускания определенных пакетов. Компонентами составной сети
могут являться как локальные, так и глобальные сети. Сети (под-
сети) составной сети могут отличаться различными параметрами,
например системой адресации узлов, размерами передаваемых
пакетов, параметрами безопасности, протоколами обмена и дру-
гими. Наличие различных сетей неизбежно приводит к существо-
ванию
различных протоколов в каждой из них. Внутренняя
структура каждой сети на рисунке не показана, так как она не
имеет значения при рассмотрении сетевого протокола общей се-
ти. Все узлы в пределах одной подсети взаимодействуют, исполь-
зуя единую для них технологию. Так, в составную сеть, показан-
ную на рисунке, входит несколько
сетей разных технологий: ло-
кальные сети Ethernet, Fast Ethernet, Token Ring, FDDI и глобаль-
ные сети frame relay, Х.25, ISDN. Каждая из этих технологий спо-
собна обеспечить взаимодействие всех узлов в своей подсети, но
не способна построить информационную связь между произ-
вольно выбранными узлами, принадлежащими разным подсетям,
например между узлом A и узлом B на рис. 6.1. Следовательно,
для организации взаимодействия между любой
произвольной па-
рой узлов этой «большой» составной сети требуются дополни-
тельные средства. Такие средства предоставляет сетевой уровень.
Сетевой уровень выступает в качестве координатора, органи-
зующего работу всех подсетей, лежащих на пути продвижения
пакета по составной сети. Для перемещения данных в пределах
подсетей сетевой уровень обращается к используемым в этих
подсетях
технологиям. Хотя многие технологии локальных сетей
(Ethernet, Token Ring, FDDI, Fast Ethernet и др.) используют одну
и ту же систему адресации узлов, существует немало технологий,
в которых применяются другие схемы адресации. Адреса, при-
своенные узлам в соответствии с локальными технологиями под-
сетей, называют локальными. Чтобы сетевой уровень мог выпол-
нить свою задачу, ему необходима собственная глобальная
сис-
тема адресации, не зависящая от способов адресации узлов в от-
дельных подсетях, которая позволила бы на сетевом уровне уни-
версальным и однозначным способом идентифицировать любой
узел составной сети. Естественным способом формирования се-
тевого адреса является уникальная нумерация всех подсетей со-
198
ставной сети и нумерация всех узлов в пределах каждой подсети.
Таким образом, сетевой адрес представляет собой пару: номер
сети (подсети) и номер узла.
В качестве номера узла может выступать либо локальный ад-
рес этого узла (такая схема принята в стеке IPX/SPX), либо неко-
торое число, никак не связанное с локальной технологией, кото
-
рое однозначно идентифицирует узел в пределах данной подсети.
В первом случае сетевой адрес становится зависимым от локаль-
ных технологий, что ограничивает его применение. Например,
сетевые адреса IPX/SPX рассчитаны на работу в составных сетях,
объединяющих сети, в которых используются только МАС-
адреса или адреса аналогичного формата. Второй подход более
универсален, он характерен
для стека ТСР/IP. В том и другом
случае каждый узел составной сети имеет наряду со своим ло-
кальным адресом еще одинуниверсальный сетевой адрес.
Данные, которые поступают на сетевой уровень и которые не-
обходимо передать через составную сеть, снабжаются заголовком
сетевого уровня. Данные вместе с заголовком образуют пакет. За-
головок пакета
сетевого уровня имеет унифицированный формат,
не зависящий от форматов кадров канального уровня тех сетей,
которые могут входить в составную сеть, и несет, наряду с дру-
гой служебной информацией, данные о номере сети назначения
этого пакета. Сетевой уровень определяет маршрут и перемещает
пакет между подсетями. Каждый раз, когда пакет сетевого уровня
передается из одной сети в другую, он извлекается из кадра пер-
вой подсети (освобождается от канального заголовка этой сети) и
упаковывается в кадр (снабжается новым заголовком) канального
уровня следующей подсети. Информацию, на основе которой де-
лается эта замена, предоставляют служебные поля пакета сетево-
го уровня. В поле адреса назначения нового кадра
указывается
локальный адрес следующего маршрутизатора.
Если проводить аналогию между взаимодействием разнород-
ных сетей и перепиской людей из разных стран, то сетевая ин-
формацияэто общепринятый индекс страны, добавленный к
адресу письма, написанному на одном из сотни языков земного
шара, например на санскрите. И даже если это письмо должно
пройти через
множество стран, почтовые работники которых не
знают санскрита, понятный им индекс страны-адресата подска-
199
жет, через какие промежуточные страны лучше передать письмо,
чтобы оно кратчайшим путем попало в Индию. А уже там работ-
ники местных почтовых отделений смогут прочитать точный ад-
рес, идентифицирующий город, улицу, дом и индивидуума, и
доставить письмо адресату, так как адрес написан на языке и в
форме, принятой в данной стране
.
Основным полем заголовка сетевого уровня является номер
сети-адресата. В протоколах локальных сетей такого поля в кад-
рах не предусмотрено, так как предполагалось, что все узлы при-
надлежат одной сети. Явная нумерация сетей позволяет протоко-
лам сетевого уровня составлять точную карту межсетевых связей
и выбирать рациональные маршруты при любой их
топологии, в
том числе альтернативные маршруты, если они имеются, что не
умеют делать мосты и коммутаторы. Кроме номера сети заголо-
вок сетевого уровня должен содержать и другую информацию,
необходимую для успешного перехода пакета из сети одного ти-
па в сеть другого типа. К такой информации может относиться,
например:
номер фрагмента
пакета, необходимый для успешного про-
ведения операций сборки-разборки фрагментов при соединении
сетей с разными максимальными размерами пакетов;
время жизни пакета, указывающее, как долго он путешест-
вует по интерсети, это время может использоваться для уничто-
жения «заблудившихся» пакетов;
качество услугикритерий выбора маршрута при межсете-
вых передачахнапример, узел-отправитель
может потребовать
передать пакет с максимальной надежностью, возможно, в ущерб
времени доставки.
Когда две или более сети организуют совместную транспорт-
ную службу, то такой режим взаимодействия обычно называют
межсетевым взаимодействием (internetworking). В ре-
зультате наличия разнообразных сетей легко представить сле-
дующий сценарий взаимодействия компьютеров:
1. ЛСЛС (локальная сетьлокальная сеть).
2.
ЛСГС (локальная сетьглобальная сеть).
3. ГСГС (глобальная сетьглобальная сеть).
4. ЛСГСЛС (локальная сетьглобальная сетьлокальная сеть).
200
Эти четыре типа соединений показаны на рис. 6.2 в виде
пунктирных линий.
Рис. 6.2. Типы межсетевого взаимодействия
В каждом случае в месте соединения двух различных сетей
для преобразования пакетов, передаваемых из одной сети в дру-
гую, необходимо установить «черный ящик». Название черного
ящика, соединяющего две сети, зависит от сетевого уровня, на
котором он выполняет свою работу. Некоторые общеупотреби-
тельные названия приведены ниже (хотя
по терминологии в дан-
ной области единого мнения нет).
Уровень 1. Повторители копируют отдельные биты из одного
сегмента кабеля в другой.
Уровень 2. Мосты хранят и посылают дальше кадры уровня
передачи данных между локальными сетями.
Уровень 3. Многопротокольные маршрутизаторы передают
пакеты между разнородными сетями.
Уровень 4. Транспортные шлюзы соединяют байтовые потоки
на транспортном уровне.
Выше
4. Прикладные шлюзы позволяют объединять сети на
уровне выше 4.
Повторители являются низкоуровневыми устройствами, ко-
торые просто усиливают или восстанавливают слабые сигналы.
Они требуются для передачи данных по длинным кабелям.
В отличие от повторителей, копирующих биты из одного ка-
беля в другой, мосты являются устройствами с промежуточным