Uploaded by znipetv3

ECN-SPD

advertisement
Кафедра інфокомунікаційної інженерії імені В.В. Поповського
Технології управління трафіком в ІК
Лекція №8
Механізми активного управління
чергами ECN и SPD. RED в ATM-мережах
Навчальні питання:
1. Механізм явного повідомлення про перевантаження
(ECN).
2. Механізм вибіркового відкидання пакетів (SPD).
3. Класифікація засобів боротьби з
перевантаженням
4. Різновиди механізму RED
5. RED в ATM-мережах
Рекомендована література:
1.
2.
3.
4.
Вегешна Ш. Качество обслуживания в сетях IP: Пер. с
англ. – М.: Издательский дом «Вильямс», 2003. – 386 с.
Дансмор Б., Скандьер Т. Справочник по
телекоммуникационным технологиям: Пер. с англ. – М.:
Издательский дом «Вильямс», 2004. – 640 с.
Кульгин М.В.Компьютерные сети. Практика построения.
Для профессионалов. 2-е изд. – СПб.: Питер, 2003. – 462
с.
Лемешко О.В., Євсєєва О.Ю. Конспект лекцій з дисципліни
«Алгоритми управління та адаптації в ТКС» для студентів
денної форми навчання спеціальності 7.092401 –
Телекомунікаційні системи та мережі. – Харків: ХНУРЕ,
2008. – 164 с.
Вступ: функції QoS
Класифікація пакетів
Маркування пакетів
Формування трафіку (Shaping)
Обмеження швидкості (Policing)
Визначення черговості передачі пакетів
(Queuing)
Активне управління чергами,
превентивне обмеження черг шляхом
відкидання пакетів (RED, WRED)
Вступ: загальна структура обробки
пакетів на мережних вузлах
Приграничный
маршрутизатор
Спецификация
потока
Транзитный
маршрутизатор
Фильтр/формирователь
Измеритель
Поток пакетов
Пакет
Классификатор
пакетов
Функции управления
интенсивностью
трафика
Поток
пропущенных
пакетов в сеть
выравнивания
(traffіc shapіng)
Пакет
Маркировщик
пакетов
ограничения
(traffіc polіcіng)
Поток
отброшенных
пакетов
Пакет
Функции управления
очередями
Функции
ограничения длины
очереди
Пакет
Поток
пропущенных
пакетов в тракт
передачи
Пакет
Поток
отброшенных
пакетов
1. Механізм явного повідомлення
про перевантаження (ECN)
При активному управлінні чергою з використанням механізму
WRED пакети відкидалися з метою повідомлення джерел TCPз'єднання про перевантаження мережі. Замість відкидання пакету
механізм явного повідомлення про перевантаження (Explicit
Congestion Notification - ECN) використовує відповідне маркування
заголовка пакета (встановлює в IP заголовку ECN біти).
І якщо раніше для того щоб повідомити про перевантаження
мережі, WRED-маршрутизатора доводилося відкидати пакет,
викликаючи тим самим затримку в доставці даних внаслідок повторної
передачі, то тепер маршрутизаторe потрібно всього лише встановити
спеціальний ECN-біт в заголовку пакета.
DS
Field
0-5
DSCP
6 7
ECT CE
ECN
Маркування пакетыв в ECN
Реалізація механізму ECN вимагає підтримки CE-біта
(Congestion Experienced - "виявлено перевантаження") в
заголовку IP-пакета і наявність транспортного протоколу, який
належним чином інтерпретує CE-біт. З цією метою в заголовку
IP-пакета виділяється спеціальне ECN-поле довжиною 2 біта.
Установка джерелом ТСР- з'єднання біта ЕСТ (ECN-Capable
Transport - транспортування даних з підтримкою поля ECN)
вказує на здатність кінцевих точок транспортного протоколу
до інтерпретації поля ECN. Біт СЕ встановлюється
маршрутизатором з метою повідомлення кінцевих вузлів
з'єднання про перевантаження мережі.
Шостий і сьомий біти байта типу обслуговування (Type of
Service - ToS) заголовка IPv4 формують поле ECN і є бітами
ЕСТ і СЕ, відповідно. Слід зазначити, що в аспекті архітектури
диференційованих послуг біти 6 і 7 байта ToS не
використовуються.
2
TCP-відправник
WRED випадково обрав цей пакет
для відкидання; після знаходження
встановленої позначки в полі ECN
змінює її на ECN = 11 та передає
пакет далі
TCP-одержувач
`
`
Клієнт
Сервер
IP-заголовок
1
TCPзаголовок
Дані
ECN = 01
IP-заголовок
3
TCPзаголовок
ECN = ?? ECE = 1
6
5
New_CWND =½Оld_CWND
7
IP-заголовок
TCPзаголовок
ECN = 01
CWR=1
Дані
TCPзаголовок
ECN = ?? ECE = 1
Дані
Дані
ECN = 11
IP-заголовок
IP-заголовок
TCPзаголовок
Дані
4
2. Механізм вибіркового
відкидання пакетів (SPD)
Механізм виборчого відкидання пакетів (Selective
Packet Discard- SPD) служить для відділення
важливого керуючого трафіку мережі (наприклад,
пакетів з оновленням інформації про маршрути) від
решти трафіку на рівні маршрутизатора.
Механізм SPD допомагає маршрутизатору
підтримувати цілісність інформації про маршрути
протоколу IGP (Interior Gateway Protocol- протокол
внутрішнього шлюзу) і протоколу BGP (Border Gateway
Protocol- протокол прикордонного шлюзу) під час
перевантаження мережі шляхом пріоритетної обробки
пакетів протоколів маршрутизації по відношенню до
решти пакетів мережного трафіку.
Механізм вибіркового
відкидання пакетів (SPD)
Пакети трафіку, які повинні стати предметом обробки у
вхідній черзі IP-процесу, розділені на три групи:
• Важливий керуючий трафік IP (пакети протоколу
маршрутизації), який часто називають пріоритетним трафіком
(priority traffic).
• Звичайний IP-трафік (наприклад, пакети програм telnet
або ping), IP-пакети з альтернативами, а також будь-яке
розширення або інкапсуляція IP, що не підтримувана
механізмом CEF (механізм швидкісний комутації пакетів Cisco
Express Forwarding (CEF)).
• Пакети, які повинні бути відкинуті. Сюди відносяться
IP-пакети, які з тих чи інших причин не пройшли тест на
коректність, - пакети з невірною контрольною сумою,
неправильної версією, вичерпаним "часом життя" (Time-to-Live TTL), невірним номером порту UDP / TCP, невірним значенням
поля протоколу IP тощо.
Механізм вибіркового
відкидання пакетів (SPD)
• Нормальний режим функціонування (Normal). Розмір вхідної черги IPпроцесу знаходиться нижче мінімального порогового значення. Пакети не
відкидаються.
• Режим випадкового відкидання пакетів (Random drop). Розмір вхідної
черги IP-процесу знаходиться в межах між мінімальним і максимальним граничними
значеннями. В даному режимі відкидаються всі IP-пакети, які належать звичайним
потокам трафіку. Імовірність відкидання пакетів розраховується за наведеною нижче
формулою.
Імовірність відкидання пакету = (довжина черги - мінімальне порогове значення)
÷ (максимальне граничне значення - мінімальне порогове значення).
Випадкові відкидання пакетів отримали назву SPD-скидів (SPD flush). Слід
зазначити, що важливий керуючий трафік мережі як і раніше ставиться в чергу для
обробки.
• Режим тотального відкидання пакетів (Full drop). Розмір вхідної черги IPпроцесу перевищив максимальне граничне значення. Механізм SPD відкидає всі
пакети, які належать звичайним потокам трафіку. Важливий керуючий трафік все ще
ставиться на обробку в спеціальну пріоритетну чергу (priority queue), яка
обробляється перед усіма звичайними чергами IP-процесу.
• Режим активного відкидання пакетів (Aggressive drop). Спеціальний
режим, при якому відкидаються всі IP-пакети, які не пройшли перевірку на
коректність. Відкидання некоректних пакетів проводиться, коли розмір вхідної черги
перевищує мінімальне порогове значення. Режим активного відкидання пакетів
механізму SPD активізується за допомогою команди ip spd mode aggressive.
Режими функціонування
механізму SPD
Ймовірність
відкидання
пакетів
Знаменник граничної ймовірності відкидання пакетів = 1
Активне
Тотальне
Відкидання
відкидання
відкидання
«хвоста»
пакетів
пакетів
1
Випадкове
відкидання
пакетів
Звичане
відкиданння
пакетів
Мінімальне
Максимальне
порогове
порогове
значення
значення
Вхідна черга IP-процесу
Середня
довжина черги
Пріоритетна
черга
Висновки за RED/WRED, ECN
та SPD
1.
2.
3.
4.
RED являє собою механізм активного управління чергою, дозволяє
маршрутизатору виявити перевантаження мережі еше до фактичного
переповнення черги. Метою алгоритму RED є зменшення середнього розміру
черги і, як наслідок цього, скорочення затримки передачі пакетів і запобігання
ефекту глобальної синхронізації. Робота механізму RED заснована на застосуванні
ймовірнісної стратегії відкидання пакетів в разі знаходження середнього розміру
черги в діапазоні між заданими граничними значеннями.
Зважений механізм RED (WRED) дозволяє налаштовувати різні параметри RED в
залежності від пріоритету трафіку. Механізм WRED на основі потоку являє собою
розширення алгоритму WRED, покликане забезпечити рівномірне застосування
політики відкидання по відношенню до пакетів, що належить одному і тому ж
потоку трафіку.
Метою механізм ECN є повідомлення джерел трафіку про зародження
перевантаження мережі шляхом маркування пакетів (а не їх відкидання).
Алгоритм виборчого відкидання пакетів (Selective Packet Discard - SPD),
використовується для управління вхідною чергою IP-процесу маршрутизатора
Cisco. Алгоритм SPD застосовується для забезпечення диференційованого
обслуговування пакетів керуючого трафіку, обробляються за допомогою
механізму комутації процесів маршрутизатора Cisco.
3. Класифікація засобів
боротьби з перевантаженням
На даний момент існує множина засобів контролю (congestion control) і
запобігання (congestion avoidance) перевантажень. Їх можна розділити на
групи за такими критеріями:
за часом реакції на перевантаження;
за місцем реакції на перевантаження.
Причому в залежності від моменту виявлення втрати даних засоби
першої групи класифікуються на:
реактивні підходи, які спрямовані на запобігання перевантажень після
того, як виникла втрата даних (протокол ТСР);
проактивні підходи, призначені для превентивного запобігання
перевантажень за рахунок відкидання пакетів до фактичного
переповнення буфера маршрутизатора. До таких засобів запобігання
перевантажень відносяться механізми RED (Random Early Detection), ARED
(Adaptive-RED), BLUE, SRED (Stabilized RED) тощо.
Класифікація засобів боротьби
з перевантаженням
У свою чергу в другу
групу засобів контролю і
запобігання
перевантаження входять:
 механізми управління
перевантаженням,
реалізовані на кінцевих
пристроях мережі
(Primal);
 механізми управління
перевантаженням,
реалізовані на проміжних
вузлах мережі маршрутизаторах (Dual).
Засоби контролю та запобігання перевантаження
За часом реакції на
перевантаження
Реактивні
Проактивні
TCP Tahoe
RED
TCP Reno
ARED
TCP Vegas
BLUE
TCP
Westwood
SRED
TCP SACK
FRED
RIO
CBT
За місцем реакції на перевантаження
На Кінцевих пристроях
мережі (Primal, sourcebased)
Windowbased
Ratebased
На проміжних Пристроях
мережі (Dual, AQM, routerbased)
Без
використання
інформації
зворотного
зв'язку (openloop control)
З
використанням
інформації
зворотного
зв'язку (closedloop control)
RAP
RED
XCP
ARED
BLUE
4. Різновиди механізму
RED
Евристичні
На основі потоку
На основі внутрішніх
властивостей TCP
На основі швидкості
передачі
1993
1997
1999
2001
2002
Різновиди механізму RED
• RED з агрегованим контролем:
Алгоритм RED зі стабілізацією (Stabilized RED, SRED);
Випадкове експоненціальне маркування (Random Exponential Marking,
REM);
Алгоритм RED з двійковою лінійною функцією відкидання пакетів з
різними нахилами (Double Slope RED, DSRED);
• RED з урахуванням різних типів трафіку:
Справедливий алгоритм RED (Fair RED, FRED);
Алгоритм RED зі справедливою буферизацією (Fair Buffering RED,
FBRED).
• RED з порогом на основі класів трафіку:
Алгоритм RED з порогами на основі класу (Class based threshold RED,
CBT-RED);
Алгоритм RED з балансуванням (Balanced RED, BRED);
Алгоритм BLUE зі стохастичною справедливістю (Stochastic Fair BLUE,
SFBLUE).
5. RED в ATM-мережах
Середній розмір черги обчислюється за
формулою:
середній_розмір_очереді =
(попередній_средній_розмір х (1 - 1/2n) + +
(поточний_розмір_черги х 1/2n),
де n - це експоненціальний ваговий коефіцієнт,
який визначається адміністратором.
n
qav  qold (1  2 )  qcur 2
n
RED в ATM-мережах
Якщо середня довжина черги QueueLength
менше або дорівнює мінімально допустимому
значенню порога спрацювання MinThreshold
алгоритму RED (QueueLength<MinThreshold), то
чарунка будет обслужена ATM-комутатором.
Якщо середня довжина черги QueueLength
знаходиться всередині деякого визначеного
діапазону
(MinThreshold < QueueLength < MaxThreshold),
то RED почне відкидати деякі чарунки випадковим
чином.
RED в ATM-мережах
Імовірність відкидання пакетів :
Pa=Pb/(1-Count • Pb),
(1)
при
Pb=Pmax•(QueueLength-MinThreshold)/(MaxThresholdMinThreshold)•PacketSize/MaxPacketSize,
(2)
де Pmax - максимальна ймовірність відкидання комірок;
Count - кількість чарунок, поміщених в чергу з моменту останнього
відкидання;
PacketSize - довжина пакету протоколу, інкапсульованого в ATM;
MaxPacketSize - максимальна довжина пакету, інкапсульованого в
ATM.
RED в ATM-сетях
Если средняя длина очереди QueueLength больше или равна
максимально допустимому значению
MaxThreshold (QueueLength > MaxThreshold),
то поступившая на вход коммутатора ячейка обязательно будет
отброшена.
Как видно из формул (1) и (2), вероятность отбрасывания ячеек Pa
зависит от размеров инкапсулированных пакетов. Следовательно, большие
пакеты (например, при перекачке файлов по протоколу FTP) будут
уничтожатся чаще, чем маленькие (например, передаваемые по telnet).
В сетях ATM используются две модификации алгоритма RED: C-RED
(Cell-RED) работает с каждой ячейкой, P-RED (Packet-RED) – с группой
ячеек, образующих AAL5 PDU*.
* Протокольным блоком данных уровня (protocol data unit - PDU)
называются фрагменты информации, пересылаемые между
одноранговыми объектами уровня двух систем.
С-RED и Р-RED в ATM-сетях
Алгоритм C-RED учитывает каждую отдельную ячейку и, таким
образом, имеет полную картину состояния сети в каждый момент.
Недостаток данного алгоритма – сложность его реализации при работе на
больших скоростях. В высокоскоростных сетях ATM процедура пересчета
средней длины очереди QueueLength при появлении каждой новой ячейки
может оказаться достаточно сложной и дорогостоящей, поэтому в них
обычно используется P-RED.
Алгоритм P-RED работает с группой ячеек, которые образуют один
пакет, инкапсулированный в ATM (например, IP-пакет). Пересчет средней
длины очереди осуществляется для всех ячеек пакета только один раз – в
момент поступления первой ячейки. P-RED не является таким гибким, как
C-RED, но зато вполне может быть реализован на самых
высокоскоростных каналах.
Недостатки RED в ATM-сетях
Среди недостатков алгоритма RED при работе в сети ATM нужно отметить следующий.
RED сбрасывает только одну или несколько ячеек из тех, которые образуют исходный пакет.
Передача по сети остальных ячеек (неполного пакета) продолжается, они будут уничтожены
только в приемнике на уровне адаптации AAL5. Эту проблему позволяет решить алгоритм
Partial Packet Discard - PPD, который обеспечивает удаление неполных пакетов.
В алгоритме RED вероятность уничтожения пакета является функцией от его размера –
см. формулы (1) и (2). Размеры передаваемых пакетов определяются динамически в
процессе передачи через ATM-коммутатор. В AAL5 границы пакета определяются значением
поля PTI в заголовке ячейки, помечающего последнюю ячейку пакета. Поскольку определить
размер еще не принятого пакета нельзя, его считают равным размеру последнего пакета,
принятого по данному виртуальному каналу. Таким образом, удается использовать
зависимость вероятности уничтожения ячейки от количества ячеек, образующих исходный
пакет AAL5 PDU, т. е. от размера пакета (что не имеет места в алгоритме EPD).
В случае широкого диапазона колебаний нагрузки алгоритм RED может не
отреагировать на переполнение буферов, поэтому он обычно применяется совместно с
алгоритмом EPD. Последний осуществляет не выборочное уничтожение одной ячейки, а
сброс целого пакета, что позволяет резко снизить нагрузку на ATM-коммутатор.
Структурная схема работы совместно
реализованных алгоритмов P-RED и
EPD
Схема работы совместно
реализованных алгоритмов P-RED и
EPD
1. При появлении ячейки ATM-коммутатор анализирует (используя поле PTI заголовка), является
ли она первой ячейкой пакета AAL5 PDU. Если ячейка является началом пакета, ATM-коммутатор
пересчитывает среднюю длину очереди QueueLength (как уже было отмечено, в алгоритме P-RED
пересчет длины очереди осуществляется только для первой ячейки пакета).
2. Если длина очереди меньше либо равна минимальному порогу срабатывания алгоритма RED
(QueueLength<MinThreshold), то данная и все последующие ячейки, принадлежащие данному
пакету, будут по мере поступления обслужены ATM-коммутатором. Если средняя длина очереди
QueueLength находится в пределах MinThreshold<QueueLength<MaxThreshold, то подсчитывается
вероятность отбрасывания ячеек Pa, система переходит в состояние отброса ячеек и осуществляет
сброс поступающих ячеек с частотой, определяемой вероятностью Pa.
Основным достоинством алгоритма RED является возможность подсчета для каждого
виртуального соединения вероятности потерь ячеек в зависимости от размера пакетов (AAL5 PDU),
передаваемых по данному виртуальному соединению. Чем больше пакеты, тем выше вероятность
их уничтожения. Это позволяет справедливо распределять полосу пропускания между потоками
данных различных пользователей, чего нельзя достичь, используя алгоритмы EPD/PPD
самостоятельно, а не совместно с RED.
3. Наконец, если длина очереди превосходит предельно допустимое значение MaxThreshold
(QueueLength>MaxThreshold), то сразу же включается алгоритм EPD, способный достаточно быстро
и эффективно снять перегрузку путем одновременного удаления большого числа ячеек.
Download