Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР№3+.doc
Скачиваний:
4
Добавлен:
17.08.2019
Размер:
1.17 Mб
Скачать

1.5.1.З. Комутація пакетів

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

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

• менший час доставки повідомлення в мережі;

• більш ефективне використання буферної пам'яті у вузлах;

• більш ефективна організація надійної передачі даних;

• середовище передачі не монополізується одним повідомленням на тривалий час;

• затримка пакетів в вузлах менше, ніж затримка повідомлень.

Розглянемо кожен із перелічених переваг більш докладно.

Зменшення часу доставки повідомлень при комутації пакетів досягається за рахунок паралельної передачі пакетів по каналах зв'язку. Покажемо це на наступному прикладі.

Припустимо, що повідомлення довжиною L- передається від абонента до абонента в мережі з комутацією повідомлень так, як це показано на ріс.1.28. В процесі передачі повідомлення проходить через К каналів зв'язку з однаковими пропускними здатностями і (К-1) проміжних вузлів. Час передачі повідомлення довжиною L - в одному каналі з пропускною здатністю дорівнюватиме: . Нехтуючи часом поширення сигналу в каналі зв'язку і затримкою повідомлення у вузлах, визначимо час доставки повідомлення від абонента до абонента : .

Припустимо тепер, що в даній мережі реалізований принцип комутації пакетів, і передане від абонента до абонента повідомлення довжиною L - розбивається на n пакетів, довжина кожного з яких дорівнює . Тоді час передачі пакета в каналі з пропускною здатністю дорівнюватиме: . Як і раніше, нехтуючи часом поширення сигналу в каналі зв'язку і затримкою повідомлення у вузлах, визначимо час доставки повідомлення від абонента до абонента . Очевидно, що перший пакет буде доставлений до абонента за час . На момент доставки до абонента першого пакету інші пакети , , повідомлення, рухаючись по тому ж маршруту, виявляться в проміжних вузлах, як це показано на рис.1.30, а пакети , ..., будуть перебувати у вихідному вузлі у абонента .

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

Порівнюючи часи доставки повідомлення при використанні комутації пакетів і комутації повідомлень можна переконатися, що при п>1: < , тобто час доставки повідомлення при комутації повідомлень більше часу доставки повідомлення при використанні комутації каналів у разів.

Для значень К=4 і п=5 (чотири канали зв'язку, як на рис.1.30, і п'ять пакетів) отримаємо, що час доставки повідомлення при комутації пакетів зменшиться в к=2,5 рази в порівнянні з комутацією повідомлень, а при розбитті вихідного повідомлення на 17 пакетів - в к=3,4 раз. Легко переконатися, що при виграш к в часі доставки прагне до К: , тобто максимально можливий виграш при комутації пакетів визначається кількістю каналів зв'язку, через які проходять пакети. Цей висновок очевидний, якщо врахувати, що виграш у часі доставки обумовлений тим, що різні пакети повідомлення одночасно (паралельно) один за одним переміщуються в послідовних каналах (рис.1.31): коли пакет знаходиться в каналі , пакет передається по каналу , пакет - по каналу і пакет - по каналу , що забезпечує в процесі передачі пакетів рівень паралелізму, рівний чотирьом. Ясно, що чим більше каналів зв'язку на шляху пакетів, тим вище рівень паралелізму і, отже, тим більше виграш.

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

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

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

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

Середовище передачі не монополізується одним повідомленням на тривалий час, оскільки довге повідомлення розбивається на пакети обмеженою довжини, які передаються як незалежні одиниці даних. При цьому механізм управління трафіком організовується таким чином, що після пакета одного повідомлення по тому ж каналу зв'язку можуть бути передані пакети інших повідомлень, а потім знову пакет першого повідомлення. Це дозволяє зменшити середній час очікування пакетами звільнення каналу зв'язку і за рахунок цього збільшити оперативність передачі даних. При цьому, чим менше гранично допустима довжина пакетів, тим вище зазначений ефект.

Затримка пакетів в вузлах менше, ніж затримка повідомлень, яка складається з наступних складових:

• прийом (запис) надходить блоку даних (пакета або повідомлення) у вхідний буфер вузла;

• підрахунок і перевірка контрольної суми блоку даних;

• передача блоку даних з вхідного буфера у вихідний буфер;

• очікування звільнення вихідного каналу, зайнятого передачею раніше блоків даних, що надійшли;

• передача даних у вихідний канал зв'язку і звільнення вихідного буфера вузла.

Очевидно, що всі ці затримки пропорційні довжині блоку даних.

Незважаючи на очевидні переваги, комутації пакетів притаманні недоліки, які полягають у наступному:

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

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