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
--
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to : [email protected]
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help : https://help.launchpad.net/ListHelp