目录

简介

先决条件

要求

使用的组件

规则

TLV的功能

TLV编码

IS-IS PDU和TLV定义

由思科实施的TLV

TLV详细信息

子TLV和流量工程

子TLV详细信息

相关信息

简介

本文档介绍中间系统到中间系统(IS-IS)类型长度值(TLV)及其使用。

先决条件

要求

本文档没有任何特定的要求。

使用的组件

本文档不限于特定的软件和硬件版本。

规则

有关文档规则的详细信息，请参阅 Cisco 技术提示规则。

TLV的功能

IS-IS最初设计用于开放式系统互联(OSI)路由，它使用TLV参数在链路状态数据包(LSP)中传输信息。 TLV使IS-IS可扩展。因此，IS-IS可以在LSP中传输不同类型的信息。根据ISO 10589的定义，IS-IS仅支持无连接网络协议(CLNP)。 但是，IS-IS在RFC 1195 中通过注册TLV 128扩展了IP路由，该TLV 128包含一组12个二进制八位数字段，用于传输IP信息。

在IS-IS协议数据单元(PDU)中，报头有一个固定的可变部分。报头的固定部分包含始终存在的字段，报头的可变部分包含TLV，该TLV允许对链路状态记录中的参数进行灵活编码。这些字段包括一组表示类型 (T) 的八位位组、一组表示长度 (L) 的八位位组、以及“L”组表示值 (V) 的八位位组。 “Type”字段指示“Value”字段中项目的类型。Length 字段指示Value字段的长度。“值”字段是数据包的数据部分。并非所有的路由器设备都支持所有的 TLV，但它们必须能忽略以及重新传输被忽略的类型。

如RFC 1195所述 ,TLV 128扩展了IS-IS以传送IP，除了无连接网络服务(CLNS)外，还在同一数据包中传送路由信息。DEC还通过TLV 42实现了对IS-IS的扩展。此扩展允许IS-IS保存有关DECnet第IV阶段网络的信息。将来可能会实施新的TLV，允许CLNS传输IPv6路由信息。

多种路由协议使用TLV来传输各种属性。思科发现协议(CDP)、标签发现协议(LDP)和边界网关协议(BGP)是使用TLV的协议的示例。BGP使用TLV来传输网络层可达性信息(NLRI)、多出口鉴别器(MED)和本地优先级等属性。

TLV编码

可变长度字段的编码如下：

字段

八位组数

类型

1

长度

1

价值

长度

RFC 1142第9部分(ISO 10589的修订版)详细介绍了每种IS-IS PDU的数据包布局以及每种类型支持的TLV。 所有IS-IS PDU的前八个二进制八位数是所有PDU类型通用的报头字段。TLV信息存储在PDU的最末。不同类型的PDU具有一组当前定义的代码。任何未识别的代码都应忽略并不更改地传递。

IS-IS PDU和TLV定义

IS-IS PDU类型和有效代码值的定义已建立。ISO 10589定义类型代码1到10。RFC 1195 定义类型代码128到133。

注意：RFC 1195中指定了TLV代码133(身份验证信息)，但思科改用ISO代码10。 此外，TLV代码4用于分区修复，思科不支持。

由思科实施的TLV

思科实施大多数TLV。但是，在某些情况下，草案或低需求TLV未实施。以下是思科实施的常见TLV的说明。

TLV

名称

描述

1

区域地址

包括中间系统所连接的区域地址。

2

IIS邻居

包括路由器所连接的所有运行接口的IS-IS。

8

填充

主要用于IS-IS Hello(IIH)数据包，以检测最大传输单位(MTU)不一致。默认情况下，IIH数据包填充到接口的最完整MTU。

10

身份验证

用于验证PDU的信息。

22

TE IIS邻居

将最大度量增加到三个字节（24位）。 此TLV称为扩展IS可达性TLV，可解决TLV 2度量限制。TLV 2的最大度量为63，但仅使用八位中的六位。

128

IP Int.可达性

通过一个或多个内部源接口提供给定路由器知道的所有已知IP地址。此信息可能出现多次。

129

支持的协议

传输IS（中间系统）支持的网络层协议的网络层协议标识符(NLPID)。它指支持的数据协议。例如，IPv4 NLPID值0xCC、CLNS NLPID值0x81和/或IPv6 NLPID值0x8E将在此NLPID TLV中通告。

130

IP分机地址

提供给定路由器通过一个或多个外部源接口知道的所有已知IP地址。此信息可能出现多次。

132

IP Int.地址

用于到达下一跳地址的IP接口地址。

134

路由器ID

这是多协议标签交换(MPLS)流量工程路由器ID。

135

TE IP可达性

提供32位度量，并为L2->L1的路由泄漏导致的“up/down”添加一位。此TLV称为扩展IP可达性TLV，可解决TLV 128和TLV 130的问题。

137

动态主机名

标识发起链路状态数据包(LSP)的路由器的符号名称。

10 和 133

TLV 10应用于身份验证；而不是TLV 133。如果收到TLV 133，则在接收时会忽略它，就像其他未知TLV一样。TLV 10应仅接受身份验证。

TLV详细信息

名称

TLV

IIH

SNP

L1 LSP

L2 LSP

源

区域地址

1

Yes

无

Yes

Yes

ISO 10589

IIS邻居

2

无

无

Yes

Yes

ISO 10589

ES邻居

3

无

无

Yes

无

ISO 10589

部分。DIS

4

无

无

Yes

ISO 10589

前缀邻居

5

无

无

Yes

ISO 10589

IIS邻居

6

Yes

无

Yes

ISO 10589

