# How to test LACP performance?



## mannychang (Jan 8, 2013)

Hi..

I have followed the website to setting the bonding mode to LACP and it's actived.
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-aggregation.html

but I used the "iperf" and "netperf" to verfiy it. the network throughput is always only 800Mbps, can't be rasied up over 1Gbps. so who can tell me what software able to get max bonding performance?

Environment configuration:

FreeBSD 9.1(server side)  <-- three windows 7 (clients side)


Thanks a lot...


----------



## SirDice (Jan 8, 2013)

You will never get more than 1Gbps with one session. A single session is still limited to one interface. You can however have two or more sessions with a total above 1Gbps.


----------



## mannychang (Jan 8, 2013)

Dear SirDice:

Thanks a lot, but how to do that?? 

FreeBSD have two Gbps ports.

I use iperf test as follows:

```
FreeBSD: iperf -s  (IP:192.168.0.5)
Client 1: iperf -c 192.168.0.5 -w 64k -t 90 -i 1
Client 2: iperf -c 192.168.0.5 -w 64k -t 90 -i 1
Client 3: iperf -c 192.168.0.5 -w 64k -t 90 -i 1
```
when I add a client, the speed will be the average..


netperf test as follows:

```
FreeBSD: /opt/netperf/bin/netserver (IP:192.168.0.5)
Client 1: netperf -H 192.168.0.5 -l 120
Client 2: netperf -H 192.168.0.5 -l 120
Client 3: netperf -H 192.168.0.5 -l 120
```
when I add a client, the speed will be the average..

so how to do that......


----------



## mannychang (Jan 8, 2013)

Dear SirDice:

I get some info from google. iperf can add TCP sessions. I will try it. thanks a lot.^^


----------



## phoenix (Jan 8, 2013)

And you need to do multiple sessions going to separate remote servers.  Most of the hashing modes for LACP include local IP *and* remote IP (although some include ports).

So two sessions of iperf going to the same remote server most likely won't go over 1 Gbps.  But two sessions of iperf, going to two remote servers, should get you close to 2 Gbps.


----------



## mannychang (Jan 9, 2013)

Dear Phoenix:

Thanks a lot. The iperf only supported to create multiple sessions in client side. So what software can achieve this goal? to get close to 2 Gbps...


----------



## shahzaib (Jan 26, 2016)

Could you please let me know the output of following kernel config :

`sysctl -a |grep net.link.lagg.X.use_flowid`

If it gives '1' value, use the following command to change it to 0 and test with network throughput. It should now provide you Full 2Gbps inward/outward.
`sysctl net.link.lagg.0.use_flowid=0`


----------



## phoenix (Jan 27, 2016)

mannychang said:


> Dear Phoenix:
> 
> Thanks a lot. The iperf only supported to create multiple sessions in client side. So what software can achieve this goal? to get close to 2 Gbps...



Run multiple iperf clients and servers on separate ports.


----------

