Модель взаимосвязи открытых систем. Базовая эталонная модель взаимодействия открытых систем

Для единого представления данных в сетях с неоднородными устройствами и программным обеспечением международная организация по стандартам ISO (International Standardization Organization) разработала базовую модель связи открытых систем OSI (Open System Interconnection) . Эта модель описывает правила и процедуры передачи данных в различных сетевых средах при организации сеанса связи. Основными элементами модели являются уровни, прикладные процессы и физические средства соединения. На рис. 1.10 представлена структура базовой модели.

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

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

Рис. 1.10. Модель OSI

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

Взаимодействие уровней модели OSI

Модель OSI можно разделить на две различных модели, как показано на рис. 1.11:

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

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

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

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

В горизонтальной модели двум программам требуется общий протокол для обмена данными. В вертикальной модели соседние уровни обмениваются данными с использованием интерфейсов прикладных программ API (Application Programming Interface).

Рис. 1.11. Схема взаимодействия компьютеров в базовой эталонной модели OSI

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

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

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

Рис. 1.12. Формирование пакета каждого уровня семиуровневой модели

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

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

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

Рис. 1.13. Функции уровней модели OSI

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

Взаимодействию прикладных процессов;

Формам представления данных;

Единообразному хранению данных;

Управлению сетевыми ресурсами;

Безопасности данных и защите информации;

Диагностике программ и технических средств.

Прикладной уровень (Application layer)

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

В действительности прикладной уровень – это набор разнообразных протоколов, с помощью которых пользователи сети получают доступ к разделяемым ресурсам, таким как файлы, принтеры или гипертекстовые Web-страницы, а также организуют свою совместную работу, например с помощью протокола электронной почты. Специальные элементы прикладного сервиса обеспечивают сервис для конкретных прикладных программ, таких как программы пересылки файлов и эмуляции терминалов. Если, например программе необходимо переслать файлы, то обязательно будет использован протокол передачи, доступа и управления файлами FTAM (File Transfer, Access, and Management). В модели OSI прикладная программа, которой нужно выполнить конкретную задачу (например, обновить базу данных на компьютере), посылает конкретные данные в виде Дейтаграммы на прикладной уровень. Одна из основных задач этого уровня – определить, как следует обрабатывать запрос прикладной программы, другими словами, какой вид должен принять данный запрос.

Единица данных, которой оперирует прикладной уровень, обычно называется сообщением (message).

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

1. Выполнение различных видов работ.

Передача файлов;

Управление заданиями;

Управление системой и т. д;

2. Идентификация пользователей по их паролям, адресам, электронным подписям;

3. Определение функционирующих абонентов и возможности доступа к новым прикладным процессам;

4. Определение достаточности имеющихся ресурсов;

5. Организация запросов на соединение с другими прикладными процессами;

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

7. Выбор процедур планируемого диалога процессов;

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

9. Определение качества обслуживания (время доставки блоков данных, допустимой частоты ошибок);

10. Соглашение об исправлении ошибок и определении достоверности данных;

11. Согласование ограничений, накладываемых на синтаксис (наборы символов, структура данных).

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

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

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

К числу наиболее распространенных протоколов верхних трех уровней относятся:

FTP (File Transfer Protocol) протокол передачи файлов;

TFTP (Trivial File Transfer Protocol) простейший протокол пересылки файлов;

X.400 электронная почта;

Telnet работа с удаленным терминалом;

SMTP (Simple Mail Transfer Protocol) простой протокол почтового обмена;

CMIP (Common Management Information Protocol) общий протокол управления информацией;

SLIP (Serial Line IP) IP для последовательных линий. Протокол последовательной посимвольной передачи данных;

SNMP (Simple Network Management Protocol) простой протокол сетевого управления;

FTAM (File Transfer, Access, and Management) протокол передачи, доступа и управления файлами.

Уровень представления данных (Presentation layer)

