flowgrind can't push 10G

Bug #1239988 reported by Lars Eggert
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Flowgrind
New
Undecided
Unassigned

Bug Description

flowgrind can't push 10Gb/s, it tops out at about 6.6G:

root@five:~ # flowgrind -H s=240.0.5.5,d=240.0.5.6 -Q
# Tue Oct 15 10:40:49 2013: controlling host = five, number of flows = 1, reporting interval = 0.05s, [through] = 10**6 bit/second (0.6.1)

# 0 S: 240.0.5.5, random seed: 811544180, sbuf = 32768/0, rbuf = 65536/0 (real/req), flow duration = 10.000s/10.000s (real/req), through = 6695.290699/0.000000Mbit/s (out/in), request blocks = 1021621/0 (out/in)
# 0 D: 240.0.5.6, random seed: 811544180, sbuf = 32768/0, rbuf = 65536/0 (real/req), through = 0.000000/6694.083358Mbit/s (out/in), request blocks = 0/1021438 (out/in), IAT = 0.005/0.010/0.355 (min/avg/max)

Multiple flows also top out at the same aggregate bandwidth.

Each flowgrindd only eats up about half a core, so we're not CPU limited here. Plus, netperf can easily push 10G on the same path:

root@five:~ # netperf -H 240.0.5.6
MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 240.0.5.6 () port 0 AF_INET : histogram : interval : dirty data : demo
Recv Send Send
Socket Socket Message Elapsed
Size Size Size Time Throughput
bytes bytes bytes secs. 10^6bits/sec

 65536 32768 32768 10.06 9376.08

Revision history for this message
Alexander Zimmermann (alexander-zimmermann) wrote :

You need to increase the bock/message/IO size to saturate a 10 Gb/s link:

alexandz@six:~$ flowgrind -H s=240.0.20.1/192.168.10.1,d=240.0.20.2/192.168.11.1 -Q -S s=65536
# Fri Nov 29 19:17:18 2013: controlling host = six, number of flows = 1, reporting interval = 0.05s, [through] = 10**6 bit/second (flowgrind-0.6.1-48-g6451ca)

# 0 S: 240.0.20.1/192.168.10.1 (Linux 3.12.0phobos+), random seed: 2625273754, sbuf = 16384/0, rbuf = 87380/0 (real/req), SMSS = 1448, Path MTU = 1500, Interface MTU = 1500 (Ethernet/PPP), flow duration = 10.000s/10.000s (real/req), through = 9397.875158/0.000000Mbit/s (out/in), request blocks = 179252/0 (out/in)
# 0 D: 240.0.20.2/192.168.11.1 (Linux 3.12.0phobos+), random seed: 2625273754, sbuf = 16384/0, rbuf = 87380/0 (real/req), SMSS = 1448, Path MTU = 1500, Interface MTU = 1500 (Ethernet/PPP), through = 0.000000/9396.541536Mbit/s (out/in), request blocks = 0/179224 (out/in), IAT = 0.012/0.056/0.806 (min/avg/max)

However, it's right that flowgrind burns more CPU then netsurf. Further investigation is needed.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.