计算机网络中通信协议一致性测试技术浅探

点赞:31946 浏览:145945 近期更新时间:2024-02-15 作者:网友分享原创网站原创

摘 要本文介绍通信协议一致性测试的主要方法和相应的测试过程,同时,概括论述了通信协议的一致性测试体系,详细分析其生成测试序列的常用方法,同时指明了它们之间的关系,为通信协议一致性测试的实施提供指导作用.

关 键 词通信协议一致性测试测试序列

中图分类号:TP393.08文献标识码:A

通信协议是建立在互联网体系和分布式系统各通信端实体之间进行信息交流时应遵循的通用法则.互联网技术、计算机技术和通信技术的快速发展,促使通信网络趋向庞大,通信协议趋向复杂.而为了确保各通信实体之间稳定可靠地开展通信,有必要对通信协议的一致性进行系统测试.

一致性测试即是测定实现IUT(INMPLEMENTATIONUNDERTEST)在网络系统中的接收和发送信息是否与标准规定一致.通常利用一组测试案例序列,在一定的网络环境下,对被测实现进行黑盒测试是否与协议描述相一致.

1一致性测试的形式化描述

通信协议一般用文本描述,这种做法通俗易懂,不过容易出现理解的二义性.也即是执行人员对文本描述会有不同的理解,因此可能出现不同的协议实现,也极有可能出现错误的实现.因此,有必要在进行协议的一致性测试之前,继续对协议进行规范化的描述.本文主要介绍有限状态机模型.


F(finitestatemachine)即是有限状态机,它是用来规范通信协议时使用最普遍的数学模型之一,具有可操作性强、方便与其它方法匹配使用,以及易于自动实现等优点.一个F形式定义为六元组:

M等于(Q,,△,,,q0),其中

(1)Q等于{q0,q1,等,qn}代表有限状态集合;

(2)等于{1,2,等,m}代表有限输入字符集合;

(3)△等于{a1,a2,等,ar}代表有限输出字符集合;

计算机网络中通信协议一致性测试技术浅探参考属性评定
有关论文范文主题研究: 关于测试的论文范文资料 大学生适用: 研究生毕业论文、研究生毕业论文
相关参考文献下载数量: 83 写作解决问题: 如何写
毕业论文开题报告: 文献综述、论文摘要 职称论文适用: 职称评定、中级职称
所属大学生专业类别: 如何写 论文题目推荐度: 免费选题

(4)△:Q→Q代表状态转移函数;

(5):Q△错输出海

(6)q0∈Q代表初始状态.

无论什么时候,F均会有一个确定的状态,且可以通过零个或多个变迁转变为其它状态.采用F形式化的通信协议,产生变迁的操作有很多,包括每一帧信息的外发和内接,定时器超出时间或有中断信号等.使用F进行通信协议的描述式,可以使用有向图简化模型清晰描述,把任一状态作为一个节点,把任一变迁作为一个方向弧,即可形成有向图.而初始状态会事先由一个特殊状态来充当.该特殊状态作为开始运行时的情况,抑或运行过程中某个方面的起始点.一般起始于初始状态之后,经过合理变迁,即可跳跃到设定或者全部的系统状态.通常使用图论技术,分析哪些状态时可变迁到的,哪些是无法实现的.这个过程也称作可达性分析,通过这些分析可以测定协议状态的覆盖率.

2一致性测试体系

2.1本地测试法

本地测试法是和传统的软件测试相提并论的,使用该方法测试过程中,要求执行系统的上下层测试器和IUT在同一台主机上完成.连接方式是:上层测试器和IUT的上接口连接,而下层测试器和IUT下接口连接.目的即是通过上下测试器在IUT上下接口处进行事件交换,而验证IUT的行为是否规范,测试的协调过程主要是统一协调上下测试器在IUT的上下接口的测试动作.

使用本地测试法有很多优势,包括测试过程不受底层通信系统的限制,同时,上下测试器的测试协同过程可以简易地完成.缺点是被测协议在和上层协议以及下层协议之间都需要一个控制观察点PCO(PointofControlandObserve),对测试者的专业程度要求高,必须精通协议系统,并且了解和熟悉上下层协议之间的交互过程,否则,是无法正确设立PCO的.

2.2分布测试法

分布测试法有一定限制,比如遇到IUT的底部不能提供开放的接口等,这是可以使用分布测试法.分布测试法通常将上下层测试器分别介入两立的机器上,这要求比较完善的协调控制过程.它的一个明显缺陷便是,当下层测试器借助(N-1)怎么写作向IUT传送一个测试用例,而这个过程有可能手外界影响被耽搁或者数据丢失,该测试用例无法正确到达,不过这不影响下一个测试用例的传送,当下一个测试用例准确到达并得到响应,IUT就显而易见地进入错误状态,最终导致上下层测试器在执行测试用例时,出现失调的情况.通常,我们可以用恢复协调的测试方案,在出错的位置合理解决失调问题.从上可以看出,分布测试法受到被测协议本身具有的协调机制的限制.分布测试法所表现的优势主要是系统是分布特点,如此可以大大提高测试效率.但是由于使用了两立的机器,必须经过IUT间接通信,所以上下层测试器之间的同步问题增加了测试执行的难度.

2.3协调测试法

协调测试法与分布式测试法一样,IUT的底部也无法获得开放的接口,但与分布式测试法的主要区别在于,IUT的上部不需要有开放的界面,而是TMP(TestManagementProtocol)用来协同或者同步上下层测试器,最后只需要借助交换测试管理数据单元,实现自主测试管理和协调.

使用协调测试法,上层测试器处于从属地位,受到下层测试器和IUT的约束,下层测试器则起主要作用.这是四种测试法中最高级的一种方法,上、下层测试器间较易协调,上层测试器用到的测试用例,可由下层测试器传送于它,并在接到测试用例后,根据TMP的相关要求,在反馈给下层测试器,进行测试的判断.

协调测试法和分布测试法相比,通过引入TMP模块,合理解决了分布式测试法中不能协同的问题.但同时也带来了更高的系统复杂性.