distributed anycast protocol gateway and learning process endpoint and example-config fabric test

Home » Blog » Switching » datacenter » vxlan evpn mpbgp clos-fabric » distributed anycast protocol gateway and learning process endpoint and example-config fabric test

distributed anycast protocol gateway and learning process endpoint and example-config fabric test

30.12 2019 | by massimiliano

Distributed Anycast Protocol Gateway and Learning Process Endpoint   Distributed Anycast Protocol Gateway è una tecnica che supera le limitazioni […]


https://www.ingegnerianetworking.com/wp-content/uploads/2019/12/multi-site-epg-l2out-10c.png

Distributed Anycast Protocol Gateway and Learning Process Endpoint

 

  • Distributed Anycast Protocol Gateway è una tecnica che supera le limitazioni del classico protocollo HSRP/VRRP in ambienti data center di tipo Spine and Leaf (CLOS) Fabric e presenta i seguenti vantaggi:

 

  • tutti i VTEP hanno lo stesso indirizzo IP per una L2-VNI segment ed un indirizzo MAC Anycast Gateway è globale in ogni VTEP per tutte le VNI associate ai tenants (quindi ogni endpoint ha come gateway il VTEP locale il quale ruota il traffico ai VTEP remoti attraverso una rete IP e questo vale sia per una Fabric monosite che multisite);
  • la funzionalità di ARP suppression permette di ridurre il flooding all’interno del proprio dominio layer 2;
  • permette il moving di VM o Server continuando a mantenere lo stesso IP address gateway configurato nel VTEP locale all’interno di ciascuna VXLAN EVPN Fabric sia monosite che multisite (geograficamente distribuita)

 

no FHRP Filtering tra VXLAN EVPN Fabrics

 

 

  • Permette:
    • – VLAN and VRF-Lite handoff to DCI
    • – MAN/WAN connectivity to external Layer 3 network domain
  • – Connectivity to network services

 

 

Learning Process Endpoint è il processo di learning endpoint ed avviene a livello edge switch VTEP Leaf di una VXLAN EVN Fabric dove questo è direttamente collegato.

 

  • Le informazioni MAC address a livello locale sono calcolate attraverso la tabella di forwarding (data-plane);
  • Le informazioni IP address sono apprese attraverso meccanismi di ARP, GARP (Gratitous ARP) oppure IPv6 neighbor discovery message;
  • Una volta avvenuto il processo di associazione MAC/IP address a livello locale, queste informazioni vengono annunciate ai Leaf VTEP remoti attraverso il protocollo MP-BGP control-plane utilizzando le EVPN route-type 2 advertisement ed inseriscono queste informazioni in una ARP cache (se un indirizzo IP non fosse più presente nella sua ARP cache suppression table, ritrasmette un ARP request agli altri VTEP);
  • Tutti i VTEP hanno le informazioni degli endpoint che appartengono alle rispettive VXLAN VNID per essere importate nelle proprie tabelle di forwarding plane

 

 

I comandi:

 

show l2route evpn mac mostra il contenuto della VPN table (L2 RIB routing information base) popolato via BGP updates

show l2route evpn mac-ip mostra le informazioni contenute nella L2RIB insieme alle host route information ricevute via route-type 2 EVPN updates.

 

Una volta avvenuto il processo di apprendimento MAC + IP a livello locale, queste informazioni vengono annunciate dai rispettivi VTEP attraverso il MP-BGP EVPN control-plane utilizzando le EVPN route-type 2 advertisement trasmette a tutti i VTEP Edge Devices che appartengono alla stessa VXLAN EVPN Fabric.

 

Di conseguenza, tutti gli Edge Devices imparano le informazioni EndPoint che appartengono ai rispettivi VNI (VXLAN segment Network Identifier) ed essere importate all’interno della propria forwarding table.

 

 

Nota con OTV DCI:

 

Quando si configura un anycast gateway vMAC address attraverso Fabrics VXLAN, gli OTV devices ad ogni sites continueranno ad aggiornare le loro tabelle di forwarding (L2 table) affinchè possano continuare a ricevere  sulle loro internal interface le richieste ARP trasmesse dagli endpoint connessi localmente.

E’ una buona pratica applicare una route-map al piano di controllo OTV per evitare comunicazioni anycast gateway MAC address information tra OTV devices tra siti remoti; è possibile applicare una route-map via OTV IS-IS control-plane come nel seguente esempio:

 

mac-list anycast_GW_MAC seq 10 deny 0001.0001.0001 ffff.ffff.ffff

mac-list anycast_GW_MAC seq 20 permit 0000.0000.0000 0000.0000.0000

!

route-map anycast_GW_MAC_filter permit 10

  match mac-list anycast_GW_MAC

!

otv-isis default

  vpn Overlay0

    redistribute filter route-map anycast_GW_MAC_filter

 

 

per maggiori info su OTV vedi:

 

OTV dataplane header https://www.massimilianosbaraglia.it/switching/datacenter/otv-overlay-transport-virtualization/otv-data-plane-header

OTV interface type e funzionalità https://www.massimilianosbaraglia.it/switching/datacenter/otv-overlay-transport-virtualization/otv-interface-type-e-funzionalita

OTV example-configuration per interface type https://www.massimilianosbaraglia.it/switching/datacenter/otv-overlay-transport-virtualization/otv-example-configuration

 

 

Esempio di comunicazione INTRA-SUBNET tra Multi-Site Fabric:

 

 

multi site epg l2out

 

 

 

 

Esempio di comunicazione INTER-SUBNET tra Multi-Site Fabric:

 

 

inter subnet fabric

 

 

 

 

 

Esempio di configurazione High-Level Fabric (generic Fabric)

 

 

Diagramma di rete IP di TEST

fabric test 1

 

 

Leaf Nodes stabiliscono sessioni IBGP EVPN con i Spine Nodes; quest’ultimi hanno ruolo di Router Reflector EVPN e scambiano informazioni layer 2 e layer 3 tra VTEP (Leaf Nodes)

 

 

Diagramma di rete MP-BGP EVPN

 

fabric test 2

 

 

 

Le sessioni IBGP sono stabilite su base loopback; pertanto è necessario un protocollo IGP (OSPF, ISIS) per la redistribuzione delle looopback VTEPs

 

In genere un data centers IaaS costruito su una architettura Spine-Leaf utilizza per migliorare le sue performance di raggiungibilità layer 2 e 3, un processo ECMP (Equal Cost Multi Path) via IGP.

In caso di crescita della Fabric con la separazione multi-tenant, si può pensare a meccanismi di scalabilità come il protocollo BGP e scegliere se utilizzare internal-BGP oppure external in considerazione anche di meccanismi ECMP molto utili in ambienti datacenters

 

IBGP richiede sessioni tra tutti i PE VTEP e l’impiego di Router Reflector aiuta molto in termini di scalabilità delle sessioni configurati a livello Spine; questo tipo standard di soluzione, in ogni caso, riflette solo il best-single-prefix verso i loro client ed nella soluzione di utilizzare ECMP bisogna configurare un BGP addpath feature per aggiungere ECMP all’interno degli annuncia da parte dei RRs

 

EBGP, invece, supporta ECMP senza addpath ed è semplice nella sua tradizionale configurazione; con EBGP ogni devices della Fabric utilizza un proprio AS (Autonomous System)

 

Di seguito una rappresentazione grafica delle due soluzioni BGP:

 

 

EVPN E-BGP and ASN underlay design

 

fabric test 3

 

 

 

EVPN I-BGP with Router Reflector one-Fabric overlay design

 

fabric test 4

 

 

 

 

CONFIGURATION EVPN Fabric with Router Reflector IBGP

 

Enable Feature config

 

feature bgp                                                    # activate bgp protocol that will be used for L2VPN EVPN address-family

feature vn-segment-VLAN-based               # this feature allow you to map a VNI to a VLAN

feature nv overlay                                        # this is VXLAN Feature

feauture nv overlay evpn

Other features need to be activated for your underlay infrastructure like:

feature ospf

feature pim

feature interface-VLAN

 

 

VTEP 1 config:

Vlans database, fabric forwarding anycast-gateway-mac and pim multicast configuration parameters

 

vlan 1,10,20,30

!

fabric forwarding anycast-gateway-mac 0001.0001.0001

!

ip pim rp-address 172.16.1.1 group-list 224.0.0.0/4

ip pim ssm range 232.0.0.0/8

 

 

Vlans Black ed associarla ad un segmento VXLAN VNI and L3-VNI intervlan routing

 

VLAN 10                               # vlan 10 is used as Layer 3 VNI to route inter-vlan routing

name L3-VNI

vn-segment 1000010

!

VLAN 20

name BLACK

vn-segment 2000020

 

 

EVPN configuration permit the exchange of L2 reachability between VTEPs

 

evpn

vni 2000020 l2

   rd auto                                                 # RD is default calculated as VNI:BGP Router ID 

route-target import auto                       # RT is default calculated as BGP AS:VNI

route-target export auto

 

 

Definizione layer 3 VRF per inter-VNI traffic

 

vrf context EVPN              

vni 1000010

rd auto

address-family ipv4 unicast

route-target both auto

route-target both auto evpn

