>
首页 » 技术文章 » Mobile IPv6 Homeagent协议一致性测试集的设计与实现

Mobile IPv6 Homeagent协议一致性测试集的设计与实现

作者:赵达观,谢高岗,张大方  时间:2007-04-09 20:52  来源:

要:描述了Mobile IPv6 HA协议一致性测试集设计与实现过程,说明该测试系统的测试方法和测试结构。通过测试实例介绍了测试集的形式化,并对一基于Linux平台的HA实现的测试结果进行了分析。

关键词:Mobile IPv6协议;一致性测试;Homeagent;测试集

随着计算机网络和通信技术的不断进步,协议测试理论和技术的研究越来越重要,协议作为计算机网络的灵魂,已经成为国际上计算机网络研究的热点之一。一致性测试就是验证协议实现与相应的协议标准的一致性,在多个厂家进行设备互连时,通过一致性测试会提高设备(协议实现)符合相应协议标准的置信程度,提高相同标准不同实现之间互连的概率。

具体到MobileIPv6协议的测试,日本TAHI工程、美国新罕布什尔大学等从事MobileIPv6协议一致性测试的机构已公布的MobileIPv6协议测试例都只重点描述了测试体部分的测试序列。他们的一致性测试采用穿越测试法,存在系统的同步和协调问题。本论文的创新之处在于采用改进的穿越测试法,通过虚拟测试,利用测试序列包中的地址字段和其它特征字段,仅用一台测试器就搭建了一种逻辑测试结构,实现了多台虚拟测试器的测试拓扑。

1 MobileIPv6协议

MobileIPv6协议是下一代Internet的基础协议,它包括MN(MobileNode)协议、CN(Correspondent Node)协议和HA(HomeAgent)协议。MobileIPv6协议的原理如下:移动IP提供了一种IP路由机制,使移动节点可以以一个永久的IP地址连接到任何链路上。

HomeAgent是一个连接到移动节点本地网络的主机或路由器,它保存有移动节点的位置信息,当移动节点离开家乡网络时能够将发往移动节点的数据包传给移动节点。

2 HomeAgent协议一致性测试例设计

2.1 协议一致性测试原理和方法

网络设备通过协议测试来保证其一致性、互操作性以及性能等。协议测试是一种黑盒测试,它依据协议标准来控制观察被测试协议实现的外部行为,对被测协议实现进行测试。协议测试主要有4种:一致性测试、互操作性测试、性能测试和强健性测试。协议测试中的一致性测试是一种“功能测试”,它依据一个协议的描述对协议的某个实现进行测试,判别一个协议的实现与所对应的协议标准是否相一致。在一致性测试中,只对协议实现的外部可观察行为进行测试,而不涉及协议实现的内部结构。

2.2 基于有限状态机HA协议状态转变

下面以HomeAgent协议规范中接收一个带验证头的数据包为例,在被测实现上配置相应的策略,这个过程的形式化描述如图1,这里采用有限状态机作为描述方法。

S0为初始状态,接收一个数据包(E1),达到S1状态,根据协议策略对包进行验证,如果错误(E3),则丢弃或忽略该数据包(E4),回到初始状态S0,如果验证数据包正确(E2),则达到正常状态S2。把上面的形式化描述转化为面向协议测试人员的一致性要求,需要变更描述方法,基于错误覆盖原理实现这种转化,便于测试人员对协议进行一致性测试,如图2所示。

发送给被测实现(IUT)一个包含错误带验证头MH报头的数据包(E1),到达S1状态,如果IUT接受该数据包(E4),则表明与协议文本不一致,停止进一步测试,到达S2状态否则如果IUT拒绝该数据包(E3),到达S3状态,再向IUT输入一个包含正确带验证头MH报头的数据包(E2),如果IUT拒绝该数据包,则还是不一致,到达S2状态。如果IUT接受该数据包,就到达S4状态,再向IUT输入一个正确的带验证头数据包,如果拒绝数据包,就到达S2状态,而只有接受了正确数据包(E4),才能到达S5状态,表明IUT与协议文本一致,一致性测试结束。

2.3 具体的测试结构

ISO9646中有两种一致性测试方法:回绕式测试方法和穿越式测试方法。回绕法测试能力过于简单,因而较少采用;穿越测试法能够测试中继系统的全部中继功能,见图3。

计算所网络室在试验中采用了改进的穿越测试法。原有穿越测试方法的多个测试系统集成在一起,实现穿越测试,克服了原有测试方法中两个系统的同步和协调问题,见图4。

2.4 测试例说明

测试例由前测试步、测试体和后测试部组成。首先根据被测协议的说明确定测试目标,将测试目标抽象为被测协议实现的一组可见外部行为描述,形成测试体。测试体的测试序列引发这些外部行为,形成“激励—响应”的互动过程。然后设计前测试例和后测试例。参考TTCN的结构框架和思路,改进了一种类形式化语言(TSS)来描述MobileIPv6HA测试集,按照树状的测试集框架结构,将MobileIPv6HA测试集的形式化描述分为5个部分:测试集描述,测试组描述,测试例描述,测试步行为描述,MobileIPv6HA包描述。

3 测试实验与测试例分析

根据HomeAgent协议及相关的草案,用本文提到的测试集描述语言设计了44个测试例。通过测试,发现MobileIPv6基本实现了HomeAgent协议。在Linux上测试了上述44个测试例,所有测试例发送包的过程完全正确。其中有15个测试例未通过(测试判决为失败),按照协议规定,当条件不满足时,测试例不应该通过,测试判决应该为失败。该项目由计算所网络试验室与加拿大NetTest公司合作完成。由于篇幅有限,选一个未通过的测试例(IUT:HomeAgent)分析如下:

1.2 Test Case No.: TC_15_1_2

Test Case Name: 不正确的绑定更新

Test Configure: 无

Test Result: 失败

FailureAnalysis:在这例子中,测试时设置了不正确的绑定更新,这时通信节点必丢弃这数据包并返回一个ICMP参数错、代码为0的信息。测试过程中,没有收到ICMP参数错代码为0的信息,测试结果为失败。通过分析,发现测试设备DELLDIMENSIONxps1450没有设置绑定信息缓冲区,ICMP信息指针不能指向PayloadProto域,通过设置绑定信息缓冲区,成功地解决了这问题。

4 结论

协议是互联网络非常重要的组成部分,路由协议是数据包在网络顺利转发的基础。本文介绍了支持Mobile IPv6的路由协议Home Agent协议一致性测试系统的设计与实现,提出了新的测试例实现方法和测试方法,并用所实现的测试系统对开放源码的路由协议进行了测试。测试结果表明该软件包在Home Agent实现上与协议基本一致。

相关推荐

jQuery UI 1.9.0及jQuery Mobile 1.2.0稳定版发布

分析称软银收购Sprint意在T-mobile

Sprint  T-mobile   2012-10-14

T-Mobile将“很快”发售HTC的Windows Phone 8X手机

T-Mobile  Windows Phone 8X  2012-09-25

通用网络协议一致性测试平台的设计与研究

一致性测试  黑盒测试  2011-08-31

GSM 协会发布有关英国移动应用情况报告

GSMA  Mobile  Media  Metrics  2011-07-04

OK Labs公司发布SecureIT Mobile企业版

OK-Labs  SecureIT  Mobile  2011-02-25
在线研讨会
焦点