/ 12.2.-evpn-multihoming / 5.-mc-lag-evpn.md
5.-mc-lag-evpn.md
  1  # А нужен ли нам MC-LAG в EVPN?
  2  
  3  Мы рассматривали схему с подключением multihomed CE к PE-кам с использованием LAG. Причем для PE-маршрутизаторов это просто один физический интерфейс, добавленный в бандл, а вот со стороны CE - один LAG, в который добавлены интерфейсы в сторону обеих PE-шек, то есть получается некая эмуляция MC-LAG, во всяком случае CE маршрутизатор/коммутатор будет думать, что подключен к одному и тому же узлу провайдера и балансирует трафик по обоим членам бандла. С точки зрения конфигурации это выглядит так:
  4  
  5  Со стороны RZN-SW-1 настраиваем один LAG интерфейс:
  6  
  7  > Примечание: Перед созданием LAG интерфейсов не забываем в настройках шасси включить соответствующий функционал: 
  8  > ```text
  9  > set chassis aggregated-devices ethernet device-count 20
 10  > ```
 11  
 12  ```text
 13  bormoglotx@RZN-SW-1> show configuration interfaces ae0 
 14  description "LAG to RZN-PE-1/2 | ae0<<>>ae3";
 15  flexible-vlan-tagging;
 16  mtu 1600;
 17  encapsulation flexible-ethernet-services;
 18  aggregated-ether-options {
 19      lacp {
 20          active;
 21          periodic fast;
 22      }
 23  }
 24  ```
 25  
 26  В него добавляются линки в сторону обоих PE-маршрутизаторов:
 27  
 28  ```text
 29  bormoglotx@RZN-SW-1> show configuration interfaces ge-0/0/0 
 30  description "RZN-PE-1 | ae1<<>>ae3";
 31  gigether-options {
 32      802.3ad ae0;
 33  }
 34  
 35  bormoglotx@RZN-SW-1> show configuration interfaces ge-0/0/1 
 36  description "RZN-PE-2 | ae2<<>>ae3";
 37  gigether-options {
 38      802.3ad ae0;
 39  }
 40  ```
 41  
 42  Со стороны PE-маршрутизаторов в таком сценарии должен по идее настраиваться MC-LAG, но с EVPN/MPLS мы обойдемся без этого. На PE-ках собираем LAG в сторону CE и указываем один и тот же system-id, чтобы MAC адрес PE-шек в сторону CE был одинаковым \(иначе CE коммутатор будет детектировать MAC-флаппинг\):
 43  
 44  ```text
 45  bormoglotx@RZN-PE-1> show configuration interfaces ae3 
 46  description "RZN-SW-1 | ge-0/0/0 | ae3<<>>ae0 ";
 47  flexible-vlan-tagging;
 48  mtu 1600;
 49  encapsulation flexible-ethernet-services;
 50  esi {
 51      00:00:00:00:00:00:00:00:00:01;
 52      all-active;
 53  }
 54  aggregated-ether-options {
 55      lacp {
 56          active;
 57          periodic fast;
 58          system-id 02:00:00:00:00:01;
 59      }
 60  }
 61  ```
 62  
 63  ```text
 64  bormoglotx@RZN-PE-2> show configuration interfaces ae3 
 65  description "RZN-SW-1 | ae3<<>>ae0 | MC-LAG with RZN-PE-2";
 66  flexible-vlan-tagging;
 67  mtu 1600;
 68  encapsulation flexible-ethernet-services;
 69  esi {
 70      00:00:00:00:00:00:00:00:00:01;
 71      all-active;
 72  }
 73  aggregated-ether-options {
 74      lacp {
 75          active;
 76          periodic fast;
 77          system-id 02:00:00:00:00:01;
 78      }
 79  }
 80  ```
 81  
 82  Теперь можно проверить состояние бандла.
 83  
 84  Со стороны RZN-SW-1:
 85  
 86  ```text
 87  bormoglotx@RZN-SW-1> show lacp interfaces ae0 
 88  Aggregated interface: ae0
 89      LACP state:       Role   Exp   Def  Dist  Col  Syn  Aggr  Timeout  Activity
 90        ge-0/0/0       Actor    No    No   Yes  Yes  Yes   Yes     Fast    Active
 91        ge-0/0/0     Partner    No    No   Yes  Yes  Yes   Yes     Fast    Active
 92        ge-0/0/1       Actor    No    No   Yes  Yes  Yes   Yes     Fast    Active
 93        ge-0/0/1     Partner    No    No   Yes  Yes  Yes   Yes     Fast    Active
 94      LACP protocol:        Receive State  Transmit State          Mux State 
 95        ge-0/0/0                  Current  Fast periodic Collecting distributing
 96        ge-0/0/1                  Current  Fast periodic Collecting distributing
 97  ```
 98  
 99  Со стороны PE маршрутизаторов:
100  
101  ```text
102  bormoglotx@RZN-PE-1> show lacp interfaces ae3 
103  Aggregated interface: ae3
104      LACP state:       Role   Exp   Def  Dist  Col  Syn  Aggr  Timeout  Activity
105        ge-0/0/4       Actor    No    No   Yes  Yes  Yes   Yes     Fast    Active
106        ge-0/0/4     Partner    No    No   Yes  Yes  Yes   Yes     Fast    Active
107      LACP protocol:        Receive State  Transmit State          Mux State 
108        ge-0/0/4                  Current   Fast periodic Collecting distributing
109  ```
110  
111  ```text
112  bormoglotx@RZN-PE-2> show lacp interfaces ae3 
113  Aggregated interface: ae3
114      LACP state:       Role   Exp   Def  Dist  Col  Syn  Aggr  Timeout  Activity
115        ge-0/0/4       Actor    No    No   Yes  Yes  Yes   Yes     Fast    Active
116        ge-0/0/4     Partner    No    No   Yes  Yes  Yes   Yes     Fast    Active
117      LACP protocol:        Receive State  Transmit State          Mux State 
118        ge-0/0/4                  Current   Fast periodic Collecting distributing
119  ```
120  
121  Возможен вариант, когда со стороны PE-маршрутизаторов будут просто физические интерфейсы, а вот со стороны CE — простой статический LAG \(без LACP\).
122  
123  Ну и второй вариант подключения — через стандартный MC-LAG со всем вытекающими \(ICCP, ICL\). Сложно не согласиться, что первый вариант намного проще второго. И применять EVPN/MPLS и MC-LAG лично я смысла не вижу, особенно при условии, что MC-LAG в All-Active режиме еще и требует ICL, кроме случаев, когда MC-LAG жизненно необходим или уже сконфигурен для других сервисов \(не ломать же его теперь\).
124  
125  К плюсам EVPN с MC-LAG можно отнести то, что помимо EVPN на данном стыке можно реализовать и другие сервисы с резервированием \(ну к примеру VPLS с бекап сайтом или L2CKT с бекапным нейбором — ведь не все железо поддерживает EVPN\). А вот из минусов можно выделить то, что обычно MC-LAG ограничен 2-мя нейборами \(EVPN multihoming поддерживает больше 2-х PE-шек в режиме Active-Active\); необходимость в линке между PE-ками, проприетарность самой технологии \(имеется в виду MC-LAG\) ну и наверно можно добавить как минус увеличение конфигурации.
126