НОУ ІНТУІТ, Лекція, Якість обслуговування (QoS)

Управління перевантаженнями та механізми обслуговування черг

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

обслуговування

Механізм управління навантаженнями (Congestion management) включає такі механізми обслуговування черг:

  • механізм FIFO (First-In, First-Out);
  • черги пріоритетів (Priority Queueing);
  • зважений алгоритм кругового обслуговування (Weighted Round Robin, WRR);
  • черги, що настроюються (Custom Queueing).

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

Механізм обслуговування черг FIFO (першим прийшов, першим пішов) передає пакети, поставлені в чергу в тому порядку, в якому вони надійшли до неї. Цей механізм не забезпечує класифікації пакетів і розглядає їх як один клас.

Черги пріоритетів із суворим режимом (Strict Priority Queue)передбачають передачу трафіку строго відповідно до пріоритету вихідних черг. У цьому механізмі передбачено наявність 4-х черг — із високим, середнім, звичайним та низьким пріоритетами обслуговування. Пакети, які перебувають у черзі з високим пріоритетом, обробляються першими. Пакети з наступного за пріоритетом обслуговуваннячерги почнуть передаватися лише після того, як спорожніє високопріоритетна черга. Наприклад, пакети із середньої за пріоритетом черги не будуть передаватися доти, доки не будуть обслуговувати пакети з високопріоритетної черги. Пакети із черги з нормальним пріоритетом не почнуть передаватися доти, доки не спорожніє черга із середнім пріоритетом тощо.

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

За замовчуванням на комутаторах D-Link налаштовані черги пріоритетів із суворим режимом.

пакетів

Ще одним механізмом обслуговування черг єзважений алгоритм кругового обслуговування(Weighted Round Robin, WRR). Цей механізм виключає головний недолік черг пріоритетів, забезпечуючи обробку черг відповідно до призначеної ним ваги та надаючи смугу пропускання для пакетів з низькопріоритетних черг.

лекція

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

Механізм запобігання перевантаженням

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

Традиційною політикою обробки пакетів комутаторами у разі переповнення всіх вихідних черг є їх відкидання, яке триває доти, доки довжина черг не зменшиться за рахунок передачі пакетів, що знаходяться в них. Такий алгоритм управління довжиною вихідних черг отримав назву"відкидання хвоста" (Tail-Drop). Відкидання пакету буде сигналом про навантаження мережі джерела ТСР-соединения, т.к. він не отримає підтвердження про доставку пакета від приймача з'єднання ТСР. В цьому випадку він зменшить швидкість передачі шляхом зменшення розміру вікна навантаження до одного сегмента і перезапустить алгоритмповільного старту (slow start).

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

Процес, коли кожне джерело ТСР-з'єднання зменшує та збільшує швидкість передачі одночасно з іншими джерелами ТСР-з'єднань, отримало назвуефекту глобальної синхронізації (global synchronization). Ефект глобальної синхронізації призводить до неефективного використання смуги пропускання, а також зростання затримки передачі пакетів.

Для вирішення проблеми поведінки джерел ТСР-з'єднання в момент відкидання пакетів було розробленоалгоритм довільногораннього виявлення (Random Early Detection, RED).

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

У комутаторах D-Link підтримуєтьсяпростий алгоритм довільного раннього виявлення (Simple Random Early Detection, SRED), який є розширеною версією алгоритму RED , реалізованої на основі ASIC і виконує ймовірнісне відкидання вхідних "забарвлених" пакетів. "Фарбування" пакетів дозволяє реалізувати різні політики обслуговування пакетів (різну ймовірність відкидання) на основі їх пріоритетів. Так пакети, "забарвлені" в зелений колір мають найвищий пріоритет. Пакети "забарвлені" в жовтий колір - середнім, червоний - нижчим пріоритетом.

Алгоритм SRED дозволяє задавати два порогові значення розміру для кожної черги — мінімальне та максимальне. Якщо довжина черги менша від мінімального порогового значення, то пакети будуть розміщуватися в чергу . Якщо розмір черги перебуватиме в інтервалі між мінімальним та максимальним пороговими значеннями, тобто. спостерігатиметься помірне навантаження, то пакети, "забарвлені" в червоні та жовті кольори, будуть відкидатися із заданою ймовірністю. Якщо довжина черги перевищить максимальне граничне значення, то пакети будь-яких кольорів відкидатимуться із заданою ймовірністю. Тобто. алгоритм SRED забезпечує можливість налаштування більшінтенсивного відкидання пакетів низькопріоритетного трафіку та менш інтенсивного відкидання пакетів високопріоритетного трафіку.

У комутаторах D-Link при налаштуванні SRED існує можливість вибору із восьми значень швидкостей (ймовірностей) відкидання пакетів: