[erlang-questions] Intermittent failures connecting C hidden nodes

Matthias Lang <>
Fri Jul 6 09:37:13 CEST 2007


jm writes:

 > * Double checking that the switches between the two machines are locks
 > at the correct speed, eg 100Mps full-duplex.

This is good advice for people who know what they're doing. But it's
prone to misinterpretation by gefingerpokers.

Verifying that the interfaces are running as expected, e.g. that both
ends have the same idea about what they're doing, is good.

Manually meddling with the settings is trouble prone.

The root problem is that IEEE 802.3:2000 autonegotiation and manual
configuration do not play nicely together.

There are three main cases:

  1. Both ethernet interfaces (e.g. your server and your switch)
     use autonegotiation). No problem.

  2. Both interfaces manually configured to the same settings. No problem.

  3. One interface is manually configured to 100Mbit/s full duplex 
     and the other to autonegotiate. This is bad.

In the third case, the autonegotiating end is required to select
100Mbit/s _half_ duplex. But other end is using full duplex. The
autonegotiating end will now get _late_ collisions, which will cause
packets to get lost, which causes TCP to behave erratically.

Matthias



More information about the erlang-questions mailing list