RIP协议及距离向量算法
RIP协议
定义:RIP协议是一种分布式的基于距离向量的路由选择协议,是因特网的协议标准,最大的优点是简单
RIP协议要求网络中每一个路由器都维护从它自己到其他每一个目的网络唯一最佳距离记录
距离:通常称为"跳数",即从源端口到目的端口所经过的路由器个数,经过一个路由器跳数+1,特别的,从一路由器到直接连接的网络距离为1。RIP允许一条路由最多只能够包含15个路由器,因此距离为16表示网络不可达
根据上述对于距离的描述,我们可以得出:RIP协议只适用于小互联网
**特点:**当网络出现故障的时候,要经过较长的时间才能够将此信息传递给所有的路由器
RIP协议的具体过程
**交换的对象:**仅和相邻路由器交换信息
交换的信息:自己的路由表
交换的时间间隔:每30秒交换一次路由表信息,然后路由表根据新信息更新路由表。若超过180s没有收到邻居路由器的通告,则判定邻居没了,同时更新自己的路由表
路由器在刚刚开始工作的时候,只知道直接连接的网络距离为1,接着每一个路由器也只和数目非常有限的相邻路由器交换并更新路由信息
经过若干次更新后,所有的路由器都会知道本自治系统任何一个网络的最短距离和下一跳路由器的地址,即"收敛"
RIP数据报
距离向量算法
-
修改相邻路由器发来的RIP报文中的所有表项
对地址为X的相邻路由器发来的RIP报文,修改此报文中的所有项目:把下一跳字段中的地址改为X,并把所有的"距离"字段+1
-
对修改后的RIP报文中的每一个项目,进行以下步骤:
- 如果R1路由表中没有Net3,则把该项目填入R1路由表
- 如果R1路由表中已经有Net3,则查看下一跳路由器地址
- 如果下一跳是X,则用收到的项目替换源路由表中的项目
- 如果下一跳不是X,原来距离比从X走的距离远则更新,否则不做处理
-
如果180s还是没有收到相邻路由器X的更新路由表,则把X记为不可达的路由器,将距离设置为16
0s**还是没有收到相邻路由器X的更新路由表,则把X记为不可达的路由器,将距离设置为16
- 返回