Nowadays, it is relatively commonplace to see Windows-based servers with "teamed" network interfaces (e.g., dual-LAN interfaces to a server treated as a single virtual IP address). Are you aware of a vendor-independent method (hardware or software) of obtaining the same type of behavior for Unix-based servers?
Way back in the olden days, I used to work for an ISP where we used to "bond" two digital or analog channels to increase your bandwidth accessing the Internet over the Public Switched Telephone Network (PSTN). However, now the standard is cable or DSL that has available bandwidth that far surpasses the previous pipe. However, some people who don't have high speed access in their area still do this. You can also bond Linux network interfaces, as well, to increase the bandwidth to your server. You can also do more than two Ethernet cards. The limiting factor is that you will need a corresponding subnet for each Ethernet connection.
Red Hat Enterprise Linux does allow you to bond two network interfaces the same way using the channel bonding kernel module. Information on how to set this up is available in Chapter 8 of the Red Hat Linux 3: Reference Guide. Since the release of Linux kernel version 2.4, many other distributions include the channel bonding module.
Linux channel bonding was pioneered by Donald Becker, who was a co-founder of the Beowulf project. The idea of bonding network channels was appealing to them because the supercomputing applications where pushing large amounts of information over their network. There is a fairly good amount of information in the archives of the Beowulf mailing list.
I think the biggest problem with channel bonding on Linux is the lack of documentation on the subject; however, a Google search on "Linux channel bonding" should yield a fair amount of resources to help you out. Really, once you understand the concepts, it is fairly easy to configure.
This was last published in December 2004
Dig Deeper on Network Infrastructure