CN102510346A - 网络设备的测试方法、系统及装置 - Google Patents

网络设备的测试方法、系统及装置 Download PDF

Info

Publication number
CN102510346A
CN102510346A CN201110370157XA CN201110370157A CN102510346A CN 102510346 A CN102510346 A CN 102510346A CN 201110370157X A CN201110370157X A CN 201110370157XA CN 201110370157 A CN201110370157 A CN 201110370157A CN 102510346 A CN102510346 A CN 102510346A
Authority
CN
China
Prior art keywords
test
network equipment
flow
flow rate
storehouse
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201110370157XA
Other languages
English (en)
Other versions
CN102510346B (zh
Inventor
闵庆欢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201110370157.XA priority Critical patent/CN102510346B/zh
Publication of CN102510346A publication Critical patent/CN102510346A/zh
Application granted granted Critical
Publication of CN102510346B publication Critical patent/CN102510346B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种网络设备的测试方法,包括以下步骤:分别从线上网络设备获取流入所述线上网络设备的流入在线流量和流出所述线上网络设备的流出在线流量;根据所述流入在线流量和所述流出在线流量建立测试流量库;根据测试流量库分别生成流入测试流量和流出测试流量;以及根据所述流入测试流量和所述流出测试流量对被测网络设备进行测试。本发明还公开了一种网络设备的测试系统及测试控制装置。本发明可以通过获取流经网络设备两侧的在线流量,生成相应的测试流量,从而为被测网络设备构造真实线上环境,并且采用自动化方式完成测试,从而提高了测试效率和测试准确度。

Description

网络设备的测试方法、系统及装置
技术领域
本发明涉及通信网络技术领域,特别涉及一种网络设备的测试方法、测试系统及测试控制装置。
背景技术
随着互联网的快速发展,网络连接设备的使用更加普遍。例如,互联网企业主要是为互联网用户提供服务。因此,企业网关设备通常被视为企业的对外接口。企业网关设备上往往承载着大量线上流量,工作是否稳定以及性能是否达标是互联网企业关注的焦点。在部分情况下,会出现由于网络设备的问题导致企业线上流量的丢失,直接造成经济损失。从而,需要对企业网关设备进行测试以做出相应的处理措施。
传统的网关设备的测试大多采用线下仿真测试和简单线上流量复制回放的方法。
(1)线下仿真测试
线下仿真测试区别于线上真实环境,可以自行构造线下模拟环境,在构造的环境中使用专门的网络测试仪器来测试网络设备。但是这种仪器一般价格昂贵,对小型企业而言会是一项较大开销。此外,此类测试仪器操作起来比较复杂,投入成本较大。
(2)简单线上流量复制回放
简单流量复制回放的方法通常采用旁路方式,将线上流量复制到线下,之后使用流量回放工具进行回放。但是该方法仅复制流入被测设备前的流量,对更真实反应被测设备相关处理指标的流过设备后的流量几乎不关注。其次,该方法属于开环工作流程,经过一次测试后,如果测试结果不符合要求,则需要人工介入重新抓取线上流量,导致测试效率较低。
发明内容
本发明的目的旨在至少解决上述技术缺陷。
为此,本发明的第一个目在于提供一种网络设备的测试方法,该测试方法可以采用自动化方式完成测试,从而提高测试效率和测试准确度。本发明的第二个目的在于提供一种网络设备的测试系统。本发明的第三个目的在于提供一种测试控制装置。
为实现上述目的,本发明的第一方面的实施例提供了一种网络设备的测试方法,包括如下步骤:分别从线上网络设备获取流入所述线上网络设备的流入在线流量和流出所述线上网络设备的流出在线流量;根据所述流入在线流量和所述流出在线流量建立测试流量库;根据测试流量库分别生成流入测试流量和流出测试流量;以及根据所述流入测试流量和所述流出测试流量对被测网络设备进行测试。
根据本发明实施例的网络设备的测试方法,可以通过获取流经网络设备两侧的在线流量,生成相应的测试流量,从而为被测网络设备构造真实线上环境,并且采用自动化方式完成测试,从而提高了测试效率和测试准确度。
本发明第二方面的实施例提供了一种网络设备的测试系统,包括:在线流量获取装置,用于分别从线上网络设备获取流入所述线上网络设备的流入在线流量和流出所述线上网络设备的流出在线流量;测试控制装置,用于根据所述流入在线流量和所述流出在线流量建立测试流量库,并根据测试流量库分别生成流入测试流量和流出测试流量;以及第一测试端和第二测试端,所述第一测试端和第二测试端分别位于所述被测网络设备的输入端和输出端,所述第一测试端用于将所述流入测试流量输入所述被测网络设备,所述第二测试端用于接收所述被测网络设备输出的实际流量,并将所述被测网络设备输出的实际流量与所述流出测试流量进行比对以生成测试结果。
根据本发明实施例的网络设备的测试系统,可以通过获取流经网络设备两侧的在线流量,生成相应的测试流量,从而为被测网络设备构造真实线上环境,并且采用自动化方式完成测试,从而提高了测试效率和测试准确度。
本发明第三方面的实施例提供了一种测试控制装置,包括:接收模块,用于接收流入线上网络设备的流入在线流量和流出所述线上网络设备的流出在线流量;测试流量库模块,用于根据所述流入在线流量和所述流出在线流量建立测试流量库;以及中控调度模块,用于根据测试流量库分别生成流入测试流量和流出测试流量。
根据本发明实施例的测试控制装置,可以通过获取流经网络设备两侧的在线流量,生成相应的测试流量,从而为被测网络设备构造真实线上环境,从而可以提高测试效率和测试准确度。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为传统的采用网络测试仪器测试网络连接设备的示意图;
图2为传统的采用简单流量复制回放测试方法的示意图
图3为根据本发明实施例的网络设备测试方法的流程图;
图4为根据本发明实施例的网络设备测试方法的示意图;
图5为根据本发明实施例的流量分离过程的示意图;
图6为根据本发明实施例的会话重建过程的示意图;
图7为根据本发明实施例的中控调度的示意图
图8为根据本发明实施例的测试控制的流程图;
图9为根据本发明实施例的采用智能决策进行控制的流程图;
图10为根据本发明实施例的网络设备的测试系统的示意图;
图11为图10中的测试控制装置的示意图;和
图12为根据本发明实施例的测试控制装置的示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
参照下面的描述和附图,将清楚本发明的实施例的这些和其他方面。在这些描述和附图中,具体公开了本发明的实施例中的一些特定实施方式,来表示实施本发明的实施例的原理的一些方式,但是应当理解,本发明的实施例的范围不受此限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
下面参考图3至图6描述根据本发明实施例的网络设备的测试方法。
如图3所示,本发明实施例提供的网络设备的测试方法,包括如下步骤:
步骤S301,分别从线上网络设备获取流入线上网络设备的流入在线流量和流出线上网络设备的流出在线流量。在本发明的一个示例中,网络设备可以为网关或路由器等网络连接设备。
步骤S302,根据流入在线流量和流出在线流量建立测试流量库。
步骤S303,根据测试流量库分别生成流入测试流量和流出测试流量。
步骤S304,根据流入测试流量和流出测试流量对被测网络设备进行测试。
根据本发明实施例的网络设备的测试方法,可以通过获取流经网络设备两侧的在线流量,生成相应的测试流量,从而为被测网络设备构造真实线上环境,并且采用自动化方式完成测试,从而提高了测试效率和测试准确度。
下面结合图4以网关为例对本发明实施例的网络设备的测试方法进行详细描述。
步骤S401,捕捉线上网关两侧的流量数据。具体地,分别捕捉流入线上网关的数据流量和流出线上网关的数据流量,从而获取流入线上网关的流入在线流量和流出线上网关的流出在线流量。
在本发明的一个实施例中,可以通过预先设置捕捉时间和流量参数选择捕捉预定时间段内的数量流量或预定大小的数据流量。
步骤S402,将异常流量和正常流量进行分离。
根据预设的异常流量判断规则对流入在线流量和流出在线流量进行分析。异常流量判断规则中设定有对异常流量数据的特征描述。将符合异常流量数据的特征描述的流入在线流量或流出在线流量判断为异常流量,否则判断为正常流量,从而将异常流量和正常流量进行分离。然后,将上述分离完成的异常流量和正常流量存储到测试流量库。其中,将异常流量存入异常测试流量库,且将正常流量存入背景测试流量库。
在本发明的一个实施例中,在将分离完成的正常流量存储到背景测试流量库之前,执行步骤S403,对正常流量构造传输控制协议TCP(Transmission Control Protocol,传输控制协议)会话,并对TCP会话进行重建。
下面结合图5对流量分离的过程进行详细描述。
步骤S501,接收来自上游的数据流量。
具体地,接收来自上游的线上网关的流入在线流量和流出在线流量。
步骤S502,设置异常流量判定规则。
异常流量判断规则中设置有异常流量数据的特征描述。在本发明的一个实施例中,根据测试配置人工地向异常测试流量库中添加异常流量。其中,测试人员可以根据测试业务类型的不同自行定义异常流量判定规则,也可以使用本领域普遍采用的判定规则。
步骤S503,将步骤S501中接收到的数据流量与异常流量判定规则进行顺序匹配。
步骤S504,判断数据流量特征是否符合异常流量判定规则,如果符合,则可以判断该部分流量为异常流量,执行步骤S505,否则可以判断该部分流量为正常流量,执行步骤S506。
步骤S505,将判断出的异常流量存入异常测试流量库。
步骤S506,判断该数据是否已经达到全部流量内容的尾部,如果是,则执行步骤S507,否则执行步骤S503。
步骤S507,对正常流量进行TCP会话重建,将缺失的报文补充完整后,执行步骤S508。
步骤S508,将正常流量保存到背景测试流量库,作为后续测试时的流量来源。
下面参考图6对会话重建的过程进行描述。
步骤S601,接收分离后的正常流量。
步骤S602,根据正常流量构造传输控制协议TCP会话。
具体地,根据正常流量的四元组信息,将报文哈希(hash)到不同的TCP会话中。其中,四元组信息包括源IP地址、源端口、目的IP地址和目的端口。
步骤S603,将全部报文hash到多个不同的TCP会话中,从而形成一个TCP会话队列。
步骤S604,从TCP会话队列中顺次取出一个TCP会话。
步骤S605,判断TCP会话的完整性。
判断是否已经到达TCP会话队列中的最后一个会话,如果是,则判断TCP会话是完整的,执行步骤S606,否则判断TCP会话是不完整的,执行步骤S607。
步骤S606,将所有重建后的会话报文存入背景测试流量库。
步骤S607,提取TCP会话中的所有报文。
步骤S608,判断TCP会话中TCP报文中的TCP首部校验和TCPchecksum的值是否正确。其中,TCP checksum用于校验报文在传输过程中是否出差错。
首先,计算TCP报文校验和,然后将该TCP报文校验和与该报文的checksum字段进行比较,如果相等,则表明TCP checksum值正确,执行步骤S610,否则执行步骤S609。
步骤S609,重新计算TCP checksum值,并将重新计算得到的TCPchecksum值填入报文的checksum字段。
步骤S610,检查该TCP会话中SYN(synchronize)包的数目是否正确。
在本发明的一个实施例中,通过判断SYN包序列号是否正确,从而检查该TCP会话中的SYN包的数目是否正确。如果SYN包序列号正确,则执行步骤S612,否则执行步骤S611;
步骤S611,当SYN包的数目不正确时,构造SYN包,从而补充相应的SYN包,将缺失的SYN包补充完整。
步骤S612,检查该TCP会话中数据包的数目是否正确。
在本发明的一个实施例中,通过检查数据包的序列号是否连续,是否紧接着SYN包序列号出现以及数据包结束后是否紧接着出现FIN包,从而检查TCP会话中的数据包的数目是否正确,换言之,检测是否缺少数据包。如果同时满足数据包的序列号连续、TCP会话中的数据包的数目正确且数据包结束后是否紧接着出现FIN包,则可以判断数据包完整,执行步骤614,否则执行步骤S613。
步骤S613,构造缺失的数据包,并将前一个数据包的内容作为构造的数据包的内容。
在本发明的一个实施例中,构造缺失的数据包可以理解为补充一个数据包,其中补充的该数据包具有缺少的序列号,并且具有与之前一个数据包或后一个数据包相同的内容。
步骤S614,检查该TCP会话中FIN包是否完整。
在本发明的实施例中,通过检查FIN包的数目是否正确,从而检测该TCP会话中FIN包是否完整。具体地,判断首个FIN包的序列号之后是否紧跟着最后一个数据包,如果是,则判断FIN包完整,执行步骤S604,否则执行步骤S615。
步骤S615,构造并补充缺失的FIN包。
在将正常流量和异常流量分别存储到背景测试流量库和正常测试流量库之后,根据测试流量库分别生成流入测试流量和流出测试流量,执行步骤S404。
步骤S404,根据流入测试流量和流出测试流量对被测网关进行测试。具体地,如图7所示,分别从背景流量库和异常流量库中抽取流量数据,作为测试中的数据来源。将报文中源IP地址和目的IP地址相反的数据报文区分开,从而分别形成流入测试流量和流出测试流量,其中,流入测试流量作为源流量,流出测试流量作为目的流量。一般而言,将发送SYN包的IP作为源IP,发自源IP的报文设置为源流量。
将流入测试流量输入到被测网络设备,并接收被测网络设备输出的实际流量,将被测网络设备输出的实际流量与流出测试流量进行比对以生成测试结果。在本发明的一个示例中,被测网络设备可以为被测网关。
具体地,预先载入测试关注项,其中测试关注项可以为性能指标和安全性能指标。其中,性能指标例如为丢包率、吞吐率、背靠背延迟或长时间压力等。安全性能指标例如为异常SYN攻击阻断成功率、异常ICMP攻击阻断成功率、正常流量误阻率、响应速度等多项测试指标。然后对被测网关进行测试。第一测试端通过第一网卡与被测网关相连,第二测试端通过第二网卡与被测网关相连,其中,第一测试端作为发端,第二测试端作为收端。第一测试端将流入测试流量中的报文通过第一网卡发送给被测网关,第二测试端接收由被测网关通过第二网卡发送的数据报文,从而对被测网关进行测试,然后在测试结束后,收集形成测试结果。
第二测试端根据当前收到报文的序列号N,查看流出测试流量中是否有序列号小于N的报文存在。如果存在,则说明有报文在流经被测网络设备时发生丢包,然后将报文序列号、发生时间、丢失数量做统计记录。上述记录的数据可以用于计算丢包率指标。如果不存在序列号小于N的报文,则检查流出测试流量中是否有序列号为N+1的报文,如果不存在,则说明被测网络设备转发来的流量属于非法报文,第二测试端将相关测试情况记录,用于计算SYN攻击阻断成功率、异常ICMP攻击阻断成功率、正常流量误阻率等指标。如果第二测试端检查流出测试流量中存在序列号为N+1的报文,则立刻发送给被测网络设备并对该报文做出响应,同时记录下来收到报文的时间戳和响应报文的时间戳,用于计算背靠背延迟指标。
下面以Tcpdump为例对测试过程进行详细说明。Tcpdump的流量回放方法基于状态转移,即第一测试端和第二测试端根据当前TCP会话所处状态,判断当前报文是否可以发送。具体地,第一测试端通过第一网卡发送序列号为N的报文P1,通过被测网络设备转发后,第二测试端在流出测试流量中查找TCP报文序列号为N+1且目的IP地址为P1中源地址的报文P2是否存在。如果存在,则第二测试端发送P2至第一测试端,第一测试端收到该报文后,继续上述过程,直至两端报文发送完毕并通告测试结果。如果P2不存在,则认为发生丢包现象。如图8所示,对被测网关的测试,包括如下步骤:
步骤S801,将分发下来的流入测试流量和流出测试流量作为测试的数据来源。
步骤S802,从测试流量数据中依次取下一个报文,分析报文TCP协议层,获取报文目的端口号。
步骤S803,判断该报文目的端口号对应的工作线程是否已经存在,如果存在,则执行步骤S805,否则执行步骤S804。
步骤S804,当端口对应的工作线程不存在时,创建新线程,并建立端口号到线程ID号的对应关系。
在本发明的一个实施例中,可以采用字典方式存储,并采用(key,value)对的方式。其中,端口号可以作为key,线程ID号可以作为value,从而可以快速通过端口号查找对应的工作线程ID是否存在。
步骤S805,将报文交由对应的工作线程处理。其中,工作线程主要的工作内容为检查checksum值,并将报文通过被测网关的网卡发出。
步骤S806,判断该报文是否为数据流量中的最后一个报文。如果是,则结束测试,否则执行步骤S802,继续获取下一个报文进行处理。
步骤S405,采用智能决策对测试结果进行分析,决定下一步测试执行计划。
获取步骤S404中的测试结果,并将测试结果和预设的质量标准进行比对,根据比较结果调用决策库决定下一步执行内容,从而判断是否达到该质量标准。如果测试结果达到质量标准,则该轮测试完毕,并通知测试人员该测试结果。如判断未达到质量标准,则进一步判断原因,并根据判断的原因生成新的时间或流量参数。
具体地,如图9所示,如果判断测试结果未达到质量标准的原因是测试数据量不足、数据类型缺乏或测试脚本没有执行完毕等原因,则生成调整后的时间或流量参数,执行步骤S401,根据新的时间或流量参数重新从线上网关获取新的流入在线流量和流出在线流量,重新一轮测试。否则,判断为由于被测设备原因导致没有达到质量标准,则认为被测设备相关测试项未通过
步骤S406,如果测试结果不低于质量标准要求,则展示并通告测试结果,如果测试结果低于质量标准要求,则将测试结果发送给测试人员,并且在情况严重时向测试人员发出报警通知。在本发明的一个实施例中,报警通知可以采用邮件或短信等方式发送。
根据本发明实施例的网络设备的测试方法,可以通过获取流经网络设备两侧的在线流量,生成相应的测试流量,从而为被测网络设备构造真实线上环境,并且采用自动化方式完成测试,从而提高了测试效率和测试准确度。
下面参考图10和图11描述根据本发明实施例的网络设备的测试系统。
如图10所示,本发明实施例的网络设备的测试系统包括:在线流量获取装置100、测试控制装置200、第一测试端300和第二测试端400,其中,在线流量获取装置100用于分别从线上网络设备获取流入线上网络设备的流入在线流量和流出线上网络设备的流出在线流量,测试控制装置200用于根据流入在线流量和流出在线流量建立测试流量库,并根据测试流量库分别生成流入测试流量和流出测试流量,第一测试端300用于将流入测试流量输入被测网络设备,第二测试端400用于接收被测网络设备输出的实际流量,并将被测网络设备输出的实际流量与流出测试流量进行对比以生成测试结果。
根据本发明实施例的网络设备的测试系统,可以通过获取流经网络设备两侧的在线流量,生成相应的测试流量,从而为被测网络设备构造真实线上环境,并且采用自动化方式完成测试,从而提高了测试效率和测试准确度。
在本发明的一个实施例中,网络设备可以为网关或路由器等网络连接设备。其中,线上网络设备可以为线上网关,被测网络设备可以为被测网关。
在线流量获取装置100捕捉线上网关两侧的流量数据。具体地,在线流量获取装置100分别捕捉流入线上网关的数据流量和流出线上网关的数据流量,从而获取流入线上网关的流入在线流量和流出线上网关的流出在线流量。
在本发明的一个实施例中,在线流量获取装置100可以通过预先设置捕捉时间和流量参数选择捕捉预定时间段内的数量流量或预定大小的数据流量。
在本发明的一个实施例中,测试控制装置200还包括流量分离模块210,用于以预设的异常流量判定规则对流入在线流量和流出在线流量进行分析,以分别获得异常流量和正常流量,并分别将异常流量和正常流量存入异常测试流量库和背景测试流量库。其中,异常流量判断规则中设定有对异常流量数据的特征描述。
具体地,流量分离模块210根据预设的异常流量判断规则将符合异常流量数据的特征描述的流入在线流量或流出在线流量判断为异常流量,否则判断为正常流量,从而将异常流量和正常流量进行分离。然后,流量分离模块210将上述分离完成的异常流量和正常流量存储到测试流量库。其中,测试流量库包括异常测试流量库和背景测试流量库。异常测试流量库用于存储异常流量,背景测试流量库用于存储正常流量。
在本发明的一个实施例中,还可以根据测试配置人工地向异常测试流量库中添加异常流量。其中,测试人员可以根据测试业务类型的不同自行定义异常流量判定规则,也可以使用本领域普遍采用的判定规则。
在本发明的一个实施例中,测试控制装置200还包括会话重建模块220,用于根据正常流量构造TCP会话,并在构造的TCP会话的不完整时,进一步对TCP会话进行补全,并将补全后的TCP会话存入所述背景测试流量库。
具体地,会话重建模块220根据正常流量的四元组信息,将报文哈希(hash)到不同的TCP会话中,从而形成一个TCP会话队列。其中,四元组信息包括源IP地址、源端口、目的IP地址和目的端口。会话重建模块220从TCP会话队列中顺次取出一个TCP会话,然后判断TCP会话的完整性。
在本发明的一个实施例中,会话重建模块220判断是否已经到达TCP会话队列中的最后一个会话,如果是,则判断TCP会话是完整的,将所有重建后的会话报文存入背景测试流量库。否则判断TCP会话是不完整的,提取TCP会话中的所有报文。然后,判断TCP会话中TCP报文中的TCP首部校验和TCP checksum的值是否正确。其中,TCP checksum用于校验报文在传输过程中是否出差错。
会话重建模块220计算TCP报文校验和,然后将该TCP报文校验和与该报文的checksum字段进行比较,如果相等,则表明TCP checksum值正确,检查该TCP会话中SYN(synchronize)包的数目是否正确,否则重新计算TCP checksum值,并将重新计算得到的TCP checksum值填入报文的checksum字段。
在本发明的一个实施例中,会话重建模块220通过判断SYN包序列号是否正确,从而检查该TCP会话中的SYN包的数目是否正确。如果SYN包序列号正确,则检查该TCP会话中数据包的数目是否正确,否则构造SYN包,从而补充相应的SYN包,将缺失的SYN包补充完整。
在本发明的一个实施例中,通过检查数据包的序列号是否连续,是否紧接着SYN包序列号出现以及数据包结束后是否紧接着出现FIN包,从而检查TCP会话中的数据包的数目是否正确,换言之,检测是否缺少数据包。如果同时满足数据包的序列号连续、TCP会话中的数据包的数目正确且数据包结束后是否紧接着出现FIN包,则可以判断数据包完整,检查该TCP会话中FIN包是否完整。在本发明的实施例中,通过检查FIN包的数目是否正确,从而检测该TCP会话中FIN包是否完整。具体地,判断首个FIN包的序列号之后是否紧跟着最后一个数据包,如果是,则判断FIN包完整,否则构造并补充缺失的FIN包。如果TCP会话中的数据包不完整,则构造缺失的数据包,并将前一个数据包的内容作为构造的数据包的内容。
在本发明的一个实施例中,构造缺失的数据包可以理解为补充一个数据包,其中补充的该数据包具有缺少的序列号,并且具有与之前一个数据包或后一个数据包相同的内容。
在完成上述会话重建后,将正常流量和异常流量分别存储到背景测试流量库和正常测试流量库。
测试控制装置200分别从背景流量库和异常流量库中抽取流量数据,作为测试中的数据来源。将报文中源IP地址和目的IP地址相反的数据报文区分开,从而分别形成流入测试流量和流出测试流量,其中,流入测试流量作为源流量,流出测试流量作为目的流量。一般而言,将发送SYN包的IP作为源IP,发自源IP的报文设置为源流量。
第一测试端300通过第一网关将流入测试流量输入到被测网络设备,第二测试端400通过第二网关接收被测网络设备输出的实际流量,并将被测网络设备输出的实际流量与流出测试流量进行比对以生成测试结果。其中,第一测试端作为发端,第二测试端作为收端。
在本发明的一个实施例中,测试控制装置200还包括存储模块230和智能决策模块240,其中,存储模块230用于存储预设的质量标准,智能决策模块240用于根据测试结果与质量标准进行比对以判断是否达到质量标准,且在未达到质量标准时,进一步判断原因,并根据判断的原因生成新的时间或流量参数,并将生成的新的时间或流量参数发送至所述在线流量获取装置。
如果智能决策模块240判断测试结果未达到质量标准的原因是测试数据量不足、数据类型缺乏或测试脚本没有执行完毕等原因,则生成调整后的时间或流量参数,由在线流量获取装置210重新捕捉流量,重新一轮测试。否则,判断为由于被测设备原因导致没有达到质量标准,则认为被测设备相关测试项未通过。
在本发明的一个实施例中,测试控制装置200还包括报表/报警模块。如果测试结果不低于质量标准要求,则报表/报警模块展示并通告测试结果,如果测试结果低于质量标准要求,则报表/报警模块将测试结果发送给测试人员,并且在情况严重时向测试人员发出报警通知。在本发明的一个实施例中,报警通知可以采用邮件或短信等方式发送。
根据本发明实施例的网络设备的测试系统,可以通过获取流经网络设备两侧的在线流量,生成相应的测试流量,从而为被测网络设备构造真实线上环境,并且采用自动化方式完成测试,从而提高了测试效率和测试准确度。
下面参考图12描述根据本发明实施例的测试控制装置。
如图12所示,本发明实施例提供的测试控制装置包括接收模块1210、测试流量库模块1220和中控调度模块1230。其中,接收模块1210用于接收流入线上网络设备的流入在线流量和流出线上网络设备的流出在线流量,测试流量库模块1220用于根据流入在线流量和流出在线流量建立测试流量库,中控调度模块1230用于根据测试流量库分别生成流入测试流量和流出测试流量。
在本发明的一个实施例中,测试控制装置还包括流量分离模块,用于以预设的异常流量判定规则对流入在线流量和流出在线流量进行分析,以分别获得异常流量和正常流量。
在本发明的一个实施例中,测试流量库包括异常测试流量库和背景测试流量库,其中异常测试流量库用于存储异常流量,背景测试流量库用于存储正常流量。
在本发明的一个实施例中,测试控制装置还包括会话重建模块,用于根据正常流量构造TCP会话,并在构造的TCP会话的不完整时,进一步对TCP会话进行补全,并将补全后的TCP会话存入背景测试流量库。
中控调度模块1230根据测试流量库模块1220中的流入在线流量和流出在线流量分别生成流入测试流量和流出测试流量。
在本发明的一个实施例中,测试控制装置还包括存储模块和智能决策模块,其中,存储模块用于存储预设的质量标准,智能决策模块用于根据测试结果与质量标准进行比对以判断是否达到量标准,且在未达到质量标准时,进一步判断原因,并根据判断的原因生成新的时间或流量参数,并将生成的新的时间或流量参数发送至在线流量获取装置。
根据本发明实施例的测试控制装置,可以通过获取流经网络设备两侧的在线流量,生成相应的测试流量,从而为被测网络设备构造真实线上环境,并且采用自动化方式完成测试,从而提高了测试效率和测试准确度。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,″计算机可读介质″可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同限定。

Claims (21)

1.一种网络设备的测试方法,其特征在于,包括以下步骤:
分别从线上网络设备获取流入所述线上网络设备的流入在线流量和流出所述线上网络设备的流出在线流量;
根据所述流入在线流量和所述流出在线流量建立测试流量库;
根据测试流量库分别生成流入测试流量和流出测试流量;以及
根据所述流入测试流量和所述流出测试流量对被测网络设备进行测试。
2.如权利要求1所述的网络设备的测试方法,其特征在于,所述测试流量库包括异常测试流量库和背景测试流量库。
3.如权利要求2所述的网络设备的测试方法,其特征在于,所述根据流入在线流量和流出在线流量建立测试流量库进一步包括:
以预设的异常流量判定规则对所述流入在线流量和流出在线流量进行分析,以分别获得异常流量和正常流量;
分别将所述异常流量和所述正常流量存入所述异常测试流量库和背景测试流量库。
4.如权利要求3所述的网络设备的测试方法,其特征在于,还包括:
根据所述正常流量构造传输控制协议TCP会话;
判断所述构造的TCP会话的完整性;以及
如果所述构造的TCP会话不完整,则进一步对所述TCP会话进行补全,并将补全后的TCP会话存入所述背景测试流量库。
5.如权利要求4所述的网络设备的测试方法,其特征在于,所述判断构造的TCP会话的完整性进一步包括:
判断所述TCP会话中TCP报文中TCP首部校验和TCP checksum的值是否正确;
如果判断不正确,则重新计算所述TCP checksum,并将重新计算的值添加至所述TCP报文。
6.如权利要求5所述的网络设备的测试方法,其特征在于,还包括:
检查所述TCP会话中同步SYN包的个数是否正确;
如果所述SYN包的个数不足,则补充相应的SYN包。
7.如权利要求5所述的网络设备的测试方法,其特征在于,还包括:
根据数据包的序列号检测是否缺少数据包;
如果判断缺少数据包,则构造缺少的数据包,并将前一个数据包的内容作为构造的数据包的内容。
8.如权利要求5所述的网络设备的测试方法,其特征在于,还包括:
判断首个FIN包的序列号之后是否紧跟着最后一个数据包;
如果没有,则判断缺少FIN包,并构造所述FIN包。
9.如权利要求2所述的网络设备的测试方法,其特征在于,还包括:
根据测试配置人工地向所述异常测试流量库中添加异常流量。
10.如权利要求1-9任一项所述的网络设备的测试方法,其特征在于,所述根据流入测试流量和流出测试流量对被测网络设备进行测试进一步包括:
将所述流入测试流量输入所述被测网络设备,并接收所述被测网络设备输出的实际流量;以及
将所述被测网络设备输出的实际流量与所述流出测试流量进行比对以生成测试结果。
11.如权利要求1-10任一项所述的网络设备的测试方法,其特征在于,还包括:
根据测试结果与预设的质量标准进行比对以判断是否达到所述质量标准;
如判断未达到所述质量标准,则进一步判断原因,并根据判断的原因生成新的时间或流量参数;
根据所述新的时间或流量参数重新从所述线上网络设备获取新的流入在线流量和流出在线流量。
12.一种网络设备的测试系统,其特征在于,包括:
在线流量获取装置,用于分别从线上网络设备获取流入所述线上网络设备的流入在线流量和流出所述线上网络设备的流出在线流量;
测试控制装置,用于根据所述流入在线流量和所述流出在线流量建立测试流量库,并根据测试流量库分别生成流入测试流量和流出测试流量;以及
第一测试端和第二测试端,所述第一测试端和第二测试端分别位于所述被测网络设备的输入端和输出端,所述第一测试端用于将所述流入测试流量输入所述被测网络设备,所述第二测试端用于接收所述被测网络设备输出的实际流量,并将所述被测网络设备输出的实际流量与所述流出测试流量进行比对以生成测试结果。
13.如权利要求12所述的网络设备的测试系统,其特征在于,所述测试流量库包括异常测试流量库和背景测试流量库。
14.如权利要求13所述的网络设备的测试系统,其特征在于,所述测试控制装置包括:
流量分离模块,用于以预设的异常流量判定规则对所述流入在线流量和流出在线流量进行分析,以分别获得异常流量和正常流量,并分别将所述异常流量和所述正常流量存入所述异常测试流量库和背景测试流量库。
15.如权利要求14所述的网络设备的测试系统,其特征在于,所述测试控制装置还包括:
会话重建模块,用于根据所述正常流量构造TCP会话,并在所述构造的TCP会话的不完整时,进一步对所述TCP会话进行补全,并将补全后的TCP会话存入所述背景测试流量库。
16.如权利要求14所述的网络设备的测试系统,其特征在于,所述测试控制装置还包括:
存储模块,用于存储预设的质量标准;
智能决策模块,用于根据所述测试结果与所述质量标准进行比对以判断是否达到所述质量标准,且在未达到所述质量标准时,进一步判断原因,并根据判断的原因生成新的时间或流量参数,并将生成的新的时间或流量参数发送至所述在线流量获取装置。
17.一种测试控制装置,其特征在于,包括:
接收模块,用于接收流入线上网络设备的流入在线流量和流出所述线上网络设备的流出在线流量;
测试流量库模块,用于根据所述流入在线流量和所述流出在线流量建立测试流量库;以及
中控调度模块,用于根据测试流量库分别生成流入测试流量和流出测试流量。
18.如权利要求17所述的测试控制装置,其特征在于,所述测试流量库包括异常测试流量库和背景测试流量库。
19.如权利要求18所述的测试控制装置,其特征在于,还包括:
流量分离模块,用于以预设的异常流量判定规则对所述流入在线流量和流出在线流量进行分析,以分别获得异常流量和正常流量,并分别将所述异常流量和所述正常流量存入所述异常测试流量库和背景测试流量库。
20.如权利要求19所述的测试控制装置,其特征在于,还包括:
会话重建模块,用于根据所述正常流量构造TCP会话,并在所述构造的TCP会话的不完整时,进一步对所述TCP会话进行补全,并将补全后的TCP会话存入所述背景测试流量库。
21.如权利要求18所述的测试控制装置,其特征在于,还包括:
存储模块,用于存储预设的质量标准;
智能决策模块,用于根据所述测试结果与所述质量标准进行比对以判断是否达到所述质量标准,且在未达到所述质量标准时,进一步判断原因,并根据判断的原因生成新的时间或流量参数,并将生成的新的时间或流量参数发送至在线流量获取装置。
CN201110370157.XA 2011-11-18 2011-11-18 网络设备的测试方法、系统及装置 Active CN102510346B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110370157.XA CN102510346B (zh) 2011-11-18 2011-11-18 网络设备的测试方法、系统及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110370157.XA CN102510346B (zh) 2011-11-18 2011-11-18 网络设备的测试方法、系统及装置

Publications (2)

Publication Number Publication Date
CN102510346A true CN102510346A (zh) 2012-06-20
CN102510346B CN102510346B (zh) 2014-12-24

Family

ID=46222400

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110370157.XA Active CN102510346B (zh) 2011-11-18 2011-11-18 网络设备的测试方法、系统及装置

Country Status (1)

Country Link
CN (1) CN102510346B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103209103A (zh) * 2013-03-25 2013-07-17 华为技术有限公司 网络设备的测试方法及装置
CN103580945A (zh) * 2012-08-07 2014-02-12 百度在线网络技术(北京)有限公司 一种针对复杂业务系统产生测试数据的方法和装置
CN103684895A (zh) * 2012-09-10 2014-03-26 百度在线网络技术(北京)有限公司 一种产生克隆环境的方法和装置
CN104410554A (zh) * 2014-12-31 2015-03-11 浪潮电子信息产业股份有限公司 一种测试服务器wol功能的测试方法
CN104702463A (zh) * 2014-12-17 2015-06-10 北京百度网讯科技有限公司 一种对多机房进行旁路测试的方法、装置及系统
CN105337810A (zh) * 2015-12-01 2016-02-17 上海斐讯数据通信技术有限公司 构造网络测试数据的方法及系统
CN105515918A (zh) * 2016-01-13 2016-04-20 浪潮电子信息产业股份有限公司 一种SUSE Linux系统下的网络唤醒测试方法
CN106301994A (zh) * 2015-06-24 2017-01-04 北京京东尚科信息技术有限公司 一种网络通信异常测试方法和装置
CN109818824A (zh) * 2018-12-29 2019-05-28 东软集团股份有限公司 一种报文转发测试方法、设备及存储设备、程序产品
CN110535730A (zh) * 2019-09-23 2019-12-03 杭州迪普科技股份有限公司 网络设备的ip认证功能测试方法和装置
CN112612455A (zh) * 2020-12-04 2021-04-06 潍柴动力股份有限公司 一种区分通信模式的方法及系统
CN113133039A (zh) * 2021-05-11 2021-07-16 武汉迎风聚智科技有限公司 一种网关系统的性能测试方法以及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5383177A (en) * 1993-09-20 1995-01-17 Fujitsu Limited Packet switching testing method and apparatus
EP1480379A1 (en) * 2003-05-21 2004-11-24 Ixia Automated characterization of network traffic
US20070067130A1 (en) * 2005-09-16 2007-03-22 Kenji Toda Network device testing equipment
CN1972219A (zh) * 2005-11-23 2007-05-30 杭州华为三康技术有限公司 网络性能测试方法、系统及网络设备
CN101056225A (zh) * 2007-05-31 2007-10-17 中兴通讯股份有限公司 一种路由器测试方法及其现场仿真测试装置
CN101304341A (zh) * 2008-06-05 2008-11-12 西安交通大学 基于收发平衡的tcp网络流量回放测试方法
WO2009001067A2 (en) * 2007-06-23 2008-12-31 Calnex Solutions Ltd Network in-line tester

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5383177A (en) * 1993-09-20 1995-01-17 Fujitsu Limited Packet switching testing method and apparatus
EP1480379A1 (en) * 2003-05-21 2004-11-24 Ixia Automated characterization of network traffic
US20070067130A1 (en) * 2005-09-16 2007-03-22 Kenji Toda Network device testing equipment
CN1972219A (zh) * 2005-11-23 2007-05-30 杭州华为三康技术有限公司 网络性能测试方法、系统及网络设备
CN101056225A (zh) * 2007-05-31 2007-10-17 中兴通讯股份有限公司 一种路由器测试方法及其现场仿真测试装置
WO2009001067A2 (en) * 2007-06-23 2008-12-31 Calnex Solutions Ltd Network in-line tester
CN101304341A (zh) * 2008-06-05 2008-11-12 西安交通大学 基于收发平衡的tcp网络流量回放测试方法

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103580945A (zh) * 2012-08-07 2014-02-12 百度在线网络技术(北京)有限公司 一种针对复杂业务系统产生测试数据的方法和装置
CN103580945B (zh) * 2012-08-07 2018-07-13 百度在线网络技术(北京)有限公司 一种针对复杂业务系统产生测试数据的方法和装置
CN103684895A (zh) * 2012-09-10 2014-03-26 百度在线网络技术(北京)有限公司 一种产生克隆环境的方法和装置
CN103684895B (zh) * 2012-09-10 2018-08-10 百度在线网络技术(北京)有限公司 一种产生克隆环境的方法和装置
CN103209103B (zh) * 2013-03-25 2015-12-23 华为技术有限公司 网络设备的测试方法及装置
CN103209103A (zh) * 2013-03-25 2013-07-17 华为技术有限公司 网络设备的测试方法及装置
CN104702463B (zh) * 2014-12-17 2018-03-23 北京百度网讯科技有限公司 一种对多机房进行旁路测试的方法、装置及系统
CN104702463A (zh) * 2014-12-17 2015-06-10 北京百度网讯科技有限公司 一种对多机房进行旁路测试的方法、装置及系统
CN104410554A (zh) * 2014-12-31 2015-03-11 浪潮电子信息产业股份有限公司 一种测试服务器wol功能的测试方法
CN106301994A (zh) * 2015-06-24 2017-01-04 北京京东尚科信息技术有限公司 一种网络通信异常测试方法和装置
CN106301994B (zh) * 2015-06-24 2023-11-03 北京京东尚科信息技术有限公司 一种网络通信异常测试方法和装置
CN105337810A (zh) * 2015-12-01 2016-02-17 上海斐讯数据通信技术有限公司 构造网络测试数据的方法及系统
CN105515918A (zh) * 2016-01-13 2016-04-20 浪潮电子信息产业股份有限公司 一种SUSE Linux系统下的网络唤醒测试方法
CN109818824A (zh) * 2018-12-29 2019-05-28 东软集团股份有限公司 一种报文转发测试方法、设备及存储设备、程序产品
CN109818824B (zh) * 2018-12-29 2020-12-29 东软集团股份有限公司 一种报文转发测试方法、设备及存储设备、程序产品
CN110535730A (zh) * 2019-09-23 2019-12-03 杭州迪普科技股份有限公司 网络设备的ip认证功能测试方法和装置
CN112612455A (zh) * 2020-12-04 2021-04-06 潍柴动力股份有限公司 一种区分通信模式的方法及系统
CN112612455B (zh) * 2020-12-04 2023-08-18 潍柴动力股份有限公司 一种区分通信模式的方法及系统
CN113133039A (zh) * 2021-05-11 2021-07-16 武汉迎风聚智科技有限公司 一种网关系统的性能测试方法以及装置

Also Published As

Publication number Publication date
CN102510346B (zh) 2014-12-24

Similar Documents

Publication Publication Date Title
CN102510346A (zh) 网络设备的测试方法、系统及装置
WO2022017249A1 (zh) 可编程交换机、流量统计方法、防御方法和报文处理方法
CN101404599B (zh) 网络故障检测的方法、主设备、从设备、控制终端和系统
US9531620B2 (en) Control plane packet traffic statistics
JP4594258B2 (ja) システム分析装置およびシステム分析方法
CN110036600A (zh) 网络健康数据汇聚服务
CN102045222B (zh) 网络系统实时整体测试的方法
US9001668B2 (en) Endpoint selection in a network test system
CN104767837B (zh) 一种识别代理ip地址的方法及装置
US10715638B2 (en) Method and system for server assignment using predicted network metrics
CN103430482B (zh) 对预期网络业务量化网络可用服务等级容量的网络交换设备
CN107800565A (zh) 巡检方法、装置、系统、计算机设备和存储介质
CN106126629B (zh) 一种基于直播行业的主数据管理方法及系统
CN106656629A (zh) 一种流媒体播放质量的预测方法
CN111385163A (zh) 流量的分析、检测方法及装置
CN109739527A (zh) 一种客户端灰度发布的方法、装置、服务器和存储介质
CN104219221A (zh) 一种网络安全流量生成方法和系统
CN103995901B (zh) 一种确定数据节点失效的方法
JP5379994B2 (ja) 通信試験装置、通信試験機能を有するネットワーク、接続試験方法および接続試験プログラム
US8966321B2 (en) Logical port and layer protocol test configuration resource manager
CN102143377A (zh) 视频流延迟因素监测方法及装置
CN109997337A (zh) 网络健康信息的可视化
CN111130917B (zh) 线路测试的方法、装置及系统
CN108965492B (zh) 弹幕链接质量统计的方法、存储介质、电子设备及系统
CN107005433A (zh) 一种流表项的定时处理方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant