[ovs-dev] [patch v1 0/5] conntrack: Optimize and refactor.
Darrell Ball
dlu998 at gmail.com
Tue Nov 27 23:30:27 UTC 2018
Patch 1 is not an optimization per se, but aimed at eliminating
the exporting of internal conntrack infra.
Patch 2 Add RCU support. This is mainly done for performance
reasons, but also simplifies the code.
Patch 3 Moves the conntrack entry locking to the L4 protocol
specific layers. This is done for performance reasons and some
memory savings.
Patch 4 is mainly for memory savings for the most common cases, but
also increases performance for large number of flows (> 100000).
Patch 5 is a performance optimization for recirculations.
This series starts at v1 although some parts were sent out earlier
as a single patch; that is because the earlier series stated that
the patch would later be split out and added to, hence that is an
implied RFC. Also, this series brings in a couple new improvements
not in the original patch.
These patches presently include an updated version of the changes
for this series
https://patchwork.ozlabs.org/project/openvswitch/list/?series=78059
but those parts (approx 20 lines) will be later dropped from this
series and handled with the above mentioned series.
Darrell Ball (5):
conntrack: Stop exporting internal datastructures.
conntrack: Add rcu support.
conntrack: Make 'conn' lock protocol specific.
conntrack: Memory savings.
conntrack: Optimize recirculations.
lib/conntrack-icmp.c | 23 +-
lib/conntrack-other.c | 13 +-
lib/conntrack-private.h | 110 ++--
lib/conntrack-tcp.c | 64 ++-
lib/conntrack.c | 1375 ++++++++++++++++++++++-------------------------
lib/conntrack.h | 212 +-------
lib/dpif-netdev.c | 51 +-
lib/packets.h | 4 +
tests/test-conntrack.c | 26 +-
9 files changed, 829 insertions(+), 1049 deletions(-)
--
1.9.1
More information about the dev
mailing list