Раздел 4. Канальный уровень модели OSI

 

7

ПРИКЛАДНОЙ

Сетевой процесс к приложениям

6

ПРЕДСТАВЛЕНИЙ

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

5

СЕАНСОВЫЙ

Обмен данными между узлами

4

ТРАНСПОРТНЫЙ

Сквозные соединения

3

СЕТЕВОЙ

Доставка данных

2

КАНАЛЬНЫЙ

Доступ к среде

*Определяет форматирование данных для их передачи;*Определяет процесс контроля доступа к сети;*Обеспечивает обнаружение ошибок.

1

ФИЗИЧЕСКИЙ

Передача двоичных данных

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

Основные функции канального уровня:

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

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

3.      Аппаратная адресация (или адресация канального уровня). Требуется в том случае, когда кадр могут получить сразу несколько адресатов. В локальных сетях аппаратные адреса (MAC-адреса) применяются всегда.

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

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

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

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

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

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

Спецификация IEEE 802 разделяет этот уровень на два подуровня:

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

·         LLC (англ. Logical Link Control) обеспечивает обслуживание сетевого уровня.

По своему назначению все кадры уровня LLC (называемые в стандарте IEEE 802.2 блоками данных – Protocol Data Unit, PDU) подразделяются на три типа – информационные, управляющие и ненумерованные:

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

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

·         Ненумерованные кадры предназначены для передачи ненумерованных команд и ответов, выполняющих в процедурах без установления логического соединения передачу информации, идентификацию и тестирование LLC-уровня, а в процедурах с установлением логического соединения – установление и разъединение логического соединения, а также информирование об ошибках.

Все типы кадров уровня LLC имеют единый формат. Они содержат четыре поля:

·         адрес точки входа сервиса назначения (Destination Service Access Point, DSAP),

·         адрес точки входа сервиса источника (Source Service Access Point, SSAP),

·         управляющее поле (Control)

·         поле данных (Data)

 

Флаг

DSAP

SSAP

Control

Data

Флаг

01111110

Адрес точки входа сервиса назначения

Адрес точки входа сервиса источника

Управляющее поле

Данные

01111110

Рисунок 4. Формат LLC кадра

Кадр LLC обрамляется двумя однобайтовыми полями «Флаг», имеющими значение 01111110. Флаги используются на MAC-уровне для определения границ блока.

Поле данных кадра LLC предназначено для передачи по сети пакетов протоколов верхних уровней – IP, IPX, AppleTalk, DECnet, в редких случаях – прикладных протоколов, когда те не пользуются сетевыми протоколами, а вкладывают свои сообщения непосредственно в кадры канального уровня. Поле данных может отсутствовать в управляющих кадрах и некоторых ненумерованных кадрах.

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

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

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

Протоколыканальногоуровня:ARCnet, ATM, 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 (предоставляетфункции LLC дляподуровня IEEE 802 MAC), 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), Serial Line Internet Protocol (SLIP, устарел), StarLan, Token ring, Unidirectional Link Detection (UDLD), x.25.

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