10-11-2011 02:57 PM - edited 06-19-2024 06:47 PM
I’m no electrical engineer, (the closest experience I have with electricity is the amount of electrocution I received when I was a child [due to faulty cabling of electrical appliances]) so I will spare readers technical jargons and boring formulas because this guide is not aimed to be published in the International Journal of Mumbo-Jumbo. This guide is to help anyone how to confidently use the TDR feature when troubleshooting basic Layer 1 Ethernet issue.
My knowledge with this feature is based entirely on experience and a lot of trial-and-error.
What is Time-Domain Reflectometer (TDR)?
“A time-domain reflectometer (TDR) is an electronic instrument used to characterize and locate faults in metallic cables (for example, twisted wire pairs, coaxial cables)1.”
For the sake of this document, “TDR testing” and “TDR” are used interchangeably to sow confusion to the un-initiated. They both mean the same.
How can TDR help me?
TDR, in its simplest form, can help you determine IF you have a cable problem, WHICH pair(s) is/are faulty and HOW FAR away the fault is.
Typically, when you have a Layer 1 issue there are a lot of factors to consider:
So you see, dear readers, TDR minimize the guess-work.
Picture this …
Before we begin, let me give you the “lay of the land”. Presume the following scenario:
What model of Cisco switch does TDR work on?
Firstly, not all switch model support TDR. TDR feature first came out with the Catalyst 2960. So here is the list of which ones will work and will not:
Model |
TDR Support |
2960 |
Yes1, 2 |
2960G |
Yes |
2960S |
Yes |
2918 |
Unknown |
2350 |
Unknown |
2360 |
Unknown |
2975 |
Unknown |
3560 |
No |
3560G |
Yes |
3560E/3560X |
Yes |
3750 |
No |
3750G |
Yes |
3750E/3750X |
Yes |
Nexus 2K |
Unknown |
Nexus 5K |
Unknown |
Nexus 7K |
Yes3 |
Sup7E/X4548 |
Yes |
Note:
The list does not include modules/blades for the Catalyst 4000/4500, 5000/5500, 6000/6500 although it is mentioned here that TDR was introduced with IOS Release 12.2 ZY for the Catalyst 6000/6500. It’s not included in the list above because I don’t have the resources to test and verify.
Legacy Cisco Catalyst models 1900, 2900XL/3500XL, 2940/2950/2955, 2948G and 2970 are not supported. Routers are also not supported. I do not have any resources to test router Ethernet Switch Modules (NME, HWIC, EHWIC). Wireless Access Points do not support TDR.
Why doesn’t the FastEthernet-flavoured 3560 and 3750 support TDR and but the cheaper FastEthernet 2960 support TDR?
Base on the time-line, the “plain” (or non-GigabitEthernet copper port) 3560 and 3750 came out BEFORE the 2960. The “chip” for the TDR was included in the design of the 2960. When Cisco released the 3560G and 3750G later, someone made the ultimate decision to include the TDR feature as a standard. Therefore, the plain 3560 and 3750 are the only two series that WON’T HAVE the TDR feature. (Take note reader: Emphasis on the words “WON’T HAVE”)
Any Gotchas I need to be aware of?
The next two Gotcha items are for those who plan to use the TDR feature on Cisco Catalyst 2960 and 2960G (2960S not included):
How to use TDR?
The commands are very simple: One to start the test and the second command to display the result. Here is simple procedure:
See? Easy! Now let’s see what the I results would look like.
Interface |
Speed |
Local pair |
Pair length |
Remote pair |
Pair status |
Gi0/1 |
1000M |
Pair A |
3 +/- 1 meters |
Pair A |
Normal |
Pair B |
3 +/- 1 meters |
Pair B |
Normal |
||
Pair C |
3 +/- 1 meters |
Pair C |
Normal |
||
Pair D |
3 +/- 1 meters |
Pair D |
Normal |
So what does this result above tell us?
Under “Pair status” you can get the following results:
Result |
Explaination |
Normal |
Ideal result you want.
|
Open |
Open circuit. This means that one (or more) pair has “no pin contact”. |
Short |
Short circuit. |
Impedance Mismatched |
Bad cable. For more explanation, go here. |
An ideal result is “Normal”. In practice, whether the remote-end device is FastEthernet or GigabitEthernet, I will never accept a TDR result other than “Normal” in all four pairs.
Cable Pairs explained?
This is how I see what each Pairs control:
Pairs |
Function |
A |
This pair controls whether or not the port should go up or down. |
B |
Protocol-level and controls FastEthernet. |
C |
Power over Ethernet (PoE) |
D |
GigabitEthernet |
More examples
Interface |
Speed |
Local pair |
Pair length |
Remote pair |
Pair status |
Gi0/11 |
100M |
Pair A |
13 +/- 1 meters |
Pair B |
Normal |
Pair B |
12 +/- 1 meters |
Pair A |
Normal |
||
Pair C |
0 +/- 1 meters |
Pair D |
Open |
||
Pair D |
0 +/- 1 meters |
Pair C |
Open |
Normally, this result would freak me out. Look at the items in RED. Pairs C and D are reporting a cable value of “0”. Next I move to the “Pair status” and it’s reported as an Open circuit. No pin contact. Whao! But look at the speed. It’s 100 Mbps. So it’s normal … I guess.
But wait. What if the remote-end side (Red) client is a GigabitEthernet. So where is the faulty cabling? Which one of the patch cables? Or is it a horizontal cabling? Does the client support GigabitEthernet or not?
Here’s another clue: Look at the length of the cable for Pair A and B. It’s reporting around 12 to 13 metres. Experience has taught me that my Local-end Side (LeS) cable doesn’t exceed two metres. So that rules out my cable, however the horizontal cabling is more than 10 metres. So what’s between the horizontal cabling and the remote-end client? You have three suspects: 1) The remote-end punch block; 2) the remote-end patch cable; and 3) remote-end client.
Culprit was the remote-end punch block and the horizontal cabling: Cable contractors only terminated two pairs.
Never ask a boy to do a man’s job!
Interface |
Speed |
Local pair |
Pair length |
Remote pair |
Pair status |
Gi1/0/48 |
auto |
Pair A |
149 +/- 1 meters |
Pair B |
Normal |
Pair B |
151 +/- 1 meters |
Pair A |
Normal |
||
Pair C |
35 +/- 1 meters |
Pair D |
Short/Impedance Mism |
||
Pair D |
21 +/- 1 meters |
Pair C |
Short/Impedance Mism |
Its results like the ones above that makes me want to cry.
Ok, I look under “Pair status” and I see “Short/Impedance Mism” for Pair C and D. No question about it. It’s bad cabling. This is not what makes me want to cry. Look at under “Pair length” of Pair A and B. NOW cry.
Should I be worried?
Interface |
Speed |
Local pair |
Pair length |
Remote pair |
Pair status |
Fa0/39 |
100M |
Pair A |
6 +/- 1 meters |
N/A |
Open |
Pair B |
49 +/- 1 meters |
N/A |
Open |
||
Pair C |
N/A |
N/A |
Not Supported |
||
Pair D |
N/A |
N/A |
Not Supported |
Looking at the result, I can confidently say that the appliance was a 48-port Cisco Catalyst 2960. How? Look under “Interface”. Look at “Pair status” for Pair C and D. Only the plain 2960 FastEthernet ports can support TDR.
But look at “Pair status” for Pairs A and B. What does that mean?
It means that the remote-end (Red) patch cable is missing.
Weird things have happened before
I’ve taken the opportunity to do limited testing on TDR on a 4510R+E. The chassis has a Sup7E and with a X4548-RJ45V+ line card (IOS version 03.01.01.SG). The result(s) are very, very weird. Oh, by the way, the TDR testing on this setup takes 60 seconds. 60 seconds! Good grief! I have no idea whether the Sup7E or the line card is the factor.
The sample below is coming from a GOOD cable:
Interface |
Speed |
Local pair |
Pair length |
Remote pair |
Pair status |
Gi2/36 |
1Gbps |
1-2 |
29 +/-10m |
Unknown |
Fault |
3-6 |
30 +/-10m |
Unknown |
Fault |
||
4-5 |
29 +/-10m |
Unknown |
Fault |
||
7-8 |
30 +/-10m |
Unknown |
Fault |
And the sample below is coming from a BAD cable:
Interface |
Speed |
Local pair |
Pair length |
Remote pair |
Pair status |
Gi2/37 |
0Mbps |
1-2 |
56 +/-10m |
Unknown |
Fault |
3-6 |
0 m |
Unknown |
Fault |
||
4-5 |
56 +/-10m |
Unknown |
Fault |
||
7-8 |
59 +/-10m |
Unknown |
Fault |
As you can see, whether or not you have a good or a bad cable the result from the “Remote pair” and “Status” can be deceiving. The ONLY WAY to determine if you have a bad cable issue or not is to look at the “Speed” and the output to the “Pair length”.
I am suspecting that the misleading result of the “Remote pair” and the “Pair status” is an IOS bug.
(25 August 2023) IMPORTANT ADDENDUM:
Starting with IOS-XE (aka Polaris) version 16.X.X (and later), TDR is completely broken. I strongly urge people to stop relying TDR results from Catalyst switches if platform is running 16.X.X (and later), 17.X.X (and later) because the result is neither accurate nor reliable. The Bug IDs are: CSCvw97924 & CSCwd97177
Screenshots (below) of broken TDR results:
-- END OF TRANSMISSION --
Leo,
Excellent.
Just what I needed
Thank you very much, Alex.
Glad to be of some form of assistance.
So, what results should we expect from a Gigabit port that is configured to 10 Mbps to be compatible with a device. Would we expect all Normal results?
Hi Matt,
If you have a GigabitEthernet port and you forced the port to negotiate to 10 Mbps, then TDR will NOT work. When you run the TDR combination commands on a port forced to negotiate to 10 Mbps, all the result will be "Not Supported".
Regardless, you should get Pair A and B as "Normal".
There is a BUG in this IOS. When you run TDR on a 2960-series family of switches (2960/G/S) and at the same time running 15.0(2)SE, your port will get "STUCK". This is a COSMETIC bug. If you issue the command of "sh interface <INTERFACE>" you'll see a disturbing output at the end of the first line that goes like this:
<INTERFACE> is up, line protocol is up (connected: TDR running)
I can easily duplicate this with a 3750E and 2960, 2960G and 2960S.
Hello leolaohoo.
Could it be that the same bug affects C3560CPD switch?
And BTW: is this bug effectively recognized from Cisco? Or should I open a TAC case for it?
Thanks a lot.
F.
Could it be that the same bug affects C3560CPD switch?
Sorry for the late response. I just saw this post.
The answer to your question is YES. As long as you are running 15.0(2)SE. I didn't bother raising a TAC Case because it's cosmetic. I also believe that not alot of people will be using IOS version 15.0(2)SE anyway.
And BTW: is this bug effectively recognized from Cisco?
Not sure.
In my testing the bug in 15.0(2)SE is not just cosmetic. It also prevents you from getting the TDR results in some cases. All ports that I've attempted to run the TDR against that were in an up/up state resulted in a Pair Status of "Not Completed". However if the port is up/down then the TDR test will run successfully. The cosmetic bug still applies though, even to the successful up/down TDR test. I have TDR tests that I ran on numerous 3750x stacks several months ago that have never completed. I've verified these results on all my 3750x stacks running 15.0(2)SE. These stacks previously had a 12.2 release on them and I know for sure that 3 of them were working fine at the time.
Here's the results of the broken TDR test on the up/up port:
Interface Speed Local pair Pair length Remote pair Pair status --------- ----- ---------- ------------------ ----------- -------------------- Gi1/0/5 1000M Pair A N/A N/A Not Completed Pair B N/A N/A Not Completed Pair C N/A N/A Not Completed Pair D N/A N/A Not Completed
Hi Justin,
Thanks for this information.
I have checked this "issue" on the newer 15.0(2)SE1 and it looks like it may have been fixed.
However, due to other people reporting CPU hog errors on 15.0(2)SE1, I still don't recommend anyone using IOS versions 12.2(58)SE, 15.0(1)SE and 15.0(2)SE and later versions.
I agree. In retrospect I wish I'd never upgraded to IOS 15. It's been painful for the CPU utilization on all my switches. I'm not sure if I can role back to an older release now that the ASICs have been flashed.
I'm opening a ticket on 15.0(2)SE right now to report the bug. I searched the bug DB and couldn't find anything. I won't let them close it until the bug is documented.
Hello everybody.
I'm quite new to this TDR stuff (which is really a cool feature indeed!), so I'm a bit confused about following results:
vxs12a1#show cable-diagnostics tdr int gi0/23
TDR test last run on: January 31 10:01:26
Interface Speed Local pair Pair length Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Gi0/23 100M Pair A 24 +/- 4 meters Pair A Normal
Pair B 27 +/- 4 meters Pair B Normal
Pair C 27 +/- 4 meters Pair C Short
Pair D 28 +/- 4 meters Pair D Short
vxs12a1#test cable-diagnostics tdr int gi0/23
Link state may be affected during TDR test
TDR test started on interface Gi0/23
A TDR test can take a few seconds to run on an interface
Use 'show cable-diagnostics tdr' to read the TDR results.
vxs12a1#show cable-diagnostics tdr int gi0/23
TDR test last run on: January 31 10:26:56
Interface Speed Local pair Pair length Remote pair Pair status
--------- ----- ---------- ------------------ ----------- --------------------
Gi0/23 auto Pair A 23 +/- 4 meters Pair A Normal
Pair B 26 +/- 4 meters Pair B Normal
Pair C 27 +/- 4 meters Pair C Short
Pair D 28 +/- 4 meters Pair D Short
My first question starts at the speed: why is it changing from 100M to "auto"?
Secondly, why would pair lengths for pairs A and B change?
Third: what should I understand of the pair status "short" for pairs C and D?
This is the switch version:
WS-C3560G-48PS 15.0(2)SE
Kind regards,
Flavio.
Hi Flavio,
Let me interpret your output.
My first question starts at the speed: why is it changing from 100M to "auto"?
When you run a TDR on a 10/100BaseTx, your link shouldn't go down (unlike the older IOS), but if you run the "sh cable tdr interface G0/23" again, you should see the speed come up. Sometimes it takes awhile for the results to come back in. I've seen this several times.
Basically, this means that there's a fault approximately 23-24 metres (+/- 4 metres error) from your switch port. This does not mean 23-24 metres "as the crow flies". It means 23-24 metres from the switch port WHEN you follow the cable.
Secondly, why would pair lengths for pairs A and B change?
Your cable length didn't change very much. Granted it's a difference of 1 metre but in reality, it's not alot. Also observe that there's an "error margin" of +/- 4 metres.
Third: what should I understand of the pair status "short" for pairs C and D?
In my experience, "short" means it's a short-circuit. So what does this mean for pairs C and D?
Well, pair "C" controls your PoE and "D" controls your GigabitEthernet. If you have a "short" then it means that the remote end will not get PoE and won't negotiate to GigabitEthernet.
Another thing ... I observe you are running 15.0(2)SE. Take note that there's a bug. If you do "sh interface Gig 0/23" you might see, in the first line of the output and to the right, an error like "(connected: TDR running)". Don't worry, your interface is not "stuck" and normal traffic will continue to flow. It's just an annoying sight.
Hi. I am new to TDR but love it. Quick question:
Does the connection to the target drop when the TDR test is performed?
(I get mixed results when I test).
Cheers. Ade
Does the connection to the target drop when the TDR test is performed?
Hi Ade,
Depends. If you are testing a NON-PoE and a FastEthernet connection, then NO. Your connection won't drop.
If your connection is EITHER a GigabitEthernet or a PoE then, yes, your connection will drop.
If, for example, your PC is connected to a VoIP and then to a switch, then the connection will drop because the VoIP does NOT have a by-pass functionality.
Does this make sense?
Hi Leoaohoo. Thanks for the reply. Yes it makes sense, thanks!
I am testing a gigabit connection to a PC and sometimes it drops and other times not. So I was a bit confused.
Just to be sure, a gigabit cable test between two switches would drop the connection too, yes?
Thanks again.
Ade
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: