Thursday, January 26, 2017

PBB EVPN

PBB stands for Provide Backbone Bridging , PBB EVPN is one of the next generation VPNs which solved a lot of limitations previously faced by deploying what so called Q-in-Q (PB : Provider Bridging)

One of the well know limitations in deploying Q-in-Q is the limited number of supported S-VLANs which is 4096 (even if we can map multiple C-VLANs to one S-VLANs) , as well , the MAC addresses of customers end stations will be flooded across the provider network which can overwhelm resources and can cause broadcast storms among the provider network , and not to forget , demarcation point is not clear and this caveat was solved with PBB using what so called i-SID (Instance Service Identifier) 

Basic configuration to be listed below which includes:
  • IGP configuration (OSPF area 0) in order to build LDP neighborships properly
  • iBGP neighborship between MPLS PEs under the respective address-family (L2VPN EVPN)
  • Two bridge groups are required : first bridge group contains the PBB Edge bridge domains, these are the customer facing BD , every Edge bridge domain must have its own I-SID (Instance Service Identifier) to distinguish  endpoints, the Edge bridge domain must also be attached to what so called Core bridge domain , the second bridge group contains the PBB Core bridge domains which are the MPLS core / EVPN facing BDs , this only requires EVI (Ethernet VPN Instance) ID in basic configuration
 XR1:

router ospf 1
 router-id 10.10.10.10
 area 0
  interface Loopback0

  interface GigabitEthernet0/0/0/0

mpls ldp
 router-id 10.10.10.10
 interface GigabitEthernet0/0/0/0

router bgp 1
 address-family l2vpn evpn

 neighbor 20.20.20.20
  remote-as 1
  update-source Loopback0
  address-family l2vpn evpn

l2vpn
 pbb
  backbone-source-mac 0001.0001.0001

 bridge group BG_CORE
  bridge-domain BD_CORE
   pbb core
    evpn evi 1500

 bridge group BG1_CUST
  bridge-domain BD1_CUST
   interface GigabitEthernet0/0/0/2.100

   pbb edge i-sid 1000 core-bridge BD_CORE

XR2:

router ospf 1
 router-id 20.20.20.20
 area 0
  interface Loopback0

  interface GigabitEthernet0/0/0/0

mpls ldp
 router-id 20.20.20.20
 interface GigabitEthernet0/0/0/0
router bgp 1
 address-family l2vpn evpn

 neighbor 10.10.10.10
  remote-as 1
  update-source Loopback0
  address-family l2vpn evpn

l2vpn
 pbb
  backbone-source-mac 0002.0002.0002

 bridge group BG_CORE
  bridge-domain BD_CORE
   pbb core
    evpn evi 1500

 bridge group BG1_CUST
  bridge-domain BD1_CUST
   interface GigabitEthernet0/0/0/2.100

   pbb edge i-sid 1000 core-bridge BD_CORE
 
Verification:

 RP/0/0/CPU0:XR1#sh bgp l2vpn evpn summary
Wed Jan 25 14:31:38.956 UTC
BGP router identifier 10.10.10.10, local AS number 1
BGP generic scan interval 60 secs
Non-stop routing is enabled
BGP table state: Active
Table ID: 0x0   RD version: 0
BGP main routing table version 7
BGP NSR Initial initsync version 1 (Reached)
BGP NSR/ISSU Sync-Group versions 0/0
BGP scan interval 60 secs

BGP is operating in STANDALONE mode.


Process       RcvTblVer   bRIB/RIB   LabelVer  ImportVer  SendTblVer  StandbyVer
Speaker               7          7          7          7           7           0

Neighbor        Spk    AS MsgRcvd MsgSent   TblVer  InQ OutQ  Up/Down  St/PfxRcd
20.20.20.20       0     1      38      42        7    0    0 00:34:10          2


RP/0/0/CPU0:XR1#sh bgp l2vpn evpn
Wed Jan 25 14:31:45.196 UTC
BGP router identifier 10.10.10.10, local AS number 1
BGP generic scan interval 60 secs
Non-stop routing is enabled
BGP table state: Active
Table ID: 0x0   RD version: 0
BGP main routing table version 7
BGP NSR Initial initsync version 1 (Reached)
BGP NSR/ISSU Sync-Group versions 0/0
BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best
              i - internal, r RIB-failure, S stale, N Nexthop-discard
Origin codes: i - IGP, e - EGP, ? - incomplete
   Network            Next Hop            Metric LocPrf Weight Path
Route Distinguisher: 10.10.10.10:1500 (default for vrf BD_CORE)
*> [2][0][48][0001.0001.0001][0]/104
                      0.0.0.0                                0 i
*>i[2][0][48][0002.0002.0002][0]/104
                      20.20.20.20                   100      0 i
*> [3][1000][32][10.10.10.10]/80
                      0.0.0.0                                0 i
*>i[3][1000][32][20.20.20.20]/80
                      20.20.20.20                   100      0 i
Route Distinguisher: 20.20.20.20:1500
*>i[2][0][48][0002.0002.0002][0]/104
                      20.20.20.20                   100      0 i
*>i[3][1000][32][20.20.20.20]/80
                      20.20.20.20                   100      0 i

Processed 6 prefixes, 6 paths

RP/0/0/CPU0:XR1#show l2vpn pbb backbone-source-mac
Wed Jan 25 14:32:03.955 UTC
Backbone Source MAC: 0001.0001.0001
Chassis MAC        : 0b16.212c.3742


RP/0/0/CPU0:XR1#show l2vpn forwarding bridge-domain pbb edge detail location 0$
Wed Jan 25 14:32:47.772 UTC

Bridge-domain name: BG1_CUST:BD1_CUST, id: 0, state: up
 Type: pbb-edge, I-SID: 1000
 Core-bridge: NULL
 MAC learning: enabled
 MAC port down flush: enabled
 Flooding:
   Broadcast & Multicast: enabled
   Unknown unicast: enabled
 MAC aging time: 300 s, Type: inactivity
 MAC limit: 4000, Action: none, Notification: syslog
 MAC limit reached: no
 MAC Secure: disabled, Logging: disabled
 DHCPv4 snooping: profile not known on this node
 Dynamic ARP Inspection: disabled, Logging: disabled
 IP Source Guard: disabled, Logging: disabled
 IGMP snooping: disabled, flooding: enabled
 MLD snooping: disabled, flooding: disabled
 MMRP Flood Optimization: disabled
 Storm control: disabled
 P2MP PW: disabled
 Bridge MTU: 1500 bytes
 Number of bridge ports: 2
 Number of MAC addresses: 0
 Multi-spanning tree instance: 0
 MIRP-lite: received 0, sent 0

  PBB Edge, state: Up
    Number of MAC: 0

  GigabitEthernet0/0/0/2.100, state: down
    Number of MAC: 0


RP/0/0/CPU0:XR1#show l2vpn forwarding bridge-domain mac-address location 0/0/C$
Wed Jan 25 14:33:11.430 UTC
Mac Address    Type    Learned from/Filtered on    LC learned Age                Mapped to
--------------------------------------------------------------------------------
0001.0001.0001 S-BMAC  BD id: 1                    N/A        N/A                N/A
0002.0002.0002 BMAC    BD id: 1                    N/A        N/A                N/A

Note : Am using simulator to illustrate the concept

No comments: