Средства защиты объектов в NDS
Служба NDS определяет права доступа одних сетевых объектов к другим. Различаются права доступа к объекту в целом и права доступа к его атрибутам. По отношению к объектам существует следующий набор прав: § Browse — просмотр; § Add — добавление; § Delete — удаление; § Rename — переименование; § Supervi sor — обеспечивает все перечисленные выше права. По отношению к атрибутам объектов используются такие права: § Compare — сравнение значения атрибута; § Read — чтение значения атрибута; § Write — запись нового значения атрибута; § Sel f — присвоение себя в качестве значения атрибута другого объекта, например, если объект-группа разрешает право Sel f для объекта User, то последний может сделать себя членом этой группы; § Supervisor — все права по доступу к" атрибутам. С каждым объектом связан список управления доступом (ACL), в котором определяются права доступа к данному объекту со стороны других объектов. Права доступа наследуются в дереве объектов сверху вниз, поэтому права объекта-контейнера наследуются входящими в него объектами. Для достижения необходимой гибкости в наделении объекта правами используется маска наследования (Inheritance Mask), с помощью которой можно заблокировать некоторые наследуемые права. С помощью механизма наследования прав доступа главный администратор дерева, имеющий доступ ко всем его объектам, может назначить администратора поддерева, который получит права доступа ко всем объектам данного поддерева. Если поддерево соответствует какой-либо структурной единице предприятия (что и подразумевается), например отделу, то это будет администратор отдела, управляющий пользователями и ресурсами данного отдела. После подробного рассмотрения свойств дерева каталогов NDS можно уточнить понятия раздела (partition) и реплики (replica). Раздел представляет собой поддерево общего дерева сети. Для определения раздела необходимо выбрать объект-контейнер в общем дереве, который будет корневым объектом данного раздела. Создание раздела уменьшает объем хранимой на сервере информации базы данных NDS за счет исключения редко используемой информации и делает доступ к локальным объектам более быстрым, хотя объекты, находящиеся в других разделах, также доступны всем клиентам сети. Реплика — это точная копия определенного раздела, хранящаяся на различных серверах. Наличие нескольких реплик обеспечивает отказоустойчивость службы NDS, а также ускоряет доступ к информации при перенесении реплики с подключенного через глобальную сеть сервера на локальный сервер. Существуют три типа реплик: главная реплика (master replica), вторичная реплика (read/write replica) и реплика только для чтения (read-only replica). Главная реплика позволяет проводить над ней такие операции, как создание нового раздела, слияние разделов и удаление раздела. Вторичная реплика разрешает обновлять информацию об объектах, добавлять новые объекты, но не разрешает создавать новые разделы. Реплика только для чтения позволяет только читать информацию из ее базы и проводить операции поиска. В сети может существовать произвольное количество реплик. При изменении информации в какой-либо реплике автоматически запускается процесс обновления всех остальных реплик. Этот процесс называется процессом синхронизации службы каталогов.
Межсетевое взаимодействие Только небольшое количество сетей обладает однородностью (гомогенностью) программного и аппаратного обеспечения. Однородными чаще всего являются сети, которые состоят из небольшого количества компонентов от одного производителя. Нормой сегодняшнего дня являются неоднородные (гетерогенные) сети, состоящие из разнотипных рабочих станций, операционных систем и приложений, в которых для реализации взаимодействия между компьютерами используются различные концентраторы, коммутаторы и маршрутизаторы. Одной из причин неоднородности служит эволюционный характер развития любой большой сети. Сеть, как правило, не строится с нуля и не появляется в одно мгновение. Поскольку жизнь не стоит на месте, за время существования сети появляются привлекательные технологические новшества, и создатели сети вынуждены вносить в нее изменения, которые, возможно, потребуют решения задачи согласования новых технологий с уже имеющимися старыми. Неоднородность — это также естественное следствие того, что люди, ответственные за функционирования сети, стремятся выбрать программные и аппаратные средства, которые наилучшим образом отвечают поставленным целям. Часто оказывается, что средство, которое хорошо подходит для решения одной задачи, совсем необязательно также хорошо работает при решении другой задачи. Поэтому и появляются в сети коммуникационное оборудование разных технологий и разных производителей, сегменты Ethernet соседствуют с сегментами ATM, а серверы работают под управлением Windows 2000, Solaris или NetWare. Отсюда следует важное требование, предъявляемое к современных сетевым ОС, — способность к интеграции с другими ОС. Основные подходы к организации межсетевого взаимодействия На первый взгляд выражение «организация межсетевого взаимодействия» может показаться парадоксальным. Действительно, если сети взаимодействуют, значит, их компьютеры связаны между собой и, следовательно, они все вместе образуют сеть. Тогда что же понимается под сетями, взаимодействие которых надо организовать? Понимается ли под этим совокупность компьютеров, которые работают под управлением одной сетевой операционной системы, например Windows NT или NetWare? Или это те компьютеры, которые связаны между собой средствами одной и той же базовой сетевой технологии, такой как, например, Ethernet или Token Ring? И наконец, может быть, здесь имеются в виду сети в терминах протокола сетевого уровня, то есть части большой сети, разделенные между собой маршрутизаторами? Ни то, ни другое, ни третье. В контексте межсетевого взаимодействия под термином «сеть» понимается совокупность компьютеров, общающихся друг с другом с помощью единого стека протоколов. Средства взаимодействия компьютеров в сети организованы в виде многоуровневой структуры — стека протоколов. В однородной сети все компьютеры используют один и тот же стек. Проблема возникает тогда, когда требуется организовать взаимодействие компьютеров, принадлежащих разным сетям в указанном выше смысле, то есть организовать взаимодействие компьютеров, на которых поддерживаются отличающиеся стеки коммуникационных протоколов. Проблема межсетевого взаимодействия может иметь разные внешние проявления, но суть ее одна — несовпадение используемых коммуникационных протоколов. Например, эта проблема возникает в сети, в которой имеется только одна сетевая ОС, однако транспортная подсистема неоднородна из-за того, что сеть включает в себя фрагменты Ethernet, объединенные кольцом FDDI. Здесь в качестве взаимодействующих сетей выступают группы компьютеров, работающие по различным протоколам канального и физического уровня, например сеть Ethernet, сеть FDDI. Равным образом проблема межсетевого взаимодействия может возникнуть в сети, построенной исключительно на основе технологии Ethernet, но в которой установлено несколько разных сетевых ОС. В этом случае все компьютеры и все приложения используют для транспортировки сообщений один и тот же набор протоколов, но взаимодействие клиентских и серверных частей сетевых служб осуществляется по разным протоколам прикладного уровня. В этом случае компьютеры могут быть отнесены к разным сетям, если у них различаются протоколы прикладного уровня, например компьютеры, использующие для доступа к файлам протокол 8MB, образуют сеть Windows NT, а компьютеры, использующие для доступа к файлам протокол NCP, — сеть NetWare. Конечно, эти сети могут сосуществовать независимо, передавая данные через общие транспортные средства, но не предоставляя пользователям возможности совместно использовать ресурсы. Однако если потребуется обеспечить доступ к данным файлового сервера Windows NT для клиентов NetWare, администратор сети столкнется с необходимостью согласования сетевых служб. Задачи устранения неоднородности имеют некоторую специфику и даже разные названия в зависимости от того, к какому уровню модели OSI они относятся. Задача объединения транспортных подсистем, отвечающих только за передачу сообщений, обычно называется internetworking — образование интерсетей. Классическим подходом для ее решения является использование единого сетевого протокола, такого, например, как IP или IPX. Однако существуют ситуации, когда этот подход неприменим или нежелателен, и они будут рассмотрены ниже. Другая задача, называемая interoperability, возникает при объединении сетей, использующих разные протоколы более высоких уровней — в основном прикладного и представительного. Будем называть это задачей согласования сетевых служб операционных систем, так как протоколы прикладного и представительного уровней реализуются именно этими сетевыми компонентами. Кардинальным решением проблемы межсетевого взаимодействия могло бы стать повсеместное использование единого стека протоколов. И такая попытка введения единого стека коммуникационных протоколов была сделана в 1990 году правительством США, которое обнародовало программу GOSIP — Government OSI Profile, в соответствии с которой стек протоколов OSI предполагалось сделать общим для всех сетей, устанавливаемых в правительственных организациях США. Однако массового перехода на стек OSI не произошло. Тем временем в связи с быстрым ростом популярности Интернета стандартом де-факто становится стек протоколов TCP/IP. Но это пока не означает, что другие стеки протоколов полностью вытесняются протоколами TCP/IP. По-прежнему очень много сетевых узлов поддерживает протоколы IPX/SPX, DECnet, IBM SNA, NetBEUI, так что до единого стека протоколов еще далеко. Самыми общими подходами к согласованию протоколов являются: § трансляция; § мультиплексирование; § инкапсуляция (туннелирование). Трансляция Трансляция обеспечивает согласование стеков протоколов путем преобразования сообщений, поступающих от одной сети в формат сообщений другой сети. Транслирующий элемент, в качестве которого могут выступать, например, программный или аппаратный шлюз, мост, коммутатор или маршрутизатор, размещается между взаимодействующими сетями и служит посредником в их «диалоге». Термин «шлюз» обычно подразумевает средство, выполняющее трансляцию протоколов верхних уровней, хотя в традиционной терминологии Интернета шлюзом (gateway) называется маршрутизатор. В зависимости от типа транслируемых протоколов процедура трансляции может иметь разную степень сложности. Так, преобразование протокола Ethernet в протокол Token Ring сводится к нескольким несложным действиям, главным образом благодаря тому, что оба протокола ориентированы на единую адресацию узлов. А вот трансляция протоколов сетевого уровня IP и IPX представляет собой гораздо более сложный, интеллектуальный процесс, включающий не только преобразование форматов сообщений, но и отображение адресов сетей и узлов, различным образом трактуемых в этих протоколах. Трансляция протоколов прикладного уровня включает отображение инструкций одного протокола в инструкции другого, что представляет собой сложную логически неоднозначную интеллектуальную процедуру, которую можно сравнить с работой переводчика с одного языка на другой. Например, в файловой службе операционной системы NetWare (протокол NCP) определены следующие права доступа к файлу: read, write, erase, create, file scan, modify, access control, supervisory, а файловая служба UNIX (протокол NFS) оперирует совсем другим перечнем прав доступа: read, write, execute. Для некоторых из этих прав доступа существует прямое соответствие, для других же оно полностью отсутствует. Так, если клиент NCP назначает право доступа к файлу supervi sory или access control, то трансляция этих операций на язык протокола NFS не является очевидной. С другой стороны, в протоколе NCP отсутствует обычное для протокола NFS понятие монтирования файловой системы. На рис. 10.10 показан шлюз, размещенный на компьютере 2, который согласовывает протоколы клиентского компьютера 1 в сети А с протоколами компьютера 3 в сети В. Допустим, что стеки протоколов в сетях А и В отличаются на всех уровнях. В шлюзе установлены оба стека протоколов. Запрос от прикладного процесса клиентского компьютера сети А поступает на прикладной уровень его стека протоколов. В соответствии с этим протоколом на прикладном уровне формируется пакет (или несколько пакетов), в котором передается запрос на выполнение услуг некоторому серверу сети В. Пакет прикладного уровня перемещается вниз по стеку компьютера сети А, обрастая заголовками нижележащих протоколов, а затем передается по линиям связи в компьютер 2, то есть в шлюз. Рис. 10.10. Принципы функционирования шлюза На шлюзе обработка поступивших данных идет в обратном порядке, от протокола самого нижнего к протоколу самого верхнего уровня стека А. Затем пакет прикладного уровня стека сети А преобразуется (транслируется) в пакет прикладного уровня серверного стека сети В. Алгоритм преобразования пакетов зависит от конкретных протоколов и, как уже было сказано, может быть достаточно сложным. В качестве общей информации, позволяющей корректно провести трансляцию, может использоваться, например, информация о символьном имени сервера и символьном имени запрашиваемого ресурса сервера (в частности, это может быть имя каталога файловой системы). Преобразованный пакет от верхнего уровня стека сети В передается к нижним уровням в соответствии с правилами этого стека, а затем по физическим линиям связи в соответствии с протоколами физического и канального уровней сети В поступает в другую сеть к нужному серверу. Ответ сервера преобразуется шлюзом аналогично. Примером шлюза, транслирующего протоколы прикладного уровня, является компонент Windows NT Gateway Services for NetWare (GSNW), который обеспечивает клиентам Windows NT прозрачный доступ к томам и каталогам серверов NetWare 3.x и 4.x. Шлюз устанавливается на том же компьютере, на котором установлен сервер Windows NT. Между шлюзом и сервером NetWare устанавливается связь по протоколу NCP. Для доступа к файлам NetWare клиенты Windows NT, используя свой «родной» протокол 8MB, обращаются к серверу Windows NT, на котором работает шлюз GSNW. Шлюз виртуализирует разделяемые каталоги серверов NetWare: они выглядят для клиентов SMB точно так же, как и разделяемые каталоги сервера Windows NT (рис. 10.11). Если запрос, поступивший на сервер Windows NT, относится к ресурсам серверов NetWare, то он переадресуется шлюзу, который транслирует его в понятный для сервера NetWare вид и передает по протоколу NCP соответствующему серверу. При этом шлюз выступает по отношению к серверам NetWare как клиент-пользователь. Рис. 10.11. Шлюз Gateway Service for NetWare Таким образом, шлюз реализует взаимодействие «многие ко многим». Достоинство шлюзов состоит в том, что они сохраняют в неизменном виде программное обеспечение на клиентских компьютерах. Пользователи работают в привычной среде и могут даже не заметить, что они получают доступ к ресурсам другой сети. Однако, как и всякий централизованный ресурс, шлюз снижает надежность сети. Кроме того, при обработке запросов в шлюзе возможны относительно большие временные задержки, во-первых, из-за затрат времени на собственно процедуру трансляции, а во-вторых, из-за задержек запросов в очереди к разделяемому всеми клиентами шлюзу, особенно если запросы поступают с большой интенсивностью. Это делает шлюз плохо масштабируемым решением. Правда, ничто не мешает установить в сети несколько параллельно работающих шлюзов. Мультиплексирование стеков протоколов Другой подход к согласованию протоколов получил название мультиплексирования стеков протоколов. Он заключается в том, что в сетевое оборудование или в операционные системы серверов и рабочих станций встраиваются несколько стеков протоколов. Это позволяет клиентам и серверам выбирать для взаимодействия тот протокол, который является для них общим. Сравнивая мультиплексирование с уже рассмотренной выше трансляцией протоколов, можно заметить, что взаимодействие компьютеров, принадлежащих разным сетям, напоминает общение людей, говорящих на разных языках (рис. 10.12). Для достижения взаимопонимания они также могут использовать два подхода: пригласить переводчика (аналог транслирующего устройства) или перейти на язык собеседника, если они им владеют (аналог мультиплексирования стеков протоколов). Рис. 10.12. Два варианта согласования протоколов: трансляция протоколов (а), мультиплексирование стеков протоколов (б) При мультиплексировании стеков протоколов на один из двух взаимодействующих компьютеров с различными стеками протоколов помещается коммуникационный стек другого компьютера. На рис. 10.13 приведен пример взаимодействия клиентского компьютера сети В с сервером в своей сети и сервером сети А, работающей со стеком протоколов, полностью отличающимся от стека сети В. В клиентском компьютере реализованы оба стека. Для того чтобы запрос от прикладного процесса был правильно обработан и направлен через соответствующий стек, необходимо наличие специального программного элемента — мультиплексора протоколов, называемого также менеджером протоколов. Менеджер должен уметь определять, к какой сети направляется запрос клиента. Для этого может использоваться служба имен сети, в которой отмечается принадлежность того или иного ресурса определенной сети с соответствующим стеком протоколов. Рис. 10.13. Мультиплексирование стеков При использовании технологии мультиплексирования структура коммуникационных средств операционной системы может быть и более сложной. В общем случае на каждом уровне вместо одного протокола появляется целый набор протоколов и может существовать несколько мультиплексоров, выполняющих коммутацию между протоколами разных уровней. Например, рабочая станция, стек протоколов которой показан на рис. 10.14, может через один сетевой адаптер получить доступ к сетям, работающим по протоколам NetBIOS, IP, IPX. Данная рабочая станция может быть клиентом сразу нескольких файловых серверов: NetWare (NCP), Windows NT (SMB) и Sun (NFS). Предпосылкой для развития технологии мультиплексирования стеков протоколов стало появление строгих открытых описаний протоколов различных уровней и межуровневых интерфейсов, так что фирма-производитель при реализации «чужого» протокола может быть уверена, что ее продукт будет корректно взаимодействовать с продуктами других фирм по данному протоколу, этот протокол корректно впишется в стек и с ним будут нормально взаимодействовать протоколы соседних уровней. Рис. 10.14. Мультиплексирование протоколов Производителями операционных систем предпринимаются попытки стандартизации не только межуровневых интерфейсов, но и менеджеров протоколов. Наиболее известными стандартами являются менеджеры Network Driver Interface Specification — NDIS (первоначально — совместная разработка 3Com и Microsoft, версии NDIS 3.0 и 4.0 — реализации Microsoft), а также стандарт Open Data-Link Interface — ODI, представляющий совместную разработку компаний Novell и Apple. Эти менеджеры реализуют мультиплексирование протоколов канального уровня, реализованных в драйверах сетевых адаптеров. С помощью мультиплексора NDIS или ODI можно связать один драйвер сетевого адаптера с несколькими протоколами сетевого уровня, а также с несколькими однотипными сетевыми адаптерами. Мультиплексирование протоколов реализует отношение «один ко многим», то есть один клиент с дополнительным стеком может обращаться ко всем серверам, поддерживающим этот стек, или один сервер с дополнительным стеком может предоставлять услуги многим клиентам. При использовании мультиплексоров протоколов существуют два варианта размещения дополнительного стека протоколов — на одном или на другом взаимодействующем компьютере. Если дополнительный стек устанавливается на сервере, то этот сервер становится доступным для всех клиентов с этим стеком. При этом нужно тщательно оценивать влияние установки дополнительного продукта на производительность сервера. Аналогично дополнительный стек на клиенте дает ему возможность устанавливать связи с другими серверами, использующими этот стек протоколов. При размещении дополнительного стека на клиентах вопросы производительности не так важны. Здесь более важными являются ограничения таких ресурсов, как память и дисковое пространство клиентских машин, а также затраты труда администратора на установку и поддержание дополнительных стеков в работоспособном состоянии на большом числе компьютеров. Заметим, что при организации взаимодействия двух разнородных сетей в общем случае нужно решать две задачи согласования служб (рис. 10.15): § обеспечение доступа клиентам сети А к ресурсам сети В; § обеспечение доступа клиентам сети В к ресурсам сети А. Рис. 10.15. Направления согласования служб Эти задачи независимы, и их можно решать отдельно. В некоторых случаях требуется полное решение, например, чтобы пользователи UNIX-машин имели доступ к ресурсам серверов сети NetWare, а пользователи персональных машин имели доступ к ресурсам UNIX-хостов, в других же случаях достаточно обеспечить доступ клиентам из сети NetWare к ресурсам сети UNIX. Большинство имеющихся на рынке продуктов обеспечивает только однонаправленное согласование прикладных служб. Рассмотрим возможные варианты размещения программных средств, реализующих взаимодействие двух сетей, которые основаны на мультиплексировании протоколов. Введем обозначения: С — сервер, К — клиент, А — дополнительный протокол (или протоколы), предоставляющий возможности межсетевого взаимодействия. На рис. 10.16 показаны оба возможных варианта однонаправленного взаимодействия А—>В: путем добавления нового стека к клиентам сети А (рис. 10.16, а) либо путем присоединения «добавки» к серверам сети В (рис. 10.16, б). В первом случае, когда средства мультиплексирования протоколов располагаются на клиентских частях, только клиенты, снабженные такими средствами, могут обращаться к серверам сети В. При этом они могут обращаться к любому серверу сети В. Во втором случае, когда набор дополнительных стеков расположен на каком-либо сервере сети В, данный сервер может обслуживать всех клиентов сети А. Очевидно, что серверы сети В без средств мультиплексирования не могут быть использованы клиентами сети А. Примером «добавки», модифицирующей клиентскую часть, может служить популярное программное средство компании Microsoft Client Services for NetWare (CSNW), которое превращает клиента Windows NT в клиента серверов NetWare за счет установки клиентской части протокола NCP. Рис. 10.16. Варианты размещения средств межсетевого взаимодействия Примером расширения возможностей сетевого взаимодействия сервера является установка на сервер Windows NT продукта Microsoft File and Print Services for NetWare, который реализует серверную часть протокола NCP. Это позволяет клиентам NetWare обращаться к файлам и принтерам сервера Windows NT. При мультиплексировании протоколов дополнительное программное обеспечение — соответствующие стеки протоколов — должно быть установлено на каждый компьютер, которому может потребоваться доступ к нескольким различным сетям. В некоторых операционных системах имеются средства борьбы с избыточностью, свойственной этому подходу. Операционная система может быть сконфигурирована для работы с несколькими стеками протоколов, но динамически загружаются только нужные. С другой стороны, избыточность повышает надежность системы в целом, отказ компьютера с установленным дополнительным стеком не ведет к потере возможности межсетевого взаимодействия для других пользователей сети. Важным преимуществом мультиплексирования является меньшее время выполнения запроса, чем при использовании шлюза. Это связано, во-первых, с отсутствием временных затрат на процедуру трансляции, а во-вторых, с тем, что при мультиплексировании на каждый запрос требуется только одна сетевая передача, в то время как при трансляции — две: запрос сначала передается на шлюз, а затем из шлюза на ресурсный сервер. В принципе, при работе с несколькими стеками протоколов у пользователя может возникнуть проблема работы в незнакомой среде, с незнакомыми командами, правилами и методами адресации. Чаще всего разработчики операционных систем стремятся в какой-то степени облегчить жизнь пользователю в этой ситуации. Независимо от используемого протокола прикладного уровня (например, 8MB или NCP) ему предоставляется один и тот же интуитивно понятный графический интерфейс, с помощью которого он просматривает и выбирает нужные удаленные ресурсы. В табл. 10.1 приведены сравнительные характеристики двух подходов к реализации межсетевого взаимодействия. Таблица 10.1. Сравнение методов трансляции и мультиплексирования протоколов
Инкапсуляция протоколов Инкапсуляция (encapsulation), или туннелирование (tunneling), — это еще один метод решения задачи согласования сетей, который, однако, применим только для согласования транспортных протоколов и только при определенных ограничениях. Инкапсуляция может быть использована, когда две сети с одной транспортной технологией необходимо соединить через транзитную сеть с другой транспортной технологией. В процессе инкапсуляции принимают участие три типа протоколов: § протокол-«пассажир»; § несущий протокол; § протокол инкапсуляции. Транспортный протокол объединяемых сетей является протоколом-пассажиром, а протокол транзитной сети — несущим протоколом. Пакеты протокола-пассажира помещаются в поле данных пакетов несущего протокола с помощью протокола инкапсуляции. Пакеты протокола-пассажира никаким образом не обрабатываются при транспортировке их по транзитной сети. Инкапсуляцию выполняет пограничное устройство (обычно маршрутизатор или шлюз), которое располагается на границе между исходной и транзитной сетями. Извлечение пакетов-пассажиров из несущих пакетов выполняет второе пограничное устройство, которое находится на границе между транзитной сетью и сетью назначения. Пограничные устройства указывают в несущих пакетах свои адреса, а не адреса узлов назначения. В связи с большой популярностью Интернета и стека TCP/IP несущим протоколом транзитной сети все чаще выступает протокол IP, а в качестве протоколов-пассажиров — все остальные протоколы локальных сетей (как маршрутизируемые, так и не маршрутизируемые). В приведенном на рис. 10.17 примере две сети, использующие протокол IPX, нужно соединить через транзитную сеть TCP/IP. Необходимо обеспечить только взаимодействие узлов двух сетей IPX, а взаимодействие между узлами IPX и узлами сети TCP/IP не предусматривается. Поэтому для соединения сетей IPX можно применить метод инкапсуляции. Рис. 10.17. Туннелирование протоколов сетевого уровня В пограничных маршрутизаторах, соединяющих сети 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. § Существуют три основных способа согласования протоколов: трансляция, мультиплексирование и инкапсуляция (туннелирование). § Трансляция заключается в преобразовании сообщений, поступающих от одного протокола, в сообщения другого протокола. Трансляция бывает одноуровневая, когда для выполнения преобразования используется информация только данного протокола, и двухуровневая, когда для преобразования привлекается информация протокола верхнего уровня. § Мультиплексирование заключается в установке нескольких стеков протоколов на клиентах или серверах согласуемых сетей. § К достоинствам метода трансляции протоколов относятся: сохранение привычной среды пользователя, локализация функций согласования сетей в одном месте, не требуется установка дополнительного программного обеспечения на многих компьютерах. Недостатки — низкая скорость и ненадежность. Достоинствами метода мультиплексирования стеков протоколов являются высокая скорость и надежность, недостатками — избыточность и большой объем административных работ. § Инкапсуляция применяется для транзитной передачи одного транспортного протокола через сеть с другим стеком транспортных протоколов. § Способы согласования протоколов прикладного уровня — сетевых служб — имеют свою специфику, связанную с несимметричностью этих протоколов, реализуемых в архитектуре «клиент-сервер», а также наличием в каждой операционной системе большого количества разнообразных сетевых служб (файловой службы, службы печати, электронной почты, справочной службы и т. д.).
|