IS_IS - Intermediate System to Intermediate System

What is IS-IS?

IS-IS (Intermediate System to Intermediate System) is a link-state interior gateway protocol (IGP) used to move information efficiently within a computer network, a group of physically connected computers or devices.

What is the purpose of IS-IS?

IS-IS is used to determine the best path for data to travel across a network. It helps routers exchange information about network topology to build a complete map of the network.

What are the levels in IS-IS?

  • Level 1 (L1): Intra-area routing

  • Level 2 (L2): Inter-area routing

  • Level 1-2: Acts as a gateway between areas

What is an IS-IS area?

An IS-IS area is a logical grouping of routers. Routers within the same area share detailed topology information, while routers in different areas share summarized information.

What are the advantages of IS-IS?

  • Scales well in large networks

  • Flexible and extensible via TLVs

  • Stable and efficient convergence

  • Less CPU-intensive compared to OSPF in some cases

Which OSI Layer does IS-IS operate at?

  • IS-IS operates at the Network Layer (Layer 3) of the OSI model.

  • It manages routing and forwarding of data packets within and between areas.

  • It works closely with Layer 3 protocols to ensure efficient path selection.

  • In this section, you are going to learn

  • Terminology

  • Version Info

Version & RFC Details

IS-IS Version/Type

RFC Version

Year

Core Idea / Contribution

ISO 10589

Developed by ISO for CLNS (Connectionless Network Service) in OSI networks.

Integrated IS-IS

RFC 1195

1990

Extended IS-IS to support IP routing alongside CLNS. Widely used in IP networks.

IS-IS for IPv6

RFC 5308

2008

Added support for IPv6 routing using new TLVs.

IS-IS Extensions

RFC 5120

2008

Introduced Multi-Topology IS-IS (MT-IS-IS) for supporting multiple logical topologies.

RFC 5305

2008

Defined IS-IS TE extensions for advertising TE parameters like bandwidth.

RFC 5310

2009

Added cryptographic authentication for IS-IS PDUs to enhance security.

  • Setup

  • Setup

IS_IS Hello PDU (IIH) Packet

S.No

Protocol Packets

Description

Size(bytes)

1

IS-IS Hello PDU (IIH)

Establishes and maintains neighbor relationships.

~149 bytes

PDU Type

Identifies the type of PDU (e.g., IIH, LSP, CSNP, PSNP).

1

Version

IS-IS protocol version (usually 1).

1

ID Length

Length of the System ID (typically 6 bytes).

1

PDU Length

Total length of the PDU.

2

Source ID

System ID of the router sending the Hello.

6

Holding Time

Time (in seconds) the receiver should consider the sender reachable.

2

Checksum

Used for error detection.

2

Circuit Type

Indicates Level 1, Level 2, or both.

1

Priority

Used in DIS election on broadcast networks.

1

LAN ID

ID of the Designated Intermediate System (DIS).

7

TLVs (Type-Length-Value)

Carries additional information like area address, authentication, IP interface.

Variable

IS_IS Link State PDU (LSP) Packet

S.No

Protocol Packets

Description

Size(bytes)

2

Link State PDU (LSP)

Advertises routing and topology information.

Up to 1492 bytes

PDU Type

Identifies the packet as an LSP.

1

Version

IS-IS protocol version.

1

ID Length

Length of the System ID.

1

PDU Length

Total length of the LSP.

2

Remaining Lifetime

Time before the LSP expires.

2

LSP ID

Unique identifier for the LSP.

8

Sequence Number

Used to determine the most recent version of an LSP.

4

Checksum

Error detection for the LSP.

2

Type Block

Flags for LSP fragment, overload, etc.

1

TLVs

Carries routing info (IP prefixes, metrics, etc.).

Variable

IS_IS Complete Sequence Numbver PDU (CSNP) Packet

S.No

Protocol Packets

Description

Size(bytes)

3

Complete Sequence Number PDU (CSNP)

Lists all LSPs in the database to help synchronize neighbors.

~100300 bytes

PDU Type

Identifies the packet as a CSNP.

1

Version

IS-IS protocol version.

1

ID Length

Length of the System ID.

1

PDU Length

Total length of the CSNP.

2

Source ID

System ID of the router sending the CSNP.

6

Start LSP ID

First LSP ID in the list.

8

End LSP ID

Last LSP ID in the list.

8

LSP Entries

List of LSPs with ID, sequence number, checksum, and lifetime.

Variable

IS_IS Partial Sequence Number PDU (PSNP) Packet

S.No

Protocol Packets

Description

Size(bytes)

4

Partial Sequence Number PDU (PSNP)

Requests or acknowledges specific LSPs.

~100300 bytes

PDU Type

Identifies the packet as a PSNP.

1

Version

IS-IS protocol version.

1

ID Length

Length of the System ID.

1

PDU Length

Total length of the PSNP.

2

Source ID

System ID of the router sending the PSNP.

6

LSP Entries

List of specific LSPs being requested or acknowledged.

Variable

IS-IS - Use Cases

S.no

Use Case

Description

1

Service Provider Networks

IS-IS is widely used in large-scale ISP backbones due to its scalability and fast convergence.

2

Large Enterprise Networks

Enterprises with complex topologies use IS-IS for efficient internal routing.

3

MPLS Core Networks

IS-IS is often used as the IGP in MPLS networks to support label distribution protocols like LDP or RSVP.

4

IPv6 Deployment

IS-IS supports dual-stack (IPv4/IPv6) and is preferred for IPv6 due to its extensible TLV structure.

5

Traffic Engineering

IS-IS extensions (like IS-IS-TE) enable traffic engineering in conjunction with MPLS.

6

Fast Convergence

IS-IS provides rapid convergence, making it suitable for networks requiring high availability.

7

Segment Routing

IS-IS supports Segment Routing (SR) for simplified and scalable traffic engineering.

8

Data Center Interconnect (DCI)

IS-IS is used in spine-leaf architectures for scalable and efficient routing.

9

Security and Authentication

IS-IS supports authentication TLVs to secure routing updates.

10

Topology Abstraction

IS-IS can be used in multi-area designs to abstract topology and reduce routing overhead.

IS-IS - Basic Features

S.no

Features

Description

1

Link-State Protocol

IS-IS uses a link-state algorithm to build a complete map of the network topology.

2

Interior Gateway Protocol (IGP)

Designed for routing within a single autonomous system.

3

Supports Hierarchical Routing

Operates with Level 1 (intra-area) and Level 2 (inter-area) routing levels.

4

Protocol Extensibility via TLVs

Uses Type-Length-Value format for flexible and extensible information encoding.

5

IPv4 and IPv6 Support

Supports both IPv4 and IPv6 routing through protocol extensions.

6

Fast Convergence

Quickly adapts to network changes, minimizing downtime.

7

Scalability

Suitable for large-scale networks like ISPs and data centers.

8

Authentication Support

Supports authentication TLVs to secure routing updates.

9

Segment Routing Support

Can be extended to support Segment Routing for traffic engineering.

Link-State Protocol - Testcases

Link-State Protocol - Test Cases

#

Test Case

Description

Expected Result

1

Router boots up

IS-IS process starts

Sends Hello packets

2

Hello packet exchange

Between adjacent routers

Adjacency formed

3

No Hello received

Neighbor silent

Adjacency not formed

4

LSP generation

Topology change detected

New LSP generated

5

LSP flooding

LSP sent to all neighbors

Topology synchronized

6

LSP with valid checksum

Integrity verified

LSP accepted

7

LSP with invalid checksum

Corrupted LSP

LSP discarded

8

LSP with newer sequence number

More recent info

LSP replaces old one

9

LSP with older sequence number

Outdated info

LSP ignored

10

LSP with same sequence number

Duplicate

LSP ignored

11

LSP with max age

Expired LSP

Removed from database

12

LSP with TTL = 1

TTL expired

LSP dropped

13

LSP with TTL = 255

Valid TTL

LSP accepted

14

SPF calculation triggered

Topology change

New shortest paths computed

15

SPF calculation with stable topology

No changes

No recalculation

16

SPF with loop-free topology

Valid graph

Loop-free paths computed

17

SPF with looped topology

Misconfigured links

Loop avoided

18

LSP with valid neighbor ID

Known router

LSP accepted

19

LSP with unknown neighbor ID

Unknown router

LSP accepted and added

20

LSP with invalid neighbor ID

Malformed ID

LSP discarded

21

LSP with valid metric

Reachability info

Route added

22

LSP with invalid metric

Out-of-range value

Route ignored

23

LSP with multiple metrics

Multi-topology support

All metrics processed

24

LSP with overloaded bit set

Router overloaded

Routes avoided

25

LSP with attached bit set

Area border router

Route preferred

26

LSP with pseudonode ID

LAN adjacency

LSP accepted

27

LSP with invalid pseudonode ID

Malformed

LSP discarded

28

LSP with authentication

Valid key

LSP accepted

29

LSP with invalid authentication

Wrong key

LSP rejected

30

LSP with max size

Within MTU

LSP accepted

31

LSP exceeding size limit

Too large

LSP fragmented or dropped

32

LSP with valid TLVs

Proper structure

LSP processed

33

LSP with unknown TLVs

Optional fields

Ignored or logged

34

LSP with corrupted TLVs

Malformed

LSP discarded

35

LSP refresh timer expires

Periodic refresh

New LSP generated

36

LSP database synchronization

Between routers

Identical LSDBs

37

LSP database mismatch

Inconsistent LSDBs

Resync triggered

38

LSP with route to loopback

127.0.0.0

Route accepted

39

LSP with route to multicast

224.0.0.0

Route ignored

40

LSP with route to broadcast

255.255.255.255

Route ignored

41

LSP with default route

0.0.0.0

Route accepted

42

LSP with private IP

10.0.0.0

Route accepted

43

LSP with public IP

8.8.8.0

Route accepted

44

LSP with duplicate routes

Same prefix repeated

Best metric used

45

LSP with inconsistent metrics

Conflicting paths

SPF chooses best

46

LSP with valid area ID

Matches local area

LSP accepted

47

LSP with mismatched area ID

Different area

LSP ignored (Level-1)

48

LSP with Level-1 info

Intra-area routing

Route accepted

49

LSP with Level-2 info

Inter-area routing

Route accepted

50

LSP with both Level-1 and Level-2

Dual-level router

Routes accepted for both levels

Interior Gateway Protocol (IGP) - Testcases

Interior Gateway Protocol (IGP) - Test Cases

#

Test Case

Description

Expected Result

1

IS-IS enabled on router

IGP process started

IS-IS begins sending Hello packets

2

IS-IS disabled on router

IGP process stopped

No IS-IS packets sent

3

IS-IS Level-1 configuration

Intra-area routing

Routes exchanged within area

4

IS-IS Level-2 configuration

Inter-area routing

Routes exchanged between areas

5

IS-IS Level-1-2 configuration

Dual-level router

Routes exchanged at both levels

6

IS-IS adjacency formed

Between two routers

IGP neighbor established

7

IS-IS adjacency fails

Mismatched area ID

No neighbor formed

8

IS-IS Hello interval = 10s

Standard interval

Adjacency maintained

9

IS-IS Hello interval mismatch

Different timers

Adjacency may fail

10

IS-IS LSP generation

Topology change

New LSP generated

11

IS-IS LSP flooding

LSP sent to all neighbors

Topology synchronized

12

IS-IS SPF calculation

Triggered by LSP

Shortest paths computed

13

IS-IS SPF not triggered

No topology change

No recalculation

14

IS-IS with valid metric

Metric = 10

Route accepted

15

IS-IS with invalid metric

Metric > max

Route ignored

16

IS-IS with overload bit

Router overloaded

Routes avoided

17

IS-IS with attached bit

ABR router

Preferred for inter-area routing

18

IS-IS with authentication

Valid key

Adjacency formed

19

IS-IS with invalid authentication

Wrong key

Adjacency rejected

20

IS-IS with MTU mismatch

Interface MTU differs

Adjacency may fail

21

IS-IS with matching MTU

Interface MTU same

Adjacency succeeds

22

IS-IS with valid area ID

Same area

Level-1 adjacency formed

23

IS-IS with different area ID

Different areas

Level-2 adjacency formed

24

IS-IS with loopback interface

Loopback advertised

Route accepted

25

IS-IS with physical interface

Interface up

Route advertised

26

IS-IS with passive interface

Interface passive

No Hello sent

27

IS-IS with point-to-point link

P2P adjacency

Adjacency formed

28

IS-IS with broadcast link

LAN adjacency

Pseudonode created

29

IS-IS with invalid system ID

Wrong format

Adjacency fails

30

IS-IS with valid system ID

Correct format

Adjacency succeeds

31

IS-IS with route to private IP

10.0.0.0/8

Route accepted

32

IS-IS with route to public IP

8.8.8.0/24

Route accepted

33

IS-IS with route to loopback

127.0.0.0/8

Route accepted

34

IS-IS with route to multicast

224.0.0.0/4

Route ignored

35

IS-IS with route to broadcast

255.255.255.255

Route ignored

36

IS-IS with default route

0.0.0.0

Route accepted

37

IS-IS with duplicate routes

Same prefix repeated

Best metric used

38

IS-IS with inconsistent metrics

Conflicting paths

SPF chooses best

39

IS-IS with route redistribution

From another IGP

External route tagged

40

IS-IS without redistribution

No external routes

Only IS-IS routes present

41

IS-IS with route summarization

Manual summary

Summary route advertised

42

IS-IS without summarization

Specific routes

All prefixes advertised

43

IS-IS with max LSP size

Within limit

LSP accepted

44

IS-IS with oversized LSP

Exceeds limit

LSP fragmented or dropped

45

IS-IS with valid TLVs

Proper structure

LSP processed

46

IS-IS with unknown TLVs

Optional fields

Ignored or logged

47

IS-IS with corrupted TLVs

Malformed

LSP discarded

48

IS-IS with stable topology

No changes

Routing table stable

49

IS-IS with frequent changes

Topology flapping

SPF triggered often

50

IS-IS with full convergence

All routers synchronized

Consistent routing tables

Supports Hierarchical Routing - Testcases

Supports Hierarchical Routing - Test Cases

#

Test Case

Description

Expected Result

1

Configure Level-1 router

Intra-area routing only

Routes exchanged within area

2

Configure Level-2 router

Inter-area routing only

Routes exchanged between areas

3

Configure Level-1-2 router

Dual-level router

Routes exchanged at both levels

4

Level-1 router in same area

Adjacency with another Level-1

Adjacency formed

5

Level-1 router in different area

Area mismatch

No adjacency formed

6

Level-2 router with any area

Area-independent

Adjacency formed

7

Level-1-2 router with Level-1

Same area

Level-1 adjacency formed

8

Level-1-2 router with Level-2

Any area

Level-2 adjacency formed

9

Level-1-2 router with Level-1-2

Same area

Both adjacencies formed

10

Level-1 router receives Level-2 LSP

Inter-area info

LSP ignored

11

Level-2 router receives Level-1 LSP

Intra-area info

LSP ignored

12

Level-1-2 router receives both LSPs

Dual-level info

Both LSPs processed

13

Level-1 SPF calculation

Intra-area topology

Shortest paths computed

14

Level-2 SPF calculation

Inter-area topology

Shortest paths computed

15

Level-1-2 SPF calculation

Full topology

Separate SPF for each level

16

Level-1 router with default route

0.0.0.0 from Level-2

Route accepted

17

Level-2 router with default route

0.0.0.0 from external

Route accepted

18

Level-1 router with external route

Redistributed route

Route ignored

19

Level-2 router with external route

Redistributed route

Route accepted

20

Level-1-2 router redistributes route

Between levels

Route tagged and forwarded

21

Level-1 router with overload bit

Overloaded

Not used in SPF

22

Level-2 router with overload bit

Overloaded

Not used in SPF

23

Level-1-2 router with overload bit

Overloaded

Avoided in both levels

24

Level-1 router with attached bit

Not set

Not preferred for default

25

Level-2 router with attached bit

Not applicable

Ignored

26

Level-1-2 router with attached bit

Set

Preferred for default route

27

Level-1 router with area mismatch

Different area ID

Adjacency fails

28

Level-2 router with area mismatch

Area-independent

Adjacency succeeds

29

Level-1-2 router with area mismatch

Forms Level-2 adjacency

Level-1 fails, Level-2 succeeds

30

Level-1 router with valid system ID

Correct format

Adjacency formed

31

Level-2 router with invalid system ID

Wrong format

Adjacency fails

32

Level-1-2 router with valid system ID

Correct format

Adjacency formed

33

Level-1 router with passive interface

No Hello sent

No adjacency formed

34

Level-2 router with passive interface

No Hello sent

No adjacency formed

35

Level-1-2 router with passive interface

No Hello sent

No adjacency formed

36

Level-1 router with valid metric

Metric = 10

Route accepted

37

Level-2 router with invalid metric

Metric > max

Route ignored

38

Level-1-2 router with multiple metrics

Multi-topology

All metrics processed

39

Level-1 router with route to loopback

127.0.0.0

Route accepted

40

Level-2 router with route to multicast

224.0.0.0

Route ignored

41

Level-1-2 router with route to default

0.0.0.0

Route accepted

42

Level-1 router with duplicate routes

Same prefix

Best metric used

43

Level-2 router with inconsistent metrics

Conflicting paths

SPF chooses best

44

Level-1-2 router with stable topology

No changes

Routing table stable

45

Level-1 router with frequent changes

Topology flapping

SPF triggered often

46

Level-2 router with LSP refresh

Periodic update

LSP regenerated

47

Level-1-2 router with LSP aging

Max age reached

LSP removed

48

Level-1 router with route summarization

Manual summary

Summary route advertised

49

Level-2 router with route summarization

Manual summary

Summary route advertised

50

Level-1-2 router with full convergence

All routers synchronized

Consistent routing tables

Protocol Extensibility via TLVs - Testcases

Protocol Extensibility via TLVs - Test Cases

#

Test Case

Description

Expected Result

1

Standard TLV format

Type, Length, Value fields present

TLV accepted

2

Missing Type field

TLV malformed

TLV rejected

3

Missing Length field

TLV malformed

TLV rejected

4

Missing Value field

TLV incomplete

TLV ignored

5

Valid TLV with correct length

Length matches value

TLV accepted

6

TLV with incorrect length

Length mismatch

TLV rejected

7

TLV with unknown type

Not defined in standard

TLV ignored (optional)

8

TLV with known type

Defined in IS-IS spec

TLV processed

9

TLV with extended IP reachability

IPv4 prefix info

Route added

10

TLV with IPv6 reachability

IPv6 prefix info

Route added

11

TLV with hostname

System name advertised

Name resolved

12

TLV with area address

Area ID info

Area validated

13

TLV with authentication

Auth key included

Auth validated

14

TLV with invalid authentication

Wrong key

TLV rejected

15

TLV with multi-topology info

MT-ID present

Topology-specific route added

16

TLV with traffic engineering info

TE parameters

TE database updated

17

TLV with IS-IS router capabilities

Capabilities advertised

Features negotiated

18

TLV with unknown sub-TLV

Nested unknown TLV

Ignored

19

TLV with valid sub-TLV

Nested TLV recognized

Sub-TLV processed

20

TLV with padding

Extra bytes added

TLV accepted

21

TLV with zero length

Empty value

TLV ignored

22

TLV with max length

Boundary test

TLV accepted

23

TLV exceeding max length

Oversized TLV

TLV rejected

24

TLV with valid checksum

Packet integrity verified

TLV processed

25

TLV with invalid checksum

Corrupted packet

TLV discarded

26

TLV with valid MTU

Within interface MTU

TLV accepted

27

TLV exceeding MTU

Too large

Packet dropped

28

TLV with valid metric

Reachability info

Route accepted

29

TLV with invalid metric

Out-of-range

Route ignored

30

TLV with loopback address

127.0.0.1

Route accepted

31

TLV with multicast address

224.0.0.0

Route ignored

32

TLV with broadcast address

255.255.255.255

Route ignored

33

TLV with default route

0.0.0.0

Route accepted

34

TLV with private IP

10.0.0.0

Route accepted

35

TLV with public IP

8.8.8.0

Route accepted

36

TLV with duplicate prefix

Same prefix repeated

Best metric used

37

TLV with inconsistent metrics

Conflicting info

SPF chooses best

38

TLV with valid system ID

Correct format

TLV accepted

39

TLV with invalid system ID

Malformed

TLV rejected

40

TLV with valid area ID

Matches local area

TLV accepted

41

TLV with mismatched area ID

Different area

TLV ignored (Level-1)

42

TLV with overload bit

Router overloaded

Route avoided

43

TLV with attached bit

ABR router

Route preferred

44

TLV with pseudonode ID

LAN adjacency

TLV accepted

45

TLV with invalid pseudonode ID

Malformed

TLV rejected

46

TLV with route tag

Policy tag present

Tag processed

47

TLV with SRv6 info

Segment routing TLV

SR database updated

48

TLV with BIER info

Bit Indexed Explicit Replication

BIER topology updated

49

TLV with unknown future extension

Not yet defined

TLV ignored safely

50

TLV with vendor-specific type

Proprietary TLV

Processed if supported, ignored otherwise

IPv4 and IPv6 Support - Testcases

IPv4 and IPv6 Support - Test Cases

#

Test Case

Description

Expected Result

1

Enable IS-IS with IPv4

Configure IS-IS with IPv4 address family

IS-IS process starts and IPv4 routes are advertised

2

Enable IS-IS with IPv6

Configure IS-IS with IPv6 address family

IS-IS process starts and IPv6 routes are advertised

3

Dual-stack IS-IS

Configure IS-IS with both IPv4 and IPv6

Both IPv4 and IPv6 routes are advertised

4

IPv4 adjacency formation

Form IS-IS adjacency using IPv4

Adjacency is established successfully

5

IPv6 adjacency formation

Form IS-IS adjacency using IPv6

Adjacency is established successfully

6

Verify LSP for IPv4

Check LSP contains IPv4 prefixes

IPv4 prefixes are present in LSP

7

Verify LSP for IPv6

Check LSP contains IPv6 prefixes

IPv6 prefixes are present in LSP

8

IPv4 route propagation

Verify IPv4 route propagation across IS-IS domain

IPv4 routes are visible in RIB

9

IPv6 route propagation

