Sorry for this very delayed reply, thx so much for the review~!
Addressed all comments to this series,
I think I have three more things to do here:
1. adding more unit tests,
2. making this command run in a separate thread,
3. received a request to add another command to detect unused openflow flows
(and test on the given flows)
I'll address them and post the final~ patches~
Thanks,
Alex Wang,
On Sun, Jun 7, 2015 at 9:58 AM, Ben Pfaff <[email protected]> wrote:
> On Mon, Jun 01, 2015 at 11:24:19AM -0700, Alex Wang wrote:
> > This commit implements a prototype of Header Space Analysis of the
> > OVS OpenFlow table.
> >
> > What It Does
> > ------------
> >
> > 1. Dump all OpenFlow rules from a specified bridge.
> > 2. Generate all-unmasked header space with specified input port number
> > and start looking up from default starting table.
> > 3. Traverse through all possible processing pipelines (i.e. OpenFlow
> > rules cascaded with resubmit action) and conduct leak check or loop
> > check.
> > 3.1 A leak check prints all possible output ports with the actual input
> > header space format.
> > 3.2 A loop check checks if an OpenFlow rule is matched multiple time in
> > the processing pipeline. It will tell if the loop is finite or
> > infinite and print the loop path.
> >
> > How To Use
> > ----------
> >
> > ovs-appctl hsa/detect-leak <bridge name> <OpenFlow port number>
> > ovs-appctl hsa/detect-loop <bridge name> <OpenFlow port number>
> >
> > Limitation
> > ----------
> >
> > - Only support a very limited set of OFPACT_* actions. And extending
> > to accept more actions can be very complicated.
> > - Single thread implementation, can take 20+ mins to run on a
> production
> > setup with ~100 OpenFlow rules.
> >
> > Signed-off-by: Alex Wang <[email protected]>
> >
> > ---
> > RFC->RFC V2:
> > - Clarify comments of 'move_map'.
> > - Change the 'move_map' to 2-D array.
> > - Make hs_clone do not double init (but seems to make it more complex).
> > - Fix the overflow risk in hsa_rule_compare().
> > - Adopt Ben's suggestions.
> > - Add example unit test (did not add complete tests since I think we may
> > want to remodel it for OVN).
>
> I would add documentation for this (roughly what is in the commit
> message above) to ovs-vswitchd.8.in, in the section dedicated to
> ovs-appctl commands.
>
> I think that this is also worth mentioning in NEWS.
>
> Acked-by: Ben Pfaff <[email protected]>
>
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev