2. OSPF and IS-is
2
IS-IS and OSPF are both link state protocols, there are similarities and differences
Similarities:
–Link-state representation, aging, and metrics
–Use of Link-state databases and SPF algorithms
–Update, routing decisions, and flooding processes similar
Differences:
–IS-IS organizes domain into two layers; OSPF designates backbone area (area 0)
–IS-IS peering is more flexible than OSPF (hello time, dead intervals, and subnet mask need not match)
–IS-IS selects single DIS which may be preempted; OSPF elects a DR/BDR which cannot be preempted,
–IS-IS does not support NBMA, point-to-multipoint, or virtual links (it rides L2 directly)
3. OSPF and IS-is
3
Terminology
OSPF
–Host
–Router
–Link
–Packet
–Designated router (DR)
–Backup router (BDR)
–Links State Advertisement (LSA)
–Hello Packet
–Database Description (DBD)
ISIS
–End System (ES)
–Intermediate System (IS)
–Circuit
–Protocol Data Unit (PDU)
–Designated IS (DIS)
–N/A (no DBIS is used)
–Link State PDU (LSP)
–IIH PDU
–Complete Sequence Number PDU (CSNP)
5. OSPF and IS-is
5
ISIS
–Sub domain (area)
–Level-2 Sub domain (backbone)
–Level-1 area
–Level-1-2 router (L1-L2)
–AS boundary can be any router (IS)
IS-IS does not have backbone “area”
–A backbone is a contiguous collection of Level-2 routers
6. OSPF and IS-is
6
Contrary to OSPF, which recognizes several network types, IS-IS natively supports only broadcast and
point-to-point network types.
IS-IS is much simpler in terms of adjacency states than OSPF. In IS-IS, there are only three possible
adjacency states:
• Down: The initial state. No IIHs have been received from the neighbor.
• Initializing: IIHs have been received from the neighbor, but it is not certain that the neighbor is
properly receiving this router’s IIHs.
• Up: IIHs have been received from the neighbor, and it is certain that the neighbor is properly
receiving this router’s IIHs .
7. Hierarchy Levels
7
IS-IS presently has a two layer hierarchy
–The backbone (level 2)
–Non-backbone areas (level 1)
An IS (router) can be either:
–Level 1 router (used for intra-area routing)
–Level 2 router (used for inter-area routing)
–Level 1–2 router (intra and inter-area routing)
(by default Cisco routers are L1-L2)
11. Isis adjacency
11
Level 1-only routers
–Can only form adjacencies with Level 1 routers within the same area
–Link State Data Base (LSDB) only carries intra-area information
13. Isis adjacency
13
Level-1-2 routers
Level 2 routers may also perform Level-1 routing (L1-L2 routers)
–L1-L2 routers may have neighbors in any area
–Have two separate LSDBs: Level-1 LSDB & Level-2 LSDB
Level-2 routers carry L1 area information;
-How to reach L1 areas via the L2 topology
–Level 1 routers look at the Attached-bit (ATT-bit) to find the closest Level 1–2 router
–Installs a default route to the closest Level 1–2 router in the area
15. OSI NetworkLayer and Addressing
15
The simplest NSAP format used by most companies running IS-IS as their IGP is as follows:
• Area address (must be at least 1 byte)
• AFI set to 49 Locally administered; thus, you can assign your own
addresses.
• Area ID The octets of the area address after the AFI.
• System ID Cisco routers require a 6-byte system ID.
• NSEL Always set to 0 for a router.
16. Levels of Routing in OSI Networks
16
Routing in OSI networks has a concept of hierarchies, or levels , depending on the network
scope in which the routing is performed. Four levels of routing are defined:
Level 0 routing: Routing between two ES nodes on the same link, or between an ES node and its
nearest IS
Level 1 routing: Routing between ES nodes in a single area of a domain
Level 2 routing: Routing between ES nodes in different areas of a domain
17. IS-ISMetrics, Levels, and Adjacencies
17
Cisco IS-IS implementation assigns all interfaces the default metric of 10, regardless of their
bandwidth. Contrary to OSPF implementation, Cisco IOS does not automatically recalculate an
interface’s bandwidth into its IS-IS metric. It is up to the administrator to configure different interface
metrics if necessary using the isis metric metric [ level ] per-interface command.
18. IS-ISPacket Types
18
IS-IS defines four basic types of packets:
• Hello packet
• Link State PDU
• Complete Sequence Numbers PDU
• Partial Sequence Numbers PDU
19. Hello packet
19
• On broadcast-type interfaces, IS-IS routers use separate Hello packet types for L1 and L2
adjacencies.
• On point-to-point type interfaces, a single L1L2 Hello, also called a point-to-point Hello, is used.
Each router sends Hello packets every 10 seconds by default; the interval can be configured in the
range of 1 to 65535 seconds using a per-interface isis hello-interval seconds [ level ] command for
a particular routing level.
Instead of defining a Hold timer directly, a Hello multiplier value is used to compute the Hold time.
The default Hello multiplier value is 3, resulting in a Hold time of 30 seconds.
The multiplier value can be changed by a per-interface isis hello-multiplier multiplier [ level ]
command.
As opposed to OSPF, timers do not need to match on neighboring routers.
On a DIS, the individual timers are always one-third of the configured timers (with default
settings)—a DIS sends Hellos every 10/3=3.333 seconds, and the Hold interval is 30/3=10
seconds.
20. Link State PDU
Similar to OSPF LSAs that are uniquely identified by their type and Link-State ID, IS-IS LSPs are also
uniquely identified by a number that consists of three parts:
• System ID of the router that originated this LSP (6 octets; taken from the router’s NET address)
• Pseudonode ID that differentiates between the LSP describing the router itself and the LSPs for
multiaccess networks in which the router is a Designated IS (1 octet)
• LSP Number denoting the fragment number of this LSP (1 octet). The LSP Number is also called
simply the Fragment Number or Fragment for short.
23. CONFIGURING isis
Int lo0
ip router isis
!
int S1/1
ip router isis
!
router isis
net 49.0001.1111.1111.1111.00
Int lo0
ip router isis
!
int S1/1
ip router isis
!
int S1/0
ip router isis
!
router isis
net 49.0001.2222.2222.2222.00
Int lo0
ip router isis
!
int S1/1
ip router isis
!
router isis
net 49.0002.3333.3333.3333.00
R1
R3
R2
24. CONFIGURING isis
R2#sh isis nei
System Id Type Interface IP Address State Holdtime Circuit Id
R1 L1L2 Se1/0 10.0.12.1 UP 27 02
R3 L2 Se1/1 10.0.23.3 UP 25 01
R2#
R1#sh isis neighbors
System Id Type Interface IP Address State Holdtime Circuit Id
R2 L1L2 Se1/0 10.0.12.2 UP 23 01
R1#
R3#sh isis nei
System Id Type Interface IP Address State Holdtime Circuit Id
R2 L2 Se1/1 10.0.23.2 UP 24 02
R3#
Note: we can use the show clns neighbors command to verify the neighbor relationship
25. CONFIGURING isis
router isis
log-adjacency-changes all
*Nov 24 22:46:06.175: %CLNS-5-ADJCHANGE: ISIS: Adjacency to R2 (Serial1/0) Up, new
adjacency
On R1, R2 and R3:
R2#sh isis hostname
Level System ID
Dynamic Hostname (notag)
1 1111.1111.1111 R1
2 3333.3333.3333 R3
* 2222.2222.2222 R2
R2#
R1#sh isis hostname
Level System ID
Dynamic Hostname (notag)
1 2222.2222.2222 R2
* 1111.1111.1111 R1
R1#
R3#sh isis hostname
Level System ID
Dynamic Hostname (notag)
2 2222.2222.2222 R2
* 3333.3333.3333 R3
R3#
29. CONFIGURING isis
R1#sh ip route isis | beg Gate
Gateway of last resort is not set
2.0.0.0/24 is subnetted, 1 subnets
i L1 2.2.2.0 [115/20] via 10.0.12.2, 00:00:15, Serial1/0
3.0.0.0/24 is subnetted, 1 subnets
i L2 3.3.3.0 [115/30] via 10.0.12.2, 00:00:15, Serial1/0
10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
i L1 10.0.23.0/24 [115/20] via 10.0.12.2, 00:00:15, Serial1/0
R1#
R2#sh ip route isis | beg Gate
Gateway of last resort is not set
1.0.0.0/24 is subnetted, 1 subnets
i L1 1.1.1.0 [115/20] via 10.0.12.1, 00:01:04, Serial1/0
3.0.0.0/24 is subnetted, 1 subnets
i L2 3.3.3.0 [115/20] via 10.0.23.3, 00:03:39, Serial1/1
R2#
30. CONFIGURING isis
R3#sh ip route isis | beg Gate
Gateway of last resort is not set
1.0.0.0/24 is subnetted, 1 subnets
i L2 1.1.1.0 [115/30] via 10.0.23.2, 00:00:43, Serial1/1
2.0.0.0/24 is subnetted, 1 subnets
i L2 2.2.2.0 [115/20] via 10.0.23.2, 00:03:22, Serial1/1
10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
i L2 10.0.12.0/24 [115/20] via 10.0.23.2, 00:02:38, Serial1/1
R3#
31. CONFIGURING isis
R1(config)#router isis
R1(config-router)#is-type level-1
R3(config)#router isis
R3(config-router)#is-type level-2
R2#sh isis neighbors
System Id Type Interface IP Address State Holdtime Circuit Id
R1 L1 Se1/0 12.0.0.1 UP 29 00
R3 L2 Se1/1 23.0.0.3 UP 13 00
R2#
32. CONFIGURING isis
R2#sh isis database
IS-IS Level-1 Link State Database:
LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL
R1.00-00 0x00000011 0xA07A 673 0/0/0
R2.00-00 * 0x00000017 0x88F2 1058 1/0/0
IS-IS Level-2 Link State Database:
LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL
R2.00-00 * 0x0000001A 0x22EC 1059 0/0/0
R3.00-00 0x00000009 0xF443 691 0/0/0
R2#
34. CONFIGURING isis
R1#sh ip route isis | beg Gate
Gateway of last resort is 10.0.12.2 to network 0.0.0.0
i*L1 0.0.0.0/0 [115/10] via 10.0.12.2, 00:01:48, Serial1/0
2.0.0.0/24 is subnetted, 1 subnets
i L1 2.2.2.0 [115/20] via 10.0.12.2, 00:02:07, Serial1/0
10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
i L1 10.0.23.0/24 [115/20] via 10.0.12.2, 00:02:07, Serial1/0
R1#
R2#sh ip route isis | beg Gate
Gateway of last resort is not set
1.0.0.0/24 is subnetted, 1 subnets
i L1 1.1.1.0 [115/20] via 10.0.12.1, 00:03:46, Serial1/0
3.0.0.0/24 is subnetted, 1 subnets
i L2 3.3.3.0 [115/20] via 10.0.23.3, 00:03:30, Serial1/1
R2#
35. CONFIGURING isis
R3#sh ip route isis | beg Gate
Gateway of last resort is not set
1.0.0.0/24 is subnetted, 1 subnets
i L2 1.1.1.0 [115/30] via 10.0.23.2, 00:02:11, Serial1/1
2.0.0.0/24 is subnetted, 1 subnets
i L2 2.2.2.0 [115/20] via 10.0.23.2, 00:02:11, Serial1/1
10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
i L2 10.0.12.0/24 [115/20] via 10.0.23.2, 00:02:11, Serial1/1
R3#
37. Isis summarization
R3(config)#int range lo1-3
R3(config-if-range)#ip router isis
R2#sh ip route isis | beg Gate
Gateway of last resort is not set
1.0.0.0/24 is subnetted, 1 subnets
i L1 1.1.1.0 [115/20] via 10.0.12.1, 00:39:53, Serial1/0
3.0.0.0/24 is subnetted, 1 subnets
i L2 3.3.3.0 [115/20] via 10.0.23.3, 00:03:55, Serial1/1
i L2 192.168.1.0/24 [115/20] via 10.0.23.3, 00:00:11, Serial1/1
i L2 192.168.2.0/24 [115/20] via 10.0.23.3, 00:00:11, Serial1/1
i L2 192.168.3.0/24 [115/20] via 10.0.23.3, 00:00:11, Serial1/1
R2#
38. Isis summarization
R3(config)#router isis
R3(config-router)#summary-address 192.168.0.0 255.255.0.0
R2#sh ip route isis | beg Gate
Gateway of last resort is not set
1.0.0.0/24 is subnetted, 1 subnets
i L1 1.1.1.0 [115/20] via 10.0.12.1, 00:42:36, Serial1/0
3.0.0.0/24 is subnetted, 1 subnets
i L2 3.3.3.0 [115/20] via 10.0.23.3, 00:06:38, Serial1/1
i L2 192.168.0.0/16 [115/20] via 10.0.23.3, 00:00:37, Serial1/1
R2#
39. Isis default route
R2(config)#router isis
R2(config-router)#default-information originate
R3#sh ip route isis | beg Gate
Gateway of last resort is 10.0.23.2 to network 0.0.0.0
i*L2 0.0.0.0/0 [115/10] via 10.0.23.2, 00:04:39, Serial1/0
1.0.0.0/24 is subnetted, 1 subnets
i L2 1.1.1.0 [115/30] via 10.0.23.2, 00:04:39, Serial1/0
2.0.0.0/24 is subnetted, 1 subnets
i L2 2.2.2.0 [115/20] via 10.0.23.2, 00:04:39, Serial1/0
10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
i L2 10.0.12.0/24 [115/20] via 10.0.23.2, 00:04:39, Serial1/0
R3#
41. Isis static route
R3(config)#ip route 4.4.4.0 255.255.255.0 s1/1
R3(config)#router isis
R3(config-router)#redistribute static
R2#sh ip route isis | beg Gate
Gateway of last resort is not set
1.0.0.0/24 is subnetted, 1 subnets
i L1 1.1.1.0 [115/20] via 10.0.12.1, 00:17:44, Serial1/0
3.0.0.0/24 is subnetted, 1 subnets
i L2 3.3.3.0 [115/20] via 10.0.23.3, 00:16:10, Serial1/1
4.0.0.0/24 is subnetted, 1 subnets
i L2 4.4.4.0 [115/10] via 10.0.23.3, 00:02:07, Serial1/1
R2#
R1#ping 4.4.4.4 source 1.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 4.4.4.4, timeout is 2 seconds:
Packet sent with a source address of 1.1.1.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 60/95/120 ms
R1#
42. Isis static route
R2(config)#ip route 172.16.2.0 255.255.255.0 s2/1
R2(config)#router isis
R2(config-router)#redistribute static level-1-2
R1#sh ip route isis | beg Gate
Gateway of last resort is 10.0.12.2 to network 0.0.0.0
i*L1 0.0.0.0/0 [115/10] via 10.0.12.2, 00:20:21, Serial1/0
2.0.0.0/24 is subnetted, 1 subnets
i L1 2.2.2.0 [115/20] via 10.0.12.2, 00:20:40, Serial1/0
10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
i L1 10.0.23.0/24 [115/20] via 10.0.12.2, 00:20:40, Serial1/0
172.16.0.0/24 is subnetted, 1 subnets
i L1 172.16.2.0 [115/10] via 10.0.12.2, 00:00:50, Serial1/0
R1#
43. Isis static route
R3#sh ip route isis | beg Gate
Gateway of last resort is not set
1.0.0.0/24 is subnetted, 1 subnets
i L2 1.1.1.0 [115/30] via 10.0.23.2, 00:19:30, Serial1/1
2.0.0.0/24 is subnetted, 1 subnets
i L2 2.2.2.0 [115/20] via 10.0.23.2, 00:19:30, Serial1/1
10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
i L2 10.0.12.0/24 [115/20] via 10.0.23.2, 00:19:30, Serial1/1
172.16.0.0/24 is subnetted, 1 subnets
i L2 172.16.2.0 [115/10] via 10.0.23.2, 00:00:21, Serial1/1
R3#
45. Isis authentication
R2(config)#key chain CCNP
R2(config-keychain)#key 1
R2(config-keychain-key)#key-string cisco
R2(config)#int s1/0
R2(config-if)#isis authentication mode md5
R2(config-if)#isis authentication key-chain CCNP
R2#sh isis neighbors
System Id Type Interface IP Address State Holdtime Circuit Id
R1 L1 Se1/0 10.0.12.1 UP 29 02
R3 L2 Se1/1 10.0.23.3 UP 24 01
R2#
R2#sh isis neighbors
System Id Type Interface IP Address State Holdtime Circuit Id
R1 L1 Se1/0 10.0.12.1 INIT 23 00
R3 L2 Se1/1 10.0.23.3 UP 25 00
R2#
46. ISIS database
R1#sh isis database R2.00-00 detail
IS-IS Level-1 LSP R2.00-00
LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL
R2.00-00 0x00000017 0x88F2 748 1/0/0
Area Address: 49.0001
NLPID: 0xCC
Hostname: R2
IP Address: 2.2.2.2
Metric: 10 IP 2.2.2.0 255.255.255.0
Metric: 10 IP 10.0.12.0 255.255.255.0
Metric: 10 IP 10.0.23.0 255.255.255.0
Metric: 10 IS R1.00
Metric: 0 IP-External 172.16.2.0 255.255.255.0
R1#
47. ISIS database
R3#sh isis database R2.00-00 detail
IS-IS Level-2 LSP R2.00-00
LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL
R2.00-00 0x0000001B 0xE39C 1099 0/0/0
Area Address: 49.0001
NLPID: 0xCC
Hostname: R2
IP Address: 2.2.2.2
Metric: 10 IS R3.00
Metric: 0 IP 0.0.0.0 0.0.0.0
Metric: 20 IP 1.1.1.0 255.255.255.0
Metric: 10 IP 2.2.2.0 255.255.255.0
Metric: 10 IP 10.0.12.0 255.255.255.0
Metric: 10 IP 10.0.23.0 255.255.255.0
Metric: 0 IP-External 172.16.2.0 255.255.255.0
R3#
48. IS-IS Operation over Broadcast Links
48
On a LAN, one of the routers is elected the designated intermediate system (DIS) based on interface
priority. The default is 64. If all interface priorities are the same, the router with the highest subnetwork
point of attachment (SNPA) address is selected. The (Ethernet) MAC address serves as the SNPA
address for Ethernet LANs. The DIS serves the same purpose for IS-IS as the designated router does
for OSPF. On IS-IS there is no concept of a Backup DIS.
49. IS-IS Operation over Broadcast Links
49
R1
R3
R2
router isis
net 49.0001.1111.1111.1111.00
!
interface fastethernet 0/0
ip router isis
isis priority 90
!
interface loopback 0
ip router isis
router isis
net 49.0001.3333.3333.3333.00
!
interface fastethernet 0/0
ip router isis
!
interface loopback 0
ip router isis
router isis
net 49.0001.2222.2222.2222.00
!
interface fastethernet 0/0
ip router isis
!
interface loopback 0
ip router isis
50. IS-IS Operation over Broadcast Links
50
R1#show clns neighbors
System Id Interface SNPA State Holdtime Type Protocol
R2 Fa0/0 ca01.255c.0008 Up 29 L1L2 IS-IS
R3 Fa0/0 ca02.1980.0008 Up 29 L1L2 IS-IS
R1#
R2#show clns neighbors
System Id Interface SNPA State Holdtime Type Protocol
R1 Fa0/0 ca00.255c.0008 Up 8 L1L2 IS-IS
R3 Fa0/0 ca02.1980.0008 Up 28 L1L2 IS-IS
R2#
52. IS-IS Operation over Broadcast Links
52
R1#show clns interface fastethernet 0/0
FastEthernet0/0 is up, line protocol is up
Checksums enabled, MTU 1497, Encapsulation SAP
ERPDUs enabled, min. interval 10 msec.
CLNS fast switching enabled
CLNS SSE switching disabled
DEC compatibility mode OFF for this interface
Next ESH/ISH in 15 seconds
Routing Protocol: IS-IS
Circuit Type: level-1-2
Interface number 0x0, local circuit ID 0x1
Level-1 Metric: 10, Priority: 90, Circuit ID: R1.01
DR ID: R1.01
Level-1 IPv6 Metric: 10
Number of active level-1 adjacencies: 2
Level-2 Metric: 10, Priority: 90, Circuit ID: R1.01
DR ID: R1.01
Level-2 IPv6 Metric: 10
Number of active level-2 adjacencies: 2
Next IS-IS LAN Level-1 Hello in 2 seconds
Next IS-IS LAN Level-2 Hello in 63 milliseconds
R1#
55. ISIS METRIC
R1(config-if)#int s1/0
R1(config-if)#isis metric 15
R1#sh clns interface s1/0 | i Metric
Level-1 Metric: 15, Priority: 64, Circuit ID: R3.00
Level-1 IPv6 Metric: 10
Level-2 Metric: 15, Priority: 64, Circuit ID: R3.00
Level-2 IPv6 Metric: 10
R1#
R1#sh ip route | s 4.4.4.0
i L1 4.4.4.0 [115/30] via 12.0.0.2, 00:00:49, FastEthernet0/0
R1#
R1(config)#int fa0/0
R1(config-if)#sh
R1#sh ip route | s 4.4.4.0
i L1 4.4.4.0 [115/35] via 13.0.0.3, 00:00:11, Serial1/0
R1#
Editor's Notes
Hello packets, also denoted as IIH (IS-IS Hello), are used to perform the usual task of detecting neighboring routers (and also their loss), verifying bidirectional visibility,
establishing and maintaining adjacencies, and electing a Designated IS (DIS—similar to a Designated Router in OSPF). On broadcast-type interfaces, IS-IS routers use separate Hello packet types for L1 and L2 adjacencies. On point-to-point type interfaces, for efficiency reasons, a single L1L2 Hello, also called a point-to-point Hello, is used. Each router sends Hello packets every 10 seconds by default; the interval can be configured in the range of 1 to 65535 seconds using a per-interface isis hello-interval seconds [ level ] command for a particular routing level. Instead of defining a Hold timer directly, a Hello multiplier value is used to compute the Hold time as the Hello value multiplied by the Hello multiplier value. The default Hello multiplier value is 3, resulting in a Hold time of 30 seconds. The multiplier value can be changed by a per-interface isis hello-multiplier multiplier [ level ] command. As opposed to OSPF, timers do not need to match on neighboring routers.
On a DIS, the individual timers are always one-third of the configured timers (with default settings)—a DIS sends Hellos every 10/3=3.333 seconds, and the Hold interval is 30/3=10 seconds. With settings changed to a Hello time of 6 seconds and a Hello multiplier of 4, for example, a DIS would then send Hello packets every 6/3=2 seconds, and advertise a Hold interval of 24/3=8 seconds. This is done to detect a DIS or its outage more readily.