内嵌于以太网交换芯片中的吞吐量性能测试处理引擎及其实现方法

文档序号:7962228阅读:418来源:国知局
专利名称:内嵌于以太网交换芯片中的吞吐量性能测试处理引擎及其实现方法
技术领域
本发明涉及网络通讯技术领域,尤其涉及一种内嵌于以太网交换芯片中的吞吐量性能测试处理引擎及其实现方法。
背景技术
网络互联设备是网络的核心,其性能的好坏直接影响网络规模、网络稳定性以及网络可靠性。当前网络互联设备性能测试普遍使用的标准是IETF( Internet Engineering Task Force, Internet 工程任务组)的 RFC2544 及 ITU-T Y. 1564,RFC2544 是基于网络设备两个端口之间端口性能测试的一个测试标准,而ITU-T Y. 1564是网络设备间基于业务(即MEF定义基于EVC)的性能测试的一个测试标准,在两个标准中吞吐量(throughput) 都是基本的性能测试指标,现有的网络测试环境使用专业的网络测试仪(SmartBits、IXIA 等产品)对被测试的设备进行互联测试,测试拓扑如图1所示。但是,专业测试仪的价格比较昂贵,且在实际组网应用中,如果需要对被测试设备进行测试,会改变已有的网络拓扑环境,重新搭架网络对其进行测试。因此,有必要提供一种内嵌于以太网交换芯片中的吞吐量性能测试处理引擎及其实现方法以克服上述问题。

发明内容
本发明的目的在于提供一种在以太网交换芯片中内嵌吞吐量性能测试处理引擎的实现方法。本发明的另一目的在于在网络环境中不需要专业的网络测试仪设备,在以太网交换芯片中内嵌吞吐量性能测试处理引擎,在任何时候需要对网络性能进行测试时都可以进行。相应地,本发明的一种实现网络设备自动配置安装的方法,包括如下步骤
S10,获取当期测试会话使用的数据结构并在当前会话时间刻度到期时对外发送一个报文,对发送出去的报文进行字节数和包数统计; S20,对报文进行解析,解析出报文信息; S30,根据报文信息进行查询,得到测试会话的数据结构; S40,根据测试会话的数据结构对接收到的数据报文的字节数和报文数进行统计。作为本发明的进一步改进,所述SlO具体包括以下步骤 S101,对吞吐量性能测试处理引擎进行初始化赋值;
S102,等待一个时间刻度超时到期,如果没有超时到期则回到S102继续等待处理,如果超时到期则跳到S103处理;
S103,判断当前的测试会话是否使能,如果不使能,则跳到S104处理,如果使能则跳到 S105处理;S104,对测试会话的索引进行更新,得到下一个测试会话的索引并回到S102处理; S105,获取得到当期测试会话使用的数据结构并得到该会话当前的一个时间刻度变量时间刻度超时值,对时间刻度超时值减1 ;
S106,对时间刻度超时值进行判断,如果当前会话时间刻度未到期,则到S107处理; 如果时间刻度到期,则对外发送一个报文,转到S108处理; S107,更新会话中的时间刻度超时值,并转到S104处理;
S108,对需要发送的报文按照配置进行组包,并对发送出去的报文进行字节数和包数统计,然后把报文发送到包转发处理引擎从指定端口发送处理,报文发送完之后回到S104 进行处理。作为本发明的进一步改进,在S105中还得到会话当前另一个时间刻度变量时间刻度的小数部分,每次会话时间刻度到期,会对时间刻度的小数部分进行累加,当小数部分累加大于65535时,则整数部分会进一位,下一轮更新的时间刻度超时值需加上进位数。作为本发明的进一步改进,所述数据结构包括测试报文的配置、收发报文的统计及报文头。作为本发明的进一步改进,所述报文头最长64字节。作为本发明的进一步改进,所述S40具体包括以下步骤
S401,在远端测试设备接收到报文后会对报文是否需要环回进行判断,如果报文需要环回到报文发送端,则转入S402进行处理,否则转到S403进行处理;
S402,交换报文的源地址和目的地址,报文的出端口为报文的进入的端口,然后把报文送到包转发处理引擎;
S403,根据测试会话的数据结构进一步得到报文序列号、接收报文统计的数据结构,进行报文序列号的检查,对接收到数据报文的字节数和报文数进行统计。相应地,本发明的一种内嵌于以太网交换芯片中的吞吐量性能测试处理引擎包括
报文发送模块,用以获取当期测试会话使用的数据结构并在当前会话时间刻度到期时对外发送一个报文,对发送出去的报文进行字节数和包数统计; 报文解析模块,用以对报文进行解析,解析出报文信息; 会话查询模块,用以根据报文信息进行查询,得到测试会话的数据结构; 报文处理模块,用以根据测试会话的数据结构对接收到的数据报文的字节数和报文数进行统计。作为本发明的进一步改进,所述报文发送模块具体用于 对吞吐量性能测试处理引擎进行初始化赋值;
等待一个时间刻度超时到期,如果没有超时到期则回到该步继续等待处理; 如果超时到期,则判断当前的测试会话是否使能;
如果不使能,则对测试会话的索引进行更新,得到下一个测试会话的索引并等待一个时间刻度超时到期;
如果使能,获取得到当期测试会话使用的数据结构并得到该会话当前的一个时间刻度变量时间刻度超时值,对时间刻度超时值减1 ;
对时间刻度超时值进行判断,确定当前会话时间刻度是否到期;如果当前会话时间刻度未到期,则更新会话中的时间刻度超时值,并对测试会话的索引进行更新;
如果时间刻度到期,则对外发送一个报文,对需要发送的报文按照配置进行组包,并对发送出去的报文进行字节数和包数统计,然后把报文发送到包转发处理弓I擎从指定端口发送处理。作为本发明的进一步改进,所述数据结构包括测试报文的配置、收发报文的统计及报文头。作为本发明的进一步改进,所述报文处理模块具体用于
在远端测试设备接收到报文后会对报文是否需要环回进行判断; 如果报文需要环回到报文发送端,则交换报文的源地址和目的地址,报文的出端口为报文的进入的端口,然后把报文送到包转发处理引擎;
如果报文不需环回,则根据测试会话的数据结构进一步得到报文序列号、接收报文统计的数据结构,进行报文序列号的检查,对接收到数据报文的字节数和报文数进行统计。本发明的有益效果是本发明在设计时基于以太网交换芯片,在以太网交换芯片中内嵌吞吐量性能测试处理引擎,采用本交换芯片组成的以太网交换机中实现对网络吞吐量进行性能测试时直接使用交换机内嵌工具而替代专业的测试仪设备进行测试,不对现有网络拓扑发生变动,可有效降低网络管理成本和运营成本。


