Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Программное обеспечение компьютерных сетей

Покупка
Основная коллекция
Артикул: 156650.11.01
К покупке доступен более свежий выпуск Перейти
Учебное пособие предназначено для учащихся системы среднего профессионального образования, обучающихся по укрупненной группе специальностей 09.02.00 «Информатика и вычислительная техника» и изучающих дисциплины «Программное обеспечение компьютерных сетей» и «Программное обеспечение компьютерных сетей и Web-серверов». Учебное пособие, написанное в соответствии с государственными образовательными стандартами на данные дисциплины, включает сведения об основных видах программного обеспечения компьютерных сетей, современных Web-технологиях и популярных средствах разработки Web-приложений. Кроме использования в учебных заведениях системы СПО может быть полезно и для учащихся высших учебных заведений.
Исаченко, О. В. Программное обеспечение компьютерных сетей : учебное пособие / О. В. Исаченко. — Москва : ИНФРА-М, 2019. — 117 с. — (Среднее профессиональное образование). - ISBN 978-5-16-004858-1. - Текст : электронный. - URL: https://znanium.ru/catalog/product/989894 (дата обращения: 20.04.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
ПРОГРАММНОЕ
ОБЕСПЕЧЕНИЕ

КОМПЬЮТЕРНЫХ СЕТЕЙ

Москва

ИНФРА-М

201О.В. ИСАЧЕНКО

УЧЕБНОЕ ПОСОБИЕ

Рекомендовано

в качестве учебного пособия для учебных заведений,

реализующих программу среднего профессионального образования
по специальностям 09.02.01 «Компьютерные системы и комплексы»,

09.02.02 «Компьютерные сети»,

09.02.03 «Программирование в компьютерных системах»

УДК 681.3.06(075.32)
ББК 32.973.202-018.2я723
 
И85

Исаченко О.В.

Программное обеспечение компьютерных сетей : учеб. 

пособие / О.В. Исаченко. — М. : И
 НФРА-М, 2019. — 117 с. — 

(Среднее профессиональное образование).

ISBN 978-5-16-004858-1 (print)
ISBN 978-5-16-100665-8 (online)

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

Учебное пособие, написанное в соответствии с государственными 

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

Кроме использования в учебных заведениях системы СПО может 

быть полезно и для учащихся высших учебных заведений.

УДК 681.3.06(075.32)

ББК 32.973.202-018.2я723

ISBN 978-5-16-004858-1 (print)
ISBN 978-5-16-100665-8 (online)
© Исаченко О.В., 2012

И85

ПРЕДИСЛОВИЕ

Сфера информационных технологий является на сегодняшний 

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

Основу данного учебного пособия составил курс лекций, подго
товленный в соответствии с современным образовательным стандартом по специальности 230105 «Программное обеспечение вычислительной техники и автоматизированных систем», по дисциплине 
«Программное обеспечение компьютерных сетей», и специальности 
230106 «Техническое обслуживание средств вычислительной техники и компьютерных сетей», по дисциплине «Программное обеспечение компьютерных сетей и Web-серверов».

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

Кроме того, были рассмотрены вопросы, связанные с понятиями 

Web-дизайна и Web-программирования, включая изучение основных 
конструкций языка гипертекстовой разметки документов HTML, 
языка HTML и rt, а также особенностей разработки расHTML и rt, а также особенностей разработки рас и rt, а также особенностей разработки расrt, а также особенностей разработки рас, а также особенностей разработки рас
ширений Web-серверов на примере написания CGI-сценариев на 
языке программирования высокого уровня bet и с испольbet и с исполь и с испольи с исполь и с исполь
зованием специальных средств современных RA-систем. 

Пособие состоит из шести взаимосвязанных частей (глав), каждая 

из которых раскрывает одну из ключевых тем предмета:
• технология «клиент–сервер»;
• программное обеспечение Web-систем;
• Web-приложения и методы их разработки;
• средства разработки Web-приложений;
• разработка Web-приложений;
• создание приложений Web-сервера.

ВВЕДЕНИЕ

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

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

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

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

Пара модулей «клиент–сервер» обеспечивает совместный доступ 

пользователей к определенному типу ресурсов. Термины «клиент» и 

«сервер» используются для обозначения не только программных модулей, но и компьютеров, подключенных к сети. Если компьютер предоставляет свои ресурсы другим компьютерам сети, то он называется 
сервером, а если он их потребляет — клиентом. Иногда один и тот же 
компьютер может выполнять роль как сервера, так и клиента.

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

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

Приложение

Редиректор

Локальная

ОС

Клиентская

часть

Локальные

ресурсы

Драйвер

порта

Серверная

часть

Локальная

ОС

Драйвер

порта

Локальные

ресурсы

Клиент
Компьютер А
Сервер
Компьютер В

Рис. В.1. Взаимодействие программных компонентов