Функции данного уровня – представление данных, передаваемых между прикладными процессами, в нужной форме.

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

В основу общего представления данных положена единая для всех уровней модели система ASN.1. Эта система служит для описания структуры файлов, а также позволяет решить проблему шифрования данных. На этом уровне может выполняться шифрование и дешифрование данных, благодаря которым секретность обмена данными обеспечивается сразу для всех прикладных сервисов. Примером такого протокола является протокол Secure Socket Layer (SSL), который обеспечивает секретный обмен сообщениями для протоколов прикладного уровня стека TCP/IP. Этот уровень обеспечивает преобразование данных (кодирование, компрессия и т.п.) прикладного уровня в поток информации для транспортного уровня.

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

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

2. Согласование представления данных между прикладными процессами.

3. Реализация форм представления данных.

4. Представление графического материала (чертежей, рисунков, схем).

5. Засекречивание данных.

6. Передача запросов на прекращение сеансов.

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

Сеансовый уровень (Session layer)

Сеансовый уровень – это уровень, определяющий процедуру проведения сеансов между пользователями или прикладными процессами.

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

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

На сеансовом уровне определяется, какой будет передача между двумя прикладными процессами:

Полудуплексной (процессы будут передавать и принимать данные по очереди);

Дуплексной (процессы будут передавать данные, и принимать их одновременно).

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

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

1. Установление и завершение на сеансовом уровне соединения между взаимодействующими системами.

2. Выполнение нормального и срочного обмена данными между прикладными процессами.

3. Управление взаимодействием прикладных процессов.

4. Синхронизация сеансовых соединений.

5. Извещение прикладных процессов об исключительных ситуациях.

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

7. Прерывание в нужных случаях прикладного процесса и его корректное возобновление.

8. Прекращение сеанса без потери данных.

9. Передача особых сообщений о ходе проведения сеанса.

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

Транспортный уровень (Transport Layer)

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

На пути от отправителя к получателю пакеты могут быть искажены или утеряны. Хотя некоторые приложения имеют собственные средства обработки ошибок, существуют и такие, которые предпочитают сразу иметь дело с надежным соединением. Работа транспортного уровня заключается в том, чтобы обеспечить приложениям или верхним уровням модели (прикладному и сеансовому) передачу данных с той степенью надежности, которая им требуется. Модель OSI определяет пять классов сервиса, предоставляемых транспортным уровнем. Эти виды сервиса отличаются качеством предоставляемых услуг: срочностью, возможностью восстановления прерванной связи, наличием средств мультиплексирования нескольких соединений между различными прикладными протоколами через общий транспортный протокол, а главное способностью к обнаружению и исправлению ошибок передачи, таких как искажение, потеря и дублирование пакетов.

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

В функции транспортного уровня входят:

1. Управление передачей по сети и обеспечение целостности блоков данных.

2. Обнаружение ошибок, частичная их ликвидация и сообщение о неисправленных ошибках.

3. Восстановление передачи после отказов и неисправностей.

4. Укрупнение или разделение блоков данных.

5. Предоставление приоритетов при передаче блоков (нормальная или срочная).

6. Подтверждение передачи.

7. Ликвидация блоков при тупиковых ситуациях в сети.

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

Наиболее распространенные протоколы транспортного уровня включают в себя:

TCP (Transmission Control Protocol) протокол управления передачей стека TCP/IP;

UDP (User Datagram Protocol) пользовательский протокол дейтаграмм стека TCP/IP;

NCP (NetWare Core Protocol) базовый протокол сетей NetWare;

SPX (Sequenced Packet eXchange) упорядоченный обмен пакетами стека Novell;

TP4 (Transmission Protocol) – протокол передачи класса 4.

Сетевой уровень (Network Layer)

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

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

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

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

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

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

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

Сетевой уровень выполняет функции:

1. Создание сетевых соединений и идентификация их портов.

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

3. Управление потоками пакетов.

4. Организация (упорядочение) последовательностей пакетов.

5. Маршрутизация и коммутация.

6. Сегментирование и объединение пакетов.

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

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

Наиболее часто на сетевом уровне используются протоколы:

IP (Internet Protocol) протокол Internet, сетевой протокол стека TCP/IP, который предоставляет адресную и маршрутную информацию;

IPX (Internetwork Packet Exchange) протокол межсетевого обмена пакетами, предназначенный для адресации и маршрутизации пакетов в сетях Novell;

X.25 международный стандарт для глобальных коммуникаций с коммутацией пакетов (частично этот протокол реализован на уровне 2);

CLNP (Connection Less Network Protocol) сетевой протокол без организации соединений.

Канальный уровень (Data Link)

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

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

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

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

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

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

LLC (Logical Link Control) управление логическим каналом осуществляет логический контроль связи. Подуровень LLC обеспечивает обслуживание сетевого уровня и связан с передачей и приемом пользовательских сообщений.

MAC (Media Assess Control) контроль доступа к среде. Подуровень MAC регулирует доступ к разделяемой физической среде (передача маркера или обнаружение коллизий или столкновений) и управляет доступом к каналу связи. Подуровень LLC находится выше подуровня МАC.

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

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

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

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

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

1. Организация (установление, управление, расторжение) канальных соединений и идентификация их портов.

2. Организация и передача кадров.

3. Обнаружение и исправление ошибок.

4. Управление потоками данных.

5. Обеспечение прозрачности логических каналов (передачи по ним данных, закодированных любым способом).

Наиболее часто используемые протоколы на канальном уровне включают:

HDLC (High Level Data Link Control) протокол управления каналом передачи данных высокого уровня, для последовательных соединений;

IEEE 802.2 LLC (тип I и тип II) обеспечивают MAC для сред 802.x;

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

Token ring сетевая технология по стандарту IEEE 802.5, использующая кольцевую топологию и метод доступа к кольцу с передачей маркера;

FDDI (Fiber Distributed Date Interface Station) сетевая технология по стандарту IEEE 802.6, использующая оптоволоконный носитель;

X.25 международный стандарт для глобальных коммуникаций с коммутацией пакетов;

Frame relay сеть, организованная из технологий Х25 и ISDN.

Физический уровень (Physical Layer)

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

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

Физический уровень состоит из Подуровня стыковки со средой и Подуровня преобразования передачи.

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

Тип кабелей и разъемов;

Разводку контактов в разъемах;

Схему кодирования сигналов для значений 0 и 1.

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

1. Установление и разъединение физических соединений.

2. Передача сигналов в последовательном коде и прием.

3. Прослушивание, в нужных случаях, каналов.

4. Идентификация каналов.

5. Оповещение о появлении неисправностей и отказов.

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

Рис. 1.14. Физический уровень беспроводной локальной сети

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

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

Примером протокола физического уровня может служить спецификация 10Base-T технологии Ethernet, которая определяет в качестве используемого кабеля неэкранированную витую пару категории 3 с волновым сопротивлением 100 Ом, разъем RJ-45, максимальную длину физического сегмента 100 метров, манчестерский код для представления данных и другие характеристики среды и электрических сигналов.

К числу наиболее распространенных спецификаций физического уровня относятся:

EIA-RS-232-C, CCITT V.24/V.28 – механические/электрические характеристики несбалансированного последовательного интерфейса;

EIA-RS-422/449, CCITT V.10 – механические, электрические и оптические характеристики сбалансированного последовательного интерфейса;

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

Token ring – сетевая технология по стандарту IEEE 802.5, использующая кольцевую топологию и метод доступа к кольцу с передачей маркера.

В процессе передачи данных от одного компьютера к другому можно выделить ряд различных задач. Сетевая операционная система при выполнении этих задач строго следует определенному набору процедур (определенным правилам). Эти процедуры называются протоколами. Они регламентируют каждую сетевую операцию: устанавливают порядок связи между компьютерами, порядок передачи данных, порядок обработки ошибок, порядок окончания сеанса связи и т.д. Стандартные протоколы позволяют программному и аппаратному обеспечению разных производителей нормально взаимодействовать. Существует два основных набора стандартов для этих целей: эталонная модель OSI и стандарты IEEE Project 802.

Международной организацией по стандартизации (International Standards Organization - ISO) была разработана эталонная модель взаимосвязи открытых систем (Open System Interconnection - OSI).

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

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

Прикладной уровень (7-й). На этом уровне пользователь с помощью прикладного программного обеспечения создает документ (сообщение, рисунок и т. д.). Услуги, которые обеспечивает прикладной уровень, поддерживают приложения пользователя. На этом уровне используют протоколы HTTP, FTP, SMTP.

Уровень представления данных (6-й). На компьютерах могут использоваться различные ОС (UNIX, OS/2, Windows и т.д.). Каждая из них имеет свою файловую систему, свои форматы хранения и обработки данных. Задача уровня представления данных заключается в том, чтобы при передаче данных преобразовать их в формат, который может использоваться и на другом компьютере. Этот уровень управляет также сжатием передаваемых данных.

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

Транспортный уровень (4-й). На этом уровне данные принимаются от вышестоящего (сеансового) уровня и преобразуются в такую форму, в которой их положено передавать в сети. Например, они нарезаются на пакеты стандартного размера. На этом уровне используются, например, протоколы TCP и SPX.

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

Уровень передачи данных (2-й). Уровень передачи данных (или канальный уровень, или уровень соединения) обеспечивает прием пакетов данных, поступающих с сетевого уровня; подготовку данных к передаче по каналам связи; генерацию стартового сигнала для передачи данных; проверку получаемых данных и исправление ошибок; генерацию сигнала для перевода канала передачи в пассивное состояние при окончании передачи. Эти функции выполняет сетевая карта или модем. Используемые протоколы: HDLC, X.25/3.

Физический уровень (1-й). Его основная задача - управление аппаратурой передачи данных. Этот уровень получает данные от канального уровня и преобразует их в электрические или оптические сигналы. На этом уровне происходит реальная передача данных. Физический уровень устанавливает длительность каждого бита и способ их преобразования в электрические или оптические импульсы, передаваемые по сетевому кабелю. Данные здесь передаются в виде определенных сигналов. Восстановление документа из них произойдет постепенно, при передаче с нижнего на верхний уровень на компьютере получателя. Используемые протоколы: Х-21.

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

Два нижних уровня модели OSI относятся к оборудованию (например, к сетевой плате) и кабелю. Для оборудования и кабелю, которые используется на этих уровнях, были разработаны специальные стандарты IEEE Project 802. Это набор стандартов для физических компонентов сети, которые используются на физическом и канальном уровнях модели OSI.

Архитектура открытых систем

Термин «архитектура связи» подразумевает, что отдельные подзадачи сети выполняются различными архитектурными элементами, между которыми устанавливаются пути передачи информации (каналы связи и интерфейсы). Способ, с помощью которого сообщение обрабатывается структурными элементами и передаются по сети, называется сетевым протоколом . Проблемы совмещения и стыковки различных элементов ВС привели Международную организацию стандартизации (ISO - International Organization for Standards) к созданию модели архитектуры вычислительной сети, которая называется моделью взаимодействия открытых систем 1977 г. (ВОС/OSI).

Базовая эталонная модель взаимодействия открытых систем

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

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

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

Запрос - выдается П. для инициации услуги;

Индикация - выдается И. Для указания на то, что удаленный П. инициировал выполнение услуги;



Ответ - выдается П. как реакция на примитив индикация;

Подтверждение - выдается И. Для сообщения о результатах выполнения услуги.

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