!

interface VLAN 20

description BLACK

vrf member EVPN

ip address 10.10.10.1/24

no shutdown

fabric forwarding mode anycast-gateway

!

interface VLAN 10                                                   # Layer 3 VNI associated interface vlan does not have an ip address.

vrf member EVPN

no shutdown

 

 

Definizione NVE tunnel logical interface where VXLAN packets are encapsulated and decapsulated

 

interface nve1

no shutdown

source-interface loopback0

host-reachability protocol bgp

member vni 1000010 associate-vrf

member vni 2000020

   mcast-group 239.1.1.1                

suppress-arp                      

 

 

# suppress arp permit to VTEP to cache host-reachability information for remote VTEPs and behave later like a proxy-arp when it receives an ARP request from end host and the information is already in his cache table.

 

Configurazione physical interface and ospf underlay

 

interface Ethernet1/2                                     # ospf with PIM is used as Underlay.
 description “to Spine”
 no switchport
 ip address 10.1.1.2/30
 ip router ospf UNDERLAY area 0.0.0.0
 ip pim sparse-mode
 no shutdown
!
interface Ethernet1/10                                 # Port to Host A.
 switchport mode trunk
!
interface loopback01                                 # Loopback for BGP Peering.
 description “Loopback for “BGP”
 ip address 172.16.1.3/32
 ip router ospf UNDERLAY area 0.0.0.0
 ip pim sparse-mode
!
router ospf UNDERLAY

 

 

 

VTEP 3 config:

 

Vlans database, fabric forwarding anycast-gateway-mac and pim multicast configuration parameters

 

vlan 1,10,20,30

!

fabric forwarding anycast-gateway-mac 0001.0001.0001

!

ip pim rp-address 172.16.1.1 group-list 224.0.0.0/4

ip pim ssm range 232.0.0.0/8

 

Vlans Red ed associarla ad un segmento VXLAN VNI and L3-VNI intervlan routing

 

VLAN 10                                         # vlan 10 is used as Layer 3 VNI to route inter-vlan routing

name L3-VNI

vn-segment 1000010

!

VLAN 30

name RED

vn-segment 3000030

 

 

EVPN configuration permit the exchange of L2 reachability between VTEPs

 

 

evpn

vni 3000030 l2

   rd auto                                        #  RD is default calculated as VNI:BGP Router ID 

route-target import auto              # RT is default calculated as BGP AS:VNI

route-target export auto

 

 

Definizione layer 3 VRF per inter-VNI traffic

 

vrf context EVPN              

vni 1000010

rd auto

address-family ipv4 unicast

route-target both auto

route-target both auto evpn

!

interface VLAN 30

description RED

vrf member EVPN

Ip address 20.20.20.1/24

no shutdown

fabric forwarding mode anycast-gateway

!

interface VLAN 10                                      # Layer 3 VNI associated interface vlan does not have an ip address.

vrf member EVPN

no shutdown

 

Definizione NVE tunnel logical interface where VXLAN packets are encapsulated and decapsulated

 

 interface nve1

no shutdown

source-interface loopback0

host-reachability protocol bgp

member vni 10000 associate-vrf

member vni 3000030

   mcast-group 239.1.1.2

   suppress-arp

 

 

Nota: la configurazione delle interfacce fisiche viste per il VTEP 1 e l’ospf underlay è medesimo al paragrafo precedente.

 

 

BGP RR config

 

router bgp 65000

address-family ipv4 unicast

address-family l2vpn evpn

   retain route-target all

template peer IBGP-EVPN

   remote-as 65000

   update-source loopback0

   address-family ipv4 unicast

     send-community extended

     route-reflector-client

   address-family l2vpn evpn

     send-community extended

     route-reflector-client

neighbor 172.16.1.3

   inherit peer IBGP-EVPN

neighbor 172.16.1.4

   inherit peer IBGP-EVPN

neighbor 172.16.1.5

   inherit peer IBGP-EVPN

neighbor 172.16.1.6

   inherit peer IBGP-EVPN

 

 

 

BGP VTEP config

 

router bgp 65000

address-family ipv4 unicast

address-family l2vpn evpn

neighbor 172.16.1.1

   remote-as 65000

   update-source loopback0

   address-family ipv4 unicast

   address-family l2vpn evpn

     send-community extended

neighbor 172.16.1.2

   remote-as 65000

   update-source loopback0

   address-family ipv4 unicast

   address-family l2vpn evpn

     send-community extended

vrf EVPN  
 address-family ipv4 unicast
 advertise l2vpn evpn

 

 

 

Diagramma di esempio finale:

 

fabric test 5

 

 

 

 

Torna in alto