Babel (protocol)

Last updated
Babel routing protocol logo. 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]

Contents

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

babeld
Developer(s) Juliusz Chroboczek
Repository
Operating system Linux, BSD, Mac OS X
Type Routing software
License MIT License
Website www.irif.fr/~jch/software/babel/   OOjs UI icon edit-ltr-progressive.svg

Several implementations of Babel are freely available:

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

Related Research Articles

The Dynamic Host Configuration Protocol (DHCP) is a network management protocol used on Internet Protocol (IP) networks for automatically assigning IP addresses and other communication parameters to devices connected to the network using a client–server architecture.

<span class="mw-page-title-main">IPv6</span> Version 6 of the Internet Protocol

Internet Protocol version 6 (IPv6) is the most recent version of the Internet Protocol (IP), the communications protocol that provides an identification and location system for computers on networks and routes traffic across the Internet. IPv6 was developed by the Internet Engineering Task Force (IETF) to deal with the long-anticipated problem of IPv4 address exhaustion, and is intended to replace IPv4. In December 1998, IPv6 became a Draft Standard for the IETF, which subsequently ratified it as an Internet Standard on 14 July 2017.

Border Gateway Protocol (BGP) is a standardized exterior gateway protocol designed to exchange routing and reachability information among autonomous systems (AS) on the Internet. BGP is classified as a path-vector routing protocol, and it makes routing decisions based on paths, network policies, or rule-sets configured by a network administrator.

Intermediate System to Intermediate System is a routing protocol designed to move information efficiently within a computer network, a group of physically connected computers or similar devices. It accomplishes this by determining the best route for data through a packet switching network.

In computing, Internet Protocol Security (IPsec) is a secure network protocol suite that authenticates and encrypts packets of data to provide secure encrypted communication between two computers over an Internet Protocol network. It is used in virtual private networks (VPNs).

Open Shortest Path First (OSPF) is a routing protocol for Internet Protocol (IP) networks. It uses a link state routing (LSR) algorithm and falls into the group of interior gateway protocols (IGPs), operating within a single autonomous system (AS).

The Routing Information Protocol (RIP) is one of the oldest distance-vector routing protocols which employs the hop count as a routing metric. RIP prevents routing loops by implementing a limit on the number of hops allowed in a path from source to destination. The largest number of hops allowed for RIP is 15, which limits the size of networks that RIP can support.

Enhanced Interior Gateway Routing Protocol (EIGRP) is an advanced distance-vector routing protocol that is used on a computer network for automating routing decisions and configuration. The protocol was designed by Cisco Systems as a proprietary protocol, available only on Cisco routers. In 2013 Cisco decided to allow other vendors freely implement limited version of EIGRP with some of its associated features such as High Availability (HA), while withholding other EIGRP features such as EIGRP stub, needed for DMVPN and large-scale campus deployment, exclusively for themselves. Information needed for implementation was published with informational status as RFC 7868 in 2016, which did not make it into an Internet Standards Track specification and allowed Cisco to retain control of the EIGRP protocol.

A distance-vector routing protocol in data networks determines the best route for data packets based on distance. Distance-vector routing protocols measure the distance by the number of routers a packet has to pass; one router counts as one hop. Some distance-vector protocols also take into account network latency and other factors that influence traffic on a given route. To determine the best route across a network, routers using a distance-vector protocol exchange information with one another, usually routing tables plus hop counts for destination networks and possibly other traffic information. Distance-vector routing protocols also require that a router inform its neighbours of network topology changes periodically.

<span class="mw-page-title-main">Network Time Protocol</span> Standard protocol for synchronizing time across devices

The Network Time Protocol (NTP) is a networking protocol for clock synchronization between computer systems over packet-switched, variable-latency data networks. In operation since before 1985, NTP is one of the oldest Internet protocols in current use. NTP was designed by David L. Mills of the University of Delaware.

SOCKS is an Internet protocol that exchanges network packets between a client and server through a proxy server. SOCKS5 optionally provides authentication so only authorized users may access a server. Practically, a SOCKS server proxies TCP connections to an arbitrary IP address, and provides a means for UDP packets to be forwarded.

Multihoming is the practice of connecting a host or a computer network to more than one network. This can be done in order to increase reliability or performance.

IP multicast is a method of sending Internet Protocol (IP) datagrams to a group of interested receivers in a single transmission. It is the IP-specific form of multicast and is used for streaming media and other network applications. It uses specially reserved multicast address blocks in IPv4 and IPv6.

