第一.动态选路
当相邻的路由器之间进行通信,以告诉对方每个路由器当前所连接的网络,这时就出现了动态选路。路由器之间必须通过选路协议进行通信。
动态选路协议,它用于路由器间的通信。路由器上有一个进程称为路由守护程序(routing daemon),它运行路由协议,并与其相邻的一些路由器进行通信。动态选路改变的不是IP层中的选路方式,它是路由器之间的通信,改变的是路由器中的路由表内容。
第二.RIP:选路信息协议
每个自治系统可以选择该自治系统中各个路由器之间的选录协议,这种协议我们称作内部网关协议IGP或域内选路协议IRP,最常用的IGP是路由信息协议RIP。
RIP协议是包含在UDP协议中的(是使用UDP协议传输),其报文格式为:
命令字段:包含了6个命令,请求(1),应答(2),舍弃不用(3和4)等;
版本字段:通常为1,也有第二版的RIP;
地址系列:其长度为20byte,包含了IP地址以及相应的度量;
一个RIP协议正常运行时候经过的步骤:
1)初始化:启动一个路由守护程序,在网络上以广播的形式发送一个请求报文,其目的端口号通常设定为520。这种请求报文的命令字段为1,但地址地址系列字段设置为0,而度量字段设置为16,这是一个要求另一端完整路由表的特殊请求报文;
2)接受到请求:如果接受到的请求是上文提到的特殊请求,那么路由器就将完整的路由表发送给请求者。否则就处理请求中的每一个表项;
3)接受到相应:使相应生效,可能会更新路由表(增加新的表项,对已有表项修改,删除已有表项);
4)定期选路更新:每隔30秒,所有或部分路由器会将其完整的路由表发送给相邻路由器,发送的形式可以是广播形式或是点对点链路形式;
5)触发更新:每当一条路由的度量发生变化时,就对它进行更新;
每条路由都有与之相关的定时器,如果运行RIP的系统发现一条路由在3分钟内未更新,就将该路由的度量设置为无穷大(16),并标注为删除;
度量
RIP所使用的度量是以跳(hop)计算的,所有直接连接的接口其跳数都为1.通过一个网络或是一个路由器其跳数增加1;这样我们也就知道了,跳数最小的路由就是我们要选择的的路由;
跳数的最大值是15,这意味着RIP协议最多只能通过15个路由或则是网络,这就限制了网络的大小;