From: Marek Lindner <lindner_marek@yahoo.de>
To: b.a.t.m.a.n@lists.open-mesh.org
Subject: [B.A.T.M.A.N.] batman-adv 2012.2.0 released
Date: Sat, 16 Jun 2012 02:56:00 +0800 [thread overview]
Message-ID: <201206160256.01139.lindner_marek@yahoo.de> (raw)
Today, the B.A.T.M.A.N. team releases batman-adv 2012.2.0, packed with new
features and improvements in various subsystems as well as the usual set of
fixes and cleanups. 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:
http://downloads.open-mesh.org/batman/releases/batman-adv-2012.2.0/
as well as prepackaged binaries in your distribution.
Important changes
-----------------
This release comes with a completely rewritten bridge loop avoidance (also
known as bridge loop avoidance II). The concept of the first bridge loop
avoidance was simple and worked well in small size LANs while larger networks
suffered from the overhead. The new concept is very different and requires
changes in your batman-adv configuration. If you were using the bridge loop
avoidance you should consult our documentation before upgrading your
network(s).
The default "per hop" penalty was increased to encourage batman-adv to take
shorter routes. If you notice altered routing behavior and are unhappy with
the result you should revisit the hop penalty configuration option.
Thanks
------
Thanks to all people sending in patches:
* Antonio Quartulli <ordex@autistici.org>
* Danny Kukawka <danny.kukawka@bisect.de>
* David S. Miller <davem@davemloft.net>
* Eric Dumazet <eric.dumazet@gmail.com>
* Linus Luessing <linus.luessing@web.de>
* Marek Lindner <lindner_marek@yahoo.de>
* Simon Wunderlich <siwu@hrz.tu-chemnitz.de>
* Sven Eckelmann <sven@narfation.org>
* Xabier Rodriguez <xrb@kalrong.net>
and to all those that supported us with good advice, code review and/or
rigorous testing:
* Al Viro <viro@ZenIV.linux.org.uk>
* David Laight <David.Laight@aculab.com>
* Jo-Philipp Wich <jow@openwrt.org>
* Martin Hundebøll <martin@hundeboll.net>
batman-adv
----------
The new bridge loop avoidance certainly is the most prominent of the new
features this release has to offer (completely replacing the old bridge loop
avoidance mechanism). The major design goals were performance and scalability.
Since the old implementation was relying on a single gateway to be the master
gateway to the LAN for everybody else it created a performance bottleneck.
Furthermore, the LAN was used to send traffic to and receive data from the
master gateway. With the number of bridged gateways grew the amount of
broadcast traffic in the LAN. The new bridge loop avoidance splits the client
responsibility amongst all participating gateways. Each gateway "claims" the
clients it feels responsible for and ignores the traffic from all other
clients to avoid the bridge loop. It also is able to handle multiple VLANs on
top of the batX interface connected to different topologies. All details about
the loop avoidance mechanism are explained in our documentation section.
The routing code also received lots of attention: The recently added routing
protocol abstraction was further polished and extended to better accommodate
the needs of alternative routing protocols. B.A.T.M.A.N. IV protocol has been
enhanced with an additional flag to apply stricter forwarding rules to OGMs
which allows the protocol to avert routing loops in certain corner cases.
Also, the B.A.T.M.A.N. IV sequence numbers are now randomized at startup to
reduce the probability of a collision and thus, slowing down the protocol in
the startup phase. Rerouting of unicast payload packets during a roaming phase
is handled with greater efficiency to avoid as much packet loss while roaming
as possible.
All manual HZ-jiffies-calculations have been replaced with the in-kernel
jiffies_to_msecs() function. To facilitate comprehension of the code base the
ETH_ALEN macro is used instead of hardcoded numeric constants. The batman-adv
internal bitarray operations have been converted to the efficient in-kernel
bitmap operations. It was discovered that the TT-Request packet did not always
send the tt-crc field in network byte order, thereby invalidating the packet.
This has been fixed alongside the suboptimal DHCP option list parser used by
the gateway extension. OGM sequence numbers now are always printed as unsigned
long to avoid misinterpretation while printing the numbers in the debug log.
batctl
------
The batctl utility supports the new bridge loop avoidance by providing an
option to conveniently enable/disable the bridge loop avoidance and exports
the bridge loop avoidance claim table. It will also warn about features that
haven't been compiled into batman-adv such as debug log and bridge loop
avoidance. The mini-tcpdump learned to display the newly added 'not best hop
flag' when parsing OGMs.
Happy routing,
The B.A.T.M.A.N. team
next reply other threads:[~2012-06-15 18:56 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-15 18:56 Marek Lindner [this message]
2012-06-16 8:28 ` [B.A.T.M.A.N.] batman-adv 2012.2.0 released Gioacchino Mazzurco
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201206160256.01139.lindner_marek@yahoo.de \
--to=lindner_marek@yahoo.de \
--cc=b.a.t.m.a.n@lists.open-mesh.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox