EIGRP-5-EIGRP数据包格式
EIGRP数据包直接承戟在IP数据包中.协议号为88。EIGRP数据包的最大长度取决于具体接口上的最大IP MTU设置——通常完整IP数据包为1500字节.其中1480字节可以用于 EIGRP数据包。
下图和下表描述了EIGRP数据包的通用格式。每个EIGRP数据包携带20字节的头部.头部之后的字节数不定.在下图中表示为TLV.意思是“类型-长度-值”这三个参数的组合。这些TLV可以携带多种信息.其中包括EIGRP和TLV版本、K值、保持计时器、实现可靠组播传输的控制信息.以及最重要的路由可靠性消息。考虑到RTP协议的特殊性.这里不对RTP头部进行过多描述。只要知道标记(Flag)、序列号和确认号字段在EIGRP中提供了大多数RTP功能;其他功能是使用特定的TLV实现的。为了在一定程度上实现简化.整个EIGRP数据包头部也可以被看做是RTP头部。
TLV (类型-长度-值)是用来在一个数据报中.存储并传输不同类型信息的格式要求;每个TLV中都包含发送方希望通告的一部分信息。并不只有EIGRP数据包中包含TLV; 在其他协议中.TLV也是很长见的.比如IS-IS、CDP和LLDP等。
由名称可知.TLV这个格式中包含了三部分内容:类型、长度和值。类型和长度字段 的大小是固定的(通常是1〜4字节).值字段的大小是可变的。
•类型:使用数值代码来表示值字段中存储的信息类型。
•长度:类型、长度和值这三个字段的总大小。需要注意的是.有些其他协议(不是 EIGRP)在长度字段中只记录值字段的大小。
•值:字节数可变的字段.包含真实信息。
每个内部路由TLV和外部路由TLV中都包含一个路由条目。更新包、査询包、响应包、 SIA査询包和SIA响应包中包含至少一个这样的TLV.用来通告或査询一个具体的网络。这些数据包中的内部和外部路由TLV列表或数组(矢量).构成fEIGRP的本质:距离矢量。 每个TLV中都通告一个具体的网络和去往这个网络的距离.多个TLV就构成了这种距离的矢量。
在IETF官方网站中发布的EIGRP互联网草案中可以査询到EIGRP中每个TLV的格式和用 途.该草案名为(draft-savage-eigrp)。