Этапы функционирования MPLS-сети

Этап 1: Создание и распределение меток. Маршрутизаторы LSR конфигурируют домен MPLS для обслуживания пакетного трафика: организуют классы FEC, назначают и/или распределяют метки, формируют тракты LSP и устанавливают парные соответствия 'FEC-метка".

Этап 2. Создание таблицы LIB в каждом LSR. На основе пар "FEC-метка" заполняются базы LIB, т.е. создаются записи соответствий: "входной интерфейс-входящая метка" - "выходной интерфейс-исходящая метка".

Этап 3. Создание коммутируемого по меткам тракта LSP. Таблица меток отражает LSP, которых д.б. два для одного дуплексного канала и 2N - для N дуплексных каналов. Схема создания LSP - либо последовательная маршрутизация от узла к узлу, либо явная маршрутизация для всего тракта.

Этап 4. Табличный поиск и инкапсуляция метки в пакет. Пограничный маршрутизатор LSR на входе сети, определив класс FEC для принятого пакета, ищет в базе LIB пару 'FEC-метка" и инкапсупирует эту метку в пакет.

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

Метки в MPLS-сети

Структура и стек меток

Метка - элемент фиксированной длины: 4 байта (32 бита), состоящий из заголовка - 12 бит:

 

- Ехр - 3 бита, зарезервированы под класс обслуживания CoS;

- S -1 бит - признак дна стека (1 - для последней метки в стеке);

- TTL (Time-To-Live) - 8 бит - поле для указания времени жизни пакета (предотвращает циркуляцию пакета при наличии петли в маршруте) и собственно значения метки - 20 бит.

 

Метка Ехр S TTL
20 бит Збита 1бит 8 бит

 

Стек Меток позволяет использовать более одной метки в случае работы с разным? приложениями. В общем случае стек формируется между заголовком уровня 2 (вершина стека) и заголовком уровня 3 (дно стека), каждая метка имеет свои собственные уникальные четыре поля (4 байта). Стек меток образует так называемый уровень 2,5. Конкретные варианты размещения меток зависят от технологии, с которой работает MPLS.

Инкапсуляция меток

Рассмотрим, где конкретно размещаются метки стека меток, т.е. куда они инкапсулируются. на примере наиболее широко используемых с MPLS технологий: IP, Ethernet и ATM.

MPLS-IP. При использовании MPLS совместно с IP метка прикрепляется перед заголовком IP-пакета и имег стандартный формат: <TTL (время жизни - 8 бит, поле копируется из IР-заголовка)>-<S (дно стека - 1бит)>-<CoS (класс сервиса - 3 бита)>-<Label (метка - 20 бит)>.

MPLS-Ethernet. При передаче Ethernet no MPLS в каждом кадре Ethernet передается только один пакет с меткой. Метка размещается после заголовка МАС-уровня и перед заголовком уровня 3. Добавление одной метки MPLS или стека меток MPLS при многоадресной рассылке может привести к тому, что длина кадра Ethernet станет больше максимальной допустимой длины кадра Ethernet, равной 1492 байта (хотя м.б. реализована поддержка пакетов длиной 1500 и 1508 байтов), что, в свою очередь, может привести к сегментации "разбухшего" кадра. Один из способов избежать этого - использовать для передачи пакетов с метками сети ATM или РРР.

MPLS-ATM. При передаче меток MPLS no сети ATM они инкапсулируются либо внутри заголовка (занимая часть поля VCI-VPI - первая метка), либо в поле данных полезной нагрузки (вторая и последующие метки стека). В этом случае такая сеть управляется ПО MPLS, а не ATM.

Таблица форвардинга LIB

Таблица LIBсостоит из записей, сформированных из нескольких полей: Входящая метка, 1-я подзапись, ... N-я подзапись. Каждая подзапись состоит из трех основных элементов: Исходящая метка, Выходной интерфейс, Адрес следующего LSR. Дополнительно указываются ресурсы, которые может использовать пакет (например, выходные очереди) и др. При Входящей метке k происходит обращение к k-ой записи в таблице LIB, которая содержит всю информацию необходимую для пересылки/форвардинга пакета.

Операции с метками

Базовыми являются три операции с метками: назначение, распределение и сохранение меток.

Назначение меток может проводиться двумя способами:

- независимое назначение меток (т.е. независимое создание трактов LSP), когда каждый LSR сам принииаг решение о привязке метки к обнаруженному FEC и уведомляет вышестоящий LSR об этой привязке;

- упорядоченное назначение меток (т.е. упорядоченное создание трактов LSP), когда привязка метки к опредепенному FEC происходит только в случае, если LSR уже получил информацию о привязке "FEC-метка" от нижестоящего LSR или выступает в роли выходного узла для этого FEC.

 

Распределение меток также может проводиться двумя способами:

- нижестоящим LSR по запросу вышестоящего;

- нижестоящим LSR по собственной инициативе.

 

Для распределения меток используются, по крайней мере, три протокола:

- Протокол распределения меток LDP - использует три разных метода распределения: топологический (испопьзует протоколы OSPF и BGP); на основе запросов (использует обработку управляющего протокола

 

 

RSVP на основе запросов); на основе трафика (запускает процедуры присвоения и распределения меток при получении пакета);

- Протокол резервирования ресурсов RSVP - играет в этом случае двойную роль: распределяет метки для MPLS (используя сообщения Resv) и поддерживает требуемое качество обслуживания;

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

 

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

Фиксированные метки. Некоторые значения меток резервируются:

 

- 0 - удаляемая метка пакета IPv4;

- 1 - удаляемая метка аварийной сигнализации маршрутизатора;

- 2 - удаляемая метка пакета IPv6;

- 3 - удаляемая метка обнуления (удаления) стека;

- 4-15-значения меток, зарезервированные для дальнейшего использования.