Протокол HDLC, Протоколи, Інтернет-технології, статті

Зміст


Введення

HDLC – протокол високоуровнего управління каналом передачі даних, є опублікованими ISO стандартом і базовим для побудови інших протоколів канального рівня (SDLC, LAP, LAPB, LAPD, LAPX і LLC). Він реалізує механізм управління потоком за допомогою безперервного ARQ (ковзне вікно) і має необов’язкові можливості (опції), що підтримують напівдуплексний і повнодуплексну передачу, одноточечную і багатоточкову конфігурації, а так само комутовані і некомутовані канали.


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

Існує три типи станцій
HDLC:




Три логічних стану , В яких можуть знаходитися станції в процесі взаємодії один з одним.



Три режиму роботи станції в стані передачі інформації, які можуть встановлюватися і скасовуватися в будь-який момент.


Три способи конфігурації каналу для забезпечення сумісності взаємодій між станціями, які використовують основні елементи процедур HDLC і здатні в процесі роботи міняти свій статус (первинна, вторинна, комбінована):



Управління потоком

Управління потоком в HDLC здійснюється за допомогою передавальних і приймаючих вікон. Вікно встановлюється на кожному кінці каналу зв’язку, щоб забезпечити резервування ресурсів обох станцій. Цими ресурсами можуть бути ресурси обчислювача або простір буфера. У більшості випадків вікно забезпечує і буферне простір, і правила нумерації (повідомлень). Вікно встановлюється під час ініціювання сеансу зв’язку між станціями. Якщо станція А і станція В повинні обмінятися даними, А резервує вікно для В, а В резервує вікно для А. Використання вікон необхідно для повнодуплексних протоколів, тому що вони мають на увазі безперервний потік кадрів в приймаючий вузол без періодичних підтверджень із зупинкою і очікуванням.

Змінні стану станції V (S) і V (R). Вікна в приймаючому і передавальному вузлах управляються змінними стану, які представляють по суті стан лічильника. Передавальний вузол підтримує змінну стану посилки V (S). Це порядковий номер наступного по черзі I-кадру, який повинен бути переданий. Приймаючий вузол підтримує змінну стану прийому V (R), яка містить номер, який, як очікується, є порядковим номером наступного I-кадру. V (S) збільшується на 1 при передачі кожного кадру і поміщається в поле порядкового номера посилки кадру. Отримавши кадр, який приймає вузол робить перевірку наявності помилок передачі і порівнює порядковий номер зі своїм V (R). Якщо кадр може бути прийнятий, вузол збільшує V (R) на 1, поміщає його в поле порядкового номера прийому кадру підтвердження АСК і посилає цей кадр в вузол-відправник, завершуючи квитирование передачі.

Якщо V (R) не дорівнює порядковому номеру посилки в кадрі або виявлена ​​помилка, значить, щось сталося, і після тайм-ауту в вузол-відправник надсилається NAK [з порядковим номером прийому, що містить значення V (R)]. У більшості протоколів цей NAK називається неперервним (REJ) або Вибірковий непре (SREJ). Значення V (R) повідомляє передавальний пристрій ООД про те, що очікується посилка нового кадру. Т. к. передавач відновлює старе значення V (S) і повторює передачу кадру, порядковий номер якого збігається з значенням V (S).

У багатьох системах для V (S) і V (R) у порядкових номерів у кадрі використовуються числа 0-7. якщо змінні стану в результаті послідовного збільшення досягли 7, то, починаючи з 0, ці числа знову використовуються. Внаслідок повторного використання чисел пристроїв сттанціям не дозволено посилати кадр з порядковим номером, який не був підтверджений. Наприклад, протокол повинен дочекатися підтвердження кадру з номером 6, перш ніж він знову використовує V (S) = 6. Цей процес показаний на рис.1. Тут кадри з 6 по 4 ще не підтверджені. Якби був посланий ще один кадр з порядковим номером 6, відповідне підтвердження АСК з номером 6 не дозволило б визначити, прихід якого кадру з порядковим номером 6 підтверджується.

Використання номерів 0-7 дозволяє семи кадрам бути в активному стані, перш, ніж “закриється” вікно. Незважаючи на те що діапазон 0-7 дає вісім порядкових номерів, V (R) містить значення наступного очікуваного кадру, що обмежує число активних кадрів до 7.



Формат кадру HDLC

На канальному рівні використовується термін кадр для позначення незалежного об’єкта даних, що передається від однієї станції до іншої (Рис.1).

Прапор . Всі кадри повинні починатися і закінчуватися полями прапора “01111110”. Станції, підключені до каналу, постійно контролюють двійкову послідовність прапора. Прапори можуть постійно передаватися по каналу між кадрами HDLC. Для індексації виняткової ситуації в каналі можуть бути послані сім поспіль йдуть одиниць. П’ятнадцять або більше число одиниць підтримують канал в стані спокою. Якщо приймаюча станція виявить послідовність бітів не є прапором, вона тим самим повідомляється про початку кадру, про виняткову (з аварійним завершенням) ситуації або ситуації спокою каналу. При виявленні наступній прапора послідовності станція буде знати, що надійшов повний кадр.















Формат кадру HDLC

Прапор

Адреса

Керуючий поле

Інформаційне поле


CRC

Прапор










































Формат керуючого поля кадру HDLC


1


