Applicability of the Babel
routing protocol
IRIF, University of Paris-Diderot
Case 7014
75205 Paris Cedex 13
France
jch@pps.univ-paris-diderot.fr
This document describes some application areas where the Babel routing
protocol has been found to be useful.
Babel is a loop-avoiding distance-vector
routing protocol that aims to be robust in a variety of environments.
This document describes a few areas where Babel has been found to be
useful. It is structured as follows. In , we
describe application areas where Babel has been successfully deployed. In
, we describe application areas where Babel
works well, but has not been widely deployed yet. In , we describe application areas where deployment
of Babel is not encouraged because better alternatives are available.
Babel is able to deal with both classical, prefix-based
("Internet-style") routing and flat ("mesh-style") over non-transitive
link technologies. Because of that, it has seen a number of succesful
deployments in medium-sized hybrid networks, networks that combine
a wired, aggregated backbone with meshy wireless bits at the edges. No
other routing protocol known to us is similarly robust and efficient in
this particular type of network.
The algorithms used by Babel (loop avoidance, hysteresis, delayed
updates) allow it to remain stable and efficient in the presence of
unstable metrics, even in the presence of a feedback loop. For this
reason, it has been successfully deployed in large scale overlay networks,
built out of thousands of tunnels spanning continents, where it is used
with a metric computed from links' latencies .
Because of its small size and simple configuration, Babel has been
deployed in small, unmanaged networks (three to five routers), where it
serves as a more efficient replacement for RIP ,
albeit with good support for wireless links.
There are application areas for which Babel is a good fit, but where it
has not seen major deployments yet.
Babel has been repeatedly shown to be competitive with dedicated
routing protocols for wireless mesh networks
. However, this particular niche is
already served by a number of mature protocols, notably OLSR-ETX as well
as OLSRv2 equipped with the DAT metric
, so Babel has not seen major deployments in pure
meshes yet.
There are a number of application areas where Babel is a poor fit.
Babel relies on periodic updates, and even in a stable network, it
generates a constant amount of background traffic. In large, stable,
well-administered networks, it is preferable to use protocols layered
above a reliable transport mechanism, such as OSPF , EIGRP or IS-IS .
Babel relies on periodic updates and maintains within each node an
amount of state that is proportional to the number of reachable
destinations. In networks containing resource-constrained or exteremely
low-power nodes, it may be preferable to use a protocol that limits the
amount of state maintained and propagated; we have heard of AODVv2 , RPL and
LOADng .
The Babel Routing Protocol
A delay-based routing metric
RIP Version 2
The Optimized Link State Routing Protocol Version 2
Packet Sequence Number based directional airtime metric for OLSRv2
OSPF for IPv6
Enhanced Interior Gateway Routing Protocol
Use of OSI IS-IS for routing in TCP/IP and dual environments
Ad Hoc On-demand Distance Vector Version 2 (AODVv2) Routing
RPL: IPv6 Routing Protocol for Low-Power and Lossy Networks
The Lightweight On-demand Ad hoc Distance-vector Routing Protocol - Next Generation (LOADng)
Real-world performance of current proactive multi-hop mesh
protocols
An Experimental Comparison of Routing Protocols in Multi Hop Ad Hoc
Networks