Jaycee's Networking

January 8, 2009

Auto-Negotiation Problem

Filed under: IOS, Troubleshoot — Tags: — Jaycee @ 12:01 am

1. Diagnose a network “slowdown” or a “slow” device — check the error statistics and the auto-negotiation settings.

2. What’s Auto-Negotiation:

(1) Speed — the rate of the interface
(2) Duplex — how data flows on the interface

3. How Auto-Negotiation Works?

(1) Auto-negotiation is a protocol. It only works if it’s running on both sides of the link.
(2) If one side of a link is running auto-negotiation,

a. the other side is not running auto-negotiation
=> auto-negotiation CANNOT determine the speed and duplex configuration of the other side.

b. the other side is running auto-negotiation
=> the 2 devices decide together on the best speed and duplex mode.

(3) Parallel detection — when the auto-negotiation process fails to find auto-negotiation running on the other side

a. sends the signal being received to the local 10Base-T, 100Base-TX, and 100Base-T4 drivers.
=> If any one of these drivers detects the signal, the interface is set to that speed.
=> the safest thing for the driver to do is to choose half-duplex mode

b. determines only the link speed, not the duplex mode.

c. the common modes of Ethernet have differing levels of duplex support:

i. 10Base-T — was originally designed w/o full-duplex support. Some support full duplex, but most don’t.
ii. 100Base-T — has long supported full duplex. The default behavior of 100Base-T is usually half duplex. It must be hard set to full duplex, if so desired.

4. When Auto-Negotiation Fails

(1) In a half-duplex environment, the RX line is monitored.

a. If a frame is present on the RX link, no frames are sent until the RX line is clear.

b. If a frame is received on the RX line while a frame is being sent on the TX line, a collision occurs.
=> Collisions cause the collision error counter to be incremented.

(2) If full-duplex environment, the RX line is not monitored, and the TX line is always considered available.
=> RX and TX lines are completely independent.

(3) When one side is full-duplex and the other side is half-duplex, a large number of collisions will occur on the half-duplex side.

a. Half-duplex side will listen to the RX line, and will not transmit unless the RX line is available.
b. It’ll record a high number of collisions, resulting in the device appearing to be slow on the network.
c. Half-duplex interface presents excessive collisions.

(4) In the real world, if you see that an interface is set to auto-negotiation has negotiated to 100/half, chances are the other side is set to 100/full.

(5) 100Mbps interfaces that don’t support full duplex are rare, so properly configured auto-negotiation ports should almost never end up configured for half duplex.

(6) Be careful about using 10/full, as full duplex is not supported on all 10Base-T Ethernet devices.

(7) Gigabit Ethernet should always be set to auto-negotiation.


1 Comment »

  1. Hi. I am a long time reader. I wanted to say that I like your blog and the layout.

    Peter Quinn

    Comment by Peter Quinn — January 9, 2009 @ 4:59 pm

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Blog at WordPress.com.

%d bloggers like this: