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


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

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



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

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

Сетевая операционная система — операционная система со встроенными возможностями для работы в компьютерных сетях. К таким возможностям можно отнести:

· поддержку сетевого оборудования

· поддержку сетевых протоколов

· поддержку протоколов маршрутизации

· поддержку фильтрации сетевого трафика

· поддержку доступа к удалённым ресурсам, таким как принтеры, диски и т. п. по сети

· поддержку сетевых протоколов авторизации

· наличие в системе сетевых служб, позволяющих удалённым пользователям использовать ресурсы компьютера

Примеры сетевых операционных систем:

· Novell NetWare

· Microsoft Windows (95, NT и более поздние)

· Различные UNIX системы, такие как Solaris, FreeBSD

· Различные GNU/Linux системы

· IOS

· ZyNOS компании ZyXEL

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

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

Основное назначение

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

- сетевые ОС для серверов;

- сетевые ОС для пользователей.

Существуют специальные сетевые ОС, которым приданы функции обычных систем (Пр.: Windows NT) и обычные ОС (Пр.: Windows XP), которым приданы сетевые функции. Сегодня практически все современные ОС имеют встроенные сетевые функции.

Распределенная ОС

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

Распределенная ОС автоматически распределяет процессы по различным компьютерам для обработки (терминальный сервер).

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

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

 

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

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

Сервис – интерфейс между потребителем услуг (пользователем или приложением) и поставщиком услуг (службой)

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

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

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

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

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

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

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

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

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

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

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

Мониторинг служб.

Network Monitor - стандартный сниффер от Microsoft. Версия Lite идет в стандартной поставке серверных ОС Microsoft. Эта версия умеет ловить только пакеты, направленные на локальный компьютер, с локального компьютера, широковещательные и пакеты групповой рассылки. Ограничены и другие возможности - например, нет возможности подключаться к драйверам Network Monitor на удаленных компьютерах, отключено обнаружение маршрутизаторов и т.п. Полная версия идет в поставке Systems Management Server от Microsoft (она есть на компакт-диске) и для ее установки нужен еще файл лицензионного соглашения в каталоге SMSSETUP. Интерфейс остался практически неизменным со времен Windows NT 3.51, и он - один из самых бедных и неудобных. Однако у Network Monitor есть большие преимущества:

o в нем реализован самый полный набор разборщиков (parsers) для прикладных протоколов Microsoft и имеется возможность добавлениях своих;

o Network Monitor - программа стандартная, и нет необходимости ни решать вопрос с лицензионными ограничениями, ни проверять эту программу на соответствие стандартам безопасности предприятия.

Мы будем в большинстве случаев использовать именно Network Monitor.

· Observer Suite фирмы Network Instruments - программа, которая признается многими администраторами наиболее удобной и мощной с точки зрения возможностей. Некоторые примечательные возможности:

o работа в самых разных сетях, в том числе беспроводных;

o исключительно удобные графические средства представления информации - распределение по рабочим станциям, по протоколам, по приложениям и т.п.;

o возможность прогнозирования развития ситуации в сети;

o возможность подключения к своим собственным удаленным модулям перехвата трафика и стандартным модулям RMAN;

o получение информации о сетевых устройствах по протоколу SNMP;

o возможность конструирования и отсылки пакетов, написанных вручную;

o возможность использования русского интерфейса (правда, только при установке) и т.п.

 

Двухзвенные системы

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

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

1.С централизованной обработкой данных.

2.Схема файл – сервер.

3.Схема клиент – сервер.

 

Клиент сервер

Логика приложений и обращений к бд
Операции БД
Файловые операции
Эмуляция терминала сервера

 


Достоинства схемы:

- ресурсы клиентского ПК используются в незначительной степени, загружаются только графические средства ввода – вывода;

- простота организации работы.

Недостатки схемы:

- недостаточная масштабируемость;

- отсутствие отказоустойчивости.

Файловые операции
Операции БД
Логика приложений и обращений к бд
Эмуляция терминала сервера
Схема файл – сервер:

К1 К2

 

 

Клиент сервер

Достоинства:

- хорошая масштабируемость.

Недостатки:

- возрастает нагрузка;

