Телекомунікаційні системи та мережі. Том 1. Структура й основні функції.  /  Зміст  /  Розділ 3. Стандартизація мережних протоколів і телекомунікаційного обладнання   /  Тема 3.3. Еталонна модель взаємодії відкритих систем

Зміст:

3.3.5. Канальний рівень. Функції та приклади протоколів

Канальний рівень (Data link layer) визначає правила доступу до фізичного середовища й управляє передачею інформації по каналу, здійснюючи формування сигналу про початок передачі й організовуючи початок і власне передачу інформації зі створенням сигналу закінчення передачі й наступним переведенням каналу в пасивний стан. У процесі передачі виконується перевірка прийнятої інформації та виправлення виникаючих помилок, відключення каналу при виникненні несправності, а також формування повідомлень про виникнення неусувних помилок для вищого рівня з відновленням передачі по закінченні ремонту техніки. У деяких випадках цей рівень здійснює спостереження за швидкістю обміну і закінченням інформаційних блоків, а також управляє фізичним ланцюгом при його мультиплексорному використанні.

На фізичному рівні пересилаються біти і при цьому не враховується, що фізичне середовище передачі може бути зайняте. Тому одним із завдань канального рівня є перевірка доступності середовища передачі. Інша задача канального рівня — реалізація механізмів виявлення й корекції помилок. Для цього на канальному рівні біти групуються в набори, що називаються кадрами (frames). Канальний рівень забезпечує коректність передачі кожного кадру, розміщаючи спеціальну послідовність бітів на початок і в кінець кожного кадру, для його виділення, а також обчислює контрольну суму, обробляючи всі байти кадру певним способом, і додає контрольну суму до кадру. Коли кадр надходить з мережі, отримувач знову обчислює контрольну суму отриманих даних і порівнює результат із контрольною сумою з кадру. Якщо вони збігаються, кадр вважається правильним і приймається. Якщо ж контрольні суми не збігаються, то фіксується помилка. Канальний рівень може не тільки виявляти помилки, але й виправляти їх за рахунок повторної передачі пошкоджених кадрів. Необхідно відзначити, що функція виправлення помилок для канального рівня не є обов’язковою, тому в деяких протоколах цього рівня вона відсутня, наприклад в Ethernet і Frame Relay.

Таким чином, канальний рівень забезпечує створення, передачу та прийом інформаційних блоків, перетворюючи послідовність бітових потоків у набори бітів, що називаються кадрами даних, обслуговуючи запити мережного рівня і використовуючи для передачі та прийому кадрів сервіс фізичного рівня. Спочатку цей рівень був створений як функціонально єдиний рівень, що розв’язує завдання:

  • при передачі — власне передачі кадру даних з мережного рівня на фізичний рівень і забезпечення безпомилкової передачі по фізичному рівню кадрів з однієї системи на іншу;
  • при прийомі — перерозподілу незмонтованих бітів з фізичного рівня в кадри для більш високих рівнів.

Згодом виникла необхідність розподілу канального рівня на два підрівні — рівень управління логічним зв’язком (Logical Link Control, LLC) і рівень управління доступом до фізичного середовища (Media Access Control, MAC).

Підрівень MAC працює з фізичними адресами, які називаються MAC-адресами. У мережах Ethernet і Token Ring MAC-адреси являють собою шістнадцяткові числа, записані в мікросхему мережного адаптера. MAC-адреса мережі Ethernet (іноді його називають адресою Ethernet) — це 12 шістнадцяткових цифр, кожна пара з яких відділена двокрапкою. Ці 12 шістнадцяткових цифр представляють число довжиною 48 бітів (або 6 байтів). Перші 3 байти містять код виробника, що присвоюється організацією IEEE. Останні 3 байти присвоюються виробником. MAC-адресу, або фізичну адресу, іноді називають адресою пристрою. Логічна адреса присвоюється програмним забезпеченням, змінити його дуже просто. Обидві адреси служать для ідентифікації вузла або комп’ютера в мережі.

На підрівні LLC визначається логічна топологія мережі. Вона може не збігатися з фізичною топологією. Підрівень LLC відповідає за зв’язок (або інтерфейс) між підрівнем MAC і розташованим вище мережним рівнем, перетворюючи біти і байти, отримані з рівня MAC, у формат, необхідний мережним пристроям.

Функції канального рівня, як правило, реалізуються програмно-апаратно.

У локальних мережах протоколи канального рівня підтримуються мостами, комутаторами і маршрутизаторами. У комп’ютерах функції канального рівня реалізуються спільними зусиллями мережних адаптерів і їхніх драйверів. У протоколах канального рівня, що використовуються у локальних мережах, закладено певну структуру зв’язків між вузлами і способи їх адресації. Хоча канальний рівень і забезпечує доставку кадру між будь-якими двома вузлами локальної мережі, він це робить тільки в мережі з певною топологією зв’язків, саме тією топологією, для якої він був розроблений. До таких типових топологій, що підтримуються протоколами канального рівня локальних мереж, належать «загальна шина», «кільце» і «зірка» (рис. 1.3.1—1.3.3), а також структури, отримані з них за допомогою мостів і комутаторів. У всіх цих конфігураціях адреса призначення має локальне значення для даної мережі і не змінюється при проходженні кадру від вузла-джерела до вузла-призначення. Можливість передавати дані між локальними мережами різних технологій пов’язана з тим, що в цих технологіях використовуються адреси однакового формату, до того ж виробники мережних адаптерів забезпечують унікальність адрес незалежно від технології.

У територіально-розподілених мережах, тобто мережах рівня WAN, які рідко мають регулярну топологію, канальний рівень часто забезпечує обмін повідомленнями тільки між двома сусідніми вузлами, з’єднаними індивідуальною лінією зв’язку. Прикладами протоколів «точка — точка» (як часто називають такі протоколи) можуть служити широко відомі протоколи канального рівня PPP і LAP-B, відповідальні за доставку кадру безпосередньому вузлу-сусідові. Адреса в цьому разі не має принципового значення, а на перший план виходить здатність протоколу відновлювати спотворені і втрачені кадри, оскільки погана якість територіальних каналів, особливо комутованих телефонних каналів, часто вимагає виконання подібних дій.

Якщо ж названі вище умови не дотримуються, наприклад зв’язок між сегментами Ethernet має петлеподібну структуру, або поєднувані мережі використовують різні способи адресації, як у мережах Ethernet і X.25, то протокол канального рівня не може поодинці впоратися із завданням передачі кадру між вузлами і вимагає допомоги протоколу мережного рівня. Саме так організовані мережі X.25. Таким чином, коли в мережах рівня WAN функції канального рівня в чистому вигляді виділити важко, то вони поєднуються з функціями мережного рівня в тому самому протоколі. Прикладами такого підходу можуть служити протоколи технологій ATM і Frame Relay.

На канальному рівні використовуються такі протоколи, як широко відомий для послідовних з’єднань протокол ISO High-level DataLink Conrol (HDLC), протоколи ITU-T Link Access Procedures Balanced (LAPB), Link Access Procedures on the D-channel (LAPD) і Link Access Procedures to Frame Mode Bearer Services (LAPF), протоколи IEEE 802.2 LLC (тип I і тип II), що забезпечує MAC для середовищ локальних мереж 802.Х, а також протоколи Ethernet, Token ring, FDDI, 100 VG-AnyLAN, X.25 і FR.

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