The (Unofficial) CCNP-SP Study Guide
  • About
    • About the Author
    • About This Study Guide
  • MPLS
    • LDP
      • LDP Transport Address
      • LDP Conditional Advertisement
      • LDP Authentication
      • LDP/IGP Sync
      • LDP Session Protection
    • MPLS-TE
      • MPLS-TE Basics, Pt. 1 (TED)
      • MPLS-TE Basics, Pt.2 (RSVP)
      • MPLS-TE Basics, Pt.3 (CSPF)
      • MPLS-TE Basics, Pt.4 (Routing)
      • MPLS-TE Fast Reroute (FRR)
      • MPLS-TE with OSPF
    • Unified MPLS
    • Segment Routing
      • Introduction, Theory Pt.1
      • Introduction, Lab (OSPF) Pt.2
      • Introduction, Lab (ISIS) Pt. 3
      • Multi-Area/Level Segment Routing
      • Segment Routing using BGP
      • Migrating LDP to SR
      • LDP/SR Interworking
      • TI-LFA Pt. 1 (Theory)
      • TI-LFA Pt. 2 (Implementation)
      • TI-LFA Pt. 3 (Node and SRLG Protection)
      • SR-TE Pt. 1 (Overview)
      • SR-TE Pt. 2 (Creating an SR-TE Policy)
      • SR-TE Pt. 3 (Using a PCE)
      • SR-TE Pt. 4 (Automated Steering)
      • SR-TE Pt. 5 (On-Demand Nexthop)
      • SR-TE Pt. 6 (Flex Algo)
    • MPLS OAM
      • Classic Traceroute Behavior in MPLS Networks
      • LSP Ping
      • LSP Traceroute
  • Routing
    • BGP
      • BGP Synchronization
      • BGP Load Sharing (Multipath)
      • An Intuitive Look at Path Attributes
      • AS Path Prepending on XE and XR
      • RPL
    • BGP Security
      • BGP TTL Security, Pt. 1
      • BGP TTL Security, Pt. 2 (IOS-XE)
      • BGP TTL Security, Pt. 3 (IOS-XR)
      • BGP MD5 Authentication
      • BGP Maximum Prefixes
      • BGP RFD (Route Flap Dampening)
      • RTBH
      • Flowspec
      • BGPsec
    • L3VPN
      • An In-Depth Look at RD and RT, Pt. 1
      • An In-Depth Look at RD and RT, Pt. 2
      • An In-Depth Look at RD and RT, Pt. 3
      • An In-Depth Look at RD and RT, Pt. 4
      • Inter-AS L3VPN Pt. 1, Overview
      • Inter-AS L3VPN Pt. 2, Option A
      • Inter-AS L3VPN Pt. 3, Option B
      • Inter-AS L3VPN Pt. 4, Option C
      • CSC (Carrier Supporting Carrier)
      • PE NAT
    • OSPF
      • Type 7 to Type 5 Translation
      • OSPF Authentication
      • Troubleshooting OSPF Adjacencies
      • OSPFv3 LSA Types
      • OSPFv3 LSAs Example (Single Area)
    • ISIS
      • The Potential for Asymmetric Routing with Multi-Area ISIS
      • Interarea Routing is Distance-Vector
      • Basic ISIS - LSPDB
      • Multitopology
      • What is the role of CLNS and CLNP in ISIS?
      • Troubleshooting ISIS Adjacencies
    • IPv6 Transition
      • Overview
      • NAT64
      • 6to4
      • 6RD (IPv6 Rapid Deployment)
      • DS Lite (Dual Stack Lite)
      • MAP (Mapping of Address and Port)
      • Tunneling IPv6 Dynamic Routing Protocols over IPv4
    • Multicast
      • Introduction
      • IP and MAC Addressing
      • Tree Formation and Packet Forwarding
      • IGMP
      • PIM-DM (Dense Mode)
      • PIM-SM (Sparse Mode)
      • PIM-SM SPT Switchover
      • PIM-SM Tunnel Interfaces
      • PIM DR and the Assert Message
      • PIM-SM RP Discovery
      • PIM-BiDir
      • PIM-SSM (Source-Specific Multicast)
      • Interdomain Multicast (PIM-SM)
      • IPv6 Multicast
      • mVPN Introduction
      • mVPN Profile 0
      • mVPN Profile 1
      • Multicast Routing on IOS-XR
  • L2VPN & Ethernet
    • IOS-XE Ethernet Services
      • Service Instances
      • E-Line
      • E-LAN (VPLS)
      • E-Tree
      • E-Access
      • VPLS with BGP Autodiscovery
      • Martini/Kompella Circuits
    • EVPN
      • Introduction to EVPN
      • Learning EVPN VXLAN First
      • E-Line (EVPN VPWS)
      • E-Line (EVPN VPWS) on IOS-XR
      • E-Line (EVPN VPWS) Multi-Homed
      • E-LAN (EVPN Single-Homed)
    • Carrier Ethernet
      • 802.1ah (MAC-in-MAC)
      • 802.3ah (Ethernet OAM)
      • 802.1ag (CFM)
      • Cisco REP (Resilient Ethernet Protocol)
      • ITU G.8032 ERPS (Ethernet Ring Protection Switching)
  • Security
    • CoPP (Control Plane Policing)
    • LPTS (Local Packet Transport Services)
  • Misc
    • QoS
      • QoS Introduction (Part 1)
      • QoS Tools Overview and QoS Models (Part 2)
      • QoS Classification and Marking (Part 3)
      • QoS Queuing/Congestion Management (Part 4)
      • QoS Shaping and Policing (Part 5)
      • QoS for IPv6
      • MPLS QoS Basics
      • MPLS QoS Modes
      • MPLS TE QoS (DS-TE)
      • MPLS TE CBTS/PBTS
    • Automation and Assurance
      • NSO
      • NSO Command Cheat Sheet
      • Intro to YANG/NETCONF
      • YANG In-Depth
      • NETCONF In-Depth
      • RESTCONF
      • Model-Driven Telemetry
      • Automation Tool Comparison
      • Netflow
      • SNMP
    • Virtualization
      • NFV (Network Function Virtualization)
      • OpenStack
    • Transport
      • xPON
      • SONET/SDH
      • WDM
      • 4G and 5G RAN
    • High Availability (HA)
      • NSF/GR
      • NSR
      • NSF/NSR Whitepapers
      • BFD
      • Link Aggregation on IOS-XE
      • Link Aggregation on IOS-XR
    • IOS Software Overview
  • Labs
    • Lab Challenges
      • How to Use These Labs
      • Basic LDP
      • Advanced LDP
      • BGP Security
      • Unified MPLS
      • BGP Fundamentals
      • Ethernet Services
      • L3VPN Extranet
      • Multicast
      • Inter-area OSPF
      • ISIS
      • MPLS-TE
      • Control Plane Policing
      • QoS
