About Segment Routing Microloop Avoidance

Microloops are brief packet loops that occur in the network following a topology change (link down, link up, or metric change events). Microloops are caused by the non-simultaneous convergence of different nodes in the network. If nodes converge and send traffic to a neighbor node that has not converged yet, traffic may be looped between these two nodes, resulting in packet loss, jitter, and out-of-order packets.

The Segment Routing Microloop Avoidance feature detects if microloops are possible following a topology change. If a node computes that a microloop could occur on the new topology, the node creates a loop-free SR-TE policy path to the destination using a list of segments. After the RIB update delay timer expires, the SR-TE policy is replaced with regular forwarding paths.

Segment Routing Microloop Avoidance Limitations

For IS-IS, Segment Routing Microloop Avoidance is not supported when incremental shortest path first (ISPF) is configured.

Configure Segment Routing Microloop Avoidance for IS-IS

This task describes how to enable Segment Routing Microloop Avoidance and set the Routing Information Base (RIB) update delay value for IS-IS.

Before you begin

Ensure that the following topology requirements are met:

  • Router interfaces are configured as per the topology.

  • Routers are configured with IS-IS.

  • Segment routing for IS-IS is configured. See Enabling Segment Routing for IS-IS Protocol.

  • Enter the following commands in global configuration mode:

    Router(config)# ipv4 unnumbered mpls traffic-eng Loopback0
    Router(config)# mpls traffic-eng
    Router(config-mpls-te)# exit
    Router(config)#
    

Procedure

  Command or Action Purpose
Step 1

configure

Example:


RP/0/RP0/CPU0:router# configure

Enters mode.

Step 2

router isis instance-id

Example:


RP/0/RP0/CPU0:router(config)# router isis 1

Enables IS-IS routing for the specified routing instance, and places the router in router configuration mode.

You can change the level of routing to be performed by a particular routing instance by using the is-type router configuration command.

Step 3

address-family ipv4 [ unicast ]

Example:


RP/0/RP0/CPU0:router(config-isis)# address-family ipv4 unicast 

Specifies the IPv4 address family and enters router address family configuration mode.

Step 4

microloop avoidance segment-routing

Example:


RP/0/RP0/CPU0:router(config-isis-af)# microloop avoidance segment-routing 

Enables Segment Routing Microloop Avoidance.

Step 5

microloop avoidance rib-update-delay delay-time

Example:


RP/0/RP0/CPU0:router(config-isis-af)# microloop avoidance rib-update-delay 3000 

Specifies the amount of time the node uses the microloop avoidance policy before updating its forwarding table. The delay-time is in milliseconds. The range is from 1-60000. The default value is 5000.