RFC 5302 PROPOSED STANDARD ROUTING · IS-IS · HIERARCHY

IS-IS Domain Prefixes: Domain-Wide Prefix Distribution with Two-Level IS-IS

How IS-IS routers in a two-level network can share detailed prefixes between levels without creating routing loops.

On rfc-editor.org ↗
PUBLISHED
October 2008
AUTHORS
T. Li, H. Smit, T. Przygienda
STREAM
IETF
BUILDS ON
RFC 2966 — Two-level IS-IS, RFC 1195 — IS-IS for IP
UP/DOWN BIT
Bit 8 of the default metric field in TLVs 128 and 130
INTERNAL REACHABILITY TLV
128
EXTERNAL REACHABILITY TLV
130
MAXIMUM INTER-AREA METRIC
63
ROUTE TYPES DEFINED
8
PREFERENCE LEVELS
6
DOI
10.17487/RFC5302
ERRATA
Reported errata

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                              T. Li
Request for Comments: 5302                        Redback Networks, Inc.
Obsoletes: 2966                                                  H. Smit
Updates: 1195
Category: Standards Track                                  T. Przygienda
                                                                 Z2 Sagl
                                                            October 2008


          Domain-Wide Prefix Distribution with Two-Level IS-IS

Status of This Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Abstract

   This document describes extensions to the Intermediate System to
   Intermediate System (IS-IS) protocol to support optimal routing
   within a two-level domain.  The IS-IS protocol is specified in ISO
   10589, with extensions for supporting IPv4 (Internet Protocol)
   specified in RFC 1195.  This document replaces RFC 2966.

   This document extends the semantics presented in RFC 1195 so that a
   routing domain running with both level 1 and level 2 Intermediate
   Systems (IS) (routers) can distribute IP prefixes between level 1 and
   level 2, and vice versa.  This distribution requires certain
   restrictions to ensure that persistent forwarding loops do not form.
   The goal of this domain-wide prefix distribution is to increase the
   granularity of the routing information within the domain.

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
     1.1.  Motivations for Domain-Wide Prefix Distribution  . . . . .  3
     1.2.  Scalability  . . . . . . . . . . . . . . . . . . . . . . .  5
     1.3.  Requirements Language  . . . . . . . . . . . . . . . . . .  6
   2.  Proposed Syntax and Semantics for L2->L1 Inter-Area Routes . .  6
     2.1.  Clarification of External Route-Type and External
           Metric-Type  . . . . . . . . . . . . . . . . . . . . . . .  7
     2.2.  Definition of External IP Prefixes in Level 1 LSPs . . . .  8
   3.  Types of IP Routes in IS-IS and Their Order of Preference  . .  8
     3.1.  Overview of All Types of IP Prefixes in IS-IS Link
           State PDUs . . . . . . . . . . . . . . . . . . . . . . . .  9
     3.2.  Order of Preference for all Types of IP Routes in IS-IS  . 11
     3.3.  Additional Notes on What Prefixes to Accept or
           Advertise  . . . . . . . . . . . . . . . . . . . . . . . . 12
   4.  Inter-Operability with Older Implementations . . . . . . . . . 12
   5.  Comparisons with Other Proposals . . . . . . . . . . . . . . . 13
   6.  Security Considerations  . . . . . . . . . . . . . . . . . . . 13
   7.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 14
     7.1.  Normative References . . . . . . . . . . . . . . . . . . . 14
     7.2.  Informative References . . . . . . . . . . . . . . . . . . 14

1.  Introduction

   This document describes extensions to the Intermediate System to
   Intermediate System (IS-IS) protocol to support optimal routing
   within a two-level domain.  The IS-IS protocol is specified in
   [ISO-10589], with extensions for supporting IPv4 (Internet Protocol)
   specified in [RFC1195].

   This document replaces [RFC2966], which was an Informational
   document.  This document is on the standards track.  No other
   intentional substantive changes have been made.

   This document extends the semantics presented in RFC 1195 so that a
   routing domain running with both level 1 and level 2 Intermediate
   Systems (IS) (routers) can distribute IP prefixes between level 1 and
   level 2, and vice versa.  This distribution requires certain
   restrictions to ensure that persistent forwarding loops do not form.
   The goal of this domain-wide prefix distribution is to increase the
   granularity of the routing information within the domain.

   An IS-IS routing domain (a.k.a. an autonomous system running IS-IS)
   can be partitioned into multiple level 1 (L1) areas, and a level 2
   (L2) connected subset of the topology that interconnects all of the
   L1 areas.  Within each L1 area, all routers exchange link state
   information.  L2 routers also exchange L2 link state information to
   compute routes between areas.

   RFC 1195 defines the Type, Length, and Value (TLV) tuples that are
   used to transport IPv4 routing information in IS-IS.  RFC 1195 also
   specifies the semantics and procedures for interactions between
   levels.  Specifically, routers in an L1 area will exchange
   information within the L1 area.  For IP destinations not found in the
   prefixes in the L1 database, the L1 router should forward packets to
   the nearest router that is in both L1 and L2 (i.e., an L1L2 router)
   with the "attached bit" set in its L1 Link State Protocol Data Unit
   (LSP).

   Also per RFC 1195, an L1L2 router should be manually configured with
   a set of prefixes that summarizes the IP prefixes reachable in that
   L1 area.  These summaries are injected into L2.  RFC 1195 specifies
   no further interactions between L1 and L2 for IPv4 prefixes.

