Лекция N 13 Локальные вычислительные сети

 

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

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

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

 

 

 

Рис.1. Структура типового пакета в ЛВС

 

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

 

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

По организации управления ЛВС могут быть разбиты на 2 класса:

· Сети с централизованным управлением, в которых существует хотя бы один выделенный сервер; обобщенная структурная схема такой ЛВС приведена на рис.2.

 

 

Рис.2. ЛВС с централизованным управлением

 

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

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

· Сети с архитектурой файл-сервер (ФС);

· Сети с архитектурой клиент-сервер.

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

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

 

Модель протоколов взаимодействия открытых систем

 

В конце 70-х годов в рамках международной организации по стандартизации была разработана модель Взаимосвязи Открытых Систем (ВОС) (Open System interconnection - OSI). Все задачи, которые необходимо решить для организации взаимодействия между объектами информационных систем, разделены на 7 отдельных процедур, или уровней. Любой уровень выполняет определенную логическую функцию и обеспечивает определенный набор услуг для расположенного над ним уровня. На рис.3 изображены компоненты ЛВС и их соответствие принятым уровням ВОС.

 

 

      РС или сервер          
  ПП                
        ЭВМ1   ЭВМ1   Уровни ВОС  
  СПО         Прикладной  
  Драйвер УПД         ПрД  
  УПД         Сеансовый  
            Транспортный  
            Системный  
            Канальный  
            Физический  
  Линия связи         Иногда выделяют 0: 0-й уровень, т.е. передающую среду
                   
  ПП - прикладная программа          
  СПО - сетевое программное обеспечение        
  УПД - устройство передачи данных          
  ПрД - представление данных          

 

Рис.4. Компоненты ЛВС и модель ВОС

 

На рис.4 уровни 5 - 7 ВОС реализуются средствами СПО, уровни 3 и 4 реализуются с помощью драйвера УПД, а уровни 1 и 2 реализуются самим УПД. Однако приведенная реализация уровней ВОС является далеко не единственной, например, уровни 1 - 4 могут быть реализованы с помощью интеллектуального сетевого адаптера (СА). Назначение и принципы функционирования СА будут рассмотрены далее.

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

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

Функции, выполняемые уровнем представления данных (6), заключаются в преобразовании форматов данных (необходимость в нем возникает ввиду использования различных ОС во взаимодействующих ЭВМ, например, MS DOS и NetWare, а иногда и ЭВМ с различной архитектурой), в кодировании/декодировании данных, проводимом с целью повышения защищенности производимых в сети работ от постороннего проникновения, и в компрессии/декомпрессии данных, передаваемых по линии связи, что дает возможность существенно повысить скорость передачи данных по этим линиям.

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

1. порядку следования битов и размерности символов в байтах;

2. порядку следования байтов, например, младшему байту в слове соответствует младший адрес в ЭВМ типа IBM PC с МП 80х86 и старший адрес в ЭВМ Macintosh;

3. представлению или кодировке символов;

4. структуре и синтаксису файлов.

Сеансовый уровень (5) определяет и контролирует диалог между сетевыми объектами, выполняя следующие функции:

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

2. определение времени наступления, длительности и режима сеанса связи;

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

4. восстановление соединения после ошибок во время сеанса связи без потери данных.

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

Сетевой уровень (3) должен решить следующие задачи:

1. установить сетевые соединения;

2. определить маршрутизацию в сети и связь между сетями.

Далее следует канальный уровень (2), который определяет следующие параметры сети:

1. логическую топологию сети передачи данных;

2. метод доступа к среде передаче данных;

3. физическую адресацию;

4. услуги по установлению соединений между станциями.

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

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

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

 

Устройства передачи данных (УПД) для ЛВС

 

Рассмотрим различные типы УПД, которые использовались для передачи данных между абонентами ЛВС.

1. Последовательные порты с интерфейсом RS-232 дают возможность организовать связь между двумя ЭВМ, используя достаточно простое ПО, имеющееся, например, в пакете Norton Commander или PC Tools. Максимальная частота передачи битов может доходить до 115000 Гц. Контроллер последовательного порта выполняет прием и передачу данных побайтно (посимвольно). Поэтому при приеме и передаче каждого байта ЦП должен обработать прерывание, что резко снижает эффективность работы ЭВМ. Ввиду этого использование последовательных портов в качестве интерфейсных устройств для ЛВС неэффективно.

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

3. Основным типом УПД, используемым в настоящее время в ЛВС, является сетевой адаптер (СА), который часто называют сетевой картой.

Структурная схема взаимодействия СА с его окружением приведена на рис.5.

 

 

Рис.5. Структурная схема взаимодействия СА с РС или сервером

 

