1、RIP协议
RIP是一种基于距离向量的路由选择协议,是因特网的协议标准,最大的优点是简单。
RIP协议要求网络中每一个路由器都维护从它自己到其他每一个目的网络的唯一最佳距离记录(即一组距离)
距离: 通常为“跳数”,即从源端口到目的端口所经过的路由器个数,经过一个路由器,跳数+1。特别的,从一个路由器到之间连接的网络距离为1。RIP允许一条路有最多只能包含15个路由器,因为距离为16表示网络不可达。所以RIP只适用于 小型互联网。
示例,下面一个网络,网络的中 R 2 R_2 R2的路由表如下所示:
2、RIP协议中的“交换”机制
每个路由器仅和自己相邻的路由器交换信息。
路由器交换的信息是自己的路由表。
每30秒交换一次路由信息,然后路由器根据新信息更新路由表。若超过180s没收到邻居路由器的通告,则判定邻居没了,并更新自己路由表。
路由器刚开始工作时,只知道直接连接的网络的距离(距离为1),接着每一个路由器也只和数目非常有限的相邻路由器交换并更新路由信息;
经过若干次更新之后,所有路由器最终都会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器的地址,即完成了收敛。
3、距离向量算法
1) 修改相邻路由器发来的RIP报文中的所有表项,对地址为X的相邻路由器发来的RIP报文,修改此报文中的所有项目:把下一跳字段中的地址改为X,并把所有的“距离”字段+1
2) 对修改后的RIP报文中的每一个项目,进行以下步骤:
(1) R1路由表中若没有Net3,则把该项目填入R1路由表;
(2) R1路由表中若有Net3,则查看下一跳的地址:
若下一跳是X,则用收到的项目替换源路由表中的项目;
若下一跳不是X,原来距离比从X走的距离远则更新,否则不作更新。
3) 若180s还没收到相邻路由器X的更新路由表,则把X记为不可达路由器,即把距离设置为16;
4) 返回。
距离向量算法例题:
4、RIP协议的报文格式
RIP协议具有好消息传递的快,坏消息传递的慢的特点。