Лекции 2010-го года (1130544), страница 66
Текст из файла (страница 66)
Рассмотрим теперь, что произойдет, если получатель 3 захочет также получать данныеот отправителя 2. Для этого резервирующее сообщение проложит второй путь,показанный на рисунке 5-31 (b). Предположим теперь, что получатель 5 также захотелподключиться к отправителю 2 (рисунок 5-31 (с)).
Он запустит резервирующеесообщение, которое свободно пройдет до узла Н, а там будет обнаружено, что ранее ужебыли зарезервированы ресурсы для доставки трафика от узла 2 до узла Н. Здесь возможнынюансы. Например, если требования к качеству сервиса у 5 и 3 разное, то резервироватьсяресурсы будут по максимуму. Кроме этого, при резервировании получатель может39указывать не только несколько источников, от которых он хотел бы получатьинформацию, но также то, является ли создаваемый канал временным (вплоть до того, накакое время он создается), или он должен долго оставаться открытым.
Маршрутизаторымогут использовать эту информацию для оптимизации планирования ресурсов, вособенности при разделении каких-либо ресурсов между несколькими получателями.Благодаря такой стратегии этот протокол может поддерживать динамику внутри групп.Раздел 5.4. Межсетевое взаимодействиеДо сих пор мы предполагали, что соединения возникают в рамках однородной средыпередачи.
Теперь мы перейдем к рассмотрению случаев, когда соединение возникаетмежду СПД-средами с разной архитектурой.Существование разных сетей - явление временное, или оно отражает некоторыеобъективные тенденции? Хотя Unix работает с TCP/IP, тем не менее, существует SNA отIBM, NCP/IPX от Novel, AppleTalk и т.д.Безусловно, будут появляться новые технологии, стандарты, устройства и программноеобеспечение, их реализующее. Все эти инновации надо будет как-то связывать ссуществующими сетями.Рисунок 5-32. Межсетевое взаимодействиеНа рисунке 5-32 показаны различные сценарии соединений между сетями.1.LAN-LAN: научный сотрудник передает файл в рамках локальной сети кампуса.2.LAN-WAN: научный сотрудник посылает письмо коллеге.3.WAN-WAN: два гуманитария обмениваются мнениями.4.LAN-WAN-LAN: научные сотрудники разных университетов общаются междусобой.Название средства, соединяющего сети между собой, зависит от того, на каком уровне этопроисходит.1.Уровень 1: репитер копирует биты из одного кабельного сегмента в другой.402.Уровень 2: мост передает пакеты канального уровня из одной ЛВС в другую.3.Уровень 3: мультипротокольный маршрутизатор передает пакеты между сетями сразной архитектурой.4.Уровень 4: транспортный шлюз соединяет байтовые потоки на транспортномуровне.5.Над уровнем 4: прикладной шлюз соединяет приложения в разных сетях.Напомним, что термин «шлюз» мы используем для обозначения устройства,соединяющего сети с разной архитектурой.Репитер - устройство, обеспечивающее усиление и очистку сигнала.
На МАС-уровнетрансивер обеспечивает передачу сигнала в пределах 500 метров. Репитер обеспечиваетпередачу на 2,5 км.Мост способен хранить и маршрутизировать пакеты на канальном уровне. Он получаетканальный пакет целиком и решает, по какой линии его передать дальше.Мультипротокольные маршрутизаторы функционально примерно то же самое, что имосты, но работают на сетевом уровне. Они получают пакеты сетевого уровня иопределяют, куда их передать. Однако при этом разные каналы могут принадлежатьразным сетям, использующим разные протокольные стеки. Поэтомумультипротокольному маршрутизатору, кроме задачи маршрутизации, приходится решатьи задачу сопряжения форматов пакетов на сетевом уровне в сетях с разной архитектурой.На рисунке 5-33 показаны разные схемы включения шлюза.Рисунок 5-33. Схемы включения шлюза: (а) Полный шлюз между двумя WAN; (b)Полный шлюз между LAN и WAN; (c) Два полушлюза5.4.1.
Чем различаются сетиВ таблице 5-34 перечислены основные различия, которые могут встречаться на сетевомуровне. Эти различия усложняют межсетевое взаимодействие.Таблица 5-34. Различия сетей на сетевом уровне41ПризнакВозможные значенияПредоставляемый сервисОриентированные vs. неориентированные на соединениеПротоколыIP, IPX, CLNP, AppleTalk, DECnet и т.д.АдресацияПрямая (802) vs. иерархическаяГрупповое вещаниеЕсть/нет (также транслирование)Размер пакетовУ каждой сети свой максимальный размерКачество сервисаЕсть/нет; много различных видовДействия в случае ошибокНадежная, упорядоченная или неупорядоченная доставкаУправление потоком«Скользящее окно», регулирование скорости, другие способы или неуправляемыйпотокУправление перегрузкамиПротокол «текущего ведра», подавляющие пакеты и т.д.БезопасностьПравила защиты информации, шифрование и т.д.ПараметрыРазные значения тайм-аута, характеристики потока и т.д.ОплатаЗа время соединения, за количество пакетов, побайтно или без оплатыКогда пакет, отправленный из одной сети, должен пройти несколько разных сетей, преждечем достичь нужную сеть, приходится решать множество проблем, возникающих наинтерфейсах между сетями.
Например, если пакеты были отправлены по виртуальномусоединению, а одна из транзитных сетей не поддерживает такие соединения, то порядокследования пакетов может быть нарушен, к чему ни отправитель, ни получатель могутбыть не готовы. Также может потребоваться согласование функциональности протоколовна одноименных уровнях. Если функциональность одного протокола не может бытьвыражена в терминах функциональности другого, то такое согласование может оказатьсяневозможным.
Проблемы могут возникнуть с адресацией при переходе из одной сети вдругую, групповой рассылкой и т.д.Много проблем доставляет различие в максимальной длине пакетов, используемой вразных сетях. Другим источником трудностей является различие в качестве услуг вразных сетях. Например, когда надо передать пакет из сети, поддерживающейограничение на время передачи пакета, через сеть, где нет никаких гарантий намаксимальную величину задержки пакета при передаче.В разных сетях по-разному решаются вопросы управления перегрузками и потоками,обнаружения и исправления ошибок, что также может служить источником проблем.5.4.2. Сопряжение виртуальных каналовЕсть два общих приема для межсетевого взаимодействия: сопряжение, ориентированноена соединения подсетей с виртуальными каналами, и взаимодействие подсетей черездейтаграммы. На рисунке 5-35 показана модель сопряжения виртуальных каналов.Абонентская машина одной сети устанавливает виртуальное соединение не только внутрисвоей сети, но и в другой сети, вплоть до получателя.
Внутри своей сети соединениепрокладывается по правилам этой сети вплоть до мультипротокольного маршрутизатора,ближайшего к сети получателя. Затем от этого маршрутизатора до получателя - поправилам сети получателя. (Рассмотреть прохождение пакетов вдоль соединения.)Рисунок 5-35.
Межсетевое взаимодействие с использованием сопряжения виртуальныхканалов42На рисунке показано решение с использованием полного шлюза. Однако такое жерешение возможно и с полушлюзом. Это решение хорошо работает для сетей с примерноодинаковыми характеристиками.Достоинства сопряжения виртуальных каналов: буферы можно резервировать заранее,порядок пакетов сохраняется, проще управлять повторной передачей из-за задержки,короткие заголовки пакетов.Недостатки сопряжения виртуальных каналов: хранение таблицы сопряжения, сложностив изменении маршрута при перегрузках, требование высокой надежностимаршрутизаторов вдоль сопряжения.5.4.3.
Межсетевое взаимодействие без соединенийНа рисунке 5-36 показано решение на основе соединения сетей на уровне дейтаграмм.При этом подходе единственный сервис, который сетевой уровень предоставляеттранспортному – «впрыскивание» дейтаграмм в транспортную среду. Дальшеприходиться надеяться на удачу. Такое сопряжение сетей возможно, если соединяемыетранспортные среды используют одни и те же или очень близкие сетевые протоколы.Вспомним проблемы мостов между подуровнями 802.х.Рисунок 5-36. Межсетевое взаимодействие без соединенийПроблемы возникают с адресацией.
Различия в адресации могут быть столь велики, чтосопряжение станет невозможным. Например, в ТСР/IP используется 32-разрядный адрес, а43в OSI - десятичный номер, подобный телефонному. Выход - распространять каждуюадресацию на все машины в мире. Однако, очевидно, что такой подход не работает.Другой выход - создать универсальный пакет, который понимали бы разные сети, - тожене работает. Всех уговорить признать один формат как универсальный невозможно.Основное достоинство дейтаграммного подхода - он может использоваться между сетями,которые не поддерживают виртуальных соединений.
Число таких сетей весьма велико.5.4.4. ТуннелированиеВ общем случае проблема межсетевого соединения весьма сложна. Однако естьдостаточно распространенный случай, для которого есть решение. Это соединение двуходинаковых сетей через третью. Например, так, как показано на рисунке 5-37. Решениепроблемы межсетевого соединения в этом случае дает применение техникитуннелирования. Рисунок 5-38 разъясняет прием туннелирования на примере автомобиля.Суть этого приема состоит в том, что пакет из одной сети упаковывается в кадрпромежуточной сети. Затем он передается через промежуточную сеть на канальномуровне.
При достижении кадром сети назначения кадр распаковывается, пакет передаетсяна сетевой уровень и движется дальше.Рисунок 5-37. Транспортировка пакета методом туннелированияРисунок 5-38. Транспортировка автомобиля через туннель под Ла-Маншем5.4.5.
Межсетевая маршрутизацияМаршрутизация на межсетевом уровне происходит примерно так же, как на сетевом, но снекоторыми дополнительными сложностями. Рассмотрим пример на рисунке 5-39. Наэтом рисунке шесть мультипротокольных маршрутизаторов соединяют пять сетей.44Рисунок 5-39. Пример межсетевой маршрутизацииИмея граф соединений этих маршрутизаторов между собой, можно применять ужеизвестные нам алгоритмы маршрутизации: по вектору расстояния или по состояниюканала.
Так мы приходим к двум уровням маршрутизации: внутреннему межшлюзовомупротоколу и внешнему межшлюзовому протоколу. Поскольку каждая сеть вопределенном смысле автономна, то для нее часто используют термин - автономнаясистема.Главная сложность, отличающая внутрисетевую маршрутизацию от межсетевой государственные границы. Здесь возникают различия в законах разных стран, различия воплате трафика, принятые на территориях разных стран, и т.д.5.4.6. ФрагментацияВ каждой сети есть свой максимальный размер пакетов. Это ограничение имеет несколькопричин:1.Аппаратура (например, максимальный TDM-слот)2.Операционная система (все буфера по 512 байтов)3.Протоколы (например, размер поля длины пакета)4.Совместимость с некоторыми национальными и международными стандартами5.Стремление сократить ошибку, вызываемую повторной передачей6.Желание предотвратить длительный захват канала одним пакетомМаксимальный размер пакета колеблется от 48 байтов в АТМ-сети до 65515 байтов в IPсети (у протоколов более высоких уровней он еще больше).Очевидно, первая же проблема возникает при попытке передать большой пакет через сеть,у которой максимальный размер пакета меньше.
Одно из решений - проложить маршрутдля таких пакетов так, чтобы избежать подобной ситуации. Однако что делать, в такойсети расположен получатель?Единственное решение - разрешить шлюзу разбивать пакет на фрагменты и отправлятькаждый фрагмент независимо. В этом случае возникает проблема сборки фрагментов.45Есть два подхода к тому, как это осуществлять. Первый - делать фрагменты стольмалыми, что любая сеть на их пути будет прозрачна для них. Это решение показано нарисунке 5-40 (а). Когда поступает большой пакет, его разбивают на малые и все пакетыотправляют на один и тот же выходной шлюз, где они собираются снова в большой пакет.Рисунок 5-40. Фрагментация пакетовВ такой фрагментации есть трудности: как узнать, что все фрагменты достигли выходногошлюза, как выбирать маршрут для фрагментов, накладные расходы на разбиение и сборкупакета из фрагментов.Другой подход - разбив пакет на фрагменты, рассматривать каждый из них как обычныйпакет. Это решение показано на рисунке 5-40 (b).