2


3


4


5


6


7


8

Розряди

0

N(S)

P/F

N(R)

I-формат

1

0

S-коди

P/F

N(R)

S-формат

1

1

U-коди

P/F

U-коди

U-формат


Рис.1. Формат кадру і керуючого поля HDLC, де:
N (S) – порядковий номер переданого кадру,
N (R) – порядковий номер прийнятого кадру,
P/F – Біт опитування / закінчення


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

































Правила адресації

Первинна
станція А

—— Команда (Адреса В) —–>

Вторинна
станція В

Несбалансір.
конфігурація

<----- Відповідь (Адреса В) ------

Комбінов.
станція
А

—– Команда (Адреса В) —–>

Комбінов.
станція
В

Збалансується.
конфігурація

<----- Відповідь (Адреса В) ------

<----- Команда (Адреса А) ------

—— Відповідь (Адреса А) —–>


Керуючий поле задає тип команди або відповіді, а так само порядкові номери, які використовуються для звітності про проходження даних в каналі між первинною і вторинною станціями. Формат і зміст керуючого поля (Рис. 1) визначають кадри трьох типів: інформаційні (I), супервизорного (S) і ненумеровані (U).



Інформаційне поле містить справжні дані користувача. Інформаційне поле є тільки в кадрі інформаційного формату. Його немає в кадрі супервизорного або ненумерованого формату. [Примітка: кадри “UI – ненумерованих інформація” і “FRMR – непре кадру” ненумерованого формату мають інформаційне поле].


Поле CRC (Контрольна послідовність кадру) використовується для виявлення помилок передачі між двома станціями. Передавальна станція здійснює обчислення над потоком даних користувача, і результат цього обчислення включається в кадр в якості поля CRC. У свою чергу, приймаюча станція виробляє аналогічні обчислення і порівнює отриманий результат з полем CRC. Якщо має місце збіг, велика ймовірність того, що передача відбулася без помилок. У випадку розбіжності, можливо, мала місце помилка передачі, і приймаюча станція посилає негативний підтвердження, означає, що необхідно повторити передачу кадру. Обчислення CRC називається циклічним контролем по надмірності і використовує певний продукує поліном відповідно до рекомендації МККТТ V.41. Цей метод дозволяє виявляти всілякі кортежі помилок довжиною не більше 16 розрядів, що викликаються одиночної помилкою, а також 99,9984% усіляких більше довгих кортежів помилок.


Кодонезависимость і синхронізація HDLC

HDLC є кодопрозрачним протоколом . Він не залежить від конкретного коду (ASCII/IA5 або EBCDIC) при виконанні функції управління каналом. Восьмибітові комбінація прапора 01111110 поміщається на початку і в кінці кадру, щоб дати можливість приймачу розпізнати початок і кінець кадру. Можливі випадки, коли прикладний процес поміщає в даних користувача послідовність 01111110, збігається з прапором. В цьому випадку передавальна станція в потік вихідних даних поміщає 0 після 5 поспіль йдуть одиниць, зустрілися в будь-якому місці між початковим і кінцевим прапорами кадру. Така вставка проводиться в адресний, що управляє, інформаційне поля і поле CRC. Цей метод називається вставкою бітів(bit staffing) ; Таку ж функцію виконує знак DLE в протоколі BSC. Після того як завершується вставка бітів в кадр і по кінцях кадру поміщаються прапори, кадр передається приймачу по каналу.

Приймач постійно контролює потік бітів. При отриманні нуля з п’ятьма далі йдуть підряд одиницями (011111) аналізує наступний (сьомий) біт. Якщо це нуль, він видаляє цей біт. Однак якщо сьомий біт є одиницею (0111111), приймач аналізує восьмий біт. Якщо це нуль (01111110), він вважає, що отримана Флаговая комбінація. Якщо це одиниця, виконується аналіз подальших біт. Можлива ситуація прийому або сигналу спокою, або сигналу аварійного завершення, на які станція реагує відповідним чином. Таким чином, в протоколі HDLC забезпечуються кодова прозорість по даними. Протоколу байдуже, які кодові комбінації знаходяться в потоці даних. Єдине, що потрібно, – це підтримувати унікальність прапорів.

HDLC використовується також два інших сигналу: сигнал аварійного завершення (АЗ) складається з послідовності одиниць, кількість яких не менше семи і не більше чотирнадцяти; стан спокою
представляється послідовністю п’ятнадцяти або більшої кількості одиниць.


Сигнал аварійного завершення (abort) поміщається в кінці кадру. Передавальна станція посилає цей сигнал, коли виникає виняткова ситуація, що вимагає відновлення. Слідом за повідомленням про аварійний завершенні можуть надсилатися прапори для того, щоб підтримувати канал в активному стані, і передача могла продовжуватися.


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


Міжкадрового тимчасове заповнення супроводжується передачею між кадрами безперервної послідовності прапорів. Прапори можуть бути восьмибітові комбінаціями, або ж може мати місце суміщення останнього 0 попереднього прапора з першим 0 наступного прапора. Наприклад, 01111110011111100111111001111110 … або 011111101111111011111110 …


 


Керуючий поле HDLC

Керуючий поле (рис.1) визначає тип кадру і використовується для реалізації механізму управління потоком проміжній станціями. На рис.2 представлені команди і відповіді, які використовуються у разі збалансованої і незбалансованої конфігурацій каналу. Відзначимо, що в кожному верхньому прямокутнику містяться три команди: SNRM, SARM, SABM.











































































Незбалансований (UN)

Незбалансований (UA)

Збалансований (UB)

Первинна


Вторинна

Первинна

Вторинна

Первинна

Вторинна

Команда

Відповідь

Команда

Відповідь

Команда

Відповідь

I

I

I

I

I

I

RR

RR

RR

RR

RR

RR

RNR

RNR

RNR

RNR

RNR

RNR

SNRM

UA

SARM

UA

SABM

UA

DISC

DM

DISC

DM

DISC

DM

 

FRMR

 

FRMR

 

FRMR



















































Рис. 3. Команди і відповіді HDLC

Функціональні розширення

Команда


Відповідь


Команда


Відповідь


1. Для комутованих соед. XID

XID, RD

8. Відкинути інформаційні кадри “Відповідь”

2. Для дуплексного каналу REJ

REJ

9. Відкинути інформаційні кадри “Команда”

3. Для однокадровий передачі SREJ

SREJ

10. Розширена нумерація N (R), N (S)

4. Для інформації UI

UI

11. Для вуст. в 0 свого V (S) і видалений. V (R)
  RSET

5. Для ініціалізації SIM

RIM

12. Перевірка каналу TEST

TEST

6. Для групового опитування UP

 

13. Запит на роз’єднання

RD

7. Розширене поле адреси кадру 14. 32-бітова CRC

Ці команди є командами встановлення режиму. HDLC вимагає, щоб в одному з трьох режимів була встановлена ​​збалансована або незбалансована конфігурація. На малюнку показані також функціональні розширення (опції) основної структури. Тут представлений повний набір команд і відповідей. Деякі підмножини протоколу HDLC використовують тільки частина цього набору команд / відповідей.

Дійсний формат керуючого поля (інформаційний, супервизорного або ненумерований) визначає те, як це поле кодується або використовується. Найпростішим форматом є інформаційний формат. Вміст керуючого поля для цього формату показано на рис.1. Керуючий поле інформаційного кадру містить два порядкових номерів Номер N (S) (Порядковий номер посилки) пов’язаний з порядковим номером переданого кадру. N (R) (Порядковий номер прийому) означає порядковий номер наступного кадру, який очікується приймаючої станцією. N (R) виступає в якості підтвердження попередніх кадрів. Наприклад, якщо поле N (R) встановлено в 4, станція, отримавши N (R) = 4, знає, що передача кадрів 0, 1, 2 і 3 завершилася успішно і що станція, з якої проводиться обмін даними, очікує, що наступний кадр буде мати порядковий номер посилки N (S) = 4. Поле N (R) забезпечує включає підтвердження (Квитирование), тобто N (R) = 4 включає підтвердження не тільки одного попереднього повідомлення. Змінні стану посилки V (S) і стану прийому V (R), розглянуті нами раніше, використовуються для формування полів N (S) і N (R) протоколу HDLC.

П’ятий двійковий розряд, біт P / F або біт опитування / закінчення приймається до уваги тільки тоді, коли він встановлений в 1. Біт P / F називається бітом P, коли він використовується первинної станцією, і бітом F, коли він використовується вторинної станцією. Він використовується первинної і вторинної станціями для виконання таких функцій:


Тільки один біт P (очікує відповіді у вигляді F біта) може бути активним в каналі в будь-який момент часу. Якщо певний біт P встановлено в 1, він може бути використаний в якості контрольної точки. Тобто P = 1 як би каже: дайте мені, бо я хочу знати ваш статус. Контрольні точки відіграють велику роль в реалізації механізму управління трафіком. Це також спосіб усунення невизначеностей та скасування накопичених транзакції. Біт P / F може використовуватися і інтерпретуватися наступним чином:



Опис команд і відповідей

Супервизорного формат показаний на рис.1 і передбачає чотири команди і відповіді (RR, RNR, REJ, SREJ), які представлені на рис.4.5. (Узагальнена зведення всіх команд і відповідей наведена в таблиці 1). Призначення цього формату полягає у виконанні нумерованих [тобто використовують порядкові номери кадрів N (R)] супервизорного функцій, таких, як підтвердження (Квитирование), опитування, тимчасова затримка передачі даних і відновлення після помилок. Кадри супервизорного формату не містять інформаційного поля, отже, як показано на рис.1, в них розташовується тільки порядковий номер прийому N (R). Супервизорного формат може бути використаний для підтвердження прийому кадрів від передавальної станції.


Функції команд і відповідей, використовуваних супервизорного форматом:



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



Функції команд / відповідей для ненумерованого формату:



UI (Unnumbered information – Ненумеровані інформація) . Ця команда дозволяє проводити передачу даних користувача в не нумерованому кадрі (т. е. без порядкового номера).

RIM (Request Initialization Mode – Режим ініціалізації запиту) . Кадр RIM є запитом на команду SIM від вторинної до первинної станції.

SIM (Set Initialization Mode – Встановити режим ініціалізації). Ця команда використовується для ініціалізації сеансу між первинною і вторинною станціями. Очікуваним відповіддю є UА.