Модель OSI - это набор протоколов для определения и стандартизации всего процесса передачи данных, разработанного Международной организацией стандартизации (ISO).

Процесс передачи данных делится на 7 уровней, в пределах которых устанавливаются стандартные протоколы, разработанные ISO и некоторыми фирмами, причем количество этих протоколов велико.

Модель OSI не является единственным описанием процесса передачи данных, а говорит, что

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

2) любой последовательный уровень модели OSI взаимодействует с предыдущим.

3) любой уровень обладает свойством модульности: замена одного протокола другим в рамках уровня не влияет на работу протоколов верхнего или нижнего уровня.

Взаимосвязь между узлами сети:

уровни Оконечная система 1 Протоколы уровней Оконечная система 2 Основные функции уровней
Прикладной процесс Прикладной процесс
Прикладной (SMTP, FTP, TELM) Службы пользователей, сетевые службы и т.д.
Представительный Преобразование структурированных данных и манипулирование ими.
Сеансовый (BIOS) Установление соединений, координация и синхронизация диалога.
Транспортный (TCP/IP) Обеспечение независящего от передающей среды транспортного сервиса между оконечными системами.
Сетевой (X.25) Коммутация и маршрутизация в сети.
Канальный (HDLC, SDLC, X.25) Управление передачей данных по каналу. Контроль ошибок, возникающий из-за физической среды передачи.
Физический (IEEE 802.3, 802.4, 802.5) Предоставление средств для управления физическими соединениями в канале.
Физическая среда для соединения систем

Уровни OSI реализуют следующие сетевые функции:

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

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

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

Используется 2 основных типа кадров: пакеты и управляющие кадры.

Пакеты - кадры данных, которые содержат сообщения верхних уровней.

Управляющие кадры - маркеры, подтверждения.

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

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

  1. Сетевой уровень. Отвечает за буферизацию и маршрутизацию в сети.

Реализует функции связи между 2-мя отдельными сетями. Преобразование логических адресов в физические.

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

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

6. Уровень представления . Является самым простым с точки зрения взаимосвязи. Его функция заключается в преобразовании сообщений П. из формы, используемой прикладным уровнем, в форму, используемую более низкими уровнями. Целью преобразования сообщения (кодирования) является сжатие данных и их защита. Гарантирует, что данные, которыми обмениваются устройства, поступают на прикладной уровень или к устройствам П. в понятном для них виде. Это позволяет использовать в различных комплектах оборудования различные форматы данных без ущерба для взаимопонимания.

7. Прикладной уровень. Является границей между процессами сети OSI и прикладными (пользовательскими) процессами. Непосредственно поддерживает обмен информацией между пользователями, прикладными программами или устройствами. На этом уровне требуется несколько типов протоколов:

1) для конкретных специфичных приложений (передачи файлов, электронная почта)

2) общие протоколы для поддержки пользователей и сети (например, для вычислений, управления доступом, проверки полномочий пользователей)

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

Отдельные уровни могут быть совмещены или отсутствовать.

Реальная связь: физический уровень физический уровень

Информация проходит от прикладного уровня к физическому в узле источника и от физического к прикладному в узле назначения.

Между процессами на одинаковых уровнях существуют виртуальные связи

Необходимо еще пояснить некоторые понятия, относящиеся к эталонной модели OSI:

· упаковка

· фрагментация

Структура сообщений

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

Схема модификации сообщений

Упаковка

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

1. указатели типа сообщений

2. адреса отправителя, получателя, канала, порта

3. код обнаружения ошибок

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

Фрагментация

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

(транспортый уровень - разбивка/сборка пакетов)

Использование небольших пакетов данных упрощает разработку протоколов нижних уровней.

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

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

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

(см. рис.)

