难过的时候真的不想一个人忍着
第六章、增强型内部网关路由选择协议(
EIGRP
)
增强型内部网关路由选择协议
(EIGRP)
EIGRP
是距离矢量协议
7.3 EIGRP
的基本原理与实现
EIGRP
协议的
4
个部件
依赖于协议的模块(
PDM
)
可靠传输协议(
RTP
)
邻居发现和恢复
扩散更新算法(
DUAL
)
6.3.1
依赖于协议的模块(
Protocol-Dependent Moules
)
EIGRP
协议实现了
IP
协议、
IPX
协议、
AppleTalk
协议的模块,它可以担负起某一特定协议的路由选择任务。
每个单独模块的通信量被封装在他们各自的网络层协议中;
(简单一句话就是有了这个
PDM
,所有的协议都是可以运行
EIGRP
的)
6.3.2
可靠传输协议(
RTP
)
可靠传输协议(
RTP
)用来管理
EIGRP
数据包的发送和接收。
可靠的发送是指发送是有保障的而且数据包是有序的发送的。
有保障的发送是依赖
Cisco
的私有算法“可靠组播”,它使用的组播地址(
224.0.0.10
)。
每一个接受可靠组播数据包的邻居都会发送一个单播的确认数据包。
有序的发送是通过在每个数据包中包含两个序列号来实现的。
每一个数据包都包含一个由发送该数据包的路由器分配的序列号,这个序列号在每台路由器发送一个新的数据包时递增
1.
发送路由器会把最近从目的路由器收到的数据包的序列号放在该数据包中。
RTP
也可以使用不可靠的发送,不需要确认,而且在使用不可靠发送的
EIGRP
数据包中不包含序列号。
IP
头部的协议号
88
来标识
(
这边就可以看到他用的既不是
UDP
也不是
TCP)
Hello
:用于邻居发现和恢复。组播:
224.0.0.10
发送,不可靠的发送方式。
确认(
ACK
):不包含数据的
Hello
数据包。单播,不可靠的方式。
更新(
Update
):传递路由更新信息。在必要的时候传递必要的信息,只传递给需要的路由器。(这种更新是单播
+
组播的,一台就是单播,多台就是组播)必须使用可靠的发送方式
查询和答复:
DUAL
有限状态机用来管理他的扩散计算的。
查询消息可以使用组播方式或是单播方式发送,
回复消息总是单播方式发送的。
查询和回复总是可靠的发送方式
请求
数据包通过可靠的方式组播出去,而没有从邻居那里收到一个
ACK
数据包,数据包就会以单播方式被重新发送给那个没有响应的邻居。如果经过
16
次这样的单播重传还没有收到一个
ACK
数据包的话,那么这个邻居就会被宣告挂了
~~
从组播方式切换到单播方式之前等待一个
ACK
时间可以由组播流计时器指定。
后续单播之间的时间可以由重传超时指定(
RTO
)
组播流计时器和重传超时都可以通过平均回程时间(
SRTT
)来计算
SRTT
是一个用来衡量路由器发送
EIGRP
数据包到邻居和从邻居那里接收到该数据包的确认花费的平均时间
这个总结一下
1、
EIGRP
用的
RTP
(可靠传输协议)
IP
的
88
号
2、
传输用的地址
224.0.0.10
3、
可靠的用的是确认数据包,有序的用的是
2
个序列号(一个是发的路由器给的一个序列号,一个是目的路由器收的数据包的序列号最近)
4、
EIGRP
几种数据包的分析
HELLO
邻居发现和恢复
组播发送
不可靠发送
ACK
确认
单播发送
不可靠发送
Update
传递路由更新(按需给)
单播
/
组播
可靠
查询
/
答复
查询(单播
/
组播)
答复(单播)
可靠
5、
时间的计算
对于可靠发送来说的
组播没有等到
ACK
,发
16
次单播
组播
---
第一次单播(组播流计时器)
16
次单播之间(重新换超时
RTO
)
这两个计时器用
SRTT
来计算(衡量路由器发送
EIGRP
数据包到邻居和从邻居那里接收到该数据包的确认所花费的是有时间