
- •1)Связь внутри процесса
- •2)Локальная связь
- •3)Удаленный сервер
- •1.3.2. Виды маршалинга в модели сом
- •Кому выгодны облачные вычисления?
- •Экономия за счет масштаба: сопоставление крупных и средних цод
- •2.3.1. Протокол передачи файлов ftp
- •2.3.2. Файловая система nfs
- •2.4.1. Назначение и принципы организации службы каталогов
- •2.4.2. Служба каталогов nds
- •Объектно-ориентированный подход
- •Дерево каталогов
- •Имена и контексты
- •2.4.3. Средства защиты объектов в nds
- •2.5.1 Основные подходы к организации межсетевого взаимодействия
- •2.5.2. Трансляция
- •2.5.3. Мультиплексирование стеков протоколов
- •2.5.4. Инкапсуляция протоколов
- •2.9.1. Системы на базе X.400
- •2.9.2. Системы на базе smtp
- •2.9.3. Системы на основе частных стандартов
- •2.9.4. Гибридные системы (ms Exchange Server)
- •Службы мсвс
- •Домен мсвс
- •Гетерогенные домены
- •1.6.3. Программирование с управлением по сообщениям (событиям)
- •1.6.4. Библиотеки для разработки прикладных программ в X Window
- •Язык и интерпретатор Tcl/Tk
- •2.10.3. Языки и средства создания Web-приложений
- •Примеры телекоммуникационных сетей
- •2.8.4. Стандарты систем управления
2.5.1 Основные подходы к организации межсетевого взаимодействия
В контексте межсетевого взаимодействия под термином «сеть» понимается совокупность компьютеров, общающихся друг с другом с помощью единого стека протоколов. Средства взаимодействия компьютеров в сети организованы в виде многоуровневой структуры — стека протоколов. В однородной сети все компьютеры используют один и тот же стек. Проблема возникает тогда, когда требуется организовать взаимодействие компьютеров, принадлежащих разным сетям в указанном выше смысле, то есть организовать взаимодействие компьютеров, на которых поддерживаются отличающиеся стеки коммуникационных протоколов.
Проблема межсетевого взаимодействия может иметь разные внешние проявления, но суть ее одна - несовпадение используемых коммуникационных протоколов. Например, эта проблема возникает в сети, в которой имеется только одна сетевая ОС, однако транспортная подсистема неоднородна из-за того, что сеть включает в себя фрагменты Ethernet, объединенные кольцом FDDI.
Проблема межсетевого взаимодействия может возникнуть и в сети, построенной на основе только технологии Ethernet, но в которой установлено несколько разных сетевых ОС.
Задачи устранения неоднородности зависят от того, к какому уровню модели OSI они относятся.
Задача объединения транспортных подсистем, отвечающих только за передачу сообщений, обычно называется в зарубежной литературе internetworking — образование интерсетей. Обычным подходом для ее решения является использование единого сетевого протокола, такого, например, как IP или IPX. Однако существуют ситуации, когда этот подход неприменим или нежелателен.
Другая задача, называемая interoperability, возникает при объединении сетей, использующих разные протоколы более высоких уровней — в основном прикладного и представительного. Будем называть это задачей согласования сетевых служб операционных систем, так как протоколы прикладного и представительного уровней реализуются именно этими сетевыми компонентами.
Кардинальным решением проблемы межсетевого взаимодействия могло бы стать повсеместное использование единого стека протоколов. Попытка введения единого стека коммуникационных протоколов была сделана в 1990 году правительством США, которое обнародовало программу GOSIP — Government OSI Profile, в соответствии с которой стек протоколов OSI предполагалось сделать общим для всех сетей, устанавливаемых в правительственных организациях США. Однако до сих пор очень много сетевых узлов поддерживает протоколы IPX/SPX, DECnet, IBM SNA, NetBEUI.
Самыми общими подходами к согласованию протоколов являются: трансляция, мультиплексирование, инкапсуляция (туннелирование).
2.5.2. Трансляция
Трансляция обеспечивает согласование стеков протоколов путем преобразования сообщений, поступающих от одной сети в формат сообщений другой сети. Транслирующий элемент, в качестве которого могут выступать, например, программный или аппаратный шлюз, мост, коммутатор или маршрутизатор, размещается между взаимодействующими сетями. Термин «шлюз» обычно подразумевает средство, выполняющее трансляцию протоколов верхних уровней, хотя в терминах Интернета шлюзом (gateway) называется маршрутизатор.
Трансляция протоколов включает отображение инструкций одного протокола в инструкции другого, что представляет собой сложную процедуру. Например, в файловой службе операционной системы NetWare (протокол NCP) определены следующие права доступа к файлу: read, write, erase, create, file scan, modify, access control, supervisory, а файловая служба UNIX (протокол NFS) оперирует совсем другим перечнем прав доступа: read, write, execute.
На рис. 2.8 показан шлюз, размещенный на компьютере 2, который согласовывает протоколы клиентского компьютера 1 в сети А с протоколами компьютера 3 в сети В.
Рис. 2.8. Принципы функционирования шлюза
Запрос от прикладного процесса клиентского компьютера сети А поступает на прикладной уровень его стека протоколов. В соответствии с этим протоколом формируется пакет, в котором передается запрос на выполнение услуг некоторому серверу сети В. Пакет прикладного уровня перемещается вниз по стеку компьютера сети А, обрастая заголовками нижележащих протоколов, а затем передается в компьютер 2, то есть в шлюз.
В шлюзе обработка данных идет в обратном порядке, от протокола самого нижнего к протоколу самого верхнего уровня стека А. Затем пакет прикладного уровня стека сети А преобразуется (транслируется) в пакет прикладного уровня серверного стека сети В. Преобразованный пакет от верхнего уровня стека сети В передается к нижним уровням в соответствии с правилами этого стека, а затем по физическим линиям связи в соответствии с протоколами физического и канального уровней сети В поступает в другую сеть к нужному серверу. Ответ сервера преобразуется шлюзом аналогично.
Примером шлюза, транслирующего протоколы прикладного уровня, является компонент Windows NT Gateway Services for NetWare (GSNW), который обеспечивает клиентам Windows NT прозрачный доступ к томам и каталогам серверов NetWare 3.x и 4.x (см. рис 2.9). Шлюз устанавливается на том же компьютере, на котором установлен сервер Windows NT. Между шлюзом и сервером NetWare устанавливается связь по протоколу NCP.
Для доступа к файлам NetWare клиенты Windows NT по протоколу SMB обращаются к серверу Windows NT, на котором работает шлюз GSNW. Если запрос, поступивший на сервер Windows NT, относится к ресурсам NetWare, то он переадресуется шлюзу, который транслирует
его в понятный для сервера NetWare вид и передает по протоколу NCP соответствующему серверу. При этом шлюз выступает по отношению к серверам NetWare как клиент.
Достоинство шлюзов состоит в том, что они сохраняют в неизменном виде программное обеспечение на клиентских компьютерах. Однако, как и всякий централизованный ресурс, шлюз снижает надежность сети. Кроме того, при обработке запросов в шлюзе возможны относительно большие временные задержки, во-первых, из-за затрат времени на собственно процедуру трансляции, а во-вторых, из-за задержек запросов в очереди к разделяемому всеми клиентами шлюзу, особенно если запросы поступают с большой интенсивностью.
Рис. 2.9. Шлюз Gateway Service for NetWare
Это делает шлюз плохо масштабируемым решением. Правда, ничто не мешает установить в сети несколько параллельно работающих шлюзов.