(计算机软件与理论专业论文)端到端性能测试系统的设计与实现.pdf_第1页
(计算机软件与理论专业论文)端到端性能测试系统的设计与实现.pdf_第2页
(计算机软件与理论专业论文)端到端性能测试系统的设计与实现.pdf_第3页
(计算机软件与理论专业论文)端到端性能测试系统的设计与实现.pdf_第4页
(计算机软件与理论专业论文)端到端性能测试系统的设计与实现.pdf_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 摘要 近年来,i n t e r n e t 技术的快速发展,使得各种网络产品和网络服务层出不 穷,网络用户数量和网络流量也越来越大,网络性能已经成为十分重要的问 题。网络性能评价和测量技术也就变得越来越重要。在各种网络性能的测量 中,端到端的性能测量成为近年来研究的热点。 目前,国内外出现的一些性能测试工具都存在一些不足;主要表现在测试 结构不灵活,测试模块可重用性差,测试套开发过程繁琐:因而,开发一种结 构灵活,使用方便的性能测试系统,已经成为性能测试领域亟待解决的课题。 t t c n - 3 是新一代的测试描述语言,它由欧洲电信标准局口s i ) 制定,正在 被标准化;t t c n 3 描述能力非常强大,它不仅适用于一致性测试,也适用于 性能测试。 论文详细研究了基于流量模型的性能测试方法;对p a x s o n 算法进行了修 正,以解决测量网络延迟时正反向的单向传输延迟不一致对结果的影响;同 时,对测量网络瓶颈带宽的p a t h c h a r 算法和分组对算法的优缺点进行了分析比 较,最终选择了分组对算法对网络瓶颈带宽进行测量,并实现了该算法。 论文使用t t c n 3 测试描述语言,设计并实现了端到端性能测试系统 t t p e r f 。使用该系统,在i n t e r n e t 网上对端到端网络延迟,瓶颈带宽进行了测 量。结果表明,基于t t c n 一3 的端到端性能测试系统t t p e r f 的测试结构灵活, 测试模块可重用性好,测试套开发方便。 关键词性能测试;t r c n - 3 ;测试结构;t l ? p e f f 中国科学技术大学工学硕士学位论文 端到端性能测试系统的设计与实现 a b s t r a c t n o w a d a y s ,w i t ht h ed e v e l o p m e n to fi n t e r n e tt e c h n o l o g y , n e t w o r kp r o d u c t sa n d n e t w o r ks e r v i c e sa r ee m e r g i n gi na ne n d l e s ss t r e a m t h en u m b e ro ft h ei n t e r n e tu s e r s a n dt h es c a l eo fn e t w o r kf l o wa r eb e c o m i n gl a r g e ra n dl a r g e r t h en e t w o r k p e r f o r m a n c eh a sb e c o m ea na t t e n t i o n g e t t i n ga s p e c t t h e r e f o r e ,t h ee v a l u a t i o na n d m e a s u r e m e n tt e c h n o l o g i e so ft h en e t w o r kp e r f o r m a n c eb e c o m em o r ea n dm o r e s i g n i f i c a n t a m o n gv a r i o u sm e a s u r e m e n t s o fn e t w o r kp e r f o r m a n c e ,e n d - t o e n d p e r f o r m a n c em e a s u r e m e n tb e c o m e st h ep o pr e s e a r c hi s s u er e c e n t l y a tp r e s e n t ,p e r f o r m a n c et e s tt o o l si nc h i n aa n da b r o a db e a rs o m es h o r t c o m i n g s , m a i n l yc h a r a c t e r i z e da st h ei n f l e x i b i l i t yi nt e s ta r c h i t e c t u r ea n dt h ew e a k n e s si nt e s t m o d u l er e u s a b i l i t y ,a sw e l la st h ec o m p l e x i t yi nt e s ts u i t ed e v e l o p m e n t c o n s e q u e n t l y , t od e v e l o pac o n v e n i e n tp e r f o r m a n c et e s ts y s t e mw i t hh i g ha r c h i t e c t u r a lf l e x i b i l i t yi s t h ec r i t i c a li s s u et ob es o l v e di nt h ep e r f o r m a n c et e s tf i e l d t t c n 一3 ,d e v e l o p e db ye u r o p e a nt e l e c o ms t a n d a r di n s t i t u t e ( e t s i ) ,i st h el a t e s t t e s td e s c r i p t i v el a n g u a g e n o w , i ti su n d e rs t a n d a r d i z a t i o n i th a sap o w e r f u lt e s t d c s c r i p t i o nc a p a b i l i t y t t c n - 3c a nb ea p p l i e dt ob o t ho ft h ec o n f o r m a n c et e s ta n d p e r f o r m a n c e t e s t t h ep e r f o r m a n c et e s tm e t h o d sb a s e d0 1 1s t r e a mm o d e la r es t u d i e dd e t a i l e d l yi n t h i st h e s i s t od e c r e a s et h ei n f l u e n c eo nr e s u l t ,c a u s e db yt h ed i f f e r e n to n e w a yd e l a y w h i l em e a s u r i n gt h en e t w o r kd e l a y , t h ep a x s o na l g o r i t h mi si m p r o v e d m e a n w h i l e , t h ep a t h c h a ra l g o r i t h mi sa n a l y z e da n dc o n t r a s t e dw i t ht h ep a c k e tp a i ra l g o r i t h m a sa r e s u l t ,t h ep a c k e tp a i ra l g o r i t h mi sc h o s e na n di m p l e m e n t e df o rn e t w o r kb o t t l e n e c k b a n d w i d t h m e a s u r i n g a ne n d t o e n dp e r f o r m a n c et e s ts y s t e mn a m e dt t p e r fa c c o r d i n gt ot t c n 一3 d r a f ti sd e s i g n e da n di m p l e m e n t e d u s i n gt r p e r f , e n d t o e n dn e t w o r kd e l a ya n d b o t t l e n e c kb a n d w i d t hc a nb em e a s u r e d t h er e s u l t ss h o wt h a tt r p e r fi sf l e x i b l ei ni t s t e s ta r c h i t e c t u r ea n dc o n v e n i e n tf o rd e v e l o p i n gt e s tc a s e s a b o v ea l l ,t h er e u s a b i l i t yo f t e s tc a s ei sg a i n e d k e y w o r d s p e r f o r m a n c et e s t ;t t c n 一3 :t e s ta r c h i t e c t u r e ;t t p e r f i l 中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 第1 章引言 1 1 论文研究背景 近年来,i n t e r n e t 技术的快速发展,使得各种网络产品和网络服务层出不 穷,在各种网络产品和网络服务中,终端用户对网络q o s 矛h 能享受到的网络性 能极为关注,网络性能评价和测量技术就是在这种背景下发展起来的。i n t e r n e t 流量的自相似眭 1 3 3 ,i n t e r n e t 拓扑的幂率分布 1 4 ,1 5 等重要网络规律都是在 网络测量的基础上发现的;同时,为了能有效地确定网络状态、性能,实现网 络性能与资源的优化,提高网络运行的有效性与可靠性,均衡各链路负载,前 提条件就是对网络性能参数进行测量。 当前,性能测试已经取得了一定的成就,国际上有关性能测量的研究项目 主要有n l a n r 的p m p 和a m p 1 6 ,u c s d s d s c 的c a i d a 1 7 ,i n t e r n e t 2 中的 s u r v e y o r 1 8 。虽然这些项目在关键技术上取得了很大的成功,并研制了大量 的测量工具软件,但这些工具和软件价格比较昂贵,同时适用的测试对象具有 很大的局限性,尤其是测试套的编写大部分是基于脚本语言的,测试套的开发 不是很方便。 t t c n 3 ( t e s t i n ga n dt e s tc o n t r o ln o t a t i o nv e r s i o n3 1 1 ,4 是新一代的测试 语言规范,是一种标准化的测试描述语言。t t c n - 3 语言由e t s i ( 欧洲电信标 准局) 2 3 制定,现已被i s o 接纳为国际标准( z 1 4 0 系列) ,目的在于适应测试需 求的不断变化,为新的软件架构( 如开放分布式处理o d p 2 8 ,公共对象请求代 理体系结构c o r b a 2 7 ,t i n a ( t e l e c o m m u n i c a t i o n i n f o r m a t i o n n e t w o r k i n g a r c h i t e c t u r e ) 2 9 ,分布式计算环境d c e 3 0 等) 以及下一代网络协议提供新的测 试概念、测试架构、和功能强大的测试规范描述手段。t i c n - 3 不仅适用于一致 性测试,也适用于网络性能测试。和其它性能测试工具比较起来,基于t t c n 一3 的性能测试系统有以下新特点: 1 t t c n 一3 测试套支持外部自定义函数,这为用户编写性能测试中各种 流量模型提供了方便。 2 t t c n 一3 支持定时器,这为性能测试中确定网络事件产生的时序提供 了方便。 中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 3 t t c n 一3 提供了种可编程、动态可配置的性能测试结构,利用并发 测试组件,可同时向被测实现施加流量数据,让被测实现处于一定的流量 压力下,进而分析被测实现的性能。 4 t t c n 一3 具有许多类似于高级语言的特性,开发测试套方便,简洁, 测试套可读性强,开发的测试套易维护。 集成以上这些优点的性能测试工具尚不多见,正是在这样的背景下,作者 提出并实现了种端到端性能测试系统t r p e r f 。 1 2 作者相关研究工作 本论文作者在攻读硕士学位期间,参与了华为公司合作项目“t t c n 一3 一 致性测试平台”的开发工作,对基于t t c n 一3 的一致性测试框架和体系结构有 了较深的了解。 之后,作者还参与了s i p 协议和4 1 e 协议的测试套开发工作,承担了编解 码和平台适配器的开发工作,在此期间,较为熟练地掌握了如何使用t t c n 一3 进行测试的方法。 1 3 研究内容 和日益成熟的一致性测试相比,性能测试还很落后,相关的测试工具还不 够成熟,尤其缺乏一种通用的测试体系结构。t t c n 3 是新一代的铡试描述语 言,使用t t c n 一3 的性能测试工具还不多见。 作者的研究工作主要集中在以下几点。 1 分析了t t c n 一3 语言标准,研究了适用于性能测试的测试体系结构。 2 在t t c n 3 一致性测试系统的基础上,设计并实现了性能测试系统 唧e r r 。 3 在t t c n 3 测试系统中设计并使用了均匀流量模型和泊松流量模型。 4 研究了端到端通信时延的测量算法p a x s o n ,对该算法进行了修正,以 解决在端点间往返时延不一致的情况下如何更准确地确定时钟偏差;分析比较 了测量瓶颈带宽的p a c k e tp a i r 和p a t h c h a r 算法的优缺点,并实现了p a c k e tp a i r 算法。 5 使用t t p e r f 系统,给出了通信时延,瓶颈带宽的测试实例,对测试结 中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 果进行了分析。 1 4 论文章节安排 本论文共分为六章,各章节安排如下: 第一章、介绍了本论文的研究背景,作者的研究工作和研究内容。 第二章、介绍了t t c n 一3 语言标准和语言特性,分析了选择t t c n 3 进行性能测试的原因,同时介绍了端到端性能测试的基本概念,发展现状 和现有的工具软件。 第三章、介绍了端到端性能的基本测量参数,同时介绍了基于流量模 型的性z 日a s n 测, , 量方法和分析方法。 第四章、描述了端到端性能测试系统t t p e r f 的设计和实现细节。 第五章、使用t t p e r f 对端到端的基本性能参数进行测量的实例。 第六章、本论文的基本结论。讨论了t t p e r f 进行性能测试的可行性和 优缺点,以及进一步的研究工作。 附:有关本论文说明如下: 1 ) 本文正文采用小四号宋体,源程序采用l u c i d ac o n s o l e 字体。 2 1 文中出现的图示和表格与章节号同序,如第一章第1 节中的图示或表格 用“图1 1 1 ”或“表1 1 2 ”等表示。 3 1 文中用到的缩略词,可以在附录中查找其含义。 中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 第2 章使用t t c n 3 的性能测试系统 2 1t t c n 3 语言概述 2 1 1 语言简介 随着技术的日益进步,协议一致性测试过程要求抽象测试套a t s ( a b s t r a c t t e s ts u i t ,简称a t s ) 的表示趋于规范。国际标准化组织i s o 和国际电子电气协会 i e c 于1 9 9 2 年合作发布了i s o i e c9 6 4 6 4 2 ,4 8 ,其中i s o m c9 6 4 6 3 是 t t c n f l r 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 ,简称t t c n ) ,即树表结合表示法, 是a t s 的一种标准记法。 t f c n 的版本1 和版本2 由i s o i e c9 6 4 6 3 标准进行了详细说明,是一致性 测试方法与框架中的第三部分。同时,i t u 。t 也相应出版了t t c n 标准x 2 9 2 。 随后,欧洲电信标准局e t s i 对订c n 一2 进行了部分保留和更新,形成了t t c n 一 2 + + ,主要实现了并发的特性。随着网络技术的推广,各种具有并发特征的协议 实用性更为广阔。为适应时代的需求,从1 9 9 8 年n 2 0 0 0 年,e t s i 专门成立研究 小组,把t t c n 一2 开发成一种用于测试的现代程序语言,几经修改,于2 0 0 2 年l o 月颁布了e t s ie s2 0 18 7 3 系列( v 2 2 1 ) ,即t t c n 一3 第2 版。r r u t 也相应出版 了z 1 4 0 系列。 t t c n 一3 旨在适应更泛的测试需求,与t t c n 一2 相比,t t c n 一3 的描述能 力更强,应用范围更广。同时,t t c n 一3 更加侧重于对测试的控制,扩展了对各 种通信方式的支持,包括同步通信和异步通信;而t t c n - _ 2 则更多地关注对测试 的描述,对通信方式的支持也比较单一,仅仅支持异步通信。 1 。 t t c n 一3 是一个模块化语言,类似于典型的编程语言,除了具各典型编程语 言的结构外,更为重要的是,t t c n - 3 包含了很多有利于测试程序编写的特性, 其语法和语义更加具有针对性,比如用于比较实际结果与预期结果的匹配机 制,定时器的处理,分布式测试组件,同步,异步通信等。不仅如此,该语言 还与被测系统分离,当被测系统底层平台改变时,测试用例不需要作任何修 改,具有很好的可重用性和可移植性。 从语法的角度看,t t c n 一3 与在i s o i e c9 6 4 6 - 3 中定义的该语言的早期版本 4 中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 有很大区别。但是,t r c n 一3 保留了大量t f c n 一2 的经过使用被证实是有用的基 本功能,并在某些方面做了改进。 t r c n 一3 语言标准还在不断发展之中,其研究和应用也在不断进行之中。目 前,国外有一些厂商已经推出了t t c n 卜3 测试系统,如t e l e l o g i c 的t a ut e s t e r 干t l t e s t i n gt e c h n o l o g i e s 的t r t h r e e 等。清华大学计算机系网络实验室在使用t t c n 进 行协议测试方面也有定的研究,曾经推出过基于t t c n 一2 的协议集成测试系统 p i t s 3 1 。如何将 i t c n 一3 扩展到一致性测试之外的领域,比如性能测试领 域,也是很有意义的一个课题。 2 1 2 语言特征 t t c n 3 是近年来计算机工程和通讯工程领域中的一个重要概念。当前, 研究者们正在进一步扩展其功能,逐步实现t t c n 一3 与j a v a 语言、c 语言的兼 容。下面详细介绍t r c n - 3 在语言方面的特性f 1 1 : 1 丰富的数据类型 t r c n 一3 支持各种常用的数据类型,例如整型,浮点型,字符型,字符串 型等。同时,t t c n 3 有许多预定义的基本数据类型和结构类型,如记录 ( r e c o r d s ) 、集合( s e t s ) 、联合( u n i o n s ) 、枚举( e n u m e r a t e d ) 类型和数组。引入的 a s n 1 1 0 类型和值可以与t t c n ,3 一起使用。 模板是一种特殊的数据结构,它为描述在测试端口上被发送和接收的测试 数据提供参数化和匹配机制。 2 良好的模块化程序结构 t t c n 一3 是一科一类c 的程序设计语言。t t c n 一3 最顶层单元是模块,模块下 面不再分子模块。t t c n 一3 模块之间相互独立,它们可以通过i m p o r t 语义共享数 据定义。图2 1 1 表示了t t c n 一3 模块的基本结构 一个抽象测试套a t s ( a b s t r a c tt e s ts u i t ) 就是一个模块。通常,一个模块由 两部分组成:定义部分和控制部分。定义部分定义了测试组件、通讯端口、数 据类型、常量、测试数据模板、函数、测试例等。控制部分包含局部定义、调 用测试例进行测试活动、以及控制测试例按正确的顺序执行。 测试例( t e s tc a s e s ) 是函数的一个特殊种类。在一个模块控制部分,使用 e x e c u t e 语句来启动测试例,一个测试例的执行结果总是一个v e r d i c tt y p e 类型 中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 值。每个测试例应该包含一个且仅能包含一个m t c ( m a i nt e s tc o m p o n e n t ,主测 试组件) ,在该测试例定义的头部引用m t c 类型。定义在测试例主体中的行为 是m t c 的行为。 图2 1 1t t c n 一3 模块的基本结构 在测试例头部,提供的信息有两部分内容: a ) 接口部分( 必须的) :用关键字r t l r l so n 表示,关键字r t l n so n 后引用的m t c 类型,使得m t c p f l 的局部量,例如端口、定时器等,在m t c 行为中是可见的; b ) 测试系统部分( 可选的) :用关键字s y s t e m 表示,关键字s y s t e m ;l 用为测 试系统接口定义所需端口的成分类型。在测试执行期间,仅当只有一个主测试 组件( 没有其他并发测试组件) ,测试系统部分才被省略。在这种情况下,m t c 中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 隐式地定义了测试系统接口端口。 3 动态可重构的测试配置 t t c n 3 支持并发测试配置的动态说明。一个测试配置包含一组内部互联的 测试组件( 拥有良好定义的通讯端口) 集合和已定义测试系统边界的测试系统接 口。任何一个测试配置中有且只有一个m t c ,其余测试组件统称为并发测试组 件p t c ( p a r a l l e lt e s tc o m p o n e n t ,简称p t c ) ,并发测试组件可有可无。 m t c 在测试过程中,可以动态创建任意多个p t c ,m t c 可以控帝i j p t c 进行各 种测试活动。利用并发测试组件的概念,测试系统可以动态地向被测实现施加 大量的数据流,让被测实现处于一种压力环境下,从而可以从控制观察点 p c o 俾o i n to fc o n t r o la n do b s e r v a t i o n ,简称p c o ) 观察其性能行为。测试组件间 可以通过一个或多个观察控制点p c o 与s u t 连接。图2 1 2 是一个典型的t r c n 一 3 测试配置的概念视图,该配置包含一个主测试组件和若干个并发测试组件。 m t c 厂二!广一 、 一u l 澎 ( 辈乡 i 一跏t 各个缩写的含义说明如下:c p :c o o r d i n a t i o n p o i n t ,p ( n ) :p o r t n 图2 1 2 典型i - r c n 一3 测试配置图 4 支持各种测试判决以及重写规则 在t t c n - 3 语言规范中,有一种特殊的数据类型v e r d i c t t y p e ,v e r d i c t t y p e 口7 视 为一个枚举类型,取值为n o n e ,p a s s ,f a i l ,i n c o n c ,e r r o r ,n o n e 是测试判决的初 始状态,表示尚未产生任何测试结果,p a s s ,f a i l 和i n c o n c 表示测试例的执行结 果,e r r o r 贝f j 标志测试系统内部出现了异常。s e t v e r d i c t 和g e t v e r d i c t 操作分别用于 设置和获取当前的测试判决值。 中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 另外,在多组件并发测试环境下,各个测试组件都会产生一个局部测试判 决,反映该组件的运行结果;测试例的最终判决即由这些局部判决共同确定; 测试例的最终判决也称为全局判决。 测试判定值的变化遵循表2 1 3 的重写规则,它规定了判定的当前值在 s e t v e r d i c t 操作之后得到的新判定值,表2 1 3 的第一列是判定的当前值,第一行 是判定被s e t v e r d i c t 指定的值,交叉的地方为判定得到的新值。 指定值p a s s 1 1 1 c 0 n cf a i ln o n e 当前值 n o n ep a s s l n c 0 n cf a i l n o n e p a s sp a s s l n c o n cf a i l p a s s 1 n c o n cl n c o n c1 c 0 n cf a i l1 n c o n c f d i lf a i lf a i lf a i lf a i l 表2 1 3 测试判决的重写规则 5 灵活的通信连接 测试组件之间以及测试组件与测试系统接口的通信通过通信端口完成的。 相互连接的端口具有三种类型:基于消息的、基于过程的和混合型的。端口参 数有三种类型:i n 、o u t 和i n o u t 。t i c n 一3 的连接是端口对端口和端口对测试系 统接口的连接。真实的测试环境中,测试组件需与s u t 连接。t t c n 一3 的范围不 包括真实物理连接的规范,正确定义的抽象测试系统接口连接着每一个测试 例。组件的实际配置和组件之间的通讯是通过履行测试例行为中的生成和连接 操作完成的,而组件端口和测试系统接口端口的通讯通过映射操作完成。 在实际的测试活动中,真正的物理连接在s a ( s u t a d a p t o r ,被测系统适配 器) 中进行,这使得测试活动不依赖真正的物理设备,使得测试套和被测实现 分离。这样在不需要改变抽象测试套的情况下,通过挂载不同的s a ,就可以实 现不同平台下的测试,提高了模块的可重用性。 5 多种定时器操作 t t c n 一3 的一个重要特点就是支持许多定时器操作,这些操作可以用在测试 例、函数、可选步和模板控制中。 假设每个t t c n 一3 中声明定时器的范围单元维护它自己的运行定时嚣列表 ( r u n n i n g t i m e r sl i s o 和超时列表( t i m e o u t 1 i s t ) ,即所有运行的定时器的列表和所 中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 有超时的定时器列表。超时列表是测试例执行时照的快照的一部分,如果在定 时器范围单元中有一个定时器被启动、停止、超时或执行t i m e o u t 操作,那么超 时列表将被更新。 定时器操作 语句相关的关键字或符号 启动定时器 s t a r t 停止定时器s t o p 读取定时器经过的时间 r e a d 检查定时器是古廷行 r u n n i n g 超时时间 t i l l l e o u t 表2 1 4 v r c n - 3 定时器操作一览表 6 灵活的测试体系结构 t t c n 3 测试系统可被看作是相互作用的实体集合,每个实体联系着测试系 统执行中某一特定的功能方面,这些实体管理着测试执行、解释或执行编译的 t t c n 一3 代码、实现与s u t 的正确通讯、执行外部函数、处理时钟等操作。图 中,t t c n 3 测试系统包括四大实体:测试管理( t m ) ,用于提供一个用户接口 并管理t t c n 一3 测试系统;t r c n - 3 执行部件( t e ) ,用于处理t t c n 一3 可执行测 试套的解释或执行:s u t 适配器( s a ) ,使t t c n 一3 通讯操作适应于s u t ;平台 适配器( p a ) ,使t t c n 一3 执行适应于特定执行平台。t t c n 一3 控制接口t c i 详细 说明了t m 和t e 在测试系统之间的交互作用:t t c n 一3 运行时间接i z i t r i 详细说明 了t e 与s a 、p a 之间的交互作用。图2 1 5 是t t c n 一3 测试系统的一般体系结构。 2 1 3 选择t t c n 3 进行性能测试 为什么要选择t t c n 3 进行性能测试? 除了t t c n 一3 是最新的测试语言规 范,是潮流所趋外,t t c n 一3 语言固有的特性也是重要因素。下面介绍t t c n 一3 对性能测试的支持和使用t t c n 3 进行性能测试的优点。 1 ) 并发测试组件的支持 m t c 可以创建并启动多个p t c ,m t c 可以协调控制并发测试组件进行各种 活动,例如在进行吞吐量测试中,主测试组件可以控制并发测试组件发送大量 的数据给s u t ,通过记录,分析s u t 的行为,可以得到相关的性能测试结果。 中国科学技术大学工学硕士学位论文 端到端性能测试系统的设计与实现 2 ) 测试套和实际物理连接分离 测试套中并不进行实际的物理连接,所有的物理连接都在s a 进行,这样 方便性能测试中加载不同的物理连接类型,比如使用t c p l 句s o c k e t ,或者使用 u d p 的s o c k e t ,从而可以在不改变测试套的条件下进行各种与被测系统性能有关 的测试;提高了测试结构的灵活性和测试模块的可重用性。 图2 1 5t t c n - 3 测试系统的一般体系结构 3 1 测试模块相互独立 在t t c n 一3 测试体系中,各个测试模块相互独立,模块问通信通过抽象接 e l ,与实现无关,降低了模块间的耦合度,也增强了测试模块的可重用性;这 样就提供了种可编程的测试体系结构,为性能测试过程中改善测试方法和算 法提供了方便,比如,用户可以不断改善测量某个性能参数的算法和方法,而 不需要改变整个测试配置。 4 ) 定时器的支持 性能测试是和时间关系紧密的测试,需要精确确定网络事件发生的时序关 系。利用定时器,t t c n 一3 可以对网络时间发生的时序进行较为精确的定位,在 t t c n - 3 中,可以启动定时器,停止定时器,读取定时器状态。 2 2 端到端性能测试系统 2 2 1 基本概念 随着互联网的广泛使用,计算机网络的发展呈现出爆炸性增长的趋势,基 中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 于网络技术的应用系统越来越多,对网络性能的了解、对网络服务质量的要 求、对网络运行的监控和管理等成为网络设计者面临的重要工作。对于应用系 统的研究人员来况,希望从网络系统中快速、准确地得到有用的信息,为应用 的研究提供论证、设计、研制、验证、评价系统的数字化依据;对于网络的管 理人员来说,为了达到有效管理网络运行的目的,管理人员必须及时知道并确 定当前网络中某些f 或某个1 部件的性能正在下降或已经下降;网络的哪些部分 超负荷了或还未满负荷。网络测试是保证信息网络高性能、高可靠和高可用的 重要和基本的手段。 网络性能测试的目的是测试网络实现的性能,并对网络实现的性能进行评 价。网络实现的性能是指网络实现的行为中与时间、资源、能力有关的特性。 网络性能测试就是用实验的方法来观察被测网络实现的各种性能参数,如:吞 吐量、传输延迟和丢包率等。性能测试的结果往往与输入负载有关。 评价网络性能,需要选择一些性能准则,它能衡量网络性能品质,而性能 准则的选择又取决于网络用户的应用和需求。从网络用户的观点来考虑,网络 性能的度量反映对网络用户如何有效的服务,如何快速地完成和网络有关的任 务。因而在网络性能评价中,端到端的性能指标最能反映网络服务和用户需求 的关系,这使得端到端网络性能测试技术具有很重要的地位。 端到端性能是网络性能的一种,端到端的数据传输是指由传输层提供的在 源端机和目的机之间的数据传输,相对于传输层以下各层提供的相邻机器的点 到点传输来说,端到端数据传输是子网服务的弥补和加强,它与当前使用的实 际网络无关,它屏蔽了通信子网的通信界面平d q o s ,向上层提供一个标准完善 的服务接口。端到端性能测量的研究最初是由m i n c 3 2 项目中组播树丢包相关 的研究引发,而后推广到单播网络以及其他性能的研究中。 按照是否主动发送数据包,端到端性能测量分为主动测量和被动测量。2 6 1 主动测量通过测试系统对被测端点施加流量压力,构造流量模型,来测试被测 系统的性能,主动测量会增加网络的负载。被动测量不主动发送数据包,而是 通过监测网络中的数据包,来推测网络的运营情况和性能参数,被动测量不会 增加网络的负载,这里主要讨论主动测量技术。 按照测试对象与层次的不同,端到端性能测试分为以下几类: 第一,针对单个设备或协议实现的测试,可认为是单机测试,是端到端性 中国科学技术大学工学硕士学位论文 端到端性能测试系统的设计与实现 能测试的特例。 第二,端到端的网络性能测试,测试结果仅由网络的传输特性决定,基本 不受或较少受到端系统的影响。 第三,端到端的应用级传输性能测试,可直接反映应用软件可以享受到的 传输性能,测试结果不但和网络传输性能相关,也更多受到测试系统本机的操 作系统以及协议栈的影响。 和一致性测试相比较而言,网络性能测试具有以下几个特点:( 1 ) 性能测 试的测试目的直观明确,就是测试网络的性能参数,这些网络的性能参数都有 明确的定义。( 2 ) 时间在性能测试中非常重要,为了保证测试结果达到一定的 精度要求,必须能够得到某些测试事件的准确发生时间;另外,一些测试输入 事件是随机变量,发生时间不确定。( 3 ) 性能测试是与负载有关的,使用合理 有效的流量模型是保证测试结果有效可用的必要条件。( 4 ) 性能测试的最终结 果应是统计结果 7 。 2 2 2 性能测试的意义 计算机网络性能测试,就是记录网络的性能和运行状况,并且能从远端的 主机上或独立设备上观察它们,包括收集信息流样本等。计算机网络性能测试 的过程通常包括数据收集自动地或通过管理者的手工劳动进行数据收集和 处理,然后提交给网络人员。它还可以进一步产生对网络人员有用的网络性能 测试报告,包括性能报表和性能图表。网络性能测试的主要功能之一就是检查 网络的运行状况,找出其瓶颈所在。同时,它还可以对网络的使用趋势进行预 测,有助于提高网络的利用率。此外,网络性能的测试对整个网络的评价有着 重要的作用。 端到端性能测试主要意义体现在: ( 1 ) 端到端性能测试是及时了解网络运行状况,检测网络拥塞、发现网络 性能瓶颈,进行网络资源动态配置与管理,保t t q o s 的手段。不同应用对q o s 的 特定需求,也要求必须通过实时网络性能测量以评估当前网络对应用的支持程 度。例如对于流媒体应用,网络服务提供商( i s p ) 必须要保证网络的延迟抖动指 标,满足用户对q o s 的要求。 ( 2 ) 网络性能指标的长期测量与统计分析是进行高性能协议设计、网络设 中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 备开发、网络规划与建设、高效网络管理的基础。通过网络测量与网络行为分 析可以为网络的科学管理和有效控制、网络的发展与利用提供科学的依据。 ( 3 ) 端到端性能测试是提供网络辅助控制与管理、增值服务的前提。在高 速网络中,基于使用的计费与用户服务水平协议( s l a ) 的保证都涉及到对网络 的有效测量。 ( 4 ) 端到端性能测试是建立精确网络行为模型的重要手段之一。网络的日 益复杂与新应用的不断涌现,使得不同的应用具有不同的流量特征与行为特 征,仅仅利用数学仿真、经典的排队模型进行建模是远远不够的。互联网是复 杂的巨型系统,基于测量的网络建模与分析是对理论模型进行验证与修正的重 要基准。 2 2 3 性能测试的发展现状 网络测试技术是和网络传输技术同步发展的。在网络发展早期,网络传输 速率很低,这一阶段网络互连设备的测试主要集中在网络协议的一致性测试方 面,通过与网络互连设备动态交换信息,对网络协议实现的正确性进行测试。 这一阶段的测试主要用软件来实现,一般不需要使用专用的硬件。当网络发展 到一定阶段后,网络的应用范围大大扩大,对于网络的服务质量提出了比较高 的要求,人们需要了解网络互连设备的具体性能指标,如吞吐量、延迟、丢失 率等,采用的主要方法是对真实网络的环境进行仿真,由网络测试设备生成测 试流量,测试被测设备在这种环境下的性能。 近几年来,随着接口技术的发展和路由、交换技术的发展,网络互连设备 的性能有了相当大的提高,网络互连设备的转发速率越来越高,而且使用了很 多复杂的技术在q o s 方面提供支持。为了适应这种变化,很多在路由器和交换 机上采用的技术也被使用到网络测试设备中,例如高速网络接口技术、分布式 处理技术、实时操作系统等,而且网络流量的仿真和网络设备q o s 的测试也成 为目前网络测试研究的热点。 目前,已经有很多厂商在从事网络互连设备性能测试系统的研制和生产, 主要的厂商包括n e t c o ms y s t e m s 1 9 ,a g i l e n t r s 2 0 ,a d t e c h 2 1 ,i x i a 2 2 等。网 络互连设备性能测试系统的主要用户有两类一类是网络互连设各的生产厂商, 他们在网络互连设备的研制和开发过程中需要性能测试系统的帮助:另一类是 中国科学技术大学工学硕士学位论文端到端性能测试系统的设计与实现 网络互连设备的评估机构,他们需要使用性能测试系统对不同厂商的网络互连 设备进行钡4 试、评估,并将这些测试结果提供给网络互连设备的用户。 下面,简要介绍几个著名的测量基础设施。 ( 1 ) 网络分析基础设施( n e t w o r ka n a l y s i si n f r a s t r u c t u r e ,n a i 3 3 ) 是由网络 应用研究国家实验室( n l a n r ) 所建立的网络性能测量基础设施,它由两个项目 所组成即被动测量与分析( p a s s i v em e a s u r e m e n ta n da n a l y s i sp m a ) 和主动测量项 目( a c t i v em e a s u r e m e n tp r o j e c ta m p ) ,p m a 利用在不同测量点的流量监测工具 o c 3 m o n 记录网络中流量的包头信息;在a m p 体系结构中,多个测量点构成全 连接网,测量点之间周期地主动地发送探测包。实现对往返延迟、包丢失、拓 扑和吞吐量的测量。利用d a g 6 被动网络测量卡,n a i 己支持对o c l 9 2 c 1 0 g e 链 路上数据包的捕获。 n a i 采集反映网络性能的各类数据,不仅如此,n l a n r 对数据的分析进行 了深入研究,开发了一系列数据分析与可视化工具。n a i 也是到目前为止最大 的网络性能测量基础设施。 ( 2 ) n i m i 3 4 a t i o n a li n t e r n e tm e a s u r e m e n ti n f r a s t r u c t u r e ) 是在b e r k e l e y 大学 v e r np a x s o n 的n p d ( n e t w o r kp r o b ed a e m o n ) 基础上建立的第一个进行全球大规 模端到端i n t e r n e t 行为测量的基础设施。n i m i 采用层次结构与主动测量技术,在 网络中不同测量点部署大量的测量探针( p r o b e ) ,实现对网络性能的测量。同 时,n i m i 还是一个开放的基础设施,任何性能指标的测量,都可作为第三方的 测量工具集成到基础设施中。 ( 3 ) c a i d a 3 5 ( t h ec o o p e r a t i v ea s s o c i a t i o nf o ri n t e m e td a t aa n a l y s i s ) 是受 n s f 和d a r p a 所资助,由商业、政府与研究机构所组成的一个进行网络数据分析 的合作组织。f 扫c a i d a 所开发的c o r a l r e e f 是一个综合的软件包,可以实现对网 络流量的被动测量与分析,还向高层应用提供了用于数据包捕获、数据分析、 报表生成的编程接口( a p i ) 。c a i d a 开发了其它一系列测量工具,例如s k i t t e r n 于网络拓扑的测量、反映路由的变化与路由的可视化以及流分析,c r o w d 对网 络流量数据的分析等。 其它网络性能测量基础设施还包括对i p p m 定义指标进行测量的 s u r v e y o r 1 8 、由s t a n f o r d 大学线性加速器中心( s l a c ) 所主持的对高能核物理 网络性能进行监控的i e p m ( i n t e m e te n d t o - e n dp e r f o r m a n c em o n i t o r i n g ) 3 6 、网 1 4 中国科学技术大学工学硕士学位论文 端到端性能测试系统的设计与实现 络服务提供

温馨提示

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

评论

0/150

提交评论