[OT] Ethernet Auto Protocol Negotiation ?

Dec 16, 2003 5 Replies

First reply

Richard

Mis-matched duplex can be a source of performance problems, particularly when the traffic volume is high on the link. One end is observing CSMA/CD (half duplex mode) and the other is ignoring it (full duplex mode). This causes the half duplex device to incur a high volume of…

Read the full reply

Hi,



I am asking in this group, since it is a group I read most often, and I expect that people that contribute to this group might actually know the answer.



I have a small home PC network with 2x Win2K machines and one Linux (RH 9) machine. I have 10/100 el-cheapo Accton Ethernet cards in one W2K machine and in the Linux machine connected via a 8 port 10/100 switch. The third machine uses the nVidia nForce2 onboard ethernet. On both w2k machines the protcol is set to auto. I presume it would be the same on the RH9 machine, but at the moment I am not sure where to verify this.



I am experiencing that sometimes the comms between the machine with the nVidia machine and the others is extremely slow. I have to poweroff the machine, and restart (Sometimes a number of times) before the speed is back to what it should be.



I expect somthing is probably going wrong during the protocol negotiation phase. Is there some way to check what protocol has been negotiated by the different machines ? Is there some way to force all the machines to use a specific protocol. ?



Regards Anton Erasmus


Mis-matched duplex can be a source of performance problems, particularly when the traffic volume is high on the link. One end is observing CSMA/CD (half duplex mode) and the other is ignoring it (full duplex mode). This causes the half duplex device to incur a high volume of collisions, which could be noticable under heavy volume.

When using a 10/100 switch, there's rarely a reason not to use full duplex for best performance. The exception is when the connected device is a shared (half duplex) hub. All this is normally negotiated automatically; it *usually* works fine in 100Mb (and 10/100 auto) mode; it's not reliable in 10Mb mode.

Suggested NIC driver settings, in order of preference:

10/100 auto w/ auto duplex 10/100 auto w/ full duplex 100 w/ full 10 w/ half

Check for a duplex mismatch (mii-tool is the tool in Linux). If a controller is set to full duplex, it's no more listening to the other traffic before sending, so in a half duplex network leg it will cause plenty of collisions (check with ifconfig).

HTH

Tauno Voipio tauno voipio @ iki fi

Thanks for the replies. I have googled for mii-tool, which seems to be part of a "net tools" package. I have however been unable to find the home page for this particular project. Do you maybe have an URL where I can get the source for this tool.

Regards Anton Erasmus

A quick google-search gave this link ;-)

formatting link

/Jan-Hinnerk

Thanks,

I also eventually found the URL:

formatting link

I also found a RH9 rpm version, but when I tried to install, I was informed that net-tools are already installed. It seems I have version 1.55 of net-tools on RH9, but mii-tool seems to be missing.

Regards Anton

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required