EIGRP数据包格式

EIGRP协议基于IP协议,协议号为88。数据包的最大长度可以是传输该数据包接口IP最大传输单元(MTU)的大小——通常为1500字节。紧跟在IP头部后面的就是EIGRP头部,EIGRP头部后面的是类型/长度/数值(type/length/value ,TLV)这三个参数的不同组合。这些TLV不仅携带路由条目的信息,而且提供多个字段用来管理DUAL算法的处理。组播的先后次序和IOS软件版本。

53014-plwviyf94ji.png

版本(version)——指出该EIGRP进程的具体版本。

操作码(opcode)——指出EIGRP数据包的类型。

91514-7crlj3qt6vq.png

校验和(checksum)——标准的IP校验和。它是基于除了IP头部的整个EIGRP数据包计算的。

标记(Flag)——目前包括2个标记。大部分的为设置为INIT,即0x0000 0001,指出附加的路由条目是新的邻居关系的开始。第2个标记设置为0x0000 0002,表示条件接收位,并使用在一个私有的可靠组播算法中。

序列号(sequence)——是一个用在RTP中的32位序列号。

确认序列号(ACK)——是本地路由器从邻居处接收到的最新的32位序列号。一个包含非零ACK字段的hello数据包将被看作是一个ACK数据包,而不看作hello数据包。注意,如果数据包本身是单播的,这里的ACK字段只能是非零的。因为确认数据包从来都不是组播发送的。

自治系统号(autonomous system number)——指定一个EIGRP域的标识号。
跟在EIGRP头部后面的是TLV字段,TLV类型:

一般TLV类型
0x001——EIGRP参数
0x003——序列
0x004——软件版本
0x005——下一组播序列

IP特有TLV类型
0x0102——IP内部路由
0x0103——IP外部路由

Apple talk 特有TLV类型

IPX特有TLV类型

一般TLV字段
这些TLV字段可以携带EIGRP的管理信息而不需要指定任何一个路由协议。携带参数的TLV用来传递度量权重和保存时间。

22114-qqbnaj3rbe.png

序列、软件版本、下一组播序列TLV都是用于CISCO的私有可靠组播算法的。
IP特有TLV字段
每一个内部路由或外部路由TLV都只包含一个路由条目,而每个更新、查询、答复数据包都包含至少一个路由TLV字段。不论是内部路由还是外部路由都包含了路由的度量信息。
1) 内部路由TLV字段
内部路由是在EIGRP自治系统内部可以到达目的地的路径。

01523-b9f3j2fycw4.png

下一跳(next hop)——下一跳的IP地址。

时延(delay)——是指所配置的以10微妙为单位的时延总和。0XFFFFFFFF的延迟表示一个不可达网络。

带宽(bandwidth)——用2560000000除以沿着路由的所有接口所配置的最小带宽。

MTU——是指在到达目的地路径上的所有链路中最小的MTU值。

跳数(Hop count)——是一个在0X01到0XFF之间的数字。表示到达目的地路由的跳数。路由器将通告与之直连网络的跳数为0,后继的路由器将记录并通告相对于下一跳路由器的跳数。

可靠性(reliability)——是一个在0X01到0Xff之间的数字。用来反映沿着到达目的地的路由器上接口的出站误码率的总和。每5min通过一个指数的加权平均来计算。0XFF表示100%可靠。

负载(load)——是一个0X01到0XFF之间的数字,用来反映沿着到达目的地的路由上接口的出站负载总和,每5miin通过一个指数的加权平均数来计算。0x01表示最小负载。

前缀长度(prefix length)——指出一个地址掩码中的网络位的个数。

目的地址(destination)——表示路由的目的地址。该字段和前缀字段之和必须位32位的倍数(不足部分用0填充)。
2)外部路由TLV字段

31952-e4f8mx4hbmo.png

源路由器(originating router)——是一个IP地址,或者是重发布外部路由到EIGRP自治系统的路由器ID。

源自治系统号(originating AS number)——是指始发路由的路由器所在自主系统号。

Arbitrary tag ——可以用来一组路由映射的标记。

外部协议度量(external protocol metric)——这是外部协议的度量。

外部协议ID(external protocol ID)——用来表示外部路由是从哪一个协议学习到的。
0x01——IGRP
0x02——EIGRP
0x03——静态路由
0x04——RIP
0x05——hello
0x06——OSPF
0x09——BGP
0x0B——直连

标记(flags)——目前仅设置了两个,0x01表示路由为外部路由,0x02表示路由为一个候选缺省路由。
————————————————
版权声明:本文为CSDN博主「魏建军55555」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yueyadao/java/article/details/87961344

文章最后更新时间为:2020 年 07 月 17 日 17:21:19

添加新评论