tanenbaum_seti_all.pages (525408), страница 130
Текст из файла (страница 130)
5АО, не так проста, как кажется. Во-первых, если каждая сеть обладает своим сетевым уровнем, то пакет из одной сети не сможет перейти в другую сеть. Можно представить себе многопротокольные маршрутизаторы, пытающиеся преобразовать пакет из одного формата в другой, но, если только эти форматы не являются близкими родственниками, такое преобразование всегда будет неполным и часто обречено на ошибку. 488 Глава 5.
Сетевой уровень Еще более серьезные проблемы возникают с адресацией. Представьте себе простой случай: интернет-хост пытается послать 1Р-пакет хосту, находящемуся в соседней сети БЫА. Адреса 1Р и ЯХА различаются, Значит, потребуется двухстороннее приведение одного формата адреса к другому. Более того, различается сама концепция адресации. В 1Р адресуемой единицей является хост (собственно, интерфейсная карта). В ЯМА адресуемыми могут быть не только хосты, но и другие сущности (например, физические устройства).
В идеале необходимо поддерживать базу данных, отображающую одни адресуемые сущности на другие, но это задача исключительно трудоемкая, если не сказать невыполнимая. арнгрутнзатор Рнс. 6.40. Дейтаграммная объвднненная сеть Другая идея заключается в создании универсального межсетевого пакета, который распознавался бы всеми маршрутизаторами. Именно эта идея была взята за основу при разработке протокола П': 1Р-пакеты созданы для передачи па разным сетям.
Впрочем, может, конечно, оказаться так, что применяемый сегодня в Интернете протокол 1ру4 вытеснит с рынка все остальные форматы, 1Руб (будущий протокол Интернета) не получит ожидаемого распространения и ничего нового вообще не будет изобретено, однако пока что исторически все складьгвается совсем не так, Заставить всех согласиться применять только один формат практически невозможно, особенно учитывая тот факт, что каждая компания считает самым большим своим достижением изобретение, внедрение и раскручивание собственного формата. Подведем краткие итоги обсуждения двух способов объединения сетей.
Модель сцепленных виртуальных каналов обладаст теми же преимуществами, что и применение виртуальных каналов внутри единой подсети: буферы могут быть зарезервированы заранее, сохранение порядка пакетов гарантируется, могут использоваться короткие заголовки, кроме того, можно избежать неприятностей, вызываемых дубликатами пакетов. Недостатки опять те же самые: маршрутизаторы должны хранить таблицы с записями для каждого открытого соединения, прн возникновении затора обходные пути не используются, а выход маршрутизатора из строя обрывает все проходящие через него виртуальные каналы. Кроме того, очень сложно, может, даже невозможно реализовать систему виртуальных каналов, если в состав объединенной сети входит хотя бы одна ненадежная дейтаграммная сеть.
Объединение сетей 489 Свойства дейтаграммного подхода к объединению сетей те же самые, что и у дейтаграммных подсетей: риск возникновения перегрузки выше, но также больше возможностей для адаптации к ней, высокая надежность в случае отказов маршрутизаторов, однако требуются более длинные заголовки пакетов. В объединенной сети, как и в единой дейтаграммной сети, возможно применение различных адаптивных алгоритмов выбора маршрута.
Главное преимущество дейтаграммного полхода к объединению сетей заключается в том, что он может применяться в подсетях без виртуальных каналов. К дейтаграммным сетям относятся многие локальные сети, мобильные сети (в том числе применяемые в воздушном и морском транспорте) и даже некоторые глобальные сети. При включении одной из этих сетей в объединенную сеть стратегия объединения сетей на основе виртуальных каналов встречает серьезные трудности. Туннелирование Объединение сетей в общем случае является исключительно сложной задачей. Однако есть частный случай, реализация которого вполне осуществима.
Это случай, при котором хост-источник и хост-приемник находятся в сетях одного типа, но между ними находится сеть другого типа. Например, представьте себе международный банк, у которого имеется одна ТСР/1Р-сеть на основе Ег1тегпег в Париже и такая же сеть в Лондоне, а между ними находится какая-нибудь глобальная не-1Р сеть (например, АТМ), как показано на рис.
5.41. Действует как линия последовательной передачи Многопротокольный маршрутизатор Туннель !Р-пакет внутри информационною поля пакета глобальной сети Рис. 5.4 1. Туннепирование пакета из Парижа в Лондон Метод решения данной проблемы называется тунпелнрованием. Чтобы послать 1Р-пакет хосту 2, хост 1 формирует пакет, содержащий 1Р-адрес хоста 2, помешает его в кадр ЕГЬегпец адресованный парижскому многопротокольному маршрутизатору, и пересылает его по сети ЕгЬегпеп Получив кадр, многопротокольный маршрутизатор извлекает 1р-пакет, помешает его в поле данных пакета сетевого уровня глобальной сети и пересылает его лондонскому многопрото- 490 Глава 5.
Сетевой уровень кольному маршрутизатору. Когда пакет попадает туда, лондонский многопротокольный маршрутизатор извлекает 1Р-пакет и посылает его хосту 2 внутри кадра Еспегпек Глобальную сеть при этом можно рассматривать как большой туннель, простирающийся от одного многопротокольного маршрутизатора до другого. 1Р-пакет, помещенный в красивую упаковку, просто перемешается от одного конца туннеля до другого. Ему не нужно беспокоиться о взаимодействии с глобальной сетью. Это же касается и хостов сетей ЕгЬегпе~ по обе стороны туннеля. Пере- упаковкой пакета и переадресацией занимаются многопротокольные маршрутизаторы.
Для этого им нужно уметь разбираться в 1Р-адресах и обладать информацией о формате пакетов глобальной сети. В результате весь путь от середины одного многопротокольного маршрутизатора до середины другого работает, как линия последовательной передачи.
Чтобы сделать этот пример еше проще и понятнее, рассмотрим в качестве аналогии водителя автомобиля, направляющегося из Парижа в Лондон. По территории Франции автомобиль двигается по дороге сам. Но, достигнув Ла-Манша, он погружается в высокоскоростной поезд и транспортируется под проливом по туннелю (автомобилям не разрешается передвигаться по туннелю самим).
Таким образом, автомобиль перевозится как груз (рис. 5А2). На другом конце туннеля автомобиль спускается с железнодорожной платформы на английское шоссе и снова продолжает путь своимн силами. Точно такой же принцип применяется при туннелировании пакетов, проходящих через чужеродную сеть. Автомобиль Ле-Манш йфййМвь Рио. В.42. Туннелироввние автомобиля, едущего ив Пвриив в Лондон Маршрутизация в объединенных сетях Маршрутизация в объединенных сетях аналогична маршрутизации в единой подсети, но связана с некоторыми дополнительными сложностями.
Рассмотрим, например, объединенную сеть, изображенную на рис. 5АЗ, а, в которой пять сетей соединены шестью (возможно, многопротокольными) маршрутизаторами. Построение графа для данной сети усложняется тем фактом, что каждый многопротокольный маршрутизатор может напрямую обращаться (то есть посылать пакеты) к любому другому многопротокольному маршрутизатору, соединенному с той же сетью, что и он. Например, многопротокольный маршрутизатор В на рис.
5АЗ, а может напрямую обращаться к многопротокольным маршрутизаторам А и С по сети 2, Обьеднненне сетей 491 а также к многопротокольному маршрутизатору В по сети 3. В результате мы получим граф, показанный на рис. 5.43, б. (Многопротокольный) маршрутизатор Рис.
6.43. Обьеднненнан сеть (а)', граф обьедннанной сети (б) Когда граф построен, к множеству многопротокольных маршрутизаторов можно применить известные алгоритмы выбора маршрутов, такие как маршрутизация по вектору расстояний или алгоритм, учитывающий состояние линий. Таким образом, получается двухуровневый алгоритм маршрутизации: в пределах каждой сети используется внутренний шлюзовый протокол, но между сетями применяется внешний шлюзовый протокол (термин «шлюзе употреблялся раньше вместо термина «маршрутизатора). Так как все сети независимы, в них могут применяться различные алгоритмы маршрутизации.