Channel bonding.

Dean Strik dean at stack.nl
Fri Apr 22 09:33:43 PDT 2005


Sean wrote:
> I've been experimenting with the idea of doing channel bonding as a 
> means of improving the performance of some heavily used file servers.
> Currently I am using a single Intel 1000MT interface on each file
> server and it has rather lack luster performance.
> 
> I've set two ports of my switch to 'shared' (an Extreme 
> BlackDiamond 6800) and am using an Intel 1000MT Dual Port for 
> the bonding interfaces.
> 
> The performance increase with I see is marginally better than 
> just the one interface (70MB/s [bonded] vs 60MB/s [single]) which 
> is slightly disappointing.  I am using ifstat and iostat (for disk
> throughput, 30MB/s on a 3ware 7500-12 yet again disappointing) to
> monitor and a variant of tcpblast to generate traffic.  I'm using
> 4 other machines (on the same blade on the switch) to generate the
> traffice to the bonded interface all are similar hardware with 
> varrying versions of FreeBSD.  In order to get the numbers as high
> as I have I've enabled polling (some stability issues being 
> used under SMP).

If I understand you correctly, you are not doing any load sharing from
the FreeBSD box to the BD6800, right?

Also, it's likely the BD6800 uses the lsb of the source-mac xor
dest-mac. If you have four clients only, a marginal increase in
performance could well be because the src^dst often returns the same
value (e.g. with 3 out of 4 clients having an even MAC, and 1 out of 4
an odd MAC). Try making this 50/50 by changing a MAC address of the
client using 'ifconfig ether'.

-- 
Dean C. Strik             Eindhoven University of Technology
dean at stack.nl  |  dean at ipnet6.org  |  http://www.ipnet6.org/
"This isn't right. This isn't even wrong." -- Wolfgang Pauli


More information about the freebsd-performance mailing list