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


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

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



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

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

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

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

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

 

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

Мультиплексирование протоколов реализует отношение «один ко многим», то есть один клиент с дополнительным стеком может обращаться ко всем серверам, поддерживающим этот стек, или один сервер с дополнительным стеком может предоставлять услуги многим клиентам.

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

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

Заметим, что при организации взаимодействия двух разнородных сетей в общем случае нужно решать две задачи согласования служб (рис. 10.15):

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

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

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

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

На рис. 10.16 показаны оба возможных варианта однонаправленного взаимодей­ствия А В: путем добавления нового стека к клиентам сети А (рис. 10.16, а) либо путем присоединения «добавки» к серверам сети В (рис. 10.16, б).

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

Примером «добавки», модифицирующей клиентскую часть, может служить по­пулярное программное средство компании Microsoft Client Services for NetWare (CSNW), которое превращает клиента Windows NT в клиента серверов NetWare за счет установки клиентской части протокола NCP.

 

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

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

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

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

В принципе, при работе с несколькими стеками протоколов у пользователя мо­жет возникнуть проблема работы в незнакомой среде, с незнакомыми команда­ми, правилами и методами адресации. Чаще всего разработчики операционных систем стремятся в какой-то степени облегчить жизнь пользователю в этой си­туации. Независимо от используемого протокола прикладного уровня (напри­мер, SMB или NCP) ему предоставляется один и тот же интуитивно понятный графический интерфейс, с помощью которого он просматривает и выбирает нуж­ные удаленные ресурсы.

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

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

Метод Достоинства Недостатки
Мультиплексирование протоколов   Трансляция протоколов (шлюзы, маршрутизаторы, коммутаторы) Более быстрый доступ; повышение надежности взаимодействия за счет установки стека на нескольких узлах сети; хорошо масштабируемое средство Сохранение привычной среды пользователей; отсутствие необходимости в дополни- тельном программном обес- печении на рабочих станциях; локализация всех проблем межсетевого взаимодействия; обеспечение возможности доступа к «чужим» ресурсам сразу для нескольких клиентов Усложнение администрирования и контроля доступа; высокая избыточность, требующая дополнительных ресурсов от рабочих станций; менее удобно для пользователя, чем шлюзы   Замедление работы; снижение надежности; плохая масшта- бируемость; необходимость в двух сетевых передачах для выполнения одного запроса
     

 

 

Инкапсуляция протоколов

Инкапсуляция (encapsulation), или туннелирование (tunneling), — это еще один метод решения задачи согласования сетей, который, однако, применим только для согласования транспортных протоколов и только при определенных ограни­чениях. Инкапсуляция может быть использована, когда две сети с одной транс­портной технологией необходимо соединить через транзитную сеть с другой транспортной технологией.

В процессе инкапсуляции принимают участие три типа протоколов:

· протокол-«пассажир»;

· несущий протокол;

· протокол инкапсуляции.,

Транспортный протокол объединяемых сетей является протоколом-пассажиром, а протокол транзитной сети — несущим протоколом. Пакеты протокола-пасса­жира помещаются в поле данных пакетов несущего протокола с помощью прото­кола инкапсуляции. Пакеты протокола-пассажира никаким образом не обрабаты­ваются при транспортировке их по транзитной сети. Инкапсуляцию выполняет пограничное устройство (обычно маршрутизатор или шлюз), которое располага­ется на границе между исходной и транзитной сетями. Извлечение пакетов-пас­сажиров из несущих пакетов выполняет второе пограничное устройство, которое находится на границе между транзитной сетью и сетью назначения. Погранич­ные устройства указывают в несущих пакетах свои адреса, а не адреса узлов на­значения.

В связи с большой популярностью Интернета и стека TCP/IP несущим протоко­лом транзитной сети все чаще выступает протокол IP, а в качестве протоколов-пассажиров — все остальные протоколы локальных сетей (как маршрутизируе­мые, так и не маршрутизируемые).

В приведенном на рис. 10.17 примере две сети, использующие протокол IPX, нуж­но соединить через транзитную сеть TCP/IP. Необходимо обеспечить только взаимодействие узлов двух сетей IPX, а взаимодействие между узлами IPX и уз­лами сети TCP/IP не предусматривается. Поэтому для соединения сетей IPX можно применить метод инкапсуляции.

В пограничных маршрутизаторах, соединяющих сети IPX с транзитной сетью IP, работают протоколы IPX, IP и дополнительный протокол — протокол инкапсу­ляции IPX в IP. Этот протокол извлекает пакеты IPX из кадров Ethernet и поме­щает их в дейтаграммы UDP или TCP (на рисунке выбран вариант с TCP). За­тем несущие IP-пакеты направляются другому пограничному маршрутизатору. Протокол инкапсуляции должен иметь информацию о соответствии IPX-адреса удаленной сети IP-адресу пограничного маршрутизатора, обслуживающего эту сеть. Если через IP-сеть объединяется несколько IPX-сетей, то должна быть таб­лица соответствия всех IPX-адресов IP-адресам пограничных маршрутизаторов.

Инкапсуляция может быть использована для транспортных протоколов разного уровня. Например, протокол сетевого уровня Х.25 может быть инкапсулирован в протокол транспортного уровня TCP или же протокол сетевого уровня IP может быть инкапсулирован в протокол сетевого уровня Х.25. Существуют протоколы инкапсуляции трафика РРР через сети IP.

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

 

 

Выводы

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

□ Один компьютер может в одно и то же время предоставлять пользователям сети услуги различных файловых служб.

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

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

□ Файловый интерфейс может быть отнесен к одному из двух типов в зависи­мости от того, поддерживает ли он модель загрузки-выгрузки или модель уда­ленного доступа.

□ Файловый сервер может быть реализован по одной из двух схем: с запоминани­ем данных о последовательности файловых операций клиента, то есть по схеме stateful, и без запоминания таких данных, то есть по схеме stateless.

□ Кэширование в сетевых файловых системах позволяет повысить скорость до­ступа к удаленным данным и улучшить масштабируемость и надежность файловой системы.

□ Репликация подразумевает существование нескольких копий одного и того же файла, каждая из которых хранится на отдельном файловом сервере, при этом обеспечивается автоматическое согласование данныхв копиях файла.

□ Существует несколько способов обеспечения согласованности реплик, кото­рые общаются в методе кворума.

□ Служба каталогов хранит информацию обо всех пользователях и ресурсах сети в виде унифицированных объектов с определенными атрибутами, а также по­зволяет отражать взаимосвязи между хранимыми объектами.

□ Служба каталогов упрощает работу распределенных приложений и повышает управляемость сети.

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

□ Наиболее перспективным стандартом доступа к службе каталогов является стандарт LDAP (Light-weight Directory Access Protocol), разработанный сооб­ществом Интернета.

□ В контексте межсетевого взаимодействия понятие «сеть» можно определить как совокупность компьютеров, общающихся друг с другом с помощью единого стека протоколов. Проблема организации межсетевого взаимодействия воз­никает тогда, когда компьютеры принадлежат разным сетям, но поддержива­ют стеки протоколов, отличающиеся на одном или более уровнях.

□ Средства, позволяющие организовать взаимодействие на нижних уровнях сте­ка протоколов, называются средствами internetworking, а средства согласова­ния протоколов и служб верхних уровней — средствами interoperability.

□ Существуют три основных способа согласования протоколов: трансляция, муль­типлексирование и инкапсуляция (туннелирование).

□ Трансляция заключается в преобразовании сообщений, поступающих от од­ного протокола, в сообщения другого протокола. Трансляция бывает одноуров­невая, когда для выполнения преобразования используется информация только данного протокола, и двухуровневая, когда для преобразования привлекается информация протокола верхнего уровня.

□ Мультиплексирование заключается в установке нескольких стеков протоко­лов на клиентах или серверах согласуемых сетей.

