[ovs-dev] [PATCH] ipfix: implement flow caching and aggregation in exporter

Romain Lenglet rlenglet at vmware.com
Wed Aug 21 00:38:31 UTC 2013


----- Original Message -----
> From: "Ben Pfaff" <blp at nicira.com>
> To: "Romain Lenglet" <rlenglet at vmware.com>
> Cc: dev at openvswitch.org
> Sent: Tuesday, August 20, 2013 5:08:02 PM
> Subject: Re: [PATCH] ipfix: implement flow caching and aggregation in exporter
> 
> On Tue, Aug 20, 2013 at 03:02:47PM -0700, Romain Lenglet wrote:
> > Implement a per-exporter flow cache with active timeout expiration.
> > Add columns "cache_active_timeout" and "cache_max_flows" into table
> > "IPFIX" to configure each cache.
> > 
> > Add per-flow elements "octetDeltaSumOfSquares",
> > "minimumIpTotalLength", and "maximumIpTotalLength" to replace
> > "ethernetTotalLength".  Add per-flow element "flowEndReason" to
> > indicate whether a flow has expired because of an active timeout, the
> > cache size limit being reached, or the exporter being stopped.
> > 
> > Signed-off-by: Romain Lenglet <rlenglet at vmware.com>
> 
> I'm mostly happy with this but I still want something else instead of
> timercmp, whether that's a timeval_compare_3way() function in
> timeval.[ch] or something else.

Thank you for your review and your suggestions.  I have replaced
timevals with uint64_t microsecond timestamps, and that simplified
the code a lot and allowed me to find a bug in the calculation of
negative deltas in ipfix_put_data_set().
So now I use timevals only temporarily to get the current time
and I don't compare timevals anymore.

I will send an updated patch shortly after I finish testing.

Thanks!
--
Romain Lenglet



More information about the dev mailing list