网络层:RIP协议基于UDP协议

1、简介

RIP(Routing Information Protocol,路由信息协议)是一种内部网关协议(IGP),是一种动态路由选择协议,用于自治系统(AS)内的路由信息的传递。

RIP协议基于距离矢量算法(DistanceVectorAlgorithms),使用“跳数”(即metric)来衡量到达目标地址的路由距离。

这种协议的路由器只关心自己周围的世界,只与自己相邻的路由器交换信息,范围限制在15跳(15度)之内,再远,它就不关心了。

2、RIP协议报文格式

命令:8位,1表示请求,2表示应答,3和4舍弃不用,5和6表示非正式的轮询命令;
版本:8位,包括RIP和RIP2,1表示RIP,2表示RIP2;
地址系列:16位,对于TCP/IP这个值固定为2;
IP地址,距离:这两个前面已经提过,很熟悉了应该。

Notice:一个RIP报文中,最多可包含25个路由,这是为了保证RIP报文的总长度小于512B。可以计算下,一个RIP报文最多占用4B+25*20B=504B。所以每个RIP报文最多只能携带25个路由(路由只的是路由项,不是路由器),所以,为了发送整个路由表,通常需要发送多个RIP报文。

每过30s所有或部分路由器会将其完整路由表发送给相邻路由器 ;每当一条路由的距离发生变化时,就对它进行更新,不需要发送完整路由表,而只需要发送哪些变化的表项。

RIP协议是基于路由向量选择的非常简单的协议,从上面的RIP报文中,我们可以很明显地看出,RIP没有子网地址的概念,若某个IP地址的主机号不为0,RIP无法区分非0部分是否包含子网号,RIP2则克服了这一缺陷。

3、RIP2协议报文格式

RIP2对RIP的改进在于,充分利用了很多全0的字段。

选路域:指明了该数据报的所有者,该域是一个选路守护程序的标识符PID;
选路标记:为了支持EGP,携带着一个EGP和BGP的自治系统号;
子网掩码:使得RIP2支持无分类编制和CIDR。
下一站IP地址:表示下一跳地址。若两个自治系统共享一个网络(如主干网),则这个字段特别有用。这个报文可以定义分组发往的路由器,不管这个路由器是在同样的自治系统或在另一个自治系统。该字段为0时,表示发往目的地址的报文应该发给发送RIP报文的系统。

发表回复