BGP-based VPWS Autodiscovery

An important aspect of VPN technologies is the ability of network devices to automatically signal to other devices about an association with a particular VPN. Autodiscovery refers to the process of finding all the provider edge routers that participates in a given VPWS instance.

The two primary functions of the VPWS control plane are: auto-discovery and signaling. Both of these functions are accomplished with a single BGP Update advertisement.

When a VPWS cross-connect is configured with BGP auto-discovery and signaling enabled, BGP needs to distribute NLRI for the xconnect with the PE as the BGP next-hop and appropriate CE-ID. Additionally, the cross-connect is associated with one or more BGP export Route Targets (RTs) that are also distributed (along with NLRI).

Configuring VPWS with BGP Autodiscovery and Signaling

Perform this task to configure BGP-based autodiscovery and signaling.

Procedure


Step 1

configure

Example:

RP/0/RP0/CPU0:router# configure

Enters the global configuration mode.

Step 2

l2vpn

Example:


RP/0/RP0/CPU0:router(config)# l2vpn

Enters L2VPN configuration mode.

Step 3

xconnect group group name

Example:


RP/0/RP0/CPU0:router(config-l2vpn)# xconnect group gr1

Enters configuration mode for the named xconnect group.

Step 4

mp2mp vpws-domain name

Example:


RP/0/RP0/CPU0:router(config-l2vpn-xc)# mp2mp mp1 

Enters configuration mode for the named vpws domain.

Step 5

vpn-id vpn-id

Example:


RP/0/RP0/CPU0:router(config-l2vpn-xc-m2mp)# vpn-id 100

Specifies the identifier for the VPWS service.

Step 6

l2 encapsulation vlan

Example:


RP/0/RP0/CPU0:router(config-l2vpn-xc-mp2mp)#l2-encapsulation vlan

Configure the L2 encapsulation for this L2VPN MP2MP Instance.

Step 7

autodiscovery bgp

Example:


RP/0/RP0/CPU0:router(config-l2vpn-xc-mp2mp)#autodiscovery bgp

Enters BGP autodiscovery configuration mode where all BGP autodiscovery parameters are configured.

Step 8

rd { as-number:nn | ip-address:nn | auto }

Example:


RP/0/RP0/CPU0:router(config-l2vpn-xc-mp2mp-ad)# rd auto

Specifies the route distinguisher (RD).

Step 9

route-target { as-number:nn | ip-address:nn | export | import }

Example:


RP/0/RP0/CPU0:router(config-l2vpn-xc-mp2mp-ad)# route-target 500:99 

Specifies the route target (RT).

Step 10

signaling-protocol bgp

Example:


RP/0/RP0/CPU0:router(config-l2vpn-xc-mp2mp-ad)# signaling-protocol bgp

Enables BGP signaling, and enters the BGP signaling configuration submode where BGP signaling parameters are configured.

Step 11

ce-id { number }

Example:


RP/0/RP0/CPU0:router(config-l2vpn-xc-mp2mp-ad-sig)# ce-id 10

Specifies the local Customer Edge Identifier.

Step 12

Use the commit or end command.

commit - Saves the configuration changes and remains within the configuration session.

end - Prompts user to take one of these actions:

  • Yes - Saves configuration changes and exits the configuration session.
  • No - Exits the configuration session without committing the configuration changes.
  • Cancel - Remains in the configuration mode, without committing the configuration changes.

VPWS with BGP Autodiscovery and BGP Signaling

The following figure illustrates an example of configuring and verifyingVPWS with BGP autodiscovery (AD) and BGP Signaling.

Figure 1. VPLS with BGP autodiscovery and BGP signaling

VPWS with BGP autodiscovery and BGP signaling

Configuration at PE1:


l2vpn
  xconnect group gr1
   mp2mp mp1
   vpn-id 100
   l2 encapsulation vlan
    autodiscovery bgp
    rd auto
    route-target 2.2.2.2:100
    ! Signaling attributes
    signaling-protocol bgp
    ce-id 1
    interface GigabitEthernet0/1/0/1.1 remote-ce-id 2

Configuration at PE2:


l2vpn
  xconnect group gr1
   mp2mp mp1
   vpn-id 100
   l2 encapsulation vlan
    autodiscovery bgp
    rd auto
    route-target 2.2.2.2:100
    ! Signaling attributes
    signaling-protocol bgp
    ce-id 2
    interface GigabitEthernet0/1/0/2.1 remote-ce-id 1

Verification:

PE1:

PE1# show l2vpn discovery xconnect

Service Type: VPWS, Connected

List of VPNs (1 VPNs):

XC Group: gr1, MP2MP mp1

   List of Local Edges (1 Edges):

     Local Edge ID: 1, Label Blocks (1 Blocks)

       Label base Offset   Size     Time Created      

       ---------- ------   ----     -------------------

       16030     1         10       01/24/2009 21:23:04

        Status Vector: 9f ff

   List of Remote Edges (1 Edges):

     Remote Edge ID: 2, NLRIs (1 NLRIs)

       Label base Offset   Size     Peer ID         Time Created      

       ---------- ------   ----     --------------- -------------------

      16045     1         10       1.1.1.1         01/24/2009 21:29:35

       Status Vector: 7f ff
 

PE1# show l2vpn xconnect mp2mp detail

Group gr1, MP2MP mp1, state: up

VPN ID: 100

VPN MTU: 1500

L2 Encapsulation: VLAN

Auto Discovery: BGP, state is Advertised (Service Connected)

     Route Distinguisher: (auto) 3.3.3.3:32770

   Import Route Targets:

       2.2.2.2:100

   Export Route Targets:

       2.2.2.2:100

   Signaling protocol:BGP

    CE Range:10

….

Group gr1, XC mp1.1:2, state is up; Interworking none

Local CE ID: 1, Remote CE ID: 2, Discovery State: Advertised

AC: GigabitEthernet0/1/0/1.1, state is up

   Type VLAN; Num Ranges: 1

   VLAN ranges: [1, 1]

   MTU 1500; XC ID 0x2000013; interworking none

PW: neighbor 1.1.1.1, PW ID 65538, state is up ( established )

   PW class not set, XC ID 0x2000013

   Encapsulation MPLS, Auto-discovered (BGP), protocol BGP

     MPLS         Local                         Remote                       

     ------------ ------------------------------ -----------------------------

     Label       16031                         16045                        

     MTU         1500                           1500                        

   Control word enabled                       enabled                      

     PW type     Ethernet VLAN                 Ethernet VLAN                

     CE-ID       1                             2                            

     ------------ ------------------------------ -----------------------------

 

...

PE1# show bgp l2vpn vpws

BGP router identifier 3.3.3.3, local AS number 100

BGP generic scan interval 60 secs

BGP table state: Active

Table ID: 0x0

BGP main routing table version 913

BGP NSR converge version 3

BGP NSR converged

BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best

             i - internal, S stale

Origin codes: i - IGP, e - EGP, ? - incomplete

   Network           Next Hop       Rcvd Label     Local Label

Route Distinguisher: 1.1.1.1:32775

*>i2:1/32             1.1.1.1         16045           nolabel        

*>i3:1/32             1.1.1.1         16060           nolabel        

Route Distinguisher: 3.3.3.3:32770 (default for vrf gr1:mp1)

*> 1:1/32             0.0.0.0         nolabel         16030          

*>i2:1/32             1.1.1.1         16045           nolabel        

*>i3:1/32             1.1.1.1         16060           nolabel        

 

Processed 5 prefixes, 5 paths

PE2:

PE2# show l2vpn discovery xconnect

Service Type: VPWS, Connected

List of VPNs (1 VPNs):

XC Group: gr1, MP2MP mp1

   List of Local Edges (2 Edges):

     Local Edge ID: 2, Label Blocks (1 Blocks)

       Label base Offset   Size     Time Created      

       ---------- ------   ----     -------------------

       16045     1         10       01/24/2009 21:09:14

       Status Vector: 7f ff

     Local Edge ID: 3, Label Blocks (1 Blocks)

       Label base Offset   Size     Time Created      

       ---------- ------   ----     -------------------

       16060     1         10       01/24/2009 21:09:14

       Status Vector: 7f ff

   List of Remote Edges (1 Edges):

     Remote Edge ID: 1, NLRIs (1 NLRIs)

       Label base Offset   Size     Peer ID         Time Created      

       ---------- ------   ----     --------------- -------------------

       16030     1         10       3.3.3.3         01/24/2009 21:09:16

     Status Vector: 9f ff

 

PE2# show l2vpn xconnect mp2mp detail

Group gr1, MP2MP mp1, state: up

VPN ID: 100

VPN MTU: 1500

L2 Encapsulation: VLAN

Auto Discovery: BGP, state is Advertised (Service Connected)

     Route Distinguisher: (auto) 1.1.1.1:32775

   Import Route Targets:

       2.2.2.2:100

   Export Route Targets:

       2.2.2.2:100

   Signaling protocol:BGP

     CE Range:10

...

Group gr1, XC mp1.2:1, state is up; Interworking none

Local CE ID: 2, Remote CE ID: 1, Discovery State: Advertised

AC: GigabitEthernet0/1/0/2.1, state is up

   Type VLAN; Num Ranges: 1

   VLAN ranges: [1, 1]

   MTU 1500; XC ID 0x2000008; interworking none

PW: neighbor 3.3.3.3, PW ID 131073, state is up ( established )

   PW class not set, XC ID 0x2000008

   Encapsulation MPLS, Auto-discovered (BGP), protocol BGP

     MPLS         Local                         Remote                      

     ------------ ------------------------------ -----------------------------

     Label       16045                         16031                        

     MTU         1500                           1500                        

     Control word enabled                       enabled                      

     PW type     Ethernet VLAN                  Ethernet VLAN                

     CE-ID       2                             1                            

     ------------ ------------------------------ -----------------------------

...

 

PE2# show bgp l2vpn vpws

BGP router identifier 1.1.1.1, local AS number 100

BGP generic scan interval 60 secs

BGP table state: Active

Table ID: 0x0

BGP main routing table version 819

BGP NSR converge version 7

BGP NSR converged

BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best

             i - internal, S stale

Origin codes: i - IGP, e - EGP, ? - incomplete

   Network           Next Hop       Rcvd Label     Local Label

Route Distinguisher: 1.1.1.1:32775 (default for vrf gr1:mp1)

*>i1:1/32             3.3.3.3         16030           nolabel        

*> 2:1/32             0.0.0.0         nolabel         16045          

*> 3:1/32             0.0.0.0         nolabel         16060          

Route Distinguisher: 3.3.3.3:32770

*>i1:1/32             3.3.3.3        16030           nolabel        

 

Processed 4 prefixes, 4 paths