当前位置:首页 > 通信技术 > 通信技术
[导读]摘要:针对我国当前网络互连、互通的迫切需求,提出了一种通用的网络协议一致性测试平台的设计方案。通过对通用平台硬件结构和软件设计的说明,阐述了通用平台的工作过程和测试方法,为网络协议一致性测试提出了有效

摘要:针对我国当前网络互连、互通的迫切需求,提出了一种通用的网络协议一致性测试平台的设计方案。通过对通用平台硬件结构和软件设计的说明,阐述了通用平台的工作过程和测试方法,为网络协议一致性测试提出了有效的解决方案。
关键词:通用平台;协议;一致性测试

0 前言
    计算机网络协议一致性测试是检验计算机网络各部分正确互连、互通和互操作的关键技术,用来验证产品协议实现与相应协议标准之间的一致性。即在同一网络协议标准下检验不同的待测设备是否在相同的外部输入下,输出相同的结果。
    目前, 我国网络产品检测的技术水平和能力与国际上存在较大差距,协议一致性测试产品的设计大多停留在测试方法的理论研究上,在协议测试的通用平台方面还缺乏较好的解决方案。

1 网络协议一致性测试概述
    网络协议的一致性测试是一种功能性的黑盒测试,通常包括静态测试和动态测试两类。静态测试是指协议实现者向测试方提交“协议实现一致性声明”与协议中的静态一致性要求相比较,动态测试是运行测试集对DUT(Device under Test)进行测试。
    协议一致陛测试包括三个阶段:第一阶段是测试生成,为特定协议产生独立于所有协议实现的抽象测试集;第二阶段是测试实现,把抽象测试集中的测试例转换成可执行的测试例;第三阶段为测试执行,在特定的DUT上执行测试用例。
    通用网络协议一致性测试平台用于动态测试,也分为三个阶段:第一阶段是对一个指定的协议生成一个测试套集,根据协议的要求,这个测试套集可以在实现前对收发双方进行的交互进行完全设定,或者在某些需要双方互动(字段值需要对方的数据来进行填写)的字段给出一个变量。第二阶段是按照这个测试套集对被测设备的协议实现(DUT)进行黑盒测试;第三个阶段是通过比较DUT的实际输出与预期输出的异同,从而实现网络协议的一致性测试。
    通用平台对各个不同的协议可支持生成不同的测试套集,分别进行测试和一致性对比。

2 通用平台组成
    通用平台由控制台、测试机两部分组成。其中控制台负责配置测试套集的策略、测试结果的统计分析及人机交互;测试机负责生成或接收测试套集,然后生成测试流发送到被测设备;并从被测设备接收测试数据;然后将数据返回控制台。如图1所示。


2.1 控制台
    控制台硬件可以是一台PC机,其网卡与测试机控制口相连。在高层通过人机对话界面,对协议、算法及网络参数进行配置,对测试套集生成模式及使用方式等进行策略设置;通过驱动程序与测试机进行通信,向测试机输入测试套集的参数配置,并接收测试机输出的结果;并对测试结果进行统计分析。
    软件模块包括界面模块、协议接口模块、算法接口模块、网络接口模块、通信模块、统计分析模块。
2.2 测试机
2.2.1 硬件组成
    测试机硬件采用高性能、高可靠性、高稳定性的嵌入式多核处理器平台。配置高速100M、1000M自适应以太网口,可扩展的大容量DDR2内存和大容量的Flash空间。硬件框图如图2所示,多核处理器平台的核心部件为CPU、CPLD和FPGA。


    CPU主要用于接收来自控制机的网络、协议、算法参数并生成实现网络协议的测试套集,它可以直接对被测设备发送或者接收测试流,或者通过自定义总线将测试套集存储在SRAM中,以实现快速的测试;它还实现对外围配套器件的控制,包括DDR、Flash、噪声、日历时钟以及译码等。CPU的PCI总线转换出一个网络,作为测试机的控制口,与控制机进行通信。CPU的串口总线接出一个RS232串口。
    CPLD主要用于CPU启动、数据总线的译码、FPGA逻辑配置等处理。
    FPGA主要用于网络接口处理和测试流发送、接收。首先,它提供两个软MAC核与PHY芯片相连实现DUT的发送和接收网口;其次,它提供另外两个软MAC核可以允许CPU直接与DUT进行发送接收测试流;也可以调用外部SRAM实现测试流发送接收等操作。FPGA和CPU之间有两种不同的通讯接口,一种是数据总线接口,用于传输基本配置信息、状态信息和SRAM数据;一种是RGMII网口接口,用于传输测试流数据。
2.2.2 软件组成
    CPU软件使用裁剪的定制LINUX操作系统,内核版本2.6以上,配IPv4协议栈等。CPU要实现的软件功能比较多,软件模块有以下几个:
    (1)与控制机的通信模块:负责接收来自控制机的网络、协议、算法参数以及其他命令,并回送测试结果。
    (2)算法实现模块:实现协议中需要的算法。
    (3)套集生成模块:这是实现一个协议所需要的IP包的集合,包括发送的IP包和接收的IP包。每个不同的协议将产生定制的套集。每个套集的主要流程就是生成指定的某个协议所需IP包的过程。但是在协议的实现上,会按照协议的要求对相应的字段进行边界测试、正确性和错误测试。并体现在不同的测试流里。
    (4)测试流发送模块:将存储在SRAM里的测试流发送至DUT。
    (5)测试流接收模块:接收DUT发出的响应流,存储在SRAM里。
    (6)结果的协议分析模块:CPU接收到测试流后,将其按照协议要求拆分成各个字段,并与协议进行比对分析。并将结果发送到与控制机的通信模块。
    在发送IP包和接收IP包有关联的情况下,比如IV向量由接收包传递过来后才能确定下一包发送的内容,必须由CPU直接进行测试。
    在协议比较简单,发送IP包和接收IP包没有关联的情况下,可以将测试套集装载在SRAM里,由FPGA进行测试。这种情况下,也可以测试DUT的性能。

3 工作流程与测试内容
    协议一致性测试的主要过程包括:标准测试套集生成、测试执行、结果分析三个部分。标准测试套集是通过分析协议来确定要测试的各个方面,从而产生测试用例的集合;测试执行为测试用例的运行过程;接收数据分析是对测试结果进行分析,从而得到协议实现与协议说明是否一致的判决。如图3所示。


    协议一致性测试的内容包括三个方面:一是协议格式、完整性的一致性测试,能够正确识别收到的协议,并且按照协议做出正确的响应,响应的格式要与协议一致。二是测试协议中包含的算法的正确性。要能够正确地加密和解密相应的信息。三是要对协议的实现过程包括握手、协商等进行一致性测试。

4 测试套集的生成方法
    测试套集的生成方法理论上有可达性分析与测试序列两种。可达性分析是从一个初始状态出发,生成并检查系统能够到达的所有状态。测试序列方法是针对FSM中的单个转移生成的测试子序列,再将这些测试子序列连接起来作为完整的测试序列。
    通用平台对测试套集的生成方法不作限定。因为网络协议千差万别,套用某一个方法是不现实的。因此不论什么方法,即使是手工方法,只要能够正确地诠释协议,生成的测试套集符合套集接口要求都可以直接输入到平台上实施测试。套集可以是完整的协议测试,也可以是某个协议测试套集的一部分。这样大大方便了协议测试套集的调试与测试。
    通用平台也提供了一种测试套集的生成方法。就是将协议的分析过程体现在控制机的界面上,在界面上对协议进行分割,确定转移点和子序列,并给出子序列的数据范围。然后CPU的套集生成软件将这些转移点和子序列通过组合连接起来,形成测试套集。

5 结束语
    在协议一致性测试的需求越来越迫切的同时,协议的功能越来越强,复杂性也越来越高,使得测试难度越来越大。通用平台的硬件设计为以后协议的发展做好了可持续发展的基础,而软件设计也将提供开源和稳定的接口以供协议的发展,增加对协议的支持。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