IS-IS帧结构
协议栈结构
IS-IS报文是直接封装在数据链路层的帧结构中的,数据帧中的负载称为IS-IS PDU。
为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 PDU可分为4种类型:Hello,LSP,CSNP和PSNP。IS-IS PDU可以分为两个部分,报文头和变长字段部分。其中头部又可分为通用头部和专用头部。对于所有PDU来说,通用报头都是相同的,但专用报头根据PDU类型不同而有所差别。
-
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(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(Complete Sequence Number PDUs,全时序报文)通过描述全部数据库中的LSP来同步各LSDB(Link-State DataBase),从而维护LSDB,在相邻路由器间保持LSDB的同步。在广播网络上,CSNP由DIS定期发送(缺省的发送周期为10秒);在点到点链路上,CSNP只在第一次建立邻接关系时发送。
-
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种类型,详细信息请参考。 |
| 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),其格式详见。不同PDU类型所包含的CLV是不同的,如所示,其中,Code值从1到10的CLV在中定义(有2类未在上表中列出),其他几种CLV在中定义。 |
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类型详见。
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 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有相同的报文格式。
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 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 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 TLV Codepoints
CLV Code
| CLV Code | 名称 | IIH | LSP | SNP |
|---|---|---|---|---|
| Area Addresses | 1 | 0 | 1 | |
| IS Neighbors(LSP) | 0 | 1 | 0 | |
| Partition Designated Level2 IS | 0 | L2 | 0 | |
| IS Neighbors(MAC Address) | LAN | 0 | 0 | |
| IS Neighbors(SNPA Address) | LAN | 1 | 1 | |
| Padding | 1 | 0 | 0 | |
| LSP Entries | 0 | 0 | 1 | |
| Authentication Information | 1 | 1 | 1 | |
| Extended IS reachability | 0 | 1 | 0 | |
| IP Internal Reachability Information | 0 | 1 | 0 | |
| Protocols Supported | 1 | 1 | 0 | |
| IP External Reachability Information | 0 | L2 | 0 | |
| Inter-Domain Routing Protocol Information | 0 | L2 | 0 | |
| IP Interface Address | 1 | 1 | 0 | |
| Extended IP reachability | 0 | 1 | 0 | |
| Restart Signaling | 1 | 0 | 0 | |
| Multi-Topology | 1 | 1 | 0 | |
| IPv6 Interface Address | 1 | 1 | 0 | |
| 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 IS-IS Routing Protocol | |
| Use of OSI IS-IS for Routing in TCP/IP and Dual Environments | |
| IS-IS TLV Codepoints | |
| IS-IS PDU Registry |