Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник по Ос иС.doc
Скачиваний:
34
Добавлен:
19.08.2019
Размер:
4.46 Mб
Скачать
    1. Сетевые службы.

Сетевые файловые системы

Сетевая файловая система в общем случае включает в себя следующие элементы, представленные на рисунке 1.3:

  1. локальная файловая система;

  2. интерфейс локальной файловой системы;

  3. сервер сетевой файловой системы;

  4. клиент сетевой файловой системы;

  5. интерфейс сетевой файловой системы;

  6. протокол клиент-сервер сетевой файловой системы.

Рисунок 1.3 – Модель сетевой файловой системы.

Клиенты сетевой ФС — Это программы, которые работают на многочисленных компьютерах, подключенных к сети. Эти программы обслуживают запросы приложений на доступ к файлам, хранящимся на удаленном компьютере. В качестве таких приложений часто выступают графические или символьные оболочки ОС, такие как Windows Explorer или UNIX shell, а также любые другие пользова­тельские программы.

Клиент сетевой ФС передает по сети запросы другому программному компоненту – серверу сетевой ФС, работающему на удаленном компьютере. Сервер, получив запрос, может выполнить его либо самостоятельно, либо передать запрос локальной файловой системе для отработки. После получения ответа от локальной файловой системы сервер передает его по сети клиенту, а тот, в свою очередь, обратившемуся с запросом.

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

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

Для одной и той же локальной файловой системы могут существовать различные протоколы сетевой файловой системы. Так, к файловой системе NTFS модно получить доступ с помощью различных протоколов, что показано на рисунке 1.4.

С помощью одного и того же протокола может реализовываться удаленный доступ к локальным файловым системам разного типа. Например, протокол SMB используется для доступа не только к файловой системе FAT, но и к файловым системам NTFS и HPFS (рисунок 1.5) Эти файловые системы могут располагаться как на разных, так и на одном компьютере.

Рисунок 1.5 – Доступ к локальным файловым системам различного типа с помощью одного протокола клиент-сервер.

На рис. 1.6 показан вариант организации неоднородной сетевой файловой сис­темы, в которой на компьютере с локальной файловой системой NTFS работает несколько файловых серверов, поддерживающих различные протоколы клиент-сервер. Каждый файловый сервер обеспечивает доступ к одним и тем же данным всем клиентам, работающим по протоколу данного сервера, например протоколу NFS. Клиенты, в свою очередь, поддерживают для приложений и пользователей интерфейс s5/ufs, для которого разрабатывался протокол NFS.

Рисунок 1.6 – Неоднородная сетевая файловая система.

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

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

Важным аспектом файловой модели является возможность модификации файла после его создания. В большинстве сетевых файловых систем файлы могут мо­дифицироваться, но в некоторых распределенных системах единственными опе­рациями с файлами являются create (создать) и read (прочитать). Такие файлы называются неизменяемыми. Для неизменяемых файлов намного легче осущест­вить кэширование файла и его репликацию (тиражирование), так как исключа­ются все проблемы, связанные с обновлением всех копий файла при его из­менении. В файловых системах, работающих с немодифицируемыми файлами, проблемы поддержки многочисленных версий файла, возникающих при его мо­дификации, перекладываются на плечи пользователей, которые должны давать им имена, отражающие тот факт, что все множество файлов имеет близкое со­держание, и в то же время позволяющие различать версии файлов.

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

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

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

  3. семантика неизменяемых файлов. суть этого подхода – сделать все файлы неизменяемыми. тогда файл нельзя открыть для записи, а можно выполнять только операции create (создать) и read (читать). тогда для изменения файла остается только возможность со­здать полностью новый файл и поместить его в каталог под новым именем.

  4. транзакционная семантика.

С каждым разделяемым файлом обычно связан список управления доступом (Access Control List, ACL), обеспечивающий защиту данных от несанкционированного доступа. Если же механизм защиты в локальной файловой системе отсутствует, то сетевой файловой систе­ме приходится поддерживать его самостоятельно, иногда — упрощенным спосо­бом, защищая разделяемый каталог и входящие в него файлы и подкаталоги как единое целое. В Windows NT/2000 существуют два механизма защиты — на уров­не разделяемых каталогов и на уровне локальных каталогов и файлов. Когда работают оба уровня защиты, у пользователей и администраторов могут иногда возникать некоторые логические сложности, связанные с определе­нием реальных прав доступа как комбинации нескольких правил.

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

  1. В модели загрузки-выгрузки пользователю предлагаются средства чте­ния или записи файла целиком. Эта модель предполагает следующую схему об­работки файла: чтение файла с сервера на машину клиента, обработка файла на машине клиента и запись обновленного файла на сервер. Типичным представителем этого вида файлового интерфейса является служба FTP. Преимуществом - концептуальная простота, передача файла целиком очень эффективна в отношении объема создаваемого трафика. Недостатком - высокие требования к объ­ему диска клиента, который должен вместить любой файл, хранящийся на серве­ре. Кроме того, неэффективно перемещать весь файл, если нужна его небольшая часть.

  2. Модель удаленного доступа. Предполагает поддержку большого количества операций над файлами: от­крытие и закрытие файлов, чтение и запись частей файла, позиционирование в файле, проверка и изменение атрибутов файла и т. д. Все файловые операции выполняются на серверах, а клиенты только генерируют запросы на их отработку. Преимущество – низкие требования к дисковому пространству на клиентских машинах, а также исключение необходимости передачи целого файла, когда нужна только его часть. Модель удаленного доступа часто используется в про­зрачных реализациях файлового интерфейса, когда удаленные файловые систе­мы монтируются в общее с локальной системой дерево. Модели удаленного доступа могут использовать различные наименьшие едини­цы перемещения части файла (байт, блок или запись).

Реализация сетевой файловой системы

Файловый сервер — это специализированный компонент сер­верной ОС, отсутствующий в клиентских компьютерах (ОС NetWare).

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

Файловый сервер и клиенты могут в некоторых случаях оформляться и как модули, работающие в пользовательском режиме, что харак­терно для ранних сетевых файловых систем сетей персональных компьютеров (например, IBM LAN Program). Используется в файловых серверах ОС, основанных на микроядерной архи­тектуре (например, ОС, построенных на основе микроядра Mach) и предназначены для выполнения самой ответственной работы.

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

Серверы stateful работают по схеме, обычной для любой локальной файловой службы. Поддерживает тот же набор вызовов, что и локальная система, то есть вызовы open, read, write, seek и close. Открывая файлы по вызову open, передан­ному по сети клиентом, сервер stateful должен запоминать, какие файлы от­крыл каждый пользователь в своей внутренней системной таблице, что показано на рисунке 1.7. При поступлении вызова read, write или seek сервер использует дескриптор файла для определения, какой файл нужен. Таблица, отображающая дескрипторы файлов на сами файлы, является хра­нилищем информации о состоянии клиентов.

Рисунок 1.7 – Сервер с сохранением состояния (stateful).

Для сервера stateless каждый запрос должен содержать исчерпывающую инфор­мацию (полное имя файла, смещение в файле и т. п.), необходимую серверу для выполнения требуемой операции. Эта информация увеличивает длину сообщения и время. Не поддерживают в протоколе обмена с клиентами таких операций, как открытие (open) и закрытие (close) файлов. Принципиально набор команд может состоять только из двух команд: read и write, представленные на рисунке 1.8.

Преимущества каждого из подходов:

  1. серверы stateless:

  • отказоустойчивы;

  • не нужны вызовы open/close;

  • меньше памяти сервера расходуется на таблицы;

  • нет ограничений на число открытых файлов;

  • отказ клиента не создает проблем для сервера;

  1. серверы stateful:

  • более короткие сообщения при запросах;

  • лучше производительность;

  • возможно опережающее чтение;

  • возможна блокировка файлов.

