[ovs-discuss] MAC Learning not working correctly in a ring network with STP enabled

Seshadri, Usha usha.seshadri at lmco.com
Thu Jul 1 17:59:54 UTC 2021

Pinging the group again with this issue. Has anyone been able to get MAC learning to work in a ring topology? I tried enabling secure mode as well as STP in a standalone mode, but haven't been able to get it to work. Thanks in advance for your response.


From: Seshadri, Usha (US)
Sent: Sunday, June 27, 2021 10:15 PM
To: ovs-discuss at openvswitch.org
Subject: MAC Learning not working correctly in a ring network with STP enabled


I am working with OpenvSwitch 2.12.0 binaries install. I have configured an overlay VXLAN network as shown below and I used the tutorials to setup MAC learning.  The figure shows the IP address and the corresponding MAC address of the terminals connected to OVS. STP is enabled on all 4 OVS instances. Without configuring the link between OVS-1 and OVS-4, MAC learning works great. But once that link is connected to form a ring network, MAC learning on the switches seem to get confused and certain ports/ MAC address mapping is wrong. The table below shows the relevant information from the dump-flows from the MAC learning table. The notes column provides more details regarding the discrepancies.

Another observation is STP is blocked on port 6 of OVS-2 whereas from OVS-3, port 7 has it as STP-FORWARD. Shouldn't OVS-3 have port 7 blocked as well? Port 6 on OVS-2 is the only blocked port on the entire network.

          [cid:image002.jpg at 01D76E81.5CD24680]

OVS Instance

Correct Mapping of port to MAC address

Incorrect Mapping of port to MAC address



dl_dst=6a:6d:0c:f6:f5:83 actions=load:0x4->NXM_NX_REG0[0..15]
dl_dst=86:cf:71:7e:50:59 actions=load:0x5->NXM_NX_REG0[0..15]
dl_dst=32:09:e2:3d:6c:dc actions=load:0x5->NXM_NX_REG0[0..15]

dl_dst=6a:6d:0c:f6:f5:83 actions=load:0x5->NXM_NX_REG0[0..15]
dl_dst=86:cf:71:7e:50:59 actions=load:0x5->NXM_NX_REG0[0..15] dl_dst=32:09:e2:3d:6c:dc actions=load:0x5->NXM_NX_REG0[0..15]

Terminal 4 MAC is now on the wrong port. OVS-4 learns terminal 1's MAC on port 5 even though OVS-2 and OVS-3 direct link is STP-blocked.


dl_dst=6a:6d:0c:f6:f5:83 actions=load:0x5->NXM_NX_REG0[0..15]
dl_dst=86:cf:71:7e:50:59 actions=load:0x7->NXM_NX_REG0[0..15]

dl_dst=6a:6d:0c:f6:f5:83 actions=load:0x7->NXM_NX_REG0[0..15]
dl_dst=86:cf:71:7e:50:59 actions=load:0x7->NXM_NX_REG0[0..15]

Terminal 4 MAC is now on the wrong port. OVS-3 doesn't realize port 6 on OVS-2 is blocked.


dl_dst=6a:6d:0c:f6:f5:83 actions=load:0x6->NXM_NX_REG0[0..15]
dl_dst=32:09:e2:3d:6c:dc actions=load:0x6->NXM_NX_REG0[0..15]

dl_dst=6a:6d:0c:f6:f5:83 actions=load:0x5->NXM_NX_REG0[0..15]

Missing MAC learning for 32:09... for Terminal 3.


dl_dst=86:cf:71:7e:50:59 actions=load:0x5->NXM_NX_REG0[0..15]
dl_dst=32:09:e2:3d:6c:dc actions=load:0x6->NXM_NX_REG0[0..15]

dl_dst=86:cf:71:7e:50:59 actions=load:0x8->NXM_NX_REG0[0..15]
dl_dst=6a:6d:0c:f6:f5:83 actions=load:0x8->NXM_NX_REG0[0..15]

Terminal 1 MAC is now on the wrong port. Missing MAC learning for 32:09... for Terminal 3.

Is STP causing problems with MAC learning? I appreciate any feedback on this issue.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20210701/9173a38f/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image002.jpg
Type: image/jpeg
Size: 13634 bytes
Desc: image002.jpg
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20210701/9173a38f/attachment-0001.jpg>

More information about the discuss mailing list