Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Книга бельфер.docx
Скачиваний:
228
Добавлен:
20.09.2019
Размер:
9.74 Mб
Скачать
      1. 16.2.3. Формирование таблицы маршрутизации сообщениями mp-bgp

Помимо указанных в VRF данных маршрутов от подсоединённых сайтов, каждая таблица дополняется маршрутами, получаемыми от других сайтов зтой VPN. Механизмом, с помощью которого сайты обмениваются маршрутной информацией, является многопротокольное расширение для протокола BGP (MP-BGP, MultiProtocol extention for BGP). С помощью MP-BGP граничные маршрутизаторы РЕ обмениваются маршрутной информацией из своих таблиц VRF, при этом дополняя их необходимыми для VPN определёнными значениями. К ним относятся метки, обеспечивающие туннелирование в VPN. При этом сообщения MP-BGP отправляются только тем маршрутизаторам РЕ, к которым подключены сайты конкретной VPN. Протокол MP-BGP передаёт из РЕ преобразованный IP-префикс подсети (адрес подсети) в VPN-префикс, добавляя к нему 64 битовый признак маршрута RD (Route Distinguisher). В результате на маршрутизаторе РЕ все адреса, относящиеся к разным VPN, будут отличаться, даже если они имеют одинаковые префиксы IP-сети. Значения RD задаются администратором сети.

Рис. 16.3. Формирование таблицы маршрутизации сообщениями MP-BGP

На рисунке 16.3 показано формирование таблицы маршрутизации VRF с помощью сообщений протокола MP-BGP. Здесь показана передача сообщений от РЕ1 в РЕ2. К каждому из PE подключен сайт, принадлежащий одной и той же VPN А. В состав этих сообщений включены приведенные на рис. 16.3 следующие характеристики.

  • Формируется VPN-профиль в РЕ1 для передачи маршрутизатору РЕ2, включающий префикс IP-сети сайта 1 VPN А и признак маршрута RD.

  • Указывается РЕ1 и адрес выходного внешнего интерфейса РЕ1, через который проходит тракт LSP к адресу назначения. При этом назначается метка LVPN, указывающая на таблицу VRF1 А и интерфейс маршрутизатора РЕ1, к которому подключен сайт 1 VPN А.

  • Задаётся расширенный атрибут сообщества – маршрутная цель RT (Rout Target). Этот атрибут идентифицирует набор сайтов (и соответствующих таблиц VRF), входящих в данную VPN А, которые формируют топологию VPN.

Эти сообщения протокол MP-BGP посылает только своим соседям, которые указаны в атрибуте RT. Когда входной маршрутизатор РЕ2 получает сообщение, он отбрасывает признак маршрута RD, а затем помещает в VRF2 А значение LVPN и префикса IP-сети сайта 1 VPN А. Это показано на рис. 16.4 следующего подраздела.

      1. 16.2.4. Пересылка пакетов в vpn

MPLS-протокол LDP обеспечивает получение всеми РЕ-маршрутизаторами метки, связанные с данным РЕ-маршрутизатором. Сеть MPLS готова к обмену VPN-пакетами в тот момент, когда входной РЕ-маршрутизатор получает метку для выходного РЕ-маршрутизатора. На рис. 16.4 показано перемещение пакета данных между узлами разных сайтов одной VPN. Пересылка на основании метки по магистрали провайдера базируется либо на технологии коммутации по меткам, либо на маршрутах перераспределения потоков. При передаче пакета по магистрали пакет данных пользователя содержит два уровня меток. Верхняя метка направляет пакет к требуемому PЕ-маршрутизатору, а вторая метка указывает на таблицу VRF, логически связанную с выходным интерфейсом CЕ-маршрутизатора пункта назначения. Получив IP-пакет через какой-либо интерфейс от СЕ, РЕ-маршрутизатор логически связывает его с комплексом VRF, в результате чего создаётся нижняя метка, логически связанная с выходным РЕ-маршрутизатором (который идентифицирует таблицу VRF адресата маршрута получателя и выходной интерфейс выходного РЕ-маршрутизатора). Из глобальной таблицы пересылки РЕ-маршрутизатор получает верхнюю метку, которая указывает РЕ-маршрутизатор следующего транзитного перехода. РЕ-маршрутизатор помещает обе метки в стек меток MPLS. Этот стек меток присоединяется к VPN-пакету и направляется к следующему транзитному переходу. Р-маршрутизаторы анализируют верхнюю метку и направляют пакет по сети к требуемому узлу. На выходном РЕ-маршрутизаторе верхняя метка удаляется и исследуется нижняя, указывающая таблицу VRF адресата маршрута и выходной интерфейс. После этого нижняя метка также удаляется, а IP-пакет посылается на требуемый СЕ-маршрутизатор. Пусть, например, с сайта 2 VPN А узел с адресом 10.2.1.1/16 отправляет пакет к узлу сайта 1 этой же сети VPN, имеющему адрес 10.1.0.3./16. Стандартными транспортными средствами IP-пакет доставляется на пограничный маршрутизатор сайта СЕ3, в таблице которого для номера сети 10.1.0.0 в качестве следующего маршрутизатора указан маршрутизатор РЕ2. На маршрутизатор РЕ2 пакет поступает с интерфейса 2, поэтому для дальнейшего продвижения пакета он обращается к таблице VRF2 А, связанной с данным интерфейсом. В таблице VRF2 А адресу 10.1.0.0 соответствует запись протокола BGP, которая указывает, что следующим маршрутизатором (NH) для пакета определён маршрутизатор РЕ1. Поле метки содержит значение LVPN=7, определяющее интерфейс выходного маршрутизатора РЕ1. Это значение должно быть присвоено пакету для того, чтобы он попал в нужную сеть VPN. Здесь также указывается, что запись была сделана протоколом BGP, а не IGP. На этом основании маршрутизатор РЕ2 «понимает», что очередной маршрутизатор не является непосредственным соседом и путь к нему надо искать в глобальной таблице маршрутизации. В глобальной таблице для адреса РЕ1 указывается начальное значение метки пути LSP, равное 3. Способ прокладки пути между маршрутизаторами PE1 и PE2 описан выше в главе 15.

В сетях MPLS VPN используются иерархические свойства путей MPLS, за счет чего пакет может быть снабжен несколькими метками, помещаемыми в стек. На входе во внутреннюю сеть поставщика, образуемую маршрутизаторами Р, пакет будет снабжен двумя метками LVPN=7 и L=3. Метка LVPN интерпретируется как метка нижнего уровня – оставаясь на дне стека, она не используется, пока пакет путешествует по туннелю РЕ1-РЕ2. Продвижение пакета происходит на основании метки L верхнего уровня стека. Каждый раз, когда пакет проходит очередной маршрутизатор Р вдоль туннеля, метка L анализируется и заменяется новым значением. И только после достижения конечной точки туннеля – маршрутизатора РЕ1 – из стека извлекается метка LVPN. В зависимости от её значения пакет направляется на тот или иной выходной интерфейс маршрутизатора РЕ1 (на рис. 16.4 этот интерфейс обозначен Int 7). Из таблицы VRF, извлекается запись о маршруте к узлу назначения, указывающая на СЕ1 в качестве следующего маршрутизатора. Заметим, что запись об этом маршруте была помещена в таблицу VRF1А протоколом IGP. Последний отрезок путешествия пакета от СЕ1 до узла 10.1.0.3 осуществляется традиционными средствами IP.

Рис. 16.4. Перемещение пакета данных между узлами VPN

Здесь приняты сокращения:

  • NH (next hop) – следующий маршрутизатор;

  • VRF1 А, VRF2 А, VRF3 А – таблицы маршрутизации (соответственно в РЕ1, РЕ2, РЕ3) относящиеся к VPN A;

  • VRF1 В, VRF2 В – таблицы маршрутизации (соответственно в РЕ1, РЕ2), относящиеся к VPN В.

Рассмотрим перенос пакетов двух разных VPN через домен MPLS. Для коммутации IP-пакетов между устройствами PE используются две метки стека. Эти метки назначаются во входном PE IP-пакету, полученному от CE. Одна («внешняя») используется непосредственно для коммутации пакета маршрутизаторами домена MPLS. Внешняя метка определяет путь LSP от одного PE до другого. Вторая метка («внутренняя») идентифицирует VRF на выходном PE, которому принадлежит IP-пакет.

