Babel (protocol)

The Babel routing protocol is a distance-vector routing protocol for Internet Protocol packet-switched networks that is designed to be robust and efficient on both wireless mesh networks and wired networks.

Babel
Developer(s)Juliusz Chroboczek
Operating systemLinux, BSD, Mac OS X
TypeRouting protocol
LicenseMIT License
Websitewww.irif.fr/~jch/software/babel/

Babel is based on the ideas in Destination-Sequenced Distance Vector routing (DSDV), Ad hoc On-Demand Distance Vector Routing (AODV), and Cisco's Enhanced Interior Gateway Routing Protocol (EIGRP), but uses different techniques for loop avoidance. Babel has provisions for using multiple dynamically computed metrics; by default, it uses hop-count on wired networks and a variant of ETX on wireless links, but can be configured to take radio diversity into account [1] or to automatically compute a link's latency and include it in the metric.[2]

Babel operates on IPv4 and IPv6 networks. It has been reported to be a robust protocol and to have fast convergence properties.[3][4]

In October 2015, Babel was chosen as the mandatory-to-implement protocol by the IETF Homenet working group, albeit on an Experimental basis.[5] In June 2016, an IETF working group was created whose main goal is to produce a standard version of Babel[6].

Implementations

Several implementations of Babel are freely available:

  • The standalone "reference" implementation
  • A version integrated into the FRR routing suite[7] (previously Quagga, from which Babel has been removed[8])
  • A minimal reimplementation in Python[9]
  • An implementation integrated in the BIRD routing platform[10]
  • An independent implementation in Java[11], part of the freeRouter project[12]

Both BIRD and the reference version have support for Source-specific routing.[13]. Both BIRD and the reference version[14] have support for an extension to do authentication[15], but it has not been merged yet into the mainline version.

gollark: I expect any sufficiently smart language to automatically find closed forms for any recurrence relations it sees.
gollark: A GOOD one would optimize it to the triangular number formula.
gollark: Back. OOM killer ate my browser.
gollark: Well, this is... executing.
gollark: μhahahaha.

References

  1. Chroboczek <jch@pps.univ-paris-diderot.fr>, Juliusz. "Diversity Routing for the Babel Routing Protocol". tools.ietf.org.
  2. Jonglez, Baptiste; Boutier, Matthieu; Chroboczek, Juliusz (2014). "A delay-based routing metric". arXiv:1403.3488. Cite journal requires |journal= (help)
  3. M. Abolhasan; B. Hagelstein; J. C.-P. Wang (2009). "Real-world performance of current proactive multi-hop mesh protocols". Cite journal requires |journal= (help)
  4. David Murray, Michael Dixon & Terry Koziniec (2010). "An Experimental Comparison of Routing Protocols in Multi Hop Ad Hoc Networks" (PDF). Cite journal requires |journal= (help)
  5. http://mid.gmane.org/562F5B00.9010802@bellis.me.uk%5B%5D
  6. "Babel routing protocol". datatracker.ietf.org.
  7. "Merge pull request #624 "Babel" · FRRouting/frr@e885ed8". GitHub.
  8. "babeld: Remove babeld from Quagga · 6WIND/quagga@336724d". GitHub. Retrieved 2017-10-24.
  9. "Archive". mailarchive.ietf.org.
  10. "proto/babel · master · labs / BIRD Internet Routing Daemon". GitLab.
  11. "dirlist". sources.nop.hu.
  12. "freeRouter - networking swiss army knife". freerouter.nop.hu.
  13. Matthieu Boutier; Juliusz Chroboczek (2015). Source-Specific Routing. Proc. IFIP Networking. arXiv:1403.0445. Bibcode:2014arXiv1403.0445B.
  14. "jech/babeld". GitHub.
  15. Do, Clara; Chroboczek, Juliusz; Kolodziejak, Weronika. "MAC authentication for the Babel routing protocol". tools.ietf.org.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.