Файл: Технология «клиент-сервер» (Определение сервера и клиента ).pdf
Добавлен: 30.06.2023
Просмотров: 37
Скачиваний: 2
Введение
Выполнение какой-либо совокупности действий ("запрашивает услугу"), а другая ее выполняет, называется технологией "клиент-сервер". Участники такого взаимодействия называются соответственно клиентом (client) и сервером (server). Достаточно часто клиентом (или сервером) называют компьютеры, на которых функционирует то или иное клиентское (или серверное) программное обеспечение[9]. Следует особо отметить, что набор действий, понимаемых как запрашиваемая услуга, - это не обязательно чтение (получение) объекта. В том числе это может быть сохранение (запись), пересылка объекта и т.д. Целью работы является изучение структуры и алгоритмов взаимодействия программных блоков интеллектуальной системы для оценки сложных объектов, построенной по принципу «клиент\сервер». В связи с поставленной целью были определенны следующие задачи:
- Рассмотреть понятие сервера и клиента ;
- Выявить роль сервера и клиента в архитектуре клиент-сервер;
- Изучить понятие прикладных протоколов;
- Рассмотреть основные принципы построения распределённых информационных систем;
- Охарактеризовать сетевые операционные системы.
Объектом исследования курсовой работы является изучение модели«клиент\сервер». Предметом исследования является взаимодействия программных блоков интеллектуальной системы для оценки сложных объектов, построенной по принципу «клиент\сервер».
Определение сервера и клиента
При большом числе компьютеров (десятки, сотни и даже тысячи) предприятия чаще всего полагаются на сети модели «клиент-сервер». Упрощенно можно считать, что в такой сети отдельный компьютер подключается к одному или нескольким мощным компьютерам, которые называются серверами.
Сервер - это компьютер, или выполняющаяся на нём программа, которая предоставляет клиентам доступ к общим ресурсам и управляет этими ресурсами.
Клиент - пользователь (получатель) услуг и/или ресурсов, которые предоставляет сервер.
Рис. 1. Модель клиент-сервер
В серверных сетях серверы оснащены процессорами типа Intel Pentium 4 и сетевой операционной системой.
Роль сервера и клиента в архитектуре клиент-сервер
Роль серверов состоит в обеспечение централизованной защиты и управлении трафиком, а так же в предоставление клиентам ресурсов: информации, приложений и доступа к устройствам совместного пользования (например, к принтерам). В клиент - серверной среде в роли клиентов выступают настольные ПК (именно ПК, а не неинтеллектуальные терминалы!) под управлением операционной системы типа Windows 95 или Windows NT Workstation. Как правило, клиент использует собственные вычислительные мощности для обработки информации, полученной от сервера, но полагается на сервер в части предоставления необходимых данных и приложений[2]. Такое распределение ролей в обработке информации носит название клиентской (front - end) и серверной (back - end) обработки.
Наряду с успешным функционированием в собственной «родной» среде, сети модели клиент - сервер могут работать с микрокомпьютерами и мэйнфреймами. Именно эта гибкость в сочетании достаточно низкой (по сравнению с традиционными решениями) стоимостью и составляет привлекательность клиент - серверных сетей. Работая в такой среде на компьютере - клиенте, можно «вкушать плоды» трех разных методов обработки информации: автономной работы, взаимодействия с другими ПК сети и подключения к серверу или мэйнфрейму для доступа к хранящейся там информации.
Понятие прикладных протоколов
Необходимо различать понятия сетевых приложений и протоколов прикладного уровня. Протоколы прикладного уровня являются частью (хотя и весьма большой) сетевых приложений. Рассмотрим два примера. Web является сетевым приложением, позволяющим пользователям получать web-документы по запросу и состоящим из множества компонентов, включая стандарт формата документов (HTML), браузеры (Netscape Navigator, Microsoft Internet Explorer и др.), web-серверы (например, Apache, Microsoft или Netscape), протоколы прикладного уровня. Протокол прикладного уровня для web носит название протокола передачи гипертекста (HyperText Transfer Protocol, HTTP) и описывает формат и порядок обмена сообщениями между клиентом и сервером (RFC 2646). Таким образом, HTTP является лишь частью web-приложения.
В качестве второго примера рассмотрим приложение электронной почты. Электронная почта Интернета также состоит из множества компонентов: почтовых серверов, содержащих почтовые ящики пользователей, программ для просмотра и создания электронных писем, стандартов, описывающих структуру электронных писем, протоколов прикладного уровня, регламентирующих порядок обмена сообщениями серверов между собой и с оконечными системами пользователей, а также интерпретацию полей, из которых состоят электронные письма[8]. Основным протоколом прикладного уровня для электронной почты является протокол простой передачи сообщений (Simple Mail Transfer Protocol, SMTP). Как мы видим, SMTP (RFC 2821) -- лишь часть (хотя и достаточно большая) структуры приложений электронной почты.
Как сказано выше, протоколы прикладного уровня определяют способ обмена сообщениями между двумя процессами, выполняющимися на разных оконечных системах. Обычно протокол определяет следующие элементы:
- типы используемых сообщений, например запросы и ответы;
- синтаксис каждого из типов сообщений, описывающий поля сообщения и их разделители;
- семантику полей, то есть смысл информации, содержащейся в каждом из полей сообщения;
- правила, описывающие события, которые вызывают генерацию сообщений.
Некоторые из протоколов прикладного доступа (HTTP, SMTP и др.) являются официально документированными в RFC. Это означает, что если разработчик нового браузера будет следовать стандарту, то браузер сможет получать документы с любого web-сервера, построенного по этому же стандарту. Тем не менее существует множество протоколов прикладного уровня, которые не стандартизированы и при этом используются для поддержки коммерческих продуктов. В частности, это характерно для Интернет-телефонии.
Протокол ICMP (Internet Control Message Protocol) - протокол межсетевых управляющих сообщений. С помощью этого протокола компьютеры и устройства сети обмениваются друг с другом управляющей информацией. К примеру, этот протокол используется для передачи сообщений об ошибках, проверки доступности узла и т.д.
Протокол FTP (File Transfer Protocol) - протокол передачи файлов. Служит для обмена файлами между компьютерами. Например, вам нужно передать файл на сервер или, наоборот, скачать файл с сервера. Для этого вам нужно подключиться к файловому серверу (он же FTP-сервер) и выполнить необходимую вам операцию скачивания или закачки. Подключение осуществляется с помощью FTP-клиента. Простейший FTP-клиент входит в состав практически любой операционной системы. Кстати, просматривать FTP-серверы могут и обычные браузеры.
Протокол HTTP (Hyper Text Transfer Protocol) - протокол обмена гипертекстовой информацией, то есть документами HTML. Вы, наверное, слышали, что HTML является базовым языком для создания веб-страниц. Так вот, протокол HTTP предназначен для передачи веб-страниц по сети. Таким образом, протокол HTTP используется веб-серверами, а браузеры - программы, служащие для просмотра веб-страниц, - являются HTTP-клиентами.
Протоколы POP и SMTP. Протокол POP (Post Office Protocol) - протокол почтового отделения. Этот протокол используется для получения электронной почты с почтовых серверов. А для передачи электронной почты служит протокол SMTP (Simple Mail Transfer Protocol).
Протокол IMAP. Для чтения почты может использоваться еще один протокол - IMAP. Его отличие от протокола POP состоит в том, что пользователь читает сообщения электронной почты, не загружая их на свой компьютер. Все сообщения хранятся на сервере. При удалении сообщения оно удаляется с сервера.
Протокол SLIP (Serial Line Internet Protocol) - протокол подключения к сети Интернет по последовательной линии. Используется для установления связи с удаленными узлами через низкоскоростные последовательные интерфейсы. В настоящее время вытеснен протоколом РРР и практически не используется.
Протокол РРР (Point-to-Point Protocol) - обеспечивает управление конфигурацией, обнаружение ошибок и повышенную безопасность при передаче данных на более высоком уровне, чем протокол SLIP. Поэтому при настройке сервера рекомендуется использовать именно этот протокол. Протокол РРР рассмотрен в RFC 1547 и RFC 1661.
Протокол RIP (Routing Information Protocol) - используется для маршрутизации пакетов в компьютерных сетях. Для маршрутизации также используется протокол OSPF (Open Shortest Path First), который является более эффективным, чем RIP.
Представление данных в системах обработки данных
Уровни представления данных. СОД хранят и обрабатывают информацию об объектах реального мира. Некоторую совокупность информации, описывающую конкретный объект, называют логической записью или просто записью. Совокупность записей, охватывающих множество объектов определенного класса, называют информационным массивом. В реальном мире между объектами существуют определенные отношения и взаимосвязи, имеющие различную степень сложности. В процессе разработки в СОД эти отношения выявляются и отображаются путем структуризации записей и информационных массивов. Организация информационного массива, обеспечивающая определенные связи и отношения между данными, называется структурой данных. Любые манипуляции над данными в процессе их обработки на ЭВМ не должны разрушать структуру данных, поэтому ее необходимо все время поддерживать.
Существует 3 уровня представления данных: логический уровень,уровень хранения и физический уровень.
На логическом уровне работают с логическими структурами данных, отражающими реальные отношения между объектами и их характеристиками.
При разработке логических структур данных учитывается также информационная потребность пользователей системы и характер задач, для решения которых редназначена СОД. Единицей информации на этом уровне является логическая запись. Каждый объект, описываемый соответствующей логической записью, характеризуется определенными признаками, являющимися атрибутами записи.
На логическом уровне устанавливается перечень признаков, полностью характеризующий описываемый класс объектов. Совокупность признаков и их взаимосвязь определяют внутреннюю структуру логической записи.
Логическая структура данных должна исчерпывающе характеризовать объекты, сведения о которых обрабатываются СОД, адекватно отражать реальные отношения между объектами и их характеристиками, обеспечивать удовлетворение информационных потребностей пользователей системы и решение задач приложений.
На логическом уровне представления данных не учитывается техническое и математическое обеспечение системы (тип ЭВМ, типы памяти, язык программирования, операционная система).
На уровне хранения оперируют со структурами хранения ? представлениями логической структуры данных в памяти ЭВМ. Структура хранения должна полностью отображать логическую структуру данных и поддерживать ее в процессе функционирования СОД. Единицей информации на этом уровне также является логическая запись.
При разработке или выборе структуры хранения должны учитываться особенности организации памяти ЭВМ. При этом устанавливается тип и формат данных, определяется способ поддержания логической структуры[7].
Известны различные способы представления данных в оперативной памяти и на внешних носителях, причем одна и та же логическая структура данных может быть реализована в памяти ЭВМ различными структурами хранения. Каждая структура хранения предоставляет определенный способ доступа к данным и определенные возможности манипулирования данными. Структура хранения характеризуется объемом памяти, необходимым для размещения данных.
От выбора структуры хранения непосредственно зависит эффективность обработки данных. Правильно выбранная структура хранения обеспечивает минимальный расход машинной памяти, быстрый поиск нужных данных, возможность добавления новых и удаления устаревших записей без разрушения логической структуры, а также возможность корректировки записей.
Поддержание структуры хранения осуществляется программными средствами. Для реализации структуры хранения требуются определенные языки программирования, возможности которых следует учитывать при разработке или выборе структуры хранения.