Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВС.docx
Скачиваний:
5
Добавлен:
01.03.2025
Размер:
9.58 Mб
Скачать

2.5.3. Мультиплексирование стеков протоколов

Другой подход к согласованию протоколов получил название мультиплексиро­вания стеков - в сетевое оборудование или в операционные системы серверов и рабочих станций встраиваются несколько стеков протоколов (рис. 2.10), что позволяет клиентам и серверам выбирать для взаимо­действия тот протокол, который является для них общим.

При мультиплексировании стеков протоколов на один из двух взаимодействую­щих компьютеров с различными стеками протоколов помещается стек протоколов другого компьютера. На рис. 2.11 приведен пример взаимодействия клиентского компьютера сети В с сервером в своей сети и сервером сети А, рабо­тающей со стеком протоколов, отличающимся от стека сети В. В кли­ентском компьютере реализованы оба стека. Для того чтобы запрос от приклад­ного процесса был правильно обработан и направлен через соответствующий стек, необходимо наличие специального программного элемента — мультиплексора про­токолов, называемого также менеджером протоколов. Менеджер определяет, к какой сети направляется запрос клиента. Для этого может исполь­зоваться служба имен сети, в которой отмечается принадлежность того или ино­го ресурса определенной сети с соответствующим стеком протоколов.

При использовании технологии мультиплексирования структура коммуникаци­онных средств операционной системы может быть и более сложной. В общем случае на каждом уровне вместо одного протокола появляется целый набор протоколов и может существовать несколько мультиплексоров, выполняющих ком­мутацию между протоколами разных уровней. Например, рабочая станция, стек протоколов которой показан на рис. 2.11, может через один сетевой адаптер по­лучить доступ к сетям, работающим по протоколам NetBIOS, IP, IPX. Данная рабочая станция может быть клиентом сразу нескольких файловых серверов: NetWare (NCP), Windows NT (SMB) и Sun (NFS).

Предпосылкой для развития технологии мультиплексирования стеков протоколов стало появление открытых описаний протоколов различных уров­ней и межуровневых интерфейсов, так что фирма-производитель при реализа­ции «чужого» протокола может быть уверена, что ее продукт будет корректно взаимодействовать с продуктами других фирм по данному протоколу, этот про­токол корректно впишется в стек и с ним будут нормально взаимодействовать протоколы соседних уровней. Пример мультиплексирования протоколов приведен на рис. 2.12.

а

б

Рис. 2.10. Два варианта согласования протоколов: трансляция протоколов (а), мультиплексирование стеков протоколов (б)

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

Рис. 2.11. Мультиплексирование стеков

Наи­более известными стандартами являются менеджеры Network Driver Interface Specification — NDIS (первоначально — совместная разработка 3Com и Micro­soft, версии NDIS 3.0 и 4.0 — реализации Microsoft), а также стандарт Open Data-Link Interface — ODI, представляющий совместную разработку компаний Novell и Apple. Эти менеджеры реализуют мультиплексирование протоколов каналь­ного уровня, реализованных в драйверах сетевых адаптеров. С помощью мульти­плексора NDIS или ODI можно связать один драйвер сетевого адаптера с не­сколькими протоколами сетевого уровня, а также с несколькими однотипными сетевыми адаптерами.

Рис. 2.12. Мультиплексирование протоколов

При использовании мультиплексоров протоколов существуют два варианта размещения дополнительного стека протоколов - на одном или на другом взаимодействующем компьютере. Если дополнительный стек устанавливается на сервере, то этот сервер становится доступным для всех клиентов с этим стеком. При этом нужно тщательно оценивать влияние установки дополнительного продукта на производительность сервера.

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

При организации взаимодействия двух разнородных сетей в общем случае нужно решать две задачи согласования служб:

  • обеспечение доступа клиентам сети А к ресурсам сети В;

  • обеспечение доступа клиентам сети В к ресурсам сети А.

Эти задачи независимы, и их можно решать отдельно. В некоторых случаях тре­буется полное решение, например, чтобы пользователи UNIX-машин имели доступ к ресурсам серверов NetWare, а пользователи персональных машин имели доступ к ресурсам UNIX-хостов, в других же случаях достаточно обес­печить доступ клиентам из сети NetWare к ресурсам сети UNIX. Большинство имеющихся на рынке продуктов обеспечивает только однонаправленное согла­сование прикладных служб.

Рассмотрим возможные варианты размещения программных средств, которые основаны на мультиплексировании протоколов. Обозначения: С - сервер, К - клиент, Д - дополнительный протокол (протоколы), предоставляющий возможности межсетевого взаи­модействия.

На рис. 2.13 показаны оба варианта однонаправленного взаимодей­ствия А -> В: а) добавление нового стека к клиентам сети А; б) присоединение «добавки» к серверам сети В.

В первом случае, когда средства мультиплексирования протоколов располагают­ся на клиентских частях, только клиенты, снабженные такими средствами, могут обращаться к серверам сети В. Во втором случае, когда набор дополнительных стеков расположен на каком-либо сервере сети В, данный сервер может обслуживать всех клиентов сети А.

Рис. 2.13. Варианты размещения средств межсетевого взаимодействия

Примером расширения возможностей сетевого взаимодействия сервера является установка на сервер Windows NT продукта Microsoft File and Print Services for NetWare, который реализует серверную часть протокола NCP. Это позволяет кли­ентам NetWare обращаться к файлам и принтерам сервера Windows NT.

Важным преимуществом мультиплексирования является меньшее время выпол­нения запроса, чем при использовании шлюза. Это связано, во-первых, с отсут­ствием временных затрат на процедуру трансляции, а во-вторых, с тем, что при мультиплексировании на каждый запрос требуется только одна сетевая переда­ча, в то время как при трансляции — две: запрос сначала передается на шлюз, а затем из шлюза на ресурсный сервер.

В табл. 2.1 приведены сравнительные характеристики двух подходов к реализа­ции межсетевого взаимодействия.

Таблица 2.1

Сравнение методов трансляции и мультиплексирования протоколов

Метод

Достоинства

Недостатки

Мультиплекси-рование протоколов.

Более быстрый доступ, повышение надежности взаимодействия за счет установки стека на нескольких узлах сети; хорошо масштабируемое средство.

Усложнение администри­рования и контроля доступа; высокая избыточность, требующая дополнительных ресурсов от рабочих станций; менее удобно для пользователя, чем шлюзы.

Трансляция

протоколов (шлюзы, маршрутиза-

торы, коммутаторы).

Сохранение привычной среды пользователей; нет необходимости в дополни­тельном программном обес­печении на рабочих станциях; локализация проблем межсетевого взаимодействия; возможность доступа к «чужим» ресурсам сразу для нескольких клиентов.

Замедление работы; снижение надежности; плохая масшта­бируемость; необходимость в двух сетевых передачах для выполнения одного запроса.