Московский государственный технический университет им. Н.Э. Баумана
Опубликован: 13.08.2008 | Доступ: свободный | Студентов: 11320 / 2203 | Оценка: 4.29 / 4.08 | Длительность: 15:23:00
ISBN: 978-5-94774-978-6
Лекция 7:

Качество обслуживания в сетях IP-телефонии

< Лекция 6 || Лекция 7: 12 || Лекция 8 >

7.7. Технология MPLS

MPLS (Multiprotocol Label Switching) - это технология быстрой коммутации пакетов в многопротокольных сетях, основанная на использовании меток. MPLS разрабатывается и позиционируется как способ построения высокоскоростных IP-магистралей, однако область применения технологии не ограничивается протоколом IP, а распространяется на трафик любого маршрутизируемого сетевого протокола.

Традиционно главными требованиями, предъявляемыми к технологии магистральной сети, были высокая пропускная способность, малое значение задержки и хорошая масштабируемость.

Архитектура MPLS обеспечивает построение магистральных сетей, имеющих практически неограниченные возможности масштабирования, повышенную скорость обработки трафика и высокую гибкость с точки зрения организации дополнительных сервисов. Кроме того, технология MPLS позволяет интегрировать сети IP и АТМ, за счет чего поставщики услуг смогут не только сохранить средства, инвестированные в оборудование асинхронной передачи, но и извлечь дополнительную выгоду из совместного использования этих протоколов.

Принцип коммутации

В основе MPLS лежит принцип обмена меток. Любой передаваемый пакет ассоциируется с тем или иным классом сетевого уровня (FEC), каждый из которых идентифицируется определенной меткой. Значение метки уникально лишь для участка пути между соседними узлами сети MPLS, которые называются также маршрутизаторами, коммутирующими по меткам (LSR). Метка передается в составе любого пакета, причем способ ее привязки к пакету зависит от используемой технологии канального уровня.

Схема коммутации MPLS

увеличить изображение
Рис. 7.5. Схема коммутации MPLS

Маршрутизатор LSR получает топологическую информацию о сети. Затем он начинает взаимодействовать с соседними маршрутизаторами, распределяя метки, которые в дальнейшем будут применяться для коммутации. Обмен метками может производиться с помощью как специального протокола распределения меток (LDP), так и модифицированных версий других протоколов сигнализации в сети.

Распределение меток между LSR приводит к установлению внутри домена MPLS путей с коммутацией по меткам (Label Switching Path, LSP). Каждый маршрутизатор LSR содержит таблицу, которая ставит в соответствие паре "входной интерфейс - входная метка" тройку "префикс адреса получателя - выходной интерфейс - выходная метка". Получая пакет, LSR по номеру интерфейса, на который пришел пакет, и по значению привязанной к пакету метки определяет для него выходной интерфейс. Старое значение метки заменяется новым, содержавшимся в поле "выходная метка" таблицы, и пакет отправляется к следующему устройству на пути LSP.

Вся операция требует лишь одноразовой идентификации значений полей в одной строке таблицы. Это занимает гораздо меньше времени, чем сравнение IP-адреса отправителя с наиболее длинным адресным префиксом в таблице маршрутизации, которое используется при традиционной маршрутизации.

Преимущества технологии MPLS:

  • отделение выбора маршрута от анализа IP-адреса (дает возможность предоставлять широкий спектр дополнительных сервисов при сохранении масштабируемости сети);
  • ускоренная коммутация (сокращает время поиска в таблицах);
  • гибкая поддержка QoS , интегрированных сервисов и виртуальных частных сетей;
  • эффективное использование явного маршрута;
  • сохранение инвестиций в установленное ATM-оборудование;
  • разделение функциональности между ядром и граничной областью сети.

Сеть MPLS подразделяется на две функционально различные области - ядро и граничную область (см. рис. 7.5). Ядро образуют устройства, минимальным требованием к которым является поддержка MPLS и участие в процессе маршрутизации трафика для того протокола, который коммутируется с помощью MPLS. Маршрутизаторы ядра занимаются только коммутацией. Все функции классификации пакетов по различным FEC, а также реализацию таких дополнительных сервисов, как фильтрация, явная маршрутизация, выравнивание нагрузки и управление трафиком, берут на себя граничные LSR. В результате интенсивные вычисления приходятся на граничную область, а высокопроизводительная коммутация выполняется в ядре, что позволяет оптимизировать конфигурацию устройств MPLS в зависимости от их местоположения в сети.

