Re: Linux 2.2.18pre21

Matti Aarnio
2000-11-10T10:52:30Z

On Fri, Nov 10, 2000 at 12:22:04PM +0200, Constantine Gavrilov wrote:
> Gee, we do not call it EtherChannel, we say CISCO calls it
> EtherChannel. Where is the infringment here? Are people that paranoid
> or it is just me who is not getting it?

You missed my original point.

I don't like to call it BONDING.

"Bonding" is something where two (or more) channels carry data
in between two participating systems. Like Multilink-PPP, and
ISDN Channel Bonding. Often indeed data goes out somehow inter-
leaved on the physical links. (Like ISDN Channel Bonding supplies
a transparent 128 kbps link instead of two 64 kbps links to the
upper layers.)

EtherChannel does select the link (out of the group) by forming
XOR of source and destination MAC addresses (their lowest bytes),
and then doing MODULO number-of-links on the result.

So between systems A and B the flow goes via link 0, in between
A and C it goes via link 1. Add there client system D, and it
may end up into either of the links.

|-----------| |------|
| A |-----link-0-----| SW |---[B]
| |-----link-1-----| with |---[C]
|-----------| |EthChn|---[D]
|------|

This gives improved throughput on congested links in between
two switches, or major server and core switches, while preserving
data order over the links.

Blind bonding-type "throw packets on links 0 and 1" MAY end up
sending ethernet frames out of sequence, which for a few LAN
based protocols is a great source of upset.

Beowulf systems have "bonding" in use for parallel Ethernet
links in between two machines, however THAT is not EtherChannel
compatible thing!

> --
> Constantine Gavrilov

/Matti Aarnio