Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lesson2_net.doc
Скачиваний:
0
Добавлен:
23.11.2019
Размер:
343.55 Кб
Скачать

Найпростіша архітектура протокола

Необхідній високій рівень взаємодії між двумя комп’ютерами. Замість реалізації такої ло­гіки у вигляді окремого модуля задача розбивається на підзадачі, кожна з яких реализується окремо. В якості прикладу на рис..1 пропонується спосіб організації служби передачі файлів.Тут використовується три модуля. Модуль передачі файлів може виконувати задачі 3 і 4 з спи­ска задач, наведених в в попередньому розділі. Ці два модуля на двох системах обмінюються файлами та командами. Але модуль передачі файлів не має безпосереднього відношення до деталей фактичної пе­редачі даних та команд. Навпроти, кожний з модулів передачі файлів використовує для цього модуль обслуговування зв’язків. Цей модуль відповідає за забезпечуваня надійного обміну командами передачі файлів і даними між системами. Крім того, цей модуль повинен виконувати задачу 2. Ми бачимо, що обмін між системами не залежить від основних властивостей мережі, яка їх зв’язує. Тому, замість того щоб вбудовувати деталі мережевого інтерфейса в модуль обслуговування зв’язків, має сенс створити третій модуль — модуль доступу до мережі, якій виконує зада­чу 1. безпосередньо взаємодіючи із мережею.

Отже, модуль передачі файлів містить всю логіку, властиву додатку передачі файлів, наприклад паролі передачі, файлові команди та записи файла. Необхідно передавати фай­ли та команди з високою ступінню надійності. Модуль обслуговування зв’язків повинен гарантувати, що дві комп’ютерні системи активні та готові до передачі даних та відслідковуванню цих даних, щоб забезпечити доставку. Але ці задачі не залежать від типу використовуваної мережі. Тому логіка фактичної роботи з мережею розташована в окремому модулі доступу до мережі. Таким чином, якщо мережа змінюється, то це впливає тільки на модуль доступу до мережі.

К омп’ютер Х Комп’ютер Y

мережевого Логіка мережевого

Інтерфейсу інтерфейсу

Рис. 1. Найпростіша архітектура передачі файлів

Отже, замість єдиного модуля, якій забезпечує зв’язок, є структурований набір модулів, який реалізує функції комуні­кації.

Трирівнева модель

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

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

Рівень доступу до мережі зв’язаний з обміном даними між комп’ютером та мережею, до якої він підключений. Передаючий комп’ютер повинен надати в мережу адресу комп’ютера-адресата для того, щоб мережа могла маршру­тизувати дані відповідному адресату. Передавальний комп’ютер може застосовувати деякі сервіси (наприклад, приорітетність), які надає мережа. Конкретне програмне забезпечення, яке використовується на цьому рівні, залежить від типу мережі, різних стандартів, розроблених для комутації каналів, комутації пакетів, локальних мереж та ін. Тому має сенс виділити функції, зв’язані з доступом до мережі, в окремій рівень. При цьому решта комунікаційних програм­них засобів, яка знаходиться на рівнях вище рівня доступу до мережі, не повина враховувати специфіку використовуваних мереж. Одне й те ж програм­не забезпеченя більш високого рівня повинне функціонувати незалежно від типу мережі, до якої підключено комп’ютер.

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

Нарешті, рівень додатку містить логіку, необхідну для під­тримки різних користувальницьких додатків. Для кожного типу додатків (наприклад, додаток передачі файлів) необхідний окремий, призначений саме для нього модуль.

На рис 2. та 3 представлено таку найпростішу архітектуру. На рис. 2 показані три комп’ютера, підключені до мережі. На кожному комп’ютері є програмне забезпечення на рівні доступу до мережі та транспортному рівні та програмне забезпеченя на рівні додатків для одного або більше додатків. Для успішної комуникації кожній об’єкт системи повинен мати унікальну адресу. Дійсно необхідні два рівні адрес. Кожній комп’ютер в мережі повинен мати унікальну мережеву адресу, це дозволить доставляти дані по мережі на потрібний комп’ютер. Кожній додаток, якій виконується на комп’ютері, також повинен мати ад­ресу, уникальну всередині даного комп’ютера; це дозволить транс­портному рівню підтримувати декілька додатків на кожному комп’ютері. Такі адреси додатків називаються точками доступу сер­вісу (Service Access Point, SAP) або портами (ports), що відображає той факт, що кожний додаток індивідуально отримує доступ до сервісів на транспортному рівні.

