ISIS报文类型

您所在的位置:网站首页 摘要的两种类型 ISIS报文类型

ISIS报文类型

2024-02-23 17:26| 来源: 网络整理| 查看: 265

ISIS的报文类型

IS-IS报文有以下几种类型:HELLO PDU(Protocol Data Unit)、LSP和SNP。

Hello PDU

Hello报文用于建立和维持邻居关系,也称为IIH(IS-to-IS Hello PDUs)。其中,广播网中的Level-1 IS-IS使用Level-1 LAN IIH;广播网中的Level-2 IS-IS使用Level-2 LAN IIH;非广播网络中则使用P2P IIH。它们的报文格式有所不同。P2P IIH中相对于LAN IIH来说,多了一个表示本地链路ID的Local Circuit ID字段,缺少了表示广播网中DIS的优先级的Priority字段以及表示DIS和伪节点System ID的LAN ID字段。

LSP

链路状态报文LSP(Link State PDUs)用于交换链路状态信息。LSP分为两种:Level-1 LSP和Level-2 LSP。Level-1 LSP由Level-1 IS-IS传送,Level-2 LSP由Level-2 IS-IS传送,Level-1-2 IS-IS则可传送以上两种LSP。

LSP报文中主要字段的解释如下:

ATT字段:当Level-1-2 IS-IS在Level-1区域内传送Level-1 LSP时,如果Level-1 LSP中设置了ATT位,则表示该区域中的Level-1 IS-IS可以通过此Level-1-2 IS-IS通往外部区域。

OL(LSDB Overload)字段:过载标志位。

设置了过载标志位的LSP虽然还会在网络中扩散,但是在计算通过过载路由器的路由时不会被采用。即对路由器设置过载位后,其它路由器在进行SPF计算时不会使用这台路由器做转发,只计算该节点上的直连路由。

IS Type字段:用来指明生成此LSP的IS-IS类型是Level-1还是Level-2 IS-IS(01表示Level-1,11表示Level-2)。

SNP

序列号报文SNP(Sequence Number PDUs)通过描述全部或部分数据库中的LSP来同步各LSDB(Link-State DataBase),从而维护LSDB的完整与同步。

SNP包括全序列号报文CSNP(Complete SNP)和部分序列号报文PSNP(Partial SNP),进一步又可分为Level-1 CSNP、Level-2 CSNP、Level-1 PSNP和Level-2 PSNP。

CSNP包括LSDB中所有LSP的摘要信息,从而可以在相邻路由器间保持LSDB的同步。在广播网络上,CSNP由DIS定期发送(缺省的发送周期为10秒);在点到点链路上,CSNP只在第一次建立邻接关系时发送。

PSNP只列举最近收到的一个或多个LSP的序号,它能够一次对多个LSP进行确认,当发现LSDB不同步时,也用PSNP来请求邻居发送新的LSP。

IS-IS报文中的变长字段部分是多个TLV(Type-Length-Value)三元组。TLV也称为CLV(Code-Length-Value)。

常见的TLV: TLV Type 名称 所应用的PDU类型 1 Area Addresses IIH、LSP 2 IS Neighbors(LSP) LSP 4 Partition Designated Level2 IS L2 LSP 6 IS Neighbors(MAC Address) LAN IIH 7 IS Neighbors(SNPA Address) LAN IIH 8 Padding IIH 9 LSP Entries SNP 10 Authentication Information IIH、LSP、SNP 128 IP Internal Reachability Information LSP 129 Protocols Supported IIH、LSP 130 IP External Reachability Information L2 LSP 131 Inter-Domain Routing Protocol Information L2 LSP 132 IP Interface Address IIH、LSP IS-IS报文通用格式

##ISIS报文通用格式:

IS-IS报文是直接封装在数据链路层的帧结构中的。PDU可以分为两个部分,报文头和变长字段部分。其中头部又可分为通用头部和专用头部。对于所有PDU来说,通用报头都是相同的,但专用报头根据PDU类型不同而有所差别。

IS-IS的PDU有4种类型:Hello报文,LSP,CSNP,PSNP。

图:IS-IS通用报文格式 Intradomain Routing Protocol Discriminator:域内路由选择协议鉴别符,设置为0x83。 Length Indicator:PDU头部的长度(包括通用头部和专用头部),以字节为单位。 Version/Protocol ID Extension:版本/协议标识扩展,设置为1(0x01)。 ID Length:NSAP地址或NET中System ID区域的长度。值为0时,表示System ID区域的长度为6字节。值为255时,表示System ID区域为空(即长度为0)。 R(Reserved):保留,设置为0。 PDU Type:PDU的类型。IS-IS PDU共有9种类型,详细信息请参考下表。 Version:设置为1(0x01)。 Maximum Area Address:支持的最大区域个数。设置为1~254的整数,表示该IS-IS进程实际所允许的最大区域地址数;设置为0,表示该IS-IS进程最大只支持3个区域地址数。 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 抓包示例:

图:IS-IS通用报文抓包示例 IS-IS Hello报文

Hello报文用于建立和维持邻居关系,也称为IIH(IS-to-IS Hello PDUs)。其中,广播网中的Level-1路由器使用Level-1LAN IIH;广播网中的Level-2路由器使用Level-2 LAN IIH;非广播网络中则使用P2P IIH。它们的报文格式有所不同。

Hello报文格式:

图:广播网中 IIH报文格式

主要字段的解释如下:

Reserved/Circuit Type:高位的6比特保留,值为0。低位的2比特表示路由器的类型(01表示L1,10表示L2,11表示L1/L2)。 Source ID:发出Hello报文的路由器的System ID。 Holding Time:保持时间。在此时间内如果没有收到邻居发来的Hello报文,则中止已建立的邻居关系。 PDU Length:PDU的总长度,单位是字节。 Priority:选举DIS的优先级,取值范围为0~127。数值越大,优先级越高。 LAN ID:包括DIS的System ID和一字节的伪节点ID。

图:P2P中IIH报文格式

从图中可以看出,P2P IIH中的多数字段与LAN IIH相同。不同的是没有Priority和LAN ID字段,而多了一个Local CircuitID字段,表示本地链路ID。

IIH 抓包示例:

图:LAN网中IIH报文抓包示例

图:P2P中IIH报文抓包示例 IS-IS LSP报文格式

链路状态报文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有相同的报文格式。

LSP报文格式:

图:ISIS LSP报文格式

主要字段的解释如下:

PDU Length:PDU的总长度,以字节为单位。

Remaining Lifetime:LSP的生存时间,以秒为单位。

LSP ID:由三部分组成,System ID、伪节点ID(一字节)和LSP分片后的编号(一字节)。

Sequency Number:LSP的序列号。

Checksum:LSP的校验和。

P(Partition Repair):仅与L2 LSP有关,表示路由器是否支持自动修复区域分割。

ATT(Attachment):由Level-1-2路由器产生,用来指明始发路由器是否与其它区域相连。虽然此标志位也存在于Level-1和Level-2的LSP中,但实际上此字段只和Level-1-2路由器始发的L1 LSP有关。此字段有4bit,用来表明相连的区域所使用的度量方式。

从右至左这4位依次表示如下所示:

第4位:缺省度量; 第5位:时延度量; 第6位:代价度量; 第7位:差错度量。

OL(LSDB Overload):过载标志位。设置了过载标志位的LSP虽然还会在网络中扩散,但是在计算通过超载路由器的路由时不会被采用。即,对路由器设置过载位后,其它路由器在进行SPF计算时不会考虑这台路由器。当路由器内存不足时,系统自动在发送的LSP报文中设置过载标志位。

IS Type:生成LSP的路由器的类型。用来指明是Level-1还是Level-2路由器(01表示Level-1,11表示Level-2)。

LSP报文抓包示例:

图:LSP报文抓包示例 IS-IS SNP报文格式

时序报文SNP(Sequence Number PDUs)通过描述全部或部分数据库中的LSP来同步各LSDB(Link-State DataBase),从而维护LSDB。

SNP包括CSNP(Complete SNP,全时序报文)和PSNP(Partial SNP,部分时序报文),进一步又可分为L1 CSNP、L2 CSNP、L1 PSNP和L2 PSNP。

CSNP包括LSDB中所有LSP的摘要信息,从而可以在相邻路由器间保持LSDB的同步。在广播网络上,CSNP由DIS定期发送(缺省的发送周期为10秒);在点到点链路上,CSNP只在第一次建立邻接关系时发送。

SNP报文格式:

图:CSNP报文类型

主要字段的解释如下:

Source ID:发出SNP报文的路由器的System ID。 Start LSP ID:CSNP报文中第一个LSP的ID值。 End LSP ID:CSNP报文中最后一个LSP的ID值。

PSNP只列举最近收到的一个或多个LSP的序号,它能够一次对多个LSP进行确认,当发现LSDB不同步时,也用PSNP来请求邻居发送新的LSP。

图:PSNP报文格式 SNP报文抓包示例:

图:CSNP报文抓包示例

图:PSNP报文抓包示例

参考资料:华为HedEx文档



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3