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.
The ISIS - SR: uLoop Avoidance feature extends the ISIS Local Microloop Protection feature thereby preventing the occurrences
of microloops during network convergence after a link-down event or link-up event.
Prerequisites for ISIS - SR: uLoop Avoidance
The ISIS - SR: uLoop Avoidance feature is disabled by default. When the Topology-Independent Loop-Free Alternate (TI-LFA)
feature is configured, this feature is enabled automatically. See the “Topology-Independent LFA” section in the Using Segment Routing with IS-IS module for more information.
Restrictions for ISIS - SR: uLoop Avoidance
The ISIS - SR: uLoop Avoidance feature supports 2-node on the same subnet on a LAN network.
Information About ISIS - SR: uLoop Avoidance
Microloops
When changes occur in a network topology because of the failure or restoration of a link or a network device, IP Fast Reroute
enables rapid network convergence by moving traffic to precomputed backup paths until regular convergence mechanisms move
traffic to a newly computed best path, also known as a post-convergence path. This network convergence may cause short microloops
between two directly or indirectly connected devices in the topology. Microloops are caused when different nodes in the network
calculate alternate paths at different times and independently of each other. For instance, if a node converges and sends
traffic to a neighbor node, which has not converged yet, traffic may loop between the two nodes.
Microloops may or may not result in traffic loss. If the duration of a microloop is short, that is the network converges quickly,
packets may loop for a short duration before their time-to-live (TTL) expires. Eventually, the packets will get forwarded
to the destination. If the duration of the microloop is long, that is one of the routers in the network is slow to converge,
packets may expire their TTL or the packet rate may exceed the bandwidth, or the packets might be out of order, and packets
may get dropped.
Microloops that are formed between a failed device and its neighbors are called local uloops, whereas microloops that are
formed between devices that are multiple hops away are called remote uloops. Local uloops are usually seen in networks where
local loop-free alternate (LFA) path is not available. In such networks, remote LFAs provide backup paths for the network.
The information discussed above can be illustrated with the help of an example topology as shown in the following figure.
The assumptions in this example are as follows:
The default metrics is 10 for each link except for the link between Node 3 and Node 6, which has a metric of 50. The order
of convergence with SPF backoff delays on each node is as follows:
Node 3—50 milliseconds
Node 1—500 milliseconds
Node 2—1 second
Node 2—1.5 seconds
A packet sent from Node 3 to Node 9, the destination, traverses via Node 6.
If a link is established between Node 6 and Node 7, the shortest path for a packet from Node 3 to Node 9 would be Node 1,
Node 2, Node 7, and Node 6 before the packet reaches the destination, Node 9.
The following figure shows the Forwarding Information Base (FIB) table in each node before the link between Node 6 and Node
7 is established. The FIB entry contains the prefix of the destination node (Node 9) and the next hop.
When the link between Node 6 and Node 7 comes up, microloops occur for the links based on the order of convergence of each
node. In this example, Node 3 converges first with Node 1 resulting in a microloop between Node 3 and Node 1. Then, Node 1
converges next resulting in a microloop between Node 1 and Node 2. Next, Node 2 converges next resulting in a microloop between
Node 2 and Node 7. Finally, Node 7 converges resolving the microloop and the packet reaches the destination Node 9, as shown
in the following figure.
Adding the SPF convergence delay, microloop results in a loss of connectivity for 1.5 seconds, which is the convergence duration
specified for node 7.
Segment Routing and Microloops
The ISIS - SR: uLoop Avoidance feature supports the following scenarios:
Link-up or link-down for point-to-point links and a LAN segment with two nodes
Link cost decrease or increase when a node is up or down due to the overload bit being set or unset
The microloop avoidance segment-routing command must be enabled on a node to prevent microloops.
How Segment Routing Prevents Microloops?
Using the example used to explain microloops, this section explains how to segment routing prevents microloops. Node 3 in
the example is enabled with the microloop avoidance segment-routing command. After the link between Node 6 and Node 7 comes up, Node 3 computes a new microloop on the network.
Instead of updating the FIB table, Node 3 builds a dynamic loop-free alternate (LFA) SR TE policy for the destination (Node
9) using a list of segments IDs, which include the prefix segment ID (SID) of Node 7, which is 16007, and the adjacency segment
ID (SID) of Node 6, which is 24076.
So, the SR TE policy enables a packet from Node 3 reaches its destination Node 9, without the risk of microloop until the
network converges. Finally, Node 3 updates the FIB for the new path.
Use the protected keyword with the microloop avoidance segment-routing command, to enable microloop avoidance for protected prefixes only. The microloop avoidance rib-update-delaymilliseconds command can be used to configure the delay in milliseconds for a node to wait before updating the node’s forwarding table
and stop using the microloop avoidance policy. The default value for the RIB delay is 5000 milliseconds.
How to Enable ISIS - SR: uLoop Avoidance
Enabling Microloop Avoidance
The following is a sample configuration code snippet to enable microloop avoidance.
Use the show isis rib and show ip route commands to check if the repair path exists or not.
Router# show isis rib 20.20.20.0 255.255.255.0
IPv4 local RIB for IS-IS process sr
IPV4 unicast topology base (TID 0, TOPOID 0x0) =================
Repair path attributes:
DS - Downstream, LC - Linecard-Disjoint, NP - Node-Protecting
PP - Primary-Path, SR - SRLG-Disjoint
20.20.20.0/24 prefix attr X:0 R:0 N:0 prefix SID index 2 - Bound (ULOOP EP)
[115/L2/130] via 77.77.77.77(MPLS-SR-Tunnel5), from 44.44.44.44, tag 0,
LSP[2/5/29]
prefix attr: X:0 R:0 N:0
SRGB: 16000, range: 8000 prefix-SID index: None
(ULOOP_EP)(installed)
- - - - - -
[115/L2/130] via 16.16.16.6(Ethernet2/0), from 44.44.44.44, tag 0, LSP[2/5/29]
prefix attr: X:0 R:0 N:0
SRGB: 16000, range: 8000 prefix-SID index: None
(ALT)
Router# show ip route 20.20.20.0
Routing entry for 20.20.20.0/24
Known via "isis", distance 115, metric 130, type level-2
Redistributing via isis sr
Last update from 77.77.77.77 on MPLS-SR-Tunnel5, 00:00:43 ago
SR Incoming Label: 16002 via SRMS
Routing Descriptor Blocks:
* 77.77.77.77, from 44.44.44.44, 00:00:43 ago, via MPLS-SR-Tunnel5,
* prefer-non-rib-labels, merge-labels
Route metric is 130, traffic share count is 1
MPLS label: 16002
MPLS Flags: NSF
Additional References for ISIS - SR: uLoop Avoidance
“IS-IS Overview and Basic Configuration” module in the IP Routing: ISIS Configuration Guide
ISIS Local Microloop Protection
“ISIS Local Microloop Protection” module in the IP Routing: ISIS Configuration Guide
Standards/RFCs
Standard/RFC
Title
draft-francois-rtgwg-segment-routing-uloop-00
Loop avoidance using Segment Routing
Feature Information for ISIS - SR: uLoop Avoidance
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 ISIS - SR: uLoop Avoidance
Feature Name
Releases
Feature Information
ISIS - SR: uLoop Avoidance
Cisco IOS XE Everest 16.6.1
The ISIS - SR: uLoop Avoidance feature extends the ISIS Local Microloop Protection feature thereby preventing the occurrences
of microloops during network convergence after a link-down event or link-up event.
The following commands were introduced or modified: microloop avoidance, microloop avoidance rib-update-delay, show mpls traffic tunnel.