5.6. Configuring a VPLS Service with CLI

This section provides information to configure VPLS services using the command line interface.

5.6.1. Basic Configuration

The following fields require specific input (there are no defaults) to configure a basic VPLS service:

  1. Customer ID (refer to Configuring Customer Accounts)
  2. For a local service, configure two SAPs, specifying local access ports and encapsulation values.
  3. For a distributed service, configure a SAP and an SDP (only for 7210 SAS devices that support MPLS uplinks) for each far-end node.

The svc-sap-type option must be specified at service creation. The default option is any. The following is a sample configuration output of a local VPLS service with a null-star SAP type on ALA-1. This service comprises of a null access SAP and an Uplink LAG SAP.

*A:ALA-1>config>service# info
----------------------------------------------
...
       vpls 7 customer 7 create
            stp
                shutdown
            exit
            sap 1/1/21 create
            exit
            sap lag-1:700 create
            exit
            no shutdown
        exit
...
----------------------------------------------
*A:ALA-1>config>service# 

The following is a sample configuration output of a distributed VPLS service between ALA-1, ALA-2, and ALA-3.

vpls 100 customer 1 svc-sap-type any create
            shutdown
            bgp
            exit
            stp
                shutdown
            exit
        exit
        epipe 101 customer 1 svc-sap-type any create
            shutdown
        exit
----------------------------------------------
*A:ALA-1>config>service#
*A:ALA-2>config>service# info
----------------------------------------------
...
     vpls 9000 customer 6 create
     description "This is a distributed VPLS."
     stp
     shutdown
     exit
     sap 1/1/5:16 create
     description "VPLS SAP"
     exit
     spoke-sdp 2:22 create
     exit
     no shutdown
     exit
...
----------------------------------------------
*A:ALA-2>config>service#

5.6.2. Common Configuration Tasks

This section provides a brief overview of the tasks that must be performed to configure local VPLS services and provides the CLI commands.

For VPLS services:

  1. Associate VPLS service with a customer ID
  2. Define SAPs:
    1. Select nodes and ports
    2. Optional — Select QoS policies other than the default (configured in config>qos context)
    3. Optional — Select filter policies (configured in config>filter context)
    4. Optional — Select accounting policy (configured in config>log context)
  3. Modify STP default parameters (optional) (see VPLS and Spanning Tree Protocol)
  4. Enable service

5.6.3. Configuring VPLS Components

5.6.3.1. Creating a VPLS Service

Use the following syntax to create a VPLS service (for 7210 SAS-D).

CLI Syntax:
config>service# vpls service-id [customer customer-id] [create] [vpn <vpn-id>] [m-vpls] [svc-sap-type {null-star|dot1q-preserve|any }] [customer-vid <vlan-id>]

The following is a sample VPLS configuration (for 7210 SAS-D) output.

*A:ALA-1>config>service>vpls# info
----------------------------------------------
...
vpls 1000 customer 1 create
description "This is a VPLS with NULL SAP"
stp
shutdown
exit
no shutdown
exit
vpls 2000 customer 6 svc-sap-type any create
description "This is a Distributed VPLS with ANY SAP"
stp
shutdown
exit
no shutdown
exit
vpls 3000 customer 8 svc-sap-type dot1q-preserve customer-vid 300 create
description "This is a VPLS with QinQ Uplink SAP"
stp
shutdown
exit
no shutdown
exit
...
----------------------------------------------
*A:ALA-1>config>service>vpls#

Use the following syntax to create a VPLS service (for 7210 SAS-Dxp).

CLI Syntax:
config>service# vpls service-id [customer customer-id] [create] [vpn vpn-id] [m-vpls] [customer-vid vlan-id][svc-sap-type {null-star | dot1q-preserve | any}] [b-vpls | i-vpls | r-vpls]

The following is a sample VPLS configuration (for 7210 SAS-Dxp) output.

*A:ALA-1>config>service>vpls# info
----------------------------------------------
...
vpls 1000 customer 1 create
description "This is a VPLS with NULL SAP"
stp
shutdown
exit
no shutdown
exit
vpls 2000 customer 6 svc-sap-type any create
description "This is a Distributed VPLS with ANY SAP"
stp
shutdown
exit
no shutdown
exit
vpls 3000 customer 8 svc-sap-type dot1q-preserve customer-vid 300 create
description "This is a VPLS with QinQ Uplink SAP"
stp
shutdown
exit
no shutdown
exit
...
----------------------------------------------
*A:ALA-1>config>service>vpls#

Use the following syntax to create a VPLS service (for 7210 SAS-K 2F1C2T, 7210 SAS-K 2F6C4T, and 7210 SAS-K 3SFP+ 8C).

CLI Syntax:
config>service# vpls service-id [customer customer-id] [create] [vpn <vpn-id>] [m-vpls] [svc-sap-type {dot1q-range |any}] [customer-vid <vlan-id>]

The following is a sample VPLS configuration (for 7210 SAS-2F1C2T) output.

 
*A:sask_duti>config>service>vpls$ info
----------------------------------------------
            shutdown
            stp
                no shutdown
            exit
----------------------------------------------
*A:sask_duti>config>service>vpls$ info detail
----------------------------------------------
            shutdown
            no description
            service-mtu-check
            service-mtu 1514
            no def-mesh-vc-id
            no disable-learning
            no disable-aging
            no discard-unknown
            fdb-table-size 250
            fdb-table-high-wmark 95
            fdb-table-low-wmark 90
            no host-connectivity-verify
            no shcv-policy-ipv4
            no send-flush-on-failure
            local-age 300
            no mfib-table-size
            mfib-table-high-wmark 95
            mfib-table-low-wmark 90
            remote-age 900
            no propagate-mac-flush
            stp
                priority 32768
                hello-time 2
                forward-delay 15
                max-age 20
                hold-count 6
                mode rstp
                mst-max-hops 20
                no mst-name
                mst-revision 0
                no shutdown
            exit
            igmp-snooping
                shutdown
                query-interval 125
                robust-count 2
                report-src-ip 0.0.0.0
                no query-src-ip
                mvr
                    shutdown
                    no description
                    no group-policy
                exit
            exit
            mac-move
                move-frequency 2
                retry-timeout 10
                shutdown
            exit
            static-mac
            exit
            no vsd-domain
----------------------------------------------
*A:sask_duti>config>service>vpls$

5.6.3.1.1. Enabling MAC Move

The mac-move feature is useful to protect against undetected loops in your VPLS topology as well as the presence of duplicate MACs in a VPLS service. For example, if two clients in the VPLS have the same MAC address, the VPLS will experience a high relearn rate for the MAC and will shut down the SAP when the threshold is exceeded.

Use the following syntax to configure mac-move parameters.

CLI Syntax:
config>service# vpls service-id [customer customer-id] [vpn vpn-id] [m-vpls]
mac-move
move-frequency frequency
retry-timeout timeout
no shutdown

The following is sample mac-move information.

*A:ALA-1# show service id 6 all
....
*A:ALA-1#
-------------------------------------------------------------------------------
Forwarding Database specifics
-------------------------------------------------------------------------------
Service Id        : 1150                Mac Move          : Disabled           
Mac Move Rate     : 2                   Mac Move Timeout  : 10                 
Table Size        : 1000                Total Count       : 1000               
Learned Count     : 1000                Static Count      : 0                  
Remote Age        : 900                 Local Age         : 300                
High WaterMark    : 95%                 Low Watermark     : 90%                
Mac Learning      : Enabl               Discard Unknown   : Dsabl              
Mac Aging         : Enabl               Relearn Only      : True               
===============================================================================
....
*A:ALA-1#

5.6.3.1.2. Configuring STP Bridge Parameters in a VPLS

Modifying some of the Spanning Tree Protocol parameters allows the operator to balance STP between resiliency and speed of convergence extremes. Modifying parameters must be done in the constraints of the following two formula:

