From: Jesper Dangaard Brouer <brouer@redhat.com>
To: "David S. Miller" <davem@davemloft.net>,
Hannes Frederic Sowa <hannes@stressinduktion.org>
Cc: Jesper Dangaard Brouer <brouer@redhat.com>,
netdev@vger.kernel.org, Eric Dumazet <eric.dumazet@gmail.com>
Subject: [net-next PATCH 0/4] net: frag patchset for fixing LRU scalability issue
Date: Wed, 24 Apr 2013 17:47:55 +0200 [thread overview]
Message-ID: <20130424154624.16883.40974.stgit@dragon> (raw)
This patchset replaces my prevous patchset:
"net: frag code fixes and RFC for LRU removal"
http://thread.gmane.org/gmane.linux.network/266323/
I have dropped the idea of doing "direct hash cleaning". Instead I
have simply choosen to solve the global LRU list problem, by making
the LRU list be per CPU.
Patch-01: Revert "inet: limit length of fragment queue hash table bucket lists"
- Sorry this patch is broken and need to be reverted.
I'll leave it up to Hannes for come up with a better solution,
perhaps better IPv6 hashing for frag queues.
Patch-02: net: increase frag hash size
- Simply increase the hash size
Patch-03: net: avoid false perf interpretations in frag code
- The compiler make us misinterpret performance issues in the frag
code, because its auto inlining functions. This cause too many
arguments between developers on the list.
Patch-04: net: frag LRU list per CPU
- Change the global LRU list to be per CPU instead.
Besides my usual 10G tests, I have also tested that a 512 Kbit/s
simulated link (with HTB) still works (with sending 3x UDP fragments)
under the DoS test 20G3F+MQ, which is sending approx 1Mpps on a
10Gbit/s NIC. (And I have verified that the 512Kbit/s link gets the
right spacing between packets (23.6 ms)).
HTB setup:
tc qdisc del dev eth63 root
tc qdisc add dev eth63 root handle 1: htb default 1
tc class add dev eth63 parent 1: classid 1:1 htb rate 512kbit ceil 512kbit burst 1600 cburst 1600
Patchset based on top of net-next commit 953c96e0d8 (v3.9-rc5-1145-g953c96e).
---
p.s. I have now reached 300 compiles on this git tree for my
frag-work, this work effort getting out of hand...
Jesper Dangaard Brouer (4):
net: frag LRU list per CPU
net: avoid false perf interpretations in frag code
net: increase frag hash size
Revert "inet: limit length of fragment queue hash table bucket lists"
Documentation/networking/ip-sysctl.txt | 2 -
include/net/inet_frag.h | 120 ++++++++++++++++++-------------
include/net/ipv6.h | 8 +-
net/ipv4/inet_fragment.c | 83 ++++++++++++---------
net/ipv4/ip_fragment.c | 35 +++++----
net/ipv6/netfilter/nf_conntrack_reasm.c | 14 ++--
net/ipv6/reassembly.c | 10 +--
7 files changed, 153 insertions(+), 119 deletions(-)
--
Best regards,
Jesper Dangaard Brouer
MSc.CS, Sr. Network Kernel Developer at Red Hat
Author of http://www.iptv-analyzer.org
LinkedIn: http://www.linkedin.com/in/brouer
next reply other threads:[~2013-04-24 15:48 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-24 15:47 Jesper Dangaard Brouer [this message]
2013-04-24 15:48 ` [net-next PATCH 1/4] Revert "inet: limit length of fragment queue hash table bucket lists" Jesper Dangaard Brouer
2013-04-25 0:00 ` Eric Dumazet
2013-04-25 13:10 ` Jesper Dangaard Brouer
2013-04-25 13:58 ` David Laight
2013-05-02 7:59 ` Jesper Dangaard Brouer
2013-05-02 15:16 ` Eric Dumazet
2013-05-03 9:15 ` Jesper Dangaard Brouer
2013-04-24 15:48 ` [net-next PATCH 2/4] net: increase frag hash size Jesper Dangaard Brouer
2013-04-24 22:09 ` Sergei Shtylyov
2013-04-25 10:13 ` Jesper Dangaard Brouer
2013-04-25 12:13 ` Sergei Shtylyov
2013-04-25 19:11 ` David Miller
2013-04-24 23:48 ` Eric Dumazet
2013-04-25 3:26 ` Hannes Frederic Sowa
2013-04-25 19:52 ` [net-next PATCH V2] " Jesper Dangaard Brouer
2013-04-29 17:44 ` David Miller
2013-04-24 15:48 ` [net-next PATCH 3/4] net: avoid false perf interpretations in frag code Jesper Dangaard Brouer
2013-04-24 23:48 ` Eric Dumazet
2013-04-24 23:54 ` David Miller
2013-04-25 10:57 ` Jesper Dangaard Brouer
2013-04-25 19:13 ` David Miller
2013-04-24 15:48 ` [net-next PATCH 4/4] net: frag LRU list per CPU Jesper Dangaard Brouer
2013-04-25 0:25 ` Eric Dumazet
2013-04-25 2:05 ` Eric Dumazet
2013-04-25 14:06 ` Jesper Dangaard Brouer
2013-04-25 14:37 ` Eric Dumazet
2013-04-25 13:59 ` Jesper Dangaard Brouer
2013-04-25 14:10 ` Eric Dumazet
2013-04-25 14:18 ` Eric Dumazet
2013-04-25 19:15 ` Jesper Dangaard Brouer
2013-04-25 19:22 ` Eric Dumazet
2013-04-24 16:21 ` [net-next PATCH 0/4] net: frag patchset for fixing LRU scalabilityissue David Laight
2013-04-25 11:39 ` Jesper Dangaard Brouer
2013-04-25 12:57 ` David Laight
2013-04-24 17:27 ` [net-next PATCH 0/4] net: frag patchset for fixing LRU scalability issue Hannes Frederic Sowa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130424154624.16883.40974.stgit@dragon \
--to=brouer@redhat.com \
--cc=davem@davemloft.net \
--cc=eric.dumazet@gmail.com \
--cc=hannes@stressinduktion.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.