[ovs-dev] [PATCH 5/8] lib/classifier: Optimize megaflows for single rule case.
Ben Pfaff
blp at nicira.com
Fri Jun 13 17:23:23 UTC 2014
On Fri, Jun 13, 2014 at 10:21:36AM -0700, Ben Pfaff wrote:
> On Mon, Jun 09, 2014 at 11:53:52AM -0700, Jarno Rajahalme wrote:
> > When, during a classifier lookup, we narrow down to a single potential
> > rule, it is enough to match on ("unwildcard") one bit that differs
> > between the packet and the rule.
> >
> > This is a special case of the more general algorithm, where it is
> > sufficient to match on enough bits that separates the packet from all
> > higher priority rules than the matched rule. For a miss that would be
> > all the rules. Implementing this is expensive for a more than a few
> > rules. This patch starts by doing this for a single rule when we
> > already have it, also reducing the lookup cost by finishing the lookup
> > earlier than before.
> >
> > Signed-off-by: Jarno Rajahalme <jrajahalme at nicira.com>
>
> In find_match_wc(), suppose that we narrow down to half a dozen rules
> in the first stage, and then to a single rule in the second stage. It
> looks to me like this code would only unwildcard one bit in that case,
> but I am not sure that this is correct: don't we need to unwildcard
> the bits that the first stage examined?
Please ignore that review. I was reading the wrong version.
More information about the dev
mailing list