Saturday, October 1, 2022

Configure Link Bundling (Bundle-Ether) and BFD in Cisco NCS 540 Router

Here's a link to configure Link Bundling or a Bundle-Ether interface in a Cisco NCS 540 router. 

You first create a Bundle-Ether (BE) interface and then logically bundle ports.

RP/0/RP0/CPU0:NCS540#configure terminal

RP/0/RP0/CPU0:NCS540(config)#interface ?

  BVI              Bridge-Group Virtual Interface | short name is BV

  Bundle-Ether     Aggregated Ethernet interface(s) | short name is BE

  Bundle-POS       Aggregated POS interface(s) | short name is BP

  FastEthernet     FastEthernet/IEEE 802.3 interface(s) | short name is Fa

  FiftyGigE        FiftyGigabitEthernet/IEEE 802.3 interface(s) | short name is Fi

  FortyGigE        FortyGigabitEthernet/IEEE 802.3 interface(s) | short name is Fo

  FourHundredGigE  FourHundredGigabitEthernet/IEEE 802.3 interface(s) | short name is FH

  GCC0             OTN GCC0 interface(s) | short name is G0

  GCC1             OTN GCC1 interface(s) | short name is G1

  GCC2             OTN GCC2 interface(s) | short name is G2

  GigabitEthernet  GigabitEthernet/IEEE 802.3 interface(s) | short name is Gi

  HundredGigE      HundredGigabitEthernet/IEEE 802.3 interface(s) | short name is Hu

  Loopback         Loopback interface(s) | short name is Lo

  MgmtEth          Ethernet/IEEE 802.3 interface(s) | short name is Mg

  Multilink        Multilink network interface(s) | short name is Ml

  Null             Null interface | short name is Nu

  POS              Packet over SONET/SDH network interface(s) | short name is POS

  SRP              SRP interface(s) | short name is SRP

  Serial           Serial network interface(s) | short name is Se

  TenGigE          TenGigabitEthernet/IEEE 802.3 interface(s) | short name is Te

  TwentyFiveGigE   TwentyFiveGigabitEthernet/IEEE 802.3 interface(s) | short name is TF

  TwoHundredGigE   TwoHundredGigabitEthernet/IEEE 802.3 interface(s) | short name is TH

  preconfigure     Specify a preconfig

  tunnel-ip        GRE/IPinIP Tunnel Interface(s)

  tunnel-ipsec     IPSec Tunnel interface(s) | short name is tsec

  tunnel-mte       MPLS Traffic Engineering P2MP Tunnel interface(s) | short name is tmte

  tunnel-te        MPLS Traffic Engineering Tunnel interface(s) | short name is tt

  tunnel-tp        MPLS Transport Protocol Tunnel interface | short name is tp

RP/0/RP0/CPU0:NCS540(config)#interface Bundle-Ether ?

  <1-65535> 

RP/0/RP0/CPU0:NCS540(config)#interface Bundle-Ether 1

RP/0/RP0/CPU0:NCS540(config-if)#?

  address-family      AFI/SAFI configuration

  apply-group         Apply configuration from a group

  apply-group-append  Append apply-group configuration from a group

  apply-group-remove  Remove a group from apply-group configuration

  arp                 Configure Address Resolution Protocol

  auto-ip-ring        Auto-IP-Ring interface configuration commands

  bandwidth           Set the bandwidth of an interface

  bfd                 BFD configuration on a bundle interface

  bundle              Bundle interface commands

  capture             capture interface packets (platform)(cisco-support)

  clear               Clear the uncommitted configuration

  commit              Commit the configuration changes to running

  dampening           configure state dampening on the given interface

  describe            Describe a command without taking real actions

  description         Set description for this interface

  do                  Run an exec command

  dot1q               802.1Q VLAN configuration

  end                 Exit from configure mode

  ethernet            Ethernet per-interface configuration commands

  ethernet-services   Ethernet related services

  exclude-group       Exclude apply-group configuration from a group

  exclude-item        Negate a command or set its defaults

  exit                Exit from this submode

  flow                Netflow configuration

  ipv4                IPv4 interface subcommands

  ipv6                IPv6 interface subcommands

  l2transport         Enable Layer 2 transport and enter its configuration submode

  lacp                Bundle interface LACP commands

  lldp                LLDP interface configuration commands

  load-interval       Specify interval for load calculation for an interface

  local-proxy-arp     Enable local proxy ARP

  logging             Per-interface logging configuration

  mac-accounting      Start per MAC address accounting on the interface

  mac-address         Set the Mac address(xxxx.xxxx.xxxx) on an interface

  mlacp               Multi-chassis LACP per-interface commands

  monitor-session     Monitor-session configuration commands

  mpls                MPLS interface subcommands

  mtu                 Set the MTU on an interface

  no                  Negate a command or set its defaults

  proxy-arp           Enable proxy ARP

  ptp                 Precision Time Protocol config

  pwd                 Commands used to reach current submode

  root                Exit to the global configuration mode

  service-policy      Configure a service policy

  show                Show contents of configuration

  shutdown            shutdown the given interface

  validate            Validate configuration changes without attempting to commit

  vrf                 Set VRF in which the interface operates

RP/0/RP0/CPU0:NCS540(config-if)#

RP/0/RP0/CPU0:NCS540(config-if)#ipv4 address 10.1.1.2 255.255.255.252    // LAYER 3 BE PORT

RP/0/RP0/CPU0:NCS540(config-if)#bundle ?

  lacp-delay      Set the lacp-delay timeout for members of this bundle

  lacp-fallback   Set the lacp-fallback for members of this bundle

  load-balancing  Load balancing commands on a bundle

  logging         logging events for the members of this bundle

  maximum-active  Set a limit on the number of links that can be active

  minimum-active  Set the minimum criteria for the bundle to be active

  shutdown        Bring all links in the bundle down to Standby state

  wait-while      Set the wait-while timeout for members of this bundle

RP/0/RP0/CPU0:NCS540(config-if)#bundle minimum-active ?

  bandwidth  Set the bandwidth (in kbps) needed to bring up this bundle

  links      Set the number of active links needed to bring up this bundle

RP/0/RP0/CPU0:NCS540(config-if)#bundle minimum-active bandwidth ?

  <1-4294967295>  Bandwidth needed to bring up this bundle (in kbps)

  gbps            Set the bandwidth in gbps

  kbps            Set the bandwidth in kbps

  mbps            Set the bandwidth in mbps

RP/0/RP0/CPU0:NCS540(config-if)#bundle minimum-active ?

  bandwidth  Set the bandwidth (in kbps) needed to bring up this bundle

  links      Set the number of active links needed to bring up this bundle

RP/0/RP0/CPU0:NCS540(config-if)#bundle minimum-active links ?

  <1-64>  Number of active links needed to bring up this bundle

RP/0/RP0/CPU0:NCS540(config-if)#bundle minimum-active links 2

RP/0/RP0/CPU0:NCS540(config-if)#bundle minimum-active bandwidth 1000000

RP/0/RP0/CPU0:NCS540(config-if)# no shutdown

RP/0/RP0/CPU0:NCS540(config-if)#

RP/0/RP0/CPU0:NCS540(config-if)#do sh run interface Bundle-Ether 1  

Tue Aug 17 07:11:21.234 UTC

% No such configuration item(s)     // NEED TO APPLY commit

 

RP/0/RP0/CPU0:NCS540(config-if)#show config

Tue Aug 17 07:11:41.841 UTC

Building configuration...

!! IOS XR Configuration 7.x

cdp

interface Bundle-Ether1

 ipv4 address 10.1.1.2 255.255.255.252

 no shutdown

 bundle minimum-active bandwidth 1000000

 bundle minimum-active links 2

 

 

