MC-LAG TCN Interworking

Multiple VLAN Registration Protocol (MVRP) is used for MAC Flushing during the Pseudowire (PW) redundancy process. However, not all Dual Homed Device (DHD) switches support MVRP for MAC flushing. MC-LAG TCN Interworking feature enables using the Multiple Spanning Tree Protocol with Topology Change Notification (MSTP TCN) scheme for MAC flushing towards the access network.

Prerequisites for MC-LAG TCN Interworking

  • Ethernet Flow Points (EFPs) towards the core network as well as the access network must support the MSTP instance (creation and deletion) for sending and receiving Bridge Protocol Data Units (BPDUs).

  • DHD access node(s) must support MSTP TCN.

  • To enable the MAC mode for multichassis LACP (mLACP) or Pseudo mLACP (P- mLACP), mLACP sub-block must be created first.

  • MSTP TCN enabled port channel interface must be compliant with High Availability (HA) synchronization (between HA Active and HA Hot Standby).

Restrictions for MC-LAG TCN Interworking

  • P-mLACP mode needs to be configured before enabling MSTP TCN.

  • The port channel configuration on both Point of Attachments (PoAs) must be same, including EFP IDs.

  • Port channel members need not be same on PoAs.

  • Each PoA may be connected to the DHD with a different number of links for the Link Aggregation Group (LAG) (and hence configured with a different value for the max-links value) variable.

  • Virtual Private Wire Service (VPWS) and Virtual Private LAN Service (VPLS) VC state (Active/Standby) are based on the Active VLAN list configuration on a PoA at any given time.

Information About MC-LAG TCN Interworking

MC-LAG TCN Interworking

Multiple Spanning Tree Protocol (MSTP) is an extension of the original STP specification. It is an IETF standard stack with a completed state machine (SM) for processing root path costs, topology change notification of the port or VLAN, and so on. MSTP uses Bridge Protocol Data Units (BPDU) to exchange information such as bridge IDs or root path costs. There are two types of BPDU in the MST stack.

  • Configuration BPDU (CBPDU)

  • Topology Change Notification BPDU (TCN BPDU)

Within the MST, BPDUs are exchanged regularly and enable devices to keep track of network changes and to start and stop forwarding at ports as required. MC-LAG TCN Interworking feature uses TCN BPDU to announce the changes in the network topology to access side DHD, requesting for MAC flushing. The DHD processes the MST TCN message and updates the forwarding table with appropriate outgoing interface for each destination MAC address.

MAC flushing is triggered during the following conditions:

  • Pseudowire (PW) redundancy has taken place for switchover between VLANs or POAs.

  • VLAN configuration has been changed by the administrator.

MSTP Topology Change Notification scheme can be configured per port-channel basis for MAC Flushing. MVRP Lite is used for MAC flushing during redundancy switchover as a default scheme.

How to Configure MC-LAG TCN Interworking

Enabling MSTP TCN Sequence

Before you begin


Note

Enable P-mLACP feature before enabling MSTP TCN sequence.


SUMMARY STEPS

  1. enable
  2. configure terminal
  3. interface port-channel number
  4. mlacp interchassis group group-id
  5. mlacp mode active-active
  6. mlacp mac mstp-tcn
  7. mlacp load-balance primary vlan vlan-id
  8. mlacp load-balance secondary vlan vlan-id
  9. end
  10. Perform the same steps on standby POA.

DETAILED STEPS

  Command or Action Purpose
Step 1

enable

Example:

Device> enable
Enables privileged EXEC mode.
  • Enter your password if prompted.

Step 2

configure terminal

Example:

Device# configure terminal

Enters global configuration mode.

Step 3

interface port-channel number

Example:

Device(config)# interface port-channel 1

Configures the port channel and enters interface configuration mode.

Step 4

mlacp interchassis group group-id

Example:

Device(config-if)# mlacp interchassis group 1

Specifies that the port channel is an mLACP port channel.

Step 5

mlacp mode active-active

Example:

Device(config-if)# mlacp mode active-active

Enables P-mLACP operations on a PoA and allows the PoA to form an LACP bundle even if the peer receives an LACP protocol data unit (PDU) from two different port channels on a dual-homed network (DHN) or DHD.

