Enhanced Tracking Support

Finding Feature Information

Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table.

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.

Restrictions for Enhanced Object Tracking

Enhanced Object Tracking is not stateful switchover (SSO)-aware and cannot be used with Hot Standby Routing Protocol (HSRP), Virtual Router Redundancy Protocol (VRRP), or Gateway Load Balancing Protocol (GLBP) in SSO mode.

Information About Enhanced Tracking Support

Feature Design of Enhanced Object Tracking

The Enhanced Object Tracking feature provides complete separation between the objects to be tracked and the action to be taken by a client when a tracked object changes. Thus, several clients such as HSRP, VRRP, or GLPB can register their interest with the tracking process, track the same object, and each take different action when the object changes.

Each tracked object is identified by a unique number that is specified on the tracking CLI. Client processes use this number to track a specific object.

The tracking process periodically polls the tracked objects and notes any change of value. The changes in the tracked object are communicated to interested client processes, either immediately or after a specified delay. The object values are reported as either up or down.

You can configure a combination of tracked objects in a list and a flexible method for combining objects using Boolean logic. This functionality includes the following capabilities:

  • Threshold––The tracked list can be configured to use a weight or percentage threshold to measure the state of the list. Each object in a tracked list can be assigned a threshold weight. The state of the tracked list is determined by whether the threshold has been met.

  • Boolean "and" function––When a tracked list has been assigned a Boolean "and" function, each object defined within a subset must be in an up state so that the tracked object can become up.

  • Boolean "or" function––When the tracked list has been assigned a Boolean "or" function, at least one object defined within a subset must be in an up state so that the tracked object can become up.

With CSCtg75700, a maximum of 1000 objects can be tracked. Although 1000 tracked objects can be configured, each tracked object uses CPU resources. The amount of available CPU resources on a router depends on variables such as traffic load and how other protocols are configured and run. The ability to use 1000 tracked objects depends on the available CPU. Testing should be conducted on site to ensure that the service works under the specific site traffic conditions.

Interface State Tracking

An IP-routing object is considered up when the following criteria exist:

  • IP routing is enabled and active on the interface.

  • The interface line-protocol state is up.

  • The interface IP address is known. The IP address is configured or received through Dynamic Host Configuration Protocol (DHCP) or IP Control Protocol (IPCP) negotiation.

Interface IP routing will go down when one of the following criteria exists:

  • IP routing is disabled globally.

  • The interface line-protocol state is down.

  • The interface IP address is unknown. The IP address is not configured or received through DHCP or IPCP negotiation.

Tracking the IP-routing state of an interface using the track interface ip routing command can be more useful in some situations than just tracking the line-protocol state using the track interface line-protocol command, especially on interfaces for which IP addresses are negotiated. For example, on a serial interface that uses the PPP, the line protocol could be up (link control protocol [LCP] negotiated successfully), but IP could be down (IPCP negotiation failed).

The track interface ip routing command supports the tracking of an interface with an IP address acquired through any of the following methods:

  • Conventional IP address configuration

  • PPP/IPCP

  • DHCP

  • Unnumbered interface

You can configure Enhanced Object Tracking to consider the carrier-delay timer when tracking the IP-routing state of an interface by using the carrier-delay command in tracking configuration mode.

Scaled Route Metrics

The track ip route command enables tracking of a route in the routing table. If a route exists in the table, the metric value is converted into a number. To provide a common interface to tracking clients, normalize route metric values to the range from 0 to 255, where 0 is connected and 255 is inaccessible. Scaled metrics can be tracked by setting thresholds. Up and down state notification occurs when the thresholds are crossed. The resulting value is compared against threshold values to determine the tracking state as follows:

  • State is up if the scaled metric for that route is less than or equal to the up threshold.

  • State is down if the scaled metric for that route is greater than or equal to the down threshold.

Tracking uses a per-protocol configurable resolution value to convert the real metric to the scaled metric. The table below shows the default values used for the conversion. You can use the track resolution command to change the metric resolution default values.

Table 1 Metric Conversion

Route Type1

Metric Resolution

Static

10

Enhanced Interior Gateway Routing Protocol (EIGRP)

2560

Open Shortest Path First (OSPF)

1

Intermediate System-to-Intermediate System (IS-IS)

10

1 RIP is scaled directly to the range from 0 to 255 because its maximum metric is less than 255.

For example, a change in 10 in an IS-IS metric results in a change of 1 in the scaled metric. The default resolutions are designed so that approximately one 2-Mbps link in the path will give a scaled metric of 255.

Scaling the very large metric ranges of EIGRP and IS-IS to a 0 to 255 range is a compromise. The default resolutions will cause the scaled metric to exceed the maximum limit with a 2-Mb/s link. However, this scaling allows a distinction between a route consisting of three Fast-Ethernet links and a route consisting of four Fast-Ethernet links.

Benefits of Enhanced Object Tracking

  • Increases the availability and speed of recovery of a network.

  • Decreases the number of network outages and their duration.

  • Enables client processes such as VRRP and GLBP to track objects individually or as a list of objects. Prior to the introduction of this functionality, the tracking process was embedded within HSRP.

How to Configure Enhanced Tracking Support

Tracking the Line-Protocol State of an Interface

SUMMARY STEPS

    1.    enable

    2.    configure terminal

    3.    track timer interface {seconds | msec milliseconds}

    4.    track object-number interface type number line-protocol

    5.    carrier-delay

    6.    delay {up seconds [down [seconds] | [up seconds] down seconds]}

    7.    end

    8.    show track object-number


DETAILED STEPS
     Command or ActionPurpose
    Step 1 enable


    Example:
    Device> enable
     

    Enables privileged EXEC mode.

    • Enter your password if prompted.

     
    Step 2 configure terminal


    Example:
    Device# configure terminal
     

    Enters global configuration mode.

     
    Step 3 track timer interface {seconds | msec milliseconds}


    Example:
    Device(config)# track timer interface 5 
     

    (Optional) Specifies the interval in which the tracking process polls the tracked object.

    • The default interval that the tracking process polls interface objects is 1 second.

    Note   

    All polling frequencies can be configured down to 500 milliseconds, overriding the minimum 1-second interval configured using the msec keyword and milliseconds argument.

     
    Step 4 track object-number interface type number line-protocol


    Example:
    Device(config)# track 3 interface Gigabitethernet 0/0 line-protocol
     

    Tracks the line-protocol state of an interface and enters tracking configuration mode.

     
    Step 5 carrier-delay


    Example:
    Device(config-track)# carrier-delay
     

    (Optional) Enables EOT to consider the carrier-delay timer when tracking the status of an interface.

     
    Step 6 delay {up seconds [down [seconds] | [up seconds] down seconds]}


    Example:
    Device(config-track)# delay up 30
     

    (Optional) Specifies a period of time (in seconds) to delay communicating state changes of a tracked object.

     
    Step 7 end


    Example:
    Device(config-track)# end
     

    Exits to privileged EXEC mode.

     
    Step 8 show track object-number


    Example:
    Device# show track 3
     

    (Optional) Displays tracking information.

    • Use this command to verify the configuration.

     

    Example

    The following example shows the state of the line protocol on an interface when it is tracked:

    Device# show track 3
    
    Track 3
       Interface GigabitEthernet 0/0 line-protocol
       Line protocol is Up
         1 change, last change 00:00:05
       Tracked by:
         HSRP GigabitEthernet 0/3 1

    Tracking the IP-Routing State of an Interface

    SUMMARY STEPS

      1.    enable

      2.    configure terminal

      3.    track timer interface {seconds | msec milliseconds}

      4.    track object-number interface type number ip routing

      5.    carrier-delay

      6.    delay {up seconds [down seconds] | [up seconds] down seconds}

      7.    end

      8.    show track object-number


    DETAILED STEPS
       Command or ActionPurpose
      Step 1 enable


      Example:
      Device> enable
       

      Enables privileged EXEC mode.

      • Enter your password if prompted.

       
      Step 2 configure terminal


      Example:
      Device# configure terminal
       

      Enters global configuration mode.

       
      Step 3 track timer interface {seconds | msec milliseconds}


      Example:
      Device(config)# track timer interface 5
       

      (Optional) Specifies the interval in which the tracking process polls the tracked object.

      • The default interval that the tracking process polls interface objects is 1 second.

      Note   

      All polling frequencies can be configured down to 500 milliseconds, overriding the minimum 1-second interval configured using the msec keyword and milliseconds argument.

       
      Step 4 track object-number interface type number ip routing


      Example:
      Device(config)# track 1 interface Gigabitethernet 0/0 ip routing
       

      Tracks the IP-routing state of an interface and enters tracking configuration mode.

      • IP-route tracking tracks an IP route in the routing table and the ability of an interface to route IP packets.

       
      Step 5 carrier-delay


      Example:
      Device(config-track)# carrier-delay
       

      (Optional) Enables EOT to consider the carrier-delay timer when tracking the status of an interface.

       
      Step 6 delay {up seconds [down seconds] | [up seconds] down seconds}


      Example:
      Device(config-track)# delay up 30
       

      (Optional) Specifies a period of time (in seconds) to delay communicating state changes of a tracked object.

       
      Step 7 end


      Example:
      Device(config-track)# end
       

      Returns to privileged EXEC mode.

       
      Step 8 show track object-number


      Example:
      Device# show track 1
       

      Displays tracking information.

      • Use this command to verify the configuration.

       

      Example

      The following example shows the state of IP routing on an interface when it is tracked:

      Device# show track 1
      
      Track 1
         Interface GigabitEthernet 0/1 ip routing
         IP routing is Up
           1 change, last change 00:01:08
         Tracked by:
           HSRP GigabitEthernet 0/3 1

      Tracking IP-Route Reachability

      Perform this task to track the reachability of an IP route. A tracked object is considered up when a routing table entry exists for the route and the route is accessible.

      SUMMARY STEPS

        1.    enable

        2.    configure terminal

        3.    track timer ip route {seconds | msec milliseconds}

        4.    track object-number ip route ip-address/prefix-length reachability

        5.    delay {up seconds [down seconds] | [up seconds] down seconds}

        6.    ip vrf vrf-name

        7.    end

        8.    show track object-number


      DETAILED STEPS
         Command or ActionPurpose
        Step 1 enable


        Example:
        Device> enable
         

        Enables privileged EXEC mode.

        • Enter your password if prompted.

         
        Step 2 configure terminal


        Example:
        Device# configure terminal
         

        Enters global configuration mode.

         
        Step 3 track timer ip route {seconds | msec milliseconds}


        Example:
        Device(config)# track timer ip route 20
         

        (Optional) Specifies the interval in which the tracking process polls the tracked object.

        • The default interval that the tracking process polls IP-route objects is 15 seconds.

        Note   

        All polling frequencies can be configured down to 500 milliseconds, overriding the minimum 1-second interval configured using the msec keyword and milliseconds argument.

         
        Step 4 track object-number ip route ip-address/prefix-length reachability


        Example:
        Device(config)# track 4 ip route 10.16.0.0/16 reachability
         

        Tracks the reachability of an IP route and enters tracking configuration mode.

         
        Step 5 delay {up seconds [down seconds] | [up seconds] down seconds}


        Example:
        Device(config-track)# delay up 30
         

        (Optional) Specifies a period of time (in seconds) to delay communicating state changes of a tracked object.

         
        Step 6 ip vrf vrf-name


        Example:
        Device(config-track)# ip vrf VRF2
         

        (Optional) Configures a VPN routing and forwarding (VRF) table.

         
        Step 7 end


        Example:
        Device(config-track)# end
         

        Returns to privileged EXEC mode.

         
        Step 8 show track object-number


        Example:
        Device# show track 4
         

        (Optional) Displays tracking information.

        • Use this command to verify the configuration.

         

        Example

        The following example shows the state of the reachability of an IP route when it is tracked:

        Device# show track 4
        
        Track 4
           IP route 10.16.0.0 255.255.0.0 reachability
           Reachability is Up (RIP)
             1 change, last change 00:02:04
           First-hop interface is Ethernet0/1
           Tracked by:
             HSRP Ethernet0/3 1

        Tracking the Threshold of IP-Route Metrics

        SUMMARY STEPS

          1.    enable

          2.    configure terminal

          3.    track timer ip route {seconds | msec milliseconds}

          4.    track resolution ip route {eigrp | isis | ospf | static} resolution-value

          5.    track object-number ip route ip-address/prefix-length metric threshold

          6.    delay {up seconds [down seconds] | [up seconds] down seconds}

          7.    ip vrf vrf-name

          8.    threshold metric {up number [down number] | down number [up number ]}

          9.    end

          10.    show track object-number


        DETAILED STEPS
           Command or ActionPurpose
          Step 1 enable


          Example:
          Device> enable
           

          Enables privileged EXEC mode.

          • Enter your password if prompted.

           
          Step 2 configure terminal


          Example:
          Device# configure terminal
           

          Enters global configuration mode.

           
          Step 3 track timer ip route {seconds | msec milliseconds}


          Example:
          Device(config)# track timer ip route 20
           

          (Optional) Specifies the interval in which the tracking process polls the tracked object.

          • The default interval that the tracking process polls IP-route objects is 15 seconds.

          Note   

          All polling frequencies can be configured down to 500 milliseconds, overriding the minimum 1-second interval configured using the msec keyword and milliseconds argument.

           
          Step 4 track resolution ip route {eigrp | isis | ospf | static} resolution-value


          Example:
          Device(config)# track resolution ip route eigrp 300
           

          (Optional) Specifies resolution parameters for a tracked object.

          • Use this command to change the default metric resolution values.

           
          Step 5 track object-number ip route ip-address/prefix-length metric threshold


          Example:
          Device(config)# track 6 ip route 10.16.0.0/16 metric threshold
           

          Tracks the scaled metric value of an IP route to determine if it is above or below a threshold and enters tracking configuration mode.

          • The default down value is 255, which equates to an inaccessible route.

          • The default up value is 254.

           
          Step 6 delay {up seconds [down seconds] | [up seconds] down seconds}


          Example:
          Device(config-track)# delay up 30
           

          (Optional) Specifies a period of time (in seconds) to delay communicating state changes of a tracked object.

           
          Step 7 ip vrf vrf-name


          Example:
          Device(config-track)# ip vrf VRF1
           

          (Optional) Configures a VRF table.

           
          Step 8 threshold metric {up number [down number] | down number [up number ]}


          Example:
          Device(config-track)# threshold metric up 254 down 255
           

          (Optional) Sets a metric threshold other than the default value.

           
          Step 9 end


          Example:
          Device(config-track)# end
           

          Exits to privileged EXEC mode.

           
          Step 10 show track object-number


          Example:
          Device# show track 6
           

          (Optional) Displays tracking information.

          • Use this command to verify the configuration.

           

          Example

          The following example shows the metric threshold of an IP route when it is tracked:

          Device# show track 6
          
          Track 6
             IP route 10.16.0.0 255.255.0.0 metric threshold
             Metric threshold is Up (RIP/6/102)
               1 change, last change 00:00:08
             Metric threshold down 255 up 254
             First-hop interface is Ethernet0/1
             Tracked by:
               HSRP Ethernet0/3 1

          Configuration Examples for Enhanced Tracking Support

          Example: Interface Line Protocol

          In the following example, the tracking process is configured to track the line-protocol state of GigabitEthernet interface 1/0/0. HSRP on GigabitEthernet interface 0/0/0 then registers with the tracking process to be informed of any changes to the line-protocol state of GigabitEthernet interface 1/0/0. If the line protocol on GigabitEthernet interface 1/0/0 goes down, the priority of the HSRP group is reduced by 10.

          Router A Configuration

          Device(config)# track 100 interface GigabitEthernet1/0/0 line-protocol
          !
          Device(config)# interface GigabitEthernet0/0/0
          Device(config-if)# ip address 10.1.0.21 255.255.0.0
          Device(config-if)# standby 1 preempt
          Device(config-if)# standby 1 ip 10.1.0.1
          Device(config-if)# standby 1 priority 110
          Device(config-if)# standby 1 track 100 decrement 10
          

          Router B Configuration

          Device(config)# track 100 interface GigabitEthernet1/0/0 line-protocol
          !
          Device(config)# interface GigabitEthernet0/0/0
          Device(config-if)# ip address 10.1.0.22 255.255.0.0
          Device(config-if)# standby 1 preempt
          Device(config-if)# standby 1 ip 10.1.0.1
          Device(config-if)# standby 1 priority 105
          Device(config-if)# standby 1 track 100 decrement 10
          

          Example: Interface IP Routing

          In the following example, the tracking process is configured to track the IP-routing capability of GigabitEthernet interface 1/0/0. HSRP on GigabitEthernet interface 0/0/0 then registers with the tracking process to be informed of any changes to the IP-routing state of GigabitEthernet interface 1/0/0. If the IP-routing state on GigabitEthernet interface 1/0/0 goes down, the priority of the HSRP group is reduced by 10.

          If both serial interfaces are operational, Router A will be the HSRP active router because it has the higher priority. However, if IP on GigabitEthernet interface 1/0/0 in Router A fails, the HSRP group priority will be reduced and Router B will take over as the active router, thus maintaining a default virtual gateway service to hosts on the 10.1.0.0 subnet.

          See the figure below for a sample topology.

          Figure 1. Topology for IP-Routing Support

          Router A Configuration

          Device(config)# track 100 interface GigabitEthernet1/0/0 ip routing
          !
          Device(config)# interface GigabitEthernet0/0/0
          Device(config-if)# ip address 10.1.0.21 255.255.0.0
          Device(config-if)# standby 1 preempt
          Device(config-if)# standby 1 ip 10.1.0.1
          Device(config-if)# standby 1 priority 110
          Device(config-if)# standby 1 track 100 decrement 10
          

          Router B Configuration

          Device(config)# track 100 interface GigabitEthernet1/0/0 ip routing
          !
          Device(config)# interface GigabitEthernet0/0/0
          Device(config-if)# ip address 10.1.0.22 255.255.0.0
          Device(config-if)# standby 1 preempt
          Device(config-if)# standby 1 ip 10.1.0.1
          Device(config-if)# standby 1 priority 105
          Device(config-if)# standby 1 track 100 decrement 10
          

          Example: IP-Route Reachability

          In the following example, the tracking process is configured to track the reachability of IP route 10.2.2.0/24:

          Router A Configuration

          Device(config)# track 100 ip route 10.2.2.0/24 reachability 
          !
          Device(config)# interface GigabitEthernet0/0/0 
          Device(config-if)# ip address 10.1.1.21 255.255.255.0
          Device(config-if)# standby 1 preempt
          Device(config-if)# standby 1 ip 10.1.1.1 
          Device(config-if)# standby 1 priority 110 
          Device(config-if)# standby 1 track 100 decrement 10 
          

          Router B Configuration

          Device(config)# track 100 ip route 10.2.2.0/24 reachability
          !
          Device(config)# interface GigabitEthernet0/0/0 
          Device(config-if)# ip address 10.1.1.22 255.255.255.0
          Device(config-if)# standby 1 preempt
          Device(config-if)# standby 1 ip 10.1.1.1 
          Device(config-if)# standby 1 priority 105
          Device(config-if)# standby 1 track 100 decrement 10
          

          Example: IP-Route Threshold Metric

          In the following example, the tracking process is configured to track the threshold metric of IP route 10.2.2.0/24:

          Router A Configuration

          Device(config)# track 100 ip route 10.2.2.0/24 metric threshold
          ! 
          Device(config)# interface GigabitEthernet0/0/0 
          Device(config-if)# ip address 10.1.1.21 255.255.255.0
          Device(config-if)# standby 1 preempt
          Device(config-if)# standby 1 ip 10.1.1.1 
          Device(config-if)# standby 1 priority 110 
          Device(config-if)# standby 1 track 100 decrement 10 
          

          Router B Configuration

          Device(config)# track 100 ip route 10.2.2.0/24 metric threshold
          ! 
          Device(config)# interface GigabitEthernet0/0/0 
          Device(config-if)# ip address 10.1.1.22 255.255.255.0 
          Device(config-if)# standby 1 preempt
          Device(config-if)# standby 1 ip 10.1.1.1 
          Device(config-if)# standby 1 priority 105 
          Device(config-if)# standby 1 track 100 decrement 10
          

          Additional References

          Related Documents

          Related Topic

          Document Title

          Cisco IOS commands

          Cisco IOS Master Commands List, All Releases

          Embedded Event Manager

          Embedded Event Manager Overview

          HSRP concepts and configuration tasks

          Configuring HSRP

          GLBP concepts and configuration tasks

          Configuring GLBP

          IP SLAs commands

          Cisco IOS IP SLAs Command Reference

          VRRP concepts and configuration tasks

          Configuring VRRP

          GLBP, HSRP, and VRRP commands

          Cisco IOS IP Application Services Command Reference

          Standards

          Standards

          Title

          No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.

          MIBs

          MIBs

          MIBs Link

          No new or modified MIBs are supported by this feature, and support for existing MIBs has not been modified by this feature.

          To locate and download MIBs for selected platforms, Cisco software releases, and feature sets, use Cisco MIB Locator found at the following URL:

          http:/​/​www.cisco.com/​go/​mibs

          RFCs

          RFCs

          Title

          No new or modified RFCs are supported by this feature, and support for existing RFCs has not been modified by this feature.

          Technical Assistance

          Description

          Link

          The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.

          http:/​/​www.cisco.com/​cisco/​web/​support/​index.html

          Additional References

          Related Documents

          Related Topic

          Document Title

          Cisco IOS commands

          Cisco IOS Master Commands List, All Releases

          Embedded Event Manager

          Embedded Event Manager Overview

          HSRP concepts and configuration tasks

          Configuring HSRP

          GLBP concepts and configuration tasks

          Configuring GLBP

          IP SLAs commands

          Cisco IOS IP SLAs Command Reference

          VRRP concepts and configuration tasks

          Configuring VRRP

          GLBP, HSRP, and VRRP commands

          Cisco IOS IP Application Services Command Reference

          Standards

          Standards

          Title

          No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.

          MIBs

          MIBs

          MIBs Link

          No new or modified MIBs are supported by this feature, and support for existing MIBs has not been modified by this feature.

          To locate and download MIBs for selected platforms, Cisco software releases, and feature sets, use Cisco MIB Locator found at the following URL:

          http:/​/​www.cisco.com/​go/​mibs

          RFCs

          RFCs

          Title

          No new or modified RFCs are supported by this feature, and support for existing RFCs has not been modified by this feature.

          Technical Assistance

          Description

          Link

          The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.

          http:/​/​www.cisco.com/​cisco/​web/​support/​index.html

          Feature Information for Enhanced Tracking Support

          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 . An account on Cisco.com is not required.
          Table 2 Feature Information for Enhanced Tracking Support

          Feature Name

          Releases

          Feature Information

          Enhanced Tracking Support

          Cisco IOS XE Release 3.6E

          The Enhanced Tracking Support feature separates the tracking mechanism from HSRP and creates a separate standalone tracking process that can be used by other Cisco IOS processes as well as HSRP. This feature allows tracking of other objects in addition to the interface line-protocol state.

          The following commands were introduced or modified by this feature: debug track , delay tracking , ip vrf, show track , standby track , threshold metric , track interface, track ip route, track timer.

          In Cisco IOS XE Release 3.6E, this feature is supported on Cisco Catalyst 3850 Series Switches.