Skip to main content

HOMENET IS-IS and Babel Comparison
draft-mrw-homenet-rtg-comparison-00

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft whose latest revision state is "Expired".
Authors Margaret Cullen , Christian Hopps , Juliusz Chroboczek
Last updated 2015-02-09
RFC stream (None)
Formats
Additional resources
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-mrw-homenet-rtg-comparison-00
Homenet Working Group                                       M. Wasserman
Internet-Draft                                         Painless Security
Intended status: Standards Track                                C. Hopps
Expires: August 13, 2015                                Deutsche Telekom
                                                           J. Chroboczek
                                   University of Paris-Diderot (Paris 7)
                                                        February 9, 2015

                   HOMENET IS-IS and Babel Comparison
                draft-mrw-homenet-rtg-comparison-00.txt

Abstract

   This document is intended to provide information to members of the
   IETF Home Networks Working Group (HOMENET WG), so that we can make an
   informed decision regarding which routing protocol to use in home
   networks.  The routing protocols compared in this document are: The
   Babel Routing Protocol (Babel) and The Intermediate System to
   Intermediate System Intra-Domain Routing Protocol (IS-IS).

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on August 13, 2015.

Copyright Notice

   Copyright (c) 2015 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect

Wasserman, et al.        Expires August 13, 2015                [Page 1]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
   2.  Protocols and Extensions Included in Comparison . . . . . . .   3
     2.1.  IS-IS Protocol and Extensions . . . . . . . . . . . . . .   3
     2.2.  Babel Protocol and Extensions . . . . . . . . . . . . . .   4
   3.  Routing Algorithms  . . . . . . . . . . . . . . . . . . . . .   4
     3.1.  Link State Algorithm  . . . . . . . . . . . . . . . . . .   4
     3.2.  Distance-Vector Algorithm (Babel) . . . . . . . . . . . .   4
     3.3.  Algorithm Comparison  . . . . . . . . . . . . . . . . . .   4
   4.  Support for Source-Specific Routing . . . . . . . . . . . . .   5
     4.1.  Source Specific Routing in IS-IS  . . . . . . . . . . . .   5
     4.2.  Source Specific Routing in Babel  . . . . . . . . . . . .   5
     4.3.  Discussion  . . . . . . . . . . . . . . . . . . . . . . .   5
   5.  Support for Link Metrics  . . . . . . . . . . . . . . . . . .   6
     5.1.  Link Metrics in IS-IS . . . . . . . . . . . . . . . . . .   6
     5.2.  Link Metrics in Babel . . . . . . . . . . . . . . . . . .   6
   6.  Support for Attached Stub Networks  . . . . . . . . . . . . .   6
     6.1.  IS-IS Support for Stub Networks . . . . . . . . . . . . .   6
     6.2.  Babel Supportt for Stub Networks  . . . . . . . . . . . .   6
   7.  Security Features . . . . . . . . . . . . . . . . . . . . . .   6
     7.1.  Security Features in IS-IS  . . . . . . . . . . . . . . .   6
     7.2.  Security Features in Babel  . . . . . . . . . . . . . . .   7
   8.  Support for Multicast . . . . . . . . . . . . . . . . . . . .   7
     8.1.  Multicast Routing in IS-IS  . . . . . . . . . . . . . . .   7
     8.2.  Multicast Routing in Babel  . . . . . . . . . . . . . . .   7
   9.  Implementation Status . . . . . . . . . . . . . . . . . . . .   7
   10. Code and State Size . . . . . . . . . . . . . . . . . . . . .   7
     10.1.  IS-IS Code and State Size  . . . . . . . . . . . . . . .   7
     10.2.  Babel Code and State Size  . . . . . . . . . . . . . . .   8
   11. Scalablity on IEEE 802.11 Wireless Networks . . . . . . . . .   9
     11.1.  IS-IS Scalability on 802.11  . . . . . . . . . . . . . .   9
     11.2.  Babel Scalability on 802.11  . . . . . . . . . . . . . .   9
   12. Standardization Status  . . . . . . . . . . . . . . . . . . .   9
     12.1.  IS-IS Standardization  . . . . . . . . . . . . . . . . .   9
     12.2.  Babel Standardization Status . . . . . . . . . . . . . .  10
   13. Evaluation of RFC 5218 Criteria . . . . . . . . . . . . . . .  10
     13.1.  Critical Success Factors . . . . . . . . . . . . . . . .  10
       13.1.1.  IS-IS Success Factors  . . . . . . . . . . . . . . .  10
       13.1.2.  Babel Success Factos . . . . . . . . . . . . . . . .  11
     13.2.  Willing Implementors . . . . . . . . . . . . . . . . . .  11
       13.2.1.  IS-IS  . . . . . . . . . . . . . . . . . . . . . . .  11
       13.2.2.  Babel  . . . . . . . . . . . . . . . . . . . . . . .  12

