
- •1) Сетевая операционная система — операционная система со встроенными возможностями для работы в компьютерных сетях. К таким возможностям можно отнести:
- •3) В сетевой операционной системе отдельной машины можно выделить несколько частей (рисунок 1.1):
- •Ос NetWare фирмы Novell
- •Основные функции драйвера spx делятся на 5 групп:
- •Внутренняя архитектура
1) Сетевая операционная система — операционная система со встроенными возможностями для работы в компьютерных сетях. К таким возможностям можно отнести:
-
поддержку сетевого оборудования
-
поддержку сетевых протоколов
-
поддержку протоколов маршрутизации
-
поддержку фильтрации сетевого трафика
-
поддержку доступа к удалённым ресурсам, таким как принтеры, диски и т. п. по сети
-
поддержку сетевых протоколов авторизации
-
наличие в системе сетевых служб позволяющих удалённым пользователям использовать ресурсы компьютера
Основное назначение
Главными задачами являются разделение ресурсов сети (например, дисковые пространства) и администрирование сети. С помощью сетевых функций системный администратор определяет разделяемые ресурсы, задаёт пароли, определяет права доступа для каждого пользователя или группы пользователей. Отсюда деление:
-
сетевые ОС для серверов;
-
сетевые ОС для пользователей.
Существуют специальные сетевые ОС, которым приданы функции обычных систем (Пр.: Windows NT) и обычные ОС (Пр.: Windows XP), которым приданы сетевые функции. Сегодня практически все современные ОС имеют встроенные сетевые функции.
3) В сетевой операционной системе отдельной машины можно выделить несколько частей (рисунок 1.1):
Средства управления локальными ресурсами компьютера: функции распределения оперативной памяти между процессами, планирования и диспетчеризации процессов, управления процессорами в мультипроцессорных машинах, управления периферийными устройствами и другие функции управления ресурсами локальных ОС.
Средства предоставления собственных ресурсов и услуг в общее пользование - серверная часть ОС (сервер). Эти средства обеспечивают, например, блокировку файлов и записей, что необходимо для их совместного использования; ведение справочников имен сетевых ресурсов; обработку запросов удаленного доступа к собственной файловой системе и базе данных; управление очередями запросов удаленных пользователей к своим периферийным устройствам.
Средства запроса доступа к удаленным ресурсам и услугам и их использования - клиентская часть ОС (редиректор). Эта часть выполняет распознавание и перенаправление в сеть запросов к удаленным ресурсам от приложений и пользователей, при этом запрос поступает от приложения в локальной форме, а передается в сеть в другой форме, соответствующей требованиям сервера. Клиентская часть также осуществляет прием ответов от серверов и преобразование их в локальный формат, так что для приложения выполнение локальных и удаленных запросов неразличимо.
Коммуникационные средства ОС, с помощью которых происходит обмен сообщениями в сети. Эта часть обеспечивает адресацию и буферизацию сообщений, выбор маршрута передачи сообщения по сети, надежность передачи и т.п., то есть является средством транспортировки сообщений.
В зависимости от функций, возлагаемых на конкретный компьютер, в его операционной системе может отсутствовать либо клиентская, либо серверная части.
4) Редиректор (англ. redirector, перенаправляющий) — модуль в прокси-серверах, отвечающий за фильтрацию и обработку адресов (URL) запросов от клиентов к серверам. Может быть как встроенным в прокси-сервер, так и запускающийся отдельным приложением (скриптом).
-
Задачи, решаемые с помощью редиректора:
-
Закрытие доступа к определённым адресам по сложным критериям.
-
Замена одного содержимого на другое (например, баннеров на пустые изображения)
-
Выдача сообщения о точной причине запрета доступа к странице
-
Выдача предупреждения о возможной фишинг-атаке (при наличии фишинг-фильтра)
-
Анализ статистики обращения к определённым ресурсам (как разрешённым, так и запрещённым)
Часть задач редиректора может быть решена с помощью списков контроля доступа прокси сервера, однако использование редиректора позволяет упростить конфигурирование в случае сложной схемы разрешений и запретов (разные наборы сайтов для разных групп пользователей).
8 - 9) NetWare — сетевая операционная система и набор сетевых протоколов, которые используются в этой системе для взаимодействия с компьютерами-клиентами, подключёнными к сети. Операционная система NetWare создана компанией Novell. NetWare является закрытой операционной системой, использующей кооперативную многозадачность для выполнения различных служб на компьютерах с архитектурой Intel x86. В основе сетевых протоколов системы лежит стек протоколов Xerox Network Systems (англ.) (XNS). В настоящее время NetWare поддерживает протоколы TCP/IP и IPX/SPX. NetWare является одним из семейств XNS-систем. К таким системам, например, относятся Banyan VINES и Ungerman-Bass Net/One. В отличие от этих продуктов и XNS, система NetWare заняла существенную долю рынка в начале 1990-х и выдержала конкуренцию с Microsoft Windows NT, после выпуска которой прекратили своё существование другие, конкурирующие с ней, системы.
В основу NetWare была положена очень простая идея: один или несколько выделенных серверов подключаются к сети и предоставляют для совместного использования своё дисковое пространство в виде «томов». На компьютерах-клиентах с операционной системой MS-DOS запускается несколько специальных резидентных программ, которые позволяют «назначать» буквы дисков на тома. Пользователям необходимо зарегистрироваться в сети, чтобы получить доступ к томам и иметь возможность назначать буквы дисков. Доступ к сетевым ресурсам определяется именем регистрации.
Пользователи могут также подключаться к совместно используемым принтерам на выделенном сервере и выполнять печать на сетевых принтерах так же, как и на локальных.
Несмотря на то, что в ранних версиях NetWare все модули системы считались ненадёжными (любой неправильно работающий модуль мог нарушить работу всей системы), она была очень стабильной системой. Нередки случаи, когда серверы NetWare работают без вмешательства человека годами.
Open Enterprise Server
В основе идеологии Open Enterprise Server лежит по-своему трезвая мысль: чем портировать приложения мира *nix под NetWare (а большинство вендоров согласилось принять участие в этом проекте только под финансовым давлением Novell) гораздо проще портировать саму NetWare под *nix!
Производительность
Система NetWare доминировала на рынке сетевых операционных систем с середины 80-х годов до конца 90-х благодаря чрезвычайно высокой производительности по сравнению с другими сетевыми операционными системами. Большинство сравнительных тестов в то время указывали на преимущество в производительности в соотношении от 5:1 до 10:1 по сравнению с продуктами Microsoft, Banyan и других компаний. Результаты одного сравнительного теста были особенно интересны: система NetWare 3.x со службами NFS, работающими по протоколам TCP/IP (не по разработанному для NetWare протоколу IPX), сравнивалась с дорогостоящим выделенным сервером Auspex NFS и с сервером SCO Unix с запущенными службами NFS. Производительность NetWare NFS превысила производительность обоих систем NFS, являющихся частью соответствующих операционных систем, и превысила в два раза производительность SCO Unix NFS на одинаковом оборудовании.
Было несколько причин такой производительности NetWare.
Службы файлов вместо дисковых служб
Во времена разработки первой версии NetWare почти все хранилища данных в локальных сетях работали на основе модели дискового сервера. Это означало, что клиент-компьютер для чтения блока файла должен был выполнить следующие запросы по сравнительно медленной локальной сети.
Прочитать первый блок каталога.
Продолжить чтение следующих блоков каталогов до тех пор, пока не будет найден блок каталога, содержащий данные искомого файла (таких блоков каталогов могло оказаться много).
Читать блоки записей файлов до тех пор, пока не будет найден блок с данными искомого файла (таких блоков могло оказаться много).
Читать искомый блок данных.
В системе NetWare, построенной на основе модели служб файлов, взаимодействие с клиентом происходило на уровне API файлового интерфейса.
Отправить запрос на открытие файла (если этот файл ещё не был открыт).
Отправить запрос на искомые данные в этом файле.
Все операции по поиску каталога для определения места, где физически расположены на диске искомые данные, выполнялись с высокой скоростью локально на сервере.
К середине 1980-х годов большинство сетевых операционных систем стали использовать модель служб файлов вместо модели дисковых служб. Сейчас происходит возврат к модели дисковых служб, например в SAN.
Эффективность протокола NCP
Большая часть сетевых протоколов, использовавшихся во времена разработки NetWare, не считали надёжной доставку сообщений сетью. Обычно операция чтения файла клиентом выполнялась следующим образом.
Клиент отправлял запрос на сервер.
Сервер подтверждал получение запроса.
Клиент подтверждал получение подтверждения.
Сервер отправлял запрошенные данные клиенту.
Клиент подтверждал получение данных.
Сервер подтверждал получение подтверждения.
В основе же протокола NCP лежала концепция надёжной доставки пакетов сетью в большинстве случаев. Поэтому ответ на запрос служил в большинстве случаев подтверждением. Пример запроса чтения клиента в данной модели.
Клиент отправлял запрос на сервер.
Сервер отправлял запрошенные данные клиенту.
Все запросы содержали последовательный номер, поэтому если клиент не получал ответа в течение указанного времени, он отправлял запрос повторно с тем же последовательным номером. Если сервер уже обрабатывал этот запрос, он отправлял кэшированный ответ повторно. Если у сервера не было времени на обработку запроса, он отправлял «положительное подтверждение», что означало «я получил запрос, но ещё не дошёл до его обработки, не беспокойте меня».
Результатом использования этой модели «надёжной сети» было уменьшение на две трети сетевого трафика и связанных с ним задержек.
Операционная система без вытесняющей многозадачности, разработанная для сетевых служб
В 90-х годах интенсивно сравнивалось выполнение операций сетевых файловых служб специальным программным обеспечением в обычной операционной системе с выполнением тех же операций специализированной операционной системой. NetWare была специализированной операционной системой, не операционной системой с поддержкой режима разделения времени. Она была полностью написана для обработки запросов типа «клиент-сервер». Изначально система была ориентирована на службы файлов и печати, но позже продемонстрировала отличные унаследованные возможности в качестве платформы баз данных, систем электронной почты, веб-сервисов и других служб. Она также эффективно работала в качестве маршрутизатора протоколов IPX, TCP/IP и AppleTalk, хотя никогда не претендовала на гибкость, присущую аппаратным маршрутизаторам.
В версии 4.x и более ранних версиях NetWare не поддерживалась вытесняющая многозадачность, режим разделения времени, виртуальная память, графический интерфейс пользователя и прочее. Процессы и службы, выполнявшиеся в NetWare, должны были работать правильно: обрабатывать запрос и возвращать управление операционной системе в отведённое время. В отличие от NetWare операционные системы общего назначения (UNIX, Microsoft Windows) основывались на интерактивной модели с поддержкой режима разделения времени, когда без контроля со стороны операционной системы программа могла бы занять все доступные ресурсы системы. В таких средах с вытесняющей многозадачностью и виртуализацией памяти возникала значительная дополнительная нагрузка, так как в таких системах никогда не хватает ресурсов для выполнения всех запросов всех приложений, конкурирующих за использование системной памяти и доступ к устройствам ввода-вывода. Такие системы улучшились со временем путём более тесной интеграции сетевых служб с ядром операционной системы «общего назначения», а в основном - за счет упрощения, если не сказать огрубления механизма выделения ресурсов конкурирующим приложениям, что опять же приближало их к системам кооперативной многозадачности; но так и не смогли достигнуть уровня эффективности NetWare. Раньше, когда прикладные процессы управляли собой, такое «доверие» часто приводило к аварийным остановам системы. Но зато и результат в случае "правильной" работы впечатлял. Пожалуй, инженеры Novell нашли в версиях 5.х и 6.х с гибридным ядром оптимальный баланс надежности - толерантности системы и её производительности. Обидно, что приложений, написанных для API именно этих версий очень мало.
Возможно, основной причиной успеха Novell в 80-х и 90-х годах была более эффективная работа NetWare по сравнению с операционными системами общего назначения. Однако по мере увеличения мощности микропроцессоров значение эффективности становилось всё меньше и меньше, а с появлением процессора Pentium сложность управления и разработки приложений для NetWare стали перевешивать её преимущества. Самоуверенность маркетингового подразделения и руководства Novell на фоне реальной угрозы конкурентов (NT4 и Microsoft Exchange) стало последней каплей в процессе, который, в конце концов, привёл к потере позиций системой NetWare.
Возможна и другая точка зрения. Novell перестала продвигать свой головной продукт, её менеджеры неадекватно воспринимали реальность. NetWare оставалась очень эффективной платформой для SQL серверов; после портирования на неё сервера Apache она имела серьёзные шансы состязания с платформой *nix. Следовательно, главной бедой Novell стало самоустранение из бизнеса на фоне былых маркетинговых ошибок.