Gigabit auto negotiation
Update: I originally posted this (on my previous blogging site) on 31 Mar 2009 and have made some updates due to broken reference links.
I ran into a strange problem while configuring an Etherchannel on a couple Cisco switches. I would set the speed and duplex on one switch to 1000 full but as soon as I set the same speed and duplex on the other switch the connection would go down. This was the first time I’ve tried to set up an Etherchannel so I incorrectly assumed it was an Etherchannel configuration mistake. After much searching I found a single sentence that indicated 1000Base-T must be set to auto/auto but no references. Luckily my colleague was looking for the same thing and sent me a link which had references and a great explanation of what happens. That link is no longer active but I’ve found others that I’ll put at the bottom of this post.
The reason for using auto/auto on 1000Base-T is that it is required to define the master slave relationship and was defined in IEEE 802.3u clause 28. This of course does not apply to fiber. So why was I trying to force duplex and speed in the first place? Because I’m old and back in the day most systems didn’t play well with each other. The standard for over a decade has been to manually set speed and duplex. Bottom line is that 1000Base-T is a different animal and should always be set to auto/auto. Actually, as long as your equipment is newer than 1999 it should be compliant with the 802.3u standard and be left to auto negotiate but testing is always recommended.
Link to another blog post on this: http://etherealmind.com/ethernet-autonegotiation-works-why-how-standard-should-be-set/
Link to Wikipedia: http://en.wikipedia.org/wiki/Autonegotiation#Interoperability_problems