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

Назначение и краткая характеристика основных компонентов вычислительных сетей.

Вычислительной сетью называют совокупность взаимосвязанных и распределенных по некоторой территории ЭВМ.

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

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

Вычислительная сеть состоит из трех компонент:

Сети передачи данных, включающей в себя каналы передачи данных и средства коммутации;

Компьютеров, связанных сетью передачи данных;

Сетевого программного обеспечения.

Вычислительная сеть – это сложный комплекс взаимосвязанных программных и аппаратных компонентов:

компьютеров (хост-компьютеры, сетевые компьютеры, рабочие станции, серверы), размещенных в узлах сети;

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

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

Программные и аппаратные компоненты вычислительной сети

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

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

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



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

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

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

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

1) рабочие станции;

2) серверы сети;

3) коммуникационные узлы.

1) Рабочая станция , workstation - это персональный компьютер, подключенный к сети, на котором пользователь сети выполняет свою работу. Каждая рабочая станция обрабатывает свои локальные файлы и использует свою операционную систему. Но при этом пользователю доступны ресурсы сети.

Можно выделить три типа рабочих станций:

Рабочая станция с локальным диском,

Бездисковая рабочая станция,

Удаленная рабочая станция.

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

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

2) Сервер сети , network server - это компьютер, подключенный к сети и предоставляющий пользователям сети определенные услуги, например хранение данных общего пользования, печать заданий, обработку запроса к СУБД, удаленную обработку заданий и т. д.

По выполняемым функциям можно выделить следующие группы серверов.

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

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

Хранение данных;

Архивирование данных;

Передачу данных.

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

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

Хранение баз данных, поддержку их целостности, полноты, актуальности;

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

Согласование изменений данных, выполняемых разными пользователями;

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

Сервер прикладных программ, application server - компьютер, который используется для выполнения прикладных программ пользователей.

Коммуникационный сервер, communications server - устройство или компьютер, который предоставляет пользователям локальной сети прозрачный доступ к своим последовательным портам ввода/вывода.

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

Сервер доступа, access server - это выделенный компьютер, позволяющий выполнять удаленную обработку заданий. Программы, инициируемые с удаленной рабочей станции, выполняются на этом сервере.

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

Факс-сервер, fax server - устройство или компьютер, который выполняет рассылку и прием факсимильных сообщений для пользователей локальной сети.

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

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

3) К коммуникационным узлам сети относятся следующие устройства:

Повторители;

Коммутаторы (мосты);

Маршрутизаторы;

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

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

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

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

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

Основными аппаратными компонентами сети являются следующие:

1. Абонентские системы: компьютеры (рабочие станции или клиенты и серверы); принтеры; сканеры и др.

2. Сетевое оборудование: сетевые адаптеры; концентраторы (хабы); мосты; маршрутизаторы и др.

3. Коммуникационные каналы: кабели; разъемы; устройства передачи и приема данных в беспроводных технологиях.

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

1. Сетевые операционные системы , где наиболее известные из них это: MS Windows; LANtastic; NetWare; Unix; Linux и т.д.

2. Сетевое программное обеспечение (Сетевые службы): клиент сети; сетевая карта; протокол; служба удаленного доступа.

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

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

Компьютеры, входящие в ЛВС клиент – серверной архитектуры, делятся на два типа: рабочие станции, или клиенты, предназначенные для пользователей, и серверы, которые, как правило, недоступны для обычных пользователей и предназначены для управления ресурсами сети.

Рабочие станции

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

Клиент для сетей;

Служба доступа к файлам и принтерам;

Сетевые протоколы для данного типа сетей;

Сетевая плата;

Контроллер удаленного доступа.

Рабочая станция отличается от обычного автономного персонального компьютера следующим:

Наличием сетевой карты (сетевого адаптера) и канала связи;

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

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

После подключения к ЛВС появляются дополнительные сетевые дисковые накопители;

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

Сетевые адаптеры

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

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

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

Скорость передачи;

Объем буфера для пакета;

Тип шины;

Быстродействие шины;

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

Использованием прямого доступа к памяти (DMA);

Адресация портов ввода/вывода и запросов прерывания;

конструкция разъема.

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

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

LAN - локальные сети (Local Area Networks); ·
MAN - городские сети (Metropolitan Area Networks). ·
WAN - глобальные сети (Wide Area Networks);