2 x (Bridge_Forward_Delay - 1.0 seconds) >= Bridge_Max_Age

Bridge_Max_Age >= 2 x (Bridge_Hello0_Time + 1.0 seconds)

STP always uses the locally configured values for the first three parameters (Admin State, Mode and Priority).

For the parameters Max Age, Forward Delay, Hello Time and Hold Count, the locally configured values are only used when this bridge has been elected root bridge in the STP domain, otherwise the values received from the root bridge are used. The exception to this rule is: when STP is running in RSTP mode, the Hello Time is always taken from the locally configured parameter. The other parameters are only used when running mode MSTP.

5.6.3.1.2.1. Bridge STP Admin State

The administrative state of STP at the VPLS level is controlled by the shutdown command.

When STP on the VPLS is administratively disabled, any BPDUs are forwarded transparently through the device. When STP on the VPLS is administratively enabled, but the administrative state of a SAP is down, BPDUs received on such a SAP are discarded.

CLI Syntax:
config>service>vpls service-id# stp
no shutdown

5.6.3.1.2.2. Mode

To be compatible with the different iterations of the IEEE 802.1D standard, the 7210 SAS devices support several variants of the Spanning Tree protocol:

  1. rstp — Rapid Spanning Tree Protocol (RSTP) compliant with IEEE 802.1D-2004 - default mode.
  2. dot1w — Compliant with IEEE 802.1w.
  3. comp-dot1w — Operation as in RSTP but backwards compatible with IEEE 802.1w (this mode was introduced for interoperability with some MTU types).
  4. mstp — Compliant with the Multiple Spanning Tree Protocol specified in IEEE 802.1Q REV/D5.0-09/2005. This mode of operation is only supported in an mVPLS.

See section Spanning Tree Operating Modes for details on these modes.

CLI Syntax:
config>service>vpls service-id# stp
mode {rstp | comp-dot1w | dot1w | mstp}

Default: rstp

5.6.3.1.2.3. Bridge Priority

The bridge-priority command is used to populate the priority portion of the bridge ID field within outbound BPDUs (the most significant 4 bits of the bridge ID). It is also used as part of the decision process when determining the best BPDU between messages received and sent.

All values will be truncated to multiples of 4096, conforming with IEEE 802.1t and 802.1D-2004.

CLI Syntax:
config>service>vpls service-id# stp
priority bridge-priority

Range: 1 to 65535

Default: 32768

Restore Default: no priority

5.6.3.1.2.4. Max Age

The max-age command indicates how many hops a BPDU can traverse the network starting from the root bridge. The message age field in a BPDU transmitted by the root bridge is initialized to 0. Each other bridge will take the message_age value from BPDUs received on their root port and increment this value by 1. The message_age therefore reflects the distance from the root bridge. BPDUs with a message age exceeding max-age are ignored.

STP uses the max-age value configured in the root bridge. This value is propagated to the other bridges by the BPDUs. The default value of max-age is 20. This parameter can be modified within a range of 6 to 40, limited by the standard STP parameter interaction formulas.

CLI Syntax:
config>service>vpls service-id# stp
max-age max-info-age

Range: 6 to 40 seconds

Default: 20 seconds

Restore Default: no max-age

5.6.3.1.2.5. Forward Delay

RSTP, as defined in the IEEE 802.1D-2004 standards, will transition to the forwarding state by a handshaking mechanism (rapid transition), without any waiting times. If handshaking fails (e.g. on shared links, see the following), the system falls back to the timer-based mechanism defined in the original STP (802.1D-1998) standard.

A shared link is a link with more than two Ethernet bridges (for example, a shared 10/100BaseT segment). The port-type command is used to configure a link as point-to-point or shared (see section SAP Link Type).

For timer-based transitions, the 802.1D-2004 standard defines an internal variable forward-delay, which is used in calculating the default number of seconds that a SAP spends in the discarding and learning states when transitioning to the forwarding state. The value of the forward-delay variable depends on the STP operating mode of the VPLS instance:

  1. in rstp mode, but only when the SAP has not fallen back to legacy STP operation, the value configured by the hello-time command is used;
  2. in all other situations, the value configured by the forward-delay command is used.
CLI Syntax:
config>service>vpls service-id# stp
forward-delay seconds

Range: 4 to 30 seconds

Default: 15 seconds

Restore Default: no forward-delay

5.6.3.1.2.6. Hello Time

The hello-time command configures the Spanning Tree Protocol (STP) hello time for the Virtual Private LAN Service (VPLS) STP instance.

The seconds parameter defines the default timer value that controls the sending interval between BPDU configuration messages by this bridge, on ports where this bridge assumes the designated role.

The active hello time for the spanning tree is determined by the root bridge (except when the STP is running in RSTP mode, then the hello time is always taken from the locally configured parameter).

The configured hello-time value can also be used to calculate the bridge forward delay, see Forward Delay.

CLI Syntax:
config>service>vpls service-id# stp
hello-time hello-time

Range: 1 to 10 seconds

Default: 2 seconds

Restore Default: no hello-time

5.6.3.1.2.7. Hold Count

The hold-count command configures the peak number of BPDUs that can be transmitted in a period of one second.

CLI Syntax:
config>service>vpls service-id# stp
hold-count count-value

Range: 1 to 10

Default: 6

Restore Default: no hold-count

5.6.3.1.2.8. MST Instances

You can create up to 15 MST-instances. They can range from 1 to 4094. By changing path-cost and priorities, you can make sure that each instance will form it's own tree within the region, therefore making sure different VLANs follow different paths.

You can assign non overlapping VLAN ranges to each instance. VLANs not assigned to an instance are implicitly assumed to be in instance 0, which is also called the CIST. This CIST cannot be deleted or created.

The parameter that can be defined per instance are mst-priority and vlan-range.

  1. mst-priority — The bridge-priority for this specific mst-instance. It follows the same rules as bridge-priority. For the CIST, the bridge-priority is used.
  2. vlan-range — The VLANs are mapped to this specific mst-instance. If no VLAN-ranges are defined in any mst-instances, then all VLANs are mapped to the CIST.

5.6.3.1.2.9. MST Max Hops

The mst-max-hops command defines the maximum number of hops the BPDU can traverse inside the region. Outside the region max-age is used.

5.6.3.1.2.10. MST Name

The MST name defines the name that the operator gives to a region. Together with MST revision and the VLAN to MST-instance mapping, it forms the MST configuration identifier. Two bridges that have the same MST configuration identifier form a region if they exchange BPDUs.

5.6.3.1.2.11. MST Revision

The MST revision together with MST-name and VLAN to MST-instance mapping define the MST configuration identifier. Two bridges that have the same MST configuration identifier form a region if they exchange BPDUs.

5.6.3.2. Configuring a VPLS SAP

A default QoS policy is applied to each ingress SAP. Additional QoS policies can be configured in the config>qos context. There are no default filter policies. Filter policies are configured in the config>filter context and must be explicitly applied to a SAP.

5.6.3.2.1. Local VPLS SAPs

To configure a local VPLS service, enter the sap sap-id command twice with different port IDs in the same service configuration.

*A:ALA-1>config>service# info
----------------------------------------------
        vpls 1000 customer 1 create
            description "This is a Local VPLS with NULL SAP"
            stp
                shutdown
            exit
            sap 1/1/1 create
            exit
            sap 1/1/2 create
            exit                      
            sap 1/1/3:500.* create
            exit
            no shutdown
        exit
        vpls 2000 customer 6 create
            description "This is a Local VPLS with DOT1Q SAP"
            stp
                shutdown
            exit
            sap 1/1/4:100 create
            exit
            sap 1/1/5:200 create
            exit
            sap 1/1/3:900.* create
            exit
            no shutdown
        exit
        vpls 3000 customer 8 create
            description "This is a Local VPLS"
            stp
                shutdown
            exit
            sap 1/1/4:300 create
            exit
            sap 1/1/5:300 create
            exit
            sap 1/1/3:1200 create 
            exit
            no shutdown
        exit
