Table of Contents

ISIS metric and metric types are the topic of this section.

After the adjacency and database exchange process that we discussed in the previous sections, it is now time for the routers to calculate the best route to each destination by running SPF algorithm and adding them into the routing table.

ISIS Route Types and Best Route Selection process

As you know, ISIS creates two separate databases for Level 1and Level 2, and the SPF process is executed separately on each database.

ISIS routes can also be classified into internal and external, in addition to being divided into L1 and L2.

ISIS Route Types and Best Route Selection Process
ISIS Route Types and Best Route Selection Process

Internal routes are routes whose destination is within the ISIS domain, and external routes are routes to destinations outside the ISIS domain. L2 routes can be internal or external, but L1 routes are usually only internal unless we can create L1 and at the same time external routes with special methods, which is usually not recommended.

If both L1 and L2 routes exist for a given destination, L1 routes are always preferred over L2 routes.

The next option when choosing the best route is the metric parameter. This means if there are multiple L1 routes to a given destination, the route or routes with a lower metric are added in the routing table.

ISIS Metric Calculation

How is the metric calculated in ISIS?

By default the metric in ISIS, like OSPF, is the sum of the costs of the links in the path, but the difference with OSPF is that the metric in ISIS is not a measure of link bandwidth, but by default the metric of all links is 10.

In other words, the metric in ISIS is more like RIP than OSPF. Since in ISIS, a route with fewer links in the path has a lower metric.

You can use the command “isis metric” to change the metric value of each interface. Note that the metric value for L1 and L2 can be configured separately.

ISIS metric calculation
ISIS metric calculation
IOU1(config)#int ethernet 0/0
IOU1(config-if)#isis metric ?
  <1-16777214>  Default metric
  maximum       Maximum metric. All routers will exclude this link from their
                SPF

IOU1(config-if)#isis metric 10 ?
  <1-16777214>  Delay metric
  level-1       Apply metric to level-1 links
  level-2       Apply metric to level-2 links
  <cr>

IOU1(config-if)#isis metric 10 1 ?
  <1-16777214>  Expense metric
  level-1       Apply metric to level-1 links
  level-2       Apply metric to level-2 links
  <cr>

IOU1(config-if)#isis metric 10 1 1 ?
  <1-16777214>  Error metric
  level-1       Apply metric to level-1 links
  level-2       Apply metric to level-2 links
  <cr>

IOU1(config-if)#isis metric 10 1 1 1 ?
  level-1  Apply metric to level-1 links
  level-2  Apply metric to level-2 links
  <cr>

IOU1(config-if)#isis metric 10 1 1 1

In this command, you can see that in addition to the cost value for each link, you can also configure the Delay value, which by default does not affect the ISIS metric calculation.

If you continue this command, you will see that in addition to Metric and Delay, Expense and Error values can also be configured.

Delay shows the delay of the link. Expense and error show the cost and reliability of the link, respectively. So far I haven’t seen the use of this parameters in ISIS metric in any document to be suggested.

ISIS Metric Types

By default, the maximum allowed metric value of each link is 63 and the total metric of all links is 1023, which is related to the 10-bit field limitation in ISIS LSP. This limitation has caused the metric value to be increased to 32 bits in new versions of IOS.

ISIS Metric Types
ISIS Metric Types

To enable the 32-bit metric version in ISIS, we use the “metric-style wide” command in the router isis context mode. By default, the metric type in ISIS is narrow, which is 10 bits.

IOU1(config)#router isis
IOU1(config-router)#metric-style ?
  narrow      Use old style of TLVs with narrow metric
  transition  Send and accept both styles of TLVs during transition
  wide        Use new style of TLVs to carry wider metric

IOU1(config-router)#exit
IOU1(config)#exit
IOU1#show clns protocol

IS-IS Router: <Null Tag>
  System Id: 0000.0000.0001.00  IS-Type: level-1
  Manual area address(es):
        49.0001
  Routing for area address(es):
        49.0001
  Interfaces supported by IS-IS:
        Ethernet0/0 - IP
        Loopback0 - IP
  Redistribute:
    static (on by default)
  Distance for L2 CLNS routes: 110
  RRR level: none
  Generate narrow metrics: level-1-2
  Accept narrow metrics:   level-1-2
  Generate wide metrics:   none
  Accept wide metrics:     none
IOU1#

The type of metric can be one of narrow, wide, transition, or wide transition, whose default value can be seen in the output of the „show clns protocol” command. As you can see by default narrow metric type is activated for both level 1 and level 2.

The output of command show what type of metric is allowed to be sent or received by the router. Transition metric type means that the router sends and receives both wide and narrow metric types.

This table describes the difference between metric types in ISIS.

metric type/operation generate narrow metrics accept narrow metrics generate wide metrics accept wide metrics
narrow yes yes no no
wide no no yes yes
transition  yes yes yes yes
wide transition  no yes yes yes

As you can see, the difference between “wide transition” and “wide” is that if you configure “wide” as metric type, the router will not accept narrow metric when receiving LSP, but it is accepted in “wide transition” metric type.

Back to: IS-IS Routing Protocol > Cisco ISIS Configuration and Troubleshooting

Leave a Reply

Your email address will not be published. Required fields are marked *


Post comment