distributed performance test
Tue Apr 26 16:05:28 CEST 2005
> Whether the full-duplex side's making use of the full duplexity is
> actually seen as collisions by the half-duplex side can't really be
> pre-determined, since it is highly dependant on traffic patterns and
Further: it's useful to distinguish between 'normal' collisions and
late collisions, even if many popular OSs don't.
A normal collision happens within the first 64 octets of an ethernet
packet. A normal, healthy half-duplex ethernet has these all the time
and the transmitting NIC handles it by waiting a random time (with a
special distribution) and retransmitting. Software (TCP) is blissfully
unaware, everything works just fine.
A late collision happens after the first 64 octets, which may be after
the end of the frame. Correctly working networks should _never_ have
late collisions. All the NICs I've worked with treat late collisions
as a fatal error, i.e. they don't retransmit. Thus software (TCP)
sees a late collision as packet loss, and TCP tends to throttle itself
when that happens. That's why the performance characteristics get so ugly.
More information about the erlang-questions