APP下载

不同网络下静态路由配置选项优化选择研究*

2014-09-05尧时茂高光勇

九江学院学报(自然科学版) 2014年4期
关键词:路由表路由器数据包

尧时茂 高光勇

(九江学院信息科学与技术学院 江西九江 332005)

不同网络下静态路由配置选项优化选择研究*

尧时茂 高光勇

(九江学院信息科学与技术学院 江西九江 332005)

针对广播多点出口网络、点对点出口网络和非广播多点出口网络环境,分析采用下一跳地址、出接口、出接口+下一跳方式配置的静态路由对路由转发处理的影响,找到一种适合实际网络环境的最优配置方案。

静态路由,路由转发处理,性能优化,方案选择

静态路由因为其简单、占用资源少等优点在实际网络项目中经常被采用,在教学与实验中属于基础内容。一般在教学环节中,教师通常会将静态路由的语法格式详尽介绍,在实验环节中学生多以验证性实验项目为主,甚至一些研究[1,2]也仅限于此,但对于作为Intranet接入Internet的主要路由构建方法的相关研究却从未间断过,比如静态路由热备份及负载均衡[3,4]、多目标环境下静态路由优化[5]、策略路由[6]等相关研究很多。

在路由器上配置静态路由协议时,一般都以“ip route 目标网络 掩码 下一跳地址”形式配置(本文以Cisco设备为例),除此之外,还有“ip route 目标网络 掩码 出接口”和“ip route 目标网络 掩码 出接口 下一跳地址”两种形式。虽然这3种配置方式构建的路由表一般都可以用来转发数据包,但路由转发处理时延可能不同,而且不同网络环境下路由器及网络性能的影响也不相同。

本文通过对路由转发处理流程的分析,对比不同网络环境下不同静态路由的配置命令对路由器及网络的性能影响,找到一种适合实际网络环境的最优配置方案。

1 网络环境设计

为了实验需要,搭建如图1所示的网络环境,包括广播多点以太网、点对点网络和非广播多点帧中继网络。其中路由器“帧中继交换机”默认与其它路由器构建点对点环境,在进行帧中继环境时配置成帧中继交换机,并且使用全网状拓扑。

图1 网络拓扑图

2 分析

2.1 直连下一跳方式

选择图1中的路由器A、以太网交换机、路由器B、帧中继交换机、路由器C这条链路,配置路由器A到网络C的静态路由为:

ip route 10.1.4.0 255.255.255.0 10.1.1.2

该配置命令中的“下一跳地址”为直连邻居路由器B的接口地址(其它路由条目类似,在此略)。当路由器A有数据包需要转发给网络10.1.4.0/24,首先查路由表,得知该数据包需要转发给10.1.1.2,而该数据包需要交换到哪个出口缓存,还要再次查路由表获得10.1.1.2所直连的接口f0/0,然后数据包被转发到出接口缓存,在路由器内部完成交换过程。接下来路由器会根据接口数据链路层协议封装成MAC帧,源MAC地址为本接口的MAC地址,目的MAC地址为下一跳10.1.1.2地址对应的MAC地址。如果此时ARP缓存表有对应记录,则数据包将封装成帧从接口f0/0排队发出,如果缺少对应ARP记录,则需要发送ARP广播请求来获取[7]。处理流程如图2所示。

图2 路由转发流程图

2.2 递归静态路由[8]

通常静态路由配置命令中的下一跳地址都是直连邻居路由器接口地址,此种配置简单、直接,但在某些时候可能不太方便。假设在上一小节中以太网交换机出现故障,下一跳不可达,路由器A上的多条经由10.1.1.2的路由都将失效从路由表中删除。如果此时有一条替代路由,替代下一跳,管理员就需要将原路由删除,重新配置。若受影响路由条目较多,管理员工作量会比较大,而递归静态路由针对这种情况可能就比较合适。

路由器A上针对目标网络C配置的递归静态路由如下所示:

ip route 10.1.4.0 255.255.255.0 10.1.3.2

ip route 10.1.3.0 255.255.255.0 10.1.2.2

ip route 10.1.2.0 255.255.255.0 10.1.1.2

在此配置中,去往目的网络C的下一跳并非直连邻居接口地址,而是路径上靠网络C最近的路由器C的接口地址,其它网络的路由也是如此。此配置方法下,路由器A若收到一个去往网络10.1.4.0的包,查路由表匹配该网络得知下一跳地址为10.1.3.2,但发往哪个出口缓存还需要再次查找路由表,这样的查找过程可能需要进行多次,直到获得出接口才能完成路由器内部的交换过程。