----------------------------------------------
*A:ALA-1>config>service# 

5.6.3.2.2. Distributed VPLS service with SAPs (on 7210 SAS-K 2F6C4T and 7210 SAS-K 3SFP+ 8C)

To configure a distributed VPLS service, you must configure service entities on originating and far-end nodes. You must use the same service ID on all ends (for example, create a VPLS service ID 9000 on ALA-1, ALA-2, and ALA-3). A distributed VPLS consists of a SAP on each participating node and an SDP bound to each participating node.

The following is a sample configuration output of VPLS SAPs configured for ALA-1, ALA-2, and ALA-3.

*A:ALA-3>config>service# info
----------------------------------------------
vpls 100 customer 1 svc-sap-type any create
            shutdown
            no description
            service-mtu-check
            service-mtu 1514
            no def-mesh-vc-id
            no disable-learning
            no disable-aging
            no discard-unknown
            fdb-table-size 250
            fdb-table-high-wmark 95
            fdb-table-low-wmark 90
            no host-connectivity-verify
            no shcv-policy-ipv4
            no send-flush-on-failure
            local-age 300
            no mfib-table-size
            mfib-table-high-wmark 95
            mfib-table-low-wmark 90
            remote-age 900
            no propagate-mac-flush
            bgp
                no route-distinguisher
                no vsi-export
                no vsi-import
                no route-target
            exit
 
----------------------------------------------
*A:ALA-3>config>service#

5.6.3.2.3. Configuring Default QinQ SAPs to Pass all Traffic from Access to Access-uplink Port without any Tag Modifications

The following is a sample VPLS SAP configuration output of Default QinQ SAPs.

ALA-1>config>service# vpls 9 customer 1 svc-sap-type null-star create
            shutdown
            stp                       
                shutdown
            exit
            sap 1/1/5:*.* create
                statistics
                    ingress
                        received-count
                    exit
                exit
            exit
            sap 1/1/6:*.* create
                statistics
                    ingress
                        received-count
                    exit
                exit
            exit
        exit

5.6.3.2.4. Configuring SAP-Specific STP Parameters

When a VPLS has STP enabled, each SAP within the VPLS has STP enabled by default. The operation of STP on each SAP is governed by the following.

5.6.3.2.4.1. SAP STP Administrative State

The administrative state of STP within a SAP controls how BPDUs are transmitted and handled when received. The allowable states are:

  1. SAP Admin Up
    The default administrative state is up for STP on a SAP. BPDUs are handled in the normal STP manner on a SAP that is administratively up.
  2. SAP Admin Down
    An administratively down state allows a service provider to prevent a SAP from becoming operationally blocked. BPDUs will not originate out the SAP toward the customer.
    If STP is enabled on VPLS level, but disabled on the SAP, received BPDUs are discarded. Discarding the incoming BPDUs allows STP to continue to operate within the VPLS service while ignoring the down SAP. The specified SAP will always be in an operationally forwarding state.
    NOTE: The administratively down state allows a loop to form within the VPLS.
CLI Syntax:
config>service>vpls>sap>stp#
[no] shutdown

Range: shutdown or no shutdown

Default: no shutdown (SAP admin up)

5.6.3.2.4.2. SAP Virtual Port Number

The virtual port number uniquely identifies a SAP within configuration BPDUs. The internal representation of a SAP is unique to a system and has a reference space much bigger than the 12 bits definable in a configuration BPDU. STP takes the internal representation value of a SAP and identifies it with it’s own virtual port number that is unique to every other SAP defined on the VPLS. The virtual port number is assigned at the time that the SAP is added to the VPLS.

Since the order in which SAPs are added to the VPLS is not preserved between reboots of the system, the virtual port number may change between restarts of the STP instance. To achieve consistency after a reboot, the virtual port number can be specified explicitly.

CLI Syntax:
config>service>vpls>sap# stp
port-num number

Range: 1 — 2047

Default: automatically generated)

Restore Default: no port-num

5.6.3.2.4.3. SAP Priority

SAP priority allows a configurable “tie breaking” parameter to be associated with a SAP. When configuration BPDUs are being received, the configured SAP priority will be used in some circumstances to determine whether a SAP will be designated or blocked.

In traditional STP implementations (802.1D-1998), this field is called the port priority and has a value of 0 to 255. This field is coupled with the port number (0 to 255 also) to create a 16 bit value. In the latest STP standard (802.1D-2004) only the upper 4 bits of the port priority field are used to encode the SAP priority. The remaining 4 bits are used to extend the port ID field into a 12 bit virtual port number field. The virtual port number uniquely references a SAP within the STP instance. See SAP Virtual Port Number for details on the virtual port number.

STP computes the actual SAP priority by taking the configured priority value and masking out the lower four bits. The result is the value that is stored in the SAP priority parameter. For example, if a value of 0 was entered, masking out the lower 4 bits would result in a parameter value of 0. If a value of 255 was entered, the result would be 240.

The default value for SAP priority is 128. This parameter can be modified within a range of 0 to 255, 0 being the highest priority. Masking causes the values actually stored and displayed to be 0 to 240, in increments of 16.

CLI Syntax:
config>service>vpls>sap>stp#
priority stp-priority

Range: 0 to 255 (240 largest value, in increments of 16)

Default: 128

Restore Default: no priority

5.6.3.2.4.4. SAP Path Cost

The SAP path cost is used by STP to calculate the path cost to the root bridge. The path cost in BPDUs received on the root port is incremental with the configured path cost for that SAP. When BPDUs are sent out other egress SAPs, the newly calculated root path cost is used.

STP suggests that the path cost is defined as a function of the link bandwidth. Since SAPs are controlled by complex queuing dynamics, the STP path cost is a static configuration on the 7210 SAS.

The default value for SAP path cost is 10. This parameter can be modified within a range of 1 to 65535, 1 being the lowest cost.

CLI Syntax:
config>service>vpls>sap>stp#
path-cost sap-path-cost

Range: 1 to 200000000

Default: 10

Restore Default: no path-cost

5.6.3.2.4.5. SAP Edge Port

The SAP edge-port command is used to reduce the time it takes a SAP to reach the forwarding state when the SAP is on the edge of the network, and therefore has no further STP bridge to handshake with.

The edge-port command is used to initialize the internal OPER_EDGE variable. At any time, when OPER_EDGE is false on a SAP, the normal mechanisms are used to transition to the forwarding state (see Forward Delay). When OPER_EDGE is true, STP assumes that the remote end agrees to transition to the forwarding state without actually receiving a BPDU with an agreement flag set.

The OPER_EDGE variable will dynamically be set to false if the SAP receives BPDUs (the configured edge-port value does not change). The OPER_EDGE variable will dynamically be set to true if auto-edge is enabled and STP concludes there is no bridge behind the SAP.

When STP on the SAP is administratively disabled and re-enabled, the OPER_EDGE is reinitialized to the value configured for edge-port.

Valid values for SAP edge-port are enabled and disabled with disabled being the default.

CLI Syntax:
config>service>vpls>sap>stp#
[no] edge-port

Default: no edge-port

5.6.3.2.4.6. SAP Auto Edge

The SAP edge-port command is used to instruct STP to dynamically decide whether the SAP is connected to another bridge.

If auto-edge is enabled, and STP concludes there is no bridge behind the SAP, the OPER_EDGE variable will dynamically be set to true. If auto-edge is enabled, and a BPDU is received, the OPER_EDGE variable will dynamically be set to true (see SAP Edge Port).

Valid values for SAP auto-edge are enabled and disabled with enabled being the default.

CLI Syntax:
config>service>vpls>sap>stp#
[no] auto-edge

Default: auto-edge

5.6.3.2.4.7. SAP Link Type

The SAP link-type parameter instructs STP on the maximum number of bridges behind this SAP. If there is only a single bridge, transitioning to forwarding state will be based on handshaking (fast transitions). If more than two bridges are connected by a shared media, their SAPs should all be configured as shared, and timer-based transitions are used.

Valid values for SAP link-type are shared and pt-pt with pt-pt being the default.

CLI Syntax:
config>service>vpls>sap>stp#
link-type {pt-pt|shared}

Default: link-type pt-pt

Restore Default: no link-type

5.6.3.2.4.8. MST Instances

The SAP mst-instance command is used to create MST instances at the SAP level. MST instance at a SAP level can be created only if MST instances are defined at the service level.

The parameters that can be defined per instance are mst-path-cost and mst-port-priority.

  1. mst-path-cost — Specifies path-cost within a specific MST instance. The path-cost is proportional to link speed.
  2. mst-port-priority — Specifies the port priority within a specific MST instance.

5.6.3.2.5. STP SAP Operational States

The operational state of STP within a SAP controls how BPDUs are transmitted and handled when received.

5.6.3.2.5.1. Operationally Disabled

Operationally disabled is the normal operational state for STP on a SAP in a VPLS that has any of the following conditions:

  1. VPLS state administratively down
  2. SAP state administratively down
  3. SAP state operationally down

If the SAP enters the operationally up state with the STP administratively up and the SAP STP state is up, the SAP will transition to the STP SAP discarding state.

When, during normal operation, the router detects a downstream loop behind a SAP, BPDUs can be received at a very high rate. To recover from this situation, STP will transition the SAP to disabled state for the configured forward-delay duration.

5.6.3.2.5.2. Operationally Discarding

A SAP in the discarding state only receives and sends BPDUs, building the local correct STP state for each SAP while not forwarding actual user traffic. The duration of the discarding state is described in section Forward Delay.

Note: in previous versions of the STP standard, the discarding state was called a blocked state.

5.6.3.2.5.3. Operationally Learning

The learning state allows population of the MAC forwarding table before entering the forwarding state. In this state, no user traffic is forwarded.

5.6.3.2.5.4. Operationally Forwarding

Configuration BPDUs are sent out a SAP in the forwarding state. Layer 2 frames received on the SAP are source learned and destination forwarded according to the FIB. Layer 2 frames received on other forwarding interfaces and destined for the SAP are also forwarded.

5.6.3.2.5.5. SAP BPDU Encapsulation State

STP is associated with a VPLS service like PVST is associated per VLAN. The main difference resides in the Ethernet and LLC framing and a type-length-value (TLV) field trailing the BPDU.

IEEE 802.1d (referred as dot1d) and Cisco per VLAN Spanning Tree (PVST) BPDU encapsulations are supported on a per SAP basis. The STP is associated with a VPLS service like PVST is per VLAN. The difference between the two encapsulations is in the Ethernet and LLC framing and a type-length-value (TLV) field trailing the BPDU.The encapsulation format cannot be configured by the user, the system automatically determines the encapsulation format based on the BPDUs received on the port.

Table 47 shows differences between Dot1d and PVST Ethernet BPDU encapsulations based on the interface encap-type field.

Table 47:  SAP BPDU Encapsulation States  

Field

dot1d

encap-type null

dot1d

encap-type dot1q

PVST

encap-type null

PVST

encap-type dot1q

Destination MAC

01:80:c2:00:00:00

01:80:c2:00:00:00

N/A

01:00:0c:cc:cc:cd

Source MAC

Sending Port MAC

Sending Port MAC

N/A

Sending Port MAC

EtherType

N/A

0x81 00

N/A

0x81 00

Dot1p and CFI

N/A

0xe

N/A

0xe

Dot1q

N/A

VPLS SAP ID

N/A

VPLS SAP encap value

Length

LLC Length

LLC Length

N/A

LLC Length

LLC DSAP SSAP

0x4242

0x4242

N/A

0xaaaa (SNAP)

LLC CNTL

0x03

0x03

N/A

0x03

SNAP OUI

N/A

N/A

N/A

00 00 0c (Cisco OUI)

SNAP PID

N/A

N/A

N/A

01 0b

CONFIG

Standard 802.1d

Standard 802.1d

N/A

Standard 802.1d

TLV: Type & Len

N/A

N/A

N/A

58 00 00 00 02

TLV: VLAN

N/A

N/A

N/A

VPLS SAP encap value

Padding

As Required

As Required

N/A

As Required

Each SAP has a Read-Only operational state that shows which BPDU encapsulation is currently active on the SAP. The states are:

  1. Dot1d — This state specifies that the switch is currently sending IEEE 802.1d standard BPDUs. The BPDUs are tagged or non-tagged based on the encapsulation type of the egress interface and the encapsulation value defined in the SAP. A SAP defined on an interface with encapsulation type Dot1q continues in the dot1d BPDU encapsulation state until a PVST encapsulated BPDU is received. When a PVST-encapsulated BPDU is received, the SAP converts to the PVST encapsulation state. Each received BPDU must be correctly IEEE 802.1q tagged, if the interface encapsulation type is defined as dot1q. PVST BPDUs are silently discarded, if received, when the SAP is on an interface defined with encapsulation type null.
  2. PVST — This state specifies that the switch is currently sending proprietary encapsulated BPDUs. PVST BPDUs are only supported on Ethernet interfaces with the encapsulation type set to dot1q. The SAP continues in the PVST BPDU encapsulation state until a dot1d encapsulated BPDU is received.When a dot1d-encapsulated BPDU is received, the SAP reverts to the dot1d encapsulation state. Each received BPDU must be correctly IEEE 802.1q tagged with the encapsulation value defined for the SAP. PVST BPDUs are silently discarded, if received, when the SAP is on an interface defined with a null encapsulation type.

Dot1d is the initial and only SAP BPDU encapsulation state for SAPs defined on Ethernet interface with encapsulation type set to null.

5.6.3.2.6. Configuring VPLS SAPs with Per-Service Split Horizon

Note:

Split Horizon group per service is only supported on the 7210 SAS-K 2F1C2T, 7210 SAS-K 2F6C4T, and 7210 SAS-K 3SFP+ 8C.

To configure a VPLS service with a split horizon group, add the split-horizon-group parameter when creating the SAP. Traffic arriving on a SAP within a split horizon group will not be copied to other SAPs in the same split horizon group.

The following is a sample VPLS configuration output with split horizon enabled.

*A:ALA-1>config>service# info
----------------------------------------------
...
vpls 800 customer 6001 vpn 700 create
description "VPLS with split horizon for DSL"
stp
shutdown
exit
sap 1/1/3:100 split-horizon-group DSL-group1 create
description "SAP for residential bridging"
exit
sap 1/1/3:200 split-horizon-group DSL-group1 create
description "SAP for residential bridging"
exit
split-horizon-group DSL-group1
description "Split horizon group for DSL"
exit
no shutdown
exit
...
----------------------------------------------
*A:ALA-1>config>service#

5.6.3.2.6.1. Configuring SDP Bindings

Note:

SDPs are only supported on the 7210 SAS-K 2F6C4T and 7210 SAS-K 3SFP+ 8C.

VPLS provides scaling and operational advantages. A hierarchical configuration eliminates the need for a full mesh of VCs between participating devices. Hierarchy is achieved by enhancing the base VPLS core mesh of VCs with access VCs (spoke) to form two tiers. Spoke-SDPs are generally created between Layer 2 switches and placed at the Multi-Tenant Unit (MTU). The PE routers are placed at the service provider's Point of Presence (POP). Signaling and replication overhead on all devices is considerably reduced.

A spoke-SDP is treated like the equivalent of a traditional bridge port where flooded traffic received on the spoke-SDP is replicated on all other "ports" (other spoke-SDPs or SAPs) and not transmitted on the port it was received (unless a split horizon group was defined on the spoke-SDP, see section Configuring VPLS Spoke-SDPs with Split Horizon).

A spoke-SDP connects a VPLS service between two sites and, in its simplest form, could be a single tunnel LSP. A set of ingress and egress VC labels are exchanged for each VPLS service instance to be transported over this LSP. The PE routers at each end treat this as a virtual spoke connection for the VPLS service in the same way as the PE-MTU connections. This architecture minimizes the signaling overhead and avoids a full mesh of VCs and LSPs between the two metro networks.

A VC-ID can be specified with the SDP-ID. The VC-ID is used instead of a label to identify a virtual circuit. The VC-ID is significant between peer SRs on the same hierarchical level. The value of a VC-ID is conceptually independent from the value of the label or any other data-link specific information of the VC.

5.6.3.2.6.2. Configuring VPLS Spoke-SDPs with Split Horizon

Note:

Split Horizon group with spoke-SDPs is only supported on the 7210 SAS-K 2F6C4T and 7210 SAS-K 3SFP+ 8C.

To configure spoke-SDPs with a split horizon group, add the split-horizon-group parameter when creating the spoke-SDP. Traffic arriving on a SAP or spoke-SDP within a split horizon group will not be copied to other SAPs or spoke-SDPs in the same split horizon group.

The following is a sample VPLS configuration output with split horizon enabled.

*A:ALA-1>config>service# info
----------------------------------------------
...
vpls 800 customer 6001 vpn 700 create
description "VPLS with split horizon for DSL"
stp
shutdown
exit
spoke-sdp 51:15 split-horizon-group DSL-group1 create
exit
split-horizon-group DSL-group1
description "Split horizon group for DSL"
exit
no shutdown
exit
...
----------------------------------------------
*A:ALA-1>config>service#

5.6.4. Configuring VPLS Redundancy

This section describes the service management tasks.

5.6.4.1. Creating a Management VPLS for SAP Protection

This section provides a brief overview of the tasks that must be performed to configure a management VPLS for SAP protection and provides the CLI commands, see Figure 70. The following tasks should be performed on both nodes providing the protected VPLS service.

  1. Create an access uplink SAPs to the peer node.
  2. Create a management VPLS.
  3. Define a SAP in the m-vpls on the port toward the 7210 SAS. Note that the port must be dot1q. The SAP corresponds to the (stacked) VLAN on the 7210 SAS in which STP is active.
  4. Optionally modify STP parameters for load balancing.
  5. Create access uplink SAPs in the m-vpls using the access uplink SAPs defined in Step 1.
  6. Enable the management VPLS service and verify that it is operationally up.
  7. Create a list of VLANs on the port managed by this management VPLS.
  8. Create one or more user VPLS services with SAPs on VLANs in the range defined by Step 6.
    Figure 70:  Example Configuration for Protected VPLS SAP 
CLI Syntax:
config>service# vpls service-id [customer customer-id] [create] [m-vpls]
description description-string
sap sap-id create
managed-vlan-list
range vlan-range
stp
no shutdown

The following is a sample VPLS configuration output.

*A:ALA-1>config>service# info
----------------------------------------------
        vpls 2000 customer 6 m-vpls create
            stp
                no shutdown
            exit
            sap 1/1/1:100 create
            exit
            sap 1/1/2:200 create
            exit
            sap 1/1/3:300 create
               managed-vlan-list
                  range 1-50
            exit
            no shutdown
        exit           
----------------------------------------------
*A:ALA-1>config>service# 

5.6.4.2. Configuring Load Balancing with Management VPLS

With the concept of management VPLS, it is possible to load balance the user VPLS services across the two protecting nodes. This is done by creating two management VPLS instances, where both instances have different active QinQ SAPs (by changing the STP path-cost). When different user VPLS services are associated with either the two management VPLS services, the traffic will be split across the two QinQ SAPs. Load balancing can be achieved in SAP protection scenarios.

Figure 71 is an example configuration for load balancing across management VPLS.

Figure 71:  Example Configuration for Load Balancing Across with Management VPLS 

Note: the STP path costs in each peer node should be reversed.

CLI Syntax:
(for 7210 SAS-D)config>service# vpls service-id [customer customer-id] [create][m-vpls] [svc-sap-type {null-star | any | dot1q-preserve}] [customer-vid vlan-id]
description description-string
sap sap-id create
managed-vlan-list
range vlan-range
stp
no shutdown

The following is a sample VPLS configuration output.

*A:ALA-1>config>service# info
----------------------------------------------
        vpls 100 customer 1 m-vpls svc-sap-type any create
            stp
                no shutdown
            exit
            sap 1/1/2:100.* create
                managed-vlan-list
                    range 1-10
                exit
                stp
                    path-cost 1
                exit
            exit
            sap 1/1/3:500.* create
                shutdown
                managed-vlan-list
                    range 1-10
                exit                  
            exit
            no shutdown
        exit
        vpls 200 customer 6 m-vpls svc-sap-type any create
            stp
                no shutdown
            exit
            sap 1/1/2:1000.* create
                managed-vlan-list
                    range 110-200
                exit
            exit
            sap 1/1/3:2000.* create
                managed-vlan-list
                    range 110-200
                exit
                stp
                    path-cost 1
                exit
            exit
            no shutdown
        exit
        vpls 101 customer 1 svc-sap-type any create
            stp
                shutdown
            exit
            sap 1/1/1:100 create
            exit
            sap 1/1/2:1.* create
            exit
            sap 1/1/3:1.* create
            exit
            no shutdown
        exit
        vpls 201 customer 1 svc-sap-type any create
            stp
                shutdown
            exit
            sap 1/1/1:200 create
            exit
            sap 1/1/2:110.* create
            exit
            sap 1/1/3:110.* create
            exit
            no shutdown
        exit                          
----------------------------------------------

5.6.4.3. Configuring a BGP-Auto-Discovery on 7210 SAS-K 2F6C4T and 7210 SAS-K 3SFP+ 8C

This section provides important information to describe the different configuration options used to populate the required BGP AD and generate the LDP generalized pseudowire-ID FEC fields. There are a large number of configuration options that are available with the this feature. Not all these configurations option are required to start using BGP AD. At the end of this section, it will be apparent that a very simple configuration will automatically generate the required values used by BGP and LDP. In most cases, deployments will provide full mesh connectivity between all nodes across a VPLS instance. However, capabilities are available to influence the topology and build hierarchies or hub and spoke models.

BGP AD automatically creates SDP-bindings using a template to configure SDP-binding configuration parameters. L2-auto-bind is a command used to initiate a template that is used by BGP AD for PW instantiation under related VPLS instances.

The template may be referenced in the “service vpls bgp-ad” object and used subsequently to instantiate PWs to a remote PE and VSI instance advertised through BGP Auto-Discovery. Changes to these dynamically created objects cannot be performed directly through CLI or SNMP. There are two possible methods to initiate the change:

  1. Configure a new “l2-auto-bind” association under service>vpls>bgp-ad. This method is used when the existing policy is used by multiple VPLS services and only one or a few require the change.
  2. Change the parameters of the current template. This method is used when a change in parameter is required for the majority of VPLS services that use the template.

Changes are not automatically propagated to the instantiated objects and must be done through one of two tool commands:

CLI Syntax:
tools>perform>service# eval-pw-template policy-id [allow-service-impact]
CLI Syntax:
tools>perform>service>id# eval-pw-template policy-id [allow-service-impact]

This command forces evaluation of changes that were made in the l2-auto-bind template indicated in the command. This command can be applied to an individual VPLS service or all VPLS services that reference the template if no service is specified.

The parameters are divided into three classes.

Class 1: Modified at create time only.

Class 2: Modified only when the object is administratively shutdown.

Class 3: No restrictions.

Parameters that fall into class 1 will destroy existing objects and recreate objects with the new values. Parameters in class 2 will momentarily shutdown the object, change the parameter, then re-enable the object. Class 3 can be changed without affecting the operational status of the objects of service.

For the l2-auto-bind template, the parameters are treated as follows:

Class 1: Adding or removing a split-horizon-group, switching between a manual and auto SDP