SNRM (Set Normal Response Mode – Встановити режим нормального відповіді)
. Ця команда переводить вторинну станцію в NRM (режим нормального відповіді). NRM запобігає посилку вторинної станцією несанкціонованих (unsolicited) кадрів. Це означає, що первинна станція управляє всім потоком повідомлень в каналі.

DM (Disconnect Mode – Режим роз’єднання). Цей кадр відповіді передається вторинної станцією для індикації того, що вона знаходиться в режимі логічного завершення.

DISC (Disconnect – Роз’єднати) . Ця команда, передана первинної станцією, переводить вторинну станцію в режим роз’єднання аналогічно натисненню важеля телефонного апарату.

UA (Unnumbered Acknowledgment – Ненумеровані підтвердження) . Це – позитивне підтвердження АСК для установки режиму команд (SIM, DISC, RESET). UA також використовується для повідомлення про закінчення стану зайнятості станції.

FRMR (Frame Rejekt – непре кадру) . Вторинна станція посилає цей кадр, коли вона зустрічається з недійсним кадром. Причина вказується в інформаційному полі цього кадру. Кадр відповіді FRMR використовується при виконанні наступних умов:



В інформаційному полі кадру FRMR міститься інформація про стан (Status) відкинутого кадру:


RD (Request Disconnect – Запит роз’єднання) . Це запит від вторинної станції на логічне роз’єднання і встановлення стану логічного завершення.



XID (Exchage State Identification – Ідентифікація станції при комутації) . Ця команда запитує ідентифікацію вторинної станції. В системах з комутацією ця команда використовується для ідентифікації викликає станції.



TEST (Test-перевірка) . Цей кадр (команда / відповідь) використовується для санкціонування тестових відповідей від вторинної станції. У відповіді бажано сформувати інформаційну область, що міститься в команді.



SARM (Set Asynchronous Response Mode-Встановити режим асинхронних відповідей). Встановлює режим, що дозволяє вторинної станції вести передачу без опитування з боку первинної станції. Він переводить вторинну станцію в стан передачі інформації (IS) режиму ARM. Оскільки команда SARM встановлює дві незбалансовані станції, SARM повинна видаватися за обома напрямками передачі:



Команди DISC надсилаються, щоб гарантувати повну реініціалізації каналу.


SABM (Set Asynchronous Balanced Mode – Встановити асинхронний збалансований режим). Встановлює режим в ARM, в якому станції є рівноправними. Для передачі не потрібно опитування, оскільки кожна станція є станцією комбінованого типу.


SNRME (Set Normal Response Extended – Встановити розширений режим нормального відповіді). Встановлює SNRM з двома додатковими байтами в керуючому поле.


SABME (Set Asynchronous Balance Mode Extended – Встановити розширений асинхронний збалансований режим) . Встановлює SABM з двома додатковими байтами в керуючому поле.



UP (Unnumbered Poll – Ненумерованний опитування) . Команда опитує станцію безвідносно до нумерації кадрів і квитування. Якщо біт опитування встановлено в 0, відповідь є необов’язковою можливістю, що надається тільки для одного відповіді. Як відповідь можуть бути передані непідтверджені або ще непередані I-кадри.



RSET (Reset – Скидання змінних). Передавальна станція скидає свій V (S), а приймаюча станція свій V (R) з метою відновлення впорядкованої передачі в заданому напрямку нової послідовності кадрів. Ця команда використовується для відновлення. Кадри, які раніше не були квітіровани, залишаються такими.












Таблиця 1

 

Код керуючого поля

   

































































































































































































































































 

1

2

3

4

5

6

7

8

Команди

Відповіді

I-формат

0

N(S)

*

N(R)

I – Інформація

I – Інформація

S-формат

1

0

0

0

*

N(R)

RR – Готовий до прийому

RR – Готовий до прийому

1

0

0

1

*

N(R)

REJ – непре

REJ – непре

1

0

1

0

*

N(R)

RNR – Не гот.к прийому

RNR – Не гот.к прийому

1

0

1

1

*

N(R)

SREJ – Вибір. непре

SREJ – Вибір. непре

U-формат

1

1

0

0

*

0

0

0

UI – Ненумеров. інформ.

UI – Ненумеров. інформ.

1

1

0

0

*

0

0

1

SNRM – Встановити NRM

 

1

1

0

0

*

0

1

0

DISC – Роз’єднати

RD-Запит роз’їдені.

1

1

0

0

*

1

0

0

UP-Ненумеров. опитування

 

1

1

0

0

*

1

1

0

 

UA – Ненумеров.подтв.

1

1

0

0

*

1

1

1

TEST – Перевірка

TEST – Перевірка

1

1

1

0

*

0

0

0

SIM – Уст.реж.ініц.

RIM – Запр.реж.ініц.

1

1

1

0

*

0

0

1

 

FRMR – непре кадру

1

1

1

1

*

0

0

0

SARM – Встановити ARM

DM – Режим роз’їдені.

1

1

1

1

*

0

0

1

RSET – Скинути

 

1

1

1

1

*

0

1

0

SARME – Уст.расш.ARM

 

1

1

1

1

*

0

1

1

SNRME – Уст.расш.NRM

 

1

1

1

1

*

1

0

0

SABM-встановити ABM

1

1

1

1

*

1

0

1

XID – Ідентифіка. станції

XID – Ідентифіка. станції

1

1

1

1

*

1

1

0

SABME-Уст.расш. ABM

 


 


