Re: [ovs-discuss] a struct to keep flow scores
OK. I'm not certain why you need new high-level data structures for this. The code already propagates information from the datapath into the OpenFlow flows and I think that you can just follow the existing pattern to convey your new data. On Thu, May 11, 2017 at 01:50:32PM +, Avi Cohen (A) wrote: > Thanks Ben, > We need to test another eviction criteria - not LRU, > but learn the flows other scores such as flow effective time / flow usage , > and to do eviction based on these scores > Best Regards > avi > > > -Original Message- > > From: Ben Pfaff [mailto:b...@ovn.org] > > Sent: Thursday, 11 May, 2017 4:42 PM > > To: Avi Cohen (A) > > Cc: ovs-discuss@openvswitch.org > > Subject: Re: [ovs-discuss] a struct to keep flow scores > > > > OVS already has mechanisms for this kind of thing. For datapath flows, OVS > > already evicts flows based on these criteria. For OpenFlow flows, OVS > > already > > supports approximate-LRU eviction. I'm not sure what you're going to > > additionally get out of adding more to these mechanisms. Do you have a > > high- > > level goal? > > > > On Thu, May 11, 2017 at 06:42:26AM +, Avi Cohen (A) wrote: > > > Thanks Ben, > > > The general idea is to store flow info (pkt, bytes, last_time_used) > > > which is updated every dumping phase and learn about flow behavior To > > calculate flow-usage and and flow-span scores in order to evict flows > > based > > this criteria. > > > > > > I thought of 2 implementation methods: > > > 1st impl. Methiod > > > Store the flow statistics (pkt, bytes, last_time_used) which is > > > updated every > > dumping phase in a flow ring-buffer > > > So we need to store info of flows that are in openflow tables that > > > were installed at least one time at dp-cache and currently are or > > > aren't in > > dp-cache The question is where to allocate this ring buffer ? > > > > > > 2nd impl. Method: > > > Maintain a global sliding window contains all flows statistics, then > > > at eviction phase - calculate the scores based on the sliding window > > information The question is where to allocate this sliding window ? > > > Best Regards > > > avi > > > > > > > > > > -Original Message- > > > > From: Ben Pfaff [mailto:b...@ovn.org] > > > > Sent: Thursday, 11 May, 2017 6:49 AM > > > > To: Avi Cohen (A) > > > > Cc: ovs-discuss@openvswitch.org > > > > Subject: Re: [ovs-discuss] a struct to keep flow scores > > > > > > > > On Wed, May 10, 2017 at 07:12:27AM +, Avi Cohen (A) wrote: > > > > > I need to keep some score information per flow - which exist in > > > > > the open-flow > > > > tables at user space , not necessarily in the data-path cache. > > > > > These scores are learned during flow dumping phase - but should be > > > > > saved > > > > also when flow is evicted from data-path. > > > > > The udpif_key struct is not suitable for this since it exist only > > > > > when flow exist > > > > in the data-path. > > > > > What is the suitable structure to keep this info ? > > > > > > > > What kind of information is this? How to deal with it depends on what > > > > it is. ___ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
Re: [ovs-discuss] a struct to keep flow scores
Thanks Ben, We need to test another eviction criteria - not LRU, but learn the flows other scores such as flow effective time / flow usage , and to do eviction based on these scores Best Regards avi > -Original Message- > From: Ben Pfaff [mailto:b...@ovn.org] > Sent: Thursday, 11 May, 2017 4:42 PM > To: Avi Cohen (A) > Cc: ovs-discuss@openvswitch.org > Subject: Re: [ovs-discuss] a struct to keep flow scores > > OVS already has mechanisms for this kind of thing. For datapath flows, OVS > already evicts flows based on these criteria. For OpenFlow flows, OVS already > supports approximate-LRU eviction. I'm not sure what you're going to > additionally get out of adding more to these mechanisms. Do you have a high- > level goal? > > On Thu, May 11, 2017 at 06:42:26AM +, Avi Cohen (A) wrote: > > Thanks Ben, > > The general idea is to store flow info (pkt, bytes, last_time_used) > > which is updated every dumping phase and learn about flow behavior To > calculate flow-usage and and flow-span scores in order to evict flows based > this criteria. > > > > I thought of 2 implementation methods: > > 1st impl. Methiod > > Store the flow statistics (pkt, bytes, last_time_used) which is updated > > every > dumping phase in a flow ring-buffer > > So we need to store info of flows that are in openflow tables that > > were installed at least one time at dp-cache and currently are or aren't > > in > dp-cache The question is where to allocate this ring buffer ? > > > > 2nd impl. Method: > > Maintain a global sliding window contains all flows statistics, then > > at eviction phase - calculate the scores based on the sliding window > information The question is where to allocate this sliding window ? > > Best Regards > > avi > > > > > > > -Original Message- > > > From: Ben Pfaff [mailto:b...@ovn.org] > > > Sent: Thursday, 11 May, 2017 6:49 AM > > > To: Avi Cohen (A) > > > Cc: ovs-discuss@openvswitch.org > > > Subject: Re: [ovs-discuss] a struct to keep flow scores > > > > > > On Wed, May 10, 2017 at 07:12:27AM +, Avi Cohen (A) wrote: > > > > I need to keep some score information per flow - which exist in > > > > the open-flow > > > tables at user space , not necessarily in the data-path cache. > > > > These scores are learned during flow dumping phase - but should be > > > > saved > > > also when flow is evicted from data-path. > > > > The udpif_key struct is not suitable for this since it exist only > > > > when flow exist > > > in the data-path. > > > > What is the suitable structure to keep this info ? > > > > > > What kind of information is this? How to deal with it depends on what it > > > is. ___ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
Re: [ovs-discuss] a struct to keep flow scores
OVS already has mechanisms for this kind of thing. For datapath flows, OVS already evicts flows based on these criteria. For OpenFlow flows, OVS already supports approximate-LRU eviction. I'm not sure what you're going to additionally get out of adding more to these mechanisms. Do you have a high-level goal? On Thu, May 11, 2017 at 06:42:26AM +, Avi Cohen (A) wrote: > Thanks Ben, > The general idea is to store flow info (pkt, bytes, last_time_used) which is > updated every dumping phase and learn about flow behavior > To calculate flow-usage and and flow-span scores in order to evict flows > based this criteria. > > I thought of 2 implementation methods: > 1st impl. Methiod > Store the flow statistics (pkt, bytes, last_time_used) which is updated > every dumping phase in a flow ring-buffer > So we need to store info of flows that are in openflow tables that were > installed at least one time at dp-cache and currently are or aren't in > dp-cache > The question is where to allocate this ring buffer ? > > 2nd impl. Method: > Maintain a global sliding window contains all flows statistics, then at > eviction phase - calculate the scores based on the sliding window information > The question is where to allocate this sliding window ? > Best Regards > avi > > > > -Original Message- > > From: Ben Pfaff [mailto:b...@ovn.org] > > Sent: Thursday, 11 May, 2017 6:49 AM > > To: Avi Cohen (A) > > Cc: ovs-discuss@openvswitch.org > > Subject: Re: [ovs-discuss] a struct to keep flow scores > > > > On Wed, May 10, 2017 at 07:12:27AM +, Avi Cohen (A) wrote: > > > I need to keep some score information per flow - which exist in the > > > open-flow > > tables at user space , not necessarily in the data-path cache. > > > These scores are learned during flow dumping phase - but should be saved > > also when flow is evicted from data-path. > > > The udpif_key struct is not suitable for this since it exist only when > > > flow exist > > in the data-path. > > > What is the suitable structure to keep this info ? > > > > What kind of information is this? How to deal with it depends on what it > > is. ___ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss