Guest

IPv6

Multi-Topology IS-IS

Table Of Contents

Application Note

1 Introduction

2 Abbreviations

3 Architecture

3.1 Maintaining adjacency

3.2 LSP processing and flooding

3.3 New Type Length Value attributes

3.4 Multi-Topology ID Values

4 Command Line Interface

4.1 Address-family ipv6 commands

4.2 Interface command

4.3 Show commands

5 Deployment scenarios

5.1 Congruent topology

5.2 Dual topology

5.3 Restrictions

6 References


Application Note


IS-IS Multi-Topology

1 Introduction

Intermediate Systems to Intermediate Systems (IS-IS) is a routing protocol used today by many Internet Service Providers (ISPs). Originally developed for OSI [ISO10589], extensions have been made available to support IPv4 [RFC1195]. IS-IS has been further extended to support IPv6 [H01], and it now runs on ISP backbone deploying dual stack transition mechanism. Although it is preferable to reduce operational complexity with a single IGP, the initial deployment of IS-IS for IPv6 suffers from the constraint to see IPv4 and IPv6 adopting a common topology. The supported IPv6 network/interface must be congruent to the IPv4 network. This model creates some undesirable restrictions, so certain networks are not supported. An example of an unsupported network is a router with links configured only for IS-IS IPv6. For these networks, IPv4 traffic may be mistakenly routed via the IPv6-only links.

MPLS Traffic Engineering is another example of an unsupported network, because IPv6 Packets may be mistakenly routed via MPLS Traffic Engineering tunnels. Since IPv6 is not supported in these tunnels, IPv6 packets will be dropped. As a result, customers with these networks may encounter IS-IS IPv6 deployment problems. Conversely, a multi-topology approach eases the introduction of IPv6 in a network.

This document describes how Cisco IOS(R) Software Releases 12.2(15)T, 12.2(18)S, and 12.0(26)S support Multi-Topology IS-IS IPv6 on the Cisco 12000 Series Internet Router. The feature fixes the limitations of the current IS-IS IPv6 implementation, while maintaining the current IS-IS IPv6 functionalities. Cisco IOS Software supports two topologies: one IPv4 topology and one IPv6 topology.

2 Abbreviations

PDU

Protocol Data Unit

IIH PDU

Intermediate System to Intermediate System Hello PDU

LSP

Link State PDU

IS

Intermediate System

DIS

Designed Intermediate System

RIB

Routing Information Base

FIB

Forwarding Information Base


3 Architecture

Cisco IOS IS-IS Multi-Topology maintains a topology for IPv6 and a common topology for IPv4 and ISO. To reach this goal in a backwards-compatible manner, IS-IS has been extended by additions of new Type Length Value (TLVs). This IS-IS extension impacts adjacency forming, prefix advertisement and Intermediate Systems reachability. The following sections address each issue separately.

3.1 Maintaining adjacency

To form topologies from the network elements, users must know how to categorize interfaces by topology. A new TLV is added to IS-IS Hello (IIH) to meet this requirement. Upon capability exchange, the Intermediate Systems can include the adjacency in the correct topology. Boundaries between levels will be the same for all topologies. If IPv4 is the only topology on the interface, it is not advertised in the new TLV. Thus, the exclusion of MT TLV in the IIH implies that this interface is only part of the IPv4 topology.

Point-to-Point adjacency

Adjacencies on point-to-point interfaces are normally formed with IS-IS routers that do not implement Multi-Topology extensions. The Multi-Topology IS Reachable TLV is included for all IPv6 adjacencies. If the two peers share a least one topology ID, they will form an adjacency in order to become adjacent. The link will be included in all the topologies the peers have in common.

LAN adjacency

On a LAN, all routers that implement the Multi-Topology extension advertise their Multi-Topology capability TLV in their IIHs. A Multi-Topology capable router includes according Multi-Topology MT Pseudonode in its LSP MT IS Reachable TLV if there is at least one adjacency on the LAN interface that belongs to this MT.

