Babel (protocol)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
File:Babel logo black.svg
Babel routing protocol logo.

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 is described in RFC 8966.[1]

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 expected transmission count on wireless links, but can be configured to take radio diversity into account [2] or to automatically compute a link's latency and include it in the metric.[3]

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

In October 2015, Babel was chosen as the mandatory-to-implement protocol by the IETF Homenet working group, albeit on an Experimental basis.[6] In June 2016, an IETF working group was created whose main goal is to produce a standard version of Babel.[7] In January 2021, the working group produced a standard version of Babel,[1] then proceeded to publish a number of extensions, including for authentication, source-specific routing, and routing of IPv4 through IPv6 routers.[8]

Implementations

Script error: No such module "Infobox". Script error: No such module "Check for unknown parameters".Script error: No such module "Check for conflicting parameters". Several implementations of Babel are freely available:

  • The standalone "reference" implementation
  • A complete reimplementation integrated in the BIRD routing platform[9]
  • A version integrated into the FRR routing suite[10] (previously Quagga, from which Babel has been removed[11]).
  • A tiny, stub-only subset implementation[12]
  • A minimal, IPv6-only reimplementation in Python[13]
  • An independent implementation in Java,[14] part of the freeRouter project[15]

Both BIRD and the reference version have support for Source-specific routing[16] and for cryptographic authentication.[17]

References

<templatestyles src="Reflist/styles.css" />

  1. a b Template:Cite ietf
  2. Script error: No such module "Citation/CS1".
  3. Script error: No such module "citation/CS1".
  4. Script error: No such module "citation/CS1".
  5. Script error: No such module "citation/CS1".
  6. http://mid.gmane.org/562F5B00.9010802@bellis.me.ukScript error: No such module "Unsubst".
  7. Script error: No such module "citation/CS1".
  8. Script error: No such module "citation/CS1".
  9. Script error: No such module "citation/CS1".
  10. Script error: No such module "citation/CS1".
  11. Script error: No such module "citation/CS1".
  12. Script error: No such module "citation/CS1".
  13. Script error: No such module "citation/CS1".
  14. Script error: No such module "citation/CS1".
  15. Script error: No such module "citation/CS1".
  16. Script error: No such module "citation/CS1".
  17. Script error: No such module "Citation/CS1".

Script error: No such module "Check for unknown parameters".

External links

Template:Routing protocols