Сети и телекоммуникации
.pdf481
данных о привязках, но не могут быть по отношению к какой-либо другой совокупности данных о привязках.)
LDP-протокол охватывает также любое другое взаимодействие сторон по доставке маркеров потока, при котором одна из сторон запрашивает данные у другой стороны с целью «изучения» MPLS-характеристик последней.
В рамках MPLS-архитектуры рассматриваются несколько возможных
LDP-протоколов, которые в настоящее время стандартизированы.
Тем не менее, в дальнейшем речь пойдѐт стандарте LDP-протокола, пред-
ставленном в RFC-5036 (2007 год).
Незапрашиваемый или нисходящий поток по требованию
MPLS-архитектура рассматривает использование LSR-маршрутизатором подробного запроса маркера, привязанного к определѐнному FEC-классу, со стороны его следующего РУ для этого FEC-класса. Этот способ доставки мар-
керов именуется как «нисходящий поток по требованию».
Вместе с тем, MPLS-архитектура также рассматривает доставку маркеров
LSR-маршрутизатором другим LSR-маршрутизаторам, которые напрямую не запрашивали эту процедуру. Этот способ доставки маркеров именуется как
«незапрашиваемый нисходящий поток».
Сказанное выше означает, что некоторые программные MPLS-модули будут функционировать на основе способа доставки маркеров, именуемого как
«нисходящий поток по требованию», некоторые — на основе способа доставки маркеров, именуемого как «незапрашиваемый нисходящий поток», а некоторые
— на основе того и другого. Реализация одного из возможных вариантов функ-
ционирования будет зависеть от параметров интерфейсов, встроенных в соот-
ветствующий программный MPLS-модуль. Тем не менее, оба способа доставки маркеров потока могут использоваться в одной и той же сети, и в одно и то же время. Если LSRНП и LSRВП являются смежными относительно доставки марке-
484
Непомеченный IP-пакет может рассматриваться как IP-пакет, содержа-
щий «пустой» набор маркеров потока (т.е. «глубина» набора маркеров равна нулю).
Если набор маркеров потока, содержащийся в IP-пакете, имеет глубину m,
то самый нижний маркер в наборе является маркером первого уровня (level 1),
маркер, расположенный над ним (если конечно такой существует), является маркером второго уровня (level 2), а самый верхний маркер в наборе является маркером уровня m (level m).
Запись о доставке маркера на следующий РУ
Такая запись («Next Hop Label Forwarding Entry» — NHLFE) использует-
ся тогда, когда доставляется помеченный IP-пакет. NHLFE-запись содержит следующую информацию:
1.следующий РУ IP-пакета;
2.процедура обработки набора маркеров потока из IP-пакета. Т.е. одна из следующих:
a)замена маркера самого верхнего уровня набора на новый указанный маркер;
b)«выталкивание» (удаление) набора маркеров (или самого верхнего маркера в наборе маркеров);
c)замена маркера самого верхнего уровня набора на новый указанный маркер с последующей вставкой («проталкиванием») одного или более новых указанных маркеров в набор маркеров потока;
d)(дополнительно) повторное обрамление на канальном уровне, исполь-
зуемое при передаче IP-пакета;
e)(дополнительно) способ кодирования набора маркеров потока при пе-
редаче IP-пакета;
f)(дополнительно) любая другая необходимая информация для коррект-
ной обработки IP-пакета.
485
486
(Примечание. Конкретный LSR-маршрутизатор может сам оказаться LSRмаршрутизатором «расположенным на следующем РУ», который был указан в обрабатываемом IP-пакете. В этом случае LSR-маршрутизатору может понадобиться «вытолкнуть» (удалить) маркер высшего уровня (или весь набор маркеров) и затем доставить сформированный таким образом IP-пакет самому себе. В дальнейшем он может принять иное решение по доставке, основываясь на том, что осталось после удаления маркера из набора. Это по-прежнему может быть помеченный IP-пакет, или это может быть местный IP-пакет.)
Это говорит о том, что в отдельных случаях LSR-маршрутизатору может понадобиться обрабатывать IP-заголовок с целью доставки IP-пакета.
Если в обрабатываемом IP-пакете указан LSR-маршрутизатор, «располо-
женный на следующем РУ», и который является текущим LSR-маршрутизато-
ром, то далее должна следовать процедура обработки набора маркеров потока,
заключающаяся в «выталкивании» (удалении) маркера или всего набора марке-
ров (pop the stack).
Отображение входящего маркера
Эта процедура («Incoming Label Map»— ILM) обеспечивает отображение входного (входящего) маркера в совокупность NHLFE-записей (таблицу). ILM-
процедура используется при доставке IP-пакетов, которые поступают как поме-
ченные IP-пакеты.
Если ILM-процедура отображает определѐнный маркер в совокупность
NHLFE-записей, которая включает более одного элемента, то перед отправкой
IP-пакета из набора маркеров должен быть выбран ровно один элемент. Сами процедуры выбора элемента из набора в данном стандарте не рассматриваются.
Наличие ILM-процедуры отображения маркера в совокупность из более чем одной NHLFE-записи может быть весьма полезным, если, например, необходи-
мо сбалансировать нагрузку между несколькими эквивалентными, с точки зре-
ния затрат, маршрутами.
487
Отображение FEC-класса в совокупность NHLFE-записей
Эта процедура («FEC-to-NHLFE» — FTN) обеспечивает отображение
FEC-класса в совокупность NHLFE-записей. FTN-процедура используется при доставке IP-пакетов, которые поступают непомеченными, но которые должны быть помечены перед их дальнейшей отправкой.
Если FTN-процедура отображает определѐнный маркер в совокупность
NHLFE-записей, которая включает более одного элемента, то перед отправкой
IP-пакета из набора маркеров должен быть выбран ровно один элемент. Сами процедуры выбора элемента из набора в данном стандарте не рассматриваются.
Наличие FTN-процедуры отображения маркера в совокупность более чем из одной NHLFE-записи может быть весьма полезным, если, например, необходи-
мо сбалансировать нагрузку между несколькими эквивалентными, с точки зре-
ния затрат, маршрутами.
Замена маркеров
Замена маркеров (label swapping) предполагает использование следую-
щих процедур при доставке IP-пакета (рис. 33.3):
1.при доставке помеченного IP-пакета. LSR-маршрутизатор проверяет са-
мый верхний маркер в наборе маркеров. Он использует ILM-процедуру для отображения этого набора маркеров в совокупность NHLFE-записей.
Используя информацию в NHLFE-записях, он определяет, куда направить
IP-пакет, и обрабатывает набор маркеров для IP-пакета. Затем он кодиру-
ет и размещает новый набор маркеров в IP-пакете, а потом транслирует итоговый IP-пакет;
2.при доставке не помеченного IP-пакета. LSR-маршрутизатор анализиру-
ет заголовок сетевого уровня с целью определения FEC-класса. После этого он использует FTN-процедуру для отображения FEC-класса в сово-
купность NHLFE-записей. Используя информацию в NHLFE-записях, он
488
определяет, куда направить IP-пакет, и обрабатывает набор маркеров для
IP-пакета. (В данной ситуации вполне возможно, что процедура «вытал-
кивания» (popping) маркера или набора маркеров будет недопустимой.)
Затем он кодирует и размещает новый набор маркеров в IP-пакете, а по-
том транслирует итоговый IP-пакет.
(Примечание. Необходимо отметить, что при использовании процедуры замены маркеров, следующий РУ всегда выбирается из совокупности NHLFE-
записей. В отдельных случаях, при таком подходе, следующий РУ может отличаться от того, который был бы выбран системой, в которой MPLS-коммутация не используется.)
Назначение и уникальность маркеров
Положим, что LSR-маршрутизатор Rd может связать маркер L1 с FEC-
классом F и отправить данные об этой связке субъекту распределения маркеров
Ru1. Rd также может связать маркер L2 с FEC-классом F и отправить данные об этой связке субъекту распределения маркеров Ru2. MPLS-архитектура не опре-
деляет должны ли такие маркеры L1 и L2 быть одинаковыми. Эта задача должна решаться локально.
Положим, что LSR-маршрутизатор Rd может связать маркер L с FEC-
классом F1 и отправить данные об этой связке субъекту распределения марке-
ров Ru1. Rd также может связать маркер L с FEC-классом F2 и отправить данные об этой связке субъекту распределения маркеров Ru2. Если (и только если) Rd
после получения IP-пакета, в котором самый высший маркер является марке-
ром L, может определить какой из субъектов Ru1 или Ru2 разместил маркер в этом IP-пакете, то MPLS-архитектура не требует, чтобы FEC-классы F1 и F2
были одинаковыми. В таких случаях говорят, что Rd использует различные
«диапазоны (пространства) маркеров» для тех маркеров, которые он транслиру-
ет субъекту Ru1, и для тех, которые он транслирует субъекту Ru2.
489
Обобщая сказанное выше, Rd может определить, какой из субъектов Ru1
или Ru2 разместил соответствующий маркерL на самом верхнем уровне набора маркеров только при соблюдении следующих условий:
Ru1 и Ru2 являются лишь субъектами распределения маркеров, которым Rd
транслирует данные о привязке маркера L;
Ru1 и Ru2 напрямую соединены с Rd через сквозной интерфейс (point-to- point interface).
Если эти условия соблюдены, то LSR-маршрутизатор может использовать маркеры, которые предназначены для обозначения конкретного интерфейса
(per interface), т.е. каждый маркер соответствует только одному уникальному интерфейсу. В этом случае говорят, что LSR-маршрутизатор использует про-
странство маркеров, предназначенных для обозначения конкретного интерфей-
са (per-interface label space).
Если эти условия не соблюдены, то маркеры должны быть уникальны по отношению LSR-маршрутизатору, за которым они закреплены. В этом случае говорят, что LSR-маршрутизатор использует пространство маркеров, предна-
значенных для обозначения конкретного сетевого объекта (per-platform label space).
Если определѐнный LSR-маршрутизатор Rd присоединѐн к соответст-
вующему LSR-маршрутизатору Ru с помощью двух сквозных интерфейсов, то
Rd может отправить Ru данные о привязке маркера L к FEC-классу F1, а также данные о привязке маркера L к FEC-классу F2. При этом FEC-классы F1 и F2
считаются эквивалентными, но только тогда (и только тогда), если каждый элемент данных о привязке может быть доставлен только в тех IP-пакетах, ко-
торые Ru транслирует Rd через один из двух сквозных интерфейсов. Во всех других случаях Rd не должен транслировать Ru данные о привязке маркера с одним и тем же значением к двум различным FEC-классам.
Такой запрет налагается и в том случае, когда данные о привязках рас-
сматриваются как данные, расположенные на различных уровнях иерархии.
490
MPLS-архитектура вообще не рассматривает наличие различных пространств
(диапазонов) маркеров для разных уровней иерархии. При определении марке-
ра, уровень маркера вообще не имеет какого смысла.
Вопрос заключается как раз в том, может ли LSR-маршрутизатор для од-
ного и того же интерфейса использовать несколько диапазонов маркеров, пред-
назначенных для обозначения конкретного, либо сетевого объекта, либо интер-
фейса. MPLS-архитектура этого не запрещает. Тем не менее, в таких случаях
LSR-маршрутизатор обязан иметь специализированные средства (которые
MPLS-архитектурой не стандартизованы), позволяющие определить, к какому диапазону маркеров принадлежит соответствующий входящий маркер. Напри-
мер, в стандарте RFC-3032 установлено, что для однонаправленных и IP-паке-
тов с групповой адресацией должны использоваться различные диапазоны мар-
керов. Более того, в стандарте RFC-3032 вводится специализированный код ка-
нального уровня, предназначенный для разграничения этих двух диапазонов маркеров.
LSP-маршрут, вход LSP-маршрута, выход LSP-маршрута
LSP-маршрут m-уровня иерархии (LSPm) по отношению к определѐнному
IP-пакету P представляет собой последовательность маршрутизаторов
< R1, … , Rn > ,
обладающих следующими свойствами (рис. 33.4):
1.R1, вход LSP-маршрута (LSP Ingress), представляет собой LSR-маршру-
тизатор, который вставляет маркер в набор маркеров IP-пакета P, форми-
руя таким образом набор маркеров глубины m;
2.если LSR-маршрутизатор получает IP-пакет P, то последний содержит набор маркеров глубины m для всех i, 1 < i < n;
3.в период времени, когда IP-пакет P не передаѐтся от R1 к Rn-1, P уже имеет набор маркеров с глубиной менее m;