Системні параметри Т1, N2, N1, K та рекомендації щодо їх установці

Таймер Т1 запускається з моменту передачі кожного кадру і використовується для ініціювання повторної передачі, в разі його переповнення. При виборі періоду таймера Т1 необхідно враховувати, запускається чи таймер по початку або по кінцю кадру. Для правильної роботи процедури необхідно, щоб період таймера Т1 був більше, ніж максимальний час між передачею деякого кадру (SARM, SABM, DM, DISC, FRMR, I або супервизорного команди) і прийомом відповідного кадру, що повертається в якості відгуку на цей кадр (UA, DM або підтверджуючий кадр).

Лічильник N2 використовується для визначення максимального числа повторних передач, що виконуються за переповненні таймера Т1. Змінні Т1 і N2 використовуються також командами / відповідями встановлення ланки, такими, як SABM і
UA.


Лічильник N1 – Максимальне число бітів в I-кадрі. Визначає максимальну довжину інформаційних полів.


Розмір вікна До – Максимальне число переданих, але не підтверджених I-кадрів. Це максимальне число послідовно занумеровані I-кадрів, які в будь-який момент часу станції можуть передати без отримання підтвердження. Воно не повинно бути більше 7.

Параметри Т1, N2, N1 і K є системними, що підлягають погодженням з адміністрацією на деякий період часу.


Приклади


Приклади процесів передачі в протоколі HDLC наведені на рис.4, 5,6,7,8. На цих малюнках показані різні види комунікації:


Умовні позначення, що використовуються на малюнках. Малюнки являють собою як би “логічні знімки”, зроблені в окремі інтервали часу (t, t +1 і т.д.). Позначення, що знаходяться в тимчасовому “вікні”, відображають зміст кадру HDLC (чи деякого підмножини протоколу, наприклад, LAPB), переданого станціями А і В у конкретний час.
Дуже малоймовірно, що дві станції почнуть передачу строго в один і той же момент часу, але для спрощення пояснення ми будемо дотримуватися цього припущення. Наприклад, тимчасове вікно станції А могло б бути зображено більш широким, ніж вікно станції В, що означало б, що станцією А передається довший кадр, але нерівні вікна не виправдано ускладнили б і без того складну тему. Якщо погодиться з цієї невеликої аномалією, принципи, які пояснюються на малюнках, залишаються в силі. Крім того, ілюстрації полнодуплексного методу показують деякі тимчасові вікна, пов’язані з каналу, який перебуває в стані спокою. Це може мати місце або ні залежно від того, як завантажені станції.


Сенс позначень такий:
А, В – Адреса станції в заголовку кадру.
I – Інформаційний кадр.
S = x – Порядковий номер посилки х.
R = x – Порядковий номер прийому х.
RR, SNRM, SABM, REJ, SREJ – Команди і відповіді.
P / F – Біт опитування / закінчення встановлений в 1.

Нагадаємо, що порядковий номер прийому N (R) означає включає підтвердження всього переданого і прийнятого трафіку. Номер в цьому полі в дійсності представляє собою величину, на 1 велику номера останнього підтвердженого кадру. Наприклад, R = 4 означає, що підтверджені кадри 0,1,2 і 3 і що приймач очікує, що наступний кадр буде мати 4 в поле порядкового номера посилки передавальної станції. По ходу опису процесу будемо обговорювати біт P / F там, де це необхідно.

Всі малюнки супроводжуються коротким описом подій в кожен момент часу. Можна помітити, що в ілюстраціях як адреса станції використовується або А, або В. Як зазначалося раніше, правилами протоколу HDLC визначено, яку адресу (передавальною або приймальною станції) поміщається в поле адреси: команди використовують адреса приймаючої однорівневого логічного об’єкта рівня ланки даних. Таким чином у разі станції з адресою А, якщо прийнятий кадр містить А, це команда, якщо прийнятий кадр містить В, це відповідь.

За винятком рис.10, угоди щодо адресації, прийняті в ілюстраціях, відповідають підмножині HDLC-LAPB (збалансованої процедурі доступу до ланки). Цей широко використовуваний протокол вимагає, щоб всі інформаційні (I) кадри були командними кадрами. Внаслідок цього він містить адреса приймача. Хоча всі ці приклади неприпустимі в LAPB, для наочності ілюстрацій використовується деяка несуперечлива схема адресації. Більш детально LAPB розглядається пізніше.

Опис подій для процесу, представленого на рис.4:










































 

t

t+1

t+2

t+3

t+4

t+5

t+6

t+7

t+8

Ст. А

B,
SABM
P

 

B,I
S=0
R=0

B,I,P
S=1
R=0

 

 

 

A,RR
F
R=2

 

Ст. В

 

B,UA
F

 

 

B,RR
F
R=2

A,I
S=0
R=2

A,I,P
S=1
R=2

 

B,RR
F
R=2

Рис.4 Асинхронний збалансований режим з напівдуплексним потоком даних (з використанням P / F для реалізації “контрольної точки”).



Нижче наведені моменти часу і події для процесу, представленого на рис.5:










































Рис.5. Асинхронний збалансований режим з повнодуплексним потоком даних (Р не зупиняє потоку даних). Передбачається, що в попередніх кадрах був встановлений асинхронний збалансований режим

 

t

t+1

t+2

t+3

t+4

t+5

t+6

t+7

t+8

Станція А передає

B,I
S=0
R=0

B,I,P
S=1
R=1

 

 

B,I
S=2
R=3

B,RR,
P
R=4

 

B,I
S=3
R=5

B,RR
P
R=5

Станція В передає

A,I
S=0
R=0

A,I
S=1
R=1

B,RR
F
R=2

A,I
S=2
R=2

A,I
S=3
R=2

A,I
S=4
R=3

B,RR
F
R=3

A,I
S=5
R=3

A,RR
P
R=4


Рис.6, 7,8 є прикладами того, як в протоколі HDLC обробляються помилки передачі. На рис.6 показано використання поля порядкового номера прийому N (R) для негативного (NAK) підтвердження кадру. На рис.7 показано використання Неприйняття (REJ), а рис.8 ілюструє використання
Вибіркового неприйняття (SREJ). Тут розглядається момент t триваючого сеансу, коли станція А передає кадр з номером 6.

Нижче наведені моменти часу і події для процесу, показаного на рис.6 (не підтримуваного протоколом LAPB)










































Рис.6 Відновлення за методом Повернення-на-N (Контрольна точка). Рисунок ілюструє триває сеанс; Р і F використовуються для реалізації відновлення

 

t

t+1

t+2

t+3

t+4

t+5

t+6

t+7

t+8

Станція А передає

B,I
S=6
R=4

B,I
S=7
R=4
(Помилка)

B,I
S=0
R=4

B,I,P
S=1
R=4

 

B,I
S=7
R=4

B,I
S=0
R=4

B,I,P
S=1
R=4

 

Станція В передає

 

 

 

 

B,RR,F R=7

 

 

 

RR,F R=2

(RR) з порядковим номером прийому 2 та встановленим бітом F.

Виключне використання поля порядкового номера прийому N (R) для негативного підтвердження кадру не рекомендується для полнодуплексной передачі. Так як кадри передаються по каналу в обох напрямках, порядкові номера посилки і прийому часто перекриваються. Наприклад, припустимо, що кадр 4 станції А [N (S) = 4] передається приблизно в той же час, що й кадр станції В, який містить N (R) = 4. Станція А може помилково зробити висновок, що її кадр 4 отримано Станцією В з помилкою, у той час як станція В просто вказує, що наступним вона очікує кадр 4. Більш ефективний підхід до виправлення помилок полягає в явному вказівці помилкового кадру. Рис.7 і 8 ілюструють два методи реалізації явних негативних підтверджень NAK.


Нижче наведені моменти часу і події для процесу, який пояснюється рис.7:




































Рис.7 Виправлення помилок з використанням методу Повернення-на-N (REJ). Рисунок ілюструє триває сеанс

 

t

t+1

t+2

t+3

t+4

t+5

t+6

Станція А передає

B,I
S=6
R=4

B,I
S=7
R = 4 (помилка)

B,I
S=0
R=4

B,I
S=7
R=4

B,I
S=0
R=4

B,I
S=1
R=4

 

Станція В передає

 

 

B,REJ
F
R=7

 

 

 

B,RR
F
R=2


  • t, t +1,2 Станція А посилає інформаційні кадри 6, 7 і 0. Станція В виявляє помилку в кадрі 7 і негайно посилає кадр
    Непре з порядковим номером прийому 7 і F-бітом. Таким чином Станція В не очікує санкції на реалізацію контрольної точки і посилає відповідь REJ (Непре) з встановленим F-бітом. Якби станція В посилала REJ в якості команди (тобто з адресним полем, що містяться в А), станція А повинна була б відповісти кадрами RR, RNR або REJ. Однак, оскільки REJ – це відповідь, станція А негайно здійснить повторну передачу спотвореного кадру.

  • t +3,4,5 Станція А повторно передає кадри 7, 0 і 1 встановлює біт Р в момент часу 5.

  • t +6 Станція В підтверджує кадри 7, 0 і 1, використовуючи
    Готовий до прийому і порядковий номер прийому, рівний 2. Зазначимо: для повнодуплексних систем біт P / F зазвичай не використовується для зупинки потоку даних, оскільки це знижує пропускну здатність.

    Події для процесу, який представлений на рис.8 (не підтримуваного протоколом LAPB):

































    Рис.8. Виправлення помилок за методом Вибірковий непре (SREJ). Рисунок ілюструє триває сеанс

     

    t

    t+1

    t+2

    t+3

    t+4

    t+5

    Станція А передає

    B,I
    S=6
    R=4

    B,I
    S=7
    R = 4 (помилка)

    B,I
    S=0
    R=4

    B,I
    S=7
    R=4

    B,I
    S=1
    R=4

     

    Станція В передає

     

     

    B,SREJ
    F
    R=7

     

     

    B,RR
    F
    R=2



    • t, t +1,2 Станція А передає інформаційні кадри 6,7 і 0. Станція В виявляє помилку в кадрі 7 і передає Вибірковий непре з порядковим номером 7. Станція В не вимагає RR, RNR або REJ, так як кадр в t +2 не є командою.
    • t +3,4 Станція А передає повторно тільки кадр 7 і вперше передає кадр 1. Оскільки це Вибірковий непре , Кадр 0 не передається повторно.


    • t +5 Станція В підтверджує всі прийняті кадри відповіддю
      Готовий до прийому з порядковим номером прийому 2.


    Підмножини HDLC

    Прийняття базового безлічі (superset) протоколу HDLC заклало міцну основу для реалізації підмножини протоколу HDLC. Деякі підмножини використовуються в даний час в промисловості. Ці підмножини показані на дереві класифікацій мереж на рис.3. Структура базового підмножини HDLC дає можливість біт-орієнтованим протоколам розпізнавати і використовувати в різноманітних додатках одні й ті ж процедури. Програми вимагають для виконання своїх функцій різних режимів роботи і різних підмножин команд і відповідей. Наприклад, вимоги, висунуті багатоточковими інтерактивними додатками, відрізняються від вимог двоточкових неінтерактивних систем.

    Будемо вважати, що станція відповідає деякому класу HDLC, якщо це обладнання реалізує всі команди і відповіді, визначені для цього класу. Як зазначалося раніше, трьома основними класами HDLC є:





        • клас UN (незбалансований режим нормального відповіді);
        • клас UA (незбалансований режим асинхронного відповіді);
        • клас BA (збалансований асинхронний режим).



    HDLC передбачає безліч факультативних розширень основних класів. Ці розширення використовуються фірмами-постачальниками та користувачами HDLC для забезпечення більшої різноманітності в структурі базового підмножини. Нагадаємо, що опції і базове безліч HDLC показано на рис.3. Класи підмножин позначені скороченнями, такими, як UN, UA або BA плюс факультативне розширення протоколу HDLC, що позначаються конкретним номером опції. Наприклад, протокол, позначений BA-4, є збалансованим асинхронним протоколом, призначений для передачі ненумерований інформації (UI). Маючи в увазі цю класифікаційну схему, розглянемо деякі з основних підмножин стандарту HDLC.


    LAP (Процедура доступу до ланки) є одним з найбільш ранніх підмножин HDLC. LAP грунтується на команді SARM – Встановити режим асинхронного відповіді – для збалансованої конфігурації. Реалізація ланки з LAB є кілька незграбною, так як потрібно, щоб перш ніж встановлено ланка, обидві станції посилали SARM і UA. Вона відрізняється від реалізації широко використовуваної процедури LAPB.


    LAPB (Збалансована процедура доступу до ланки)
    використовується у всьому світі декількома приватними обчислювальними мережами та мережами загального користування. LAPB-це деякий підмножина репертуару команда / відповідей HDLC. LAPB використовується для підтримки широко розповсюдженого протоколу мережі з пакетною передачею Х.25. LAPB класифікується як підмножина ВА-2.5 HDLC. Це означає, що крім використання асинхронного збалансованого режиму цей протокол використовує також два функціональних рішення: опції 2 і 8. Опція 2 робить можливим одночасний непре кадрів в режимі двобічної передачі (Рис.7). Опція 8 не допускає передачу корисної інформації в кадрах відповіді. Це не представляє будь-якої проблеми, так як в асинхронному збалансованому режимі інформація може представлятися в командних кадрах, і оскільки обидві фізичні станції є логічними первинними станціями, обидві можуть представляти команди.


    LLC (Управління логічним ланкою ) Є стандартом, опублікованими Комітетом за стандартами IEEE 802 для локальних мереж. Стандарт допускає взаємодія локальної мережі з глобальною мережею. LLC використовує підклас базового безлічі HDLC; має класифікаційне позначення ВА-2, 4. Він використовує збалансований асинхронний режим (BA) і функціональні розширення (Опції 2 і 4).




















    Рис.9. Управління логічним ланкою (LLC)

    Мережевий рівень

     

    Канальний рівень

    Подуровень управління логічним ланкою (LLC)

    Подуровень блоку доступу до середовища (MAU)

    Фізичний рівень

     


    LLC розроблений так, щоб його можна було помістити між рівнем локальної мережі і рівнем глобальної мережі. Подібна реалізація показана на рис.9. Блок доступу до середовища (MAU) містить протоколи локальної мережі, а LLC забезпечує інтерфейс для верхніх рівнів. Обидва підрівня описані більш детально в розділі локальних мереж. Всі локальні мережі, специфіковані IEEE 802, забезпечують сервіс без встановлення логічного з’єднання (тип 1). Сервіс, орієнтований на встановлення логічного з’єднання (тип 2), може надаватися факультативно.

    У локальних мережах типу 1 також відсутні механізм управління потоком і відновлення даних після помилок. Це обумовлено необхідністю зниження накладних витрат для високошвидкісних каналів (відсутні фази встановлення та розірвання сполук, відсутні підтвердження прийому). Цілісність даних підтримується в ЛВС верхніми рівнями моделі ВОС. Наприклад, в TCP / IP мережах транспортним рівнем.

    У локальних ж мережах типу 2 ці функції (встановлення та розірвання сполук, механізм управління потоком за допомогою ковзного вікна) передбачені.


    Безлічі допустимих команд для LLC наведені на рис.10

















































    Рис.10. Команди і відповіді підрівня LLC локальної мережі

     

    Команди

    Відповіді

    Тип 1

    UI – ненумерованих інформація

    XID – ідентифікація станції

    XID – ідентифікація станції

    XID – ідентифікація станції

    TEST-перевірка

    TEST-перевірка

    Тип 2 (I-формат)
    (S-формат)
    (U-формат)

    I – Інформаційний кадр

    I – Інформаційний кадр

    RR – Готовий до прийому

    RR – Готовий до прийому

    RNR – Не готовий до прийому

    RNR – Не готовий до прийому

    REJ – непре

    REJ – непре

    SABM-Установити ABM

    UA – Ненумер.подтв., FRMR – непре

    DISC – роз’єднати

    UA-Ненумер.подт., DM-Роз’єднання

    LAPD (Процедура доступу до D – каналу) є ще одним підмножиною структури HDLC, хоча її розширення виходять за рамки HDLC. LABD призначений для управління ланкою даних в цифрових мережах з інтеграцією служб ISDN, яка отримує все більший розвиток.

    LAPX (Розширений LAPB) це ще одне підмножини HDLC. Цей протокол (процедура) використовується в термінальних системах і в що розвиваються стандарті TELETEX. Це напівдуплексний варіант HDLC.


    SDLC (Синхронне управління ланкою даних) є версією базового безлічі HDLC, розробленого компанією IBM. SDLC використовує незбалансований режим нормального відповіді і може бути класифікований як UN-1, 2,4,5,6,12. Забезпечує підтримку двоточкових, багатоточкових або кільцевих з’єднань. Події для процесу, підтримуваного протоколом SDLC, представлені на рис.11.










































































    Рис.11. SDLC в полнодуплексной багатоточкової системі передачі даних, де А – первинна станція, В – в режимі роз’єднання, С – в режимі нормального відповіді

     

    t

    t+1

    t+2

    t+3

    t+4

    t+5

    t+6

    t+7

    t+8

    t+9

    t+10

    t+11

    t+12

    t+13

    А

    B,RR
    P

     

    B
    SIM
    P

     

    B
    SNRM
    P

     

    C,RR
    P
    R=0

    B,I
    S=0
    R=0

    B,I
    S=1
    R=0

     

    B,RR
    P
    R=0

     

    C,RR
    P
    R=3

    B,RR
    P
    R=2

    В

     

    B
    RIM
    F

     

    B
    UA
    F

     

    B
    UA
    F

     

     

     

     

     

    B,I
    S=0
    R=2

    B,I,F
    S=1
    R=2

     

    З

     

     

     

     

     

     

     

    C,I
    S=0
    R=0

    C,I
    S=1
    R=0

    C,I,F
    S=2
    R=0

     

     

     

     



    • t, t +1,2,3,4,5 Станція А спочатку опитує статус (стан) станції В. Станція В відповідає запитом режиму ініціалізації (RIM). Станція А встановлює В в режим ініціалізації (SIM), а потім в режим нормального відповіді. У підтверджує обидва режими.
    • t +6 Станція А використовує команду Готовий до прийому (RR) для опитування станції С шляхом установки біта Р.
    • t +7,8 Станція А посилає інформаційні кадри 0 і 1 станції В. Одночасно станція С, відповідаючи на попереднє опитування посилає також інформаційні кадри 0 і 1 станції А по іншому каналу полнодуплексной ланцюга.
    • t +9 Станція С посилає інформаційний кадр 2 до встановленого бітом закінчення F.
    • t +10 Станція А опитує В для реалізації контрольної точки (Підтвердження).
    • t +11 Станція В відповідає інформаційним кадром 0 і одночасно підтверджує прийняті від А кадри 0 і 1, використовуючи порядковий номер прийому 2.
    • t +12 Станція А підтверджує кадри 0, 1 і 2 станції С за допомогою Готовий до прийому (RR) і порядкового номера прийому 3. Станція В посилає інформаційний кадр 1 і встановлює біт F у відповідь на біт Р в t +1.
    • t +13 Станція А підтверджує кадри 0 і 1 станції В за допомогою команди
      Готовий до прийому (RR) і порядкового номера прийому 2.
    • t + … Подальші події вимагатимуть, щоб станції А і В видали відповіді з бітом F.


    Висновки

    Сімейство HDLC протоколів канального рівня продовжує розвиватися і розширюватися. Однак акцент на забезпечення безпомилкової передачі послаблюється по мірі використання високошвидкісних каналів зв’язку та використання методів корекції помилок. Повною мірою можливості HDLC протоколу використовується при побудові глобальних мереж передачі даних.


    Література

    1. Блек Ю. Мережі ЕОМ: протоколи, стандарти, інтерфейси. М., Мир,
    1990.

    2. Методичні матеріали і документація по пакетах прикладних програм. Випуск 24. Рекомендація МККТТ Х.25 та її застосування в інформаційно-обчислювальних мережах. Частина I. Досвід застосування рекомендації Х.25. М., МЦНТІ, 1983.

    3. Методичні матеріали і документація по пакетах прикладних програм. Випуск 24. Рекомендація МККТТ Х.25 та її застосування в інформаційно-обчислювальних мережах. Частина II. Опис рекомендації Х.25. М., МЦНТІ, 1983.

    4. Протоколи інформаційно-обчислювальних мереж: Довідник / С.А.Анічкін, С.А.Белов, А.В.Берштейн та ін; Під. ред. І.А Мізіна, А.П.Кулешова. – М.: Радіо і зв’язок, 1990. – 504с.: Іл.

    Схожі статті:


    Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

    Коментарів поки що немає.

    Ваш отзыв

    Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

    *

    *