Class 2: Changing the vc-type {ether|vlan}

Class 3: All other changes.

The keyword allow-service-impact enables service impacting changes. If this keyword is not configured, an error message is generated if the parameter changes are service impacting.

5.6.4.4. Configuration Steps

Using Figure 72, assume PE6 was previously configured with VPLS 100 as indicated by the configurations lines in the upper right. The BGP AD process will commence after PE134 is configured with the VPLS 100 instance as shown in the upper left. This shows a very basic and simple BGP AD configuration. The minimum requirement for enabling BGP AD on a VPLS instance is configuring the VPLS-ID and point to a pseudowire template.

Figure 72:  BGP AD Configuration Example 

In many cases, VPLS connectivity is based on a pseudowire mesh. To reduce the configuration requirement, the BGP values can be automatically generated using the VPLS-ID and the MPLS router-ID. By default, the lower six bytes of the VPLS-ID are used to generate the RD and the RT values. The VSI-ID value is generated from the MPLS router-ID. All of these parameters are configurable and can be coded to suit requirements and build different topologies.

The following CLI example shows the BGP AD CLI command tree.

CLI Syntax:
config>service>vpls>bgp-ad
[no] pw-template-bind
[no] route-target
[no] shutdown
vpls-id
[no] vsi-export
vsi-id
[no] vsi-import

A helpful command displays the service information, the BGP parameters and the SDP bindings in use. When the discovery process is completed successfully each endpoint will have an entry for the service.

*A:H-SASK# show service l2-route-table 
 
========================================================================
Services: L2 Route Information - Summary
========================================================================
Svc Id     L2-Routes (RD-Prefix)                 Next Hop        Origin
               Sdp Bind Id                           PW Temp Id  
------------------------------------------------------------------------
------------------------------------------------------------------------
No. of L2 Route Entries: 0
========================================================================
 
===============================================================================
Services: L2 Multi-Homing Route Information - Summary
===============================================================================
Svc Id     L2-Routes (RD-Prefix)        Next Hop        SiteId     State  DF
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
No. of L2 Multi-Homing Route Entries: 0
===============================================================================
 
========================================================
Services: L2 Bgp-Vpls Route Information - Summary
========================================================
Svc Id     L2-Routes (RD)        Next Hop        Ve-Id
               Sdp Bind Id           PW Temp Id  
--------------------------------------------------------
--------------------------------------------------------
No. of L2 Bgp-Vpls Route Entries: 0
========================================================
 
========================================================
Services: L2 Bgp-Vpws Route Information - Summary
========================================================
Svc Id     L2-Routes (RD)        Next Hop        Ve-Id
               Sdp Bind Id           PW Temp Id  
--------------------------------- 
 
 

When only one of the endpoints has an entry for the service in the l2-routing-table, it is most likely a problem with the RT values used for import and export. This would most likely happen when different import and export RT values are configured using a router policy or the route-target command.

Service specific commands continue to be available to display service specific information, including status.

*A:H-SASK# show service sdp-using 
 
===============================================================================
SDP Using
===============================================================================
SvcId      SdpId              Type   Far End              Opr   I.Label E.Label
                                      :GlobalId           State         
-------------------------------------------------------------------------------
1          1:1                Spok   4.4.4.4              Up    130769  130872
2          2:2                Spok   4.4.4.4              Up    130770  130873
3          3:3                Spok   4.4.4.4              Up    130771  130874
4          4:4                Spok   4.4.4.4              Up    130772  130875
5          5:5                Spok   4.4.4.4              Up    130773  130876
6          6:6                Spok   4.4.4.4              Up    130774  130877
7          7:7                Spok   4.4.4.4              Up    130775  130878
8          8:8                Spok   4.4.4.4              Up    130776  130879
9          9:9                Spok   4.4.4.4              Up    130777  130880
10         10:10              Spok   4.4.4.4              Up    130778  130881
11         11:11              Spok   4.4.4.4              Up    130779  130882
12         12:12              Spok   4.4.4.4              Up    130780  130883 

BGP AD advertises the VPLS-ID in the extended community attribute, VSI-ID in the NLRI and the local PE ID in the BGP next hop. At the receiving PE, the VPLS-ID is compared against locally provisioned information to determine whether the two PEs share a common VPLS. If it is found that they do, the BGP information is used in the signaling phase.

5.6.5. BGP- AD- LDP Signaling

T-LDP is triggered when the VPN endpoints have been discovered using BGP. The T-LDP session between the PEs is established when one does not exist. The far-end IP address required for the T-LDP identification is gleaned from the BGP AD next hop information. The pw-template and pw-template-binding configuration statements are used to establish the automatic SDP or to map to the appropriate SDP. The FEC129 content is built using the following values:

  1. AGI from the locally configured VPLS-ID.
  2. The SAII from the locally configured VSI-ID.
  3. The TAII from the VSI-ID contained in the last 4 bytes of the received BGP NLRI.

Figure 73 shows the different detailed phases of the LDP signaling path, post BGP AD completion. It also indicates how some fields can be auto generated when they are not specified in the configuration.

Figure 73:  BGP AD Triggering LDP Functions 

The first command shows the LDP peering relationships that have been established (Figure 74). The type of adjacency is displayed in the “Adj Type” column. In this case the type is “Both” meaning link and targeted sessions have been successfully established.

Figure 74:  Show Router LDP Session Output 

The second command shows the specific LDP service label information broken up per FEC element type, 128 or 129, basis (Figure 75). The information for FEC element 129 includes the AGI, SAII and the TAII.

Figure 75:  Show Router LDP Bindings FEC-Type Services 

5.6.6. BGP AD- Pseudowire Template

The pseudowire template is defined under the top-level service command (config>service> pw-template) and specifies whether to use an automatically generated SDP or manually configured SDP. It also provides the set of parameters required for establishing the pseudowire (SDP binding) as follows.

PERs6>config>service# pw-template 1 create
 -[no] pw-template <policy-id> [use-provisioned-sdp | prefer-provisioned-sdp]
<policy-id> : [1..2147483647]
<use-provisioned-s*> : keyword
<prefer-provisioned*> : keyword
 
 
[no] accounting-pol*    - Configure accounting-policy to be used
[no] auto-learn-mac*    - Enable/Disable automatic update of MAC protect list
[no] block-on-peer-*    - Enable/Disable block traffic on peer fault
[no] collect-stats      - Enable/disable statistics collection
[no] control word       - Enable/Disable the use of Control Word
[no] disable-aging      - Enable/disable aging of MAC addresses
[no] disable-learni*    - Enable/disable learning of new MAC addresses
[no] discard-unknow*    - Enable/disable discarding of frames with unknown source
                          MAC address
     egress             + Spoke SDP binding egress configuration
[no] force-qinq-vc-*    - Forces qinq-vc-type forwarding in the data-path
[no] force-vlan-vc-*    - Forces vlan-vc-type forwarding in the data-path
[no] hash-label         - Enable/disable use of hash-label
     igmp-snooping      + Configure IGMP snooping parameters
     in gr ess          + Spoke SDP binding ingress configuration
[no] l2pt-terminati*    - Configure L2PT termination on this spoke SDP
[no] limit-mac-move     - Configure mac move
[no] mac-pinning        - Enable/disable MAC address pinning on this spoke SDP
[no] max-nbr-mac-ad*    - Configure the maximum number of MAC entries in the FDB
                          from this SDP
[no] restrict-prote*    - Enable/disable protected src MAC restriction
[no] sdp-exclude        - Configure excluded SDP group
[no] sdp-include        - Configure included SDP group
[no] split-horizon-*    + Configure a split horizon group
     stp                + Configure STP parameters
     vc-type            - Configure VC type
[no] vlan-vc-tag        - Configure VLAN VC tag

A pw-template-binding command configured within the VPLS service under the bgp-ad subcommand is a pointer to the pw-template that should be used. If a VPLS service does not specify an import-rt list, then that binding applies to all route targets accepted by that VPLS. The pw-template-bind command can select a different template on a per import-rt basis. It is also possible to specify specific pw-templates for some route targets with a VPLS service and use the single pw-template-binding command to address all unspecified but accepted imported targets.

Figure 76 shows the PW-Template-Binding CLI syntax.

Figure 76:  PW-Template-Binding CLI Syntax 

It is important understand the significance of the split-horizon-group used by the pw-template. Traditionally, when a VPLS instance was manually created using mesh-sdp bindings, these were automatically placed in a common split-horizon-group to prevent forwarding between the pseudowire in the VPLS instances. This prevents loops that would have otherwise occurred in the Layer 2 service. When automatically discovering VPLS service using BGP AD the service provider has the option of associating the auto-discovered pseudowire with a split-horizon group to control the forwarding between pseudowires.

5.6.7. Configuring a VPLS Management Interface

Use the following syntax to create a VPLS management interface.

CLI Syntax:
config>service>vpls# interface ip-int-name
address ip-address[/mask] [netmask]
arp-timeout seconds
description description-string
mac ieee-address
no shutdown
static-arp ip-address ieee-address

The following is a sample configuration output.

A:ALA-49>config>service>vpls>interface# info detail
---------------------------------------------
               no description
               mac 14:31:ff:00:00:00
               address 10.231.10.10/24
               no arp-timeout
               no shutdown
---------------------------------------------
A:ALA-49>config>service>vpls>interface#

5.6.7.1. Creating a Management VPLS for SAP Protection Using MPLS Uplinks

This section provides a brief overview of the tasks that must be performed to configure a management VPLS for SAP protection and provides the CLI commands. The following tasks should be performed on both nodes providing the protected VPLS service.

Before configuring a management VPLS, first read Configuring VPLS Redundancy for an introduction to the concept of management VPLS and SAP redundancy.

  1. Create an SDP to the peer node.
  2. Create a management VPLS.
  3. Define a SAP in the m-vpls on the port toward the 7210 SAS. Note that the port must be dot1q. The SAP corresponds to the (stacked) VLAN on the 7210 SAS in which STP is active.
  4. Optionally modify STP parameters for load balancing (see Configuring Load Balancing with Management VPLS on page 414).
  5. Create an SDP in the m-vpls using the SDP defined in Step 1. Ensure that this SDP runs over a protected LSP.
  6. Enable the management VPLS service and verify that it is operationally up.
  7. Create a list of VLANs on the port managed by this management VPLS.
  8. Create one or more user VPLS services with SAPs on VLANs in the range defined by Step  6.
CLI Syntax:
config>service# vpls service-id [customer customer-id] [create] [m-vpls]
description description-string
sap sap-id create
managed-vlan-list
range vlan-range
stp
no shutdown

The following is a sample VPLS configuration output.

*A:ALA-1>config>service# info
----------------------------------------------
        vpls 2000 customer 6 m-vpls create
            stp
                no shutdown
            exit
            sap 1/1/1:100 create
            exit
            sap 1/1/2:200 create
            exit
            sap 1/1/3:300 create
               managed-vlan-list
                  range 1-50
            exit
            no shutdown
        exit           
----------------------------------------------
*A:ALA-1>config>service# 

5.6.7.2. Creating a Management VPLS for Spoke-SDP Protection, using MPLS uplinks (7210 SAS-K 2F6C4T and 7210 SAS-K 3SFP+ 8C)

This section provides a brief overview of the tasks that must be performed to configure a management VPLS for spoke-SDP protection and provides the CLI commands. The following tasks should be performed on all four nodes providing the protected VPLS service.

Before configuring a management VPLS, please first read  5.6.4 Configuring VPLS Redundancy for an introduction to the concept of management VPLS and spoke-SDP redundancy.

  1. Create an SDP to the local peer node (node ALA-A2 in the following sample).
  2. Create an SDP to the remote peer node (node ALA-B1 in the following sample).
  3. Create a management VPLS.
  4. Create a spoke-SDP in the m-vpls using the SDP defined in Step 1. Ensure that this mesh-spoke-SDP runs over a protected LSP (see following note).
  5. Enable the management VPLS service and verify that it is operationally up.
  6. Create a spoke-SDP in the m-vpls using the SDP defined in Step 2. Optionally, modify STP parameters for load balancing.
  7. Create one or more user VPLS services with spoke-SDPs on the tunnel SDP defined by Step 2.

As long as the user spoke-SDPs created in step 7 are in this same tunnel SDP with the management spoke-SDP created in step 6, the management VPLS will protect them.

Use the following syntax to create a management VPLS for spoke-SDP protection.

CLI Syntax:
config>service# sdp sdp-id mpls create
far-end ip-address
lsp lsp-name
no shutdown
CLI Syntax:
vpls service-id customer customer-id [m-vpls] create
description description-string
spoke-sdp sdp-id:vc-id create
stp
no shutdown

The following is a sample VPLS configuration output.

*A:ALA-A1>config>service# info
----------------------------------------------
...
sdp 1 mpls create
            shutdown
            no description
            signaling tldp
            no ldp
            no sr-isis
            no sr-ospf
            no bgp-tunnel
            no path-mtu
            no adv-mtu-override
            keep-alive
                shutdown
                hello-time 10
                hold-down-time 10
                max-drop-count 3
                timeout 5
                no message-length
            exit
 
...
----------------------------------------------
*A:ALA-A1>config>service#

5.6.7.3. Configuring Load Balancing with Management VPLS using MPLS uplinks (7210 SAS-K 2F6C4T and 7210 SAS-K 3SFP+ 8C)

This is done by creating two management VPLS instances, where both instances have different active spokes (by changing the STP path-cost). When different user VPLS services are associated with either the two management VPLS services, the traffic will be split across the two spokes.

Load balancing can be achieved in both the SAP protection and spoke-SDP protection scenarios.

Use the following syntax to create a load balancing across two management VPLS instances.

CLI Syntax:
config>service# sdp sdp-id mpls create
far-end ip-address
lsp lsp-name
no shutdown
CLI Syntax:
vpls service-id customer customer-id [m-vpls] create
description description-string
spoke-sdp sdp-id:vc-id create
stp
path-cost
stp
no shutdown

This following outputs are sample configurations for load balancing across two protected VPLS spoke-SDPs.

The following is a sample configuration output on ALA-A (7210 SAS).

# MVPLS 100 configs
*A:ALA-A# configure service vpls 100
*A:ALA-A>config>service>vpls# info
----------------------------------------------
description "Default tls description for service id 100"
stp
no shutdown
exit
sap lag-3:100 create
description "Default sap description for service id 100"
managed-vlan-list
range 101-110
exit
exit
spoke-sdp 1201:100 create
stp
path-cost 100
exit
exit
spoke-sdp 1401:100 create
exit
no shutdown
----------------------------------------------
*A:ALA-A>config>service>vpls#
 
# UVPLS 101 configs
*A:ALA-A>config>service# vpls 101
*A:ALA-A>config>service>vpls# info
----------------------------------------------
description "Default tls description for service id 101"
sap lag-3:101 create
description "Default sap description for service id 101"
exit
spoke-sdp 1201:101 create
exit
spoke-sdp 1401:101 create
exit
no shutdown
----------------------------------------------
*A:ALA-A>config>service>vpls#
 
# MVPLS 200 configs
*A:ALA-A# configure service vpls 200
*A:ALA-A>config>service>vpls# info
----------------------------------------------
description "Default tls description for service id 200"
stp
no shutdown
exit
sap lag-3:200 create
description "Default sap description for service id 200"
managed-vlan-list
range 201-210
exit
exit
spoke-sdp 1202:200 create
exit
spoke-sdp 1402:200 create
stp
path-cost 100
exit
exit
no shutdown
----------------------------------------------
*A:ALA-A>config>service>vpls#
 
# UVPLS 201 configs
*A:ALA-A>config>service# vpls 201
*A:ALA-A>config>service>vpls# info
----------------------------------------------
description "Default tls description for service id 201"
sap lag-3:201 create
description "Default sap description for service id 201"
exit
spoke-sdp 1202:201 create
exit
spoke-sdp 1402:201 create
exit
no shutdown
----------------------------------------------
*A:ALA-A>config>service>vpls# exit all

The following is a sample configuration output on ALA-B (7210), the top left node. It is configured such that it becomes the root bridge for MVPLS 100 and MVPLS 200.

# MVPLS 100 configs
*A:ALA-B# configure service vpls 100
*A:ALA-B>config>service>vpls# info
----------------------------------------------
description "Default tls description for service id 100"
stp
priority 0
no shutdown
exit
spoke-sdp 1201:100 create
exit
spoke-sdp 2301:100 create
exit
no shutdown
----------------------------------------------
*A:ALA-B>config>service>vpls#
 
# UVPLS 101 configs
*A:ALA-B>config>service# vpls 101
*A:ALA-B>config>service>vpls# info
----------------------------------------------
description "Default tls description for service id 101"
spoke-sdp 1201:101 create
exit
spoke-sdp 2301:101 create
exit
no shutdown
----------------------------------------------
*A:ALA-B>config>service>vpls#
 
# MVPLS 200 configs
*A:ALA-B# configure service vpls 200
*A:ALA-B>config>service>vpls# info
----------------------------------------------
description "Default tls description for service id 200"
stp
priority 0
no shutdown
exit
spoke-sdp 1202:200 create
exit
spoke-sdp 2302:200 create
exit
no shutdown
----------------------------------------------
*A:ALA-B>config>service>vpls#
 
# UVPLS 201 configs
*A:ALA-B>config>service# vpls 201
*A:ALA-B>config>service>vpls# info
----------------------------------------------
description "Default tls description for service id 201"
spoke-sdp 1202:201 create
exit
spoke-sdp 2302:201 create
exit
no shutdown
----------------------------------------------
*A:ALA-B>config>service>vpls#

The following is a sample configuration output on ALA-C (7210), the top right node.

# MVPLS 100 configs
*A:ALA-C# configure service vpls 100
*A:ALA-C>config>service>vpls# info
----------------------------------------------
description "Default tls description for service id 100"
stp
priority 4096
no shutdown
exit
spoke-sdp 1401:100 create
exit
spoke-sdp 2301:100 create
exit
no shutdown
----------------------------------------------
*A:ALA-C>config>service>vpls#
 
# UVPLS 101 configs
*A:ALA-C>config>service# vpls 101
*A:ALA-C>config>service>vpls# info
----------------------------------------------
description "Default tls description for service id 101"
spoke-sdp 1401:101 create
exit
spoke-sdp 2301:101 create
exit
no shutdown
----------------------------------------------
*A:ALA-C>config>service>vpls#
 
# MVPLS 200 configs
*A:ALA-C# configure service vpls 200
*A:ALA-C>config>service>vpls# info
----------------------------------------------
description "Default tls description for service id 200"
stp
priority 4096
no shutdown
exit
spoke-sdp 1402:200 create
exit
spoke-sdp 2302:200 create
exit
no shutdown
----------------------------------------------
*A:ALA-C>config>service>vpls#
 
# UVPLS 201 configs
*A:ALA-C>config>service# vpls 201
*A:ALA-C>config>service>vpls# info
----------------------------------------------
description "Default tls description for service id 201"
spoke-sdp 1402:201 create
exit
spoke-sdp 2302:201 create
exit
no shutdown
----------------------------------------------
*A:ALA-C>config>service>vpls#

5.6.7.4. Configuring Selective MAC Flush, when using MPLS Uplinks (7210 SAS-K 2F6C4T and 7210 SAS-K 3SFP+ 8C)

Use the following syntax to enable selective MAC Flush in a VPLS.

CLI Syntax:
config>service# vpls service-id
send-flush-on-failure

Use the following syntax to disable selective MAC Flush in a VPLS.

CLI Syntax:
config>service# vpls service-id
no send-flush-on-failure

5.6.7.5. Configuring AS Pseudo-wire in VPLS When Using MPLS Uplinks (7210 SAS-K 2F6C4T and 7210 SAS-K 3SFP+ 8C)

In Figure 77, pseudowire is configured on MTU. The following is a sample configuration output on the MTU.

Figure 77:  Sample AS Pseudo-wire 
*A:MTU>config>service>vpls>endpoint# back
*A:MTU>config>service>vpls# info
----------------------------------------------
send-flush-on-failure
stp
shutdown
exit
endpoint "vpls1" create
description "vpls1_endpoint"
revert-time 60
ignore-standby-signaling
no suppress-standby-signaling
block-on-mesh-failure
exit
sap 1/1/3 create
exit
spoke-sdp 301:1 endpoint "vpls1" create
stp
shutdown
exit
block-on-mesh-failure
exit
spoke-sdp 302:1 endpoint "vpls1" create
stp
shutdown
exit
block-on-mesh-failure
exit
no shutdown
----------------------------------------------
*A:MTU>config>service>vpls#

5.7. Service Management Tasks

This section describes the service management tasks.

5.7.1. Modifying VPLS Service Parameters

You can change existing service parameters. The changes are applied immediately. To display a list of services, use the show service service-using vpls command. Enter the parameter such as description SAP and then enter the new information.

The following is a sample modified VPLS configuration output.

*A:ALA-1>config>service>vpls# info
----------------------------------------------
            description "This is a different description."
            disable-learning
            disable-aging
            discard-unknown
            local-age 500
 
            stp
                shutdown
            exit
            sap 1/1/5:22 create
                description "VPLS SAP"
            exit
 
            exit
            no shutdown
----------------------------------------------
*A:ALA-1>config>service>vpls#

5.7.2. Modifying Management VPLS Parameters

To modify the range of VLANs on an access port managed by an existing management VPLS, first the new range should be entered and afterwards the old range removed. If the old range is removed before a new range is defined, all customer VPLS services in the old range will become unprotected and may be disabled.

CLI Syntax:
config>service# vpls service-id
sap sap-id
managed-vlan-list
[no] range vlan-range

5.7.3. Deleting a Management VPLS

As with normal VPLS service, a management VPLS cannot be deleted until SAPs are unbound (deleted), interfaces are shutdown, and the service is shutdown on the service level.

Use the following syntax to delete a management VPLS service.

CLI Syntax:
config>service
[no] vpls service-id
shutdown
[no] sap sap-id
shutdown

5.7.4. Disabling a Management VPLS

You can shut down a management VPLS without deleting the service parameters.

When a management VPLS is disabled, all associated user VPLS services are also disabled (to prevent loops). If this is not desired, first unmanage the user VPLS service by removing them from the managed-vlan-list.

CLI Syntax:
config>service
vpls service-id
shutdown
Example:
config>service# vpls 1
config>service>vpls# shutdown
config>service>vpls# exit

5.7.5. Deleting a VPLS Service

A VPLS service cannot be deleted until SAPs are unbound (deleted), interfaces are shutdown, and the service is shutdown on the service level.

Use the following syntax to delete a VPLS service.

CLI Syntax:
config>service
[no] vpls service-id
shutdown
sap sap-id
no sap sap-id
shutdown

5.7.6. Disabling a VPLS Service

Use the following syntax to shut down a VPLS service without deleting the service parameters.

CLI Syntax:
config>service> vpls service-id
[no] shutdown
Example:
config>service# vpls 1
config>service>vpls# shutdown
config>service>vpls# exit

5.7.7. Re-Enabling a VPLS Service

Use the following syntax to re-enable a VPLS service that was shutdown.

CLI Syntax:
config>service> vpls service-id [no] shutdown
Example:
config>service# vpls 1
config>service>vpls# no shutdown
config>service>vpls# exit