□ К достоинствам метода трансляции протоколов относятся: сохранение при­вычной среды пользователя, локализация функций согласования сетей в од­ном месте, не требуется установка дополнительного программного обеспече­ния на многих компьютерах. Недостатки — низкая скорость и ненадежность. Достоинствами метода мультиплексирования стеков протоколов являются вы­сокая скорость и надежность, недостатками — избыточность и большой объем административных работ.

□ Инкапсуляция применяется для транзитной передачи одного транспортного протокола через сеть с другим стеком трансцортных протоколов.

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

Задачи и упражнения

1. Какие из следующих протоколов яглятотся протоколами взаимодействия клиентской и серверной частей файлового сервиса: SMTP, NFS, SMB, SNMP, UDP, NLSP, FTP, TFTP, NCP?

2. Какая модель файлового сервера (stateful или stateless) обеспечивает боль­шую степень устойчивости к отказам сервера?

3. Поскольку репликация и кэширование файлов преследуют близкие цели, то стоит ли реализовывать эти два механизма в одной файловой системе?

4. Заполните таблицу, отметив наличие или отсутствие соответствующих свойств у механизмов репликации и кэширования файлов:

  Повышение производительности Повышение отказоустойчивости
Репликация    
Кэширование    

 

 

5. Можно ли с помощью одного прикладного протокола осуществлять доступ по сети к различным локальным файловым системам?

6. Может ли несколько пользователей одновременно модифицировать один и тот же файл в ОС Windows NT? А в ОС UNIX?

7. Какой результат видят на экране два пользователя ОС UNIX, набирающие текст в одном и том же файле?

8. Какая модель сетевого файлового сервиса более прозрачна для пользователя: загрузки-выгрузки или удаленного доступа?

9. Сравните два метода кэширования — на стороне клиента и на стороне серве­ра, — используемые в сетевой файловой службе. Приведите достоинства и не­достатки каждого метода.

10. Какими свойствами должна обладать база данных службы каталогов?

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

12. Поясните разницу в терминах «internetworking» и «interoperability».

13. Если на клиентской машине установлен стек протоколов, не совпадающий со стеком протоколов, установленным на сервере, то положение можно испра­вить, дополнительно установив соответствующий стек протоколов на одной из машин. Имеет ли значение, на какой из машин (сервере или клиенте) бу­дет установлен этот стек?

14. Возможно ли в принципе обеспечить доступ всех клиентов сети А к серверам сети В и доступ всех клиентов сети В к серверам сети А путем установки дополнительного программного обеспечения только в одной из сетей, напри­мер в сети А?

15. Пусть в некоторой сети Windows NT, состоящей из сервера и клиентских стан­ций, работают немногочисленные пользователи-непрофессионалы, выполняю­щие некритические приложения. Клиентские станции имеют весьма ограни­ченные ресурсы. Время от времени у пользователей возникает необходимость доступа к данным, находящимся на файл-сервере NetWare, который подклю­чен к тому же сегменту Ethernet. Как вы считаете, какой вариант межсетевого взаимодействия является более предпочтительным в этой ситуации?

А) на всех компьютерах установить клиентскую часть протокола NCP;

В) на сервере Windows NT установить шлюз.

16. Пусть в сети Ethernet, в которой на всех компьютерах установлены протоко­лы сетевого уровня IP, драйверы сетевых адаптеров одних компьютеров вы­полнены в стандарте NDIS, а других — в стандарте ODI. Может ли это поме­щать нормальной работе сети?

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

· на прикладном уровне: SMB, SMTP;

· на транспортных уровнях: TCP, IP, Ethernet.

18. Вторая часть приложения установлена на компьютере, у которого установ­лены:

· на прикладном уровне: NFS, X.400;

· на транспортных уровнях: TCP, IP, Ethernet.

Может ли в таких условиях приложение работать нормально.


 



Поделиться:


Последнее изменение этой страницы: 2017-01-19; просмотров: 705; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.143.218.146 (0.063 с.)