|
|||||
![]() |
|||||
| 您现在的位置: 软件测试时代 >> 软件测试技术 >> 性能测试 >> 文章正文 |
|
|||||
| Ad Hoc网络性能测试关键技术研究 | |||||
作者:杨盘隆 文章来源:网络 点击数: 更新时间:2006-8-16 ![]() |
|||||
|
随着现代通信技术的进步,人们对移动通信需求的不断增加,移动通信系统,如个人笔记本计算机,掌上型PDA设备等得到了迅速普及。但目前多数的移动通信系统是集中式控制的(有中心的),网络的运行要基于预先架设好的网络设施。这两个特点使得有中心的移动通信系统对有些特殊场合来说并不适用。例如,战场上部队快速展开和推进、发生地震或水灾后的营救。这些场合的通信不能依赖于任何预先架设的网络设施。此时,需要系统能实现临时快速自动组网,结点要能移动。 Ad hoc网络是一种有特殊用途的对等式网络。它使用无线通信技术,网络中的结点互相作为其邻居(在其直接通信范围内的结点)的路由器,通过结点转发实现结点间的通信。它又被称为多跳网络(multi-hop network)、无固定网络设施的网络(infrastructure less network)或自组织网络(self-organized network)[1]。 由于Adhoc网络工作在分布式移动环境中,并且网络带宽非常有限,所以要尽量减少通信对端的交互信息数量。多跳特性是Ad hoc网络的另一个显著标志。由于结点的无线通信距离有限,Ad hoc网络中的结点不一定都在其它所有结点的直接通信范围之内,而且受电磁干扰,地形干扰或天气影响,结点的通信距离也会有所改变。所以当结点并非直接可达时,需要中间结点的转发才能实现通信。也就是说从源结点到目的结点是多跳(multi-hop)连接的。
传统的基于有线网络的共享广播信道接入技术(ALOHA、CSMA系列)只能在共享的信道上使用。而Ad hoc网络具有多跳性,不是共享网络。所以Ad hoc网络的信道接入协议要充分考虑多跳带来的隐终端、暴露终端和公平性等问题[2,3]。Ad hoc网络中结点是移动的。结点的移动性造成网络的拓扑结构不断变化,这对接入协议和路由协议都提出了新的要求。首先接入协议要能够感知到结点移动造成的链路通断,并把这些信息报告给路由协议。路由协议要根据链路状态的变化修改自己的路由表。传统的基于固定网络的路由协议显然不能直接用于拓扑变化频繁的 Ad hoc网络。所以Ad hoc网络路由协议成了研究的焦点。Ad hoc网络中,结点的移动性也会影响网络的性能[4],这需要相应的机制来解决。 由于影响Ad Hoc性能的因素很多,并且错综复杂,仅仅考虑有限的测试指标并不能够反映网络的真实性能, 所以Ad Hoc网络性能测试系统需要对网络进行全面的分析与理解,根据网络特性确定测试内容,有针对性地选择测试方法,进而构建与具体网络应用相适应的网络测试环境。 网络性能测试体系结构 Ad Hoc网络协议主要包括网络接入层协议(MAC)和路由协议。不同层次的协议由于所完成的功能不同,所以具有不同的测试指针。在网络测试中,要合理评价网络性能必须充分考虑不同层次的协议在性能上的差别。同时,对于不同的网络应用来说,各个层次协议性能对网络整体性能的影响也不尽相同。 Ad Hoc网络性能测试按照网络功能层次进行区分,主要分为以下三个方面的内容:通信终端物理性能测试,接入层协议测试和路由协议测试。 1. 通信终端物理性能测试
* 数据发送速率:即终端设备可支持的最大传输带宽,对于多信道系统而言,还需要测试最大可用带宽。 2. 网络接入层性能测试 网络接入层(MAC)解决了隐终端和暴露终端的问题[2][3]。MAC层协议的性能会直接影响网络的整体性能。MAC层协议是Ad Hoc网络组网协议的基础,也是网络结点通信的第一步,只有高效、公平、有序地组织网络中的所有通信结点的链路层通信能力,才能保证上层网络互联协议(路由协议)的正常运行。网络接入层性能测试内容主要有: * 接入时延:结点从有数据需要发送到数据的实际发送的时间间隔。是反映单个结点接入效率的重要参数,但是不能反映网络整体性能。 3. 路由协议性能测试 路由协议的任务是维护网络拓扑,为结点之间的通信提供及时准确的路由信息,保证报文按照协议所提供的路径正确到达目的结点。针对现有Ad Hoc网络路由协议的特点,性能测试主要包括以下几个方面: * 端到端时延与吞吐量:路由协议所处理的是源结点到目的结点之间的路径选择信息,所以源结点到目的结点之间(端到端)的行为最直接的测试内容就是时延和吞吐量。但是,这两个参数都与MAC层协议的效率直接相关。 性能测试的基本方法 Ad Hoc网络的性能测试的主要内容已经在第二节中进行了阐述,由于物理层的测试内容只涉及到点对点之间的通信。而且,无线终端设备厂商一般会事先提供相应的物理层参数,所以下面讨论的性能测试方法只与网络接入层和路由协议有关。 1. 接入层协议性能测试方法 (a) 接入时延测试 结点对所有到达发送缓冲区的数据包用时间戳进行标记,在该数据可以发送后,即满足下列条件,收到CTS数据帧并且是缓冲区最先要发送的报文,再记录下数据可以成功发送的时间。这个时间与时间戳记录的时间相减即接入时延,在系统测试时,通常计算结点所有数据包的平均时延。接入时延测试如图1所示:
(b) 优先级测试 网络中的优先级可以分为结点优先级和报文优先级。在统计意义下,优先级的测试要依赖于平均接入时延的计算。如果是对网络结点按照优先级进行区分,性能测试就计算不同结点的平均接入时延。如果网络只支持报文优先级,就要对不同类型的报文进行区分,分别计算平均接入时延。对于同时支持结点优先级和报文优先级的网络,测试要更加复杂。 (c) 公平性测试 公平性测试的依据主要是平均网络接入时延,优先级高的结点比优先级低的结点具有更小的平均接入时延。同时,不同优先级结点之间的时延差距要相对明显。例如,最高优先级结点与最低优先级结点之间的时延差距不到5%,就说明MAC层的网络优先级机制是失败的。 2. 路由协议性能测试方法 路由协议所有的性能测试参数都需要在多跳网络中实际测量得到,要根据Ad Hoc网络的特点合理运用路由协议的性能测试方法。需要特别指出的是,网络的覆盖范围,网络结点的移动性等对网络路由协议的参数会产生较为明显的影响 [4],上述问题将在第4节进行讨论。Ad Hoc网络的路由协议主要有如下几方面的特征[8]: *分布式特征:该特征是Ad Hoc网络最突出的特征。 根据路由协议的特点,提出路由协议性能测试方法。 (a) 路由协议端到端时延 测量主机之间时钟同步是端到端测量重要的技术基础。利用GPS、PSTN、CDMA等网络的外部时钟源来实现测量主机间同步。虽然精度高,但费用昂贵且在测量主机数量很大时难于实现。一般端到端时延测量可以通过RTT(Round Trip Time)获得,但是由于无线链路广泛存在着链路非对称的情况,所以需要测量端到端的单向时延。[10][11][12]对单向时延的测量提出了基于某种最优化目标来确定测量参数的方法。根据不同的要求,提出相应的优化目标,利用线性规划模型进行求解,最终到达提高单向时延参数精度的目的。 (b) 路由发现时间
当路由协议发现当前维护的路由条目失效或无法为目的结点提供可用路由时,会主动发出路由请求,网络中的邻居结点会根据路由请求的内容或者转发路由请求,或者向源结点报告可用路由,或者什么都不做[1][7]。从发送路由请求到得到可用路由的时间就是路由重建时间,如图2所示。 (c) 路由协议的效率 网络中路由信息占信息传输总量的百分比。对于路由协议的效率参数,可以利用外部测量的方法,即在网络中加入监听结点并分析数据内容的方法来计算路由协议效率。但是这种方法的开销较大,如果对协议本身进行修改,本地计算可以大大减少网络开销。在路由协议中,在路由维护信息送到发送缓冲区之前进行修改: #IFDEF CACULATE_EFFECIECY 这样利用下面的公式:
网络综合性能评估 网络综合性能评估必须充分考虑不同网络环境对网络性能的影响,结合网络应用背景对网络性能进行综合评估。 网络环境对网络性能的影响主要有以下几个方面: 在特定的网络应用环境中,可能会具有上述某些重要特征,不同的网络应用会对不同层次的协议有不同的性能要求。对同一层次的协议,不同的应用也会对各个网络性能参数有不同的要求。例如:协议A在大规模网络中性能非常好,协议B在小规模网络中性能优于A,如果应用场合是一个小规模网络,应该优先选择B协议。实际测量中的情况不是这个简单,需要多方面的性能综合考虑,可以根据应用特点的不同,给网络不同的性能测试内容赋予不同的加权值,这样可以更加客观地反映网络的性能,如表1所示。 其中,
如果各个参数之间具有相关性,如移动性和连通性之间相互影响,简单地用加权值并不能科学地反映网络性能差别,利用层次分析法[9],可以更加准确地对不同网络的性能进行评估。 网络测试环境设计 1. 结点分布范围与移动特性分布范围一般有三种模式:
(c) 星型分布 分群网络中,可以构造多个星型分布的子网,这样可以测试网络在分群网络的性能。 2. 网络结点的流量 网络结点的流量也会对网络性能产生影响。在测试平台中,针对不同的应用环境,应该配置不同的结点数据流量规则,以合理地对网络性能进行测试。 本文小结 由于网络的分布性,结点移动的不确定性和无线链路的不可靠性,Ad Hoc网络性能测试成为目前无线网络技术中的难点之一,本文讨论了Ad Hoc网络测试的体系结构。同时认为由于Ad Hoc网络的具体应用场合不同,要根据网络特点对相关内容进行测试,同时要对测试内容综合评估。网络测试环境对网络性能有重要影响,所以要针对具体的网络应用背景选择网络环境进行性能测试。只有各个方面的因素综合考虑,并采用不同的测试环境和测试手段才能够准确地评估Ad Hoc网络的性能。 |
|||||
| 文章录入:huanghaiqing 责任编辑:seanhe | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 最新热点 | 最新推荐 | 相关文章 | ||
| IP网络的测试方法 |
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 关于我们 | | |
| 版权所有(C) 2003-2006 测试时代 北京慧灵科技有限公司 站长:测试时代(TestAge.net) | |