Дипломная (вкр): Розробка програмного забезпечення канального рівня інформаційної корпоративної мережі

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Обчислення і використання коду CRC виконуються за правилами, які відповідають відомим процедурам кодування і декодування для лінійного систематичного циклічного коду:

до вмісту кадру додається набір нулів, кількість яких дорівнює довжині поля КПК;

         створене таким чином число ділиться на твірний поліном, що містить на один розряд більше, ніж КПК, і як старший І молодший розряди містить одиниці;

         залишок від ділення поміщається в полі КПК і передається до приймача;

         приймач виконує ділення вмісту кадру і поля КПК на поліном;

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

Відзначимо, що за значенням залишку від ділення відповідно до синдрому помилок помилки можуть бути виправлені в приймачеві.

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

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

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

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

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

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

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

Керуюче поле 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.(Unnumbered Information) - ненумерована інформація. Ця команда дає змогу проводити передачу даних користувача в ненумерованому кадрі (тобто без порядкового номера);(Request Initialization Mode) - режим ініціювання запиту. Кадр RIM є запитом на команду SIM від вторинної до первинної станції:(Set Initialization Mode) - установити режим ініціювання. Ця команда використовується для ініціювання сеансу між первинною І вторинною станціями. Очікувана відповідь - UA;(Set Normal Response Mode) - установити режим нормальної відповіді. Команда переводить вторинну станцію в режим NRM (режим нормальної відповіді). Режим NRM запобігає посилці вторинній станції несанкціонованих (unsolicited) кадрів. Це означає, що первинна станція керує всім потоком повідомлень у каналі;(Disconnect Mode) - режим роз'єднання. Кадр передається вторинною станцією для індикації того, що вона знаходиться в режимі логічного роз'єднання;(Disconnect) - роз'єднати. Команда передається первинною станцією, переводить вторинну станцію в режим роз'єднання аналогічно натисканню важеля телефонного апарата;(Unnumbered Acknowledgment) - ненумероване підтвердження. Це підтвердження АСК для встановлення режиму команд SIM, DISC, RESET. UA також використовується для повідомлення про закінчення стану зайнятості станції;(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)

(Exchange State Identification) - ідентифікація станції при комутації. Ця команда вимагає ідентифікації вторинної станції. У системах із комутацією команда використовується для ідентифікації станції, що викликає;(Unnumbered Polls) - ненумеровані опитування. Кадр використовується при встановленні різних шлейфових конфігурацій;(Test) - перевірка. Кадр використовується для санкціонування тестових відповідей від вторинної станції;(Set Asynchronous Response Mode) - встановити режим асинхронних відповідей. Цей режим дозволяє вторинній станції провадити передачу без опитування з боку первинної станції, а також переводити вторинну станцію в стан передачі інформації (IS) режиму ARM. (Set Asynchronous Baleen - Seed Mode) - встановити асинхронний збалансований режим. Встановлює режим у ARM, в якому станції є повноправними. Для передачі не потрібне опитування, оскільки кожна станція є станцією комбінованого типу;(Set Normal Response Mode Extended) - установити розширений режим нормальної відповіді. Встановлює SNRM з двома додатковими байтами в керуючому полі;(Set Asynchronous Balanced Mode Extended) - установити розширений асинхронний збалансований режим. Встановлює SABM з двома додатковими байтами в керуючому полі; UP (Unnumbered Poll) - ненумероване опитування. Команда опитує станцію, не звертаючи уваги на нумерацію кадрів і підтвердження. Якщо біт опитування встановлений на 0, відповідь є необов'язковою можливістю, наданою тільки для однієї відповіді;(Reset) - скидання змінних. Передавальна станція скидає свій N(Пoc), а приймальна станція свій N(Пp). Ця команда використовується для відновлення кадру. Кадри, які раніше не були квитировані, такими й залишаються.

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

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

Ситуація, при якій у різних інформаційних системах реалізуються однакові протоколи, є досить незвичною. Очевидно, якщо два пристрої, наприклад, взаємодіють завдяки HDLC, проблеми реалізації не будуть занадто складними. Частіше застосовуються різні пристрої КУД, що використовують зовсім різні протоколи. Так, синхронні й асинхронні пристрої КУД повністю відрізняються форматами повідомлень, керуванням каналу, обробкою помилок і керуванням буферним потоком.

Розв'язати цю проблему дають змогу перетворювачі протоколів, які є мостами між двома протоколами.

3. ФУНКЦІОНАЛЬНА СХЕМА РОБОТИ КІНЦЕВОГО І ЦЕНТРАЛЬНОГО ВУЗЛІВ МЕРЕЖІ

Проектуємо корпоративна мережа складається з центрального вузла та кінцевих вузлів. Мережа повинна виконувати такі функції:

         передача кінцевим вузлом мережі центральному вузлу певної заздалегідь обумовленої інформації декілька разів протягом доби в певні заздалегідь визначені години; отримана інформація обробляється в ЦВ і використовується для виробничих цілей;

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

         переговори по телефону або за допомогою клавіатури операторів ЦВ і КВ за ініциативою ЦВ або КВ.

.1 Склад та функції мережі


Проектована корпоративна мережа складається з центрального вузла та кінцевих вузлів. В даній главі описано роботу цих вузлів.

Мережа повинна виконувати такі функції:

·        збирання центральним вузлом певної заздалегідь обумовленої інформації від кінцевих вузлів мережі декілька разів протягом доби в певні заздалегідь визначені години; отримана інформація обробляється в ЦВ і використовується для виробничих цілей;

·        одержання центральним вузлом певної інформації від будь-якого кінцевого вузла мережі у будь-який час;

·        передача кінцевим вузлом мережі центральному вузлу певної заздалегідь обумовленої інформації декілька разів протягом доби в певні заздалегідь визначені години; отримана інформація обробляється в ЦВ і використовується для виробничих цілей;

·        передача кінцевим вузлом мережі центральному вузлу певної заздалегідь обумовленої інформації у будь-який час за вимогою центрального вузла;

·        переговори по телефону або за допомогою клавіатури операторів ЦВ і КВ за ініціативою ЦВ або КВ.

.2 Функціональна схема кінцевого вузла (КВ) мережі


Робота КВ описана графом, зображеним на рисунку 3.1.

Система в стані спокою знаходиться в вихідному стані. Перейти в інші стани може у випадку:

·   Запиту на з`єднання;

·   Вхідного виклику.

Рисунок 3.1 - Граф станів кінцевого вузла

Вихідний стан КВ.

При запуску програми ЦВ здійснюються всі початкові установки: визначення змінних, активізація модему, визначення буферів обміну даними між сеансовим і канальним, а також сеансовим і прикладним рівнями. З пасивного стану (вихідний стан) система може перейти в наступні, за наявності подій:

·   Запит на опитування по черзі всіх кінцевих вузлів для збирання поточної інформації за графіком;

·   Запит на виборочне з`єднання за ініціативою оператора ЦВ;

·   Вхідний виклик за ініціативою оператора КВ.

Вихідний виклик до центрального вузла.

Кінцевий вузол має право розпочати за своєю ініціативою переговори по телефону або з клавіатури з центральним вузлом. В такому випадку модему видається команда на встановлення з`єднання телефонною мережею загального користування. Відбувається запуск тайм-ауту Т1 очікування з’єднання. Якщо з`єднання не встановлюється за час Т1, то оператору на дисплей виводиться повідомлення “з`єднання не встановлено” і запит при необхідності повторюється. Якщо з`єднання встановлено - безпосередньо відбуваються переговори між операторами кінцевого та центрального вузлів. Переговори можуть здійснюватись по телефону або за допомогою клавіатури відповідно вимозі оператора. По завершенню передається повідомлення “сеанс закінчений” і модему видається команда на роз`єднання. Запускається тайм-аут Т2 очікування роз’єднання. Відбувається процедура роз`єднання, яка триває не більше Т2, після чого система переходить в вихідний стан. Якщо роз`єднання не станеться за час Т2, то оператору на дисплей виводиться повідомлення “аварія модему” і оператор повинен перезавантажити програму, щоб виконати ініціалізацію модему для встановлення його в робочий стан.

Вхідний виклик від центрального вузла Коли КВ приймає виклик, модему видається команда на встановлення з`єднання. Запускається тайм-аут Т1. Якщо з`єднання не встановлено за час Т1, процедура встановлення з`єднання припиняється і оператору виводиться на екран монітора повідомлення «не прийнятий вхідний виклик». Якщо з`єднання встановлено, відбувається аналіз запиту. Можливі два варіанти запиту: запит на переговори й запит даних. В залежності від запиту, відбувається передача даних або переговори по телефону, або з клавіатури. Після закінчення сеансу зв`язку відбувається роз`єднання, яке триває час Т2, на екран оператору виводиться повідомлення “процедура роз`єднання закінчена”. Система переходить в вихідний стан. Якщо час роз`єднання перевищує Т2, на екран оператору виводиться повідомлення “ аварія модему” і оператор повинен перезавантажити програму, щоб виконати ініціалізацію модему для встановлення його в робочий стан.

3.3 Функціональна схема центрального вузла (ЦВ) мережі


Для виконання перелічених вище функцій центральний вузол (ЦВ) може працювати в трьох режимах:

·        “опитування по черзі”;

·        “виборочне з’єднання”;

·        “вхідний виклик”.

Робота ЦВ описана графом, зображеним на рисунку 3.2.

Як показано на рисунку система має декілька станів, що відповідають за виконання певних функцій:

·        вихідний стан;

·        опитування по черзі;

·        встановлення з’єднання;

Рисунок 3.2 - Граф станів центрального вузла

При запуску програми ЦВ здійснюються всі початкові установки: визначення змінних, активізація модему, визначення буферів обміну даними між сеансовим і канальним, а також сеансовим і прикладним рівнями. З пасивного стану (вихідний стан) система може перейти в наступні, за наявності подій:

·        Запит на опитування по черзі всіх кінцевих вузлів для збирання поточної інформації за графіком;

·        Запит на виборочне з`єднання за ініціативою оператора ЦВ;

·        Вхідний виклик за ініціативою оператора КВ.

Вихідний виклик всіх КВ по черзі

Режим передбачає збирання певних даних, наперед обумовлених протоколом Прикладного рівня корпоративної мережі, які необхідні для статистики та для керування підприємствами, об’єднаними мережею. Дані мають певну структуру, що передбачає мінімальний об`єм. Дані від кожного вузла надходять в ЦВ, вносяться в БД, і, по мірі необхідності, обробляються і використовуються.

Опитування по черзі відбувається періодично в певний визначений час. Воно заключається в тому, що центральний вузол мережі через телефонну мережу загального користування з’єднується по черзі з кожним КВ мережі з метою отримання поточних наперед обумовлених даних. На ЦВ існує список КВ з їх номерами телефонів. Процедура опитування полягає в наступному. Коли наступає час опитування по черзі, починається відлік тайм-ауту Т1, за час якого потрібно отримати дані від всіх КВ. З списку КВ обирається номер телефону першого КВ і ЦВ переходить в стан „Встановлення з`єднання”. В цьому стані починається відлік тайм-ауту Т2, за час якого необхідно отримати дані від обраного КВ, і з ним встановлюється з`єднання через мережу зв’язку з комутацією каналів.

Источник: https://www.bibliofond.ru/detail.aspx?id=864916