Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Navigation
Guide That Contains This Content
[+] Expand All
[-] Collapse All

Example: VPLS Multihoming, Improved Convergence Time

This example shows how to configure a virtual private LAN service (VPLS) employing multihoming to a customer site. This particular VPLS multihoming example shows how to configure a feature that improves the network convergence time in the event a multihomed site needs to switch traffic to its alternate PE router.

Requirements

This example uses the following hardware and software components:

  • Three M Series, MX Series, or T Series routers
  • Junos OS Release 12.2 or later

If you are using M Series or T Series routers, the PE routers must have either virtual loopback tunnel (vt) interfaces or label-switched interfaces (LSIs). On M Series and T Series routers, VPLS uses tunnel-based PICs to create virtual ports on vt interfaces. If you do not have a tunnel-based PIC installed on your M Series or T Series router, you can still configure VPLS by using LSIs to support the virtual ports. Use of LSIs requires Ethernet-based PICs installed in an Enhanced Flexible PIC Concentrator (FPC).

You do not need to use routers for the CE devices. For example, the CE devices can be EX Series Ethernet Switches.

Overview

All PE routers in a VPLS network operate like a large, distributed Ethernet switch to provide Layer 2 services to attached devices. This example illustrates a network of PE routers and CE devices configured to use VPLS multihoming.. The topology consists of six routers: four PE routers and two CE devices. Device CE1 is multihomed to Routers PE1 and PE2. The PE routers are configured with the best-site and mac-flush statements to improve the convergence time in the event the connection between Device CE1 and one of its multihomed PE routers fails.

This example includes the following settings:

  • best-site—Uses the B-bit of the control flags bit vector (the third bit counting from the most significant bit) within the Layer 2 information extended community to indicate that the site is preferred. Each VPLS site configured with the best-site statement signals to the other PE routers that it is the preferred site. The Layer 2 information extended community includes the following information:

    • Extended community type (2 octets)
    • Encapsulation type (1 octet)
    • Control flags (1 octet)
    • Layer 2 MTU (2 octets)
    • Reserved (2 octets)
    When a neighboring PE router within the VPLS routing instance receives the label block advertisement, it knows that the corresponding PE router is the most preferable router of those remote PE routers multihomed to that site. If a neighboring PE router does not support the best site feature, the standard local site selection process is used. For example, if Router PE1 does not receive a B-bit from any of the label blocks advertisements received from Router PE3, Router PE1 proceeds to assume that Router PE3 does not support the best site feature. It creates a virtual circuit based on its minimum-designated site. For the other PE routers that do support the best site feature, Router PE1 builds virtual circuits using the locally tagged best site.
  • mac-flush—Enables media access control (MAC) flush processing for the VPLS routing instance or for the mesh group under a VPLS routing instance. MAC flush processing removes MAC addresses from the MAC address database that have been learned dynamically. With the dynamically learned MAC addresses removed, MAC address convergence requires less time to complete.

Topology

Figure 1 shows the topology used in this example. Router PE1 is configured with the best-site statement and acts as the preferred gateway for traffic from Device CE1.

Figure 1: VPLS Multihoming Topology with Router PE1 Configured as the Best Site

VPLS Multihoming Topology with Router
PE1 Configured as the Best Site

Configuration

CLI Quick Configuration

To quickly configure this example, copy the following commands, paste them into a text file, remove any line breaks, change any details necessary to match your network configuration, and then copy and paste the commands into the CLI at the [edit] hierarchy level.

Router PE1:

set interfaces fe-0/1/0 encapsulation ethernet-vpls set interfaces fe-0/1/0 unit 0 family vpls set interfaces fe-0/1/2 unit 0 family inet address 10.0.59.14/32 set interfaces fe-0/1/2 unit 0 family iso set interfaces fe-0/1/2 unit 0 family mpls set interfaces fe-0/1/3 unit 0 family inet address 10.0.89.14/30 set interfaces fe-0/1/3 unit 0 family iso set interfaces fe-0/1/3 unit 0 family mplsset interfaces lo0 unit 0 family inet address 192.168.9.1/32set interfaces lo0 unit 0 family iso address 47.0005.8083.0000.1921.6800.5003.00set routing-options router-id 192.168.9.1set protocols mpls interface allset protocols bgp group int type internalset protocols bgp group int local-address 8.0.0.104set protocols bgp group int family l2vpn signalingset protocols isis level 1 disable set protocols isis interface fe-0/1/2.0 set protocols isis interface fe-0/1/3.0 set protocols isis interface lo0.0set protocols ldp interface allset protocols ldp interface fxp0.0 disableset protocols ldp interface lo0.0set routing-instances vpls_1 instance-type vplsset routing-instances vpls_1 interface fe-0/1/0.0set routing-instances vpls_1 route-distinguisher 10.255.107.74:1set routing-instances vpls_1 vrf-target target:65056:1set routing-instances vpls_1 protocols vpls no-tunnel-servicesset routing-instances vpls_1 protocols vpls site site_3 site-identifier 3set routing-instances vpls_1 protocols vpls site site_3 multi-homingset routing-instances vpls_1 protocols vpls site site_3 site-preference primaryset routing-instances vpls_1 protocols vpls site site_3 interface fe-0/1/0.0set routing-instances vpls_1 protocols vpls site site_994 site-identifier 994set routing-instances vpls_1 protocols vpls mac-flush

Router PE2:

set interfaces fe-0/1/1 encapsulation ethernet-vplsset interfaces fe-0/1/1 unit 0 family vplsset interfaces fe-0/1/2 unit 0 family inet address 10.0.59.13/32set interfaces fe-0/1/2 unit 0 family isoset interfaces fe-0/1/2 unit 0 family mplsset interfaces lo0 unit 0 family inet address 192.168.5.1/32set interfaces lo0 unit 0 family iso address 47.0005.8083.0000.1921.6800.5005.00set routing-options router-id 192.168.5.1set protocols mpls interface allset protocols isis level 1 disableset protocols isis interface fe-0/1/2.0set protocols isis interface lo0.0set protocols ldp interface allset protocols ldp interface fxp0.0 disableset protocols ldp interface lo0.0set routing-instances vpls_1 instance-type vplsset routing-instances vpls_1 interface fe-0/1/1.0set routing-instances vpls_1 route-distinguisher 10.255.107.76:1set routing-instances vpls_1 vrf-target target:65056:1set routing-instances vpls_1 protocols vpls no-tunnel-servicesset routing-instances vpls_1 protocols vpls site site_3 site-identifier 3set routing-instances vpls_1 protocols vpls site site_3 multi-homingset routing-instances vpls_1 protocols vpls site site_3 site-preference backupset routing-instances vpls_1 protocols vpls site site_3 interface fe-0/1/1.0set routing-instances vpls_1 protocols vpls site site_995 site-identifier 995set routing-instances vpls_1 protocols vpls site site_995 best-siteset routing-instances vpls_1 protocols vpls mac-flush

Router PE3:

set interfaces fe-1/3/0 unit 0 description "PE3 to PE1"set interfaces fe-1/3/0 unit 0 family inet address 10.0.89.13/30set interfaces fe-1/3/0 unit 0 family isoset interfaces fe-1/3/0 unit 0 family mplsset interfaces fe-1/3/1 encapsulation ethernet-vpls set interfaces fe-1/3/1 unit 0 family vplsset interfaces lo0 unit 0 family inet address 192.168.8.1/32set interfaces lo0 unit 0 family iso address 47.0005.8083.0000.1921.6800.5002.00set routing-options router-id 192.168.8.1set protocols isis level 1 disableset protocols isis interface fe-1/3/0.0set protocols isis interface lo0.0set protocols ldp interface allset protocols ldp interface fxp0.0 disableset protocols ldp interface lo0.0set protocols mpls interface allset routing-instances vpls_1 instance-type vplsset routing-instances vpls_1 interface fe-1/3/1.0set routing-instances vpls_1 route-distinguisher 10.255.107.72:1set routing-instances vpls_1 vrf-target target:65056:1set routing-instances vpls_1 protocols vpls no-tunnel-servicesset routing-instances vpls_1 protocols vpls site site_2 site-identifier 2set routing-instances vpls_1 protocols vpls site site_2 interface fe-0/1/0.100set routing-instances vpls_1 protocols vpls site site_993 site-identifier 993set routing-instances vpls_1 protocols vpls site site_993 best-siteset routing-instances vpls_1 protocols vpls mac-flush

