路由器双端口测试管理器研究与开发毕业论文.doc_第1页
路由器双端口测试管理器研究与开发毕业论文.doc_第2页
路由器双端口测试管理器研究与开发毕业论文.doc_第3页
路由器双端口测试管理器研究与开发毕业论文.doc_第4页
路由器双端口测试管理器研究与开发毕业论文.doc_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

西南交通大学硕士研究生毕业论文 第 i 页 ai 西西 南南 交交 通通 大大 学学 研研 究究 生生 学学 位位 论论 文文 路由器双端口测试管理器研究与开发 年 级 二二 级 姓 名 杨 洋 申请学位级别 硕 士 专 业 计算机应用技术 指 导 教 师 曾华燊 教授 二五 年 七 月 西南交通大学硕士研究生毕业论文 第 i 页 classified index: tp393 southwest jiaotong university master degree thesis research and develop on two-port test system under router distributed multi-port synchronized parallel test july 2005 grade: 2002 candidate: yang yang academic degree applied for: master major: computer application supervisor: prof. zeng huashen 西南交通大学硕士研究生毕业论文 第 i 页 摘摘 要要 本论文的研究背景是路由器测试技术。多端口、高速性和既支持 ipv6 又支持 ipv4 是从 ipv4 向 ipv6 过渡的整个历史时期的特点。以 iso9646 为 代表的传统的路由器测试方法为单端口的“回绕测试法” (ltm)和双端口 的“穿越测试法” (ttm) ,难以适应现代路由器多端口的特点;高速路由器 的性能测试要求测试方法的高效性和端口间的同步协调,在 ltm 和 ttm 中 都缺少相应的支持。所有这些就是四川省网络通信重点实验室(sc-netcom lab)提出“分布式多端口同步并行穿越测试法分布式多端口同步并行穿越测试法” (dmsp-ttm)和开发“多多 端端口路由器分布式并发测试系统口路由器分布式并发测试系统”(mpr-dcts)的直接背景。 目前仍处于开发阶段的路由器“分布式多端口并发测试系统”为两层 结构:上层为路由器多端口测试管理器(rmptm router multi-port test manager) ,下层为路由器双端口测试器(rtpt router two-port tester) 。 rmptm 处理与路由器多端口测试相关问题(为多个 rtpt 配置相关测试控制 数据,同步与协调多个 rtpt 的工作。rtpt 支持 ltm 和 ttm,既可以通过局 域网实现层间系统的互联,构成分布式的多端口测试系统,也可以作为独 立的测试系统完成双端口测试。 本文所反映的工作重点是关于 rtpt 的“双端口测试管理器” (rtptm) 的研究与开发技术。rtptm 作为多端口测试的下层测试器管理器和独立的双 端口测试管理器具有双重职责和双重功能:既是双端口测试的控制管理部 件,又时对外接口与管理部件(作为独立测试系统时提供与测试操作员交 互接口,作为多端口测试器的下级测试器,与多端口测试管理器接口接受 其控制) 。本论文的贡献可以概括为: a、对路由器双端口测试系统管理器的各功能模块进行了分析和详细设 计,完成了对路由器双端口测试系统用户界面模块和测试例执行管理模块 的开发。 b、设计了“测试例选择规则表” (test-case selection-rules table tsrt)以简化测试选择管理和提高测试执行效率,分别提出了单状态协议 和多状态协议测试例管理的一般性方法。 c、讨论了路由器双端口测试系统与上层管理器的通信问题,为今后分 西南交通大学硕士研究生毕业论文 第 ii 页 布式多端口同步并行测试系统的开发奠定了初步的基础。 关键词:多端口分布式同步并行穿越测试法关键词:多端口分布式同步并行穿越测试法(mdsp-ttm) ;路由器双端;路由器双端 口测试系统管理器(口测试系统管理器(rtptmrtptm) ;测试例选择管理;测试例选择管理 西南交通大学硕士研究生毕业论文 第 iii 页 abstractabstract the background of this dissertation is router testing techniques. the main futures of modern router in the process of migrating from ipv4 to ipv6 are characterized by multi-ports, high-speed, and complication in supporting both ipv4 and ipv6. the orthodox test methods defined in iso 9646, i.e. ltm (loop-back test method) and ttm (transverse test method) are not catered for such router testing. performance testing for high-speed routers demands high-efficiency in testing as well as synchronization among multi-ports. all these have spurred the research activities at sichuan network communication key laboratory (sc- netcom lab), which are represented by the novel test method called dmsp-ttm (distributed multi-port synchronized parallel ttm) and development of mpr-dcts (multi-port router distributed concurrent test system). the distributed multi-port concurrent test system under development at sc-netcom lab takes a two-layer structure: the upper layer formed of the router multi-port test manager (rmptm) and the lower layer composed of multiple “router two-port testers (rtpt)”. rtptm deals with multi-port test issues such as rtpt configuration, test case distribution, and synchronization among multiple rtpts. rtpt on the other hand, supports both ltm and ttm and acts either as an independent test device or the low-layer device of the mpr- dcts. the work presented in this dissertation is focused on techniques relevant to rtptm (router two-port test manager). the roles of an rtptm in the mpr-dcts are twofold: to act as the control and management entity for an rtpt, and to provide interface functions between rtpt and rtptm in an mpr-dcts or between rtpt and test operator when the rtpt works independently. the main contributions of this dissertation can be summarized as: a.provisioning of a functional framework for rtptm through detailed analysis and design, and implementation of user interface module and test case selection module. b.to improve test efficiency via dynamic test case selection according to test case execution result, a tsrt (test-case selection-rules table) is designed and generic test selection methods for single- state and multi-states protocols are provided. 西南交通大学硕士研究生毕业论文 第 iv 页 c.to provide a basis for future development of mpr-dcts, communication issues between the rtptm and the rmptm are also provided. keywords: mdsp-ttm (multi-port distributed parallel transverse test method, rtptm (router two-port test manager) test case selection 目目 录录 摘摘 要要.i abstractabstractiii 目目 录录v 第第 1 章章 绪论绪论.1 1.1 论文的研究背景.1 1.1.1 分布式多端口同步并行测试的意义.1 西南交通大学硕士研究生毕业论文 第 v 页 1.1.2 分布式多端口同步并行测试系统.4 1.1.3 路由器双端口测试系统.5 1.2 研究分布式多端口同步并行测试系统下双端口测试管理器的意义7 1.3 论文的组织结构.8 1.4 作者的工作与论文的贡献8 第第 2 2 章章 ipip 路由器双端口测试系统功能模块简介路由器双端口测试系统功能模块简介.10 2.1 路由器双端口测试系统的简介10 2.2 路由器双端口测试系统功能模块简介11 2.2.1 测试支撑工具11 2.2.2 编解码器和支撑层适配模块12 2.2.3 双端口测试管理器12 第第 3 3 章章 路由器双端口测试系统管理器设计路由器双端口测试系统管理器设计.14 3.1 双端口测试系统管理器的功能模块组成14 3.2 双端口测试系统管理器的功能模块设计15 3.2.1 用户接口模块.15 3.2.2 测试管理模块.17 3.2.3 测试集/组/例管理模块.19 3.2.4 日志记录模块.19 3.2.4 测试结果分析与测试报告生成模块.20 3.2.5 与分布式多端口同步并行测试管理器接口21 3.2.6 系统数据库22 第第 4 4 章章 测试例执行管理测试例执行管理.23 4.1 双端口测试器中的测试例执行管理.23 4.1.1 双端口测试器中测试例执行的过程23 4.1.2 测试例执行管理的策略24 4.2 单状态协议测试例的执行管理30 4.2.1 ipv6 测试例的执行管理.31 4.2.2 单状态协议测试例执行管理的方法34 4.3 多状态协议测试例的执行管理35 4.3.1 ripng 测试例的执行管理 35 4.3.2 多状态协议测试例执行管理的方法.38 第第 5 章章 双端口测试系统与分布式多端口同步并行路由器测试系统接口的研双端口测试系统与分布式多端口同步并行路由器测试系统接口的研 究究.40 西南交通大学硕士研究生毕业论文 第 vi 页 5.1 双端口测试系统与分布式多端口同步并行路由器测试系统接口的作 用40 5.2 双端口测试系统与分布式多端口同步并行测试系统接口的设计.41 5.2.1 双端口测试系统与分布式多端口同步并行路由器测试系统接口的 数据格式41 5.2.2 双端口测试系统与分布式多端口同步并行路由器测试系统接口的 功能模块设计42 第第 6 章章 总结与展望总结与展望.44 6.1 小结.44 6.2 展望.44 致致 谢谢.46 参考文献参考文献.47 comment zhx1: 参考文献请按引用 的先后次序标号! 西南交通大学硕士研究生毕业论文 第 1 页 第第 1 章章 绪论绪论 1.1 论文的研究背景论文的研究背景 1.1.1 分布式多端口同步并行测试的分布式多端口同步并行测试的研究背景研究背景 以 ipv4 为基础的 internet 在以文本为主体的应用环境中推动了计算机网 络技术的发展和计算机网络在全球的广泛应用,极大的改变了人们的工作、 学习、生活。但是,随着 internet 的迅猛发展,用户数呈指数型增长,ipv4 逐渐表现出地址匮乏的缺点;随着多媒体应用日益增加,用户数据更多地 呈现面向连接服务的特征,用户数据流的速率不断提高(从 kbps 数量级提 高到 mbps 数量级);服务质量(qos)的需求也有了很大的变化,internet 尽其所能的服务面临着新的挑战。ipv61将 ipv4 地址长度由 4 字节扩展为 16 字节,解决了 ip 地址匮乏的问题44;对 ip 报头的简化,有利于提高对 ip 报文的处理速度45。ngi(next-generation internet)2-3就是在这一背景 下产生的。在 internet 发展的同时,网络设备特别是在网络通信中发挥巨大 作用的路由器,在技术、性能等方面都得到了长足发展。在这种背景下, 路由器的测试问题就重新提高到议事日程。目前对路由器的测试主要有 2 个问题有待解决,一个是如何尽快把过去对以 ipv4 协议集的测试转入到对 ipv6 协议集的测试上,另一个问题是如何在测试中更好的模拟路由器的真 实工作环境,以达到对其性能精确的测试。 西南交通大学硕士研究生毕业论文 第 2 页 路由器实质上是由包括应用层协议在内的信令控制平面和管理平面的 协议集和只有 3 层结构的用户数据传输平面构成的,因此相关的测试也必 须包括分别对两个平面的协议进行 conformance 测试。路由器或交换路由 器是 internet 中实现系统互联的多端口高速交换设备,目前主要是采用 iso9646 规定的两种抽象测试法,即对单端口的“回绕测试法” (ltm - loop-back test method)或对一对端口的“穿越测试法”(ttm - transverse test method) 4-5。回绕测试法和穿越测试法的示意图如图 1-1 和图 1-2 所示。 对单端口的“回绕测试”或对一对端口的“穿越测试”都不能验证端 口间的相互影响,特别是对于性能测试,其测试结果不能定量地界定路由 器的实际工作性能,特别是难以考察系统在并发数据的实际运行环境中符 合协议的程度和性能指标,因而目前的测试技术和系统所进行的测试是不 完整的。现有的测试描述语言,包括欧洲的扩展描述语言 ttcn-3 在内, 都没有提供一个完整的描述这类并发性的机制。 为了解决这两个问题,笔者所在的四川省网络通信技术重点实验室根 据过去的工作经验和研究基础,把网络协议测试技术的研究作为实验室的 4 个重点研究方向之一。相关的研究工作瞄准对路由器的“分布式多端口同 步并行测试技术”的研究。 迄今为止,国外尚未见以此为目标的系统出现。仅就 ipv6 协议本身的 测试工作来看,目前国外的现有工作大体可分为两大类:单项测试系统开 发和在现有 ipv4 网络环境上建立 ipv6 的互通性(inter-operability)测试环 境(即采用在 ipv4 之上利用隧道方式(tunneling)41进行测试) 。 建立测试环境(test bed)的研究活动:主要研究实体有两类: ietf 和网络公司(或大型网络运营者) 。其中以 ietf 的“6 bone project”6活 测试器测试器 1 1测试器测试器 2 被测路由器被测路由器 中继功能中继功能 图 11 回绕测试法示意图 测试器测试器 被测路由器被测路由器 中继功能中继功能 图 12 穿越测试法示意图 comment zhx2: 这是端系统测试的 实例,不是路由器测试系统。 comment zhx3: 这也是端系统测试! 西南交通大学硕士研究生毕业论文 第 3 页 动与本项工作相关密切。该专案的基本思想是:以现有的 ipv4 网络为基础, 对 ipv6 进行“隧道” (tunneling)测试24。从 6bone 近年的研究题目看, 其重点在于尽快进行系统间的互通测试,在于研究如何以 ipv4 网络平台进 行 ipv6 的实验;而并未全面开展对涉及 ipv6 的两类设备(端系统和中继系 统)和 3 类测试目标(一致性、互通性和性能测试)进行全面的方法研究 和测试系统的建设。 开发单机测试系统的活动:这类项目把测试系统的开发作为主要研 究对象。开展这类研究的单位包括研究机构和测试设备开发厂家。前者可 以美国 nist(原 nbs)为代表,该研究所的信息技术实验室(itl)从 70 年代末开始从事 osi 协议的 conformance test 系统研究,主要采用技术为机 内测试法(local test method)和分布式测试法(distributed test method) , 前一种方法测试功能强,但实施困难,只适合作为系统自我调试;后一种 方法测试设备间的同步问题未得到解决。类似的工作还有 hp 测试仪和 compaq 的测试软件,根据相关资料重点在互通测试与性能测试。 从 80 年代中期开始我国主要有下述单位涉足了网络协议测试技术研究 和系统开发:中科院成都计算机应用研究所提出了“ferry-clip test approach”7并以此为基础开发了针对 osi 传送层协议的测试系统,并将该 测试系统移置到微机之中。在国家 863 项目支持下,中科院计算所研制开 发出一套 ipv6 协议一致性测试系统8。从所发表文章来看,中科院项目 ipv6cts 虽然能实现多端口测试,文中并未明确提出新的并行、并发测试 方法。在解决同一测试系统如何实现对多个端口进行观测的问题上,该系 统采用集线器作为接入路由器多端口的手段。集线器的共享特征使多端口 测试实时控制较难,该文未讨论如何应用于性能测试和解决实时同步问题。 从系统开发目标看,主要是否符合协议标准的测试(conformance test) , 而未涉及另外两类测试,即性能测试(performance test)和互通性测试 (interoperability test) 。此外,北京邮电大学的 ipv6 研究小组9、兰州大 学 ipv6 试验床10也涉足建立试验系统和有关测试研究,主要采用的是基于 ipv4 的测试。 国内关于协议测试技术的研究,在 80 年代中后期和 90 年代初中期有 较多的单位开展。就 ipv6 协议测试而言,中科院计算机所发表有就 ipv6 中 neighbor discovery 协议及其测试方面的文章11。内蒙古大学计算机学院 发表的基于 pc 的 ipv6 网络平台及其测试的探讨12文章谈到用 pc 组 建 ipv6 网络,建立测试环境用于测试 ipv6 协议的问题。清华大学从近年发 comment zhx4: 前面似乎未提到 ttcn-3,如何此处得出“综上所述” 的结论? comment zhx5: 什么问题?为什么 有联系到 supanet? 西南交通大学硕士研究生毕业论文 第 4 页 表的文章看,其工作主要是基于形式化技术研究13,有关 ipv6 路由器的测 试的文章中提到多端口并行测试问题,但对如何解决并发性问题尚无文章。 综上所述,国内外已有的对路由器并行测试的工作主要是基于 ttcn-3 的机制,在单机内建立测试系统。其局限性在于系统成本较高(需要使用 小型机) 、测试系统缺少灵活性和可移动性。 为了解决上述问题,四川省网络通信重点实验室开展了对 ip 路由器的 分布式多端口同步并发测试系统展开了研究工作和系统开发工作,同时也是 进一步为实验室研究的“单物理层用户数据传输平台体系结构网络” (supanet single physical layer user-data transfer platform architecture network) 42交换设备的测试作准备。 1.1.2 分布式多端口同步并行穿越测试法和相关测试系统分布式多端口同步并行穿越测试法和相关测试系统 在解决上述问题的过程中,四川省网络通信重点实验室把主要的工作重 心放在分布式多端口同步并发测试系统的设计与研发上,在研发的过程中, 同时对相关的技术展开研究。 针对现有的多端口路由器测试技术中存在的问题,笔者所在实验室提 出了“分布式多端口同步并行穿越测试法”(dmsp-ttm - distributed multi- port synchronized parallel-ttm),并定义了并发多端口测试定义语言 (cmp-tdlconcurrent multi-port test definition language)14-15。 dmsp-ttm 是基于以下应用需求提出的: 新的方法必须具备在多个端口的测试过程进行同步与协调能力,以 1 便严格控制并行测试的过程。 支持对复杂的并行测试过程分解为并行测试过程的同步与协调和单 2 个/单对端口的测试过程,以便简化并行测试的描述和最大限度地利用已有 的单个/单对端口的测试集。 物理上能够将并行测试管理设备与便携或可移动的单个/单对端口测 3 试器相分离,从而实现用物理上独立的相对便宜的多个设备组成测试能力 更强的多端口同步并行测试系统。 西南交通大学硕士研究生毕业论文 第 5 页 被测路由器 单个/单对端口 测试器 1 单个/单对端口 测试器 i 单个/单对端口 测试器 n 测试数据 分布式多端口同步并行管理器 同步协调 命令 测试数据测试数据 响应 响应 响应响应 同步协调 命令 同步协调 命令 响应 单个/单对端口测试系统 响应 图 1-3 dmsp-ttm 测试法示意图 图 1-3 即为 dmsp-ttm 测试法的简单描述。 1.1.3 本论文研究的小背景本论文研究的小背景路由器双端口测试路由器双端口测试器器 路由器双端口测试系统(rtpt router two-port tester)是路由器分布式 多端口同步并发测试系统的基础测试部件。它既能够作为分布式路由器的 多端口并发测试系统的底层测试器,也可以作为一个独立的路由器双端口 测试系统16。 图 1-4 就是路由器双端口测试系统的简图。从图中可以看出,路由器双 端口测试器主要由路由器双端口测试管理器、测试支撑工具和测试数据组 成。其中测试支撑工具包括图中所示的单测试例执行器(test case traverser)、 支撑层适配模块(即 pdu 装/拆模块)、测试支撑层协议实现和编译器。笔者 的工作就是围绕路由器双端口测试管理器展开的。 西南交通大学硕士研究生毕业论文 第 6 页 1.2 本论文研究对象本论文研究对象双端口测试管理器双端口测试管理器 路由器双端口测试器是路由器分布式多端口同步并行测试系统的基础 测试部件,一方面它是实现分布式多端口同步并行测试的基础,另一方面 它也可以脱离分布式多端口同步并行测试系统对双端口或单个端口进行测 试。所以在进行路由器双端口测试管理器的设计时,就要兼顾路由器双端 口测试器的这两个特点。 在路由器双端口测试管理器中,有一个重要模块双端口测试器与 分布式多端口同步并行路由器测试系统的接口,该模块是双端口测试系统 单测试例执行器单测试例执行器 2 2 (test case traverser) 图 1-4 路由器双端口测试例系统简图 支持层适配模块支持层适配模块(装拆被测层 3 3 pdu) rtptm (router two- 1 1 port test manager):路由路由 器双端口测试管理器器双端口测试管理器 a.用户接口模用户接口模(user interface module): 用户操作界面图形化测 试过程动态显示模块+系统 初始化模块 可执行测试集:可执行测试集: ets executable test suite + encoder/ decoder b.b.测试例测试例/ /组管理模块:组管理模块: 静态与动态测试例、组 选择) 测试集、测试组选择 测试例选择与测 试同步信息、测 试例指派与分发、 测试例结论 测试例调 用、已编 码的 pdu 融入测试 例中的 pdu 解码 器中。 c.测试结测试结 果分析与果分析与 测试报告测试报告 生成模块生成模块 测试支持层协议实现:测试支持层协议实现: 4 4 1)测试测试 ipv6:为:为 ipv4 或数据或数据 链路层链路层 2)测试应用层:测试应用层:udp 3)信控平面与用户平面联合测信控平面与用户平面联合测 试:都需要试:都需要 并发测试配置命 令、同步、测试 中间结果 被测被测 pdu 流、命令流流、命令流 和测试结论和测试结论 记录。记录。 支持层支持层 pdu 数据流记录数据流记录 模块:模块:测试 后进行分析 用。 至分布式多端口同步 并行测试系统 抽象测试集 (用 ttcn-3 语言描述) 1、ttcnc 编译 2、c机器代码编 译 西南交通大学硕士研究生毕业论文 第 7 页 与路由器分布式多端口同步并行测试系统间通信的桥梁。两者之间的通信 使进行分布式多端口同步并行测试的各个双端口测试器可以同步协调工作, 同时也使分布式多端口同步并行测试管理器可以汇总各个双端口测试器的 测试结果16。 避开分布式多端口同步并行测试技术不谈,就双端口测试器本身来说, 目前就这方面的研究与设计主要是针对某一特定测试任务来进行的22-23, 当测试任务改变时往往需要重新设计、开发测试系统。这使测试系统缺乏 灵活性和通用性。 因此在设计双端口测试系统时,其设计目标包括:既能够作为路由器 分布式多端口同步并行测试系统的底层测试器,也可以作为一个独立的路 由器双端口测试系统;既能够对路由器中的单个协议实现进行测试,也能 够在多个协议的配合下进行联合测试;既支持穿越测试法,也支持回绕测 试法;既支持按事先确定的测试例执行顺序进行测试,也具备根据测试例 执行结果,动态地选择执行测试例,即根据协议特点和测试例执行结果跳 过不需要再执行的测试例。 双端口测试管理器是双端口测试系统的核心组成部分。它对上实现测 试终端(双端口测试器)和分布式多端口同步并行测试系统的通信;对下 完成系统配置、测试例执行管理、测试过程监视和记录、测试过程管理控 制、初步测试报告的生成;在停止测试的状况下,进一步为人工分析测试 结果和形成最终的测试报告提供支持。整个测试系统的各模块在测试管理 器的管理下,有序协调的进行工作。 综上所述,笔者对双端口测试管理器的研究与设计为整个系统的实现 打下了良好基础。 1.3 论文的组织结构论文的组织结构 本论文的后续章节内容与组织结构如下: 第 2 章针对双端口测试系统的特点,介绍路由器双端口测试系统的三大 部件:测试支撑工具、编/解码器与支撑层适配模块、双端口测试管理器。 第 3 章主要介绍笔者对双端口测试管理器的各个功能模块的设计。这是 开发双端口测试管理器的基础。 第 4 章探讨对测试例执行的管理。一方面探讨了测试例执行管理的一般 西南交通大学硕士研究生毕业论文 第 8 页 性方法;另一方面以 ipv6 基本描述协议和 ripng 协议的测试例执行管理为 例,分别探讨了对单状态和多状态协议测试例执行的管理方法。 第 5 章探讨了双端口测试系统与分布式多端口同步并行路由器测试系统 的接口设计,提出了两个测试系统之间通信的办法。 最后,第 6 章在对论文工作进行总结的基础上,对后续研究工作进行了 分析和展望。 1.4 作者的工作与论文的贡献作者的工作与论文的贡献 作者在西南交通大学网络通信技术省重点实验室承担的主要工作是对路 由器双端口测试管理器的研究与开发并探讨了双端口测试系统与上层分布 式多端口同步并行测试系统的通信方法。 作者的主要工作包括以下几个方面: 对路由器双端口测试管理器的各个功能模块进行了详细设计; 1 针对测试例执行管理设计了测试例执行规则表(testcase executing rules 2 table tert) ,提出了测试例执行管理的一般性方法; 以 ipv6 基本描述协议和 ripng 协议的测试例执行管理为例,探讨了对单 3 状态和多状态协议测试例执行的管理方法; 探讨了双端口测试系统与分布式多端口同步并行路由器测试系统之间通 4 信的办法 西南交通大学硕士研究生毕业论文 第 9 页 第第 2 2 章章 ipip 路由器双端口测试系统功能模块简介路由器双端口测试系统功能模块简介 2.1 路由器双端口测试系统的简介路由器双端口测试系统的简介 路由器双端口测试系统在分布式多端口同步并行测试系统中身兼两职。 既是分布式多端口同步并行测试系统的基础测试模块,也可以作为独立的 测试工具使用。因此在对其进行设计时,既要考虑到它与上层测试管理器 的通信,也要考虑其作为独立测试系统所应具备的能力。 图 2-1 描述的是路由器双端口测试系统的业务流程。从图中可以看出, 测试例执行开始 从分布式多端口同步并 行测试系统接收测试数 据和测试命令 测试管理模块生成测试 例执行序列,初始化系 统 测试管理模块指示执行 测试序列中第一个测试 例 漫游器执行测试例,编/ 解码器装配数据和支撑 层适配模块收发数据 测试管理器将已执行测 试例脱离执行序列,判 断执行序列是否为空 测试执行序列不为空 测试结束 测试执行序列为空 日志记录模块记 录被测 pdu 流和 支撑层 pdu 流 向分布式多端口 同步并行测试系 统发送测试数据 图 2-1 路由器双端口测试系统业务流程图 西南交通大学硕士研究生毕业论文 第 10 页 双端口测试系统的测试工作是从分布式多端口同步并行测试系统接收测试 初始化数据和测试命令开始,至所有的测试例执行完毕而结束。期间,双 端口测试系统还需要完成对测试例执行进行管理、记录测试数据、向分布 式多端口同步并行测试系统发送测试数据等工作。 作为分布式多端口同步并行测试系统中的测试端,双端口测试系统是整 个分布式系统测试的基础;同时它自己也有用户界面,因此用户可以直接 使用双端口测试例系统对路由器的单个或一对端口进行测试。通过执行不 同测试例,双端口测试系统可以灵活的进行不同的测试任务。通过对测试 例执行的管理,双端口测试例系统可以优化测试,提高系统工作效率。 2.2 路由器双端口测试系统功能模块简介路由器双端口测试系统功能模块简介 2.2.1 测试支撑工具测试支撑工具 测试支撑工具由图 1-4 中的测试定义语言 ttcn-3 的编译器和 c 编译器 组成。ttcn-3 是 iso9646 定义的半形式化描述语言 ttcn(trees and tabular combined notation)的改进版。ttcn-317被重新解释为“testing and test control notation version 3”的缩写,它在同一测试系统引入 了多个并行的测试控制单元和单元间同步的概念。为了适应多端口同步并 行测试,实验室开发组还定义了并发多端口测试描述语言(concurrent multi-port test definition language-cmptdl)49。这样,就整个分布 式系统来说,测试支撑工具还应该包括 cmptdl 的编译器18。 ttcn-3 描述的测试例虽然具有标准性、通用性和不同开发者定义的测 试例可互换等优点,但 ttcn-3 描述的测试例尚不能直接在测试系统中运行, 必须通过解释或编译的方式才可以转换为机器代码。出于对未来高速路由 器的多端口同步并行测试考虑,对测试例执行效率要求较高,因此在笔者 涉及的测试系统开发中采用了编译方式19。 在编译器中还整合了一个功能模块单测试例执行器(traverser)。单 测试例执行器主要是在收到测试管理器执行何测试例的命令后,具体负责 驱动一个测试例中每一个测试步的执行。 西南交通大学硕士研究生毕业论文 第 11 页 2.2.2 编解码器和支撑层适配模块编解码器和支撑层适配模块 编解码器和支撑层适配模块(如图 1-4 所示)是衔接可执行测试集,实 现被测 pdu 和支撑层 pdu 双向数据翻译转换的工具。它们一方面将被测 pdu 流编码成相应支撑层环境所能识别的支撑层 pdu,另一方面将来自支 撑层的 pdu 进行相应的协议解码,并配合收发数据包模块实现可执行测试 集所描述的测试系统 pdu 数据流动,同时也为各项 pdu 数据流记录、测 试结果分析提供数据接口20。 这里特别需要说明的是编译器、编解码器与支撑层适配模块,在概念 上是独立的功能模块,但在系统的实际设计与开发中是被联合编译进“可 执行测试例”(etc executable test case)之中的。在双端口测试例管理器 看来,每一个测试例都按照的一个命名规则编译成了一个函数,执行一个 测试例只要调用相应的函数就可以了。而所有的可执行测试例作为一个函 数库,成为测试系统代码实现的一部分。 2.2.3 双端口测试管理器双端口测试管理器 路由器双端口测试管理器是测试系统的核心部件,同时也是笔者研究 与开发的对象。它在整个分布式系统中实现测试终端和分布式多端口同步 并行测试管理器的通信;独立出与分布式系统,测试器自身也可以使路由 器双端口测试系统成为一个完整的测试系统。笔者根据其功能,把双端口 测试管理器划分为以下功能模块: 用户接口模块 测试管理模块 测试集/组/例管理模块 日志记录模块 测试结果分析与测试报告生成模块 与分布式多端口同步并行测试管理器接口 系统数据库 本章是关于双端口测试系统的介绍,所以双端口测试管理器各功能模块 的详细设计,将留在下一章介绍,这里不再赘述。 西南交通大学硕士研究生毕业论文 第 12 页 第第 3 3 章章 路由器双端口测试系统管理器设计路由器双端口测试系统管理器设计 3.1 双端口测试系统管理器的功能模块组成双端口测试系统管理器的功能模块组成 在路由器双端口测试系统中,除了双端口测试管理器外,还有许多其 他功能模块,如何让各个模块融合在一起协调工作?在大多数测试活动中, 执行的测试例远超过一个,如何对这些测试中执行的测试例进行合理管理? 这些问题都是路由器双端口测试系统管理器设计时,需要考虑的问题。 笔者在路由器双端口测试系统管理器的设计与开发中,根据分布式多 端口同步并行测试系统的要求以及路由器双端口测试系统本身亦可作为独 立测试系统的要求,对双端口测试系统管理器的功能模块做了以下划分: 与分布式多端口同步并行测试管理器接口模块 用户接口模块 测试管理模块 测试集/组/例管理模块 日志记录模块 测试结果分析与测试报告生成模块 系统数据库 与分布式多端口同步并行测试管理器接口模块与分布式多端口同步并行测试管理器接口模块是路由器双端口测试系统 能够成为分布式测试系统测试基础模块的关键。它接收分布式多端口同步 并行测试系统的测试命令和测试初始化数据,同时也把每个测试例执行的 结果以及产生的相关数据传输给上层分布式测试系统管理器。因此可以说, 如果没有与分布式多端口同步并行测试管理器接口模块与分布式多端口同步并行测试管理器接口模块,整个分布式式系 统无法协调同步工作。 用户接口模块用户接口模块和系统数据库系统数据库的设计是基于双端口测试系统可以作为独立 测试系统的考虑。这是因为,在分布式多端口同步并行测试系统管理器端 有分布式系统的用户接口模块和整个系统的数据库。如果双端口测试系统 只是作为分布式系统的一个模块,在其测试器中则无需设计用户接口模块 和系统数据库。但是,基于双端口测试系统脱离分布式系统也可以成为独 西南交通大学硕士研究生毕业论文 第 13 页 立测试系统的考虑,在双端口测试系统管理中,也必须加入这两个模块。 3.2 双端口测试系统管理器的功能模块设计双端口测试系统管理器的功能模块设计 3.2.1 用户接口模块用户接口模块 如上节所述,在双端口测试系统中设计用户接口模块,主要是基于该测 试系统能够自成独立系统的考虑,同时它的设计与开发,也为上层分布式 多端口同步并行测试系统中用户接口的设计提供了可借鉴经验。 用户接口模块的主体功能:生成用户界面;向测试管理模块传送用户数 据;显示测试数据。根据其功能,笔者把该模块划分为三个子模块: 用户界面生成模块 测试数据传输模块 测试数据显示模块 “用户界面生成模块”用于在显示终端生成完整的用户界面,以利于用 户输入信息、控制测试和浏览结果。其中用户界面包括“测试控制” 、 “显 示” 、 “日志” 、 “帮助”四个下拉菜单。测试控制菜单:包括“新建测试” 、 “开始测试” 、 “中止测试”命令。 “新建测试”命令,由向导指引用户新建 一个测试项目。 “自动测试”项目只需要用户选择进行何种测试和输入测试 用户接口模块用户接口模块 用户界面生成模块用户界面生成模块 测试数据传输模块测试数据传输模块测试数据显示模块测试数据显示模块 测试管理模块测试管理模块系统数据库系统数据库 图 3-1 用户接口模块数据流图 西南交通大学硕士研究生毕业论文 第 14 页 参数即可由系统自动完成测试;“自定义测试”项目需要用户自行选择测 试例和输入测试参数。 “开始测试”命令用于在测试系统准备就绪后通知系 统开始测试。 “中止测试”命令用于测试过程中强行中止测试。显示菜单: 可在通过此菜单选择显示或关闭那些窗口。日志菜单:包括“保存测试日 志” 、 “保存测试报告” 、 “载入测试日志” 、 “载入测试报告”命令。用户使 用这些命令可以将测试日志和测试报告保存为文件,也可以从文件中读出 以前保存的测试日志和测试报告。帮助菜单:提供帮助系统和软件版本号。 “测试数据传输模块”用于在用户接口模块内部的子模块间或与其他模 块进行数据传输。主要的数据传输流程如图 3-1 所示: 1)将用户通过用户界面输入的测试数据,传送到测试管理模块 2)将用户输入的测试系统参数存入系统数据库。测试系统参数包括测试 对象和测试端口的 ip 地址,如果数据链路层为以太网,则还包括 mac 地 址的配置等。因为经编译器编译形成的可执行测试例是通用测试例,对于 具体的测试环境并不能预知。所以需要用户在测试之间输入测试配置信息, 并由测试数据传输模块存入系统数据库。当测试例执行时,需要相关的测 试配置信息就可以直接从系统数据库中读取。 3)从系统数据库中读出测试过程中产生的数据,并交由测试数据显示模 块显示。这些测试过程中产生的数据包括各测试例执行结果、被测 pdu 数 据流、支撑层 pdu 数据流等 “测试数据显示模块”用于在用户界面显示测试过程中产生的数据。在 测试进行期间动态显示每一个测试例执行的情况;测试例全部执行完毕后, 显示测试报告。所以其数据流如图 3-1 所示,从测试数据传输模块接收数 据,将数据处理后,交由用户界面生成模块显示在测试终端的显示设备上。 3.2.2 测试管理模块测试管理模块 路由器双端口测试系统的测试管理器的作用是协调管理双端口测试系统 中各模块的工作,而在测试管理器内部,起协调管理作用的则是测试管理 模块。测试管理模块的主体功能是协调系统各模块工作;调度各测试例按 照适当顺序执行。 西南交通大学硕士研究生毕业论文 第 15 页 测试管理模块测试管理模块 用户接口模块用户接口模块 测试初始化 模块 测试例执行 管理模块 测试集测试集/组组/例例 管理模块管理模块 漫游器漫游器 系统数据库系统数据库 测试结果分析与测试结果分析与 测试报告生成模测试报告生成模 块块 图 3-2 测试管理模块数据流图 如图 3-2 所示,测试例管理模块几乎与测试管理器的其余模块都有数 据通信,可见其在测试管理器中管理协调其他模块的作用。根据测试例管 理模块的功能,笔者将其划分为测试初始化模块和测试例执行管理模块。 “测试初始化模块”用于在测试初始化阶段从用户接口模块接收用户输 入的测试数据;调用测试集/组/例管理模块生成测试所需的测试例执行序 列;根据用户需求和测试系统要求完成测试系统的初始化工作。 “测试例执行模块”用于调度测试例的执行。按照测试例执行序列的顺 序驱动漫游器逐个执行测试例;测试进行过程中,记录测试例执行结果并 写入系统数据库,调用测试集/组/例管理模块对测试例执行进行管理;测 试例全部执行完毕后,驱动测试结果分析与测试报告生成模块进行结果分 析并生成测试报告。 西南交通大学硕士研究生毕业论文 第 16 页 3.2.3 测试集测试集/ /组组/ /例管理模块例管理模块 测试集/组/例管理模块的功能是对测试例的执行按照一定的规则进行管 理。它的主要工作是在测试例初始化阶段,将一个测试项目所有需执行的 测试例排列成一个测试例执行序列,序列中测试例的顺序根据测试例之间 关系确定;在测试进行中,对测试例执行序列进行动态管理。 有关与测试例执行管理的具体方法,是双端口测试管理器中主要需要解 决的问题之一,因此有关于测试例执行管理的规则,笔者在本章之后,将 用一个专门的章节进行讨论。这个规则就是测试集/组/例管理模块工作的 主要依据。 3.2.4 日志记录模块日志记录模块 在测试过程中,双端口测试管理器需要对每个测试例执行时产生的被测 pdu 数据流和支撑层 pdu 数据流进行记录。在某些情况下,由于各种原因, 部分测试例的结果可能为“不确定”(inconc),这时可能需要通过对测试结 果进行人工分析,参考对被测 pdu 数据流和支撑层 pdu 数据流的记录,得 出补充结论或设计新的测试例来进

温馨提示

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

评论

0/150

提交评论