Verify IPv6 route propagation across IS-IS domain

IPv6 routes are visible in RIB

10

IPv4 route redistribution

Redistribute static IPv4 routes into IS-IS

Routes appear in IS-IS database

11

IPv6 route redistribution

Redistribute static IPv6 routes into IS-IS

Routes appear in IS-IS database

12

IPv4 metric configuration

Configure metric for IPv4 routes

Metric is reflected in LSP

13

IPv6 metric configuration

Configure metric for IPv6 routes

Metric is reflected in LSP

14

IPv4 route summarization

Summarize IPv4 routes in IS-IS

Summary route appears in LSP

15

IPv6 route summarization

Summarize IPv6 routes in IS-IS

Summary route appears in LSP

16

IPv4 route filtering

Apply route-map to filter IPv4 routes

Filtered routes are not advertised

17

IPv6 route filtering

Apply route-map to filter IPv6 routes

Filtered routes are not advertised

18

IPv4 authentication

Configure authentication for IPv4 IS-IS adjacency

Adjacency forms only with correct key

19

IPv6 authentication

Configure authentication for IPv6 IS-IS adjacency

Adjacency forms only with correct key

20

IPv4 MTU mismatch

Create MTU mismatch for IPv4 IS-IS

Adjacency fails to form

21

IPv6 MTU mismatch

Create MTU mismatch for IPv6 IS-IS

Adjacency fails to form

22

IPv4 passive interface

Set interface as passive for IPv4

No IS-IS hello packets sent

23

IPv6 passive interface

Set interface as passive for IPv6

No IS-IS hello packets sent

24

IPv4 hello interval

Modify hello interval for IPv4

Interval change reflected in hello packets

25

IPv6 hello interval

Modify hello interval for IPv6

Interval change reflected in hello packets

26

IPv4 hold timer

Modify hold timer for IPv4

Timer change reflected in hello packets

27

IPv6 hold timer

Modify hold timer for IPv6

Timer change reflected in hello packets

28

IPv4 adjacency flapping

Simulate link flap for IPv4

Adjacency goes down and comes up

29

IPv6 adjacency flapping

Simulate link flap for IPv6

Adjacency goes down and comes up

30

IPv4 route convergence

Measure convergence time for IPv4

Convergence within expected time

31

IPv6 route convergence

Measure convergence time for IPv6

Convergence within expected time

32

IPv4 route loop prevention

Check for loop-free IPv4 routing

No loops observed

33

IPv6 route loop prevention

Check for loop-free IPv6 routing

No loops observed

34

IPv4 route preference

Set preference for IPv4 IS-IS routes

Routes preferred over others

35

IPv6 route preference

Set preference for IPv6 IS-IS routes

Routes preferred over others

36

IPv4 route tag

Tag IPv4 routes in IS-IS

Tag appears in routing table

37

IPv6 route tag

Tag IPv6 routes in IS-IS

Tag appears in routing table

38

IPv4 route leak between levels

Leak IPv4 route from L1 to L2

Route appears in L2 database

39

IPv6 route leak between levels

Leak IPv6 route from L1 to L2

Route appears in L2 database

40

IPv4 route aging

Verify aging of IPv4 LSPs

LSPs age out correctly

41

IPv6 route aging

Verify aging of IPv6 LSPs

LSPs age out correctly

42

IPv4 route refresh

Trigger SPF recalculation for IPv4

SPF recalculates and updates RIB

43

IPv6 route refresh

Trigger SPF recalculation for IPv6

SPF recalculates and updates RIB

44

IPv4 route over point-to-point

Test IPv4 IS-IS over P2P link

Adjacency and routing work

45

IPv6 route over point-to-point

Test IPv6 IS-IS over P2P link

Adjacency and routing work

46

IPv4 route over broadcast

Test IPv4 IS-IS over broadcast link

DR/BDR elected, routes exchanged

47

IPv6 route over broadcast

Test IPv6 IS-IS over broadcast link

DR/BDR elected, routes exchanged

48

IPv4 route over loopback

Advertise IPv4 loopback via IS-IS

Loopback appears in IS-IS database

49

IPv6 route over loopback

Advertise IPv6 loopback via IS-IS

Loopback appears in IS-IS database

50

IPv4/IPv6 route blackhole

Configure blackhole route in IS-IS

Traffic to blackhole is dropped

Fast Convergence - Testcases

Fast Convergence - Test Cases

#

Test Case

Description

Expected Result

1

Enable Fast Convergence

Enable fast convergence features in IS-IS

Fast convergence settings applied

2

Verify SPF timer tuning

Tune SPF timers for faster recalculation

SPF recalculates within reduced time

3

Verify LSP generation timer

Reduce LSP generation interval

LSPs generated quickly after change

4

Verify LSP transmission timer

Reduce LSP transmission delay

LSPs transmitted promptly

5

Verify LSP pacing

Enable LSP pacing to avoid flooding

Controlled LSP transmission observed

6

Trigger link down event

Simulate link failure

SPF recalculates and routes converge

7

Trigger link up event

Simulate link restoration

SPF recalculates and routes converge

8

Verify incremental SPF

Enable incremental SPF

Only affected parts of topology recalculated

9

Verify full SPF fallback

Trigger full SPF when incremental fails

Full SPF recalculates correctly

10

Verify SPF backoff

Configure SPF backoff timers

SPF runs with increasing delay on frequent changes

11

Verify SPF hold down

Configure SPF hold down timers

SPF suppressed during hold down

12

Verify LSP refresh interval

Tune LSP refresh interval

LSPs refreshed at configured interval

13

Verify LSP lifetime

Configure LSP lifetime

LSPs expire and regenerate correctly

14

Verify route convergence time

Measure convergence after topology change

Convergence within expected time