Bundle individual ports to the corresponding BE bundle ID number

 

RP/0/RP0/CPU0:NCS540(config-if)#interface GigabitEthernet0/0/0/1

RP/0/RP0/CPU0:NCS540(config-if)#bundle ?

  id             Add the port to an aggregated interface.

  port-priority  Priority for this port. Lower value is higher priority.

RP/0/RP0/CPU0:NCS540(config-if)#bundle id ?

  <1-65535>  Identifier of the bundle to add the port to.

RP/0/RP0/CPU0:NCS540(config-if)#bundle id 1 ?

  mode  Specify the mode of operation.

  <cr> 

RP/0/RP0/CPU0:NCS540(config-if)#bundle id 1 mode ?

  active   Run LACP in active mode over the port.

  inherit  Run LACP as configured in bundle.

  on       Do not run LACP over the port.

  passive  Run LACP in passive mode over the port.

RP/0/RP0/CPU0:NCS540(config-if)#bundle id 1 mode active

RP/0/RP0/CPU0:NCS540(config-if)#bundle port-priority 1    // SET THE PRIORITY OF THE ACTIVE LINK (LOWEST VALUE PREFERRED); Gi0/0/0/1 IS ACTIVE

RP/0/RP0/CPU0:NCS540(config-if)#no shutdown

RP/0/RP0/CPU0:NCS540(config-if)#

RP/0/RP0/CPU0:NCS540(config-if)#interface GigabitEthernet0/0/0/2

RP/0/RP0/CPU0:NCS540(config-if)#bundle id 1 mode active

RP/0/RP0/CPU0:NCS540(config-if)#bundle port-priority 2    // Gi0/0/0/2 IS STANDBY

RP/0/RP0/CPU0:NCS540(config-if)# no shutdown

RP/0/RP0/CPU0:NCS540(config-if)#

RP/0/RP0/CPU0:NCS540(config-if)#commit

Tue Aug 17 07:13:34.975 UTC

RP/0/RP0/CPU0:NCS540(config-if)#

RP/0/RP0/CPU0:NCS540(config-if)#do sh run interface Bundle-Ether 1

Tue Aug 17 07:13:52.194 UTC

interface Bundle-Ether1

 ipv4 address 10.1.1.2 255.255.255.252

 bundle minimum-active bandwidth 1000000

bundle minimum-active links 2

!

 

RP/0/RP0/CPU0:NCS540(config-if)#do show run interface GigabitEthernet0/0/0/1

Tue Aug 17 07:14:08.516 UTC

interface GigabitEthernet0/0/0/1

 bundle id 1 mode active

 bundle port-priority 1

 cdp

!

RP/0/RP0/CPU0:NCS540(config-if)#do show run interface GigabitEthernet0/0/0/2

Tue Aug 17 07:14:08.516 UTC

interface GigabitEthernet0/0/0/2

 bundle id 1 mode active

 bundle port-priority 2

 cdp

 

 

RP/0/RP0/CPU0:NCS540#show lacp Bundle-Ether 1

Tue Aug 17 07:15:12.384 UTC

State: a - Port is marked as Aggregatable.

       s - Port is Synchronized with peer.

       c - Port is marked as Collecting.

       d - Port is marked as Distributing.

       A - Device is in Active mode.

       F - Device requests PDUs from the peer at fast rate.

       D - Port is using default values for partner information.

       E - Information about partner has expired.

 

Bundle-Ether1

 

  Port          (rate)  State    Port ID       Key    System ID

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

Local

  Gi0/0/0/1        30s  ascdA--- 0x8000,0x0001 0x0001 0x8000,b0-a6-51-35-34-12

   Partner         30s  ascdA--- 0x8000,0x0007 0x0001 0x8000,74-26-ac-f3-db-34

 

  Gi0/0/0/2        30s  ascdA--- 0x8000,0x0001 0x0001 0x8000,b0-a6-51-35-34-ab

   Partner         30s  ascdA--- 0x8000,0x0007 0x0001 0x8000,74-26-ac-f3-db-cd

 

  Port                  Receive    Period Selection  Mux       A Churn P Churn

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

Local

  Gi0/0/0/1             Current    Slow   Selected   Distrib   None    None  

  Gi0/0/0/2            Current    Slow   Selected   Distrib   None    None  


RP/0/RP0/CPU0:NCS540#show bundle ?

  Bundle-Ether       Aggregated Ethernet interface(s) | short name is BE

  Bundle-POS         Aggregated POS interface(s) | short name is BP

  brief              Display a brief output of all configured bundles

  consistency        Show consistency, inconsistency and programming errors(cisco-support)

  infrastructure     Show infrastructure information for bundles and members.(cisco-support)

  load-balancing     Show load-balancing information for bundles and members.

  protect            Show protect information for bundles.

  scheduled-actions  Show scheduled actions for bundles

  status             Check the current status of the bundle subsystem

  trace              Show trace data for Bundle Manager(cisco-support)

  |                  Output Modifiers

  <cr>              

RP/0/RP0/CPU0:NCS540#show bundle bundle-ether ?

  <1-65535> 

RP/0/RP0/CPU0:NCS540#show bundle bundle-ether 1

Sun Aug 22 03:40:28.254 UTC

 

Bundle-Ether1

  Status:                                    Up

  Local links <active/standby/configured>:   1 / 1 / 2

  Local bandwidth <effective/available>:     1000000 (1000000) kbps

  MAC address (source):                      b0a6.5135.abcd (Chassis pool)

  Inter-chassis link:                        No

  Minimum active links / bandwidth:          2 / 1000000 kbps

  Maximum active links:                      64

  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:                                  Operational

    State:                                   Up

    Mode:                                    ietf

    Fast detect:                             Enabled

    Start timer:                             Off

    Neighbor-unconfigured timer:             Off

    Preferred min interval:                  150 ms

    Preferred multiple:                      3

    Destination address:                     10.1.1.1

  IPv6 BFD:                                  Not operational

 

  Port                  Device           State        Port ID         B/W, kbps

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

  Gi0/0/0/1             Local            Active       0x8000, 0x0001     1000000

      Link is Active

 Gi0/0/0/2            Local            Active       0x8000, 0x0001     1000000

      Link is Active

 

Here's a link to configure BFD on a Bundle interface in Cisco NCS 540 router. You configure the BFD settings under the Bundle-Ether interface.

RP/0/RP0/CPU0:NCS540#configure terminal
Thu Aug 19 02:18:43.587 UTC
RP/0/RP0/CPU0:NCS540(config)#interface Bundle-Ether1
RP/0/RP0/CPU0:NCS540(config-if)#bfd ?
  address-family  Set configuration for a given address family
  mode            Standard used for per-member BFD
RP/0/RP0/CPU0:NCS540(config-if)#bfd mode ?
  cisco  Use Cisco standard for BoB
  ietf   Use IETF standard for BoB
RP/0/RP0/CPU0:NCS540(config-if)#bfd mode ietf
Thu Aug 19 02:23:03.820 UTC
Please note that existing BFD sessions need to be brought down and re-created for the new mode to take effect.
RP/0/RP0/CPU0:NCS540(config-if)#bfd address-family ?
  ipv4  Set configuration for the IPv4 address family
  ipv6  Set configuration for the IPv6 address family
RP/0/RP0/CPU0:NCS540(config-if)#bfd address-family ipv4 ?
  destination       Set the destination address for the BFD session
  echo              Set the configuration for the echo mode of BFD
  fast-detect       Enable fast detection using BFD on bundle members
  minimum-interval  Set the preferred minimum interval for the BFD session
  multiplier        Set the preferred multiplier for the BFD session
  timers            Set the timers that determine when a BFD session defaults to down
RP/0/RP0/CPU0:NCS540(config-if)#bfd address-family ipv4 multiplier ?        
  <2-50>  The preferred multiplier for the BFD session
RP/0/RP0/CPU0:NCS540(config-if)#bfd address-family ipv4 multiplier 3
RP/0/RP0/CPU0:NCS540(config-if)#bfd address-family ipv4 destination ?
  A.B.C.D  IPv4 destination address for the BFD session
RP/0/RP0/CPU0:NCS540(config-if)#bfd address-family ipv4 destination 10.1.1.1
RP/0/RP0/CPU0:NCS540(config-if)#bfd address-family ipv4 fast-detect ?
  <cr>  
RP/0/RP0/CPU0:NCS540(config-if)#bfd address-family ipv4 fast-detect
RP/0/RP0/CPU0:NCS540(config-if)#bfd address-family ipv4 minimum-interval ?
  <3-30000>  The preferred minimum interval (in ms) for the BFD session
RP/0/RP0/CPU0:NCS540(config-if)#bfd address-family ipv4 minimum-interval 150
RP/0/RP0/CPU0:NCS540(config-if)#commit
Thu Aug 19 02:20:11.238 UTC

RP/0/RP0/CPU0:NCS540#show run interface Bundle-Ether1
Thu Aug 19 02:21:01.323 UTC
interface Bundle-Ether1

 bfd mode ietf

 bfd address-family ipv4 multiplier 3

 bfd address-family ipv4 destination 10.1.1.2

 bfd address-family ipv4 fast-detect

 bfd address-family ipv4 minimum-interval 150


RP/0/RP0/CPU0:NCS540#show bfd ?

  agent              Information directly from Agent(cisco-support)

  agents             Agents registered with BFD Server(cisco-support)

  all                Both ipv4 and ipv6 address families

  bootstrap          Display information about session bootstrap module(cisco-support)

  bundles            Bundle information(cisco-support)

  client             Clients registered with BFD Server

  counters           Counters

  gsp                BFD process GSP statistics and history(cisco-support)

  ha                 HA Information(cisco-support)

  index-mgrs         Index manager information(cisco-support)

  interfaces         Interface state block information(cisco-support)

  ipv4               IPv4 Address Family

  ipv6               IPv6 Address Family

  issu               ISSU Information(cisco-support)

  label              Label

  location           Specify a location

  lpts               Display information about LPTS-LRD interactions(cisco-support)

  mib                MIB related information

  multihop           Multihop only

  multipath          Multiple Path Session Information

  reflector          S-BFD responder(cisco-support)

  relation           Relationship information of sessions

  session            Session information

  session-array      Session array information(cisco-support)

  singlehop          Singlehop only

  statistics         Statistics information(cisco-support)

  summary            Summary Information

  target-identifier  SBFD Local/Remote target identifier

  timer-groups       Timer group information(cisco-support)

  trace              Trace data(cisco-support)

  |                  Output Modifiers

  <cr>              

RP/0/RP0/CPU0:NCS540#show bfd ipv4 ?

  agent      Information directly from Agent(cisco-support)

  location   Specify a location

  multihop   Multihop only

  multipath  Multiple Path Session Information

  session    Session information

  singlehop  Singlehop only

  |          Output Modifiers

  <cr>      

 

RP/0/RP0/CPU0:NCS540#show bfd ipv4 session

Sun Aug 22 07:14:26.612 UTC

Interface           Dest Addr           Local det time(int*mult)      State    

                                    Echo             Async   H/W   NPU    

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

Gi0/0/0/1           10.1.1.1  0s(0s*0)         450ms(150ms*3)   UP       

                                                             Yes   0/0/CPU0      

Gi0/0/0/2           10.1.1.1  0s(0s*0)         450ms(150ms*3)   UP       

                                                             Yes   0/0/CPU0      

BE1                 10.1.1.1  n/a              n/a              UP       

                                                             No    n/a