测试网络设备路由协议性能的方法、装置和系统的制作方法

文档序号:7648870阅读:100来源:国知局
专利名称:测试网络设备路由协议性能的方法、装置和系统的制作方法
技术领域
本发明涉及了通信网络领域,尤其涉及了一种测试网络设备链路状态路由协议性能的方法、装置和系统。
背景技术
随着互联网技术的发展,在互联网上采用的路由协议有很多,其中开放最短路径优先(Open Shortest Path First,OSPF)和中间系统到中间系统(Intermediate System to Intermediate System,IS-IS)路由协议是应用最广的两种内部网关路由协议。这两种协议都是基于链路状态,使用Hello协议寻找邻接节点,使用一个传播协议发送链路状态信息。随着网路规模的日益发展,链路状态通告数目将逐渐增多,可达数十万之多。当链路状态通告频繁变换,OSPF或IS-IS路由协议就会不断地进行路由计算,不同类型、不同规模的路由设备进行路由计算处理能力不同,因此,大量网络设备研发单位、企业需要对路由设备进行性能测试。
在现有技术中,通常采用专门开发的硬件测试系统对路由设备进行测试。这类专用测试仪器,由于需要模拟复杂的网络系统,进行大量链路状态泛洪处理并根据链路状态信息计算最佳路由,一般其内部运行的是专用的嵌入式操作系统,并需用专用控制软件进行测试操作。采用测试仪器进行测试的系统结构复杂、测试繁琐,而且测试仪器价格昂贵,导致研发测试成本提高。

发明内容
鉴于上述现有技术所存在的问题,本发明实施例提供了一种测试网络设备性能的方法,包括启动测试,与被测设备建立链路状态路由协议会话;获得链路状态信息,将获得的链路状态信息封装成链路状态报文发送给所述被测设备以测试所述被测设备的性能。
本发明实施例还提供了一种测试装置,所述装置包括通信模块,用于与被测设备建立并维护链路状态路由协议会话;链路状态报文生成模块,用于获取链路状态信息,将获取的链路状态信息封装成链路状态报文;链路状态报文发送模块,用于将所述链路状态报文生成模块生成的链路状态报文发送给所述被测设备以测试所述被测设备的性能。
本发明实施例还一种测试系统,所述系统包括计算处理系统,用于执行软件程序;通信接口卡,用于建立与被测设备的通信链路;所述系统还包括在计算处理系统上执行的软件执行模块,该软件执行模块包括通信处理模块,用于经由所所述通信接口卡与被测设备建立并维护链路状态路由协议会话;链路状态报文生成模块,用于获取链路状态信息,将获取的链路状态信息封装成链路状态报文;链路状态报文发送模块,用于将所述链路状态报文生成模块生成的链路状态报文经由所述通信接口卡发送给所述被测设备以测试所述被测设备的性能。
本发明实施例的技术方案至少具有以下有益效果本发明实施例能解决对专用硬件测试仪器的依赖问题,可在包含网络接口的通用计算机上与被测设备建立链路状态路由协议会话,启动测试,与被测设备建立链路状态路由协议会话;获得链路状态信息,将获得的链路状态信息封装成链路状态报文发送给所述被测设备以测试所述被测设备的性能。这种方法不需对大规模的仿真OSPF或IS-IS链路状态路由协议信息进行泛洪处理,向被测设备提供持续的、大负荷的压力,以考验被测设备中路由协议的性能。采用这种方法降低网路设备的开发、测试成本。


