Commit | Line | Data |
---|---|---|
9969ffa8 | 1 | # SPDX-License-Identifier: GPL-2.0 |
7a79d717 | 2 | # Copyright (C) 2007-2019 B.A.T.M.A.N. contributors: |
9969ffa8 SE |
3 | # |
4 | # Marek Lindner, Simon Wunderlich | |
9969ffa8 | 5 | |
c6c8fea2 SE |
6 | # |
7 | # B.A.T.M.A.N meshing protocol | |
8 | # | |
9 | ||
10 | config BATMAN_ADV | |
11 | tristate "B.A.T.M.A.N. Advanced Meshing Protocol" | |
17224474 | 12 | depends on NET |
95a066d8 | 13 | select LIBCRC32C |
10e3cd6a AQ |
14 | help |
15 | B.A.T.M.A.N. (better approach to mobile ad-hoc networking) is | |
16 | a routing protocol for multi-hop ad-hoc mesh networks. The | |
17 | networks may be wired or wireless. See | |
7b5e7396 | 18 | https://www.open-mesh.org/ for more information and user space |
10e3cd6a | 19 | tools. |
c6c8fea2 | 20 | |
d6f94d91 | 21 | config BATMAN_ADV_BATMAN_V |
951a06e7 | 22 | bool "B.A.T.M.A.N. V protocol" |
0566df30 | 23 | depends on BATMAN_ADV && !(CFG80211=m && BATMAN_ADV=y) |
18cfb44c | 24 | default y |
d6f94d91 LL |
25 | help |
26 | This option enables the B.A.T.M.A.N. V protocol, the successor | |
27 | of the currently used B.A.T.M.A.N. IV protocol. The main | |
28 | changes include splitting of the OGM protocol into a neighbor | |
29 | discovery protocol (Echo Location Protocol, ELP) and a new OGM | |
30 | Protocol OGMv2 for flooding protocol information through the | |
31 | network, as well as a throughput based metric. | |
32 | B.A.T.M.A.N. V is currently considered experimental and not | |
33 | compatible to B.A.T.M.A.N. IV networks. | |
34 | ||
7a5cc242 SW |
35 | config BATMAN_ADV_BLA |
36 | bool "Bridge Loop Avoidance" | |
17224474 | 37 | depends on BATMAN_ADV && INET |
fb939135 | 38 | select CRC16 |
7a5cc242 SW |
39 | default y |
40 | help | |
41 | This option enables BLA (Bridge Loop Avoidance), a mechanism | |
42 | to avoid Ethernet frames looping when mesh nodes are connected | |
43 | to both the same LAN and the same mesh. If you will never use | |
44 | more than one mesh node in the same LAN, you can safely remove | |
45 | this feature and save some space. | |
c6c8fea2 | 46 | |
17224474 AQ |
47 | config BATMAN_ADV_DAT |
48 | bool "Distributed ARP Table" | |
49 | depends on BATMAN_ADV && INET | |
ab4e5853 | 50 | default y |
17224474 AQ |
51 | help |
52 | This option enables DAT (Distributed ARP Table), a DHT based | |
53 | mechanism that increases ARP reliability on sparse wireless | |
54 | mesh networks. If you think that your network does not need | |
55 | this option you can safely remove it and save some space. | |
56 | ||
d353d8d4 MH |
57 | config BATMAN_ADV_NC |
58 | bool "Network Coding" | |
59 | depends on BATMAN_ADV | |
d353d8d4 MH |
60 | help |
61 | This option enables network coding, a mechanism that aims to | |
62 | increase the overall network throughput by fusing multiple | |
63 | packets in one transmission. | |
64 | Note that interfaces controlled by batman-adv must be manually | |
65 | configured to have promiscuous mode enabled in order to make | |
66 | network coding work. | |
67 | If you think that your network does not need this feature you | |
68 | can safely disable it and save some space. | |
69 | ||
c5caf4ef LL |
70 | config BATMAN_ADV_MCAST |
71 | bool "Multicast optimisation" | |
687937ab | 72 | depends on BATMAN_ADV && INET && !(BRIDGE=m && BATMAN_ADV=y) |
016fd285 | 73 | default y |
c5caf4ef LL |
74 | help |
75 | This option enables the multicast optimisation which aims to | |
76 | reduce the air overhead while improving the reliability of | |
77 | multicast messages. | |
78 | ||
dc1cbd14 SE |
79 | config BATMAN_ADV_DEBUGFS |
80 | bool "batman-adv debugfs entries" | |
10e3cd6a | 81 | depends on BATMAN_ADV |
95353956 | 82 | depends on DEBUG_FS |
dc1cbd14 SE |
83 | help |
84 | Enable this to export routing related debug tables via debugfs. | |
85 | The information for each soft-interface and used hard-interface can be | |
86 | found under batman_adv/ | |
87 | ||
1ba93211 | 88 | If unsure, say N. |
dc1cbd14 SE |
89 | |
90 | config BATMAN_ADV_DEBUG | |
91 | bool "B.A.T.M.A.N. debugging" | |
0dacc7fa | 92 | depends on BATMAN_ADV |
10e3cd6a | 93 | help |
c6c8fea2 SE |
94 | This is an option for use by developers; most people should |
95 | say N here. This enables compilation of support for | |
694127c1 SE |
96 | outputting debugging information to the debugfs log or tracing |
97 | buffer. The output is controlled via the batadv netdev specific | |
98 | log_level setting. | |
d331a739 | 99 | |
0fa4c30d SE |
100 | config BATMAN_ADV_SYSFS |
101 | bool "batman-adv sysfs entries" | |
102 | depends on BATMAN_ADV | |
103 | default y | |
104 | help | |
105 | Say Y here if you want to enable batman-adv device configuration and | |
106 | status interface through sysfs attributes. It is replaced by the | |
107 | batadv generic netlink family but still used by various userspace | |
108 | tools and scripts. | |
109 | ||
110 | If unsure, say Y. | |
111 | ||
d331a739 SE |
112 | config BATMAN_ADV_TRACING |
113 | bool "B.A.T.M.A.N. tracing support" | |
114 | depends on BATMAN_ADV | |
115 | depends on EVENT_TRACING | |
116 | help | |
117 | This is an option for use by developers; most people should | |
118 | say N here. Select this option to gather traces like the debug | |
119 | messages using the generic tracing infrastructure of the kernel. | |
120 | BATMAN_ADV_DEBUG must also be selected to get trace events for | |
121 | batadv_dbg. |