| # SPDX-License-Identifier: GPL-2.0 | |
| # Copyright (C) B.A.T.M.A.N. contributors: | |
| # | |
| # Marek Lindner, Simon Wunderlich | |
| # | |
| # B.A.T.M.A.N meshing protocol | |
| # | |
| config BATMAN_ADV | |
| tristate "B.A.T.M.A.N. Advanced Meshing Protocol" | |
| select CRC32 | |
| help | |
| B.A.T.M.A.N. (better approach to mobile ad-hoc networking) is | |
| a routing protocol for multi-hop ad-hoc mesh networks. The | |
| networks may be wired or wireless. See | |
| https://www.open-mesh.org/ for more information and user space | |
| tools. | |
| config BATMAN_ADV_BATMAN_V | |
| bool "B.A.T.M.A.N. V protocol" | |
| depends on BATMAN_ADV && !(CFG80211=m && BATMAN_ADV=y) | |
| default y | |
| help | |
| This option enables the B.A.T.M.A.N. V protocol, the successor | |
| of the currently used B.A.T.M.A.N. IV protocol. The main | |
| changes include splitting of the OGM protocol into a neighbor | |
| discovery protocol (Echo Location Protocol, ELP) and a new OGM | |
| Protocol OGMv2 for flooding protocol information through the | |
| network, as well as a throughput based metric. | |
| B.A.T.M.A.N. V is currently considered experimental and not | |
| compatible to B.A.T.M.A.N. IV networks. | |
| config BATMAN_ADV_BLA | |
| bool "Bridge Loop Avoidance" | |
| depends on BATMAN_ADV && INET | |
| select CRC16 | |
| select NET_CRC32C | |
| default y | |
| help | |
| This option enables BLA (Bridge Loop Avoidance), a mechanism | |
| to avoid Ethernet frames looping when mesh nodes are connected | |
| to both the same LAN and the same mesh. If you will never use | |
| more than one mesh node in the same LAN, you can safely remove | |
| this feature and save some space. | |
| config BATMAN_ADV_DAT | |
| bool "Distributed ARP Table" | |
| depends on BATMAN_ADV && INET | |
| default y | |
| help | |
| This option enables DAT (Distributed ARP Table), a DHT based | |
| mechanism that increases ARP reliability on sparse wireless | |
| mesh networks. If you think that your network does not need | |
| this option you can safely remove it and save some space. | |
| config BATMAN_ADV_MCAST | |
| bool "Multicast optimisation" | |
| depends on BATMAN_ADV && INET && !(BRIDGE=m && BATMAN_ADV=y) | |
| default y | |
| help | |
| This option enables the multicast optimisation which aims to | |
| reduce the air overhead while improving the reliability of | |
| multicast messages. | |
| config BATMAN_ADV_DEBUG | |
| bool "B.A.T.M.A.N. debugging" | |
| depends on BATMAN_ADV | |
| help | |
| This is an option for use by developers; most people should | |
| say N here. This enables compilation of support for | |
| outputting debugging information to the tracing buffer. The output is | |
| controlled via the batadv netdev specific log_level setting. | |
| config BATMAN_ADV_TRACING | |
| bool "B.A.T.M.A.N. tracing support" | |
| depends on BATMAN_ADV | |
| depends on EVENT_TRACING | |
| help | |
| This is an option for use by developers; most people should | |
| say N here. Select this option to gather traces like the debug | |
| messages using the generic tracing infrastructure of the kernel. | |
| BATMAN_ADV_DEBUG must also be selected to get trace events for | |
| batadv_dbg. |