public inbox for b.a.t.m.a.n@lists.open-mesh.org
 help / color / mirror / Atom feed
From: Simon Wunderlich <sw@simonwunderlich.de>
To: b.a.t.m.a.n@lists.open-mesh.org
Subject: Re: [B.A.T.M.A.N.] Network loops on gateways join
Date: Wed, 12 Sep 2018 10:34:59 +0200	[thread overview]
Message-ID: <3502401.iodOTMQ5x1@prime> (raw)
In-Reply-To: <DB5PR0301MB1944DC35135E3B7AFEDF9596E5040@DB5PR0301MB1944.eurprd03.prod.outlook.com>

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

Hi Francesco,

On Tuesday, September 11, 2018 4:38:13 PM CEST Francesco Salvatore 
[fabbricadigitale] wrote:
> Hi all,
> We're running a mesh network made of a cloud of clients and multiple
> gateways on two separate VLANs (on eth0, not on top of BATMAN).
> The setup is similar to the one described in the figure.
> https://www.open-mesh.org/attachments/download/132/Test_2xLAN.dia.png
> 
> We noticed that, sometimes, when new gateways are added to the already
> running infrastructure network loops appear on VLANs
> We dumped VLANs network traffic during one of these loops and we saw a storm
> of BLA frames that collapsed the network. It seems that the frame (an
> ANNOUNCE one, in this case) was firstly generated by a gateway and started
> to loop inside the LAN, and then even the others gateways propagated the
> same frame. After a few seconds also other frames (coming from different
> gateways) started to loop.
> 
> Our hypothesis is that one of gateways directly injects BLA frames inside
> mesh and that lead to an unmanageable loop. So, we have 2 questions:
> 	- Are BLA frames (except for LOOP DETECT) allowed to flow only on
> LAN?

Yes, all frames except LOOP DETECT are blocked in BATMAN

> 	- If so, is our hypothesis reasonable?
> 
> You can see the situation described above in the screenshot below.
> http://oi63.tinypic.com/v7wl1w.jpg

Unfortunately the screenshot doesn't describe which packets looped exactly.

Are you sure it's an announce frame? It could also be a claim frame where two 
hosts try to claim hosts from each other.

BATMAN has a grace period to allow broadcasts from the LAN only after 1 minute 
of operation. This is done to make sure that the mesh is properly established 
and other gateways and their claims are detected before traffic is allowed on 
it, at least potentially looping traffic. Therefore, you should make sure 
(e.g. in your firmware or setup scripts) that the LAN is operational once 
batman is brought op.

If the mesh isn't fully established or it's actually split due to different 
channels or similar, then you may run in an unresolved limitation of BLA:

https://www.open-mesh.org/projects/batman-adv/wiki/Bridge-loop-avoidance-II#Limitations

For this reason we have the loop detect packets. If a loop is detected, an 
uevent is sent to userspace, and the firmware should react appropiately, e.g. 
by shutting down batman-adv.

Cheers,
      Simon

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

  reply	other threads:[~2018-09-12  8:34 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-11 16:38 [B.A.T.M.A.N.] Network loops on gateways join Francesco Salvatore [fabbricadigitale]
2018-09-12  8:34 ` Simon Wunderlich [this message]
2018-09-12 10:44   ` [B.A.T.M.A.N.] R: " Francesco Salvatore [fabbricadigitale]
2018-09-17 13:56     ` Simon Wunderlich
2018-09-17 15:44       ` [B.A.T.M.A.N.] R: " Francesco Salvatore [fabbricadigitale]
2018-09-18 12:44         ` Simon Wunderlich

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=3502401.iodOTMQ5x1@prime \
    --to=sw@simonwunderlich.de \
    --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