[ovs-discuss] is this a bug?

Ben Pfaff blp at nicira.com
Tue Dec 30 04:52:57 UTC 2014


Both sides send out the hello message immediately upon connection;
neither hello is a reply to the other.

On Mon, Dec 29, 2014 at 03:44:02PM -0800, Ashok Chippa wrote:
> Thanks, I just read that. Seems like the switch sends it out first, and the
> controller replies to it with its own hello.
> 
> Not a full-fledged controller, just the bare minimum to test my firewall
> functionality.  Can you recommend one (preferably written in python) that I
> can strip and use? Appreciate it.
> 
> 
> On Mon, Dec 29, 2014 at 3:21 PM, Ben Pfaff <blp at nicira.com> wrote:
> 
> > The OpenFlow handshake consists of 2 messages, one in each direction.
> >
> > Are you writing your own controller? There are lots of them around so
> > writing
> > a new one without reading any of the relevant specifications seems like a
> > bad
> > idea.
> >
> > On Mon, Dec 29, 2014 at 3:19 PM, Ashok Chippa <a.n.chippa at gmail.com>
> > wrote:
> > > Thanks, makes sense. I am just about to read the OFP... Is this a 3-way
> > > handshake?
> > >
> > > On Mon, Dec 29, 2014 at 3:14 PM, Ben Pfaff <blp at nicira.com> wrote:
> > >>
> > >> Both sides of an OpenFlow connection send a hello message.  If the
> > >> controller isn't doing that then it's buggy.
> > >>
> > >> On Mon, Dec 29, 2014 at 03:08:14PM -0800, Ashok Chippa wrote:
> > >> > The controller was down, brought it up and captured the logs again:
> > >> >
> > >> > ashok-vb ovs-switchd: -ovs|02752|rconn|DBG|br-int<->
> > >> > tcp:127.0.0.1:6789: entering BACKOFF
> > >> > ashok-vb ovs-switchd: -ovs|02753|rconn|DBG|br-int<->tcp:
> > 127.0.0.1:6789:
> > >> > entering CONNECTING
> > >> > ashok-vb ovs-switchd: -ovs|02754|vconn|DBG|tcp:127.0.0.1:6789: sent
> > >> > (Success): OFPT_HELLO (OF1.3) (xid=0x2a0):
> > >> > ashok-vb ovs-switchd: -ovs|02755|rconn|DBG|br-int<-
> > >> > >tcp:127.0.0.1:6789: entering BACKOFF
> > >> > <repeat>
> > >> >
> > >> > So the openvswitch sends out the OFPT_HELLO and then enters
> > BACKOFF... I
> > >> > guess it's not getting a hello back? I need to read the OF protocol
> > and
> > >> > see
> > >> > if controller needs to send a hello back, I am sure it needs to... I
> > >> > guess
> > >> > this would be a 2-way/3-way handshake...
> > >> >
> > >> >
> > >> > On Mon, Dec 29, 2014 at 2:49 PM, Ashok Chippa <a.n.chippa at gmail.com>
> > >> > wrote:
> > >> >
> > >> > > I found them in /var/log/syslog... This is what I see in the logs:
> > >> > >
> > >> > > ashok-vb ovs-switchd: ovs|02382|fail_open|INFO|Still in fail-open
> > mode
> > >> > > after 21365 seconds disconnected from controller
> > >> > > ashok-vb ovs-switchd:
> > >> > > -ovs|02383|rconn|DBG|br-int<->tcp:127.0.0.1:6789:
> > >> > > entering BACKOFF
> > >> > > ashok-vb ovs-switchd:
> > >> > > -ovs|02384|rconn|WARN|br-int<->tcp:127.0.0.1:6789:
> > >> > > connection failed (Connection refused)
> > >> > > ashok-vb ovs-switchd:
> > >> > > -ovs|02385|rconn|DBG|br-int<->tcp:127.0.0.1:6789:
> > >> > > entering BACKOFF
> > >> > > ashok-vb ovs-switchd:
> > >> > > -ovs|02386|rconn|WARN|br-int<->tcp:127.0.0.1:6789:
> > >> > > connection failed (Connection refused)
> > >> > > ...
> > >> > > <repeat>
> > >> > >
> > >> > > On the controller I see:
> > >> > >
> > >> > > listening on socket 127.0.0.1:6789
> > >> > > accept connection from 127.0.0.1:42100
> > >> > > accept connection from 127.0.0.1:42101
> > >> > > accept connection from 127.0.0.1:42102
> > >> > > accept connection from 127.0.0.1:42103
> > >> > > <repeat>
> > >> > >
> > >> > >
> > >> > > On Mon, Dec 29, 2014 at 2:37 PM, Ben Pfaff <blp at nicira.com> wrote:
> > >> > >
> > >> > >> The logs go wherever you configured them to go with the --log-file
> > >> > >> option to ovs-vswitchd.
> > >> > >>
> > >> > >> On Mon, Dec 29, 2014 at 2:27 PM, Ashok Chippa <
> > a.n.chippa at gmail.com>
> > >> > >> wrote:
> > >> > >> > Thanks a lot Ben. The command seems to work. Where will I find
> > the
> > >> > >> logs? Is
> > >> > >> > there a way to dump the debug info onto the terminal for quick
> > >> > >> debugging?
> > >> > >> >
> > >> > >> > Appreciate your help.
> > >> > >> >
> > >> > >> > Hopefully at some point, all the ovs cli commands will be
> > >> > >> > uniform... :)
> > >> > >> > vlog/set v/s vlog-set... similar to ovs-vsctl list-br and not
> > >> > >> > ovs-vsctl
> > >> > >> > list/br... :)
> > >> > >> >
> > >> > >> > On Mon, Dec 29, 2014 at 10:28 AM, Ben Pfaff <blp at nicira.com>
> > wrote:
> > >> > >> >>
> > >> > >> >> On Fri, Dec 26, 2014 at 09:03:24PM -0800, Ashok Chippa wrote:
> > >> > >> >> > After fixing the "ovs-vsctl set-controller..."  command (with
> > >> > >> >> > tcp:
> > >> > >> >> > 127.0.0.1:6789 instead of just 127.0.0.1:6789), I can now get
> > >> > >> >> > the
> > >> > >> >> > openvswitch connecting to my controller...
> > >> > >> >> >
> > >> > >> >> > However, it seems (but I could be wrong) that the switch seems
> > >> > >> >> > to be
> > >> > >> >> > repeatedly connecting with the controller:
> > >> > >> >> > ashok-vb$ python dispatcher.py
> > >> > >> >> > _dispatcher_init()
> > >> > >> >> > listening on socket: 127:0.0.1:6789
> > >> > >> >> > Connected with 127.0.0.1:39548
> > >> > >> >> > Connected with 127.0.0.1:39549
> > >> > >> >> > Connected with 127.0.0.1:39550
> > >> > >> >> > Connected with 127.0.0.1:39551
> > >> > >> >> > Connected with 127.0.0.1:39552
> > >> > >> >> > Connected with 127.0.0.1:39553
> > >> > >> >> > Connected with 127.0.0.1:39554
> > >> > >> >> > Connected with 127.0.0.1:39555
> > >> > >> >> > Connected with 127.0.0.1:39556
> > >> > >> >> > Connected with 127.0.0.1:39557
> > >> > >> >> > Connected with 127.0.0.1:39558
> > >> > >> >> > Connected with 127.0.0.1:39559
> > >> > >> >> > Connected with 127.0.0.1:39560
> > >> > >> >> > Connected with 127.0.0.1:39561
> > >> > >> >> > ...
> > >> > >> >> >
> > >> > >> >> > Any clues from openvswitch + socket experts out there as to
> > why
> > >> > >> >> > this
> > >> > >> may
> > >> > >> >> > be
> > >> > >> >> > happening? Appreciate it.
> > >> > >> >>
> > >> > >> >> I'd look in the ovs-vswitchd log.  If ovs-vswitchd is
> > >> > >> >> disconnecting,
> > >> > >> >> it should tell you why.  You might get more information if you
> > >> > >> >> turn up
> > >> > >> >> appropriate logging levels: "ovs-appctl vlog/set vconn rconn"
> > >> > >> >
> > >> > >> >
> > >> > >>
> > >> > >>
> > >> > >>
> > >> > >> --
> > >> > >> "I don't normally do acked-by's.  I think it's my way of avoiding
> > >> > >> getting blamed when it all blows up."               Andrew Morton
> > >> > >>
> > >> > >
> > >> > >
> > >
> > >
> >
> >
> >
> > --
> > "I don't normally do acked-by's.  I think it's my way of avoiding
> > getting blamed when it all blows up."               Andrew Morton
> >



More information about the discuss mailing list