Step 6

mlacp mac mstp-tcn

Example:

Device(config-if)# mlacp mac mstp-tcn

Enables MAC mode on port channel base.

Step 7

mlacp load-balance primary vlan vlan-id

Example:

Device(config-if)# mlacp load-balance primary vlan 10,20

Configures a list of primary VLANs that will be active on a given PoA.

Step 8

mlacp load-balance secondary vlan vlan-id

Example:

Device(config-if)# mlacp load-balance secondary vlan 30,100

Configures a list of secondary VLANs that will be standby on a given PoA.

Step 9

end

Example:

Device(config-if)# end

Exits interface configuration mode and returns to privileged EXEC mode.

Step 10

Perform the same steps on standby POA.

Enabling MST for VLANs

SUMMARY STEPS

  1. configure terminal
  2. spanning-tree mode mst
  3. spanning-tree extend system-id
  4. spanning-tree mst configuration
  5. name name
  6. revision version
  7. instance instance-id vlan vlan-range
  8. exit

DETAILED STEPS

  Command or Action Purpose
Step 1

configure terminal

Example:

Device# configure terminal

Enters global configuration mode.

Step 2

spanning-tree mode mst

Example:

Device(config)# spanning-tree mode mst

Enables MST on the device.

Step 3

spanning-tree extend system-id

Example:

Device(config)# spanning-tree extend system-id

Enables the extended-system ID.

Step 4

spanning-tree mst configuration

Example:

Device(config)# spanning-tree mst configuration

Enters MST configuration submode on the system.

Step 5

name name

Example:

Device(config-mst)# name test 

Specifies the name of an MST region

Step 6

revision version

Example:

Device(config-mst)# revision 1

Specifies the revision number for the MST configuration

Step 7

instance instance-id vlan vlan-range

Example:

Device(config-mst)# instance 1 vlan 1-63
Device(config-mst)# instance 1 vlan 20, 40

Maps VLANs to an MST instance.

  • instance-id—Range is 0 to 4094.

  • vlan-range—Range is 1 to 4094.

To specify a VLAN range, use a hyphen; for example, instance 1 vlan 1-63 maps VLANs 1 through 63 to MST instance 1.

To specify a VLAN series, use a comma; for example, instance 1 vlan 20, 40 maps VLANs 20 and 40 to MST instance 1.

Step 8

exit

Example:

Device(config-mst)# exit

Exits MST configuration mode and returns to global configuration mode.

Verifying MC-LAG TCN Interworking

All steps are optional and can be performed in any order.

SUMMARY STEPS

  1. enable
  2. show ethernet service interface [type number] [detail]
  3. show spanning-tree detail

DETAILED STEPS


Step 1

enable

Example:

Device> enable

Enables the privileged EXEC mode. Enter your password if prompted.

Step 2

show ethernet service interface [type number] [detail]

Example:

Device(config)# show ethernet service interface port 1 detail

 Interface: Port-channel1, Type: UNI
 ID:                                                                       
 EVC Distribution State: Ready
 EVC Map Type: Bundling-Multiplexing
 Bridge-domains: 
 Associated Service Instances:
    Service-Instance-ID CE-VLAN
    20                                                 
    40                                                 
 L2protocol pass

mLACP state: Active

Displays the information about mLACP enabled Ethernet interface port.

Step 3

show spanning-tree detail

Example:

Device# show spanning-tree detail

MST0 is executing the mstp compatible Spanning Tree protocol
  Bridge Identifier has priority 32768, sysid 0, address f866.f2eb.7ebb
  Configured hello time 2, max age 20, forward delay 15, transmit hold-count 6
  Current root has priority 32768, address 2834.a252.7380
  Root port is 14 (Port-channel1), cost of root path is 0
  Topology change flag not set, detected flag not set
  Number of topology changes 2 last change occurred 00:15:24 ago
          from Port-channel1
  Times:  hold 1, topology change 35, notification 2
          hello 2, max age 20, forward delay 15 
  Timers: hello 0, topology change 0, notification 0

