[dpdk-dev] [RFC v2 3/5] ether: Add flow timeout support
Zhang, Qi Z
qi.z.zhang at intel.com
Fri Dec 22 10:03:46 CET 2017
Alex:
> -----Original Message-----
> From: Alex Rosenbaum [mailto:rosenbaumalex at gmail.com]
> Sent: Thursday, December 21, 2017 9:59 PM
> To: Zhang, Qi Z <qi.z.zhang at intel.com>
> Cc: adrien.mazarguil at 6wind.com; DPDK <dev at dpdk.org>; Doherty, Declan
> <declan.doherty at intel.com>
> Subject: Re: [dpdk-dev] [RFC v2 3/5] ether: Add flow timeout support
>
> On Thu, Dec 21, 2017 at 4:35 AM, Qi Zhang <qi.z.zhang at intel.com> wrote:
> > Add new APIs to support flow timeout, application is able to 1. Setup
> > the time duration of a flow, the flow is expected to be deleted
> > automatically when timeout.
>
> Can you explain how the application (OVS) is expected to use this API?
> It will help to better understand the motivation here...
I think the purpose of the APIs is to expose the hardware feature that support
flow auto delete with a timeout.
As I know, for OVS, every flow in flow table will have time duration
A flow be offloaded to hardware is still required to be deleted in specific time,
I think these APIs help OVS to take advantage HW feature and simplify the flow
aging management
>
> Are you trying to move the aging timer from application code into the PMD?
> or can your HW remove/disable/inactivate a flow at certain time semantics
> without software context?
Yes, it for hardware feature.
>
> I would prefer to have the aging timer logic in a centralized location, leek the
> application itself or some DPDK library. instead of having each PMD
> implement its own software timers.
>
>
> > 3. Register a callback function when a flow is deleted due to timeout.
>
> Is the application 'struct rte_flow*' handle really deleted? or the flow was
> removed from HW, just in-active at this time?
Here the flow is deleted, same thing happen as rte_flow_destroy and we need to call
rte_flow_create to re-enable the flow.
I will add more explanation to avoid confusion in next release.
>
> Can a flow be re-activated? or does this require a call to
> rte_flow_destory() and ret_flow_create()?
>
> Alex
Thanks
Qi
More information about the dev
mailing list