6LoWPAN was a working group of the Internet Engineering Task Force (IETF). It was created with the intention of applying the Internet Protocol (IP) even to the smallest devices, enabling low-power devices with limited processing capabilities to participate in the Internet of Things.

An IPv6 transition mechanism is a technology that facilitates the transitioning of the Internet from the Internet Protocol version 4 (IPv4) infrastructure in use since 1983 to the successor addressing and routing system of Internet Protocol Version 6 (IPv6). As IPv4 and IPv6 networks are not directly interoperable, transition technologies are designed to permit hosts on either network type to communicate with any other host.

<span class="mw-page-title-main">Locator/Identifier Separation Protocol</span>

Locator/ID Separation Protocol (LISP) is a "map-and-encapsulate" protocol which is developed by the Internet Engineering Task Force LISP Working Group. The basic idea behind the separation is that the Internet architecture combines two functions, routing locators and identifiers in one number space: the IP address. LISP supports the separation of the IPv4 and IPv6 address space following a network-based map-and-encapsulate scheme. In LISP, both identifiers and locators can be IP addresses or arbitrary elements like a set of GPS coordinates or a MAC address.

Resource Public Key Infrastructure (RPKI), also known as Resource Certification, is a specialized public key infrastructure (PKI) framework to support improved security for the Internet's BGP routing infrastructure.

Source-specific routing, also called source-address dependent routing (SADR), is a routing technique in which a routing decision is made by looking at the source address of a packet in addition to its destination address. The main application of source-specific routing is to allow a cheap form of multihoming without the need for provider-independent addresses or any cooperation from upstream ISPs.

Free Range Routing or FRRouting or FRR is a network routing software suite running on Unix-like platforms, particularly Linux, Solaris, OpenBSD, FreeBSD and NetBSD. It was created as a fork from Quagga. FRRouting is distributed under the terms of the GNU General Public License v2 (GPL2).

Application Layer Transport Optimization (ALTO) is a protocol that allows internet clients to obtain information that compares the network properties of paths to other endpoints. Typically, this would be used to identify the lowest-cost location to access a copy of some sort of content.

References

  1. 1 2 Chroboczek, Juliusz; Schinazi, David (January 2021). The Babel Routing Protocol. doi: 10.17487/RFC8966 . RFC 8966.
  2. Chroboczek <jch@pps.univ-paris-diderot.fr>, Juliusz (15 February 2016). "Diversity Routing for the Babel Routing Protocol". Ietf Datatracker.
  3. Jonglez, Baptiste; Boutier, Matthieu; Chroboczek, Juliusz (2014). "A delay-based routing metric". arXiv: 1403.3488 [cs.NI].
  4. M. Abolhasan; B. Hagelstein; J. C.-P. Wang (2009). "Real-world performance of current proactive multi-hop mesh protocols". 2009 15th Asia-Pacific Conference on Communications. pp. 44–47. doi:10.1109/APCC.2009.5375690. ISBN   978-1-4244-4784-8. S2CID   15462784.
  5. David Murray, Michael Dixon & Terry Koziniec (2010). An Experimental Comparison of Routing Protocols in Multi Hop Ad Hoc Networks (PDF). Australasian Telecommunication Networks and Applications Conference. doi:10.1109/ATNAC.2010.5680190.
  6. http://mid.gmane.org/562F5B00.9010802@bellis.me.uk%5B%5D
  7. "Babel routing protocol". datatracker.ietf.org.
  8. "Babel routing protocol (Babel)".
  9. "proto/babel · master · labs / BIRD Internet Routing Daemon". GitLab.
  10. "Merge pull request #624 "Babel" · FRRouting/frr@e885ed8". GitHub.
  11. "babeld: Remove babeld from Quagga · 6WIND/quagga@336724d". GitHub. Retrieved 2017-10-24.
  12. "sbabeld". GitHub .
  13. "Archive". mailarchive.ietf.org.
  14. "dirlist". sources.nop.hu.
  15. "freeRouter - networking swiss army knife". freerouter.nop.hu.
  16. Matthieu Boutier; Juliusz Chroboczek (2015). Source-Specific Routing. Proc. IFIP Networking. arXiv: 1403.0445 . Bibcode:2014arXiv1403.0445B.
  17. Do, Clara; Chroboczek, Juliusz; Kolodziejak, Weronika. "MAC authentication for the Babel routing protocol". Ietf Datatracker.