How does Device Manager estimate ethernet cable length?
Solution 1:
I have found some clues in the manual AN-1508 DP83849 Cable Diagnostics (Rev. A) - Texas Instruments. The device itself probably is not relevant to your setup, but the information in the documents seems useful.
The DP83849 provides a method of computing cable length based on electrical characteristics of the 100Mb Link. This essentially provides an equivalent cable length rather than a measurement of the physical cable length.
100MB cable length is a linear function of the Analog (AEQ) and Digital (DEQ) equalization coefficient values in the linked state.
if (AEQ == 0) Length = (A1 × DEQ) + B1 if (AEQ == 1) Length = (A2 × DEQ) + B2 and so on ...
The algorithm for computing the electrical cable length is depicted above. The constants {A1, A2, ... } & {B1, B2, ... } are determined by statistical study of various typical case cables. The computation is completely handled in hardware.
Another section of the manual throws more light on the measurement method:
TDR Cable Diagnostics
The PHYTER Dual implements a Time Domain Reflectometry (TDR) method of cable length measurement and evaluation which can be used to evaluate a connected twisted pair cable. The TDR implementation involves sending a pulse out on either the Transmit or Receive conductor pair and observing the results on either pair.
The TDR cable diagnostics works best in certain conditions. For example, an unterminated or open cable provides a good reflection for measuring cable length, while a cable with an ideal termination at an unpowered partner may provide no reflection at all. The TDR cable diagnostics only works for twisted pair (copper) connections and is not supported over Fiber connections.
The final conclusion is that a pulse is sent on the Transmit or Receive conductor pair and the results are observed. They are then searched in a table derived using empirical tests and further improved by the firmware. The result is not physically accurate, being only a statistical derivation.