Wasserman, et al.        Expires August 13, 2015                [Page 2]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

     13.3.  Willing Customers  . . . . . . . . . . . . . . . . . . .  12
       13.3.1.  IS-IS  . . . . . . . . . . . . . . . . . . . . . . .  12
       13.3.2.  Babel  . . . . . . . . . . . . . . . . . . . . . . .  12
     13.4.  Potential Niches . . . . . . . . . . . . . . . . . . . .  12
       13.4.1.  IS-IS  . . . . . . . . . . . . . . . . . . . . . . .  12
       13.4.2.  Babel  . . . . . . . . . . . . . . . . . . . . . . .  12
     13.5.  Complexity Removal . . . . . . . . . . . . . . . . . . .  13
       13.5.1.  IS-IS  . . . . . . . . . . . . . . . . . . . . . . .  13
       13.5.2.  Babel  . . . . . . . . . . . . . . . . . . . . . . .  13
     13.6.  Killer App . . . . . . . . . . . . . . . . . . . . . . .  13
       13.6.1.  IS-IS  . . . . . . . . . . . . . . . . . . . . . . .  13
       13.6.2.  Babel  . . . . . . . . . . . . . . . . . . . . . . .  13
     13.7.  Extensible . . . . . . . . . . . . . . . . . . . . . . .  13
       13.7.1.  IS-IS  . . . . . . . . . . . . . . . . . . . . . . .  14
       13.7.2.  Babel  . . . . . . . . . . . . . . . . . . . . . . .  14
     13.8.  Success Predictable  . . . . . . . . . . . . . . . . . .  14
       13.8.1.  IS-IS  . . . . . . . . . . . . . . . . . . . . . . .  14
       13.8.2.  Babel  . . . . . . . . . . . . . . . . . . . . . . .  14
   14. Informative References  . . . . . . . . . . . . . . . . . . .  14
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  15

1.  Introduction

   This document compares IS-IS (ISO/IEC 10589:2002) [RFC1142] and Babel
   [RFC6126] across several criteria related to their use in home
   networks, as defined by the HOMENET WG (HOMENETs).

   Although there are substantial differences between the IS-IS and
   Babel routing protocols, both routing protocols work well, and either
   of them could be used in a home network.  There are many
   characteristics of these protocols that make them more or less
   suitable for use in HOMENETs, as defined in (reference homenet
   architecture and HNCP documents), and those characteristics are
   explored in this document.

2.  Protocols and Extensions Included in Comparison

   Both IS-IS and Babel are living protocols that are updated and
   extended over time.  This section lists the extensions that were
   considered in this comparison.  Additional protocol extensions could
   affect some of the information included in this document.

2.1.  IS-IS Protocol and Extensions

   In addition to the base IS-IS protocol specification (ISO/IEC
   10589:2002), this comparison considers the following IS-IS
   extensions:

Wasserman, et al.        Expires August 13, 2015                [Page 3]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

2.2.  Babel Protocol and Extensions

   In addition to the base Babel Protocol specification (RFC 6126), this
   comparison considers the following Babel extensions:

   Source-Specific Routing [BABEL-SS], described in more detail in
   [SS-ROUTING].

   Extension Mechanism for the Babel Routing Protocol[BABEL-EXT]

3.  Routing Algorithms

   IS-IS is a Link State routing protocol, and Babel is a Loop-avoiding
   Distance Vector routing protocol.  There are some differences between
   these algorithms, particularly in terms of scalability, how much
   information is exchanged when the routing topology changes, and how
   far topology changes are propagated.  [chopps: Perhaps we should see
   if we can find an external reference for comparing DVRP to link-state
   RPs for this section].

3.1.  Link State Algorithm

   Link state algorithms distribute information for each node to compute
   a tree representing the entire network.

   Link state algorithms scale well in both very large and very dense
   networks.

3.2.  Distance-Vector Algorithm (Babel)

   Distance-vector algorithms distribute information about the path
   length to reach each destination through a given neighbor.  Packets
   are forwarded to the neighbor who is advertising the shortest path to
   reach the destination.

3.3.  Algorithm Comparison

   Loop-avoiding Distance Vector scales beautifully to very large
   networks -- the amount of state is linear in the number of nodes, and
   does not need to be propagated in a timely manner.  It scales badly
   in extremely dense deployments, where a single node has thousands of
   direct neighbours; such deployments are unlikely, and clearly outside
   the scope of Homenet.

   Naive link state has somewhat worse scaling properties, since it has
   state that is proportional to the number of edges in the network
   graph, and requires strict state synchronisation between nodes.
   Real-world link-state protocols work around that issue by splitting

Wasserman, et al.        Expires August 13, 2015                [Page 4]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

   the network into multiple "areas", and performing distance-vector
   routing between areas.  It is unclear whether this workaround is
   suitable for Homenet.

4.  Support for Source-Specific Routing

   Source-Specific Routing is a hard requirement for HOMENETs, as it
   will allow traffic to be routed to the correct outbound network based
   on host source address selection.  Routing packets to the wrong
   outbound network could result in packets being dropped due to ISP
   ingress filtering rules.

   Both Babel and IS-IS have extensions for source-specific routing.

4.1.  Source Specific Routing in IS-IS

   [XXX: chopps]

   Reports indicate that IS-IS has critical issues (routing loops) in a
   mixed environment where some routers support Source-Specific Routing,
   and some routers do not.  However, this is not likely to be a problem
   for Homenet, as we will require Source-Specific Routing on all
   routers.

4.2.  Source Specific Routing in Babel

   The Source-specific extension to the Babel routing protocol
   [BABEL-SS] has been implemented for over a year, has been made widely
   available and has seen a fair amount deployment as part of OpenWRT
   and CeroWRT.  The implementation is currently being merged into the
   standard Babel implementation, and is scheduled to be included in
   version 1.6 (planned for March 2015).

4.3.  Discussion

   Babel's source-specific extensions were carefully designed so that
   source-specific and ordinary (non-specific) routers can coexist in a
   single routing domain, without routing pathologies such as routing
   loops.  Interoperability between plain Babel and Source-Specific
   Babel is described in detail in Section VI.A of [SS-ROUTING].

   Reports indicate that source-specific IS-IS has critical issues
   (routing loops) in a mixed environment where some routers support
   Source-Specific Routing, and some routers do not.  However, this is
   not likely to be a problem for Homenet, as we will require Source-
   Specific Routing on all routers.

   [How will we enforce that? -- jch]

Wasserman, et al.        Expires August 13, 2015                [Page 5]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

5.  Support for Link Metrics

5.1.  Link Metrics in IS-IS

   IS-IS supports 2 types of link metrics a legacy link metric (which
   should probably not be considered for HOMENET use) and a modern
   extended (24-bit) link metric.  Additionally multi-topology support
   allows for a variable number of metrics per link.

5.2.  Link Metrics in Babel

   In Babel, metrics are unsigned 16-bit integers, which means that
   metrics are arbitrary integers between 0 and 65534 (the value 65535
   is reserved to mean "infinity"); this has been found to be sufficient
   even in the chaotic environment of wireless mesh networks.  If
   needed, the Babel extension mechanism can be used to extend the
   metric space in arbitrary ways (not just integers), which has already
   been done by the radio interference extensions to Babel [BABEL-Z].

6.  Support for Attached Stub Networks

   [I don't understand why this issue is important for Homenet. -- jch]

6.1.  IS-IS Support for Stub Networks

   A stub network in IS-IS is supported by the advertisement of
   reachability to a prefix by a router in its LSP.  [How does this
   prevent the network from being used for transit? -- jch]

6.2.  Babel Supportt for Stub Networks

   Babel supports flexible filtering of routes, and a stub network can
   be designated by simply setting up the necessary filtering rules.
   For resource-limited deployments, a minimalistic, stub-only
   implementation of Babel is available.

7.  Security Features

7.1.  Security Features in IS-IS

   IS-IS offers multiple levels of security from none, to simple clear-
   text (password) authentication, to fully generic cryptographic
   authentication using any number of hashing algorithms (e.g., HMAC-
   MD5, HMAC-SHA1, ... HMAC-SHA512) based on security associations
   (link, area and domain scoped).

   [What does that mean?  Just support for HMAC-based authentication, or
   am I missing something? -- jch]

Wasserman, et al.        Expires August 13, 2015                [Page 6]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

7.2.  Security Features in Babel

   Babel supports an extensible HMAC-based cryptographic authentication
   mechanism [RFC7298].

8.  Support for Multicast

   Although the HOMENET WG has not yet determined how/if to support
   multicast in HOMENET Networks, it might be desirable to pick a
   routing protocol that supports multicast, so that it will be easier
   to add multicast support in the future.

8.1.  Multicast Routing in IS-IS

   The IS-IS protocol supports multicast routing.  However, none of the
   available implementations include support for multicast.  [XXX:
   chopps: what do we mean by supporting multicast routing?]

   [Does the Homenet implementation support multicast?  Does any open
   source implementation support multicast? -- jch]

8.2.  Multicast Routing in Babel

   There is no support for multicast routing in Babel.

9.  Implementation Status

   There are Homenet implementations of both IS-IS and Babel.

   Only the Homenet implementation of IS-IS supports source-specific
   routing, which is a hard requirement for Homenet.  If source-specific
   routing is not required, there are several independent, interoperable
   implementations of IS-IS (all major router vendors implement IS-IS),
   including some open source implementations.

   There are multiple open source implementations of Babel, two of which
   support source-specific routing.  However, they were both originally
   derived from the same codebase.

10.  Code and State Size

10.1.  IS-IS Code and State Size

   The Homenet implementation of IS-IS consists of 7000 lines of Erlang
   code and has an installed size of over 11MB.  Its initial memory
   usage (as reported by the operating system) is 22MB, and its working
   set increases by XXX bytes for each new edge in the network graph.
   To put these numbers into perspective, in a network with XXX nodes

Wasserman, et al.        Expires August 13, 2015                [Page 7]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

   each of which has XXX neighbours, the Homenet implementation of IS-IS
   requires XXX bytes for its data structures.

   [I suggest removing the rest of this section, since it consists of
   unsubstantiated, vague claims depending on a not-yet-implemented
   version of a not-yet-specified subset of a large protocol. -- jch]

   The code size of IS-IS depends greatly on what aspects of the
   protocol have been implemented.  IS-IS supports multiple address
   families as well as completely different protocol stacks (OSI and
   IP), multiple area hierachical operation with automatic virtual link
   support for repairing area partitions, and multiple link types.
   Additionally many other protocol features have been added over time
   to augment the protocol or replace previous behavior.  The protocol
   lends itself well to not only extension, but pairing down of
   features.

   For HOMENET we could use a very simple level-2 only implementation
   supporting a common topology supporting IPv4 and IPv6 over broadcast
   (i.e., ethernet) link types.  Additionally, we would need only
   support the latest extended metric TLV (i.e., not implement legacy
   metric support).  Implemented as such the code size should be very
   manageable.

   The state actually required by IS-IS is not large, and primarily
   correlates to the number of routers in the network (for LSP storage).
   The protocol stores it's own link and adjacency data which is
   expected to be negligible.  Additionally, the protocol stores
   received and generated LSPs, and typically an SPF tree with prefix
   information attached.  This state correlates directly to the number
   of routers and prefixes in the network.  Each router in the network
   generates, a single LSP (possibly fragmented into segments) with
   prefix information, a single copy of these LSPs is stored by each
   router in the network regardless of the number of links, adjacencies
   or the distance (or number of hops) from the storing router to the
   advertising router.

10.2.  Babel Code and State Size

   The source-specific implementation of Babel, which implements many
   non-Homenet extensions to the protocol, consists of roughly 10000
   lines of C and has an installed size of less than 130kB on AMD-64.
   Its initial memory usage (as reported by the operating system) is
   300kB.

   The amount of state stored by a Babel router is at worst one routing
   table entry for each destination through each neighbour.  In the
   source-specific implementation, one routing entry occupies roughly

Wasserman, et al.        Expires August 13, 2015                [Page 8]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

   100 bytes of memory.  To put these figures into perspective, in a
   network with 1000 nodes, a Babel router with 10 neighbours needs
   roughly a megabyte of memory to store its routing table (not counting
   malloc overhead).

   The stub-only implementation of Babel consists of 900 lines of C and
   compiles to 12kB (dynamically linked).  Its memory usage (as reported
   by the operating system) is 200kB, and remains constant (it doesn't
   perform any dynamic memory allocation).

11.  Scalablity on IEEE 802.11 Wireless Networks

   [I suggest renaming this section to "Performance on 802.11 wireless
   networks.  Are we trying to get homenets to scale to millions of
   nodes? -- jch]

11.1.  IS-IS Scalability on 802.11

   IS-IS is in active use in in the Internet in large non-hierachical
   (i.e., level-2 or single area level-1) deployments with hundreds of
   nodes.  The protocol has proven to be very scalable.

   Do we have any information about the scaling of IS-IS on 802.11
   networks, in particular?

11.2.  Babel Scalability on 802.11

   Babel was carefully optimised for 802.11 networks.  In particular, it
   has (optional) provisions for link quality estimation and (optional)
   provisions for radio-interference sensitive routing.

   Babel was designed to work well on pure mesh networks (networks where
   a packet might exit through the same interface as the one it came
   from), but this is probably out of scope for Homenet.

12.  Standardization Status

12.1.  IS-IS Standardization

   IS-IS is an ISO Standard documented in ISO/IEC 10589:2002.  There is
   an active IETF IS-IS Working Group (ISIS) that maintains and extends
   the IS-IS protocol, and the IS-IS protocol has been extended in
   several ISIS Working Group documents.

   The source-specific extension to IS-IS is standardized as XXX.  [Will
   it require a downref? -- jch]

Wasserman, et al.        Expires August 13, 2015                [Page 9]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

12.2.  Babel Standardization Status

   Babel is documented in an Experimental RFC (RFC 6126) published in
   2011, and it has been updated in several individual-submission RFCs
   and Internet Drafts.

   The use of Babel in a Standards Track HOMENET RFC would require a
   "downref" to non-Standards Track documents.  It would also be
   necessary to publish the extensions that are needed for the HOMENET
   use case as RFCs.

13.  Evaluation of RFC 5218 Criteria

13.1.  Critical Success Factors

   Does the protocol exhibit one or more of the critical initial success
   factors as defined in RFC 5218?

13.1.1.  IS-IS Success Factors

   IS-IS exhibits the following critical initial success factors:

      Positive Net Value:

         Hardware cost: None.

         Operational interface: Existing and extensive.

         Retraining: None.

         Business dependencies: None.

      Incremental Deployment: Yes.

      Open Code Availability: Yes. Multiple implementations.

      Freedom from Usage Restrictions: Yes.

      Open Specification Availability: Yes.

      Open Maintenance Processes: Yes.

      Good Technical Design: Proven with extensive deployment and
      experience.

      Extensible: Yes.

      No Hard Scalability bound: Yes.

Wasserman, et al.        Expires August 13, 2015               [Page 10]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

      Threats Sufficiently Mitigated: Yes.

13.1.2.  Babel Success Factos

   Babel exhibits the following critical initial success factors:

      Positive Net Value:

         Hardware cost: None.

         Operational interface: ??.

         Retraining: None.

         Business dependencies: None.

      Incremental Deployment: Yes.

      Open Code Availability: Yes. One implementation.

      Freedom from Usage Restrictions: Yes.

      Open Specification Availability: Yes.

      Open Maintenance Processes: No.

      Good Technical Design: Yes, but less widely deployed/proven than
      IS-IS.

      Extensible: Yes.

      No Hard Scalability bound: No.

      Threats Sufficiently Mitigated: ??.

13.2.  Willing Implementors

   Are there implementers who are ready to implement the technology in
   ways that are likely to be deployed?

13.2.1.  IS-IS

   There is only one implementation of source-specific routing for IS-
   IS.  [Has it ever been extended by people who are not the authors?
   If so, who? -- jch]

   [I suggest the rest of this section should be removed. -- jch]

Wasserman, et al.        Expires August 13, 2015               [Page 11]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

   As all major routing vendors have IS-IS implementations as well as
   the existence of for sale and open source implementations, the
   barrier for implmeneting IS-IS for homenet use is quite low.  Given
   this we can assume that willingness to implement modifications (if
   any) for homenet use is present and strong.

13.2.2.  Babel

   The Babel implementation is open source software (MIT licensed, non-
   copyleft), and the codebase has proven of sufficiently high quality
   to be easily extended by people who were not in direct contact with
   the author [RFC7298].

13.3.  Willing Customers

   Are there customers (especially high-profile customers) who are ready
   to deploy the technology?

13.3.1.  IS-IS

   Yes.  IS-IS is already widely deployed in operational networks.

   [I suggest more details should be given.  Recall that we're speaking
   of source-specific IS-IS here. -- jch]

13.3.2.  Babel

   Babel is currently deployed as part of the OpenWRT and CeroWRT
   operating systems.  Additionally, the current version is used as a
   testbed for the Homenet configuration protocol.

13.4.  Potential Niches

   Are there potential niches where the technology is compelling?

13.4.1.  IS-IS

13.4.2.  Babel

   Babel is a simple and flexible routing protocol.  Like most distance-
   vector protocols, it requires little to no configuration in most
   topologies, and has proved popular in scenarios where competent
   network administration was not available.  In addition, it has been
   shown to be particularly useful in scenarios where non-standard
   metrics were needed, notably wireless mesh networks and overlay
   networks.

Wasserman, et al.        Expires August 13, 2015               [Page 12]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

13.5.  Complexity Removal

   If so, can complexity be removed to reduce cost?

13.5.1.  IS-IS

   As mentioned previously IS-IS can be significantly and easily paired
   down to fit the more limited scope of homenet use.

   [Any actual implementations the reader can examine? -- jch]

13.5.2.  Babel

   Babel is a fairly simple protocol -- RFC 6126 is just 40 pages long
   (not counting informative appendices), and it has been successfully
   explained to fourth year university students in less than two hours.

   The stub-only implementation of Babel consists of 900 lines of C
   code, and has deliberately been kept as simple as possible.  We
   expect a competent engineer to get up to speed with it within hours.

13.6.  Killer App

   Is there a potential killer app?  Or can the technology work
   underneath existing unmodified applications?

13.6.1.  IS-IS

   As IS-IS already qualifies as successful (bordering on wildly) a
   killer app is not particularly relevant.

13.6.2.  Babel

   Since Babel requires virtually no configuration, it is particularly
   suitable to scenarios where a dedicated network administrator is not
   available.  Additionally, its support for link quality sensing and
   non-standard metrics makes it particularly appealing in highly
   heterogeneous networks, (networks built on multiple link-layer
   technologies with widely varying performance characteristics).

13.7.  Extensible

   Is the protocol sufficiently extensible to allow potential
   deficiencies to be addressed in the future?

Wasserman, et al.        Expires August 13, 2015               [Page 13]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

13.7.1.  IS-IS

   IS-IS has been shown to be incredibly extensible, originally designed
   for a completely different protocol stack (OSI) it was easily adapted
   for IP use, then to multiple address families (IPv4, IPv6) and multi-
   topology.  Indeed one of the major drivers of IS-IS's success is its
   extensibility and adaptability.

13.7.2.  Babel

   The extension mechanisms built into the Babel protocol [BABEL-EXT]
   have been shown to be a solid basis on which many backwards-
   compatible extensions have been built, including one that
   fundamentally changes the structure of announcements [BABEL-SS] and
   one that needed a non-trivial extension to the space of metrics
   [BABEL-Z].

13.8.  Success Predictable

   If it is not known whether the protocol will be successful, should
   the market decide first?  Or should the IETF work on multiple
   alternatives and let the market decide among them?  Are there factors
   listed in this document that may predict which is more likely to
   succeed?

13.8.1.  IS-IS

   For IS-IS the market has already decided that the protocol is
   successful in a fairly wide variety of deployments.

13.8.2.  Babel

   Source-specific Babel is probably the only source-specific routing
   protocol that has seen a fair amount of deployment and is being used
   in production.

   Plain Babel has seen a modest amount of deployment, most notably for
   routing over wireless mesh networks and large-scale overlay networks.
   However, it remains a young protocol, certainly much younger than IS-
   IS.

14.  Informative References

   [BABEL-EXT]
              Chroboczek, J., "Extension Mechanism for the Babel Routing
              Protocol", Internet Draft draft-chroboczek-babel-
              extension-mechanism-03, June 2013.

Wasserman, et al.        Expires August 13, 2015               [Page 14]
Internet-Draft     HOMENET IS-IS and Babel Comparison      February 2015

   [BABEL-SS]
              Boutier, M. and J. Chroboczek, "Source-Specific Routing in
              Babel", Internet Draft draft-boutier-babel-source-
              specific-00, November 2014.

   [BABEL-Z]  Chroboczek, J., "Diversity Routing for the Babel Routing
              Protocol", Internet Draft draft-chroboczek-babel-
              diversity-routing-00, July 2014.

   [RFC1142]  Oran, D., "OSI IS-IS Intra-domain Routing Protocol", RFC
              1142, February 1990.

   [RFC6126]  Chroboczek, J., "The Babel Routing Protocol", RFC 6126,
              April 2011.

   [RFC7298]  Ovsienko, D., "Babel Hashed Message Authentication Code
              (HMAC) Cryptographic Authentication", RFC 7298, July 2014.

   [SS-ROUTING]
              Boutier, M. and J. Chroboczek, "Source-sensitive routing",
              December 2014, <http://arxiv.org/abs/1403.0445>.

Authors' Addresses

   Margaret Wasserman
   Painless Security
   356 Abbott Street
   North Andover, MA  01845
   USA

   Phone: +1 781 405-7464
   Email: mrw@painless-security.com
   URI:   http://www.painless-security.com

   Christian E. Hopps
   Deutsche Telekom

   Email: chopps@rawdofmt.org

   Juliusz Chroboczek
   University of Paris-Diderot (Paris 7)

   Email: jch@pps.univ-paris-diderot.fr

Wasserman, et al.        Expires August 13, 2015               [Page 15]