Contents

Introduction

Prerequisites

Requirements

Components Used

Background Information

Configure

Network Diagram

Configurations

Verify

Troubleshoot

Best Practice Guidelines for REP STCN

Introduction

This document describes how to configure Resilient Ethernet Protocol (REP) when you plan to deploy it in a large switch domain. Often times an important consideration is how to interoperate with Spanning Tree Protocol (STP). REP is a Cisco protocol but a way has been developed for REP edge ports in order to participate in STP.

Prerequisites

Requirements

Cisco recommends that you have knowledge of these topics:

- Cisco switches that support REP (CGS2520, IE3K, IE4K, etc.) (2)

- Switch that supports Spanning Tree (1)

Components Used

The information in this document is based on these software and hardware versions:

- SwitchA - CGS-2520-16S-8PC with cgs2520-ipservicesk9-mz.152-4.EA.bin

- SwitchB - CGS-2520-16S-8PC-C with cgs2520-lanbasek9-mz.152-4.EA.bin

- SwitchC - WS-C3850-48T with 03.06.05E Universal Image

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.

Background Information

It is good if you have knowledge of REP and how to configure it on Cisco devices. If you are new to REP or want a refresher, refer to these articles:

- REP White Paper

- Cisco TAC LAN Switching REP Guide

- IOS-XE 3s LAN Switching REP Configuration Guide

- Industrial Ethernet Switches REP Configuration

Configure

Network Diagram

Configurations

SwitchA:

interface FastEthernet0/17

switchport trunk allowed vlan 3000-3003

switchport mode trunk

rep segment 99 edge

SwitchB:

interface FastEthernet0/17

switchport trunk allowed vlan 3000-3003

switchport mode trunk

rep segment 99

interface FastEthernet0/18

switchport trunk allowed vlan 3000-3003

switchport mode trunk

rep segment 99 edge no-neighbor primary

rep stcn stp

SwitchC:

interface GigabitEthernet1/0/18

switchport trunk allowed vlan 3000-3003

switchport mode trunk

spanning-tree vlan 3000-3003 priority 24576

Verify

Use this section in order to confirm that your configuration works properly.

SwitchA#show rep topology

REP Segment 99

BridgeName PortName Edge Role

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

SwitchB Fa0/18 Pri* Open

SwitchB Fa0/17 Open

SwitchA Fa0/17 Sec Alt

SwitchB#show rep topology detail

REP Segment 99

SwitchB, Fa0/18 (Primary Edge No-Neighbor)

Open Port, all vlans forwarding

Bridge MAC: 0008.303f.5c00

Port Number: 014

Port Priority: 000

Neighbor Number: 1 / [-3]

SwitchB, Fa0/17 (Intermediate)

Open Port, all vlans forwarding

Bridge MAC: 0008.303f.5c00

Port Number: 013

Port Priority: 000

Neighbor Number: 2 / [-2]

SwitchA, Fa0/17 (Secondary Edge)

Alternate Port, some vlans blocked

Bridge MAC: a40c.c3a4.8180

Port Number: 013

Port Priority: 000

Neighbor Number: 3 / [-1]

SwitchB#show span vlan 3000-3003 root

Root Hello Max Fwd

Vlan Root ID Cost Time Age Dly Root Port

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

VLAN3000 27576 2401.c722.7a80 19 2 20 15 Fa0/18

VLAN3001 27577 2401.c722.7a80 19 2 20 15 Fa0/18

VLAN3002 27578 2401.c722.7a80 19 2 20 15 Fa0/18

VLAN3003 27579 2401.c722.7a80 19 2 20 15 Fa0/18

SwitchC#show spanning-tree vlan 3000-3003 root

Root Hello Max Fwd

Vlan Root ID Cost Time Age Dly Root Port

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

VLAN3000 27576 2401.c722.7a80 0 2 20 15

VLAN3001 27577 2401.c722.7a80 0 2 20 15

VLAN3002 27578 2401.c722.7a80 0 2 20 15

VLAN3003 27579 2401.c722.7a80 0 2 20 15

Troubleshoot

This section provides information you can use in order to troubleshoot your configuration.

The most important configuration to include when a REP edge no-neighbor port is connected to a spanning-tree port is rep stcn stp. When this command is enabled on a REP Edge No-Neighbor (ENN) port, the port runs REP as well as STP. This is critical so that the ENN ports know who the root bridge is in the STP domain. Without this command, STP is disabled on REP ENN ports which means that when there is a REP link failure, the STP domain will not have knowledge of this and outages/reachability issues can occur.

With this output, you can verify that SwitchB's Fa0/18 interface is not only the primary ENN port for REP segment 99, but is also the spanning tree root port for VLANs 3000-3003. If the rep stcn stp command is removed from the interface, SwitchB becomes the root bridge and SwitchC, directly connected, is also root bridge:

SwitchB(config)#int f0/18

SwitchB(config-if)#no rep stcn stp

SwitchB(config-if)#end

SwitchB#show span

SwitchB#show spanning-tree vlan 3000-3003 root

Root    Hello Max Fwd

Vlan                   Root ID          Cost    Time  Age Dly  Root Port

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

VLAN3000         35768 0008.303f.5c00         0    2   20  15

VLAN3001         35769 0008.303f.5c00         0    2   20  15

VLAN3002         35770 0008.303f.5c00         0    2   20  15

VLAN3003         35771 0008.303f.5c00         0    2   20  15

SwitchB#show spanning-tree vlan 3000-3003 | in root

This bridge is the root

This bridge is the root

This bridge is the root

This bridge is the root

SwitchB#show rep topology

REP Segment 99

BridgeName PortName Edge Role

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

AST03-CGS2520-B Fa0/18 Pri* Open

AST03-CGS2520-B Fa0/17 Open

Ast03-cgs2520-a Fa0/17 Sec Alt

SwitchC#show spanning-tree vlan 3000-3003 root

Root Hello Max Fwd

Vlan Root ID Cost Time Age Dly Root Port

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

VLAN3000 27576 2401.c722.7a80 0 2 20 15

VLAN3001 27577 2401.c722.7a80 0 2 20 15

VLAN3002 27578 2401.c722.7a80 0 2 20 15

VLAN3003 27579 2401.c722.7a80 0 2 20 15

SwitchC#show spanning-tree vlan 3000-3003 | in root

This bridge is the root

This bridge is the root

This bridge is the root

This bridge is the root

So how are topology changes handled when the rep stcn stp command is present? Consider this scenario, when the command is added back to the primary ENN port and F0/17 on SwitchB is shutdown to simulate link failure:

SwitchB(config)#int f0/18

SwitchB(config-if)#rep stcn stp

SwitchB(config-if)#int f0/17

SwitchB(config-if)#shut

SwitchB(config-if)#^Z

SwitchB#show rep topology

REP Segment 99

Warning: REP detects a segment failure, topology may be incomplete

BridgeName                       PortName   Edge Role

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

AST03-CGS2520-B                  Fa0/18     Pri* Open

AST03-CGS2520-B                  Fa0/17          Fail

At the time of this network event, spanning tree event debugging is enabled on SwitchC and regular spanning-tree topology change notifications are received on interface G1/0/18:

SwitchC#debug spanning-tree events

Spanning Tree event debugging is on

SwitchC#

*Jan 31 17:07:20.247: STP: VLAN3000 Topology Change rcvd on Gi1/0/18

*Jan 31 17:07:20.247: STP: VLAN3001 Topology Change rcvd on Gi1/0/18

*Jan 31 17:07:20.248: STP: VLAN3002 Topology Change rcvd on Gi1/0/18

*Jan 31 17:07:20.248: STP: VLAN3003 Topology Change rcvd on Gi1/0/18

Now, consider the effects of this segment link failure if REP segment 99's ENN port does not participate in spanning-tree:

SwitchB(config-if)#int f0/18

SwitchB(config-if)#no rep stcn stp

SwitchB(config-if)#do show rep topology

REP Segment 99

BridgeName                       PortName   Edge Role

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

AST03-CGS2520-B                  Fa0/18     Pri* Open

AST03-CGS2520-B                  Fa0/17          Open

Ast03-cgs2520-a                  Fa0/17     Sec  Alt

SwitchB(config-if)#do show spanning-tree vlan 3000-3003 root

Root    Hello Max Fwd

Vlan                   Root ID          Cost    Time  Age Dly  Root Port

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

VLAN3000         35768 0008.303f.5c00         0    2   20  15

VLAN3001         35769 0008.303f.5c00         0    2   20  15

VLAN3002         35770 0008.303f.5c00         0    2   20  15

VLAN3003         35771 0008.303f.5c00         0    2   20  15

SwitchB(config-if)#interface f0/17

SwitchB(config-if)#shut

SwitchB(config-if)#do show rep topology

REP Segment 99

Warning: REP detects a segment failure, topology may be incomplete

BridgeName                       PortName   Edge Role

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

AST03-CGS2520-B                  Fa0/18     Sec* Open

AST03-CGS2520-B                  Fa0/17          Fail

SwitchC#debug spanning-tree events

Spanning Tree event debugging is on

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

SwitchC#

It is difficult to make a point that no packets were received, but with debugs enabled on SwitchC, spanning-tree is not updated at all when there is a topology change on REP segment 99. This means that for REP edge no-neighbor ports connected to spanning-tree ports, the rep stcn stp command must be present.

Best Practice Guidelines for REP STCN

1. By default, REP uses VLAN 1 as the admin VLAN. If your STP domain uses a different native VLAN ID across its trunks, configure the REP admin VLAN to match. For instance, if your native VLAN in STP is VLAN 99, enter this configuration on your REP switches: rep admin vlan 99

2. For REP switches which have edge ports for more than one segment, ensure that you send REP STCN messages across all of the other segments. For example, consider this configuration for an edge port on a switch which has 5 segments. Notice that the segment specific to the interface is omitted from the command:

Switch(config)#int f0/24

Switch(config-if)#rep segment 1 edge no-neighbor

Switch(config-if)#rep stcn stp

Switch(config-if)#rep stcn segment 2-5

3. All REP ENN ports which are connected to STP ports should have the rep stcn stp command present in their configurations.