1.1.  Motivations for Domain-Wide Prefix Distribution

   The mechanisms specified in RFC 1195 are appropriate in many
   situations and lead to excellent scalability properties.  However, in
   certain circumstances, the domain administrator may wish to sacrifice
   some amount of scalability and distribute more specific information
   than is described by RFC 1195.  This section discusses the various
   reasons why the domain administrator may wish to make such a
   tradeoff.

   One major reason for distributing more prefix information is to
   improve the quality of the resulting routes.  A well-known property
   of prefix summarization or any abstraction mechanism is that it
   necessarily results in a loss of information.  This loss of
   information in turn results in the computation of a route based upon
   less information, which will frequently result in routes that are not
   optimal.

   A simple example can serve to demonstrate this adequately.  Suppose
   that an L1 area has two L1L2 routers that both advertise a single
   summary of all prefixes within the L1 area.  To reach a destination
   inside the L1 area, any other L2 router is going to compute the
   shortest path to one of the two L1L2 routers for that area.  Suppose,
   for example, that both of the L1L2 routers are equidistant from the
   L2 source and that the L2 source arbitrarily selects one L1L2 router.
   This router may not be the optimal router when viewed from the L1
   topology.  In fact, it may be the case that the path from the
   selected L1L2 router to the destination router may traverse the L1L2
   router that was not selected.  If more detailed topological
   information or more detailed metric information was available to the
   L2 source router, it could make a more optimal route computation.

   This situation is symmetric in that an L1 router has no information
   about prefixes in L2 or within a different L1 area.  In using the
   nearest L1L2 router, that L1L2 is effectively injecting a default
   route without metric information into the L1 area.  The route
   computation that the L1 router performs is similarly suboptimal.

   Besides the optimality of the routes computed, there are two other
   significant drivers for the domain-wide distribution of prefix
   information.

   When a router learns multiple possible paths to external destinations
   via BGP, it will select only one of those routes to be installed in
   the forwarding table.  One of the factors in the BGP route selection
   is the IGP cost to the BGP next hop address.  Many ISP networks
   depend on this technique, which is known as "shortest exit routing".
   If a L1 router does not know the exact IGP metric to all BGP speakers
   in other L1 areas, it cannot do effective shortest exit routing.

   The third driver is the current practice of using the IGP (IS-IS)
   metric as part of the BGP Multi-Exit Discriminator (MED).  The value
   in the MED is advertised to other domains and is used to inform other
   domains of the optimal entry point into the current domain.  Current
   practice is to take the IS-IS metric and insert it as the MED value.
   This tends to cause external traffic to enter the domain at the point
   closest to the exit router.  Note that the receiving domain MAY,
   based upon policy, choose to ignore the MED that is advertised.
   However, current practice is to distribute the IGP metric in this way
   in order to optimize routing wherever possible.  This is possible in
   current networks that only are a single area, but becomes problematic
   if hierarchy is to be installed into the network.  This is again
   because the loss of end-to-end metric information means that the MED
   value will not reflect the true distance across the advertising
   domain.  Full distribution of prefix information within the domain
   would alleviate this problem, as it would allow accurate computation
   of the IS-IS metric across the domain, resulting in an accurate value
   presented in the MED.

1.2.  Scalability

   The disadvantage to performing the domain-wide prefix distribution
   described above is that it has an impact on the scalability of IS-IS.
   Areas within IS-IS help scalability in that LSPs are contained within
   a single area.  This limits the size of the link state database,
   which in turn limits the complexity of the shortest path computation.

   Further, the summarization of the prefix information aids scalability
   in that the abstraction of the prefix information removes the sheer
   number of data items to be transported and the number of routes to be
   computed.

   It should be noted quite strongly that the distribution of prefixes
   on a domain-wide basis impacts the scalability of IS-IS in the second
   respect.  It will increase the number of prefixes throughout the
   domain.  This will result in increased memory consumption,
   transmission requirements, and computation requirements throughout
   the domain.

   It must also be noted that the domain-wide distribution of prefixes
   has no effect whatsoever on the first aspect of scalability, namely
   the existence of areas and the limitation of the distribution of the
   link state database.

   Thus, the net result is that the introduction of domain-wide prefix
   distribution into a formerly flat, single area network is a clear
   benefit to the scalability of that network.  However, it is a
   compromise and does not provide the maximum scalability available
   with IS-IS.  Domains that choose to make use of this facility should
   be aware of the tradeoff that they are making between scalability and
   optimality, and provision and monitor their networks accordingly.
   Normal provisioning guidelines that would apply to a fully
   hierarchical deployment of IS-IS will not apply to this type of
   configuration.

1.3.  Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

2.  Proposed Syntax and Semantics for L2->L1 Inter-Area Routes

   This document defines the syntax of how to advertise level 2 routes
   in level 1 LSPs.  The encoding is an extension of the encoding in RFC
   1195.

   To some extent, in IS-IS the level 2 backbone can be seen as a
   separate area itself.  RFC 1195 defines that L1L2 routers can
   advertise IP routes that were learned via L1 routing into L2.  These
   routes can be regarded as inter-area routes.  RFC 1195 defines that
   these L1->L2 inter-area routes must be advertised in L2 LSPs in the
   "IP Internal Reachability Information" TLV (TLV 128).  Intra-area L2
   routes are also advertised in L2 LSPs in an "IP Internal Reachability
   Information" TLV.  Therefore, L1->L2 inter-area routes are
   indistinguishable from L2 intra-area routes.

   RFC 1195 does not define L2->L1 inter-area routes.  A simple
   extension would be to allow an L1L2 router to advertise routes
   learned via L2 routing in its L1 LSP.  However, to prevent routing-
   loops, L1L2 routers MUST NOT advertise L2->L1 inter-area routes that
   they learn via L1 routing back into L2.  Therefore, there must be a
   way to distinguish L2->L1 inter-area routes from L1 intra-area
   routes.  [RFC5305] defines the "up/down bit" for this purpose in the
   extended IP reachability TLV (TLV 135).  RFC 1195 defines TLVs 128
   and 130 to contain IP routes.  TLVs 128 and 130 have a Metric field
   that consists of 4 Type of Service (TOS) metrics.  The first metric,
   the so-called "default metric", has the high-order bit reserved (bit
   8).  Routers must set this bit to zero on transmission, and ignore it
   on receipt.

   This document redefines this high-order bit in the default Metric
   field in TLVs 128 and 130 to be the up/down bit.  L1L2 routers MUST
   set this bit to one for prefixes that are derived from L2 routing and
   are advertised into L1 LSPs.  The bit MUST be set to zero for all
   other IP prefixes in L1 or L2 LSPs.  Prefixes with the up/down bit
   set that are learned via L1 routing MUST NOT be advertised by L1L2
   routers back into L2.