Port 14 (Port-channel1) of MST0 is root forwarding 
   Port path cost 20000, Port priority 128, Port Identifier 128.14.
   Designated root has priority 32768, address 2834.a252.7380
   Designated bridge has priority 32768, address 2834.a252.7380
   Designated port id is 128.456, designated path cost 0
   Timers: message age 4, forward delay 0, hold 0
   Number of transitions to forwarding state: 1
   Link type is point-to-point by default, Internal
   BPDU: sent 8, received 774

 MST1 is executing the mstp compatible Spanning Tree protocol
  Bridge Identifier has priority 32768, sysid 1, address f866.f2eb.7ebb
  Configured hello time 2, max age 20, forward delay 15, transmit hold-count 6
  Current root has priority 32769, address 2834.a252.7380
  Root port is 14 (Port-channel1), cost of root path is 20000
  Topology change flag not set, detected flag not set
  Number of topology changes 3 last change occurred 00:12:04 ago
          from Port-channel1
  Times:  hold 1, topology change 35, notification 2
          hello 2, max age 20, forward delay 15 
  Timers: hello 0, topology change 0, notification 0

 Port 14 (Port-channel1) of MST1 is root forwarding 
   Port path cost 20000, Port priority 128, Port Identifier 128.14.
   Designated root has priority 32769, address 2834.a252.7380
   Designated bridge has priority 32769, address 2834.a252.7380
   Designated port id is 128.456, designated path cost 0
   Timers: message age 5, forward delay 0, hold 0
   Number of transitions to forwarding state: 1
   Link type is point-to-point by default, Internal
   BPDU: sent 8, received 775

Displays the STP details including TCN information.


Configuration Examples for MC-LAG TCN Interworking

Example: Enabling MSTP TCN Sequence

The following example shows how to enable the MSTP TCN sequence.

Active PoA-POA1

Device# configure terminal
Device(config)# interface port-channel1
Device(config-if)# mlacp interchassis group 1 
Device(config-if)# mlacp mode active-active 
Device(config-if)# mlacp mac mstp-tcn    
Device(config-if)# mlacp load-balance primary vlan 10,20  
Device(config-if)# mlacp load-balance secondary vlan 30,100 
Device(config-if)# end    
      

Standby PoA-POA2

Device# configure terminal
Device(config)# interface port-channel1
Device(config-if)# mlacp interchassis group 1 
Device(config-if)# mlacp mode active-active
Device(config-if)# mlacp mac mstp-tcn 
Device(config-if)# mlacp load-balance primary vlan 30,100  
Device(config-if)# mlacp load-balance secondary vlan 10,20 
Device(config-if)# end    
     

Example: Enabling MST for VLANs

The following example shows the STP configuration for VLANs 20 and 40.


Device# configure terminal
Device(config)# spanning-tree mode mst
Device(config)# spanning-tree extend system-id
Device(config)# spanning-tree mst configuration
Device(config-mst)# name test
Device(config-mst)# revision 1
Device(config-mst)# instance 1 vlan 20, 40

Example: Configuring Redundancy and P-mLACP on Active POA

The following example shows how to configure redundancy and P-mLACP on an active POA.


redundancy
 mode sso
  interchassis group 4294967295
   monitor peer bfd
   member ip 88.1.1.2
   backbone interface GigabitEthernet0/0/2
   backbone interface GigabitEthernet0/0/1
   mlacp system-mac 0001.0001.0001
   mlacp system-priority 100
   mlacp node-id 1
 !
 !
interface Port-channel1
no ip address
no negotiation auto
mlacp interchassis group 4294967295
mlacp mode active-active
mlacp mac mstp-tcn
mlacp load-balance primary vlan 40
mlacp load-balance secondary vlan 20
service instance 20 ethernet
  encapsulation dot1q 20
  rewrite ingress tag pop 1 symmetric
  xconnect 88.1.1.3 20 encapsulation mpls pw-class poa
backup peer 88.1.1.4 20 pw-class poa
!
service instance 40 ethernet
  encapsulation dot1q 40
  rewrite ingress tag pop 1 symmetric
  xconnect 88.1.1.3 40 encapsulation mpls pw-class poa
   backup peer 88.1.1.4 40 pw-class poa
!        
interface Port-channel10
 description to-DHD
 no ip address
 mlacp interchassis group 100
 mlacp mode active-active
