Skip to main content

IS-IS报文

协议栈结构

IS-IS报文是直接封装在数据链路层的帧结构中的,数据帧中的负载称为IS-IS PDU。

封装在IEEE 802.3帧的IS-IS报文为IS-IS报文在IEEE 802.3帧中的封装结构。其中,DSAP字段值设为0xFE,SSAP字段值设为0xFE。

封装在IEEE 802.3帧的IS-IS报文
  6 byes   6 byes   2 bytes  1 byte   1 byte  1 byte    variable   4 bytes
+--------+--------+--------+--------+--------+--------+-----------+-------+
|  DMAC  |  SMAC  | Length |  DSAP  |  SSAP  |  Ctrl  | IS-IS PDU |  FCS  |
+--------+--------+--------+--------+--------+--------+-----------+-------+

IS-IS

IS-IS(Intermediate System-to-Intermediate System,中间系统到中间系统)最初是国际标准化组织ISO(the International Organization for Standardization)为它的无连接网络协议CLNP(ConnectionLess Network Protocol)设计的一种动态路由协议。

  • IS-IS报文通用格式 介绍IS-IS报文的协议栈结构和通用头部格式。IS-IS PDU可分为4种类型:Hello,LSP,CSNP和PSNP。IS-IS PDU可以分为两个部分,报文头和变长字段部分。其中头部又可分为通用头部和专用头部。对于所有PDU来说,通用报头都是相同的,但专用报头根据PDU类型不同而有所差别。

  • IS-IS Hello消息(IIH消息) Hello消息用于建立和维持邻居关系,也称为IIH(IS-to-IS Hello PDUs)消息。IS-IS Hello(IIH消息)消息可分为多种:广播网中的Level-1路由器使用Level-1 LAN IIH消息;广播网中的Level-2路由器使用Level-2 LAN IIH消息;非广播网络中则使用P2P IIH。它们的报文格式有所不同。LAN IIH消息,如果是IEEE 802.3封装,其目的MAC为广播地址;如果是L2,目的MAC为0x0180-c200-0015(所有L2 IS);如果是L1,目的MAC为0x0180-c200-0014(所有L1 IS),整个LLC header值为0xFE-FE-03。P2P IIH中的多数字段与LAN IIH相同。不同的是没有Priority和LAN ID字段,而多了一个Local Circuit ID字段,表示本地链路ID。

  • IS-IS LSP消息 IS-IS链路状态报文LSP(Link State PDUs)用于交换链路状态信息。LSP分为两种:Level–1 LSP和Level–2 LSP。Level–1 LSP由Level-1路由器传送,Level–2 LSP由Level-2路由器传送,Level-1-2路由器则可传送以上两种LSP。两类LSP有相同的报文格式。

  • IS-IS CSNP消息 IS-IS CSNP(Complete Sequence Number PDUs,全时序报文)通过描述全部数据库中的LSP来同步各LSDB(Link-State DataBase),从而维护LSDB,在相邻路由器间保持LSDB的同步。在广播网络上,CSNP由DIS定期发送(缺省的发送周期为10秒);在点到点链路上,CSNP只在第一次建立邻接关系时发送。

  • IS-IS PSNP消息格式 IS-IS PSNP(Partial Sequence Number PDUs,部分时序报文)通过描述部分数据库中的LSP来同步各LSDB(Link-State DataBase),从而维护LSDB。PSNP只列举最近收到的一个或多个LSP的序号,它能够一次对多个LSP进行确认,当发现LSDB不同步时,也用PSNP来请求邻居发送新的LSP。

IS-IS报文通用格式

介绍IS-IS报文的协议栈结构和通用头部格式。IS-IS PDU可分为4种类型:Hello,LSP,CSNP和PSNP。IS-IS PDU可以分为两个部分,报文头和变长字段部分。其中头部又可分为通用头部和专用头部。对于所有PDU来说,通用报头都是相同的,但专用报头根据PDU类型不同而有所差别。

报文格式

IS-IS通用报头格式
+----------------------------------------------+------------
|  Intradomain Routing Protocol Discriminator  |      |
+----------------------------------------------+      |
|               Length Indicator               |      |
+----------------------------------------------+      |
|        Version/Protocol ID Extension         |      |
+----------------------------------------------+      |
|                  ID Length                   |     PDU
+----------------------------------------------+    Common
| R | R | R |          PDU Type                |    Header
+----------------------------------------------+      |
|                    Version                   |      |
+----------------------------------------------+      |
|                   Reserved                   |      |
+----------------------------------------------+      |
|             Maximum Area Address             |      |
+----------------------------------------------+------------
|              PDU Specific Header             |
+----------------------------------------------+
|         Variable Length Fields (CLV)       |
+----------------------------------------------+
IS-IS报文通用格式字段含义
字段 长度 含义
Intradomain Routing Protocol Discriminator 1B 域内路由选择协议鉴别符,设置为0x83。
Length Indicator 1B PDU头部的长度(包括通用头部和专用头部),以字节为单位。
Version/Protocol ID Extension 1B 版本/协议标识扩展,设置为1(0x01)。
ID Length 1B NSAP地址或NET中System ID区域的长度。值为0时,表示System ID区域的长度为6B。值为255时,表示System ID区域为空(即长度为0)。
R 1bit 保留(Reserved)位,设置为0。
PDU Type 5bit PDU的类型。IS-IS PDU共有9种类型,详细信息请参考PDU类型对应关系表
Version 1B IS-IS版本号,设置为1(0x01)。
Maximum Area Address 1B 支持的最大区域个数。设置为1~254的整数,表示该IS-IS进程实际所允许的最大区域地址数;设置为0,表示该IS-IS进程最大只支持3个区域地址数。
PDU Specific Header Variable 专用头部,根据PDU类型不同而有所差别。
Variable Length Fields Variable 由多个CLV(Code-Length-Value)三元组组成。CLV也称为TLV(Type-Length-Value),其格式详见CLV格式。不同PDU类型所包含的CLV是不同的,如 CLV Code所示,其中,Code值从1到10的CLV在ISO 10589中定义(有2类未在上表中列出),其他几种CLV在RFC 1195中定义。

PDU类型

PDU类型对应关系表
类型值 PDU类型 简称
15 Level-1 LAN IS-IS Hello PDU L1 LAN IIH
16 Level-2 LAN IS-IS Hello PDU L2 LAN IIH
17 Point-to-Point IS-IS Hello PDU P2P IIH
18 Level-1 Link State PDU L1 LSP
20 Level-2 Link State PDU L2 LSP
24 Level-1 Complete Sequence Numbers PDU L1 CSNP
25 Level-2 Complete Sequence Numbers PDU L2 CSNP
26 Level-1 Partial Sequence Numbers PDU L1 PSNP
27 Level-2 Partial Sequence Numbers PDU L2 PSNP

IIS CLV

CLV格式
+-------------- -+
|      Code      |
+----------------+
|     Length     |
+----------------+
|     Value      |
+----------------+

CLV类型详见CLV Code

IS-IS Hello消息(IIH消息)

Hello消息用于建立和维持邻居关系,也称为IIH(IS-to-IS Hello PDUs)消息。IS-IS Hello(IIH消息)消息可分为多种:广播网中的Level-1路由器使用Level-1 LAN IIH消息;广播网中的Level-2路由器使用Level-2 LAN IIH消息;非广播网络中则使用P2P IIH。它们的报文格式有所不同。LAN IIH消息,如果是IEEE 802.3封装,其目的MAC为广播地址;如果是L2,目的MAC为0x0180-c200-0015(所有L2 IS);如果是L1,目的MAC为0x0180-c200-0014(所有L1 IS),整个LLC header值为0xFE-FE-03。P2P IIH中的多数字段与LAN IIH相同。不同的是没有Priority和LAN ID字段,而多了一个Local Circuit ID字段,表示本地链路ID。

IS-IS Hello消息格式
+----------------------------------------------+------------
:                 ...........                 :      |
+----------------------------------------------+     PDU
| R | R | R |        PDU Type = IIH            |    Common
+----------------------------------------------+    Header
:                 ...........                 :      |
+----------------------------------------------+------------
|             Reserved/Circuit Type            |      |
+----------------------------------------------+      |
|                  Source ID                   |      |
+----------------------------------------------+      |
|                 Holding Time                 |      |
+----------------------------------------------+     PDU
|                  PDU Length                  |    Specific
+----------------------------------------------+    Header
| R |                 Priority                 |      |
+----------------------------------------------+      |
|                    LAN ID                    |      |
+----------------------------------------------+      |
|               Local Circuit ID               |      |
+----------------------------------------------+------------
|         Variable Length Fields (CLV)       |
+----------------------------------------------+
IS-IS IIH字段含义
字段 长度 含义
Reserved/Circuit Type 1B 高位的6bit保留,值为0。低位的2bit表示路由器的类型(01表示L1,10表示L2,11表示L1/L2)。
Source ID ID Length 发出Hello报文的路由器的System ID。
Holding Time 2B 保持时间。在此时间内如果没有收到邻居发来的Hello报文,则中止已建立的邻居关系。
PDU Length 2B PDU的总长度,单位是字节。
Priority 7bit 选举DIS的优先级,取值范围为0~127。数值越大,优先级越高。该字段只在广播网中的Hello消息(LAN IIH消息)携带;P2P网络的Hello消息(P2P IIH消息)没有此字段,也没有此字段之前的R保留位。
LAN ID ID Length + 1 包括DIS的System ID和一字节的伪节点ID。该字段只在广播网中的Hello消息(LAN IIH消息)携带;P2P网络的Hello消息(P2P IIH消息)没有此字段。
Local Circuit ID 1B 本地链路ID。该字段只在P2P网络的Hello消息(P2P IIH消息)携带;广播网中的Hello消息(LAN IIH消息)没有此字段。
Variable Length Fields 变长 由多个CLV(Code-Length-Value)三元组组成。同IS-IS报文通用格式字段含义

IS-IS LSP消息

L1/L2 LSP格式
+----------------------------------------------+------------
:                 ...........                 :      |
+----------------------------------------------+     PDU
| R | R | R |        PDU Type = LSP            |    Common
+----------------------------------------------+    Header
:                 ...........                 :      |
+----------------------------------------------+------------
|                   PDU Length                 |      |
+----------------------------------------------+      |
|             Remaining Lifetime               |      |
+----------------------------------------------+      |
|                    LSP ID                    |     PDU
+----------------------------------------------+    Specific
|               Sequency Number                |    Header
+----------------------------------------------+      |
|                     Checksum                 |      |
+----------------------------------------------+      |
| P |            ATT            | OL | IS Type |      |
+----------------------------------------------+------------
|         Variable Length Fields (CLV)       |
+----------------------------------------------+
IS-IS LSP各字段含义
字段 长度 含义
PDU Length 2B PDU的总长度,以字节为单位。
Remaining Lifetime 2B LSP的生存时间,以秒为单位。
LSP ID ID Length + 2 由三部分组成,System ID、伪节点ID(一字节)和LSP分片后的编号(一字节)。
Sequency Number 4B LSP的序列号。
Checksum 2B LSP的校验和。
P 1bit 自动修复(Partition Repair)位,仅与L2 LSP有关,表示路由器是否支持自动修复区域分割。
ATT 4bit ATT(Attachment),由Level-1-2路由器产生,用来指明始发路由器是否与其它区域相连。虽然此标志位也存在于Level-1和Level-2的LSP中,但实际上此字段只和Level-1-2路由器始发的L1 LSP有关。此字段有4bit,用来表明相连的区域所使用的度量方式。从右至左这4位依次表示如下所示: 第4位:缺省度量;第5位:时延度量;第6位:代价度量;第7位:差错度量。
OL 1bit 过载标志OL(LSDB Overload)位。设置了过载标志位的LSP虽然还会在网络中扩散,但是在计算通过超载路由器的路由时不会被采用。即,对路由器设置过载位后,其它路由器在进行SPF计算时不会考虑这台路由器。当路由器内存不足时,系统自动在发送的LSP报文中设置过载标志位。
IS Type 2bit 生成LSP的路由器的类型。用来指明是Level-1还是Level-2路由器(01表示Level-1,11表示Level-2)。
Variable Length Fields 变长 由多个CLV(Code-Length-Value)三元组组成。同IS-IS报文通用格式字段含义

