1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 # Copyright (C) B.A.T.M.A.N. contributors: !! 2 # Copyright (C) 2007-2020 B.A.T.M.A.N. contributors: 3 # 3 # 4 # Marek Lindner, Simon Wunderlich 4 # Marek Lindner, Simon Wunderlich 5 5 6 # 6 # 7 # B.A.T.M.A.N meshing protocol 7 # B.A.T.M.A.N meshing protocol 8 # 8 # 9 9 10 config BATMAN_ADV 10 config BATMAN_ADV 11 tristate "B.A.T.M.A.N. Advanced Meshin 11 tristate "B.A.T.M.A.N. Advanced Meshing Protocol" >> 12 depends on NET 12 select LIBCRC32C 13 select LIBCRC32C 13 help 14 help 14 B.A.T.M.A.N. (better approach to mob 15 B.A.T.M.A.N. (better approach to mobile ad-hoc networking) is 15 a routing protocol for multi-hop ad- 16 a routing protocol for multi-hop ad-hoc mesh networks. The 16 networks may be wired or wireless. S 17 networks may be wired or wireless. See 17 https://www.open-mesh.org/ for more 18 https://www.open-mesh.org/ for more information and user space 18 tools. 19 tools. 19 20 20 config BATMAN_ADV_BATMAN_V 21 config BATMAN_ADV_BATMAN_V 21 bool "B.A.T.M.A.N. V protocol" 22 bool "B.A.T.M.A.N. V protocol" 22 depends on BATMAN_ADV && !(CFG80211=m 23 depends on BATMAN_ADV && !(CFG80211=m && BATMAN_ADV=y) 23 default y 24 default y 24 help 25 help 25 This option enables the B.A.T.M.A.N. 26 This option enables the B.A.T.M.A.N. V protocol, the successor 26 of the currently used B.A.T.M.A.N. I 27 of the currently used B.A.T.M.A.N. IV protocol. The main 27 changes include splitting of the OGM 28 changes include splitting of the OGM protocol into a neighbor 28 discovery protocol (Echo Location Pr 29 discovery protocol (Echo Location Protocol, ELP) and a new OGM 29 Protocol OGMv2 for flooding protocol 30 Protocol OGMv2 for flooding protocol information through the 30 network, as well as a throughput bas 31 network, as well as a throughput based metric. 31 B.A.T.M.A.N. V is currently consider 32 B.A.T.M.A.N. V is currently considered experimental and not 32 compatible to B.A.T.M.A.N. IV networ 33 compatible to B.A.T.M.A.N. IV networks. 33 34 34 config BATMAN_ADV_BLA 35 config BATMAN_ADV_BLA 35 bool "Bridge Loop Avoidance" 36 bool "Bridge Loop Avoidance" 36 depends on BATMAN_ADV && INET 37 depends on BATMAN_ADV && INET 37 select CRC16 38 select CRC16 38 default y 39 default y 39 help 40 help 40 This option enables BLA (Bridge Loop 41 This option enables BLA (Bridge Loop Avoidance), a mechanism 41 to avoid Ethernet frames looping whe 42 to avoid Ethernet frames looping when mesh nodes are connected 42 to both the same LAN and the same me 43 to both the same LAN and the same mesh. If you will never use 43 more than one mesh node in the same 44 more than one mesh node in the same LAN, you can safely remove 44 this feature and save some space. 45 this feature and save some space. 45 46 46 config BATMAN_ADV_DAT 47 config BATMAN_ADV_DAT 47 bool "Distributed ARP Table" 48 bool "Distributed ARP Table" 48 depends on BATMAN_ADV && INET 49 depends on BATMAN_ADV && INET 49 default y 50 default y 50 help 51 help 51 This option enables DAT (Distributed 52 This option enables DAT (Distributed ARP Table), a DHT based 52 mechanism that increases ARP reliabi 53 mechanism that increases ARP reliability on sparse wireless 53 mesh networks. If you think that you 54 mesh networks. If you think that your network does not need 54 this option you can safely remove it 55 this option you can safely remove it and save some space. 55 56 56 config BATMAN_ADV_NC 57 config BATMAN_ADV_NC 57 bool "Network Coding" 58 bool "Network Coding" 58 depends on BATMAN_ADV 59 depends on BATMAN_ADV 59 help 60 help 60 This option enables network coding, 61 This option enables network coding, a mechanism that aims to 61 increase the overall network through 62 increase the overall network throughput by fusing multiple 62 packets in one transmission. 63 packets in one transmission. 63 Note that interfaces controlled by b 64 Note that interfaces controlled by batman-adv must be manually 64 configured to have promiscuous mode 65 configured to have promiscuous mode enabled in order to make 65 network coding work. 66 network coding work. 66 If you think that your network does 67 If you think that your network does not need this feature you 67 can safely disable it and save some 68 can safely disable it and save some space. 68 69 69 config BATMAN_ADV_MCAST 70 config BATMAN_ADV_MCAST 70 bool "Multicast optimisation" 71 bool "Multicast optimisation" 71 depends on BATMAN_ADV && INET && !(BRI 72 depends on BATMAN_ADV && INET && !(BRIDGE=m && BATMAN_ADV=y) 72 default y 73 default y 73 help 74 help 74 This option enables the multicast op 75 This option enables the multicast optimisation which aims to 75 reduce the air overhead while improv 76 reduce the air overhead while improving the reliability of 76 multicast messages. 77 multicast messages. 77 78 78 config BATMAN_ADV_DEBUG 79 config BATMAN_ADV_DEBUG 79 bool "B.A.T.M.A.N. debugging" 80 bool "B.A.T.M.A.N. debugging" 80 depends on BATMAN_ADV 81 depends on BATMAN_ADV 81 help 82 help 82 This is an option for use by develop 83 This is an option for use by developers; most people should 83 say N here. This enables compilation 84 say N here. This enables compilation of support for 84 outputting debugging information to 85 outputting debugging information to the tracing buffer. The output is 85 controlled via the batadv netdev spe 86 controlled via the batadv netdev specific log_level setting. 86 87 87 config BATMAN_ADV_TRACING 88 config BATMAN_ADV_TRACING 88 bool "B.A.T.M.A.N. tracing support" 89 bool "B.A.T.M.A.N. tracing support" 89 depends on BATMAN_ADV 90 depends on BATMAN_ADV 90 depends on EVENT_TRACING 91 depends on EVENT_TRACING 91 help 92 help 92 This is an option for use by develop 93 This is an option for use by developers; most people should 93 say N here. Select this option to ga 94 say N here. Select this option to gather traces like the debug 94 messages using the generic tracing i 95 messages using the generic tracing infrastructure of the kernel. 95 BATMAN_ADV_DEBUG must also be select 96 BATMAN_ADV_DEBUG must also be selected to get trace events for 96 batadv_dbg. 97 batadv_dbg.
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.