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消息格式
+----------------------------------------------+------------
| 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 | |
+----------------------------------------------+------------
| 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 Hello消息格式各字段含义
字段 | 长度 | 含义 |
---|---|---|
Intradomain Routing Protocol Discriminator | 1字节 | 域内路由选择协议鉴别符,设置为0x83。 |
Length Indicator | 1字节 | PDU头部的长度(包括通用头部和专用头部),以字节为单位。 |
Version/Protocol ID Extension | 1字节 | 版本/协议标识扩展,设置为1(0x01)。 |
ID Length | 1字节 | NSAP地址或NET中System ID区域的长度。值为0时,表示System ID区域的长度为6字节。值为255时,表示System ID区域为空(即长度为0)。 |
R | 1比特 | 保留比特位,设置为0。 |
PDU Type | 5比特 | PDU的类型。
|
Version | 1字节 | IS-IS版本号,设置为1(0x01)。 |
Reserved | 1字节 | 保留,设置为0 (0x00)。 |
Maximum Area Address | 1字节 | 支持的最大区域个数。设置为1~254的整数,表示该IS-IS进程实际所允许的最大区域地址数;设置为0,表示该IS-IS进程最大只支持3个区域地址数。 |
Reserved/Circuit Type | 1字节 | 高位的6比特保留,值为0。低位的2比特表示路由器的类型(01表示L1,10表示L2,11表示L1/L2)。 |
Source ID | ID Length | 发出Hello报文的路由器的System ID。 |
Holding Time | 2字节 | 保持时间。在此时间内如果没有收到邻居发来的Hello报文,则中止已建立的邻居关系。 |
PDU Length | 2字节 | PDU的总长度,单位是字节。 |
Priority | 7比特 | 选举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 | 1字节 | 本地链路ID。该字段只在P2P网络的Hello消息(P2P IIH消息)携带;广播网中的Hello消息(LAN IIH消息)没有此字段。 |
Variable Length Fields | 变长 |
由多个CLV(Code-Length-Value)三元组组成。CLV也称为TLV(Type-Length-Value)。不同PDU类型所包含的CLV是不同的,其中,Code值从1到10的CLV在ISO 10589中定义(有2类未在上表中列出),其他几种CLV在RFC 1195中定义。 |
三、广播网络中的IS-IS Hello (LAN IIH)消息示例
Frame 1: 1514 bytes on wire (12112 bits), 1514 bytes captured (12112 bits)
Arrival Time: Mar 9, 2005 20:31:47.369210000
Epoch Time: 1110371507.369210000 seconds
[Time delta from previous captured frame: 0.000000000 seconds]
[Time delta from previous displayed frame: 0.000000000 seconds]
[Time since reference or first frame: 0.000000000 seconds]
Frame Number: 1
Frame Length: 1514 bytes (12112 bits)
Capture Length: 1514 bytes (12112 bits)
[Frame is marked: False]
[Frame is ignored: False]
[Protocols in frame: eth:llc:osi:isis]
[Coloring Rule Name: Broadcast]
[Coloring Rule String: eth[0] & 1]
IEEE 802.3 Ethernet
Destination: ISIS-all-level-2-IS's (01:80:c2:00:00:15)
Address: ISIS-all-level-2-IS's (01:80:c2:00:00:15)
.... ...1 .... .... .... .... = IG bit: Group address (multicast/broadcast)
.... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
Source: HuaweiTe_1d:64:0d (00:e0:fc:1d:64:0d)
Address: HuaweiTe_1d:64:0d (00:e0:fc:1d:64:0d)
.... ...0 .... .... .... .... = IG bit: Individual address (unicast)
.... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
Length: 1500
Logical-Link Control
DSAP: ISO Network Layer (0xfe)
IG Bit: Individual
SSAP: ISO Network Layer (0xfe)
CR Bit: Command
Control field: U, func=UI (0x03)
000. 00.. = Command: Unnumbered Information (0x00)
.... ..11 = Frame type: Unnumbered frame (0x03)
ISO 10589 ISIS InTRA Domain Routeing Information Exchange Protocol
Intra Domain Routing Protocol Discriminator: ISIS (0x83)
PDU Header Length: 27
Version (==1): 1
System ID Length: 6
PDU Type : L2 HELLO (R:000)
Version2 (==1): 1
Reserved (==0): 0
Max.AREAs: (0==3): 3
ISIS HELLO
Circuit type : Level 1 and 2, reserved(0x00 == 0)
System-ID {Sender of PDU} : 0050.0600.7008
Holding timer: 30
PDU length: 1497
Priority : 64, reserved(0x00 == 0)
System-ID {Designated IS} : 0050.0600.7008.02
Area address(es) (4)
Area address (3): 00.0001
IP Interface address(es) (4)
IPv4 interface address: 10.6.7.8 (10.6.7.8)
Protocols Supported (1)
NLPID(s): IP (0xcc)
Padding (255)
Padding (255)
Padding (255)
Padding (255)
Padding (255)
Padding (168)
发表评论