Компьютеры с современный мир

Будущее клиент серверных технологий. Основы технологии клиент-сервер

ТЕМА №8

8. Локальные вычислительные сети. 1

Введение. 1

8.1. Аппаратные средства ЛВС.. 2

8.2. Топология ЛВС.. 4

8.3. Принципы управления. 6

8.3. Принципы управления. 7

8.4. Технология «клиент-сервер». 8

8.5. Программное обеспечение технологии «клиент-сервер». 9

8.6. Вход в сеть. 11

Организация сетевого доступа к ресурсам компьютера. 12

Организация доступа к файлам и принтерам компьютера. 12

Организация защиты сетевых ресурсов. 13

Настройка компьютера для работы в сети. 16

Отображение сетевого ресурса. 18

Использование сетевого принтера. 19

Разрешение вопросов, возникающих при работе в сети. 21

8.7. Практические упражнения. 23

Упражнение 1. Работа с Сетевым окружением.. 23

Упражнение 2. Копирование с сетевого ресурса. 23

Упражнение 3. Организация сетевого доступа к ресурсу. 24

8.8. Контрольные вопросы.. 24

8.10. Библиографический список. 24


Локальные вычислительные сети

Введение

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

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

Архитектура сети ЭВМ определяет принципы построения и функционирования аппаратного и программного обеспечения элементов сети.

Современные сети можно классифицировать по различным признакам:

Территориальной распространенности;

Ведомственной принадлежности;

Скорости передачи информации;

Топологии;

Назначению;

Перечню предоставляемых услуг;

Принципам управления (централизованные и децентрализованные);

Методам коммутации (без коммутации, телефонная коммутация, коммутация цепей, сообщений, пакетов и дейтаграмм и т. д.);

Типам среды передачи и т. д.

По территориальной распространенности сети могут быть локальными, глобальными, и региональными. Локальные – это сети, перекрывающие территорию не более 10 м 2 , региональные – расположенные на территории города или области, глобальные на территории государства или группы государств, например, всемирная сеть Internet.

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

По скорости передачи информации компьютерные сети делятся на низко-, средне- и высокоскоростные.

По типу среды передачи разделяются на сети коаксиальные, на витой паре, оптоволоконные, с передачей информации по радиоканалам, в инфракрасном диапазоне.

Компьютеры могут соединяться кабелями, образуя различную топологию сети (звездная, шинная, кольцевая и др.).

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

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

LAN (Local Area Network) – локальные сети, имеющие замкнутую инфраструктуру до выхода на поставщиков услуг. Термин «LAN» может описывать и маленькую офисную сеть, и сеть уровня большого завода, занимающего несколько сотен гектаров. Зарубежные источники дают даже близкую оценку – около шести миль (10 км) в радиусе; использование высокоскоростных каналов.

Локальная вычислительная сеть (ЛВС) представляет собой коммуникационную систему, позволяющую совместно использовать ресурсы компьютеров, подключенных к сети, такие, как принтеры, плоттеры, диски, модемы, приводы CD-ROM и другие периферийные устройства. В локальных вычислительных сетях компьютеры расположены на расстоянии до нескольких километров и обычно соединены при помощи скоростных линий связи со скоростью обмена от 1 до 10 и более Мбит/с (не исключается случаи соединения компьютеров и с помощью низкоскоростных телефонных линий). ЛВС обычно развертываются в рамках некоторой организации (корпорации, учреждения). Поэтому их иногда называют корпоративными системами или сетями. Компьютеры при этом, как правило, находятся в пределах одного помещения, здания или соседних зданий.

WAN (Wide Area Network) – глобальная сеть, покрывающая большие географические регионы, включающие в себя как локальные сети, так и прочие телекоммуникационные сети и устройства. Пример WAN – сети с коммутацией пакетов (Frame Relay), через которую могут «разговаривать» между собой различные компьютерные сети.

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

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

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

Классификация ЛКС

Локальные вычислительные сети подразделяются на два кардинально различающихся класса: одноранговые (одноуровневые или Peer to Peer) сети и иерархические (многоуровневые).

Одноранговые сети.

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

Иерархические сети.

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

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

По назначению ЛКС классифицируются :

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

· Сети, на базе которых построены системы управления производством и учрежденческой деятельности. Они объединяются группой стандартов МАР/ТОР. В МАР описываются стандарты, используемые в промышленности. ТОР описывают стандарты для сетей, применяемых в офисных сетях.

· Сети, которые объединяют системы автоматизации, проектирования. Рабочие станции таких сетей обычно базируются на достаточно мощных персональных ЭВМ, например фирмы Sun Microsystems.

· Сети, на базе которых построены распределенные вычислительные системы.

По признаку скорости – на низкоскоростные (до 10 Мбит/с), среднескоростные (до 100 Мбит/с), высокоскоростные (свыше 100 Мбит/с).

По типу метода доступа – на случайные, пропорциональные, гибридные;

По типу физической среды передачи – на витую пару, коаксиальный или оптоволоконный кабель, инфракрасный канал, радиоканал.

Аппаратные средства ЛВС

Основными аппаратными компонентами ЛВС являются:

1. Рабочие станции (PC) – это, как правило, персональные ЭВМ, которые являются рабочими местами пользователей сети.

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

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

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

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

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

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

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


а) б)
Рис. 8.1. Сетевые кабели: а –кабель на основе скрученных пар (витая пара);

б – коаксиальный кабель

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

Рис. 8.2. Сетевой адаптер

Используемые сетевые адаптеры имеют три основные характеристики:тип шины компьютера, к которому они подключаются (ISA, EISA, Micro Channel и пр.),разрядность (8, 16, 32, 64) итопология образуемой сети (Ethernet, Arcnet, Token-Ring).

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

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

Трансивер – это устройство подключения PC к толстому коаксиальному кабелю.Репитер предназначен для соединения сегментов сетей.Коннекторы (соединители) необходимы для соединения сетевых адаптеров компьютеров с тонким кабелем, а также для соединения кабелей друг с другом.Терминаторы служат для подключения к открытым кабелям сети, а также для заземления (так называемые терминаторы с заземлением).

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

Топология ЛВС

Топология – это конфигурация соединения элементов в сеть. Топология во многом определяет такие важнейшие характеристики сети, как ее надежность, производительность, стоимость, защищенность и т.д.

Одним из подходов к классификации топологий ЛВС является выделение двух основных классов топологий:широковещательных и последовательных.

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

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

Коротко рассмотрим три наиболее широко распространенные (базовые) топологии ЛВС: «звезда», «общая шина» и «кольцо».

В случаетопологии «звезда» каждый компьютер через специальный сетевой адаптер подключается отдельным кабелем к центральному узлу (рис. 8.3). Центральным узлом служит пассивный соединитель или активный повторитель.


Рис. 8.3. Топология «звезда»

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

Топология «общая шина» предполагает использование одного кабеля, к которому подключаются все компьютеры. Информация по нему передается компьютерами поочередно (рис. 8.4).


Рис. 8.4. Топология «общая шина»

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

Прикольцевой топологии данные передаются от одного компьютера другому по эстафете (рис. 8.5). Если некоторый компьютер получает данные, предназначенные не ему, он передает их дальше по кольцу. Адресат предназначенные ему данные никуда не передает.


Рис. 8.5. Кольцевая топология

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

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

Принципы управления

Существует два основных принципа управления в локальных сетях: централизация и децентрализация.

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

Существует множество сетевых ОС, реализующих централизованное управление. Среди них Microsoft Windows 2000 Server, Novell NetWare , Microsoft Lan Manager, OS/2 Warp Server Advanced, VINES и др.

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

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

Децентрализованные (одноранговые) сети не содержат в своем составе выделенных серверов. Функции управления сетью в них поочередно передаются от одной PC к другой. Ресурсы одной PC (диски, принтеры и другие устройства) оказываются доступными другим PC.

Наиболее распространенными программными продуктами, позволяющими строить одноранговые сети, являются следующие программы и пакеты: Novell NetWare Lite, Windows for Workgroups, Artisoft LANtastic, LANsmart, Invisible Software NET-30 и др. Все они могут работать под управлением DOS. Для одноранговой сети могут быть использованы также ОС Windows 2000 Prof.

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

Технология «клиент-сервер»

Технология «клиент-сервер» пришла на смену централизованной схеме управления вычислительным процессом на базе средней или большой ЭВМ (мэйнфрейма).

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

Заметим, что эта весьма перспективная и далеко не исчерпавшая себя технология получила свое дальнейшее развитие. Совсем недавно стали говорить о технологии intranet , которая появилась в результате перенесения идей сети Internet в среду корпоративных систем. В отличие от технологии «клиент-сервер» эта технология ориентирована не на данные, а на информацию в ее окончательно готовом к потреблению виде. Технология Intranet объединяет в себе преимущества двух предыдущих схем. Вычислительные системы, построенные на ее основе, имеют в своем составе центральные серверы информации и распределенные компоненты представления информации конечному пользователю (программы-навигаторы, или броузеры). Детальное рассмотрение этой технологии выходит за рамки настоящего пособия.

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

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

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

Некоторая программа, выполняемая в сети, по отношению к одним программам может выступать в роли клиента и в то же время являться сервером для других программ. Более того, за некоторый интервал времени роли клиента и сервера между одними и теми же программами могут меняться.

Разновидностью более сложных клиент-серверных моделей являетсятрехзвенная модель «сервера приложений»AS-модель (Application Server). Эта модель описывает процесс функционирования сетей, использующих базы данных. Согласно as-модели, каждая их трех основных функций (управление данными, прикладная обработка и представление информации конечному пользователю) реализуется на отдельном компьютере.

8.5. Программное обеспечение технологии
«клиент-сервер»

Для успешного применения технологии «клиент-сервер» должно использоваться соответствующее программное обеспечение, включающее клиентскую и серверную части. В частности, широко используемый пакет Microsoft Office представляет собой комплекс программдля клиентского компьютера. В его состав входят: текстовый процессор Word, табличный процессор Excel, система подготовки презентаций PowerPoint, система управления базами данных Access и программа управления информацией Outlook.

В связи с успехом распространения этого пакета корпорация Microsoft решила собрать воедино комплекс программдля сервера – так появился пакет MS BackOffice.

В состав названного пакета входят следующие компоненты:

· Windows NT Server – сетевая операционная система;

· System Management Server – система администрирования сети;

· SQL Server – сервер управления базами данных;

· SNA Server – сервер для соединения с хост-компьютерами;

· Exchange Server – сервер системы электронной почты;

· Internet Information Server – сервер для работы с Internet.

Windows 2000 Server способна обеспечить совместное использование файлов, печатающих устройств, предоставить услуги по соединению с рабочими станциями (клиентскими компьютерами) и другой сервис.

Существуют следующие две разновидности Windows 2000:

· Windows 2000 Workstation предназначена для использования на автономном компьютере ;

· Windows 2000 Server предназначена для использования в качестве сетевой операционной системы и может использоваться на рабочей станции для реализации дополнительных возможностей.

Windows NT Server целесообразно использовать в случаях, когда предполагается наличие нескольких процессоров (обычно до четырех). Кроме того, Windows NT Server обеспечивает совместное использование ресурсов многими пользователями, возможность соединения с удаленными сетями через сервис удаленного доступа – RAS (Remote Access Service), а также через средства связи с сетями других фирм (Novell, Digital Pathworks и Apple).

System Management Server (SMS) позволяет сетевому администратору централизованно управлять всей сетью. При этом обеспечивается возможность администрирования каждого компьютера, подключенного к сети, включая установленное на нем программное обеспечение. SMS предоставляет следующий сервис:

· управление инвентаризацией программного и аппаратного обеспечения;

· автоматизация установки и распространения программного обеспечения, включая его обновление;

· удаленное устранение неисправностей и предоставление полного контроля администратору за клавиатурой, мышью и экранами всех компьютеров в сети, работающих под управлением MS-DOS или Windows;

· управление сетевыми приложениями.

SQL Server представляет собой систему управления реляционными базами данных, использующую принципы технологии «клиент-сервер». MS SQL Server поддерживает систему обработки транзакций, систему сохранения ссылочной целостности, механизм распределенных транзакций, тиражирование данных.

SNAServer обеспечивает возможность связи с IBM AS/400 и мэйнфреймами IBM (EC ЭВМ). Этот продукт позволяет нескольким настольным ПЭВМ, работающим под управлением MS-DOS, Windows, Macintosh, Unix или OS/2, «видеть» хост-компьютеры.

ExchangeServer обеспечивает средства передачи и приема сообщений в информационной сети организации. Этот сервис включает электронную почту (E-mail) и обмен информационными сообщениями для рабочих групп. Microsoft Exchange Server построен на принципах технологии «клиент-сервер» и масштабируется в соответствии с возрастанием вычислительных возможностей сети.

Internet Information Server обеспечивает возможность создания Web-, FTP- и Gopher-серверов для сети Internet, поддерживает управление ими с помощью встроенной программы Internet Service Manager.

Вход в сеть

Перед окончанием загрузки Windows предлагает ввести «имя пользователя» и пароль (рис. 8.6).

Рис. 8.6. Ввод сетевого пароля

При этом выполняются следующие действия:

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

2. Введите в строке Пароль пароль, чтобы предотвратить доступ других пользователей к вашей копии Windows. При вводе пароля буквы заменяются звездочками, чтобы никто не подсмотрел пароль. Если вы не будете пользоваться паролем, эту строку оставьте пустой.

3. Щелкните на кнопке OK . Если вы нажмете кнопку Отмена , Windows Professional не позволит загрузить операционную систему. Т.е. без правильного указания имени пользователя и пароля в Windows работа пользователя невозможна.

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

Если вы работаете без сети или хотите войти в сеть под другим именем выполните следующую процедуру.

Для Windows:

1. Нажмите кнопку Пуск и выберите пункт Завершение сеанса....

2. Нажмите кнопкуОк .

3. После появления окна Ввод сетевого пароля выполните вышеуказанные в этом разделе действия.

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

Рис. 8.7. Значок Мое сетевое окружение в Windows .

В Windows 2000 данный значок называется Мое сетевое окружение (рис. 8.7). Затем дважды щелкните на значке нужного компьютера. Если нужного компьютера нет в списке, воспользуйтесь значком Вся сеть . Откройте эту папку для просмотра всех рабочих групп, являющихся частями полной сети, к которой подключен ваш компьютер. (Если вы подключены только к своей рабочей группе, вы увидите только одну эту рабочую группу.) При открытии папок рабочих групп выводятся имена всех компьютеров, образующих каждую рабочую группу. Дважды щелкните на искомой папке.

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

Преимущества

  • Делает возможным, в большинстве случаев, распределение функций вычислительной системы между несколькими независимыми компьютерами в сети. Это позволяет упростить обслуживание вычислительной системы. В частности, замена, ремонт, модернизация или перемещение сервера не затрагивают клиентов.
  • Все данные хранятся на сервере, который, как правило, защищён гораздо лучше большинства клиентов. На сервере проще обеспечить контроль полномочий, чтобы разрешать доступ к данным только клиентам с соответствующими правами доступа.
  • Позволяет объединить различные клиенты. Использовать ресурсы одного сервера часто могут клиенты с разными аппаратными платформами, операционными системами и т. п.

Недостатки

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

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

Частные случаи многоуровневой архитектуры:

Сеть с выделенным сервером

Сеть с выделенным сервером (англ. Client/Server network ) - это локальная вычислительная сеть (LAN) , в которой сетевые устройства централизованы и управляются одним или несколькими серверами. Индивидуальные рабочие станции или клиенты (такие, как ПК) должны обращаться к ресурсам сети через сервер(ы).

Литература

Валерий Коржов Многоуровневые системы клиент-сервер . Издательство Открытые системы (17 июня 1997). Архивировано из первоисточника 26 августа 2011. Проверено 31 января 2010.


Wikimedia Foundation . 2010 .

Технология клиент-сервер – это способ соединения между клиентом (компьютером пользователя) и сервером (мощным компьютером или оборудованием, предоставляющем данные), при котором они взаимодействуют между собой напрямую.

Что такое “клиент-сервер”?

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

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

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

Как функционирует клиент-серверная архитектура

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

Сервер выполняет следующие функции:

  • хранение данных;
  • обработка запроса от клиента с помощью процедур и триггеров;
  • отправка результата клиенту.

Функции, которые реализуются клиентской частью:

  • формирование и отправка запроса к серверу;
  • получение результатов и отправка дополнительных команд (запросов на добавление, удаление или обновление информации).

Достоинства и недостатки

Клиент-серверная архитектура обладает следующими преимуществами:

  • высокая скорость обработки данных;
  • возможность быстрой работы с большим количеством клиентов;
  • разделение программного кода серверных и клиентских приложений.

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

Недостатки клиент-серверной технологии:

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

Многоуровневая клиент-серверная архитектура

Многоуровневая технология “клиент-сервер” предусматривает выделение отдельного серверного оборудования для обработки данных. Операции хранения, обработки и вывода данных производятся на разных серверах. Благодаря этому распределению обязанностей повышается эффективность работы сети.

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

Предусматриваются следующие три уровня:

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

Сеть с выделенным сервером

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

Использование технологии «клиент-сервер»

Со временем не очень функциональную модель файлового сервера для локальных сетей (FS) сменили появившиеся одна задругой модели строения «Клиент сервер» (RDA, DBS и AS).

Технология «Клиент - сервер», которая заняла самый низ базы данных, стала главной технологией глобальной сети Internet. Далее, вследствие перенесения идей сети Internet в сферу корпоративных систем, возникла технология Intranet. В различие от технологии «Клиент-сервер» такая технология обращена на информацию в ее окончательно готовом виде к потреблению, а не на данные. Вычислительные системы, которые построенны на основе Intranet, обладают в своем составе центральные серверы информации и определенные компоненты представления информации последнему пользователю (браузеры или программы-навигаторы). Дейсвие между сервером и клиентом в Intranet совершается с помощью web - технологий.

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

Классическая двухуровневая архитектура «Клиент - сервер»

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

Технология «Клиент - сервер» - это архитектура программного комплекса распределяющая прикладной программой по двум логически различным частям (сервер и клиент), которые взаимодействуют по схеме «запрос-ответ» и решают собственные определенные задачи.

Программа (или компьютер), управляющая и/или владеющая каким-нибудь ресурсом, называется сервером этого ресурса.

Программа (компьютер или), запрашивающая и пользующаяся каким-либо ресурсом, называется клиентом этого ресурса.

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

Главный принцип технологии «Клиент-сервер» заключается в разделении функций приложения как минимум на три звена:

Модули интерфейса с пользователем;

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

Модули хранения данных;

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

Модули обработки данных (функции управления ресурсами);

Так же эта группа называется логикой алгоритмами доступа к данным или просто доступа к данным. Алгоритмы входа к данным рассматриваются как специфический интерфейс для конкретного приложения к устройству стабильного сохранения данных наподобие СУБД или же файловой системы. С помощью модулей обработки данных организуется специфический интерфейс для приложения СУБД. С помощью интерфейса приложение может управлять соединениями с базой данных и запросами к ней (перевод специфических для конкретного приложения запросов на язык SQL, получение результатов и перевод этих результатов обратно в специфические для конкретного приложения структуры данных). Каждое из перечисленных звеньев может реализоваться независимо от нескольких других. Например, не изменяя программ, которые используются для обработки и хранения данных, можно изменить интерфейс с пользователем так, что одни и те же данные будут отображаться в виде таблиц, гистограмм или же графиков. Самые простые приложения часто способны собрать все три звена в единственную программу, и подобное разделение соответствует функциональным границам.

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

  • - компонент представления данных;
  • - прикладной компонент;
  • - компонент управления ресурсом.

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

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

Чтобы избежать несогласованности разных элементов архитектуры, создали две модификации двухзвенной архитектуры «Клиент - сервер»: «Толстый клиент» («Тонкий сервер») и «Тонкий клиент» («Толстый сервер»).

В этой архитектуре разработчики попытались выполнять обработку данных на одной из двух физических частей - либо на стороне клиента («Толстый клиент»), либо на сервере («Тонкий клиент).

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

Если же создается двухуровневая классическая архитектура «Клиент - сервер», то нужно знать следующие факты:

Архитектура «Толстый сервер» аналогична архитектуре «Тонкий клиент»

Передача запроса от клиента на сервер, обработка запроса сервером и передача результата клиенту. При этом архитектуры имеют следующие недостатки:

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

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

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

Для решения перечисленных проблем нужно использовать многоуровневые (три и более уровней) архитектуры «Клиент-сервер».

Трехуровневая модель .

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

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

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

  • - Message orientated - яркие представители MQseries и JMS;
  • - Object Broker - яркие представители CORBA и DCOM;
  • - Component based - яркие представители.NET и EJB.

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

Есть немного серверов приложений от таких знаменитых компаний как Sun, Oracle Microsystem, IBM, Borland и каждый из них различается комплектом предоставляемых сервисов (производительность учитывать в данном случае не буду). Эти сервисы облегчают программирование и развертывание приложений масштаба предприятия. Как правило сервер приложений дает следующие сервисы:

  • - WEB Server - чаще всего включают в поставку самый мощный и популярный Apache;
  • - WEB Container - позволяет выполнять JSP и сервлеты. Для Apache таким сервисом является Tomcat;
  • - CORBA Agent - может предоставлять распределенную директорию для хранения CORBA объектов;
  • - Messaging Service - брокер сообщений;
  • - Transaction Service - уже из названия понятно, что это сервис транзакций;
  • - JDBC - драйвера для подключения к базам данных, ведь именно серверу приложений придется общаться с базами данных и ему нужно уметь подключаться к используемой в вашей компании базе;
  • - Java Mail - данный сервис может предоставлять сервис к SMTP;
  • - JMS (Java Messaging Service) - обработка синхронных и асинхронных сообщений;
  • - RMI (Remote Method Invocation) - вызов удаленных процедур.

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

разработки этих программ можно употребить как Common Gateway Interface (CGI), так и более современную технологию Java.

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

Из всего перечисленного вытекает вывод о том, что двухуровневая архитектура весьма уступает многоуровневой архитектуре, в связи с этим на сегодняшний день применяется только многоуровневая архитектура «Клиент - сервер», распознающая три модификации - RDA, DBS и AS.

Различные модели технологии «Клиент - сервер»

Самой первой основной базовой технологией для локальных сетей была модель файлового сервера (FS) . В то время эта технология была весьма распространена среди отечественных разработчиков, использовавших такие системы, как FoxPro, Clipper, Clarion, Paradox и так далее.

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

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

Протокол обмена - это некий набор вызовов, которые обеспечивают приложению вход к файловой системе на файл-сервере.

Положительными сторонами данной технологии являются:

  • - простота разработки приложений;
  • - удобство администрирования и обновления ПО
  • - низкая стоимость оборудования рабочих мест (терминалы или дешевые компьютеры с низкими характеристиками в режиме эмуляции терминала всегда дешевле полноценных ПК).

Но достоинства FS - модели превосходят ее недостатки:

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

  • - дорогостоящее аппаратное обеспечение сервера , так как все пользователи разделяют его ресурсы;
  • - отсутствие графического интерфейса .

Благодаря решению проблем, присущих технологии «Файл - сервер» появилась более прогрессивная технология, получившая название «Клиент - сервер».

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

Различия в реализации приложений в рамках технологии «Клиент-сервер»определяются четырьмя факторами:

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

Исходя из этого, выделяются три подхода, каждый из которых реализован в соответствующей модели технологии «Клиент - сервер»:

  • - модель доступа к удаленным данным (Remote Date Access - RDA);
  • - модель сервера базы данных (DateBase Server - DBS);
  • - модель сервера приложений (Application Server - AS).

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

Несмотря на большое распространение, RDA-модель уступает место наиболее технологичной DBS-модели.

Модель сервера баз данных (DBS) - сетевая архитектура технологии «Клиент - сервер», в основе которой лежит механизм хранимых процедур, который реализует прикладные функции. В DBS - модели понятие информационного ресурса сжато до базы данных из-за того же механизма хранимых процедур, реализованный в СУБД, да и то не во всех.

Положительные стороны DBS-модели перед RDA-моделью очевидны: это и возможность централизованного администрирования различных функций, и снижение трафика сети потому, что вместо SQL-запросов по сети передаются вызовы хранимых процедур, и возможность разделения процедуры между двумя приложениями, и экономия ресурсов компьютера за счет использования однажды созданного плана выполнения процедуры.

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

Выучив все модели технологии «Клиент - сервер», можно сделать такой вывод: RDA- и DBS-модели, в основе этих двух моделей лежит двухзвенная схема разделения функций. В RDA-модели прикладные функции переданы клиенту, в DBS-модели их исполнение реализовывается через ядро СУБД. В RDA-модели прикладной компонент сливается с компонентом представления, в DBS-модели интегрируется в компонент доступа к ресурсам.

В AS-модели осуществлена трехзвенная схема разделения функций, где прикладной компонент выделен как главный изолированный элемент приложения, который имеет стандартизированные интерфейсы с двумя прочими компонентами.

Результаты анализа моделей технологий «Файловый сервер» и «Клиент - сервер» представлены в таблице 1.

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

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

Вследствие этого можно сделать следующий вывод: если будет нужно работать с малыми информационными системами, которые не требуют графического интерфейса с пользователем, можно использовать FS - модель. Вопрос о графическом интерфейсе можно свободно решить с помощью RDA-модель. DBS-модель это очень хороший вариант для систем управления базами данных(СУБД). AS-модель это лучший вариант для того, чтобы создать большие информационные системы, а также при использовании низкоскоростных каналов связи.

3 Технология «Клиент – сервер»

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