IS-IS CSNP消息

IS-IS CSNP(Complete Sequence Number PDUs,全时序报文)通过描述全部数据库中的LSP来同步各LSDB(Link-State DataBase),从而维护LSDB,在相邻路由器间保持LSDB的同步。在广播网络上,CSNP由DIS定期发送(缺省的发送周期为10秒);在点到点链路上,CSNP只在第一次建立邻接关系时发送。

L1/L2 CSNP消息格式

L1/L2 CSNP消息格式
+--------------------------------------------+-------------
:                 ...........               :      |
+--------------------------------------------+     PDU
| R | R | R |        PDU Type = CSNP         |    Common
+--------------------------------------------+    Header
:                 ...........               :      |
+--------------------------------------------+-------------
|                 PDU Length                 |      |
+--------------------------------------------+      |
|                 Source ID                  |     PDU
+--------------------------------------------+   Specific
|                Start LSP ID                |    Header
+--------------------------------------------+      |
|                End LSP ID                  |      |
+--------------------------------------------+-------------
|           Variable Length Fields           |
+--------------------------------------------+
IS-IS CSNP各字段含义
字段 长度 含义
PDU Length 2B PDU的总长度,单位是字节。
Source ID ID Length + 1B 发出CSNP报文的路由器的System ID。
Start LSP ID ID Length + 2B CSNP报文中第一个LSP的ID值。
End LSP ID ID Length + 2B CSNP报文中最后一个LSP的ID值。
Variable Length Fields 变长 由多个CLV(Code-Length-Value)三元组组成。同IS-IS报文通用格式字段含义

IS-IS PSNP消息格式

IS-IS PSNP(Partial Sequence Number PDUs,部分时序报文)通过描述部分数据库中的LSP来同步各LSDB(Link-State DataBase),从而维护LSDB。PSNP只列举最近收到的一个或多个LSP的序号,它能够一次对多个LSP进行确认,当发现LSDB不同步时,也用PSNP来请求邻居发送新的LSP。

L1/L2 PSNP格式
+--------------------------------------------+-------------
:                 ...........               :      |
+--------------------------------------------+     PDU
| R | R | R |        PDU Type = PSNP         |    Common
+--------------------------------------------+    Header
:                 ...........               :      |
+--------------------------------------------+-------------
|              PDU Length                    |     PDU
+--------------------------------------------+   Specific  
|              Source ID                     |    Header
+--------------------------------------------+-------------
|         Variable Length Fields (CLV)     |  
+--------------------------------------------+
IS-IS PSNP各字段含义
字段 长度 含义
PDU Length 2B PDU的总长度,单位是字节。
Source ID ID Length + 1B 发出PSNP报文的路由器的System ID。
Variable Length Fields 变长 由多个CLV(Code-Length-Value)三元组组成。同IS-IS报文通用格式字段含义

IS-IS TLV Codepoints

CLV Code
CLV Code 名称 IIH LSP SNP
1 Area Addresses 1 0 1
2 IS Neighbors(LSP) 0 1 0
4 Partition Designated Level2 IS 0 L2 0
6 IS Neighbors(MAC Address) LAN 0 0
7 IS Neighbors(SNPA Address) LAN 1 1
8 Padding 1 0 0
9 LSP Entries 0 0 1
10 Authentication Information 1 1 1
22 Extended IS reachability 0 1 0
128 IP Internal Reachability Information 0 1 0
129 Protocols Supported 1 1 0
130 IP External Reachability Information 0 L2 0
131 Inter-Domain Routing Protocol Information 0 L2 0
132 IP Interface Address 1 1 0
135 Extended IP reachability 0 1 0
211 Restart Signaling 1 0 0
229 Multi-Topology 1 1 0
232 IPv6 Interface Address 1 1 0
236 IPv6 Reachability 0 1 0
IS-IS Area Addresses TLV
+--------------------------------+  No. of Octets
|          Code = 0x01           |  1B
+--------------------------------+
|             Length             |  1B
+--------------------------------+
|       Address[1] Length        |  1B
+--------------------------------+
|           Address[1]           |  Address Length
+--------------------------------+
:             ...               :    
+--------------------------------+
|       Address[n] Length        |  1B
+--------------------------------+
|           Address[n]           |  Address Length
+--------------------------------+

IIS Neighbors(LSP)TLV
+--------------------------------+  No. of Octets
| Code = 0x02 | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| Virtual Flag | 1B
+--------------------------------+
| 0 |I/E| Default Metric | 1B
+--------------------------------+
| S |I/E| Delay Metric | 1B
+--------------------------------+
| S |I/E| Expense Metric | 1B
+--------------------------------+
| S |I/E| Error Metric | 1B
+--------------------------------+
| Neighbor ID | ID Length + 1B
+--------------------------------+
: ... :
+--------------------------------+
| 0 |I/E| Default Metric | 1B
+--------------------------------+
| S |I/E| Delay Metric | 1B
+--------------------------------+
| S |I/E| Expense Metric | 1B
+--------------------------------+
| S |I/E| Error Metric | 1B
+--------------------------------+
| Neighbor ID | ID Length + 1B
+--------------------------------+

IIS Neighbors(MAC address) TLV
+--------------------------------+  No. of Octets
| Code = 0x06 | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| LAN Address | 6B
+--------------------------------+
: ... :
+--------------------------------+
| LAN Address | 6B
+--------------------------------+
IIS Neighbors(SNPA) TLV
+--------------------------------+  No. of Octets
| Code = 0x07 | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| LAN Address Length | 1B
+--------------------------------+
| LAN Address | Lan Address Length
+--------------------------------+
: ... :
+--------------------------------+
| LAN Address | Lan Address Length
+--------------------------------+

IS-IS Padding
+--------------------------------+  No. of Octets
| Code = 0x08 | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| Value | LENGTH octets of arbitrary value.
+--------------------------------+

IS-IS Protocols Supported TLV
+--------------------------------+  No. of Octets
| Code = 0x81(129) | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| NLPID[1] | 1B
+--------------------------------+
: ... :
+--------------------------------+
| NLPID[n] | 1B
+--------------------------------+
  • NLPID

    • IPv4:0xcc

    • IPv6:0x8e

IS-IS IP Interface Address TLV
+--------------------------------+  No. of Octets
| Code = 0x84(132) | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| IP Address[1] | 4B
+--------------------------------+
: ... :
+--------------------------------+
| IP Address[n] | 4B
+--------------------------------+

IS-IS IP Internal Reachability Information TLV
+--------------------------------+  No. of Octets
| Code = 0x80(128) | 1B
+--------------------------------+
| Length | 1B a multiple of 12.
+--------------------------------+
| 0 |I/E| Default Metric | 1B
+--------------------------------+
| S | R | Delay Metric | 1B
+--------------------------------+
| S | R | Expense Metric | 1B
+--------------------------------+
| S | R | Error Metric | 1B
+--------------------------------+
| IP Address[1] | 4B
+--------------------------------+
| Subnet MASK[1] | 4B
+--------------------------------+
: ... :
+--------------------------------+
| 0 |I/E| Default Metric | 1B
+--------------------------------+
| S | R | Delay Metric | 1B
+--------------------------------+
| S | R | Expense Metric | 1B
+--------------------------------+
| S | R | Error Metric | 1B
+--------------------------------+
| IP Address[n] | 4B
+--------------------------------+
| Subnet MASK[n] | 4B
+--------------------------------+

IS-IS IP External Reachability Information TLV
+--------------------------------+  No. of Octets
| Code = 0x82(130) | 1B
+--------------------------------+
| Length | 1B a multiple of 12.
+--------------------------------+
| 0 |I/E| Default Metric | 1B
+--------------------------------+
| S | R | Delay Metric | 1B
+--------------------------------+
| S | R | Expense Metric | 1B
+--------------------------------+
| S | R | Error Metric | 1B
+--------------------------------+
| IP Address[1] | 4B
+--------------------------------+
| Subnet MASK[1] | 4B
+--------------------------------+
: ... :
+--------------------------------+
| 0 |I/E| Default Metric | 1B
+--------------------------------+
| S | R | Delay Metric | 1B
+--------------------------------+
| S | R | Expense Metric | 1B
+--------------------------------+
| S | R | Error Metric | 1B
+--------------------------------+
| IP Address[n] | 4B
+--------------------------------+
| Subnet MASK[n] | 4B
+--------------------------------+

IS-IS Extended IS reachability TLV
+--------------------------------+  No. of Octets
| Code = 0x16(22) | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| Neighbor ID[1] | 7B
+--------------------------------+
| Default Metric[1] | 3B
+--------------------------------+
| Sub TLV Length[1] | 1B
+--------------------------------+
| Sub TLV[1] | Sub TLV Length
+--------------------------------+
: ... :
+--------------------------------+
| Neighbor ID[n] | 7B
+--------------------------------+
| Default Metric[n] | 3B
+--------------------------------+
| Sub TLV Length[n] | 1B
+--------------------------------+
| Sub TLV[n] | Sub TLV Length
+--------------------------------+

IS-IS Extended IP reachability TLV
+--------------------------------+  No. of Octets
| Code = 0x87(135) | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| Metric[1] | 4B
+--------------------------------+
|U/D| S | Prefix Length[1] | 1B
+--------------------------------+
| IP Prefix[1] | Prefix Length
+--------------------------------+
| Sub TLV Length[1] | 1B
+--------------------------------+
| Sub TLV[1] | Sub TLV Length
+--------------------------------+
: ... :
+--------------------------------+
| Metric[1] | 4B
+--------------------------------+
|U/D| S | Prefix Length[1] | 1B
+--------------------------------+
| IP Prefix[1] | Prefix Length
+--------------------------------+
| Sub TLV Length[1] | 1B
+--------------------------------+
| Sub TLV[1] | Sub TLV Length
+--------------------------------+

IS-IS Partition Designated Level 2 Intermediate System TLV
+--------------------------------+  No. of Octets
| Code = 0x04 | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| Value | Length
+--------------------------------+
  • Value:systemID of Partition Designated Level 2 Intermediate System for the partition.

IS-IS LSP Entries TLV
+--------------------------------+  No. of Octets
| Code = 0x09 | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| Remaining Lifetime | 2B
+--------------------------------+
| LSP ID | ID Length + 2B
+--------------------------------+
| LSP Sequence Number | 4B
+--------------------------------+
| Checksum | 2B
+--------------------------------+
: ... :
+--------------------------------+
| Remaining Lifetime | 2B
+--------------------------------+
| LSP ID | ID Length + 2B
+--------------------------------+
| LSP Sequence Number | 4B
+--------------------------------+
| Checksum | 2B
+--------------------------------+

IS-IS Authentication Information TLV
+--------------------------------+  No. of Octets
| Code = 0x0A | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| Authentication Type | 1B
+--------------------------------+
| Authentication Value | 1B
+--------------------------------+
  • Authentication Type

    • 0 — RESERVED

    • 1 — Cleartext Password

    • 2–254 — RESERVED

    • 255 — Routeing Domain private authentication method

  • Authentication Value

    determined by the value of the authentication type. If Cleartext Password as defined in this International Standard is used, then the authentication value is an octet string.

Code Value Reference
Reserved 0 [ISO-10589]
Cleartext Password 1 :
ISO 10589 Reserved 2 :
HMAC-MD5 Authentication 54 RFC5304
Routeing Domain private authentication 255 [ISO-10589]
method    

IS-IS Inter-Domain Routing Protocol Information TLV
+--------------------------------+  No. of Octets
| Code = 0x83(131) | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| Inter-Domain Information Type | 1B
+--------------------------------+
| External Information | Variable
+--------------------------------+
  • Type = 0 reserved

  • Type = 1 local (uses routing-domain specific format)

  • Type = 2 AS Number Tag

IS-IS IPv6 Interface Address TLV
+--------------------------------+  No. of Octets
| Code = 0xE8(232) | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| IP Address[1] | 16B
+--------------------------------+
: ... :
+--------------------------------+
| IP Address[n] | 16B
+--------------------------------+
IS-IS IPv6 Reachability TLV
+--------------------------------+  No. of Octets
| Code = 0xEC(236) | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| Metric | 4B
+--------------------------------+
| U | X | S | Reserve | 1B
+--------------------------------+
| Prefix Len | 1B
+--------------------------------+
| Prefix ... |
+--------------------------------+
| Sub-TLV Len(*) |
+--------------------------------+
| Sub-TLVs(*)... |
+--------------------------------+
  • Flag

    • U - up/down bit

    • X - external original bit

    • S - subtlv present bit

IS-IS Restart TLV
+--------------------------------+  No. of Octets
| Code = 0xD3(211) | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
| Reserved | PA| PR| SA| RA| RR| 1B
+--------------------------------+
| Remaining Time | 2B
+--------------------------------+
| Restarting Neighbor ID | ID Length
+--------------------------------+
  • Flags

    • RR - Restart Request

    • RA - Restart Acknowledgement

    • SA - Suppress adjacency advertisement

    • PR - Restart is planned

    • PA - Planned restart acknowledgement

IS-IS Multi-Topology TLV
+--------------------------------+  No. of Octets
| Code = 0xE5(229) | 1B
+--------------------------------+
| Length | 1B
+--------------------------------+
|O|A|R|R| MT ID[1] | 2B
+--------------------------------+
: ... :
+--------------------------------+
|O|A|R|R| MT ID[n] | 2B
+--------------------------------+
  • Flags

    • O

      Bit O represents the OVERLOAD bit for the MT (only valid in LSP fragment zero for MTs other than ID #0, otherwise SHOULD be set to 0 on transmission and ignored on receipt).

    • A

      Bit A represents the ATTACH bit for the MT (only valid in LSP fragment zero for MTs other than ID #0, otherwise SHOULD be set to 0 on transmission and ignored on receipt).

    • R

      Bits R are reserved, SHOULD be set to 0 on transmission and ignored on receipt.

  • MT ID

    a 12-bit field containing the ID of the topology being announced.

参考标准

IS-IS参考标准
标准 描述
ISO 10589 ISO IS-IS Routing Protocol
RFC 1195 Use of OSI IS-IS for Routing in TCP/IP and Dual Environments
IANA协议注册表 IS-IS TLV Codepoints
IANA协议注册表 IS-IS PDU Registry

q