测试网络设备的方法和装置的制作方法

文档序号:7923018阅读:155来源:国知局
专利名称:测试网络设备的方法和装置的制作方法
技术领域
本发明涉及计算机网络技术,特别地涉及一种测试网络设备的方法和装置。
背景技术
随着计算机技术和通信技术的发展,网络设备例如交换机、路由器等实现 的功能和协议也越来越多,提供的服务也越来越丰富,用户通过相关网络协议 与网络设备建立并接受相应的服务。网络设备的一种功能涉及对用户数量的管 理,例如管理与网络设备建立或者接受网络设备提供的服务的用户的数量,这
种功能称作网络设备的多用户特性管理功能。比如,动态主机配置协议DHCP (Dynamic Host Configuration Protocol)建立的DHCP CLIENT用户等等。
网络设备的多用户特性管理功能都会涉及到网络设备关于这类用户的容 量,比如某款网络设备上实现了 DHCP SNOOPING,即DHCP侦听功能,DHCP CL正NT用户容量为4k ( lk=1000 )。在对网络设备的多用户特性管理功能进行 测试时,测试人员需要模拟使用网络设备所提供的服务的用户,验证网络设备 的多用户特性管理功能的正确性。
对网络设备而言,主要通过MAC地址和IP地址来标识一个用户。其中介 质访问控制MAC (Media Access Control)地址是烧录在网卡NIC (Network Interface Card)里的地址,也叫物理地址,是识别局i或网LAN (Local Area Network)节点的标识。网卡的物理地址通常是由网卡生产厂家烧入网卡的 EPROM,它存储的是传输数据时标识发出数据的电脑和接收数据的主机的地 址。也就是说,在网络底层的物理传输过程中,是通过物理地址来识别主机的, 它一般是全球唯一的。网际协议IP (Internet Protocol)地址工作在网络层, 在逻辑上标识网络中的一台主机。 一般用点分十进制表示,比如192.168丄1。此外,由于网络设备一般都实现了虚拟局域网VLAN (Virtual Local Area Network ),网络设备用VLAN ID来标识用户所在的VLAN。因此网络设备标 识一个用户,可以通过IP地址、MAC地址和VLAN ID这三个参凄t来唯一标 识。如果网络设备没有实现VLAN技术,那么一jf殳通过MAC地址和IP地址 来唯一标识。
DHCP SNOOPING —般在连接有DHCP用户的网络设备上开启。在DHCP 的网络环境中经常会出现用户私自设置IP地址的情况,这样的用户通常称作 非法用户,非法用户的存在增加了网络维护的困难,并且会导致一些使用DHCP 获取IP地址的合法用户因为IP地址沖突而无法正常使用网络。DHCP SNOOPING通过窥探DHCP用户和DHCP服务器之间交互的DHCP报文,把 用户身份信息例如用户终端的MAC地址、用户终端所在的物理端口号等信息
等信息组成一个用户记录表项,形成DHCP SNOOPING的用户数据库,通过 该用户数据库的信息对用户发送的报文进行合法性检查,丟弃不合法用户的报 文,来达到控制用户上网的目的。另外,由于DHCP服务器分配IP地址是使 用广播的形式,从而也会存在非法DHCP服务器广播DHCP响应而影响用户 正常获取IP地址的情况。应用DHCP SNOOPING就可以实现对非法DHCP服
目前网络设备的多用户特性管理功能测试的一般方式是测试人员使用一 台或几台终端设备例如个人计算机PC ( Personal Computer)来模拟协议用户, 经过被测网络设备与服务器交互,测试网络设备的多用户特性管理功能的正确 性。在网络维护中一般对于用户数达到或超过被测网络设备的容量时网络的运 行状况更加关心,比如系统崩溃,内存泄露,转发异常等,需要研究如何应对 这些状况的发生,因此需根据模拟出网络设备的用户数容量这样的数量较大的 用户,该数量往往在IOOO以上,由于一台pc只能^t拟为一个用户,在通常的 实验环境中无法模拟上千个用户,这样无法充分测试在用户数达到或超过被测网络设备的容量时被测网络设备的性能。

发明内容
本发明的主要目的是提供一种测试网络设备的方法和装置,以解决现有技 术中无法充分测试在用户数达到或超过被测网络设备的容量时被测网络设备 的性能的问题。
为解决上述问题,本发明提供如下的技术方案 一种测试网络设备的方法,包括如下步骤
测试装置根据设置的一个或多个用户标识,按照网络设备提供的服务所应 用的协议对应的开》丈系统互连参考模型OSI/RM层次,生成属于所述OSI/RM 各层次的字段,并将生成的字段合并构成对应于各用户标识的服务请求报文;
测试装置将构成的一个或多个服务请求报文向网络设备发送,并根据预设 的测试项目与网络设备根据收到的报文与测试装置进行信息交互;
测试装置获取所述信息交互产生的属于预设测试项目的数据,并输出根据 该数据得到的网络设备性能分析结果。
一种测试网络设备的装置,包括
报文构成模块,用于根据预设的一个或多个用户标识,按照网络设备提供 的服务所应用的协议对应的开放系统互连参考模型OSI/RM层次,生成属于所 述OSI/RM各层次的字段,并将生成的字段合并构成对应于各用户标识的服务 请求报文;
交互模块,用于向网络设备发送报文构成模块构成的一个或多个服务请求 报文,并根据预设的测试项目与网络设备收到该报文后与网络设备进行信息交 互;
获取模块,用于获取所述信息交互产生的属于预设项目的数据,并输出根 据该数据得到的网络设备性能分析结果。
根据本发明实施例的技术方案,根据预设的用户标识生成测试报文并根据生成的报文与被测网络设备进行信息交互,以及获取信息交互过程中产生的数 据,在此过程中是由测试装置根据设置的用户标识生成测试报文,而不是根据 实际的终端设备的标识生成测试报文,所以能够突破一台终端设备只能模拟一 个测试用户的局限,实现在同一台终端设备上模拟多个用户,由此能够充分测 试在用户数达到或超过被测网络设备的容量时被测网络设备的性能。


图1为本发明实施例的方法流程图2为OSI/RM模型的层次示意图3为本发明实施例中使用的测试装置实体结构示意图4A和图4B为测试装置和被测网络设备的物理连接示意图5为测试装置向被测网络设备发送数据的处理流程图6为测试软件的工作流程图7为获取测试参数的人机界面示意图8为显示测试结果的人机界面示意图9为本发明实施例中的装置结构示意图。
具体实施例方式
为了在网络设备的多用户特性管理功能测试中模拟较大数量的用户,在本 发明实施例中,预设多个用户标识,测试装置根据这些预设的用户标识生成服 务请求报文并向被测的网络设备发送,并获取网络设备响应该服务请求报文所 生成的各种数据,以及根据这些数据对网络设备的多用户特性管理功能进行分 析。具体步骤如图i所示。
步骤ll:设置用户标识。设置用户标识是为了构造用于测试的服务请求报 文,所以用户标识的类型根据报文所使用的协议的要求而定。例如服务请求报 文是DHCP请求报文,那么根据DHCP协议的要求,用户标识为MAC地址。在一些网络服务中也需要验证用户的IP地址,或者既验证用户IP地址又验证
MAC地址。所以设置的用户标识可以是用户IP地址和/或MAC地址。在实现 了虚拟局域网VLAN ( Virtual Local Area Network)的网络环境中,还可以使用 虚拟网络标识VLAN ID和MAC地址的组合作为用户标识。另外也可以将IP 地址与VLAN ID以及MAC地址共同作为用户标识。在测试时如果已有前次 测试设置的用户标识,则可以直接从步骤12开始测试流程。如果需要考察网 络设备的多用户特性管理功能在较大数目的用户数下的功能执行情况,则可以 根据网络设备提供的服务的用户容量设置多个用户标识。
步骤12:测试装置生成服务请求报文。在实际网络应用系统中每个用户的 服务请求报文中包含了该用户的标识,所以在测试中也采取相同的做法,在每 个用于测试的服务请求报文中包含有生成的用户标识,并且该服务请求是按照 网络设备提供的服务所应用的协议生成,例如DHCP协议和IEEE802.1x协议。 可以是对应于如图2所示的开放系统互连参考模型OSI/RM (Open System Interconnection Reference Model)的各个层次,生成属于OSI/RM各层次的字 段,并将生成的字段合并构成服务请求报文。在步骤11中如果生成了一个或 多个用户标识,那么在本步骤中相应地可以生成一个或多个服务请求报文。 步骤13:测试装置将生成的服务请求报文向网络设备发送。 步骤14:网络设备根据收到的报文与测试装置进行信息交互。网络设备根 据用户发送的服务请求报文与用户进行信息交互的具体内容根据网络设备提 供的服务类型而定,例如针对网络设备提供的DHCP服务器功能,用户需要利 用该功能获得IP地址,则用户向该网络设备发送的服务请求报文就是DHCP 请求,相应地网络设备返回DHCP响应,于是该用户获得IP地址。信息交互 还可以包括进一步的交互,而不仅限于一个回合的交互,例如上例中,用户获 得IP地址之后,可以进一步使用获取的IP地址,例如发送ARP (Address Resolution Protocol)请求报文,或者向网络设备请求其他服务,该其他服务需 要验证用户的IP地址和MAC地址。并且,在测试环境下,网络设备也可以是向测试装置转发信息,例如测试网络设备的DHCP SNOOPING功能,则测试 装置模拟用户端和服务器端,在模拟的用户端与服务器端之间互相发送信息, 而这些信息都通过网络设备转发,以此来测试网络设备的DHCP SNOOPING功能。
需要说明的是,对于步骤13和14,也可以是并列地进行,就是说,在步 骤13中测试装置向网络设备发送服务请求报文的同时,可以进行步骤14,即 网络设备根据已收到的服务请求报文与测试装置进行信息交互。 在网络设备生成多用户特性管理信息之后,即进行步骤15。 步骤15:测试装置根据预设的测试项目,获取步骤14中产生的属于预设 测试项目的数据。因为在步骤14的信息交互中通常会产生多种数据,除了有 关于多用户管理信息的数据例如DHCP SNOOPING用户数据库,还包括一些 事件数据例如异常事件报告,其中有些数据是测试人员所关心的,所以可以预 先设置一些测试项目,例如在步骤14中进行了请求IP地址的DHCP协议交互, 在本步骤中就可以测试IP地址的请求成功或失败的次^:,或者测试该请求过 程中是否能够正确产生服务响应信息例如DHCP服务器向用户分配的IP地址 和租约时间等;又如在步骤14中用户获取了 IP地址之后,在本步骤中可以进 一步考察用户根据获取的IP地址是否能够在发送测试报文例如发出ARP请求 之后收到正确的测试响应信息例如ARP回应信息;又如在测试DHCP SNOOPING功能时,测试装置的两个端口互相发送服务请求报文和服务应答 报文,发送过程中是通过被测网络设备进行转发,网络设备执行自身功能,即 DHCP SNOOPING功能,记录测试装置的两个端口之间的相关信息,生成记录 有IP地址与MAC地址的记录表项。总之,在信息交互中,测试装置根据预设 的项目,获取信息交互过程产生的属于预设的测试项目的数据。本步骤可以和 步骤14并列进行,即在步骤14的信息交互的过程中获取属于预设测试项目的 数据。
步骤16:测试装置输出网络设备性能分析结果。因为在步骤15中已经获得了有关测试项目的数据,所以能够根据这些数据进行分析。这种分析可以是 测试装置自动地进行,例如根据编写的程序来检查多个服务请求报文被发送之
后收到正确的回应报文的比例,即网络设备服务响应正确率;也可以是在测试 人员的操作下进行,例如根据输出的异常事件报告进行分析,又如根据DHCP SNOOPING功能中得到的记录表项,在测试装置的模拟用户端进一步发送测试 报文,其中包含设置的IP地址和MAC地址,通过被测装置转发,检查该测试 报文是否被允许转发或丢弃,以此验证记录表项的正确性或者DHCP SNOOPING功能完好性。在本步骤中由测试装置将上迷分析的结果输出,于是 完成本次测-汰。
下面结合具体的测试装置实体结构对本发明实施例的方法作进一步说明。 本发明实施例中使用的测试装置实体结构如图3所示,包括测试软件31,用于 生成测试需要的报文以及显示测试结果;操作系统32,用于提供应用软件与物 理硬件的转换接口;物理硬件33,包括处理器、存储器和输入输出等硬件设备。 可以使用常用的PC才几来构建测试装置,该PC才几包含一块或两块网卡,用于 收发测试装置与被测设备之间的交互信息,在该PC机中运行常用的操作系统 例如Window操作系统等。
测试装置和被测网络设备的物理连接如图4A和图4B所示。在图4A和图 4B中,测试装置41上的串口连接到被测网络设备42的CONSOLE端口 , 二 者间通过串口电缆直接连接形成线路40,用于进行网络设备配置管理,并实时 监控测试过程的输入与输出信息。线路4A1 、线路4B3和线路4B4用于传送服 务请求报文以及测试装置41与被测网络设备42根据服务请求报文进行的信息 交互。线路4A1、线路4B3和线路4B4可以采用五类双绞线构成。图4A和图 4B的不同之处在于图4A的连接方式中使用了一块网卡4A0,而图4B的连接 方式中使用了两块网卡4B1和4B2。下面对此作进一步解释。图4A的测试系 统中,测试装置41模拟申请网络服务的用户,例如向DHCP服务器申请IP地 址,则测试装置41生成DHCP请求报文,通过网卡4A0,在线路4A1上向被测网络设备42发送,被测网络设备42响应该DHCP请求报文,通过线路4A1 返回DHCP服务应答报文,这样可以测试DHCP服务器关于分配IP地址的多 用户特性管理功能。而在图4B的测试系统中,测试装置41同时才莫拟用户端和 服务器端,用户端报文通过网卡4B1发送和接收,服务器端报文通过网卡4B2 发送和接收。例如需要测试网络设备的DHCP SNOOPING功能,从网卡4B1 发出DHCP请求报文,在线路4B3上传送至被测网络设备42,由被测网络设 备42将该DHCP请求报文在线路4B4上转发至测试装置41 ,测试装置41通 过网卡4B2接收;然后测试装置41根据预先设置的DHCP响应报文,将对应 于被测网络设备42转发的DHCP请求报文的DHCP响应报文通过网卡4B2, 在线路4B4上向被测网络设备42发送,被测网络设备42再将该DHCP响应 报文通过线路4B3向测试装置41发送,测试装置41通过网卡4B1进行接收。 所以,具体是采用图4A还是图4B所示的测试系统,应当根据被测网络设备 的多用户特性管理功能的类型来决定。
应用图4A所示的测试系统,测试装置41向被测网络i殳备42发送数据的 处理流程如图5所示。
步骤51:接收测试参数。测试参数由测试人员输入,类型包括模拟的用户 MAC地址、用户IP地址、用户数量、用户VID等,4艮据需要测试的多用户特 性管理功能来确定具体需要的测试参数。在模拟多个用户的情况下,用户的 MAC地址和IP地址可以使用初始值与模拟用户数相结合的方法来生成,例如 要生成5个用户的IP地址,设置IP初始值为172.16.1.1,并且设置才莫拟用户数 为5,则生成的5个用户的IP地址为172.16.1.1, 172.16.1.2, 172.16.1.3, 172.16.1.4, 172.16.1.5。 MAC地址的设置也可以4吏用类似的方法进行。
步骤52:构造测试报文。
步骤53:将构造的测试报文向被测网络设备发送。
在步骤52中,参考图2,按照网络设备提供的服务所应用的协议对应的开 放系统互连参考模型OSI/RM的各层次,生成相应的字段,并将生成的字段合并构成对应于各用户标识的服务请求报文。具体可以根据如下的方式构造测试
报文
将应用层,表示层和会话层所承载的数据作为传输层的负载进行封装,作 为传输层数据负载字段。
传输层采用UDP或TCP报文格式进行构造,具体报文格式根据RFC协 议768版本或793版本的要求进行,以应用层传下的数据作为负载,构造TCP 或UDP的报文头部,并合并应用层数据进行较^r和计算,最终合并作为网络 层的数据负载字段。
网络层采用IP报文格式进行构造,具体报文格式根据RFC协议791版本, 根据步骤5i中生成的IP地址,将该IP地址作为才艮文的源IP填入IP ^^头相应 的字段中,若需填写目的IP地址,则同样根据测试协议需要不变或依次递增 变化。构造成功IP报头后同传输层传下的数据字段合并,并作为数据链路层 的数据字段输入。
数据链路层主要进行以太网报头的封装,根据步骤51中生成的MAC地址,
的MAC地址,则根据测试协议需要不变或依次递增变化。如需模拟虚拟局域 网环境,这里的MAC地址也可以用MAC地址与VLAN的组合来代替。对网 络层传入的数据字段直接进行报头字段的添加,合并后传至物理层进行物理链 路的传输。
物理层功能是对上层传入的报文进行格式转化,进行物理链路上的传输通 信。该格式转化之后得到的报文即可在步骤53中进行发送。
应用图4B所示的测试系统,网卡4B1向被测网络设备42发送数据的处 理流程与图5所示流程相同。网卡4B2需设置为混杂模式,以接收网络上的任 意形式的报文。应用图4B所示的测试系统时,需预先设置服务应答报文,例 如测试DHCP SNOOPING的多用户特性管理功能时,需设置DHCP响应报文, 并且这些报文应当对应于从网卡4B1发送的DHCP请求报文。DHCP响应报文的生成方式与DHCP请求报文相类似。
以下结合图6,再对测试软件的工作流程作出iJt明。
步骤61:接收测试参数。测试人员根据被测协议,设置被测协议用户和服 务器端的参数,测试软件在本步骤中接收测试人员输入的参数。这些参数的类 型例如模拟的用户数、用户所在VLAN的VLAN ID、起始MAC地址、起始 IP地址等,根据被测的多用户特性管理功能涉及的协议的不同,测试人员选择 需要的参数并输入。在一些情况下测试人员还需输入模拟客户端和服务器端的 网卡名称,以便在步骤63中根据网卡的名称指定网卡收发规定的报文。在网 卡初始化阶段会进行网卡信息检索,查找系统中网卡的所注册的I D值,协议 仿真交互过程中根据ID驱动网卡进行收发包模拟。
步骤62:判断参数格式是否正确。在本步骤中对步骤61中接收的参数进 行格式检查,例如仿真用户数只可为数字,若输入为字母,则返回步骤61,要 求重新接收参数。
步骤63:网卡初始化。根据用户输入的网卡名称,对应查找到系统中相应 网卡的注册名称从而确定网卡,测试过程中根据网卡的注册名称调用网卡并使 用该网卡进行收发包。
步骤64:生成报文。在本步骤中生成报文的方式与图5的流程中生成报文 的方式相同。在本步骤中,对于生成的服务请求报文,还可以对其添加标识信 息例如报文的序号,这样,如果在信息交互过程中出现的交互失败,可直接根 据报文的标识信息调用该次交互失败的报文进行重新交互或者进行其他分析。
步骤65:协议交互仿真。根据测试的多用户管理功能的要求,调用步骤 64中构造的报文,由网卡进行收发包工作。在这里需要说明的是,在实际操作 系统中的应用层数据由操作系统进行按层次的封装,最后封装相应的网卡信 息,这些由操作系统在后台完成。而在本发明实施例中,仅使用网卡进行数据 收发,绕过操作系统的socket编程而直接驱动网卡发送数据包,并不对网卡的 信息进行封装。但由于直接驱动网卡进行物理链路的收发包的存在一定的格式差异,所在在本步骤中需要相应进行报文格式的转化,将上层传入的报文结构 进行简单的编码转化,根据协议调用模拟网卡进行帧校验和计算并发包,同时 会在接收方的网卡开启实时监听,并设置协议报文的匹配规则在网卡进行过滤 抓包,同时进行简单的协议报文解析,并按协议的要求进行处理。在本步骤中 被测网络设备生成相应的多用户特性管理信息。
步骤66:协议交互结果处理。在本步骤中,才艮据步骤65中的协议交互产 生的各种数据,对协议交互结果进行处理。因为在步骤65的协议交互中通常 会产生多种数据,或者产生一些具体事件,对于其中有些数据和事件是测试人 员所关心的,所以可以预先设置一些测试项目,例如测试协议交互过程中的事 件次数如交互的成功或失败的次数,或者测试协议交互过程中是否能够正确产 生数据例如DHCP服务器向用户分配的IP地址和租约时间等。在协议交互中, 测试装置根据预设的项目,获取协议交互过程产生的属于预设项目的数据。
步骤67:判断是否需要协议交互重放。如果在步骤66中输出了协议交互 失败的报文的列表,则测试人员可以预先设置是否需要重新发送这些报文或其 中的一部分,以便详细地分析交互失败的原因,在本步骤中测试软件查找测试 人员预先的设置,若需重新发送这些报文,则返回步骤55,否则结束本次测试。
步骤68:生成异常报告。对于步骤63、 64和65中可能出现的异常情况, 在本步骤中生成异常报告,例如记录和输出异常信息。例如测试过程中出现的 系统不兼容,网卡信息无法初始化进行异常抛出等情况,在本步骤中输出相应 的提示信息,使测试人员根据该信息进行快速的错误定位和排查。
步骤69:输出测试数据。在步骤61、 65、 66、 68之后将执行步骤69,以 实现测试过程中的数据记录。记录的数据例如接收的测试参数、测试装置与 被测网络设备之间的交互信息以及交互结果、测试过程中产生的异常报告、协 议交互失败后重新发送的报文的标识信息等。输出的测试数据可用于对测试进 行的分析。这种分析可以是测试装置自动地进行,例如根据编写的程序来检查 多个服务请求报文被发送之后收到正确的回应报文的比例,即网络设备服务响应正确率;也可以是由测试人员来完成,例如根据输出的异常事件报告进行分 析推理等。
下面再#>据图4B所示的系统,以测试DHCP SNOOPING功能为例对本发 明实施例的方法作进一步说明。根据图4B的结构组装测试系统,通过串口将 测试装置与被测网络设备的CONSOLE端口连接。测试装置上同时模拟DHCP 用户和DHCP服务器,因此测试装置中设有DHCP用户模块和DHCP服务器 模块。设置测试装置上的两块网卡IP地址分别为10.0.0.1和20.0.0.1,这样避 免模拟过程中出现IP地址冲突。网卡4B1和4B2的名称分别为PORT1和 PORT2。设置收发用户端报文的网卡名称为PORTl,收发服务器端报文的网卡 名称为PORT2。设置多用户模拟参数和服务器参数,客户端参数设置模拟的 DHCP CLIENT用户数nl,模拟的起始MAC地址n3 ,服务器端设置DHCP服 务器的IP地址,租约地址池,DNSIP地址,租约时间等参数。在本实施例中, 我们选择测试模拟的用户数nl = 200个,起始MAC地址n3 = 0000.0000.0001。 那么,生成的200个用户对应的MAC地址按设置的步长依次递增,例如步长 为1,则第200个用户MAC地址为0000.0000.00C8。设置DHCP SERVER的 IP地址为192.168.1.1/24,提供给DHCP用户租约的IP地址范围为 172.16.U0 172.16丄209,共200个IP地址,都是24位掩码。用户网关IP地 址为172.16.1.1, DNS的IP地址为172.16.1.1,租约时间为1000分钟。可以 使用如图7所示的界面70作为获取测试参数的人机界面,测试开始时,会对 该界面接收的参数进行合法性检测,如果存在非法输入则要求重新输入。
根据设置的参数开始进行测试,此时点击"开始测试"按钮进行测试。测 试软件从设置的MAC地址中取出所有的200个MAC地址构造DHCP请求报 文,并从设置的IP地址范围中取出200个IP,结合设置的MAC地址构造DHCP 应答报文。构造完毕后将报文进行存储。报文构造完毕后进行信息交互,DHCP 用户模块依次从存储的报文中提取出构造成功的报文,可以是以10个报文为 一组进行提取,对每个用户实例,分别创建DHCP CLIENT处理线程。每个线程根据提取的DHCP请求报文,请求DHCP服务器模块分配IP地址。DHCP用 户的报文由测试装置上的网卡PORT1进行收发,DHCP服务器的报文由测试 装置上的网卡PORT2进行收发。DHCP用户模块根据收到的数据内容及该用 户的当前状态,按照DHCP协议对用户的状态进行迁移,最终完成IP地址的 获取。当获取成功后,DHCP用户模块就以VID、 MAC地址和IP地址的组合 作为用户标识,比如第一个用户的标识可以表达为(2, 0000.0000.0001, 172.16丄10),同时将最终获取的信息作为多用户特性管理信息并输出,如图8 中的显示测试结果的人机界面80中的输出框81所示。当上述步骤完成后,再 提取下一组并进行同样方式的测试,在所有报文被提取并且测试结束后,对本 次测试过程中,根据DHCP请求报文发送之后信息交互的成功次数和失败次数 进行统计,并记录相关统计结果,例如交互失败时对应的DHCP请求报文的标 识信息。还可以对测试过程中出现的错误,进行规范的输出,通常可能会出现 的错误有无法查找到系统中的网卡注册信息,报文初始化失败和仿真系统协 议交互过程中报文收发异常。
根据记录的统计结果,可以对测试作进一步分析。例如可以重新发送交互 失败时对应的DHCP请求报文;也可以根据对测试过程中出现的错误的规范输 出,查找测试中出现的错误的原因并用相应的处理。又如根据DHCP SNOOPING功能中得到的记录表项,在测试装置的模拟用户端进一步发送测试 报文,其中包含设置的IP地址和MAC地址,通过被测装置转发,检查该测试 报文是否被允许转发或丟弃,以此验证记录表项的正确性或者DHCP SNOOPING功能完好性。
根据本发明实施例的方法,下面再对本发明实施例中的装置的结构作出说 明。如图9所示,本发明实施例中的测试装置90包括报文构成模块91、交互 模块92和获取模块93 。报文构成模块91用于根据预设的 一个或多个用户标识, 按照网络设备提供的服务所应用的协议对应的开放系统互连参考模型OSI/RM 层次,生成属于所述OSI/RM各层次的字段,并将生成的字段合并构成对应于各用户标识的服务请求报文。交互模块92用于将报文构成模块91生成的一个 或多个服务请求报文向网络设备发送,并根据预设的测试项目与网络设备收到 该报文后与网络设备进行信息交互。获取模块93用于根据预设的测试项目, 获取所述信息交互产生的属于预设测试项目的数据。测试装置90还可以包括 用户标识生成模块94,用于生成一个或多个用户标识。生成的用户标识供报文 构成模块91使用。
报文构成模块91的一种结构是包括字段生成单元和合并单元。字段生成 单元用于根据用户标识生成模块94生成的一个或多个用户标识,按照网络设 备提供的服务所应用的协议对应的OSI/RM层次,生成属于所述OSI/RM各层
识的服务请求报文。
交互模块92的一种结构是包括客户端模拟发送单元和客户端模拟接收单 元。客户端模拟发送单元用于将报文构成模块构成的一个或多个服务请求报文 向网络设备发送。客户端模拟接收单元用于接收网络设备发送的服务应答报 文。
交互模块92的另一种结构是包括服务应答报文生成单元、客户端模拟单 元和服务器模拟单元。服务应答报文生成单元用于根据报文构成模块构成的多 个服务请求报文,生成多个相应的服务应答报文。客户端模拟单元用于将报文 构成模块构成的多个服务请求报文向网络设备发送。服务器模拟单元用于接收 网络设备转发的所述多个服务请求报文,以及将相应的服务应叙艮文向网络设 备发送。客户端模拟单元进一步用于接收网络设备转发的服务应答报文。
根据本发明实施例的技术方案,根据预设的用户标识生成测试报文并根据 生成的报文与被测网络设备进行信息交互,以及获取信息交互过程中产生的数 据,在此过程中是由测试装置根据设置的用户标识生成测试报文,而不是根据 实际的终端设备的标识如网卡的MAC地址生成测试报文,所以能够突破一台 终端设备只能模拟一个测试用户的局限,实现在同 一台终端设备上模拟多个用户,由此能够充分测试在用户数达到或超过被测网络设备的容量时被测网络设 备的性能。另外根据本发明实施例的技术方案,测试装置能够根据各种协议的 要求生成测试报文,这样能够测试网络设备在各种协议下的多用户特性管理功
能,例如DHCP、 IEEE802.1x等协议,因此本发明实施例的技术方案有着较为 广泛的使用范围。
明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1、一种测试网络设备的方法,其特征在于,包括如下步骤测试装置根据设置的一个或多个用户标识,按照网络设备提供的服务所应用的协议对应的开放系统互连参考模型OSI/RM层次,生成属于所述OSI/RM各层次的字段,并将生成的字段合并构成对应于各用户标识的服务请求报文;测试装置向网络设备发送构成的一个或多个服务请求报文,并根据预设的测试项目与网络设备进行信息交互;测试装置获取所述信息交互产生的属于预设测试项目的数据,并输出根据该数据得到的网络设备性能分析结果。
2、 根据权利要求1所述的方法,其特征在于,所述用户标识包括VID的组合;或者IP地址与MAC地址的组合;或者 IP地址与MAC地址以及VID的组合。
3、 根据权利要求1所述的方法,其特征在于,所述用户标识的个数是根 据网络设备提供的服务的用户容量设置的。
4、 根据权利要求1或2所述的方法,其特征在于,所述根据预设的测试 项目与测试装置进行信息交互包括网络设备接收测试装置发送的一个或多个服务请求报文,针对收到的各个服务请求报文生成相应的服务响应信息并向测试装置发送,或者,网络设备接收测试装置发送的一个或多个服务请求报文,针对收到的各个 服务请求报文生成相应的服务响应信息并向测试装置发送,测试装置收到服务 响应信息后,根据预设的测试项目生成测试报文并向网络设备发送。
5、 根据权利要求4所述的方法,其特征在于,所述属于预设测试项目的 数据包括所述服务响应信息,或者包括网络设备收到所述测试报文之后向测试 装置发送的测试响应信息;所述网络设备性能分析结果包括根据服务响应信息得出的网络设备服务 响应正确率,或者包括对所述测试响应信息进行分析的结果。
6、 根据权利要求1或2所述的方法,其特征在于,所述测试装置向网络 设备发送构成的一个或多个服务请求报文之前进一步包括测试装置生成一个 或多个相应于所述一个或多个服务请求报文的服务应答报文;所述测试装置向网络设备发送构成的一个或多个服务请求报文包括 测试装置从自身的第一端口向网络设备发送构成的一个或多个服务请求 报文;则所述根据预设的测试项目与测试装置进行信息交互包括 网络设备向测试装置的第二端口转发所述服务请求报文, 测试装置收到网络设备转发的所述服务请求报文后,从自身的第二端口向网络设备发送相应的服务应答报文,网络设备收到测试装置发送的服务应答报文后,向测试装置的第一端口发送该服务应答报文。
7、 根据权利要求6所述的方法,其特征在于,所述属于预设测试项目的 数据包括被测网络设备根据所述服务请求报文和服务应答报文,执行自身功能 得到的数据,并且所述网络设备性能分析结果包括该数据的正确性。
8、 一种测试网络设备的装置,其特征在于,包括报文构成模块,用于根据设置的一个或多个用户标识,按照网络设备提供 的服务所应用的协议对应的开放系统互连参考^^莫型OSI/RM层次,生成属于所 述OSI/RM各层次的字段,并将生成的字段合并构成对应于各用户标识的服务 请求报文;交互模块,用于向网络设备发送报文构成模块构成的一个或多个服务请求 报文,并根据预设的测试项目与网络设备收到该报文后与网络设备进行信息交 互;获取模块,用于获取所述信息交互产生的属于预设测试项目的数据,并输出根据该数据得到的网络设备性能分析结果。
9、 根据权利要求8所述的装置,其特征在于,所述交互模块包括客户端模拟发送单元,用于将报文构成模块构成的一个或多个服务请求报 文向网络设备发送;客户端模拟接收单元,用于接收网络设备发送的服务应答报文。
10、 根据权利要求8所述的装置,其特征在于,所述交互模块包括 服务应答报文生成单元,用于根据报文构成模块构成的一个或多个服务请求报文,生成一个或多个相应的服务应答报文;客户端模拟单元,用于将报文构成模块构成的一个或多个服务请求报文向 网络设备发送;服务器模拟单元,用于接收网络设备转发的所述一个或多个服务请求报 文,以及将相应的服务应答报文向网络设备发送;客户端模拟单元进一步用于接收网络设备转发的服务应答报文。
全文摘要
本发明提供一种测试网络设备的方法和装置,以解决现有技术中无法充分测试在用户数达到或超过被测网络设备的容量时被测网络设备的性能的问题。在实施例中,测试装置根据设置的一个或多个用户标识,按照网络设备提供的服务所应用的协议对应的开放系统互连参考模型OSI/RM层次,生成属于所述OSI/RM各层次的字段,并将生成的字段合并构成对应于各用户标识的服务请求报文;测试装置向网络设备发送构成的一个或多个服务请求报文,并根据预设的测试项目与网络设备进行信息交互;测试装置获取所述信息交互产生的属于预设测试项目的数据,并输出根据该数据得到的网络设备性能分析结果。
文档编号H04L29/08GK101425938SQ20081018610
公开日2009年5月6日 申请日期2008年12月17日 优先权日2008年12月17日
发明者骏 周, 杨敬民 申请人:福建星网锐捷网络有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1