[ovs-discuss] If ovs doesn't masking process in flow_tbl_lookup, What are the disadvantages ?

Ben Pfaff blp at ovn.org
Fri Jun 9 05:37:18 UTC 2017


With microflow cache only, there's one cache miss per microflow.
With an effective megaflow cache, the miss rate is much lower.

The paper gives examples for your other question.

On Fri, Jun 09, 2017 at 01:47:14PM +0900, Heung Sik Choi wrote:
> Thanks to reply.
> 
> Regarding your second question, which flow rules are you asking about?
> 
> I just want to know that when ovs had only an in-kernel microflow cache,
> How many in-kernel cache miss there are, and  also how much improving
>  there are when using megaflow.
> 
> And I have a last question. short-lived flows were main problem when there
> was micro flow cache. I don't know the circumstance where short lived
> connection happen often. can you let me know about it?
> 
> 
> Thanks!!
> 
> 
> 2017-06-09 13:29 GMT+09:00 Ben Pfaff <blp at ovn.org>:
> 
> > When OVS had only an in-kernel microflow cache, there were at least two
> > reasons for performance problems with many short-lived flows.  The first
> > was the cost of sending packets to userspace.  The second was the cost
> > of translating the packets through the entire OpenFlow pipeline.  The
> > megaflow cache solves both problems: it eliminates both the
> > kernel-to-user-to-kernel transition and (if the megaflow cache is
> > effective) the additional OpenFlow translations.
> >
> > Regarding your second question, which flow rules are you asking about?
> >
> > On Fri, Jun 09, 2017 at 12:22:09PM +0900, Heung Sik Choi wrote:
> > > What does "if only the microflow cache works" mean?
> > >
> > > sorry to confuse you. I'm not good at English.
> > >
> > > In the paper, the authors say that at start of ovs implementation, there
> > > has been microflow cache(EMC), but megaflow wasn't implemented.
> > >
> > > At that time, they say  there was a problem caused by short lived
> > > connections.
> > >
> > > I want to know the problem detail. I guess that the problem made ovs get
> > > flow rules from userlevel, and that made performance degradation.
> > >
> > > also I want to know that when not using megaflow, are there big
> > difference
> > > in aspect of number of flow rules.If there are the big difference, can
> > you
> > > tell me the difference in numbers?
> > >
> > >
> > >
> > > 2017-06-09 0:43 GMT+09:00 Ben Pfaff <blp at ovn.org>:
> > >
> > > > On Thu, Jun 08, 2017 at 04:33:54PM +0900, Heung Sik Choi wrote:
> > > > > 1. If only microflow cache works and there are many short lived
> > > > > connections, does it make many tuples in table, and does it suffers
> > > > serious
> > > > > performance degradation by the many tuples(very many tuple makes
> > context
> > > > > switching to Userlevel)?
> > > >
> > > > What does "if only the microflow cache works" mean?
> > > >
> > > > > 2. I know that OVS uses hash for table index. if only microflow
> > cache and
> > > > > there are small amount of entries in the table, is it possible to
> > find
> > > > > entry in O(1) time?
> > > >
> > > > Yes.
> > > >
> > > > > 3. In paper, microflow and megaflow use the word 'cache'. However,
> > when I
> > > > > open the OVS code, it looks like they are in main memory area.
> > doesn't
> > > > the
> > > > > 'cache' mean hardware cache?
> > > >
> > > > No.
> > > >
> >


More information about the discuss mailing list