图1为根据本发明实施例用计算机实现测试的系统示意图;图2为根据本发明实施例测试方法流程图;图3为根据本发明实施例的OSPF路由协议中与被测设备建立通信信令流程图;图4为根据本发明实施例的IS-IS路由协议中与被测设备建立通信信令流程图;图5为根据本发明实施例的虚拟路由器节点仿真网络拓扑示意图;图6为根据本发明实施例的测试装置结构图。
具体实施例方式
为使本发明实施例的目的、技术方案和优点表达得更加清楚明白,下面结合附图及具体实施例对本发明再作进一步详细的说明。
本发明实施例提供了测试网络设备路由协议性能的方法,可以用于测试网络设备运行开放最短路径优先(OSPF)路由协议或中间系统到中间系统(IS-IS)路由协议性能,该方法可以在通用计算机,如PC机上实现,参见图1所示的本发明实施例用计算机实现测试的系统示意图和图2所示的测试方法流程图,该方法包括如下步骤S202将计算机与被测设备相连,在计算机上运行软件程序建立计算机与被测设备之间的OSPF路由协议会话(OSPF Session)或IS-IS路由协议会话(IS-IS Session),其中,需要通过计算机软件程序设定掩码信息、被测设备的IP地址等。
S204利用软件程序配置多个虚拟路由器节点,每个虚拟路由器节点配置的参数可以与实际路由器节点相同,通常一个虚拟路由器节点可配置的参数包括以下内容路由器标识(Router ID)、区域标识(Area ID)、路由器节点IP地址、路由器节点类型、链路信息和链路接口;有多个虚拟路由器节点的情况下,还需要设置虚拟路由器节点之间的相互连接关系;还可以设置其它相关信息,如包含一定数量的路由的虚拟容器的链路状态信息(如路由池信息、网络信息),虚拟容器附加在所述虚拟路由器节点等。
本实施例中,虚拟路由器节点可以为单个虚拟路由器节点;也可以为多个虚拟路由器节点,它们以一定规则构成模块化虚拟路由器节点集合,这些规则的模块化虚拟路由器节点集合包括但不仅限于星型连接虚拟路由器节点集合、环形连接虚拟路由器节点集合、树型连接路由节点集合、网格连接虚拟路由器节点集合。这些规则的模块化虚拟路由器节点集合可以通过配置一个虚拟路由器节点的信息,实现自动生成其它虚拟路由器节点的信息。
S206利用软件程序为配置好的每一个虚拟路由器节点生成多个链路状态信息,例如对于OSPF路由协议为链路状态通告LSA,对于IS-IS路由协议为LSP;步骤208利用软件程序将生成的链路状态信息封装成链路状态报文,通过路由协议数据报文发送给被测设备;对于OSPF路由协议,通过链路状态更新报文(Link State Update,LSU)携带一个或多个链路状态信息;对于IS-IS路由协议,通过LSP报文携带一个或多个链路状态信息。
至于链路状态报文的类型和格式,本领域的技术人员可以根据已公开的实际路由器节点的链路状态报文的类型和格式实现,在此不再赘述。
S210被测设备接收到计算机发来的链路状态封装报文后,从链路状态封装报文中提取出链路状态信息信息,并根据这些链路状态信息信息来更新被测设备的路由表。
对于OSPF路由协议,被测设备解析接收到的链路状态更新报文,获得一个或多个链路状态信息信息,利用这些链路状态信息信息更新被测设备的路由表。
对于IS-IS路由协议,被测设备解析接收到的LSP报文,获得一个或多个链路状态信息,利用这些链路状态信息更新被测设备的路由表。
其中,被测设备每次更新完路由表后会向计算机返回确认报文;计算机接收到该确认报文后,可以将该确认报文丢弃以减小计算机测试系统负担,提高测试效率。
可以设定一个等待时间期限,如果在期限内没有收到用户返回的确认报文,则确定该被测设备达到处理强度极限。
参见图3为根据本发明实施例的OSPF路由协议中与被测设备建立通信信令流程图;对于开放最短路径优先路由协议,通过与所述被测设备交互互联网协议IP报文中的Hello报文建立与所述被测设备之间的链路状态路由协议会话;通过与所述被测设备交互互联网协议IP报文中的DD报文维护与所述被测设备之间的链路状态路由协议会话;参见图4为根据本发明实施例的IS-IS路由协议中与被测设备建立通信信令流程图;对于中间系统到中间系统路由协议,通过与所述被测设备交互链路层上的Hello报文建立与所述被测设备之间的链路状态协议会话。
其中,上述步骤没有严格时间顺序,例如步骤S202中的将计算机与被测设备相连,在计算机上利用软件程序建立计算机与被测设备之间的OSPF路由协议会话或IS-IS路由协议会话的步骤只要在步骤S208中发报文之前执行。而且步骤S208中生成的链路状态报文可以预先存储,在需要对被测设备进行性能测试时将预先存储的链路状态报文逐条或分批发送给被测设备,也可以采用定期发送的方式对被测设备进行实时监控。
其中,步骤S206中每一个虚拟路由器节点生成的链路状态信息与对应真实虚拟路由器节点生成的链路状态信息相同,例如OSPF属于链路状态协议,它通过多种链路状态通告(LSA)来收集以及扩散网络的拓扑信息以及路由信息。其中,路由器ID以及接口、邻居信息通过第一类LSA(Router-LSA)来描述。对于点到点的连接,在Router-LSA中描述了其对端路由器的ID以及本地对应的接口IP地址。但是对于广播网络以及NBMA网络,Router-LSA则描述了本地对应接口的IP地址以及指定路由器(DR)的IP地址。关于Router-LSA的详细描述可以参见RFC2328的12.4.1节、A.4.1节以及A.4.2节。同样,对于IS-IS路由协议链路状态报文的详细描述可以参考RFC1142(1990)和RFC1195(1990)在TCP/IP上运行IS-IS路由协议。
本实施例中计算机可以通过提供可视化的界面方式来与用户进行交互,用户只需点击鼠标进行选择或确认,或者输入简单的参数来进行设置,轻松实现OSPF Session或IS-IS Session的建立、虚拟路由器节点的配置、链路状态描述封装报文的发送等操作;还可以提供非可视化的命令方式,如TCL语言脚本,用户在计算机上敲入命令,从而实现建立会话、配置虚拟路由器节点信息及发送报文等操作;无论哪种方式,都操作简单、方便、快捷,容易实现。例如,只需在计算机中简单地设置几个参数,就可以方便地生成大量链路状态信息,举例来说,对于OSPF路由协议,只需建立一个OSPFSession,配置一个虚拟路由器节点,及在该虚拟路由器节点上连接多个路由池,每个路由池每个路由池的路数目可自由设置,为了增加网络负载优选几万条,通过这种简单配置就可以生成大量链路状态信息。
例如,参见图5所示根据本发明实施例的虚拟路由器节点仿真网络拓扑示意图。根据本发明实施例,配置虚拟路由器节点101和虚拟路由器节点108,网格连接节点112,总结路由池109、外部路由池110。其中,设置虚拟路由器节点101的路由器标识(Router ID)为193.1.1.2,类型为区域边界路由器(ABR)和自治系统边界路由器(ASBR),区域ID为0.0.0.0。第二个虚拟路由器节点108的参数包括路由器标识ID为192.0.1.0,区域ID为0.0.0.0。与虚拟路由器节点108相连的外部路由池110的参数包括第一个网络地址和掩码为2.135.175.0/24,路由数为40000,步长为1。网格连接节点112包括20×20个虚拟路由器节点,即一次添加400个虚拟路由器节点,设置与虚拟路由器节点101相连的虚拟路由器节点的坐标为(1,1),路由器ID为162.106.X.Y,初始化序列号为0×80000001,通过这种配置400个虚拟路由器节点的参数自动生成。总结路由池109的参数包括第一个网络地址和掩码为10.161.82.0/24,路由数为300O0,步长为1。与虚拟路由器节点101连接的网络111的参数包括ID为11.0.0.2,类型为穿通网络。通过这种简单配置,就可以生成大量路由信息。其中,可以根据需要设置总结路由池109和外部路由池110的路由数。
对于IS-IS路由协议,配置方法与OSPF类似,不再赘述。
本发明实施例还提供了一种测试网络设备链路状态路由协议性能的装置600,可以应用于开放最短路径优先路由协议或中间系统到中间系统路由协议,如图6所示的装置结构图,该装置包括通信模块602,用于与被测设备620建立并维护链路状态路由协议会话。
配置模块604,用于配置虚拟路由节点信息,可以给用户提供命令行人机接口和可视化界面人机接口输入配置信息;其中,用户可以将某次配置的虚拟路由节点信息存储在存储装置(图中未示出)中以便供用户后续调用,通常存储的路由节点信息会转化成虚拟网络拓扑信息。
链路状态信息获取模块606,用于从配置模块604获得用户配置的虚拟路由节点信息(或虚拟网络拓扑信息)并生成链路状态信息,或者可以调用上述保存在存储装置中的虚拟路由节点信息并生成链路状态信息;另外,链路状态信息获取模块606还可以通过链路状态信息搜集模块(图中未示出)中获得链路状态信息,其中链路状态搜集模块可以搜集网络中实际存在的网络拓扑信息并生成链路状态信息。
链路状态报文生成模块608,可以获取配置模块设置的虚拟路由器节点信息虚拟路由器节点信息生成链路状态信息,将链路状态信息封装成链路状态报文链路状态报文发送模块610,用于将链路状态报文生成模块608生成的链路状态报文通过通信接口单元612发送给所述被测设备620。
可选的,该装置600还包括响应处理模块(图中未示出),用于将接收所述被测设备620处理完所述链路状态报文后返回的确认消息,并将接收到的所述确认消息丢弃。
其中,测试装置600为软件实体装置,可以保存在非易失性存储介质上,如计算机硬盘、光盘、CD ROM等。启动软件后,测试信号与响应信号通过通信接口单元612(如计算机通信接口或其它通信接口卡),与被测设备620进行交互。
本发明实施例还提供了一种测试系统,所述系统包括计算处理系统,用于执行软件程序;通信接口卡,用于建立与被测设备的通信链路;所述系统还包括在计算处理系统上执行的软件执行模块,该软件执行模块包括通信处理模块,用于经由所述通信接口卡与被测设备建立并维护链路状态路由协议会话;链路状态报文生成模块,用于获取链路状态信息,将获取的链路状态信息封装成链路状态报文;链路状态报文发送模块,用于将所述链路状态报文生成模块生成的链路状态报文经由所述通信接口卡发送给所述被测设备以测试所述被测设备的性能。
采用本发明实施例提供的测试方法和测试系统,不需对大规模的仿真OSPF或IS-IS链路状态路由协议信息进行泛洪处理,即各处理模块不需要单独的处理仿真器(如DSP),本发明实施例的软件可运行在通用处理系统上,还能通过简单配置、模块路由节点配置向被测设备提供持续的、大负荷的压力,以考验被测设备中路由协议的性能。采用这种方法降低网路设备的开发、测试成本,为中小企业、研发机构不需要购买昂贵的专用设备或开发复杂的测试系统也能有效进行网络设备性能测试。
以上所述的实施例,只是本发明较优选的具体实施方式
,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。
权利要求
1.一种测试网络设备路由协议性能的方法,其特征在于,包括启动测试,与被测设备建立链路状态路由协议会话;获得链路状态信息,将获得的链路状态信息封装成链路状态报文发送给所述被测设备以测试所述被测设备的性能。
2.根据权利要求1所述的方法,其特征在于,所述获得链路状态信息具体包括设置虚拟路由器节点信息,根据设置的虚拟路由器节点信息获得链路状态信息;其中,所述虚拟路由器节点信息包括虚拟路由器标识、区域标识、虚拟路由器节点类型、链路信息和链路接口。
3.根据权利要求2所述的方法,其特征在于,所述设置的虚拟路由器节点包括如下一种或多种模块化虚拟路由器节点集合单个虚拟路由器节点、星型连接虚拟路由器节点集合、环形连接虚拟路由器节点集合、树型连接路由节点集合、网格连接虚拟路由器节点集合。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括设置包含一定数量的路由的虚拟容器,所述虚拟容器附加在所述虚拟路由器节点。
5.根据权利要求1所述的方法,其特征在于,所述获得链路状态信息具体包括调用存储的虚拟网络拓扑信息或实际网络拓扑信息,根据调用的虚拟网络拓扑信息或实际网络拓扑信息生成链路状态信息。
6.根据权利要求1至5任意一项所述的方法,其特征在于,所述链路状态路由协议包括开放最短路径优先路由协议和/或中间系统到中间系统路径协议。
7.根据权利要求6所述的方法,其特征在于,当测试开放最短路径优先路由协议时,通过与所述被测设备交互互联网协议IP报文中的Hello报文建立与所述被测设备之间的链路状态路由协议会话;通过与所述被测设备交互互联网协议IP报文中的DD报文维护与所述被测设备之间的链路状态路由协议会话;当测试中间系统到中间系统路由协议时,通过与所述被测设备交互链路层上的Hello报文建立与所述被测设备之间的链路状态协议会话。
8.一种测试装置,其特征在于,所述装置包括通信模块,用于与被测设备建立并维护链路状态路由协议会话;链路状态报文生成模块,用于获取链路状态信息,将获取的链路状态信息封装成链路状态报文;链路状态报文发送模块,用于将所述链路状态报文生成模块生成的链路状态报文发送给所述被测设备以测试所述被测设备的性能。
9.一种测试系统,其特征在于,所述系统包括计算处理系统,用于执行软件程序;通信接口卡,用于建立与被测设备的通信链路;所述系统还包括在计算处理系统上执行的软件执行模块,该软件执行模块包括通信处理模块,用于经由所所述通信接口卡与被测设备建立并维护链路状态路由协议会话;链路状态报文生成模块,用于获取链路状态信息,将获取的链路状态信息封装成链路状态报文;链路状态报文发送模块,用于将所述链路状态报文生成模块生成的链路状态报文经由所述通信接口卡发送给所述被测设备以测试所述被测设备的性能。
10.根据权利要求9所述的系统,其特征在于,所述链路状态路由协议包括最短路径优先路由协议和/或中间系统到中间系统路由协议。
全文摘要
本发明实施例公开了一种测试网络设备路由协议性能的方法、装置和系统,该方法通过通用软件实现,包括启动测试,与被测设备建立链路状态路由协议会话;获得链路状态信息,将获得的链路状态信息封装成链路状态报文发送给所述被测设备以测试所述被测设备的性能。本发明的测试系统支持包括通用计算机系统在内的多个硬件开发系统。
文档编号H04L29/06GK101094112SQ200710076100
公开日2007年12月26日 申请日期2007年7月23日 优先权日2007年7月23日
发明者陈志民 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1