← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1682805] Re: transient switching loop caused by neutron-openvswitch-agent

 

After I recheck this issue, I find that transient switching loop may not exist...
The fail_mode of br-int, br-eth0 and br-ex are secure, which means that when node reboot or OpenvSwitch restart, there will no normal flow in these bridges so no packets can pass these bridges.
The normal flow in br-int will not make switching loop because there is no normal flow in br-eth0 and br-ex. Normal flow and drop flow are added in br-eth0 then br-ex. It seems transient switching loop can not happen.

** Changed in: neutron
       Status: In Progress => Invalid

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1682805

Title:
  transient switching loop caused by neutron-openvswitch-agent

Status in neutron:
  Invalid

Bug description:
  If we have the topology bellow in network node.

  https://etherpad.openstack.org/p/neutron_transient_switching_loop

  The ports on switch connected to eth0 and eth1 set to trunk all VLANs.
  When neutron-openvswitch-agent restart, First it will set br-int bridge by self.setup_integration_br(), then set br-eth0 and br-ex by self.setup_physical_bridges(self.bridge_mappings).

  Before this bug (https://bugs.launchpad.net/neutron/+bug/1383674), all flows in br-int will clear when neutron-openvswitch-agent restart, this will cause the transient switching loop decribed bellow.
  After the bug above fixed, the flows in br-int will remain to keep the network connected if neutron-openvswitch-agent restart, but if the network node reboot, the transient switching loop will also happen as decribed bellow.

  In self.setup_integration_br(), A normal flow in table 0 will be added in br-int flow.
  In the self.setup_physical_bridges(self.bridge_mappings), Drop flow for packet coming from int-br-eth0 and int-br-ex will be added in br-int flow.
  This drop flows will cut the switching loop from switch to br-int.
  But before the drop flows added to br-int, If there is a broadcast packet coming from switch, the packet will loop bewtween switch and br-int.

  We should add normal flow in table 0 in br-int after the drop flows
  added.

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1682805/+subscriptions


References