OSPF路由协议仿真测试

发表于:2007-06-10来源:作者:点击数: 标签:路由协议仿真测试ospf
路由器和三层交换机作为因特网中的关键设备,获得了广泛的应用,随着人们对 网络 服务 质量 的高要求,路由器和三层交换机的功能和 性能指标 变得越来越重要。路由测试主要分为一致性测试、互操作性测试、 功能测试 和 性能测试 。其中路由协议仿真是路由协
  路由器和三层交换机作为因特网中的关键设备,获得了广泛的应用,随着人们对网络服务质量的高要求,路由器和三层交换机的功能和性能指标变得越来越重要。路由测试主要分为一致性测试、互操作性测试、功能测试性能测试。其中路由协议仿真是路由协议的基础。在众多路由协议中,OSPF最为复杂、其路由协议得仿真也就最复杂,本文将结合世界上著名的测试仪表Adtech?AX/4000介绍如何进行OSPF路由协议的仿真测试,同时也可以帮助读者理解OSPF的工作原理和路由测试基本过程。?

  OSPF协议是种基于Djkstra算法的链路状态协议,用于自治系统(AS)内的路由。作为一种链路状态的路由协议,OSPF将链路状态广播数据包LSA(Link?State?Advertisement)传送给在某一区域(Area)内的所有路由器。OSPF支持三种网络的连接:点对点连接、具有广播功能的局域网和无广播功能的广域网。在OSPF路由协议中存在一个骨干区域(Backbone),该区域包括属于这个区域的网络及相应的路由器,骨干区域必须是连续的,同时也要求其余区域必须与骨干区域直接相连。骨干区域一般为0.0.0.0,其主要工作是在其余区域间传递路由信息。所有的区域,包括骨干区域之间的网络结构情况是互不可见的,当一个区域的路由信息对外广播时,其路由信息是先传递至区域0(骨干区域),再由区域0将该路由信息向其余区域作广播。在实际网络中,可能会存在骨干区域不连续的或者某一个区域与骨干区域物理不相连的情况,在这两种情况下,系统管理员可以通过设置虚拟链路的方法来解决。?

  在下面的这个仿真测试的例子中,我们使用了Adtech?AX/4000的两个具有全部路由测试许可证的mAX?GA测试模块和两个10/100M接口模块,测试控制软件版本为4.31.0,安装在Compaq?Evo?N600c?P1G的笔记本电脑上。我们首先将被测设备支持OSPF的路由器进行配置。其Router?ID=1.1.1.1。我们在下面给出了两种路由器的典型配置。?

思科(Cisco)路由器OSPF的配置
  被测设备(DUT):Cisco?Router:?

  interface?ethernet?0?

  ??ip?address?10.0.0.1?255.255.255.0?

  !?

  interface?ethernet?1?

  ip?address?20.0.0.1?255.255.255.0?

  !?

  router?id?1.1.1.1?

  !?

  router?ospf?100?

  ??network?10.0.0.4?0.0.0.255?area?0?

  ??network?20.0.0.0?0.0.0.255?area?0?

  !?

华为(Huawei)26系列路由器OSPF的配置
  router?id?1.1.1.1?

  interface?ethernet?0?

  ??ip?addr?10.0.0.1?255.255.255.0?

  ??ip?ospf?enable?area?0?

  !?

  interface?Ethernet?1?

  ip?addr?20.0.0.1?255.255.255.0?

  ip?ospf?enable?area?0?

  !?

  我们将使Adtech?AX/4000?10/100M的接口一进行路由仿真,而接口二进行流量产生。具体的测试拓扑结构请见下图。?

?


  从测试拓扑中,可以看到Adtech?AX/4000的两个接口分别与路由器的Ethernet?0和Ethernet?1接口相连。Adtech?AX/4000的接口一模拟了两台路由器,这两台路由器都是在0.0.0.0这个区域里,路由器2.2.2.2与被测路由器直接相连,路由器3.3.3.3和路由器2.2.2.2通过一个局域网连接,其中路由器3.3.3.3为DR。而网络12.0.0.0/24也连接在路由器3.3.3.3的一个接口上。?

  在Adtech?AX/4000配置中,首先进入控制界面的Emulation对话框,配置接口一和接口二的IP地址和对应的网关。为了确保连接的正确,可以使用PING的功能来检查。?

  接口一:?IP=10.0.0.2?掩码=255.255.255.0?网关=10.0.0.1?

  接口二:?IP=20.0.0.2?掩码=255.255.255.0?网关=20.0.0.1?

  然后在Emulation的OSPF部分激活(Enable)OSPF的仿真功能,然后添加仿真接点一。接点一配置:OSPF?mode设为point?to?point,接点IP为10.0.0.2,Router?ID为2.2.2.2,Area?ID为0.0.0.0。Adtech?AX/4000还允许设定OSPF中计数器,和指定接点代表的路由器类型等其他许多参数。将Priority设置为0,这样这台虚拟路由器就不会成为DR或BDR,本例中其它参数采用缺省值即可。这时,在被测设备(DUT)上的控制台上可以用show?ip?ospf?neighbor来验证邻居关系是否建立,也可以用show?ip?ospf?database。在路由器的控制台上的显示为:?

  router#show?ip?ospf?database?


OSPF?Router?with?ID?(1.1.1.1)?(Process?ID?1)、?
Router?Link?States?(Area?0)?
Link?ID?ADV?Router?Age?Seq#?Checksum?Link?count?
1.1.1.1?1.1.1.1?1361?0x80000007?0xB468?1?
2.2.2.2?2.2.2.2?1369?0x8000000B?0x628D?1?
Net?Link?States?(Area?0)?
Link?ID?ADV?Router?Age?Seq#?Checksum?
10.0.0.1?1.1.1.1?13?69?0x80000001?0x7991?

  下面介绍如何通过Adtech?AX/4000进行OSPF的模拟,首先在进入LSA的Setup,在Router的条目下加入两个虚拟路由器Router?ID=2.2.2.2和3.3.3.3。对于路由器2.2.2.2,需要指定LSA的类型为Transit?network,表示多路访问的网络,ID=11.0.0.2,Data=11.0.0.1。在这里ID表示DR的在该网络的IP地址,Data表示接口的IP地址。对于点到点(Point?to?point)连接和虚拟连接(Virtual?Link)的情况,ID表示邻居路由器的Router?ID,Data表示接口的IP地址;如果是存根网络(Stub?Network),ID指IP网络,Data指IP网络掩码。同时可以模拟虚拟路由器的类型,如虚拟链路终结点、ASBR和ABR。?

  然后在Network的条目下加入虚拟路由器连接的网络,从配置图中我们可以看见有两个多路访问的网络,LS?ID为DR的IP地址,其中连接路由器Router?ID=2.2.2.2和3.3.3.3的网络,LS?ID=11.0.0.2,仅连接在路由器Router?ID=3.3.3.3的网络,LS?ID=12.0.0.1。这样就生成了如图所示的简单的OSPF网络。确认后在路由器控制台上show?ip?ospf?database。?

  router#show?ip?ospf?database?


OSPF?Router?with?ID?(10.0.0.2)?(Process?ID?1)?
Router?Link?States?(Area?0)?
Link?ID?ADV?Router?Age?Seq#?Checksum?Link?count?
1.1.1.1?1.1.1.1?326?0x80000038?0xF8C8?2?
2.2.2.2?2.2.2.2?1724?0x80000035?0xEB7?1?
3.3.3.3?3.3.3.3?335?0x80000002?0x7C75?2?
Net?Link?States?(Area?0)?
Link?ID?ADV?Router?Age?Seq#?Checksum?
10.0.0.1?1.1.1.1?1724?0x8000002B?0x25BB?
11.0.0.2?3.3.3.3?335?0x80000002?0x52D4?
12.0.0.1?3.3.3.3?335?0x80000002?0xC273?

  从显示中我们可以看到新的Router?LSA,虚拟路由器为3.3.3.3,Network?LSA,Link?ID为11.0.0.2和12.0.0.1。通过show?ip?route。在控制台上可以看到路由器学到两条新的路由11.0.0.0和12.0.0.0。?

  为了测试路由器是否能够进行正确的IP包转发,在Adtech?AX/4000端口2上,可以配置测试数据流。Adtech?AX/4000上的定义数据流的属性非常丰富,可以定义多达4096个数据流(Stream),可以定义数据流包长的分布和发送数据包的分布模型等。本例的测试数据流设置中,建立两个将流的目的地址分别设定为11.0.0.1和12.0.0.1。流量负载的大小为10%。然后同时启动Adtech?AX/4000的流量发生和分析功能。如果路由器正确转发,端口1上可以看到从路由器转发的测试流量。同时可以测试每个流的丢包、延迟、延迟分布、抖动等。?

  在路由仿真的基础上,可以进一步进行路由性能的测试。目前的性能测试仪表,如:AX/4000和SmartBits都提供了一个图形化的OSPF?LSA生成工具,可以帮助测试人员生成需要的OSPF拓扑结构。测试人员也可以通过提供的大容量路由表生成向导来生成大量的路由表。本涉及到的OSPF路由测试的内容只是路由测试的基础,希望对各位读者能有帮助。

原文转自:http://www.ltesting.net