Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Hey, I am trying to setup Link Aggrigation with LACP (well, anything that provides increased bandwidth and failover using my setup will work). I'm running FreeBSD 8.0 on 3 machines. M1 is running 2 10/100 ethernetcards setup for link aggrigation using lagg. for reference:

ifconfig em0 up
ifconfig tx0 up
ifconfig create lagg0
ifconfig lagg0 laggproto lacp laggport tx0 laggport em0 netmask

I plugged them into ports 1 and 2 of a Cicso 3550. then ran:

configure terminal
interface range Fa0/1 - 2
switchport mode access
switchport access vlan 1
channel-group 1 mode active

(everythings in vlan 1) Now Im able to connect the other computers to other ports on the switch and failover works great, i can unplug cables in the middle of a transfer and the traffic gets rerouted. However, im not noticing any speed increase. My test setup: load balancing: i tried dst and src on the switch, neither seemed to give me a speed increase. I am SCPing 2 500 meg files from the lagg computer to other computers (one each) which are also running 10/100 full duplex cards. I get transfer speeds of about 11.2-11.4 Mbps to a single host, and about half that (5.9-6.2) Mbps when transferring to both at the same time. From what I understood with destination load balancing the router was suppose to balance traffic headed for 1 computer over 1 port and traffic headed for another over a diff(in this case) the other port.

With destination-MAC address forwarding, when packets are forwarded to an EtherChannel, the packets are distributed across the ports in the channel based on the destination host MAC address of the incoming packet. Therefore, packets to the same destination are forwarded over the same port, and packets to a different destination are sent on a different port in the channel. For the 3550 series switch, when source-MAC address forwarding is used, load distribution based on the source and destination IP address is also enabled for routed IP traffic. All routed IP traffic chooses a port based on the source and destination IP address. Packets between two IP hosts always use the same port in the channel, and traffic between any other pair of hosts can use a different port in the channel. (Link)

What am i doing wrong/what would i need to do to see a speed increase beyond what i could do with just a single card?

share|improve this question
Please Add IP and Mac of both others server so that we can see if hash should be the same or not – radius May 25 '10 at 19:38
okay, added them. – Flamewires May 25 '10 at 19:55 I followed this setup with a similar situation, and it is working now.

share|improve this answer

You mentioned SCP, are you sure that you don't have a problem with CPU maxing out on the encryption?

I would try something like iperf to get raw packet rates.

share|improve this answer
Also, this is kind of a cop-out, but maybe think about upgrading to Gigabit switches and NICs? – Kyle Brandt May 25 '10 at 19:43
well we have gig nics, but they aren't on the test machine, they are on the production machine :P it shouldn't make a diff as long as everything's the same speed. – Flamewires May 25 '10 at 19:53
And, ill try it, but I dont think the cpus are the bottleneck – Flamewires May 25 '10 at 19:53
Ya, it doesn't sound like it from what you described, but iperf would be a good way to eliminate anything higher level. – Kyle Brandt May 25 '10 at 19:54
Yeah, im installing it now – Flamewires May 25 '10 at 19:59

Your problem seems strange, with a src-mac balancing on the switch it should work well from my point of view.
To troubleshoot I would use iperf and do transfer in both way ( ->{4,2,8} and{4,2,8} -> to see if you get better result in a one of the way.
In your test if you pushed a file from to others host, your almost only try load balancing on FreeBSD and not on the switch (because only ACK packet from others host are load balance by the switch, and this is very small).
If transfer from to{4,2,8} works as expected it means that switch config is OK but load balancing on FreeBSD isn't working as expected.

share|improve this answer
Yeah i downloaded iperf and did some tests. I ended up changing the switch config slightly to follow more what was done here: now I'm getting a decent speed increase both sending and receiving from multiple machines to the link agg'd computer. Thanks – Flamewires May 26 '10 at 18:26

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.