-
Notifications
You must be signed in to change notification settings - Fork 670
fastdp rules set to two hosts for one mac #2428
Comments
It does this when we don't know the destination for a MAC; it relays the packet to every peer using the broadcast topology. So now I don't know why it didn't remove the extra rules once the location of the MAC was learned. |
I failed to re-create the symptom after several runs.
|
There are two kinds of broadcast:
In both cases we relay packets via the broadcast topology as you describe, but we only create flow rules in the first case. Edit: this is for local bridging only (see here) |
First, some more background information from Bryan on what he was doing at the time this was observed - he had three connected peers, and was simply playing around with pinging between containers on two of them and observing for anything strange on the third. In other words, there was no attempt at forcing MAC collisions or moves as per the repro of #2436 or any other complicate shenanigans. I have since reproduced the 'broadcast' flow rule seen above by following these steps:
The ICMP request packet resulting from the second ping results in the installation on host1 of a broadcast (e.g. to both host2 and host 3) flow rule destined for Why does this not happen on the first ping request? On the first ping, The only way that this (unnecessary) broadcast rule will go away is if it gets expired through lack of use - if traffic continues to flow to that MAC the flow will be kept alive. |
Note that this is less important than the suspected flow rule problem with #2436, as that can blackhole traffic indefinitely whereas this only impacts performance. |
As seen in
weave report
:Currently I have no idea why it decided to do this; in the logs the
22:59:1b:91:a8:32
address is only seen as remote fromhost2
.The text was updated successfully, but these errors were encountered: