[dpdk-dev] [PATCH v2 0/4] rte_flow extension for vSwitch acceleration
Thomas Monjalon
thomas at monjalon.net
Tue Apr 10 16:12:50 CEST 2018
Adrien,
How this series integrate with yours?
Please, we need your review here.
01/04/2018 23:19, Qi Zhang:
> v2:
> - fix couple typoes in code, doc and commit log
>
> This patch extend rte_flow API.
> The purpose is to provide necessary programming interface for virtual
> switch software (such as OVS) to take advantage of incoming device's
> vSwitch acceleration capability when using DPDK as data plane.
>
> Below is summary of changes:
>
> 1. Support to specify flow's destination as an ethdev interface.
>
> Add action RTE_FLOW_ACTION_TYPE_PORT, use port_id as the identification
> of the destitation. A typical use case is, with a smart NIC used for vSwitch
> acceleration, flow is defined to redirect packet between switch port that is
> managed by a Port Representor.
>
> 2. Enhanced flow statistics query.
> Enhanced action RTE_FLOW_ACTION_COUNT by adding last hit timestamp tracking which is
> the requirement from OVS.
>
> 3. Add protocol headers which will be supported by incoming device.
>
> New protocal headers include IPV4 ARP, IPV6 ICMP , IPV6 extent header.
>
> 4. Add packet modification actions which will be supported by incoming device.
>
> Add new actions that be used to modify packet content with generic semantic:
>
> RTE_FLOW_ACTION_TYPE_FIELD_UPDATE: update specific field of packet
> RTE_FLWO_ACTION_TYPE_FIELD_INCREMENT: increament specific field of packet
> RTE_FLWO_ACTION_TYPE_FIELD_DECREMENT: decreament specific field of packet
> RTE_FLWO_ACTION_TYPE_FIELD_COPY: copy data from one field to another in packet.
>
> All action use struct rte_flow_item parameter to match the pattern that going
> to be modified, if no pattern match, the action just be skipped.
> These action are non-terminating action. they will not impact the fate of the
> packets, since pattern match is expected to be performed before packet be modified.
>
> Note:
> - The driver to demonstrate the new APIs is still in development,
> but we hope it could be accepted early to make OVS integration smoothly.
> - Testpmd command line support does not be included and will be submitted
> seperately in future.
>
> Qi Zhang (4):
> ether: add flow action to redirect packet to a port
> ether: add flow last hit query support
> ether: add more protocol support in flow API
> ether: add packet modification aciton in flow API
>
> doc/guides/prog_guide/rte_flow.rst | 111 +++++++++++++++++
> lib/librte_ether/rte_flow.h | 238 ++++++++++++++++++++++++++++++++++++-
> 2 files changed, 348 insertions(+), 1 deletion(-)
>
>
More information about the dev
mailing list