Керування трафіком на рівні каналів каналів передачі даних
Керування передачею інформації на рівні каналів передачі даних здійснюється за допомогою протоколів канальногорівня. Такі протоколи ще називають протоколами ланки передачі даних або лінійними протоколами, підкреслюючи тим самим, що вони керують потоками даних на одній ланці (лінії) зв’язку.
Нині існує значна кількість протоколів канального рівня, однак усі вони виконують строго визначені процедури: встановлення сеансу зв’язку (обміну) між суміжним кінцевим устаткуванням даних, керування передачею, закінчення зв’язку. Процедура встановленнязв’язкузабезпечує логічне з’єднання, що полягає у підтвердженні встановлення зв’язку і гарантує готовність пристроїв до обміну даними. Процедура керуванняпередачеюкерує обміном даними по каналу зв’язку між двома пристроями, включаючи контроль помилок і підтвердження передачі. При цьому інформація передається у вигляді блоків даних, структура яких визначається типом використовуваного протоколу. Процедура закінченнязв’язкуприпиняє логічне з’єднання, переводячи канал у пасивний стан. Виконання даних процедур здійснюється шляхом обміну керуючими символами.
Серед лінійних протоколів розрізняють симетричні і несиметричні. У разі симетричних (рівнорангових) протоколівкінцеве устаткування даних, підключене до різних каналів зв’язку, має однаковий статус і кожне з них може керувати передачею даних.
Несиметричніпротоколи типу «ведучий-ведений» припускають наявність керуючого (ведучого) кінцевого устаткування даних, що бере на себе функції керування каналом передачі даних. Протоколи «ведучий-ведений» реалізують два режими обміну: опитування і вибір. У режимі опитування здійснюється прийом (читання) інформації з ведучого пристрою у ведений, а режим вибору забезпечує передачу (запис) даних ведучому пристрою. Слід підкреслити, що в обох режимах ініціатором обміну є ведучий пристрій. Протоколи даного типу найчастіше використовуються в системах телеобробки, при цьому ведучим пристроєм звичайно є сервер, а веденим — абонентська система, щодо яких і будемо розглядати процес передачі даних.
Режим опитування (рис. 9.2) починається з формування сервером послідовності керуючих символів, що визначає операцію прийому інформації з абонентської системи.
Рис. 9.2. Послідовність операцій в режимі опитування, де:
АСК – позитивне підтвердження; NAСK – негативне підтвердження;
ЕОТ – кінець передачі; АС – абонентська система; С – сервер
У найпростішому випадку це один керуючий символ запиту ( ENQ). За наявності даних абонентська система передає їх у вигляді блоків по каналах зв’язку до сервера, що у свою чергу здійснює контроль кожного отриманого блоку даних і, якщо не виявить у ньому помилок, передає позитивне підтвердження (ACK). Передача чергового блоку даних здійснюється тільки після підтвердження безпомилкового одержання попереднього блоку. У разі виявлення помилок у прийнятому блоці даних сервер передає негативне підтвердження (NAK), а абонентська система організує повторну передачу блоку. Після успішного завершення передачі всіх блоків даних абонентська система відповідною командою (EOT — «кінець передачі») повідомляє про це сервер. На цьому сеанс обміну закінчується.
Якщо на початку сеансу обміну абонентська система з будь-якої причини не готова передавати дані, наприклад, у разі їхньої відсутності, то на запит сервера він відразу видає негативне підтвердження, і сеанс обміну переривається.
Режим вибору (рис. 9.3) починається з передачі абонентській системі команди вибору пристрою. Якщо вона вільна і готова приймати дані, то видає позитивне підтвердження. У такий спосіб установлюється логічне з’єднання між сервером і абонентською системою. Негативне підтвердження на команду вибору видається тоді, коли з ряду причин абонентська система не може прийняти дані, наприклад, вона виконує якісь інші задачі або її вихідний буфер зайнятий даними для передачі їх серверу. У цьому разі сервер ініціює операцію опитування, результатом виконання якої є пересилання до сервера інформації про стан абонентської системи.
Рис. 9.3. Послідовність операцій при режимі вибору, де:
АСК – позитивне підтвердження; ЕОТ – кінець передачі;
АС – абонентська система; С – сервер.
При багатокрапковому з’єднанні протокол обміну дещо ускладнюється. По-перше, потрібно визначати послідовність опитування абонентських систем; по-друге, організовувати адресацію абонентських систем; по-третє, обмін даними між абонентськими системами можливий тільки через сервер.
Як приклад розглянемо передачу даних з першого в n‑у абонентську систему
(рис. 9.4). Обмін починається з опитування першої абонентської системи і передачі даних серверу, потім у режимі вибору дані передаються в n‑у абонентську систему. Отже, для передачі даних з однієї абонентської системи до іншої треба послідовно виконати операції опитування і вибору.
Мабуть, найпоширенішим прикладом реалізації методу «опитування-вибір» є протокол XMODEM, формат блоку даних якого зображено на рис. 9.5. Для запису інформації використовується код ASCII, символ SOH в якому означає початок заголовка блоку, однобайтове поле N1 містить порядковий номер блоку, що передається. Значення N2 є доповненням до значення N1; воно обчислюється передавальним пристроєм і служить для контролю правильності передачі номера блоку даних. Приймальний пристрій обчислює доповнення до числа N1 і порівнює отримане значення зі значенням N2. Якщо ці значення співпадають, то вважається, що порядковий номер блоку переданий правильно. Поле CS (скорочення від checksum) містить контрольну суму блоку даних, яка дорівнює залишку від ділення суми всіх 128 байт повідомлення на 255.
Рис. 9.4. Передача даних при багатотокрапкому підключенні, де:
АСК – позитивне підтвердження; ЕОТ – кінець передачі;
АП – абонентський пункт; АС – абонентська система; С – сервер
Рис. 9.5. Формат блоку даних протоколу XMODEM, де:
SOH – початок заголовка блоку; N1 – номер блоку, що передається;
N2 – зворотній код номера блоку; CRC – контрольна сума
Послідовність обміну керуючими сигналами і блоками даних цілком відповідає розглянутим раніше режимам опитування і вибору, при цьому керуючим сигналом «опитування» є символ NAK (негативне підтвердження), що ініціює передачу блоку даних. Подальші спроби покращення даного протоколу заміною контрольної суми твірним поліномом, збільшення блоку даних до одного кілобайта і можливості передачі кількох блоків за один сеанс обміну зумовили створення протоколу YMODEM.
Розглянутий метод «опитування – вибір» є найпростішим і часто називається методом зупинки і очікування, тому що передача кожного чергового блоку даних починається тільки після підтвердження одержання попереднього блоку. Даний метод належить до напівдуплексних методів передачі і набуває широкого застосування завдяки простоті програмної й апаратної реалізації. Однак метод зупинки і очікування має один недолік: у ньому не передбачено встановлення порядку проходження блоків даних, що при втраті блоку даних або його пошкодженні може призвести до помилок передачі. Зазначений недолік усувається у методі зупинки і очікування з нумерацією блоків даних, при цьому для підтримки підтвердження зв’язку і керування потоком інформації блоки даних нумеруються нулем чи одиницею. Наприклад, першому блоку, що передається, присвоюється нульовий номер, відповідне йому підтвердження також має нульовий номер, другий блок передається з одиницею, третій знову з нулем і т. д. Поява блоку з неочікуваним номером говорить про помилку передачі, тобто загублено блок даних чи підтвердження.
І все-таки основним недоліком розглянутих методів є низька швидкість передачі даних, пов’язана з необхідністю очікування підтвердження кожного блоку даних. Більш ефективним є метод безперервного автоматичного запиту на повторення (ARQ), ,щодопускає послідовну передачу кількох блоків даних до приходу підтвердження на перший блок даних, після чого дозволяється передача наступного блоку і т. д. Метод в основному орієнтований на використання дуплексної передачі, що забезпечує передачу підтверджень без переривання потоку даних. Більш того, найчастіше підтверджується не кожен блок даних, а група блоків, наприклад чотири. В основі методу лежить поняття передавальних і приймальних вікон. Вікно визначає кількість і номери блоків, які можна передати в даний момент без одержання чергового підтвердження. Розмір вікна постійно змінюється залежно від кількості блоків, переданих після одержання чергового підтвердження. Нижня межа вікна визначається номером чергового отриманого підтвердження, яке ніби просуває вікно вперед, роблячи його «ковзним», тому він також називається методом «ковзного вікна» Максимальний розмір вікна (W) визначається обчислювальними ресурсами, зокрема обсягом буферної пам’яті. Ці ресурси виділяються для операції обміну в кожному пристрої і для більшості систем вважаються такими, що дорівнюють семи. Це значення вибирається з урахуванням умов організації безперервного потоку даних між передавальним і приймальним пристроями. Передача чергового блоку є можливою лише тоді, коли його порядковий номер перебуває в межах вікна, тобто P(S) < P(R) – +1 +W, де P(S) – порядковий номер переданого блоку; P(R) – порядковий номер підтвердження. Виконання цієї умови забезпечує безперервну передачу блоків даних. У разі виявлення помилок передається негативне підтвердження з указівкою номера помилкового блоку, при цьому здійснюється повторна передача блоків.
Існують два методи повторної передачі. Перший метод, що називається вибірковим повторенням, потребує повторної передачі тільки помилкового повідомлення. Другий метод, що одержав назву «повернення на N кадрів», вимагає повторної передачі помилкового і всіх переданих за ним блоків. Вибіркове повторення забезпечує краще використання каналу передачі даних, оскільки проходить без повторної передачі неспотворених блоків, однак потребує додаткових апаратурних витрат для збереження блоків даних, що надійшли після спотвореного блоку. Повернення на N кадрів є простішим методом, не потребує збереження наступних блоків, але у цьому разі пропускна здатність каналу істотно залежить від кількості помилок у каналі передачі даних. Прикладом протоколів даного типу може бути протокол ZMODEM.
Із симетричних протоколів найпростішим є протокол Xon/Xoff (дозволити або заборонити передачу) і протокол зі змаганням. Використовуючи протокол Xon/Xoff кожен з пристроїв (абонентська система чи комп’ютер сервер) за наявності вільного каналу зв’язку може передавати блоки даних. Приймальний пристрій, за допомогою сигналів Xon і Xoff регулює процес передачі, забороняючи або дозволяючи передачу блоків даних.
Протокол зі змаганням передбачає «захоплення» каналу зв’язку одним із пристроїв, який потім одержує статус ведучого. Подальша послідовність операцій обміну відповідає режиму «ведучий-ведений».
Розглянуті протоколи можуть підтримувати як асинхронний, так і синхронний способи передачі даних. Крім того, у рамках синхронного способу передачі даних розрізняють байт‑ і біт-орієнтовані протоколи. У байт‑орієнтованихпротоколах керуючі й інформаційні символи подаються (кодуються) у вигляді байтів — для цього використовуються такі коди, як EDCDIC (IA5) і ASCII. Характерним для даних протоколів є те, що розташування керуючих символів у кадрі не фіксується і може бути, як і структура самого кадру, досить довільним. Байт‑орієнтовані протоколи є кодозалежними, тобто інтерпретація керуючих символів залежить від коду, який використовується, оскільки той самий символ у різних кодах може набувати різних значень.
У біт‑орієнтованих протоколах керування здійснюється на рівні бітів, при цьому кадри мають фіксовану структуру, де кожен керуючий біт залежно від його місця знаходження несе певне значеннєве навантаження. Біт‑орієнтовані протоколи є кодопрозорими, оскільки призначення керуючих символів не залежить від використовуваного коду, а цілком визначається структурою кадру. У цьому розумінні дані протоколи є більш універсальними, тому що дають можливість обмінюватися інформацією, поданою у різних системах кодування.
Дата добавления: 2015-08-11; просмотров: 1045;