(计算机系统结构专业论文)6lowpan协议栈一致性测试系统研究与实现.pdf_第1页
(计算机系统结构专业论文)6lowpan协议栈一致性测试系统研究与实现.pdf_第2页
(计算机系统结构专业论文)6lowpan协议栈一致性测试系统研究与实现.pdf_第3页
(计算机系统结构专业论文)6lowpan协议栈一致性测试系统研究与实现.pdf_第4页
(计算机系统结构专业论文)6lowpan协议栈一致性测试系统研究与实现.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

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

文档简介

华东师范大学硕士学位论文摘要 摘要 传感器网络是一种新的信息获取和处理技术,i p v 6 是下一代主流的网络通 讯协议,这两者都是目前国际上研究的热点领域。6 l o w p a n 是正t f 于2 0 0 4 年1 1 月新成立的致力于解决i p v 6 数据包在i e e e8 0 2 1 5 4 上传输问题的工作组。 华东师范大学的网络实验室研究了6 l o w p a n 问题,与各国6 l o w p a n 专家开展 了讨论,提出了一套解决方案,并在f r e e s e a l e 公司的开发环境上实现了一套协 议栈。 协议测试是协议开发中必不可少的部分,是协议工程的重要组成部分。普通 的手动测试费时费力,特别是对于状态协议的测试以及对于时间要求精密的测 试,手动测试很难实现。测试过程是对开发过程的一种反馈,协议设计和实现的 完善是一个修改然后测试的反复过程,测试用例需要被多次重复执行,为此开发 一个能自动执行测试的测试系统是很有意义的。 本文主要分成两大部分,第一部分主要阐述了本论文的研究背景,介绍了协 议一致性测试的基本理论、基本方法以及目前国内外的研究和发展状况。第二部 分根据具体的测试要求,设计了适合于6 l o w p a n 协议栈的测试系统,详细阐述 了设计思想和实现特点。本文设计和实现的测试系统的主要功能包括:被测协议 的协议报文格式描述方法、测试用例描述方法、测试自动执行、测试结果自动判 定等。 本文作者的主要工作有: 1 介绍了协议一致性测试的框架,测试过程以及常用的一些方法。 2 收集国内外测试研究状况,研究国内外测试系统的特点和实现方法,特 别对日本t a h i 测试系统作了深入的分析。 3 介绍了实验室开发的6 l o w p a n 协议栈,分析协议栈特点,设计了测试 方案,并参与测试用例的开发。 4 设计和开发了一致性测试系统,对系统设计思想和实现细节都做了较为 详尽的介绍。测试用例的描述规则采用y a c c 语法来描述,其它部分采 用面向对象的c + + 语言来实现,界面采用m f c 多文档结构。 5 对测试系统进行了简单的自测,提出了测试系统存在的问题,并提出了 测试系统可改进的方面。 关键字:6 l o w p a n ,i p v 6 ,一致性测试,t t c n - 3 ,测试系统。 华东师范大学硕士学位论文a b s t r a c t a b s t r a c t s e n s o r n e t w o r k c o n s i s t s o f a n u m b e r o f s e n s o r n o d e s w h i c ha r c c a p a b l e o f s i g n a l p r o c c s s h ga n dn e t w o r k i n go ft h ed a t a t h i st e c h n o l o g yi sn o ww i d e l yu s e di nm a n y a r e a si n c l u d i n ge n v i r o n m e n t , m i l i t a r y , i n d u s t r ye t e i p v 6i st h en e wv e r s i o no f i n t e r a c t p r o t o c o l ;i tw i l lb et h ew o r l d w i d ei n t e m e tc o r ep r o t o c o li nt h en e a rf u t u r ef o ri t s i n h e r e n ta d v a n c e i p v 6i sd e s i g n e df o rw i r e d , h i g h - r o t en e t w o r ke n v i r o n m e n t ;i tw i l l h a v es o m ep r o b l e mw h e nu s e df o rw i r e l e s s ,l o w - r a t es e n s o rn e t w o r ke n v i r o n m e n t i n n o v 2 0 0 4 ,i e t fh a se s t a b l i s h e dan e wg r o u p - 6 l o w p a nw h o s em a i nt a s ki st os o l v e t h ep r o b l e mo fi p v 6o v e l - l o w - p o w e r , l o w - r a t ew i r e l e s sp e r s o n a la r e an e t w o r k e c n u n e t - l a bh a sd e s i g n e da ni p v 6p r o t o c o ls t a c kt os o l v e6 l o w p a n p r o b l e m p r o t o c o ls p e c i f i c a t i o n sa r cu s u a l l yd e s c r i b e db yn a t u r a ll a n g u a g e ,s od i f f e r e n t p e r s o nm a yh a v ed i f f e r e n tu n d e r s t a n d i n g t oe l s u r et h a ti m p l e m e n t sa r cc o n f o r m e dt o p r o t o c o ls p e c i f i c a t i o na n dd i f f e r e n ti m p l e m e n t a t i o n sc a ni n t e r c o m m u n i c a t e , p r o t o c o l c o n f o r m a n c et e s t i n gm u s tb ec a r r i e do u t t oc a r r yo u tc o n f o r m a n c et e s tm a n u a l l yi sa v e r yh a r dt a s k t t c na n dt t c nb a s e dc o n f o r m a n c et e s t i n gs y s t e mi sa d a p t e db y m o r ea n dm o r ep e o p l e ,b u tt t c nt e s t i n gs y s t e mi sq u i t ec o m p l e xa n dn o te a s yt o d e v e l o pf o ras m a l lp r o j e c tl i k eo u r6 l o w p a n s o ,w ew o u l dl i k et of i n dan e ww a y t od e v e l o pat e s t i n gs y s t e mt h a tc a np r o v i d ea ne a s yw a yt od e v e l o pt e s ts u i t ea n dc a n a u t o m a t i c a l l yr u nt e s tc l q e s t h ep a p e rf i r s t l yi n t r o d u c e st h et h e o r y , f r a m e w o r ka n dd e v e l o p m e n tp r o c e s so f p r o t o c o lc o n f o r m a n c et e s t i n g ,a n ds u m m a r i z e st h es t a t u so ft e s t i n gs y s t e m sa v a i l a b l e e u r r e n t l yi n t h ew o r l d t h e nt h ep a p e ri n t r o d u c e st h em a i nf e a t u r e sa n dt e s t i n g e n v i r o n m e n to f t h ep r o t o c o l sb e e nt e s t e d t h er e s to f t h i sp a p e rt h a ti st h em a i np a r to f t h ep a p e rd i s c u s s e st h ed e s i g na n di m p l e m e n t a t i o no f o u rt e s t i n gs y s t e mi nd e t a i l t h ea i mo ft h i st e s t i n gs y s t e mi sf r i e n d l yt ou r ,t r a n s p l a n t a b l e ,i n d e p e n d e n to f o p e r a t i n gs y s t e ma n dc a nb e u s e df o ro t h e rp r o t o c o l s f u n c t i o n so ft h es y s t e m i n c l u d e s :t h em e c h a n i s mt od e s c r i b ea n dm a n g et e s tc a s e s ;a u t o m a t i cr u n n i n ga l lt e s t e a s e s ;a u t o m a t i ca s s i g n m e mo f f i g h tv e r d i c t t h ec o r ep a r to f t h i ss y s t e mi sd e v e l o p e di nc h l a n g u a g e t e s tc a s ed e s c r i p t i o n p a r to f t h i ss y s t e mi sd e v e l o p e du s i n gy a c c t h es y s t e ma l s op r o v i d e sf r i e n d l yg r a p h i c u s e ri n t e r f a c et h a ti sd e v e l o p e do nt h ep l a t f o r mo f m f c k e y w o r d :6 l o w p a n ,i p v 6 ,c o n f o r m a n c et e s t i n g ,t t c n - 3 , t e s t i n gs y s t e m 华东师范大学硕士学位论文 学位论文独创性声明 本人所呈交的学位论文是我在导师的指导下进行的研究工作及取得的研究 成果。据我所知,除文中已经注明引用的内容外,本论文不包含其他个人已经 发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在 文中作了明确说明并表示谢意 作者签名:储、,l ,f 2 一日期:办刁;? 学位论文使用授权声明 本人完全了解华东师范大学有关保留、使用学位论文的规定,学校有权保 留学位论文并向国家主管部门或其指定机构送交论文的电子版和纸质版。有权 将学位论文用于非赢利目的的少量复制并允许论文进入学校图书馆被查阅。有 权将学位论文的内容编入有关数据库进行检索。有权将学位论文的标题和摘要 汇编出版。保密的学位论文在解密后适用本规定。 学位论文作者签名: f 承,1 , 红导师签名:多傀 日期:苏1 。;f日期。厶7 。多,伊 华东师范大学硕士学位论文引言 1 1 本课题背景介绍 第1 章引言 传感器是信息采集最基本和最重要的方式,近年来由于微处理的处理能力的 提高,体积和成本的降低使得传感器的应用成为关注的热点。传感器网络是由大 量的低功耗的传感器节点组成的网络系统,每个节点具有数据采集、简单的数据 处理、短距离无线通信和自动组网的能力。由于传感器节点个数多、价格低廉、 分布广而且可适用环境复杂,在森林防护、医疗、地震以及工业控制等领域都有 广阔的应用前景。口协议是当前网络协议的主流,i p v 6 t 1 1 作为新一代的网络通讯 协议,他拥有非常大的地址空间,并且在安全性、移动性和地址自动配置等方面 都提出了优秀的解决方法。将i p v 6 协议和传感器网络相结合将会使得传感器网 络的应用更加广阔。为此网络实验室在研究传感器网络和m v 6 协议特点的基础 上,自发研究和设计了“6 l o w p a n 协议栈” 2 1 3 1 ,该协议栈解决i p v 6 协议在 传感器网络环境中的各种问题,例如:报文过大需要分片,头部开销过大需要压 缩和解压,维护网络负载过重需要优化协议等。为了验证协议的可行性和正确性, 网络实验室选取实现了8 0 2 1 5 4 【4 】无线传感器标准的f r e e s c a l e 开发套件作为开 发、实现协议栈的平台。 根据协议工程【5 l ,协议的开发过程包括六个过程:协议设计,协议描述,协 议验证与性能分析,协议实现,协议测试,协议维护。由此可见,协议测试是协 议开发过程中必不可少的环节,是保证协议实现与协议设计相一致的方法,在协 议开发过程中起到举足轻重的作用。针对网络实验室开发的“6 l o w p a n 协议栈”, 如何开展测试,怎样的测试方案可以在有限的人力、物力条件下取得最佳的效果, 这是本论文的研究目的。普通的、低级的手工测试,测试人员必须手工编辑二进 制格式的报文,这不但容易出错效率也很低;由于没有系统管理测试流程和测试 套,测试用例组织混乱,维护困难:而且测试是一个反复的过程,开发人员对软 件的每一次改动,测试人员就不得不重新测试,这是个非常累人的工作;除此之 外手动测试无法完成一些时间要求精密的协议行为的测试。为了简化测试,测试 人员通常需要开发小型工具来辅助测试,例如网络实验室早期开发的p a c k e t g e n e r a t o r 就是一款可以组织报文的工具,利用该工具,测试人员可以较为直观的 根据报文每个字段填写内容,在一定程度上提高了测试效率,减少了错误。但是 它还是一种手动测试,只能简化组织报文的工作,对于报文管理、收到报文的处 理等都无能为力,而且该工具只能为i p v 4 i p v 6 测试使用,其它协议的测试需要 华东师范大学硕士学位论文引言 另外开发工具。为此开发一个能改进上述手动测试不足之处、能较为自动执行测 试例的系统变得非常紧迫而且很有意义。 本课题研究目标就是开发一个使用简单,可提供连续执行测试并自动给出测 试结果判定的系统。该测试系统需要满足以下要求: 测试人员不需要面对二进制数据,而是能在协议抽象层次上编写测试用例; 测试用例可以连续自动地执行,不需要测试人员单步执行测试步骤; 系统可自动判定测试结果,不需要测试人员手工判定; 测试用例能较好的组织和管理起来; 测试系统要有一定的通用性,可用于其它协议的测试。 1 2 论文组织 本论文的组织结构为:首先介绍被测协议栈6 l o w p a n 协议栈,根据其特 点和测试环境分析得出测试方案以及对测试系统的要求,然后介绍软件测试和协 议测试的基本理论、方法以及国内外测试理论和测试系统发展的现状,论文的剩 余部分详细介绍测试系统的设计和实现:第4 章介绍测试系统的设计思想和设计 过程中的考虑,第5 章详细介绍测试系统的实现细节、运行状况和存在的问题, 第6 章是关于该系统的总结和展望,最后是致谢和参考文献。 2 华东师范大学硕士论文6 l o w p a n 协议栈介绍 2 1 背景介绍 第2 章6 l o w p a n 协议栈介绍 低速率无线个人区域网是为低价格、低功耗、短距离的无线通信而设计的网 络,以满足人们对工业、农业、车载电子系统、自动管家、医疗等领域应用的需 求。i e e e8 0 2 1 5 4 标准是个人低速无线个人区域网的底层( 物理层和m a c 层) 标准,对于上层协议并没有指定。 i e t f 于2 0 0 4 年1 1 月新成立的一个工作组叫做6 l o w p a n ( 1 p v 6o v g l l o w p o w e rw p a n w 酏l e g sp e r s o n a la r e an e t w o r k ) 工作组 6 1 ,致力于完成i p v 6 数据包 在i e e e8 0 2 1 5 4 上传输的实现,规定6 _ o w p a n 技术在物理层采取i e e e8 0 2 1 5 4 m a c 层以上采取i p v 6 协议栈。目前该小组讨论活跃,已经产生了6 l o w p a n 的 问题草案、解决方法草案等多份文档。根据最新的6 l o w p a n 的草案,i p v 6 运行 于低功率的个人区域网中主要会遇到的问题有哆 i p v 6 报文过大。6 规定最小m t u 为1 2 8 0 字节,而8 0 2 1 5 4 帧能提供 给m a c 上层的报文最多只有8 1 字节长度,显然i p v 6 报文只有通过分片才 能在8 0 2 1 5 4 网络中传输。 头部负载过重。8 0 2 1 5 4 帧能提供给i p v 6 的最大报文长度为8 1 个字节, 而叭6 头部不包含选项报头时长度为4 0 个字节,如果再除去上层协议如 u d p 厂r c p 的报头,留给真正需传输数据的空间所剩无几,传输数据的效率极 其低下,需要引入头部压缩策略来解决头部过重问题。 地址转换。8 0 2 1 5 4 提供两种地址格式:6 4 位地址和1 6 位地址,需要相 应的地址转换机制来实现l l a v 6 地址和8 0 2 1 5 4 地址的转换。 报文泛滥。8 0 2 1 5 4 是一种低速率的网络,口v 6 网络有大量的网络配置 和管理的报文,如果完全按照i p v 6 协议规范,将会造成网络报文泛滥无法处 理的情况,必须调整口v 6 的管理机制,以抑制报文泛滥。 路由算法不适合。已有的各种路由算法会带来头部负载过重和报文泛滥 的问题,因此要支持m e s h 路由必须改进已有的路由算法。 加强安全:无线网络安全尤为重要,如何设计适用于这种低速率网络的 安全策略是一个急需解决的问题。 基于上述问题,6 l o w p a n 小组提出在8 0 2 1 5 4 的m a c 层和i p v 6 层之间新加入 一个协议层适配层,以解决6 l o w p a n 的问题。根据6 l o w p a n 小组的草梨川 适配层需要完成的主要功能有:头部压缩解压缩、报文分片和重组、地址转换机 华东师范大学硕士论文 6 l o w p a n 协议栈介绍 制、路由算法和路由策略、简化叭6 某些功能以减轻8 0 2 1 5 4 网络负载。 方法如下: 为了解决路由及报文分片问题,设计了3 种适配层的报文格式:不分片 的报文格式( 图2 1 ) ,分片报文格式第一片( 图2 2 ) 和其他分片( 图2 3 ) 为: 1 23 01 23 嘎56789012345678901 23 乓5678901 + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一。卜+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ - + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ il f i p r o c t y p e i 互ib i r w i p a y l o a d ( o rh e s hd e l i v e r yh d r i + 一+ 一+ 一+ - + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ - + 一+ 一+ 一+ 一+ 一+ 图2 1 12 3 01234567890123456789012345678901 + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ - + 一+ 一+ il f i p r o c - c 即e x lb lr 吖i d a c a g r a m _ s l z e ia g r 锄c a o l + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一十一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ i 血弘a m - a g ip a dl p a y l o a dl o rn e s hd e l i v e r yh d r i + 一+ 一+ 一+ 一+ 一+ 一+ 一卜+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 图2 2 i23 oi 2 34567890i234567890123 哇5678901 + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ ll f i d a c a c c s m _ o f f s e c i 直i b i r w id a c r m _ e i z e i d g r a m _ c a g l + 一+ 一+ 一+ 一+ 一+ 一+ 一+ - + 一+ 一卜- + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ - + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ + - + id g r a 衄c a g ip a dip a y l o a di o rh e s hd e l i v e r yh d r i + 一+ 一+ 一+ 一十一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 图2 3 其中l f 字段用于区分这3 种报文格式;p r o u t y p e 指示上层是什么协议;m 和b 标志为分别指示是否带有m e s h 和b r o a d c a s t 选项头;d a t a g r a m _ s i z e 、 d a t a g r a m _ o f f s c t 和d a t a g r a m _ t a g 字段为实现分片、重组而设。 为了解决头部过重问题,提出了针对i p v 6 的h c l 压缩格式( 图2 - 4 ) 和 针对u d p 的h cu d p 压缩格式( 图2 5 ) : 0l234567 一+ + _ - p 一一+ - - - + - - - 1 _ + s r c l d s t v t f l l n e x t h d r i h c 2 l - 一扣- - - + - - - - 斗十- - + _ - - + _ 一十 图2 - 4 8 位h c l 压缩头部分别代表i p v 6 报文各字段的压缩情况为:0 - 1 位表示s r c a d d r e s s 的接口和网络标示是否压缩、2 3 位表示d s ta d d r e s s 的接口和网络标识 是否压缩、4 位表示t r a 伍cc l a s s 和f l o wl a b e l 字段是否都为o 、5 6 位表示n e x t 4 华东师范大学硕士论文 6 l o w p a n 协议栈介绍 h e a d e r 字段值、最后一位表示是否有h c 2 压缩格式。所有能被压缩的字段能根 据适配层头部或者报文的其他字段推出来。不能被压缩的字段按照一定的顺序紧 跟在报头后面。 01234567 + 一+ 一 一h 1 一卜一_ 一1 - + 叶卜卜1 一叶一。卜一1 一1 一一十 图2 5 8 位只用到前面3 位分别代表u d p 的端口、目的端口和报文长度字段。不能被 压缩的字段紧跟在报头后面。 为了解决路由问题,引入了m e s h 选项头( 图2 - 6 ) 。由于8 0 2 1 5 4 网络 的无线链路特征,p v 6 在同一个链路上的节点对于8 0 2 1 5 4 来说需要无线链 路的多跳才能到达,引入m e s h 路由正是为了给i p v 6 提供链路支持,实现m 层一跳链路层多条的功能。 1z 3 01 23 哇56789012 3456789012345678901 + 一+ 一+ - 斗一斗一+ 一+ 一+ - + 一+ - 一+ 一斗一+ 一一+ 一+ + 一一+ 一+ 一+ 一+ 一一+ - + 一斗一斗一斗一一斗一一+ 0 if lh o p sl e f cio r i g i n a t o rj u i c i n e s s + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一十一+ 一+ 一+ 一- 卜- + 一+ 一+ 一+ 一+ 一+ + 一+ 一+ - + 一+ 一+ r i n a ld e 5 c i n a c i o n d c l r e s s + 一+ 一+ 一+ 一+ 一+ 一十一+ 一+ 一+ 一+ 一十一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ - + 一+ 图2 6 o f 为分别表示源和目的地址是1 6 位地址还是6 4 位地址。h o p sl e f t 字段用于限 定报文发送的最大路径长度。 另外在路由算法、邻居发现、安全等方面都已经出现了相应草案,提出 将已有算法和协议应用于8 0 2 1 5 4 网络会出现的问题,并提出了一些解决方 案,因为网络实验室目前对这部分还没有深入研究,本文也不作阐述,详细 内容请参见相关草案【刀嘲。 2 2 协议栈特点 网络实验室于2 0 0 5 年l o 月份开始对6 l o w p a n 的问题进行研究,并参与到 i e t f 的6 l o w p a n 小组的讨t 舟,在此基础上开发了一套6 l o w - p a n 协议栈, 并作了相应的实现。协议栈的实现选取了f r e e s c a l e 公司的平台,该平台提供的 华东师范大学硕士论文6 l o w p a n 讲议栈介绍 开发套件包括: 硬件部分:m c l 3 1 9 2 射频芯片+ h c s 0 8 微处理器芯片 软件部分:8 0 2 1 5 4 标准开发库+ 协议栈开发工具。 图2 7 为网络实验室基于上述平台开发的的协议栈结构图: 应用层 t c p u d p i m e a c m p v 6 适配层 物理层链路层 图2 7 物理层和链路层:物理和链路层选取对8 0 2 1 5 4 实现完善的f r e e s c a l e 公司开发 的8 0 2 1 5 4 函数库,f r e e s c a l e 公司提供标准的8 0 2 1 5 4 原语接口,对于上层的开 发完全建立在原语的基础之上。 适配层:适配层是为了解决i p v 6 运行于低速率网络问题而加入的协议层。适配 层从总体上分为两个功能模块,一块是组网功能,另外一块为分片压缩等为适应 i p v 6 而增加的功能。 组网模块:因为8 0 2 1 5 4 只能解决点到点的链路连接问题,不能解决 8 0 2 1 5 4 网络的互连问题,因此适配层必须提供组网功能,同时为了解决 层一跳适配层需要多跳的特性,还提供了适配层路由功能。网络中的节点按 照功能分成3 种角色:p a nc o o r d i n a t o r :网络的发起者,是整个网络的核心节 点,管理整个网络:g o m n ! l o nc o o r d i n a t o r :作为适配层路由转发节点,也具有 端节点的所有功能;e n dd e v i c e :端节点,半功能节点,不能转发数据。各种 角色节点各施其职,最终组成以p a nc o o r d i n a t o r 为根的树状结构,路由算法 也是基于这种网络拓扑结构的树状路由。 其他功能模块:适配层的其他功能模块的设计参考了i e e e6 l o w p a n 小 组的解决方法,使用了他们的报文定义格式,同时改进了其中不合理不可实 现的部分,加入了一些6 l o w p a n 小组中没有深入的细节问题。一 i p 层:m 层认为8 0 2 1 5 4 网络的所有节点都在同一个链路上,8 0 2 1 5 4 网络和 外网通过网关( 通常为适配层的p a nc o o r d i n a t o r ) 交互。根据i p v 6 协议规范要 求,分节点角色( 内部节点和网关节点) 实现不同的功能,协议高度模块化,可 以根据具体应用场合加载不同模块。内部节点由于处理能力低,必须对i p v 6 协 议做相当程度的精简,只能保留最基本的功能,而网关节点处理能力强可实现全 功能。对内部节点的i p v 6 的裁剪原则为保证节点可以和其他全功能i p v 6 节点正 常通讯的同时裁剪掉不必要的报文头部和协议行为。 t c p u d p 层:对于传输层的这两个协议,网关节点实现全功能,内部节点做了 6 华东师范大学硕士论文 6 l o w p a n 协议栈介绍 精心的裁剪:去除了t c p 中复杂的拥塞控制机制,简化了t c p 建立连接的过程, 因为节点资源紧张,t c p 中的缓冲机制也被裁减掉了。u d p 由于协议本身很简 单不必大幅度裁减,但是在一定的应用场合下这两个传输层协议不一定都必须出 现,通常只保留一个。 应用层:应用层需要根据具体的应用环境来设计,本协议目前没有开发特定的应 用层协议,本协议站提供了应用层开发接口。 2 3 测试方案 由于网络实验室开发的协议栈包括从适配层到应用层的协议,开发平台为 f r e e s c a l e 提供的开发套件。针对这种条件,我们提出以下的测试方案。 测试环境如图2 8 与同关相同的硬件 t a r g e t t e s t e r 图2 - 8 左边是被测实现,右边是测试节点。右边测试节点结构较为复杂,它由 p c + r f + m c i + a r m 组成,测试需要在无线空中接1 :3 上收发数据,因此r f 和 h c s 0 8 是测试节点必不可少的组成部分,考虑到h c s 0 8 单片机只提供串口,而 网络实验室组建的8 0 2 1 5 4 网络的网关节点是一个i 【f + h c s 0 8 + a r m 组成的节 点,节点一端接入无线网络,另一端接入以太网,因此测试节点利用网关节点相 同的硬件结构,这样p c 面向的是以太网而不是串口,另外网络实验室曾经在 a 圈上开发过一套t c p ,口协议栈,可以实现p c 和a r m 之间建立在s o c k e t 上的通讯,因此采用这样的测试方案可使得测试系统编程较为简单而通用。 华东师范大学硕士论文 6 l o w p a n 协议栈介绍 测试用例开发:测试用例根据协议的功能由人工开发。由于协议本身基 于自然语言描述,加上实验室缺乏相关工具和经验,测试用例只能由人工手 动产生。测试用例根据节点角色、协议功能划分不同的测试组,测试人员经 过多次讨论修改,最终确定了适配层近1 0 0 个测试例。 测试用例地执行:测试用例开发完成以后,可开始执行测试。测试人员 主要在p c 机上操作,通过本论文描述的测试系统进行测试,因为协议较为 底层,很多协议行为并不能使用系统来完成测试,这部分测试用例需要测试 人员手工完成。 本协议栈的协议采用分层测试法,即先测试适配层,然后m 层,最后到应用层 来完成整个协议栈的测试。原则上认为通过测试的协议层协议行为正确,可为上 层协议测试提供服务。 8 华东师范大学硕士学位论文 一致性测试理论及月i 试系统 第3 章一致性测试理论及测试系统 3 1 软件测试理论 软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性 能是否符合开发之前所提出的一些要求。软件测试的目的,第一是确认软件的质 量,其一方面是确认软件做了你所期望的事情( d ot h er i g h tt h i n g ) ,另一方面是 确认软件以正确的方式来傲了这个事件( d oi tf i g h t ) 。第二是提供信息,比如提 供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。第三软件测试 不仅是在测试软件产品的本身,而且还包括软件开发的过程。如果一个软件产品 开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷的。因此 软件测试的第三个目的是保证整个软件开发过程是高质量的 软件测试从测试侧重点来说,可以分为功能测试和性能测试,功能测试是测 试软件是否符合软件需求,而性能测试则是测试软件的性能例如吞吐量等。从范 围上来说分为:单元测试( 在最低的功能参数上验证程序的正确性) 、功能测试 ( 验证模块的功能) 、集成测试( 验证几个互相有依赖关系的模块的功能) 、场景 测试( 验证几个模块是否能够完成一个用户场景) 、系统测试( 对于整个系统功 能的测试) 和外部软件测试人员( a j 【p h a b e t a 测试员) ( 在实际用户环境中对软 件进行全面的测试) 。 软件测试的测试方法包括白盒测试与黑盒测试。白盒测试是针对程序代码进 行正确性检验的测试工作,在测试时能够了解被测对象的结构,可以查阅被测代 码内容。它需要知道程序内部的设计结构及具体的代码实现,并以此为基础来设 计测试用例,它注重于程序控制结构。白盒测试套要求测试例要保证程序的所有 语句至少执行一次而且检查了所有的逻辑条件。白盒测试套优点是帮助软件测试 人员增大代码的覆盖率,提高代码的质量。发现代码中隐藏的问题。缺点有:1 ) 程序运行会有很多不同的路径,不可能测试所有的运行路径;2 ) 测试基于代码, 只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功 能需求;3 ) 系统庞大时,测试开销会非常大。黑盒测试独立于程序代码,从用 户的角度,将被测系统看成一个黑盒,从外界取得输入,然后观察输出。黑盒测 试的整个测试基于需求文档,看是否能满足需求文档中的所有要求。黑盒测试要 求测试者在测试时不能使用与被测系统内部结构相关的知识或经验,它适用于对 系统的功能进行测试。黑盒测试的优点有:1 ) 比较简单,不需要了解程序内部 的代码及实现;2 ) 与软件的内部实现无关;3 ) 从用户角度出发,能很容易的知 9 华东师范大学硕士学位论文一致性测试理论及测试系统 道用户会用到哪些功能,会遇到哪些问题:4 ) 基于软件开发文档,所以也能知 道软件实现了文档中的哪些功能:5 ) 在做软件自动化测试时较为方便。黑盒测 试的缺点有:不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的 3 0 。由于白盒测试的复杂性和黑盒测试的覆盖率低,人们提出了另外一种测试 技术灰盒测试,灰盒测试是基于程序运行时刻的外部表现同时又结合程序内部 逻辑结构来设计用例,是将白盒测试和黑盒测试结合起来形成的一种测试方法。 灰盒测试结合了白盒和黑盒的有优点,即能进行基于需求的覆盖测试又能进行基 于程序路径覆盖的测试,提高了覆盖率。但是灰盒测试对测试人员要求较高,同 时需要的测试时间也比黑盒测试多。 软件测试应该贯穿整个软件定义与开发期间。因此需求分析、概要设计、详 细设计以及程序编码等各阶段所得到的文档,包括需求规格说明、概要设计规格 说明、详细设计规格说明以及源程序,都应该是软件测试的对象。 近年来软件测试已经越来越多的受到重视,软件测试理论研究领域活跃起来 出现了很多讨论软件测试的论坛和会议,很多公司从事软件测试工具的开发,比 较有名的测试工具有m e r c u r y 、r a t i o n a l 、t e l e l o g i c 。在一些大型软件公司软件 测试在软件开发过程中非常重视,投入大量的人员参与测试工作,通常测试人员 和开发人员比例达到l :l 以上。 3 2 协议测试介绍 计算机之间通过共同遵守一定的规则实现信息交互和通讯,网络协议就是这 些规范的集合。为了实现不同厂商之间的设备的通讯,需要制定一些通讯标准例 如i s o 模型,但是由于厂商理解的差异以及自然语言描述的不准确性、设备规 范的实现不一定能完全符合协议要求,因此就需要测试机制来检测协议实现是否 符合协议规范,协议测试就检测协议实现有效性的手段。 计算机网络或通讯系统的测试通常包括以下几个方面:一致性测试、性能测 试、互操作性测试和健壮性测试。一致性测试旨在检测被测协议实现与协议规范 的符合程度;性能测试测试的是系统的性能指标例如数据传输速率、系统吞吐量, 数据延时等;互操作测试则是测试同一协议的不同版本协议实现之间相互通讯互 操作的能力:健壮性测试考察系统在恶劣环境下的运行能力。近年来协议测试已 经越来越受到人们的关注,主要的研究机构和取得的主要成果有: u n h i o l 0 1 ( mu n i v e r s i t yo fn e wh a m p s h i r e i n t e r o p e r a b i l i t y l a b o r a t o r y ) 从1 9 8 8 年开始建立,致力于网络和通讯产品的兼容性、互操作 性和一致性测试,目前在北美的网路设备商中拥有非常广大的会员,并在业 界拥有卓越的名声与影响力,测试项目有:m v 4 ,p v 6 ,v o i p , w i r e l e s s 1 0 华东师范大学硕士学位论文 致性测试理论及测试系统 l a n ,1 0 b a s e - te t h e m e t , c - i g a b i te t h e r n e t 等 e t s i 、i s o 、兀u - t 等:致力于测试标准开发制定,例如一致性测试标准 i s o i e c9 6 4 6 系列、n u - t x 2 9 x 系列以及t t c n 等【1 0 l 堋。 t e s t e o m d g :t e s t c o m 是网络协议测试的权威会议,该会议每年在不定期 举行。2 0 0 6 年5 月在纽约第1 8 会议,该次会议征文的主题为可存活测试即 系统是否完整,安全,性能是否高,确保系统在受到网络的入侵时依然可以 正常工作。该次会议涉及的主要领域有:测试的理论和实践,测试类别,工 业测试经验,测试的系统级别等。 日本t a h 项目 2 0 l :从1 9 9 8 年开始从事i p v 6 一致性测试,开发了一套 测试平台和v 6 测试套,并提供开源代码,目前该项目组开始提供其他协议 的测试套和测试平台。 清华大学的网络实验室( n e t l a b ) 【2 ”:是国内在协议测试方面走在前列的 机构,开发一致性测试集成测试系统( p i t s ) ,并完成了t c p , u d p u p , p p p , 1 c m p , s m t p 等t c p i p 协议族的多个协议的测试套,同时还开发出了i t 琅 o s p f 和b g p 等路由协议的测试套。 内蒙古大学计算机系:近年来也致力于协议测试方面的研究,主要侧重 于协议的形式化验证方面,发表多篇相关论文。 中国国防大学:从事高端路由器的测试。 中国科学院计算技术研究所:i p v 6 相关测试,开发测试用例和测试系统, 取得了一定的成果。 从上述国内外测试领域研究现状的描述中可以看到,协议测试已受到了广泛 的重视,主要的研究方向有:测试套产生方面( 形式化描述,工具产生) 、测试 标准化制定、测试系统设计和实现方面( t a m p i t s ) 3 3 一致性测试 一致性测试是协议测试的一个重要方面,是性能测试、互操作性测试和健壮 性测试的基础,是协议开发人员首要关心的问题,它测试协议的实现是否符合协 议规范。一致性测试是一种黑盒测试,他不涉及协议的内部实现,只是从外面的 行为来判断协议的实现是否符合要求。 3 3 1 一致性测试的理论研究概况 从8 0 年代开始,i t u - t 开始制定一致性测试方面的标准规范,制定的相关 规范为x 2 9 0 到x 2 9 6 ,这些规范定义了一致性测试的基本概念、测试的基本模 华东师范大学硕士学位论文 一致性测试理论及漪试系统 型和方法,并且定义了标准测试描述方法t t c n ( t r e ea n dt a b u l a rc o m b i n e d n o t a t i o n ) 该描述采用数和表格相结合的方式来描述测试用例。与此同时,i s o 与i e c 也提出了与r r u - t 类似的一套协议一致性测试国际标准i s o9 6 4 6 系列。 这些标准的产生,是一致性测试领域的里程碑,它极大的促进了一致性测试的发 展,它为协议的一致性测试提供了基本方法和框架,为测试集制定了设计步骤和 描述方法,并为测试系统的实现提供了指导。目前测试描述语言经过不断的改进 和完善已经达到第三版- t r c n - 3 。t t c n 3 的描述能力较之前版本大大增强,他 不但可以用于一致性测试还可以用于多种类型的测试,本文的后面将会对其作详 细的介绍。 3 3 2 一致性测试的方法和模型 根r r u tx 2 9 0 一致性测试的基本模型为( 图3 - 1 ) : 图3 - 1 i

温馨提示

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

评论

0/150

提交评论