Two Routers on a LAN always establish adjacency, regardless of whether they have a common topology ID, because it is not possible to prevent a router that does not understand Multi-Topology extensions from being responsible for generation of the according Pseudonode. This ensures that all routers on the LAN can correctly elect the same DIS. On a LAN, an IS includes Multi-Topology pseudo link to the Pseudonode in the non-pseudonode LSP if there is at least one adjacency on the LAN interface that belongs to this topology.

A Pseudonode generated by DIS contains in its IS Reachable TLV all nodes on the LAN as usual regardless of their MT capabilities.

3.2 LSP processing and flooding

A change in Multi-Topology IS Reachable TLV triggers only Multi-Topology ISIS IPv6 SPF. It does not trigger standard IPv4 SPF. Likewise, a change in Multi-Topology Reachable IPv6 Prefixes TLV should trigger only partial route calculation for IPv6. A change in "standard" IS reachable TLV for the pseudonode triggers IPv6 SPF as the IS reachable TLV for the pseudonode is shared by all topologies.

The LSP flooding mechanism is not changed by Multi-Topology extension.

3.3 New Type Length Value attributes

New TLVs are added to support Multi-Topology extensions.

Multi-topology TLV: contains one or more multi-topology ID in which the router participates. It is theoretically possible to advertise an infinite number of topologies. This TLV is included in IIH and the first fragment of a LSP.

MT Intermediate Systems TLV: this TLV appears as many times as the number of topologies a node supports. A MT ID is added to the extended IS reachability TLV type 22.

Multi-Topology Reachable IPv4 Prefixes TLV: this TLV appears as many times as the number of IPv4 announced by an IS for a given MT ID. Its structure is aligned with the extended IS Reachability TLV Type 236 and add a MT ID.

Multi-Topology Reachable IPv6 Prefixes TLV: this TLV appears as many times as the number of IPv6 announced by an IS for a given MT ID. Its structure is aligned with the extended IS Reachability TLV Type 236 and add a MT ID.

3.4 Multi-Topology ID Values

The following Multi-Topology ID (MT ID) are standardized and in use in Cisco IOS:

MT ID #0: it is the "standard" topology for IPv4/CLNS

MT ID #2: it is the IPv6 Routing Topology.

4 Command Line Interface

4.1 Address-family ipv6 commands

Multi-topology

This command enables Multi-Topology IS-IS IPv6, multi-SPF model. Off is the default mode. When this command is not configured, the router runs IS-IS IPv6 in single SPF mode. The optional keyword transition may be used for transitioning existing IS-IS IPv6 single SPF mode to Multi-Topology IS-IS IPv6. When transition mode is enabled, the router advertises both Multi-Topology TLVs and the old style IS-IS IPv6 TLVs. As a side effect, this increases the LSP size. Enabling or disabling multi-topology clears all adjacencies, all LSP databases, and all IS-IS ipv6 routes.

The following configuration is a minimal Multi-Topology configuration. Note that wide metric is mandated for Multi-Topology to work.

router isis 
net 49.0000.0100.0000.0000.0500
metric-style wide
!
address-family ipv6
multi-topology
exit-address-family

Prc-interval

This command is the same as the existing prc-interval command under router isis except it is applied only to Multi-Topology ISIS ipv6. It specifies the minimum time (in seconds) between two consecutive partial route calculations.

Spf-interval

This command is the same as the existing spf-interval command under router isis, except it is applied only to Multi-Topology ISIS IPv6. It specifies the minimum time (in seconds) between two consecutive SPF computations.

4.2 Interface command

isis ipv6 metric

This command is to configure the metric value for IS-IS IPv6 interface. The default is 10. When isis ipv6 metric command is configured, it rebuilds the route LSP and trigger ISIS Multi-Topology IPv6 SPF calculation. The following example is a basic interface configuration for an interface in the Multi-Topology context.

interface Serial0/1

ip address 192.168.0.5 255.255.255.252
ip router isis 
ipv6 address 3FFF:FFFF:1::1/64
ipv6 router isis 
isis ipv6 metric 20

4.3 Show commands

No new "show command" has been introduced to support IS-IS Multi-Topology. Some of the existing commands take additional arguments to reflect the existence of a topology specific to IPv6. The output of existing commands has thus been extended to report Multi-Topology membership.

show clns neighbor

The output of the existing command is modified to display the adjacency that is learned via Multi-Topology IS-IS. In the following example "System ID 2653" is a Multi-Topology neighbor, whereas "System ID 2651" supports only the standard topology.

Router#show clns neighbors 
System Id      Interface   SNPA                State  Holdtime  Type Protocol
2653           Se0/1       *HDLC*              Up     25        L1L2 M-ISIS
2651           Se0/0       *HDLC*              Up     21        L1L2 IS-IS

show clns neighbor detail

Again, the output of the existing command is modified to indicate which protocol, and associated topology, is supported by the neighbor.

Router#show clns neighbors detail 
System Id      Interface   SNPA                State  Holdtime  Type Protocol
2653           Se0/1       *HDLC*              Up     25        L1L2 M-ISIS
Area Address(es): 49.0000.01
IP Address(es):  192.168.0.6*
IPv6 Address(es): FE80::204:C1FF:FEDB:2FA0
Uptime: 00:01:22
 
Topology: IPv4, IPv6

show isis database detail

This command is modified to display Multi-Topology IS Reachable TLV and Multi-Topology Reachable IPv6 Prefixes TLV.

2652#show isis database detail 
IS-IS Level-2 Link State Database:
LSPID                 LSP Seq Num  LSP Checksum  LSP Holdtime      ATT/P/OL
2651.00-00            0x0000000F   0x0161        1066              0/0/0
Area Address: 49.0000.01
Topology:     IPv4 (0x0) IPv6 (0x2)
NLPID:        0xCC 0x8E 
Hostname: 2651
IP Address:   192.168.0.2
IPv6 Address: 3FFF:FFFF:2::1
Metric: 10         IS-Extended 2652.00
Metric: 10         IS-Extended 2653.01
Metric: 10         IS (MT-IPv6) 2653.01
Metric: 10         IP 192.168.0.0/30
Metric: 20         IP 192.168.0.4/30
Metric: 10         IP 192.168.1.0/24
Metric: 20         IPv6 (MT-IPv6) 3FFF:FFFF:1::/64
Metric: 10         IPv6 (MT-IPv6) 3FFF:FFFF:2::/64
2652.00-00          * 0x0000000D   0x8284        1076              0/0/0
Area Address: 49.0000.01
Topology:     IPv4 (0x0) IPv6 (0x2)
NLPID:        0xCC 0x8E 
Hostname: 2652
IP Address:   192.168.0.5
IPv6 Address: 3FFF:FFFF:1::1
Metric: 10         IS-Extended 2653.00
Metric: 10         IS-Extended 2651.00
Metric: 10         IS (MT-IPv6) 2653.00
Metric: 10         IP 192.168.0.0/30
Metric: 10         IP 192.168.0.4/30
Metric: 20         IP 192.168.1.0/24
Metric: 10         IPv6 (MT-IPv6) 3FFF:FFFF:1::/64

show isis ipv6 spf-log

An optional keyword is added to the existing command to display Multi-Topology ISIS IPv6 SPF log.

2652#show isis ipv6 spf-log 
IPv6 level 1 SPF log
When   Duration  Nodes  Count   First trigger LSP   Triggers
00:04:29    0      2     7      0000.0000.0000.00-00  NEWADJ NEWLSP TLVCODE AFCHANGED
00:04:19    0      1     7      2651.00-00  NEWADJ DELADJ NEWLSP LSPHEADER TLVCONTENT
00:04:09    0      4     1      2653.00-00  TLVCONTENT

IPv6 level 2 SPF log
When   Duration  Nodes  Count   First trigger LSP   Triggers
00:04:30    0      2     7      0000.0000.0000.00-00  NEWADJ NEWLSP TLVCODE AFCHANGED
00:04:20    0      1     5      2651.00-00  NEWADJ DELADJ NEWLSP LSPHEADER TLVCONTENT
00:04:10    0      4     1      2652.00-00  TLVCONTENT

show isis * spf-log

An optional keyword is added to show isis spf-log to display all address families' SPF log.

2652#show isis * spf-log 

IP level 1 SPF log
When   Duration  Nodes  Count   First trigger LSP   Triggers
00:04:58    4      3     9      2652.00-00  RTCLEARED NEWADJ TLVSTYLE NEWLSP TLVCODE
00:04:48    0      4     7      2653.01-00  NEWADJ DELADJ LSPHEADER TLVCONTENT

IP level 2 SPF log
When   Duration  Nodes  Count   First trigger LSP   Triggers
00:04:59    4      2     8      2652.00-00  RTCLEARED NEWADJ TLVSTYLE NEWLSP TLVCODE
00:04:49    0      4     6      2651.00-00  NEWADJ DELADJ NEWLSP LSPHEADER TLVCONTENT

IPv6 level 1 SPF log
When   Duration  Nodes  Count   First trigger LSP   Triggers
00:05:01    0      2     7      0000.0000.0000.00-00  NEWADJ NEWLSP TLVCODE AFCHANGED
00:04:51    0      1     7      2651.00-00  NEWADJ DELADJ NEWLSP LSPHEADER TLVCONTENT
00:04:41    0      4     1      2653.00-00  TLVCONTENT

IPv6 level 2 SPF log
When   Duration  Nodes  Count   First trigger LSP   Triggers
00:05:02    0      2     7      0000.0000.0000.00-00  NEWADJ NEWLSP TLVCODE AFCHANGED
00:04:52    0      1     5      2651.00-00  NEWADJ DELADJ NEWLSP LSPHEADER TLVCONTENT
00:04:42    0      4     1      2652.00-00  TLVCONTENT

show isis ipv6 topology

An optional keyword is added to the existing command to display ISIS IPv6 topology.

2652# show isis ipv6 topology 
IS-IS IPv6 paths to level-1 routers
System Id            Metric     Next-Hop             Interface   SNPA
2651                 20         2653                 Se0/1       *HDLC*         
--
2653                 10         2653                 Se0/1       *HDLC*         

IS-IS IPv6 paths to level-2 routers
System Id            Metric     Next-Hop             Interface   SNPA
2651                 20         2653                 Se0/1       *HDLC*         
--
2653                 10         2653                 Se0/1       *HDLC* 

show isis * topology

An optional "*" is added to the existing command to display all address families' topology.

2652# show isis * topology    

IS-IS IP paths to level-1 routers
System Id            Metric     Next-Hop             Interface   SNPA
2651                 10         2651                 Se0/0       *HDLC*         
--
2653                 10         2653                 Se0/1       *HDLC*         

IS-IS IP paths to level-2 routers
System Id            Metric     Next-Hop             Interface   SNPA
2651                 10         2651                 Se0/0       *HDLC*         
--
2653                 10         2653                 Se0/1       *HDLC*         

IS-IS IPv6 paths to level-1 routers
System Id            Metric     Next-Hop             Interface   SNPA
2651                 20         2653                 Se0/1       *HDLC*         
--
2653                 10         2653                 Se0/1       *HDLC*         

IS-IS IPv6 paths to level-2 routers
System Id            Metric     Next-Hop             Interface   SNPA
2651                 20         2653                 Se0/1       *HDLC*         
--
2653                 10         2653                 Se0/1       *HDLC*         
2652#

5 Deployment scenarios

5.1 Congruent topology