当以太网交换机出现问题时,路由器A发现直连下一跳不可达,需要重新修改路由,但只需要修改一条路由条目,这样维护起来将很方便,不过路由器A需要进行多次迭代查找过程,会增加路由器的开销,会增加路由转发处理时延,所以很少被部署。

2.3 广播多点出口静态路由

当知道下一跳地址的情况下,配置静态路由比较方便,但某些特殊情况,比如路由器接口是通过DHCP或者PPPOE等方式获取地址,这时就无法使用下一跳地址来配置静态路由,在此可以用出接口替代下一跳方式配置。

当采用“出接口”作为静态路由配置选项时,该路由条目在路由表中会被当成是直连路由对待,图3显示了路由器A采用出接口配置的静态路由。

图3 出接口的静态路由

在此配置方式下,路由器A若需要转发去往目的地址为10.1.4.4的数据包,只需查一次路由表就可以确定转发出口,在路由器内部完成交换功能,接下来再准备封装成MAC帧。源MAC地址就是出接口MAC地址,但目的MAC地址肯定不存在,所以路由器A将发送一个ARP广播去询问10.1.4.4对应的MAC地址,当然,这个ARP广播是不会被路由器B转发的,这样也就意味着无法获得ARP应答,也就意味着目的MAC地址无法获取,MAC帧将无法封装成功,那么数据包将会被丢弃。

当然,如果当路由器B接口f0/0开启了代理ARP功能,并且路由器B有到达目的网络10.1.4.0/24的路由,则路由器B在收到路由器A询问10.1.4.4的MAC地址的ARP广播时会以路由器B接口f0/0的MAC地址作为响应,这样路由器A可以获取到10.1.4.4对应的MAC地址,数据包可以封装成帧发送出去给路由器B。

路由器A在这种环境下数据包的路由转发处理相对简单,但对于路由器B却需要接口开启代理ARP的支持。有时出于需要,路由器B会关闭接口的代理ARP功能,那么路由器A这种静态路由设置将不可行。除此之外,因为该路由被当成直连路由,所以该目标网络下任意主机都需要进行ARP查找,会增加该广播型网络环境的流量,影响网络的性能。还有,通过代理ARP返回的MAC地址都是路由器B接口的MAC,存在地址欺骗行为。

2.4 点对点出口静态路由

对于配置广播型出口的静态路由因为目的MAC解析会带来一些影响,但对于点对点出口就不存在这样的情况。目前PPP协议是点对点环境中使用最多的数据链路层协议,在PPP帧中地址字段值固定为0xFF,这样在使用出口作为配置选项配置静态路由时,只要目的地址匹配该路由,则该数据包就可以发往出接口,并且可以封装成帧被转发出去,这样路由器处理的效率就非常高,而对网络又不会带来额外的开销。

2.5 非广播多点出口静态路由

以上两种网络出口静态路由一般都能工作正常,但若在不支持广播的多点型网络环境使用出口作为静态路由配置选项可能会出现数据包封装出错。

此处以帧中继环境作为非广播多点网络分析环境,图1中的路由器A、路由器B和路由器C都通过串行接口S1/0分别与帧中继交换机相连,该帧中继交换机使用路由器模拟,路由器A、B、C的S1/0地址设为10.1.0.1/24、10.1.0.2/24、10.1.0.3/24,路由器B和路由器C相连的两个直连网络B和C网络号分别为10.1.2.0/24和10.1.3.0/24。帧中继环境假设为全互联网络拓扑,即三台路由器间存在两两相连的PVC。帧中继环境中的逆地址解析协议正常工作,如果此时在路由器A上配置到网络B的静态路由采用的参数是出口S1/0,因为该出口有效,所以该路由条目有效。

当其他网络配置都正确的情况下,在路由器A上发送一个去往网络B的数据包将会失败。对路由器A和帧中继网络分析发现,数据包被发往出接口S1/0,但封装成帧中继帧时未能进行获取正确的DLCI地址,所以封装失败,数据包发送失败。调试结果如图4所示。

图4 帧中继数据包调试结果

帧中继接口虽然是多点型网络,但接口并不支持广播,所以ARP广播就无法发送到路由器B的S1/0接口,也没办法执行代理ARP之类的功能。在这种情况下,管理员或者设计人员可能就需要手工指定IP地址和DLCI地址之间的映射,这样维护管理就不方便,路由器A也会因为多条静态映射记录而性能受影响,所以在帧中继环境配置静态路由一般使用下一跳地址。

2.6 下一跳+出口静态路由

综合前面几种情况,单独使用下一跳地址或者出接口配置静态路由可能会增加路由器或网络的开销而不能处于最优性能状态。其实如果采用的动态路由协议,路由表一般都是同时记录下一跳和出口,这样在路由转发处理时只要找到了匹配路由条目就可以将数据包交换到出接口缓存处理,这就可以节省路由器多重查找的时间,对于地址解析过程也只需要对下一跳进行,就可以优化路由器和网络的性能。

3 性能分析

假设从路由器到目的网络中间经过的网段为m,路由器直连路由为n,那路由表中应该存在的路由条目为m+n-1。假设去往目的的路由在路由表中处的位置为第x条,下一跳地址对应的出口路由表在路由表中的位置为第y条。路由器需要转发去往z个主机的数据包,此处理中路由器需要查表次数和地址解析次数对比如表1所示。

表1 性能分析

从表1中可以看到,直连下一跳+出口配置方式下,数据包路由查找次数取决于去往主机数据包的数目和匹配路由条目所在位置,与其他方法比较,消耗路由器资源是最少的,同时进行地址解析次数也是最少的。

4 结语

本文通过对广播型多点网络(以太网)环境、点对点网络(串行线路)环境、非广播多点网络(全互联帧中继)环境下配置静态路由,分析各种网络环境各种配置方法对路由器和网络的影响,认为以“直连下一跳地址+出接口”作为配置参数在路由表查找和地址解析方面比单独使用“下一跳地址”或“出接口”能更好的优化路由器或网络的性能。对动态获取地址的出接口的静态路由配置选择“出接口”可能比较合适,而对于非广播多点型网络(全互联帧中继)应当以下一跳地址方式配置,否则数据包在封装成帧时将失败而丢弃。

[1]惠玥,张媛.IP静态路由实验的研究[J].实验室研究与探索,2010,29(11):62.

[2]肖捷.静态路由选择配置方案的设计[J].计算机工程,2000,26(8):141.

[3]韦有华,王成耀.静态路由热备份及其负载均衡[J].计算机应用,2004,13(3):9.

[4]庞亚宾.基于静态路由的ISP负载均衡解决方案[J].计算机与应用化学,2010,27(8):1096.

[5]罗正全,叶建锋.静态路由体系结构下的多目标优化研究进展[J].科技信息,2008,25(15):10.

[6]廖淑华.策略路由技术在多出口网络中的应用[J].吉林师范大学学报(自然科学版),2010,24(2):95.

[7]谢希仁.计算机网络[M].北京:电子工业出版社,2010.126.

[8]Joff Doyle,Jennifer Carroll.TCP/IP路由技术[M].北京:人民邮电出版社,2010.126.

(责任编辑胡安娜)

Study on Optimal Selection of Static Routing Configuration Option in Different Network

YAO Shimao,GAO Guangyong

(School of Information Science & Technology, Jiujiang University, Jiujiang, Jiangxi 332005,China)

Because the configuration of static route was simple. It was usually a verification type experiment in teaching process. However, under different network environments, the affect to the performance of the router and the network was different when using different options in configuration schemes. The influence to the routing and forward process was analyzed when using next-hop address, outgoing-interface, outgoing-interface+next-hop address to configure the static route in broadcast multi-access, point-to-point and non-broadcast multi-access network environments. A suitable optimal configuration scheme was found for the actual network environment.

static route; routing and forward process,performance optimization, scheme selection

江西省级教学改革项目(编号JXJG-13-17-16)和国家自然科学基金项目(编号61362032 )成果之一。

2014-8-20

尧时茂,31621664@qq.com。

TP 393

A

1674-9545(2014)04-0019-(04)

猜你喜欢

路由表路由器数据包
买千兆路由器看接口参数
维持生命
路由器每天都要关
基于OSPF特殊区域和LSA的教学设计与实践
研究路由表的查找过程
SmartSniff
无线路由器的保养方法
视觉注意的数据包优先级排序策略研究
BGP创始人之一Tony Li:找到更好的途径分配互联网地址
移动IPV6在改进数据包发送路径模型下性能分析