mlacp mac mstp-tcn
 mlacp load-balance primary vlan 100-109
 mlacp load-balance secondary vlan 110-120
  service instance 10 ethernet
  encapsulation dot1q 100
  rewrite ingress tag pop 1 symmetric
  xconnect 3.3.3.3 90 encapsulation mpls
!
 service instance 11 ethernet evc11_bd_201
  encapsulation dot1q 101
  rewrite ingress tag pop 1 symmetric
  bridge-domain 201
!
 service instance 12 ethernet
  encapsulation dot1q 102
  rewrite ingress tag pop 1 symmetric
  bridge-domain 202 split-horizon
 !
 service instance 20 ethernet
  encapsulation dot1q 110
  rewrite ingress tag pop 1 symmetric
  xconnect 3.3.3.3 91 encapsulation mpls
!
service instance 21 ethernet
  encapsulation dot1q 111
  rewrite ingress tag pop 1 symmetric
  bridge-domain 211
 !
 service instance 22 ethernet
  encapsulation dot1q 112
  rewrite ingress tag pop 1 symmetric
  bridge-domain 212 split-horizon
 !

Example: Configuring Redundancy and P-mLACP on Standby POA

The following example shows how to configure redundancy and P-mLACP on a standby POA.


redundancy
 mode sso
 interchassis group 100
  monitor peer bfd
  member ip 1.1.1.1
  backbone interface GigabitEthernet8/0/10
  mlacp system-priority 100
  mlacp node-id 2


interface Port-channel1
 no ip address
 no negotiation auto
 mlacp interchassis group 4294967295
 mlacp mode active-active
 mlacp mac mstp-tcn
 mlacp load-balance primary vlan 20
 mlacp load-balance secondary vlan 40
 service instance 40  ethernet
   encapsulation dot1q 40
 rewrite ingress tag pop 1 symmetric
   xconnect 88.1.1.3 20 encapsulation mpls pw-class poa
    backup peer 88.1.1.4 20 pw-class poa
 !
 service instance 20 ethernet
   encapsulation dot1q 20
   rewrite ingress tag pop 1 symmetric
   xconnect 88.1.1.3 20 encapsulation mpls pw-class poa
    backup peer 88.1.1.4 20 pw-class poa
 !        
interface Port-channel10
 description to-DHD
 no ip address
 mlacp interchassis group 100
 mlacp mode active-active
mlacp mac mstp-tcn
 mlacp load-balance primary vlan 110-120
 mlacp load-balance secondary vlan 100-109
  service instance 10 ethernet
  encapsulation dot1q 100
  rewrite ingress tag pop 1 symmetric
  xconnect 3.3.3.3 90 encapsulation mpls
   !
 service instance 11 ethernet
  encapsulation dot1q 101
  rewrite ingress tag pop 1 symmetric
  bridge-domain 201
 !
 service instance 12 ethernet
  encapsulation dot1q 102
  rewrite ingress tag pop 1 symmetric
  bridge-domain 202 split-horizon
 !
 service instance 20 ethernet
  encapsulation dot1q 110
  rewrite ingress tag pop 1 symmetric
  xconnect 3.3.3.3 91 encapsulation mpls
   !
service instance 21 ethernet
  encapsulation dot1q 111
  rewrite ingress tag pop 1 symmetric
  bridge-domain 211
 !
 service instance 22 ethernet
  encapsulation dot1q 112
  rewrite ingress tag pop 1 symmetric
  bridge-domain 212 split-horizon
 !
End

Feature Information for MC-LAG TCN Interworking

The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Table 1. Feature Information for MC-LAG TCN Interworking

Feature Name

Releases

Feature Information

MC-LAG TCN Interworking

Cisco IOS XE Release 3.17S

Multiple VLAN Registration Protocol (MVRP) is used for MAC Flushing during the Pseudowire (PW) redundancy process. However, not all Dual Homed Device (DHD) switches support MVRP for MAC flushing. MC-LAG TCN Interworking feature enables using the Multiple Spanning Tree Protocol with Topology Change Notification (MSTP TCN) scheme for MAC Flushing towards the access network.

The following commands were introduced or modified: mlacp mac mstp-tcn , show ethernet service , show spanning-tree detail