Рисунок 1.8 – Сервер без сохранения состояния (stateless).

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

Схемы кэширования, применяемые в сетевых файловых системах, отличаются решениями по трем ключевым вопросам:

  1. месту расположения кэша;

  2. способу распространения модификаций;

  3. проверке достоверности кэша.

Места для хранения кэшируемых файлов и их частей: память сервера, диск клиента (если имеется) и память клиента.

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

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

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

Репликация

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

Причины применения репликации:

  1. увеличение надежности за счет наличия независимых копий каждого файла, хранящихся на разных файловых серверах. При отказе одного из них файл остается доступным.

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

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

Существует два режима управления репликацией:

  1. явная репликация (explicit replication) – пользователю предоставляется возможность управления процессом репликации. Создается первая реплика с явным указание сервера, на котором размещается файл, а затем создается несколько реплик (для каждой сервер указывается явно). Явная репликация не исключает автоматического режима поддержания согласованности реплик.

  2. неявная репликация (implicit replication) – выбор количества и место размещения реплик производится в автоматическом режиме. Приложение не должно указывать место размещения файла при запросе на его создание. Файловая система самостоятельно выбирает сервер для помещения на него первой реплики после чего создается несколько реплик этого файла. Система автоматически удаляет ненужные реплики.

Согласование реплик

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

Способы обеспечения согласованности реплик:

  1. чтение любой – запись во все (Read-Any – Write-All). При необходимости записи в файл все реплики файла блокируются, затем выполняется запись в каждую копию, после чего блокировка снимается и файл становится доступным для чтения. Недостаток – запись не всегда можно осуществить, так как некоторые серверы, хранящие реплики файла, могут в момент записи быть неработоспособными.

  2. запись в доступные (Available-Copies). Запись выполняется только в те копии, серверы которых доступны на момент записи. Чтение осуществляется из любой реплики файла. Недостаток – возможность появления несогласованных копий файла из-за коммуникационных проблем в сети, когда невозможно выявить отказавший сервер.

  3. первичная реплика (Primary-Copy). Запись разрешается только в одну реплику файла, то есть в первичную реплику. Все остальные реплики файла называются вторичными, данные из которых можно только читать. Недостатки – низкая надежность – при отказе первичного сервера модификации файла невозможны.

  4. кворум (Quorum). Обобщает подходы, реализованные в предыдущих методах. Пусть в сети существует n реплик некоторого файла. Алгоритм основан на том, что при модификации файла изменения записываются в w реплик, а при чтении файла клиент обязательно производит обращение r репликам. Значе­ния w и r выбираются так, что w + r > n. При чтении клиент должен иметь возмож­ность сначала проверить версию каждой реплики, а затем выбрать старшую и читать данные уже из нее. Очевидно, что при модификации файла номер версии должен наращиваться, а если при записи в w реплик они имеют разные версии, то выбирается максимальное значение версии для наращивания и присваивания всем репликам.

При выполнении условия w + r > n среди любых выбранных произвольным обра­зом r реплик всегда найдется хотя бы одна из w реплик, в которую были записа­ны последние обновления. Так, если реплик восемь (n = 8), можно выбрать в ка­честве r значение 4, а в качестве w — значение 5, что и показано на рисунке 1.9. Условие w + r > n при этом удовлетворяется.

Рисунок 1.9 – Примеры работы метода кворума.

Предположим, что запись последних изменений была выполнена в реплики с но­мерами 3, 4, 5, 6, 8. Если при чтении выбраны реплики 1, 2, 3, 7, то реплика 3 ока­жется общей для операций записи и чтения, поэтому прочитаны будут коррект­ные данные. В другом примере, который тоже иллюстрирует рисунок, r выбрано равным 2, a w7. Результат также получен корректный.

У метода кворума имеются частные случаи. Так, если r - 1, a w = n, то получаем метод «чтение любой — запись во все».