На рис. 3 показано, що модулі різних комп’ютерів, що знаходяться на одному рівні, взаємодіють один з одним за допомогою протоколу. Припустимо, що додаток, зв’язаний із SAP 1 на комп’ютері X, з­бирається послати повідомленя іншому додатку, якій зв’язаний із SAP 2 на комп’ютері Y. Додаток на комп’ютері X передає повідомлення на свій транспортний рівень з інструкціями по відправленню його на SAP 2 на комп’ютері Y. Транспортній рівень передає повідомленя на рівень доступу мережі, якій вимагає відправити повідомленя на комп’ютер Y. Зверніть увагу, що немає необхідності повідомлдяти в мережу точку доступу до сервісу. Мережа повина знати тілько те, що дані при­значені для комп’ютера Y.

Для управління цією операцією необхідно передавати управляючу ін­формацію, та користувальницькі дані, як це показано на рис. 2.4. Припустимо, що передаючий додаток створює блок даних та передає його на транспортний рівень. Транспортний рівень може розбити цей блок на дві невеликі частини, щоб їми було легше управляти. Для кожної з цих частин транспортній рівень добавляє транспортній заголовок, якій містить управляючу інформацію протокола. Комбінація даних із наступного більш високого рівня та управляючої інформації називається модулем даних протокола (Protocol Data Unit, PDU); в даному випадку цей модуль називається транспортним PDU. Заголовок в кожному транспортном PDU містить управляючу інформацію, яка використовується рівно­правним транспортним протоколом на комп’ютері Y. Далі перераховані можливі елементи, які можуть зберігатися в цьому заголовку.

  • Порт призначення. Коли цільовий транспортний рівень отримує транспортній PDU, він повинен знати, кому призначаються дані.

  • Порядковий номер. Оскільки транспортний протокол відсилає по­слідовність PDU, то він їх послідовно нумерує. Тому, якщо вони надходять не в належному порядку, то цільовий транспортний об’єкт може їх перевпорядкувати.

  • Код виявлення помилки. Передаючий транспортний об’єкт може включати в себе код, якій є функцією змісту іншої частини PDU. Приймаючий транспортний протокол виконує та­кі ж обчислення і порівнює результат з кодом, що надійшов. Якщо при передачі виникли помилки, то результати будуть відрізнятися. В цьому випадку отримувач може відкинути такій PDU та виконати коригуючі дії.

На наступному кроці транспортний протокол передає кожний PDU на мережевий рівень з інструкціями по передачі його на цільовий комп’ютер. Щоб виконати цей запит, протокол доступу мережі повинен передати дані в мережу із запитом на передачу. Ця операція також потребує наявності управляючої інформації. В даному випадку протокол доступу мережі додає до даних, отриманих із транспортного рівня, свій заголовок доступу мережі, створюючи PDU мережевого доступу, якій найчастіше називається пакетом (packet). Елементи, які можуть зберігатися в такому заголовку.

  • Адреса цільового комп’ютера. Мережа повина знати, кому (якому комп’ютеру в мережі) повині доставлятися дані.

  • Запити допоміжних функцій. Протокол доступу мережі може вимагати від мережі виконання деяких функцій, наприклад використання приоритетів.

На рис. 5 все ці концепції об’єднані разом та показано взаємодію між модулями при передачі одного блоку даних. Припустимо, що модуль передачі файлів на комп’ютері X передає файл по одному запису за один раз на комп’ютер Y. Кожний запис передається через модуль транс­портного рівня. Ми можемо представити цю дію у формі виклику коман­ди або процедури. Параметри виклику цієї процедури включають у себе адресу цільового комп’ютера, цільову точку доступу сервісу та сам запис файла. Транспортний рівень додає цільову точку доступу сервісу та іншу управляючу інформацію до запису, створюючи транспортній PDU, якій потім передаеться нижче на рівень доступу мережі з допомогою виклику іншої процедури. В даному випадку параметри команди представляють собою адресу цільового комп’ютера та транспортний PDU. Рівень доступу мережі використовує цю інформацію для створення заголовка PDU. Транспорт­ний PDU представляє собою поле даних (data field) мережевого PDU, а заго­ловок мережевого PDU включає в себе інформацію про адреси цільового та пе­редаючого комп’ютерів. Транспортний заголовок не "видно" на рівні доступу мережі; рівень доступу мережі не має нія­кого відношеня до вмісту транспортного PDU.

Мережа отримує мережевий PDU від комп’ютера X та доставляє його на комп’ютер Y. Модуль доступу мережі на комп’ютері Y отримує PDU, видаляє із нього заголовок та передає вкладений транспортний PDU на модуль транс­портного рівня комп’ютера Y. Транспортний рівень перевіряє заголовок транспортного PDU і на основі поля SAP заголовка доставляє вкладений запис відповідному додатку, в даному випадку модулю передачі файлів на комп’ютере Y.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]