Changes from v5: cleaning of NV code, changing some default parameters I've run more extensive tests, I'm working on updating the NV website (http://www.brakmo.org/networking/tcp-nv/TCPNV.html) should be updated by tomorrow (8/26).
The updated tests include Reno, Cubic, NV and CDG and include more types of traffic. Overview of results: 1) NV has a little lower throughput (2-3% less) with small number of flows as compared to Reno, Cubic and CDG 2) NV is less fair with few flows but becomes more fair with more flows 3) Less losses with NV (none in many cases) as compared to all others. One exception is when things get very congested (64 flows into one server), NV has 50% more losses than CDG, Cubic has 1.8x to 10x more losses than CDG. Reno has about the same losses as CDG. 4) In mixed traffic (1M and 10K RPCs), 10K flows achieve much higher average throughput with NV than with the others (which are very similar). In one example, 2 clients sending 1M and 10K to 2 servers, with NV 10K flows average 1Gbps and 1M flows 3.7Gbps, whereas they average about 226Mbps and 4.4Gbps for Reno, Cubic and CDG. They all have similar link utilization. Consists of the following patches: [RFC PATCH v6 net-next 1/4] tcp: replace cnt & rtt with struct in [RFC PATCH v6 net-next 2/4] tcp: refactor struct tcp_skb_cb [RFC PATCH v6 net-next 3/4] tcp: add in_flight to tcp_skb_cb [RFC PATCH v6 net-next 4/4] tcp: add NV congestion control Signed-off-by: Lawrence Brakmo <bra...@fb.com> include/net/tcp.h | 20 ++- net/ipv4/Kconfig | 16 ++ net/ipv4/Makefile | 1 + net/ipv4/tcp_bic.c | 6 +- net/ipv4/tcp_cdg.c | 14 +- net/ipv4/tcp_cubic.c | 6 +- net/ipv4/tcp_htcp.c | 10 +- net/ipv4/tcp_illinois.c | 20 +-- net/ipv4/tcp_input.c | 10 +- net/ipv4/tcp_lp.c | 6 +- net/ipv4/tcp_nv.c | 489 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ net/ipv4/tcp_output.c | 4 +- net/ipv4/tcp_vegas.c | 6 +- net/ipv4/tcp_vegas.h | 2 +- net/ipv4/tcp_veno.c | 7 +- net/ipv4/tcp_westwood.c | 7 +- net/ipv4/tcp_yeah.c | 7 +- 17 files changed, 580 insertions(+), 51 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html