Локальная сеть (ЛС) - это коммуникационная система, поддерживающая в пределах здания или некоторой другой ограниченной территории один или несколько высокоскоростных каналов передачи цифровой информации, предоставляемых подключенным устройствам для кратковременного монопольного использования. Территории, охватываемые ЛС, могут существенно различаться.
Длина линий связи для некоторых сетей может быть не более 1000 м, другие же ЛС в состоянии обслужить целый город. Обслуживаемыми территориями могут быть как заводы, суда, самолеты, так и учреждения, университеты, колледжи. В качестве передающей среды, как правило, используются коаксиальные кабели, хотя все большее распространение получают сети на витой паре и оптоволокне, а в последнее время также стремительно развивается технология беспроводных локальных сетей, в которых используется один из трех видов излучений: широкополосные радиосигналы, маломощное излучение сверхвысоких частот (СВЧ излучение) и инфракрасные лучи.
Небольшие расстояния между узлами сети, используемая передающая среда и связанная с этим малая вероятность появления ошибок в передаваемых данных позволяют поддерживать высокие скорости обмена - от 1 Мбит/с до 100 Мбит/с (в настоящее время уже есть промышленные образцы ЛС со скоростями порядка 1 Гбит/с).

Городские сети, как правило, охватывают группу зданий и реализуются на оптоволоконных или широкополосных кабелях. По своим характеристикам они являются промежуточными между локальными и глобальными сетями. В последнее время в связи с прокладкой высокоскоростных и надежных оптоволоконных кабелей на городских и междугородних участках, а новые перспективные сетевые протоколы, например, ATM (Asynchronous Transfer Mode - режим асинхронной передачи), которые в перспективе могут использоваться как в локальных, так и в глобальных сетях.

Глобальные сети, в отличие от локальных, как правило, охватывают значительно большие территории и даже большинство регионов земного шара (примером может служить сеть Internet). В настоящее время в качестве передающей среды в глобальных сетях используются аналоговые или цифровые проводные каналы, а также спутниковые каналы связи (обычно для связи между континентами). Ограничения по скорости передачи (до 28,8 Кбит/с на аналоговых каналах и до 64 Кбит/с - на пользовательских участках цифровых каналов) и относительно низкая надежность аналоговых каналов, требующая использования на нижних уровнях протоколов средств обнаружения и исправления ошибок существенно снижают скорость обмена данными в глобальных сетях по сравнению с локальными.
Существуют и другие классификационные признаки компьютерных сетей. Так, например:

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

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

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

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

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

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

    компьютеров;

    коммуникационного оборудования;

    операционных систем;

    сетевых приложений.

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

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

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

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

Простейший случай взаимодействия двух компьютеров

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

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

Рассмотрим случай, когда пользователю, работающему с текстовым редактором на персональном компьютере А, нужно прочитать часть некоторого файла, расположенного на диске персонального компьютера В (рис. 4). Предположим, что мы связали эти компьютеры по кабелю связи через СОМ-порты, которые, как известно, реализуют интерфейс RS-232C (такое соединение часто называют нуль-модемным). Пусть для определенности компьютеры работают под управлением MS-DOS, хотя принципиального значения в данном случае это не имеет.

Рис. 4. Взаимодействие двух компьютеров

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

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

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

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

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

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

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

Рис. 5. Взаимодействие программных компонентов при связи двух компьютеров

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

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

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

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

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

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

2. Основные программные и аппаратные компоненты сети

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

Изучение сети в целом предполагает знание принципов работы ее отдельных элементов:

Компьютеров;

Коммуникационного оборудования;

Операционных систем;

Сетевых приложений.

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

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

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

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

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

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

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

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

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

Компьютеров;

Коммуникационного оборудования;

Операционных систем;

Сетевых приложений.

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

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

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

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

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

1.1.4. Что дает предприятию использование сетей?

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

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

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

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

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

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

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

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

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

Чтобы такая работа была возможна, необходимо не только наличие быстрых и надежных связей в корпоративной сети, но и наличие структурированной ин­формации на серверах предприятия, а также возможность эффективного поиска нужных данных. Этот аспект сетевой работы всегда был узким местом в органи­зации доставки информации сотрудникам - даже при существовании мощных СУБД информация в них попадала не самая «свежая» и не в том объеме, кото­рый был нужен. В последнее время в этой области наметился некоторый про­гресс, связанный с использованием гипертекстовой информационной службы WWW - так называемой технологии intranet. Эта технология поддерживает дос­таточно простой способ представления текстовой и графической информации в виде гипертекстовых страниц, что позволяет быстро поместить самую свежую ин­формацию на WWW-серверы корпорации. Кроме того, она унифицирует просмотр информации с помощью стандартных программ - Web-броузеров, работа с кото­рыми несложна даже для неспециалиста. Сейчас многие крупные корпорации уже перенесли огромные кипы своих документов на страницы WWW-серверов, и со­трудники этих фирм, разбросанные по всему миру, используют информацию этих серверов через Internet или intranet. Получая легкий и более полный доступ к информации, сотрудники принимают решение быстрее, и качество этого решения, как правило, выше.

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

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

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

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

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

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

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

