The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
FlexLink+ is supported only on Layer 2 trunk ports and port channels and is not supported on interfaces that are configured
on Layer 3 ports and on VLANs.
Note
FlexLink+ is not supported on port channels that are configured with access mode.
Information about FlexLink+
The following sections provide information about FlexLink+
FlexLink+ Overview
The FlexLink+ feature enables the user to configure a pair of a Layer 2 interfaces (trunk ports or port channels) where one
interface is configured to act as a backup to the other. FlexLink+ provides an alternative solution to the Spanning Tree Protocol
(STP) when you require simple link redundancy between two network nodes. STP is a complete solution that provides link redundancy
and prevents loops in the network. If you need fast link redundancy between two nodes in the network, it is simpler and quicker
to use FlexLink+. Flexlinks are typically configured in service provider or enterprise networks where customers do not want
to run STP on the device. If the device is running STP, Flexlinks are not necessary because STP already provides link-level
redundancy or backup.
In FlexLink+, when one of the links is up and forwarding traffic, the other link is in standby mode, ready to begin forwarding
traffic if the active link shuts down. If the primary link shuts down, the standby link starts forwarding traffic. When the
active link comes back up, it goes into standby mode and does not forward traffic. When FlexLink+ is configured on a switch stack each of the two L2 interfaces in the pair can be on the same device or on different
devices.
FlexLink+ Configuration
In the following figure, ports 1 and 2 on switch A are connected to uplink switches B and C. Because they are configured with
FlexLink+, only one of the interfaces is forwarding traffic; the other is in standby mode. If port 1 is the active link, it
begins forwarding traffic between port 1 and switch B; the link between port 2 (the backup link) and switch C is not forwarding
traffic. If port 1 goes down, port 2 comes up and starts forwarding traffic to switch C. When port 1 comes back up, it goes
into standby mode and does not forward traffic; port 2 continues forwarding traffic.
Figure 1. FlexLink+ Topology
If STP is configured on the uplink switch interfaces that connect to the FlexLink+ ports (Switch B and Switch C in this case),
we recommend running the spanning-tree portfast trunk command on such uplink switch interfaces, for faster convergence.
Flexlink+ includes an optimization for improved multicast traffic convergence. The optimization uses Layer 2 multicast snooping
mechanisms and requires that the uplink switches connected to the Flexlink+ configured ports have the same Layer 2 multicast
snooping feature that is enabled.
Note
For IPv4 multicast IGMP snooping is on by default. If IGMP snooping needs to be disabled on the uplink switches it must also
be disabled on the Flexlink+ host switch. Otherwise IGMP reports may be looped around the active and standby Flexlink+ ports
leading to excessively high CPU utilization.
VLAN Load Balancing and FlexLink+
VLAN load-balancing allows you to configure a FlexLink+ pair so that both ports simultaneously forward the traffic for some
mutually exclusive VLANs. For example, if FlexLink+ ports are configured for 1-100 VLANs, the traffic of the first 50 VLANs
is forwarded on one port and the rest on the other port. If one of the ports fails, the other active port forwards all the
traffic. When the failed port comes back up, it resumes forwarding traffic in the preferred VLANs. This way, apart from providing
redundancy, this FlexLink+ pair is used for load balancing. FlexLink+ VLAN load-balancing doesn’t impose any restrictions
on uplink switches.
Figure 2. VLAN Load Balancing in FlexLink+ Topology
When you configure VLAN load balancing, you must also configure triggers in one of two ways:
Manually trigger VLAN load balancing at any time by entering the rep preempt segment privileged EXEC command on the switch that has the primary edge port.
Configure a preempt delay time by entering the rep preempt delay interface configuration command. After a link failure and recovery, VLAN load balancing begins after the configured preemption
time period elapses. The delay timer restarts if another port fails before the time has elapsed.
Note
When VLAN load balancing is configured, it does not start working until triggered by either manual intervention or a link
failure and recovery.
When VLAN load balancing is triggered, the primary edge port sends out a message to alert all interfaces in the segment about
the preemption. When the secondary port receives the message, it is reflected into the network to notify the alternate port
to block the set of VLANs specified in the message and to notify the primary edge port to block the remaining VLANs.
You can also configure a particular port in the segment to block all VLANs. Only the primary edge port initiates VLAN load
balancing, which is not possible if the segment is not terminated by an edge port on each end. The primary edge port determines
the local VLAN load balancing configuration.
Reconfigure the primary edge port to reconfigure load balancing. When you change the load balancing configuration, the primary
edge port again waits for the rep preempt segment command or for the configured preempt delay period after a port failure
and recovery before executing the new configuration. If you change an edge port to a regular segment port, the existing VLAN
load balancing status does not change. Configuring a new edge port might cause a new topology configuration.
When VLAN load balancing is enabled, the default is manual preemption with the delay timer disabled. If VLAN load balancing
is not configured, the default after manual preemption is to block all VLANs at the primary edge port.
When a primary link fails, FlexLink+ transmits dummy multicast packets over the new active interface. The dummy multicast
packet format is:
- Destination: 01:00:0c:cd:cd:cd
- Source: MAC address of the hosts or ports on the newly active Flex Link port.
Figure 3. Transmission of Dummy Multicast Packets in FlexLink+ Topology
In the above figure, Ports 1 and 2 on switch A are connected to switches B and D through a Flex Link pair. Port 1 is forwarding
traffic, and port 2 is in the blocking state. Traffic from the PC to the server is forwarded from port 1 to port 3. The MAC
address of the PC has been learned on port 3 of switch C. Traffic from the server to the PC is forwarded from port 3 to port
1.
If port 1 shuts down, port 2 starts forwarding traffic. If there is no traffic from the PC to the server after failover to
port 2, switch C does not learn the MAC address of the PC on port 4, and because of that, switch C keeps forwarding traffic
from the server to the PC out of port 3. There is traffic loss from the server to the PC because port 1 is down. To alleviate
this problem, the feature sends out a dummy multicast packet with the source MAC address of the PC over port 2. Switch C learns
the PC MAC address on port 4 and starts forwarding traffic from the server to the PC out of port 4. One dummy multicast packet
is sent out for every MAC address.
Note
Local administrative shut down or a link that starts forwarding again due to preemption is not considered a link failure.
In those cases, the feature flushes the dynamic hosts and and does not move them.
Static MAC addresses that are configured on a Flex Link port are restored when it starts forwarding again.
How to configure Flexlink+
The following sections provide information on how to configure Flexlink+.
Configuring the Active Port for FlexLink+
To configure the active port for FlexLink+, follow this procedure:
Procedure
Command or Action
Purpose
Step 1
enable
Example:
Device> enable
Enables privileged EXEC mode. Enter your password if prompted.
Step 2
configureterminal
Example:
Device# configure terminal
Enters global configuration mode.
Step 3
interface interface-id
Example:
Device# interface Port-channel2
Specifies the interface, and enters interface configuration mode.
Specifies the segment edge as one with no external REP neighbor. Specifies
that the port is the standby port for FlexLink+.
Note
Use the preferred keyword to ensure that the standby port becomes the blocking port. This optional keyword indicates that the port is the preferred
alternate port or the preferred port for VLAN load balancing.
Configuring a port as preferred does not guarantee that it becomes the alternate port; it merely gives the port a slight edge over equal contenders. The
alternate port is usually a previously failed port.
Configuring VLAN Load Balancing on FlexLink+
To configure VLAN load balancing, perform this procedure:
Procedure
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 interface-id
Example:
Device(config)# interface gigabitethernet2/0/8
Specifies the interface, and enters interface configuration mode. The interface can be a physical Layer 2 interface or a port
channel (logical interface).
Forwarding traffic for VLANs 1-50 is blocked on the standby port. Forwarding of traffic for VLANs 51-100 is blocked on the
active port.
Step 7
exit
Example:
Device(config-if) exit
Exits the Interface configuration mode.
Step 8
interface interface-id
Example:
Device(config)# interface gigabitethernet2/0/6
Specifies the interface, and enters interface configuration mode. The interface can be a physical Layer 2 interface or a port
channel (logical interface).
Specifies the segment edge as one with no external REP neighbor. Specifies that the port is the standby port for Flexlink+.
Step 11
end
Example:
Device(config-if)# end
Exits to privileged EXEC mode.
Configuring Propagation of FlexLink+ Topology Change Messages
When the FlexLink+ protocol is deployed as part of a larger domain, you can configure the propagation of FlexLink+ topology
change messages to the next tier devices. To configure the propagation of FlexLink+ topology change messages, perform this
procedure.
Procedure
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 interface-id
Example:
Device(config)# interface gigabitethernet2/0/8
Specifies the interface, and enters interface configuration mode. The interface can be a physical Layer 2 interface or a port
channel (logical interface).
Propagates FlexLink+ topology change messages to the next tier devices.
Step 7
rep block port port-number vlan vlan-range
Example:
Device(config-if)# rep block port 2 vlan 1-50
Forwarding traffic for VLANs 1-50 is blocked on the standby port. Forwarding of traffic for VLANs 51-100 is blocked on the
active port.
Step 8
exit
Example:
Device(config-if) exit
Exits the Interface configuration mode.
Step 9
switchport mode trunk
Example:
Device(config-if)# switchport mode trunk
Configures the interface as a Layer 2 trunk.
Step 10
interface interface-id
Example:
Device(config)# interface gigabitethernet2/0/6
Specifies the interface, and enters interface configuration mode. The interface can be a physical Layer 2 interface or a port
channel (logical interface).
Specifies the segment edge as one with no external REP neighbor. Specifies that the port is the standby port for FlexLink+.
Step 12
rep stcn stp
Example:
Device(config-if)# rep stcn stp
Propagates FlexLink+ topology change messages to the next tier devices.
Step 13
end
Example:
Device(config-if)# end
Exits to privileged EXEC mode.
Configuring Preempt Time Delay
To configure a preempt time dealy for VLAN load balancing, perform this procedure:
Procedure
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 interface-id
Example:
Device(config)# interface gigabitethernet2/0/8
Specifies the interface, and enters interface configuration mode. The interface can be a physical Layer 2 interface or a port
channel (logical interface).
Step 4
switchport mode trunk
Example:
Device(config-if)# switchport mode trunk
Configures the interface as a Layer 2 trunk.
Step 5
rep preempt delay seconds
Example:
Device(config-if)# rep preempt delay 30
Configures a preempt time delay. Automatically triggers VLAN load balancing after a link failure and recovery. The time delay
range is between15 to 300 seconds. The default is manual preemption with no time delay.
Note
Enter this command only on the REP primary edge port.
Configuring Manual Preemption for VLAN Load Balancing
If you do not enter a preemption time delay, the default is to manually trigger VLAN load balancing on the segment. Ensure
that all other segment configurations are complete before manually preempting VLAN load balancing. When you enter the rep preempt delay segment command, a confirmation message appears before the command is executed because preemption can cause network disruption.
Procedure
Command or Action
Purpose
Step 1
enable
Example:
Device> enable
Enables privileged EXEC mode. Enter your password if prompted.
Step 2
rep preempt segment segment-id
Example:
Device# rep preempt segment 300
Manually triggers VLAN load balancing on the segment. The range for segment id is from 1 to 1024.
Step 3
show rep topology segment segment-id
Example:
Device# show rep topology segment 300
Displays REP topology information for the segment.
Configuration Examples for FlexLink+
The following sections provide examples for configuring FlexLink+.
Example: Configuring the Active Port for FlexLink+
This example shows how to configure the active port for FlexLink+.
Example: Configuring VLAN Load Balancing for FlexLink+
The following example shows VLAN load balancing configured on a FlexLink+ interface. VLANs 1-50 are blocked on the active
port and VLANs 51-100 are blocked on the standby port.
This table provides release and related information for features explained in this module.
These features are available on all releases subsequent to the one they were introduced in, unless noted otherwise.
Release
Feature
Feature Information
Cisco IOS XE Gibraltar 16.12.1
FlexLink+
The FlexLink+ feature enables the user to configure a pair of a Layer 2 interfaces (trunk ports or port channels) where one
interface is configured to act as a backup to the other interface.
Cisco IOS XE Amsterdam 17.2.1
VLAN Load Balancing for FlexLink+
Preemption for VLAN Load Balancing
FlexLink+ Dummy Multicast Packets
VLAN load balancing feature was introduced on FlexLink+. VLAN load-balancing allows you to configure a FlexLink+ pair so that
both ports can simultaneously forward the traffic for some mutually exclusive VLANs.
You can trigger VLAN load balancing either by manually triggering it or by configuring a preempt delay.
When a primary link fails, FlexLink+ transmits dummy multicast packets over the new active interface. These packets help learn
the source MAC address.
Use Cisco Feature Navigator to find information about platform and software image support. To access Cisco Feature Navigator,
go to http://www.cisco.com/go/cfn.