15

Verify route flap dampening

Enable dampening for flapping routes

Flapping routes suppressed

16

Verify adjacency hold time

Reduce hold time for faster adjacency teardown

Adjacency removed quickly on failure

17

Verify hello interval tuning

Reduce hello interval

Faster detection of link failure

18

Verify hold timer tuning

Reduce hold timer

Faster adjacency teardown

19

Verify fast adjacency formation

Tune timers for quick adjacency formation

Adjacency forms rapidly

20

Verify SPF optimization under load

Simulate high CPU load

SPF optimization maintains performance

21

Verify LSP prioritization

Prioritize critical LSPs

Critical LSPs processed first

22

Verify overload bit handling

Set overload bit on router

Router excluded from SPF calculation

23

Verify overload bit recovery

Clear overload bit

Router re-included in SPF

24

Verify LSP checksum error handling

Inject checksum error

LSP discarded and regenerated

25

Verify LSP sequence number wrap

Simulate sequence number wrap

LSPs handled correctly

26

Verify LSP flooding control

Enable flooding control

LSPs flooded efficiently

27

Verify SPF recalculation on metric change

Change interface metric

SPF recalculates and updates RIB

28

Verify SPF recalculation on route addition

Add new route

SPF recalculates and route appears

29

Verify SPF recalculation on route deletion

Remove route

SPF recalculates and route removed

30

Verify SPF recalculation on area change

Move router to different area

SPF recalculates accordingly

31

Verify SPF recalculation on level change

Change IS-IS level

SPF recalculates and updates topology

32

Verify SPF recalculation on prefix change

Modify advertised prefix

SPF recalculates and updates RIB

33

Verify SPF recalculation on interface flap

Flap interface

SPF recalculates and routes converge

34

Verify SPF recalculation on router reboot

Reboot router

SPF recalculates and routes converge

35

Verify SPF recalculation on LSP corruption

Corrupt LSP

SPF recalculates after LSP regeneration

36

Verify SPF recalculation on LSP loss

Drop LSP

SPF recalculates after LSP retransmission

37

Verify SPF recalculation on LSP delay

Delay LSP transmission

SPF recalculates after delay

38

Verify SPF recalculation on LSP duplication

Duplicate LSP

SPF handles duplication correctly

39

Verify SPF recalculation on LSP flooding storm

Simulate LSP storm

SPF handles flooding efficiently

40

Verify SPF recalculation on topology loop

Create loop in topology

SPF recalculates and loop resolved

41

Verify SPF recalculation on route redistribution

Redistribute route

SPF recalculates and route appears

42

Verify SPF recalculation on route filtering

Filter route

SPF recalculates and route removed

43

Verify SPF recalculation on route summarization

Summarize route

SPF recalculates and summary appears

44

Verify SPF recalculation on route tag change

Change route tag

SPF recalculates and tag updated

45

Verify SPF recalculation on route preference change

Change route preference

SPF recalculates and preference applied

46

Verify SPF recalculation on IS type change

Change IS type

SPF recalculates and topology updated

47

Verify SPF recalculation on system ID change

Change system ID

SPF recalculates and adjacency reformed

48

Verify SPF recalculation on area address change

Change area address

SPF recalculates and adjacency reformed

49

Verify SPF recalculation on authentication failure

Fail authentication

Adjacency fails and SPF recalculates

50

Verify SPF recalculation on authentication recovery

Restore authentication

Adjacency forms and SPF recalculates

Scalability - Testcases

Scalability - Test Cases

#

Test Case

Description

Expected Result

1

Scale to 100 routers

Deploy IS-IS in a 100-router topology

IS-IS converges and routes are stable

2

Scale to 500 routers

Deploy IS-IS in a 500-router topology

IS-IS maintains stability and convergence

3

Scale to 1000 routers

Deploy IS-IS in a 1000-router topology

IS-IS remains operational with acceptable convergence time

4

Scale to 10,000 prefixes

Advertise 10,000 routes

All routes are propagated and reachable

5

Scale to 50,000 prefixes

Advertise 50,000 routes

IS-IS handles route load without crashing

6

LSP size limit test

Test LSP fragmentation with large routing tables

LSPs are fragmented and reassembled correctly

7

LSP flooding under scale

Observe LSP flooding in large topology

Flooding is efficient and controlled

8

SPF performance under scale

Measure SPF time with 1000 routers

SPF completes within acceptable time

9

Incremental SPF under scale

Enable incremental SPF in large topology

Only affected routes are recalculated

10

LSP regeneration under scale

Trigger LSP regeneration in large network

LSPs regenerate without overload

11

Adjacency formation at scale

Form adjacencies in large mesh

All adjacencies form successfully

12

Adjacency teardown at scale

Simulate mass link failure

Adjacencies tear down and recover correctly

13

Route convergence at scale

Measure convergence time after failure

Convergence within acceptable limits

14

CPU usage under scale

Monitor CPU usage with 1000 routers

CPU remains within operational range

15

Memory usage under scale

Monitor memory usage with 50,000 routes

Memory usage is stable and efficient

16

LSP database size

Measure LSP DB size with 1000 routers

DB size is within expected bounds

17

Route table size

Measure RIB size with 50,000 routes

RIB handles all entries correctly

18

FIB programming time

Measure time to program FIB

FIB updates within acceptable time

19

Route flapping under scale

Simulate route flaps

IS-IS handles flaps without instability

20

LSP aging under scale

Verify LSP aging and refresh

LSPs age out and refresh correctly

21

LSP checksum validation

Validate LSP checksums at scale

All LSPs pass checksum validation

22

LSP sequence number handling

Test sequence number wrap

IS-IS handles wrap correctly

23

Route summarization at scale

Apply summarization

