mpls IGP

Document Sample
mpls IGP Powered By Docstoc
					     Тема 3. MPLS для ускорения
     маршрутизации – MPLS IGP




Определение FEC
Распространение меток с помощью протокола LPD
Особенности работы MPLS поверх ATM и FR
Конфигурирование MPLS IGP в маршрутизаторах Cisco
 Label Distribution Protocol
                           (RFC 3036)




Протокол LDP представляет собой набор процедур, с помощью
которых один Label Switch Router (LSR) информирует другой о
значении меток, используемых для продвижения пакетов между ними
и через них.
LDP отображает маршрутную информацию сетевого уровня
информацию непосредственно на коммутируемый путь LSP
канального уровня.
LDP связывает Forwarding Equivalence Class (FEC) с путем LSP,
который он создает.

FEC определяет, какие пакеты будут передаваться, а LSP - по какому
пути они пойдут.
                 Сессия и сообщения LDP

                             LDP-peer
                                          Двусторонний протокол,
                                          позволяющий одному LDP-
                                          peer узнать отображение
                                          FEC-labels другого




4 типа сообщений LDP:
•Discovery messages - объявление и •Advertisment messages - создание,
обнаружение LSR в сети             изменение и удаление отображений меток
•Session messages - установление, для классов FEC
управление и завершение сессий    • Notification messages - сообщения об
между LDP-peers                   ошибках и информация для мониторинга
 1. Discovery message - Hello
 Сообщение Hello рассылается периодически всем LSR подсети
 по известному групповому IP-адресу.
 Используется протокол UDP и известный LDP-порт

                                      Сообщения Hello
                                LDP




               LDP


2. LSR, знающий о других LSR, может установить с каким-либо LSR
сессию LDP, пользуясь сообщением Initialization из группы Session
 3. Запрос (request) и объявление (advertisement) отображения
 метки

                           Request FEC2


                         Advertisment
                         Label=124




LSR запрашивает отображение метки тогда, когда ему это необходимо и
объявляет отображение метки тогда, когда считает это нужным или по
запросу
Формат сообщения Label Request


      0                   1                         2             3

      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

  |0|      Label Request (0x0401)          |   Message Length           |

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

  |                           Message ID                                |

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

  |                           FEC TLV                                   |

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

  |                           Optional Parameters                       |

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Формат сообщения Label Mapping

0                  1                    2                  3

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|0|   Label Mapping (0x0400)       |   Message Length             |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|                      Message ID                                 |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|                      FEC TLV               Связывание           |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|                      Label TLV                                  |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|                      Optional Parameters                        |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Полный набор сообщений протокола LDP



    Notification       "Notification Message"

    Hello            "Hello Message"

    Initialization    "Initialization Message"

    KeepAlive          "KeepAlive Message"

    Address           "Address Message"

    Address Withdraw        "Address Withdraw Message"

    Label Mapping         "Label Mapping Message"

    Label Request         "Label Request Message"

    Label Abort Request     "Label Abort Request Message"

    Label Withdraw        "Label Withdraw Message"

    Label Release       "Label Release Message"
     Задание FEC в протоколе LDP

FEC определяет набор пакетов, которые продвигаются по
определенному пути LSP
FEC является набором элементов FEC
Каждый элемент FEC задает подмножество пакетов, отображаемых на
данный LSP



        Элемент 1 Элемент 2     Элемент 3

            FEC




 Агрегирование – несколько потоков объединяются в один
 за счет использования нескольких элементов
Два типа элементов FEC в протоколе LDP


1. Address Prefix
Длина от 0 до 32 бит
130.128./9


2. Host address - точный адрес назначения
130.128.0.36


Address Prefix длиной в 32 бита и Host Address, имеющие
одинаковое значение, оказывают различное значение на
набор пакетов данного LSP
    Правила отображения определенного
    пакета на определенный LSP



Если есть в точности один путь LSP, который имеет FEC-
элемент Host Address, идентичный адресу назначения пакета, то
пакет отображается на этот LSP
 Если есть несколько путей LSP, каждый из которых имеет
FEC-элемент Host Address, идентичный адресу назначения
пакета, то пакет отображается на один из этих LSP. Выбор одного
из этих LSP стандартом не определяется
Если адрес пакета имеет префикс, совпадающий с FEC-
элементом Address Prefix только одного LSP, то пакет
отображается на данный LSP
    Правила отображения определенного
    пакета на определенный LSP
    (продолжение)

• Если адрес пакета имеет префикс, совпадающий с FEC-
элементами Address Prefix нескольких LSP, то пакет отображается
на тот LSP, который имеет более длинный префикс. Если все
FEC-элементы имеют префиксы равной длины, то выбирается
любой из путей LSP (выбор стандартом не определяется).
•Если известно, что пакет должен пересечь определенный
выходной (из сети MPLS) маршрутизатор, и имеется LSP, у
которого есть FEC-элемент с префиксом, совпадающим с
адресом этого маршрутизатора, то пакет отображается на этот
LSP. Процедура получения таких знаний стандартом не
определяется
•Пример такой ситуации:
Адрес выходного маршрутизатора получен по протоколу iBGP как
адрес Next Hop
Следствия из правил отображения пакетов




  Пакет может быть направлен по пути, имеющего
  Address Prefix FEC-элемент с префиксом,
  совпадающим с префиксом пакета, только в том
  случае, когда нет путей с Host Address FEC-
  элементом, совпадающим с адресом назначения
  пакета.


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



LSR может использовать для отображения FEC на путь
пространства меток двух типов:
1. Специфические для интерфейса (interface-specific).
Все метки пространства применимы только только в
пределах одного интерфейса, на других интерфейсах
метки данного пространства не используются, поэтому
из значения могут повторяться. Такой тип пространства
меток используется при связях «точка-точка» двух LSR.
Примеры: метки VCI интерфейса АТМ, метки DLCI
интерфейса frame relay
2. Специфические для платформы метки (platform-
specific). Метки пространства уникальны в пределах LSR
(платформы). Применяется для разделяемых связей
(например, Ethernet)
                   Порт 3     103




       Порт 4

                  103




Коммутатор не может ошибиться и спутать пакет синего
LSP, помеченный меткой 103, с пакетом зеленого LSP,
помеченный меткой 103, так как они всегда приходят при
связях «точка-точка» на разные порты.
105




               103
                       104
                     103




      При связях с множественным доступом метки должны быть
      уникальными в пределах LSR
     Идентификатор пространства меток


Имеет длину 6 байт и состоит из идентификатора LSR
(4 байта) и идентификатора пространства меток (2
байта)
                   <LSR Id> : <label space id>

например, lsr171:0, lsr19:2.
0 всегда обозначает          платформенно-специфическое
пространство меток
                                                 В качестве
                                                 идентификатора LSR
                                                 может использоваться
                                                 IP-адрес:
                                                 131.200.2.100:1
                                                 131.200.2.100:2
           Распределение меток в LDP



2 метода (method):
• Downstream On Demand - распределение по запросу.
Downstream LSR получает запрос от Upstream LSR и
назначает метку запрошенному FEC
•Downstream Unsolicited - распределение без запроса в
восходящем направлении. Downstream LSR назначает метку
FEC без предварительного запроса и передает ее Upstream
LSR.
В рамках одной LDP-сессии может использоваться только
один из методов
  Режимы управления распределением меток


2 режима (mode) управления распределением:
•Независимый - Independent Label Distribution Control
Каждый LSR может выполнить назначение и распространение метки,
не дожидаясь получения метки от нисходящего LSR - обычно, при
обнаружении нового маршрута (по протоколу маршрутизации)
    - при методе Downstream On Demand - не дожидаясь, когда
    нисходящий LSR ответит на запрос
    - при методе Downstream Unsolicited - в любой момент, когда
    данный LSR готов объявить о привязке метки к FEC


•Упорядоченный - Ordered Label Distribution Control
Начать процесс назначения метки может только последний LSR на
пути (egress LSR)
Применяется при Constraint-based Routing - путь выбирается не только
по адресу назначения
   Борьба с зацикливанием запросов на
          распределение меток




В сообщениях Label Request и Label Mapping передаются
два параметра:
•Path Vector - последовательность идентификаторов
LSR, через которые прошло сообщение (подобно
номерам AS, которые пересекло сообщение Update
протокола BGP)
•Hop Count - общее количество LSR, которые пересекло
сообщение. Вводится лимит - аналог TTL.
   Условия генерация сообщения Label Mapping в
   независимом режиме управления:




1. LSR распознал новый класс FEC из своей таблицы маршрутизации, при
этом режим объявлений - Downstream Unsolicited
2. LSR получил сообщение Request Label от своего восходящего соседа для
FEC, присутствующего в его таблице маршрутизации
3. Следующий хоп для некоторого FEC изменился
4. Получено отображение метки от нисходящего LSR И
  a) восходящее отображение пока не сделано ИЛИ
  b) сконфигурировано обнаружение петель
Условия генерация сообщения Label Mapping в упорядоченном
режиме управления:




  1. Если LSR распознал новый FEC в своей таблице
  маршрутизации, и LSR является выходным LSR для
  данного FEC
  2. LSR получил сообщение Request Label для FEC,
  присутствующего в его таблице маршрутизации, и
  данный LSR является выходным для этого FEC или
  имеет нисходящее отображение для этого FEC
  3. Следующий хоп для FEC изменился
   4. Получено отображение метки от нисходящего LSR И
    a) восходящее отображение пока не сделано ИЛИ
    b) сконфигурировано обнаружение петель
  Условия генерации сообщения Label Request




1. LSR распознал новый FEC из своей таблицы
маршрутизации, следующий хоп - это LDP-peer, а LSR
еще не имеет отображения от следующего хопа для
данного FEC
2. Изменился следующий хоп для некоторого FEC, и LSR
еще не имеет отображения от нового следующего хопа
3. LSR получил запрос Label Request на FEC от
восходящего LDP-peer, и LSR еще не имеет отображения
от следующего хопа
           Пример установления путей LSP
                         Prefix=131.20.0.0/16
                         Prefix=192.128.0.0/9
                         Prefix=207.15.25.0/24
                                     LSR4


                                             205          LSR5
                         156    LSR2
                                          LSR3

                                                                            LSR7
               LSR1                                           LSR6


IP Dest.      Next Hop
131.20.0.0      LSR4                      Prefix=46.0.0.0/8
192.128.0.0     LSR4                      Prefix=194.105.0.0/16
207.15.25.0     LSR4                      Prefix=207.15.26.0/24
46.0.0.0        LSR2
194.105.0.0     LSR2            1. Запрос Label Request LSR5 LSR1
                               2. Запрос Label Request от LSR4кк(LRE) к LSR4
                               3. Ответ Label Mapping отот LSR1 LSR4
                                                          LSR4      LSR5

207.15.26.0     LSR2            FEC (131.20.0.0/16; 192.128.0.0/9; 207.15.25.0)
                               FEC ==(131.20.0.0/16; 192.128.0.0/9; 207.15.25.0)
                               FEC = (131.20.0.0/16; 192.128.0.0/9; 207.15.25.0)
                                       156
                               Label = 205
           Пример установления путей LSP
                         Prefix=131.20.0.0/16
                         Prefix=192.128.0.0/9
                         Prefix=207.15.25.0/24
                                   LSR4


                                           205          LSR5
              123        156   LSR2
                                        LSR3

                                                                   LSR7
               LSR1                                         LSR6


IP Dest.      Next Hop
131.20.0.0      LSR4                    Prefix=46.0.0.0/8
192.128.0.0     LSR4                    Prefix=194.105.0.0/16
207.15.25.0     LSR4                    Prefix=207.15.26.0/24
46.0.0.0        LSR2
194.105.0.0     LSR2
207.15.26.0     LSR2
   Соответствие агрегатов потоков в
   соседних LSR – слияние потоков



                                                                 LSR7
                    LSR3
                                          LSR9




LSR3:
FEC1 = 131.200.10.0/24, serial1 ->in103
FEC2 = 131.200.10.0/24, serial1->in104
FEC3 = 192.100.0.0/16, serial2 - >in105
FEC4 = 192.100.0.0/16, serial2 - >in105
                                           LSR9:
                                           FEC1 = 131.200.10.0/24, 192.100.0.0/16 ->in200
    Соответствие агрегатов потоков в
    соседних LSR – расщепление потоков
     (возможно при независимом управлении распределением меток)




                    LSR3
                                           LSR9

                                                  LSR7




                                                   LSR7:
LSR9:
                                                   FEC1 = 131.200.10.0/24, serial1 ->in201
FEC1 = 131.200.10.0/24, 192.100.0.0/16 ->in200
                                                   FEC2 = 192.100.0.0/16, serial2 - >in202


  Можно отобразить метку 200 на любую метку (201 или
  202), если знать, что оба потока выходят через один LER
 Пример агрегирования FEC и слияния меток
                         Prefix=131.20.0.0/16               Отображения меток в LSR4:

                         Prefix=192.128.0.0/9
                         Prefix=207.15.25.0/24                           156 -> 205

                                      LSR4                               132 -> 205

                                 132           205           LSR5
              123        156      LSR2
                                            LSR3

                                                                              LSR7
               LSR1             191                               LSR6


IP Dest.      Next Hop
131.20.0.0      LSR4       LSR8
                                         IP Dest.      Next Hop
192.128.0.0     LSR4           176
                                         131.20.0.0      LSR2
207.15.25.0     LSR4
                                         192.128.0.0     LSR2
46.0.0.0        LSR2
                                         207.15.25.0     LSR2
194.105.0.0     LSR2
                                         46.0.0.0        LSR2
207.15.26.0     LSR2
                                         194.105.0.0     LSR2
                                         207.15.26.0     LSR2
Агрегирование и АТМ


  Обычно АТМ коммутаторы не поддерживают
  слияние виртуальных путей (VC-merge)
  Причина?


  Пакеты передаются большим количеством
  ячеек АТМ, при объединении виртуальных
  каналов ячейки перемешиваются (interleaves)
  и собрать пакет в точке назначения
  становится невозможно!
 Совместная работа Merging LSR и Non-
 Merging LSR


           LSR3
                                LSR9

                                       LSR7


