具体实施方式
本发明测试请求方向测试应答方发送错包侦测消息帧,所述错包测量消息帧包括所述错包侦测消息帧的包序。测试应答方根据所述错包侦测消息帧的包序得到业务报文,并将所述业务报文携带在所述错包侦测回复帧内发送给所述测试请求方,所述错包侦测回复帧用于指示所述测试请求方进行错包判断与统计。测试请求方记录所述错包侦测回复帧所携带业务报文的包序,并根据记录的所述业务报文的包序以及历史记录的业务报文的包序进行错包判断与统计。本发明实现了对测试请求方和测试应答方之间的数据传输错包情况的测试,从而根据测试结果调整数据传输策略,减少错包的发生,提高太网数据传输的效果。
当然,实施本发明的任一技术方案必不一定需要同时达到以上的所有优点。
为了使本领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明保护的范围。
下面结合本发明附图进一步说明本发明具体实现。
本发明提供一种以太网错包测试的方法,应用于测试请求方。所述测试请求方可以是通用的PC,也可以是路由器、交换机等设备。
参看图1,所述测试请求方在硬件上通常包括主控模块11、存储模块12、输入模块13、输出模块14。所述主控模块11用于控制各功能模块,所述存储模块12用于存储程序和中间数据,所述输入模块13用于输入控制指令,所述输出模块14用于输出视频、音频信息。
参看图2,本发明以太网错包测试的方法包括:
S1、向测试应答方发送错包侦测消息帧,所述错包测量消息帧包括所述错包侦测消息帧的包序。
本申请测试请求方发送错包侦测消息帧给测试应答方,以确定测试请求方和测试应答方之间数据传输的错包情况。
S2、接收所述测试应答方发送的错包侦测回复帧。
所述测试应答方接收测试请求方发送的错包侦测消息帧,根据所述错包侦测消息帧的包序得到业务报文。所述测试应答方将所述业务报文携带在所述错包侦测回复帧内发送给所述测试请求方。所述测试请求方接收所述测试应答方发送的错包侦测回复帧。
S3、记录所述错包侦测回复帧所携带业务报文的包序,并根据记录的所述业务报文的包序以及历史记录的业务报文的包序进行错包判断与统计。
具体地,参看图3,所述步骤S3包括:
S31、记录所述错包侦测回复帧所携带业务报文的包序,比较所述当前报文的包序是否大于或者等于所接收的总报文个数。
所述测试请求方接收错包侦测回复帧所携带业务报文,获得每个业务报文的包序send_id值。所述测试请求方比较所述当前报文的包序send_id值是否大于或者等于所接收的总报文个数max_sendid值。
S32、如当前报文的包序大于或者等于所接收的总报文个数,则更新所接收的总报文个数,比较上次接收报文的包序是否大于所述当前报文的包序。
所述当前报文的包序send_id值大于或者等于所接收的总报文个数max_sendid值,则更新所接收的总报文个数max_sendid值,即将所接收的总报文个数max_sendid值加1。
所述测试请求方比较上次接收报文的包序last_sendid值是否大于所述当前报文的包序send_id值。
S33、如所述上次接收报文的包序大于所述当前报文的包序或者当前报文的包序小于所接收的总报文个数,则判断发生错包,更新错包个数。
所述上次接收报文的包序last_sendid值大于所述当前报文的包序send_id值,则发生错包,错包数err_count增加1,并更新当前send_id值为last_sendid值进行下次报文的错包统计。
S34、根据错包个数和所接收的总报文个数计算错包率。
计算错包率err_rate值等于错包数err_count除以总的报文个数max_sendid值。
本发明实现了对测试请求方和测试应答方之间的数据传输错包情况的测试,从而根据测试结果调整数据传输策略,减少错包的发生,提高太网数据传输的效果。
在本申请另一实施例中,参看图4,所述测试请求方向测试应答方发送错包侦测消息帧之前还包括:
S4、与所述测试应答方建立连接,进行通信。
具体地,参看图5,所述测试请求方与测试应答方建立连接,进行通信包括:
S41、与打开并设置过滤条件的网卡建立连接,并通过所述网卡向测试应答方发送连接请求标志。
打开网卡,并在网卡上设置过滤条件。测试请求方与测试应答方之间进行测试之前,要打开网卡。所述网卡接收测试请求方发送的错包侦测请求帧,将错包侦测请求帧发送给测试应答方。所述网卡接收测试应答方发送的错包侦测回复帧,并反馈错包侦测回复帧给测试请求方。即,所述网卡为测试请求方与测试应答方之间进行通信建立连接。所述网卡设置过滤条件是由于在网络中测试应答方会收到很多用于非测试数据的报文,必须要过滤掉非测试报文,反馈给请求方正确的报文信息,保证测试数据的准确性。
S42、接收测试应答方通过所述网卡发送的连接成功标志,成功与测试应答方建立连接。
本实施例中测试请求方与测试应答方通过网卡建立连接,从而报文的传输,保证测试数据的准确性。
在本申请另一实施例中,所述错包测量消息帧还包括:测试运行状态值;
所述步骤S3之前还包括:
根据所述测试运行状态值判断所述测试是否为运行中。
本申请根据错包测量消息帧中的测试运行状态值判断是否处于测试运行状态,即仅在测试运行状态,进行错包测试,确定似乎否计算错包率。
在本申请另一实施例中,所述错包测量消息帧还包括:测试类型。
所述步骤S3之前还包括:
根据所述测试类型判断所述测试是否为错包测试。
由于并非所有测试都是错包测试,当测试请求方与测试应答方之间存在多种测试时,错包测量消息帧所包括的测试类型可用于判断测试类型是否为错包测试,从而确定是否计算错包率。
本申请还提供一种以太网错包测试的方法,应用于测试应答方。所述测试应答方可以是通用的PC,也可以是路由器、交换机等设备。
参看图6,所述测试应答方在硬件上通常包括主控模块61、存储模块62、输入模块63、输出模块64。所述主控模块61用于控制各功能模块,所述存储模块62用于存储程序和中间数据,所述输入模块63用于输入控制指令,所述输出模块64用于输出视频、音频信息。
参看图7,本发明以太网错包测试的方法包括:
P1、接收测试请求方发送的错包侦测消息帧,所述错包测量消息帧包括所述错包侦测消息帧的包序。
本申请测试请求方发送错包侦测消息帧给测试应答方,测试应答方接收测试请求方发送的错包侦测消息帧,以确定测试请求方和测试应答方之间数据传输的错包情况。
P2、根据所述错包侦测消息帧中的包序得到业务报文。
具体地,所述错包测量消息帧包括包序、测试类型外,还包括:测试运行状态值
所述步骤P2为:
根据所述测试类型、测试运行状态和错包侦测消息帧的包序确定所述错包侦测消息帧中携带的测试类型对应的数据统计规则,并根据所述数据统计规则得到业务报告
或者,
具体地,所述错包测量消息帧包括包序外,还包括:测试类型。
所述步骤P2为:
根据所述测试类型和错包侦测消息帧的包序确定所述错包侦测消息帧中携带的测试类型对应的数据统计规则,并根据所述数据统计规则得到业务报告。
P3、将所述业务报文携带在所述错包侦测回复帧内发送给所述测试请求方,所述错包侦测回复帧用于指示所述测试请求方进行错包判断与统计。
本发明实现了对测试请求方和测试应答方之间的数据传输错包情况的测试,从而根据测试结果调整数据传输策略,减少错包的发生,提高太网数据传输的效果。
在本申请另一实施例中,参看图8,所述接收测试请求方发送的错包侦测消息帧之前还包括:
P4、与所述测试请求方建立连接,进行通信。
具体地,参看图9,所述P4包括:
P41、与打开并设置过滤条件的网卡建立连接,接收测试请求方通过所述网卡发送的连接请求标志。
打开网卡,并在网卡上设置过滤条件。测试请求方与测试应答方之间进行测试之前,要打开网卡。所述网卡接收测试请求方发送的错包侦测请求帧,将错包侦测请求帧发送给测试应答方。所述网卡接收测试应答方发送的错包侦测回复帧,并反馈错包侦测回复帧给测试请求方。即,所述网卡为测试请求方与测试应答方之间进行通信建立连接。所述网卡设置过滤条件是由于在网络中测试应答方会收到很多用于非测试数据的报文,必须要过滤掉非测试报文,反馈给请求方正确的报文信息,保证测试数据的准确性。
P42、通过所述网卡,向所述测试请求方发送连接成功标志。
本实施例中测试请求方与测试应答方通过网卡建立连接,从而报文的传输,保证测试数据的准确性。
对应于上述方法,本发明提供一种以太网错包测试的装置,应用于测试请求方。所述测试请求方可以是通用的PC,也可以是路由器、交换机等设备。
参看图1,所述测试请求方在硬件上通常包括主控模块11、存储模块12、输入模块13、输出模块14。所述主控模块11用于控制各功能模块,所述存储模块12用于存储程序和中间数据,所述输入模块13用于输入控制指令,所述输出模块14用于输出视频、音频信息。
参看图10,本发明以太网错包测试的装置在逻辑上包括:
消息发送模块101,用于向测试应答方发送错包侦测消息帧,所述错包测量消息帧包括所述错包侦测消息帧的包序。
本申请测试请求方发送错包侦测消息帧给测试应答方,以确定测试请求方和测试应答方之间数据传输的错包情况。
回复接收模块102,用于接收所述测试应答方发送的错包侦测回复帧。
所述测试应答方接收测试请求方发送的错包侦测消息帧,根据所述错包侦测消息帧的包序得到业务报文。所述测试应答方将所述业务报文携带在所述错包侦测回复帧内发送给所述测试请求方。所述测试请求方接收所述测试应答方发送的错包侦测回复帧。
错包统计模块103,用于记录所述错包侦测回复帧所携带业务报文的包序,并根据记录的所述业务报文的包序以及历史记录的业务报文的包序进行错包判断与统计。
具体地,参看图11,所述错包统计模块103包括:
第一比较单元1031,用于记录所述错包侦测回复帧所携带业务报文的包序,比较所述当前报文的包序是否大于或者等于所接收的总报文个数。
所述测试请求方接收错包侦测回复帧所携带业务报文,获得每个业务报文的包序send_id值。所述测试请求方比较所述当前报文的包序send_id值是否大于或者等于所接收的总报文个数max_sendid值。
第二比较单元1032,用于在当前报文的包序大于或者等于所接收的总报文个数时,则更新所接收的总报文个数,比较上次接收报文的包序是否大于所述当前报文的包序。
所述当前报文的包序send_id值大于或者等于所接收的总报文个数max_sendid值,则更新所接收的总报文个数max_sendid值,即将所接收的总报文个数max_sendid值加1。
所述测试请求方比较上次接收报文的包序last_sendid值是否大于所述当前报文的包序send_id值。
错包判断单元1033,用于如所述上次接收报文的包序大于所述当前报文的包序或者所述当前报文的包序小于所接收的总报文个数,则判断发生错包,更新错包个数;
所述上次接收报文的包序last_sendid值大于所述当前报文的包序send_id值,则发生错包,错包数err_count增加1,并更新当前send_id值为last_sendid值进行下次报文的错包统计。
错包计算单元1034,用于根据错包个数和所接收的总报文个数计算错包率。
计算错包率err_rate值等于错包数err_count除以总的报文个数max_sendid值。
本发明实现了对测试请求方和测试应答方之间的数据传输错包情况的测试,从而根据测试结果调整数据传输策略,减少错包的发生,提高太网数据传输的效果。
在本申请另一实施例中,参看图12,所述装置还包括:
第一连接建立模块104,用于与所述测试应答方建立连接,进行通信。
具体地,参看图13,所述第一连接建立模块104包括:
第一标志发送单元1041,用于与打开并设置过滤条件的网卡建立连接,通过所述网卡向测试应答方发送连接请求标志。
打开网卡,并在网卡上设置过滤条件。测试请求方与测试应答方之间进行测试之前,要打开网卡。所述网卡接收测试请求方发送的错包侦测请求帧,将错包侦测请求帧发送给测试应答方。所述网卡接收测试应答方发送的错包侦测回复帧,并反馈错包侦测回复帧给测试请求方。即,所述网卡为测试请求方与测试应答方之间进行通信建立连接。所述网卡设置过滤条件是由于在网络中测试应答方会收到很多用于非测试数据的报文,必须要过滤掉非测试报文,反馈给请求方正确的报文信息,保证测试数据的准确性。
第一标志接收单元1042,用于接收测试应答方通过所述网卡发送的连接成功标志,成功与测试应答方建立连接。
本实施例中测试请求方与测试应答方通过网卡建立连接,从而报文的传输,保证测试数据的准确性。
在本申请另一实施例中,所述错包测量消息帧还包括:测试运行状态值;
所述错包统计模块103还用于:
根据所述测试运行状态值判断所述测试是否为运行中。
本申请根据错包测量消息帧中的测试运行状态值判断是否处于测试运行状态,即仅在测试运行状态,进行错包测试,确定似乎否计算错包率。
在本申请另一实施例中,所述错包测量消息帧还包括:测试类型。
所述错包统计模块103还用于:
根据所述测试类型判断所述测试是否为错包测试。
由于并非所有测试都是错包测试,当测试请求方与测试应答方之间存在多种测试时,错包测量消息帧所包括的测试类型可用于判断测试类型是否为错包测试,从而确定是否计算错包率。
对应于上述方法,本申请还提供一种以太网错包测试的装置,应用于测试应答方。所述测试应答方可以是通用的PC,也可以是路由器、交换机等设备。
参看图6,所述测试应答方在硬件上通常包括主控模块61、存储模块62、输入模块63、输出模块64。所述主控模块61用于控制各功能模块,所述存储模块62用于存储程序和中间数据,所述输入模块63用于输入控制指令,所述输出模块64用于输出视频、音频信息。
参看图14,本发明以太网错包测试的方法包括:
消息接收模块141,用于接收测试请求方发送的错包侦测消息帧,所述错包测量消息帧包括所述错包侦测消息帧的包序。
本申请测试请求方发送错包侦测消息帧给测试应答方,测试应答方接收测试请求方发送的错包侦测消息帧,以确定测试请求方和测试应答方之间数据传输的错包情况。
报文生成模块142,用于根据所述错包侦测消息帧中的包序得到业务报文。
具体地,所述错包测量消息帧包括包序外,还包括:测试类型。
所述步骤报文生成模块142具体用于:
根据所述测试类型和错包侦测消息帧的包序确定所述错包侦测消息帧中携带的测试类型对应的数据统计规则,并根据所述数据统计规则得到业务报告。
或者,
具体地,所述错包测量消息帧包括包序、测试类型外,还包括:测试运行状态值
所述报文生成模块142具体用于:
根据所述测试类型、测试运行状态和错包侦测消息帧的包序确定所述错包侦测消息帧中携带的测试类型对应的数据统计规则,并根据所述数据统计规则得到业务报告
回复发送模块143,用于将所述业务报文携带在所述错包侦测回复帧内发送给所述测试请求方,所述错包侦测回复帧用于指示所述测试请求方进行错包判断与统计。
本发明实现了对测试请求方和测试应答方之间的数据传输错包情况的测试,从而根据测试结果调整数据传输策略,减少错包的发生,提高太网数据传输的效果。
在本申请另一实施例中,参看图15,所述装置还包括:
第二连接建立模块144,用于与所述网卡建立连接,进行通信。
具体地,参看图16,所述第二连接建立模块134包括:
第二标志接收模块1441,用于与打开并设置过滤条件的网卡建立连接,并接收测试请求方通过所述网卡发送的连接请求标志。
打开网卡,并在网卡上设置过滤条件。测试请求方与测试应答方之间进行测试之前,要打开网卡。所述网卡接收测试请求方发送的错包侦测请求帧,将错包侦测请求帧发送给测试应答方。所述网卡接收测试应答方发送的错包侦测回复帧,并反馈错包侦测回复帧给测试请求方。即,所述网卡为测试请求方与测试应答方之间进行通信建立连接。所述网卡设置过滤条件是由于在网络中测试应答方会收到很多用于非测试数据的报文,必须要过滤掉非测试报文,反馈给请求方正确的报文信息,保证测试数据的准确性。
第二标志发送模块1442,用于通过所述网卡,向所述测试请求方发送连接成功标志。
本实施例中测试请求方与测试应答方通过网卡建立连接,从而报文的传输,保证测试数据的准确性。
下面通过一个具体实现来详细说明本发明。
参看图17,所述测试请求方测试流程包括:
1701、测试请求方开始,输入测试应答方MAC地址、测试类型为错包测试;
1702、打开网卡,设置过滤条件,创建测试请求方和测试应答方的连接;
1703、测试请求方发送错包侦测消息帧,所述错包侦测消息帧包括包序、测试类型、测试运行状态。
1704、测试请求方接收错包回复消息帧,所述错包回复消息帧携带业务报文包括错包回复消息帧的包序、测试类型、测试运行状态。
1705、判断测试是否为运行状态;
1706、如果测试为运行状态,则判断测试类型是否为错包;
1707、如果测试类型为错包,则判断当前错包侦测消息帧的包序是否大于或者等于所接收的总报文个数;
1708、如果当前错包侦测消息帧的包序大于或者等于所接收的总报文个数,则判断上次接收报文的包序是否大于所述当前报文的包序;
1709、如果上次接收报文的包序大于所述当前报文的包序,或者当前错包侦测消息帧的包序小于所接收的总报文个数,则将错包数加1;
1710、用错包数除以所接收的总报文个数,获得错包率;
1711、如果测试不为运行状态,则处理其他标志位信息;
1712、如果测试类型不为错包,则处理其他类型的测试。
参看图18,所述测试应当方测试流程包括:
1801、打开网卡,设置过滤条件,创建测试请求方和测试应答方的连接;
1802、接收测试请求方发送的错包侦测消息帧,所述错包测量消息帧包括所述错包侦测消息帧的包序、测试类型、测试运行状态。
1803、根据所述错包侦测消息帧中的包序、测试类型、测试运行状态得到业务报文。
1804、将所述业务报文携带在所述错包侦测回复帧内发送给所述测试请求方,所述错包侦测回复帧用于指示所述测试请求方进行错包判断与统计。
本发明实现了对测试请求方和测试应答方之间的数据传输错包情况的测试,从而根据测试结果调整数据传输策略,减少错包的发生,提高太网数据传输的效果。
本领域的技术人员应明白,本发明的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。