已阅读5页,还剩64页未读, 继续免费阅读
(计算机应用技术专业论文)基于虚拟测试的协议冒烟测试研究及应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中黼科学技术大学礤士学位论文摘要 摘要 协议是髓络的灵魂,随麓鬣联网酶飞速发展和各种掰应用的不断激境,霹络 规模不断扩大,结构日趋复杂,这使得协议测试变得更为重要。协议置程的目的 是减少协议秀发过程孛潜在敬镫误,提高携议熬开发效率,键进协议橡准纯豹发 展。协议测试不仅是协议实骥过程中的一个简单的支持过程,两且已缀发展成为 网络通信技术的个重要分文和协议工程学的一个重要组成部分,协议测试技术 煮攘影璇到鄹终技术戆进步秘掰络设备枣场瓣竞争窥发震。 冒烟测试是证式测试之前对系统基本功能进行的系列测试,确保新的程序 能稳定运行,它对提高开发过程的可视性、缩短产品开发周期、降低系统集成的 最除秘产磊震爨繇劣魏最黢蒸骞重要意义。 本文研究的麓点是基于殿拟测试的协议冒烟测试的研究与应用,通过将冒烟 测试_ 和多a g e n t 技术引进到协议测试的研究中,实现协议的冒烟测试和基于多 a g e n t 煞分毒式纛羧溺试来完成弼络设餐鏊零功能的测试移抵镶安全漏瀛攻击 能为测试。本文从协议测试的实际应用出发,完成了以下工作: ( 1 ) 奔缀协议工程与爨议测试,璧爨是协议一致瞧溯试和霉烟测试。 ( 2 ) 介蹈协议测试的描述语言t c l ;分析协议澳试方法,重点怒分布式虚 拟测试法;在此旗础上,结合协议分层理论提出了单机廉拟测试法。 ( 3 ) 安璇了基于虚羧溅试方法静协议鬻矮测试,解决7 两终设备生产逑 程中对协议实现熬本功能的一致性测试的问题。 t c p 狠文编弱落数:提供7 一缀维建t c p 缀文翁搡幸筝。 8 ) u d p 撤文编码函数:提供了一级组建u d p 报义的操作。 9 ) d n s 报文编码函数:提供了一缀组建d n s 报文的操作。 ( 5 ) 捺议摄文解璐支持丞数: 1 ) d l c 撤文解码函数:提供了一缀对以太网数据链路帧报文解码的操作。 2 ) i p v 4 报文解码函数:提供了缀对i p v 4 报义孵码的操作。 3 ) i p v 6 攘文解羁菇数:箍侯了一缀对i p v 6 黎文解羁豹狳住。 4 ) a r p 报文解码函数;提供了组对a r p 报文解码的操作。 5 ) i c 肿v 4 报文解码嫡数:提供了组对i c m p v 哇报文解码的操作。 6 ) i c m p v 6 摄文解弼溺数:提供了一缀霹i c m p v 6 摄文解鹞麓操作。 7 ) t c p 报文解码函数:提供了一缀对t c p 报文解码的操作。 8 ) u d p 报文解码函数:提供了一鳃对u d p 报支解码的操作。 9 ) d n s 旅文解码藩数;疆拱了一缀对d n s 壤义解码豹搡律。 中国科学技术大学硕士学位论文第三章虚拟测试方法 ( 6 ) 基于链路层的协议报文收发套接口支持函数: 1 ) i p v 4 协议报文收发接口支持函数:提供了一组基于数据链路层接口的i p v 4 报文接收发送的操作。 2 ) i p v 6 协议报文收发接口支持函数:提供了一组基于数据链路层接口的i p v 6 报文接收发送的操作。 3 ) i c m p v 4 协议报文收发接口支持函数:提供了一组基于数据链路层接口的 i c m p v 4 报文接收发送的操作。 4 ) i c m p v 6 协议报文收发接口支持函数:提供了一组基于数据链路层接口的 i c m p v 6 报文接收发送的操作。 5 ) i p v 4 t c p 协议报文收发接口支持函数:提供了一组基于数据链路层接口的以 i p v 4 封装的t c p 报文接收发送的操作。i p v 4 7 c p 套接口的实现继承于i p v 4 套接口的实现,对于i p v 4 套接口的所有操作都适用于i p v 4 t c p 套接口。 6 ) i p v 6 t c p 协议报文收发接口支持函数:提供了一组基于数据链路层接口的以 i p v 6 封装的t c p 报文接收发送的操作。i p v 6 t c p 套接口的实现继承于i p v 6 套接口的实现,对于i p v 6 套接口的所有操作都适用于i p v 6 t c p 套接口。 7 ) i p v 4 u d p 协议报文收发接口支持函数:提供了一组基于数据链路层接口的以 i p v 4 封装的u d p 报文接收发送的操作。i p v 4 u d p 套接口的实现继承于i p v 4 套接口的实现,对于i p v 4 套接口的所有操作都适用于i p v 4 u d p 套接口。 8 ) i p v 6 u d p 协议报文收发接口支持函数:提供了一组基于数据链路层接口的以 i p v 6 封装的u d p 报文接收发送的操作。i p v 6 u d p 套接口的实现继承于i p v 6 套接口的实现,对于i p v 6 套接口的所有操作都适用于i p v 6 u d p 套接口。 这些底层支撑模块提供数据包的发送、接收、编解码、不同层次的p c o 等功 能。数据包的发送和接收采用两种方式实现:对于需要特殊处理或者协议栈实现 不完全的( 如i p v 6 协议栈目前还没有完全实现,还有链路层协议测试等) ,采用 w i n p c a p 1 提供的网卡层驱动来发送和接收数据包,对于i p 层及以上的可以采用 操作系统提供的s d k 提供的开发包来完成。根据实际的需要,在t c l 语言的平台 下,方便的增添协议模块进行功能扩展。 ( 二)脚本管理 单机虚拟测试法中对测试脚本通过x m l 技术进行统一管理。主要是在x m l 中国科学技术大学硕士学位论文 第三章虚拟测试方法 文件中指定本次要进行测试的测试套的位置,确定底层支持的动态库、相关函数、 以及具体的测试套的名称,要参与测试的测试脚本的名称以及具体的位置,和对 i u t 进行设置和清除配置的文件的指定。具体结构如下: s u b d ud l l n a m e = t c l s o c k e t p a t h = s o c k e t d u 恰 通过使用x m l 文件来进行测试套的管理,极大地方便了测试过程中对测试例 的管理,使得测试者可以根据实际的测试需要对测试例进行取舍;其规范的文件 格式也可以使测试者很清晰的了解要进行测试的内容和测试过程,提供给用户一 个透明的测试管理过程。 ( 三)功能完成 在这些支撑协议封装模块的基础上,运用t c l 语言实现了针对i u t 的功能点 进行的测试例的编写,实现在一台测试终端上完成针对i u t 某一功能的测试例的 中国科学技术大学硕士学位论文第三章虚拟测试方法 实施,并同时接收从i u t 反馈回的测试结果,经过分析处理后,形成测试报告提 交给用户,整个的测试过程可以在一台测试主机上完成。完成的测试功能如图 3 - 5 。 酬分= - - 一 被 测 体 铡试脚本模块i 丢; 康拟测试器。 - i u t 。 、 1 嗣曼拟测试器n il 掣 底层支持命令( t c l 和c 扩展) 图3 咕单机虚拟测试法的功能 3 3 - 3 单机虚拟测试的优点 该方法与其他常用的测试方法相比,该方法的优点在于: ( 1 ) 支持当前大多数协议的一致性测试,以及其它应用层通讯协议测试。 ( 2 ) 可扩展性强 支持从数据链路层到应用层的所有通讯协议的一致性测试,比如a h p 、i c i p 、 i p 、r i p 、o s p f 、f t p 、t e l n e t 等,可以将相应的协议支撑模块很好的融入进来。 ( 3 ) 虚拟测试器的应用 在底层虚拟出测试器,不需要搭建复杂的测试环境就可以模拟出和实际网络 环境测试一致的虚拟环境,并且与同拓扑的实际测试环境具有相同的测试能力, 而且属于同一测试者的虚拟测试器之问由于运行在同一台物理机器上,它们之间 的同步问题变得容易处理,使得测试更充分可靠。 ( 4 ) 测试执行分层设计 测试执行在两个层面上进行:脚本层和协议模块层。脚本层是可执行测试例 执行,协议模块层是驱动支持层,主要处理编解码、发送接收p d u 等事务。这 两个层面的工作对应协议参考实现的开发和可执行测试集的开发。 ( 5 ) 强大的报文编码功能 中田科学技术大学硕士学位论文第三章虚拟测试方法 在协议模块中实现各种报文的编解码功能,然后将这些功能以t c l 命令的方 式提供给脚本层使用( t c l 可执行测试例) 在测试脚本部分可以方便地构造任 何形式的报文,正确的和错误的。错误的报文包括:字段值错、字段长度错及字 段值和字段长度均错。 ( 6 ) 测试应用方便 可以在一台测试终端上实现虚拟的复杂网络拓扑结构,根据需要将该测试端 融入到任何现存的网络结构中,使得本地测试和远程测试一样方便。特别适合于 在网络环境复杂、测试频繁、彼此工作交叉的一些一般的测试方法很难胜任的工 作,比如冒烟测试、性能测试、在线测试等。 在实际的测试活动中,该方法常用的网络拓扑结构比较简单,一般如图3 - 6 所示。对于较复杂一些的涉及两个或多个路由器的测试,可以通过增加测试器的 网卡来实现。不论是简单的还是复杂的测试,最终的测试结果都在测试者的机器 上统一处理,并返回具体的测试结果。 圈3 - 6 简单测试的网络拓扑结构图 在该测试结构中,通过底层的支持命令和协议模块,结合t c l 语言编写针对 协议实现的测试例,可以在现有的网络环境与现有的网络资源下,很好的完成对 网络设备的协议实现的基本功能的测试,并通过分析处理各个模拟测试器返回的 测试结果,来取得最终网络设备协议实现是否符合r f c 协议描述标准的测试结 果。 3 3 4 单机虚拟测试法的组网应用 假设协议测试需要的逻辑拓扑网络如图3 7 所示,图3 7 所示的逻辑拓扑网 络对应的物理拓扑网络如图3 8 所示;图3 :7 中包括网络n 1 、n 2 、n 3 、n 4 n 1 0 0 、n 1 0 1 ,测试路由器t r i 、匕、t r 3 和1 f i h ,测试节点 i n ,以及待测路 由器i u t ,在一般的测试实践中,如果需要针对图3 - 7 所示的逻辑拓扑网络进行 中国科学技术大学硕士学位论文 第三章熊拟甓试方法 协议测试,剿需骚构建如固3 8 掰示的物理掇铃网络,然瑟在该物理搬羚网络中 避稃楣应的协议测试,而萃辊纛粒测试法哭需荽组建如黼3 - 9 所示豹物壤网络帮 可,物理网络中包括通过集线嚣相连接的测试节点 i n 和待测路由器i u t ,之后, 在掰述物理网络的测试节点上设鬟相应的虚拟测试体,其体为在测试节点t n 中 设嚣朗个虚拟测试体,分剐对疲着匿3 7 中的测试路由器t r i 至t r 4 a 豳3 - 7 逻辑捐i 扑网络 豳3 - 8 物理籀扑阏络 i 4 i u t 鬣3 - 9 擎辘虚掇测试的纺莲网络据矜 缀过虚拟测试器的建立,相对于实际的缀网环境下的测试节点的廉拟实现, 可以很好豹实现测试中需要的髑终拓扑环境,从菰可以缀方便的完成任意组网环 境豹协议鳓试。 中辫稀擘接寒支学碟士掌浆论文 第三章纛辑瓣试方法 本章小缎 零攀在努帮栽趱羧瓣试法黪蒸磴主,摄濑了慰溅试螫求麓摹,方翳嶷攘戆攀 税纛叛溯试法。该方法充分翻爝了分布式虚拟测试法静擞攘溯试豹功辘,依据协 议分麓溪论,实瑗? 镑对一个竣多令被试实髓艇单规虚缀测试载方法。 囊蠢法有 效靛携蹇了倏议溯试酌效率,蠢便了攥产酌攮维,隽秘议灏试提餮了令镶便戆 手袋。本文在下鞴的两章将针对谈方法结合浆稳的应用技术进行具蒋豹察际应 爰。 中国科学技术大学硕士学位论文第四章基于虚拟测试的协议冒烟测试的实现 第四章基于虚拟测试的协议冒烟测试的实现 协议实现是软件的一种,本章将软件应用中的冒烟测试应用到协议的测试 中,并在单机虚拟测试法的基础上完成网络设备生产设计过程中对协议实现的基 本功能的测试。通过该种形式的测试,来减少协议开发过程中潜在的错误,提高 协议的开发效率,促进协议标准化的发展。 4 1 协议的冒烟测试 协议的冒烟测试从一个宏观的角度去测试协议软件,测试协议实现的基本功 能需求,保证协议软件基本功能的完整性。对协议软件进行冒烟测试具备以下优 点m : ( 1 ) 降低集成风险:每日构造和冒烟测试将软件集成分散到短时间内,集成风 险也相应被降低了; ( 2 ) 保证软件质量:冒烟测试在短时间内被多次执行,因此在每一个阶段都可 以控制和保证质量; ( 3 ) 更加方便的错误诊断:如果软件在前一次冒烟测试中正确,在这次冒烟测 试中发现错误,可以快速定位错误发生的位置; ( 4 ) 降低整体测试代价:在冒烟测试阶段已经保证基本的功能都完整实现,在 集成测试和回归测试时,可以一次执行其他所有测试,降低整体测试代价。 由于冒烟测试具备诸多优点,因此,使用软件冒烟测试系统对软件的每日构 造进行测试就可以保证协议软件按照正常的进度进行开发,保证协议实现软件的 质量。 协议冒烟测试是对协议实现的基本功能进行测试,确保协议能够正常运行, 所以从测试范围和方法看其属于一致性测试。协议一致性测试的方法仍适用于冒 烟测试。冒烟测试作为一个优秀的有益的实践过程,有别于一致性测试的地方在 于测试的频率和范围。协议通过冒烟测试后,才继续对该协议的报文格式、协议 状态机、互操作性、路由信息交互与处理、性能等进行测试。所以,基于一种好 的有效的测试方法来对协议实现软件进行冒烟测试,对于网络设备的设计与建造 过程尤其重要。 孛蕾辩学技术丈学硕士学骰论文 第嚣章基于盎攘期试豹协议看耀测试静实现 4 2 基于虚拟测试的协议冒烟测试的实现 蠢子协议謦翅溯试是在弱络设备秘汉实琵翡程窿编译爱歪式蕤试之蘩对系 统的基本功能进行的一系列测试,确定新的程序代码不出故障,系统能够正常运 行的保障工作。这就蒙求该测试鼹依据协议的标准化描述r f c 的功能实现,并且 胃疆方便、篱涪、鸯效鲍疆雾雩蕤娩豹进行,这样,莸需要一个严谨、实麓、方便 可行的测试方法来支撵。本文提出的基于虚拟测试的协议冒烟测试,应用的就是 在单机廉拟测试法,即在一台主机上的一个或多个睡卡上模拟多个测试嚣,来对 弱络设锯豹蛰滚实瑷避行冒涵测试,该稀溅试努法西为是农一台主辊上避行豹灏 试,它可以很好的融入现有的网络环境,对一个藏多个网络设备的协议实现方便 的进行霹烟测试,它是产品研发过程管理的一释有效的手段。在实际懿测试活动 串,为了更磐熬完成测试任务,零文设计并实现了协议静鬻潮测试系统。 4 2 i 协议冒烟测试系统要解决的问题 在协议冒烟测试系统设计中,需要解决以下闯题: ( 1 ) 测试功能确定:冒烟测试必楚对软俘静激基本功能送行溺试,两不蹙软俘 的所有功能,因此在测试系统设计前必须确定要进行的测试功能点; ( 2 ) 测试魇倒生成:霉翅测试黪开发代价不能太离,要筋攀迅速,医鲍测试愿 铡尽量自动生成,对予一黧特殊豹功能,可以手动生成测试用铡: ( 3 ) 测试系统实现:需要设计个冒烟测试系统,提供对测试用例的执行、管 璩移结果评份笛功能,方馒测试人员,势能够童动生成测试报告,绘秀发 入员提供参考; ( 4 ) 摁供二次开发接口:冒烟测试是在软件开发过程中进行的,因此不断有新 瓣功戆增加,鬟要根摆功筑艇或貊的测试瘸援,测试系统必须戆够援供透 符二次开发静接口。 鉴予以上的问题解决,本文就鼹以单机虚拟测试方法为核心,在一台主机上, 虚毅出多个下溅试器采慰一台或多套网络设备,采溺t c l 乎爱寒完成嬲零缡霉, 在底层协议支持命令和相应协议模块的支撑下,对网络设备的实现的协议的基本 功能进行测试,高效的完成该协议冒烟测试系统的搭建,具体实现如下节。 4 。2 2 貉议霉矮测试系统翡实现 利用t c l 语言的w 扩展往,将c + + 语言实现的扩展命令,封装在动态席中, 中黼科学技术大学域士学位论文 第四章萋予虚拟测试的协议嚣烟测试的实现 无缝隙的集成劐t c l 平台,对t c l 豹命令集进行扩展,农w i n d o w s 平螽下实现了 一个基于t c l 的傍议雷爝测试系统。围4 - 1 楚该系统鹣系统架梅。 爨如l 嚣试系绞秘蓉绞架秘 整个系统椴架可以分类为六大模块:g u i 界面模块,测试结果分析模块,测 试套执行模块,测试套编辑模块,测试套管理模块和底层支持模块。 锚l 秀嚣穰块:考瘩裂系统熬霹移援攮,在l 平鑫下,嚣蓠撬供了溺试套 的单独测试和自动化测试的命令执行方式。 测试结果分析模块:搬搬测试套执行横块的测试结果和测试例的描述相对 魄,生成记录文搂耘溺试羧爱,分辑测试续栗:逶_ 遭、必欢或苓确囊。 通过:说明通过测试,该协议实现和测试例的协议描述一致; 失败:说明没有通过测试,该协议实现和测试例的协议描述不一教:; 苓确定:灏试豹结栗羲琴稽合逶遥豹绦遽,毽不德念失黢懿攘述,筹要迸一 步抓包分析定使。 测试套执行模块:t c l 谮言自身带有可执行的s h e l l ,结合c + + 的扩展命令, 裱撵测试需要,胃馥执行攀个或多个溺试麓懿涎试。 测试套编辑模块:选用t c l 为测试套的编写语言。利用它强大的扩展性和自 身极强的描述能力,既可以完成单独协议的测试套的编辑,又可以完成多个测试 套懿鹭装律蕊一个大豹测试套输出,两辩又胃瑷很努懿瓣诱浚模块滋行扩震。 测试套管聪模块:利用t e l 语言的强大功能,结合x m l 数据形式,方便的完 成了对单个测试套和多个测试套的管理,该模块操作起来简单、直观。 底层支持横浃:如莱诞该系统搡终篱擎,运雩亍高效,主要褥益予赢差蠹奄支持 模块。该模块融合了t c l 本射丰富的命令支持和强大的c + + 编写的t c l 扩展命令 一 e一墨拦 凿戳盈一 糍荽龇一鬻一匝 谶艘狲蕊瑷一 一 串嗣科学簸术夫学蘸士学虢论文 第鞠章基于盛攒测试豹资靛霉龋辩试实现 和大黛的协议模块的支持。完成了从链路层开始的o s i 各层协议的丰富的收发和 壤鳃爨愈令。投大懿方便7 在t c l 繇凌下各释游议懿蒺l 试褰黥编写。 襁遮个狈8 试系统架构下,可以完成从数据链路层到应用艨的所有协议的冒烟 测试,包括a r p 、i c m p 、i g m p 、i p 、t c p 、r i p 、o s p f 、b g p 、f t p 等有测试标准可 镀熬协议。逶蓬对瓣络设备静诲议实璎戆霉爆瓣试戆实燕,缓好夔簿决7 翅终设 备生产过程中的错误的产生,有效的提高网络设备的质量和推动协议实现的标准 化。下面以具体的a r p 协议的测试过程来说明协议的冒烟测试的实施过糨。 4 3 协议的瞽耀藏试的其傣实例 本节通过对中兴z x r i o 路由器实现的链路层的a r p 协议帆4 钏的基本功能的 蛭l 试来说骧协议冒熘测试的具体实施过程和测试的效果。蓄兜摇述a r p 协议的运 行梳麓,然后对选择的测试功能患进行协议箍遴,并设计帮嶷现测试铡,簸螽稷 据实际的测试过程来运行该测试用例并获得测试结果。 4 3 。la r p 协议描述 在驭太弱中,个设备要和粥一个设备进行透信,仅懿道曩标设备豹i p 地 址是不够的,必须还隳知道目标设备的w a c 地址,那就是网络接口有一个硬件地 址( 一个4 8 b i t 豹僵,标识不屈的骇太网或令牌环网络接口) 。在硬锌层次点进行 豹数据帧交换必须髯燕确豹接日戢艟。但是,t c p i p 有自戳的绝址:3 2 b i t 豹l p 地址。知道主机的i p 地址并不能让内核发送一帧数据给主机。内核( 如以太网驱 动程序) 必须知道鹾驰端鲍硬俸地皱才l 发送数擐。a r p ( a d d r e s sr e s o l u t i o n p r o t o c 0 1 ) 协议豹功能就是在3 2 b i t 的i p 地敏和采用不同掰络技术的硬件地址 之间提供动态映射。猩o s i 网络结构中,a r p 是熬于链路层的地址解析协议。a r p 游议的基本功能就是摄据已知的嚣标设冬豹i p 蟪缝,在本蠛设备熬a r p 袭项孛 取得秘铄设备的融c 她址,以保诞通信豹顺利避行 网络设备获得姒c 地址的数据流程如图4 - 2 所示。 孛嚣拜掌羧零文学颈士学稼埝支第援掌基于建攘涮试妻各掺渡警惩溅选麴实嚣 蹋4 - 2 当用户输入“f t p 童槐名”鞋a r p 的操作 ( 1 ) 一( 4 ) 应用程序f t p 客户调鞠f t pb s d i 主机名,通避d n s 获取漩主杌的 i p 地址质,然后进彳予t c p 请求连接,如果目的斑机在本地网络上,那么数据报 可以妻接送裂星戆童撬土。魏栗嚣静主鼹在一令远程网络史,那么裁逶避l p 选 路函数_ 来定位于本地网络上韵下一站路由器地城,并让它转发数据报。这两种情 况下,i p 数据报都鼹被送到位子本地网络上的一台主机或路由器。 ( 辩稷定是以太瓣,那么发送端圭壤登绥把3 2 b i t 鲍i p 蟪蛙变成4 8 b i t 的默 太网地址。这时链路廉收到需要将报文中的目标i p 进行解析成目标m a c 地址豹 i p 数据报,这就是a r p 的功能。 ( 铋链鼹层发爨a 黔请表,凌浚太霹上遴移广撵; ( 7 ) 和目标i p 地址一致奇勺设备收到a r p 请求报文后,发送包含黼c 她址的 a r p 应昝报文; ( 8 ) 竣鬟a r p 蠹签爱,篷a r p 遴行请求一疲答豹i p 数豢缳藏霹鞋传送了。跃 而完成目标i p 地址和目标m a c 地址的解析。 ( 9 ) 发送i p 数搬报到目的主机。 锋瓣a r p 捺议,基本熬功能点蠢:a r p 终定( a r p t o - s t a t i c ) ,a r p 我理( a r p p r o x y ) , a r p 源地址过滤( a r ps o u r c e - f i l t e r e d ) ,a r p 保护( a r pp r o t e c t ) 等。本文以a r p 孛雹毒串擘技术大学矮士学馥论文 第魏章基于虚箍测试的辨谖奢籍涮试的实现 代理功能点为例,来说明基于虚拟测试的协议的冒烟测试。 4 。3 2 a r p 携议攘块戆脚本支撵文终瓣扩震 为了操作方便,在抽象p c o 操作的基础上,本文应用t e l 语言扩展了一组特 定的a r p 协议类型的操作接口,包括: ( 1 ) a r p 癸汲摄交浚发接目支簿瓣数 p r o ca r p :i n i t a d p t e rd i rs n l a c d e s c r i p t i o n :色q 邈一个基于数据链路层的a r p 报文收发接口 p r o ca r p :s e n d t o sh t y p eh s i z eo pe t y p es n l a cs a d d r 交戆ed a d d rp t y p e p s i z e d e s c r i p t i o n :发送一个包含详细参数的a r p 报文 p r o ca r p :s e n d ss o u r c e m a cs a d d rd e s t m a cd a d d r d e s c r i p t i o n :发邀一个硬件类毅为以太网的a r p 协议的请求报文 p r o ca r p :r e c e i v e st i m e o u t 】 d e s c r i p t i o n :接莰一令a r p 瘦答强文 p r o ca r p :c l o s e s d e s c r i p t i o n :关闭个基于数据链路层的a r p 协议的套接口 ( 2 ) 轰舻摄文编鹦瓣数 p r o ca r p s d u h t y p eo ps m a cs a d d rt m a et a d d rp t y p eh s i z ep s i z e d e s c r i p t i o n :组建a r p 报文 ( 3 ) a r p 擐文簿筠滋数 p r o ca r p g e t a r p s d u s d u ) d e s c r i p t i o n :获取以太网数据帧载荷 p r o ca r p g e t s o u r c e m a c s d u d e s c r i p t i o n :获得以太网数据帧缓中的源m a c 地址 p r o ca r p g e t d e s m a c s d u d e s c r i p t i o n :获得驭太两数据帧缓中豹嚣豹m a c 她垃 p r o ca r p g e t s o u r c e i p ( s d us i g n d e s c r i p t i o n :获褥以太网数据蜮缓中鲍源l p 地艟 p r o ca r p g e t d e s i p s d us i g n 孛蓬辩掌授零大学顼士譬往论文 第秘章基于盎狠濑试的锛竣善溜测试豹实现 d e s c r i p t i o n ;获褥以太网数据帧缓中的目的i p 地址 通道这些支撑函数的运用,可以很方便豹完成针对a r p 协议实现的协议报文 的构建编解码操作,为和a r p 协议有关的测试例的编写提供了有效的函数支 待。焚黧熬丞兹实瑶懿霆 3 。 两教名称: 砰:s e n d 蛹敬j j j 能:z z 嵫 十雠仆凳喇为以太1 4 们 神芏n 勺i 荐啦撤定 静敬:s :建棱l i 描述镥 i t f i p h n :源m ( 地娅 a d d r :掾i l 地辣 玉s t h 王c :疆豹辩c 掩捌 d + d d r :h 羽i p 地娥 蜓f f i :以爪l q 教辑f 帧缓冲k 枷,【j ! :巾们h ? 踅强;墩,f 则发送成功 f + _ a r p :s e n dsk i ,l r c e - 越s f 谢d ld p n t f :ld n d d t + k “i u i s e n d a x p # 踅 4 a 聍 轻文缓冲k 栋谖 s e tb “f s v n d a l t p u r ps d u o z o is 拜摊a c $ 鞘垂由4 0 00 00 00 0 帮s 粕艇蠢 每魅 教姑镀辨址辙j 争数据簪,辅神f 札: ,州h r s f i ) j j 【d i 乞h d us d e “雠;s 圳肌州i 甜0 80 6 ,s b u f s e n d r p 4 砭磁 l w 撤丘: * 。tpf s n c ks c r l ds ss b u f s e n d a r pr l r k ! e ns b u f s e n d a r p l l i fs n 一0 r p t l l r ns h u t 轴栅p ,“,p th t o f s , e n d a r p r e t u r ns b u f s e n d a r p 翻4 丞鼗实现 4 3 3 测试例描述 r p 报文只对于阍一广播域的主机有效,如聚主机a 和主机b 位于同网段, 瑟壹路囊器e 隔舞,痰予路峦器遴豢不会转发广疆掇文,蘩,生辊走发爨瓣a r p 请求无法到达主机8 。当路由器具备a r p 代理功髓并打开对,它会处理请求i p 为路由器上除了接收端口i p 外的所有有效i p 地址。并用a r p 报文入接口的m a c 缝壁霆瘦。这襻圭稳a 发往主辊瑟豹鼗嚣薮羲慈遵先发绘臻癞器e ,霉童黯瘗_ 器 c 转发给盎机b ,而主机a 和主机b 并不知晓其中的改变。这个过程称作委托a r p 或a r p 代瑕。路由器的功能相当于瞬的主机的代瑷,把分组从其他主机转发绘它。 终麓路国器熬茎本珐筑之一,本文镑对孛兴逶痿公霹豹z x r i o 簸峦箍瑟该凌键焘 进行冒烟测试。测试缀网如图4 - 4 所示。 串盈辩学技术夫学磺学饺论文第翅章基于建掇箦试的协谖暑镧测试嚣实现 墅4 qa r p 代理霉煺测试缝惩翌 禚零功能点豹测试中,不需鬟特殊的组掰环境,只需要保证如图掰示的主机 a 和主机b 经由路由器c 可以到达即可,即主机a 的网关设瓣为路由器c 的 i n t e r f a c e l ,主规器戆网关设嚣为鼹壶器c 戆i n t e r f a c e 2 。 功能点描述:主机a 向i 暇教送不在同一予弼的以圭机b 的i p 地缴为目的 i p 的a r p 请求,则路由器c 应该转发给主机a 的a r p 应答报文中的源m a c 地址 应该隽黪塞器e 雏i n t e r f a c e l 黪m a c 恁蛙。 测试过程: ( 1 ) t e s t e r 以广播的方式发出a r p 请求报文,目的m a c 为f ff ff ff ff ff f , 蘸戆i p 菇主壤8 貔i p 建缎,添l p 秘淞e 荛主撬矗瓣i p 窝 s a c 。 ( 2 ) 擞机a 接收邋婀的a r p 应替报文,如果收到a r p 应答报文则继续,甭则 f a i l ,返回超时信息。 ( 3 ) 塞糗矗捡壹菝牧裂熬a r p 旋答攘交,鲞卷羧渡弱豹残雾擐文戆源m a c 建蛙 和c 的端口i n t e r f a c e l 的m a c 地址是番致。 ( 4 ) 致则通过p a s s ,否则f a i l 。 ( 5 ) 溯试蘑倒结塞。 4 3 4 测试脚本编写 在强大的底层模块的支持下,采用t c l 语畜如下对本功能点的测试脚本进行 缓写。 群构建套接口并发送a r p 报文 s e ts 【s o c k _ c r e a t ed l c $ s _ a d p t e r - f 8 a r p ”吨$ s o u r c e m a c 】 a r p :s e n d $ s $ s o u r c e m a c $ s o u r c e a d d r $ d e s m a cs d e s d l a d d r 串蓬辩学技术文学颈学靛论交第蹰章基予蠢攮溯试魏蛰渡霉黧涌试鹩实溪 拌检轰套接1 2 是褥准备好接爨数据当r d y - l 时,接收a r p 应答报文 s e tr a y s o c k _ r e 愿d y $ st o o o j i f s r d y i s e tb u t r e c v p c k ”“ s e t 确彝v p 呔 a r p :r e c e i v es sl o o o i f s b u f r e c v p e k 一” f m z t e p u t ”代理功能蜜现失败l f l e l s e s e te k m a e s o u r c e 【a r p g e t s o u r e e m a e $ b u i r e e v p c k s e tb j m a e 【s t r i n gc o m p a r e $ c h m a e s o u r c e $ i u tf e i lm a c 茬 s b j m a e 一蛰 m z t e p u t “硝撑代理铡试通过 ” e l s e t m z t e p u t8 a r p 代理溅试美羧i ” ) 在遮个脚本君勺编写中,因为怒基于链路层的,没有涉殿到套接口的间蹶,所 以不需簧进行虚拟测试器的创建,否则,还需烬应用a r p d 命令来完成虚拟测试 器熬越建窝联藏等撵终。 4 3 5 测试例的运行 为了保证脚本的嫖常运行,黻了底层模块的支持外,i j s 锩饔适当的变爨定义 帮爨羹器黥合理设熏,也裁是涎试甥浆配鬟文终; 第一步:加载t c l 扩展命令,在t e s t e r ( 测试者) 上邋过t e l n e t 设鬣i u t 两个端姻的i p 地址稍设置端口l 熬a r pp r o x y 功能,构建测试环境。 s e ts s l 魏鬻翳:t e l l n i ts h o s t $ p o r t s e tr e s t e l n e t :t e l e x e c c m d $ s “i pp r o x y - a r p ”】 孛萄辩掌技术丈学壤士学靛论文第露章基于廛箍溯试簿锛设霉爝鬻试豹实现 t e l n e t :t e l c l o s es s s 零部分豹测试铡戆琵置文襻秘主嚣豹瓣试键、测试瓣零一起稳或彳a r p 鼗 理功熊点测试的测 筑套。 第二步:在测试套的管理模块下,运行上面的测试例脚本,完成测试例的运 簿。测试套夔譬瑾袋震赘是x m l 文箨,对测试掰奉涉及到黪底层支撵楱浚豹名 称( d l l n a m e ) 、地址( p a t h ) 、以及脚本本身的文件名称( n a m e ) 、所在路径( d i r p a t h ) 、 函数位鼹( a l g o r p a t h ) 、和配置文件位置( c o n f p a t h ) 都进行了统一管理,结构简洁、 使零方爱。下覆是镑黠a r p 夔一麓基零凌戆轰熬x m l 文黪攥速。 在一个功能点测试结束后,要运行清除配鬣文件,清除本次测试对m t 的 测试环境的改变,来保证后面的测试不受本功能点测试的影响。在整个测试的过 程孛,羧据实骣情穗,设置磐着,鄄是在溺试骠豹管理下自萌迸季亍霉涵溅试运行 的,测试过程中可以通过抓包工具来对测试结果进行验证。 4 3 6 测试例的结果 邋过运行上嚣静溯试镶,褥戮鲡下豹测试谗蒙: 蚍甜出培u s i n gg r o u pt e l s c r i p t s i p v 4 b a s e a r p t e s t s 1 n o d e a r p d l s t mu s i n g t e s t c a s ea r p d l t e l 辫连接t e l n e t ,囱端口孛写入瓤幕命令,椽建a r p 我璞测试环境 z x r l 0 ( c o n f i g - i f 掺 i pp r o x y - a r p 3 9 孛嚣辩擘技术夫学矮士拳夔论文 藜嚣章羞手虚簌舞试貔换谖霉爝鬻试骢实瑗 撑构建测试a r p 代理的a r p 请求报文 发送a r p 请求擐文 接收a r p 应答报文 目标口地址:1 9 2 1 6 8 2 2 0 0 期攫返匿地缝:0 0 d o d o e 黪0 c 8 1 实际返回地址 0 0 d o d o c o0 c8 1 a r p 代理测试通过! 释黢收发掇文鹣缓洚区 避接t e l n e t ,清除配置命令 j + l l oi pp r o x y - a r p p a s s e n dt e s t c a s e 下袭中是针对触疆协议的几个基本功能点的测试结果。如图4 - 5 。 图4 5a r p 协议冒烟测试结果输出图 通过上面的测试结果可以看到,包括a r p 代理功能点猩内的触啦协议的基 本= 哮戆纛豹霉濯测试牵,串兴通臻公司垂冬z ) 澈l o 路囱器缀好鲍实瑰了遮魏基本 的功能。只有保证了这些基本功能点的正确实现,才有可能对网络协议进行更全 面、更舆体的一致性、性能以及曩操作性的测试。所以协议的冒烟测试为燮进一 步戆麓弼络设备熬渗议实瑰戆溅试提供了必要静验涯手段,蠲对,苇撬绽撅灞试 中国辩学技宋丈学疆圭学霞论文第秘章基于盎撤涮试豹协谖誉捆麓试豹实褒 方法的应用有效的保障了协议的冒烟测试可以随时随地的_ 进行,这样就使得网络 设冬戆揍议实璎胃塔雯努豹舞会豁汉臻述夔r f c 标准,废爝该灏试技本零实验 室完成了中兴通讯数据产品冒烟测试功能自动化测试系统和中兴通讯数据产品 自动化测试。 本章小绣 本章通过将冒烟测试和单机廉拟测试法结含应用,完成了协议冒烟测试系统 的实现。在虚拟测试器、协议模块以及底层测试命令的支持下,针对网络设备对 a r p 终议懿基奉功筑悫静谤议实壤进行了冒潮翱试,并取褥了缀爵静溺试效栗, 有效验诞了该测试方式的有效性和实用性。通过该种形式的测试,保证了网络设 备基本功能的正确实现,提高了协议的开发效搴,促进协议标准化的发展。 皇墨壁璺篷查文学颈学袋论文纂嚣章基于多a 耪哺豹奔毒式盛攒渊试豹竣诗 第五章基于多a g e n t 的分布式虚拟测试的设计 秘渡豹霉潮测试是铮霹舞终浚冬戆萋搴渤戆蕤溺试,纛涎着系统熬扩充瑟扩 充,冒烟测试也越絮越充分,而殿除了基本功能实现的错谈外,网络设备也会存 在一些不安全的因豢,比如信息的不完整、信息的泄漏等安全隐患,这就要求对 弼络浚蚕在生产遨穗审或毅入後瘸蔫,豫了遴缮萋本臻戆赢豹测试癸,锌砖貉滚 实现的抵御漏洞攻前能力的铡试也已经成为协议冒烟测试的基本内容;猩实际的 网络应用环境中,由于对协议的描述语言的不同理解或使用中的不严密的设置, 捷缮存在一些铮怼貉议实现豹安全漏满魏玫鸯,是豢冤熬安全防护魄妇l 游 ( i n t r u s i o nd e t e c t i o ns y s t e m , 入侵检测系统) 、防火墙等阗所不能检测出的; 单机虚拟的测试应用也很难达到实际网络攻击的效果。所以为了有效的模拟现实 懿霹终袭击环凌,零牵将多a g e n t 技零雩| 入餮协议静霉涵瓣试孛,并蔽攥 l 慰等蓍 际标准,从具体的网络协议入手,来完成网络设备抵御安全漏洞攻击能力的测试, 本章设计并实现了基予多a g e n t 的分布式虚拟测试。 该释溺试采惹豹多a g e n t 结构是在传统鹩爱应绪搀静基础上进行了德纯移 改进,具有很强的阿络环境适应性和很好的模拟现实的攻击和检测效果,可以 有针对 生的对网络设器的协议实现或使用设爱中的不合理进行抵御攻击娩力黪 蓄涵溺试。 5 1 多a g e n t 技术 5 1 1 a g e n t 理谂 a g e n t 是指模拟入类行为与关系、具有定智能并能够囱主运行和掇供相应 服务的耩序,具有自搬性、响应性、主动性面向目标特性以及社会性,这魑特性 使得a g e n t 在弱终环缓熬应曩孛爨枣稷磐豹逶建性。多a g e n t ( m a s ,m u l t i a g e n t ) 系统怒一系列已经存在的a g e n t 之间通过楣置拚作来达到菜一个特定的饼标,是 一个松耦合的问题解决网络系统,通过协作增加解决问题的能力。其中锶个 a g e n t 攘蠢豹信患懋芬完整夔,茭援热毽是鸯激滤;没毒一令全蜀熬控裁系绕; 数据魑分散的;计冀是异步的。 a g e n t 的研究起源于人工智能领域。a g e n t 是指模拟人炎行为与关系、具有 一定餐缝劳戆够鑫妻运行帮挺供穰疫爨务戆毯澎。与瑰在滚纷靛软终实髂( 懿对 象、构件) 相比,a g e n t 的粒度熨大,智能化稷度更高。智能软件a g e n t 的属性 串蓬辩学技术大学壤学镣论文第巍章基予多a g c n t 的分布式盎掇藏试豹设计 如图5 - 1 所示。 蚕5 - 1 霉能a g e n t 辩属性 ( 1 )自主性:a g e n t 能够不在人的控制下直接运作,并且能够控制自己的行动 和内部状态,具备从过去中寻找经验和融我完善的功能。 ( 2 ) 镌痤;a g e n t 戆够对乡 赛瓣舔壤徽塞睡蔽。 ( 3 ) 擞动性面向掰标:a g e n t 不仅对环境变化作出反应,而且在特定情况下 采取主动行动,这种自身袋取主动的能力需要a g e n t 肖严格定义的目标。 ( 4 ) 襁会性:a g e n t 之鬻逶蓬a g e n t 逶信语言逡行交互。a g e n t 在衽会滔魂孛具 有自身的角色,并通过“通信合作协调”与a g e n t 群体发生关系。 a g e n t 的这些特性使得a g e n t 在软件系统构造中具有很火的方便性。 5 1 2 m u l t i - a g e n t ( m a s 系统 m a s 系统是一系列已经存在的a g e n t 之间通过相互协作求达到某一个特定的 目标,姒s 系统是一个松耦合的问题解决网络系统,通过协作增加问题解决的能 力,一个艇醛系统爨窍菇下特馁: ( 1 ) 德一个a g e n t 拥有的信息是不完整的,其视角也是有限的 ( 2 ) 没有一个全局的控常系统 ( 3 数据是分数静 ( 4 ) 计算是异步的 网络系统本身是一个最大的m a s 系统,在网终中每一个运行的节点都充当着 一个a g e n t 静角色。现有豹a g e n t 结构主要分为以下3 静。 ( 1 ) 慎恩结构( d e l i b e r a t i v ea r c h i t e c t u r e s ) 在这秘结构中,a g e n t p q 部包禽7 对外部攀物的符号模型,铮对自黾的任务 目标,邋过逻辑拦蘧方式得出需甏执行豹动雩# 。 团困回 中国科学技术大学硕士学位论文 第五章基于多a 水n t 的分布式虚捌测试的设计 ( 2 ) 反疲结构( r e a c t i v ea r c h i t e c t u r e s ) 与慎穗结构不同豹是,反应结构中不包含任何形式的外部事物的符号模登, 瞧不进行复杂盼逻辑接理。农反应绩梅孛媲定7 些对特定条传下摆应翦动作, 由此来完成对外部事物的响应。 在m a e s 等入给出的a g e n tn e t w o r ka r c h i t e c t u r e 中,设计者指定各种幼作 鲍懿导、聪继状态,及其相应的优先缓;垂j 逝梅成一个动作传攘弱终,各令动终 之间由其前导、后继状态与其他动作相连接。在实际a g e n t 运行过程中,根据实 际环境,将会有不同的动作被激活,根据这些动作的优先级度童最终挟定所瑟采 取瓣动终。 ( 3 ) 复含结构( h y b r i da r c h i t e c t u r e s ) 这种结构是士述两种结构的复合。 5 2 溯试平台设计 锋对实嚣弱惩络发疑翮应建,零瀑题缓在携议溅试瑗论襄a g e n t 技零懿蒺秘 上,建立了一个抵御安企漏洞攻击能力的测试平台,该平台通过主控端和多个测 试代理a g e n t 对i u t 进行两络攻击和探测,测试i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年湘潭辅警招聘考试题库含答案详解(新)
- 2025年重庆辅警招聘考试真题附答案详解(完整版)
- 2025年遂宁辅警招聘考试真题附答案详解(完整版)
- 2025年阿里辅警招聘考试真题附答案详解(培优)
- 2025综合物品承包合同模板
- 2025年潍坊辅警协警招聘考试备考题库含答案详解(b卷)
- 2025年萍乡辅警招聘考试题库完整答案详解
- 2025年黄石辅警协警招聘考试真题及答案详解(网校专用)
- 2025年蚌埠辅警协警招聘考试真题附答案详解(培优a卷)
- 2025关于广告代理合同的范本
- 大学生职业规划大赛生涯发展报告
- 开票税点自动计算器
- GB/T 20967-2007无损检测目视检测总则
- GB/T 13576.1-1992锯齿形(3°、30°)螺纹牙型
- 北医安全法规考试题
- 绝对值的练习课课件
- 2023年昆仑银行校园招聘笔试题库及答案解析
- 十八般兵器解读课件
- NY∕T 4001-2021 高效氯氟氰菊酯微囊悬浮剂
- 重医大内科学教案06血液系统疾病-2贫血概述
- 寿命、衰老与衰老治疗课件
评论
0/150
提交评论