The current default settings for optional features in batman-adv seems to be
based around the idea that the user only compiles what he requires. They will
automatically enabled when they are compiled in. For example the network coding
part of batman-adv is by default disabled in the out-of-tree module but will be
enabled when the code is compiled during the module build.
But distributions like Debian just enable all features of the batman-adv kernel
module and hope that more experimental features or features with possible
negative effects have to be enabled using some runtime configuration interface.
The network_coding feature can help in specific setups but also has drawbacks
and is not disabled by default in the out-of-tree module. Disabling by default
in the runtime config seems to be also quite sane.
The bridge_loop_avoidance is the only feature which is disabled by default but
may be necessary even in simple setups. Packet loops may even be created
during the initial node setup when this is not enabled. This is different than
STP on bridges because mesh is usually used on Adhoc WiFi. Having two nodes
(by accident) in the same LAN segment and in the same mesh network is rather
common in this situation.
Signed-off-by: Sven Eckelmann <sven(a)narfation.org>
---
DAT is now removed from this patch because the discussion showed that it is
preferred to have DAT enabled by default.
network-coding.c | 2 +-
soft-interface.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/network-coding.c b/network-coding.c
index 127cc4d..be005b2 100644
--- a/network-coding.c
+++ b/network-coding.c
@@ -155,7 +155,7 @@ err:
*/
void batadv_nc_init_bat_priv(struct batadv_priv *bat_priv)
{
- atomic_set(&bat_priv->network_coding, 1);
+ atomic_set(&bat_priv->network_coding, 0);
bat_priv->nc.min_tq = 200;
bat_priv->nc.max_fwd_delay = 10;
bat_priv->nc.max_buffer_time = 200;
diff --git a/soft-interface.c b/soft-interface.c
index 8748987..22254fb 100644
--- a/soft-interface.c
+++ b/soft-interface.c
@@ -738,7 +738,7 @@ static int batadv_softif_init_late(struct net_device *dev)
atomic_set(&bat_priv->aggregated_ogms, 1);
atomic_set(&bat_priv->bonding, 0);
#ifdef CONFIG_BATMAN_ADV_BLA
- atomic_set(&bat_priv->bridge_loop_avoidance, 0);
+ atomic_set(&bat_priv->bridge_loop_avoidance, 1);
#endif
#ifdef CONFIG_BATMAN_ADV_DAT
atomic_set(&bat_priv->distributed_arp_table, 1);
--
2.1.4
Hello everybody,
I'm interested if there is any progress concerning the bug entry #173 (
http://www.open-mesh.org/issues/173).
I'm currently observing something similiar on an embedded system running
an older kernel 2.6.32.26. Batman-adv versions up to 2013.1.0 work
flawlessly out of the box. All newer versions show the phenomenon
described in bug #173.
In my case I found out, that the batadv_batman_skb_recv function is never
called again as soon as I add bat0 to the bridge interface I use.
If I use the bat0 interface outside a bridge, everything works fine up to
the latest version I tested (which was 2014.4.0) even with the old kernel
version.
Regards,
Andreas Pape
The current default settings for optional features in batman-adv seems to be
based around the idea that the user only compiles what he requires. They will
automatically enabled when they are compiled in. For example the network coding
part of batman-adv is by default disabled in the out-of-tree module but will be
enabled when the code is compiled during the module build.
But distributions like Debian just enable all features of the batman-adv kernel
module and hope that more experimental features or features with possible
negative effects have to be enabled using some runtime configuration interface.
The network_coding feature can help in specific setups but also has drawbacks
and is not disabled by default in the out-of-tree module. Disabling by default
in the runtime config seems to be also quite sane.
The distributed_arp_table is in theory a good solution to reduce connection
problems in large networks caused by ARP packet loss. Unfortunatelly, it seems
to also break ARP resolution in simple mesh setups. The only solution which
seems to be used by AP firmwares seems to be the deactivation of this feature.
Disabling this feature by default until the problem was understood and fixed
may help new deployments to create a working mesh. Tuning of the mesh can still
be done by them in case DAT works in their setup.
The bridge_loop_avoidance is the only feature which is disabled by default but
may be necessary even in simple setups. Packet loops may even be created
during the initial node setup when this is not enabled. This is different than
STP on bridges because mesh is usually used on Adhoc WiFi. Having two nodes
(by accident) in the same LAN segment and in the same mesh network is rather
common in this situation.
Signed-off-by: Sven Eckelmann <sven(a)narfation.org>
--
This patchset is based on my comments in
https://lists.open-mesh.org/pipermail/b.a.t.m.a.n/2014-November/012543.html
The patch doesn't touch the multicast feature because I have no idea how well
it works and what the current multicast mode is actual doing.
---
network-coding.c | 2 +-
soft-interface.c | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/network-coding.c b/network-coding.c
index 127cc4d..be005b2 100644
--- a/network-coding.c
+++ b/network-coding.c
@@ -155,7 +155,7 @@ err:
*/
void batadv_nc_init_bat_priv(struct batadv_priv *bat_priv)
{
- atomic_set(&bat_priv->network_coding, 1);
+ atomic_set(&bat_priv->network_coding, 0);
bat_priv->nc.min_tq = 200;
bat_priv->nc.max_fwd_delay = 10;
bat_priv->nc.max_buffer_time = 200;
diff --git a/soft-interface.c b/soft-interface.c
index 8748987..ae96cee 100644
--- a/soft-interface.c
+++ b/soft-interface.c
@@ -738,10 +738,10 @@ static int batadv_softif_init_late(struct net_device *dev)
atomic_set(&bat_priv->aggregated_ogms, 1);
atomic_set(&bat_priv->bonding, 0);
#ifdef CONFIG_BATMAN_ADV_BLA
- atomic_set(&bat_priv->bridge_loop_avoidance, 0);
+ atomic_set(&bat_priv->bridge_loop_avoidance, 1);
#endif
#ifdef CONFIG_BATMAN_ADV_DAT
- atomic_set(&bat_priv->distributed_arp_table, 1);
+ atomic_set(&bat_priv->distributed_arp_table, 0);
#endif
#ifdef CONFIG_BATMAN_ADV_MCAST
bat_priv->mcast.flags = BATADV_NO_FLAGS;
--
2.1.4
Hello folks,
there appears to be some misconfiguration in our network. A gateway is
blocking unknown ip-addresses:
[658047.514011] FORWARD DROPPEDIN=bat0 OUT=backbone
MAC=3a:81:5b:64:fa:32:08:fc:88:9b:8a:60:08:00:45:00:00:4f:6c:b1:40:00:3f:06:b8:8e:0a:a6
SRC=10.166.28.69 DST=173.194.65.188 LEN=79 TOS=0x00 PREC=0x00 TTL=63
ID=27825 DF PROTO=TCP SPT=45173 DPT=5228 WINDOW=9131 RES=0x00 ACK PSH
URGP=0
[658047.519455] FORWARD DROPPEDIN=bat0 OUT=backbone
MAC=3a:81:5b:64:fa:32:08:fc:88:9b:8a:60:08:00:45:00:00:34:6c:b2:40:00:3f:06:b8:a8:0a:a6
SRC=10.166.28.69 DST=173.194.65.188 LEN=52 TOS=0x00 PREC=0x00 TTL=63
ID=27826 DF PROTO=TCP SPT=45173 DPT=5228 WINDOW=9131 RES=0x00 ACK FIN
URGP=0
I'm somewhat confused by the mac-address here - it's very long.
Can I somehow derive, which originator or client is propagating or using
this address?
Greetz, Jan
Hi List,
I was wondering if it would be possible to include a section which
lists projects / products that implement Batman-adv.
I'm sure this can benefit visitors to the Batman-adv Wiki and also
encourage communication and collaboration between developers of these
projects where there is a common goal.
I'm aware of Village Telco and OpenMesh.com but besides them I'm not
aware of any others, though I'm sure there must be more.
Kind regards
Hi list!
Alfred daemon runs as user root in our current setup on the gateway.
Regarding the faulty buffer size checks and improper use of strcpy in recent
history of this software this seems to be a very bad idea.
What are the requirements for the user running alfred? Which elevated
privileges does alfred really need? Is it possible to drop the privileges
after setting up the interface bindings?
Thanks,
Martin
On 06/02/15 09:38, Sven Eckelmann wrote:
>
> I can only talk about the simple two node installation I had when I
was forced
> to write the wireshark-batman-adv dissector for v15.
last week i lurked the internet for this, without success.
Is it published in a place so obvious i couldn't imagine?
Is it published at all?
I'm hoping to find a BLA2 crazy loop :grin: but only looking at ARP
packets it's not evident where the problem is :)
thanks for any pointer!