Если LSR9 – Non-merging
             Составьте таблицы FTN и NHFLE для
А LSR7 – Merging, то
             LSR9 и LSR7 для двух FEC
LSR9 отвечает на каждый новый запрос о метке для
одного и того же FEC новым значением метки, но
               всех 131.200.10.0/24
отображает ихFEC1 = на одну выходную метку
             FEC2 = 192.100.0.0/16
         Иерархические пути, стек меток и туннелирование

                        AS 1

          LER1                                 LSR 3

                   LSR 1       LSR 2
                                                       LER2




                           LSR 5
                                   LSR 4

                                                  LER3
                 LER4   AS 2           LSR 3



LSP 1: LER1, LER2, LER3, LER4 - общение по BGP
LSP2: LSR1, LSR2, LSR3, LSR4 - по OSPF
LSP3: LSR3, LSR4, LSR5 - по OSPF
Иерархические пути, стек меток и туннелирование

          315
    256 315          IP IP
                             147
                                   AS 1
                                     315         IP

             LER1                                          LSR 3

                             LSR 1         LSR 2
                                                                   LER2




                                      LSR 5
                                              LSR 4        LER3
                     LER4


       455          IP             AS 2
                                     77    455         3
                                                   LSRIP
      Методы распространения
      иерархии меток
                                                       Местные соседи по
                      AS 1                             распределению меток –
                                                       local label distribution peers
        LER1                                 LSR 3

                 LSR 1       LSR 2
                                                     LER2


                                                        Дальние соседи по
                                                        распределению меток –
                                                        remote label distribution peers

                         LSR 5
                                 LSR 4

                                                LER3
               LER4   AS 2           LSR 3



LSP
Методы распространения
иерархии меток (2)

    1 вариант:
    Дальние соседи направленно посылают
    метки друг другу, как если бы они были
    местными



    2 вариант:
    Дальние соседи косвенно посылают метки
    друг другу, помещая их в стек сообщений
    LDP и направляя местным соседям для
    передачи дальним – более
    масштабированное решение
Создание агрегированного пути для
определенной выходной точки MPLS домена




     Если Ingress LER знает, что разные пути разных
     FEC будут заканчиваться в одной точке сети
     (общий egress LER), то он может объединить их
     в одни FEC
Особенности работы MPLS в случае
АТМ на канальном уровне
Метод размещения стека меток в кадре 2-го уровня
называется «кодированием стека» - stack encoding
 PPP Header   Shim Header   Layer 3 Header




  Хотелось бы использовать имеющееся поле VPI/VCI
  и меньше изменять имеющуюся аппаратуру и ПО
  продвижения в АТМ-коммутаторах
Особенности работы MPLS в случае
АТМ на канальном уровне (2)

 Существует несколько методов кодирования стека
 меток в АТМ
 А) Метка помещается в поле VPI/VCI
 SVC Encoding
   GFC     VPI           VCI   PTI CLP HEC Shim 1 Shim 2


                 Label



  Недостаток – не поддерживается иерархия путей, нельзя выполнить
  операцию pop
Особенности работы MPLS в случае
АТМ на канальном уровне (3)
 B) Top-level метка помещается в поле VPI, а
 следующая из стека метка – в поле VCI
 SVP Encoding
 Преимущества – поддерживается иерархия
 Недостаток – не всегда можно использовать поле VPI,
 если два ATM-LSR соединяются через сеть non-MPLS
 ATM-коммутаторов (почему?)
  GFC    VPI       VCI    PTI CLP HEC Shim 1 Shim 2


        Label1   Label2
Особенности работы MPLS в случае
АТМ на канальном уровне (4)
 B) Top-level метка помещается в поле VPI, а
 следующая из стека метка – в поле VCI, а в
 оставшиеся биты VCI помещается идентификатор
 upstream LSR
 SVP Multipoint Encoding
 Преимущества – позволяет агрегировать потоки в
 АТМ коммутаторах, не поддерживающих VC Merge

  GFC   VPI     VCI   PTI CLP HEC Shim 1 Shim 2


         L1   L2 ID
Методы, исключающие перемешивание
ячеек разных пакетов при
агрегировании путей

 1. Использование кодирования стека SVP
    Multipoint Encoding – пакеты можно собрать, так
    как в поле VCI имеется признак виртуального
    пути, по какому они шли до агрегирования
 2. Буферизация всех ячеек одного пакета (по полю
    AAL5 “End of frame indicator”), затем отправка на
    выходной порт агрегированного потока –
    свойство VC-merge АТМ коммутатора

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:9
posted:9/14/2012
language:Bulgarian
pages:40