预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共85页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

笫十八讲 路由协议和IP协议本讲内容7.3.1路由信息协议RIP7.3.1路由信息协议RIPRIP路由器上的路由表项 目的地的IP地址 到目的地的路径的距离的度量 到目的地的路径的下一个路由器的IP地址(如果目的地是直接连接的,不需要这个字段) 路由改变标志(指示这条路由信息是否最近被改变过) 和这条路由有关的一些计时器6RIP采用的距离度量是一种非常简单的测量到目的地的距离的方式:站点计数度量(或称站跳数、段跳数,hop)。 路由器把到它直接连接的网络的距离定义为1,如果距离为n,表示它到达目的地途中要经过n个路由器,即:距离给出了该路由要经过的路由器的个数。 RIP在具体实现时常常允许管理人员对这些慢速的网络指定一个更大的距离度量值(>1)。RIP工作过程 RIP路由器初始化时,会把那些到达它所直接连接的网络的路由加载进来(距离一般被设置为1)。 一般RIP的具体实现也允许管理人员增加新的路由,比如说不是通过RIP协议了解到的路由。 每个RIP路由器每隔30秒广播一个路由消息。 RIP路由器也可能通过发送Request消息来询问别的路由器有关某些路由或者所有路由的信息,比如当一个主机启动后,可能要求相邻的RIP路由器传递路由表中的所有信息。当RIP路由器R从路由器G收到一个路由消息时,它检查该消息中包含的每一条到目的地D的路由,其中距离为cost(G,D),把该路由与自己路由表中到同一目的地D的路由相比较。 如果路由表中不存在,在路由表中增加一条路由:到目的地D的下一个路由器跳段的地址为G,距离为cost(R,G)+cost(G,D)。否则比较是否路由消息中指出的到目的地D的路由的距离更短:cost(R,G)+cost(G,D)<cost(R,D)?其中cost(R,D)为路由表中原有的到目的地D的路由。如果满足上述式子,说明找到一条更短的路由,更新路由表中那条到目的地D的路由:下一个跳段路由器为G,距离为cost(R,G)+cost(G,D)。 如果路由消息中新通知的路由和原来的路由的距离是一样的,RIP仍然选择使用老的路由,这有助于保持路由的稳定。目的主机网络号RIP路由失效 RIP在路由表中对每条路由都有一个计时器,当收到新的有关这条路由的消息时,该计时器被重新设置,如果计时器超时(超过180秒,即连续6次没有收到路由消息,是一种n次有k次机制),这条路由就被宣告为失效,即目的地不可达。 失效路由并不马上从路由表中删去,因为这条失效的路由还应该向邻居路由器报告,经过一段超时(garbage-collectiontimer,90秒)后,该路由最终被从路由器中去掉。 RIP把距离在16hops以上的路由作为不可达(“无穷大”)。 不可达的取值考虑到了网络的规模和收敛的速度两者之间的平衡。和其它别的距离向量路由协议,RIP协议也会遇到无穷计数问题。 如图例:假设B、D之间的链 路现在出现故障,考虑到连 在D上的目的网络的路由。水平分割(Split-Horizon) 一种解决无穷计数问题的方法。 不要把从某个接口了解到的路由信息再通过该接口传递给其他路由器,以避免形成路由回路。例:如果A到某个目的地D的路由要经过邻居B,则A向B发送的更新消息不应包含到D的路由。 毒性反转(Poisonedreverse)水平分割 不是不给邻居路由器发送通过该邻居了解的路由信息,而是和往常一样给邻居路由器发送路由信息,只是那些从该邻居了解到的路由信息的距离被置为无穷大,即到目的网络是不可达的。 能比水平分割方法更快地解除路由回路。触发更新 水平分割解决了两个节点间的路由回路,但是考虑三个或者更多节点间的路由回路: C-D链路断开 A认为经B可以到达D C收到该消息,认为经A可到D C告诉B经A可到D 当路由器了解到到某个目的地的路由有变化时,马上发送更新消息,从而加快收敛过程。 Hold-DownTimer 触发更新并不是万能的,可能在触发更新传遍整个网络前有一个节点发送了定时更新消息,无效路由会再次传播。 在发生触发更新时开始一个hold-downtimer随机计时,忽略来自于邻居路由器的有关到该目的地的消息。同时可以防止触发更新消息产生过多的网络负载,而形成广播风暴。7.3.1路由信息协议RIPRIP消息格式IP首部RIP协议局限性 因为RIP选择16作为无穷大,不能用在网络直径大于15的网络中。 RIP使用的距离度量非常简单,不能采取一种动态的方法(比如根据网络延迟或负载)来选择路由。 尽管RIP采用了很多措施(比如毒性反转的水平分割和触发更新等)来解决无穷计数问题,但是这种可能性仍然存在,因此RIP一般用在网络规模不是很大的场合。 但RIP实现简单。目前的版本是RIPv2,它比RIPv1改进了许多。7.3.2开放最短通路优先协