Сетевая служба FTP

Сетевая служба на основе прокола FTP (File Transfer Protocol) представляет собой одну из наиболее важных ранних служб, используемых для доступа к удаленным файлам. Первые спецификации FTP относятся в 1971 году. Клиенты FTP встроены сегодня в программы просмотра (браузеры) Интернета. Протокол FTP позволяет целиком переместить файл с удаленного компьютера на локальный и наоборот, то есть работает по схеме загрузки-выгрузки. FTP поддерживает несколько команд просмотра удаленного каталога и перемещения по каталогам удаленной файловой системы.

Протокол FTP выполнен по схеме клиент-сервер.

Клиент FTP состоит из нескольких функциональных модулей:

  1. User Interface;

  2. User PI;

  3. User DTP.

FTP-сервер включает следующие модули:

  1. Server PI;

  2. Server DTP.

Протокол FTP использует для взаимодействия клиента с сервером несколько команд. Они делятся на три группы:

  1. команды управления доступом;

  2. команды управления потоком данных устанавливают параметры передачи данных;

  3. команды службы FTP инициируют действия по передаче файлов или просмотру удаленного каталога.

Пользовательский интерфейс клиента FTP зависит от его программной реализации.

Службы каталогов

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

Существует два наиболее популярных стандарта для служб каталогов:

  1. стандарт Х.500 организации ITU-T – определяет функции, организацию справочной службы и протокол доступа к ней, позволяет эффективно организовать хранение любой справочной информации и служит хорошей основой для организации службы каталогов в сети;

  2. стандарт LDAR созданный сообществом Интернета – определяет упрощенный протокол доступа к службе протоколов, стал стандартом де-факто в качестве протокола доступа клиентов к ресурсам справочной службы.

Служба каталогов NDS (Net Ware Directory Services) – это глобальная справочная служба, опирающаяся на распределенную объектно-ориентированную базу данных сетевых ресурсов. База данных NDS содержит информацию обо всех сетевых ресурсах. ОС Net Ware использует информацию NDS для обеспечения доступа к этим ресурсам.

Служба NDS – значительный шаг вперёд по сравнению с предыдущими версиями за счет:

  1. распределенности – информация не хранится на одном сервера, а разделена на части, то есть разделы (partitions). Net Ware хранит эти разделы на нескольких серверах сети.

Рисунок1.10 – Разделы базы данных NDS.

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

  1. реплицируемости – можно создавать неограниченное количество реплик каждого раздела и хранить их на разных серверах. Если один сервер останавливается, то копии этой информации могут быть получены с другого сервера. За счет этого увеличивается отказоустойчивость системы;

  2. прозрачности – NDS автоматически создает связи между программными и аппаратными компонентами, которые обеспечивают пользователю доступ к сетевым ресурсам, при этом не требует от пользователя физического расположения эти ресурсов;

  3. глобальности – после входа пользователь получает доступ ко всем ресурсам сети. Информация, предоставляемая во время логического входа, используется при идентификации пользователя. Позже при попытке пользователя получить доступ к ресурсам фоновый процесс идентификации проверяет, имеет ли пользователь право на данный ресурс.

В NDS информация о сетевых ресурсах организованна с помощью объектов, каждый из которых представляет собой ресурс (том, принтер, пользователь, сервер).

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

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

NDS использует для хранения информации логическую структуру – дерево каталогов (Directory Tree, DT), которое имеет корневой элемент (root) и ветви.

Рисунок 1.11 – Типичная структура дерева каталога NDS.

Дерево каталогов содержит объекты двух типов:

  1. объекты – контейнеры. Содержат или включают в другие объекты. NDS содержит объекты-контейнеры трех типов:

  • Страна (Country) – необязательный объект, используется в сетях, охватывающих несколько стран;

  • Организация (Organization) – если используются объекты-страны, то располагается уровнем ниже;

  • отдел или подразделение организации (Organization Unit) - располагается уровнем ниже чем объекты-организации, помогает в дальнейшем упорядочивании остальных объектов;

  1. объекты – литья. Не содержат других объектов, используются для представления конечных сетевых ресурсов. Имеет краткое имя – Common Name (CN). В NDS определены такие типы объектов-листьев:

  • Организатор – идентифицирует руководящих лиц фирмы;

  • Сервер;

  • Сервер печати;

  • Очередь печати;

  • Карта каталогов на томе;

  • Псевдоним – идентифицирует оригинальное местоположение объекта в дереве.

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

Служба NDS определяет права доступа одних сетевых объектов к другим. Различают права доступа к объекту в целом и права доступа к его атрибутам.

Межсетевое взаимодействие

Средства взаимодействия компьютеров в сети организованны виде многоуровневой структуры – стеков протоколов. В одной сети компьютеры используют один и тот же стек. Но возникает проблема – организовать взаимодействие компьютеров, на которых поддерживаются отличающиеся стеки коммуникационных протоколов. Например, эта проблема возникает в сети, в которой имеется только одна сетевая ОС; в сети, построенной исключительно на основе технологии Ethernet, но в которой установлено несколько разных сетевых ОС.

Существует две задачи устранения неоднородности:

  1. Internetworking (образование интерсетей) - объединение транспортных подсистем, отвечающих только за передачу сообщений и использование единого сетевого протокола такого, как IP или IPX;

  2. Interoperability (согласование сетевых служб ОС), возникает при объединение сетей, использующих разные протоколы более высоких уровней – прикладного и представительного.

Самыми общими подходами к согласованию протоколов являются:

  1. трансляция;

  2. мультиплексирование;

  3. инкапсуляция (туннелирование).

Трансляция обеспечивает согласование стеков протоколов путем преобразования сообщений, поступающих от одной сети в формат сообщений другой сети. Транслирующий элемент размещается между взаимодействующими сетями и служит посредником в их «диалоге».

Трансляция протоколов прикладного уровня включает отображение инструкций одного протокола в инструкцию другого – это очень сложная логическая неоднозначная интеллектуальная процедура.

Рассмотрим принцип функционирования шлюза, представленный на рисунке 1.12.

Рисунок 1.12 – Принципы функционирования шлюза.

Компьютер 2, который согласовывает протоколы клиентского компьютера 1 в сети А с протоколами компьютера 3 в сети В. Допустим, что стеки проколов в сетях А и В отличаются на вех уровнях. В шлюзе установлены оба стека протоколов.

Запрос от прикладного процесса клиентского компьютера в сети А поступает на прикладной уровень его стека протоколов. В соответствии с этим протоколом на прикладном уровне формируется пакет, в котором передается запрос на выполнение услуг некоторому серверу сети.

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

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

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

Недостатки – шлюз снижет надежность сети; при обработке запросов в шлюзе возможны относительно большие временные задержки. Это делает шлюз плохо масштабируемым.

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

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

Мультиплексор протоколов (менеджер протоколов) – программный элемент, позволяющий правильно обрабатывать и направлять запрос от прикладного процесса через соответствующий стек. Менеджер должен уметь определять, к какой сети направляется запрос клиента.

Мультиплексирование протоколов реализует отношение «один ко многим».

При использовании стеков протоколов существует два вариант размещения дополнительного стека протоколов:

  1. дополнительный стек устанавливается на сервере – сервер доступен для всех клиентов с этим стеком. При этом надо тщательно оценивать влияние установки дополнительного продукта на производительность сервера;

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

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

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

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

Рисунок 1.13 – Направление согласования служб.

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

Таблица 1

Метод

Достоинства

Недостатки

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

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

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

Трансляция протоколов (шлюзы, маршрутизаторы, коммутаторы)

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

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

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

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

  1. протокол-«пассажир» - протокол объединяемых сетей – это все протоколы локальных сетей;

  2. несущий протокол – протокол транзитной сети – протокол ip;

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

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

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]