Powered by GitBook
On this page
  1. Misc
  2. High Availability (HA)

Link Aggregation on IOS-XR

The IOS-XR term for link aggregation is a link bundle. A link bundle can use LACP or a static “on” ether channel in which there is no protection or negotiation mechanism. In a link bundle, multiple interfaces are bundled together and act like a single physical point-to-point link.

You can bundle multiple links from different line cards, giving you line card redundancy. The bandwidth of a bundle is the aggregate of all member interfaces’ bandwidth. So a bundle of two 10gig interfaces has a bandwidth of 20gig from the OS’s perspective.

In IOS-XR you can bundle up to 64 individual links. By default only 8 links will be active but you can change this with the below command:

RP/0/RP0/CPU0:XR1(config)#int be1
RP/0/RP0/CPU0:XR1(config-if)#bundle maximum-active links ?
  <1-64>  Maximum number of active links in this bundle
RP/0/RP0/CPU0:XR1(config-if)#bundle maximum-active links

If you configure the max-active links as a number less than the total links, then you will have an active/passive setup in which some links are passive and waiting to become active.

The ASR 9000 series supports mixed speed bundles, so you can bundle 1G and 10G interfaces together, but the ratio cannot exceed 10. So you cannot bundle 1G and 100G interfaces together.

You configure a bundle interface as follows:

<member interfaces>
 bundle id # mode active|passive|on

You then configure the bundle port as if it was a physical interface:

int BE1
 ip address 1.1.1.1/30

When using mode on it is called Etherchannel. It does not use LACP, instead it statically bundles the port unconditionally. If you do not specify the mode, it will default to mode on.

RP/0/RP0/CPU0:XR1(config)#int gi0/0/0/3
RP/0/RP0/CPU0:XR1(config-if)#bundle id 3
RP/0/RP0/CPU0:XR1(config-if)#commit
RP/0/RP0/CPU0:XR1(config-if)#do sho run int gi0/0/0/3
Wed Oct 12 02:28:21.483 UTC
interface GigabitEthernet0/0/0/3
 bundle id 3 mode on

By default the LACP timer is the slow timer which is 30 seconds. This means that it can take 3x 30sec = 90 secs to detect an indirect link failure! To change this, use the following command on a member interface:

int Gi0/0/0/0
 lacp period short|<100-1000 msec>

This command is a bit counter intuitive, because it tells the peer on this interface what speed to use. So if you leave the other end to the default slow timer, the local system will continue sending at 30 sec intervals, and the peer will send at 1 second intervals. For example, I configured only Gi0/0/0/0 for a short timer in my lab. Notice that only the received LACPDU counter has climbed excessively.

RP/0/RP0/CPU0:XR1#show run int gi0/0/0/0
Wed Oct 12 01:20:01.530 UTC
interface GigabitEthernet0/0/0/0
 bundle id 1 mode active
 lacp period short
!

RP/0/RP0/CPU0:XR1#show lacp counters    
Wed Oct 12 01:20:03.235 UTC

Bundle-Ether1
                            LACPDUs                      Timeouts
Port            Sent        Received    Excess      Expired     Defaulted
--------------  ----------------------------------  ----------------------
Gi0/0/0/0               76         199           0           1           1
Gi0/0/0/1               74          45           0           1           1

You can understand how the short timer works by seeing a pcap of the LACPDU. I’ve set the lacp period short, and the router has set the LACP timeout flag to 1, which indicates a short timeout (1s). When set to 0, it indicates a long timeout (30s). This basically tells the peer “my timeout period is short, so you better start sending quick LACPDUs.” In response the peer immediately starts sending LACPDUs every second.

To view information about the bundle, similar to the show etherchannel sum command on IOS, use the following show command:

RP/0/RP0/CPU0:XR1#show bundle 
Wed Oct 12 02:49:45.495 UTC

Bundle-Ether1
  Status:                                    Up
  Local links <active/standby/configured>:   2 / 0 / 2
  Local bandwidth <effective/available>:     2000000 (2000000) kbps
  MAC address (source):                      0022.6b41.99f4 (Chassis pool)
  Inter-chassis link:                        No
  Minimum active links / bandwidth:          1 / 1 kbps
  Maximum active links:                      24
  Wait while timer:                          2000 ms
  Load balancing:                            
    Link order signaling:                    Not configured
    Hash type:                               Default
    Locality threshold:                      None
  LACP:                                      Operational
    Flap suppression timer:                  Off
    Cisco extensions:                        Disabled
    Non-revertive:                           Disabled
  mLACP:                                     Not configured
  IPv4 BFD:                                  Not operational
  IPv6 BFD:                                  Not configured

  Port                  Device           State        Port ID         B/W, kbps
  --------------------  ---------------  -----------  --------------  ----------
  Gi0/0/0/0             Local            Active       0x8000, 0x0001     1000000
      Link is Active
  Gi0/0/0/1             Local            Active       0x8000, 0x0002     1000000
      Link is Active
  • Note that the max active links here is only 24. I believe this is a limitation of the virtualized platform. On a 9000 series I see a max active links value of 64.

Further Reading

PreviousLink Aggregation on IOS-XENextIOS Software Overview

Last updated 2 years ago

https://www.cisco.com/c/en/us/td/docs/routers/asr9000/software/asr9k-r6-5/interfaces/configuration/guide/b-interfaces-hardware-component-cg-asr9000-65x/b-interfaces-hardware-component-cg-asr9000-65x_chapter_01000.html