[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20171006052127.19913-1-edumazet@google.com>
Date: Thu, 5 Oct 2017 22:21:20 -0700
From: Eric Dumazet <edumazet@...gle.com>
To: "David S . Miller" <davem@...emloft.net>,
Neal Cardwell <ncardwell@...gle.com>,
Yuchung Cheng <ycheng@...gle.com>
Cc: netdev <netdev@...r.kernel.org>,
Eric Dumazet <edumazet@...gle.com>,
Eric Dumazet <eric.dumazet@...il.com>
Subject: [PATCH net-next 0/7] tcp: implement rb-tree based retransmit queue
This patch series implement RB-tree based retransmit queue for TCP,
to better match modern BDP.
Tested:
On receiver :
netem on ingress : delay 150ms 200us loss 1
GRO disabled to force stress and SACK storms.
for f in `seq 1 10`
do
./netperf -H lpaa6 -l30 -- -K bbr -o THROUGHPUT|tail -1
done | awk '{print $0} {sum += $0} END {printf "%7u\n",sum}'
Before patch :
323.87 351.48 339.59 338.62 306.72
204.07 304.93 291.88 202.47 176.88
-> 2840
After patch:
1700.83 2207.98 2070.17 1544.26 2114.76
2124.89 1693.14 1080.91 2216.82 1299.94
-> 18053
Average of 1805 Mbits istead of 284 Mbits.
Eric Dumazet (7):
net: add rb_to_skb() and other rb tree helpers
tcp: uninline tcp_write_queue_purge()
tcp: tcp_tx_timestamp() cleanup
tcp: tcp_mark_head_lost() optimization
tcp: reduce tcp_fastretrans_alert() verbosity
tcp: pass previous skb to tcp_shifted_skb()
tcp: implement rb-tree based retransmit queue
include/linux/skbuff.h | 18 +++++
include/net/sock.h | 7 +-
include/net/tcp.h | 100 ++++++++++++--------------
net/ipv4/tcp.c | 63 ++++++++++++----
net/ipv4/tcp_fastopen.c | 8 +--
net/ipv4/tcp_input.c | 187 ++++++++++++++++++++++++------------------------
net/ipv4/tcp_ipv4.c | 2 +-
net/ipv4/tcp_output.c | 137 +++++++++++++++++++----------------
net/ipv4/tcp_timer.c | 24 ++++---
net/sched/sch_netem.c | 14 ++--
10 files changed, 311 insertions(+), 249 deletions(-)
--
2.14.2.920.gcf0c67979c-goog
Powered by blists - more mailing lists