tte交换机容量测试方法、装置及计算机可读介质
技术领域
1.本发明涉及测试技术领域,特别涉及tte交换机容量测试方法、装置及计算机可读介质。
背景技术:2.为测试tte交换机的交换容量,需要将tte网络测试仪与被测交换机相连,在进行了预设时间的测试后,停止测试,根据各流的发包和收包总数逐一检查be各流量是否开始丢包。根据tte交换机是否开始丢包,以测试的分辨率降低或者增加流量占用的带宽并重复以上过程,最后在测试允许的分辨率下停止测试。
3.然而,上述的测试流程需要采用人工检查,测试效率低下,测试过程费时费力。
4.因此,需要一种更高效的tte交换机容量测试方法。
技术实现要素:5.本发明实施例提供了tte交换机容量测试方法、装置及计算机可读介质,能够更高效的测试tte交换机的容量。
6.第一方面,本发明实施例提供了tte交换机容量测试方法,包括:
7.s1:根据所述tte交换机的理论最大交换容量,设置时间触发tt流量、带宽受限rc流量和尽力投递be流量的比例关系;
8.s2:向所述tte交换机发送测试包,以使所述测试包经过所述tte交换机并返回,其中,所述测试包中包括测试域和流量类型标识;
9.s3:根据所述tte交换机返回的所述测试包,根据所述测试包中的测试域确定所述tte交换机是否出现丢包,若否,执行s4,若是,执行s5:
10.s4:根据预设的分辨率增加所述tt流量和所述rc流量的在所述初始比例关系中的占比,执行s2;
11.s5:根据所述流量类型标识判断出现丢包的流量是否仅为所述be流量,若否,执行s6,若是,执行s7;
12.s6:根据预设的分辨率减少所述tt流量和所述rc流量的在所述初始比例关系中的占比,执行s2;
13.s7:根据当前的比例关系确定所述tte交换机的容量。
14.优选地,
15.在所述s1之前,还包括:与所述tte交换机建立连接;
16.与所述tte交换机的多个端口一一对应连接,所述tte交换机的端口在所述tte交换机内部按照预设顺序依次连通,且所述预设顺序中第一个端口与最后一个端口连通,形成全端口直连环回拓扑;
17.所述向所述tte交换机发送测试包,包括:
18.通过第一端口向所述tte交换机的第二端口发送测试报文;其中,所述第一端口与
所述待测设备的第二端口对应连接;
19.通过第三端口接收来自所述tte交换机的第四端口发送的所述测试包;其中,所述第四端口与所述第二端口在所述tte交换机的内部连通;所述第三端口与所述第四端口对应连接。
20.优选地,
21.所述测试域,包括数据流号和序列号,其中,所述序列号用于标识数据包数量,所述数据流号用于表征所述测试域所述的数据流;
22.根据所述测试包中的测试域确定所述tte交换机是否出现丢包,包括:
23.根据所述序列号和数据流号,利用如下丢包率计算公式,计算出所述tte交换机的丢包率,丢包率计算公式包括:
24.其中,s为所述丢包率,x为所述数据流号对应的数据流的标准数据包数量,y为所述序列号的数据包数量;
25.若所述丢包率不大于预设的阈值,确定所述tte交换机没有出现丢包,若所述丢包率大于预设的阈值,为合格,若大于所述阈值,确定所述tte交换机出现丢包。
26.优选地,
27.根据所述测试包中的测试域确定所述tte交换机是否出现丢包,包括:
28.启动第一定时器,在所述第一定时器超时后,向所述tte交换机发送至少一个数据报文,所述至少一个数据报文中的每个数据报文包含所述数据流号,所述第一定时器的时长用于保证所述第一检测报文比所述至少一个数据报文先到达所述第二网络设备;
29.向所述tte交换机发送第二检测报文,并记录第二发包计数值,所述第二发包计数值为发送所述第二检测报文时已发送的包括所述数据流号的数据报文的数量;
30.从所述tte交换机设备接收响应报文,从所述响应报文获取第一收包计数值和第二收包计数值,所述第一收包计数值为所述tte交换机接收所述第一检测报文时已接收的包括所述数据流号的数据报文的数量,所述第二收包计数值为所述tte交换机接收所述第二检测报文时已接收的包括所述数据流号的数据报文的数量;
31.根据所述第一发包计数值、所述第二发包计数值、所述第一收包计数值和所述第二收包计数值对所述多个数据报文进行丢包统计。
32.优选地,
33.传输流量按照时间关键特性分为所述tt流量、所述rc流量以及所述be流量三种流量类型;
34.对三种流量采用混合流量分区调度的方法对实时性流量与非实时性流量进行合理的时间规划使网络中的三种不同传输规则与优先级的信息流合理传输;
35.基于复杂网络的容量估算公式推广至tte网络容量估计,构建ba无标度网络模型,选择复杂网络中的边介数作为衡量tte网络容量的关键参数;
36.分析tte网络容量与网络规模、最大边介数的关系,对tte网络中的tt、rc、be流根据分区调度方式计算其传送时间段内的网络容量;
37.根据需要传输的报文依据重要程度分配给不同的传输流量类型。
38.优选地,
39.还包括:建立fpga电路,所述fpga电路包含tt帧调度信息缓冲区、rc帧调度信息缓
冲区、be帧调度信息缓冲区、mac层调度tt帧缓冲区、mac层调度rc帧缓冲区、mac层调度be帧缓冲区、协议处理软件和通信调度软件;
40.将tt流量输入到tt帧调度信息缓冲区,将rc流量输入到rc帧调度信息缓冲区,将be流量输入到be帧调度信息缓冲区;
41.所述协议栈软件在进入发送调度进程时,优先查询tt帧调度信息缓冲区,根据调度信息缓冲区获取的vlid参数信息索引到对应的tt帧虚拟链路缓冲区,读取该tt流量进行udp和ip协议栈处理后拷贝传送到mac层调度tt帧缓冲区;如果tt帧调度信息缓冲区为空,则查询rc帧调度信息缓冲区,如果非空则根据rc帧调度信息缓冲区获取的vlid参数信息索引到对应的rc帧虚拟链路缓冲区,读取该rc流量进行udp和ip协议栈处理后拷贝传送到mac层调度rc帧缓冲区;如果tt帧调度信息缓冲区和rc帧调度信息缓冲区均为空,则查询be帧调度信息缓冲区,如果be帧调度信息缓冲区非空,则对be流量进行udp和ip协议栈处理后拷贝传送到mac层调度be帧缓冲区;
42.在同步时钟计时到tt时间片的起始时刻点时从mac层调度tt帧缓冲区读取tt帧调度发送;在同步时钟计时到rt时间片时从mac层调度rc帧缓冲区读取rc帧、从mac层调度be帧缓冲区读取be帧调度发送。
43.第二方面,本发明实施例提供了基于上述第一方面中任一提供的tte交换机容量测试方法的tte交换机容量测试装置,包括:
44.设置单元,用于执行s1:根据所述tte交换机的理论最大交换容量,设置时间触发tt流量、带宽受限rc流量和尽力投递be流量的比例关系;
45.发送单元,用于执行s2:向所述tte交换机发送测试包,以使所述测试包经过所述tte交换机并返回,其中,所述测试包中包括测试域和流量类型标识;
46.处理单元,用于执行:s3:根据所述tte交换机返回的所述测试包,根据所述测试包中的测试域确定所述tte交换机是否出现丢包,若否,执行s4,若是,执行s5:
47.s4:根据预设的分辨率增加所述tt流量和所述rc流量的在所述初始比例关系中的占比,触发所述发送单元执行s2;
48.s5:根据所述流量类型标识判断出现丢包的流量是否仅为所述be流量,若否,执行s6,若是,执行s7;
49.s6:根据预设的分辨率减少所述tt流量和所述rc流量的在所述初始比例关系中的占比,触发所述发送单元执行s2;
50.s7:根据当前的比例关系确定所述tte交换机的容量。
51.优选地,
52.还包括:连接单元;
53.所述连接单元,用于与所述tte交换机的多个端口一一对应连接,所述tte交换机的端口在所述tte交换机内部按照预设顺序依次连通,且所述预设顺序中第一个端口与最后一个端口连通,形成全端口直连环回拓扑;
54.所述发送单元,用于通过第一端口向所述tte交换机的第二端口发送测试报文;其中,所述第一端口与所述待测设备的第二端口对应连接;通过第三端口接收来自所述tte交换机的第四端口发送的所述测试包;其中,所述第四端口与所述第二端口在所述tte交换机的内部连通;所述第三端口与所述第四端口对应连接。
55.第三方面,本发明实施例提供了tte交换机容量测试装置,包括:至少一个存储器和至少一个处理器;
56.所述至少一个存储器,用于存储机器可读程序;
57.所述至少一个处理器,用于调用所述机器可读程序,执行上述第一方面中任一提供的方法。
58.第四方面,本发明实施例提供了计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行上述第一方面中任一提供的方法。
59.本发明实施例提供了tte交换机容量测试方法、装置及计算机可读介质。由上述技术方案可知,为测试tte交换机的交换容量,设置时间触发tt流量、带宽受限rc流量和尽力投递be流量,并以一定比例的比例关系开始测试。向所述tte交换机发送测试包,以使所述测试包经过所述tte交换机并返回,其中,所述测试包中包括测试域和流量类型标识,用于表示测试包属于tt流量、带宽受限rc流量和尽力投递be流量的哪一种。根据所述tte交换机返回的所述测试包,根据所述测试包中的测试域确定所述tte交换机是否出现丢包,如果出现了丢包,根据测试包中包括的流量类型标识判断出现丢包的流量是否仅为所述be流量,由于be流量在测试中,当tte网络排出现拥塞的情况时,是可以丢弃be流量的,如果此时丢弃了be流量,则说明不可丢弃的时间触发tt流量、带宽受限rc流量此时的传输已经到达了容量上限,才会开始丢弃be流量,因此,根据当前的比例关系即可确定所述tte交换机的容量。如果被丢弃的流量不只有be流量,则说明tt流量或者rc流量也出现了丢包,由于这两种流量不会被优先丢弃,因此可以得出tte交换机的交换容量已经超过了上限的结论,为了得到tte交换机的容量上限,就需要根据预设的分辨率调低tt流量或者rc流量的比例,并再次进行测试,直至确定出tte交换机的容量。如果当前并未出现丢包,则说明此时tte的交换容量还未达到上限,因此,可以根据预设的分辨率提高tt流量或rc流量的比例,直到确定出tte交换机的容量。由此可见,本发明提供的方案针对tt流量和rc流量不同于be流量的特点,利用已有的实时丢包特性,增加少量的软硬件设施,即可实现对tte交换机的交换容量的自动测试,测试的中间过程无需人工干预,准确,快捷,从而能够更高效的测试tte交换机的容量。
附图说明
60.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
61.图1是本发明一实施例提供的tte交换机容量测试方法的流程图;
62.图2是本发明一实施例提供的tte交换机容量测试装置的示意图。
具体实施方式
63.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
64.为测试tte交换机的交换容量,需要将tte网络测试仪与被测交换机相连,在进行了预设时间的测试后,停止测试,根据各流的发包和收包总数逐一检查be各流量是否开始丢包。根据tte交换机是否开始丢包,以测试的分辨率降低或者增加流量占用的带宽并重复以上过程,最后在测试允许的分辨率下停止测试。
65.然而,上述的测试流程需要采用人工检查,测试效率低下,测试过程费时费力。
66.因此,需要一种更高效的tte交换机容量测试方法。
67.下面结合附图对本发明各个实施例提供的tte交换机容量测试方法、装置及计算机可读介质作详细说明。
68.如图1所示,本发明一实施例提供了tte交换机容量测试方法,该方法包括以下步骤:
69.步骤101:根据所述tte交换机的理论最大交换容量,设置时间触发tt流量、带宽受限rc流量和尽力投递be流量的比例关系;
70.步骤102:向所述tte交换机发送测试包,以使所述测试包经过所述tte交换机并返回,其中,所述测试包中包括测试域和流量类型标识;
71.步骤103:根据所述tte交换机返回的所述测试包,根据所述测试包中的测试域确定所述tte交换机是否出现丢包,若否,执行步骤104,若是,执行步骤105:
72.步骤104:根据预设的分辨率增加所述tt流量和所述rc流量的在所述初始比例关系中的占比,执行步骤102;
73.步骤105:根据所述流量类型标识判断出现丢包的流量是否仅为所述be流量,若否,执行步骤106,若是,执行步骤107;
74.步骤106:根据预设的分辨率减少所述tt流量和所述rc流量的在所述初始比例关系中的占比,执行步骤102;
75.步骤107:根据当前的比例关系确定所述tte交换机的容量。
76.由上述技术方案可知,为测试tte交换机的交换容量,设置时间触发tt流量、带宽受限rc流量和尽力投递be流量,并以一定比例的比例关系开始测试。向所述tte交换机发送测试包,以使所述测试包经过所述tte交换机并返回,其中,所述测试包中包括测试域和流量类型标识,用于表示测试包属于tt流量、带宽受限rc流量和尽力投递be流量的哪一种。根据所述tte交换机返回的所述测试包,根据所述测试包中的测试域确定所述tte交换机是否出现丢包,如果出现了丢包,根据测试包中包括的流量类型标识判断出现丢包的流量是否仅为所述be流量,由于be流量在测试中,当tte网络排出现拥塞的情况时,是可以丢弃be流量的,如果此时丢弃了be流量,则说明不可丢弃的时间触发tt流量、带宽受限rc流量此时的传输已经到达了容量上限,才会开始丢弃be流量,因此,根据当前的比例关系即可确定所述tte交换机的容量。如果被丢弃的流量不只有be流量,则说明tt流量或者rc流量也出现了丢包,由于这两种流量不会被优先丢弃,因此可以得出tte交换机的交换容量已经超过了上限的结论,为了得到tte交换机的容量上限,就需要根据预设的分辨率调低tt流量或者rc流量的比例,并再次进行测试,直至确定出tte交换机的容量。如果当前并未出现丢包,则说明此时tte的交换容量还未达到上限,因此,可以根据预设的分辨率提高tt流量或rc流量的比
例,直到确定出tte交换机的容量。由此可见,本发明提供的方案针对tt流量和rc流量不同于be流量的特点,利用已有的实时丢包特性,增加少量的软硬件设施,即可实现对tte交换机的交换容量的自动测试,测试的中间过程无需人工干预,准确,快捷,从而能够更高效的测试tte交换机的容量。
77.tte网络:tte的全称是time
‑
triggered ethernet,是主要用于航电等领域的专用以太网,通过国际标准sae as6802和arinc 664
‑
part7来规范。在802.3标准以太网的基础上,引入了时间同步、时隙等概念,并将端口上发送的流量分为pcf/tt/rc/be等不同的等级。pcf:protocol control frame,协议控制帧;tt:time
‑
trigger,时间触发;rc:rate
‑
constrained,速率约束;be:best
‑
effort,尽力投递。其中be流量就是通常意义上的802.3标准网络流量。
78.根据tte规范,tt流量只能在事先协商好的时隙发送,rc是带宽受限流量,be(best effort)就是802.3的以太网流量,当tte网络系统出现拥塞的情况,允许丢弃be流量。
79.tte网络不同于普通802.3标准网络的地方在于引入了实时概念,tt流量只能在特定的时隙发出去,相当于在端口的流量调度上面加上了某些限制,而且在系统出现拥塞的时候,会根据流量的优先级次序丢弃be流量。
80.tte交换机在不丢弃任何流量的情况下的最大交换容量以及在需要开始丢弃流量的时候,是否优先丢弃be流量,以及在何种情况下tt帧出现了丢包,都能反映tte交换机的性能,是很重要的性能指标。
81.在本发明一实施例中,在步骤101之前,还包括:与所述tte交换机建立连接;
82.与所述tte交换机的多个端口一一对应连接,所述tte交换机的端口在所述tte交换机内部按照预设顺序依次连通,且所述预设顺序中第一个端口与最后一个端口连通,形成全端口直连环回拓扑;
83.所述向所述tte交换机发送测试包,包括:
84.通过第一端口向所述tte交换机的第二端口发送测试报文;其中,所述第一端口与所述待测设备的第二端口对应连接;
85.通过第三端口接收来自所述tte交换机的第四端口发送的所述测试包;其中,所述第四端口与所述第二端口在所述tte交换机的内部连通;所述第三端口与所述第四端口对应连接。
86.具体来说,通常使用以太网测试仪来对tte交换机进行检测。以太网测试仪是一种用于产生以太网网络流量注入到被测设备或者被测网络(dut),并通过分析从被测对象返回的以太网帧来获得被测对象信息的专用测试仪器。从测试端口发出一个带有测试信息的网络包,经过被测网络或者被测设备,返回以太网测试仪的端口,测试仪提取测试包的发送时刻的信息,与接收时刻的对应信息相对比,从而得知被测设备和被测网络的特征。
87.在本发明一实施例中,所述测试域,包括数据流号和序列号,其中,所述序列号用于标识数据包数量,所述数据流号用于表征所述测试域所述的数据流;
88.根据所述测试包中的测试域确定所述tte交换机是否出现丢包,包括:
89.根据所述序列号和数据流号,利用如下丢包率计算公式,计算出所述tte交换机的丢包率,丢包率计算公式包括:
[0090][0091]
其中,s为所述丢包率,x为所述数据流号对应的数据流的标准数据包数量,y为所述序列号的数据包数量;
[0092]
若所述丢包率不大于预设的阈值,确定所述tte交换机没有出现丢包,若所述丢包率大于预设的阈值,为合格,若大于所述阈值,确定所述tte交换机出现丢包。
[0093]
具体来说,前文中提及的测试信息的一个体现方式叫做测试域,是在网络包的净荷部分预留一个区域填充的信息。其中两个字段叫做流号和序列号。流是可以被独立统计的流量单元,序列号用来标识同一个流内发送的不同的网络包。要检测丢包,最直接的做法是看发送了多少个包,接收了多少个包,接收减去发送就是丢失的部分。但是在运行中,很多网络流量还在网络拓扑当中传递,没法实时检测,只能停止流量后检测,这无疑大大降低了效率。鉴于tte网络丢弃be流量可以被认为是正确和合格的行为,所以不同于普通的802.3标准网络,对于tte交换机,需要测试几个参数:1、对于一个给定的比例关系,在什么情况下开始丢弃be包;2、对于上述给定的流量比例配置,在什么情况下开始丢弃tt/rc帧。这两个参数结合起来就能体现tte交换机的交换容量。
[0094]
在本发明一实施例中,根据所述测试包中的测试域确定所述tte交换机是否出现丢包,包括:
[0095]
启动第一定时器,在所述第一定时器超时后,向所述tte交换机发送至少一个数据报文,所述至少一个数据报文中的每个数据报文包含所述数据流号,所述第一定时器的时长用于保证所述第一检测报文比所述至少一个数据报文先到达所述第二网络设备;
[0096]
向所述tte交换机发送第二检测报文,并记录第二发包计数值,所述第二发包计数值为发送所述第二检测报文时已发送的包括所述数据流号的数据报文的数量;
[0097]
从所述tte交换机设备接收响应报文,从所述响应报文获取第一收包计数值和第二收包计数值,所述第一收包计数值为所述tte交换机接收所述第一检测报文时已接收的包括所述数据流号的数据报文的数量,所述第二收包计数值为所述tte交换机接收所述第二检测报文时已接收的包括所述数据流号的数据报文的数量;
[0098]
根据所述第一发包计数值、所述第二发包计数值、所述第一收包计数值和所述第二收包计数值对所述多个数据报文进行丢包统计。
[0099]
其中检测报文和响应报文例如可以分别是丢包统计消息和丢包统计响应.或者所述检测报文和所述响应报文都为联通性检测消息。在检测报文的发送时刻和接收时刻分别记录发送和接收的数据报文的计数值,根据所述计数值进行丢包统计。所述丢包统计需要保证数据报文和检测报文的传输顺序,否则统计结果将不准确。第二个检测报文早于后两个数据报文到达第二网络设备时,将会得到错误的丢包统计值2。而实际上所述后两个数据报文并没有丢失,只是晚于所述第二个检测报文到达。因此,可以在用于丢包检测的数据报文中添加检测标志。基于所述检测标志进行丢包数的计算。所述发包计数器能够记录包括检测标志的数据报文的发包计数值。所述收包计数器能够记录包括检测标志的数据报文的收包计数值。
[0100]
在本发明一实施例中,根据所述测试包中的测试域确定所述tte交换机是否出现丢包,包括:
[0101]
启动第一定时器,在所述第一定时器超时后,向所述tte交换机发送至少一个数据报文,所述至少一个数据报文中的每个数据报文包含所述数据流号,所述第一定时器的时长用于保证所述第一检测报文比所述至少一个数据报文先到达所述第二网络设备;
[0102]
向所述tte交换机发送第二检测报文,并记录第二发包计数值,所述第二发包计数值为发送所述第二检测报文时已发送的包括所述数据流号的数据报文的数量;
[0103]
从所述tte交换机设备接收响应报文,从所述响应报文获取第一收包计数值和第二收包计数值,所述第一收包计数值为所述tte交换机接收所述第一检测报文时已接收的包括所述数据流号的数据报文的数量,所述第二收包计数值为所述tte交换机接收所述第二检测报文时已接收的包括所述数据流号的数据报文的数量;
[0104]
根据所述第一发包计数值、所述第二发包计数值、所述第一收包计数值和所述第二收包计数值对所述多个数据报文进行丢包统计。
[0105]
在本发明一实施例中,传输流量按照时间关键特性分为所述tt流量、所述rc流量以及所述be流量三种流量类型;
[0106]
对三种流量采用混合流量分区调度的方法对实时性流量与非实时性流量进行合理的时间规划使网络中的三种不同传输规则与优先级的信息流合理传输;
[0107]
基于复杂网络的容量估算公式推广至tte网络容量估计,构建ba无标度网络模型,选择复杂网络中的边介数作为衡量tte网络容量的关键参数;
[0108]
分析tte网络容量与网络规模、最大边介数的关系,对tte网络中的tt、rc、be流根据分区调度方式计算其传送时间段内的网络容量;
[0109]
根据需要传输的报文依据重要程度分配给不同的传输流量类型。
[0110]
在本发明一实施例中,进一步包括:建立fpga电路,所述fpga电路包含tt帧调度信息缓冲区、rc帧调度信息缓冲区、be帧调度信息缓冲区、mac层调度tt帧缓冲区、mac层调度rc帧缓冲区、mac层调度be帧缓冲区、协议处理软件和通信调度软件;
[0111]
将tt流量输入到tt帧调度信息缓冲区,将rc流量输入到rc帧调度信息缓冲区,将be流量输入到be帧调度信息缓冲区;
[0112]
所述协议栈软件在进入发送调度进程时,优先查询tt帧调度信息缓冲区,根据调度信息缓冲区获取的vlid参数信息索引到对应的tt帧虚拟链路缓冲区,读取该tt流量进行udp和ip协议栈处理后拷贝传送到mac层调度tt帧缓冲区;如果tt帧调度信息缓冲区为空,则查询rc帧调度信息缓冲区,如果非空则根据rc帧调度信息缓冲区获取的vlid参数信息索引到对应的rc帧虚拟链路缓冲区,读取该rc流量进行udp和ip协议栈处理后拷贝传送到mac层调度rc帧缓冲区;如果tt帧调度信息缓冲区和rc帧调度信息缓冲区均为空,则查询be帧调度信息缓冲区,如果be帧调度信息缓冲区非空,则对be流量进行udp和ip协议栈处理后拷贝传送到mac层调度be帧缓冲区;
[0113]
在同步时钟计时到tt时间片的起始时刻点时从mac层调度tt帧缓冲区读取tt帧调度发送;在同步时钟计时到rt时间片时从mac层调度rc帧缓冲区读取rc帧、从mac层调度be帧缓冲区读取be帧调度发送。
[0114]
具体地,tte端系统驱动软件和协议软件协同合作实现了tt、rc和be三种数据不同优先级的收发处理调度。其中,tt是基于时间触发的数据,rc和be都是基于事件触发的数据,rc是流量控制数据,be是普通以太网数据。
[0115]
tte端系统的协议栈软件实现一种非中断机制的基于数据流优先级轮询调度机制。协议栈软件的发送端处理分别给需要进行发送处理的tt、rc和be三种数据建立不同优先级的fifo缓冲区,即tt帧调度信息缓冲区、rc帧调度信息缓冲区、be帧缓冲区。主处理器将tt消息输入到tt帧调度信息缓冲区,将rc消息输入到rc帧调度信息缓冲区,将be消息输入到be帧缓冲区。协议栈软件采用不同优先级调度提取fifo缓冲区数据实现其不同实时等级的发送协议处理和数据传递。协议栈软件一旦进入发送调度进程,按优先级高低分别轮询tt帧调度信息缓冲区、rc帧调度信息缓冲区和be帧缓冲区。优先查询tt帧调度信息缓冲区,根据tt帧调度信息缓冲区获取的vlid参数信息索引到对应的tt帧虚拟链路缓冲区,读取该tt消息进行udp和ip协议栈处理后拷贝传送到mac层调度tt帧缓冲区;查询状态下,如果tt帧调度信息缓冲区为空,则查询rc帧调度信息缓冲区,如果非空则根据rc帧调度信息缓冲区获取的vlid参数信息索引到对应的rc帧虚拟链路缓冲区,读取该rc消息进行udp和ip协议栈处理后拷贝传送到mac层调度rc帧缓冲区;如果tt帧调度信息缓冲区和rc帧调度信息缓冲区均为空,则查询be帧缓冲区,如果be帧缓冲区非空,则提取be消息进行udp和ip协议栈处理后,拷贝传送到mac层调度be帧缓冲区。
[0116]
协议栈软件的发送端处理分别给tt、rc和be三种数据建立不同的fifo缓冲区,即tt帧接收信息缓冲区、rc帧接收信息缓冲区、be帧缓冲区。千兆phy电路将接收到的tt帧输入tt帧接收信息缓冲区,将接收到的rc帧输入rc帧接收信息缓冲区,将接收到的be帧输入be帧缓冲区。协议栈软件采用不同优先级调度提取该fifo缓冲区数据实现其不同实时等级的接收协议处理和数据传递。协议栈软件一旦进入接收进程,按优先级高低分别轮询tt帧接收信息缓冲区、rc帧接收信息缓冲区和be帧缓冲区。优先查询tt帧接收信息缓冲区,根据tt帧的vlid参数信息索引到对应udp端口缓冲区,读取该tt帧进行udp和ip协议解包处理后拷贝传送到tt帧udp端口缓冲区;如果tt帧接收缓冲区为空,则查询rc接收信息缓冲区,如果非空则根据rc帧的vlid参数信息索引到对应udp端口缓冲区,读取该rc帧进行udp和ip协议解包处理后拷贝传送到rc帧udp端口缓冲区;如果tt和rc缓冲区均为空,则查询be帧缓冲区,如果be帧缓冲区非空,则提取be帧进行udp和ip协议解包处理后,拷贝传送到be帧udp端口缓冲区。
[0117]
如图2所示,本发明一实施例提供了基于上述实施例中任一提供的tte交换机容量测试方法的tte交换机容量测试装置,包括:
[0118]
设置单元201,用于执行s1:根据所述tte交换机的理论最大交换容量,设置时间触发tt流量、带宽受限rc流量和尽力投递be流量的比例关系;
[0119]
发送单元202,用于执行s2:向所述tte交换机发送测试包,以使所述测试包经过所述tte交换机并返回,其中,所述测试包中包括测试域和流量类型标识;
[0120]
处理单元203,用于执行:s3:根据所述tte交换机返回的所述测试包,根据所述测试包中的测试域确定所述tte交换机是否出现丢包,若否,执行s4,若是,执行s5:
[0121]
s4:根据预设的分辨率增加所述tt流量和所述rc流量的在所述初始比例关系中的占比,触发所述发送单元执行s2;
[0122]
s5:根据所述流量类型标识判断出现丢包的流量是否仅为所述be流量,若否,执行s6,若是,执行s7;
[0123]
s6:根据预设的分辨率减少所述tt流量和所述rc流量的在所述初始比例关系中的
占比,触发所述发送单元执行s2;
[0124]
s7:根据当前的比例关系确定所述tte交换机的容量。
[0125]
在本发明一实施例中,该装置还包括:连接单元;
[0126]
所述连接单元,用于与所述tte交换机的多个端口一一对应连接,所述tte交换机的端口在所述tte交换机内部按照预设顺序依次连通,且所述预设顺序中第一个端口与最后一个端口连通,形成全端口直连环回拓扑;
[0127]
所述发送单元,用于通过第一端口向所述tte交换机的第二端口发送测试报文;其中,所述第一端口与所述待测设备的第二端口对应连接;通过第三端口接收来自所述tte交换机的第四端口发送的所述测试包;其中,所述第四端口与所述第二端口在所述tte交换机的内部连通;所述第三端口与所述第四端口对应连接。
[0128]
可以理解的是,本发明实施例示意的结构并不构成对tte交换机容量测试装置的具体限定。在本发明的另一些实施例中,tte交换机容量测试装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
[0129]
上述tte交换机容量测试装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
[0130]
本发明还提供了一种计算机可读介质,存储用于使一计算机执行如本文所述的tte交换机容量测试方法的指令。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或cpu或mpu)读出并执行存储在存储介质中的程序代码。在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如cd
‑
rom、cd
‑
r、cd
‑
rw、dvd
‑
rom、dvd
‑
ram、dvd
‑
rw、dvd+rw)、磁带、非易失性存储卡和rom。可选择地,可以由通信网络从服务器计算机上下载程序代码。
[0131]
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
[0132]
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的cpu等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
[0133]
需要说明的是,上述各流程和各系统结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
[0134]
以上各实施例中,硬件单元可以通过机械方式或电气方式实现。例如,一个硬件单元可以包括永久性专用的电路或逻辑(如专门的处理器,fpga或asic)来完成相应操作。硬
件单元还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体的实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。
[0135]
上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基于上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的代码审核手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。