blob: f20742cbae6d3d69cd959a8baa53922f3d45c356 [file] [log] [blame]
Sven Eckelmannc6c8fea2010-12-13 11:19:28 +00001#
2# B.A.T.M.A.N meshing protocol
3#
4
5config BATMAN_ADV
6 tristate "B.A.T.M.A.N. Advanced Meshing Protocol"
Antonio Quartulli17224472011-11-06 12:23:55 +01007 depends on NET
Antonio Quartullia73105b2011-04-27 14:27:44 +02008 select CRC16
Sven Eckelmann95a066d2012-10-17 21:10:39 +02009 select LIBCRC32C
Sven Eckelmannc6c8fea2010-12-13 11:19:28 +000010 default n
Antonio Quartulli10e3cd62012-03-31 16:10:33 +030011 help
12 B.A.T.M.A.N. (better approach to mobile ad-hoc networking) is
13 a routing protocol for multi-hop ad-hoc mesh networks. The
14 networks may be wired or wireless. See
Sven Eckelmann7b5e7392015-12-06 16:15:07 +010015 https://www.open-mesh.org/ for more information and user space
Antonio Quartulli10e3cd62012-03-31 16:10:33 +030016 tools.
Sven Eckelmannc6c8fea2010-12-13 11:19:28 +000017
Linus Luessingd6f94d92016-01-16 16:40:09 +080018config BATMAN_ADV_BATMAN_V
19 bool "B.A.T.M.A.N. V protocol (experimental)"
Arnd Bergmannfb653eb2016-03-02 14:54:35 +010020 depends on BATMAN_ADV && CFG80211=y || (CFG80211=m && BATMAN_ADV=m)
Linus Luessingd6f94d92016-01-16 16:40:09 +080021 default n
22 help
23 This option enables the B.A.T.M.A.N. V protocol, the successor
24 of the currently used B.A.T.M.A.N. IV protocol. The main
25 changes include splitting of the OGM protocol into a neighbor
26 discovery protocol (Echo Location Protocol, ELP) and a new OGM
27 Protocol OGMv2 for flooding protocol information through the
28 network, as well as a throughput based metric.
29 B.A.T.M.A.N. V is currently considered experimental and not
30 compatible to B.A.T.M.A.N. IV networks.
31
Simon Wunderlich7a5cc242012-01-22 20:00:27 +010032config BATMAN_ADV_BLA
33 bool "Bridge Loop Avoidance"
Antonio Quartulli17224472011-11-06 12:23:55 +010034 depends on BATMAN_ADV && INET
Simon Wunderlich7a5cc242012-01-22 20:00:27 +010035 default y
36 help
37 This option enables BLA (Bridge Loop Avoidance), a mechanism
38 to avoid Ethernet frames looping when mesh nodes are connected
39 to both the same LAN and the same mesh. If you will never use
40 more than one mesh node in the same LAN, you can safely remove
41 this feature and save some space.
Sven Eckelmannc6c8fea2010-12-13 11:19:28 +000042
Antonio Quartulli17224472011-11-06 12:23:55 +010043config BATMAN_ADV_DAT
44 bool "Distributed ARP Table"
45 depends on BATMAN_ADV && INET
46 default n
47 help
48 This option enables DAT (Distributed ARP Table), a DHT based
49 mechanism that increases ARP reliability on sparse wireless
50 mesh networks. If you think that your network does not need
51 this option you can safely remove it and save some space.
52
Martin Hundebølld353d8d2013-01-25 11:12:38 +010053config BATMAN_ADV_NC
54 bool "Network Coding"
55 depends on BATMAN_ADV
56 default n
57 help
58 This option enables network coding, a mechanism that aims to
59 increase the overall network throughput by fusing multiple
60 packets in one transmission.
61 Note that interfaces controlled by batman-adv must be manually
62 configured to have promiscuous mode enabled in order to make
63 network coding work.
64 If you think that your network does not need this feature you
65 can safely disable it and save some space.
66
Linus Lüssingc5caf4e2014-02-15 17:47:49 +010067config BATMAN_ADV_MCAST
68 bool "Multicast optimisation"
Linus Lüssing687937a2016-05-10 18:41:25 +020069 depends on BATMAN_ADV && INET && !(BRIDGE=m && BATMAN_ADV=y)
Linus Lüssingc5caf4e2014-02-15 17:47:49 +010070 default n
71 help
72 This option enables the multicast optimisation which aims to
73 reduce the air overhead while improving the reliability of
74 multicast messages.
75
Sven Eckelmanndc1cbd12016-07-16 09:31:20 +020076config BATMAN_ADV_DEBUGFS
77 bool "batman-adv debugfs entries"
Antonio Quartulli10e3cd62012-03-31 16:10:33 +030078 depends on BATMAN_ADV
Markus Pargmann95353952014-11-29 19:07:46 +010079 depends on DEBUG_FS
Sven Eckelmanndc1cbd12016-07-16 09:31:20 +020080 default y
81 help
82 Enable this to export routing related debug tables via debugfs.
83 The information for each soft-interface and used hard-interface can be
84 found under batman_adv/
85
86 If unsure, say Y.
87
88config BATMAN_ADV_DEBUG
89 bool "B.A.T.M.A.N. debugging"
90 depends on BATMAN_ADV_DEBUGFS
Antonio Quartulli10e3cd62012-03-31 16:10:33 +030091 help
Sven Eckelmannc6c8fea2010-12-13 11:19:28 +000092 This is an option for use by developers; most people should
93 say N here. This enables compilation of support for
94 outputting debugging information to the kernel log. The
95 output is controlled via the module parameter debug.