[nSLUG] ethernet and the modern linux

Stephen Gregory nslug at kernelpanic.ca
Sat Sep 27 22:54:08 ADT 2008

George N. White III wrote:

> 1.  autonegotiation considered harmful

get better Ethernet cards. 10 years ago autonegotiation sucked because
every vendor had a different proprietary method to do it. Are you still
seriously having issues with recent hardware? There is all manner of
junk hardware in the lab and the only issue we have is that the 100FX
fibre cards don't negotiate.

> 2.  udev considered harmful

The problems you describe are problems with network-manager. N-M stinks
and does weird things.

UDEV mostly just creates entries in /dev. There is some great power
behind UDEV and it should be studied instead of cursed. Many devices in
a modern computer can be hot-plugged. UDEV manages the naming and
creation of /dev entries in a sane manner. The cursing should be
reserved for the poor documentation.

> In the good old days with unix, you could force the settings by
> building a custom kernel.

You can still force everything. e.g in Debian N-M will not touch an
interface if there is an entry in /etc/network/interfaces. Everything in
UDEV can be customized in plain text config files.

> Until recently, you could pass
> options to control the settings when the module was loaded.

Which distro? In Debian you can still control how and when modules are
loaded, and which options are used. You can also compile a module free

>   You can
> also use ethtool to
> make changes after the module is loaded, but these changes may be lost
> after a network
> "event".

This is likely a driver issue or possibly a network-manager issue. UDEV
only gets called when the device is loaded. If the device is getting
loaded and unloaded there is something more seriously amiss.

> 3.  full duplex considered harmful

This a just don't understand. I can saturate a 100BaseT half-duplex
network without trying. I can do this using boring hardware. If I were
to drop my little 20 user network to half-duplex there would be an angry
mob within minutes.

> My view is that shit happens, and we should configure
> systems to be robust.

I agree. That is why all the ports on the switch at work are set to auto
duplex and auto speed.

> Apple,
> who have lots of experience with a tightly controlled list of network
> interfaces, recommend settings switches to force half-duplex,

... which says more about Apple's lack of ability then anything else.

I recall
> some discussions where it was claimed that full duplex was a fraud

10 years ago this argument had some merit. But not today. The 1GHz P3
laptop in the basement doesn't seem to have any trouble filling 100BaseT
full duplex.

Half-duplex ethernet results in collisions. Collisions cause more work
for the servers, workstations, and switches. Collisions cause the
network to stop. In many cases this means the server stops. Even if a
computer cannot fill 1Gb/sec ethernet is no reason to run in
half-duplex. The point of full duplex is not that it is faster, but that
there are no collisions

More information about the nSLUG mailing list