Router PE1

Step-by-Step Procedure

To configure Router PE1:

  1. Configure the interfaces, interface encapsulation, and the protocol families.
    [edit interfaces]user@PE1# set interfaces fe-0/1/0 encapsulation ethernet-vpls user@PE1# set interfaces fe-0/1/0 unit 0 family vpls user@PE1# set interfaces fe-0/1/2 unit 0 family inet address 10.0.59.14/32 user@PE1# set interfaces fe-0/1/2 unit 0 family iso user@PE1# set interfaces fe-0/1/2 unit 0 family mpls user@PE1# set interfaces fe-0/1/3 unit 0 family inet address 10.0.89.14/30 user@PE1# set interfaces fe-0/1/3 unit 0 family iso set interfaces fe-0/1/3 unit 0 family mplsuser@PE1# set lo0 unit 0 family inet address 192.168.9.1/32user@PE1# set lo0 unit 0 family iso address 47.0005.8083.0000.1921.6800.5003.00
  2. Configure the protocol-independent properties.
    [edit routing-options]user@PE1# set router-id 192.168.9.1
  3. Configure MPLS on the router’s interfaces.
    [edit protocols mpls]user@PE1# set interface all
  4. Configure BGP.
    [edit protocols bgp]user@PE1# set group int type internaluser@PE1# set group int local-address 8.0.0.104user@PE1# set group int family l2vpn signaling
  5. Configure IS-IS as the IGP between the PE routers.
    [edit protocols isis]user@PE1# set level 1 disableuser@PE1# set interface fe-0/1/3.0user@PE1# set interface lo0.0
  6. Configure LDP as the signaling protocol for MPLS.
    [edit protocols ldp]user@PE1# set interface alluser@PE1# set interface fxp0.0 disableuser@PE1# set interface lo0.0
  7. Configure the VPLS routing instance.

    Include the mac-flush statement to ensure that stale routes are removed from Router PE1 promptly.

    [edit routing-instances vpls_1]user@PE1# set instance-type vplsuser@PE1# set interface fe-0/1/0.0user@PE1# set route-distinguisher 10.255.107.74:1user@PE1# set vrf-target target:65056:1user@PE1# set protocols vpls no-tunnel-servicesuser@PE1# set protocols vpls site site_3 site-identifier 3user@PE1# set protocols vpls site site_3 multi-hominguser@PE1# set protocols vpls site site_3 site-preference primaryuser@PE1# set protocols vpls site site_3 interface fe-0/1/0.0user@PE1# set protocols vpls site site_994 site-identifier 994user@PE1# set protocols vpls mac-flush

Results

From configuration mode, confirm your configuration by entering the show interfaces, show protocols, show routing-instances, and show routing-options commands. If the output does not display the intended configuration, repeat the instructions in this example to correct the configuration.

user@PE1# show interfacesfe-0/1/0 {encapsulation ethernet-vpls;unit 0 {family vpls;}}fe-0/1/2 {unit 0 {family inet {address 10.0.59.14/32;}family iso;family mpls;}}fe-0/1/3 {unit 0 {family inet {address 10.0.89.14/30;}family iso;family mpls;}}lo0 {unit 0 {family inet {address 192.168.9.1/32;}family iso {address 47.0005.8083.0000.1921.6800.5003.00;}}}
user@PE1# show protocolsmpls {interface all;}bgp {group int {type internal;local-address 8.0.0.104;family l2vpn {signaling;}}}isis {level 1 disable;interface fe-0/1/2.0;interface fe-0/1/3.0;interface lo0.0;}ldp {interface all;interface fxp0.0 {disable;}interface lo0.0;}
user@PE1# show routing-instancesvpls_1 {instance-type vpls;interface fe-0/1/0.0;route-distinguisher 10.255.107.74:1;vrf-target target:65056:1;protocols {vpls {no-tunnel-services;site site_3 {site-identifier 3;multi-homing;site-preference primary;interface fe-0/1/0.0;}site site_994 {site-identifier 994;}mac-flush;}}}
user@PE1# show routing-optionsrouter-id 192.168.9.1;

Router PE2

Step-by-Step Procedure

To configure Router PE2:

  1. Configure the interfaces, interface encapsulation, and the protocol families.
    [edit interfaces]user@PE2# set fe-0/1/1 encapsulation ethernet-vplsuser@PE2# set fe-0/1/1 unit 0 family vplsuser@PE2# set fe-0/1/2 unit 0 family inet address 10.0.59.13/32user@PE2# set fe-0/1/2 unit 0 family isouser@PE2# set fe-0/1/2 unit 0 family mplsuser@PE2# set lo0 unit 0 family inet address 192.168.5.1/32user@PE2# set lo0 unit 0 family iso address 47.0005.8083.0000.1921.6800.5005.00
  2. Configure the protocol-independent properties.
    [edit routing-options]user@PE2# set router-id 192.168.5.1
  3. Configure MPLS on the Router PE2 interfaces.
    [edit protocols]user@PE2# set mpls interface all
  4. Configure the LDP as the signaling protocol for MPLS on the PE router facing interface.
    [edit protocols ldp]user@PE2# set interface alluser@PE2# set interface fxp0.0 disableuser@PE2# set interface lo0.0
  5. Configure IS-IS as the IGP between the PE routers.
    [edit protocols isis]user@PE2# set level 1 disableuser@PE2# set interface fe-0/1/2.0user@PE2# set interface lo0.0
  6. Configure the VPLS routing instance vpls_1.

    Include the best-site statement to ensure that Router PE2 acts as the preferred path for the CE router. Include the mac-flush statement to ensure that stale routes are removed from Router PE2 promptly.

    [edit routing-instances vpls_1]user@PE2# set instance-type vplsuser@PE2# set interface fe-0/1/1.0user@PE2# set route-distinguisher 10.255.107.76:1user@PE2# set vrf-target target:65056:1user@PE2# set protocols vpls no-tunnel-servicesuser@PE2# set protocols vpls site site_3 site-identifier 3user@PE2# set protocols vpls site site_3 multi-hominguser@PE2# set protocols vpls site site_3 site-preference backupuser@PE2# set protocols vpls site site_3 interface fe-0/1/1.0user@PE2# set protocols vpls site site_995 site-identifier 995user@PE2# set protocols vpls site site_995 best-siteuser@PE2# set protocols vpls mac-flush

Results

From configuration mode, confirm your configuration by entering the show interfaces, show protocols, show routing-instances, and show routing-options commands. If the output does not display the intended configuration, repeat the instructions in this example to correct the configuration.

user@PE2# show interfacesfe-0/1/1 {encapsulation ethernet-vpls;unit 0 {family vpls;}}fe-0/1/2 {unit 0 {family inet {address 10.0.59.13/32;}family iso;family mpls;}}lo0 {unit 0 {family inet {address 192.168.5.1/32;}family iso {address 47.0005.8083.0000.1921.6800.5005.00;}}}
user@PE2# show protocolsmpls {interface all;}isis {level 1 disable;interface fe-0/1/2.0;interface lo0.0;}ldp {interface all;interface fxp0.0 {disable;}interface lo0.0;}
user@PE2# show routing-instancesvpls_1 {instance-type vpls;interface fe-0/1/1.0;route-distinguisher 10.255.107.76:1;vrf-target target:65056:1;protocols {vpls {no-tunnel-services;site site_3 {site-identifier 3;multi-homing;site-preference backup;interface fe-0/1/1.0;}site site_995 {site-identifier 995;best-site;}mac-flush;}}}
user@pe2# show routing-optionsrouter-id 192.168.5.1;

