RIP协议综述
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
RIP协议综述
文档编号:00-6201-100
当前版本:1.0.0.0
创建日期:2011-11-21
编写作者:ganjingwei
RIP协议总结
前言 (3)
关于此文档 (3)
参考资料 (3)
第一章RIP协议报文格式 (4)
1.1 报文位置 (4)
1.2 RIP版本1报文 (4)
1.3 RIP版本2报文 (5)
1.4 带有MD5验证字段的RIPv2报文 (6)
1.5 带有明文验证字段的RIPv2报文 (7)
第二章动态学习过程 (8)
2.1 请求与应答 (8)
2.1.1 初始化 (8)
2.1.2 接收到request (8)
2.1.3 接收到response (8)
2.2 更新 (9)
2.2.1定期选路更新 (9)
2.2.2触发更新 (9)
2.3 其他机制与策略 (10)
2.3.1 水平分割 (10)
2.3.2 定时删除 (10)
2.3.3 RIP1与RIP2的区别 (10)
2.3.4 路由信息验证 (11)
前言
关于此文档
此文档是本人这段时间内学习RIP协议相关知识,总结并且整理出来的文档。供大家参考。
本文档描述网络协议相关知识,各章节说明如下:
1 前言,即此章节;
2 报文格式;
3 动态学习过程
参考资料
网络资源。
RIP协议以RFC1058[Hedrick1988a]为准。
第一章RIP协议报文格式
1.1 报文位置
图1-1 RIP报文封装在UDP报文中
RIP报文包含中在UDP数据报中,如图1-1所示。
1.2 RIP版本1报文
图1-2 RIP版本1报文
命令字段为1表示请求,2表示应答。还有两个舍弃不用的命令(3和4),两个非正式的命令:轮询(5)和轮询表项(6)。请求表示要求其他系统发送其全部或部分路由表。应答则包含发送者全部或部分路由表。
版本字段通常为1,而第2版RIP将此字段设置为2。
紧跟在后面的20字节指定地址系列(address family)(对于IP地址来说,其值是2)、IP地址以及相应的度量。在本节的后面可以看出,RIP的度量是以跳计数的。
采用这种20字节格式的RIP报文可以通告多达25条路由。上限25是用来保证RIP报文的总长度为20×25+4=504,小于512字节。由于每个报文最多携带25个路由,因此为了发送整个路由表,经常需要多个报文。
1.3 RIP版本2报文
图1-3 RIP版本2报文
RFC1388[Malkin1993a]中对RIP定义进行了扩充,通常称其结果为 RIP-2。这些扩充并不改变协议本身,而是利用图1-2中的一些标注为“必须为0”的字段来传递一些额外的信息。如果RIP忽略这些必须为0的字段,那么,RIP和RIP-2可以互操作。
图1-3重新给出了由RIP-2定义的图。对于RIP-2来说,其版本字段为2。
选路域(routing domain)是一个选路守护程序的标识符,它指出了这个数据报的所有者。在一个Unix实现中,它可以是选路守护程序的进程号。该域允许管理者在单个路由器上运行多个RIP实例,每个实例在一个选路域内运行。
选路标记(routing tag)是为了支持外部网关协议而存在的。它携带着一个
EGP和BGP的自治系统号。
每个表项的子网掩码应用于相应的IP地址上。下一站IP地址指明发往目的IP地址的报文该发往哪里。该字段为0意味着发往目的地址的报文应该发给发送RIP报文的系统。
RIP-2提供了一种简单的鉴别机制。可以指定 RIP报文的前20字节表项地址系列为0xffff,路由标记为2。表项中的其余16字节包含一个明文口令。
最后,RIP-2除了广播(第12章)外,还支持多播。这可以减少不收听RIP-2报文的主机的负载。
下一条地址可以指定,也可以为0。当收到下一条地址为0的应答包时,默认把发出这个包的地址作为下一条地址。
1.4 带有MD5验证字段的RIPv2报文
图1-4 带有MD5验证字段的RIPv2报文
普通的RIPv2报文格式为一个4字节的报头和包含数据的以20字节为单元的数组。当验证能被开启时,有着同样的报头及它的内容,但是20字节的验证报文头被加在RIP报文头之后,路由信息的数据之前。这20字节分别包含:2字节的首部表示字段(0xffff表示这不是一个路由信息,而是验证字段),2字节的算法类型(3表示md5验证),2字节的偏移量(作为算法输入),1字节的密钥ID,1字节的密文长度,4字节序列号(只能递增),8字节的用0填充的字
段。
如果算法类型是md5,那么在RIP路由信息的字段全部排列完成以后,还要加上20字节的密文字段。这个字段分别包含:首部0xffff,2字节固定值0x01,16字节密文数据。
1.5 带有明文验证字段的RIPv2报文
图1-5 明文验证的RIPv2报文
明文报文类似md5验证报文,只是只在RIP报头后跟20字节的明文验证字段。
第二章动态学习过程
2.1 请求与应答
2.1.1 初始化
在启动一个路由守护程序时,它先判断启动了哪些接口,并在每个接口上发送一个请求报文,要求其他路由器发送完整路由表。在点对点链路中,该请求是发送给其他终点的。如果网络支持广播的话,这种请求是以广播形式发送的。目的 UDP端口号是520(这是其他路由器的路由守护程序端口号)。
这种请求报文的命令字段为1,但地址系列字段设置为0,而度量字段设置为16。这是一种要求另一端完整路由表的特殊请求报文。
2.1.2 接收到request
如果这个请求是刚才提到的特殊请求,那么路由器就将完整的路由表发送给请求者。否则,就处理请求中的每一个表项:如果有连接到指明地址的路由,则将度量设置成我们的值,否则将度量置为16(度量为16是一种称为“无穷大”的特殊值,它意味着没有到达目的的路由)。然后发回响应。
2.1.3 接收到response
当接收到响应报文时,使响应生效,可能会更新路由表。可能会增加新表项,对已有的表项进行修改,或是将已有表项删除。过程如图2-1所示。