* [Cerowrt-devel] Fwd: [Babel-users] [Denis Ovsienko] a preview of Babel, new routing protocol, is available
[not found] <7iobtudmxu.fsf@lanthane.pps.jussieu.fr>
@ 2012-01-24 7:48 ` Dave Taht
0 siblings, 0 replies; only message in thread
From: Dave Taht @ 2012-01-24 7:48 UTC (permalink / raw)
To: cerowrt-devel; +Cc: Bahubali "Bill" Shetti
I am happy to see the babel protocol (what's in cerowrt by default) is now
taken up into quagga.
Quagga has long been available as an option
in cerowrt, and I would like to have the integration with other
EGPs (such as BGP) to be able to seriously in cerowrt, as
well as to be able to more easily do a 'face-off' between
babel and other more well known protocols such as OSPF.
This doesn't mean that the next release of 'cero' will have
quagga based babel in it! Perhaps the one after, however.
Having a routing protocol in cerowrt has been a great use
in testing, in a peculiar way - when an interface fails for any
reason on the testbed, I see it rather quickly reflected in
the routing table... and I've extolled the advantages of
seamless wired to wireless networking and back again
elsewhere.
---------- Forwarded message ----------
From: Denis Ovsienko <infrastation@yandex.ru>
To: quagga-dev@lists.quagga.net, quagga-users@lists.quagga.net
Cc: Matthieu Boutier <boutier@pps.jussieu.fr>, Juliusz Chroboczek
<jch@pps.jussieu.fr>
Date: Sun, 22 Jan 2012 18:03:26 +0400
Subject: a preview of Babel, new routing protocol, is available
Hello, all.
It is the time to update on the new routing protocol daemon, "babeld",
which is available in the development branches of Quagga.
Babel is a routing protocol designed by Juliusz Chroboczek with the
specific purpose of routing wireless networks in mind. The protocol
used to be implemented in a standalone babeld software, and Juliusz's
colleague, Matthieu Boutier, is now making it available as one of the
Quagga components. I have personally verified, that the involved
changes do not interfere with any other Quagga daemon (at least in the
RE-testing-0.99 branch), and that the current implementation allows a
couple of routers to learn each other's IPv6 loopback addresses over a
IPv6 link and install respective routes into kernel FIB. Matthieu and
Juliusz can surely refer to examples of larger-scale deployments of
Babel.
Getting your own Babel testbed is as easy as checking Quagga out of
git and building it. To be specific, the following branches at the
time of this writing are known to work:
git://code.quagga.net/quagga-RE.git (commit f05fecd)
git://github.com/boutier/babeld-for-quagga.git (commit 78b1013)
I had put the following into babeld.conf to make it work:
!
password z
service advanced-vty
!
router babel
network eth0
redistribute kernel
redistribute connected
redistribute static
!
log file /var/log/quagga/babeld.log
!
The result looks like this (30::1/128 is the loopback interface of the
remote host):
localhost.localdomain# sh ipv6 route
Codes: K - kernel route, C - connected, S - static, R - RIPng,
O - OSPFv6, I - IS-IS, B - BGP, A - Babel,
> - selected route, * - FIB route
C>* ::1/128 is directly connected, lo
C>* 20::1/128 is directly connected, dummy0
A>* 30::1/128 [95/0] via fe80::22cf:30ff:fe02:b052, eth0
C * fe80::/64 is directly connected, eth0
C * fe80::/64 is directly connected, wlan0
C>* fe80::/64 is directly connected, dummy0
localhost.localdomain#
In the process of setting it up I realized the need to understand what
in particular the routing processes are exchanging. This is quite hard
without a packet analyzer understanding Babel protocol packets, i.e.
Wireshark 1.6.5 or tcpdump 4.2.1. The former is available in Fedora
16, which I didn't have handy at the time of setup, but the latter
compiled and installed just fine. For example, this is an example of a
regular periodic PDU dissection once the adjacency is established:
17:50:51.326330 IP6 (hlim 1, next-header UDP (17) payload length: 115)
fe80::217:42ff:fe3e:3612.6696 > ff02::1:6.6696: [udp sum ok] babel 2
(103)
Hello seqno 15804 interval 400
IHU fe80::22cf:30ff:fe02:b052 txcost 96 interval 1200
Router Id 62:69:23:ff:fe:69:d9:52
Update/prefix 30::1/128 metric 96 seqno 2794 interval 1600
Router Id d6:98:f9:ff:fe:e7:08:96
Update/prefix 20::1/128 metric 0 seqno 21994 interval 1600
To sum it up, this effort is still a work in progress, but all hidden
bugs are believed to be isolated in the babeld process. In case you
manage to approach such a bug, please file it to the standard Quagga
bugzilla, it will be dispatched appropriately.
Thanks for reading!
--
Denis Ovsienko
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2012-01-24 7:48 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <7iobtudmxu.fsf@lanthane.pps.jussieu.fr>
2012-01-24 7:48 ` [Cerowrt-devel] Fwd: [Babel-users] [Denis Ovsienko] a preview of Babel, new routing protocol, is available Dave Taht
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox