Вычислительные сети. Клиент-сервер. Сетевая модель OSI
Министерство образования науки РФ
Федерального агентства по образованию
Государственное образовательное учреждение
высшего профессионального образования
«Оренбургский государственный университет»
Факультет журналистики
Кафедра
периодической печати и теории СМИ.
Вычислительные
сети. Клиент-сервер.
Сетевая модель OSI
по
дисциплине: «Компьютерная
обработка текста».
Выполнили студенты:
Факультета журналистики
Группы 09ж
Алена Бабенко
Максим Кузьмин
Юлия Мухаметзянова
Проверил:
Сормов С.И
Оренбург, 2011
Содержание
- Компьютерные сети: локальные и глобальные
- Многоуровневые системы клиент-сервер
- Принципы передачи информации в сети. OSI
- Список литературы
- Компьютерная сеть (вычислительная сеть, сеть передачи данных) — система связи компьютеров и/или компьютерного оборудования (серверы, маршрутизаторы и другое оборудование). Для передачи информации могут быть использованы различные физические явления, как правило — различные виды электрических сигналов, световых сигналов или электромагнитного излучения.
По назначению компьютерные сети распределяются:
- вычислительные
- информационные
- смешанные
Вычислительные
сети - предназначены главным
образом для решения заданий
пользователей с обменом
Информационные сети - ориентированы в основном на предоставление информационных услуг пользователям.
Смешанные сети - совмещают функции первых двух.
В свою очередь вычислительные компьютерные сети делятся на локальные и глобальные.
Глобальная вычислительная сеть, ГВС (англ. Wide Area Network, WAN) — компьютерная сеть, охватывающая большие территории и включающая в себя большое число компьютеров.
В настоящее время рекомендуется использовать термин «Глобальная компьютерная сеть».
ГВС служат для объединения разрозненных сетей так, чтобы пользователи и компьютеры, где бы они ни находились, могли взаимодействовать со всеми остальными участниками глобальной сети.
Некоторые ГВС построены исключительно для частных организаций, другие являются средством коммуникации корпоративных ЛВС с сетью Интернет или посредством Интернет с удалёнными сетями, входящими в состав корпоративных. Чаще всего ГВС опирается на выделенные линии, на одном конце которых маршрутизатор подключается к ЛВС, а на другом концентратор связывается с остальными частями ГВС. Основными используемыми протоколами являются TCP/IP, SONET/SDH, MPLS, ATM и Frame relay. Ранее был широко распространён протокол X.25, который может по праву считаться прародителем Frame relay.
Совмещают компьютеры, рассредоточенные на расстоянии сотен и тысяч километров. Часто используются уже существующие не очень качественные линии связи. Более низкие, чем в локальных сетях, скорости передачи данных (десятки килобит в секунду) ограничивают набор услуг передачей файлов, преимущественно не в оперативном, а в фоновом режиме, с использованием электронной почты. Для стойкой передачи дискретных данных применяются более сложные методы и оборудование, чем в локальных сетях.
Крупнейшие ГВС
Internet
FidoNet
Скайнет
Лока́льная вычисли́тельная сеть (ЛВС, локальная сеть, сленг. локалка; англ. Local Area Network, LAN) — компьютерная сеть, покрывающая обычно относительно небольшую территорию или небольшую группу зданий (дом, офис, фирму, институт). Также существуют локальные сети, узлы которых разнесены географически на расстояния более 12 500 км (космические станции и орбитальные центры). Несмотря на такие расстояния, подобные сети всё равно относят к локальным.
Построение сети
Существует множество способов классификации сетей. Основным критерием классификации принято считать способ администрирования. То есть в зависимости от того, как организована сеть и как она управляется, её можно отнести к локальной, распределённой, городской или глобальной сети. Управляет сетью или её сегментом сетевой администратор. В случае сложных сетей их права и обязанности строго распределены, ведётся документация и журналирование действий команды администраторов.
Компьютеры
могут соединяться между собой,
используя различные среды
Чаще всего локальные сети построены на технологиях Ethernet или Wi-Fi. Следует отметить, что ранее использовались протоколы Frame Relay, Token ring, которые на сегодняшний день встречаются всё реже, их можно увидеть лишь в специализированных лабораториях, учебных заведениях и службах. Для построения простой локальной сети используются маршрутизаторы, коммутаторы, точки беспроводного доступа, беспроводные маршрутизаторы, модемы и сетевые адаптеры. Реже используются преобразователи (конвертеры) среды, усилители сигнала (повторители разного рода) и специальные антенны.
Маршрутизация в локальных сетях используется примитивная, если она вообще необходима. Чаще всего это статическая либо динамическая маршрутизация (основанная на протоколе RIP).
Иногда в локальной сети организуются рабочие группы — формальное объединение нескольких компьютеров в группу с единым названием.
Сетевой администратор — человек, ответственный за работу локальной сети или её части. В его обязанности входит обеспечение и контроль физической связи, настройка активного оборудования, настройка общего доступа и предопределённого круга программ, обеспечивающих стабильную работу сети.
Адресация
В локальных сетях, основанных на протоколе IPv4, могут использоваться специальные адреса, назначенные IANA (стандарты RFC 1918 и RFC 1597):
10.0.0.0—10.255.255.255;
172.16.0.0—172.31.255.
192.168.0.0—192.168.255.
Такие
адреса называют частными, внутренними,
локальными или «серыми»; эти адреса
не доступны из сети Интернет. Необходимость
использовать такие адреса возникла
из-за того, что при разработке протокола
IP не предусматривалось столь
Конфликт IP адресов — распространённая ситуация в локальной сети, при которой в одной IP-подсети оказываются два или более компьютеров с одинаковыми IP-адресами. Для предотвращения таких ситуаций и облегчения работы сетевых администраторов применяется протокол DHCP, позволяющий компьютерам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети TCP/IP.
LAN и VPN
Связь с удалённой локальной сетью, подключенной к глобальной сети, из дома/командировки/удалённого офиса часто реализуется через VPN. При этом устанавливается VPN-подключение к пограничному маршрутизатору.
Особенно популярен следующий способ организации удалённого доступа к локальной сети:
Обеспечивается
подключение снаружи к
Так как в этих протоколах используется PPP, то существует возможность назначить абоненту IP-адрес. Назначается свободный (не занятый) IP-адрес из локальной сети.
Маршрутизатор (VPN, Dial-in сервер) добавляет proxyarp — запись на локальной сетевой карте для IP-адреса, который он выдал VPN-клиенту. После этого, если локальные компьютеры попытаются обратиться напрямую к выданному адресу, то они после ARP-запроса получат MAC-адрес локальной сетевой карты сервера и трафик пойдёт на сервер, а потом и в VPN-туннель.
Отличие глобальной сети от локальной
Глобальные сети отличаются от локальных тем, что рассчитаны на неограниченное число абонентов и используют, как правило, не слишком качественные каналы связи и сравнительно низкую скорость передачи, а механизм управления обменом, у них в принципе не может быть гарантировано скорым.
В
глобальных сетях намного более
важное не качество связи, а сам факт
ее существования. Правда, в настоящий
момент уже нельзя провести четкий
и однозначный предел между локальными
и глобальными сетями. Большинство локальных
сетей имеют выход в глобальную сеть, но
характер переданной информации, принципы
организации обмена, режимы доступа, к
ресурсам внутри локальной сети, как правило,
сильно отличаются от тех, что принято
в глобальной сети. И хотя все компьютеры
локальной сети в данном случае включены
также и в глобальную сеть, специфику локальной
сети это не отменяет. Возможность выхода
в глобальную сеть остается всего лишь
одним из ресурсов, поделенным пользователями
локальной сети.
Многоуровневые системы
клиент-сервер
Технология клиент-сервер по праву считается одним из "китов", на которых держится современный мир компьютерных сетей. Но те задачи, для решения которых она была разработана, постепенно уходят в прошлое, и на сцену выходят новые задачи и технологии, требующие переосмысления принципов клиент-серверных систем. Одна из таких технологий - World Wide Web.
Использование технологии гипертекстовых документов для построения внутренней информационной инфраструктуры компании стимулировало бурное развитие всевозможных систем типа клиент-сервер. Некоторые пытаются противопоставить Web-технологию архитектуре клиент-сервер, однако это заблуждение, поскольку на самом деле Web является развитием данной архитектуры. Можно сказать, что система Web имеет архитектуру клиент-серверы, т. е. с помощью одного клиента можно подключиться ко многим серверам. Web-браузер, который обеспечивает удобный интерфейс с пользователем для доступа к информации, - это лишь вершина айсберга, самый верхний уровень системы Web. Кроме интерфейса любая информационная система должна иметь уровни обработки данных и их хранения. У разработчиков интрасетей часто возникает проблема правильного согласования работы Web с другими элементами системы, например базами данных. Одним из перспективных способов решения этой проблемы являются многоуровневые архитектуры клиент-сервер. Чтобы понять их преимущества, рассмотрим подробнее обычную клиент-серверную систему.
Клиент-сервер (англ. Client-server) — вычислительная или сетевая архитектура, в которой задания или сетевая нагрузка распределены между поставщиками услуг (сервисов), называемыми серверами, и заказчиками услуг, называемыми клиентами. Нередко клиенты и серверы взаимодействуют через компьютерную сеть и могут быть как различными физическими устройствами, так и программным обеспечением.
Термин
"клиент-сервер" означает такую
архитектуру программного комплекса,
в которой его функциональные части взаимодействуют
по схеме "запрос-ответ". Если рассмотреть
две взаимодействующие части этого комплекса,
то одна из них (клиент) выполняет активную
функцию, т. е. инициирует запросы, а другая
(сервер) пассивно на них отвечает. По мере
развития системы роли могут меняться,
например некоторый программный блок
будет одновременно выполнять функции
сервера по отношению к одному блоку и
клиента по отношению к другому.
Преимущества
- Делает возможным, в большинстве случаев, распределить функции вычислительной системы между несколькими независимыми компьютерами в сети. Это позволяет упростить обслуживание вычислительной системы. В частности, замена, ремонт, модернизация или перемещение сервера, не затрагивают клиентов.
- Все данные хранятся на сервере, который, как правило, защищён гораздо лучше большинства клиентов. На сервере проще обеспечить контроль полномочий, чтобы разрешать доступ к данным только клиентам с соответствующими правами доступа.
- Позволяет объединить различные клиенты. Использовать ресурсы одного сервера часто могут клиенты с разными аппаратными платформами, операционными системами и т.п.
Недостатки
- Неработоспособность сервера может сделать неработоспособной всю вычислительную сеть.
- Поддержка работы данной системы требует отдельного специалиста - системного администратора.
- Высокая стоимость оборудования.
- Многоуровневая архитектура клиент-сервер
- Многоуровневая архитектура клиент-сервер — разновидность архитектуры клиент-сервер, в которой функция обработки данных вынесена на один или несколько отдельных серверов. Это позволяет разделить функции хранения, обработки и представления данных для более эффективного использования возможностей серверов и клиентов.
Частные случаи многоуровневой архитектуры:
Трёхуровневая архитектура
Сеть с выделенным сервером
Сеть с выделенным сервером (англ. Client/Server network) — это локальная вычислительная сеть (LAN), в которой сетевые устройства централизованы и управляются одним или несколькими серверами. Индивидуальные рабочие станции или клиенты (такие, как ПК) должны обращаться к ресурсам сети через сервер(ы).
Заметим, что любая информационная система должна иметь минимум три основные функциональные части - модули хранения данных, их обработки и интерфейса с пользователем. Каждая из этих частей может быть реализована независимо от двух других. Например, не изменяя программ, используемых для хранения и обработки данных, можно изменить интерфейс с пользователем таким образом, что одни и те же данные будут отображаться в виде таблиц, графиков или гистограмм. Не меняя программ представления данных и их хранения, можно изменить программы обработки, например изменив алгоритм полнотекстового поиска. И наконец, не меняя программ представления и обработки данных, можно изменить программное обеспечение для хранения данных, перейдя, например, на другую файловую систему.
В классической архитектуре клиент-сервер приходится распределять три основные части приложения по двум физическим модулям. Обычно ПО хранения данных располагается на сервере (например, сервере базы данных), интерфейс с пользователем - на стороне клиента, а вот обработку данных приходится распределять между клиентской и серверной частями. В этом-то и заключается основной недостаток двухуровневой архитектуры, из которого следуют несколько неприятных особенностей, сильно усложняющих разработку клиент-серверных систем.
При разбиении алгоритмов обработки данных необходимо синхронизировать поведение обеих частей системы. Все разработчики должны иметь полную информацию о последних изменениях, внесенных в систему, и понимать эти изменения. Это создает большие сложности при разработке клиент-серверных систем, их установке и сопровождении, поскольку необходимо тратить значительные усилия на координацию действий разных групп специалистов. В действиях разработчиков часто возникают противоречия, а это тормозит развитие системы и вынуждает изменять уже готовые и проверенные элементы.
Чтобы избежать несогласованности различных элементов архитектуры, пытаются выполнять обработку данных на одной из двух физических частей - либо на стороне клиента ("толстый" клиент), либо на сервере ("тонкий" клиент, или архитектура, называемая "2,5- уровневый клиент-сервер"). Каждый подход имеет свои недостатки. В первом случае неоправданно перегружается сеть, поскольку по ней передаются необработанные, а значит, избыточные данные. Кроме того, усложняется поддержка системы и ее изменение, так как замена алгоритма вычислений или исправление ошибки требует одновременной полной замены всех интерфейсных программ, а иначе могут возникнуть ошибки или несогласованность данных. Если же вся обработка информации выполняется на сервере (когда такое вообще возможно), то возникает проблема описания встроенных процедур и их отладки. Дело в том, что язык описания встроенных процедур обычно является декларативным и, следовательно, в принципе не допускает пошаговой отладки. Кроме того, систему с обработкой информации на сервере абсолютно невозможно перенести на другую платформу, что является серьезным недостатком.
Большинство современных средств быстрой разработки приложений (RAD), которые работают с различными базами данных, реализует первую стратегию, т. е. "толстый" клиент обеспечивает интерфейс с сервером базы данных через встроенный SQL. Такой вариант реализации системы с "толстым" клиентом, кроме перечисленных выше недостатков, обычно обеспечивает недопустимо низкий уровень безопасности. Например, в банковских системах приходится всем операционистам давать права на запись в основную таблицу учетной системы. Кроме того, данную систему почти невозможно перевести на Web-технологию, так как для доступа к серверу базы данных используется специализированное клиентское ПО.
Итак, рассмотренные выше модели имеют следующие недостатки.
1. "Толстый" клиент:
сложность администрирования;
усложняется обновление ПО, поскольку его замену нужно производить одновременно по всей системе;
усложняется распределение полномочий, так как разграничение доступа происходит не по действиям, а по таблицам;
перегружается сеть вследствие передачи по ней необработанных данных;
слабая защита данных, поскольку сложно правильно распределить полномочия.
2. "Толстый" сервер:
усложняется реализация, так как языки типа PL/SQL не приспособлены для разработки подобного ПО и нет хороших средств отладки;
производительность программ, написанных на языках типа PL/SQL, значительно ниже, чем созданных на других языках, что имеет важное значение для сложных систем;
программы, написанные на СУБД-языках, обычно работают недостаточно надежно; ошибка в них может привести к выходу из строя всего сервера баз данных;
получившиеся
таким образом программы
Для решения перечисленных проблем используются многоуровневые (три и более уровней) архитектуры клиент-сервер.
Многоуровневые архитектуры клиент-сервер
Такие
архитектуры более разумно
В
трехуровневой архитектуре "тонкий"
клиент не перегружен функциями обработки
данных, а выполняет свою основную
роль системы представления
Для
примера рассмотрим систему, различные
части которой работают на нескольких
удаленных друг от друга серверах.
Допустим, что от разработчика поступила
новая версия системы, для установки
которой в двухуровневой
Многоуровневые
клиент-серверные системы
Следует отметить и тот факт, что в трехуровневой системе по каналу связи между сервером приложений и базой данных передается достаточно много информации. Однако это не замедляет вычислений, так как для связи указанных элементов можно использовать более скоростные линии. Это потребует минимальных затрат, поскольку оба сервера обычно находятся в одном помещении. Таким образом, увеличивается суммарная производительность системы - над одной задачей теперь работают два различных сервера, а связь между ними можно осуществлять по наиболее скоростным линиям с минимальными затратами средств. Правда, возникает проблема согласованности совместных вычислений, которую призваны решать менеджеры транзакций - новые элементы многоуровневых систем.
Менеджеры транзакций
Особенностью многоуровневых архитектур является использование менеджеров транзакций (МТ), которые позволяют одному серверу приложений одновременно обмениваться данными с несколькими серверами баз данных. Хотя серверы Oracle имеют механизм выполнения распределенных транзакций, но если пользователь хранит часть информации в БД Oracle, часть в БД Informix, а часть в текстовых файлах, то без менеджера транзакций не обойтись. МТ используется для управления распределенными разнородными операциями и согласования действий различных компонентов информационной системы. Следует отметить, что практически любое сложное ПО требует использования менеджера транзакций. Например, банковские системы должны осуществлять различные преобразования представлений документов, т. е. работать одновременно с данными, хранящимися как в базах данных, так и в обычных файлах, - именно эти функции и помогает выполнять МТ.
Менеджер транзакций - это программа или комплекс программ, с помощью которых можно согласовать работу различных компонентов информационной системы. Логически MT делится на несколько частей:
коммуникационный менеджер (Communication Manager) контролирует обмен сообщениями между компонентами информационной системы;
менеджер авторизации (Authorisation Manager) обеспечивает аутентификацию пользователей и проверку их прав доступа;
менеджер транзакций (Transaction Manager) управляет распределенными операциями;
менеджер ведения журнальных записей (Log Manager) следит за восстановлением и откатом распределенных операций;
менеджер
блокировок (Lock Manager) обеспечивает правильный
доступ к совместно используемым данным.

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