(通信与信息系统专业论文)移动ip协议的仿真及其测试序列的优化.pdf_第1页
(通信与信息系统专业论文)移动ip协议的仿真及其测试序列的优化.pdf_第2页
(通信与信息系统专业论文)移动ip协议的仿真及其测试序列的优化.pdf_第3页
(通信与信息系统专业论文)移动ip协议的仿真及其测试序列的优化.pdf_第4页
(通信与信息系统专业论文)移动ip协议的仿真及其测试序列的优化.pdf_第5页
已阅读5页,还剩72页未读 继续免费阅读

(通信与信息系统专业论文)移动ip协议的仿真及其测试序列的优化.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 协议测试理论是从软件测试的基础上发展起来的,协议测试包括:协议一致 性测试、互操作性测试和性能测试。协议一致性测试是协议测试的基础,它依据 协议规范对协议的实现进行测试,以提高协议实现之间互通的概率,l s o 制定的 l s o i e c 9 6 4 6 标准是最为成熟的协议一致性测试理论。本文主要研究的是一致 性测试的序列优化问题,它能够大大的提高测试效率和执行时间。本文采用移动 i p 协议作为协议仿真和测试的基础。 如今,我们有很多接入因特网的方法,这些接入方法适合在一些固定的场合 ( 家里,办公室和学校等) 。但是,现在使用l p 协议进行移动通信的设备却越来 越多,譬如:p d a ,手持设备和数字蜂窝电话等等。人们自然希望这些设备能够 在不问断的情况下通信。移动i p 就是一种支持i p v 4 和i p v 6 的l p 节点在不改变 l p 地址的情况下持续通信的技术。 在本文的开始,我们首先用s d l 语言实现移动i p 协议的仿真,然后采用 i s o i e c 9 6 4 6 标准所采用的树表结合表示法t t c n 来描述移动i p 协议的一致性 测试套,并采用u l o 理论对其进行序列优化。最后借助t e l e i o g i ct a u 软件工具 中的s d l 丌c n 联合仿真功能,对优化前后的t t c n 协议一致性测试套进行验 证,来说明测试序列优化的效果和意义。 a b s t r a c t p r o t o c o lt e s tt h e o r yi sd e r i v e df r o ms o f t w a r et e s tt h e o r y p r o t o c o it e s t c o n s l s to fp r o t o c o lc o n f o r m a n c e t e s t ,i n t e r o p e r a b i l i t yt e s ta n dp e b r m a n c et e s t , p r o t o c o ic o n f o r m a n c e t e s ti st h ef o u n d a t i o no fp r o t o c 0 it e s t ,i tc a ni n l p r o v et h e p r o b a b i i i t y o fs u c c e s s f u li n t e r c o m m u n i c a t i o nb e t w e e nt w o p r o t o c 0 i i m p i e m e n t a t i o n sb yt e s t i n gt h ei m p i e m e n t a t i o no fap r o t o c 0 ia c c o r d j n gt 0i t s s p e c i f i c a t i o n t h ei s o i e c 9 6 4 6s t a n d a r dd e s c r i b e db yi s oi st h em a t u r e s t t h e o r yi np r o t o c o ic o n f o r m a n c et e s tt h e o r y t h i sp a p e rm a i n l yr e i a t e st ot e s t s e q u e n c e so p t i m i z a t i o n i n p r o t o c o ic o n f o r m a n c et e s tb e c a u s ei t c a ng r e a t l y b 0 0 s tt e s te f f i c i e n c ya n dr e d u c et e s tt i m e t h i sp a p e ru s e sm o b el pa st h e f o u n d a t i o no fs i m u l a t i o na n df e s l a i t h o u g ht h e i n t e m e t0 f f e r sa c c e s st oi n f o r m a t i o ns o u r c e sw o r l d w i d e , t y p i c a yw e d on o te x p e c tt 0b e n e f i tf r o mt h a ta c c e s su n t l lw ea v ea ts o m e f a m i l i a rp o i n t - w h e t h e rh o m e ,o 仟i c e ,0 rs c h o o i h o w e v e r ,t h e i n c r e a s i l l gv a e t y o fw i r e i e s sd e v i c e so 仟e r l n gl p c o n n e c t i v i t y ,s u c ha sp d a s ,h a n d h e l d s ,a n d d i g i t a ic e l | u l a rp h o n e s ,i sb e g i n n i n gt oc h a n g eo u rp e r c e p t i o n so ft h ei n t e r n e t t h el o b i l el ph a sd e v e i o p e dr o u t ;n g s u p p o r tt op e r m i ti pn o d e s ( h o s t sa n d r o u t e r s )u s i n g e i t h e ri p v 4o ri p v 6t o s e a m i e s s i y ”r o a m ”a m o n g l ps u b n e t w o r k sa n dm e d i a t y p e s i nt h eb e g i n n i n g0 ft h i sp a p e r ,w ef i r s tc o m p i e t et h es i m u i a t i o no fm o b e i pb ys p e c i f l c a t i o na n dd e s c r i p t i o nl a n g u a g e ( s d l ) ,w h i c hi sc o m m o n l yu s e d i nt e i e c o m m u n i c a t i o ns y s t e md e v e i o p m e n t s i n c et h i sp a p e ru s e st r e ea n d t a b u l a rc o m b i n e d n o t a t i o n ( 厂1 _ c n ) d e f i n e d i ni s o ,i e c 9 6 4 6s t a n d a r dt o d e s cr i b et h em o b _ | ei pc o n f o r m a n c et e s ts u i t ea n d o p t i m i z et h et e s ts e q u e n c e s i nt h ec o n f o r m a n c et e s ts u i t e t h et e s ts u i t e i sv a i i d a t e db vs d l t t c n c o s i m u i a t i o nf u n c t i o ni n t e l e l o g i ct a us o f t w a r e ,b yd o i n gt h i s ,1 i u s t r a t e st h e v a i u ea n d s i g n j f i c a n c eo ft e s ts e q u e n c e so p t i m i z a t l o n 南京邮电学院学位论文独创性声明 6 2 8 9 0 8 本人声明所呈交的学位论文是我个人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的 地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包 含为获得南京邮电学院或其它教育机构的学位或证书而使用过的材 料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了 明确的说明并表示了谢意。 研究生签名:日期 南京邮电学院学位论文使用授权声明 南京邮电学院、中国科学技术信息研究所、国家图书馆有权保留 本人所送交学位论文的复印件和电子文档,可以采用影印、缩印或其 他复制手段保存论文。本人电子文档的内容和纸质论文的内容相一 致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布 ( 包括刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权 南京邮电学院研究生部办理。 研究生签名:导师签名:日期: 第l 章协议工程及形式化描速技术 第1 章协议工程及形式化描述技术 1 1 协议工程的基本概念 什么是协议工程? 一体化的、形式化的协议开发过程叫做协议工程。协议的 开发过程包括协议设计与描述、协议验证与分析、协议实现和协议测试等四个主 要阶段。协议开发中所需要的各种开发、管理、维护工具,以及协议的不同表示 工具构成协议工程环境。协议开发一体化、形式化的理论和技术以及协议工程系 统建造技术统称为协议工程技术或协议开发技术( 简称协议技术) 。 所谓“一体亿”的含义是:协议设计与描述、协议验证与分析、协议实现和 协议测试,在技术上前后衔接,并在同一个开发系统中完成,一体化( i n t e g r a t e d ) 的意思也就是系统化。所谓“形式化”的含义是:用形式描述语言f d l ( f o 丌n a l d e s c r i p t i o nl a n g u a g e ) 连接协议开发的各个阶段。 1 2 协议工程的研究内容 协议工程的宗旨是为协议软件的研制和开发提供一整套工程规范,使不同的 人员之间以同一个规范相互交流和协作,使协议的开发过程工程化,以便提高协 议的开发效率,促进标准化的协议开发,提高网络软件的可靠性和维护性。协议 工程的研究内容包括以下五个方面: 1 2 1 协议设计( 构造、综合、开发) 技术 协议工程的第一步是构造一个协议,提出协议文本初稿,这就是协议设计。 它包括协议环境分析、协议功能设计、协议元素的构造、协议组织形式的确定和 协议文本的编写。 1 2 2 协议模型及形式描述技术 目前人们已经将有限状态机f s m 、p e t r i 网、时态逻辑t l 、通讯系统演算 c c s 、形式文法f g 、过程语言p l 等数学模型和逻辑模型用来表示协议模型,但 是,这些模型都有一定的局限性,必须改进才能在协议工程中得到较好的应用。 形式描述技术涉及两个研究课题:( 1 ) 用什么样的数学模型或逻辑模型来表示协 第1 页 第l 章协议工程及形式化描述技术 议层局部系统,信道系统,全局系统以及它们之间的相互作用,以便获得抽象的 协议模型:( 2 ) 设计基于一种或多种数学逻辑模型的形式描述语言f d l 。f d l 是使协议工程各阶段在技术上衔接起来的纽带,因此它对协议工程的发展起决定 性作用。 1 2 3 协议验证分析技术 协议的正确性验证试图在协议开发的前期最大限度地检测和纠正协议错误 和缺陷。协议验证技术分为三类:可达性分析( r e a c h a b i l i t ya n a l y s i s ) 、逻辑证 明( l o g i cp r o o f ) 和模拟( s i m u l a t i o n ) 。协议验证技术和形式描述技术是同步发 展的。 1 2 4 协议实现技术 协议实现的自动化是协议工程的主要目的之一,然而协议实现的完全自动化 几乎是不可能的。人们目前将注意力集中在协议实现的半自动化技术上。这种技 术将协议的实现分为两步,第一步利用翻译程序将协议的形式描述文本变成程序 设计语言( p a s c a l 、c ) 的与机器无关的源代码,第二步处理协议未说明的技术 问题( 如缓冲器分配管理、文件访问等与系统相关的部分) ,用手工编写余下的 代码。 1 2 5 协议测试技术 一般情况下,制造和生产通信设备的开发人员大多数没有参与协议的制定, 而一个协议也可能有众多厂家的不同实现。另外,协议目前基本上是使用自然语 言描述的,其二义性不可避免,协议实现者对于协议的不同理解会导致不同的协 议实现,甚至有时会是错误的实现,可能给用户造成不便和损失;另外,如果有 蓄意的错误实现,其后果就更为严重。因此我们需要一种有效的手段来对协议实 现进行总体评判,这种手段便是协议测试。协议测试包含有三种类型的测试:一 致性测试、互操作性测试以及性能测试。其中,一致性测试是其它两种测试的基 础。 协议工程系统的主要组成部分及其关系如图1 1 。 第2 页 第l 章协议工程及形式化描述技术 厂、藏画;r l 。一 t 非形式化描述文本 一协议标准 7 一 图1 1 协议工程系统组成图 1 3 协议形式描述技术和形式化协议模型 1 3 1 协议形式描述技术 协议可以用自然语言、程序设计语言、形式描述语言或专用语言描述。用自 然语言描述的协议可读性好。因此,i s o 是采用自然语言描述并颁布防议标准的, 但自然语言不严密,描述不准确,有二义性或多义性。这样对同一个协议标准, 人们往往有不同的理解,从而导致不同的协议实现。并且,从自然语言描述的协 议到协议的实现又是一个复杂而低效的、一致性很差的、必须手工完成的过程。 用经典的程序设计语言( 如f o n m ,c ,p a s c a l ) 描述协议虽然便于协议的实现, 但可读性差,表述协议并发性、不确定性以及其它协议性质的能力差,并且由于 程序设计语言描述的协议过多地描述了协议实现细节( 有些还和实现环境相关) , 因此它只能用于协议的实现,而不能作为协议标准在世界上公布。用专用语言描 述的协议往往针对性较强,如i b m 公司的f a p l ( f o r n l a la n dp r o t o c 0 1l a n g u a g e ) 就是一种为提高i b m 公司网络软件s n a ( s y s t e mn e t w o r ka r c h i t e c t u r e ) 的开发效 率而设置的专用协议描述语言,它同样不能作为标准在世界上公布。 为了提供协议设计的坚实基础,要使用数学的方法,不但能够提供无二义性 的描述,而且能够对描述进行形式分析和求精。协议形式化指使用形式描述技术 第3 页 第l 章协议工程及形式化描述技术 非形式化描述文本 j 协议标准 。 图1 1 协议工程系统组成图 i 3 协议形式描述技术和形式化协议模型 1 3 1 协议形式描述技术 协议可以用自然语言、程序设计语言、形式描述语言或专用语言描述。用自 然语言描述的协议可读性好。因此,i s o 是采用自然语言描述并颁布防议标准的, 但自然语言不严密,描述不准确,有二义性或多义性。这样对同一个协议标准, 人们往往有不同的理解,从而导致不同的协议实现。并且,从自然语言描述的协 议到协议的实现又是一个复杂而低效的、致性很差的、必须手工完成的过程。 用经典的程序设计语言( 如f o r t m n ,c ,p a s c a l ) 描述协议虽然便于协议的实现, 但可读性差,表述协议并发性、不确定性以及其它协议性质的能力差,并且由于 程序设计语言描述的协议过多地描述了协议实现细节( 有些还和实现环境相关) , 因此它只能用于协议的实现,而不能作为协议标准在世界上公布。用专用语言描 述的协议往往针对性较强,如i b m 公司的f a p l ( f o r n l a la n dp r o t o c 0 1l a n g u a g e ) 就是一种为提高i b m 公司网络软件s n a ( s y s t e mn e t w o r ka r c h i t e c t u r e ) 的开发效 率而设置的专用协议描述语言,它同样不能作为标准在世界上公布。 为了提供协议设计的坚实基础,要使用数学的方法,不但能够提供无二义性 的描述,而且能够对描述进行形式分析和求精。协议形式化指使用形式描述技术 第3 页 平 第l 章协议工程及形式化描述技术 厂、藏画;r l 。一 t 非形式化描述文本 一协议标准 7 一 图1 1 协议工程系统组成图 1 3 协议形式描述技术和形式化协议模型 1 3 1 协议形式描述技术 协议可以用自然语言、程序设计语言、形式描述语言或专用语言描述。用自 然语言描述的协议可读性好。因此,i s o 是采用自然语言描述并颁布防议标准的, 但自然语言不严密,描述不准确,有二义性或多义性。这样对同一个协议标准, 人们往往有不同的理解,从而导致不同的协议实现。并且,从自然语言描述的协 议到协议的实现又是一个复杂而低效的、一致性很差的、必须手工完成的过程。 用经典的程序设计语言( 如f o n m ,c ,p a s c a l ) 描述协议虽然便于协议的实现, 但可读性差,表述协议并发性、不确定性以及其它协议性质的能力差,并且由于 程序设计语言描述的协议过多地描述了协议实现细节( 有些还和实现环境相关) , 因此它只能用于协议的实现,而不能作为协议标准在世界上公布。用专用语言描 述的协议往往针对性较强,如i b m 公司的f a p l ( f o r n l a la n dp r o t o c 0 1l a n g u a g e ) 就是一种为提高i b m 公司网络软件s n a ( s y s t e mn e t w o r ka r c h i t e c t u r e ) 的开发效 率而设置的专用协议描述语言,它同样不能作为标准在世界上公布。 为了提供协议设计的坚实基础,要使用数学的方法,不但能够提供无二义性 的描述,而且能够对描述进行形式分析和求精。协议形式化指使用形式描述技术 第3 页 第1 章协议工程及形式化描述技术 ( f o r n l a ld e s c r i p t i o nt e c l u l i q u e ,f d t ) 贯穿协议开发的各个阶段,起始于协议规 范描述,使得协议的研究开发可以独立于非形式的自然语言文本和最终实现代 码,避免协议验证测试的复杂性。 使协议描述语言形式化有许多优点。所谓“形式化”:即“模型化”和“抽 象化”。一种形式描述语言f d l 必然基于一种或几种数学模型,这就为充分地表 述协议的各种特性以便使协议验证、协议实现、协议测试和协议转换过程系统化 和自动化提供了良好的基础。因为形式描述语言有很好的数学基础,用它描述的 协议在语义上无二义性,同时由于它抽象于具体的协议实现环境,因此它可作为 协议标准的描述语言。理想的f d l 应能支持协议工程活动的各个环节,特别是 协议设计、协议验证、协议实现自动化和协议测试。 f d l 的基础是协议模型技术,然而,从协议模型技术到f d l 还有很多工作 要做。首先,作为一种语言,一种f d l 在语法上和语义上必须是一个完整的体 系。另外,一种f d l 往往要对一种模型技术进行扩充,或将几种模型技术拟合 在一起,取长补短,使之有很强的表达能力和应用能力。形式化方法作为一种更 好的方法被国际标准化组织建议用来描述复杂的系统,形式化方法使得对网络通 信系统的描述实现和测试变的容易。 与自然语言描述相比形式化方法具有以下特点:( 1 ) 形式化的语法:( 2 ) 形 式化的语义;( 3 ) 清楚的概念模型:( 4 ) 接口统一表示:( 5 ) 强大的表达和描述 能力;( 6 ) 有助于系统的实现和完善。形式化方法的最终目的是为开发者提供一 种分析的方法,作为对开发结果进行验证的基础,为设计人员和应用人员提供交 流途径,作为开发文档能在将来再开发时使用。理想的形式化方法应该既能描述 系统的行为特征又能进行操作。在系统需求分析和设计阶段它应该是一种描述语 言,在系统实现阶段它应该是一种编程语言。 1 3 2 形式化协议模型 协议工程学中常用的形式化协议模型分为三类: 一、状态转换模型( s t a t et r a n s i t i o nm o d e l s ) 状态转换模型是最早用于协议说明的一种形式化模型。通信协议被认为是由 第4 页 第l 章协议工程及形式化描述技术 若干个事件驱动的实体( e n t i t y ) 组成的,这些实体间可以通过消息传送进行相互 通信。每个实体的特性可以描述为一系列响应外部和内部事件的动作( 或者状态 转换) 。状态转换模型是描述协议实体的最简单的模型,其优点是简单明了,易 于验证协议的许多特性;其缺点是描述复杂协议时容易引起状态和转换的爆炸。 常见的协议转换模型有有限状态机f s m ( f i n i t es t a t em a c h i n c ) ,p e t r i n e t 及其变 形。 二、程序设计语言模型( p m g r a m m i n gl a f l g u a g em o d e l s ) 在程序设计语言模型中通信协议被认为是一种算法过程。这种算法过程非常 适用于使用高级程序设计语言来描述。所以采用程序设计语言模型描述的协议非 常易于实现,但是难以分析或者验证协议的某些特性,例如安全性( s a f e t y ) 和 活跃性( l i v e n e s s ) 等。常见的程序设计语言模型有抽象程序( a b s t r a c tp r o g r a m s ) 、 通信顺序进程c s p ( c o m m u n i c a t i o ns e q u e n t i a lp r o c e s s e s ) 和通信系统演算 c c s ( c a l c u l u so fc o m m u n i ca t i o ns y s t e m s ) 。 三、混合模型( h y b r i dm o d e i s ) 混合模型结合了状态转换模型和程序设计语言模型两者的优点。它使用较少 的状态来描绘协议的主要特性,同时使用程序设计语言的功能来进一步描述协议 的其它性能。这种形式模型近年来得到了较快的发展。i s 0 和c c i t t 开发了若 干标准的形式化描述技术f d t ( f o r n l a id e s c r i p t i o nt e c h n i q u e s ) 并己经用于描述计 算机网络协议。目前,已经开发的f d t 包括:由国际化标准组织( i s o ) 颁布的 e s t e l l e 、l o t o s 和国际电报电话咨询委员会( c c i t t ) 颁布的规范与描述语 言s d l 。 1 3 3 主要形式化描述语言的特点和比较 国际标准化组织i s o 和c c l t t 都非常支持用形式化方法来描述网络通信协 议。目前已经有三种形式化语言被标准化: s d l ( s p e c m c a t i o n a n d d e s c r i p t i o nl a n g u a g e ) ,规格描述语言; l o t o s ( l a r i g u a g eo f t e m p o m lo r d e r i n gs p e c i f i c a t i o n ) : e s t e l l e ( e x l e n d e ds t a l et f a n s i t i o nl a n g u a g e ) 。 第5 页 第l 章协议工程及形式化描速技术 1 s 0 还制定了其它一些形式化表示方法,如a s n 1 和用来作为抽象测试集 描述语言的t t c n 。下面我们来分别看看这三种协议形式化描述语言各自的特 点。 e s t e l l e 是一种基于e f s m 的形式化描述技术。它可以把系统描述为具有层次 结构的一些相互通信的模块( m o d u l e s ) 。这些模块的行为( b e h a v i o r s ) 用可相互 通信的非决定型( n o n d e t e n l l i n i s t i c ) 扩展有限状态机e f s m 来描述。e s t e l i e 采用 了p a s c a l 程序设计语言的子集描述e f s m 中的资料部分,特别是各种交互参 数的定义。 l o t o s 主要基于r m i l e r 的通信系统演算c c s 。另外用一神抽象数据结构 的代数表示法a c to n e 来描述系统的资料部分。l o t o s 的基本描述对象是并 发进程。进程的行为用它与外部环境之间的交互动作序列来描述。 s d l 是c c i t t 为描述远程通信而定义的一种形式描述技术,也是基于e f s m 的。其资料部分采用抽象数据类型描述,程序变量和数据结构用c c i t t 定义的 程序设计语言c h i l l 来表示。s d l 不同于一般的程序设计语言,它主要面向实 时、交互、分布式的系统,其特点是既可以用来说明一个系统所应具有的行为, 也可以用来描述一个系统实际具有的行为。s d l 还开发了一种图形的表示形式 ( s d l g r ) ,即用画图的方式来进行程序的设计,这也是s d l 语言有别于其它 语言的一个最大特点。不同于一些v i s u a l 系列开发工具是在接口上“所见即所 得”,s d l 真正做到了“程序图形化”,其程序就是j 张张画满图形的“纸”,当 然s d l 也有其文本表示法,且二者可以相互转换;除此之外,s d l 还允许嵌入 高级语言以及转换为高级语言。以上的特点使得用s d l 来开发系统可以快捷、 方便、准确和高效,尤其在设计大型实时通信系统时更为突出。 s d l 是e t s i 所使用的首选正式语言。e t s i 已经成功地将s d l 应用在智能 网络、宽带i s d n 和g s m 部分标准的开发。e t s i 的成功经验说明,使用s d l 确实能够提高规范中所述的技术的可靠性。而且在协议正式发布之前,能够很容 易地检测到其中的错误。为第三代无线通信网路制定标准的3 g p p 也选择了s d l 语言作为其开发协议的工具。i e e e 已经开始采用s d l 来定义它的标准,1 9 9 7 年i e e e 8 0 2 首次使用s d l 来描述8 0 2 1 1 无线局域网( w l a n ) 标准,这一成 第6 页 笫1 章协议工程及形式化描述技术 功经验使得人们认识到s d l 是一种进行说明、仿真和验证协议的重要工具。 s d l 现已引入了面向对象( o o p ) 的概念,这使得今后的开发工作不会影 响前期的成果而只需加以补充即可。 e s t e l l e 和s d l 的优点是:其f s m 和程序设计语言的特点易于学习和理解, 也利于实现。l o t o s 的优点是其抽象能力强,特别是它的回合( r e n d e z v o u s ) 通信机制不需要给出实现的选择,远远优于e s t e l l e 和s d l 的异步消息传送通信 机制。e s t e l l e 和l 0 1 d s 的形式定义比s d l 易于构造相关的工具。总的来说这三 种形式描述技术各有其优点和不足,形成了相互竞争又不可替代的局面。 第7 页 笫2 章协议测试及协议一致性测试 第2 章协议测试及协议一致性测试 2 1 协议测试的基本概念 2 1 1 协议测试简介 一般情况下,制造和生产通信设备的开发人员大多数没有参与协议的制定, 而一个协议也可能有众多厂家的不同实现。另外,协议目前基本上是使用自然语 言描述的,其二义性不可避免,协议实现者对于协议的不同理解会导致不同的协 议实现,甚至有时会是错误的实现,可能给用户造成不便和损失;另外,如果有 蓄意的错误实现,其后果就更为严重。因此我们需要一种有效的手段来对协议实 现进行总体评判,这种手段便是协议测试。 l 软件测试 1 匝圃区囹 因 匠 图2 1 协议测试的纵向继承图 协议测试是从软件测试的基础上发展而来。一般的软件测试可以分为功能测 试和结构测试两种。结构测试又称为“白盒测试”,它是基于一个软件的内部结 构进行的测试,其目的是通过执行每条语句、遍历程序的各个分支来检查整个程 序代码的正确性。与此相反,功能测试只是依据软件的说明对从外部可以观察到 的软件功能进行测试,所以也称之为“黑盒测试”,即被测试系统被看作一个黑 盒,仅仅通过观察外部行为来确定软件的功能实现,而不涉及程序的内部结构。 功能测试的目的是根据软件的说明确定软件实现是否达到了要求,因此预先要有 一个简洁明确的软件功能说明。协议测试属于功能测试,即黑盒测试。 第8 页 第2 章协议测试及协议一致性测试 协议测试实际上是通过实验的方法找出协议实现中存在的错误,而对一个协 议实现进行无穷尽的测试是不现实的。所以协议测试并不能保证一个协议实现的 完全正确性,即测试只能表明“存在错误”,而不能证明“不存在错误”。这是协 议测试的一个基本出发点。 2 1 2 协议测试的分类 协议测试包含有三种类型的测试:一致性测试、互操作性测试以及性能测试。 其中,一致性测试是其它两种测试的基础。 协议测试中的一致性测试是一种“功能测试”,它依据一个协议的描述对协 议的某个实现进行测试。在一致性测试中,只对协议实现的外部可观察行为进行 测试,而不涉及协议实现的内部结构。但是,单纯对一个协议实现进行一致性测 试并不能确保一个协议实现与另一个协议实现之间的成功通信,还需要将协议实 现放在一个实际的通信网络环境中进行测试。在这种测试中,主要检测一个协议 实现与其它系统之问交互作用的过程,因此称为“互操作性测试”。一个协议实 现能否通过一致性测试和互操作性测试是它能否入网与其它系统成功互通的决 定性保障。另外,协议测试还可以对协议实现的某些性能进行测试,如健壮性、 吞吐量等。协议测试包含有三种类型的测试:一致性测试、互操作性测试以及性 能测试。其中,一致性测试是其它两种测试的基础。 2 1 3 协议测试的研究内容 协议测试理论包容了协议测试的整个过程,其主要研究内容可以概括为测试 组织、测试方法、测试生成、测试集描述、测试管理、测试执行和判决、测试结 果分析等多个方面。 测试组织主要是针对整个协议测试过程进行框架性的研究,明确测试过程中 各个阶段所应完成的功能:测试方法则是研究在被测系统提供不同的可访问程度 时,组成测试系统的多个测试器相对于被测系统的配置方法;测试生成主要关注 于如何从协议标准的描述中获得进行协议测试所需要的测试集;测试集描述的目 的是寻找一种合适的语言或公式,从而能以简洁、通用和结构化的方式表达协议 。 测试所需要的测试例;测试管理的研究对象是如何管理和协调测试系统中的各个 组成部分,以便成功地完成测试:测试执行和判决是协议测试过程的关键阶段, 第9 页 第2 章协议测试及协议一致性测试 如何解释测试例的涵义以及如何做出测试判决是它的研究内容,同时也是构造测 试系统的基础;测试结果分析是协议测试过程的最后一个阶段,研究如何从测试 结果中分析生成测试报告并得出对被测协议实现的结论。 2 2 协议一致性测试 2 2 1 协议一致性测试的标准化 协议一致性测试的国际标准的建立,可以追溯到八十年代早期,欧洲的许多 研究机构开始在建立标准化的协议一致性测试活动方面进行合作,其目的是制定 一个在o s i 框架内进行协议一致性测试的指导标准。最初的参与者包括法国巴 黎的a d i 、德国d a m s t a d t 的g m d 和英国的国家物理实验室n p l 。这些研究机 构在这之前曾分别关注于一致性测试的不同方面的研究。美国的国家标准和技术 局n i s t 由于成功地研制了i s o 传输层第四类协议的测试系统,所以后来也被邀 请参加了这一合作项目。到1 9 8 4 年,又有更多的来自欧洲和北美的研究人员加 入到这一合作研究之中。这一合作项目的许多早期研究成果曾在由i f i p 主办的 协议描述、测试和验证会议p s t v 的第一至第五次年会上发表。这些研究成果及 其所采用的术语有许多在后来由i s o 制定的协议一致性测试标准i s o i e c 一9 6 4 6 中被采用。 i s 0 i e c 一9 6 4 6 标准是针对使用自然语言描述的协议的测试而制定的,最初由 五个部分组成: i s o i e c9 6 4 6 1 :基本原理: i s 0 i e c9 6 4 6 2 :抽象测试套描述: i s o i e c9 6 4 6 3 :树表结合表示法t t c n ; i s o i e c9 6 4 6 4 :测试实现; i s 0 i e c9 6 4 6 5 :一致性判定过程对实验室和客户的要求; i t u t 建议书x 2 9 0 x 2 9 4 分别与上述的五个部分相对应。 i s o i e c 一9 6 4 6 中一致性定义为:“一个一致性的实现应满足静态一致性要求 第1 0 页 第2 章协议测试及协议一致性测试 和动态一致性要求,并与协议实现一致性陈述( p i c s ) 中所声明的功能相符合。” 2 2 2 协议一致性测试的基本概念 按照目前比较一致的看法,一致性测试过程大致可以化分为三个阶段,如图 2 2 所示。第一阶段是为某特定协议文本描述一个抽象测试集,称之为“测试生 成”。之所以称为“抽象测试集”是因为它是独立于所有的协议实现的。抽象测 试集本身也应该是标准的。第二阶段是实现特定测试集的执行方法组成,也称作 “测试实现”。在这一阶段,抽象测试集中的抽象测试例转变为在实际的测试设 备或测试系统上可执行的测试例,同时应考虑到测试环境与被测协议实现 ( i m p l e m e n tu n d e rt e s t i n g ,简称i u t ) 的具体情况。第三个阶段为“测试执行”, 运行已经具体化的测试例,并对i u t 的外部行为响应进行观察,最终可以得到 测试判决,并将测试执行的结果记录在协议一致性测试报告中。 协议标准一表示实体 厂ln 示处理过程 一l 图中的左分支是协议实现过程,右分支是一致性测试过程。 图2 2 协议一致性测试的基本过程 协议文本规定的一致性要求可以分为三类: 必备要求在所有例子中都可观察到( m a n d a t o r y ) 条件要求只有当标准中的特殊条件满足时才可观察到( c o n d “i o n a l ) ; 第1 1 页 第2 章协议测试及协议一致性测试 选择要求由实现者来选择( o p t i o n s ) 。 另外,从具体实现角度可将一致性要求分为以下两类:静态一致性要求 ( s t a i i cc o n f o h n a n c er e q u i r e m e n t s ) 和动态一致性要求( d y n a m i cc o n f o m a n c e r e q u i 陀m e n t s ) 。 协议标准中的静态一致性需求规定了在对可选功能进行选择时应遵循的约 束。它规定了一个协议实现所应提供的最低功能,以及不同可选功能之间的组合 性与一致性。协议标准的主体由动态一致性需求构成。它定义了协议实现和外部 环境进行通信时的可观察行为。它所关心的是可观察事件如p d u 或a s p 的发送 接收的顺序,p d u 中信息的编码及不同p d u 中所含信息的关系等等。 被测方将向测试方提供自己实现系统的能力说明,以便使测试方能够以此 为参照进行测试。这一说明称为协议实现的一致性陈述p i c s ( p r o t o c o l i m p l e m e n t a t i o nc o n f o m a n c es t a t e m e n t s ) 。关于测试中的一些附加信息的说明被 测方可以在p i x i t ( p r o t o c o li m p l e m e n t a t i o ne x t r ai n f o r i t l a t i o nf o rt e s t i n g ) 表格中 提交测试方。测试方则根据p i c s 和p i x i t 进行参数配置与测试例选择,从而得 到所需测试集。 2 2 3 协议一致性测试的基本类型 测试例中的测试类型可分为四个方面: 基本互连测试( b a s i ci n t e r c o n n e c t i o nt e s t s ) : 对测试系统与i u t 之间的基本互连能力进行测试,以确定是否需要进行更 进一步的、花费更多的特征测试。 能力测试( c 印a b i l i 妙t e s t s ) : 用来测试静态一致性要求和p i c s 上声明的能力。 - 行为测试( b e h a v i o rt e s t s ) : 在i u t 的能力范围内,尽可能多的提供动态一致性要求中的理解性测试。 一致性分析测试( c o n f o m a n c er e s o l u t i o nt e s t s ) : 第1 2 页 第2 章协议测试及协议一致性测试 进行更深一层的对特殊要求的i u t 的一致性测试,用以提供对特殊一致性 问题的明确回答和诊断性信息,比如:测试非标准的性能等。 2 2 4 协议一致性测试的方法( 抽象测试方法) a ) 本地测试法 b ) 分布测试法 c ) 协调测试法d ) 远程测试法 图2 3 抽象测试法 测试方法以控制观察点p c o ( p o i n to fc o m r o la 1 1 do b s e r v a t i o n ) 和p c o 在 o s i 参考模型中的位置来定义。p c o 是测试器对i u t 进行控制与观察的点,它 可以是协议的服务访问点s a p ( s e r v i c ea c c e s sp o i n t s ) ,也可以不是。一般来讲 对于一个测试器有两个p c o ,一个对应于i u t 的上访问点,测试器中对这个p c 0 进行控制与观察的部分称为“上测试器”( u p p e r - t e s t e r ) :另一个p c o 对应于i u t 的下层访问点,测试器中对这个p c o 进行控制与观察的部分称为“下测试器” 第1 3 页 第2 章协议测试及协议一致性测试 ( l o w e 卜t e s t e r ) 。在i s o9 6 4 6 中己被标准化的测试方法有本地测试法、分布式 测试法、协调式测试法和远程测试法。 一、本地测试法 本地测试法是协议一致性测试中的最重要的基本方法,因为它说明了许多抽 象测试方法中用到的术语和概念。在本地测试法中,上下测试器以及测试协调过 程是在同个系统中实现的。这种方法的一个基本假设是在i u t 的上下边界都 存在暴露的访问接口,测试系统通过这些接口控制对i u t 输入激励并且观察i u t 的输出响应,所以这些接口也称为控制观察点( p o i n t o f c o n t r 0 1a n d0 b s e r v a t i o n , 简称p c o ) 二、分布式测试方法 在分布式测试方法中,下测试器和i u t 处于两个不同的系统之中,二者之 间通过提供( n 1 ) 层服务的底层协议实现连接。从图2 3 中可以很明显地看出, 下测试器是i u t 的对等实体。上测试器与i u t 位于同一个系统内,它要求i u t 有暴露的上边界访问接口。 三、协调测试法 协调测试法是最复杂的一种抽象测试方法,它要求在上下测试器之间存在高 度的测试协调,并在上下测试器中对所收集和观察到的信息进行报告。上下测试 器之间的通信可以是“i n _ b a l l d ,方式的( 即通过被测协议传送t m p d u ) ,也可 以是“o u t o f _ b a i l d ”方式的( 即使用一个足够可靠的底层协议来传送t m p d u ) 。 四、远程测试法 远程测试法的主要特点是并不要求能访问i u t 的上边界,也不要求显式的 测试协调过程( 如果有的话,也是依靠人工来协调) 。这种方法依赖于被测协议 来实现i u t 和下测试器间的同步。远程测试法所采用的一个假设是i u t 的状态 可由下测试器通过( n 1 ) 层服务与之交换n 层p d u 来确定。测试判决则是由 基于下测试器对i u t 提供的激励以及下测试器所观察到的i u t 的响应做出的。 第1 4 页 第3 章s d l 扣t t c n 语害及测试工具t e l e l o g i c t a u 第3 章s d l 和t t c n 语言及测试工具t e l e l o g i c t a u 3 1 结构化描述语言一s d l 3 1 1 s d l 概述 s d l ( s p e c i f i c a t i o na n dd e s c r i p t i o nl a n g u a g e ) 语言是c c i t t 推荐的规格与描 述性语言。由i t u t 发展和标准化,定义在蓝皮书z 1 0 0 建议中( 1 9 9 2 年,1 9 9 6 年增补) 。作为国际标准化的正式语言,它被用来规范描述实时系统。目前, s d l 9 6 是s d l 的最新版本。作为s d l 相关技术,z ,1 2 0 建议:消息序列图 ( m e s s a g es e q u e n c ec h a n s ,m s c ) 和z 1 0 5 建议:抽象语法符号( a b s t r a c ts y n t a x n o t a t i o n o n e ,a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论