Раздел 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.