一种交换机报文测试方法、系统及相关装置与流程

    专利2022-07-07  231


    本申请涉及数据测试领域,特别涉及一种交换机报文测试方法、系统及相关装置。



    背景技术:

    在网络交换机老化测试的过程中,需要在长达28小时甚至更长的时间让每个端口接收和转发全带宽(fullmesh)的报文,所以就要求同时有更多的报文发生器可以连接到待测交换机上。

    目前在工厂产线采用一种报文发生器直接给待测交换机发送报文的方式。此方式的优点是测试稳定,排错容易,但是有两个问题需要解决:一是该报文发生器因为技术垄断的原因价格昂贵,导致网络交换机老化测试成本比较高。其次二是每台报文发生器仅有12个25g的端口可用,以现有的25gtor的交换机为例,每台报文发生器仅能同时测试6台待测25g交换机,而的ess(environmentalstressscreening,环境应力筛选)恒温箱每次可以最多测试120台交换机,造成恒温箱资源的浪费。



    技术实现要素:

    本申请的目的是提供一种交换机报文测试方法、交换机报文测试系统和计算机可读存储介质,能够降低测试成本,提高测试覆盖率。

    为解决上述技术问题,本申请提供一种交换机报文测试方法,具体技术方案如下:

    接收原始报文发生器中第一奇数端口生成的测试报文;

    将所述测试报文复制并转发至所有第二奇数端口,再经由所述第二奇数端口发送至对应的待测试交换机的第一个端口;

    在所述测试报文从所述待测试交换机的第一个端口输入,并从最后一个端口输出后,将所述测试报文返回至各所述第二奇数端口对应的第二偶数端口;

    经由各所述第二偶数端口将所述测试报文返回至所述原始报文发生器上所述第一奇数端口对应的第一偶数端口,得到测试回路;

    以所述测试回路对所述待测试交换机进行测试。

    可选的,接收原始报文发生器中第一奇数端口生成的测试报文之前,还包括:

    所述原始报文发生器封装源ip地址和目的ip地址得到所述测试报文。

    可选的,经由所述第二奇数端口发送至对应的待测试交换机的第一个端口之前,还包括:

    将所有所述第二奇数端口添加至第一vlan。

    可选的,将所有所述第二奇数端口添加至第一vlan包括:

    利用控制台界面的控制参数将所有所述第二奇数端口添加至第一vlan。

    可选的,还包括:

    配置所述待测试交换机每个端口对应的vlan,以确保所述测试报文从所述待测试交换机的第一个端口输入,并从最后一个端口输出。

    可选的,还包括:

    配置所述待测试交换机所对应的vlan均为无标志vlan。

    可选的,所述测试报文包含ip首部、ip版本号、ip首部长度、服务类型、报文总长度、片段标识、片偏移、标识位和生存周期。

    本申请还提供一种交换机报文测试系统,包括:

    原始报文发生器,用于生成测试报文;

    与所述原始报文发生器相连和待测试交换机均相连的环境测试单元机,用于复制并转发所述测试报文至与之相连的各所述待测试交换机,并在所述待测试交换机逐个端口测试所述测试报文后,将所述测试报文返回所述原始报文发生器,完成报文收发测试回路。

    可选的,还包括:

    ess恒温箱,用于提供所述待测试交换机的测试环境。

    本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法的步骤。

    本申请提供一种交换机报文测试方法,包括:接收原始报文发生器中第一奇数端口生成的测试报文;将所述测试报文复制并转发至所有第二奇数端口,再经由所述第二奇数端口发送至对应的待测试交换机的第一个端口;在所述测试报文从所述待测试交换机的第一个端口输入,并从最后一个端口输出后,将所述测试报文返回至各所述第二奇数端口对应的第二偶数端口;经由各所述第二偶数端口将所述测试报文返回至所述原始报文发生器上所述第一奇数端口对应的第一偶数端口,得到测试回路;以所述测试回路对所述待测试交换机进行测试。

    本申请采用中间设备,作为原始报文发生器和待测试交换机的报文中转,利用中间设备包含的多个扩展端口分别连接至对应的待测试交换机,将中间设备作为二次报文发生器,能够提高原始报文发生器所能同时测试的待测试交换机数量,提高测试覆盖率和交换机测试效率,同时减少测试所需原始报文发生器数量,降低测试成本。

    本申请还提供一种交换机报文测试系统和计算机可读存储介质,具有上述有益效果,此处不再赘述。

    附图说明

    为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

    图1为本申请实施例所提供的一种交换机报文测试方法的流程图;

    图2为本申请实施例所提供的一种交换机测试线路布局图;

    图3为本申请实施例所提供的一种交换机报文测试方法的流程图。

    具体实施方式

    为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

    请参考图1,图1为本申请实施例所提供的一种交换机报文测试方法的流程图

    s101:接收原始报文发生器中第一奇数端口生成的测试报文;

    对于原始报文发生器而言,其通常包含上下两层端口,其标号通常按s型排列,即上一层端口均为奇数端口,下一层端口均为偶数端口。当然本申请也可以采用类型的原始报文发生器,而无论采用何种原始报文发生器,为了实现报文测试回路,均可以将原始报文发生器上的所有端口按照端口号分为奇数端口和偶数端口,分别用于实现测试回路中的报文发送和报文接收。当然,在此基础上,还可以引申将原始报文发生器上的所有端口分为两类,同样分别用于实现测试回路中的报文发送和报文接收,而具体的划分依据在此不作详细限定。

    为了实现本实施例的交换机报文测试方法,本实施例中,原始报文发生器的第一奇数端口中的“第一”用于指代该奇数端口属于原始报文发生器,而并非指代奇数端口中的顺序关系。对于原始报文发生器中的每个奇数端口,其均可以作为报文发送端口,且各奇数端口之间的报文发送顺序并无任何要求。

    作为本实施例基础上一种更优选的实施方式,为了更好的实现报文测试回路,接收原始报文发生器中第一奇数端口生成的测试报文之前,原始报文发生器还可以事先封装源ip地址和目的ip地址得到测试报文。在此对于如何封装不作具体限定,可以基于tcp/ip协议进行相应的报文封装,即针对报文首部的数据即数据排列顺序作相应设定。此外,本实施例对于测试报文的具体内容不作限定,容易理解的是,其应包含与报文测试的相关数据,例如测试报文可以包含ip首部、ip版本号、ip首部长度、服务类型、报文总长度、片段标识、片偏移、标识位和生存周期等数据。

    下文以一种优选的测试报文为例对封装内容加以说明:

    ip首部:共32bit(4个字节);

    ip版本号(4bit):用于标识是ipv4还是ipv6;

    首部长度(4bit):由于option是可选择的,所以需要指定首部长度;

    服务类型(8bit):用于标识tos、qos,定义ip协议包的处理方法;

    totallength(16bit):从首部到数据的总长度;

    fragmentid(16bit):片段标识,用于识别多个ip包,源于同一个数据包的的ip包的fragmentid相同,这样可以标识哪些ip包是同一个文件;

    fragmentoffset(13bit):片偏移,用于标识当一个文件被分成多个ip包传送时,每一个ip包所在的文件中的位置;

    标识位(3bit):可以包含df和mf:

    df:don'tfragment,表示没有分片;

    mf:morefragment,表示分成了多个片;

    ttl(8bit):生存周期,ttl会有一个初始值,每过一个路由器或者交换机就减1,直到为0,数据包就会被丢弃,用于避免生成网络幽灵数据;

    headerchecksum(16bit):用crc32算法计算首部校验和(类似于单向加密);

    源ip(32bit);

    目标ip(32bit);

    当然,针对于测试报文还可以有其他类型的封装,在此不一一举例限定。

    此外,对于测试报文的封装过程,可以通过原始报文发生器进行相应的设定。

    本实施例以原始报文发生器和待测试交换机之间的中间设备为实施主体,其主要为eut(environmentunittest,环境测试单元机),其实质依旧属于网络交换机,可以执行报文的收发,但本实施例要求作为中间设备的eut,均为参数、性能已知,且无任何故障的设备。

    在步骤s101中,eut需要接收源于原始报文发生器的测试报文,本实施例默认eut已经与原始报文发生器和待测试交换机均建立连接。每个eut同样包含相应的端口,需要注意的是,eut上的测试端口类型应与原始报文发生器的端口相匹配。例如,若原始报文发生器包含25g端口,则eut上的端口至少应包含满足25g端口需求的相应端口,其至少也为25g端口,或者更大带宽的端口,例如100g端口等,以满足原始报文发生器的测试需求。同理,相应的待测试交换机也应满足上述端口需求。但需要注意的是,eut上并不必须所有端口均满足原始报文生活器对应端口需求,沿引上例,eut上应存在不小于25g的端口,但同样可以存在小于25g的端口。

    此外,本实施例对于eut上包含的端口数量不作限定,容易理解的是,若eut上满足原始报文发生器的端口需求的端口越多,则eut作为二次报文发生器可以连接更多的待测试交换机,测试效率越高。

    s102:将所述测试报文复制并转发至所有第二奇数端口,再经由所述第二奇数端口发送至对应的待测试交换机的第一个端口;

    对于eut而言,其需要同样按照原始报文发生器中对于端口按照奇偶分配的需求,分成奇数端口和偶数端口。同样的,第二奇数端口中的“第二”仅用于指代该奇数端口属于eut。通常,由eut的端口1(指1号端口,后文同义)接收原始报文发生器发送的测试报文,此后,对测试报文进行复制并转发至eut上的其他奇数端口。

    需要注意的是,若原始报文发生器的第一奇数端口分别与多个eut相连,在需要由每个第一奇数端口分别将测试报文发送至对应eut的1号端口。以某类型原始报文发生器为例,其包含12个端口,分为6奇6偶,则可以同时连接6台eut,原始报文发生器生成测试报文后,传送至端口1、端口3、端口5、端口7、端口9、端口11等6个第一奇数端口,再由每个第一奇数端口按照100%load进行复制到所有eut的端口1。

    对于每个eut而言,其端口1接收到测试报文后,复制并转发至其余第二奇数端口,为实现该过程,可以经由第二奇数端口发送至对应的待测试交换机的第一个端口之前,将所有第二奇数端口添加至第一vlan。具体的,可以利用控制台界面的控制参数将所有第二奇数端口添加至第一vlan,即登录eut的console界面,逐个将eut的第二奇数端口加到同一vlan中。在此过程中,对于不同eut上第二奇数端口是否采用相同vlan,抑或是每台eut的第二奇数端口均对应一个vlan,均可以有效实施本实施例,不作具体限定。

    本步骤,还需要eut的每个第二奇数端口将测试报文发送至对应的待测试交换机的第一个端口。每台eut在满足上文所述的端口带宽需求后,可以同时连接多台待测试交换机。具体的,每台eut上每对奇偶端口(n和n 1,其中n为奇数)分别对应一台待测试交换机,默认该对奇偶端口满足带宽测试需求。连接时,每对奇偶端口中的奇数号端口连接至待测试交换机的端口1,每对奇偶端口中的偶数号连接至待测试交换机的端口2。

    s103:在所述测试报文从所述待测试交换机的第一个端口输入,并从最后一个端口输出后,将所述测试报文返回至各所述第二奇数端口对应的第二偶数端口;

    待测试交换机即systemunittest,系统测试单元机,可简称为sut。当待测试交换机接收到测试报文后,测试报文需要从待测试交换机的第一个端口(即端口1)输入,并从最后一个端口输出,而eut接收到待测试交换机返回的测试报文后,按照连接方式,应当由上文所述每对奇偶端口中的偶数号端口接收测试报文。

    为此确保测试报文从待测试交换机的第一个端口输入,并从最后一个端口输出,可以配置待测试交换机每个端口对应的vlan,按照vlan配置调整测试报文的输入输出路线。同时,还可以配置待测试交换机所对应的vlan均为无标志vlan,即把所有的vlan都设置成不带标志(untagged),保证所有的报文都不被vlan拦截,可以正常顺着类似蛇形的线路转发。

    s104:经由各所述第二偶数端口将所述测试报文返回至所述原始报文发生器上所述第一奇数端口对应的第一偶数端口,得到测试回路;

    s105:以所述测试回路对所述待测试交换机进行测试。

    最后将第二偶数端口接收到的测试报文再返回原始报文发生器上的第一偶数端口,即可得到测试回路。由此,一个原始报文发生器与待测试交换机的测试回路即建立完毕。

    本申请实施例采用中间设备,作为原始报文发生器和待测试交换机的报文中转,利用中间设备包含的多个扩展端口分别连接至对应的待测试交换机,将中间设备作为二次报文发生器,能够提高原始报文发生器所能同时测试的待测试交换机数量,提高测试覆盖率和交换机测试效率,同时减少测试所需原始报文发生器数量,降低测试成本。

    图2为本申请实施例所提供的一种交换机测试线路布局图,图2中以12端口的原始报文发生器为例,对于每个eut的端口数量不作限定,默认图2中所有eut的端口均满足带宽需求,图2中实线箭头代表测试报文发送过程,虚线箭头表示测试报文接收过程,且图2中省略了eut3至eut5,以及若干待测试交换机和部分端口标号。待测试交换机sut11表示其属于eut1的第1个待测试交换机,同理待测试交换机sut12表示其属于eut1的第2个待测试交换机,…,sut6n表示其属于eut6的第n个待测试交换机。

    由图2可以清晰看出,原始报文发生器的每个奇数端口发送测试报文到对应的eut,经过复制和转发到eut的其余奇数端口,而eut的每个第二奇数端口均可以连接一台sut。并按照图2所示实线路径和虚线路径,即可完成报文测试回路。

    下面对本申请实施例提供的一种交换机报文测试系统进行介绍,下文描述的交换机报文测试系统与上文描述的交换机报文测试方法可相互对应参照。

    图3为本申请实施例所提供的一种交换机报文测试方法的流程图,本申请还提供一种交换机报文测试系统,包括:

    原始报文发生器100,用于生成测试报文;

    与所述原始报文发生器100相连和待测试交换机300均相连的环境测试单元机200,用于复制并转发所述测试报文至与之相连的各所述待测试交换机300,并在所述待测试交换机300逐个端口测试所述测试报文后,将所述测试报文返回所述原始报文发生器100,完成报文收发测试回路。

    基于上述实施例,作为优选的实施例,还可以包括:

    ess恒温箱,用于提供所述待测试交换机300的测试环境。

    本申请还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

    说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的系统而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

    本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

    还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。


    技术特征:

    1.一种交换机报文测试方法,其特征在于,包括:

    接收原始报文发生器中第一奇数端口生成的测试报文;

    将所述测试报文复制并转发至所有第二奇数端口,再经由所述第二奇数端口发送至对应的待测试交换机的第一个端口;

    在所述测试报文从所述待测试交换机的第一个端口输入,并从最后一个端口输出后,将所述测试报文返回至各所述第二奇数端口对应的第二偶数端口;

    经由各所述第二偶数端口将所述测试报文返回至所述原始报文发生器上所述第一奇数端口对应的第一偶数端口,得到测试回路;

    以所述测试回路对所述待测试交换机进行测试。

    2.根据权利要求1所述的交换机报文测试方法,其特征在于,接收原始报文发生器中第一奇数端口生成的测试报文之前,还包括:

    所述原始报文发生器封装源ip地址和目的ip地址得到所述测试报文。

    3.根据权利要求1所述的交换机报文测试方法,其特征在于,经由所述第二奇数端口发送至对应的待测试交换机的第一个端口之前,还包括:

    将所有所述第二奇数端口添加至第一vlan。

    4.根据权利要求3所述的交换机报文测试方法,其特征在于,将所有所述第二奇数端口添加至第一vlan包括:

    利用控制台界面的控制参数将所有所述第二奇数端口添加至第一vlan。

    5.根据权利要求1所述的交换机报文测试方法,其特征在于,还包括:

    配置所述待测试交换机每个端口对应的vlan,以确保所述测试报文从所述待测试交换机的第一个端口输入,并从最后一个端口输出。

    6.根据权利要求5所述的交换机报文测试方法,其特征在于,还包括:

    配置所述待测试交换机所对应的vlan均为无标志vlan。

    7.根据权利要求2所述的交换机报文测试方法,其特征在于,所述测试报文包含ip首部、ip版本号、ip首部长度、服务类型、报文总长度、片段标识、片偏移、标识位和生存周期。

    8.一种交换机报文测试系统,其特征在于,包括:

    原始报文发生器,用于生成测试报文;

    与所述原始报文发生器相连和待测试交换机均相连的环境测试单元机,用于复制并转发所述测试报文至与之相连的各所述待测试交换机,并在所述待测试交换机逐个端口测试所述测试报文后,将所述测试报文返回所述原始报文发生器,完成报文收发测试回路。

    9.根据权利要求8所述的交换机报文测试系统,其特征在于,还包括:

    ess恒温箱,用于提供所述待测试交换机的测试环境。

    10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的交换机报文测试方法的步骤。

    技术总结
    本申请提供一种交换机报文测试方法,包括:接收原始报文发生器中第一奇数端口生成的测试报文;将测试报文复制并转发至所有第二奇数端口,再经由第二奇数端口发送至对应的待测试交换机的第一个端口;在测试报文从待测试交换机的第一个端口输入,并从最后一个端口输出后,将测试报文返回至各第二奇数端口对应的第二偶数端口;经由各第二偶数端口将测试报文返回至原始报文发生器上第一奇数端口对应的第一偶数端口,得到测试回路;以测试回路对待测试交换机进行测试。本申请能够提高测试覆盖率和交换机测试效率,同时减少测试所需原始报文发生器数量,降低测试成本。本申请还提供一种交换机报文测试系统和计算机可读存储介质,具有上述有益效果。

    技术研发人员:田周鹏
    受保护的技术使用者:苏州浪潮智能科技有限公司
    技术研发日:2020.11.13
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-8555.html

    最新回复(0)