Меню
Бесплатно
Главная  /  Навигаторы  /  Назначение транспортного уровня модели osi. Как работают сетевые устройства согласно сетевой модели OSI

Назначение транспортного уровня модели osi. Как работают сетевые устройства согласно сетевой модели OSI

), IPX, IGMP, ICMP, ARP.

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

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

Идея разбиения на подсети - это основа построения составных сетей.

Сеть называется составной (internetwork или internet), если она может быть представлена в виде совокупности нескольких сетей. Сети, входящие в составную сеть, называются подсетями (subnet), составляющими сетями или просто сетями, каждая из которых может работать на основе собственной технологии канального уровня (хотя это и не обязательно).

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

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

    Логические сегменты сети, расположенные между мостами или коммутаторами, слабо изолированы друг от друга. Они не защищены от широковещательных штормов. Если какая-либо станция посылает широковещательное сообщение, то это сообщение передается всем станциям всех логических сегментов сети. Администратор должен вручную ограничивать количество широковещательных пакетов, которое разрешается генерировать некоторому узлу в единицу времени. В принципе некоторым образом удалось ликвидировать проблему широковещательных штормов с использованием механизма виртуальных сетей(Настройка VLAN Debian D-Link), реализованного во многих коммутаторах. Но в этом случае, хотя и возможно достаточно гибко создавать изолированные по трафику группы станций, но при этом они изолированы полностью, то есть узлы одной виртуальной сети не могут взаимодействовать с узлами другой виртуальной сети.

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

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

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

Рассмотрим в данной статье назначение уровней эталонной модели osi, с подробным описанием каждого из семи уровней модели.

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

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

Многоуровневый подход:

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

На Международную Организацию по Стандартам (International Standards Organization, ISO, созданная в 1946 году) возложили задачу создания универсальной модели, которая четко разграничит и определит различные уровни взаимодействия систем, с поименованными уровнями и с наделением каждого уровня своей конкретной задачи. Эту модель назвали моделью взаимодействия открытых систем (Open System Interconnection, OSI) или моделью ISO/OSI .

Эталонная Модель Взаимосвязи Открытых Систем (семиуровневая модель osi) введена в 1977 г.

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

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

Взаимодействие между уровнями организовано следующим образом:

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

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

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

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

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

Помимо термина "данные" (data), которое используется в модели OSI на прикладном, представительном и сеансовом уровнях, используются и другие термины на других уровнях модели OSI, чтобы можно было сразу определить на каком уровне модели OSI выполняется обработка.

В стандартах ISO для обозначения той или иной порции данных, с которыми работают протоколы разных уровней модели OSI, используется общее название - протокольный блок данных (Protocol Data Unit, PDU). Для обозначения блоков данных определенных уровней часто используются специальные названия: кадр (frame), пакет (packet), сегмент (segment).

Функции физического уровеня

  • на этом уровне стандартизируются типы разъемов и назначение контактов;
  • определяется, каким образом представляются "0" и "1";
  • интерфейс между сетевым носителем и сетевым устройством (передает электрические или оптические сигналы в кабель или радиоэфир, принимает их и преобразует в биты данных);
  • функции физического уровня реализуются во всех устройствах, подключенных к сети;
  • оборудование, работающее на физическом уровне: концентраторы;
  • Примеры сетевых интерфейсов, относящихся к физическому уровню: RS-232C, RJ-11, RJ-45, разъемы AUI, ВNС .

Функции канального уровня

  • нулевые и единичные биты Физического уровня организуются в кадры - "frame". Кадр является порцией данных, которая имеет независимое логическое значение;
  • организация доступа к среде передачи;
  • обработка ошибок передачи данных;
  • определяет структуру связей между узлами и способы их адресации;
  • оборудование, работающее на канальном уровне: коммутаторы, мосты;
  • примеры протоколов, относящихся к канальному уровню: Ethernet , Token Ring , FDDI, Bluetooth , Wi-Fi , Wi-Max, X.25, FrameRelay, ATM.

Для ЛВС канальный уровень разбивается на два подуровня:

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

Функции сетевого уровня

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

Функции транспортного уровня модели osi

  • обеспечивает приложениям (или прикладному и сеансовому уровням) передачу данных с требуемой степенью надежности, компенсирует недостатки надёжности более низких уровней;
  • мультиплексирование и демультиплексирование т.е. сбора и разборка пакетов;
  • протоколы предназначены для взаимодействия типа «точка-точка»;
  • начиная с данного уровня, протоколы реализуются программными средствами конечных узлов сети - компонентами их сетевых ОС;
  • примеры: протоколы TCP , UDP .

Функции сеансового уровня

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

Функции представительного уровня

  • отвечает за преобразование протоколов и кодирование/декодирование данных. Запросы приложений, полученные с уровня приложений, преобразует в формат для передачи по сети, а полученные из сети данные преобразует в формат, понятный приложениям;
  • возможно осуществление:
  • сжатия/распаковки или кодирования/декодирования данных;
  • перенаправления запросов другому сетевому ресурсу, если они не могут быть обработаны локально.
  • пример: протокол SSL (обеспечивает секретных обмен сообщениями для протоколов прикладного уровня TCP/IP).

Функции прикладного уровня модели osi

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

Сетезависимые и сетенезависимые уровни семиуровневой модели osi

По своим функциональным возможностям семь уровней модели OSI можно отнести к одной из двух групп:

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

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


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


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



Таблица состоит из двух колонок, на первоначальном этапе нас интересует лишь правая. Читать таблицу будем снизу вверх (а как иначе:)). На самом деле это не моя прихоть, а делаю так для удобства усвоения информации - от простого к сложному. Поехали!


В правой части вышеозначенной таблицы снизу вверх показн путь данных, передаваемых по сети (например, от вашего домашнего роутера до вашего комьютера). Уточнение - уровни OSI снизу вверх, то это будет путь данных на принимающей стороне, если сверху вниз, то наоборот - отправляющей. Надеюсь, пока понятно. Чтобы развеять окончательно сомнения, вот вам ещё схемка для наглядности:



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


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


2) Канальный (datalink) - тут уже намного интереснее. Для понимания канального уровня нам придётся сначала усвоить понятие MAC-адреса, поскольку именно он будет главным действующим лицом в этой главе:). MAC-адрес ещё называют "физическим адресом", "аппаратным адресом". Представляет он собой набор из 12-и символов в шестнадцатиричной системе исчисления, разделённые на 6 октетов тире или двоеточием, например 08:00:27:b4:88:c1. Нужен он для однозначной идентификации сетевого устройства в сети. Теоритически, MAC-адрес является глобально уникальным, т.е. нигде в мире такого адреса быть не может и он "зашивается" в сетевое устройство на стадии производства. Однако, есть несложные способы его сменить на произвольный, да к тому же некоторые недобросовестные и малоизвестные производители не гнушаются тем, что клепают например, партию из 5000 сетевых карт с ровно одним и тем же MAC`ом. Соответственно, если как минимум два таких "брата-акробата" появятся в одной локальной сети, начнутся конфликты и проблемы.


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


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


Итак, IP-адрес - если не вдаваться в детали, то это некий набор 12 цифр в десятеричной ("обычной") системе исчисления, разделённые на 4 октета, разделённых точкой, который присваиватеся сетевому устройству при подключении к сети. Тут нужно немного углубиться: например, многим известен адрес из ряда 192.168.1.23. Вполне очевидно, что тут никак не 12 цифр. Однако, если написать адрес в полном формате, всё становится на свои места - 192.168.001.023. Ещё глубже копать не будем на данном этапе, поскольку IP-адресация - это отдельная тема для рассказа и показа.


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


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


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


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


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


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


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


На канальном уровне мы имеем так называемый кадр. Если грубо, то это пачка байт, от 64 до 1518-и в одной пачке, из которых коммутатор читатет заголовок, в котором записаны MAC-адреса получателя и отправителя, а также техническая информация. Увидев совпадения MAC-адреса в заголовке и в своей таблице коммутации (памяти), коммутатор передаёт кадры с такими совпадениями устройству назначения


На сетевом уровне ко всему этому добру ещё добавляются IP-адреса получателя и отправителя, которые извлекаются всё из того же заголовка и называется это пакет.


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


На схеме ниже это будет видно более наглядно:



Сетевая модель OSI (open systems interconnection basic reference model - базовая эталонная модель взаимодействия открытых систем, сокр. ЭМВОС ; 1978 год) - сетевая модел стека сетевых протоколов OSI/ISO (ГОСТ Р ИСО/МЭК 7498-1-99).

Общая характеристика модели OSI


В связи с затянувшейся разработкой протоколов OSI, в настоящее время основным используемым стеком протоколов является TCP/IP, разработанный ещё до принятия модели OSI и вне связи с ней.

К концу 70-х годов в мире уже существовало большое количество фирменных стеков коммуникационных протоколов, среди которых можно назвать, например, такие популярные стеки, как DECnet, TCP/IP и SNA. Подобное разнообразие средств межсетевого взаимодействия вывело на первый план проблему несовместимости устройств, использующих разные протоколы. Одним из путей разрешения этой проблемы в то время виделся всеобщий переход на единый, общий для всех систем стек протоколов, созданный с учетом недостатков уже существующих стеков. Такой академический подход к созданию нового стека начался с разработки модели OSI и занял семь лет (с 1977 по 1984 год). Назначение модели OSI состоит в обобщенном представлении средств сетевого взаимодействия. Она разрабатывалась в качестве своего рода универсального языка сетевых специалистов, именно поэтому её называют справочной моделью.В модели OSI средства взаимодействия делятся на семь уровней: прикладной, представления, сеансовый, транспортный, сетевой, канальный и физический . Каждый уровень имеет дело с совершенно определенным аспектом взаимодействия сетевых устройств.

Приложения могут реализовывать собственные протоколы взаимодействия, используя для этих целей многоуровневую совокупность системных средств. Именно для этого в распоряжение программистов предоставляется прикладной программный интерфейс (Application Program Interface, API). В соответствии с идеальной схемой модели OSI приложение может обращаться с запросами только к самому верхнему уровню - прикладному, однако на практике многие стеки коммуникационных протоколов предоставляют возможность программистам напрямую обращаться к сервисам, или службам, расположенных ниже уровней. Например, некоторые СУБД имеют встроенные средства удаленного доступа к файлам. В этом случае приложение, выполняя доступ к удаленным ресурсам, не использует системную файловую службу; оно обходит верхние уровни модели OSI и обращается непосредственно к ответственным за транспортировку сообщений по сети системным средствам, которые располагаются на нижних уровнях модели OSI. Итак, пусть приложение узла А хочет взаимодействовать с приложением узла В. Для этого приложение А обращается с запросом к прикладному уровню, например к файловой службе. На основании этого запроса программное обеспечение прикладного уровня формирует сообщение стандартного формата. Но для того, чтобы доставить эту информацию по назначению, предстоит решить еще много задач, ответственность за которые несут нижележащие уровни. После формирования сообщения прикладной уровень направляет его вниз по стеку уровню представления. Протокол уровня представления на основании информации, полученной из заголовка сообщения прикладного уровня, выполняет требуемые действия и добавляет к сообщению собственную служебную информацию - заголовок уровня представления, в котором содержатся указания для протокола уровня представления машины-адресата. Полученное в результате сообщение передается вниз сеансовому уровню, который, в свою очередь, добавляет свой заголовок и т. д. (Некоторые реализации протоколов помещают служебную информацию не только в начале сообщения в виде заголовка, но и в конце в виде так называемого концевика.) Наконец, сообщение достигает нижнего, физического, уровня, который, собственно, и передает его по линиям связи машине-адресату. К этому моменту сообщение «обрастает» заголовками всех уровней.

Физический уровень помещает сообщение на физический выходной интерфейс компьютера 1, и оно начинает своё «путешествие» по сети (до этого момента сообщение передавалось от одного уровню другому в пределах компьютера 1). Когда сообщение по сети поступает на входной интерфейс компьютера 2, оно принимается его физическим уровнем и последовательно перемещается вверх с уровня на уровень. Каждый уровень анализирует и обрабатывает заголовок своего уровня, выполняя соответствующие функции, а затем удаляет этот заголовок и передает сообщение вышележащему уровню. Как видно из описания, протокольные сущности одного уровня не общаются между собой непосредственно, в этом общении всегда участвуют посредники - средства протоколов нижележащих уровней. И только физические уровни различных узлов взаимодействуют непосредственно.

Уровни модели OSI

Модель OSI
Уровень (layer) ) Функции Примеры
Host
layers
7. Прикладной (application) Доступ к сетевым службам HTTP , FTP , SMTP
6. Представительский (представления) (presentation) Представление и шифрование данных ASCII , EBCDIC , JPEG
5. Сеансовый (session) Управление сеансом связи RPC , PAP
4. Транспортный (transport) Сегменты (segment)/
Дейтаграммы (datagram)
Прямая связь между конечными пунктами и надежность TCP , UDP , SCTP

layers
3. Сетевой (network) Пакеты (packet) Определение маршрута и логическая адресация IPv4 , IPv6 , IPsec , AppleTalk
2. Канальный (data link) Биты (bit)/
Кадры (frame)
Физическая адресация PPP , IEEE 802.2 , Ethernet , DSL , L2TP , ARP
1. Физический (physical) Биты (bit) Работа со средой передачи, сигналами и двоичными данными USB , витая пара, коаксиальный кабель, оптический кабель

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

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

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

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

К базовым сетевым технологиям относятся физический и канальный уровни.

Прикладной уровень


Прикладной уровень (уровень приложений; application layer) - верхний уровень модели, обеспечивающий взаимодействие пользовательских приложений с сетью:

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

Протоколы прикладного уровня: RDP, HTTP, SMTP, SNMP, POP3, FTP, XMPP, OSCAR, Modbus, SIP, TELNET и другие.

Уровень представления


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

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

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

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

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

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

Другим форматом представлений является тэгированный формат файлов изображений TIFF, который обычно используется для растровых изображений с высоким разрешением. Следующим стандартом уровня представлений, который может использоваться для графических изображений, является стандарт, разработанный Объединенной экспертной группой по фотографии (Joint Photographic Expert Group); в повседневном пользовании этот стандарт называют просто JPEG.

Существует другая группа стандартов уровня представлений, которая определяет представление звука и кинофрагментов. Сюда входят интерфейс электронных музыкальных инструментов (Musical Instrument Digital Interface, MIDI) для цифрового представления музыки, разработанный Экспертной группой по кинематографии стандарт MPEG, используемый для сжатия и кодирования видеороликов на компакт-дисках, хранения в оцифрованном виде и передачи со скоростями до 1,5 Мбит/с, и QuickTime - стандарт, описывающий звуковые и видео элементы для программ, выполняемых на компьютерах Macintosh и PowerPC.

Протоколы уровня представления: AFP - Apple Filing Protocol, ICA - Independent Computing Architecture, LPP - Lightweight Presentation Protocol, NCP - NetWare Core Protocol, NDR - Network Data Representation, XDR - eXternal Data Representation, X.25 PAD - Packet Assembler/Disassembler Protocol.

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


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

Протоколы сеансового уровня: ADSP (AppleTalk Data Stream Protocol), ASP (AppleTalk Session Protocol), H.245 (Call Control Protocol for Multimedia Communication), ISO-SP (OSI Session Layer Protocol (X.225, ISO 8327)), iSNS (Internet Storage Name Service), L2F (Layer 2 Forwarding Protocol), L2TP (Layer 2 Tunneling Protocol), NetBIOS (Network Basic Input Output System), PAP (Password Authentication Protocol), PPTP (Point-to-Point Tunneling Protocol), RPC (Remote Procedure Call Protocol), RTCP (Real-time Transport Control Protocol), SMPP (Short Message Peer-to-Peer), SCP (Session Control Protocol), ZIP (Zone Information Protocol), SDP (Sockets Direct Protoco]).

Транспортный уровень


Транспортный уровень (transport layer) модели предназначен для обеспечения надёжной передачи данных от отправителя к получателю. При этом уровень надёжности может варьироваться в широких пределах. Существует множество классов протоколов транспортного уровня, начиная от протоколов, предоставляющих только основные транспортные функции (например, функции передачи данных без подтверждения приема), и заканчивая протоколами, которые гарантируют доставку в пункт назначения нескольких пакетов данных в надлежащей последовательности, мультиплексируют несколько потоков данных, обеспечивают механизм управления потоками данных и гарантируют достоверность принятых данных. Например, UDP ограничивается контролем целостности данных в рамках одной датаграммы, и не исключает возможности потери пакета целиком, или дублирования пакетов, нарушение порядка получения пакетов данных; TCP обеспечивает надёжную непрерывную передачу данных, исключающую потерю данных или нарушение порядка их поступления или дублирования, может перераспределять данные, разбивая большие порции данных на фрагменты и наоборот склеивая фрагменты в один пакет.

Протоколы транспортного уровня: ATP (AppleTalk Transaction Protocol), CUDP (Cyclic UDP), DCCP (Datagram Congestion Control Protocol), FCP (Fibre Channel|Fiber Channel Protocol), IL (IL Protocol), NBF (NetBIOS Frames protocol), NCP (NetWare Core Protocol), SCTP (Stream Control Transmission Protocol), SPX (Sequenced Packet Exchange), SST (Structured Stream Transport), TCP (Transmission Control Protocol), UDP (User Datagram Protocol).

Сетевой уровень


Сетевой уровень (lang-en|network layer) модели предназначен для определения пути передачи данных. Отвечает за трансляцию логических адресов и имён в физические, определение кратчайших маршрутов, коммутацию и маршрутизацию, отслеживание неполадок и «заторов» в сети.

Протоколы сетевого уровня маршрутизируют данные от источника к получателю. Работающие на этом уровне устройства (маршрутизаторы) условно называют устройствами третьего уровня (по номеру уровня в модели OSI).

Протоколы сетевого уровня: IP/IPv4/IPv6 (Internet Protocol), IPX (Internetwork Packet Exchange, протокол межсетевого обмена), X.25 (частично этот протокол реализован на уровне 2), CLNP (сетевой протокол без организации соединений), IPsec (Internet Protocol Security). Протоколы маршрутизации - RIP (Routing Information Protocol), OSPF (Open Shortest Path First).

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


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

Спецификация IEEE 802 разделяет этот уровень на два подуровня: MAC (Media Access Control) регулирует доступ к разделяемой физической среде, LLC (logical link control) обеспечивает обслуживание сетевого уровня.

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

Протоколы канального уровня: ARCnet, ATM (Asynchronous Transfer Mode), Controller Area Network (CAN), Econet, IEEE 802.3 (Ethernet), Ethernet Automatic Protection Switching (EAPS), Fiber Distributed Data Interface (FDDI), Frame Relay, High-Level Data Link Control (HDLC), IEEE 802.2 (provides LLC functions to IEEE 802 MAC layers), Link Access Procedures, D channel (LAPD), IEEE 802.11 wireless LAN, LocalTalk, Multiprotocol Label Switching (MPLS), Point-to-Point Protocol (PPP), Point-to-Point Protocol over Ethernet (PPPoE), StarLan, Token ring, Unidirectional Link Detection (UDLD), x.25]], ARP.

В программировании этот уровень представляет драйвер сетевой платы, в операционных системах имеется программный интерфейс взаимодействия канального и сетевого уровней между собой. Это не новый уровень, а просто реализация модели для конкретной ОС. Примеры таких интерфейсов: ODI, NDIS, UDI.

Физический уровень


Физический уровень (physical layer) - нижний уровень модели, который определяет метод передачи данных, представленных в двоичном виде, от одного устройства (компьютера) к другому. Составлением таких методов занимаются разные организации, в том числе: Институт инженеров по электротехнике и электронике, Альянс электронной промышленности, Европейский институт телекоммуникационных стандартов и другие. Осуществляют передачу электрических или оптических сигналов в кабель или в радиоэфир и, соответственно, их приём и преобразование в биты данных в соответствии с методами кодирования цифровых сигналов.

На этом уровне также работают концентраторы]], повторители сигнала и медиаконвертеры.

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