(1)、以跳数为代价单位;
(2)、每个路由器周期性的与相邻路由器交换若干
(3)相邻路由器得到路由信息后,按照距离矢量算法(最短路径原则,实现最佳性),建立或更新路由表。
步骤1:初始化
路由器启动时,对每个直接相连的网络生成一个路由表项,跳数为0。
步骤2:路由信息交换
每个路由器周期性向相邻路由器报告自己的路由表,以二元组形式
步骤3:路由表更新-依据距离矢量算法
步骤4:路由表稳定
经过一定时间,路由表达到稳定,称为算法达到收敛状态。
RIP基于距离矢量路由算法而开发的。RIP协议适用于中小型网络,有RIP-1和RIP-2。
(1)、 优点: 实现比较简单,所需CPU和内存开销少
(2)、缺点:
(1)触发更新
(2)、水平分割
路由向一个接口发送路由更新报文中不包含该接口获取的路由信息。
(1)、源于一个linux下一个rounted应用程序
(2)、RIP协议最大有15跳,16跳为不可达(等价无穷大).
(3)、采用跨层设计思想:RIP协议工作在应用层,传输层调用UDP(UDP端口号为520)
(1)、请求(request):向相邻路由器请求路由信息;
(2)、响应(response)更新:向相邻路由器通告本地路由信息;
(1)路由器启动时,RIP协议在接口上发送request报文, 等待相邻路由器的request和response,并予以应答;当收到response时,利用距离矢量算法进行路由更新.
(2)路由器周期性发送response,定期通告本地路由信息给邻居路由器。
(3)一个路由器路由信息发生变化,会主动发送response给邻居路由器。
为了使路由器中路由信息反映当前网络实际连通状况,确保路由信息的时效性,使用了三个定时器:
(1)、更新定时器
* 用于触发路由器周期性发送路由更新消息(response),基准时间为30秒;
* 为了防止所有路由器同时发送response,RIP规定在基准时间上随机加一个5秒的偏移.时间可在[25,35]之间随机选取
(2)、过期定时器
* 每当增加或更新一条路由记录时,协议模块会自动启动一个过期定时器(生存期)。
* 如果超时(180秒),没有收到该路由记录的任何信息(更新或确认),该路由项标记为无效(将跳数设置为16).
(3)、刷新定时器
* 一条路由记录失效后,为了向相邻路由器通告此消息,并不立即删除,而要保存一段时间.这个时间由刷新定时器控制(120秒).
* 又称为垃圾回收定时器(garbage collection timer)
1、仅和所有相邻的路由器交换信息。
2、交换的路由信息是当前本路由器所知道(除了从待交换方向的邻居路由器学习到的路由信息)的全部路由信息,即自己的路由表。
3、路由信息发送时机
* 请求交换:request, reponse;
* 周期交换:按固定的时间间隔周期交换路由信息,例如,每隔 30 秒;
*触发交换:路由信息发送变化时自动告知邻居路由器。