- клиентский компьютера должен обладать высокой вычислительной мощностью.

Файловые операции
Операции БД
Эмуляция терминала сервера
g 2nvdxB70TKppj5SVPskYlJsq4A/1IdYpiyIHWWvTHFFYMFNX4xTipjfwi5IRO7qi7ueOgaBEfdRY nGVWFGEEolHM3+VowKWnvvQwzRGqop6Sabvx09jsLMiux5eyKIc2N1jQVkaxn1md+GPXxhqcJiyM xaUdo57/A+tHAAAA//8DAFBLAwQUAAYACAAAACEAzTuyl94AAAAKAQAADwAAAGRycy9kb3ducmV2 LnhtbEyPQU+DQBSE7yb+h80z8WZ3hdgWytIYTU08tvTi7QGvgLK7hF1a9Nf7PNXjZCYz32Tb2fTi TKPvnNXwuFAgyFau7myj4VjsHtYgfEBbY+8safgmD9v89ibDtHYXu6fzITSCS6xPUUMbwpBK6auW DPqFG8iyd3KjwcBybGQ94oXLTS8jpZbSYGd5ocWBXlqqvg6T0VB20RF/9sWbMskuDu9z8Tl9vGp9 fzc/b0AEmsM1DH/4jA45M5VusrUXPeun9ZKjGuIVf+JAlCQxiJIdtYpB5pn8fyH/BQAA//8DAFBL AQItABQABgAIAAAAIQC2gziS/gAAAOEBAAATAAAAAAAAAAAAAAAAAAAAAABbQ29udGVudF9UeXBl c10ueG1sUEsBAi0AFAAGAAgAAAAhADj9If/WAAAAlAEAAAsAAAAAAAAAAAAAAAAALwEAAF9yZWxz Ly5yZWxzUEsBAi0AFAAGAAgAAAAhALjARXgqAgAATwQAAA4AAAAAAAAAAAAAAAAALgIAAGRycy9l Mm9Eb2MueG1sUEsBAi0AFAAGAAgAAAAhAM07spfeAAAACgEAAA8AAAAAAAAAAAAAAAAAhAQAAGRy cy9kb3ducmV2LnhtbFBLBQYAAAAABAAEAPMAAACPBQAAAAA= ">
Логика приложений и обращений к бд
Схема «Клиент – сервер»

 

 

 

 


Клиент сервер

Достоинства:

- равномерно распределяет функции между клиентской и серврной частями системы;

- клиентский компьютер выполняет функции, специфические для данного приложения;

- сервер функции, реализация которых не зависит от специфики приложений.

Типы сетевых ОС

Двухзвенные схемы

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

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

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

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

