(计算机应用技术专业论文)ospfv3协议测试技术研究与测试集定义.pdf_第1页
(计算机应用技术专业论文)ospfv3协议测试技术研究与测试集定义.pdf_第2页
(计算机应用技术专业论文)ospfv3协议测试技术研究与测试集定义.pdf_第3页
(计算机应用技术专业论文)ospfv3协议测试技术研究与测试集定义.pdf_第4页
(计算机应用技术专业论文)ospfv3协议测试技术研究与测试集定义.pdf_第5页
已阅读5页,还剩67页未读 继续免费阅读

(计算机应用技术专业论文)ospfv3协议测试技术研究与测试集定义.pdf.pdf 免费下载

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

文档简介

西南交通大学硕士研究生学位论文第1 页 摘要 支持i p v 6 的网络产品日渐增加,网络设备协议实现与协议标准是否能 够保持一致已经成为各设备互联、互操作的关键。为此,需要对网络协议实 现进行多种测试,以保证协议实现与协议标准的致和能够实现不同厂家产 品间的互联互通。 本文反映的研究工作的背景是四川省网络通信重点实验室的路由器多 端口并发测试技术研究和系统的开发。开发中的路由器的多端口并发测试系 统是具有上、下两级结构的分布式测试系统。上级系统处理系统配置、多端 口间测试控制数据的指派、测试过程的管理和协调控制;下级为多个单端口 或双端口测试系统。笔者的工作在于以o s p f v 3 协议为对象,研究双端口和多 端口测试系统中的测试控制数据的规划、定义和描述。 - 针对于o s p f 协议的特点,笔者的工作之一是对o s p f 测试数据进行规划, 将它划分为一致性测试、互操作测试和性能测试3 个测试集( t e s ts u i t e ) 。 一致性测试集是本文讨论的重点,笔者进一步将该测试集划分为:h e l l o 协议 测试、邻居关系测试、链路状态数据库测试和路由计算测试组( t e s tg r o u p ) 。 根据测试的需要,在测试组内还迸_ 步划分了测试子组( t e s ts u b g r o u p ) 和 具有明确测试目的的基本测试单元测试例( t e s tc a s e ) 。笔者对o s p f 测试控制数据的描述采用了半形式化的t t c n - 3 描述语言。 测试例的描述是协议测试准备工作中工作量大而繁琐,但又是十分重要 的工作,例如:笔者已经完成的一致性测试例的数目已接近1 0 0 个。为了对 t t c n 一3 描述提供一个感性认识,4 2 和5 3 节分别列出了一个双端口测试和 并发多端口测试系统的测试例的部分描述。通过0 s p f 测试例的描述实践,笔 者发现t t c n 一3 仍然不能适应并发测试控制数据描述的需要。因此,除了对 t t c n 一3 进行了扩展外,相关的需求已经在定义c m p t d l 语言中加以了考虑。 关键字:协议测试,t t c n 3 ,测试集,o s p f v 3 ,c i v i p t d l 亘童奎鋈盔兰巫主堡窒生主丝笙銮箜:! 基 a b s t r a c t w i t hi n e r e a s ei ni p v 6 一b a s e dp r o d u c t s i ti sb e c o m i n gm o r ea n dm o r e i m p o r t a n t t od e c i d ew h e t h e ro rn o ta n i m p l e m e n t a t i o nc o n f o r m s t o r e l e v a n t p r o t o c o l s oa st oe n s u r e i n t e r o p e r a b i l i t y b e t w e e n i m p l e m e n t a t i o no ft h e s a m e p r o t o c 0 1 t h eb a c k g r o u n do ft h ew o r kp r e s e n t e di nt h ed i s s e r t a t i o ni st h e a c t i v i t yi nr e s e a r c ha n ds y s t e md e v e l o p m e n tp e r t a i n e n tt oc o n c u r r e n t m u l t i - p o r tt e s t ( c m p t ) a ts i c h u a nn e t w o r kc o m m u n i c a t i o n k e yl a b o r a t o r y ( s cn e t c o ml a b ) t b ed i s t r i b u t e dc m p ts y s t e mu n d e rd e v e l o p m e n ta t s c n e t c o ml a bt a k e sat w o l a y e ra r c h i t e c t u r e :w h e r et h eu p p e rl a y e r i sr e s p o n s i b l ef o rs y s t e mc o n f i g u r a t i o n ,t e s t a s s i g n m e n t ,t e s tp r o c e s s c o o r d i n a t i o na n dm a n a g e m e n t ,w h i l et h el o w e rl a y e rh a n d l e st w o - p o r t t e s tc o n t r o li s s u e s i nt h i sd i s s e r t a t i o n ,a ne m p h a s i sh a sb e e ng i y e n t ot e s td e f i n i t i o ni s s u e sw i t hr e g a r dt ot h er o u t i n gp i o t o c o l o s p f f o rd i f f e r e n tt e s t p u r p o s e s ,t h r e eo s p ft e s t - s u i t e sh a v eb e e n d e f i n e df o rc o n f o r m a n c et e s t ,p e r f o r m a n c et e s t ,a n di n t e r o p e r a b i l i t y t e s tr e s p e c t i v e l y i nt h ea u t h o r sw o r k ,c o n f o r m a n c et e s ts u i t ei s c o m p a r a t i v e l yc o m p l e t ea n dr e p r e s e n t e db yf o u rt e s tg r o u p s :“h e l l o ”, “n e i g h b o rd i s c o v e r y ”, “1 i n ks t a t e d a t a b a s e ”,a n d r o u t i n g c a l c u l a t i o n ”at e s tg r o u pc o n s i s t so fan u m b e ro ft e s tc a s e s ,w h i c h m a yi nt u r nb eg r o u p e di n t os u b g r o u p sd e p e n d i n go nt e s tp u r p o s e sa n d f u n c t i o n a ld i s t i n c t i o n s t e s tc a s es p e c i f i c a t i o ni sv e r yi m p o r t a n ti nt e s tp r e p a r a t i o n ,y e t i n v o l v e sl a r g ea m o u n to ft e d i o u sw o r k f o re x a m p l e ,t h en u m b e ro ft e s t c a s e si no s p fc o n f o r m a n c et e s t s u i t es of a rd e f i n e db yt h ea u t h o rh a s r e a c h e dn e a r l yo n eh u n d r e d i nt h ea u t h o r sw o r k ,t e s tc a s e sa r e s p e c i f i e di nas e m i f o r m a lt e s ts p e c i f i c a t i o nl a n g u a g ec a l l e dt h e t t c n 一3 t h ee x p e r i e n c eg a i n e di ns p e c i f i c a t i o no ft e s ts u i t eo fo s p f , t h ei n a d e q u a c yo ft t c n 3i nh a n d l i n gc o n c u r r e n t m u l t i - p o r tt e s t i n g h a s b e e ne x p e r i e n c e da n dr e s u l t e di na ne n h a n c e m e n tt ot t c n 一3i nd e f i n i t i o n o ft h ec o n c u r r e n t m u l t i p o r tt e s td e f i n i t i o nl a n g u a g e ( c m p - t d l ) k e y w o r d :p r o t o c o lt e s t ,t t c n 一3 ,t e s ts u i t e ,o s p f v 3 ,c m p t d l 西南交通大学硕士研究生学位论文第1 页 第一章引言 1 1 网络测试技术的发展背景简单回顾 协议测试是通过一组公认的测试集向被测对象发出测试数据,然后 通过被测对象的应答来确定协议实现符合相应协议标准的程度、确定被 测对象的性能指标、或者确定被测设备的可靠性或鲁棒性,或者判定不 同厂家设备的互通能力的过程。随着计算机网络发展特别是开放型异构 网络的迅猛发展,协议测试理论和技术的研究越来越重要,已经成为国 际上计算机网络研究的热点之一。 网络测试技术在2 0 世纪舳年代已经广泛地引起人们的重视,但早 期以i s 0 9 6 4 6 【h 为代表的工作,主要是建立两类系统( 端系统和中继 系统) 的抽象测试方法,测试的目的也仅限于致性测试( c o n f o r m a n c e t e s t ) ,即通过测试在较大程度上证实被测协议实现与协议文本的致程 度。i s 0 9 6 4 6 还为测试控制数据的描述定义了一种树表结合的标记语言 称为t r c n 5 ( t r e e a n dt a b u l a rc o m b i n e d n o t a t i o n ) 。 一国外的经验表明,即使都通过了一致性测试的同一文本的两个不同 的协议实现,也不一定8 够保证二者间能够完全正常地进行信息交换。 这就引出了互联互通测试( n t e r o p e r a b i l i t y t e s t ) 和仲裁测试( a r b i t r a t i o n t c s t ) 。这两种测试总体上通常是在被测对象进行通信的过程中作为第三 方进行被动观察的方式进行的,但因测试系统的功能和测试环境配置的 不同,也可能会主动干预或控制被测对象的通信过程。 随着网络应用的日益广泛,网络应用数据的多媒体化和高速化的发 展趋势,对网络路由、交换设备提出了更高的要求,特别是性能方面的 要求。因此,对中继设备( 路由器、交换机) 的性能测试( p e r f o r m a n c e t e s t ) ,也提高议事日程。 路由器是互联网的通信子网的关键设备,它不仅涉及o s i r m 中继 系统的3 层协议,还涉及与路径信息交换和网络管理有关的应用层协议, 例如,r i f ( r o u t i n gi n f o r m a t i o np r o t o c 0 1 ) 、0 s p f ( o p e ns h o r t e s t p a t h 西南交通大学硕士研究生学位论文第2 页 f i r s t ) ,边界网关协议b g p ( b o r d e rg a t e w a yp r o t o c 0 1 ) 和简单网络管理 协议s n m p ( s i m p l e n e t w o r k m a n a g e m e n tp r o t o c 0 1 ) 。因此,从这种意义上 讲,i n t e m e t 的路由器应该视为采用带外信令控制技术的设备,它具有3 层用户数据传输平台和5 层信控与管理平台【“。因此,对路由器的测试, 不仅涉及传统对i p 和i p 以下层次以及路径选择功能的测试,还必须包 括对信控管理平台上的多个应用协议的测试。 传统上对路由器的性能测试大都沿袭i s 0 9 6 4 6 1 2 】中界定的两种测试 方法:回绕测试法( l o o p b a c k t e s tm e t h o d ) 和穿越测试法( t r a n s v e r s et e s t m e t h o d ) 。后者是由中国学者在英国工作期间提出的测试方法p j 。但是, 由于这两种方法只能对单端口和双端口进行观测,测试功能较弱,因此 国内外都开展了部分并行测试的研究和实验【斗9 1 。上述工作比传统方法测 试功能更强,但由于现代路由器是多端口的高速交换设备,难以模拟路 由器的真实运行环境,因此需要进一步提高多端口测试间的协调和同步 控制功能。对于性能的测试和评估,必须模拟路由器的多个端口间同时 工作的情况,才能够全面获得路由器的性能指标。例如,在性能测试中, 除了正常工作情况外,还必须测试多个端口的突发数据同时指向单个输 出端口时的极端情况路由器的转发效率等。多端口并发测试还可以模拟 路由信息交换协议的运作状况,或者配合数据传输的过程,这正是本论 文研究的全面测试o s p f 和与数据传输配合测试的主要内容。也是四川 省网络通信重点实验室提出对路由器进行多端口并发测试研究提出的基 本出发点。 1 2 本项研究工作的测试对象o s p f v 3 协议实现 在2 0 世纪8 0 年代末,由于距离矢量路由选择协议收敛速度慢、对 路经的节点数( h o p 数或跳数) 的限制( 1 5 个节点) ,以及未考虑数据链 路的通信状态等缺点,于是出现了基于链路状态的路由选择协议。广义 的链路状态包括线路吞吐率、传输时延、线路拥塞状态以及传输开销 ( c o s t ) 等属性。开放最短路径优先协议o s p f 就是一种基于链路状态 l s ( l i n k - s t a t e ) 的动态路由选择协议。o s p f 的最优路径是在同一自治 系统a s ( a u t o n o m o u s s y s t e m ) 内的端系统或边界路由器间路经的节点最 少,其开销最小。在实践中,开销的大小通常以线路吞吐率除以某特定 的速率( 例如2 m b p s ) 的商来衡量。 西南交通大学硕士研究生学位论文第3 页 o s p f 经过多年的改进已经发展到第3 版,即以i p v 6 为基础的 o s p f v 3 1 1 0 】。与o s p f v 2 1 1 1 相比,o s p f v 3 提供了更强的功能和很大的通用 性,从而可以很方便地支持新型网络协议。o s p f v 3 协议基于“链路”实 现而不再基于“子网”实现,因此路径信息交换所使用的目的地址是链 路本地地址而不是全球单播地址。这样可以就使得只要在数据链路层能 够通信的两个路由节点都可以交换o s p f v 3 信息。而不管这两个节点是否 在一个子网上。o s p f v 3 与o s p f v 2 协议的的区别可以简单地概括如下: 全球单播地址不作为o s p f v 3 协议包的源和目的地址,l s a 头中不 再含有任何地址信息。 路由器l s a 和网络l s a 不再含有任何网络地址信息,只说明拓扑 结构。 邻居路由器只能由路由器标识来查找,而不能由路由器地址来标 识。 为了计算域内路由必须的地址信息,o s p f v 3 引入己另外一种专门 的l s a ,即域内前缀l s a 。 o s p f v 3 增加了多种可选功能,如多播o s p f 等。并且还扩展了功 能选项数据域。 o s p f v 3 协议可以划分为3 个子协议:h e l l 0 协议,交换协议 ( e x c h a n g e ) 和泛洪协议( f l o o d i n g ) 。h e l l 0 协议主要用来确认邻居路 由器是否处于活动状态,并且在广播型网络或者非广播型网络上用于选 举指派路由器d r ( d e s i g n e dr o u t e r ) 及其后备指定路由器b d r ( b a c k u p d e s i g n e dr o u t e r ) ;交换协议主要用于邻居路由器之间的数据库同步; 泛洪协议用来传播网络中链路状态的变化,从而保持各个路由器之间链 路状态数据库的一致性。 1 3 o s p f v 3 测试技术研究现状与测试集定义 目前国外的著名测试厂家i x i a l l 2 - 1 3 】已经将o s p f v 3 协议的测试纳入 他们的测试计划,s p i r e n t 公司也开始了着手于o s p f v 3 的测试【1 4 】。互通 实验室i o l 1 5 】4 针对于o s p f v 2 进行了测试,在测试中他们定义了自己的 测试语言d m l ( d o m a i nm o d e l i n gl a n u a g e ) ,他们的测试对象是 s s f ( s c a l b l es i m u l a t i o nf r a m e w o r k ) 。国内中科院计算技术研究所也开 西南交通大学硕士研究生学位论文第4 页 始了对0 s p f v 3 的测试【1 6 】。但是目前为止尚没有发现对0 s p f v 3 协议测试 集进行完整规划和定义的。 笔者的研究工作目标是以s c n e t c o ml a b 正在开发中的路由器多端 口并发测试环境的研究开发工作为依托,全面研究0 s p f v 3 协议的测试集 的划分和控制数据的定义技术。 1 4 笔者工作简述与论文的安排 笔者在四川省网络通信重点实验室承担的主要工作是0 s p f v 3 协议 测试集的划分和测试集的定义,在研究生学习期间,笔者完成了o s p f v 3 协议测试集的划分和一致性测试集的定义姒及部分互通性和性能测试集 的测试方法的设计和测试集的定义。本论文中各个章节内容安排如下: 第二章在分析了传统路由器测试方法的基础上,提出了测试更全面 更高效的“并发多端口测试技术”;并对并发多端口测试系统c m p t s ( c o n c u r r e n tm u t j p l c p o nt e s ts y s t e m ) 的结构进行剖析。最后介绍了测 试系统在o s p f 协议测试中的应用。 第三章在对测试集的划分原则和测试集各个部分的命名规则进行了 研究探索的基础上。针对o s p f v 3 协议集的特点,对其进行分析和测试 集的划分,将其划分为一致性测试集、互通性测试集和性能测试集,然 后根据测试需要将各个部分划分为不同的测试组,测试子组和测试例。 第四章首先从一致性测试集、互通性测试集和性能测试集三个方面 说明了在o s p f v 3 协议通用测试集向抽象测试集的转化的设计思想和方 法。然后以示例从测试数据类型、模板、测试配置、测试例定义和测试 控制几个方面的说明了使用测试描述语言t t c n - 3 对抽象测试集的定义 方法和过程。 第五章是对并发语言( c o n c u r r e n tm u l t i p o at e s td e f i n i t i o nl a n g u a g e - c m p t d l ) 定义的背景和内容进行了介绍。在本章的最后部分我们使 用c m p t d l 定义了测试示例来说明并发语言定义的测试例的结构。 第六章对笔者在研究生期间的工作进行总结的基础上,提出了下一 步需要进行的研究工作以及一些思考。 西南交通大学硕士研究生学位论文第5 页 第二章并发多端口测试技术 协议测试是用来保证协议实现的正确性和有效性的重要手段。对某 个协议实现进行测试,能够发现被测实现( i m p l e m e n t a t i o n u n d e rt e s t , 简称i u t ) 与该协议文本要求的一致性与不一致性,能够发现i u t 之间 的互操作性问题,能够发现i u t 的性能问题,从而揭示出协议实现的缺 点和问题,促进它们的改进和完善。这对于协议的推广起着关键的作用。 对协议实现进行测试还可以为协议验证指明方向。首先利用一致性测试 保证协议实现与协议要求的一致性,然后可以用互操作性测试来测试与 协议一致的各种实现之间的互操作性,还可以用性能测试来观察协议引 入的新特性是否真的达到了设计要求,是否真的提高了性能。根据测试 的结果,可以反映出协议实现的某些细节有可能需要作修改,为协议验 证指明方向。所以,对协议测试进行研究对于协议的验证和改进也有十 分重要的作用。 2 1 协议测试过程 协议测试过程大致可以划分为三个阶段。第一个阶段是根据某特定 协议文本得到一个独立于所有协议实现的抽象测试集,称之为“协议测 试生成”。在这个阶段中要先熟悉要测试的协议文本,然后根据对文本的 理解确定要测试的内容,并且被测试协议进行测试集的划分,最后要用 某种语言( 在我们的测试集的定义中,我们使用的是t t c n 一3 ( t c s ta n d t e s t c o n t r o ln o t a t i o n v c r s i o n3 ) ) 对划分的测试集进行定义。我们之所以选择 t t c n 一3 ,是因为t t c n 一3 是e t s i 定义的标准测试描述语言,因此我们的测 试集具有通用性。第二个阶段是实现特定测试集的执行方法组成,也称 作“协议测试实现”。该过程中是将第一阶段定义的测试集编译成可执行 的代码。第三个阶段为“协议测试执行”,运行已经具体化的协议测试例, 并对i u t 的外部行为响应进行观察,最终可以得到测试判决,并将测试 执行的结果记录在协议测试报告中。 西南交通大学硕士研究生学位论文第6 页 2 2 中继系统测试方法 由于本文中我们只是对路由器中的o s p f 协议实现进行测试,所以在 这里我们只是针对于中继系统的测试方法进行介绍。i s o i e c 一9 6 4 6 针对 中继系统的特点没有开放的上下接口,提出了两种中继系统抽象测 试方法:回绕法( l o o k b a c k ) 和穿越法( t r a n s v e r s e ) 。这两种抽象测试 方法的结构如图2 - 1 和图2 2 所示。 l 、回绕法 回绕法将两测试子系统置于被联网的同侧( 如图2 1 所示) 测试回 路起于一测试器,经通信子网a 进入被测中继系统。然后穿过此机进入 通信子网b 后自动或借助于其他的装置绕回被测中继系统,再进入通信 子网a ,止于另一个测试器:或者进入通信子网b 之前,在被测中继系 统内部绕回通信子网a ,止于另一个测试器。 中维系统 中继系统 图2 一l 回绕测试法图2 2 穿越测试法 2 、穿越法 穿越法如图2 2 所示,将两测试系统分别止于被测中继系统两旁。 回绕法的缺点是被测中继系统只有一端的行为被直接观察到,而另 一端的行为不能被正确的评价。而穿越法则使被测中继系统在正常的操 作模式下得到测试,在两端的行为都能够被观察到。 目前无论回绕测试法还是穿越测试法对路由器等网络设备的测试通 常只是局限为单端口或者一对端口的测试。但是随着网络规模的不断发 展,以及用户对这些设备性能要求的不断提高。尤其是对于像o s p f 协 议这样的基于链路状态的路由选择协议。传统的测试技术已经远远不能 满足测试的需要。因此我们需要对其进行改进。下面我们就介绍一下四 川省网络通信重点实验室在研的并发多端口测试器以及其在o s p f 协议 西南交通大学硕士研究生学位论文第7 页 测试中的应用。 2 3 并发多端口测试技术 2 3 1 并发多端口测试环境( c m p t e ) 四j 1 i 省网络通信重点实验室在研的i p v 6 路由器多端口测试环境 ( c m p t e c o n c u r r e n tm u l t i p o r tt e s te n v i r o n m e n t ) 具有如图2 3 所示的结 构【4 6 】; 从图中我们可以看出,c m p t e 由两部分组成:左侧的并发多端口测 试系统( c m p t s c o n c u r r e n tm u l t i p o r tt e s ts y s t e m ) 和右侧的测试支撑工 具( t e s ts u p p o r tt o o ls e 0 。c m p t s 自身又由上下两级测试系统组成:上 部的并发多端口测试管理( c m p t m ) 和下部由多个双端口测试器 ( t w o p o r tt e s t e r t p t ) 组成。c m p t m 对多端口测试进行协调、管理 和控制,它执行由并发测试定义语言( c m p t - t d l ) 描述的测试控制数 据,根据测试执行情况选择新的测试例,最终生成多端口并发测试报告。 图2 3 i p v 6 路由器并发多端口测试环境( c m p t e ) :测试系统与测试支撑工具 在进行多端口并发测试时,t p t 在c m p t m 的控制下完成指定的一对端 口的协调测试或两端口的独立测试:作为独立的测试系统,t p t 通过执 行可执行测试数据,即测试例( 用t t c n 3 描述,经t t c n 3 编译后生 西南交通大学硕士研究生学位论文第8 页 向测试中心的分布式并发多端口路由器测试系统;此时,t p t 是作为 c m p t s 的下级测试器。t p t 也可以作为可移动的单端口或双端口测试 器独立地进行测试。 图中的c m p t e 测试支撑工具包括:c m p t - t d l 编译器和t t c n - 3 编译器。前者完成并发测试集、组、例等的编译工作,将用c m p t - t d l 语言描述的测试控制数据,分为并发控制部分和单个,单对端口测试部 分,然后编译为“c ”程序:后者将把用t t c n 3 描述的测试控制数据编 西南交通大学硕士研究生学位论文第9 页 分,然后编译为“c ”程序;后者将把用t t c n 3 描述的测试控制数据编 译为c 程序。两种语言编译后的“c ”代码,经过c 编译后再形成测 试系统可执行的测试代码( 即e t s e x e c u t a b l et e s ts u i t e ) 。 如图2 4 所示,t p t 可以进一步由双端口测试管理器( t p t m t w o p o r tt e s tm a n a g e r ) 、单测试例执行器( t e s tc a s et r a v e r s e r ) 、编解 码器( e d e n c o d e “d e c o d e r ) 、测试支撑层( t e s ts u p p o r tl a y e r s ) 和多 种记录功能组成。图中的右侧为t p t 测试支撑工具_ 玎c n 3 编译器。 该编译器对用t t c n 3 描述的测试例进行编译后,将与e d 和单测试例 执行器一道进行c 代码的联合编译,形成t p t 的可执行测试例( 程序) , 用于控制整个、狈9 试过程。 在进行多端口并发测试时,t p t 受c m p t m 的协调与控制;当t p t 作为独立的测试器时,将由测试操作者通过其人机接口进行系统配置和 发布测试控制命令,具体的管理工作将由双端口测试管理器( t p t m ) 负责。t p t m 的测试管理功能包括:对t p t 的初始化,根据测试例执行 结果动态选择下一测试例,启动或中止测试会话,在测试终端上显示测 试的动态执行过程等。单测试例执行器( t r a v e r s e r ) 实质上是可执行测 试例的具体执行者,它根据测试例的描述,调用e d 对被测协议的p d u 进行编码,然后利用测试支撑层发送测试数据;对收到的p d u 进行解码 ( 如图中粗线箭头所示) 并根据测试例决定下一测试步( t e s ts t e p ) ;当 单个测试例执行完成时,它给出该测试例的测试结论( 通过、失败、或 无定论) ,然后提交t p t m 选择下一测试例。在测试过程中,不同的测 试记录进程记录相应的来往数据,供事后测试分析使用。在测试过程中, 部分测试数据经t p t m 被送往显示终端,为测试操作人员提供测试过程 的实时显示。 对路由器的测试通常是在对被测层的支撑层工作正常的前提下进行 的。例如,在进行对用户数据传输平面的i p 报文和选径功能进行测试时, 路由器和测试系统中数据链路层和以下层次必须处于正常工作状态。因 此,图2 4 中的主记录文件用于存放被测对象层的p d u 事件和数据以 及系统测试命令与应答,用于事后分析和生成矸叮测试报告。其中,部 分数据需同时送t p t m 决策和送t p t 监视器用于直观的显示测试过程。 图2 4 中的次记录用于获取支撑层与被测层之间的接口上的信息,是一 种辅助性的记录手段,用于事后分析与支撑层相关的出错原因。 西南交通大学硕士研究生学位论文第1 0 页 图2 4 中的测试支撑层因测试对象的协议层次结构不同和待测协议 层的不同而异。例如,对o s p f v 3 协议实现进行测试时,支撑层为i p v 6 , 而对o s p f v 2 进行测试支撑层就为i p v 4 ;而测试应用层的路径信息交换 协议时,支撑层则可能是u d p 或t c p 。在进行路径信息交换与i p 路径 选择功能的配合测试时,可能需要根据发送的p d u 的所在层次,分别调 用不同的支撑层协议实现。 2 3 2o s p f 协议并发多端口测试的必要性 之所以对o s p f 协议进行并发多端口测试,主要是基于如下几点考 虑: 首先,由于o s p f 协议是当前路由器内部网关协议主要的路由选择协 议,而路由器实质上是由包括应用层协议在内的信令控制平面和管理平 面的协议集和只有3 层结构的用户数据传输平面构成的,因此相关的测 试也必须包括分别对两个平面的协议进行c o n f o r m a n c e 测试。 其次,o s p f 协议是基于链路状态的动态路由选择协议。o s p f 路由协 议是通过“呼叫”协议发现邻居路由器,根据路由器对网络拓扑结构生 成的网络拓扑数据库,按照最短路径优先算法生成路由器到网络中各目 的节点的表。每个运行o s p f 算法的路由器都维护一个用于跟踪网络链路 状态的链路状态数据库( l s d b ,l i n ks t a t ed a t ab a s e ) 。数据库中存储 的是反映网络中路由器及其链路状态的各种链路状态通告( l s a ,l i n k s t a t ea d v e r t i s e m e n t s ) ,这些状态包括路由器可用接口、己知可达路由 和各链路的状态信息。链路状态数据库实际上就是一张完整的网络映射 图,是路由器建立路由表的依据;一个自治系统内的路由器要形成对网 络拓扑结构的一致视图,就必须同步他们的链路状态数据库。0 s p f 依靠 “呼叫”( h e l l o ) 协议和“可靠泛洪”机制完成0 s p f 包的交互过程,并 最终实现同一个路由域中所有路由器的l s d b 同步。因此我们可以看出, 路由计算的基础就是网络拓扑结构的变化,这些信息很大程度上来自于 邻居的链路状态通告。尤其是指定路由器和后备指定路由器需要和每个 邻居保持链路状态信息的同步。我们都清楚要想对被测实现进行完全的 测试就必须对现实的网络环境进行模拟。然而上述的这些情况是单个端 口测试所无法模拟的。因此我们需要通过多个端口协同工作才能完成全 面的测试。 西南交通大学硕士研究生学位论文 第1 1 页 它a s 中的路由器交换路由信息,但它们是一种a s 内部( 内部网关) 路 由协议。一个a s 可以分为多个区间,即一组连续的网路和相连的主机。 拥有多个接口的路由器可以加入多个区间,这些路由器称为区间边界路 由器,分剧为每个区间保存其拓扑数据库。拓扑数据库实际上是与路由 器有关联的网路的总图,包含从同一区间所有路由器收到的l s a 的集 合。因为同一区间内的路由器,所以它们具有相同的拓扑数据库。( 术语 域( d o m a i n ) 有时用于描述含有相同拓扑数据库的路由器组成的网络,通 常与a s 可互换。) 区间的化分产生了两种不同类型的0 s p f 路由,区别 在于源和目的是在相同的还是不同的区间,分别为区域内路由和区域问 路由。因此处在特殊位置的路由器如自治系统边界路由器a s b r 和区域 边界路由器a b r 需要和多个区域或者外部网络进行交互,这种情况也 是单端口一对端口测试所无法模拟的。下图2 5 就是一个典型现实网络 图。 最后,路由器或交换路由器是i n t e r n e t 中实现系统互联的多端口 图2 - 5 实际网络示意图 高速交换设备,对单端口的“回绕测试”或对一对端口的“穿越测试” 都不能验证端口间的相互影响,特别是对于性能测试,其测试结果不能 定量地界定路由器的实际工作性能,特别是难以考察系统在并发数据的 实际运行环境中符合协议的程度和性能指标,因而目前的测试技术和系 统所进行的测试是不完全的。 “ 西南交通大学硕士研究生学位论文第1 2 页 2 3 3 并发多端口测试技术在0 s p f 协议测试中的应用 上图2 5 是一个现实网络示意图,为了对中间连接的路由器进行测 试,在测试中我们分别用四个测试驱动器来模拟被测路由器( r o u t e r u n d e rt e s t ,r u t ) 连接的四种网络情况,测试驱动器1 用来模拟一个点 到点的网络,通过区域边界路由器a b r 来向被测实现发送汇总链路状 态通告l s a ;测试驱动器2 用来模拟一个区域;测试驱动器3 用来模拟 一个广播网络;向被测路由器发送网络和路由l s a ;测试驱动器4 用来模 拟外部网络,通过自治系统边界路由器向被测路由器发送自治系统外部 l s a 。上述网络连接情况在实际网路中还是比较常见的,而这种情况是 单端口测试所无法实现的。我们通过多端口测试配置,就可以对现实网 络运行情况模拟了。我们还可以同时对被测试路由器进行一些一致性、 性能方面的测试。我们将r u t 的所有端口分别用地位等同的测试器连接 起来,这些测试器,通过向对应的端口输入激励,然后在另外的端口得 到响应,然后各个驱动器把获得的信息向测试协调器报告,测试协调器 做出判决或者执行其他控制动作,如同步等。由于每个测试器都模拟了实 际的网络状况( 例如测试驱动器2 模拟的是一个广播网络) ,因此整个 r u t 好像被放到了一个实际的网络环境中一样,这样的测试必然更加能 反映实际的系统状况。另外需要指出的是,我们在各个测试驱动器上层 加了一个测试协调器,协调器起着控制中心的作用,对应t t c n 一3 中的 m t c 。整个测试都在它的监督和控制和协调下完成,这样不但利于对各测 试器能进行控制和协调、同步,而且可以根据情况自动选择测试例的执 行。从这里我们可以看出多端口并发测试,使被测试的路由器处于类似 实际网络运行的环境,所以这时可以更灵活有效地进行各个方面的测试。 这种测试配置的优点是显而易见的,这样可以使得测试系统并行性 大大加强,对各子测试器之间的同步、协调、实时性的控制能力也大大 提高。 西南交通大学硕士研究生学位论文第1 3 页 第三章o s p f v 3 测试集的划分原则及命名规则 i s 0 i e c 9 6 4 6 ( i t u - tx 2 9s e r i e s ) 中定义了一种对o s i 参考模型和 i t u t 协议进行一致性测试的理论框架和测试方法。性能测试和互通性 测试与一致性测试类似。协议测试通常是将被测实现看作一个黑盒,我 们关心的是被测实现的输入输出行为。正如我们第二章介绍的一样,执 行测试,就是把测试例输入到被测实现中,在特定控制观察点p c 0 ( p o i n t o fc o n t r o lo b s e r v a t i o n ) 处对被测实现的层间服务原语和协议数据单 元进行控制和观察,察看被测实现对此做出的输出反应,并据此做出测 试结论。因此为了对协议或系统进行测试,测试集的构造是十分重要的。 本章笔者是在对o s p f v 3 协议进行全面剖析的基础上,从测试集划分原 则,测试集的命名原则以及对o s p f v 3 测试集的划分几个方面来对 o s p f v 3 协议测试集规划工作进行介绍的。 3 1 测试集划分原则 o s p f 协议是一个相当复杂的路由选择协议,它的复杂性主要表现 在:首先它既要描述传统的协议所涉及的对等实体间的一对一的协议关 系,除此以外还需要描述多对多( 多个路由器间) 环境下的协议关系; 其次,网络环境的复杂性。如:它所涉及的网络环境有点到点的连接环 境,虚连接和广播网络等;再次,o s p f 为了减少路径信息交换数据流量, 它采用了许多措施,如:指定路由器和后备指定路由器,层次路由等。 另外,o s p f 封装在i p 里面,它使用的协议号是0 x 5 9 ( 8 9 ) ,所以它可以 运行在所有i p 可以运行的环境。据中国著名学者曾华粲教授的观点【6 l , 我们可以将o s p f 协议迸一步分成三个功能“亚子层”。选择路径功能亚 子层( 构建何查询路径表,为i p 报文选择前传节点) ;邻居节点状态对 话协议( 邻居发现、相邻性建立、状态交换) ;路由器链路接口状态控制 功能亚子层。可见其内部实现的复杂。因此,测试集的划分必须充分考 虑其复杂性,以便将单个测试集的划分控制在可管理的范围内。o s p f 的 西南交通大学硕士研究生学位论文第1 4 页 测试集根据i s o 标准可分为:符合协议标准的测试( c o n f o r m a n c et e s t ) 、 性能测试( p e r f o r m a n c et e s t ) 、互通测试( i n t e r o p e r a b i l i t yt e s t ) ,在 进行并发多端口测试时可能还包括多个协议间的多协议配合测试 ( m u l t i - - p r o t o c o lc o o r d i n a t e dt e s t ) 等,因此,测试集的划分还必须考 虑适应各类测试的能力。按照i s o 规定的路由器的测试方法,可分为单 端口回绕测试和一对端口的穿越测试,当涉及多端口并发测试时,两种 测试方法的组合可能出现更复杂的情况。因此,测试集的划分必须考虑 上述种种因素和需要。在四川省网络通信实验室对测试集的划分的实践 中,我们探索出以下几条划分的原则: 测试集的可控性原则 单个测试集的划分的规模不宜太大,所涉及协议宜尽量少。为了和 i s o 定义的三种类型的测试相适应,同时满足不同测试性质的测试需要, 我们将o s p f v 3 协议划分为三个测试集:一致性协议测试集( s c s u i t e s c o n f o r m a n c e ) 、性能测试集( s p s u i t e sp e r f o r m a n c e ) 、互通测试集 ( s i s u i t e si n t e r o p e r a b i l i t y ) 。测试集也可根据需要进一步增加。 这样划分使得我们的测试目的更加明确。同时有利于以后的扩充,又避 免单个测试集过大,向下细分层次过多。 o 自顶向下分层原则和分层汇聚原则 抽象的测试集可以根据测试需要划分为不同的测试组( t e s t g r o u p ) ,测试组还可以细分为测试子组( t e s ts u b g r o u p ) 。测试子组向 下又可以划分成一个个具体的测试例。在这里我们还可以对测试例层次 结构再进行划分,用层次结构表示的测试集1 4 0 l 如下图3 - 1 所示。 需要指出的是,我们在对测试集的划分除了采用自顶向下划分的原 则以外,我们还采用了分层汇聚的原则,对底层的测试例再采用分层汇 聚的原则,将不同的测试例汇聚在一起构成不同的测试类。而且我们还 引入了超级测试类( s t c s u p e r t e s tc l a s s ) 的概念,将多个测试集向上汇 聚为超级测试类( s u p e r t e s t c l a s s ) 。由于我们实验室正进行路由器的并发 多端口测试和传统单个端口或一对端口的测试,根据测试需要,我们目 前定义了两类超级测试类:多端口并发超级测试类( m s t c m u l t i - p o r t c o n c u r r e n ts u p e rt e s tc l a s s ) 和单个单对端口超级测试类( s s t c s i n g l e p o r t p a i rs u p e r t e s tc l a s s ) 。超级测试类可以根据需要增加。采用上述汇 聚法的目的还在于能够与其他研究单位关于单端i :l 单对端口测试使用 西南交通大学硕士研究生学位论文第15 页 的测试集具有可比性。 测试组,通常的测试组划分对应于此协议族的一个或几个标准协议 规范,我们的测试对象主要涉及两个协议文本r f c 2 3 2 80 s p fv e r s i o n2 和r f c 2 7 4 00 s p ff o rt

温馨提示

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

最新文档

评论

0/150

提交评论