Dear Dave,
A quick answer from a small paradise where I am ending my hollydays (Internet is sadly not as efficient everywhere, and I am lucky to get your email...) lets speak more about it next week !!!
Attached to this email, you can find our patch tested with Linux 3.13.8.
As you can see, we used a slightly modified version of the FQ scheduler developed by Eric Dumazet.
We introduced two sysctl parameters to ease your tests:
- tcp_initial_spreading_rate_min (integer):
It corresponds to the minimal rate value computed by Initial Spreading.
Considering draft-sallantin-tcpm-initial-spreading-00,
tcp_initial_spreading_rate_min= MTU / T_Spreading
- tcp_initial_spreading_rate_debug (boolean):
When non-zero, a kernel log message will print the rate used by Initial Spreading each time a TCP connection is opened.
Regards,
Renaud Sallantin