2.1.  Clarification of External Route-Type and External Metric-Type

   RFC 1195 defines two TLVs for carrying IP prefixes.  TLV 128 is
   defined as "IP Internal Reachability Information", and should be used
   to carry IP prefixes that are directly connected to IS-IS routers.
   TLV 130 is defined as "IP External Reachability Information", and
   should be used to carry routes learned from outside the IS-IS domain.
   RFC 1195 documents TLV type 130 only for level 2 LSPs.

   RFC 1195 also defines two types of metrics.  Metrics of the internal
   metric-type should be used when the metric is comparable to metrics
   used to weigh links inside the IS-IS domain.  Metrics of the external
   metric-type should be used if the metric of an IP prefix cannot be
   directly compared to internal metrics.  The external metric-type can
   only be used for external IP prefixes.  A direct result is that
   metrics of the external metric-type should never be seen in TLV 128.

   To prevent confusion, this document states again that when a router
   computes IP routes, it MUST give the same preference to IP routes
   advertised in an "IP Internal Reachability Information" TLV and IP
   routes advertised in an "IP External Reachability Information" TLV.
   RFC 1195 states this quite clearly in the note in paragraph 3.10.2,
   item 2c).  This document does not alter this rule of preference.

   NOTE:  Internal routes (routes to destinations announced in the "IP
      Internal Reachability Information" field) and external routes
      using internal metrics (routes to destinations announced in the
      "IP External Reachability Information" field, with a metric of
      type "internal") are treated identically for the purpose of the
      order of preference of routes, and the Dijkstra calculation.

   However, IP routes advertised in "IP External Reachability
   Information" with the external metric-type MUST be given less
   preference than the same IP routes advertised with the internal
   metric-type, regardless of the value of the metrics.

   While IS-IS routers MUST NOT give different preference to IP prefixes
   learned via "IP Internal Reachability Information" and "IP External
   Reachability Information" when executing the Dijkstra calculation,
   routers that implement multiple IGPs are free to use this distinction
   between internal and external routes when comparing routes derived
   from different IGPs for inclusion in their global Routing Information
   Base (RIB).

2.2.  Definition of External IP Prefixes in Level 1 LSPs

   RFC 1195 does not define the "IP External Reachability Information"
   TLV for L1 LSPs.  However, there is no reason why an IS-IS
   implementation could not allow for redistribution of external routes
   into L1.  Some IS-IS implementations already allow network
   administrators to do this.  This document loosens the restrictions in
   RFC 1195 and allows for the inclusion of the "IP External
   Reachability Information" TLV in L1 LSPs.

   RFC 1195 defines that IP routes learned via L1 routing must always be
   advertised in L2 LSPs in an "IP Internal Reachability Information"
   TLV.  Now that this document allows "IP External Reachability
   Information" TLVs in L1 LSPs and allows for the advertisement of
   routes learned via L2 routing into L1, the above rule needs an
   extension.

   When an L1L2 router advertises an L1 route into L2, where that L1
   route was learned via a prefix advertised in an "IP External
   Reachability Information" TLV, that L1L2 router SHOULD advertise that
   prefix in its L2 LSP within an "IP External Reachability Information"
   TLV.  L1 routes learned via an "IP Internal Reachability Information"
   TLV SHOULD still be advertised within an "IP Internal Reachability
   Information" TLV.  These rules should also be applied when
   advertising IP routes derived from L2 routing into L1.  Of course in
   this case, the up/down bit MUST be set also.

   RFC 1195 defines that if a router sees the same external prefix
   advertised by two or more routers with the same external metric, it
   must select the route that is advertised by the router that is
   closest to itself.  It should be noted that now that external routes
   can be advertised from L1 into L2, and vice versa, the router that
   advertises an external prefix in its LSP might not be the router that
   originally injected this prefix into the IS-IS domain.  Therefore, it
   is less useful to advertise external routes with external metrics
   into other levels.

3.  Types of IP Routes in IS-IS and Their Order of Preference

   RFC 1195 and this document define several ways of advertising IP
   routes in IS-IS.  There are four variables involved.

   1.  The level of the LSP in which the route is advertised.  There are
       currently two possible values: level 1 and level 2.

   2.  The route-type, which can be derived from the type of TLV in
       which the prefix is advertised.  Internal routes are advertised
       in IP Internal Reachability Information TLVs (TLV 128), and
       external routes are advertised in IP External Reachability
       Information TLVs (TLV 130).

   3.  The metric-type: internal or external.  The metric-type is
       derived from the internal/external metric-type bit in the Metric
       field (bit 7).

   4.  The fact whether this route is leaked down in the hierarchy, and
       thus can not be advertised back up.  This information can be
       derived from the newly defined up/down bit in the default Metric
       field.

3.1.  Overview of All Types of IP Prefixes in IS-IS Link State PDUs

   The combination IP Internal Reachability Information and external
   metric-type is not allowed.  Also, the up/down bit MUST NOT be set in
   L2 LSPs.  This leaves us with 8 different types of IP advertisements
   in IS-IS.  However, there are more than 8 reasons for IP prefixes to
   be advertised in IS-IS.  The following list describes the types of IP
   prefixes and how they are encoded.

   L1 intra-area routes:  These are advertised in L1 LSPs, in TLV 128.
      The up/down bit is set to zero, metric-type is internal metric.
      These IP prefixes are directly connected to the advertising
      router.

   L1 external routes:  These are advertised in L1 LSPs, in TLV 130.
      The up/down bit is set to zero, metric-type is internal metric.
      These IP prefixes are learned from other IGPs, and are usually not
      directly connected to the advertising router.

   L2 intra-area routes:  These are advertised in L2 LSPs, in TLV 128.
      The up/down bit is set to zero, metric-type is internal metric.
      These IP prefixes are directly connected to the advertising
      router.  These prefixes cannot be distinguished from L1->L2 inter-
      area routes.

   L2 external routes:  These are advertised in L2 LSPs, in TLV 130.
      The up/down bit is set to zero, metric-type is internal metric.
      These IP prefixes are learned from other IGPs, and are usually not
      directly connected to the advertising router.  These prefixes
      cannot be distinguished from L1->L2 inter-area external routes.

   L1->L2 inter-area routes:  These are advertised in L2 LSPs, in TLV
      128.  The up/down bit is set to zero, metric-type is internal
      metric.  These IP prefixes are learned via L1 routing, and were
      derived during the L1 Shortest Path First (SPF) computation from
      prefixes advertised in L1 LSPs in TLV 128.  These prefixes cannot
      be distinguished from L2 intra-area routes.

   L1->L2 inter-area external routes:  These are advertised in L2 LSPs,
      in TLV 130.  The up/down bit is set to zero, metric-type is
      internal metric.  These IP prefixes are learned via L1 routing,
      and were derived during the L1 SPF computation from prefixes
      advertised in L1 LSPs in TLV 130.  These prefixes cannot be
      distinguished from L2 external routes.

   L2->L1 inter-area routes:  These are advertised in L1 LSPs, in TLV
      128.  The up/down bit is set to one, metric-type is internal
      metric.  These IP prefixes are learned via L2 routing, and were
      derived during the L2 SPF computation from prefixes advertised in
      TLV 128.

   L2->L1 inter-area external routes:  These are advertised in L1 LSPs,
      in TLV 130.  The up/down bit is set to one, metric-type is
      internal metric.  These IP prefixes are learned via L2 routing,
      and were derived during the L2 SPF computation from prefixes
      advertised in L2 LSPs in TLV 130.

   L1 external routes with external metric:  These are advertised in L1
      LSPs, in TLV 130.  The up/down bit is set to zero, metric-type is
      external metric.  These IP prefixes are learned from other IGPs,
      and are usually not directly connected to the advertising router.

   L2 external routes with external metric:  These are advertised in L2
      LSPs, in TLV 130.  The up/down bit is set to zero, metric-type is
      external metric.  These IP prefixes are learned from other IGPs,
      and are usually not directly connected to the advertising router.
      These prefixes cannot be distinguished from L1->L2 inter-area
      external routes with external metric.

   L1->L2 inter-area external routes with external metric:  These are
      advertised in L2 LSPs, in TLV 130.  The up/down bit is set to
      zero, metric-type is external metric.  These IP prefixes are
      learned via L1 routing, and were derived during the L1 SPF
      computation from prefixes advertised in L1 LSPs in TLV 130 with
      external metrics.  These prefixes can not be distinguished from L2
      external routes with external metric.

   L2->L1 inter-area external routes with external metric:  These are
      advertised in L1 LSPs, in TLV 130.  The up/down bit is set to one,
      metric-type is external metric.  These IP prefixes are learned via
      L2 routing, and were derived during the L1 SPF computation from
      prefixes advertised in L2 LSPs in TLV 130 with external metrics.

3.2.  Order of Preference for all Types of IP Routes in IS-IS

   Unfortunately, IS-IS cannot depend on metrics alone for route
   selection.  Some types of routes must always be preferred over
   others, regardless of the costs that were computed in the Dijkstra
   calculation.  One of the reasons for this is that inter-area routes
   can only be advertised with a maximum metric of 63.  Another reason
   is that this maximum value of 63 does not mean infinity (e.g., like a
   hop count of 16 in RIP denotes unreachable).  Introducing a value for
   infinity cost in IS-IS inter-area routes would introduce counting-
   to-infinity behavior via two or more L1L2 routers, which would have a
   bad impact on network stability.

   The order of preference of IP routes in IS-IS is based on a few
   assumptions.

   o  RFC 1195 defines that routes derived from L1 routing are preferred
      over routes derived from L2 routing.

   o  The note in RFC 1195, paragraph 3.10.2, item 2c) defines that
      internal routes with internal metric-type and external prefixes
      with internal metric-type have the same preference.

   o  RFC 1195 defines that external routes with internal metric-type
      are preferred over external routes with external metric-type.

   o  Routes derived from L2 routing are preferred over L2->L1 routes
      derived from L1 routing.

   Based on these assumptions, this document defines the following route
   preferences.

   1.  L1 intra-area routes with internal metric; L1 external routes
       with internal metric

   2.  L2 intra-area routes with internal metric; L2 external routes
       with internal metric; L1->L2 inter-area routes with internal
       metric; L1->L2 inter-area external routes with internal metric

   3.  L2->L1 inter-area routes with internal metric; L2->L1 inter-area
       external routes with internal metric

   4.  L1 external routes with external metric

   5.  L2 external routes with external metric; L1->L2 inter-area
       external routes with external metric

   6.  L2->L1 inter-area external routes with external metric

3.3.  Additional Notes on What Prefixes to Accept or Advertise

   Section 3.1 enumerates all used IP route-types in IS-IS.  Besides
   these defined route-types, the encoding used would allow for a few
   more potential combinations.  One of them is the combination of "IP
   Internal Reachability Information" and external metric-type.  This
   combination SHOULD NOT be used when building an LSP.  Upon receipt of
   an IP prefix with this combination, routers MUST ignore this prefix.
   Another issue would be the usage of the up/down bit in L2 LSPs.
   Because IS-IS is currently defined with two levels of hierarchy,
   there should never be a need to set the up/down bit in L2 LSPs.
   However, if IS-IS would ever be extended with more than two levels of
   hierarchy, L2-only (or L1L2) routers will need to be able to accept
   L2 IP routes with the up/down bit set.  Therefore, it is RECOMMENDED
   that implementations ignore the up/down bit in L2 LSPs, and accept
   the prefixes in L2 LSPs regardless of whether the up/down bit is set.
   This will allow for simpler migration once more than two levels of
   hierarchy are defined.

   Another detail that implementors should be aware of is the fact that
   L1L2 routers SHOULD only advertise in their L2 LSP those L1 routes
   that they use for forwarding themselves.  They SHOULD NOT
   unconditionally advertise into L2 all prefixes from LSPs in the L1
   database.

   Not all prefixes need to be advertised up or down the hierarchy.
   Implementations might allow for additional manual filtering or
   summarization to further bring down the number of inter-area prefixes
   they advertise in their LSPs.  It is also RECOMMENDED that the
   default configuration of L1L2 routers not advertise any L2 routes
   into L1 (see also Section 4).

4.  Inter-Operability with Older Implementations

   The solution in this document is not fully compatible with RFC 1195.
   It is an extension to RFC 1195.  If routers do not use the new
   functionality of external L1 routes or L2->L1 inter-area routes,
   older implementations that strictly follow RFC 1195 will be
   compatible with newer implementations that follow this document.

   Implementations that do not accept the "IP External Reachability
   Information" TLV in L1 LSPs will not be able to compute external L1
   routes.  This could cause routing loops between L1-only routers that
   do understand external L1 routes for a particular destination, and
   L1-only routers that use the default route pointing to the closest
   attached L1L2 router for that destination.

   Implementations that follow RFC 1195 SHOULD ignore bit 8 in the
   default Metric field when computing routes.  Therefore, even older
   implementations that do not know of the up/down bit should be able to
   accept the new L2->L1 inter-area routes.  These older implementations
   will install the new L2->L1 inter-area routes as L1 intra-area
   routes, but that in itself does not cause routing loops among L1-only
   routers.

   However, it is vital that the up/down bit is recognized by L1L2
   routers.  As has been stated before, L1L2 routers MUST NOT advertise
   L2->L1 inter-area routes back into L2.  Therefore, if L2 routes are
   advertised down into an L1 area, it is required that all L1L2 routers
   in that area run software that understands the new up/down bit.
   Older implementations that follow RFC 1195 and do not understand the
   new up/down bit will treat the L2->L1 inter-area routes as L1 intra-
   area routes, and they will advertise these routes back into L2.  This
   can cause routing loops, sub-optimal routing, or extra routing
   instability.  For this reason, it is RECOMMENDED that implementations
   by default not advertise any L2 routes into L1.  Implementations
   SHOULD force the network administrator to manually configure L1L2
   routers to advertise any L2 routes into L1.

5.  Comparisons with Other Proposals

   In [RFC5305], a new TLV is defined to transport IP prefix
   information.  This TLV format also defines an up/down bit to allow
   for L2->L1 inter-area routes.  RFC 5305 also defines a new TLV to
   describe links.  Both TLVs have wider metric space and have the
   possibility to define sub-TLVs to advertise extra information
   belonging to the link or prefix.  The wider metric space in IP prefix
   TLVs allows for more granular metric information about inter-area
   path costs.  To make full use of the wider metric space, network
   administrators must deploy both new TLVs at the same time.

   Deployment of RFC 5305 requires an upgrade of all routers in the
   network and a transition to the new TLVs.  Such a network-wide
   upgrade and transition might not be an easy task.  In this case, the
   solution defined in this document, which requires only an upgrade of
   L1L2 routers in selected areas, might be a good alternative to the
   solution defined in 5305.

6.  Security Considerations

   This document raises no new security issues for IS-IS; for general
   security considerations for IS-IS see [RFC5304].

7.  References

7.1.  Normative References

   [ISO-10589]  ISO, "Intermediate System to Intermediate System
                intra-domain routeing information exchange protocol for
                use in conjunction with the protocol for providing the
                connectionless-mode network service (ISO 8473)",
                International Standard 10589:2002, Second Edition, 2002.

   [RFC1195]    Callon, R., "Use of OSI IS-IS for routing in TCP/IP and
                dual environments", RFC 1195, December 1990.

   [RFC2119]    Bradner, S., "Key words for use in RFCs to Indicate
                Requirement Levels", BCP 14, RFC 2119, March 1997.

7.2.  Informative References

   [RFC2966]    Li, T., Przygienda, T., and H. Smit, "Domain-wide Prefix
                Distribution with Two-Level IS-IS", RFC 2966,
                October 2000.

   [RFC5304]    Li, T. and R. Atkinson, "IS-IS Cryptographic
                Authentication", RFC 5304, October 2008.

   [RFC5305]    Li, T. and H. Smit, "IS-IS Extensions for Traffic
                Engineering", RFC 5305, October 2008.

Authors' Addresses

   Tony Li
   Redback Networks, Inc.
   300 Holger Way
   San Jose, CA  95134
   USA

   Phone: +1 408 750 5160
   EMail: tony.li@tony.li


   Henk Smit

   EMail: hhw.smit@xs4all.nl


   Tony Przygienda
   Z2 Sagl
   Via Tersaggio 20
   CH-6949 Comano
   Switzerland

   EMail: prz@net4u.ch

Full Copyright Statement

   Copyright (C) The IETF Trust (2008).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
   THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
   OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
   THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.

ISO Plain Language

On this page
PROBLEMIn a two-level IS-IS domain, routers only exchange summaries of each area's prefixes, so a router outside an area cannot compute a good path into it, and cannot pick the best exit point.
MECHANISMThe RFC extends the IS-IS semantics so that level 2 routes can be advertised into level 1, and marks them with an up/down bit so that a router never advertises them back up the hierarchy, which is what would create a forwarding loop.
WHAT IT CHANGESRoutes computed inside the domain become more accurate, at the cost of more prefixes to carry. The document replaces RFC 2966 and updates RFC 1195.

§1Two-Level IS-IS and Its Limits

The document describes extensions to the Intermediate System to Intermediate System (IS-IS) protocol to support optimal routing within a two-level domain. IS-IS itself is specified in ISO 10589, with extensions for supporting IPv4 given in RFC 1195. The document replaces RFC 2966, which was an Informational document, and no other intentional substantive changes were made to it.

An IS-IS routing domain, an autonomous system running IS-IS, can be partitioned into multiple level 1 areas and a level 2 connected subset of the topology that interconnects all of the level 1 areas. Within each level 1 area, all routers exchange link state information, and level 2 routers also exchange level 2 link state information to compute routes between areas.

RFC 1195 defines the Type, Length and Value tuples used to carry IPv4 routing information in IS-IS, and the semantics and procedures for interactions between levels. Routers in a level 1 area exchange information within that area, and for IP destinations not found among the prefixes in the level 1 database, the level 1 router should forward packets to the nearest router that is in both level 1 and level 2, an L1L2 router, with the 'attached bit' set in its level 1 Link State Protocol Data Unit. Also per RFC 1195, an L1L2 router should be manually configured with a set of prefixes summarising the IP prefixes reachable in that level 1 area, and these summaries are injected into level 2. RFC 1195 specifies no further interactions between level 1 and level 2 for IPv4 prefixes, and this document extends those semantics so that a domain running both level 1 and level 2 routers can distribute IP prefixes between the levels and back, with restrictions that keep persistent forwarding loops from forming. The goal is to increase the granularity of the routing information within the domain.

Today a router outside an area only knows a summary of that area's addresses, so it has to guess which way in is best. This document lets the real prefixes cross the levels, and adds the rule that keeps that from causing loops.

§1.1Why Share More Prefixes, and What It Costs

The mechanisms in RFC 1195 lead to excellent scalability properties, but in certain circumstances the administrator may wish to sacrifice some scalability and distribute more specific information than RFC 1195 describes.

The first reason is the quality of the resulting routes. A well-known property of prefix summarization is that it necessarily results in a loss of information, which in turn results in the computation of a route based on less information, and that will frequently produce routes that are not optimal. The RFC's example: suppose a level 1 area has two L1L2 routers that both advertise a single summary of all prefixes in the area. Any other level 2 router computes the shortest path to one of the two L1L2 routers, and if they are equidistant it picks one arbitrarily. That router may not be the optimal one when viewed from the level 1 topology, and the path from it to the destination may even traverse the L1L2 router that was not selected. More detailed topological or metric information would let the level 2 router compute a more optimal route. The situation is symmetric: a level 1 router has no information about prefixes in level 2 or in another level 1 area, and using the nearest L1L2 router is effectively injecting a default route without metric information into the level 1 area.

The second driver is shortest exit routing. When a router learns multiple possible paths to external destinations via BGP, it selects only one of those routes for the forwarding table, and one factor in the BGP route selection is the IGP cost to the BGP next hop address. Many ISP networks depend on this technique. If a level 1 router does not know the exact IGP metric to all BGP speakers in other level 1 areas, it cannot do effective shortest exit routing.

The third driver is the use of the IGP metric as part of the BGP Multi-Exit Discriminator. Current practice is to take the IS-IS metric and insert it as the MED value, which tends to cause external traffic to enter the domain at the point closest to the exit router. That works in single-area networks but becomes problematic once hierarchy is installed, because the loss of end-to-end metric information means the MED value will not reflect the true distance across the advertising domain. Full distribution of prefix information within the domain would allow an accurate computation of the IS-IS metric across the domain, and therefore an accurate MED value.

Three things improve when the real prefixes are known: the path a router picks, the exit point it chooses for outside traffic, and the metric it advertises to other networks. The cost is that the domain now carries more prefixes.

Three reasons to distribute prefixes across the levels
  • Better routesSummaries lose information, so a router outside an area cannot see which way in is actually best.
  • Shortest exit routingChoosing which BGP route to install depends on the IGP cost to the next hop, which a level 1 router cannot know without the real prefixes.
  • A meaningful MEDThe metric advertised to other domains is the IS-IS metric, which is wrong if the end-to-end metric is not known inside the domain.

§1.2The Scalability Trade-Off

The disadvantage of domain-wide prefix distribution is its impact on the scalability of IS-IS. Areas help scalability because LSPs are contained within a single area, which limits the size of the link state database, and that in turn limits the complexity of the shortest path computation. Summarizing prefix information helps too, because the abstraction removes the sheer number of data items to be transported and the number of routes to be computed.

The RFC notes that distributing prefixes on a domain-wide basis impacts the second of those aspects only. It will increase the number of prefixes throughout the domain, which results in increased memory consumption, transmission requirements and computation requirements throughout the domain. It has no effect whatsoever on the first aspect, namely the existence of areas and the limitation of the distribution of the link state database.

The net result is that introducing domain-wide prefix distribution into a formerly flat, single-area network is a clear benefit to the scalability of that network, but it is a compromise and does not provide the maximum scalability available with IS-IS. Domains that use the facility should be aware of the trade-off between scalability and optimality, and provision and monitor their networks accordingly; normal provisioning guidelines for a fully hierarchical deployment of IS-IS do not apply to this configuration.

Distributing more prefixes makes the link state database bigger and the path computation heavier. It does not change how the domain is split into areas. The RFC calls the result a compromise, not a free win.

§2The Up/Down Bit and Level 2 Routes in Level 1

The document defines how level 2 routes are advertised in level 1 LSPs, as an extension of the encoding in RFC 1195. To some extent the level 2 backbone can be seen as a separate area itself. RFC 1195 allows L1L2 routers to advertise IP routes learned via level 1 routing into level 2, and those inter-area routes must be advertised in level 2 LSPs in the 'IP Internal Reachability Information' TLV, TLV 128. Intra-area level 2 routes are advertised in the same TLV, so level 1 to level 2 inter-area routes are indistinguishable from level 2 intra-area routes.

RFC 1195 does not define level 2 to level 1 inter-area routes. A simple extension would allow an L1L2 router to advertise routes learned via level 2 routing in its level 1 LSP, but to prevent routing loops, L1L2 routers MUST NOT advertise level 2 to level 1 inter-area routes that they learn via level 1 routing back into level 2. There must therefore be a way to distinguish level 2 to level 1 inter-area routes from level 1 intra-area routes. RFC 5305 defines an 'up/down bit' for this purpose in the extended IP reachability TLV, TLV 135.

This document takes a different route. TLVs 128 and 130 have a Metric field consisting of four Type of Service metrics, and the first metric, the 'default metric', has its high-order bit reserved as bit 8, which routers must set to zero on transmission and ignore on receipt. The document redefines that high-order bit in the default metric field of TLVs 128 and 130 to be the up/down bit. L1L2 routers MUST set it to one for prefixes derived from level 2 routing and advertised into level 1 LSPs, and it MUST be set to zero for all other IP prefixes in level 1 or level 2 LSPs. Prefixes with the up/down bit set that are learned via level 1 routing MUST NOT be advertised by L1L2 routers back into level 2.

The document also clarifies the route-type and metric-type rules. TLV 128 is 'IP Internal Reachability Information' and should carry prefixes directly connected to IS-IS routers, while TLV 130 is 'IP External Reachability Information' and should carry routes learned from outside the IS-IS domain. Metrics of the internal metric-type should be used when the metric is comparable to metrics used to weigh links inside the domain, and metrics of the external metric-type when it cannot be directly compared; the external metric-type can only be used for external IP prefixes, so it should never be seen in TLV 128. Routers MUST give the same preference to IP routes advertised in the internal and external TLVs when they carry an internal metric, and IP routes advertised in the external TLV with the external metric-type MUST be given less preference than the same routes advertised with the internal metric-type, regardless of the metric values.

The existing IS-IS prefix TLVs had one reserved bit that every router was told to ignore. This document gives that bit a meaning: it marks a prefix that came from level 2, so that it can be sent down to level 1 but never back up.

§3.1The Types of IP Routes in IS-IS

RFC 1195 and this document define several ways of advertising IP routes, with four variables involved: the level of the LSP in which the route is advertised, level 1 or level 2; the route-type, derived from the type of TLV, with internal routes in TLV 128 and external routes in TLV 130; the metric-type, internal or external, derived from the internal/external metric-type bit in the Metric field, bit 7; and whether the route is leaked down the hierarchy and so cannot be advertised back up, which is derived from the newly defined up/down bit in the default Metric field.

The combination of internal reachability information with an external metric-type is not allowed, and the up/down bit MUST NOT be set in level 2 LSPs. That leaves eight types of IP advertisement in IS-IS. Level 1 intra-area routes are advertised in level 1 LSPs in TLV 128 with the up/down bit zero and an internal metric, and the prefixes are directly connected to the advertising router. Level 1 external routes are advertised in level 1 LSPs in TLV 130 with the up/down bit zero and an internal metric, and the prefixes are learned from other IGPs.

Level 2 intra-area routes are advertised in level 2 LSPs in TLV 128 with the up/down bit zero and an internal metric, and cannot be distinguished from level 1 to level 2 inter-area routes. Level 2 external routes are advertised in level 2 LSPs in TLV 130 with the up/down bit zero and an internal metric, and cannot be distinguished from level 1 to level 2 inter-area external routes. Level 1 to level 2 inter-area routes are advertised in level 2 LSPs in TLV 128 with the up/down bit zero and an internal metric, derived during the level 1 SPF computation from prefixes advertised in level 1 LSPs in TLV 128. Their external counterparts are advertised in level 2 LSPs in TLV 130 with the up/down bit zero and an internal metric, derived from level 1 LSPs in TLV 130.