Прикладной процесс в системе А (ур. 7) формирует сообщение прикладному процессу в системе В в соответствии с логикой взаимодействия этих двух прикладных процессов (но без учета организациии сети). Физически сообщения, формируемые процессом А, проходят последовательно через уровни 6,5,…,1, подвергаясь процедурам последовательного обрамления, предаются по каналу связи и затем через уровни 1,2,…,6, на которых с сообщений снимаются обрамления, поступают к процессу В. каждый уровень работает со своим заголовком и концевиком. Все, что между ними - рассматривается соответствующим уровнем как данные.

В заголовки помещаются команды для вызова функций в соответствующих уровнях другого узла связи:

Уровень N+1 вызывает функцию для формирования в передающем узле поле контроля последовательности.

Уровень N+1 принимающего узла производит проверку наличия ошибок при передаче на основе сравнения контрольного поля со значением счетчика приема.

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

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

Заголовок - это управляющая информация протокола .

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

При описании протокола принято выделять его логическую и процедурную характеристики.

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

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

Заключение

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

Многие же протоколы высоких уровней находятся в различных стадиях разработки (хотя некоторые уже утверждены).

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

Общие положения. Эталонная модель взаимодействия открытых систем (ЭМ ВОС, модель OSI Open Systems Interconnection) была разработана Международной орга­низацией по стандартизации (МОС, OSI) и принята в виде стандарта в 1983 г. Она поддержана Международным консультативным комитетом по телефонии и телеграфии (МККТТ), ныне Международным союзом электросвязи, секция Телекоммуникаций (МСЭ-Т, ITU-T) Рекомендаци­ей Х. 200. Эта модель является основополагающей при рассмотрении любых вопросов, связанных с проектированием, строительством и эксп­луатацией систем связи. Она следует принципам АОС и имеет уровневую структуру.

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

Стандартом № 7498 предусмотрена семиуровневая организация от­крытых систем. Каждый уровень имеет свое название и номер от У1 до У7 , изменяющийся снизу вверх (рис. 1.13).

Рис. 1.13. Семиуровневая организация от­крытых систем

Международное и российскоенаи­менование уровней и принятые сокращения приведены в табл. 1.1.

Таблица 1.1

Классификация уровней открытых систем

Номер уровня

Международное наименование уровня

Сокращение

Российское

наименование уровня

Сокращение

Прикладной

Представительный

Сеансовый

Транспортный

Канальный

Физический

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

Каждую открытую систему можно структурировать по некоторым при­знакам (рис. 1.14). С одной стороны, условно все уровни можно разбить на две группы: уровни сети связи (У1 –У4) и уровни пользователя (У5 –У7) .Первой группой уровней обеспечивается передача сообщений средства­ми электрической связи по сети. Вторая группа уровней составляет ин­формационное обеспечение передачи (приема) сообщений с точки зре­ния их содержания, формы и моментов представления.

Рис. 1.14. Структурирование открытой системы

С другой стороны, на двух верхних уровнях (У7, У6) происходят процессы подготовки сообщений к передаче (информационные про­цедуры), на двух последующих (У5, У4) - формирование процес­са передачи и "вхождение" сообщения в сеть связи (транспортные процедуры), а на трех нижних (У3, У2, У1) - выбор маршрута передачи,преобразование сообщений в электрические сигналы и обратно, контроль правильности передачи (сетевые процедуры).

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

К первому шагу относятся следующие понятия:

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

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

– уровень – логическое понятие, определяющее порядок следования подсистем в системе.

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

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

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

Второй шаг стандартизации включает в себя следующие понятия:

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

– услуга – результат логически законченных действий, который необходим надуровню для выполнения его функций. Совокупность услуг составляет сервис N-уровня для (N + 1)-уровня.

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

И, наконец, третий шаг стандартизации содержит следующие понятия:

– протокол – регламентированный набор команд и ответов, определя­ющий взаимодействие одноименных уровней разных ОС в штатных и нештатных ситуациях;

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

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

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

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

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

Услуга уровню У2 – наличие физического канала на звене сети, воз­можность передачи информационного сигнала по нему.

Канальный уровень – форматирование блока данных (фазирова­ние), управление каналом на звене, контроль качества передачи на звене (исправление ошибок).

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

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

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

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

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

Сеансовый уровень – организация сеансов связи (начало, конец), синхронизация диалога между прикладными процессами.

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

Услуга уровню У7 – возможность представления информации в про­извольном виде.

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

Услуга пользователю (прикладному процессу) – возможность выбора той или иной службы сети и возможность пользоваться услугами си­стемы связи.

11. Архитектура взаимодействия открытых систем. Основы передачи дискретных сообщений

11. Архитектура взаимодействия открытых систем

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

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

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

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

Декомпозиция предполагает:

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

Многоуровневый подход при декомпозиции предполагает следующее:

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

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

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

Уровни, находящиеся в одном узле в процессе работы, также взаимодействуют друг с другом в соответствии с четко определенными правилами. Эти правила принято называть ИНТЕРФЕЙСОМ.

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

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

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

Изначально определяется структура построения стандартов ВОС.

Затем описание услуг, которые должны предоставляться отдельными компонентами (уровнями) открытой системы.

Последний уровень детализации стандартов ВОС – разработка в рамках определенной услуги ВОС набора протоколов.

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

Таким образом, стандарт ВОС должен определять:

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

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

Семиуровневая модель ВОС

Сетевые модели OSI и IEEE Project 802

В 1978 г. Международная организация по стандартизации ISO (International Standards Organization) выпустила набор спецификаций описывающих архитектуру сетей с неоднородными устройствами. (Прообраз модели ВОС).

В 1984 г. ISO, выпустила новую версию своей модели, названную эталонной моделью ВОС. (Open System Interconnection reference model, OSI.)

Структура эталонной модели ВОС

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

Семь уровней модели :

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

К этому уровню имеют отношение:

  • характеристики физических сред передачи данных (полоса пропускания, волновое сопротивление, помехозащищенность…);
  • характеристики электрических (оптических) сигналов (уровни, тип кодирования, скорость модуляции…);
  • тип разъема и назначение каждого контакта (BNC, RJ-45, RS-232c…).

Пример спецификация 10BaseT .

Канальный уровень

К основным задачам решаемым на канальном уровне относятся:

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

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

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

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

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

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

Пример: Ethernet, Token ring.

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

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

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

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

Пример: IP (стек TCP/IP), IPX (стек IPX/SPX).

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

Транспортный уровень гарантирует доставку пакетов без ошибок, в той же последовательности, без потерь и дублирования.

На этом уровне сообщения также могут переупаковываться: длинные разбиваются на несколько пакетов, а короткие объединяются в один. Это увеличивает эффективность передачи пакетов по сети. На транспортном уровне ПК получателя сообщения распаковываются, восстанавливаются в первоначальном виде, и обычно посылается сигнал подтверждения.

Если качество канала хорошее, то используется облегченный сервис. Датаграмный режим (UDP).

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

Сеансовый уровень (Session)

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

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

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

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

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

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

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

На этом уровне работает редиректор, переадресовывающий операции ввода вывода к ресурсам сервера.

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

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

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

Модель IEEE Project 802. Расширение модели OSI.

В феврале 1980 г. был выпущен IEEE Project 802. Хотя публикация данного проекта опередила стандарты ISO данные работы велись параллельно, при полном обмене информации поэтому полностью совместимы.

IEEE Project 802 – установил стандарты для физических компонентов сети – интерфейсных плат и кабельной системы с которыми имеют дело Физический и Канальный кровни модели OSI .

Данные стандарты распределяются:

  • на платы сетевых адаптеров;
  • компоненты глобальных вычислительных сетей;
  • компоненты сетей на коаксиале и витой паре.

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

В модели IEEE Канальный уровень делится на два подуровня:

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

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

Контрольные вопросы




Top