В схеме «файловый сервер» (рис. 9.1, б) на клиентской машине выполняются все части приложения, кроме файловых операций. В сети имеется достаточно мощ­ный компьютер, имеющий дисковую подсистему большого объема, который хра­нит файлы, доступ к которым необходим большому числу пользователей. Этот компьютер играет роль файлового сервера, представляя собой централизованное хранилище данных, находящихся в разделяемом доступе. Распределенное при­ложение в этой схеме мало отличается от полностью локального приложения. Единственным отличием является обращение к удаленным файлам вместо ло­кальных. Для того чтобы в этой схеме можно было использовать локальные при­ложения, в сетевые операционные системы ввели такой компонент сетевой фай­ловой службы, как редиректор, который перехватывает обращения к удаленным файлам (с помощью специальной нотации для сетевых имен, такой, например, как //server 1/doc/filet.txt) и направляет запросы в сеть, освобождая приложение от необходимости явно задействовать сетевые системные вызовы.

Файловый сервер представляет собой компонент наиболее популярной сетевой службы — сетевой файловой системы, которая лежит в основе многих распре­деленных приложений и некоторых других сетевых служб. Первые сетевые ОС (NetWare компании Novell, IBM PC LAN Program, Microsoft MS-Net) обычно поддерживали две сетевые службы — файловую службу и службу печати, остав­ляя реализацию остальных функций разработчикам распределенных приложе­ний.

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

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

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

Другие варианты двухзвенной модели более равномерно распределяют функции между клиентской и серверной частями системы. Наиболее часто использует­ся схема, в которой на серверный компьютер возлагаются функции проведения внутренних операций базы данных и файловых операций (ряс. 9.1, Клиент­ский компьютер при этом выполняет вое функции, специфические для данного приложения, а сервер — функции, реализация которых не зависит от специфи­ки приложения, из-за чего эта функции могут быть оформлены в вида сетевых служб. Поскольку функции управления базами данных нужны далеко не всем приложениям, то в отличие от файловой системы они чаще всего не реализуются в виде службы сетевой ОС, а являются независимой распределенной приклад­ной системой. Система управления базами данных (СУБД) является одним из наиболее часто применяемых в сетях распределенных приложений. Не все СУБД являются распределенными, но практически все мощные СУБД* позволяющие поддерживать большое число сетевых пользователей, построены в соответствие с описанной моделью клиент-сервер. Сам термин «клиент-сервер» справедлив для любой двухзвенной схемы распределения функций, но исторически он ока­зался наиболее тесно связанным со схемой, в которой сервер выполняет функ­ции по управлению базами данных (и, конечно, файлами, в которых хранятся эти базы) и часто используется как синоним этой схемы.

Трехзвенные схемы

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

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

Сервер баз данных, как и в двухзвенной модели, выполняет функции двух по­следних слоев — операции внутри базы данных и файловые операции. Приме­ром такой схемы может служить неоднородная архитектура, включающая кли­ентские компьютеры под управлением Windows 95/98, сервер приложений с монитором транзакций TUXEDO в среде Solaris на компьютере компании Sua Microsystems и сервер баз данных Oracle в среде Windows 2000 на компьютере компании Compaq.

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

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

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

В крупных сетях для связи клиентских и серверных частей приложений также используется и ряд других средств, относящихся к классу middleware, в том числе:

□ средства асинхронной обработки сообщений (message-oriented middleware, MOM); -

□ средства удаленного вызова процедур (Remote Procedure Call, КРС);

□ брокеры запроса объектов (Object Request Broker, ORB), которые находят объекты, хранящиеся на различных компьютерах, н помогают их использо­вать в одном приложении или документе

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

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

 

Схема «файл-сервер»

В архитектуре «файл-сервер» (File Server, FS-модель) все основные функции приложения информационной системы (презентационная логика, бизнес-логика и функции обработки и управления данными) располагаются на клиенте (рис. 13).

На сервере находятся файлы с данными и поддерживается доступ к файлам.

В этой модели клиент обращается к серверу на уровне файловых команд, система управления файлами (СУФ) считывает запрашиваемые данные из БД и поблочно передает эти данные клиентскому приложению. Фактически, FS-модель предполагает автономную работу программного обеспечения ИС на разных машинах в сети. Компоненты ИС взаимодействуют только за счет наличия общего хранилища данных. Безусловно, таким хранилищем должна быть хорошо спроектированная БД под управлением СУБД, поддерживающей FS-модель, например, СУБД Informix SE. Такого рода СУБД нельзя считать «истинным сервером».

При использовании FS-модели копия СУБД создается для каждого инициированного пользователем сеанса работы с СУБД, которая выполняется на том же процессоре, что и пользовательский процесс.

В целом в архитектуре ИС «файл-сервер» мы имеем «толстого» клиента и очень «тонкий» сервер в том смысле, что почти вся работа выполняется на стороне клиента, а от сервера требуется только достаточная емкость дисковой памяти.

К недостаткам архитектуры «файл-сервер» можно отнести:

 высокий сетевой трафик, который связан с передачей по сети множества блоков и файлов, необходимых приложениям клиентов;

 ограниченное множество команд манипулирования данными, фактически это только файловые команды;

 отсутствие развитых средств защиты данных (только на уровне файловой системы).

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

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

 

Архитектура «файл-сервер»

Появились локальные сети. Файлы начали передаваться по сети.

Сначала были одноранговые сети - все компьютеры равноправны.

Потом возникла идея хранения всех общедоступных файлов на выделенном

компьютере в сети - файл-сервере.

Архитектура «файл-сервер»

Основные особенности:

ѓЮ Функция хранения данных вынесена на выделенный компьютер - файл-сервер

ѓЮ Поддержка многопользовательской работы

Плюсы:

ѓЮ Многопользовательский режим работы с данными

ѓЮ Удобство централизованного управления доступом

Минусы:

ѓЮ Проблемы многопользовательской работы с данными:

последовательный доступ, отсутствие гарантии целостности

 

Схема «клиент-сервер»

Компоненты

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

Например, в пакете Microsoft Excel for Windows 95 используется встроенный ODBC-интерфейс для связи с подавляющим большинством серверов баз данных и "перекачки" данных в ожидающую электронную таблицу дл локальной обработки пользователем.

Генераторы отчетов также обладают средствами установления связи с серверами баз данных, что позволяет пользователям создавать специальные отчеты и диаграммы, а также запускать стандартные отчеты дл программ, такие как сводки по накладным и продажам. Дл лиц, ответственных за принятие решений, клиент-сервер означает простой доступ к корпоративной информации с помощью арсенала новых средств систем, содействующих принятию решений (decision support system - DSS), многие из которых концентрируются вокруг нового типа DSS-технологий, называемого оперативным анализом (online analytical processing - OLAP).

На рынке теперь доминируют средства разработки ПО конечного пользователя, такие как Delphi, PowerBuilder и Visual Basic, помогающие созданию соответствующих программ для архитектуры клиент-сервер. Все эти средства обладают способностями RAD, что позволяет разработчикам составлять прикладные программы из заготовленных компонентов.

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

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

Существует много разновидностей промежуточного обеспечения. Это не просто один из видов программных продуктов. К нему относятся следующие виды промежуточного обеспечения: созданное специально дл СУБД; использующее исключительно сообщения; использующее брокеров объектных запросов; выполняющее обработку транзакций.

Переходим к звеньям

Архитектура клиент-сервер, совсем недавно считавшаяся сложной средой, постепенно превратилась в исключительно сложную среду. Почему? Благодар ускоренному, переходу к и спользованию в конструкции систем клиент-сервер нескольких звеньев.

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

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

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

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

Теперь вы понимаете, что среда клиент-сервер представляет собой смесь средств, технологий и вычислительных моделей. Но как подступиться к этим системам? Это подобно поеданию слона: каждый раз надо брать по маленькому кусочку. И, вероятно, вам потребуется помощь консультанта.

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

Серверы баз данных

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

Серверы реляционных и нереляционных баз данных могут быть различного вида и масштабов. Большинство программ-серверов баз данных - такие как Oracle7 и Sybase System 11 - выполняются на выделенных машинах. При этом серверы баз данных работают на разнообразных процессорах и в различных операционных средах. Следовательно, у создателей систем клиент-сервер имеется выбор для удовлетворения потребностей прикладных программ. Oracle, например, работает на большинстве RISC- и CISC-ориентированных Unix-системах, включая HP/UX фирмы Hewlett-Packard и Solaris компании Sun. Кроме того, Oracle выполняется на серверах, использующих процессоры Intel под управлением SCO Unix и Netware компании Novell.

Некоторые изготовители серверов баз данных, такие как компании Borland (Interbase) и Sybase (SQL Server), предоставляют версии своих серверов для запуска на системах-клиентах (например, в процессах Microsoft Windows 3.1 или Windows 95). Это позволяет разработчику систем клиент-сервер создавать клиентскую часть программ, избежав необходимости немедленной покупки отдельного сервера баз данных.

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

Серверы объектно-ориентированных баз данных, такие как GemStone компании GemStone Systems, хранят информацию в форме объектов, что больше подходит дл средств разработки программ-клиентов, которые работают с чисто объектной моделью.

Более того, в объектно-ориентированных СУБД лучше, чем в реляционных, организовано хранение сложных структур данных. Серверы многомерных баз данных, такие как Essbase Analysis Server фирмы Arbor Software Corp., обеспечивают более понятное конечным пользователям представление данных и обладают новыми средствами оперативного анализа (OLAP).

Функции сервера

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



Поделиться:


Последнее изменение этой страницы: 2017-02-17; просмотров: 1281; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.191.216.163 (0.11 с.)