[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