Level 2 to level 1 inter-area routes are advertised in level 1 LSPs in TLV 128 with the up/down bit set to one and an internal metric, learned via level 2 routing and derived during the level 2 SPF computation. Their external counterparts are advertised in level 1 LSPs in TLV 130 with the up/down bit set to one and an internal metric. Level 1 external routes with an external metric are advertised in level 1 LSPs in TLV 130 with the up/down bit zero, as are level 2 external routes with an external metric in level 2 LSPs, which cannot be distinguished from level 1 to level 2 inter-area external routes with an external metric. Level 2 to level 1 inter-area external routes with an external metric are advertised in level 1 LSPs in TLV 130 with the up/down bit set to one.

Adding the level, the TLV type, the metric type and the new bit gives eight distinct kinds of prefix advertisement, and the RFC lists each one with the TLV it travels in and the bits it carries.

The eight kinds of IP advertisement in IS-IS
Route typeAdvertised inUp/down bitMetric type
L1 intra-areaL1 LSPs, TLV 1280Internal
L1 externalL1 LSPs, TLV 1300Internal
L2 intra-areaL2 LSPs, TLV 1280Internal
L2 externalL2 LSPs, TLV 1300Internal
L1 to L2 inter-areaL2 LSPs, TLV 1280Internal
L1 to L2 inter-area externalL2 LSPs, TLV 1300Internal
L2 to L1 inter-areaL1 LSPs, TLV 1281Internal
L2 to L1 inter-area externalL1 LSPs, TLV 1301Internal

§3.2Order of Preference

IS-IS cannot depend on metrics alone for route selection. Some types of route must always be preferred over others, regardless of the costs computed in the Dijkstra calculation. One reason is that inter-area routes can only be advertised with a maximum metric of 63, and that value of 63 does not mean infinity, as a hop count of 16 does in RIP. Introducing an infinity cost for IS-IS inter-area routes would introduce counting-to-infinity behaviour through two or more L1L2 routers, which would have a bad impact on network stability.

The order of preference rests on four assumptions from RFC 1195: routes derived from level 1 routing are preferred over routes derived from level 2 routing; internal routes with internal metric-type and external prefixes with internal metric-type have the same preference; external routes with internal metric-type are preferred over external routes with external metric-type; and routes derived from level 2 routing are preferred over level 2 to level 1 routes derived from level 1 routing.

From those the document derives six levels of preference. First come level 1 intra-area routes with an internal metric and level 1 external routes with an internal metric. Second come level 2 intra-area routes with an internal metric, level 2 external routes with an internal metric, level 1 to level 2 inter-area routes with an internal metric, and level 1 to level 2 inter-area external routes with an internal metric. Third come level 2 to level 1 inter-area routes with an internal metric, and level 2 to level 1 inter-area external routes with an internal metric. Fourth come level 1 external routes with an external metric. Fifth come level 2 external routes with an external metric, and level 1 to level 2 inter-area external routes with an external metric. Sixth come level 2 to level 1 inter-area external routes with an external metric.

When two routes compete, IS-IS does not simply take the lower metric. It has a fixed ranking of route kinds, and the ranking puts local area routes first and routes that came down from level 2 last.

The order in which route kinds are preferred
  • 1L1 routes — L1 intra-area routes and L1 external routes, both with an internal metric.
  • 2L2 routes and L1 to L2 routes — L2 intra-area, L2 external, L1 to L2 inter-area and L1 to L2 inter-area external, all with an internal metric.
  • 3L2 to L1 routes — L2 to L1 inter-area routes and their external counterparts, with an internal metric.
  • 4L1 external with external metric — The first kind of route that carries an external metric.
  • 5L2 external with external metric — L2 external routes and L1 to L2 inter-area external routes, with an external metric.
  • 6L2 to L1 with external metric — L2 to L1 inter-area external routes with an external metric, the least preferred of all.

§4Compatibility With Older Routers

The solution in the document is not fully compatible with RFC 1195; it is an extension to it. If routers do not use the new functionality of external level 1 routes or level 2 to level 1 inter-area routes, older implementations that strictly follow RFC 1195 will be compatible with newer implementations that follow this document.

Implementations that do not accept the 'IP External Reachability Information' TLV in level 1 LSPs will not be able to compute external level 1 routes. That could cause routing loops between level 1-only routers that do understand external level 1 routes for a particular destination and level 1-only routers that use the default route pointing to the closest attached L1L2 router for that destination. Implementations that follow RFC 1195 SHOULD ignore bit 8 in the default Metric field when computing routes, so even older implementations that do not know of the up/down bit should be able to accept the new level 2 to level 1 inter-area routes; they will install them as level 1 intra-area routes, which does not by itself cause routing loops among level 1-only routers.

It is vital, however, that the up/down bit is recognised by L1L2 routers. Older implementations that follow RFC 1195 and do not understand the bit will treat the level 2 to level 1 inter-area routes as level 1 intra-area routes, and will advertise these routes back into level 2, which can cause routing loops, sub-optimal routing or extra routing instability. For this reason, it is RECOMMENDED that implementations by default do not advertise any level 2 routes into level 1, and that implementations SHOULD force the network administrator to configure L1L2 routers manually to advertise any level 2 routes into level 1.

Old routers ignore the new bit, which is harmless among level 1 routers. It is the routers that sit between the levels that must understand it, because an old one would send a level 2 route back up and cause a loop. The RFC therefore says the feature should be off until an administrator turns it on.

§6Security Considerations

The document raises no new security issues for IS-IS. For the general security considerations for IS-IS, the RFC points at RFC 5304, which covers IS-IS cryptographic authentication.

Nothing here changes the security of IS-IS. The authentication rules are in a separate document.

§9References