计算机网络发展至今,已进入了一个系统化工程化的时代。其间最突出的事件是国际标准化组织开发了OSI七层协议参考模型,为解决异种机环境下的机间通信问题,做出了重要贡献,因而受到了广泛的欢迎,并被大多数人所承认与接受.但由于ISO协议的开发常常由不同的人员或组织进行,如何系统地开发协议软件,以确保不同实现之间的协调工作,又成为一个关键问题.这是因为绝对忠实于协议标准的实现几乎不存在,由于设计者对标准的理解不同,而实现过程又存在这样或那样的错误,导致产品的某些功能偏离标准,结果这些与标准不一致的产品在联成网络时,无法可靠地通信.解决这个向题的办法是对通信协议进行一致性测试.
一致性测试在通信协议工程中是非常重要的。通信产品遵循的通信协议是确保不同厂商的产品能够互通的关键,因此协议一致性测试便成为产品开发过程中的重要环节之一。在当今的信息和电信技术领域,技术和产品更新换代周期非常快,并制定了大量新的协议、标准和规范。随着统一的国际市场的形成,来自不同厂商的产品必须能够相互通信,而这些技术和产品所遵循的通信协议是确保其能接入现有通信网的关键。因此,如何快速、高效地完成通信设备的协议一致性测试便成为产品研制和开发中的重要环节之一。
通信协议是建立在互联网体系和分布式系统各通信端实体之间进行信息交流时应遵循的通用法则。互联网技术、计算机技术和通信技术的快速发展,促使通信网络趋向庞大,通信协议趋向复杂。为了确保各通信实体之间稳定可靠地开展通信,有必要对通信协议的一致性进行系统测试。
在OSI环境中,仅当一个协议实现在与其它协议实现通信时满足ISO标准的要求时,才说明它对该标淮呈现一致性.一致性的要求可以分为强制性要求,条件要求和可选要求.强制性要求
另一方面,一致性要求又可分为静态一致性要求与动态一致性要求.
为了评价一个特定实现的一致性,还要对协议实现的功能范围和选项作一说明,这样的
说明称为协议实现一致性声明PICS(ProtoeolxmplementationConformanceStatement).
一致性测试的目的是根据上述的一致性要求来确定IUT是否与相关标准的规范相一致。
然而,由于协议的复杂性,使得穷尽测试无论在技术上还是在经济上都无法实现.
协议一致性测试的目标是测试对象与相关协议的一致性,可以从以下几个方面进行:因此ISO 根据对一致性的断言,将协议的一致性测试分为4类型:
(1)基本互联测试
基本互联测试不对协议实现作完全的测试,它主要是检测严重的非一致性情况,
(2)能为测试
能力测试是对协议实现的静态一致性要求作有限的测试,以确定PICS中声明的那些可
以观察的能力,并检查这些关于静态一致性要求的可观察能力的有效性.
(3)行为测试
行为测试是在整个动态一致性要求的范围内尽可能地讨IUT进行全面测试.
(4)一致性判定测试
一致性判定测试对IUT是否满足特定的要求作出尽可能确定的诊断性回答.
总之,行为测试是一致性测试的主体部分,基本互联测试与能力测试可以作为它的先行
步骤来使用.一致性判定测试则可以认为是一种补充测试.
通信协议一致性测试的方法
(1)本地测试方法。(2)分布式测试方法。(3)协同测试方法。(4)远程测试方法。(5)“渡船”
或者“跨式”测试方法
通信协议一致性测试的原理
协议一致性测试实质上是在一定的网络环境下,利用一组测试序列,对被测协议实现(Implementation Under Test,简称为IUT)进行测试,通过比较IUT的实际输出与预期输出的异同,判定待测协议在多大程度上与标准描述相一致,并借此来保证通过一致性测试的协议在不同网络中的表现一致对于测试人员而言,被测协议实现表现为一个真实的系统或者真实系统的一部分,其内部逻辑结构是不可知的,可以知道的只是根据协议标准而得到的协议实现在一定的外部输入条件下所应该具备的外部行为,因此一致性测试应该采用黑盒测试的方式进行,通过控制输入、监控输出来评价协议实现是否与协议标准相一致。从测试执行的角度看,一致性测试包括两个阶段:控制阶段和观察阶段。测试系统向被测协议实现发送一系列的测试数据包,激发被测功能,这称为一致性测试的控制阶段;在测试的观察阶段,测试系统监控被测协议实现返回的数据包,与预期的返回数据进行比较,并做出测试判定。在测试执行过程中,测试系统通过控制观察点对IUT的输入和输出进行控制和观察,在分析输出是否与预期输出相一致的基础上,得到针对本次测试的结论。根据所有测试例的执行结果,最后可以得出被测协议是否与协议标准相一致的测试结论
一致性评估过程及结果的分析
一致性评估过程涉及到三个阶段。这三个阶段是:①测试准备;②测试操作;③测试报告生成。测试的准备阶段包括:①系统一致性声明PICS和PIXIT的生成;②基于各个文档,选择抽象测试方法和抽象测试集;③SUT和测试手段的准备。
测试操作阶段涉及如下内容:①通过分析PICS和相关的静态一致性要求,得出静态一致性评价;
②基于IPCS和IPXIT的测试选择和参数化;③一个或几个测试行动(testcampaigns)。
所谓测试行动是指对某个ITU执行参数化的可执行测试集,并生成一致性记录(eonformanee109)的过程。