СА, изображенный на рис.5, состоит из двух блоков – сопроцессора ЛВС и устройства связи с передающей средой. Сопроцессор ЛВС чаще всего строится на базе МП 80186, 80188 или 80588 и имеет собственную память объемом от 8 до 16 Кб. Перед установкой СА в РС или сервер необходимо определить и установить программно или на сетевой карте параметры, которые будут использоваться драйверами для управления работой СА:

адрес порта ввода-вывода;

номер используемого прерывания;

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

адрес разделяемой памяти или адрес постоянного ЗУ для удаленной загрузки РС, используемой в случае, если РС является бездисковой (не имеющей ни жесткого, ни гибкого диска).

Такое устройство СА позволяет передавать данные между ЭВМ сети пакетами достаточно большого объема, возбуждая прерывание к ЦП только после передачи всего пакета данных и обеспечивая этим практически параллельное функционирование СА по управлению обменом в ЛВС и ЦП по выполнению основных задач, возложенных на него в ЭВМ. Средняя скорость передачи данных описанными СА при использовании для обмена шин ISA (Industry Standart Bus) находится в пределах 5 - 7 Мбит/сек.

 

Для ЛВС с централизованным управлением наиболее распространенной являлась до недавнего времени сетевая ОС (СОС) NetWare фирмы Novell (65% от общего числа СОС, установленных в ЛВС), но в последние годы ее потеснила СОС Windows NT. Все же рассмотрим общие принципы функционирования СОС NetWare, учитывая достаточно широкое ее распространение на рынке СОС и в настоящее время.

 

Функционирование ЛВС под управлением СОС NetWare

 

В ЛВС, управляемой СОС NetWare, параллельно используются 2 операционные среды: NetWare на сервере и MS DOS или другая ОС на РС, но чаще всего именно MS DOS для IBM-совместимых ЭВМ. Обе системы работают независимо, взаимодействуя через функциональные вызовы и совместно используя среду передачи данных.

 

Функционирование РС в ЛВС под управлением СОС NetWare

 

Между NetWare на сервере и локальной ОС на РС находится там же на РС небольшая программа, выполняющая роль посредника между СОС NetWare и локальной ОС. В среде MS DOS эта программа называется оболочкой (shell). Эта программа имеет относительно небольшой объем - всего 45-60 Кбайт, что позволяет размещать ее в ОП каждой РС. Взаимодействие различных программ на РС показано на рис.1.

 

 

 

Рис.1. Взаимодействие программ на РС в ЛВС под управлением СОС NetWare

 

Будучи загруженной в ОП РС как резидентная программа, оболочка NetWare перехватывает запросы прикладных программ, организованные с помощью программных прерываний с номерами 21h (вызов стандартных функций DOS), 24h (вектор критических ошибок DOS) и 17h (передача данных в локальные порты), и определяет, где их необходимо обрабатывать - в MS DOS на РС или в СОС NetWare на сервере. Если запрос требует обработки на сервере, оболочка преобразует этот запрос в соответствии с необходимым протоколом, обеспечивая тем самым передачу запроса и прием в нужном адресе. На РС должны быть 2 файла с резидентными программами - NETx.COM (собственно оболочка) и IPX.COM (служба подготовки пакетов для передачи). После загрузки MS DOS в РC необходимо сначала загрузить программу IPX.COM, а затем - NETx.COM, где х - номер версии MS DOS и х > 2. Обычно это делается автоматически в результате выполнения MS DOS специально подготовленного заранее файла AUTOEXEC.BAT.

Оболочка NETx.COM организует взаимодействие с сервером через программу IPX, которая в свою очередь управляет работой СА. Программа IPX обеспечивает поддержку протокола обмена данными IPX/SPX и зависит от типа СА и конфигурации его параметров.

 

Функционирование сервера в ЛВС под управлением СОС NetWare

 

СОС NetWare обеспечивает в ЛВС режим централизованного управления, при котором одна или несколько ЭВМ выделяются для управления обменом в сети и на них устанавливается эта СОС. Эти ЭВМ являются серверами, а их диски доступны на любой РС сети. Установленная СОС является многозадачной и работает в реальном масштабе времени.

Серверы могут быть выделенными и невыделенными. Выделенный сервер не может быть использован как РС и выполняет только задачи управления сетью. Невыделенный сервер параллельно с задачей управления сетью может выполнять обычные пользовательские программы как на РС. В этом случае ошибка в пользовательской программе может привести к остановке всей сети, поэтому в ответственных случаях невыделенные серверы не рекомендуется использовать. Невыделенные серверы не поддерживаются СОС NetWare (NW), начиная с версии 3.1Х.

СОС NW версий 3.1Х являются 32-разрядными многозадачными ОС, работающими на МП 80х86, где х > 2, в защищенном режиме работы этого МП. Общее количество РС в ЛВС под управлением этой версии может доходить до 250. Как и все другие ОС, СОС NW взаимодействует с аппаратурой через драйверы.

При установке СОС NW версий 3.1Х стартовый диск сервера разбивают на два раздела. Первый из них объемом 3 - 5 Мбайт ( для СОС NW версии 4.1 рекомендуется 15 Мбайт) должен содержать MS DOS, программу server.exe и некоторые другие файлы, необходимые для запуска NW. Второй раздел форматируется специальным образом для использования его только NW и становится недоступным для MS DOS. Здесь находятся остальные модули СОС, некоторые каталоги, файлы для доступа к ним с РС.

В ЭВМ, используемой в качестве сервера, могут быть 2 и более дисков. После загрузки нескольких резидентных программ, входящих в состав сетевой оболочки для MS DOS, на РС становится доступным еще один диск; пользователь оказывается в каталоге с именем LOGIN. Запустив из этого каталога программу slist.exe, пользователь может увидеть список активных серверов. При помощи программы login.exe пользователь подключается к одному из них, указав свое имя и пароль, которые он должен получить у администратора сети. Если процедура подключения к серверу завершилась успешно, на РС появляются дополнительные диски, которые являются каталогами разделов сервера.

Файловая система сервера

 

Одним из главных достоинств СОС NW является наличие эффективной файловой системы. На любом томе наряду с FAT (таблица расположения файлов, аналогичная по своей структуре таблице FAT в MS DOS) используется таблица элементов каталогов DET, которая содержит информацию об элементах каталогов на данном томе. В качестве элемента каталога может быть файл или каталог (подкаталог). Под каждый элемент DET отводится 128 байт, в которых содержатся следующие данные:

ü название файла и имя его владельца, номер первого блока на жестком диске, где расположен этот файл, дата последнего изменения файла;

ü название каталога;

ü атрибуты файла;

ü атрибуты каталога.

Использование таблиц DET и FAT поясняется с помощью рис.2.

 

 

 

Рис.2. Использование таблиц DET и FAT

 

Например, пусть пользователю требуется считать файл NC.EXE. Сначала выполняется поиск этого файла в таблице DET. Далее определяется возможность работы данного пользователя с этим файлом. Если этот файл доступен пользователю для чтения, то из таблицы FAT считывается цепочка блоков, в которых хранится искомый файл (адрес первого блока находится в таблице DET). В этом примере адрес первого блока равен 2, а полная цепочка состоит из последовательности блоков 2 и 3. После этого выполняется обращение к жесткому диску сервера для считывания этих блоков. Затем в зависимости от реализованного в ЛВС способа организации обработки данных, запрошенных пользователем (обработке на РС всего запрошенного файла или, в другом случае, обработке этого файла на сервере и затем передаче пользователю на РС только требующихся ему данных), необходимые данные передаются на запросившую их РС.

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

кэширование таблиц DET и FAT;

хэширование таблиц DET;

кэширование файлов;

элеваторный поиск.

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

Хэширование состоит в использовании индекса по названиям элементов таблицы DET, что ускоряет поиск нужной записи в этой таблице и уменьшает время доступа к данным.

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

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

 

Система отказоустойчивости в ЛВС с СОС NW

 

В рассматриваемых ЛВС существует 3 уровня аппаратной и программной реализации системы отказоустойчивости.

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

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

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

Первый и второй уровни системы отказоустойчивости реализованы в СОС NW, начиная с версий для МП 80286. Третий уровень реализован в специальных версиях для МП 80386.

 

Система слежения за транзакциями

 

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

 

Обзор средств обеспечения

отказоустойчивости и безопасности работы ЛВС

 

Перечислим основные причины нарушения отказоустойчивости и безопасности работы ЛВС.

1. Сбои оборудования, вызванные:

1.1. нарушением работы сетевого кабеля,

1.2. отключением электропитания,

1.3. отказом жестких дисков,

1.4. нарушением работы сервера, РС и СА.

2. Некорректная работа ПО, приводящая к потере или порче данных:

2.1. из-за ошибок в сетевом или прикладном ПО,

2.2. из-за заражения сети компьютерными вирусами.

3. Несанкционированный доступ, копирование или изменение информации - случайное или умышленное, следствием чего являются:

3.1. искажение либо уничтожение данных,

3.2. ознакомление посторонних лиц с информацией, составляющей коммерческую или иную тайну.

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

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

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

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

Защита от нарушений, изложенных в пункте 1.4, для серверов также была рассмотрена в предыдущем разделе.

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

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

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