Промежуточные уровни модели взаимодействия сетевых протоколов. Сетевая модель OSI (Open System Interconnection)

Эталонная модель OSI являет собой 7-уровневую сетевую иерархию созданную международной организацией по стандартам (ISO). Представленная модель на рис.1 имеет 2 различных модели:

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

В вертикальной — соседние уровни меняются информацией с помощью интерфейсов API. Горизонтальная модель требует общий протокол для обмена информацией на одном уровне.

Рисунок — 1

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

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

На физическом уровне данные представлены в виде электрических или оптических сигналов, соответствующие 1 и 0 бинарного потока. Параметры среды передачи определяются на физическом уровне:

  • тип разъемов и кабелей
  • разводка контактов в разъемах
  • схема кодирования сигналов 0 и 1

Самые распространенные виды спецификаций на этом уровне:

  • — параметры несбалансированного последовательного интерфейса
  • — параметры сбалансированного последовательного интерфейса
  • IEEE 802.3 —
  • IEEE 802.5 —

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

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

На этом канале реализована транспортировка и прием кадров данных. Уровень реализует запросы сетевого уровня и использует физический уровень для приема и передачи. Спецификации IEEE 802.x делят этот уровень на два подуровня управление логическим каналом (LLC) и управление доступом к среде (MAC). Самые распространенные протоколы на этом уровне:

  • IEEE 802.2 LLC и MAC
  • Ethernet
  • Token Ring

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

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

На этом уровне происходит деление пользователей сети на группы. Здесь реализуется маршрутизация пакетов на основе MAC-адресов. Сетевой уровень реализует прозрачную передачу пакетов на транспортный уровень. На этом уровне стираются границы сетей разных технологий. работают на этом уровне. Пример работы сетевого уровня показан на рис.2 Самые частые протоколы:

Рисунок — 2

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

На этом уровне потоки информации делятся на пакеты для передачи их на сетевом уровне. Самые распространенные протоколы этого уровня:

  • TCP — протокол управления передачей

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

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

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

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

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

Прикладной уровень реализует доступ приложения в сеть. Уровень управляет переносом файлов и управление сетью. Используемые протоколы:

  • FTP/TFTP — протокол передачи файлов
  • X 400 — электронная почта
  • Telnet
  • CMIP — управление информацией
  • SNMP — управление сетью
  • NFS — сетевая файловая система
  • FTAM — метод доступа для переноса файлов

Начну с определения, как это принято. Модель 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) - нижний уровень модели, который определяет метод передачи данных, представленных в двоичном виде, от одного устройства (компьютера) к другому. Составлением таких методов занимаются разные организации, в том числе: Институт инженеров по электротехнике и электронике, Альянс электронной промышленности, Европейский институт телекоммуникационных стандартов и другие. Осуществляют передачу электрических или оптических сигналов в кабель или в радиоэфир и, соответственно, их приём и преобразование в биты данных в соответствии с методами кодирования цифровых сигналов.

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

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