Batman-adv 2011.0.0 released¶
The B.A.T.M.A.N. team is excited to announce its latest release, 2011.0.0, mainly fulfilling popular feature requests but also delivering bug fixes and performance enhancements as well as modifications under the hood. As the kernel module always depends on the Linux kernel it was compiled against, it does not make sense to provide binaries on our website. As usual, you will find the signed tarballs in our download section:
as well as prepackaged binaries in your distribution.
The "gateway support" coming with this release manipulates the DHCP request / reply behavior once activated. It is strongly suggested that you read our documentation before you make use of this feature to avoid surprises.
Thanks to all people sending in patches:
- Andreas Langer <email@example.com>
- Jesper Juhl <firstname.lastname@example.org>
- Linus Lüssing <email@example.com>
- Marek Lindner <firstname.lastname@example.org>
- Simon Wunderlich <email@example.com>
- Sven Eckelmann <firstname.lastname@example.org>
and to all those that supported us with good advice or rigorous testing:
- David S. Miller <email@example.com>
- Russell Senior <firstname.lastname@example.org>
- Tobias Klauser <email@example.com>
This release brings the long awaited internet gateway support: Batman-adv nodes in a network can be declared 'gateways' with a certain bandwidth at their disposal. All clients learn about these gateways and can choose their preferred gateway based on link qualities / bandwidth. The decision is 'propagated' to the higher layers by manipulating the DHCP requests. Furthermore, batman-adv implements a bridge loop detection & avoidance that aim to allow multiple batman-adv nodes connected to the same LAN segment without provoking a loop.
The initial layer2 fragmentation implementation that was included in the last releases was further enhanced. Batman-adv nodes forwarding other nodes' traffic inspect the to be transfered packets to automatically fragment the packet if the MTU of the outgoing interface does not allow a normal forward. Fragmented packets are reassembled whenever possible to keep the overhead as low as possible. Also new is the possibility to configure the hop penalty at runtime (via sysfs).
The internally used hash implementation has been reimplemented after David Miller pointed out major deficiencies. These changes gave the batman-adv module a 10% speedup when forwarding payload traffic as these operations heavily make use of the hash code. The Linux kernel bit operation functions replaced the custom functions in batman-adv which are better debugged. The cleanup of the sysfs code greatly reduced the code size and makes this code more manageable.
The support for the new gateway sysfs API was among the biggest changes for this release. It allows to easily turn the gateway mode on/off and displays all known gateways including their announced bandwidth. To monitor the bridge loop avoidance batctl offers a new parameter to display the the bridge neighbor table while highlighting the 'gateway to LAN'. The bisect component now can deal with the 32Bit sequence numbers in the OGMs and the bat-hosts parser became more robust while replacing MAC addresses with bat-host names.
The B.A.T.M.A.N. team