Summary routes reduce LSP size

24

Route filtering at scale

Apply filters to large route set

Filtered routes are excluded

25

Authentication at scale

Enable authentication on all routers

All adjacencies form with valid keys

26

Multi-area scalability

Deploy multiple IS-IS areas

Area boundaries respected and routes exchanged

27

Multi-level scalability

Use Level 1 and Level 2 routers

Hierarchical routing works correctly

28

Route redistribution at scale

Redistribute BGP/OSPF into IS-IS

Routes appear in IS-IS DB

29

Route preference at scale

Set route preferences

Preferred routes are selected

30

Overload bit handling

Set overload bit on multiple routers

Traffic avoids overloaded routers

31

SPF throttling under load

Enable SPF throttling

SPF runs are spaced appropriately

32

LSP pacing under load

Enable LSP pacing

LSPs are sent in controlled bursts

33

LSP flooding optimization

Enable LSP flood reduction

Redundant flooding is minimized

34

Hello packet scaling

Monitor hello packet rate

Hello packets scale with interfaces

35

Interface scaling

Add 100+ interfaces per router

IS-IS handles all interfaces

36

Passive interface scaling

Set many interfaces to passive

No hello packets sent on passive interfaces

37

Loopback scaling

Advertise 1000 loopbacks

All loopbacks appear in IS-IS DB

38

Prefix tag scaling

Tag thousands of prefixes

Tags are preserved and visible

39

Route policy scaling

Apply complex route-maps

Policies applied correctly

40

LSP refresh storm

Simulate mass LSP refresh

IS-IS handles without instability

41

Adjacency flapping storm

Simulate mass adjacency flaps

IS-IS recovers and converges

42

Topology change storm

Simulate frequent topology changes

SPF and LSPs remain stable

43

Graceful restart at scale

Enable GR on all routers

GR completes successfully

44

BFD integration at scale

Use BFD for fast failure detection

BFD triggers IS-IS convergence

45

Logging and telemetry

Enable logging on all routers

Logs are generated without overload

46

SNMP monitoring at scale

Monitor IS-IS via SNMP

SNMP data is accurate and timely

47

IS-IS MIB scaling

Query IS-IS MIBs under load

MIBs respond correctly

48

Route dampening at scale

Enable dampening for flapping routes

Flaps are suppressed

49

IS-IS over MPLS core

Run IS-IS over MPLS

IS-IS adjacencies form and routes propagate

50

IS-IS over VPNs

Run IS-IS over VPN tunnels

IS-IS operates correctly over tunnels

Authentication Support - Testcases

Authentication Support - Test Cases

#

Test Case

Description

Expected Result

1

Enable IS-IS authentication

Enable authentication globally

Authentication is enabled successfully

2

Configure simple password

Use simple password authentication

Adjacency forms with matching passwords

3

Configure MD5 authentication

Use MD5 authentication on interface

Adjacency forms with correct MD5 key

4

Configure HMAC-SHA authentication

Use HMAC-SHA authentication

Adjacency forms with correct HMAC key

5

Mismatched simple passwords

Use different simple passwords

Adjacency fails to form

6

Mismatched MD5 keys

Use different MD5 keys

Adjacency fails to form

7

Mismatched HMAC keys

Use different HMAC keys

Adjacency fails to form

8

Keychain configuration

Use keychain for authentication

Adjacency forms using keychain

9

Key rollover with keychain

Change key in keychain

Adjacency remains stable during rollover

10

Expired key in keychain

Use expired key

Adjacency fails to form

11

Future key in keychain

Use key not yet valid

Adjacency fails to form

12

Key lifetime validation

Set key lifetime

Key is used only within valid time

13

Authentication on point-to-point

Enable auth on P2P link

Adjacency forms with valid key

14

Authentication on broadcast

Enable auth on broadcast link

Adjacency forms with valid key

15

Authentication on loopback

Apply auth on loopback

No effect, loopback doesnt form adjacency

16

Authentication on passive interface

Enable auth on passive interface

No hello packets sent, auth not used

17

Authentication with multiple keys

Configure multiple keys

Highest valid key is used

18

Authentication with wrong key ID

Use incorrect key ID

Adjacency fails to form

19

Authentication with correct key ID

Use correct key ID

Adjacency forms successfully

20

Authentication with key ID mismatch

Mismatched key IDs

Adjacency fails to form

21

Authentication with key ID match

Matching key IDs

Adjacency forms successfully

22

Authentication with key string mismatch

Mismatched key strings

Adjacency fails to form

23

Authentication with key string match

Matching key strings

Adjacency forms successfully

24

Authentication with null key

Use empty key

Adjacency fails to form

25

Authentication with long key

Use long key string

Adjacency forms if key matches

26

Authentication with special characters

Use special characters in key

Adjacency forms if key matches

27

Authentication with Unicode key

Use Unicode characters in key

Adjacency forms if supported

28

Authentication with invalid characters

Use invalid characters

Configuration fails or ignored

29

Authentication logging

Enable logging for auth events

Logs show success/failure of auth

30

Authentication debug

Enable debug for IS-IS auth

Debug output shows key usage

31

Authentication failure alert

Monitor for auth failures

Alerts generated on failure

32

Authentication success alert

Monitor for auth success

Logs confirm successful auth

33

Authentication with L1 only

Enable auth for Level 1 only

L1 adjacencies form, L2 fail

34

Authentication with L2 only

Enable auth for Level 2 only

L2 adjacencies form, L1 fail

35

Authentication with both levels

Enable auth for both levels

All adjacencies form with valid keys

36

Authentication with different keys per level

Use different keys for L1 and L2

Adjacencies form if keys match per level

37

Authentication with mismatched levels

One side L1, other L2

Adjacency fails to form

38

Authentication with area mismatch

Different area IDs

Adjacency fails regardless of auth

39

Authentication with system ID mismatch

Different system IDs

Adjacency fails regardless of auth

40

Authentication with hello padding

Enable hello padding

Auth still functions correctly

41

Authentication with hello interval change

Change hello interval

Auth remains functional

42

Authentication with hold timer change

Change hold timer

Auth remains functional

43

Authentication with SPF recalculation

Trigger SPF

Auth does not interfere with SPF

44

Authentication with LSP flooding

Flood LSPs

Authenticated LSPs accepted

45

Authentication with corrupted LSP

Corrupt LSP checksum

LSP rejected

46

Authentication with replayed LSP

Replay old LSP

LSP rejected due to sequence mismatch

47

Authentication with LSP sequence wrap

Wrap LSP sequence number

Auth still validates LSPs

48

Authentication with LSP refresh

Refresh LSPs

Auth remains valid

49

Authentication with route redistribution

Redistribute routes

Auth does not affect redistribution

50

Authentication with route summarization

Summarize routes

Auth does not affect summarization

Segment Routing Support - Testcases

Segment Routing Support - Test Cases

#

Test Case

Description

Expected Result

1

Enable Segment Routing globally

Enable SR on the router

SR is enabled successfully

2

Enable SR under IS-IS

Enable SR in IS-IS process

IS-IS advertises SR capabilities

3

Configure SRGB

Set Segment Routing Global Block

SRGB is advertised in IS-IS TLVs

4

Configure Node SID

Assign Node SID to loopback

Node SID is advertised in IS-IS

5

Configure Prefix SID

Assign SID to a prefix

Prefix SID appears in IS-IS LSP

6

Configure Adj-SID

Assign SID to an interface

Adj-SID is advertised in IS-IS

7

Verify Node SID in LSP

Check LSP for Node SID

Node SID is present and correct

8

Verify Prefix SID in LSP

Check LSP for Prefix SID

Prefix SID is present and correct

9

Verify Adj-SID in LSP

Check LSP for Adj-SID

Adj-SID is present and correct

10

Verify SRGB in LSP

Check LSP for SRGB TLV

SRGB TLV is present and accurate

11

Verify SR capability flag

Check SR capability flag in IS-IS

Flag is set correctly

12

Verify MPLS label binding

Check label for Node SID

Label is bound to correct prefix

13

Verify label stack for SR path

Build SR path using SIDs

Label stack is correct

14

Verify ECMP with SR

Enable ECMP for SR paths

Traffic is load-balanced

15

Verify SR path installation

Install SR path in FIB

Path is installed with correct labels

16

Verify SR path deletion

Remove SR path

Labels are withdrawn from FIB

17

Verify SR path update

Change SID or metric

Path updates in FIB

18

Verify SR with L1 routers

Enable SR in Level 1

SR TLVs appear in L1 LSPs

19

Verify SR with L2 routers

Enable SR in Level 2

SR TLVs appear in L2 LSPs

20

Verify SR with L1-L2 router

Enable SR on L1-L2 router

SR TLVs appear in both levels

21

Verify SR with multi-area

Use SR across IS-IS areas

SIDs propagate correctly

22

Verify SR with multi-topology

Enable SR in multi-topology IS-IS

SIDs are advertised per topology

23

Verify SR with IPv6

Enable SRv6 support

SRv6 SIDs are advertised

24

Verify SR with IPv4

Enable SR-MPLS for IPv4

IPv4 SIDs are advertised

25

Verify SR with loopback interface

Assign Node SID to loopback

Loopback SID is advertised

26

Verify SR with physical interface

Assign Adj-SID to interface

Adj-SID is advertised

27

Verify SR with TE metric

Assign TE metric to SID

Metric appears in LSP

28

Verify SR with admin group

Assign admin group to SID

Group appears in LSP

29

Verify SR with affinity

Assign affinity to SID

Affinity appears in LSP

30

Verify SR with BFD

Enable BFD on SR path

BFD monitors SR path health

31

Verify SR with FRR

Enable Fast Reroute

Backup path is installed

32

Verify SR with TI-LFA

Enable TI-LFA

Local repair path is installed

33

Verify SR with SRLG

Assign SRLG to link

SRLG appears in LSP

34

Verify SR with overload bit

Set overload bit

Node SID is ignored in SPF

35

Verify SR with max SID depth

Set MSD value

MSD TLV appears in LSP

36

Verify SR with SID protection

Enable protection for SID

Backup SID is advertised

37

Verify SR with SID label conflict

Configure overlapping labels

Conflict is detected and logged

38

Verify SR with SID range overlap

Overlap SRGB ranges

Conflict is handled gracefully

39

Verify SR with SID range exhaustion

Exhaust SRGB

New SIDs are not assigned

40

Verify SR with SID withdrawal

Withdraw SID

SID is removed from LSP

41

Verify SR with SID re-advertisement

Re-advertise SID

SID reappears in LSP

42

Verify SR with SID metric change

Change SID metric

Metric updates in LSP

43

Verify SR with SID admin tag

Assign admin tag to SID

Tag appears in LSP

44

Verify SR with SID policy

Apply policy to SID

Policy is enforced

45

Verify SR with route redistribution

Redistribute SR routes

SIDs are preserved

46

Verify SR with route summarization

Summarize SR routes

Summary SID is advertised

47

Verify SR with authentication

Enable IS-IS auth

SR TLVs are still exchanged

48

Verify SR with LSP flooding

Flood SR TLVs

TLVs propagate correctly

49

Verify SR with LSP refresh

Refresh LSPs

SR TLVs are retained

50

Verify SR with topology change

Change topology

SR paths re

  • Reference links