[ovs-discuss] OVS Faucet tutorial broken

Brad Cowie brad at cowie.nz
Fri Aug 24 23:09:41 UTC 2018


Hi Ben,

On 25 August 2018 at 05:38, Ben Pfaff <blp at ovn.org> wrote:

> On Wed, Aug 22, 2018 at 11:08:02AM +1200, Brad Cowie wrote:
> > I think the right thing to do for netdev_dummy is to default to "up" on
> > dummy ports
> > and the user can admin them down with the ovs-appctl command if they
> want.
>
> Seems reasonable.
>
> This turned out to be more difficult than I expected because of a number
> of bugs.  Anyway, I sent a series that fixes the bugs and then changes
> the default behavior:
>         https://patchwork.ozlabs.org/project/openvswitch/list/?
> series=62396


I tried the ovs faucet tutorial as written against faucet at master and this
patch series +
https://patchwork.ozlabs.org/patch/962002/ and everything seems to be
working again. Big thanks!

> I finally tracked this down to this commit:
> >
> > https://github.com/openvswitch/ovs/commit/d39ec23de38464ee35b3098b9f6c5f
> 06d5191015
> >
> > So I think if we send to controller and pass the packet along the
> OpenFlow
> > pipeline
> > OVS will optimise away the send to controller (slow path) action.
> >
> > I see there is a "debug_slow" action that can be used to restore the old
> > behaviour
> > but this seems a little icky for us to implement in faucet.
> >
> > I also note someone already reported this issue here:
> >
> > https://github.com/openvswitch/ovs-issues/issues/145
>
> Oh, gosh, I wasted some of your time by making you track down something
> that I should already have known.  I apologize for that.
>
> I'll see what I can do about this one too.
>

No worries, I know how easy it is for things to get lost in the noise when
running
an open source project. Thanks again for the quick work.

So I think what I will do now is spend some time this week writing a patch
against the
ovs faucet tutorial recommending using OVS <=2.8 for now until this patch
is merged
and released (as OVS 2.10.1? 2.11? not sure where you will merge to). In
the past
2 weeks we've made some huge improvements to the faucet pipeline so the
output of
the tutorial is slightly wrong now anyway.

By the way we can dynamically generate our openflow pipeline now such that
tables
are automatically sized (more important for real hardware) and disable
tables that aren't
used (e.g. FIB tables are now turned off when routing disabled, ACL tables
disabled when
no ACLs have been applied). We are mostly doing this by sending a
OFPMP_TABLE_FEATURES
packet with the tables and matches we wish to use in each (we also include
a name for each
table which I see OVS 2.10.0 now supports). However we haven't been able to
get OVS to
successfully parse our OFPMP_TABLE_FEATURES packet yet. I guess I should
open a
new thread on ovs-dev to discuss whether OVS actually supports this or not?

Brad
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20180825/f9e2e87d/attachment.html>


More information about the discuss mailing list