计算机网络-16-网络层之rip协议
RIP(Routing Information Protocol,路由信息协议)是一种内部网关协议(IGP),是一种动态路由选择协议,用于自治系统(AS)内的路由信息的传递。RIP协议基于距离矢量算法(DistanceVectorAlgorithms),使用“跳数”(即metric)来衡量到达目标地址的路由距离。这种协议的路由器只关心自己周围的世界,只与自己相邻的路由器交换信息,范围限制在15跳(15度)之内,再远,它就不关心了。RIP应用于OSI网络七层模型的应用层。各厂家定义的管理距离(AD,即优先级)如下:华为定义的优先级是100,思科定义的优先级是120。
距离向量算法,实际中较少使用。
默认,RIP使用简单的度量:通往目的站点所需经过的链路数。取值为1~15,数值16表示无穷大。
使用UDP的520端口发送和接收RIP分组。
RIP 每隔30秒以广播形式发送一次路由信息,在邻居之间互传。
防止广播风暴:后续分组做随机延时后发送。
如果一个路由在180s内未被更新,相应的距离设置为无穷大:16,并从路由表中删除该表项。
RIP分组分为:
请求分组
响应分组
初始时R1到C网络的跳数是1,路由表中就记录着1,R2经过R1再到C共两跳,因此记录跳数是2.
现在:
R1到C的路径被剪断了,R1可以感受到,于是在自己的路由表中更新为16,表示"无穷大",不可达。
这是个坏消息,坏消息传得慢。现在看如何慢。
R1准备在下一个30秒内告诉R2这个坏消息,但是R2先把自己的所有信息都告诉了R1,R1一看咦?R2到C的跳数是2,我到R2就一跳,现在虽然我不能直接到C了,那么绕道R2不就可以了吗?说干就干,于是把自己到C的跳数改为3.好了,真相被谎言掩盖了。开始了二者之间的互捧臭脚时间。
R1向R2这个好基友坦白所有的信息,R2看到R1到C的距离变为3了,R2知道自己是经过R1才到达的C,于是毫不犹豫的改为4.下一次再把全部信息告诉R1,R1收到一看,咋回事啊,怎么又加一跳了呢!R2那边发生了什么?但是还是得根据规则,毫不犹豫的修改到C的距离跳数。就这样不断增加,直到都为16,才恍然大悟,原来大家都到不了了啊。
特点: