public inbox for b.a.t.m.a.n@lists.open-mesh.org
 help / color / mirror / Atom feed
From: Marek Lindner <mareklindner@neomailbox.ch>
To: b.a.t.m.a.n@lists.open-mesh.org
Subject: Re: [B.A.T.M.A.N.] [PATCHv14 6/6] batman-adv: Send multicast packets to nodes with a WANT_ALL flag
Date: Sun, 16 Feb 2014 14:32:43 +0800	[thread overview]
Message-ID: <2129858.6hlNT8CZE3@diderot> (raw)
In-Reply-To: <1392482874-9024-7-git-send-email-linus.luessing@web.de>

[-- Attachment #1: Type: text/plain, Size: 2436 bytes --]

On Saturday 15 February 2014 17:47:54 Linus Lüssing wrote:
> With this patch a node sends IPv4 multicast packets to nodes which
> have a BATADV_MCAST_WANT_ALL_IPV4 flag set and IPv6 multicast packets
> to nodes which have a BATADV_MCAST_WANT_ALL_IPV6 flag set, too.
> 
> Why is this needed? There are scenarios involving bridges where
> multicast report snooping and multicast TT announcements are not
> sufficient, which would lead to packet loss for some nodes otherwise:
> 
> MLDv1 and IGMPv1/IGMPv2 have a suppression mechanism
> for multicast listener reports. When we have an MLDv1/IGMPv1/IGMPv2
> querier behind a bridge then our snooping bridge is potentially not
> going to see any reports even though listeners exist because according
> to RFC4541 such reports are only forwarded to multicast routers:
> 
> -----------------------------------------------------------
>             ---------------
> {Querier}---|Snoop. Switch|----{Listener}
>             ---------------
>                        \           ^
>                       -------
>                       | br0 |  <  ???
>                       -------
>                           \
>                      _-~---~_
>                  _-~/        ~-_
>                 ~   batman-adv  \-----{Sender}
>                 \~_   cloud    ~/
>                    -~~__-__-~_/
> 
> I)  MLDv1 Query:  {Querier}  -> flooded
> II) MLDv1 Report: {Listener} -> {Querier}
> 
> -> br0 cannot detect the {Listener}
> => Packets from {Sender} need to be forwarded to all
>    detected listeners and MLDv1/IGMPv1/IGMPv2 queriers.
> 
> -----------------------------------------------------------
> 
> Note that we do not need to explicitly forward to MLDv2/IGMPv3 queriers,
> because these protocols have no report suppression: A bridge has no
> trouble detecting MLDv2/IGMPv3 listeners.
> 
> Even though we do not support bridges yet we need to provide the
> according infrastructure already to not break compatibility later.
> 
> Signed-off-by: Linus Lüssing <linus.luessing@web.de>
> ---
>  main.c           |    2 +
>  multicast.c      |  178
> +++++++++++++++++++++++++++++++++++++++++++++++++++++-
> packet.h         |    4 ++
>  send.c           |    1 +
>  soft-interface.c |    2 +
>  types.h          |   14 ++++-
>  6 files changed, 198 insertions(+), 3 deletions(-)

Applied in revision 02705e4.

Thanks,
Marek

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 490 bytes --]

      reply	other threads:[~2014-02-16  6:32 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-15 16:47 [B.A.T.M.A.N.] [PATCHv14 0/6] Basic Multicast Optimizations Linus Lüssing
2014-02-15 16:47 ` [B.A.T.M.A.N.] [PATCHv14 1/6] batman-adv: Multicast Listener Announcements via Translation Table Linus Lüssing
2014-02-16  6:23   ` Marek Lindner
2014-02-15 16:47 ` [B.A.T.M.A.N.] [PATCHv14 2/6] batman-adv: introduce capability initialization bitfield Linus Lüssing
2014-02-16  6:24   ` Marek Lindner
2014-02-15 16:47 ` [B.A.T.M.A.N.] [PATCHv14 3/6] batman-adv: Announce new capability via multicast TVLV Linus Lüssing
2014-02-16  6:25   ` Marek Lindner
2014-02-15 16:47 ` [B.A.T.M.A.N.] [PATCHv14 4/6] batman-adv: Modified forwarding behaviour for multicast packets Linus Lüssing
2014-02-16  6:28   ` Marek Lindner
2014-02-15 16:47 ` [B.A.T.M.A.N.] [PATCHv14 5/6] batman-adv: Add IPv4 link-local/IPv6-ll-all-nodes multicast support Linus Lüssing
2014-02-16  6:30   ` Marek Lindner
2015-06-10  8:52   ` Sven Eckelmann
2014-02-15 16:47 ` [B.A.T.M.A.N.] [PATCHv14 6/6] batman-adv: Send multicast packets to nodes with a WANT_ALL flag Linus Lüssing
2014-02-16  6:32   ` Marek Lindner [this message]

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=2129858.6hlNT8CZE3@diderot \
    --to=mareklindner@neomailbox.ch \
    --cc=b.a.t.m.a.n@lists.open-mesh.org \
    /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