扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在本页阅读全文(共2页)
2.一致性测试的抽象测试方法
一致性测试模型是一致性测试器利用服务原语ASP和协议数据单元PDU,在控制和观察点PCO对来自被测实现的输出和输入进行控制和观察。一般来说,被测实现所处的系统分为端系统和中继系统两大类,在ISO/IEC9646中对这两类系统的一致性测试定义了不同的抽象测试方法。
根据一致性测试器中的上测试器UT和下测试器LT所处的位置与功能,对于端系统的一致性抽象测试方法分为4种类型:本地测试法、分布测试法、协调测试法和远程测试法。本地测试法可以在被测系统中IUT的上下界面直接进行观察和控制,另外3种属于外部测试法。其中分布测试法要求有一个上测试器UT提供该界面的ASP。协调测试法不需要上层外接口,使用标准的测试管理协议TMP和下测试器之间进行测试管理和协调。远程测试法中没有专门的上测试器,部分测试器功能由被测系统实现。而这3种测试方法的下测试器LT都是通过通信链路上传送的协议数据单元PDU对IUT进行控制和观察。
对2个子网间的中继系统进行一致性测试的抽象测试法有2种:环回式测试法和横断式测试法。环回式测试法在中继系统的端口上进行环接,这种环接可以在中继系统内完成,也可以在第二个子网内完成。而在中继系统的业务接入点SAP处的另一个子网上有2个观察与控制点,所以只需一个测试器。环回测试法的测试功能过于简单,因而不够实用。横断测试法在业务接入的2个子网上各有一个观察与控制点,需要2个测试器,这样使得2个测试器的同步成为困难。
三、OSPF协议
1.OSPF协议特点
OSPF协议是一种基于Djkstra算法的链路状态协议,用于自治系统内的路由选择。OSPF协议具有如下特点:
● 当网络拓外改变后迅速收敛,协议带来的网络开销很小;
● 支持负载均衡,可以保留同一目的地的多个路由;
● 不易产生环路;
● 对路由更新信息进行认证以确保其有效性;
● 支持区域的划分,能够支持大规模的网络,扩展性很强。
OSPF协议支持3种网络的连接:
● 2个路由器之间的点对点连接;
● 具有广播功能的局域网;
● 无广播功能的广域网。
2.OSPF协议原理
OSPF路由协议的内容可分为交换扩散协议、网络拓扑结构数据库内容的维护以及路由表的计算3部分。交换协议使相邻的路由器建立邻接关系,然后网络拓扑数据库中的每一条内容通过扩散协议与相邻的节点达到同步,从而使整个网络中每个节点维持的网络拓扑数据库同步。每个节点当得知网络拓扑结构图发生变化时,重新计算整个或部分路由表以达到路由的迅速更新,使网络拓扑的变化及时地反映在相应的路由表中。
3.OSPF共有5种报文类型
● Hello报文:用来发现和维持邻站的可达性;
● Database Description报文:向邻站给出自己的链路状态的摘要信息;
● Link State Request报文:向对方请求发送某些链路状态的详细信息;
● Link State Update报文:用扩散法向全网更新链路状态;
● Link State Acknowledgment报文:对链路更新报文的确认。
四、OSPF协议一致性测试的方法
OSPF协议是域内使用的路由选择协议,所以对于OSPF协议一致性测试采用中继测试法使用的横断式测试法。在横断式测试法中,为了使2个子网的2个PCO容易达到同步,一般将PCO1和PCO2集成在一个测试器中。
编辑器可以采用ISO9646推荐的TTCN编辑器,也可以是其它语言编辑器。首先在编辑器上编制抽象测试集ATS,ATS以固定文法的文本文件MP格式输出,类似于汇编语言或高级语言源程序。然后,MP文件由编辑器编译成可执行文件ETS。处理器是测试执行的关键引擎,对经过PICS和PIXIT选择的测试集ETS进行解释执行,并对PCO1或PCO2传送来的协议数据单元PDU进行处理,同时根据测试集的内容控制测试过程。最后生成测试报告所需要的全部信息。在该测试结构中,IUT的2个端口分别对应于PCO,当处理器从PCO1向SUT发送一个OSPF报文时,经过OSPF模块的路由,OSPF报文就从子网1转发到子网2中,处理器就从子网2中的PCO2获得数据报文。由于PCO1和PCO2都被集成在测试器中,便可容易地控制2个LT的协调过程。
五、OSPF协议测试集的设计
测试集是协议一致性测试的基础,它是以最基本的测试事件序列的形式,详细定义了测试系统和协议实体的行为,从而作出测试“通过”或“失败”的判决,测试集有如下的层次结构:测试集→测试组→测试例→测试步→测试事件。采用TTCN形式化语言可以描述出测试集。
OSPF协议与OSI协议相比较,OSPF协议行为较简单,在对等实体之间没有用于建链或流控的数据包交换。我们按照ISO/IEC9646的建议,根据协议描述分析及条件合成,生成测试目的,设计和产生出OSPF协议测试集,编写出OSPF协议测试规范。产生的OSPF测试集包括5个测试组,共69个测试例(见表1)。
表1 OSPF测试集
这些测试组(例)涵盖了OSPF协议描述中的主要功能,具有较好的完备性。
六、测试应用
按照本文讨论的测试方法和结构,测试工具使用Agilent公司的QA Robot测试仪来进行OSPF协议一致性测试。也可使用清华大学研制开发的基于TTCN的PITS测试系统。QARobot测试仪使用QBOL语言生成ETS,通过QBOL编辑器进行编译,内部使用UNIX操作系统,有着可视化的界面操作。
我们参加了国家“863”宽带信息示范网核心路由器的测试工作。采用QARobot测试仪,分别对中兴公司、巨龙公司和大唐公司研制的核心路由器进行了OSPF协议的一致性测试。各路由器经过OSPF协议一致性测试后,其中的OSPF模块的功能和性能有了明显的改善,测试例通过率从50%提高到将近90%。
通过实践证明,在协议软件的设计和开发过程中,一致性测试是用来检测定位错误,同时又能提供修正建议的好方法。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。