图1示出了现有技术中吞吐量性能测试环境;
图2示出了本发明一实施方式中的吞吐量性能测试环境;
图3示出了本发明一实施方式中内嵌吞吐量性能测试处理引擎在交换芯片中的位置; 图4是本发明一实施方式内嵌于以太网交换芯片中的吞吐量性能测试处理引擎实现方法的流程图5是图4中SlO的具体处理流程图6是本发明一实施方式内嵌吞吐量性能测试处理引擎接收报文处理的流程图; 图7是本发明一实施方式内嵌吞吐量性能测试处理引擎的模块组成图。
具体实施例方式以下将结合附图所示的各实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。本发明一实施方式中的吞吐量性能测试环境如图2所示,不需要专业的网络测试仪设备,通过内嵌吞吐量性能测试处理引擎在以太网交换机之间进行测试。具体地,内嵌吞吐量性能测试处理引擎在以太网交换芯片中的位置如图3所示,用以测量互联设备之间的
吞吐量。吞吐量是描述网络互联设备的最基本的指标参数。根据吞吐量的定义可知,吞吐量包含了 2层含义首先要保证待转发的任何一个数据帧都能够正确地转发到适当的地址,其次要充分发挥设备的转发能力。网络发展的一个主要标志是网络链路带宽的快速增长,反映到网络互连设备上就是设备吞吐量的增长,参考RFC2M4和ITU-T Y. 1564,在吞吐量的测试中,需注意以下几点
(1)测试时间因为数据帧吞吐量测量的是恒定负载情况下设备的转发能力,如果时间太短,就不能正确反映设备的吞吐能力。(2)测试粒度测试粒度设定为不超过理论速率的1%。在实际测试系统的设计中, 可以采用变化的粒度,刚开始时采用较大的变化粒度以快速找到吞吐量的大概范围,然后选用更小粒度以精确定位,一般多用二分算法。(3)测试帧长要求对一系列的帧长(64,128, 256, 512, 768,1024,1280,1518 ψ 节)在一定的时间内,按一定的数目进行测试。帧长越小,对吞吐量的测试结果影响越大, 反之,帧长越大,对吞吐量的测试结果影响越小。因为对于网络设备而言,在同一带宽下,帧长越小数据帧的数量就越大,那么网络设备处理这些数据帧花费的时间就会越多,反之帧长越大数据帧的数量就越小,那么网络设备处理这些数据帧花费的时间就会越少也就越容易处理。本发明一实施方式内嵌于以太网交换芯片中的吞吐量性能测试处理引擎实现方法的流程图如图4所示,包括以下步骤
S10,获取当期测试会话使用的数据结构并在当前会话时间刻度到期时对外发送一个报文,对发送出去的报文进行字节数和包数统计; S20,对报文进行解析,解析出报文信息; S30,根据报文信息进行查询,得到测试会话的数据结构; S40,根据测试会话的数据结构对接收到的数据报文的字节数和报文数进行统计。本发明支持多个会话同时进行吞吐量性能测试,每个会话之间的最小发包间隔定义为一个时间刻度,如果包处理引擎的包处理能力是每个时钟周期能处理8个字节的报文,则在发送不同报文长度的情况下,报文同时存在不同报文长度时,1个时间刻度所需要的时钟周期应该大于等于长度最长的报文所需要的时钟周期。下面以一个业务(EVC)配置最高带宽为10Μ,对长度为64字节的报文在测试100% 带宽利用率下的处理为例来说明。如下表1所示,如果芯片的核心频率为200ΜΗΖ,则带宽为 IOM且发送100%的带宽的报文在芯片时需要13340个周期发送一个报文,假设此时测试处理引擎支持的测试会话的数目为16,每一个时间刻度配置的时钟周期的数目为256;则长度为64字节的测试报文的每一个会话需要的时间刻度数为13440/16/256 = 3^8125,此时发送一个报文需要的时间刻度数目的整数部分为3;小数部分为18432 (本文中小数采用整数表示,公式小数部分* 2~16,即18432 = 0. 28125*2"16 )。表1
IM线速情况下的包转发率
权利要求
1.一种在以太网交换芯片中内嵌吞吐量性能测试处理引擎的实现方法,其特征在于, 包括以下步骤S10,获取当期测试会话使用的数据结构并在当前会话时间刻度到期时对外发送一个报文,对发送出去的报文进行字节数和包数统计; S20,对报文进行解析,解析出报文信息; S30,根据报文信息进行查询,得到测试会话的数据结构; S40,根据测试会话的数据结构对接收到的数据报文的字节数和报文数进行统计。
2.根据权利要求1所述的在以太网交换芯片中内嵌吞吐量性能测试处理引擎的实现方法,其特征在于,所述SlO具体包括以下步骤S101,对吞吐量性能测试处理引擎进行初始化赋值;S102,等待一个时间刻度超时到期,如果没有超时到期则回到S102继续等待处理,如果超时到期则跳到S103处理;S103,判断当前的测试会话是否使能,如果不使能,则跳到S104处理,如果使能则跳到 S105处理;S104,对测试会话的索引进行更新,得到下一个测试会话的索引并回到S102处理; S105,获取得到当期测试会话使用的数据结构并得到该会话当前的一个时间刻度变量时间刻度超时值,对时间刻度超时值减1 ;S106,对时间刻度超时值进行判断,如果当前会话时间刻度未到期,则到S107处理; 如果时间刻度到期,则对外发送一个报文,转到S108处理; S107,更新会话中的时间刻度超时值,并转到S104处理;S108,对需要发送的报文按照配置进行组包,并对发送出去的报文进行字节数和包数统计,然后把报文发送到包转发处理引擎从指定端口发送处理,报文发送完之后回到S104 进行处理。
3.根据权利要求2所述的在以太网交换芯片中内嵌吞吐量性能测试处理引擎的实现方法,其特征在于,在S105中还得到会话当前另一个时间刻度变量时间刻度的小数部分, 每次会话时间刻度到期,会对时间刻度的小数部分进行累加,当小数部分累加大于65535 时,则整数部分会进一位,下一轮更新的时间刻度超时值需加上进位数。
4.根据权利要求2所述的在以太网交换芯片中内嵌吞吐量性能测试处理引擎的实现方法,其特征在于,所述数据结构包括测试报文的配置、收发报文的统计及报文头。
5.根据权利要求4所述的在以太网交换芯片中内嵌吞吐量性能测试处理引擎的实现方法,其特征在于,所述报文头最长64字节。
6.根据权利要求1所述的在以太网交换芯片中内嵌吞吐量性能测试处理引擎的实现方法,其特征在于,所述S40具体包括以下步骤S401,在远端测试设备接收到报文后会对报文是否需要环回进行判断,如果报文需要环回到报文发送端,则转入S402进行处理,否则转到S403进行处理;S402,交换报文的源地址和目的地址,报文的出端口为报文的进入的端口,然后把报文送到包转发处理引擎;S403,根据测试会话的数据结构进一步得到报文序列号、接收报文统计的数据结构,进行报文序列号的检查,对接收到数据报文的字节数和报文数进行统计。
7.一种内嵌于以太网交换芯片中的吞吐量性能测试处理引擎,其特征在于,包括报文发送模块,用以获取当期测试会话使用的数据结构并在当前会话时间刻度到期时对外发送一个报文,对发送出去的报文进行字节数和包数统计; 报文解析模块,用以对报文进行解析,解析出报文信息; 会话查询模块,用以根据报文信息进行查询,得到测试会话的数据结构; 报文处理模块,用以根据测试会话的数据结构对接收到的数据报文的字节数和报文数进行统计。
8.根据权利要求7所述的内嵌于以太网交换芯片中的吞吐量性能测试处理引擎,其特征在于,所述报文发送模块具体用于对吞吐量性能测试处理引擎进行初始化赋值;等待一个时间刻度超时到期,如果没有超时到期则回到该步继续等待处理; 如果超时到期,则判断当前的测试会话是否使能;如果不使能,则对测试会话的索引进行更新,得到下一个测试会话的索引并等待一个时间刻度超时到期;如果使能,获取得到当期测试会话使用的数据结构并得到该会话当前的一个时间刻度变量时间刻度超时值,对时间刻度超时值减1 ;对时间刻度超时值进行判断,确定当前会话时间刻度是否到期; 如果当前会话时间刻度未到期,则更新会话中的时间刻度超时值,并对测试会话的索引进行更新;如果时间刻度到期,则对外发送一个报文,对需要发送的报文按照配置进行组包,并对发送出去的报文进行字节数和包数统计,然后把报文发送到包转发处理引擎从指定端口发送处理。
9.根据权利要求8所述的内嵌于以太网交换芯片中的吞吐量性能测试处理引擎,其特征在于,所述数据结构包括测试报文的配置、收发报文的统计及报文头。
10.根据权利要求7所述的内嵌于以太网交换芯片中的吞吐量性能测试处理引擎,其特征在于,所述报文处理模块具体用于在远端测试设备接收到报文后会对报文是否需要环回进行判断; 如果报文需要环回到报文发送端,则交换报文的源地址和目的地址,报文的出端口为报文的进入的端口,然后把报文送到包转发处理引擎;如果报文不需环回,则根据测试会话的数据结构进一步得到报文序列号、接收报文统计的数据结构,进行报文序列号的检查,对接收到数据报文的字节数和报文数进行统计。
全文摘要
本发明提供一种内嵌于以太网交换芯片中的吞吐量性能测试处理引擎及其实现方法,其中方法包括以下步骤获取当期测试会话使用的数据结构并在当前会话时间刻度到期时对外发送一个报文,对发送出去的报文进行字节数和包数统计;对报文进行解析,解析出报文信息;根据报文信息进行查询,得到测试会话的数据结构;根据测试会话的数据结构对接收到的数据报文的字节数和报文数进行统计。从而实现对网络吞吐量进行性能测试时直接使用交换机内嵌工具而替代专业的测试仪设备进行测试,不对现有网络拓扑发生变动,可有效降低网络管理成本和运营成本。
文档编号H04L12/26GK102394795SQ201110344649
公开日2012年3月28日 申请日期2011年11月4日 优先权日2011年11月4日
发明者何志川 申请人:盛科网络(苏州)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1