Таким образом, главная особенность MPLS - отделение процесса коммутации пакета от анализа IP-адресов в его заголовке, что открывает ряд привлекательных возможностей. Очевидным следствием описанного подхода является тот факт, что очередной сегмент LSP может не совпадать с очередным сегментом маршрута, который был бы выбран при традиционной маршрутизации. Поскольку на установление соответствия пакетов определенным классам FEC могут влиять не только IP-адреса, но и другие параметры, можно реализовать, например, назначение различных LSP пакетам, относящимся к различным потокам RSVP или имеющим разные приоритеты обслуживания. Конечно, подобный сценарий удается осуществить и в обычных маршрутизируемых сетях, но решение на базе MPLS проще и к тому же гораздо лучше масштабируется.

Каждый из классов FEC обрабатывается отдельно от остальных - не только потому, что для него строится свой путь LSP, но и в смысле доступа к общим ресурсам (полосе пропускания канала и буферному пространству). В результате технология MPLS позволяет очень эффективно поддерживать требуемое качество обслуживания, не нарушая предоставленных пользователю гарантий. Применение в LSR таких механизмов управления буферизацией и очередями, как WRED, WFQ или CBWFQ, дает возможность оператору сети MPLS контролировать распределение ресурсов и изолировать трафик отдельных пользователей.

Использование явно задаваемого маршрута в сети MPLS свободно от недостатков стандартной IP-маршрутизации от источника, поскольку вся информация о маршруте содержится в метке и пакету не требуется нести адреса промежуточных узлов, что улучшает управление распределением нагрузки в сети.

7.8. Сравнение технологий IntServ, DiffServ, MPLS

Параметр IntServ DiffServ MPLS
Метод обеспечения QoS Резервирование Приоритезация Перемаршрутизация
Число обслуживаемых классов QoS 3 3 0
Перечень задаваемых показателей качества Полоса пропускания Скорость передачи трафика -
Максимальная сетевая задержка Сетевая задержка
Джиттер Коэффициент потери пакетов
Необходимость использования дополнительных протоколов RSVP Нет LDP, CR-LDP, RSVP
Требования к производительности маршрутизаторов Высокие Низкие Средние
Эффективность масштабирования сети Невысокая Высокая Высокая
Совместимость оборудования разных производителей Средняя Высокая Средняя
Гарантированность обеспечения качества Высокая Средняя Высокая с использованием RSVP

Так как для обеспечения качества только анализируется поле заголовка пакета IP и не используются никакие вспомогательные протоколы сигнализации, то проблема совместимости оборудования разных производителей неактуальна.

Технология DiffServ может использоваться в транзитной сети. Но в условиях однородного трафика, например только голосового, принцип применения приоритетов теряет смысл и сеть начинает работать в режиме Best Effort.

MPLS (многопротокольная коммутация по меткам) предназначена для ускорения коммутации пакетов в транспортных сетях. Основное отличие этой технологии от рассмотренных ранее в том, что MPLS изначально не является технологией обеспечения качества и становится таковой только при использовании протокола RSVP-TE.

На границе сети MPLS маршрутизаторы помечают пакеты специальными метками, определяющими дальнейший маршрут следования пакета к месту назначения. В результате анализируются не адреса IP, а короткие цифровые метки, что существенно снижает сетевую задержку и требования к производительности маршрутизаторов. Для корректного взаимодействия их между собой и обмена информацией о создаваемых метках используются протоколы распределения меток (LDP, CR-LDP, RSVP-TE и др.).

Маршрут может также задаваться административно. В этом случае заранее определяется весь перечень узлов, через которые он будет проходить. Если для соединения требуется гарантия определенного уровня качества, то для распределения меток применяется протокол RSVP-TE, и на маршруте резервируются необходимые ресурсы. В RSVP-TE предусмотрены контроль и обновление установленного соединения, так что в случае повреждения в сети можно динамически перевести потоки трафика на резервный маршрут.

Технология MPLS характеризуется высокой масштабируемостью и рассматривается в качестве наиболее перспективной для передачи трафика IP. Она стандартизована IETF, поэтому, как и в случае с IntServ, при отклонении от спецификаций могут возникнуть проблемы с совместимостью оборудования разных производителей.

7.9. Обслуживание очередей

Алгоритмы обслуживания очередей позволяют предоставлять разный уровень QoS трафику разных классов. Обычно используется несколько очередей, каждая из которых занимается пакетами с определенным приоритетом. Требуется, чтобы высокоприоритетный трафик обрабатывался с минимальной задержкой, но при этом не занимал всю полосу пропускания, и чтобы трафик каждого из остальных типов обрабатывался в соответствии с его приоритетом.

Обслуживание очередей включает в себя алгоритмы:

  • организации очереди;
  • обработки очередей.

7.9.1. Алгоритмы организации очереди

Существует два основных алгоритма организации очереди: Tail Drop и Random Early Detection.

Алгоритм Tail Drop

Tail drops - отсечения конца очереди. Задается максимальный размер очереди (в пакетах или в байтах). Когда очередь полна, ни один вновь поступивший пакет туда уже не помещается и потому отбрасывается. Такое управление очередью приводит к повторной синхронизации параметров соединения. После синхронизации TCP сразу посылает столько пакетов, сколько допускает размер окна подтверждения. Подобный всплеск нагрузки опять приводит к отсечению конца очереди, что опять порождает необходимость повторной синхронизации.

Чтобы избежать возникновения заторов, на маршрутизаторах зачастую организуются очереди большого размера. К сожалению, несмотря на то что увеличение размеров очереди благоприятно сказывается на пропускной способности, большие очереди могут приводить к увеличению времени задержки, что становится причиной нестабильного поведения TCP-соединений.

Алгоритм Random Early Detection (RED)

RED позволяет более "справедливо" разделить канал между TCP-соединениями. Он позволяет контролировать нагрузку с помощью выборочного случайного уничтожения некоторых пакетов до того, как очередь будет заполнена полностью и протоколы, подобные TCP, начнут снижать скорость передачи, а также предотвращает повторную синхронизацию. Кроме того, выборочная "потеря" пакетов помогает TCP быстрее найти подходящую скорость передачи данных и удерживать размер очереди и время задержки на разумном уровне. Вероятность "потери" пакета конкретного соединения прямо пропорциональна пропускной способности, используемой этим соединением, а не числу пакетов, т. е. большие пакеты уничтожаются чаще маленьких, что дает достаточно справедливое распределение полосы пропускания.

При работе с RED пользователю необходимо определиться со значениями трех параметров: минимум (min), максимум (max) и превышение (burst). Минимум - это минимальный размер очереди в байтах, выше которого начнется выборочная потеря пакетов. Максимум - это "мягкий" максимум, алгоритм будет пытаться удержать размер очереди ниже этого предела. Превышение - максимальное число пакетов, которые могут быть приняты в очередь сверх установленного максимального предела.

Минимальный размер очереди рассчитывается, исходя из максимально допустимого времени задержки в очереди и пропускной способности канала. Если установить минимальный предел слишком маленьким, это приведет к снижению пропускной способности, слишком большим - к увеличению времени задержки.

Максимальный размер очереди нужно задавать по меньшей мере в два раза больше минимального, чтобы снизить вероятность повторной синхронизации. На медленных линиях, с небольшим минимальным пределом размера очереди, максимальный предел следует задавать в четыре, а иногда и более раз больше минимального.

Предел превышения отвечает за поведение RED на пиковых нагрузках. Кроме того, необходимо будет определиться с предельным размером очереди ( limit ) и средним размером пакета ( avpkt ). Когда очередь достигает предельного размера, RED переходит к алгоритму "отсечения конца".

При малых размерах очередей метод RED более эффективен, чем другие методы. Он также более устойчив к трафику, имеющему "взрывной" характер.

7.9.2. Алгоритмы обработки очередей

Стратегия FlFO

Алгоритм обслуживания очередей First In-First Out (FIFO), также называемый First Come First Served, является самым простым. Пакеты обслуживаются в порядке поступления без какой-либо специальной обработки.

Такая схема приемлема, если исходящий канал имеет достаточно большую свободную полосу пропускания. Алгоритм FIFO относится к так называемым неравноправным схемам обслуживания очередей, так как при его использовании одни потоки могут доминировать над другими и захватывать несправедливо большую часть полосы пропускания. В связи с этим применяются равноправные схемы обслуживания, предусматривающие выделение каждому потоку отдельного буфера и равномерное разделение полосы пропускания между разными очередями.

Очередь с приоритетами

Очередь с приоритетами (Priority Queuing) - это алгоритм, при котором несколько очередей FIFO (могут использоваться алгоритмы Tail Drop, RED и т. д.) образуют одну систему очередей.

При приоритетной организации очередей (PQ) важный трафик получает самую быструю обработку в каждом пункте, в котором она используется. Этот метод назначает строгий приоритет важного трафика и может обеспечить гибкое задание уровня приоритета в соответствии с сетевыми протоколами. При приоритетной организации очереди каждый пакет помещается в одну из четырех очередей - с высоким, средним и низким приоритетом ожидания - на основе присвоенного приоритета. Назначение разным потокам нескольких разных приоритетов производится по ряду признаков, таких как источник и адресат пакета, транспортный протокол, номер порта. Пакеты, которые не подверглись классификации этим механизмом занесения в список приоритетов, по умолчанию направляются в нормальную очередь. Во время передачи этот алгоритм предоставляет очередям с более высоким уровнем приоритета преференциальный режим по сравнению с очередями с низким уровнем приоритета.

Class-Based Queuing (CBQ)

Классовые дисциплины широко используются в случаях, когда различные виды трафика необходимо обрабатывать по-разному. Примером классовой дисциплины может служить CBQ.

Когда трафик передается на обработку классовой дисциплине, он должен быть отнесен к одному из классов (классифицирован). Определение принадлежности пакета к тому или иному классу выполняется фильтрами.

Фильтры, присоединенные к дисциплине, возвращают результат классификации (класс пакета), после чего пакет передается в очередь, соответствующую заданному классу. Каждый из классов в свою очередь может состоять из подклассов и иметь свой набор фильтров для выполнения более точной классификации своей доли трафика. В противном случае пакет обслуживается дисциплиной очереди класса.

Кроме того, в большинстве случаев классовые дисциплины выполняют шейпинг (формирование) трафика, с целью переупорядочивания пакетов и управления скоростью их передачи. Это совершенно необходимо в случае перенаправления трафика с высокоскоростного интерфейса (например, Еthernet) на медленный (например, модем).

Это позволяет различным приложениям совместно использовать одну и ту же сеть, причем каждое из них предъявляет свои специфические минимальные требования к ширине полосы или к задержке.

Взвешенные очереди

Для резервирования полосы пропускания в сети IP может использоваться метод WFQ (Weighted Fair Queuing). Метод WFQ позволяет для каждого вида трафика выделять определенную часть полосы пропускания. Оператор через систему административного управления может задать количество очередей. В случае если одна очередь не использует полностью выделенную ей полосу пропускания, то свободный резерв полосы пропускания может задействоваться для передачи информации из следующей очереди.

Стратегия справедливых (взвешенных) очередей WFQ используется по умолчанию для интерфейсов низкого быстродействия. WFQ делит трафик на несколько потоков, используя в качестве параметров (для IP-протокола) IP-адреса и порты получателя и отправителя, а также поле IP-заголовка ToS ( Type of Service ). Значение ToS служит для квалификации части выделяемой полосы потока. Для каждого из потоков формируется своя очередь. Максимально возможное число очередей равно 256. Очереди обслуживаются в соответствии с карусельным принципом (round-robin). Более высокий приоритет имеют потоки с меньшей полосой, например, Telnet. По умолчанию каждая из очередей имеет емкость 64 пакета (но допускается значение и менее 4096 пакетов).

В сетях существует 8 уровней приоритета. Следует иметь в виду, что WFQ не поддерживается в случае туннелирования или шифрования. Поток с низким весом получает более высокий уровень обслуживания, чем поток с высоким уровнем. Когда задействованы биты ToS, WFQ реализует приоритетное обслуживание пакетов согласно значению этого кода. Весовой фактор обратно пропорционален уровню приоритета.

Справедливые очереди, базирующиеся на классах (CBWFQ)

Дальнейшим развитием технологии WFQ является формирование классов потоков, задаваемых пользователем. Алгоритм CBWFQ предоставляет механизм управления перегрузкой. Параметры, которые характеризуют класс, те же, что и в случае WFQ (только вместо ToS используется приоритет). В отличие от WFQ здесь можно в широких пределах перераспределять полосу пропускания между потоками. Для выделения класса могут привлекаться ACL (Access Control List) или даже номер входного интерфейса. Каждому классу ставится в соответствие очередь. В отличие от RSVP данный алгоритм гарантирует полосу лишь в условиях перегрузки. Всего может быть определено 64 класса. Нераспределенная полоса может использоваться потоками согласно их приоритетам.

Очереди с малой задержкой (LLQ)

В некоторых случаях, например, в случае VoIP, важнее обеспечить малую задержку, а не широкую полосу пропускания. Для таких задач разработан алгоритм LLQ (Low Latency Queuing), который является модификацией CBWFQ. В этом алгоритме пакеты всех приоритетов, кроме наивысшего, вынуждены ждать, пока очередь более высокого приоритета будет опустошена. Разброс задержки в высокоприоритетном потоке может быть связан только с ожиданием завершения передачи пакета низкого приоритета, начавшейся до прихода приоритетного кадра. Такой разброс определяется диапазоном длин кадров.

< Лекция 6 || Лекция 7: 12 || Лекция 8 >
Нияз Сабиров
Нияз Сабиров

Здравствуйте. А уточните, пожалуйста, по какой причине стоимость изменилась? Была стоимость в 1 рубль, стала в 9900 рублей.

Елена Сапегова
Елена Сапегова

для получения диплома нужно ли кроме теоретической части еще и практическую делать? написание самого диплома требуется?