Сетевое программное обеспечение
Сетевые службы и сервисы
Клиент— это модуль, предназначенный для формирования и передачи сообщений-запросов к ресурсам удаленного компьютера от разных приложений с последующим приемом результатов из сети и передачей Их соответствующим приложениям.
Сервер— это модуль, который постоянно ожидает прихода из сети запросов от клиентов, и приняв запрос, пытается его обслужить, как правило, с участием локальной ОС; один сервер может обслуживать запросы сразу нескольких клиентов (поочередно или одновременно).
Пара клиент—сервер, предоставляющая доступ к конкретному типу ресурса компьютера через сеть, образует сетевую службу.
Каждая служба связана с определенным типом сетевых ресурсов.
Среди сетевых служб можно выделить такие, которые ориентированы не на простого пользователя, как, например, файловая служба или служба печати, а на администратора. Такие службы направлены на организацию работы сети. Например, справочная служба, или служба каталогов, предназначена для ведения базы данных о пользователях сети, обо всех ее программных и аппаратных компонентах.
Услуги, предоставляемые службой, называются сервисом.
Служба может предоставлять сервис как одного типа, так и нескольких типов. Так, к числу услуг, оказываемых справочной службой, помимо учета ресурсов относятся сервисы аудита, аутентификации, авторизации и др.
Для поиска и просмотра информации в Интернете используется веб-служба, состоящая
из веб-сервера и клиентской программы, называемой веб-браузером (web browser). Разделяемым ресурсом в данном случае является веб-сайт — определенным образом организованный набор файлов, содержащих связанную в смысловом отношении информацию и хранящихся на внешнем накопителе веб-сервера.
Сетевая операционная система
Операционную систему компьютера часто определяют как взаимосвязанный набор системных программ, который обеспечивает эффективное управление ресурсами компьютера (памятью, процессором, внешними устройствами, файлами и др.), а также предоставляет пользователю удобный интерфейс для работы с аппаратурой компьютера и разработки приложений.
Говоря о сетевой ОС, мы, очевидно, должны расширить границы управляемых ресурсов
за пределы одного компьютера.
Сетевой операционной системой называют операционную систему компьютера, которая помимо управления локальными ресурсами предоставляет пользователям и приложениям возможность эффективного и удобного доступа к информационным и аппаратным ресурсам других компьютеров сети.
Сегодня практически все операционные системы являются сетевыми.
От того, насколько богатый набор сетевых служб и услуг предлагает операционная система конечным пользователям, приложениям и администраторам сети, зависит ее позиция в общем ряду сетевых ОС.
Помимо сетевых служб сетевая ОС должна включать программные коммуникационные {транспортные) средства, обеспечивающие совместно с аппаратными коммуникационными средствами передачу сообщений, которыми обмениваются клиентские и серверные части сетевых служб. Задачу коммуникации между компьютерами сети решают драйверы и протокольные модули. Они выполняют такие функции, как формирование сообщений, разбиение сообщения на части (пакеты, кадры), преобразование имен компьютеров в числовые адреса, дублирование сообщений в случае их потери, определение маршрута в сложной сети и т. д.
И сетевые службы, и транспортные средства могут являться неотъемлемыми (встроенными) компонентами ОС или существовать в виде отдельных программных продуктов.
Например, сетевая файловая служба обычно встраивается в ОС, а вот веб-браузер чаще
всего приобретаемся отдельно. Типичная сетевая ОС имеет в своем составе широкий набор драйверов и протокольных модулей, однако у пользователя, как правило, есть возможность дополнить этот стандартный набор необходимыми ему программами. Решение о способе реализации клиентов и серверов сетевой службы, а также драйверов и протокольных модулей принимается разработчиками с учетом самых разных соображений: технических, ком- мерческих и даже юридических. Так, например, именно на основании антимонопольного закона США компании Microsoft было запрещено включать ее браузер Internet Explorer в состав ОС этой компании.
Сетевая служба может быть представлена в ОС либо обеими (клиентской и серверной) частями, либо только одной из них.
В первом случае операционная система, называемая одноранговой, не только позволяет
обращаться к ресурсам других компьютеров, но и предоставляет собственные ресурсы
в распоряжение пользователей других компьютеров. Например, если на всех компьютерах
сети установлены и клиенты, и серверы файловой службы, то все пользователи сети могут
совместно применять файлы друг друга. Компьютеры, совмещающие функции клиента
и сервера, называют одноранговыми узлами.
Операционная система, которая преимущественно содержит клиентские части сетевых служб, называется клиентской. Клиентские ОС устанавливаются на компьютеры, обращающиеся с запросами к ресурсам других компьютеров сети. За такими компьютерами, также называемыми клиентскими, работают рядовые пользователи. Обычно клиентские компьютеры относятся к классу относительно простых устройств.
К другому типу операционных систем относится серверная ОС — она ориентирована на обработку запросов из сети к ресурсам своего компьютера и включает в себя в основном серверные части сетевых служб. Компьютер с установленной на нем серверной ОС, занимающийся исключительно обслуживанием запросов других компьютеров, называют выделенным сервером сети. За выделенным сервером, как правило, обычные пользователи не работают.
Сетевые приложения
Компьютер, подключенный к сети, может выполнять следующие типы приложений:
• Локальное приложение целиком выполняется на данном компьютере и использует
только локальные ресурсы (рис. 2.6, а). Для такого приложения не требуется никаких
сетевых средств, оно может быть выполнено на автономно работающем компьютере.
• Централизованное сетевое приложение целиком выполняется на данном компью-
тере, но обращается в процессе своего выполнения к ресурсам других компьютеров
сети. В примере на рисунке 2.6, б приложение, которое выполняется на клиентском
компьютере, обрабатывает данные из файла, хранящегося на файл-сервере, а затем
распечатывает результаты на принтере, подключенном к серверу печати. Очевидно,
что работа такого типа приложений невозможна без участия сетевых служб и средств
транспортировки сообщений.
• Распределенное (сетевое) приложение состоит из нескольких взаимодействующих
частей, каждая из которых выполняет какую-то определенную законченную работу по решению прикладной задачи, причем каждая часть может выполняться и, как правило, выполняется на отдельном компьютере сети (рис. 2.6, в). Части распределенного приложения взаимодействуют друг с другом, используя сетевые службы и транспортные средства ОС. Распределенное приложение в общем случае имеет доступ ко всем ресурсам компьютерной сети.
Очевидным преимуществом распределенных приложений является возможность распараллеливания вычислений, а также специализация компьютеров.