Сеть

Глава 1.
ТЕХНОЛОГИЯ «КЛИЕНТ–СЕРВЕР»

1.1.
Понятие о технологии «клиент–сервер»

Телекоммуникационные технологии лежат в основе современных 

систем коллективной человеческой деятельности, которые можно 
подразделить на две группы:
• системы с разделением времени — СВР (Time Sharing System), каж
дый участник которых пользуется собственной ЭВМ и основной задачей является защита данных от несанкционированного 
доступа и взаимная изоляция участников;

• системы обеспечения групповых решений — СОГР (mter Smter SSSrted erative Wrk, grware), ориентированные на задачу 
обеспечения взаимодействия пользователей в процессе принятия решений.
С развитием представлений о распределенных вычислительных 

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

Рассмотрим основные принципы построения «клиент-серверной» 

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

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

• сеть, которая обеспечивает взаимодействие между клиентами и 

серверами.
Серверы являются независимыми друг от друга. Клиенты также 

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

Очень важен вопрос о том, что можно рассматривать в качестве 

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

Общепринятым является соглашение, что клиенты и серверы — 

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

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

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

Но кроме Web-браузеров к серверам могут обращаться и другие 

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

Для запроса к Web-серверу клиентская программа должна задать 

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

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

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

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

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

• модель толстого клиента, в которой сервер только управляет 

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

Трехуровневая клиент-серверная архитектура, которая начала 

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

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

Web-браузер формирует запрос и пересылает его серверу, который 

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

Обычно Web-сервер и серверные модули промежуточного уровня 

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

На современном тапе для реализации модулей промежуточного 

уровня используется язык серверных сценариев РНР, а для управления данными — СУБД MyQL. Таким образом, связку H–MyQL 
следует рассматривать как стандартный инструмент для создания 
сравнительно простых интерактивных Web-сайтов и систем лектWeb-сайтов и систем лект-сайтов и систем лект
ронной коммерции; около 90% коммерческих систем сегодня создается именно на той основе. Вместе с тем как средства управления 
данными, так и mіddewre-средства могут быть самыми разнообразными. Так, для создания серверных приложений, кроме РНР, широко применяются , er, ython. Технологии создания Webприложений, в частности распределенных, стремительно развиваются. Следует упомянуть о технологиях EB (Enterrіe Ben), 
CRBA, а также про .NET — сравнительно новую инициативу компании Mіrooft. Для сохранения данных и их передачи часто используется так называемый расширенный язык разметки XML (Extenіbe 
MrkuLnguge).

1.2.
Разновидности функциональных структур 
«клиент–сервер»

Компьютер (процесс), управляющий тем или иным ресурсом, 

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

Один из основных принципов технологии «клиент–сервер» за
ключается в разделении функций стандартного интерактивного (диалогового) приложения на четыре группы: 1) функции ввода и отображения данных; 2) прикладные функции, характерные для данной 
предметной области (для банковской системы — открытие счета, 
перевод денег с одного счета на другой); 3) фундаментальные функции хранения и управления информационно-вычислительными ресурсами (базами данных, файловыми системами и т.п.); 4) служебные 
функции, осуществляющие связь между функциями первых трех 
групп.

В соответствии с тим в любом приложении выделяются следую
щие логические компоненты: компонент представления (reentreentton), реализующий функции первой группы; прикладной компонент 
(buneton), поддерживающий функции второй группы; 
компонент доступа к информационным ресурсам (reoure mnger), 

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

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

Выделяются четыре подхода, реализованные в следующих техно
логиях: 1) файловый сервер (Fe erer — F); 2) доступ к удаленным 
данным (Remote tAe— RA); 3) сервер баз данных (tBe erer — B); 4) сервер приложений (Aton erer — A). 

Технология FS является базовой при реализации локальных сетей 

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

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

Технология RDA существенно отличается от Fметодом доступа к 

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

Достоинство RA заключается в унификации интерфейса «клиRA заключается в унификации интерфейса «кли заключается в унификации интерфейса «кли
ент–сервер» в виде языка запросов и широком выборе средств раз
Компонент

представления

Клиент
Сервер
Запросы

Файлы

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

Компонент доступа

к ресурсам

Рис. 1.1. Технология File Server

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

Технология DBS реализована в некоторых реляционных (таблич
ных) СУБД (Informx, ybe, re) (рис. 1.3).

Ее основу составляет механизм хранимых процедур (средство 

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

Достоинства технологии заключаются в следующем: возможность 

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

Компонент

представления

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

SQL

запрос

Файлы

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

Компонент доступа

к ресурсам

Рис. 1.2. Технология Remote Data Access

Компонент

представления

Клиент
Сервер
Вызов

Прикладной

компонент SQL

Компонент доступа

к ресурсам

Рис. 1.3. Технология Data Base Server

К покупке доступен более свежий выпуск Перейти