- •1.1. Информация и сигналы
- •1.2. Информационные технологии и системы
- •База знаний;
- •Механизм вывода;
- •Интерфейс и пользователь.
- •1.3. Передача и оценка информации
- •1.4. Алгоритмы
- •2.1. Цели создания, назначение и структура еаис
- •2.2. Этапы развития еаис
- •2.3. Ведомственная интегрированная телекоммуникационная сеть
- •3.1. Общие принципы и органы управления
- •3.2. Правовые основы применения электронных документов и информационных технологий в таможенном деле и торговле
- •Глава 1. Общие положения.
- •Глава 2. Условия использования электронной цифровой подписи. Глава 3. Удостоверяющие центры.
- •Глава 4. Особенности использования электронной цифровой подписи. Глава 5. Заключительные и переходные положения.
- •3.3. Основные направления развития
- •4.1. Назначение и классификация вычислительных сетей
- •4.2. Физическая передающая среда для связи компьютеров
- •4.3. Эталонная модель взаимодействия вычислительных систем
- •4.4. Устройства организации взаимодействия в вычислительных сетях
- •4.5. Принципы управления и доступа в вычислительных сетях
- •4.6. Глобальная сеть Интернет
- •4.7. Параметры рабочих станций и вычислительных сетей
- •4.8. Контроль и восстановление
- •4.9. Средства вычислительных сетей таможенных органов
- •5.1. Размещение и организация
- •5.2. Понятия базы данных и системы управления базами данных
- •5.3. Файловая модель
- •5.4. Иерархическая и сетевая модели представления данных
- •5.5. Реляционная модель данных
- •5.6. Системы управления базами данных
- •5.7. Классификация и кодирование
- •5.8. Базы данных еаис
- •5.9. Информационно-поисковые системы
- •Август 14.08.2007
- •Январь 27.01.2007
4.3. Эталонная модель взаимодействия вычислительных систем
Назначение модели OSI
Универсальный тезис о пользе стандартизации, справедливый для всех отраслей, в вычислительных сетях приобретает особое значение, поскольку представляет собой соединение разного оборудования, а, значит, проблема совместимости является одной из наиболее важных. Без принятия всеми произ-
191
водителями общепринятых правил построения оборудования прогресс в создании сетей не возможен. Поэтому все развитие вычислительной техники в конечном счете базируется на стандартах.
Для упорядочения разработки сетевых программных средств и обеспечения возможности взаимодействия создаваемых вычислительных систем в 1984 г. Международной организацией по стандартизации (International Standart Organization - ISO) была предложена семиуровневая Эталонная модель взаимодействия открытых систем (Open System Interconnection - OSI), которая описывает взаимосвязи в открытых системах применительно к взаимодействию вычислительных сетей [13, 14,19, 29,39,40].
В широком смысле открытой системой может быть любая система (ЭВМ, вычислительная сеть, ОС, программный пакет, другие аппаратные и программные продукты), построенная в соответствии с открытыми спецификациями, которые применительно к вычислительной технике представляют собой формализованное описание аппаратных или программных компонентов, способов их взаимодействия, условий эксплуатации, ограничений. Понятно, что не всякая спецификация является стандартом. В свою очередь, под открытыми спецификациями понимаются опубликованные, общедоступные, соответствующие стандартам и принятые в результате достижения согласия после всестороннего обсуждения всеми заинтересованными сторонами.
Использование открытых спецификаций позволяет создавать вычислительные сети из продуктов разных производителей.
Для реальных сложных систем полная открытость является недостижимым идеалом. Как правило, даже в системах, назваемых открытыми, этому определению соответствуют только некоторые ее части.
Так, например, часто внешним пользователям дается подробное описание только внешнего интерфейса для доступа к операционной системе, но не ее ядра. Это позволяет легко переносить приложения из среды одной версии операционной системы в среду другой версии. Чем больше открытых спецификаций использовано при разработке системы, тем более открытой она является.
Модель OSI касается только одного аспекта - открытости средств при взаимодействии устройств, объединенных в вычислительную сеть.
Если вычислительные сети построены с соблюдением принципов открытости, то это позволяет обеспечить:
-
построение сети из аппаратных и программных средств различных производителей, придерживающихся одного и того же стандарта;
-
упрощение замены отдельных компонентов сети другими, более совершенными и в дальнейшем совершенствование работы сети с минимальными затратами;
-
возможность легкого сопряжения одной сети с другой;
-
простоту освоения и обслуживания сети.
Ярким примером открытой системы является международная сеть Интернет, развивающаяся в полном соответствии с требованиями, предъявляемыми к открытым системам. В разработке ее стандартов принимают участие тысячи специалистов - пользователей этой сети из различных университетов, научных
192
организаций и фирм - производителей вычислительной аппаратуры и программного обеспечения, работающих в разных странах. В результате сеть Интернет сумела объединить в себе самое разнообразное оборудование и программное обеспечение огромного числа независимых сетей, разбросанных по всему миру.
Организация взаимодействия между устройствами в сети является сложной задачей. Как известно, для решения сложных задач используется универсальный прием - декомпозиция, т.е. разбиение одной сложной задачи на несколько более простых задач-модулей. Процедура декомпозиции включает в себя четкое определение функций каждого модуля, решающего отдельную задачу, и интерфейсов между ними. В результате достигается логическое упрощение задачи, кроме того, появляется возможность модификации отдельных модулей без изменения остальной части системы.
Средства сетевого взаимодействия, конечно, тоже могут быть представлены в виде иерархически организованного множества модулей. При обмене сообщениями участники сетевого обмена должны принять множество решений: согласовать уровни и форму электрических сигналов, способ определения длины сообщений, договориться о методах контроля достоверности и т.п. Другими словами, соглашения должны быть приняты для всех уровней, начиная от самого низкого - уровня передачи битов - до самого высокого, реализующего сервис для пользователей вычислительной сети.
Уровни модели
Разработанная модель ISO с 1984 г. стала международным стандартом сетевых коммуникаций - основой сетевого администрирования.
Поскольку основное назначение ЛВС - распределение ресурсов ЭВМ: программ, памяти, терминалов, то в соответствии с этим она как система распределенных ресурсов должна базироваться на следующих основных принципах:
-
единой передающей среды;
-
единого метода управления;
-
единых протоколов;
-
гибкой модульной организации;
-
информационной и программной совместимости.
В соответствии с этим сетевая модель OSI представляет собой многоуровневый подход к сетям, при котором каждый логический уровень модели описывает соответствующую часть процесса взаимодействия. Всего в модели выделено семь уровней взаимодействия (рис. 4.20).
Все уровни модели OSI строго взаимосвязаны между собой. Задача каждого уровня - предоставление услуг вышестоящему уровню без раскрытия способов реализации этих услуг. Программное обеспечение сети, работающее на каждом уровне, реализует определенные функции в соответствии с набором протоколов и интерфейсов.
Верхние три уровня - это уровни взаимодействия с пользователями (прикладной, уровень представления, сеансовый), транспортный - описывает управление
] 3 К). В. Малышснко
193
Для описания взаимодействия программных и аппаратных элементов уровней OSI используются протоколы и интерфейсы. Соответствующие международные стандарты описывают, что делает уровень и как он это делает. Эти стандарты переведены и утверждены в качестве российских стандартов.
Протоколом передачи данных, или сетевым протоколом, называется свод правил взаимодействия объектов одноименного уровня, а также форматы, передаваемые между объектами блоков данных (сообщений).
Суть протоколов заключается в регламентированных (многошаговых) обменах специальными командами и ответами на них (например, при передаче файлов от одной ЭВМ к другой эти файлы разбиваются на отдельные части, которые далее определенным образом группируются).
Разделяя на уровни, сетевая модель OSI делает понятной и упрощает совместную работу оборудования и программного обеспечения за счет ясности взаимодействия компонентов.
В модели OSI выделяют протоколы двух типов: с установлением соединения (Connection-Oriented Network Service, CONS), при которых ЭВМ отправителя и получателя сначала определяют параметры для установленных правил обмена, а затем передают данные и без предварительного установления соединения (Connectionless Network Service, CLNS), когда ЭВМ сразу начинают обмен данными без предварительного установления соединения. Протоколы второго типа называют еще дейтаграммными протоколами.
Заметим, что каждый конкретный уровень имеет более одного протокола, а функции протоколов реализуются в специальных программах, называемых драйверами.
Набор протоколов для организации взаимодействия называют стеком коммуникационных протоколов.
Интерфейсы описывают процедуры (правила) взаимодействия объектов смежных уровней и форматы информации, передаваемой между этими объектами.
Примером одного из интерфейсов является интерфейс подключения пользователей к сетям передачи данных Х.25. Он описан в соответствующих спецификациях, в которых определен порядок и правила взаимодействия оконечного оборудования обработки данных DTE (Data Terminal Equipment) и оконечного оборудования цепей передачи данных DCE (Data Circuit-terminating Equipment). Роль DTE выполняет модем или цифровое устройс-
194
тво сопряжения для подключения к сети передачи данных. В качестве DCE может выступать хост-машина, контроллер или концентратор, обслуживающий удаленные терминалы, интерфейсный компьютер для подключения к другой сети и т.д.
195
Функции уровней
Рассмотрим функции, реализуемые на различных уровнях модели.
Прикладной (седьмой) - самый верхний уровень модели OSI. Он обеспечивает управление прикладными процессами: разрешает доступ к сетевым службам, которые непосредственно поддерживают сеть (например, к сетевой пересылке файлов, обработке сообщений и запросов к базам данных); обеспечивает создание документа (сообщения, рисунка и др.) с помощью специальных приложений, т.е. программ, реализующих заданную функцию (обработку данных) в определенной области. На этом уровне определяется круг прикладных сетевых программ, обслуживающих файлы, а также выполняются вычислительные, информационно-поисковые операции, логические преобразования информации, передача почтовых сообщений и т.д.
По сути этот уровень представляет собой набор разнообразных протоколов, с помощью которых пользователи сети получают доступ к разделяемым ресурсам, таким как файлы, принтеры или гипертекстовые Web-страницы, а также организуют свою совместную работу, например, с помощью протокола электронной почты. Единица данных, которой оперирует прикладной уровень, обычно называется сообщением (message).
Уровень представления (шестой) управляет представлением данных в формат, необходимый для сетевых коммуникаций. Он преобразует исходящие сообщения в общий формат, который может быть передан по сети, а входящие сообщения в формат, понятный принимающему приложению. Этот уровень отвечает за преобразование протоколов, кодирование и декодирование, сжатие (упаковку) и развертывание (распаковку) данных. Сжатие сокращает время передачи, а кодирование повышает помехозащищенность передаваемой информации.
Здесь же могут выполняться шифрование и дешифрование данных, благодаря чему секретность обмена данными обеспечивается сразу для всех прикладных служб. Примером такого протокола является протокол Secure Socket Layer (SSL), который обеспечивает секретный обмен сообщениями для протоколов прикладного уровня стека TCP/IP в сети Интернет при совершении платежей с помощью банковских карт [45].
Одна из задач этого уровня - преобразование данных в формат, используемый конкретной информационной системой, поскольку в ЛВС могут использоваться разные операционные системы (DOS, UNIX, Windows), имеющие свою файловую структуру и форматы представления данных.
При приеме данных здесь же осуществляется обратное преобразование. Операционная система ЭВМ определяет (фиксирует) места нахождения данных (оперативная память, жесткий диск и т.д.) и обеспечивает взаимодействие со следующим уровнем. Таким образом, организуется обмен между ЭВМ, использующими различные операционные системы.
Сеансовый (пятый) уровень определяет правила организации цикла взаимодействия абонентов сети, называемого сеансом (session). На этом уровне определяются правила управления параметрами сеанса, обмена данными или
196
сообщениями и прекращения работы по завершению сеанса, точки синхронизации для промежуточного контроля и восстановления передаваемых данных, порядок восстановления соединения при обнаружении ошибок в процессе сеанса связи. Кроме того, здесь решаются вопросы идентификации и управления доступом к информации сеанса, что позволяет только определенным сторонам принимать участие в сеансе.
На сеансовом уровне определяются моменты времени и объекты передачи данных, правила поддержки соединения в перерывах между передачами сообщений, чтобы избежать закрытия канала связи в период отсутствия активности.
Транспортный (четвертый) уровень поддерживает управление потоком данных между участниками сети (сетей), осуществляя это путем разделения (декомпозиции) длинных потоков на фрагменты, которые вписываются в максимально возможный для используемого интерфейса (протокола) размер пакета данных.
На этом уровне дается порядок проверки на наличие ошибок для обеспечения необходимой достоверности передаваемых данных и соединения отдельных пакетов в исходные данные после получения. Кроме того, этот уровень обеспе-чивас г подтверждение успешной передачи, а для пакетов, доставленных с ошибками, организует повторную передачу.
Модель OSI определяет пять классов сервиса, предоставляемых транспортным уровнем. Эти виды сервиса отличаются качеством предоставляемых услуг: срочностью, возможностью восстановления прерванной связи, наличием средств мультиплексирования нескольких соединений между различными прикладными протоколами через общий транспортный протокол, а главное - способностью к обнаружению и исправлению ошибок передачи, таких как искажение, потеря и дублирование пакетов. Выбор варианта сервиса транспортного уровня определяется, с одной стороны, степенью надежности решения задачи приложениями и протоколами более высоких уровней, чем транспортный; с другой стороны, надежностью системы транспортировки данных в сети, обеспечиваемой уровнями, расположенными ниже транспортного, - сетевым, канальным и физическим. Так, если качество каналов передачи связи очень высокое и вероятность возникновения ошибок, не обнаруженных протоколами более низких уровней, невелика, то разумно воспользоваться одним из простых сервисов транспортного уровня, не обремененного многочисленными проверками, квотированием и другими приемами повышения надежности. Если же транспортные средства нижних уровней изначально очень ненадежны, то целесообразно обратиться к наиболее развитому сервису транспортного уровня, который предполагает использование максимума способов для обнаружения и устранения ошибок с помощью предварительного установления логического соединения, контроля доставки сообщений по контрольным суммам и циклической нумерации пакетов, установления тайм-аутов доставки и т.п.
Транспортный уровень допускает мультиплексировать передаваемые сообщения или соединения.
Мультиплексирование сообщений позволяет передавать сообщения одновременно по нескольким линиям связи.
197
Мультиплексирование соединений обеспечивает передачу в одном информационном пакете нескольких сообщений для различных соединений.
Сетевой (третий) уровень определяет маршрут передачи информационных пакетов в сети (назначает адреса сообщений) и преобразует логические сетевые адреса и имена в их физические эквиваленты. Основная задача сетевого уровня - маршрутизация данных (т.е. пересылка данных между сетями). Чтобы решить, как доставить данные от одного абонента к другому, на сетевом уровне строятся таблицы маршрутов с учетом различных факторов (служебная информация, альтернативные маршруты и приоритеты доставки). Сообщения сетевого уровня пересылаются в виде пакетов (packets) стандартного формата, на которые разбивается исходное сообщение. Для созданных на транспортном уровне пакетов присваиваются адреса их доставки (каждому независимо от других пакетов).
При организации доставки пакетов на сетевом уровне используется понятие «номер сети». В этом случае адрес получателя состоит из старшей части - номера сети и младшей - номера узла в этой сети. Все узлы одной сети должны иметь одну и ту же старшую часть адреса. Поэтому понятие «сеть» на этом уровне в отличие от ранее изложенного можно рассматривать как совокупность узлов, сетевой адрес которых содержит один и тот же номер сети.
На сетевом уровне определяются два вида протоколов. Первый вид - сетевые протоколы (routed protocols). Они реализуют продвижение пакетов через сеть. Именно эти протоколы обычно имеют в виду, когда говорят о протоколах сетевого уровня. Однако часто к сетевому уровню относят и другой вид протоколов, называемых протоколами обмена маршрутной информацией, или протоколами маршрутизации (routing protocols). С их помощью маршрутизаторы собирают информацию о топологии межсетевых соединений. Протоколы сетевого уровня реализуются программными модулями операционной системы, а также программными и аппаратными средствами маршрутизаторов.
На сетевом уровне для передачи пакетов используют одну из двух процедур:
дейтаграмму - при которой пакеты данных доставляются адресату по различным маршрутам, заложенным в динамике сети. При этом каждый пакет имеет полный заголовок с адресом получателя, а управление передачей этих пакетов по сети называют дейтаграммной службой;
виртуальные соединения - когда маршрут передачи пакета данных от отправителя к получателю определяется с помощью специального служебного пакета - запроса на соединение. При положительном ответе получателя на соединение маршрут закрепляется для всего последующего трафика (потока сообщений в сети передачи данных) и получает номер соответствующего виртуального канала (соединения) для его дальнейшего использования другими пакетами того же сообщения. Пакеты, передаваемые по одному виртуальному каналу и принадлежащие одному сообщению для указания связи между собой, имеют одинаковый заголовок, содержащий порядковый номер пакета.
Канальный (второй) уровень описывает процесс передачи данных по выделенному каналу с учетом контроля передаваемых данных и их обрамления
198
вспомогательными символами. При этом передаваемые данные разбиваются на блоки-пакеты. Протоколы канального уровня предполагают, что передаваемые пакеты группируются в порции, называемые кадрами (frames). Канальный уровень предусматривает механизмы обнаружения и коррекции ошибок, для чего в передаваемые пакеты и кадры добавляется специальная информация.
В протоколах канального уровня, используемых в ЛВС, заложена определенная структура связей между ЭВМ и способы их адресации. Поэтому для разных типов топологий используются разные протоколы канального уровня. В связи с этим в глобальных сетях, включающих ЛВС с разными топологиями, взаимодействие между отдельными ЛВС осуществляется на сетевом уровне, в то же время внутри конкретной сети обмен организуется на основе протоколов канального уровня. В ЛВС протоколы канального уровня используются ЭВМ, мостами, коммутаторами и маршрутизаторами. В ЭВМ функции канального уровня реализуются совместными усилиями сетевых адаптеров и их драйверов.
Физический (первый) уровень осуществляет все необходимые операции в канале связи: управление аппаратурой передачи данных и подключенными к ней каналами связи.
Он включает правила преобразования бит в сигналы для исходящих сообщений и сигналов в биты - для входящих. На этом уровне нет ни пакетов, ни кадров - только биты, которые упорядочиваются для передачи по сети. Физический уровень управляет интерфейсом между ЭВМ и каналом связи с сетью, определяет для драйвера и сетевого интерфейса, что должно быть послано в сеть.
К этому уровню имеют отношение характеристики физических сред передачи данных, такие как полоса пропускания, помехозащищенность, волновое сопротивление и др. На этом же уровне определяются характеристики электрических сигналов, передающих дискретную информацию: крутизна фронтов импульсов, уровни напряжения или тока передаваемого сигнала, тип кодирования, скорость передачи сигналов. Кроме того, здесь стандартизуются типы разъемов и назначение каждого контакта.
Функции физического уровня реализуются во всех устройствах, подключенных к сети. Со стороны компьютера функции физического уровня выполняются, например, сетевым адаптером и портами, к которым подключаются различные внешние устройства.
Примером протокола физического уровня может служить спецификация 10Base-T технологии Ethernet, которая определяет в качестве используемого кабеля неэкранированную витую пару категории 3 с волновым сопротивлением 100 Ом, разъем RJ-45, максимальную длину физического сегмента 100 м, манчестерский код для представления данных в кабеле, а также некоторые другие характеристики среды и электрических сигналов.
Три нижних уровня - физический, канальный и сетевой - являются сетеза-висимыми, т.е. протоколы этих уровней тесно связаны с технической реализацией сети и используемым коммуникационным оборудованием. Например, переход на оборудование FDDI означает полную смену протоколов физического и канального уровней во всех узлах сети.
199
Три верхних уровня - прикладной, представительный и сеансовый - ориентированы на приложения и мало зависят от технических особенностей построения сети. На протоколы этих уровней не влияют изменения в топологии сети, замена оборудования или переход на другую сетевую технологию.
Структура кадров и дейтаграмм
На каждом уровне данные перемещаются и обрабатываются в определенных формах - единицах обмена. Изложенный выше материал может быть представлен еще в более простом виде (табл. 4.5).
Таблица 4.5
Уровень |
Ключевое слово |
Данные |
Ответственность |
Прикладной |
Разделение |
Сообщение |
Предоставляет сетевой сервис. С помощью специальных приложений пользователь создает документ (сообщение, рисунок и т.д.) |
Представительский |
Форматирование |
Пакет |
Трансляция данных и файлов. Шифрование данных. Сжатие данных. Операционная система ЭВМ фиксирует местонахождение данных (оперативная память, файл на жестком диске и т.д.) и обеспечивает взаимодействие со следующим уровнем |
Сеансовый |
Диалог |
Пакет |
Управление сессией. Диалог. Контроль ошибок. Обработка транзакций. Поддержка вызовов удаленных процедур RPC. ЭВМ пользователя взаимодействует с ЛВС (РВС или ГВС). Протоколы этих уровней проверяют права пользователя и передают документ к протоколам следующего уровня |
Транспортный |
Надежность |
Сегмент, дейтаграмма, пакет |
Надежность передачи. Гарантированная доставка. Мультиплексирование сессий верхнего уровня. Преобразование документа в форму, необходимую для передачи данных в используемой сети. Например, формирование в пакеты стандартного размера. |
Сетевой |
Дейтаграмма |
Дейтаграмма |
Маршрутизация логических адресов. Создание и ведение таблиц маршрутизации. Фрагментация и сборка данных. Не ориентированная на соединение и ненадежная доставка. Определяет маршрут движения данных в сети, определяет индивидуальные адреса подготовленных на верхнем уровне пакетов |
200
Уровень |
Ключевое слово |
Данные |
Ответственность |
Канальный |
Кадр |
Кадр, пакет |
Окончательная доставка по физическому адресу устройства. Синхронизация кадров. Доступ к среде передачи. Модулирует сигналы физического уровня в соответствии с данными, полученными от сетевого уровня. В ЭВМ эти функции может выполнять сетевая карта или модем |
Физический |
Биты |
Биты |
Синхронизация битов. Форма представления (аналоговая или цифровая). Электрическая и механическая спецификации. Передача данных только на уровне битов |
Чтобы отправить информацию, надо указать адреса получателя и отправителя. В вычислительных системах, где обмен данными ведется на основе протоколов сети Интернет, - это так называемые LAN-адреса (физические адреса) и IP-адреса [12,40].
Первый определяется адресом, зашитым в сетевой адаптер при его изготовлении (при подключении к сети в каждую PC, сервер и др. надо установить сетевой адаптер), и используется при обработке на канальном уровне.
Второй - присваивается в сети Интернет каждому оконечному устройству (им может быть порт, маршрутизатор, сервер, рабочая станция и т.п.) и используется при обработке на сетевом уровне.
Маршрутизаторы сети Интернет перемещают сообщение в соответствии с IP-адресами, указанными в дейтаграмме.
Когда дейтаграмма достигает ЛВС, в которой находится ЭВМ-получатель, то с помощью специального протокола определяется соответствующий IP-адресу физический адрес (LAN-адрес) получателя. После этого по сети производится широковещательная рассылка сообщения для всех сетевых адаптеров Л ВС. Получив сообщение, адаптер извлекает из кадра поле с LAN-адресом и сравнивает его со своим. При совпадении поступившее сообщение заносится в буфер адаптера.
Во всех Ethernet-технологиях LAN-адреса заносятся в специальные поля Ethernet-кадра (рис. 4.22). Под этот адрес отводится 6 байт. В документации принято задавать LAN-адрес в 16-тиричном коде. Например, 99-BA-4M-F9-21.
Преамбула (8 байт) содержит чередующийся набор 0 и 1 и предназначена для настройки приемного узла на получение информативной части кадра. После преамбулы следуют поля адресов получателя и отправителя (по 6 байт). Поле типа содержит код тина (вариант) сетевого протокола, который используется для передачи данных. Поле данных содержит IP-дейтаграмму (рис. 4.23). Поле может иметь длину от 46 до 1500 байт. Если дейтаграмма имеет длину больше 1500 байт, то она представляется в виде нескольких частей.
201
В служебной части дейтаграммы находится несколько полей, в которых указываются длина и тип дейтаграммы, версия протокола IP, время жизни, тип протокола канального уровня для обработки данных дейтаграммы, контрольная сумма и др. Каждый IP-адрес занимает 4 байта (адрес принято указывать в виде 4 десятичных чисел через точку, каждый байт - число. Например, 240.01.0.12). Поле данных содержит собственно информацию, которую надо доставить получателю (или указание на нее).