[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1582458307-17067-1-git-send-email-paulb@mellanox.com>
Date: Sun, 23 Feb 2020 13:45:01 +0200
From: Paul Blakey <paulb@...lanox.com>
To: Paul Blakey <paulb@...lanox.com>,
Saeed Mahameed <saeedm@...lanox.com>,
Oz Shlomo <ozsh@...lanox.com>,
Jakub Kicinski <jakub.kicinski@...ronome.com>,
Vlad Buslov <vladbu@...lanox.com>,
David Miller <davem@...emloft.net>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
Jiri Pirko <jiri@...lanox.com>, Roi Dayan <roid@...lanox.com>
Subject: [PATCH net-next 0/6] act_ct: Software offload of conntrack_in
This series adds software offload of connections with an established
ct state using the NF flow table offload infrastructure, so
once such flows are offloaded, they will not pass through conntrack
again, and instead act_ct will restore the conntrack info metadata
on the skb to the state it had on the offload event - established.
Act_ct maintains an FT instance per ct zone. Flow table entries
are created, per ct connection, when connections enter an established
state and deleted otherwise. Once an entry is created, the FT assumes
ownership of the entry, and manages it's aging.
On the datapath, first lookup the skb in the zone's FT before going
into conntrack, and if a matching flow is found, restore the conntrack
info metadata on the skb, and skip calling conntrack.
Netfilter flowtable patches provide the cleanup callback so act_ct can
cleanup the flow table once all entries are removed, as these are
managed by the flowtable.
Note that this patchset is part of the connection tracking offload feature.
Hardware offload of connections with an established ct state series will follow
this one.
Pablo Neira Ayuso (3):
netfilter: flowtable: pass flowtable to nf_flow_table_iterate()
netfilter: flowtable: nf_flow_table_iterate() returns the number of
entries
netfilter: flowtable: add cleanup callback from garbage collector
Paul Blakey (3):
net/sched: act_ct: Create nf flow table per zone
net/sched: act_ct: Offload established connections to flow table
net/sched: act_ct: Software offload of established flows
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c | 1 +
include/net/netfilter/nf_flow_table.h | 1 +
include/net/tc_act/tc_ct.h | 2 +
net/netfilter/nf_flow_table_core.c | 28 +-
net/sched/Kconfig | 2 +-
net/sched/act_ct.c | 381 +++++++++++++++++++++++-
6 files changed, 402 insertions(+), 13 deletions(-)
--
1.8.3.1
Powered by blists - more mailing lists