[dpdk-dev] [RFC 0/3] ethdev: add IP address and TCP/UDP port rewrite actions to flow API
Rahul Lakkireddy
rahul.lakkireddy at chelsio.com
Fri Jun 22 11:56:02 CEST 2018
This series of patches add support for actions:
- OF_SET_NW_IPV4_SRC - set a new IPv4 source address.
- OF_SET_NW_IPV4_DST - set a new IPv4 destination address.
- OF_SET_NW_IPV6_SRC - set a new IPv6 source address.
- OF_SET_NW_IPV6_DST - set a new IPv6 destination address.
- OF_SET_TP_SRC - set a new TCP/UDP source port number.
- OF_SET_TP_DST - set a new TCP/UDP destination port number.
These actions are useful in Network Address Translation use case
to edit IP address and TCP/UDP port numbers before switching
the packets out to the destination device port.
The IP address and TCP/UDP port rewrite actions are based on
OFPAT_SET_NW_SRC, OFPAT_SET_NW_DST, OFPAT_SET_TP_SRC, and
OFPAT_SET_TP_DST actions from OpenFlow Specification [1].
Patch 1 adds support for IP address rewrite to rte_flow and testpmd.
Patch 2 adds support for TCP/UDP port rewrite to rte_flow and testpmd.
Patch 3 shows CXGBE PMD example to offload these actions to hardware.
Feedback and suggestions will be much appreciated.
Thanks,
Rahul
[1] http://www.opennetworking.org/images/openflow-switch-v1.5.1.pdf
Shagun Agrawal (3):
ethdev: add flow api actions to modify IP addresses
ethdev: add flow api actions to modify TCP/UDP port numbers
net/cxgbe: add flow actions to modify IP and TCP/UDP port address
app/test-pmd/cmdline_flow.c | 150 ++++++++++++++++++++++++++++
app/test-pmd/config.c | 12 +++
doc/guides/prog_guide/rte_flow.rst | 102 +++++++++++++++++++
doc/guides/testpmd_app_ug/testpmd_funcs.rst | 24 +++++
drivers/net/cxgbe/base/common.h | 1 +
drivers/net/cxgbe/base/t4fw_interface.h | 50 ++++++++++
drivers/net/cxgbe/cxgbe_filter.c | 23 ++++-
drivers/net/cxgbe/cxgbe_filter.h | 26 ++++-
drivers/net/cxgbe/cxgbe_flow.c | 127 +++++++++++++++++++++++
drivers/net/cxgbe/cxgbe_main.c | 10 ++
lib/librte_ethdev/rte_flow.c | 12 +++
lib/librte_ethdev/rte_flow.h | 92 +++++++++++++++++
12 files changed, 625 insertions(+), 4 deletions(-)
--
2.14.1
More information about the dev
mailing list