Router PE3

Step-by-Step Procedure

To configure Router PE3:

  1. Configure the interfaces, interface encapsulation, and the protocol families.
    [edit interfaces]user@PE3# set fe-1/3/0 unit 0 description "PE3 to PE1"user@PE3# set fe-1/3/0 unit 0 family inet address 10.0.89.13/30user@PE3# set fe-1/3/0 unit 0 family isouser@PE3# set fe-1/3/0 unit 0 family mplsuser@PE3# set fe-1/3/1 encapsulation ethernet-vpls user@PE3# set fe-1/3/1 unit 0 family vplsuser@PE3# set lo0 unit 0 family inet address 192.168.8.1/32user@PE3# set lo0 unit 0 family iso address 47.0005.8083.0000.1921.6800.5002.00
  2. Configure the protocol-independent properties.
    [edit routing-options]user@PE3# set router-id 192.168.8.1
  3. Configure IS-IS as the IGP between the PE routers.
    [edit protocols isis]user@PE3# set level 1 disableuser@PE3# set interface fe-0/1/3.0user@PE3# set interface lo0.0
  4. Configure LDP as the signaling protocol for MPLS.
    [edit protocols ldp]user@PE3# set interface alluser@PE3# set interface fxp0.0 disableuser@PE3# set interface lo0.0
  5. Configure the VPLS routing instance.

    Include the mac-flush statement here to ensure that stale routes are removed from Router PE1 promptly.

    [edit routing-instances vpls_1]user@PE3# set instance-type vplsuser@PE3# set interface fe-1/3/1.0user@PE3# set route-distinguisher 10.255.107.72:1user@PE3# set vrf-target target:65056:1user@PE3# set protocols vpls no-tunnel-servicesuser@PE3# set protocols vpls site site_2 site-identifier 2user@PE3# set protocols vpls site site_2 interface fe-0/1/0.100user@PE3# set protocols vpls site site_993 site-identifier 993user@PE3# set protocols vpls site site_993 best-siteuser@PE3# set protocols vpls mac-flush

Results

From configuration mode, confirm your configuration by entering the show interfaces, show protocols show routing-instances, and show routing-options commands. If the output does not display the intended configuration, repeat the instructions in this example to correct the configuration.

user@PE3# show interfacesfe-1/3/0 {unit 0 {description "PE3 to PE1";family inet {address 10.0.89.13/30;}family iso;family mpls;}}fe-1/3/1 {encapsulation ethernet-vpls;unit 0 {family vpls;}}lo0 {unit 0 {family inet {address 192.168.8.1/32;}family iso {address 47.0005.8083.0000.1921.6800.5002.00;}}}
user@PE3# show protocolsmpls {interface all;}bgp {group int {type internal;local-address 8.0.0.100;family l2vpn {signaling;}}}isis {level 1 disable;interface fe-1/3/0.0;interface lo0.0;}ldp {interface all;interface fxp0.0 {disable;}interface lo0.0;}
user@PE3# show routing-instancesvpls_1 {instance-type vpls;interface fe-0/1/0.100; ## 'fe-0/1/0.100' is not definedroute-distinguisher 10.255.107.72:1;vrf-target target:65056:1;protocols {vpls {no-tunnel-services;site site_2 {site-identifier 2;interface fe-1/3/1.0;}site site_993 {site-identifier 993;best-site;}mac-flush;}}}
user@pe3# show routing-options router-id 192.168.8.1;

Published: 2012-06-27

Supported Platforms

Published: 2012-06-27