(通信与信息系统专业论文)bacnet协议一致性测试研究与实现.pdf_第1页
(通信与信息系统专业论文)bacnet协议一致性测试研究与实现.pdf_第2页
(通信与信息系统专业论文)bacnet协议一致性测试研究与实现.pdf_第3页
(通信与信息系统专业论文)bacnet协议一致性测试研究与实现.pdf_第4页
(通信与信息系统专业论文)bacnet协议一致性测试研究与实现.pdf_第5页
已阅读5页,还剩64页未读 继续免费阅读

(通信与信息系统专业论文)bacnet协议一致性测试研究与实现.pdf.pdf 免费下载

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

文档简介

华中科技大学硕士学位论文 摘要 i 随着计算机通信技术的飞速发展,计算机弼络在人类的生活中扮演着越来越重 要的角色。网络协议是网络实现信息共享和交换的基础,因此,协议测试一直是网 络协议工程学中研究的热点。b a c n e t 协议是楼宇自动控制网络中i s o 的国际标准 ( 1 s o1 6 4 8 4 5 ) ,随着市场上b a c n e t 协议产品数量的日益增长,对b a c n e t 协议进 行一致性测试的需求也越来越迫切。少 本文首先对网络协议测试理论的发展和现状进行了介绍,具体分析了协议测试 的分类和研究范围,一致性测试方法以及一致性测试国际标准等内容。在深入研究 b a c n e t 协议以及b a c n e t 协议一致性测试规范的基础上,探讨了b a c n e t 协议一致 性测试的特点、方法和测试场景。 测试集描述方法是对抽象测试过程的具体化,也是测试系统进行自动测试的基 础。本文提出了一种脚本形式的b a c n c t 协议一致性测试集描述方法一一b t s s c r i p t 。 并对b t s s c r i p t 的语法规则进行了定义。该描述方法能够以简洁、通用和结构化的 方式表达协议测试所需要的测试过程。 在此基础上,本文参考国际协议测试规范t r c n 3 ,提出了b a c n e t 协议测试系 统b t s 的框架模型,并对系统各模块的功能以及相互关系进行了详细的阐述。 本文介绍了脚本解析、执行引擎的设计和实现,探讨了基于e p i c s 的自动测试 机制,并对测试支持数据库的实现进行了阐述。 最后,本文根据b t s 系统的应用情况,分析了系统的不足之处,提出改进方案, 并明确了进一步的研究工作。所有这些,为b a c n e t 协议一致性测试理论研究和测试 系统的开发提供了有益的参考。 关键词:一致性测试,b a c n c t 协议,测试集描述,测试系统迪k 华中科技大学硕士学位论文 a b s t r a c t w i t ht h e r a p i dd e v e l o p m e n t o f c o m p u t e rc o m m u n i c a t i n gt e c h n o l o g y , c o m p u t e r n e t w o r k s 盯e p l a y i n g m o r ea n dm o r e i m p o r t a n tr o l ei nh u m a n sl i f e n e t w o r kp r o t o c o l s 盯e t h ef o u n d a t i o no fi n f o r m a t i o ns h a r i n ga n de x c h a n g i n go v e rc o m p u t e rn e t w o r k s t h e r e f o r e p r o t o c o lt e s t i n gi sah o ta r e ao f r e s e a r c hi nn e t w o r kp r o t o c o le n g i n e e r i n g b a c n e ti st h e i n t e r n a t i o n a ls t a n d a r dc o m m u n i c a t i o np r o t o c o li nb u i l d i n ga u t o m a t i o nc e n t r e ln e t w o r k s b e c a u s et h eq u a n t i t yo fb a c n c tp r o d u c t si nm a r k e tg r o w sv e r yf a s t ,i ti sn e c e s s a r yt os e e k a ne f f e c t i v em e t h o dt ot e s tb a c n e t p r o d u c t s f i r s t t h e e v o l u t i o na n db a s i c c o n c e p t s o fn e t w o r kp r o t o c o l t e s t i n gt h e o r y a r e r e v i e w e di nt h i sa r t i c l e b a s e do nt h ed e e pi n s p e c t i o no fb a c n e ts t a n d a r da n db a c n c t c o n f o r m a n c et e s t i n gp r o f i l e ,t h ef e a t u r e s ,m e t h o d sa n ds c e n e so fb a c n e tc o n f o r m a n c e t e s t i n ga r ed i s c u s s e d a s c r i p t b a s e dt e s td e s c r i p t i o nm e t h o d o fb a c n e tc o n f o r m a n c et e s t i n g :b t s - s c r i p ti s p r o p o s e d ,a n d t h ed e f i n i t i o n so fb t s s c r i p ts y n t a xa r ep r e s e n t e d b a s e do nt h er e s e a r c ha b o v e t h ea r c h i t e c t u r eo fb a c n e tt e s ts y s t e mi si i l u s t r a t e d t h ee n t i t i e sa n dt h em o d u l e si nb t sa r ea l s od i s c u s s e di nd e t a i l s n e x t ,t h ed e s i g na n di m p l e m e n t a t i o no fb t s - s c d p te x e c u t i n ge n g i n ea r ed e s c r i b e d w h a t ,sm o r e ,a na u t o m a t i ct e s tm e c h a n i s mb a s e do ue p i c sa n di t si m p l e m e n t a t i o na l e d i s c u s s e d f i n a l l y , t h ea p p l i c a t i o no f t h eb t si si n t r o d u c e da n da ne x a m p l et e s tp r o c e s so f ar e a l d e v i c ei s g i v e n ,w h i c hp r o v e st h ev a l i d a t i o no ft h es c r i p t b a s e dt e s td e s c r i p t i o n m e t h o d a n dt h es u c c e s so ft h ew h o l es y s t e m f u r t h e rm o r e , s o m es h o r t a g e s a r ep o i n t e do u ta n dt h e f u t u r er e s e a r c hi ss p e c i f i e d a l lo ft h ea b o v ec a r lb eb e n e f i c i a lr e f e r e n c e sf o rt h er e s e a r c h o fb a c n e tc o n f o r m a n c e t e s t i n gt h e o r ya n d t h ed e v e l o p m e n to ft e s t i n gt o o l s k e y w o r d :c o n f o r m a n c e t e s t i n g ,b a c n e t ,t e s t d e s c r i p t i o n ,t e s ts y s t e m i m p l e m e n t a t i o n 蔓 华中科技大学硕士学位论文 # = = = = t = = ;目目= t = 4 _ = = = = = = = = 。= = ! 自: 1 绪论 b a c n e t 坍议是楼宇自动控制网络中的标准协议,该协议于2 0 0 3 年1 月2 0 日被 1 s o 正式采纳为国际标准( i s o1 6 4 8 4 5 ) 。随着b a c n e t 被接纳为i s o 国际标准,市 场对b a c n e t 设备的需求也将空前增长。各生产厂商都将面临的一个问题,即:如何 保证自己生产的b a c n e t 产品是严格符合跚议标准,并 1 可以与其他厂商的设备兀联 互通。圆此,我们迫切需要一种有效的办法对叭议的实现进行检验,这种方法便是 “协议测试”。 1 1 协议测试的基本概念 随着计算机通信技术的飞速发展,计算机网络在人类的生活中扮演着越来越蕈 要的角色,计算机网络使分布的系统实现了信息的共享。为了使得分布的计算机能 够正确的交换信息,它们之问必须遵守一定的规则。网络协议就是这种规则的集合。 可以蜕,计算机网络协议是网络的灵魂,它是网络建立和应用的基础。 但是,仅仅有标准的协议并不能完全保证通信的成功。在实际应用中,对同一 个网络协议,会幽不同的技术人员实现,而这螳技术人员通常不是协议的制定者。 冈此这蝗实现都是基于丌发人员自己对协议的理解。网络协议通常采用非形式化 的文本方式描述,即一种基于自然语言的攒述。由于自然语言的不严密性,对协议 的理解不同的人必定存在差异。这种差异,就会导致协议实现方法的不同,甚至是 实现卜的铺误。所以,必须有一种有效的方法,束榆聆对协议的实现程度和实现的 j 下确性,这就是:“协议测试”。 由于协议测试在计算机网络发展巾的重要性,它直是计算机网络工程学研究 的一个热点。 1 1 1 协议测试的分类 网络协议测试一般可以分为四种【2 】: 1 ) 一致性测试( c o n f o r m a n c et e s t i n g ) :榆测协议实现系统与协议的符合稗度; 2 ) 性能测试( p e r f o r m a n c et e s t i n g ) :检测协议实现系统的性能指标( 如数据传 输率、连接时蜘、执行速度、和吞吐量等) ; 华中科技大学硕士学位论文 3 ) 互操作性测试( i n t e r o p e r a b i l i t y f e s t i n g ) :检测删协议的小刚实现版本之 u 互通能力和互连操作能力; 4 ) 鲁棒性测试( r o b u s t n e s s t e s t i n g ) :检测协议实现系统在各种恶劣环境下运行 的能力。 其中。一致性测试是其他三种测试的基础。 1 2 协议测试理论的研究内容及现状 协议测试理论包容了协议测试的整个过程,其主要研究内容可以概括为测试组 织、测试方法、测试生成、测试集描述、测试管理、测试执行和判决、测试结果分 析等方丽f 。 测试组织主要是针对整个协议测试过程进行框架性的研究,明确测试过程中各 个阶段所应完成的功能:测试方法则是研究在被测系统提供不同的可访问程度时, 组成测试系统的多个测试器相对丁被测系统的配胃方法;测试生成主要关注如何从 协议标准的描述中获得进行协议测试所需要的测试集;测试集描述的目的是寻找一 种合适的语言或公式,从而能以简洁,通j i j 和结构化的方式表达协议测试所需受的 测试例:测试管理的研究对象是如何管理和协调测试系统中的各个组成部分,以便 成功地完成测试;测试执行和判决是协议测试过程中关键阶段,如何解释测试例的 涵义以及如何做出测试判决是它的研究内容,同时也是构造测试系统的基础;测试 结果分析是协议测试过程的最后一个阶段研究如何从测试结果巾生成测试报告并 得出对被测协议实现的结论。 在本文1 1 1 中提到的四种协议测试巾,目前圃际学术界的研究主要集中于第一 种,即致性测试。它也是目前唯一能够给出理论框架的一种协议测试。9 0 年代, 国际标准化组织i s o 专门制定了套国际标准一- - i s 0 9 6 4 6 :一致性测试方法和框 架1 4 1 。它描述了一个通用的方法论,定义了一套用以测试某种声称符合开放系统互 联( o s l ) 协议产品的理论框架。 由于协议一致性测试技术的复杂性和庞大开销。进行大量的协议一致性测试活 动一般是协议实现者和协议用户力所不能及的事情。通常由国家或网络管理部门支 持的测试中心进行这种独立于生产者和用户的“第三方测试”。近些年来,许多发达 国家都投入了大量的人力、物力进行这方面的研究并取得了最著的成绩,如美国 n i s t 、加拿大的u b c 、德围的g m d 和清华大学的计算机网络与协议测试实验帘等。 目前,对协议一致性测试主要集巾在i n t e r n e t 协议族上,如t c p i p 协议族、路山协 议等。 华中科技大学硕士学位论文 1 2 协议一致性测试概论 协议一致性测试不仅是网络协议测试理论研究的热点,同时也是在一i - q k - e 产t , 保证产品质量的一个重要环节。所谓一致性,指的是某实际系统与其他实际系统的 通信过程符合所用协议的国际标准i5 l 。协议一致性测试,是指针对一个网络协议的实 现,测试者依据协议原文本,通过一定的测试例( t e s tc a s e ) 对其进行测试,以检验 其实现是否与协议文本所描述的功能一致i “。 原则一卜,一致性测试的目的是:被测实现( i m p l e m e n t a t i o nu n d e rt e s t ,f 文缩 写为i u t ) 与相关协议国际标准巾的规范丰1 1 致。实际的限制使人们不能进行穷举测 试,经济上的考虑也会限制人们去做更进一一步的测试。冈此,一致性测试分为p q 种 类型:基本互连测试、能力测试、行为测试和定向诊断测试。 协议一致性测试的过程主要有五个步骤: 第一步:i u t 的协议一致性声明( p r o t o c o li m p l e m e n t a t i o nc o n f o r m a n c es t a t e m e n t , 下文缩写为p i c s ) 分析。 第二步;测试选择,p i c 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 晒r m a t 如n s t a t e m e n t ,协议实现额外声明) 被用来从一致性测试集中选取适当的测试例,并使 朋p i x i t 提供的信息来曩化这种测试例,从a t s ( a b s t r a c tt e ns u i t e ,抽象测试集) 生成e t s ( e x e c u t a b l et e s ts u i t e ,可执行测试集) ,最终产牛参数化的可执行测试集。 第三步:测试执行,它南三个方而组成:幕本互连测试( 可选) 、能力测试和行 为测试。如果执行基本互连测试,则可在更高级的全面测试之前检查 h 一些非一致 性情况。能力测试被用来检查p i c s 的有效性和1 u t 应有的性能。行为测试在,“泛的 测试例下检查i u t 的行为,它既包括简单的情况又包括复杂的情况;在与1 u t 的通 信中既包含正确的也包含锚误的行为,它不能证明一个i u t 在所有通信情形下都是 动态一致的,但能证明i u t 在测试例所代表的通信实例下是动态一致的。 第四步:结果分析。它可以插入测试例巾,也可在测试执行步骤结束后考虑。 其作用既是对每个测试例测试效果的分析,也是对测试例所观察的通信行为有效性 的分析。 第五步:最终一致性考查,它是对行为测试结果和能力测试结果的综合,从中 可以看出这些结果与p i e s 表述的能力是否一致,从而获得i u t 关于标准要求的一致 性结果。这些结果将被记录于一致性测试报告巾。 3 华中科技大学硕士学位论文 1 3 协议一致性测试方法 l :艾提到,i s o 为协议致性测试涌动制定j 致性测试办法和抠架, d r a y n e r 在文献f 7 l 中对这个标准进行j ,系统的介绍。在协议测试过程中,一般只对 被i u t 的外部可观察行为进行测试,因此它通常被理解为种功能性的黑盒测试i ”。 所谓黑盒测试,是指测试者并不关心i u t 的内部实现,而只关注其外部行为。测试 者首先对i u t 发送某种外部激励,通过观察i u t 对激励的响应,得到测试判决。黑 盒测试模型如图1 1 所示: 罔1 1 :黑盒测试模型 根据对i u t 外部行为的可观察程度和测试过程中观察控制点( p o i n to fc o n t r o l a n do b s e r v a t i o n ,下文缩写为p c o ) 相对f :i u t 的设鬣位霞,文献【4 t 将测试方法 分为本地测试法,分布式测试法,胁调式测试法年远程测试法9 1 1 1 种。 在o s i 开放系统互连参考模型中,第n 层协议实体分别使用n 层的抽象服务原 语和n 1 层的抽象服务原浯在n 层和n 1 层的服务访问点( s e r v i c e a c c e s sp o i n t ,缩 写为s a p ) 实现上下层的通信。在致性测试系统巾,控制n 层s a p 的p c o 称为 “上测试器”,控制n 1 层s a p 的p c o 称为“下测试器”1 9 1 。 l 测试 i 协调 i 过程 i 本地测试法 f ! 竺r 拿u t 一p s 测试器 3 舭l 服务提供者 图1 2 抽象测试方法( 1 ) 分布式测试法 4 华中科技大学硕士学位论文 协调式测试法远程测试法 图1 3 :抽象测试方法( 2 ) f 面,简要介绍这四种抽象测试办法: 1 ) 本地测试法 本地测试法是协议一致性测试巾的最承耍的幕本方法。从可提供的测试能力来 讲,最强的是本地测试法,它有完拿的错误检j 爨i 能力1 1 0 l 。但是,由于网络产品的制 造厂商一般不会提供产品内部的协议层间接f = f ,所以实际测试活动很少使用本地测 试法。 2 、分布式测试方法 在分布式测试方法中,下测试器和i u t 处于两个不同的系统之中,二者之间通 过提供( n 1 ) 层服务的底层协议实现连接。从图1 2 中可以很明显地看出,测试器 是i u t 的对等实体。上测试器与i u t 位j :同个系统内,它要求i u t 有暴露的上 边界访阀接口。和本地测试法相比较,分布式测试法有以。f 几点f i 同:必须修改基 于本地测试法所设计的抽象测试集,以便包含下测试器所使用到的底层抽象服务原 语,而这些抽象服务原语和本地测试法巾所j l j f 到的是互补的;卜测试器和i u t 在物 理上是分离的,因此对同一测试事件的观察在时问上会产生差异;由于下测试器和 i u t 的通信是通过( n 1 ) 层服务实现的,因此存在测试数据丢失、失序和出错的可 能性;由于上下测试器分布在不同的系统,二者之间的同步和控制( 即测试协调过 程) 比本地测试法要困难得多。 3 1 协调测试法 与分布式测试法相比,协调测试法生要有以下两点区别:i u t 的上边界不一定要 有暴露的访问接口;采用标准化的测试管理协议( t m p ,t e s tm a n a g e m c n tp r o t o c 0 1 ) 和测试管理挑 义的数据啦元( t m p d u s ) 进行 j 动的测试杼理和必调。般采用下测 华中科技大学硕士学位论文 = = 富毒= 寡= 号。罩= 芝= 尊穹胄2 篇墨鲁= 掌毫宣= 蓦= 薯= 高邕鲁= 暑= = = 2 一! = ! 一: 试器作为主控方,+ i :测试器作为被控方的设计方法以减少上测试器的实现工作 藿。 肌调测试法是最复杂的。利t 抽象测试力法,它要求在上卜测试器之间存在岛度 的测试协调,并在上下测试器中对所收集和观察到的信息进行报告。 4 ) 远程测试法 远程测试法的主要特点是并不要求能访问i u t 的l :边界也不要求鼹式的测试 协调过程( 如果有的话,也是依靠人 :柬协调) 。这种方法依赖于被测协议来实现i u t 和下测试器阿的同步。使用远程测试滋的一个假设是u t 的状态可由下测试器通过 ( n 1 ) 层服务与之交换n 层p d u 柬确定。测试判决则是 i | 基丁f 测试器对i u t 提 供的激励以及下测试器所观察到的i u t 的响应作出的。远程测试法在低层协议如 x 2 5 协议的一致性测试中应用较多。 以上的这几种抽象测试方法是最摹本的,适合丁单层协议的测试方法。它们还 有许多变种,如渡船法( f e r r y c l i p ) u l l 等等。在实际测试工作中,分布式测试法与 远程测试法较为常用。 t 4 协议一致性测试的标准化 ,4 1一致性测试方法论和框架( c t m f ) 协议4 致性测试的国际标准的建立i u 以追溯到八i 年代早期,欧洲的许多研究 机构开始在建立标准化的协议一致性测试活动方面进行合作,其目的是制定个在 o s i 框架内进行协议一致性测试的指导标准。最初的参与者包括法国巴黎的a d i 、 德国d a r m s t a d t 的g m d 和英国的国家物理实验室n p l 。这些研究机构在这之| ;i 曾 分别关注于一致性测试的不同方面的研究。例如:a d ! 设计并实现了台x 2 5 协 议测试仪:g m d 开发了一种针对i s o 会话层协议进行被动监控和错误检测的分析 工具:而n p l 则实现了一个用来对网络服务进行测试的测试系统。美国的国家标准 和技术局n i s t 由于成功地研制了1 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 中被采用。 2 0 世纪9 0 年代i s o 为协议测试专门制定了套国际标准- - i s 0 9 6 4 6 :致性测 试方法和框架( c o n f o r m a n c et e s tm e t h o d o l o g ya n df r a m e w o r k 缩写为c t m f ) 。它 6 华中科技大学硕士学位论文 # = j = = j 目目l l i e _ l _ 自e - _ 目t 口= = 1 = 自= # ! j = = = = = 。# = $ = = = i _ j = # = = 定义了套用以测试某种声称符合o s l 协议的产晶的理论框架。这个标准是引1 对使 用自然语亩描述的协议的测试而制定的,i 亥力法论包括七个部分,它们分j ; j 足: i s 0 i e c9 6 4 6 1 :攮本原理 i s o 1 e c9 6 4 6 2 :抽象测试集捕述 i s o f l e c9 6 4 6 3 :树表结合表示法t t c n i s o i e c9 6 4 6 4 :测试实现 i s o i e c9 6 4 6 5 :一致性判定过程对实验摩和客户的要求和建议 i s o i e c9 6 4 6 - 6 :协议轮廓测试规范 i s o i e c9 6 4 6 - 7 :对实现一致性声明的要求和建议 1 4 2t t c n 3 t t c n ( t e s t i n ga n dt e s tc o n t r o ln o t a t i o n ) 是一种标准化测试规范语言。t t c n 最初的含义是树表结合表示方法( t r e ea n dt a b u l a rc o m b i n e dn o t a t i o n ) ,它作为国际 标准1 s 0 9 6 4 6 的第三部分发布。经过l o 多年的发展,t t c n 语言得到了不断的改进。 其第3 版本,即t t c n - 3 规范的最新版本m 囤际电信联髓( i r r u t ) 和欧洲电信标准 协会( e t s i ) 于2 0 0 3 年2 月币式发布。 一致性测试方法论与框架( c t m f ) 和t t c n 3 根据o s l 的分层方案来进行系统的 一致性测试。c t m f 的原则和t r c n 也能成功地用在其它的黑盒测试中,如i s d n 服务测试和互操作性测试。但是,测试的需求在不断地改变,新的软件体系结构( 如 c o r b a 、d c e 、t n a 、o d p ) 以及对时间要求较高的应用( 如多媒体、视频会议等 系统) 的测试需要有新的测试概念、新的测试体系结构和功能更强大的测试描述语 言。t t c n 3 就是在这魑需求下产f 卜的它针对更广泛的用户而设i 十,其语法和传统 的编程语言相类似,相当于是带有专用的测试扩展的通用编程语弃。冈此,仃c n 3 比通用的编程语青更关注于对测试判断的处理、对1 u t 的反馈和期颦接收到的反馈 信息的题配机制、对计时器的处理、测试进程的分布方式和信息编码的能力等f 9 l 。 t t c n 。3 在语言上进行了简化,但是在功能二却得到增强,并且适用于更多的应用场 合,比如a p i 测试,互操作性测试,实时系统测试等等l l m 。 t t c n 3 规范包括六个部分,分别是:核心语言。表格表示格式图形表示格式, 操作语义,运行期接口和控制接口。 本文中提出的b a c n e t 测试集捕述方法和b t s 测试系统的设计均参考借箍了 t 1 n 3 标准。 华中科技大学硕士学位论文 4 5 课题研究背景 自1 9 8 4 年1 月第幢智能建筑诞生丁美闻以来,智能建筑在世界符田得到了迅 速的发展。智能建筑是在建筑物内外信息交换和共亭的基础上,对信息进行综合分 析推理和决策等处理来实现其智能的。通常个智能建筑系统以建筑物为甲台的基 础,包括楼字设备自挖系统b a ( b u i l d i n g a u t o m a t i o n ) 、通信系统c a ( c o m m u n i c a t i o n a u t o m a t i o n ) 、办公自动化系统o a ( o f f i c ea u t o m a t i o n ) 、安防系统s a ( s e c u r i t y a u t o m a t i o n ) 等,并由此组成一个综合计算机管理系统,以实现信息、资源和任务的 共享和个性化”。简单地讲智能建筑就是信息网络与控制网络的系统集成1 1 4 1 。虽然 互联网为代表的信息网络的飞速发展为这集成奠定了良好的基础,但控制网络的 发展及其标准化却一直不能尽如人意。 b a c n e t 协议的f 现解决了这个问题,b a c n e t 胁议提供了种 放性的规范和 标准,使智能建筑的自动控制设备和系统能够实现信息的交换和共享。从而达到互 联和互操作的目的,为智能建筑实现智能提供了基础。 b a c n e t 协议是ad a t ac o m m u n i c a t i o np r o t o c o lf o r b u i l d i n ga u t o m a t i o n a n d c o n t r o l n e t w o r k s 的缩写。它是l = i 美困供热、制冷与宅调1 :程师学会( a s h a r e ) 组 织制定的用于楼字设备自动化和控制的网络协议。2 0 0 3 年1 月2 0 只它被i s oi f 式采 纳为国际标准( i s o1 6 4 8 4 5 ) 。目前,全世界已有近8 2 个国家在进行有关b a c n e t 方面的研发工作,和近5 0 0 家的b a c n e t 产品供应商1 1 6 1 。 随着b a c n e t 被接纳为1 s o 囤际标准,市场对b a c n e t 嫒备的需求也将空前j 竹长。 各生产厂商都必须保证自己生产的b a c n e t 产品是严格符合协议标准的,并且可以与 其他厂商的设备互联互通。为了解决这个问题a s h a r ef j f 后提山了b a c n e t4 致 性级别l ,b a c n e t 互操作性组成模块( b i b b s ,b a c n e ti n t e r o p e r a b i l i t yb u i l d i n g b l o c k s ) f i l j 等概念。目前全世界对b a c n e t 协议产品的测试工具仅有b t l ( b a c n e t t e s t i n gl a b ) 提供的v t s ( v i s u a l t e s ts h e l lf o rb a c n e t ) ”卅。 本课题是在盛华智能建筑中心的资助卜完成的。盛华智能建筑中心由南京消防 集团与华中科技大学合作建立,致力于b a c n e t 自动控制设备开发和智能建筑理论研 究。本中心现正在进行b a c n e t 网络工作站,b a c n e t 路由器的研发工作。本中心成 立的“b 1 s b a c n e t t e s t s y s t e m ”开发小组,主要研究对b a c n e t 协议产品的测试理 论和开发b a c n e t 测试工具。 4 6 本文组织结构 本文以b a c n e t 协议一致性测试研究为主题,提出了一种b a c n e t 卧议一致性测 l 华中科技大学硕士学位论文 试集的描述方法,并具体阐述了基于该描述方法的致性测试 i 具b t s 的设计和实 现。 第一章绪论,介绍了协议测试和协议一致性测试的基本概念、研究内容、测试 方法,以及协议一致性测试的国际标准t i c n 3 ; 第二章简要介绍了b a c n e t 协议以及b a c n e t 协议一致性测试规范,存此基础 1 二深入分析了b a c n e t 协议一致讹测试的关键内容嗣l 方法; 第三章提出了b a c n e t 协议测试的测试集描述方法:b t s s c r i p t 。并对b t s s c r i p t 脚本语言进行了详细定义; 第四章详细阐述了b a c n e t 协议测试系统的体系结构和系统各实体和模块; 第五章重点说明了基于b t s s c r i p t 测试集描述方法的测试管理和测试执行实现 的方法,并对b t s - s c r i p t 脚本解析、执行引擎的设计和实现进行了详尽的阐述; 第六章对b t s 系统的应用进行了介绍,给出了实际测试活动的结果,f :刘不足 之处进行了分析,提出了改进方案。 华中科技大学硕士学位论文 2 b a c n e t 协议一致性测试讨论 舀:讨论b a c n e t 协议一致性测试之前,我们有必要对b a c n e t 协议进行一定的了 解。在本章中,在对b a c n e t 协议体系结构、b a c n e t 对象和数据单元编解码、b a c n e t 应用层服务、以及b a c n e t 协议一致性测试规范的深入理解的基础上,分析了对 b a c n e t 协议进行致性测试应该包含哪些方i l i 的内容以及具有哪些测试场景。 2 1 b a c n e t 协议简介 b a c n e t 协议的设计是基于开放系统互联基本参考模型( o p e ns y s t e m i n t e r c o n n e c t i o n b a s i cr e f e r e n c em o d e l ,缩写为o s i r m ) 。b a c n e t 协议对o s i 模型进 行了简化,采用了其中的四层结构,即物理层,数据链路层,网络层和应用层1 2 “。 其体系结果如图2 1 所示: b a c n 酿协议 b a c n a 应用层 b a c n e t 聪路层 i s o9 8 0 2 2 类型1m s ,t pp t p io nb a c h e f i s o a r c n e te l a 4 8 5e l a 2 3 2 t e 啦i p 8 8 0 2 - 3 图2 1b a c n e l 协议体系结构 2 1 1b a c n e t 数据链路屡和舟络屡 o s l 层汝 砬用层 用络层 羹据链路层 物理屡 数据链路层负责将数据组织成帧( f r a m e ) 或者分组( p a c k e l ) 的形式,管理通 讯介质的访问、寻址以及完成蟪情误校币。在b a c n e t 协议巾数据链跻层可以有 多种选择,如图2 1 所示。它们分别是:i s 0 8 8 0 2 3 ( 以太网) 、a r c n e t 、m s f f p 、 p t p 、l o n t a l k 以及b a c n e t i p 。b a c n e t 数据链路层提供种将报文从一个设衙传送 到另一个单独设备,或者所有本地网没镐的能力1 2 引。 在o s i 模型中,网络层的功能包括将全局地址解析为局部地址在一个或多个网 络中进行报文的路,由协调不同类型嘲络的差异,如不同网络所允许的最大报文长 华中科技大学硕士学位论文 度序列控制,流量控制。差错控制以及多路复用】。由于b a c n e t 网络的拓扑结构的 特点,在各个设备之间只存在一条逻辑通路。因此,b a c n e t 网络层的功能相对简单。 b a c n e t 网络层的目的是要提供螳方法,使得不论番j 网络巾使用什么样的b a c n e t 数据链路技术,都能够将报文从+ 一个b a c n e t 网络传送到另一个b a c n e t 网络。 b a c n e t 网络层报文除了封装a p d u 报文以外,还有一臻特有的网络层报文。这 些报文为b a c n e t 路由器的自动配簧、路山表的维护以及网络层的拥塞控制这些功能 提供了实现的基础。例如:w h 0 - i s r o u t e r - t o n e t w o r k 报文。 2 2设备、对象和数据类型 b a c n e t 设备( b a c n e td e v i c e ) 指的是任何支持使用b a c n e t 协议进行数字通信 的真实的或者虚拟的设备1 2 4 1 。一个b a c n e t 设备是一系列不同种类的对象或者说数据 结构的集合。应用层服务( a p p l i c a t i o ns e r v i c e s ) 是用来访问和修改这些内在数据结 构的方法。这些数据结构在设备内部的实现可以是不同的,但是它们必须有一个标 准的、“网络可见”的表现形式和接u ,这就是所谓的“b a c n e t 对象”1 2 ”。 b a c n e t 对象是对物理设备中实际数据结构的一种抽象。对于每一种对象, b a c n e t 协议定义了不同的属性,属性是对象的进一步描述,其值是标准数据类犁或 者标准数据类型组合的变羹。属性可以通过属性标识符( p r o p e r t yi d e n t i f i e r ) 进行索 引。例如,p r e s e n tv a l u e 是“当前值”属性的索引。 所有的b a c n e t 对象,无论它们是标准的或非标准的,都必须支持三剃嘱性,它 们是; o b j e c ti d e n t i f i e r o b j e c 州a m e o b j e c t _ t y p e b a c n e t o b j e c t l d e n t i f i e r c h a r a c t e r s t r i n g b a c n e t o b j e c t t y p e 其中,b a c n e t o b j e c t l d e n t i f i e r 、c h a r a c t e r s t r i n g 、b a c n e t o b j e c t t y p e 都是b a c n e t 数据类型。它是一种表达数据内容的方法。采用的是抽象句法结构服务( a b s t r a c t s y n t a xn o t a t i o no n e ,a s n i ) 规范。a s n 1 是一种以独立于机嚣的方式描述数据结 构和数据元素的方法。 b a c n e t 对象属性可以分为只读属性、可写属性或者必需属性和可选属性。如上 丈所述,对象标识符、对象名称薷i 对豫类型属忭是必需属栋。有髓属骷则不足必需 属性,对象可以选择足甭支持这n q j i j i 忭。个属性足雨为必儒属悱,在b a c n e t 协 义 标准的对象定义中指明。 华中科技大学硕士学位论文 b a c n e t 协议定义了一些标准对象类型。这些对象类璎包括:设备对象,模拟输 入对象,模拟输l i 对象,模拟值对象, ,均值列象,i 进制输入对象,_ 二进制输出 对象,二进制值对象,日期表对象,命令刈象,事什登记对象,文件剥象,组列象, 生命安全点对象,生命安全区域对象,环蹄对象,多态输入对象,多态输f u 【 剥象, 多态值对象,通告类对象,程序对象,时间表对象和趋势记录对象。 2 1 3协议数据单元和a s n 1 b a c n e t 设备之间交换的任何数据流都是以b a c n e t 协议数据单元( b a c n e t p r o t o c o ld a t au n i t s ,p d u s ) 的形式编码。协议以a s n 1 定义b a c n e tp d u 的编码规 则。 b a c n e t 协议定义了多种p d u 格式,它们分别是:有确认请求 ( c o n f i r m e d r e q u e s t ) ,无确认请求( u n c o n f i r m e d - r e q u e s t ) ,简单确认( s i m p l e a c k ) , 复杂确认( c o m p l e x 。a c k ) ,锩误( e r r o r ) ,拒绝( r e j e c t ) 和放弃( a b o r t ) 。关于p d u 类型的详细定义,可以参见协议【2 6 】的第二十章。 图2 2 是一个有确认服务p d u 的格式: p d u t y p ep d u f i s m 0口 00m a r e s p o m s i n v o k ei d s e q u e n c e n m a b e f p r o p o s e d w m t k m s i z e s e r v i c el :h o i c e s e 晡c er e q u e s t 图2 2 :有确认服务p d u 格式 其中p d ut y p e 字段应该为0 ,表示该p d u 是一个有确认服务请求p d u ,其他 p d u 类型用不同的数字表示;i n v o k ei d 是用来将请求p d u 和回复p d u 联系起来的, 通过使用一个相同的i n v o k e1 d ,就能唯一确定回复报文是对应哪一个请求;报文分 段信息由p d uf l a g s 表示;m a xr t s p o n 用来确定a p d u 的最大长度;w i n d o w s i z e 字段用束表示在收到一个分段确认之前将发送的分段个数;s e r v i c ec h o i c e 字段表示 该p d u 包含的i , l l t 层服务选抒。 以 二参数用来形成p d u 的固定部分,即p d u 头部。s e r v i c er e q u e s t 字段是。个 华中科技大学硕士擎位论文 可变长度的部分,它包含以a s n 1 方式编码的服务参数。 下面是一个a s n 1 的定义和编码后的字节流示例: w r i t e p r o p e r t y r e q u e s t := s e q u e n c ef a s n 1 定义 o b j e c t l d e n t i f i e r1 0 】b a c n e t o b j e e t l d e n t i f i e r 【0 】表示f :f 文标记为0 p r o p e r t y l d e n t i f i e rf 】b a c n e t p r o p e t t y l d e n t i f i e r p r o p e r t y a r r a y l n d e x 【2 ju n s i g n e do p h o n a l 一可选参数 p r o p e r t y v a l u e p r i o r i t y 【3 】a b s t r a c t - s y n t a x t y p e 【4 】u n s i g n e d 8 ( 1 1 6 )

温馨提示

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

评论

0/150

提交评论