Технология совместного использования сетевых ресурсов
Под ресурсами ПК будет пониматься любой из следующих элементов:
• логические диски, включая накопители на CD-ROM, ZIP, DVD и другие аналогичные устройства;
• каталоги (папки) с подкаталогами (вложенными папками) или без них, а также содержащиеся в них файлы;
• подключенные к ПК устройства: принтеры, модемы и др.
Ресурс, доступный только с ПК, на котором он находится, называется локальным. Ресурс ПК, доступный для других компьютеров сети, называется разделяемым или сетевым (общим, совместно используемым). Локальный ресурс можно сделать разделяемым, и, наоборот, разделяемому ресурсу можно вернуть статус локального, т. е. запретить доступ к нему других пользователей сети.
Создание разделяемых сетевых ресурсов и доступ к ним обеспечиваются специальными сетевыми операционными системами. Базовые сетевые возможности сетевых ОС позволяют копировать файлы с одного ПК сети на другой, с одного компьютера сети обрабатывать данные (вводить, редактировать, удалять, производить поиск), размещенные на другом. Для некоторых сетевых ОС можно также запустить программу, размещенную в памяти одного компьютера, которая будет оперировать данными, хранящимися на другом ПК.
Обычно используются один или несколько мощных ПК (выделенные серверы), которые предоставляют свои ресурсы для совместного использования в сети. Система коллективного доступа работает по принципу разделения времени работы главного компьютера.
В зависимости от используемых сетевых ресурсов в иерархических сетях различают серверы следующих типов.
Файловый сервер. В этом случае на сервере находятся совместно обрабатываемые файлы или (и) совместно используемые программы. В этом случае на рабочих станциях находится только небольшая (клиентская) часть программ, требующая незначительных ресурсов. Программы, допускающие такой режим работы, называются программами с возможностью инсталляции в сети. Требования к мощности сервера и пропускной способности сети при таком способе использования определяются количеством одновременно работающих рабочих станций и характером используемых программ.
Сервер баз данных. На сервере размещается база данных, которая может пополняться с различных рабочих станций или (и) выдавать информацию по запросам с рабочей станции. Возможны два принципиально различающихся режима обработки запросов с рабочей станции или редактирования записей в базе данных:
• с сервера последовательно пересылаются записи базы данных на рабочую станцию, где производится собственно фильтрация записей и отбор необходимых;
• сервер сам отбирает необходимые записи из БД (реализует запрос) и пересылает их на рабочую станцию.
Во втором случае снижаются нагрузка на сеть и требования к рабочим станциям, но резко возрастают требования к вычислительной мощности сервера. Тем не менее именно такой способ обработки запросов является наиболее эффективным. Указанный способ удовлетворения запросов с рабочих станций называется режимом клиент-сервер, его реализуют специальные средства работы с современными сетевыми базами данных. В системах клиент-сервер обработка данных разделена между двумя объектами: клиентом и сервером. Клиент - это задача, рабочая станция, пользователь. Он может сформировать запрос для сервера: считать файл, осуществить поиск записи и т.п. Сервер - это устройство или компьютер, выполняющий обработку запроса. Он отвечает за хранение данных, организацию доступа к этим данным и передачу данных клиенту.
Принт-сервер. К компьютеру небольшой мощности подключается достаточно производительный принтер, на котором может быть распечатана информация сразу с нескольких рабочих станций. Программное обеспечение организует очередь заданий на печать, а также идентифицирует отпечатанную информацию специальными страницами (закладками), которые разделяют печатные материалы различных пользователей.
Почтовый сервер. На сервере хранится информация, отправляемая и получаемая как по локальной сети, так и извне (например, по модему). В любое удобное для него время пользователь может просмотреть поступившую на его имя информацию или отправить через почтовый сервер свою.
Топологии
Топология – геометрическое отображение отношений в сети. По топологии ЛВС делятся: на общую шину, кольцо, звезду и др.
Топология “звезда”
Звездообразная топология сети – разновидность сети, где каждый терминал соединен с центральной станцией (рис. 2).
Эта топология взята из области больших электронных вычислительных машин. Здесь файловый сервер находится в “центре”.
Достоинства сети:
• повреждение кабеля является проблемой для одного конкретного компьютера и в целом не сказывается на работе сети;
• просто выполняется подключение, так как рабочая станция должна соединяться только с сервером;
• механизмы защиты против несанкционированного доступа оптимальны;
• высокая скорость передачи данных от рабочей станции к серверу, так как оба ПК непосредственно соединены друг с другом.
Недостатки:
• в то время как передача данных от рабочей станции к серверу (и обратно) происходит быстро, скорость передачи данных между отдельными рабочими станциями мала;
• мощность всей сети зависит от возможностей сервера, если он недостаточно оснащен или плохо сконфигурирован, то будет являться тормозом для всей системы;
• невозможна коммуникация между отдельными рабочими станциями без помощи сервера.
Рис 2. Топология типа “звезда”
Топология с сервером в центре, практически, не реализуется, так как в этом случае сервер должен иметь много сетевых адаптеров, рабочие станции подключаются к концентратору (хабу).
Кольцевая топология
Сеть типа “кольцо” – разновидность сети, в которой каждый терминал подключен к двум другим соседним терминалам кольца.
В этом случае все рабочие станции и сервер соединены друг с другом по кольцу, по которому посылается информация, снабженная адресом получателя. Рабочие станции получают соответствующие данные, анализируя адрес посланного сообщения (рис. 3).
Рис. 3. Кольцевая топология
Достоинство сети типа “кольцо”:
• рабочие станции могут коммутироваться друг с другом без помощи сервера.
Недостатки:
• время передачи данных увеличивается пропорционально числу соединенных в кольцо компьютеров;
• каждая рабочая станция причастна к передаче данных, выход из строя одной станции может парализовать всю сеть, если не используются специальные переходные соединения;
• при подключении новых рабочих станций сеть должна быть кратковременно выключена.
Шинная топология
Такая сеть похожа на центральную линию, к которой подключены сервер и отдельные рабочие станции. Шинная топологии имела широкое распространение в прежние годы, что, прежде всего, можно объяснить небольшими потребностями в кабеле (рис. 4).
Рис. 4. Шинная топология
Достоинства шинной топологии:
• небольшие затраты на кабели;
• рабочие станции в любой момент времени могут быть установлены или отключены без прерывания работы всей сети;
• рабочие станции могут коммутироваться друг с другом без помощи сервера.
Недостатки:
• при обрыве кабеля выходит из строя весь участок сети от места разрыва;
• возможность несанкционированного подключения к сети, поскольку для увеличения числа рабочих станций нет необходимости в прерывании работы сети.
Комбинированная структура ЛВС
Наряду с известными топологиями вычислительных сетей: кольцо, звезда и шина – на практике применяется и комбинированная. Она образуется в основном в виде комбинаций вышеназванных топологий вычислительных сетей (рис. 5).
Рис 5. Комбинированная структура
Вычислительные сети с комбинированной структурой применяются там, где невозможно непосредственное применение базовых сетевых структур в чистом виде. Для подключения большого числа рабочих станций применяют сетевые усилители и(или) коммутаторы. Коммутатор, обладающий одновременно и функциями усилителя, называют активным концентратором.
Пассивный концентратор обычно используют как разветвитель. Он не нуждается в усилителе. Предпосылкой для подключения пассивного концентратора является то, что максимальное возможное расстояние до рабочей станции не должно превышать нескольких десятков метров.
Семиуровневая модель ЛВС
ЛВС должна иметь надежную и быструю систему передачи данных, стоимость которой должна быть меньше по сравнению со стоимостью подключаемых рабочих станций. Иными словами, стоимость передаваемой единицы информации должна быть значительно ниже стоимости обработки информации в рабочих станциях. Исходя из этого ЛВС, как система распределенных ресурсов, должна основываться на следующих принципах:
• единой передающей среды;
• единого метода управления;
• единых протоколов;
• гибкой модульной организации;
• информационной и программной совместимости.
Международная организация по стандартизации (ISO), основываясь на опыте многомашинных систем, который был накоплен в разных странах, выдвинула концепцию архитектуры открытых систем – эталонную модель, используемую при разработке международных стандартов.
На основе этой модели вычислительная сеть предстает как распределенная вычислительная среда, включающая в себя большое число разнообразных аппаратных и программных средств. По вертикали данная среда представляется рядом логических уровней, на каждый из которых возложена одна из задач сети. По горизонтали информационно-вычислительная среда делится на локальные части (открытые системы), отвечающие требованиям и стандартам структуры открытых систем.
Часть открытой системы, выполняющая некоторую функцию и входящая в состав того или иного уровня, называется объектом.
Правила, по которым осуществляется взаимодействие объектов одного и того же уровня, называются протоколом.
Протокол – набор правил и процедур, регламентирующий обмен данными.
Протоколы определяют порядок обмена информацией между сетевыми объектами. Они позволяют взаимодействующим рабочим станциям посылать друг другу вызовы, интерпретировать данные, обрабатывать ошибочные ситуации и выполнять множество других различных функций. Суть протоколов заключается в регламентированных обменах точно специфицированными командами и ответами на них (например, назначение физического уровня связи – передача блоков данных между двумя устройствами, подключенными к одной физической среде).
Для протокола передачи данных требуется следующая информация:
• Синхронизация. Под синхронизацией понимают механизм распознавания начала блока данных и его конца.
• Инициализация. Под инициализацией понимают установление соединения между взаимодействующими партнерами. При условии, что приемник и передатчик используют один и тот же протокол, синхронизация устанавливается автоматически.
• Блокирование. Под блокированием понимают разбиение передаваемой информации на блоки данных строго определенной максимальной длины (включая опознавательные знаки начала блока и его конца).
• Адресация. Адресация обеспечивает идентификацию различного используемого оборудования, которое обменивается друг с другом информацией во время взаимодействия.
• Обнаружение ошибок. Под обнаружением ошибок понимают установку и проверку контрольных битов.
• Нумерация блоков. Текущая нумерация блоков позволяет установить ошибочно передаваемую или потерявшуюся информацию.
• Управление потоком данных. Управление потоком данных служит для распределения и синхронизации информационных потоков. Так, например, если не хватает места в буфере устройства данных или данные не достаточно быстро обрабатываются в периферийных устройствах, сообщения и(или) запросы накапливаются.
• Методы восстановления. После прерывания процесса передачи данных используют методы восстановления, чтобы вернуться к определенному положению для повторной передачи информации.
• Разрешение доступа. Распределение, контроль и управление ограничениями доступа к данным вменяются в обязанность пункта разрешения доступа (например, “только передача” или “только прием”).
Каждый уровень подразделяется на две части:
• спецификация услуг;
• спецификация протокола.
Спецификация услуг определяет, что делает уровень, а спецификация протокола - как он это делает. Причем каждый конкретный уровень может иметь более одного протокола.
Большое число уровней, используемых в модели, обеспечивает декомпозицию информационно-вычислительного процесса на простые составляющие. В свою очередь, увеличение числа уровней вызывает необходимость включения дополнительных связей в соответствии с дополнительными протоколами и интерфейсами. Интерфейсы (макрокоманды, программы) зависят от возможностей используемой ОС.
Международная организация по стандартизации предложила семиуровневую модель, которой соответствует и программная структура (рис. 6).
Рис 6. Уровни управления и протоколы ЛВС
Рассмотрим функции, выполняемые каждым уровнем программного обеспечения.
1. Физический – осуществляет как соединения с физическим каналом, так и отсоединение, управление каналом, а также определяет скорость передачи данных и топологию сети.
2. Канальный – осуществляет обрамление передаваемых массивов информации вспомогательными символами и контроль передаваемых данных. В ЛВС передаваемая информация разбивается на несколько пакетов или кадров. Каждый пакет содержит адреса источника и места назначения, а также средства обнаружения ошибок.
3. Сетевой – определяет маршрут передачи информации между сетями (ПЭВМ), обеспечивает обработку ошибок, а также управление потоками данных. Основная задача сетевого уровня - маршрутизация данных (передача данных между сетями). Специальные устройства – маршрутизаторы (Router) определяют для, какой сети предназначено то или другое сообщение, и направляют эту посылку в заданную сеть. Для определения абонента внутри сети используется адрес узла (Node Address). Для определения пути передачи данных между сетями на маршрутизаторах строятся таблицы маршрутов (Routing Tables), содержащие последовательность передачи данных через маршрутизаторы. Каждый маршрут содержит адрес конечной сети, адрес следующего маршрутизатора и стоимость передачи данных по этому маршруту. При оценке стоимости могут учитываться количество промежуточных маршрутизаторов, время, необходимое на передачу данных, денежная стоимость передачи данных по линии связи. Для построения таблиц маршрутов наиболее часто используют либо метод векторов либо статический метод. При выборе оптимального маршрута применяют динамические или статические методы. На сетевом уровне возможно применение одной из двух процедур передачи пакетов:
• датаграмм – когда часть сообщения или пакет независимо доставляется адресату по различным маршрутам, определяемым сложившейся динамикой в сети. При этом каждый пакет включает в себя полный заголовок с адресом получателя. Процедуры управления передачей таких пакетов по сети называются датаграммной службой;
• виртуальных соединений – когда установление маршрута передачи всего сообщения от отправителя до получателя осуществляется с помощью специального служебного пакета – запроса на соединение. В таком случае для этого пакета выбирается маршрут и, при положительном ответе получателя на соединение закрепляется для всего последующего трафика (потока сообщений в сети передачи данных) и получается номер соответствующего виртуального канала (соединения) для дальнейшего использования его другими пакетами того же сообщения. Пакеты, которые передаются по одному виртуальному каналу, не являются независимыми и поэтому включают сокращенный заголовок, включающий порядковый номер пакета, принадлежащему одному сообщению. Недостатками по сравнению с датаграммой являются сложность в реализации, увеличение накладных расходов, вызванных установлением и разъединением сообщений.
4. Транспортный – связывает нижние уровни (физический, канальный, сетевой) с верхними уровнями, которые реализуются программными средствами. Этот уровень разделяет средства формирования данных в сети от средств их передачи. Здесь осуществляется разделение информации по определенной длине и уточняется адрес назначения. Транспортный уровень позволяет мультиплексировать передаваемые сообщения или соединения. Мультиплексирование сообщений позволяет передавать сообщения одновременно по нескольким линиям связи, а мультиплексирование соединений – передает в одной посылке несколько сообщений для различных соединений.
5. Сеансовый – на данном уровне осуществляется управление сеансами связи между двумя взаимодействующими пользователями (определяет начало и окончание сеанса связи: нормальное или аварийное; определяет время, длительность и режим сеанса связи; определяет точки синхронизации для промежуточного контроля и восстановления при передаче данных; восстанавливает соединение после ошибок во время сеанса связи без потери данных).
6. Представительский – управляет представлением данных в необходимой для программы пользователя форме, генерацию и интерпретацию взаимодействия процессов, кодирование/декодирование данных, в том числе компрессию и декомпрессию данных. На рабочих станциях могут использоваться различные операционные системы: DOS, UNIX, OS/2. Каждая из них имеет свою файловую систему, свои форматы хранения и обработки данных. Задачей данного уровня является преобразование данных при передаче информации в формат, который используется в информационной системе. При приеме данных этот уровень представления данных выполняет обратное преобразование. Таким образом, появляется возможность организовать обмен данными между станциями, на которых используются различные операционные системы. Форматы представления данных могут различаться по следующим признакам:
• порядок следования битов и размерность символа в битах;
• порядок следования байтов;
• представление и кодировка символов;
• структура и синтаксис файлов.
Компрессия или упаковка данных сокращает время передачи данных. Кодирование передаваемой информации обеспечивает защиту ее от перехвата.
7. Прикладной – в его ведении находятся прикладные сетевые программы, обслуживающие файлы, а также выполнение вычислительных, информационно-поисковых работ, логических преобразований информации, передачи почтовых сообщений и т.п. Главная задача этого уровня – обеспечение удобного интерфейса для пользователя.
На разных уровнях обмен происходит различными единицами информации: битами, кадрами, пакетами, сеансовыми сообщениями, пользовательскими сообщениями.
Протоколы передачи данных
В различных сетях существуют различные протоколы обмена данными. Наибольшее распространение получила конкретная реализация методов доступа в сетях типа Ethernet, Arcnet и Token-Ring.
Метод доступа в сетях Ethernet
Этот метод доступа, разработанный фирмой Xerox в 1975 году, пользуется наибольшей популярностью. Он обеспечивает высокую скорость передачи данных и надежность.
Сообщение, отправляемое одной рабочей станцией, принимается одновременно всеми остальными. Сообщение включает в себя адрес станции назначения и адрес станции отправителя. Та станция, которой предназначено сообщение, принимает его, остальные игнорируют.
Метод доступа в сетях Ethernet является методом множественного доступа с прослушиванием несущей и разрешением коллизий (конфликтов) (CSMA/CD - Carrier Sense Multiple Access/Collision Detection)
Перед началом передачи рабочая станция определяет, свободен канал или занят. Если канал свободен, станция начинает передачу. Ethernet не исключает возможности одновременной передачи сообщений двумя или несколькими станциями. Аппаратура автоматически распознает такие конфликты, называемые коллизиями. После обнаружения конфликта станции задерживают передачу на некоторое время, затем передача возобновляется.
Реально конфликты приводят к уменьшению быстродействия сети только в том случае, если в сети работают не менее 80-100 станций.
Метод доступа в сетях Arcnet
Этот метод доступа разработан фирмой Datapoint Corp. Он также получил широкое распространение в основном благодаря тому, что оборудование Arcnet дешевле, чем оборудование Ethernet или Token-Ring. Технология Arcnet используется в локальных сетях с топологией “звезда”. Один из компьютеров создает специальный маркер (сообщение специального вида), который последовательно передается от одного компьютера к другому.
Если станция желает передать сообщение другой станции, она должна дождаться маркера и добавить к нему сообщение, дополненное адресом отправителя и адресом станции назначения. Когда пакет дойдет до станции назначения, сообщение будет “отцеплено” от маркера и передано станции.
Метод доступа в сетях Token-Ring
Метод доступа Token-Ring был разработан фирмой IBM и рассчитан на кольцевую топологию сети.
Этот метод напоминает Arcnet, так как тоже использует маркер, передаваемый от одной станции к другой. В отличие от Arcnet при методе доступа в сетях Token-Ring имеется возможность назначать разные приоритеты разным рабочим станциям.