isis报文格式

IS-IS的PDU格式

1. PDU头格式

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

图1-5 PDU格式

 

2. 通用报头格式

所有的PDU都有相同的通用报头格式,如图1-6所示。

图1-6 PDU头格式

 

主要字段的解释如下:

·     Intradomain Routing Protocol Discriminator(域内路由协议鉴别符):设置为0x83。

·     Length Indicator(长度标识符):PDU头部的长度(包括通用报头和专用报头),以字节为单位。

·     Version/Protocol ID Extension(版本/协议标识扩展):设置为1(0x01)。

·     ID Length(标识长度):NSAP地址和NET的ID长度。

·     R(Reserved,保留):设置为0。

·     PDU Type(PDU类型):详细信息请参考表1-1

·     Version(版本):设置为1(0x01)。

·     Maximum Area Address(最大区域地址数):支持的最大区域个数。

表1-1 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

 

3. Hello

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

它们的报文格式有所不同。广播网中的Hello报文格式如图1-7所示(浅蓝色部分是通用报文头)。

图1-7 L1/L2 LAN IIH格式

 

主要字段的解释如下:

·     Reserved/Circuit Type:高位的6比特保留,值为0。低位的2比特表示路由器的类型(00保留,01表示L1,10表示L2,11表示L1/2)。

·     Source ID:发送Hello报文的路由器的System ID。

·     Holding Time:保持时间。在此时间内如果没有收到邻居发来的Hello报文,则中止已建立的邻居关系。

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

·     Priority:选举DIS的优先级。

·     LAN ID:包括System ID和一字节的伪节点ID。

点到点网络中的Hello报文格式如图1-8所示(浅蓝色部分是通用报文头)。

图1-8 P2P IIH格式

 

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

4. LSP报文格式

LSP用于交换链路状态信息。LSP分为两种:Level-1 LSP和Level-2 LSP。Level-1路由器传送Level-1 LSP,Level-2路由器传送Level-2 LSP,Level-1-2路由器则可传送以上两种LSP。

两类LSP有相同的报文格式,如图1-9所示(浅蓝色部分是通用报文头)。

图1-9 L1/L2 LSP格式

 

主要字段的解释如下:

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

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

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

·     Sequence Number:LSP的序列号。

·     Checksum:LSP的校验和。

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

·     ATT(Attach):连接位。由L1/L2路由器产生,但仅与L1 LSP有关,表示产生此LSP的路由器(L1/L2路由器)与多个区域相连接。

·     OL(Overload):过载标志位。表示本路由器因内存不足而导致LSDB不完整。其它路由器在得知这一信息后,就不会再利用这台路由器转发需要经过它传送的数据流,但到此路由器直连地址的报文仍然可以被转发。如图1-10所示,假设正常情况下Router A到Router C的报文都是经过Router B转发,但如果Router B的OL位置1,则Router A会认为Router B的路由不完整,从而将报文通过Router D、Router E转发给Router C,但到Router B直连地址的报文不受影响。

图1-10 LSDB Overload示意图

 

·     IS Type:生成LSP的路由器的类型。

5. SNP格式

SNP(Sequence Number PDUs,时序报文)用于确认邻居之间最新接收的LSP,作用类似于确认(Acknowledge)报文,但更有效。

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在邻居关系建立时会发送,只发送一次。

CSNP的报文格式如图1-11所示(浅蓝色部分是通用报文头)。

图1-11 L1/L2 CSNP格式

 

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

PSNP的报文格式如图1-12所示:

图1-12 L1/L2 PSNP格式

 

6. CLV

PDU中的变长字段部分是多个CLV(Code-Length-Value)三元组。其格式如图1-13所示:

图1-13 CLV格式

 

不同PDU类型所包含的CLV是不同的,如表1-2所示。

表1-2 PDU类型和包含的CLV名称

CLV Code

名称

所应用的PDU类型

1

Area Addresses

IIH、LSP

2

IS Neighbors(LSP)

LSP

4

Partition Designated Level-2 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

 

其中,Code值从1到10的CLV在ISO 10589中定义(有2类未在上表中列出),其它几种CLV在RFC 1195中定义。

 

参考:H3C官网

 

 

 

获取更多学习资料,欢迎加入技术讨论群:662736393

如有问题,可私信或联系QQ:167748928

 

如果你看到了这里,百哥想请你帮个小忙:

1.帮我点赞,喜欢,收藏三连,方便你最快找到百哥,也让更多的人真正爱上ICT技术,学好ICT技术

2.关注百哥,这是一个会陪你至少10年的技术号,定期分享ICT技术。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值