Назад в библиотеку

МЕХАНИЗМ ЭФФЕКТИВНОГО ТУННЕЛИРОВАНИЯ В СЕТИ MPLS

А.Б. Гольдштейн

Ссылка на оригинал.

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

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

Принцип коммутации MPLS основывается на обмене меток. Любой передаваемый пакет ассоциируется с тем или иным классом сетевого уровня FEC (Forwarding Equivalence Class), каждый из которых идентифицируется определенной меткой. Значение метки уникально лишь для участка пути между соседними узлами сети MPLS, которые называются также маршрутизаторами, коммутирующими по меткам LSR (Label Switching Router). На рис.1 пограничный маршрутизатор LSRi - входной, а LSR4 -выходной маршрутизатор. Последовательность маршрутизаторов (LSR1,..., LSR4), через которые проходят пакеты, принадлежащие одному FEC, образует виртуальный тракт LSP, коммутируемый по меткам, LSP (Label Switching Path).

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

Журнал «Вестник связи» № 2 2004 Источник

Поток данных

Существует еще одно весьма важное достоинство MPLS, заслуживающее отдельного упоминания именно в контексте привлекательности этой технологии, уже упоминаемой в начале статьи. Это возможность в рамках архитектуры MPLS вместе с пакетом передавать не одну метку, а целый стек меток.

Операции добавления/изъятия метки определены как операции на стеке (push/pop). Результат коммутации задает лишь верхняя метка стека, нижние же передаются прозрачно до операции изъятия верхней. Такой подход позволяет создавать иерархию потоков в сети MPLS и организовывать туннельные передачи.

Речь идет о возможности в MPLS управлять всем трактом передачи пакета без специфицирования в явном виде промежуточных маршрутизаторов. Это достигается путем создания туннелей через промежуточные маршрутизаторы, которые могут охватывать несколько сетевых сегментов, как это изображено на рис.2. Все пограничные маршрутизаторы MPLS (LER1, LER2, LER3 и LER4) используют протокол BGP и создают коммутируемый по меткам тракт LSP между ними (LSP1). LER1 знает о том, что его следующий пункт назначения - LER2, поскольку он передает данные от отправителя, которые должны пройти через два сегмента сети. В свою очередь, LER3 знает о том, что его следующий пункт назначения - LER4, и т.д. Эти пограничные четыре LER будут использовать протокол LDP для получения и хранения меток от выходного LER (LER4 в данном сценарии) вплоть до входного LER (LER1).

Однако, для того чтобы данные были переданы от LER1 к LER2, они должны пройти через несколько (в данном случае три) транзитных маршрутизаторов LSR. Таким образом, между двумя LER (LER1 и LER2) создается отдельный тракт LSP (LSP2), который охватывает LSR1, LSR2 и LSR3. Он, в сущности, представляет собой туннель между этими двумя LER. Метки в этом тракте отличаются от меток, которые LER создали для LSP1. Это справедливо и для LER3 и LER4, равно как и для LSR, находящихся между ними. Для этого последнего сегмента создается тракт LSP3. Для достижения этого результата, при передаче пакета через два сетевых сегмента используется концепция стека меток. Поскольку пакет должен следовать через LSP1, LSP2 и LSP3, он будет переносить одновременно две отдельные метки. Пары, используемые для каждого сегмента, следующие: для первого сегмента - метка для LSP1 и LSP2, для второго сегмента - метка для LSP1 и LSP3.

Когда пакет покидает первую сеть и принимается пограничным маршрутизатором LER2, тот удаляет метку для LSP2 и заменяет её на метку для LSP3, заменяя при этом метку LSP1 внутри пакета на метку следующей пересылки. LER4 удаляет обе метки перед отправкой пакета адресату.

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

Математическая модель эффекта туннелирования в MPLS представляет собой сеть массового обслуживания с последовательными очередями (рис.3). Вероятностно-временные характеристики времени ожидания в подобных системах изучались в работах Боксмы [1], Клейнрока [2], Фича и Веларда[3], Ле Галля [4] и др. В данной статье представлен результат вычисления времени пребывания пакета в туннеле при большом числе последовательных узлов.

Рис.3. Модель последовательных очередей

Оцениваемыми параметрами являются среднее время обслуживания без прерывания (период занятости) и среднее время пребывания пакета в n-м узле. Обслуживаемые за период занятости (т.е. непрерывно, без освобождения) пакеты объединяются в группу на выходе узла и называются пачкой. Средняя длина такой пачки выражается числом пакетов. На вход граничного узла 1 поступает пуассоновский поток сообщений с интенсивностью входного потока заявок X и средним временем обслуживания 1/д. В 1956 г. была опубликована теорема Бурке [6], согласно которой выходной поток заявок в системе M/M/m в стационарных условиях (при p=X/(^m)<1) является также пуассоновским с той же интенсивностью X. Но при последовательно соединенных очередях мы не можем рассматривать каждый узел независимо от других, даже в условиях, когда выполняется теорема Бурке. Если мы рассматриваем два следующих один за другим сообщения на узле n (n>2), интервал времени между поступлением этих двух сообщений зависит от времен поступления и обслуживания на предыдущих узлах, как показано еще в предшествующей знаметимому двухтомнику первой книге Л. Клейнрока [2]. В этой работе, в частности, показано, что сообщения, сгруппированные на узле n (n>2), остаются сгруппированными и на последующих узлах n+1, n+2.

Специфическое поведение первого узла (n=1) очевидно и связано с тем, что сообщения поступают напрямую, не проходя через какой-либо узел. Специфика режима работы второго узла (n=2) впервые исследована в работах Ле Галля [4], где показано, что этот второй узел может рассматриваться как реальный источник пачек сообщений.

Эта специфика второго узла ясна и интуитивно. Сложность поведения пакетов в нем обусловлена двумя явлениями: сцеплением пачек, исходящих от первого узла, и фрагментацией этих же пачек.

Первое явление сцепления относится не только ко второму, но и к любому не первому узлу n (n^l) и связано с тем, первый пакет k-й пачки догоняет на этом узле последний пакет (к-1)-й пачки, и обе пачки - k-я и (к-1)-я - соответствующим образом сцепляются, как это показано на рис.4-а.

Второе явление фрагментации, которое иллюстрирует рис.4-б, не столь очевидно и имеет место только во втором узле, но тоже вполне наглядно. Пусть в первом узле обслуживается пакет номер j из пачки к и в этот момент на тот же первый узел поступает следующий пакет номер j+1, время обслуживания которого превышает время обслуживания пакета j. Пусть на следующем втором узле в этот момент нет очереди, и пакет j обслуживается, как только он поступает на узел 2, пакеты j+1 и j начинают обслуживаться одновременно на узлах l и 2, соответственно. Когда пакет j затем покидает узел 2, пакет j+1 всё ещё продолжает обрабатываться на узле 1, поскольку время его обслуживания дольше.

Математический анализ этих двух явлений эффекта туннелирования MPLS позволяет вывести следующую формулу для времени пребывания пакета в туннеле из N узлов:

(1)

где у - постоянная Эйлера (у = 0.577), а N>2.

Формула (1) позволяет рассчитать целесообразность организации туннеля в LSP для индивидуальных пар «исходящий узел - узел назначения» при заданных загрузке сети р и нормативов качества обслуживания. С ее помощью дается также показать, что отдельные туннелированные LSP в наиболее реалистических случаях, вероятно, должны являться предпочтительным режимом работы для IP-телефонии.

Рассмотрим маршрут в MPLS-сети, который состоит из N узлов и физических каналов передачи данных между ними. Маршрут соответствует трем объектам: LS^ (LSR источника), LSRн (LSR назначения) и классом обслуживания трафика, определяемым допустимым временем передачи. Пусть Л по-прежнему означает интенсивность пуассоновского потока запросов, а 1/р означает усредненное время обслуживания сообщений в узле. Соответственно, р = Л/р означает нагрузку, обслуживаемую узлом LSP-маршрута. Обслуживание же этой нагрузки узлами, входящими в данный LSP-маршрут, и является основной работой данного фрагмента сети MPLS.

В контексте поставленной задачи поиска стратегии принятия решения об организации LSP-туннеля для оценки альтернативного варианта суммарного времени Vz(N) пребывания пакета в LSP-пути без туннеля допустимо использовать B-формулу Эрланга в качестве адекватной оценки, позволяющей произвести сравнение с V1(N).

На рис. 5 представлены оба варианта передачи сообщений при наличии или при отсутствии LSP-туннеля. В первом случае суммарное время пребывания пакета в сети равно V1 (N), а во втором случае время пребывания того же пакета в сети равно V2 (N).

Для аналитического исследования ситуации отсутствия LSP-туннеля узел n, передающий пакеты по LSP, целесообразно описать с помощью модели M/M/1/K со скоростью передачи пакетов в секунду и максимальным числом K пакетов, которое он может хранить в своей буферной памяти. Пакеты в этой модели являются теми же самыми, что в случае организации туннеля, а ограничение на размер буфера выбрано так, чтобы условия в вариантах наличия или отсутствия туннеля были бы абсолютно одинаковы.

Инженерные различия между MPLS и традиционным туннелированием состоит в модели топологии MPLS. Традиционные туннели всегда проходят от одной границы до другой насквозь через сеть. В случае MPLS туннели могут создаваться внутри сети для управления трафиком только в части сети. Т.е. в LSP из М маршрутизаторов от входящего LSR1 до исходящего LSRm можно создать LSP-туннель, например, от входящего LSR5 до исходящего LSRN, при N<M.

Т.е. даже создаваемые на короткое время LSP-туннели в MPLS могут начинаться внутри сети, а не из пользовательского приложения на границе сети. Это особенно важно для практического применения представленной в статье модели: пользователи будут продолжать применять обычные IP-пакеты и адресацию в своих приложениях и даже в локальных сетях. Однако, в случае подключения локальной сети к глобальной, некоторые из IP-пакетов пользователей (или пакеты, относящиеся к другим протоколам) могут направляться через туннели MPLS в целях обеспечения их привилегированного обслуживания. В этом смысле MPLS схожа не только с туннелированием, но и с сетью виртуальных каналов типа Frame Relay или ATM.

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

Итак, полагаем, что эффект от организации туннеля, получаемый на переносимый пакет, равен разности V1 и V2. При этих предположениях предлагается следующий алгоритм:

Шаг 1. Полагается N = M.

Шаг 2. Для n = 1, 2, ..., N определяются величины размера пачки в Кп по формуле

Шаг 3. Определяется время V2(N) пребывания пакета в LSP-пути сети MPLS из N узлов (маршрутизаторов) без организации LSP-туннеля при наличии ограниченной

очереди к узлу n длиной Кп по формуле

Шаг 4. Определяется время V(N) пребывания пакета в LSP-туннеле из N узлов по формуле (1)

(3)

Шаг 5. Сравниваются величины Vi(N) и V2N). При положительной разнице V(N) и V2N) организация туннеля между первым узлом и узлом N не представляется целесообразной. Осуществляется переход к шагу 6. В противном случае принимается решение организовать туннель между первым узлом и узлом n, и работа алгоритма завершается.

Шаг 6. При положительной разнице V1N) и V2N в узле п принимается решение об исключении узла п из рассмотрения на предмет возможного LSP-туннеля. Выполняется анализ равенства N числу 3. Если N=3, то принимается решение об отказе в организации LSP-маршрута где бы то ни было вдоль LSP-маршрута, и работа алгоритма завершается. В противном случае, т.е. при N>3, присваивается N:= N - 1 и осуществляется возврат к шагу 2.

Данный алгоритм позволяет выбрать эффективный LSP-туннель где-то внутри фрагмента сети MPLS из M узлов (маршрутизаторов) или отказаться от данных попыток. . Само по себе решение об организации LSP-туннеля согласно предложенному здесь алгоритму сводится к анализу двух (с туннелем и без туннеля) значений среднего совокупного времени пребывания пакета в узлах от 1 до узла N. Этот последний узел N «подозревается» на предмет того, что он может быть граничным исходящим узлом LSP-туннеля. Справедливость этого подозрения и проверяется сравнением V2 и V1.

Проиллюстрируем алгоритм на численном примере сети MPLS (рис.6).

Сеть включает 50 узлов, соединяемых LSP, через которые можно создавать LSP-туннели. Сеть содержит 1225 пар источник-назначение. Все буферы имеют размеры К пакетов. Выигрыш во времени от организации туннеля равен разности Vi и V2. Нагрузка на LSP колеблется в диапазоне от р=0.75 до р=0.85. Результаты расчетов представлены на рис.7-9.

Рис.9. Результаты расчетов при р=0.85

На этих рисунках четко видно, что при р=0.75 эффективна организация туннеля при N< 14, для р=0.8 при N< 25, а при р=0.85 эффективна организация туннеля во всем LSP-пути, т.е. при N< 50.

Таким образом, в статье предпринята попытка сформулировать критерий эффективности организации туннеля в сети MPLS и определены сравнительные вероятностно-временные характеристики обслуживания трафика реального времени в туннелях сети MPLS и без туннелей, соответствующие критерию эффективности организации туннеля в сети MPLS. Предложен алгоритм поиска эффективной стратегии организации туннеля в сети MPLS и рассчитан конкретный численный пример MPLS-сети из N=50 маршрутизаторов.

Литература

[1] Boxma O.J On a tandem queuing model with identical service times at both counters, Adv. Appl. Prob., Vol. 11, 1979, pp 616-659

[2] Клейнрок Л. Коммуникационные сети: Пер.с англ. -М.: Наука, 1975

[3] Fiche G., Veillard Y. The Tunneling Technique and the Tandem Queue Effect// In International Workshop on Future Service, Alcatel, France 2000.

[4] Le Gall P. Single server queuing networks with varying service times and renewal inputJourn. Of Appl. Mathematics and Stochastic Analysis, 13;4 (2000), pp 429-450

[5] Гольдштейн А.Б. Механизмы обеспечения гарантированного качества обслуживания в сетях IP/Я-я Международная научно-техническая конференция студентов, аспирантов и молодых специалистов стран СНГ. Одесса, Украина, сентябрь, 2001г.

[6] Burke P.J. The output of a queuing system., J.Op.Res.Soc.Amer.4, 1956, pp 699-704.