Лекция 21

Сетевые операционные системы

Общая характеристика сетевых ОС

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

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

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

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

В 90-е годы практически все ОС, занимающие заметное место на рынке, стали сетевыми. Сетевые функции сегодня встраиваются в ядро ОС, являясь ее неотъемлемой частью. ОС получили средства для работы со всеми основными технологиями локальных (Ethernet, Fast Ethernet, Gigabit Ethernet, Token Ring, FDDI) и глобальных (Х.25, Frame Relay, ISDN, ATM, xDSL) сетей, а также средства для создания составных сетей (IP, RIP, OSPF, NLSP).

Сетевые и распределенные ОС

В зависимости от того, какой виртуальный образ создает ОС для того, чтобы подменить им реальную аппаратуру компьютерной сети, различают сетевые ОС и распределенные ОС.

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

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

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

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

Распределенная ОС
предоставляет пользователю сетевые ресурсы в виде ресурсов единой централизованной виртуальной машины.

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

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

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

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

Функциональные компоненты сетевой ОС

На рис. 1 показаны основные функциональные компоненты сетевой ОС.

Рис. 1. Функциональные компоненты сетевой ОС

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

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

Клиентская часть ОС не может получить непосредственный доступ к ресурсам другого компьютера - в данном случае к дискам и файлам компьютера В. Она может только "попросить" об этом серверную часть ОС, работающую на том компьютере, которому принадлежат эти ресурсы. Эти "просьбы" выражаются в виде сообщений, передаваемых по сети. Сообщения могут содержать не только команды на выполнение некоторых действий, но и собственно данные, например, содержимое некоторого файла.

Управляют передачей сообщений между клиентской и серверными частями по коммуникационной системе сети транспортные средства ОС. Эти средства выполняют такие функции, как формирование сообщений, разбиение сообщения на части (пакеты, кадры), преобразование имен компьютеров в числовые адреса, организацию надежной доставки сообщений, определение маршрута в сложной сети и т.д.и т.п. Правила взаимодействия компьютеров при передаче сообщений по сети фиксируются в коммуникационных протоколах, таких как Ethernet, Token Ring, IP, IPX и пр. Чтобы два компьютера смогли обмениваться сообщениями по сети, транспортные средства их ОС должны поддерживать некоторый общий набор коммуникационных протоколов. Коммуникационные протоколы переносят сообщения клиентских и серверных частей ОС по сети, не вникая в их содержание.

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

Очень удобной и полезной функцией клиентской части ОС являет я способность отличить запрос к удаленному файлу от запроса к локальному файлу. Если клиентская часть ОС умеет это делать, то приложения не должны заботиться о том, с локальным или удаленным файлом они работают - клиентская программа сама распознает и перенаправляет (redirect) запрос к удаленной машине. Отсюда и название, часто используемое для клиентской части сетевой ОС - редиректор. Иногда функции распознавания выделяются в отдельный программный модуль, в этом случае редиректором называют не всю клиентскую часть, а только этот модуль.

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

Сетевые службы и сетевые сервисы

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

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

Говорят, что сетевая служба предоставляет пользователям сети некоторый набор услуг. Эти услуги иногда называют также сетевым сервисом (от англоязычного термина "service"). Необходимо отметить, что это термин в технической литературе переводится и как "сервис", и как "услуга", и как "служба". Хотя указанные термины иногда используются как синонимы, следует иметь в виду, что в некоторых случаях различие в значениях этих терминов носит принципиальный характер. Далее в тексте под "службой" мы будем понимать сетевой компонент, который реализует некоторый набор услуг, а под "сервисом" - описание того набора услуг, который предоставляется данной службой. Таким образом, сервис - это интерфейс между потребителем услуг и поставщиком услуг (службой).

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

Каждая служба связана с определенным типом сетевых ресурсов и/или определенным способом доступа к этим ресурсам. Например, служба печати обеспечивает доступ пользователей сети к разделяемым принтерам сети и предоставляет сервис печати, а почтовая служба предоставляет доступ к информационному ресурсу сети - электронным письмам. Способом доступа к ресурсам отличается, например, служба удаленного доступа - она предоставляет пользователям компьютерной сети доступ ко всем ее ресурсам через коммутируемые телефонные каналы. Для получения удаленного доступа к конкретному ресурсу, например, к принтеру, служба удаленного доступа взаимодействует со службой печати. Наиболее важными для пользователей сетевых ОС являются файловая служба и служба печати.

Среди сетевых служб можно выделить такие, которые ориентированы не на простого пользователя, а на администратора. Такие службы используются для организации работы сети. Например, служба Bindery операционной системы Novell NetWare 3.x позволяет администратору вести базу данных о сетевых пользователях компьютера, на котором работает эта ОС. Более прогрессивным является подход с созданием централизованной справочной службы, или, по-другому, службы каталогов, которая предназначена для ведения базы данных не только обо всех пользователях сети, но и обо всех ее программных и аппаратных компонентах. В качестве примеров службы каталогов часто приводятся NDS компании Novell и StreetTalk компании Banyan. Другими примерами сетевых служб, предоставляющих сервис администратору, являются служба мониторинга сети, позволяющая захватывать и анализировать сетевой трафик, служба безопасности, в функции которой может входить, в частности, выполнение процедуры логического входа с проверкой пароля, служба резервного копирования и архивирования.

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

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

Рис. 2. Клиент-серверная природа сетевых служб

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

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

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

Встроенные сетевые службы и сетевые оболочки

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

Рис. 3. Варианты построения сетевых ОС

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

Однако в дальнейшем разработчики сетевых ОС посчитали более эффективным подход, при котором сетевая ОС с самого начала работы над ней задумывается и проектируется специально для работы в сети. Сетевые функции у этих ОС глубоко встраиваются в основные модули системы, что обеспечивает ее логическую стройность, простоту в эксплуатации и модификации, а также высокую производительность. Важно, что при таком подходе отсутствует избыточность. Если все сетевые службы хорошо интегрированы, т.е. рассматриваются как неотъемлемые части ОС, то все внутренние механизмы такой операционной системы могут быть оптимизированы для выполнения сетевых функций. Например, ОС Windows NT компании Microsoft за счет встроенности сетевых средств обеспечивает более высокие показатели производительности и защищенности информации по сравнению с сетевой ОС LAN Manager той же компании, являющейся надстройкой над локальной операционной системой OS/2. Другими примерами сетевых ОС со встроенными сетевыми службами являются все современные версии UNIX, NetWare, OS/2 Warp.

Другой вариант реализации сетевых служб - объединение их в виде некоторого набора (оболочки), при этом все службы такого набора должны быть между собой согласованы, т.е. в своей работе они могут обращаться друг к другу, могут иметь в своем составе общие компоненты, например, общую подсистему аутентификации пользователей или единый пользовательский интерфейс. Для работы оболочки необходимо наличие некоторой локальной операционной системы, которая бы выполняла обычные функции, необходимые для управления аппаратурой компьютера, и в среде которой выполнялись бы сетевые службы, составляющие эту оболочку. Оболочка представляет собой самостоятельный программный продукт и, как всякий продукт, имеет название, номер версии и другие соответствующие характеристики. В качестве примеров сетевой оболочки можно указать, в частности, LAN Server и LAN Manager.

Одна и та же оболочка может предназначаться для работы над совершенно разными операционными системами. В таких случаях оболочка должна строиться с учетом специфики той операционной системы, над которой она будет работать. Так, LAN Server, например, существует в различных вариантах: для работы над операционными системами VAX VMS, VM, OS/400, OS/2.

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

Серверная сетевая оболочка, примерами которой могут служить те же LAN Server и LAN Manager, а также NetWare for UNIX, File and Print Services for NetWare, ориентирована на выполнение серверных функций. Серверная оболочка как минимум содержит серверные компоненты двух основных сетевых служб - файловой службы и службы печати. Именно такой набор серверных компонентов реализован в упомянутых выше продуктах NetWare for UNIX и File and Print Services for NetWare. Некоторые же оболочки содержат настолько широкий набор сетевых служб, что их называют сетевыми операционными системами. Так, ни один обзор сетевых ОС не будет достаточно полным, если в нем отсутствует информация о LAN Server, LAN Manager, ENS, являющихся сетевыми оболочками. Таким образом, термин "сетевая операционная система" приобретает еще одно значение - набор сетевых служб, способных согласованно работать в общей операционной среде.

С одним типом ресурсов могут быть связаны разные службы, отличающиеся протоколом взаимодействия клиентских и серверных частей. Так, например, встроенная файловая служба Windows NT реализует протокол SMB, используемый во всех ОС компании Microsoft, а дополнительная файловая служба, входящая в состав оболочки File and Print Services for NetWare для той же Windows NT, работает по протоколу NCP, "родному" для сетей NetWare. Кроме того, в стандартную поставку Windows NT входит сервер FTP, предоставляющий услуги файлового сервера для UNIX-систем. Ничто не мешает приобрести и установить для работы в среде Windows NT и другие файловые службы, такие, например, как NFS, кстати имеющей несколько реализаций, выполненных разными фирмами. Наличие нескольких видов файловых услуг позволяет работать в сети приложениям, разработанным для разных операционных систем.

Сетевые оболочки создаются как для локальных, так и для сетевых ОС. Действительно, почему бы не дополнить набор сетевых служб, встроенных в сетевую ОС, другими службами, составляющими некоторую сетевую оболочку. Например, сетевая оболочка ENS (Enterprise Network Services), содержащая базовый набор сетевых служб операционной системы Banyan VINES, может работать над сетевыми ОС UNIX и NetWare (конечно, для каждой из этих операционных систем требуется собственный вариант ENS).

Существует и третий способ реализации сетевой службы - в виде отдельного продукта. Например, сервер удаленного управления WinFrame - продукт компании Citrix - предназначен для работы в среде Windows NT. Он дополняет возможности встроенного в Windows NT сервера удаленного доступа Remote Access Server. Аналогичную службу удаленного доступа для NetWare также можно приобрести отдельно, купив программный продукт NetWare Connect.

С течением времени сетевая служба может получить разные формы реализации. Так, например, компания Novell планирует поставлять справочную службу NDS, первоначально встроенную в сетевую ОС NetWare, для других ОС. Для этого служба NDS будет переписана в виде отдельных продуктов, каждый из которых будет учитывать специфику соответствующей ОС. Уже имеются версии NDS для работы в средах SCO UNIX и HP-UX, Solaris 2.5 и Windows NT. А справочная служба StreetTalk уже давно существует и в виде встроенного модуля сетевой ОС Banyan VINES, и в составе оболочки ENS, и в виде отдельного продукта для различных операционных систем.

Одноранговые и серверные сетевые операционные системы

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

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

Каждая из этих схем обладает своими достоинствами и недостатками, определяющими их области применения.

ОС в одноранговых сетях

В одноранговых сетях (рис. 4) все компьютеры равны в возможностях доступа к ресурсам друг друга. Каждый пользователь может по своему желанию объявить какой-либо ресурс своего компьютера разделяемым, после чего другие пользователи могут его использовать. В одноранговых сетях на всех компьютерах устанавливается такая операционная система, которая предоставляет всем компьютерам в сети потенциально равные возможности. Сетевые операционные системы такого типа называются одноранговыми ОС. Очевидно, что одноранговые ОС должны включать как серверные, так и клиентские компоненты сетевых служб (на рисунке они обозначены буквами соответственно С и К). Примерами одноранговых ОС могут служить LANtastic, Personal Ware, Windows for Workgroups, Windows NT Workstation, Windows 95/98, Windows XP.

Рис. 4. Одноранговая сеть

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

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

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

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

ОС в сетях с выделенными серверами

В сетях с выделенными серверами (рис. 5) используются специальные варианты сетевых ОС, которые оптимизированы для работы в роли серверов и называются серверными ОС. Пользовательские компьютеры в этих сетях работают под управлением клиентских ОС.

Рис. 5. Сеть с выделенными серверами

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

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

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

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

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

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

Например, операционная система Windows NT выпускается в варианте для рабочей станции - Windows NT Workstation - и в варианте для выделенного сервера - Windows NT Server. Оба эти варианта операционной системы включают клиентские и серверные части многих сетевых служб.

Так, ОС Windows NT Workstation кроме выполнения функций сетевого клиента может предоставлять сетевым пользователям файловый сервис, сервис печати, сервис удаленного доступа и другие сервисы, а следовательно, может служить основой для одноранговой сети. С другой стороны, ОС Windows NT Server содержит все необходимые средства, которые позволяют использовать компьютер под ее управлением в качестве клиентской рабочей станции. Под управлением ОС Windows NT Server имеется возможность локально запускать прикладные программы, которые могут потребовать выполнения клиентских функций ОС при появлении запросов к ресурсам других компьютеров сети. Windows NT Serve имеет такой же развитый графический интерфейс, как и Windows NT Workstation, что позволяет с равным успехом использовать эти ОС для интерактивной работы пользователя или администратора.

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

В больших сетях наряду с отношениями клиент-сервер сохраняется необходимость и в одноранговых связях, поэтому такие сети чаще всего строятся по гибридной схеме (рис. 6).

Рис. 6. Гибридная сеть

 

 

 

 

 

 

Сайт управляется системой uCoz