Вычислительные сети явились результатом эволюции компьютерных технологий.

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

* Основная цель сети - обеспечить пользователям сети потенциальную возмож­ность совместного использования ресурсов всех компьютеров.

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

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

* Использование вычислительных сетей дает предприятию следующие возмож­ности:

Разделение дорогостоящих ресурсов;

Совершенствование коммуникаций;

Улучшение доступа к информации;

Быстрое и качественное принятие решений;

Свобода в территориальном размещении компьютеров.

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

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

1.2.1. Связь компьютера с периферийными устройствами

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

интерфейс Centronics, предназначенный, как правило, для подключения принте­ров, и последовательный интерфейс RS-232C, через который подключаются мышь, модем и много других устройств. Интерфейс реализуется со стороны компьютера, совокупностью аппаратных и программных средств: контроллером ПУ и специальной программой, управляющей этим контроллером, которую часто называют драйвером соответствующего периферийного устройства.

Со стороны ПУ интерфейс чаще всего реализуется аппаратным устройством управ- ления, хотя встречаются и программно-управляемые периферийные устройства.

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

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

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

1.2. Основные проблемы построения сетей

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

Команды контроллера:

«Установить начало листа», «Переместить магнитную головку», «Сообщить состояние устройства» и др.

Рис. 1.6. Связь компьютера с периферийным устройством

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

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

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

Существуют как весьма специализированные интерфейсы, пригодные для под­ключения узкого класса устройств (например, графических мониторов высокого разрешения фирмы Vista), так и интерфейсы общего назначения, являющиеся стандартными и позволяющие подключать различные периферийные устройства. Примером такого интерфейса является интерфейс RS-232C, который поддерживается многими терминалами, принтерами, графопостроителями, манипуляторами типа «мышь» и многими другими устройствами.

1.2.2. Простейший случай взаимодействия двух компьютеров

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

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

Рассмотрим случай, когда пользователю, работающему с текстовым редакторе на персональном компьютере А, нужно прочитать часть некоторого файла, расположенного на диске персонального компьютера В. (рис. 1.7). Предположим, что мь связали эти компьютеры по кабелю связи через СОМ-порты, которые, как известно, реализуют интерфейс RS-232C (такое соединение часто называют нуль-модемным). Пусть для определенности компьютеры работают под управлением MS-DOS, хотя принципиального значения в данном случае это не имеет.

1.2. Основные проблемы построения сетей

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

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


Рис. 1.7. Взаимодействие двух компьютеров

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

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

Описанные функции приложения А могла бы выполнить сама программа тек­стового редактора, но включать эти функции в состав каждого приложения - тек­стовых редакторов, графических редакторов, систем управления базами данных и других приложений, которым нужен доступ к файлам, - не очень рационально (хотя существует большое количество программ, которые действительно самостоя­тельно решают все задачи по межмашинному обмену данными, например Kermit - программа обмена файлами через СОМ-порты, реализованная для различныхОС, Norton Commander 3.0 с его функцией Link. Гораздо выгоднее создать специальный программный модуль, который будет выполнять функции формирования со­общений-запросов и приема результатов для всех приложений компьютера. Как уже было ранее сказано, такой служебный модуль называется клиентом. На стороне же компьютера В должен работать другой модуль - сервер, постоянно ожидающий прихода запросов на удаленный доступ к файлам, расположенным на дискет этого компьютера. Сервер, приняв запрос из сети, обращается к локальному файлу и выполняет с ним заданные действия, возможно, с участием локальной ОС.

Программные клиент и сервер выполняют системные функции по обслужива­нию запросов приложений компьютера А на удаленный доступ к файлам компыютера В. Чтобы приложения компьютера В могли пользоваться файлами компьютера

А, описанную схему нужно симметрично дополнить клиентом для компьютера Ви

сервером для компьютера А.


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

Рис. 1.8. Взаимодействие программных компонентов при связи двух компьютеров

1.2. Основные проблемы построения сетей

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

1.2.3. Проблемы физической передачи данных по линиям связи

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

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

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

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

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



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

Рис. 1.9. Примеры представления дискретной информации

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

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

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

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

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

1.2.4. Проблемы объединения нескольких компьютеров

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

Топология физических связей

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

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

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

Рассмотрим некоторые, наиболее часто встречающиеся топологии.

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

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

Ячеистая топология (mesh) получается из полносвязной путем удаления некото­рых возможных связей (рис. 1.10, б). В сети с ячеистой топологией непосредствен­но связываются только те компьютеры, между которыми происходит интенсивный обмен данными, а для обмена данными между компьютерами, не соединенными прямыми связями, используются транзитные передачи через промежуточные узлы. Ячеистая топология допускает соединение большого количества компьютеров и характерна, как правило, для глобальных сетей.

Loading...Loading...