From: Stephen Hemminger <stephen@networkplumber.org>
To: "Linus Lüssing" <linus.luessing@c0d3.blue>
Cc: bridge@lists.linux-foundation.org, b.a.t.m.a.n@lists.open-mesh.org
Subject: Re: [B.A.T.M.A.N.] [Bridge] Roaming trouble with bridge & multicast snooping
Date: Tue, 8 Sep 2015 08:52:56 -0700 [thread overview]
Message-ID: <20150908085256.0f3f6b00@urahara> (raw)
In-Reply-To: <20150908031122.GB1562@odroid>
On Tue, 8 Sep 2015 05:11:22 +0200
Linus Lüssing <linus.luessing@c0d3.blue> wrote:
> Hi bridge folks,
>
> I'm currently stuck with a simple scenario where enabling bridge
> multicast snooping causes packetloss for some time:
>
> ----------
>
> (c) <~~~> (A) <---> (B)
>
> (c) is a wifi client, connected to a wifi access point (A).
> (B) is another AP connected to (A) via ethernet cable.
> The wifi-ap and ethernet interface are bridged on both (A) and (B).
>
>
> Now (c) roams from (A) to (B):
>
> (A) <---> (B) <~~~> (c)
>
> ----------
>
> Until the next multicast query is send (up to 125 seconds), (c)
> will experience multicast packet loss: (B) does not know which
> multicast traffic (c) wants yet and blocks forwarding multicast
> traffic to it.
>
> I couldn't find an IETF standard or discussion saying something
> about how to deal with multicast snooping and roaming yet (I still
> have the feeling I must have overlooked something as this scenario
> seems common to me). Does anyone know anything about that or how
> vendors implement that on their snooping switches?
>
>
> The behaviour of (c) running a 3.16 kernel is:
> After setting its wifi interface up, it stays quiet. After getting
> a link / wifi connects, it sends an IGMP/MLD report first, without
> waiting for a query. It then sends the IPv6 Neighbor Solicitation
> messages for Duplicate Address Detection to be able to claim its
> own IPv6 addresses.
>
> However it does not resend reports / Neighbor Solicitations after
> the link goes down and up again while the interface itself stays up.
>
>
> I could think of two ways to solve the issue:
>
> Either let mac80211 (hostapd?) notify the bridge once a new client
> connects. Then let the bridge send a query to the client
> immediately and directly.
>
> Or once the bridge adds an fdb entry for a new host, send a query
> to this host (no matter if it's wireless or not) immediately,
> directly.
>
>
> The "directly" could be implemented by setting the ethernet
> destination to the according unicast MAC instead.
>
>
> Even though slightly more latency, I'd opt (and would going to
> provide a patch) for the second case.
>
>
> What do others think about this?
The only entity in this scenario that knows that it has changed
state is (c). Why doesn't the client resend a IGMP when it notes
a connection change?
next prev parent reply other threads:[~2015-09-08 15:52 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-08 3:11 [B.A.T.M.A.N.] Roaming trouble with bridge & multicast snooping Linus Lüssing
2015-09-08 15:52 ` Stephen Hemminger [this message]
2015-09-10 14:42 ` [B.A.T.M.A.N.] [Bridge] " Linus Lüssing
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150908085256.0f3f6b00@urahara \
--to=stephen@networkplumber.org \
--cc=b.a.t.m.a.n@lists.open-mesh.org \
--cc=bridge@lists.linux-foundation.org \
--cc=linus.luessing@c0d3.blue \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox