Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ДИПЛОМ_vlasik.doc
Скачиваний:
22
Добавлен:
19.02.2016
Размер:
1.72 Mб
Скачать

2.2.7 Кодонезалежність і синхронізація hdlc

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

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

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

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

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

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

На рисунку 2.5 зображено блок-схему описаного алгоритму аналізу вставки бітів.

Рисунок 2.5 - Блок-схема алгоритму аналізу вставки бітів і контролю команди

прапор/аварійне завершення

2.2.8 Керуюче поле hdlc

Керуюче поле HDLC (див. рисунок 2.4) визначає функцію кадру і тому потребує реалізації встановленого алгоритму керування рухом трафіка між приймальною і передавальною станціями. Поле може мати один з трьох типів формату (ненумерований, супервізерний або інформаційний). Керуюче поле визначає команди і відпо­віді для керування потоком трафіка у каналі. Ці команди і відповіді, показані на рисунок 2.4, використовуються у разі як збалансованої, гак і незбалансованої конфігурацій каналу. Керуюче поле інформаційного кадру містить два порядкових номери. Порядковий номер посилки N(Пoc) пов'язаний з порядковим номером переданого кадру. Порядковий номер прийому N(Пр) означає порядковий номер наступного кадру, який очікує приймаюча станція, N(Пр) - це підтвердження прийому попередніх кадрів.

Команда вибірковий неприйом (SREJ) використовується станцією для запиту повторної передачі одного кадру, який визначений у полі N(Пp). Як і у випадку підтвердження включення, підтвердження поширюється не на всі інформаційні кадри з номерами до N(np) - 1 включно. Вибірковий не­прийом дає змогу реалізувати режим вибіркового повторення. Як тільки передано кадр SREJ, наступні кадри приймаються і зберігаються для пов­торного передавання.

Неприйом (REJ) використовується для запиту передачі кадрів, починаючи з кадру, зазначеного в полі N(Пp). Підтверджуються всі кадри з номерами до N(np) - 1. Кадр REJ може використовуватися для реалізації методу Повер­нення - на номер N (Go-Back-N).

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

  • установлення режиму - SNRM, SARM, SABM, SNRME, SARME, SABME. SIM, DISC (SNRME, SARME, SABME для розширеної адресації);

  • передача інформації - UI, UP;

  • відновлення кадру - RESET;

  • інші команди - XID, TEST.

Команди і відповіді для ненумерованого формату представлені в таблиці 1.

UI (Unnumbered Information) - ненумерована інформація. Ця команда дає змогу проводити передачу даних користувача в ненумерованому кадрі (тоб­то без порядкового номера);

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

SIM (Set Initialization Mode) - установити режим ініціювання. Ця команда використовується для ініціювання сеансу між первинною І вторинною стан­ціями. Очікувана відповідь - UA;

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

DM (Disconnect Mode) - режим роз'єднання. Кадр передається вторинною стан­цією для індикації того, що вона знаходиться в режимі логічного роз'єднання;

DISC (Disconnect) - роз'єднати. Команда передається первинною станцією, переводить вторинну станцію в режим роз'єднання аналогічно натисканню важеля телефонного апарата;

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

FRMR (Frame Reject) - неприйом кадру. Вторинна станція проводить цю команду, коли зустрічає недійсний кадр не у випадку виявлення помилки, яка міститься в полі контрольної послідовності, а в більш незвичних ситуаціях.

Таблиця 2.1 - Команди і відповіді HDLC

Режим

Команда первинної станції

Відповідь вторинної станції

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

RR

RNR

SNRM

DISC

RR

RNR

UA

DM

(FRMR)

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

RR

RNR

SARM

DIBC

RR

RNR

UA

DM

(FRMR)

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

RR

RNR

SABM

DISC

RR

RNR

UA

DM

(FRMR)

XID (Exchange State Identification) - ідентифікація станції при комутації. Ця команда вимагає ідентифікації вторинної станції. У системах із комутацією команда використовується для ідентифікації станції, що викликає;

UP (Unnumbered Polls) - ненумеровані опитування. Кадр використову­ється при встановленні різних шлейфових конфігурацій;

TEST (Test) - перевірка. Кадр використовується для санкціонування тес­тових відповідей від вторинної станції;

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

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

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

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

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

RESET (Reset) - скидання змінних. Передавальна станція скидає свій N(Пoc), а приймальна станція свій N(Пp). Ця команда використовується для відновлення кадру. Кадри, які раніше не були квитировані, такими й залишаються.

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