Рассмотрим домен MPLS, к которому подключены два VPN - VPN А и VPN В (рис. 16.5). VPN А образован сайтами, включающими CE1 и CE2, а VPNВ - CE3 и CE4. Как видно из рисунка, совпадают префиксы IP-адреса узлов CE1, CE3 (10.1.1.0/24), а также префиксы IP-адреса узлов CE2, CE4 (10.2.1.0/24). На рисунке показано прохождение двух пакетов через домен MPLS. На рисунке приняты следующие обозначения: (1.1) – содержание полей IP-пакета, поступившего из CE1 на PE1. Поле d означает IP-адрес пользователя-получателя, а поле s IP-адрес пользователя-отправителя. (1.5) – содержание полей IP-пакета, поступившего из PE2 в CE2. Аналогичные содержания полей IP-пакета VPN В (от CE3 до CE4). IP-адреса пакетов обеих VPN совпадают. Обозначения (1.2), (1.3), (1.4) включают состав полей пакетов VPN А, поступающих на маршрутизаторы Р1, Р2, РЕ2. Аналогично обозначения (2.1), (2.2), (2.3) включают состав полей пакетов VPN В, поступающих на эти же маршрутизаторы. В РЕ1 устанавливается внешняя метка, равная 345. Эта метка позволяет создать LSP-туннель от РЕ1 до РЕ2. Верхняя метка в пакетах VPN позволяет произвести коммутацию в Р1 (смену метки 345 на 600). Поскольку Р2 является предпоследним маршрутизатором LSP-туннеля, в нем производится удаление верхней метки. В результате в пакетах VPN в маршрутизаторе РЕ2 содержатся «внутренние» метки (соответственно для пакета VPN А – 1000, для пакета VPN В – 1020). Эти метки идентифицируют пакет на РЕ2 и указывают конкретный интерфейс к пользователю – Int1 для IP-пакета VPN А и Int2 для IP-пакета VPN В.

Рис. 16.5. Схема прохождения пакетов VPN через домен MPLS

Рассмотрим прохождение пакета из VPN А от СЕ1 до СЕ2 через домен MPLS:

  • РЕ1 получает пакет от СЕ1. По интерфейсу, от которого пришел пакет РЕ1 определяет, что пришедший пакет принадлежит VRF А.

  • По VRF-таблице РЕ1 определяет, что подсеть 10.2.1.0/24 (которой предназначен пакет) доступна через домен MPLS и пакету необходимо назначить две метки 1000/345. Метки назначаются и пакет пересылается устройству Р1.

  • Устройства Р1 и Р2 на основании своих таблиц коммутации переправляют пакет устройству РЕ2. Эти таблицы коммутации содержат множества меток и для каждой из них привязку «FEC-метка», что позволяет поддержать заданное качество обслуживания. При этом может быть использована процедура управления трафиком - инжиниринг трафика. Отметим то, что «внешняя» метка 345, назначенная пакету устройством РЕ1, определяет LSP от РЕ1 до РЕ2.

  • РЕ2 получает пакет только с «внутренней» меткой 1000 и на основании таблицы коммутации определяет выходной интерфейс, через который должен быть переслан пакет (уже без метки).

Прохождения пакета из VPN В от СЕ3 до СЕ4 через домен MPLS происходит аналогично предыдущему примеру. Отличие лишь в значении «внутренней» метки, которая определяет или другой исходящий интерфейс на РЕ2 или другой VRF. Прохождение пакета в обратную сторону, например от СЕ2 до СЕ1 происходит также аналогично приведенному примеру, за исключением значений меток. «Внешняя» метка в этом случае будет определять LSP от РЕ2 до РЕ1, а «внутренняя» метка будет назначаться устройством РЕ1 и обозначать VRF или интерфейсы на устройства РЕ1. Из рассмотренного примера видно, что один и тот же IP-адрес может использоваться в разных VPN, то есть любая VPN может иметь собственное пространство. Для однозначной идентификации адреса пользователя (даже в том случае, когда узел пользователя использует незарегистрированный частный IP-адрес) было специфицировано семейство адресов VPN-IPv4 Adress Family. Адрес VPN-IPv4 имеет длину 12 байтов, первые восемь из которых занимает префикс, называемый различителем маршрутов RD (Route Distinguisher), а оставшиеся 4 байта содержат IPv4 адрес. Таким образом, решается задача определения разных маршрутов к устройствам, имеющим один и тот же IP-адрес, но принадлежащий разным VPN.