aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorSimon Wunderlich <simon.wunderlich@s2003.tu-chemnitz.de>2012-01-22 14:00:19 -0500
committerAntonio Quartulli <ordex@autistici.org>2012-04-11 08:28:58 -0400
commit23721387c409087fd3b97e274f34d3ddc0970b74 (patch)
treecf386c6f169a1b2b6e8c8ef77be5226e10046689 /Documentation
parenta7f6ee9493677ba40625d810258de5bd521cc1b0 (diff)
batman-adv: add basic bridge loop avoidance code
This second version of the bridge loop avoidance for batman-adv avoids loops between the mesh and a backbone (usually a LAN). By connecting multiple batman-adv mesh nodes to the same ethernet segment a loop can be created when the soft-interface is bridged into that ethernet segment. A simple visualization of the loop involving the most common case - a LAN as ethernet segment: node1 <-- LAN --> node2 | | wifi <-- mesh --> wifi Packets from the LAN (e.g. ARP broadcasts) will circle forever from node1 or node2 over the mesh back into the LAN. With this patch, batman recognizes backbone gateways, nodes which are part of the mesh and backbone/LAN at the same time. Each backbone gateway "claims" clients from within the mesh to handle them exclusively. By restricting that only responsible backbone gateways may handle their claimed clients traffic, loops are effectively avoided. Signed-off-by: Simon Wunderlich <siwu@hrz.tu-chemnitz.de> Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/networking/batman-adv.txt14
1 files changed, 8 insertions, 6 deletions
diff --git a/Documentation/networking/batman-adv.txt b/Documentation/networking/batman-adv.txt
index 221ad0cdf11..9523e9ed19e 100644
--- a/Documentation/networking/batman-adv.txt
+++ b/Documentation/networking/batman-adv.txt
@@ -67,10 +67,11 @@ To deactivate an interface you have to write "none" into its
67All mesh wide settings can be found in batman's own interface 67All mesh wide settings can be found in batman's own interface
68folder: 68folder:
69 69
70# ls /sys/class/net/bat0/mesh/ 70# ls /sys/class/net/bat0/mesh/
71# aggregated_ogms fragmentation gw_sel_class vis_mode 71# aggregated_ogms fragmentation hop_penalty
72# ap_isolation gw_bandwidth hop_penalty 72# ap_isolation gw_bandwidth log_level
73# bonding gw_mode orig_interval 73# bonding gw_mode orig_interval
74# bridge_loop_avoidance gw_sel_class vis_mode
74 75
75 76
76There is a special folder for debugging information: 77There is a special folder for debugging information:
@@ -202,12 +203,13 @@ abled during run time. Following log_levels are defined:
2021 - Enable messages related to routing / flooding / broadcasting 2031 - Enable messages related to routing / flooding / broadcasting
2032 - Enable messages related to route added / changed / deleted 2042 - Enable messages related to route added / changed / deleted
2044 - Enable messages related to translation table operations 2054 - Enable messages related to translation table operations
2057 - Enable all messages 2068 - Enable messages related to bridge loop avoidance
20715 - enable all messages
206 208
207The debug output can be changed at runtime using the file 209The debug output can be changed at runtime using the file
208/sys/class/net/bat0/mesh/log_level. e.g. 210/sys/class/net/bat0/mesh/log_level. e.g.
209 211
210# echo 2 > /sys/class/net/bat0/mesh/log_level 212# echo 6 > /sys/class/net/bat0/mesh/log_level
211 213
212will enable debug messages for when routes change. 214will enable debug messages for when routes change.
213 215