文档介绍:《数据通信与计算机网络(第二版)》电子教案
笫十八讲
路由协议和IP协议
1
本讲内容
第七章网络层
路由协议
路由信息协议RIP,RIP收敛问题
开放最短路径优先协议OSPF*
边界网关协议BGP*
IP协议
IP地址
IP子网和IP转发
IP协议格式
其它网络层协议
*是要求同学了解的,这些内容在本电子教案中并未讲解而是要求同学自己阅读教材。
2
路由信息协议RIP
路由器(Router)/网关(Gateway)
网络层的网络互连设备
主要功能是进行路由选择
互连的网络中的路由选择和单个网络中的路由选择类似,只是要复杂得多。
当一个网络中的主机要给另外一个网络中的主机发送分组时,它首先把分组送给同一网络中用于网间连接的路由器,路由器根据目的地址信息,选择合适的路由,把该分组传递到目的网络用于网间连接的路由器中,然后通过目的网络中内部使用的路由协议,该分组最后被递交给目的主机。
3
路由信息协议RIP
路由信息协议RIP(Routing Information Protocol)是一个简单的距离向量路由协议。
RIP有两种工作模式
主机采用被动(passive)模式,只接收RIP消息
不会传递自己的路由表中的信息给别的路由器,只是静静地倾听其它RIP路由器广播的路由信息,并且根据收到的路由信息更新自己的路由表。
路由器采用主动(active)模式,发送和接收RIP消息
定期把路由信息传递给其它RIP路由器,并且根据收到的RIP消息来更新自己的路由表。
4
RIP路由器上的路由表项
目的地的IP地址
到目的地的路径的距离的度量
到目的地的路径的下一个路由器的IP地址(如果目的地是直接连接的,不需要这个字段)
路由改变标志(指示这条路由信息是否最近被改变过)
和这条路由有关的一些计时器
路由信息协议RIP
5
RIP采用的距离度量是一种非常简单的测量到目的地的距离的方式:站点计数度量(或称站跳数、段跳数,hop)。
路由器把到它直接连接的网络的距离定义为1,如果距离为n,表示它到达目的地途中要经过n个路由器,即:距离给出了该路由要经过的路由器的个数。
RIP在具体实现时常常允许管理人员对这些慢速的网络指定一个更大的距离度量值(>1)。
路由信息协议RIP
6
RIP工作过程
RIP路由器初始化时,会把那些到达它所直接连接的网络的路由加载进来(距离一般被设置为1)。
一般RIP的具体实现也允许管理人员增加新的路由,比如说不是通过RIP协议了解到的路由。
每个RIP路由器每隔30秒广播一个路由消息。
RIP路由器也可能通过发送Request消息来询问别的路由器有关某些路由或者所有路由的信息,比如当一个主机启动后,可能要求相邻的RIP路由器传递路由表中的所有信息。
路由信息协议RIP
7
当RIP路由器R从路由器G收到一个路由消息时,它检查该消息中包含的每一条到目的地D的路由,其中距离为cost(G,D),把该路由与自己路由表中到同一目的地D的路由相比较。
如果路由表中不存在,在路由表中增加一条路由:到目的地D的下一个路由器跳段的地址为G,距离为cost(R,G)+cost(G,D),其中cost(R,G)为本地网络的花费(经常为1)。
如果路由表中的路由把G作为下一个跳段,更新该路由的距离为cost(R,G)+cost(G,D)。
路由信息协议RIP
8
否则比较是否路由消息中指出的到目的地D的路由的距离更短:cost(R,G)+cost(G,D)<cost(R,D)?其中cost(R,D)为路由表中原有的到目的地D的路由。如果满足上述式子,说明找到一条更短的路由,更新路由表中那条到目的地D的路由:下一个跳段路由器为G,距离为cost(R,G)+cost(G,D)。
如果路由消息中新通知的路由和原来的路由的距离是一样的,RIP仍然选择使用老的路由,这有助于保持路由的稳定。
路由信息协议RIP
9
RIP路由失效
RIP在路由表中对每条路由都有一个计时器,当收到新的有关这条路由的消息时,该计时器被重新设置,如果计时器超时(超过180秒,即连续6次没有收到路由消息,是一种n次有k次机制),这条路由就被宣告为失效,即目的地不可达。
失效路由并不马上从路由表中删去,因为这条失效的路由还应该向邻居路由器报告,经过一段超时(garbage-collection timer,90秒)后,该路由最终被从路由器中去掉。
RIP把距离在16 hops以上的路由作为不可达(“无穷大”)。
不可达的