logo
Лекції_networks

Комутація пакетів Принципи комутації пакетів

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

Коефіцієнт пульсації трафіка окремого користувача мережі, дорівнює відношенню середньої інтенсивності обміну даними до максимально можливої, може становити 1:50 або 1:100. Якщо для описаної сесії організувати комутацію каналу між комп'ютером користувача й сервером, то більшу частину часу канал буде простоювати. У той же час комутаційні можливості мережі будуть використані — частина тайм-слотів або частотних смуг комутаторів буде зайнята й недоступна іншим користувачам мережі.

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

Рис.4.5. Розбивка повідомлення на пакети

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

Рис.4.6. Згладжування пульсацій трафика в мережі з комутацією пакетів

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

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

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