Search code examples
iperf

How to generate traffic faster on iperf?


I'm using a TCP implementation that creates multiples subflows and I'm trying to test it with iperf, the problem is the server doesn't fill all the subflows so I can't test it properly. My question is: How can I get iperf to generate (more) traffic faster?


Solution

  • TCP flow depends on some kernel module related to TCP and also it depends upon the TCP congestion control algorithm used by the kernel. there are some TCP kernel parameter. after modifying that , it works for me(am using ubuntu kernel 4.10.3):

    echo 0 > /sys/module/tcp_cubic/parameters/hystart
    echo 0 > /sys/module/tcp_cubic/parameters/hystart_detect
    

    try this one, it worked good for me. also there are some other parameters which am listing below, check the values of these parameter according to kernel version you are using. (am using ubuntu kernel 4.10.3)

    echo 150 > /proc/sys/net/ipv4/tcp_pacing_ca_ratio
    echo 900 > /proc/sys/net/ipv4/tcp_pacing_ss_ratio 
    

    I tested my throughput with above values and it improved my TCP performance in multi-client environment.