Figure 1 shows two congruent topologies. Each area (1,2,3,4) sees all its routers as belonging to the same class. Areas 1, 2 and 4 are dual stack, while area 3 is IPv4 only. In this case, traffic black-holing is avoided in all cases and IS-IS Multi-Topology code does not need to run on the routers.

Figure 1

IS-IS Congruent Topologies

Dual stack routers are blue, IPv4-only routers are yellow.

5.2 Dual topology

In the case of a non-congruent topology in an area, traffic may be black-holed if Multi-Topology code is not enabled. Figure 2 depicts a non-congruent topology. Router B in Area 1 is an IPv4 only router. The Multi-Topology software will create two topologies inside Area 1: IPv4 and IPv6. Router B will be excluded from the IPv6 topology in Area 1. The IPv4 best path from Router A to Router D is (Router A-Router B- Router C- Router D), whereas the IPv6 best path from router A to Router D is (Router A-Router E- Router F- Router C- Router D). If the Multi-Topology is not enabled; it would be possible to see the best path from Router A to Router D to be (Router A-Router B- Router C- Router D). As the result, an IPv6 packet transmitted between Router A and Router D, would be dropped by Router B that is not IPv6 supportive.

This dual topology scenario is typical of the progressive migration of a network from IPv4 to a dual stack approach. IPv6 capability is gradually introduced on the network routers. The Multi-Topology feature smoothes this transition as the introduction of IPv6 never creates any traffic black hole.

Figure 2

IS-IS non-congruent topologies

Dual stack routers are in blue, IPv4-only routers are in yellow.

5.3 Restrictions

This feature is not compatible with the previous single SPF model IS-IS IPv6 implementation in Cisco IOS Software, as new TLV are used to transmit and advertise IPv6 capabilities. All routers that run IS-IS IPv6 are expected to enable multi-topology within the network as this mode is not compatible with the existing single SPF model ISIS IPv6. However, a transition mode (described paragraph 4.1) is provided for existing IS-IS IPv6 network to migrate to Multi-Topology IS-IS IPv6.

IPv4, IPv6, or IPv4/IPv6 may be configured on the interface for either level-1 level-2 or level-1-2. But if IPv4 and IPv6 are configured on the same interface, they must be running the same IS-IS level: IPv4 cannot be configured to run on ISIS level-1 only on an interface while IPv6 is configured to run ISIS level-2 only on the same interface.

All routers on a LAN or point to point must have at least one common supported topology (IPv4 or IPv6) when operating in Multi-Topology IS-IS mode. However, a router that is not operating in Multi-Topology IS-IS IPv6 mode cannot form adjacency with Multi-Topology IS-IS IPv6 router, even though IPv6 is the common supported topology. However, if IPv4 is the common supported topology between those two routers, adjacency should be formed.

Wide metric is required to be enabled globally on the Autonomous System to run Multi-Topology IS-IS.

As stated earlier, all topologies share the same set of L1-L2 boundaries. However, a router could become potentially partitioned for each of the MTs, overloaded and attached independently. To prevent unnecessary complexity, Multi-topology extensions [ISISMULTI] does not support partition repair. Attached bit is part of the MT TLV being distributed within a node's LSP fragment 0.

6 References

[ISO10589] ISO. Intermediate System to Intermediate System Routing

Exchange Protocol for Use in Conjunction with the Protocol for Providing the Connectionless-Mode Network Service. ISO 10589, 1992.

[RFC1195] R. Callon. Use of OSI ISIS for Routing in TCP/IP and Dual Environments. RFC 1195, December 1990.

[H01] C. Hoops. Routing IPv6 with IS-IS, draft-ietf-isis-ipv6-06, work-in-progress, January 2003

[ISISMULTI] T. Przygienda, N. Shen, N. Sheth, M-ISIS: Multi Topology Routing in IS-IS, draft-ietf-isis-wg-multi-topology-06, work in progress, March 2003.