XpressLearn Home

1 Star2 Stars3 Stars4 Stars5 Stars (4 votes, average: 4.00 out of 5)
Loading ... Loading ...
Link State Tracking

A server has two nics, each plugged into separate switch stacks and the OS is configured for NIC teaming. Basically, with NIC teaming used in fail-over mode, the OS controls which of the two NICS have the mac address bound to it. If one NIC fails, the operating system moves the mac address to the other adapter.In cases like this, everything works as advertised. But what about when the chassis switch stays up, but the uplink from that switch to the outside world goes down (perhaps the upstream switch went down or the link was unplugged)? In that case, the link from the chassis switch to the blade’s NIC is still up, and therefore the NIC teaming software in the OS does not know that a problem has occurred and will not move the traffic to the other link. In situations like this, we need to implement link state tracking.

Link state tracking is pretty easy to configure; you define one or more upstream ports and one or more downstream ports. The upstream port(s) are the ports that uplink to the rest of the network. The downstream port(s) are the ports that connect back to the servers.

Here’s an example. We have a Cisco switch that has a Gigabit EtherChannel port group defined as an uplink out to the network distribution switch:

interface Port-Channel1
description Uplink to network backbone
switchport trunk encapsulation dot1q
switchport trunk native vlan 2
switchport trunk allowed vlan 2-4094
switchport mode trunk
link state group 1 upstream

Note the “link state group 1 upstream” command, which marks this port channel as an upstream port. If all the links in this port channel go down (thus making the port channel itself go down), then the switch will notify downstream ports in the same group to mark themselves as down also.

The member ports of this port channel would not have the “link state” command present:

interface GigabitEthernet0/18
description Port group member for uplink to network
switchport trunk encapsulation dot1q
switchport trunk native vlan 2
switchport trunk allowed vlan 2-4094
switchport mode trunk
channel-group 1 mode on

So for the ports on the access switch that are connecting to the servers to the network, we have this configuration:

interface GigabitEthernet0/10
description Web server NIC
switchport access vlan 2
switchport mode access
link state group 1 downstream
spanning-tree portfast

Note the “link state group 1 downstream” command, which marks this port as a downstream port from the Port-Channel1 interface. If Port-Channel1 goes down (because all the member links in Port-Channel1 also went down), then GigabitEthernet0/10 will also go down. Because GigabitEthernet0/10 went down, the NIC teaming software running in the OS will fail the traffic over to a different NIC, presumably a NIC that connects to the redundant access switch.

You’ll also need the global “link state track 1” global command to enable link state tracking.

To view the status of link state tracking:

Switch#show link state group detail

Link State Group: 1      Status: Enabled, Up
Upstream Interfaces   : Po1(Up)
Downstream Interfaces : Gi0/10(Up) Gi0/11(Up)

Author Info:

 
 
Scott's profession is a Senior Network Engineer at a Healthcare related company in Nashville, TN. When he is not trying to secure a network or come up with a design for a new project, he enjoys spending time with his family. You can find out more at: http://www.scottp.net

Similar Posts:

 

One Response to “Link State Tracking”

  1. Dealing with NSRP, BGP and link-layer shenanigans « NetSack Says:

    [...] also possible to employ a neat trick on Cisco switches called Link-State Tracking. This tutorial goes into some detail about this feature. The idea would be to speed up failover time in the case [...]

Leave a Reply