When two devices are connected by ethernet, the router and the device negotiate the protocol used, which in general use means choosing either a 100 Mbps speed or 1,000 Mbps. We mostly all know this, and that sometimes 1,000 Mbps capable Cat 5e or higher cables seem to "go bad" for no obvious reason and drop back to 100 Mbps, and I wondered how the router and device conclude that a connection won't support 1,000 Mbps? I've done the obvious searches, and that's not shed much light other than mumbling about auto-negotiation, and what I'm interested in largely out of curiosity is what indications the router/device are responding to.
Hopefully those who know can pitch any answer at a level for a technically inclined layman, rather than just linking to some esoteric protocol standards document which may be beyond me.
But in a nutshell, when an ethernet interface detects that it has been connected to something else which it does by detecting the voltages on the lines, it starts sending out a series of pulses of fixed duration and timing which 'advertise' its capabilities. The other end receives these pulses and does likewise and very soon both ends settle on the highest speeds which they share in common according to a list of possibilities; from 40 GBASE-T down to 10BASE-T half duplex.
Notice that this doesn't take the cable itself into account only the capabilities of the interfaces themselves, but virtually all cables are four pairs with all eight wires connected and the only differences being the number of twists and the shielding. But having said that there are however some proprietary methods for a network port to check the cable status and adjust accordingly for example If a cable which doesn't have all four pairs linked (or not reliable) is connected up, then a gigabit port should recognise this and realise that 100 BASE-T is the best they'll get and negotiate accordingly.
There are also some proprietary methods of cable training which work by doing further analysis on the quality of the NLPs being received. Generally though a bad cable will just result in a lot of lost frames, re-transmissions and slow performance.