Со временем малофункциональную модель файлового сервера для локальных сетей (FS) заменили появившиеся одна за одной модели структуры «Клиент- сервер» (RDA, DBS и AS).

Заняв нишу баз данных, технология «Клиент – сервер» стала основной технологией глобальной сети Internet. Далее, в результате перенесения идей сети Internet в среду корпоративных систем, появилась технология Intranet. В отличие от технологии «Клиент-сервер» эта технология ориентирована не на данные, а на информацию в ее окончательно готовом к потреблению виде. Вычислительные системы, построенные на основе Intranet, имеют в своем составе центральные серверы информации и распределенные компоненты представления информации конечному пользователю (программы-навигаторы, или браузеры). Взаимодействие между клиентом и сервером в Intranet происходит при помощи web – технологий.

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

3.1 Классическая двухуровневая архитектура «Клиент – сервер»

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

Технология «Клиент – сервер» - это архитектура программного комплекса, в которой происходит распределение прикладной программы по двум логически различным компонентам (клиент и сервер), взаимодействующим по схеме «запрос-ответ» и решающим свои определенные задачи (рисунок 6).

Рисунок 6 – Архитектура «Клиент – сервер»

Компьютер (или программа), управляющий и/или владеющий каким-либо ресурсом, называют сервером этого ресурса.

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

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

Основной принцип технологии «Клиент-сервер» заключается в разделении функций приложения как минимум на три группы:

- модули интерфейса с пользователем ;

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

- модули хранения данных ;

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

- модули обработки данных (функции управления ресурсами);

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

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

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

- компонент представления данных;

- прикладной компонент;

- компонент управления ресурсом.

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

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

Чтобы избежать несогласованности различных элементов архитектуры были созданы две модификации двухзвенной архитектуры «Клиент – сервер»: «Толстый клиент» («Тонкий сервер») и «Тонкий клиент» («Толстый сервер»).

В данных архитектурах разработчики попытались выполнять обработку данных на одной из двух физических частей - либо на стороне клиента («Толстый клиент»), либо на сервере («Тонкий клиент).

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

Есди все-таки разрабатывается двухуровневая классическая архитектура «Клиент – сервер», то необходимо помнить следующее:

- архитектура «Толстый сервер» аналогична архитектуре «Тонкий клиент» (рисунок 33) ;

Рисунок 33. – Архитектура «Тонкий клиент»

Передача запроса от клиента на сервер, обработка запроса сервером и передача результата клиенту. При этом архитектуры имеют следующие недостатки:

Усложняется реализация, так как языки типа SQL не приспособлены для разработки подобного ПО и нет хороших средств отладки;

Производительность программ, написанных на языках типа SQL, значительно ниже, чем созданных на других языках, что имеет важное значение для сложных систем;

Программы, написанные на СУБД-языках, обычно работают недостаточно надежно; ошибка в них может привести к выходу из строя всего сервера баз данных;

Получившиеся таким образом программы полностью непереносимы на другие системы и платформы.

- архитектура «Тонкий сервер» аналогична архитектуре «Толстый клиент» (рисунок 34).

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

Усложняется обновление ПО, поскольку его замену нужно производить одновременно по всей системе;

Усложняется распределение полномочий, так как разграничение доступа происходит не по действиям, а по таблицам;

Перегружается сеть вследствие передачи по ней необработанных данных;

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

Рисунок 34. – Архитектура «Толстый клиент»

Для решения перечисленных проблем используются многоуровневые (три и более уровней) архитектуры «Клиент-сервер».

3.2 Трехуровневая модель

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

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

Сервер приложений – это программное обеспечение, являющееся промежуточным слоем между клиентом и сервером (рисунок 35).

Рисунок 35 - Сервер приложений

Существует несколько категорий продуктов промежуточного слоя:

Message orientated – яркие представители MQseries и JMS;

Object Broker – яркие представители CORBA и DCOM;

Component based – яркие представители.NET и EJB.

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

Существует несколько серверов приложений от таких знаменитых компаний как Sun Microsystem, Borland, IBM, Oracle и каждый из них отличается набором предоставляемых сервисов (производительность в данном случае учитывать не будем). Эти сервисы облегчают программирование и развертывание приложений масштаба предприятия. Обычно сервер приложений предоставляет следующие сервисы:

WEB Server – чаще всего включают в поставку самый популярный и мощный Apache;

WEB Container – позволяет выполнять JSP и сервлеты. Для Apache таким сервисом является Tomcat;

Похожие публикации