[ovs-dev] [PATCH v6 1/2] Avoid packet drop on LACP bond after link up

Ben Pfaff blp at ovn.org
Thu Jun 6 17:23:06 UTC 2019


On Thu, Jun 06, 2019 at 06:40:19AM +0000, Nitin Katiyar wrote:
> 
> 
> > -----Original Message-----
> > From: Ben Pfaff [mailto:blp at ovn.org]
> > Sent: Tuesday, June 04, 2019 11:39 PM
> > To: Nitin Katiyar <nitin.katiyar at ericsson.com>
> > Cc: ovs-dev at openvswitch.org; Manohar Krishnappa Chidambaraswamy
> > <manukc at gmail.com>
> > Subject: Re: [ovs-dev] [PATCH v6 1/2] Avoid packet drop on LACP bond after
> > link up
> > 
> > On Sun, Jun 02, 2019 at 04:06:34PM +0000, Nitin Katiyar wrote:
> > > Problem:
> > > ========
> > > During port DOWN->UP of link (slave) in a LACP bond, after receiving
> > > the LACP PDU with SYNC set for both actor and partner, the bond-slave
> > > remains "disabled" until OVS main thread runs LACP state machine and
> > > eventually "enables" the bond-slave. With this, we have observed
> > > delays in the order of 350ms and packets are dropped in OVS due to
> > > bond-admissibility check (packets received on slave in "disabled" state are
> > dropped).
> > 
> > I had to think about this a bit.  Is the following alternate statement of the
> > problem also correct?
> Yes, that's correct. Do you want me to update the patch with the following in problem statement?

I'd appreciate that.  If I left out important details, please feel free
to add them back in.

> > The OVS state machine that enables and disables bond slaves runs in the OVS
> > main thread.  The OVS code that processes received LACP packets runs in a
> > different thread.  Until now, when the latter processes a LACP PDU that
> > should enable a slave, the slave was only enabled when the main thread was
> > able to run the state machine.   In some cases this led to delays of up to
> > 350ms when the main thread was busy or not scheduled, which led to
> > corresponding delays in which packets were dropped due to the bond-
> > admissibility check.


More information about the dev mailing list