填充

8

Yes

无

无

无

ISO 10589

LSP条目

9

无

Yes

无

无

ISO 10589

身份验证

10

Yes

Yes

Yes

Yes

ISO 10589

选择校验和

12

Yes

Yes

Yes

Yes

draft-ietf-isis-wg-snp-checksu

LSPBufferSize

14

Yes

无

SIF-DRAFT

TE IIS邻居

22

无

无

draft-ietf-isis-traffic-04.txt

HMAC-MD5真实

54

draft-ietf-isis-hmac-03.txt

IP Int.覆盖

128

无

无

Yes

Yes

RFC 1195

波特。受支持

129

Yes

无

Yes

Yes

RFC 1195

IP分机地址

130

无

无

Yes

Yes

RFC 1195

IDRPI

131

无

Yes

无

Yes

RFC 1195

IP Intf。地址

132

Yes

无

Yes

Yes

RFC 1195

身份验证

*133

无

无

无

无

RFC 1195（非法）

TE路由器ID

134

无

无

Yes

Yes

draft-ietf-isis-traffic-04.txt

IP。覆盖

135

无

无

draft-ietf-isis-traffic-04.txt

动态名称

137

无

无

RFC 2763

共享风险链路组

138

draft-ietf-isis-gmpls-extensions-12.txt

MT-ISN

222

无

无

draft-ietf-isis-wg-multi-topol

M拓扑

229

Yes

无

draft-ietf-isis-wg-multi-topol

IPv6 Intf.地址

232

Yes

无

draft-ietf-isis-ipv6-02.txt

MT IP。覆盖

235

无

无

draft-ietf-isis-wg-multi-topol

3路hello

240

Yes

无

draft-ietf-isis-3way-01.txt

重新启动TLV

211

Yes

无

无

无

draft-shand-isis-restart-01.txt

IPv6可达性

236

无

无

Yes

Yes

draft-ietf-isis-ipv6-02.txt

MT IPv6 IP到达

237

无

无

Yes

Yes

draft-ietf-isis-wg-multi-topol

p2p 3-way adj.

240

Yes

无

draft-ietf-isis-3way-06.txt

子TLV和流量工程

子TLV使用与TLV相同的概念。区别在于IS-IS数据包中存在TLV，而TLV中存在子TLV。TLV用于向IS-IS数据包添加额外信息。子TLV用于向特定TLV添加额外信息。每个子TLV包含三个字段。一个二进制八位数的“类型”字段、一个二进制八位数的“长度”字段和零个或多个二进制八位数的“值”。“Type”字段指示“Value”字段中项目的类型。“长度”字段表示“值”字段的长度（二进制八位数）。每个子TLV可能包含多个项目。当每个子TLV的长度已知时，可以从整个子TLV的长度计算子TLV中的项数。未知的子TLV将在接收时忽略和跳过。

大多数子TLV在draft-ietf-isis-traffic-04.txt和draft-ietf-isis-gmpls-extensions-12.txt中定义。

此外，这些子TLV是扩展IS可达性TLV 22的一部分，但子TLV 1是扩展IP可达性TLV 135的一部分除外。子TLV 1在draft-martin-neal-policy-isis-admin-tags-01.txt中定义

以下是子TLV的简要说明：

子TLV

名称

描述

1

管理组

此子TLV将标记与IP前缀关联。此“标记”的一些示例包括控制级别和区域之间、不同路由协议或接口上的重分发。

3

管理组

如果链路或接口已着色（从流量工程的角度），则该信息由此TLV传输。

6

IPv4接口地址

用于流量工程目的的接口IP地址。

8

IPv4邻居地址

用于流量工程目的的邻居接口IP地址。

9

最大链路带宽

有关接口的最大链路带宽（用于流量工程目的）。

10

最大可保留链路带宽

可在相关接口上保留的最大带宽量。

11

未保留的带宽

接口上尚未保留的带宽量。

18

流量工程默认度量

为流量工程目的管理性分配的度量。

子TLV详细信息

子TLV

TLV

定义

字节

管理标签

1

ISIS_ROUTE_ADMIN_TAG

管理员.组（颜色）

3

ISIS_ADMIN_GROUP

4

传出Int。标识符

4

4

传入Int。标识符

5

4

IPv4接口地址

6

ISIS_INTERFACE_IP_ADDRESS

4

接口 MTU

7

2

IPv4邻居地址

8

ISIS_NEIGHBOR_IP_ADDRESS

4

最大链路带宽

9

ISIS_MAXIMUM_LINK_BW

4

最大值.保留链路带宽

10

ISIS_MAXIMUM_LINK_RES

4

未保留的带宽

11

ISIS_CURRENT_BW_UNRESERVED

32

TE默认度量

18

ISIS_TRAFFIC_ENGINEERING_METRIC

3

链路保护类型

20

2

Int.交换机。功能说明

21

变量

MT可到达IPv4前缀

117

最大值.链接。雷瑟。子池

*250

ISIS_MAXIMUM_LINK_RES_SUB

当前BW UnReser。子池

*251

ISIS_CURRENT_BW_UNRESERVED_SUB

*子TLV 250和251是思科特定扩展的一部分，支持MPLS-TE，该MPLS-TE记录在draft-ietf-isis-traffic-04.txt中。这些子TLV在MPLS-TE下的保证带宽应用期间使用。

注意：请始终参阅最新的互联网工程任务组(IETF)草案。本文档中提到的IETF草案可能会有所更改。它可能被更新的版本或RFC替换，或者可能过期。

相关信息

- IS-IS 支持页

- 技术支持 - Cisco Systems