Для согласования работы устройств сети от разных производителей, обеспечения взаимодействия сетей, которые используют различную среду распространения сигнала создана эталонная модель взаимодействия открытых систем (ВОС). Эталонная модель построена по иерархическому принципу. Каждый уровень обеспечивает сервис вышестоящему уровню и пользуется услугами нижестоящего уровня.
Обработка данных начинается с прикладного уровня. После этого, данные проходят через все уровни эталонной модели, и через физический уровень отправляются в канал связи. На приеме происходит обратная обработка данных.
В эталонной модели OSI вводятся два понятия: протокол и интерфейс .
Протокол – это набор правил, на основе которых взаимодействуют уровни различных открытых систем.
Интерфейс – это совокупность средств и методов взаимодействия между элементами открытой системы.
Протокол определяет правила взаимодействия модулей одного уровня в разных узлах, а интерфейс – модулей соседних уровней в одном узле.
Всего существует семь уровней эталонной модели OSI. Стоит отметить, что в реальных стеках используется меньше уровней. Например, в популярном TCP/IP используется всего четыре уровня. Почему так? Объясним чуть позже. А сейчас рассмотрим каждый из семи уровней в отдельности.
Уровни модели OSI:
После знакомства со эталонной моделью, рассмотрим стек протоколов TCP/IP.
В модели TCP/IP определено четыре уровня. Как видно из рисунка выше – один уровень TCP/IP может соответствовать нескольким уровням модели OSI.
Уровни модели TCP/IP:
Инкапсуляция – это метод упаковки пакета данных, при котором независимые друг от друга служебные заголовки пакета абстрагируются от заголовков нижестоящих уровней путем их включения в вышестоящие уровни.
Рассмотрим на конкретном примере. Пусть мы хотим попасть с компьютера на сайт. Для этого наш компьютер должен подготовить http-запрос на получение ресурсов веб-сервера, на котором хранится нужная нам страница сайта. На прикладном уровне к данным (Data) браузера добавляется HTTP-заголовок. Далее на транспортном уровне к нашему пакету прибавляется TCP-заголовок, содержащий номера портов отправителя и получателя (80 порт – для HTTP). На сетевом уровне формируется IP-заголовок, содержащий IP-адреса отправителя и получателя. Непосредственно перед передачей, на канальном уровне добавляется Ethrnet-заголовок, который содержит физические (MAC-адреса) отправителя и получателя. После всех этих процедур пакет в виде битов информации передается по сети. На приеме происходит обратная процедура. Web-сервер на каждом уровне будет проверять соответствующий заголовок. Если проверка прошла удачно, то заголовок отбрасывается и пакет переходит на верхний уровень. В противном случае весь пакет отбрасывается.
Подписывайтесь на нашу
Эталонная модель OSI
Это описательная схема сети; ее стандарты гарантируют высокую совместимость и способность к взаимодействию различных типов сетевых технологий. Кроме того, она иллюстрирует процесс перемещения информации по сетям. Модель OSI описывает, каким образом информация проделывает путь через сетевую среду (например, провода) от одной прикладной программы (например, программы обработки таблиц) к другой прикладной программе, находящейся в другом подключенном к сети компьютере.
Эталонная модель OSI делит задачу перемещения информации между компьютерами через сетевую среду на семь менее крупных и, следовательно, более легко разрешимых подзадач. Каждая из этих семи подзадач выбрана потому, что она относительно автономна и, следовательно, ее легче решить без чрезмерной опоры на внешнюю информацию. Такое разделение на уровни называется иерархическим представлением. Каждый уровень соответствует одной из семи подзадач...
Поскольку нижние уровни (с 1 по 3) модели OSI управляют физической доставкой сообщений по сети, их часто называют уровнями среды передачи данных (media layers). Верхние уровни (с 4 по 7) модели OSI обеспечивают точную доставку данных между компьютерами в сети, поэтому их часто называют уровнями хост-машины (host layers).
Прикладной уровень (уровень 7) - это самый близкий к пользователю уровень OSI. Он отличается от других уровней тем, что не обеспечивает услуг ни одному из других уровней OSI. Он обеспечивает услугами прикладные процессы, лежащие за пределами масштаба модели OSI. Примерами таких прикладных процессов могут служить процессы передачи речевых сигналов, базы данных, текстовые процессоры и т.д.
Этот уровень идентифицирует и устанавливает наличие предполагаемых партнеров для связи, синхронизирует совместно работающие прикладные процессы, а также устанавливает и согласовывает процедуры устранения ошибок и управления целостностью информации. Прикладной уровень также определяет, имеется ли в наличии достаточно ресурсов для предполагаемой связи.
Проще говоря этот уровень отвечает за доступ приложений в сеть. Задачами этого уровня является перенос файлов, обмен почтовыми сообщениями и управление сетью.
К числу наиболее распространенных протоколов верхних уровней относятся:
FTP - протокол переноса файлов
TFTP - упрощенный протокол переноса файлов
X.400 - электронная почта
SMTP - простой протокол почтового обмена
CMIP - общий протокол управления информацией
SNMP - простой протокол управления сетью
NFS - сетевая файловая система
FTAM - метод доступа для переноса файлов
Представительный уровень (уровень 6) отвечает за то, чтобы информация, посылаемая из прикладного уровня одной системы, была читаемой для прикладного уровня другой системы. При необходимости представительный уровень осуществляет трансляцию между множеством форматов представления информации путем использования общего формата представления информации.
Этот уровень занят не только форматом и представлением фактических данных пользователя, но также структурами данных, которые используют программы. Поэтому кроме трансформации формата фактических данных (если она необходима), представительный уровень согласует синтаксис передачи данных для прикладного уровня.
Сеансовый уровень (уровень 5) устанавливает, управляет и завершает сеансы взаимодействия между прикладными задачами. Сеансы состоят из диалога между двумя или более объектами представления. Сеансовый уровень синхронизирует диалог между объектами представительного уровня и управляет обменом информации между ними.
Кроме того, предоставляет средства для отправки информации, класса услуг и уведомления в исключительных ситуациях о проблемах сеансового, представительного и прикладного уровней.
Транспортный уровень (уровень 4) Граница между сеансовым и транспортным уровнями может быть представлена как граница между протоколами высших (прикладных) уровней и протоколами низших уровней. В то время как прикладной, представительный и сеансовый уровни заняты прикладными вопросами, четыре низших уровня решают проблемы транспортировки данных.
Транспортный уровень обеспечивает услуги по транспортировке данных, что избавляет высшие слои от необходимости вникать в ее детали. Функцией транспортного уровня является надежная транспортировка данных через сеть. Предоставляя надежные услуги, транспортный уровень обеспечивает механизмы для установки, поддержания и упорядоченного завершения действия каналов, систем обнаружения и устранения неисправностей транспортировки и управления информационным потоком (с целью предотвращения переполнения системы данными из другой системы).
Проще говоря транспортный уровень делит потоки информации на достаточно малые фрагменты (пакеты) для передачи их на сетевой уровень.
Наиболее распространенные протоколы транспортного уровня включают:
TCP - протокол управления передачей
NCP - Netware Core Protocol
SPX - упорядоченный обмен пакетами
TP4 - протокол передачи класса 4
Сетевой уровень (уровень 3) - это комплексный уровень, который обеспечивает возможность соединения и выбор маршрута между двумя конечными системами.
Поскольку две конечные системы, желающие организовать связь, может разделять значительное географическое расстояние и множество подсетей, сетевой уровень является доменом маршрутизации. Протоколы маршрутизации выбирают оптимальные маршруты через последовательность соединенных между собой подсетей. Традиционные протоколы сетевого уровня передают информацию вдоль этих маршрутов.
Другими словами сетевой уровень отвечает за деление пользователей на группы. На этом уровне происходит маршрутизация пакетов на основе преобразования MAC-адресов в сетевые адреса. Сетевой уровень обеспечивает также прозрачную передачу пакетов на транспортный уровень.
Наиболее часто на сетевом уровне используются протоколы:
IP - протокол Internet
IPX - протокол межсетевого обмена
X.25 (частично этот протокол реализован на уровне 2)
CLNP - сетевой протокол без организации соединений
Канальный уровень (уровень 2) (формально называемый информационно-канальным уровнем) обеспечивает надежный транзит данных через физический канал. Выполняя эту задачу, канальный уровень решает вопросы физической адресации (в противоположность сетевой или логической адресации), топологии сети, линейной дисциплины (каким образом конечной системе использовать сетевой канал), уведомления об ошибках, упорядоченной доставки блоков данных и управления потоком информации.
Спецификации IEEE 802.x делят канальный уровень на два подуровня: управление логическим каналом (LLC) и управление доступом к среде (MAC). LLC обеспечивает обслуживание сетевого уровня, а подуровень MAC регулирует доступ к разделяемой физической среде. (Он же IEEE 802.1 - задает стандарты управления сетью на MAC-уровне, включая алгоритм Spanning Tree. Этот алгоритм используется для обеспечения единственности пути (отсутствия петель) в многосвязных сетях на основе мостов и коммутаторов с возможностью его замены альтернативным путем в случае выхода из строя.)
Наиболее часто используемые на уровне 2 протоколы включают:
HDLC для последовательных соединений
IEEE 802.2 LLC (тип I и тип II) обеспечивают MAC для сред 802.x
Физический уровень (уровень 1) определяет электротехнические, механические, процедурные и функциональные характеристики установления, поддержания и разъединения физического канала между конечными системами. Спецификации физического уровня определяют такие характеристики, как величины напряжений, параметры синхронизации, скорость передачи физической информации, максимальные расстояния передачи информации, физические соединители и другие аналогичные характеристики.
Этот уровень получает пакеты данных от вышележащего канального уровня и преобразует их в оптические или электрические сигналы, соответствующие 0 и 1 бинарного потока. Эти сигналы посылаются через среду передачи на приемный узел. Механические и электрические/оптические свойства среды передачи определяются на физическом уровне и включаютя:
Тип кабелей и разъемов
Разводку контактов в разъемах
Схему кодирования сигналов для значений 0 и 1
К числу наиболее распространенных спецификаций физического уровня относятся:
EIA-RS-232-C, CCITT V.24/V.28 - механические/электрические характеристики несбалансированного последовательного интерфейса.
EIA-RS-422/449, CCITT V.10 - механические, электрические и оптические характеристики сбалансированного последовательного интерфейса.
IEEE 802.3 -- Ethernet
IEEE 802.5 -- Token ring
Физической средой в различных телекоммуникационных системах могут быть самые разнообразные средства от простейшей пары проводов до сложной системы передачи синхронной цифровой иерархии.
Чтобы понять структуру и принципы функционирования сети, необходимо уяснить, что любой обмен данными в сети осуществляется от источника к получателю. Информацию, посланную в сеть, называют данными, или пакетами данных. Если один компьютер (источник) хочет послать данные другому компьютеру (получателю), то данные
сначала должны быть собраны в пакеты в процессе инкапсуляции; который перед отправкой в сеть погружает их в заголовок конкретного протокола. Этот процесс можно сравнить с подготовкой бандероли к отправке - обернуть содержимое бумагой, вложить в транспортный конверт, указать адрес отправителя и получателя, наклеить марки и бросить в почтовый ящик.
При выполнении сетями услуг пользователям, поток и вид упаковки информации изменяются.
Например..пять этапов преобразования:
1. Формирование данных. Когда пользователь посылает сообщение электронной почтой, алфавитно-цифровые символы сообщения преобразовываются в данные, которые могут перемещаться в сетевом комплексе.
2. Упаковка данных для сквозной транспортировки. Для передачи через сетевой комплекс данные соответствующим образом упаковываются. Благодаря использованию сегментов, транспортная функция гарантирует надежное соединение участвующих в обмене
В результате анализа существования протоколов передачи данных, международная организация по стандартизации (ISO) разработала эталонную модель стека протокола.
В модели используют принцип открытости системы (OSI), который предполагает, что любая фирма может разрабатывать аппаратные и программные средства в соответствии с установленными этой моделью правилами. В соответствии с моделью стека протоколов выделяются 7 уровней протоколов (рис. 1)
При передаче информации каждый уровень принимает информацию от вышестоящего уровня, дополняет её своей служебной информацией и передаёт нижестоящему уровню. Средства физического уровня передают информацию другому узлу сети. При приёме каждый уровень принимает информацию от нижестоящего, разбирает служебную информацию своего уровня, удаляет его и передаёт данные вышестоящему уровню.
Протоколы физического уровня – определяют стандарты кабелей, разъёмов для подключения сети характеристики сигналов передаваемых по линиям связи.
Протоколы канального уровня – определяют правила доступа к среде передачи данных, а также способы проверки правильности передачи данных. Протоколы канального уровня реализуются сетевыми платами адаптерами. Существует несколько протоколов канального уровня: Ethernet, FDDI, Token Ring.
Протоколы сетевого уровня – обеспечивают передачу информации между узлами сети и фрагментами сети. Сетевые протоколы, в частности, обеспечивают согласование разных видов сетей и определяют маршрут передачи сообщения.
Протоколы транспортного уровня обеспечивают надёжность доставки по сети информации и распределяет информацию между приложениями.Существует два популярных протокола транспортного уровня:
· TCP – обладает очень высокой надёжностью, но передаёт много служебной информации.
· UDP – менее надёжен, чем TCP, но меньше загружает сеть.
Сеансовый уровень управляет диалогами между узлами сети. В реально работающих стеках протоколов этот уровень обычно объединяется с вышестоящими.Представительный уровень или уровень представления – определяет способ кодирования информации.Прикладной уровень – отвечает за интерпретацию данных прикладными программами.
Протокольная модель описывает работу сети на уровне правил взаимодействия рассредоточенных объектов и функциональных модулей. Полный набор протоколов, обеспечивающий взаимодействие приложений двух оконечных систем информационной сети, довольно велик, поскольку при этом активизируется огромное количество сетевых функций (объектов). При построении протокольной модели удобно все протоколы разбить на группы, соответствующие объединению объектов в функциональные модули, каждый из которых решает определенный круг тесно связанных задач. Такая группа протоколов называется протокольным уровнем илипротокольным блоком . Их принято располагать в иерархическом порядке, соответствующем иерархии задач, выполняемых функциональными модулями (рис. 3).
В 1978 г. ISO (International Standards Organization) выпустила набор спецификаций, описывающих модель взаимодействия открытых систем, т.е. систем, доступных для связи с другими системами. Это был первый шаг к международной стандартизации протоколов. Все системы могли теперь использовать одинаковые протоколы и стандарты для обмена информацией.
В 1984 г. ISO выпустила новую версию своей модели, названную эталонной моделью взаимодействия открытых систем ISO. Эта версия стала международным стандартом. Ее спецификации используют производители при разработке сетевых продуктов, ее придерживаются при построении сетей. Полностью модель носит название ISO OSI (Open System Interconnection Reference Model). Для краткости будем ее называть модель OSI . Модель OSI не является сетевой архитектурой, так как не описывает службы и протоколы, используемые на каждом уровне. Она просто определяет, что должен делать каждый уровень. Важно также понимать, что эталонная модель не является чем-то реальным, таким, что обеспечивает связь. Сама по себе она не заставляет коммуникации функционировать и служит лишь для классификации. Она классифицирует то, что непосредственно работает, а именно - протоколы . Протоколом считается набор спецификаций, определяющих реализацию одного или нескольких уровней OSI. ISO разработала также стандарты для каждого уровня, хотя эти стандарты не входят в саму эталонную модель. Каждый из них был опубликован как отдельный международный стандарт.
Модель OSI имеет семь уровней . Каждому уровню соответствуют различные сетевые операции, оборудование и протоколы. Появление именно семи уровней было обусловлено функциональными особенностями модели.
Модель OSI без физического носителя показана на рис.
Определенные сетевые функции, выполняемые на каждом уровне, взаимодействуют только с функциями соседних уровней - вышестоящего и нижележащего. Например, Сеансовый уровень должен взаимодействовать только с Представительским и Транспортным уровнями . Все эти функции подробно описаны.
Каждый уровень выполняет несколько операций при подготовке данных для доставки по сети на другой компьютер. Уровни отделяются друг от друга границами - интерфейсами . Все запросы от одного уровня к другому передаются через интерфейс. Каждый уровень, выполняя свои функции, пользуется услугами нижележащего уровня. Самые нижние уровни - 1-й и 2-й - определяют физическую среду при передаче битов данных через плату СА и кабель. Самые верхние уровни определяют, каким способом реализуется доступ приложений к услугам связи.
Задача каждого уровня − предоставление услуг вышележащему уровню, маскируя при этом детали реализации этих услуг. Каждый уровень на компьютере-отправителе работает так, как будто он напрямую связан с соответствующим уровнем на компьютере-получателе. Эта виртуальная связь показана на рис. пунктирными линиями. В действительности же связь осуществляется между соседними уровнями одного компьютера. ПО каждого уровня реализует определенные сетевые функции в соответствии с набором протоколов.
Перед отправкой в сеть данные разбиваются на пакеты , передаваемые между устройствами сети как единое целое. Пакет проходит последовательно все уровни ПО от прикладного до физического, при этом на каждом уровне к пакету добавляется форматирующая или адресная информация, необходимая для безошибочной передачи данных по сети.
На принимающей стороне пакет также проходит через все уровни, но в обратном порядке. ПО каждого уровня анализирует информацию пакета, удаляет ту информацию, которая добавлена к пакету на таком же уровне отправителем, и передает пакет следующему уровню. По достижении пакетом Прикладного уровня вся служебная информация будет удалена, и данные примут свой первоначальный вид.
Таким образом, только Физический уровень модели может непосредственно послать информацию соответствующему уровню другого компьютера. Информация на компьютере-отправителе и компьютере-получателе должна пройти все уровни, начиная с того, с которого она посылается, и заканчивая соответствующим уровнем того компьютера, которым она принимается. Например, если Сетевой уровень передает информацию с компьютера А, она спускается через Канальный и Физический уровни в сетевой кабель, затем попадает в компьютер В, где поднимается через Физический и Канальный уровни и достигает Сетевого уровня. В среде клиент-сервер примером такой информации служит адрес и результат контроля ошибок, добавленные к пакету.
Взаимодействие смежных уровней осуществляется через интерфейс. Интерфейс определяет услуги, которые нижний уровень предоставляет верхнему, и способ доступа к ним.
Рассмотрим каждый из семи уровней модели OSI и услуги, которые они предоставляют смежным уровням.
Прикладной (Application) уровень . Уровень 7. Он представляет собой окно для доступа прикладных процессов к сетевым услугам. Услуги, которые он обеспечивает, напрямую поддерживают приложения пользователя. Прикладной уровень управляет общим доступом к сети, потоком данных и восстановлением данных после сбоев связи.
Уровень представления (Presentation) . Уровень 6. Представительский уровень определяет формат, используемый для обмена данными между сетевыми компьютерами. Типичный пример работы служб Представительского уровня − кодирование передаваемых данных определенным стандартным образом. Уровень представления отвечает за преобразование протоколов, трансляцию и шифрование данных, смену кодовой таблицы и расширение графических команд. Кроме того, он управляет сжатием данных для уменьшения объема передаваемых бит.
Сеансовый уровень (Session) . Уровень 5. Сеансовый уровень позволяет двум приложениям разных компьютеров устанавливать, использовать и завершать соединение, называемое сеансом. Сеанс может предоставлять еще и расширенный набор услуг, полезный для некоторых приложений. Сеансовый уровень управляет диалогом между взаимодействующими процессами, устанавливая, какая из сторон, когда, как долго и т.д. должна осуществлять передачу.
Транспортный уровень (Transport) . Уровень 4. Основная функция Транспортного уровня − принять данные от Сеансового уровня, разбить их при необходимости на небольшие части и передать Сетевому уровню, гарантируя, что эти части в правильном порядке прибудут по назначению. Все это должно быть сделано эффективно и так, чтобы изолировать более высокие уровни от каких-либо изменений в аппаратной технологии. Транспортный уровень также следит за созданием и удалением сетевых соединений, управляет потоком сообщений, проверяет ошибки и участвует в решении задач, связанных с отправкой и получением пакетов. Примеры протоколов транспортного уровня - ТСР и SРХ.
Сетевой уровень (Network) . Уровень 3. Сетевой уровень управляет операциями подсети. Он отвечает за адресацию сообщений и перевод логических адресов и имен в физические. Сетевой уровень разрешает также проблемы, связанные с разными способами адресации и разными протоколами при переходе пакетов из одной сети в другую, позволяя объединять разнородные сети. Примеры протоколов сетевого уровня - IP и IPX.
Уровень передачи данных или канальный (Data Link) . Уровень 2. Основная задача Канального уровня - преобразовать способность Физического уровня передавать данные в надежную линию связи, свободную от необнаруженных ошибок с точки зрения вышестоящего Сетевого уровня. Эту задачу Канальный уровень выполняет при помощи разбиения входных данных на кадры размером от нескольких сот до нескольких тысяч байтов. Каждый следующий кадр данных передается только после получения и обработки кадра подтверждения, посылаемого обратно получателем. Кадр - это логически организованная структура, в которую можно помещать данные. На рис. представлен простой кадр данных, где идентификатор отправителя − адрес компьютера-отправителя, а идентификатор получателя − адрес компьютера-получателя. Управляющая информация используется для маршрутизации, указания типа пакета и сегментации. CRC (циклический код) позволяет выявить ошибки и гарантирует правильный прием информации.
Физический уровень (Physical) . Уровень 1. Физический уровень осуществляет передачу неструктурированного, сырого, потока бит по физической среде (например, по сетевому кабелю). На этом уровне реализуются электрический, оптический, механический и функциональный интерфейсы с кабелем. Физический уровень также формирует сигналы, которые переносят данные, поступившие ото всех вышележащих уровней. На этом уровне определяется способ соединения сетевого кабеля с платой СА и способ передачи сигналов по сетевому кабелю. Физический уровень отвечает за кодирование данных и синхронизацию бит, гарантируя, что переданная единица будет воспринята именно как единица, а не как ноль. Уровень устанавливает длительность каждого бита и способ перевода в электрические или оптические импульсы, передаваемые по сетевому кабелю
Понятие эталонной модели широко используется в связи и информатике.
Цель введения эталонной модели состоит в определении сущности архитектуры системы и введении терминологии, а также описании общего принципа функционирования системы. Модель определяет связи, которые являются значимыми для функционирования системы, как абстрактной модели, независимой от варианта технической реализации и от постоянно развивающихся технологий, которые могли бы повлиять на внедрение системы. Зачастую архитектура разрабатывается в контексте предопределенной конфигурации, включающей протоколы, профили, спецификации и стандарты.
Есть много применений эталонной модели. Один из вариантов использования заключается в создании стандартов для объектов, которые содержатся в модели, и их взаимодействия друг с другом. При разработке конкретных прикладных стандартов связи и систем производится сравнение их архитектуры с стандартной моделью. При таком подходе работа специалистов, которым нужно создавать или анализировать объекты систем связи, которые ведут себя в соответствии со стандартом, осуществляется намного проще.
Семиуровневая модель OSI
Универсальный характер классической сетевой семиуровневой эталонной модели OSI дает возможность создавать на ее основе модели для конкретных стандартов, которые также называют эталонными. Например, на рис…. приведена эталонная модель DECT, ключевые функции которой структуированы только на трех нижних уровнях модели OSI: сетевом, канальном и физическом.
Эталонная модель DECT
1. Reference Model for Service Oriented. Architecture 1.0. Committee Specification 1, 2 August 2006. http://www.oasis-open.org/