Investigating Cisco's built-in TDR

By stretch | Friday, March 28, 2008 at 4:59 p.m. UTC

I love finding stuff like this. In the course of my daily Internet browsing, today I came across this post from a while back on the CCNP Recertification blog. It turns out a number of Cisco switches (apparently the 3560/3750, and some 4500 and 6500 modules) have a TDR embedded in each interface. How cool is that?

Cisco's documentation shows the simple but very handy two-part command syntax.

Switch# test cable-diagnostics tdr interface g0/1
TDR test started on interface Gi0/1
A TDR test can take a few seconds to run on an interface
Use 'show cable-diagnostics tdr' to read the TDR results.

Switch# sh cable-diagnostics tdr int g0/1
TDR test last run on: March 01 00:09:06

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Gi0/1     auto  Pair A     20   +/- 4  meters N/A         Open                
                Pair B     20   +/- 4  meters N/A         Open                
                Pair C     21   +/- 4  meters N/A         Open                
                Pair D     20   +/- 4  meters N/A         Open                

This output shows a cable approximately 20 meters in length connected to interface G0/1, with nothing attached to the far end. If you're like me, your first thought is "very cool, but is it accurate?" I grabbed a couple spare cables of various lengths and set about an unscientific benchmark. I measured each cable in three manners: by hand, with my Fluke TDR, and with a Catalyst 3560G-24PS-S. My observed results are below.

Cable       Length      Fluke   3560 
----------------------------------------------
A           69 ft       69 ft   20 +/- 4m (~66 ft)
B           21 ft       21 ft   6 +/- 4m  (~20 ft)
C           83 ft       83 ft   25 +/- 4m (~82 ft)

As you can see, the 3560 is impressively accurate, even without its allowed 4m variance. My next consideration was whether a TDR test would disrupt interface operation. Trying it on a live port while running a constant ping yielded no observable effect, not even a brief disconnection pop-up. This is clearly a very handy tool. I only wish Cisco would do more to publicize cool features like this.

About the Author

Jeremy Stretch is a network engineer living in the Raleigh-Durham, North Carolina area. He is known for his blog and cheat sheets here at Packet Life. You can reach him by email or follow him on Twitter.

Comments


Mba7eth (guest)
September 30, 2008 at 10:50 p.m. UTC

Can this get the full length of a cable as it is connect from the switch ---> to the patch panel ---> to the user office ?


Tassos (guest)
October 20, 2008 at 1:05 p.m. UTC

On a 7600 with WS-X6748-GE-TX, there is disruption on the traffic :(. On a 3750 i didn't see any.


Tim Walsh (guest)
November 14, 2008 at 6:10 p.m. UTC

Definately saw a drop on my 3560, also got the following result:

CNPAS226#sh cable-diagnostics tdr int g0/1
TDR test last run on: November 14 18:06:36

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- -----------
Gi0/1     100M  Pair A     N/A                Pair A      Normal
               Pair B     N/A                Pair B      Normal
               Pair C     180  +/- 2  meters Pair C      Short
               Pair D     164  +/- 2  meters Pair D      Short

Jonas (guest)
January 6, 2009 at 10:15 p.m. UTC

That's a really cool feature. Seems to work only with gig interfaces, though - bummer :)


narvek (guest)
January 7, 2010 at 4:55 p.m. UTC

This works on one of my 2960's with 100Mb too. Although I did have something plugged into it far side - no packets dropped on testing. Impressed!

Cisco IOS Software, C2960 Software (C2960-LANBASE-M), Version 12.2(25)SEE3, RELE ASE SOFTWARE (fc2)

DARWIN_SW2#sh cable-diagnostics tdr int fa0/3
TDR test last run on: June 29 00:44:25

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Fa0/3     100M  Pair A     0    +/- 15 meters Pair A      Normal
                Pair B     0    +/- 15 meters Pair B      Normal
                Pair C     N/A                Pair C      Not Supported
                Pair D     N/A                Pair D      Not Supported

Chris S (guest)
June 10, 2010 at 9:14 a.m. UTC

On some of my 2960 switches, I get length "N/A" when I have lost connectivity to the end-node. Has anyone found what this means - other than the switch couldn't determine the length?


mont0073
December 22, 2011 at 8:36 p.m. UTC

There was a drop on 6500 with 6748s as well. Should have scrolled down to the comments before trying it....


John Blizzard (guest)
April 16, 2012 at 9:01 p.m. UTC

This is a list of some of the findings I have gotten from testing with a 2960 switch:

While testing a port with a POE attached:
POE will 'sometimes' add one meter to length, with or without power.

Normal port with nothing attached and a 3ft patch cord: (sometimes with poe attached)

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Fa0/2     auto      Pair A     1    +/- 1  meters N/A         Open
                Pair B     1    +/- 1  meters N/A         Open
                    Pair C     N/A                N/A         Not Supported
                    Pair D     N/A                N/A         Not Supported

Normal port with 5 ft patch cord: (also with 3ft patch cord and POE attached)

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Fa0/2     auto      Pair A     2    +/- 1  meters N/A         Open
                    Pair B     2    +/- 1  meters N/A         Open
                    Pair C     N/A                N/A         Not Supported
                    Pair D     N/A                N/A         Not Supported

Normal with 5ft patch cord and POE attached:

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Fa0/2     auto      Pair A     3    +/- 1  meters N/A         Open
                    Pair B     3    +/- 1  meters N/A         Open
                    Pair C     N/A                N/A         Not Supported
                    Pair D     N/A                N/A         Not Supported

Normal with 42ft cable and device plugged in:

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Fa0/2     100M      Pair A     15   +/- 15 meters Pair A      Normal
                    Pair B     15   +/- 15 meters Pair B      Normal
                    Pair C     N/A                Pair C      Not Supported
                    Pair D     N/A                Pair D      Not Supported

I have not found a definite reason for the N/A response on active ports (Pair A, Pair B) but it is usually due to a defective NIC.
Hope this helps!


Fuss
May 16, 2012 at 2:50 p.m. UTC

I've done some investigation with regard to using a Gigabit Crossover cable and a Straight Through cable and TDR on a Cisco 2960, and came across some interesting things.

PART I:
Tests using a Crossover cable, type "Gigabit T568B crossover, All four pairs crossed" (see Wikipedia) of 2 meter in length:

1) From Gig0/1 on 2960 to a Gig0/23 port on 3750:

2960#show cable-diagnostics tdr interface gigabitEthernet 0/1
TDR test last run on: April 16 03:44:36

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Gi0/1     1000M Pair A     0    +/- 10 meters Pair A      Normal
                Pair B     0    +/- 10 meters Pair B      Normal
                Pair C     0    +/- 10 meters Pair C      Normal
                Pair D     0    +/- 10 meters Pair D      Normal
2960#

2) From Gig0/1 on 2960 to Gig8 port on Linksys SRW2016:

2960#show cable-diagnostics tdr interface gigabitEthernet 0/1
TDR test last run on: April 16 03:47:05

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Gi0/1     1000M Pair A     0    +/- 10 meters Pair B      Normal
                Pair B     0    +/- 10 meters Pair A      Normal
                Pair C     0    +/- 10 meters Pair D      Normal
                Pair D     0    +/- 10 meters Pair C      Normal
2960#
Notice the difference in remote pairs!

3) From Gig0/1 on 2960 to 10/100 port on a CPE device:

2960#show cable-diagnostics tdr interface gigabitEthernet 0/1
TDR test last run on: April 16 03:45:09

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Gi0/1     auto  Pair A     N/A                Pair A      Normal
                Pair B     N/A                Pair B      Normal
                Pair C     2    +/- 2  meters Pair C      Short
                Pair D     1    +/- 2  meters Pair D      Short
2960#

4) From Fa0/40 on 2960 to 10/100 port on a CPE device:

2960#show cable-diagnostics tdr interface fastEthernet 0/40
TDR test last run on: April 16 04:16:47

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Fa0/40    100M  Pair A     0    +/- 15 meters Pair A      Normal
                Pair B     0    +/- 15 meters Pair B      Normal
                Pair C     N/A                Pair C      Not Supported
                Pair D     N/A                Pair D      Not Supported
2960#

PART II:
Then, all tests were repeated with a Straight-Through cable of 3 meter in length.

1) From Gig0/1 on 2960 to a Gig0/23 port on 3750:

2960#show cable-diagnostics tdr interface gigabitEthernet 0/1
TDR test last run on: April 16 03:50:16

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Gi0/1     1000M Pair A     0    +/- 10 meters Pair B      Normal
                Pair B     0    +/- 10 meters Pair A      Normal
                Pair C     0    +/- 10 meters Pair D      Normal
                Pair D     0    +/- 10 meters Pair C      Normal
2960#

2) From Gig0/1 on 2960 to Gig8 port on Linksys SRW2016:

2960#show cable-diagnostics tdr interface gigabitEthernet 0/1
TDR test last run on: April 16 03:48:46

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Gi0/1     1000M Pair A     0    +/- 10 meters Pair A      Normal
                Pair B     0    +/- 10 meters Pair B      Normal
                Pair C     0    +/- 10 meters Pair C      Normal
                Pair D     0    +/- 10 meters Pair D      Normal
2960#

3) From Gig0/1 on 2960 to 10/100 port on a CPE device:

2960#show cable-diagnostics tdr interface gigabitEthernet 0/1
TDR test last run on: April 16 03:51:37

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Gi0/1     100M  Pair A     N/A                Pair A      Normal
                Pair B     N/A                Pair B      Normal
                Pair C     2    +/- 2  meters Pair C      Short
                Pair D     2    +/- 2  meters Pair D      Short
2960#

4) From Fa0/40 on 2960 to 10/100 port on a CPE device:

2960#show cable-diagnostics tdr interface fastEthernet 0/40
TDR test last run on: April 16 04:18:15

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Fa0/40    100M  Pair A     4    +/- 15 meters Pair B      Normal
                Pair B     4    +/- 15 meters Pair A      Normal
                Pair C     N/A                Pair D      Not Supported
                Pair D     N/A                Pair C      Not Supported
2960#

Bala (guest)
March 8, 2013 at 12:37 p.m. UTC

Thanks a lot... Really useful...


Steve Dodds (guest)
November 7, 2013 at 4:57 p.m. UTC

I ran the command from a 2960S and I noticed that the pair lengths are different with status Normal and +/- 0. Here is the output:

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Gi1/0/41  1000M Pair A     18   +/- 0  meters Pair A      Normal
                Pair B     20   +/- 0  meters Pair B      Normal
                Pair C     20   +/- 0  meters Pair C      Normal
                Pair D     20   +/- 0  meters Pair D      Normal

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Gi1/0/42  1000M Pair A     19   +/- 0  meters Pair A      Normal
                Pair B     20   +/- 0  meters Pair B      Normal
                Pair C     20   +/- 0  meters Pair C      Normal
                Pair D     21   +/- 0  meters Pair D      Normal

Why would it show the pair lengths different but the pair status is normal?


Louis (guest)
December 12, 2013 at 10:48 p.m. UTC

And here you can see what it looks like what it looks like when there is a problem.
This link's line status was staying up, but protocol was dropping for about 1 min every 23 minutes for 6 days straight until we uncovered the cabling issue thanks to this fantastic command!

ECI-RKWL-SW-01#show cable-diagnostics tdr interface g0/24
TDR test last run on: December 12 16:29:31

Interface Speed Local pair Pair length        Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Gi0/24    100M  Pair A     0    +/- 10 meters Pair B      Short/Crosstalk     
                Pair B     N/A                Pair A      Normal              
                Pair C     N/A                Pair D      Normal              
                Pair D     N/A                Pair C      Normal      

Allen Watson (guest)
March 25, 2014 at 2:30 p.m. UTC

RE: Steve Dodds

The difference in length is due to the amount of twist, it differs in each pair to help reduce crosstalk. the orange and green pairs have more twist per inch than the blue and brown pairs.


Matthew Farrenkopf (guest)
March 20, 2015 at 2:54 p.m. UTC

Looks to me like the "N/A" for pairs C and D are because y'all are running the test on a 10/100 port and 10/100 only uses two pair for signaling. Gig uses all four.


Rodrigo Borges (guest)
January 28, 2016 at 3:00 p.m. UTC

Hello Mr. Stretch.

Very Good Article.

I would like to ask for your help on a project I'm developing with cisco 2960 and 3560G switches. The TDR test when running the cable injects a sign, right? I would like to measure this signal. You know what are the characteristics of it?

In fact, I'm trying to measure some kind of variation that occurs in the interface when I run any command. Do you know any command to make the interface be with a level of dc voltage?

Thank you very much your attention.

Comments have closed for this article due to its age.