ЗАСОБИ УПРАВЛІННЯ ПЕРЕВАНТАЖЕННЯМИ І ПОЛІТИКИ ВІДКИДАННЯ ПАКЕТІВ
Вступ
Механізми запобігання перевантаженню і різні політики відкидання пакетів призначені на основі аналізу мережного трафіка відслідковувати вузькі місця в мережі і не допускати виникнення на цих ділянках перевантажень. В умовах перевантаження ці механізми забезпечують тільки пільгову обробку пріоритетного трафіка. Але на практиці часто виникає ситуація, що пакет, який тільки-но надійшов, необхідно поставити у чергу, що вже досягла свого максимального розміру. У результаті деякі пакети слід відкинути. У найпростішому випадку застосовується політика "відкидання хвоста" (tail drop), відповідно до якої відкидаються пакети, які тільки-но надійшли.
Однак політика "відкидання хвоста" призводить до виникнення ефекту глобальної синхронізації – одночасного (синхронного) перезапуску алгоритмів повільного старту множини ТСР-джерел. Крім небажаної зміни розмірів черги, цей ефект здатний також призвести до зростання джитера, затримки пакетів трафіка і зниження продуктивності всієї мережі. Більш ефективними є механізми превентивного управління перевантаженнями, до яких належать алгоритми RED і його модифікації WRED і DWRED.
1. Алгоритм довільного раннього виявлення RED
Алгоритм довільного раннього виявлення (Random Early Detection –RED) є алгоритмом активного управління чергою і має істотні переваги в порівнянні з традиційним механізмом "відкидання хвоста". Механізм RED використовує превентивний підхід до запобігання перевантаженню мережі та замість очікування фактичного переповнення черги, як при "відкиданні хвоста", RED починає відкидати пакети з ненульовою імовірністю, коли середній розмір черги перевищить певне мінімальне граничне значення. Імовірнісний підхід до відкидання пакетів дозволяє бути впевненими в тому, що механізм RED відкине пакети усього лише декількох довільно обраних потоків, тим самим дозволяючи уникнути ефекту глобальної синхронізації.
Механізм раннього довільного виявлення RED націлений на:
• мінімізацію джитера затримки пакетів шляхом контролю за середнім розміром черги;
• запобігання ефекту глобальної синхронізації ТСР-трафіка;
• забезпечення неупередженого обслуговування трафіка, що характеризується короткочасними сплесками;
• строге обмеження максимального середнього розміру черги (шляхом уведення максимального порога).
Головна мета механізму RED полягає в мінімізації середнього розміру черги, а виходить, і результуючої затримки пакетів трафіка.
У рамках механізму RED уводиться ряд параметрів:
•
•
•
де рекомендоване значення
•
де рекомендоване значення
При реалізації алгоритму RED у залежності від співвідношень середньої довжини черги
Таблиця 1 – Дії механізму RED
Умова | Дія |
Пакети не відкидаються ( | |
Частина пакетів відкидається. Імовірність відкидання | |
Усі нові пакети відкидаються ( |
Рисунок 1 – Графік залежності імовірності відкидання пакетів
Якщо ж середній розмір черги досить невеликий і знаходиться нижче мінімального граничного значення, механізм RED не здатний забезпечити істотних переваги в порівнянні з традиційними механізмами управління чергами. З іншого боку, при затяжному періоді перевантаження мережі поведінка механізму RED, незважаючи на довгу чергу і високе максимальне граничне значення, аналогічна поведінці класичного механізму "відкидання хвоста". Отже, основне призначення механізму RED полягає в згладжуванні сплесків трафіка і попередженні тривалого перевантаження мережі за допомогою повідомлення джерел трафіка про необхідність зниження інтенсивності передачі інформації. Якщо джерела виявлять здатність до взаємодії й одночасно зменшать інтенсивність переданого трафіка, це допоможе запобігти перевантаженню мережі. У іншому випадку середній розмір черги досить скоро досягне максимального граничного значення, що призведе до відкидання всіх пакетів, які надходять.
Фактично механізм довільного раннього виявлення RED базується на обчисленні середнього розміру черги
Під час розрахунку
Нижче наведена формула для розрахунку експонентного вагового коефіцієнта:
де В – смуга пропускання вихідного каналу передачі інформації в пакетах розміром MTU байтів.
Оскільки це не впливає на кінцевий результат, краще використовувати значення MTU, яке дорівнює 1500 байт, для всіх каналів передачі інформації навіть у тому випадку, якщо дійсне значення MTU дорівнює 4470 байт.
Наприклад, для каналу DS3 (45 Мбіт/с) В = (45 Мбіт/с / 8) / 1500 = 3750. Отже, експонентний ваговий коефіцієнт
Мінімальне і максимальне граничні значення можна встановити рівними 0,03В и 0,1В відповідно. Знаменник граничної імовірності при цьому варто установити рівним 1.
У табл. 2 наведено рекомендовані значення параметрів механізму для ліній зв'язку DS1, DS3, ОСЗ і ОС12. При використанні механізму WRED ці значення є рекомендованими значеннями для трафіка IP-пріоритету 0.
Таблиця 2 – Рекомендовані значення параметрів механізму RED для різних ліній зв'язку
Швидкість передачі в лінії зв'язку | Експонентний ваговий коефіцієнт | Мінімальне граничне значення | Максимальне граничнезначення | Знаменник граничної імовірності |
DS1 | 4 | 4 | 13 | 1 |
DS3 | 9 | 112 | 375 | 1 |
ОСЗ | 10 | 388 | 1292 | 1 |
ОС12 | 12 | 1550 | 5167 | 1 |
2. Зважений алгоритм довільного раннього виявлення WRED
Зважений алгоритм довільного раннього виявлення (Weighted Random Early Detection, WRED) є модифікацією алгоритму RED і надає різні рівні обслуговування на підставі значення поля IP-пріоритету. Це здійснюється шляхом настроювання окремо для кожного рівня пріоритету таких параметрів механізму RED як
Рисунок 2 – Профілі WRED для трафіка з IP-пріоритетами 0 і 3
Значення параметрів WRED, що використовуються за замовчуванням у продуктах Cisco, наведені в табл. 3, 4. Зверніть увагу, що мінімальне граничне значення для високопріоритетного трафіка має бути більше, ніж мінімальне граничне значення для низькопріоритетного трафіка. Це необхідно для забезпечення строгої черговості відкидання пакетів, відповідно до якої першими відкидаються низькопріоритетні пакети.
Таблиця 3 – Профілі Cisco для WRED на основі пріоритетів, які використовуються за замовчуванням
IP-пріоритет | Мінімальне граничне значення, | Максимальне граничне значення, | Знаменник граничної імовірності, | Максимальний відсоток відкинутих пакетів, |
0 | 20 | 40 | 10 | 10% |
1 | 22 | 40 | 10 | 10% |
2 | 24 | 40 | 10 | 10% |
3 | 26 | 40 | 10 | 10% |
4 | 28 | 40 | 10 | 10% |
5 | 31 | 40 | 10 | 10% |
6 | 33 | 40 | 10 | 10% |
7 | 35 | 40 | 10 | 10% |
RSVP | 37 | 40 | 10 | 10% |
Таблиця 4 – Профілі Cisco для WRED на основі DSCP, які використовуються за замовчуванням
DSCP | Мінімальне граничне значення, | Максимальне граничне значення, | Знаменник граничної імовірності, | Максимальний відсоток відкинутих пакетів, |
AF11, AF21, AF31, AF41 | 33 | 40 | 10 | 10% |
AF12, AF22, AF32, AF42 | 28 | 40 | 10 | 10% |
AF13, AF23, AF33, AF43 | 24 | 40 | 10 | 10% |
EF | 37 | 40 | 10 | 10% |
Алгоритм WRED можна реалізувати як на центральному процесорі маршрутизатора, так і в розподіленому режимі. Коли алгоритм WRED виконується на центральному процесорі маршрутизатора, то він застосовується до вихідної черги інтерфейса, а граничні значення визначаються в так:
де
3. Алгоритм WRED на основі потоку (flow WRED)
Алгоритм WRED на основі потоку (flow WRED) є модифікацією алгоритму WRED, що передбачає штрафування потоків, які займають надмірну частку ресурсів. Це зв'язано з тим, що під час перевантаження мережі неадаптивні потоки (UDP-трафік) передають дані з набагато більшою інтенсивністю, ніж потоки, що володіють здатністю до адаптації (TCP-трафік). З метою забезпечення рівномірного обслуговування активних потоків трафіка механізм WRED класифікує усі пакети в черзі в залежності від їхнього пріоритету і потоку трафіка, до якого вони належать. Крім цього, WRED підтримує інформацію про стан всіх активних потоків (active flows), тобто потоків, хоча б один пакет яких поставлений на обробку в яку-небудь з черг. Інформація про стан активних потоків використовується для визначення справедливої частки виділених потокові ресурсів черги, а також для виявлення і штрафування потоків, що віднімають надмірно великий обсяг ресурсів. Щоб механізм WRED адекватніше реагував на сплески потоків трафіка, необхідно збільшити справедливу частку ресурсів для кожного потоку шляхом застосування так званого коефіцієнта масштабування. Справедлива частка ресурсів черги, яка виділяється активному
з урахуванням коефіцієнта масштабування
Тут
Потік, вимоги якого перевищують справедливу частку ресурсів з урахуванням коефіцієнта масштабування, штрафується шляхом збільшення ненульової імовірності відкидання для всіх нових пакетів цього потоку.
Як приклад розглянемо дії, що застосовуються механізмом WRED на основі потоку по відношенню до тільки-но поставленого в чергу пакета. При визначенні імовірності відкидання пакета механізм WRED на основі потоку враховує як значення поля IP-пріоритету пакета, так і інформацію про стан активних потоків. Від IP-пріоритету пакета залежать сконфігуровані (або стандартні) мінімальне
Ненульова імовірність відкидання пакета розраховується на підставі мінімального
Рисунок 3 – Графік імовірності відкидання пакета при використанні механізму WRED
Якщо ж потік трафіка не перевищує справедливої частки ресурсів з урахуванням коефіцієнта масштабування, то ненульова імовірність відкидання пакета розраховується за стандартним методом (2).
Коли середній розмір черги перевищує максимальне граничне значення
4. Механізм явного повідомлення про перевантаження ECN
Механізм явного повідомлення про перевантаження (Explicit Congestion Notification, ECN) замість відкидання пакета використовує відповідне маркування заголовка пакета. Для реалізації механізму явного повідомлення про перевантаження в заголовку IP-пакета виділяється спеціальне ECN-поле довжиною два біта (рис. 4).
Рисунок 4 – Заголовок IP-пакета (RFC 3168)
Установка джерелом ТСР-з'єднання біта ЕСТ (ECN-Capable Transport, транспортування даних з підтримкою поля ECN) вказує на здатність кінцевих пристроїв транспортного протоколу до інтерпретації поля ECN. Біт СЕ (Congestion Experienced – виявлена помилка) установлюється маршрутизатором з метою повідомлення кінцевих вузлів з'єднання про перевантаження мережі.
Приклад використання механізму ECN наведений на рис. 5. Для успішної роботи механізму ECN TCP-джерело і TCP-одержувач мають повідомити один одного про підтримку поля ECN. З цією метою TCP-джерело встановлює в заголовку пакета біти ECN у 01 (або 10) і передає пакет (крок 1 на рис. 5). Якщо TCP-джерело не підтримує механізм ECN, то відповідні біти будуть встановлені в нулі (ECN=00). Припустимо, на маршрутизаторі R1 з метою запобігання перевантажень використовується механізм WRED, і він випадково обрав саме цей переданий пакет для відкидання. Однак, знайшовши значення ECN=01, маршрутизатор не відкине пакет, а замінить значення поля ECN на 11 – сигнал про перевантаження – і передасть пакет далі (крок 2).
Пакет досягає TCP-одержувача (крок 3), де аналізується значення поля ECN. Значення ECN=11 сигналізує про наявність у мережі перевантаження в напрямку від TCP-джерела до TCP-одержувача, а значить про необхідність звуження TCP-джерелом розміру вікна перевантаження. TCP-одержувач повідомляє отриману інформацію про стан мережі шляхом установки в TCP-заголовку нового пакета спеціального прапорця явного виявлення перевантаження (Explicit Congestion Experienced, ECE) (крок 4). Відзначимо, що зміст бітів ECN на кроці 4 неважливий, тому що цей пакет використовується для повідомлення TCP-джерела про перевантаження і необхідність звуження розміру TCP-вікна. Даний пакет проходить через маршрутизатор (крок 5) і досягає TCP-джерела (крок 6), який у відповідь на прапорець ECE зменшує розмір вікна перевантаження (congestion window, CWND) у два рази. Для повідомлення TCP-одержувача про зміни розміру вікна в новому пакеті, що направляється до TCP-одержувача, встановлюється прапорець CWR (Congestion Window Reduced – розмір вікна зменшений) (крок 7).
Рисунок 5 – Приклад використання механізму ECN для зменшеннявікна перевантаження CWND
5. Механізм вибіркового відкидання пакетів SPD
трафік перевантаження синхронізація мережа
Механізм вибіркового відкидання пакетів (Selective Packet Discard, SPD) потрібний для відділення важливого управляючого трафіка мережі (наприклад, пакетів з відновленням інформації про маршрути) від іншого трафіка на рівні маршрутизатора. Механізм SPD допомагає маршрутизаторові підтримувати цілісність інформації про маршрути протоколів IGP і BGP під час перевантаження мережі шляхом пріоритетної обробки пакетів протоколів маршрутизації відносно пакетів іншого мережного трафіка.
Відповідно до механізму SPD до черги IP-процесу маршрутизатора застосовується вибіркова політика відкидання пакетів. Пакети трафіка, які потребують обробки у вхідній черзі IP-процесу, розділені на три групи:
• важливий управляючий трафік IP (пакети протоколу маршрутизації), який часто називається пріоритетним трафіком (priority traffic;
• звичайний IP-трафік (наприклад, пакети аплікацій telnet або ping), IP-пакети з альтернативами, а також будь-яке розширення або інкапсуляція IP, які не підтримуються механізмом прискореної комутації CEF;
• пакети, що необхідно відкинути.
До останньої групи належать IP-пакети, які за тих або інших обставин не пройшли тест на коректність, – пакети з невірною контрольною сумою, неправильною версією, з "часом життя" (Time-to-Live, TTL), що минув, невірним номером порту UDP/TCP, невірним значенням поля протоколу IP і т.д. При одержанні більшості з цих пакетів автоматично генерується ICMP-пакет (Internet Control Message Protocol – протокол управляючих повідомлень Internet) з метою повідомлення джерела про помилку. Невелика кількість ICMP-пакетів генерується деякими службовими програмами, такими, як traceroute. Слід зазначити, що великий обсяг ICMP-трафіку може бути частиною атаки зловмисників, що намагаються вивести з ладу маршрутизатор шляхом переповнення черги IP-процесу. Отже, стає очевидною необхідність вибіркового відкидання цих пакетів без утрати важливої управляючої інформації.
У рамках механізму SPD, аналогічно RED, уводяться параметри
• відключений (Disabled);
• нормальний режим функціонування (Normal):
• режим випадкового відкидання пакетів (Random drop):
• режим тотального відкидання пакетів (Full drop):
• режим активного відкидання пакетів (Aggressive drop). Спеціальний режим, за якого відкидаються всі IP-пакети, що не пройшли перевірку на коректність. Відкидання некоректних пакетів відбувається, коли розмір вхідної черги перевищує мінімальне граничне значення (
Усі режими функціонування механізму виборчого відкидання пакетів SPD схематично подані на рис. 6.
Рисунок 6 – Режими функціонування механізму SPD
! |
Как писать рефераты Практические рекомендации по написанию студенческих рефератов. |
! | План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом. |
! | Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач. |
! | Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты. |
! | Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ. |
→ | Виды рефератов Какими бывают рефераты по своему назначению и структуре. |