КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Багаторівневий підхід. Протокол. Інтерфейс. Стек протоколівОрганізація взаємодії між пристроями у мережі є складною задачею, для розв’язання якої використовується універсальний прийом декомпозиції - розбиття складної задачі на простіші задачі-модулі. При цьому слід чітко визначити функції кожного модуля, які вирішують окрему задачу та інтерфейсів між ними. В результаті досягається логічне спрощення задачі та з’являється можливість модифікації окремих модулів без зміни іншої частини системи [1, 3, 4, 12, 16]. При декомпозиції часто використовують багаторівневий підхід. Він полягає в тому, що всю множину модулів розбивають на рівні, які утворять ієрархію. Кожен рівень, сформований так, що для виконання своїх задач він звертається із запитами тільки до своїх сусідніх модулів, що розташовані на рівень вище та нижче даного. Результати роботи модуля певного рівня можуть бути передані тільки модулям сусіднього вищерозташованого рівня. Така ієрархічна декомпозиція задачі передбачає чітке визначення функції кожного рівня та інтерфейсів між рівнями. Інтерфейс визначає набір функцій, які нижчерозташований рівень надає вищерозташованому. Внаслідок ієрархічної декомпозиції досягається відносна незалежність рівнів, а отже і можливість їх легкої заміни. Засоби мережевої взаємодії також можуть бути представлені у вигляді ієрархічно організованої множини модулів. При цьому модулі нижнього рівня можуть, наприклад, вирішувати всі питання, пов’язані з надійною передачею електричних сигналів між двома сусідніми вузлами. Модулі вищих рівнів організують транспортування повідомлень в межах всієї мережі, користуючись для цього засобами нижнього рівня. А на верхньому рівні працюють модулі, що надають користувачам доступ до різних служб [1, 4]. Багаторівневі представлення засобів мережевої взаємодії мають свою специфіку, пов’язану з тим, що в процесі обміну повідомленнями беруть участь два комп’ютери, а отже в цьому випадку необхідно організувати узгоджену роботу двох „ієрархій”. При передачі повідомлень обидва учасники мережевого обміну повинні прийняти ряд угод, наприклад, стосовно рівнів і форм електричних сигналів, способу визначення довжини повідомлень, методи контролю достовірності тощо. Іншими словами, угоди повинні бути прийняті для всіх рівнів, починаючи з найнижчого рі вня передачі бітів до найвищого, який реалізує сервіс для користувачів мережі. На рис. 3.1 наведено модель взаємодії двох вузлів. З кожної сторони засоби взаємодії представлені чотирма рівнями. Процедура взаємодії цих двох вузлів може бути описана у вигляді набору правил взаємодії кожної пари відповідних рівнів обох сторін, що беруть участь. Формалізовані правила, що визначають послідовність і формат повідомлень, якими обмінюються мережеві компоненти, що розташовані на одному рівні, але в різних вузлах, називаються протоколом [1, 17] Модулі, які реалізують протоколи сусідніх рівнів в межах одного вузла, також взаємодіють один з одним відповідно чітко визначених правил і за допомогою стандартизованих форматів повідомлень. Ці правила називаютьінтерфейсом. Він визначає набір сервісів (послуг), що надається даним рівнем сусідньому. По суті, протокол та інтерфейс виражають одне і те ж поняття, але традиційно у мережах за ними закріпили різні області дії: протоколи визначають правила взаємодії модулів одного рівня в різних вузлах, а інтерфейси - модулів сусідніх рівнів в одному вузлі. Ієрархічно організований набір протоколів, достатній для організації взаємодії вузлів мережі, називаєтьсястеком комунікаційних протоколів. Комунікаційні протоколи можуть бути реалізовані як програмно, так і апаратно. Протоколи нижніх рівнів часто реалізуються комбінуванням програмних і апаратних засобів, а протоколи верхніх рівнів як правило, лише програмними засобами. Програмний модуль, що реалізує деякий протокол, часто скорочено також називають „протоколом”. При цьому співвідношення між протоколом формально певною процедурою і протоколом програмним модулем, що реалізує цю процедуру, аналогічно співвідношенню між алгоритмом розв’язання деякої задачі і програмою, що розв’язує цю задачу. Протокол може мати декілька програмних реалізацій, тому при порівнянні протоколів слід враховувати не тільки логіку роботи, а й якість програмних рішень. Взагалі, на ефективність взаємодії пристроїв у мережі впливає якість всієї сукупності протоколів, що складають стек, зокрема, наскільки раціонально розподілені функції між протоколами різних рівнів і наскільки добре визначені інтерфейси між ними [1].
|