第4章 路由原理及路由协议
主要内容: 1、路由器简介 2、路由器的基本原理 路由表 3、静态路由和动态路由 4、路由选择协议 RIP路由信息协议 OSPF开放式最短路径优先协议
4.1路由器(Router)简介 4.1.1路由器的基本概念 路由选择指网络中的节点根据通信网络的情况(可用的数据链路、各条链路中的信息流量等),按照一定的策略(传输时间、传输路径最短),选择一条可用的传输路径,把信息发往目的地。路由器就是具有路由选择功能的设备。 路由器工作于网络层,从事不同网络之间的数据包(Packet)的存储和分组转发,是用于连接多个逻辑上分开的网络(所谓逻辑网络是代表一个单独的网络或者一个子网)的网络设备。
4.1.2 路由器的功能与分类 路由器的功能: (1)接口功能 (2)通信协议功能 (3)数据包转发功能: (4)路由信息维护功能: (5)管理控制功能: (6)安全功能:
路由器的分类: (1)从结构上分,路由器可分为模块化结构与非模块化结构 (2)从网络位置划分,路由器可分为核心路由器与接入路由器。 (3)从功能上划分,路由器可分为 “骨干级路由器”,“企业级路由器”和“接入级路由器”。
4.1.3.2路由器的接口 路由器可以与各种各样的不同网络进行物理连接 ,越是高档的路由器其接口种类也就越多,因为它所能连接的网络类型越多。 常见的局域网接口主要有AUI、SC和RJ-45接口,广域网接口主要有AUI、RJ-45、高速同步串口接口和异步串口,路由器配置接口主要有Console和AUX接口.
在现实生活中,我们都寄过信。 邮局负责接收所有本地信件,然后根据它们的目的地将它们送往不同的目的城市。再由目的城市的邮局将它送到收信人的邮箱。
而在我们的互联网络中,路由器的功能就类似邮局。 它负责接收本地网络的所有报文,然后在根据它们的目的IP地址,将它们转发到目的网络。当到达目的网络后,再由目的网络传输给目的主机。
我们的互联网就是利用路由器将数以万计的网络以及上亿台计算机连接起来形成的一个全球性的广域网。可以说没有路由器就没有现在的互联网。路由器是互联网中最重要的通信设备。
4.2.1路由表 路由选择是指根据一定的原则和算法,在传输路径上找出一条通向目的节点的最佳路径。路由器利用路由选择进行IP数据报转发时,一般采用表驱动的路由选择算法。 在以太网交换机一节中,我们学到交换机是根据地址映射表来决定将帧转发到哪个端口。
与交换机类似,路由器当中也有一张非常重要的表——路由表。 路由表用来存放目的地址以及如何到达目的地址的信息。 互联网包含成千上万台计算机,如果每张路由表都存放到达所有目的主机的信息,不但需要巨大的内存资源,而且需要很长的路由表查询时间。这显然是不可能的。 所以路由表中存放的不是目的主机的IP地址,而是目的网络的IP地址(二种特殊路由除外) 。当IP数据报到达目的网络后,再由目的网络传输给目的主机。
4.2.1.1路由选择算法 一个通用的IP路由表通常包含许多(M,N,R)三元组,M表示子网掩码,N表示目的网络地址(注意是网络地址,不是网络上普通主机的IP地址),R表示到网络N路径上的“下一个”路由器的IP地址。
路由器R2的路由表 子网掩码M 要到达的网络N 下一路由器R 255.255.0.0 20.2.0.0 直接投递 20.3.0.0 20.1.0.0 20.2.0.8 20.4.0.0 20.3.0.4
路由器R3的路由表 子网掩码(M) 要到达的网络(N) 下一路由器(R) 255.255.0.0 20.3.0.0 直接投递 20.4.0.0 20.2.0.0 20.3.0.9 20.1.0.0
路由表中的特殊路由 1.默认路由 如果路由表没有明确指明一条到达目的网络的路由信息,就将数据报转发到默认路由指定的路由器 主要目的:缩短路由表的长度、减少路由计算时间 在路由选择算法中,默认路由的子网掩码是0.0.0.0,目的网络是0.0.0.0,下一路由器地址就是要进行数据转发的第一个路由器的IP地址。
主机A的路由表 子网掩码 目的网络 下一站地址 255.255.0.0 20.1.0.0 直接投递 0.0.0.0 20.1.0.12 主机B的路由表 子网掩码 目的网络 下一站地址 255.255.0.0 20.3.0.0 直接投递 0.0.0.0 20.3.0.13
2.特定主机路由 对单个主机(而不是网络)指定一条特别的路径 主要目的:增强安全性、进行网络连通性调试和判断路由表的正确性 目的地址不是网络地址,而是那个特定主机实际的IP地址,子网掩码是特定的255.255.255.255,下一路由器地址和普通路由表项相同。
IP数据报传输与处理过程
路由表的建立与刷新 路由分为静态路由和动态路由两大类。 静态路由 动态路由 由网络管理员在路由器上手工添加路由信息来实现路由。 根据网络结构或流量的变化,路由协议会自动调整路由信息来实现路由。
静态路由(非自适应) 静态路由是由人工建立和管理的,建立好之后不会自动发生变化。如果网络的拓扑结构或连接方式发生变化,网络管理员必须手工对路由表进行更新。
静态路由的特性: 1.默认状态下是私有的,不会发送给其他的路由器 2.静态路由设置经过保存后重起路由器都不会消失,但相应端口关闭或失效时就会有相应的静态路由消失 3.静态路由的优先级很高,当静态路由和动态路由冲突时,要遵循静态路由来执行路由选择。
静态路由的优点: 1.安全可靠、简单直观,避免了动态路由选择的开销。适用于不太复杂的互联网结构。 2.容易了解整个网络的拓扑结构,容易配置路由信息,网络安全的保密性也就越高
静态路由的缺点: 1.如果网络结构较复杂,就没办法手工配置路由信息了 2.建立和维护工作量大,容易出现路由环。
一旦互联网出现故障,静态路由不会自动做出更改。
动态路由(自适应) 动态路由是指路由器能够通过一定的路由协议和算法,自动地建立自己的路由表,并且能够根据拓扑结构和实际通信量的变化适时地进行调整。 动态路由适合于拓扑结构复杂、网络规模较为庞大的互联网络环境。
动态路由的优点: 1、自动排除错误路径
2、自动选择性能更优的路径
度量值metric 为了保证路由表中包含最佳的路径信息,需要经常刷新和修改路由表。 修改路由表是根据度量值来衡量的,度量值metric越小,说明路径越好。
度量值包括以下六项指标: 跳数(hop count):IP数据报到达目的地必须经过的路由器个数 带宽(bandwidth):链路的数据处理能力 延迟(delay):将数据从源送到目的地所需的时间 负载(load):网络中(如路由器中或链路中)信息流的活动数量 可靠性(reliability):数据传输过程中的差错率 开销(cost):是一个变化的数值,通常可以根据带宽、建设费用、维护费用、使用费用等因素由网络管理员指定
动态路由的缺点: 交换路由信息需要占用网络的带宽 路由表的动态修改和刷新需要占用路由器的内存和CPU处理时间,消耗路由器的资源
路由选择协议 互联网络中应用最广泛的动态路由选择协议有两种: 1. 路由信息协议(RIP):利用向量-距离算法 路由选择协议 互联网络中应用最广泛的动态路由选择协议有两种: 1. 路由信息协议(RIP):利用向量-距离算法 2.开放式最短路径优先协议(OSPF):利用链路-状态算法
收敛(convergence) 当一个互联网中的所有路由器都运行着相同的、精确的、足以反映当前互联网拓扑结构的路由信息时,我们称路由已经收敛。 快速收敛是路由选择协议最希望具有的特征。
1.RIP协议与向量-距离算法 向量-距离路由选择算法 向量是指源路由器到目的网络的路径。即源路由器到目的网络的下一个路由器。 距离是指源路由器到目的网络必须经过的路由器个数。
其基本思想是路由器周期性地向其相邻路由器广播自己知道的路由信息,用于通知相邻路由器自己可以到达的网络以及到达该网络的距离(跳数)。相邻路由器可以根据收到的路由信息修改和刷新自己的路由表。
RIP路由器每隔3 0秒触发一次路由表刷新。刷新计时器用于记录时间量。一旦时间到, RIP节点就会产生一系列包含自身全部路由表的报文。这些报文广播到每一个相邻节点。因此,每一个RIP路由器大约每隔3 0秒钟应收到从每个相邻RIP节点发来的更新。
1.路由器启动时初始化自己的路由表 目的网络 路径 距离 10.0.0.0 直接 20.0.0.0 目的网络 路径 距离 20.0.0.0 20.0.0.0 目的网络 路径 距离 20.0.0.0 直接 30.0.0.0 40.0.0.0 目的网络 路径 距离 40.0.0.0 直接 50.0.0.0 60.0.0.0
向量—距离路由选择算法的特点 1.优点 2.缺点 3.适用环境 算法简单、易于实现 由于路由器的路径变化需要像波浪一样从相邻路由器传播出去,过程缓慢,容易造成慢收敛问题。 3.适用环境 路由变化不剧烈的中小型互联网
RIP协议 RIP协议采用向量-距离路由选择算法。RIP协议规定了相邻的路由器之间每30s交换一次路由信息。
RIP协议对向量-距离算法的改进 相同开销路由: 先见为主 过时路由:使用计时器 超时时间一般为180s,相当于6个RIP刷新周期
增加内容:RIP路由表的更新 各路由器周期性地向其相邻的路由器广播自己的路由表信息。与该路由器直接相连的路由器收到该路由信息报文,按照下列原则修改、刷新本地路由表: 1)本地路由表中无路由信息报文中路由信息,则增加该信息。 2)有比去往目的网络更佳的路径,则修改该信息。 3)原有经相邻路由器可以到达目的网络而现在出现故障不能到达,则该路由器的路由表也要作相应修改。
慢收敛问题及对策 慢收敛问题如何产生? 目的网络 路径 距离 目的网络 路径 距离 net1 R1 1 net1 直接 0 ① 发现故障,更新路由表 ③ 收到广播,更新路由表 ② 广播路由信息 ④ 广播路由信息 ⑤ 收到广播,更新路由表 目的网络 路径 距离 net1 R1 1 net2 直接 0 目的网络 路径 距离 net1 直接 0 net2 直接 0
这样在路由器R1和R2之间就形成了路由环。这就是慢收敛问题产生的原因。
慢收敛问题的解决对策 限制路径最大“距离”对策 水平分割对策 当路由环产生后,距离越来越大。RIP协议采用限制路径的最大“距离”为16。当路由表中的距离等于或大于16时,即为不可达路由。 水平分割对策 当路由器从相邻路由器接收路由报文信息时,其中不能包含从本路由器发送给相邻路由器的信息。
保持对策 带触发刷新的毒性逆转对策 规定在得知目的网络不可达后一定时间内(60s),路由器不接收关于此网络的任何可到性信息。 一旦检测到路由崩溃,即某段线路出现故障,立即广播路由刷新报文,而不必等待下一刷新周期。
OSPF协议与链路-状态路由选择算法 开放式最短路径优先算法OSPF(open shortest path first)是采用最多、应用最广泛的路由技术之一。 OSPF是基于链路—状态(link-status)算法的路由选择协议,其基本思想是:互联网上的每个路由器周期性地向其他路由器广播自己与相邻路由器的连接关系,互联网上的每个路由器利用收到的路由信息画出一张互联网拓扑结构图。利用画出的拓扑结构图和最短路径优先算法,计算自己到达各个网络的最短路径。
链路—状态路由选择算法的基本思想举例
R1的路由表 目的网络 下一路由 跳数 Net1 直接投递 Net2 Net4 Net3 R4 1
链路—状态算法三个过程: 1、在路由器刚开启初始化或者网络的结构发生变化时,路由器会生成链路状态广播数据包LSA 。 2、接着各个路由器通过刷新Flooding的方式来交换各自知道的路由状态信息。 3、当整个区域的网络相对平静下来,或者说OSPF路由协议收敛convergence起来,区域里所有的路由器会根据自己的链路状态数据库计算出自己的路由表。
OSPF的分区概念 OSPF是一种分层次的路由协议,其层次中最大的实体是自治系统AS(即遵循共同路由策略管理下的一部分网络实体)。 对于主干区域(backbone area一般是area 0),负责在区域之间分发链路状态信息。
OSPF为什么要分区分层次? 当网络中自治系统非常大时,网络拓扑数据库的信息内容就非常多,所以如果不分层次的话,一方面容易造成数据库溢出,另一方面当网络中某一链路状态发生变化时,会引起整个网络中每个节点都重新计算一遍自己的路由表,既浪费资源与时间,又会影响路由协议的性能(如聚合速度、稳定性、灵活性等)。
具体做法: 把自治系统划分为多个区域,每个域内部维持本区域一张唯一的拓扑结构图,且各区域根据自己的拓扑图各自计算路由,区域边界路由器把各个区域的内部路由总结后在区域间扩散。 当网络中的某条链路状态发生变化时,此链路所在的区域中的每个路由器重新计算本区域路由表,而其它区域中路由器只需修改其路由表中的相应条目而无须重新计算整个路由表,节省了计算路由表的时间。
OSPF路由选择协议 OSPF路由选择协议采用链路-状态算法。 优点: 优点: 收敛速度快,支持服务类型选路,提供负载均衡和身份认证,增强了网络的可扩展性和稳定性,同时也反映出了动态路由协议的强大功能,适合在大规模的网络中使用。 缺点: 要求较高的路由器处理能力、一定的带宽需求。
部署和选择路由协议 在我们选择路由协议时要根据网络规模来选择不同的路由协议: 小型互联网(包含2到10个网络)采用静态路由。
小型到中型互联网(包含10到50个网络)采用RIP路由选择协议。 大型到特大型互联网(包含50个以上的网络)采用OSPF路由选择协议。