2. Протоколи
Основні положення
Архітектура протокола — це багаторівнева структура програмного та апаратного забезпеченя, яка підтримує обмін даними між системами, а також розподілені додатки, такі, наприклад, як електрона пошта та передача файлів.
В системах комунікацій на кожному рівні архітектури протоколу реалізовані один або більше загальних протоколів. Кожній протокол надає набір правил для обміну даними між системами.
Найрозповсюдженіша архітектура протоколу — комплект протоколів TCP/IP, до складу якого входять наступні рівні: фізичний рівень, рівень доступу до мережі, міжмережевий рівень, транспортний рівень та рівень додатків.
Ще одна важлива архітектура протокола — семирівнева модель OSI.
Модель OSI — це стандартизована архітектура, взаємодії відкритих систем (Міжнародна програма стандартизації обміну даними між комп’ютерними системами різних виробниківй на основі семирівневої моделі протоколів передачі даних в відкритих системах,запропонована ISO), яка часто використовується для опису комунікаційних функцій, але тепер реалізується досить рідко. Найважливішою архітектурою протоколу є комплект протоколів TCP/IP. Концепцію TCP/IP основано на Інтернеті та представляє собою робоче середовище розробки закінченого набору стандартів для комп’ютерних комунікацій. Фактично всі виробники комп’ютерів в наш час підтримують цю архітектуру.
Необхідність архітектури протоколу
Коли комп’ютери обмінюються даними, то процедури цього процесу досить складні. Розглянемо, наприклад, передачу файла між двома комп’ютерами. Між комп’ютерами повинен існувати інформаційній канал — або напряму, або ж через комунікаційну мережу. При цьому повині бути вирішені наступні задачі:
Система-відправник повина або активувати прямій інформаційній канал, або інформувати комунікаційну мережу про ідентифікацію потрібної системи-адресата.
Система- відправник повина впевнитися. що система-адресат підготовлена до прійому даних.
Додаток системи-відправника, що передає файл, повинен впевнитися, що програма управління файлами системи-адресата готова отримати та зберегти файл для даного конкретного користувача.
Якщо формати файлів, які використовуються в цих двох системах, несумісні, то одна або інша система повина виконати функцію перетвореня формата.
Очевидно, що необхідно забезпечити високу ступінь взаємодії між двома комп’ютерними системами. Замість реалізації такої логіки у вигляді окремого модуля, задача розбивається на підзадачи, кожна з яких реалізується окремо. В архітектурі протокола модулі розміщуються в вертикальному стеку. Кожній рівень в стеку виконує відповідну підмножину функцій, необхідних для зв’язку з іншою системою. Кожній рівень використовує нижчій рівень для того, щоб виконати більш примітивні функції, а також приховати деталі їх виконання. Рівень також надає сервіси для верхнього рівня. В ідеалі рівні повині бути визначені так, що зміни на одному рівні не потребують змін на інших рівнях.
Такій багаторівневій набір функцій повинен існувати на обох системах.
Зв’язок досягається при наявності відповідних або рівноправних рівнів в двох зв’язуваних системах. Рівноправні рівні (peer layers) зв’язуються з допомогою форматованих блоків даних, які пілягають набору правил або угод, які називаються протоколом. Основними особливостями протокола можна вважати наступні.
Синтаксис. Включає в себе опис форми блоків даних.
Семантика. Включає в себя управляючу інформацію для координації та обробоки помилок.
Синхронізація. Включає в себе узгодження швидкості та упорядкуваня.