王意志,王呈炎
(厦门大学信息科学与技术学院,福建厦门 361005)
网络测量方法及其应用
王意志,王呈炎
(厦门大学信息科学与技术学院,福建厦门 361005)
随着网络技术和通信业务的飞速发展,用户对网络带宽等资源需求增加,网络应用多样化.网络服务质量下降往往是由网络负担过重、路由交换设备超负荷引起的.因此,管理者需定期对各项运行参数指标进行测量评估.介绍网络测量体系的功能模块、常用网络测量工具、主动测量和被动测量的方法及其应用,并分析了典型测量方法的优缺点.
网络测量;参数指标;主动测量;被动测量
通常,为提供稳定和高效的网络环境,管理者需要对网络的带宽、丢包率、延时等性能指标进行及时的测量评估并制定有效的管理策略.网络测量是指遵照一定标准、方法和技术,利用软硬件工具来测试或验证表征网络性能指标的一系列活动[1].性能参数是对网络性能进行度量和描述的工具,网络测量的目的在于从实际网络环境中获取数据流量有关的性能参数,分析网络运行的状态,并寻找故障原因并制定相应的解决办法,具体包括:
1)性能评价.考察不同网络协议(及其应用)影响下,网络性能指标的变化,分析网络协议及其应用的性能“瓶颈”,提高现有协议性能或设计新协议.通常,性能指标是性能评价的关键.
2)协议排错.网络测量可为新协议和应用程序提供有效的检测手段并与现有标准保持一致或兼容.对网络协议和应用的“最新”版本进行的测试主要通过对接收到的数据包进行协议分析,并从中发现问题,为开发人员提供修改意见.
3)故障诊断.某些网络部件故障会干扰整个网络的运行,例如广播风暴、地址错误、安全性攻击和非法分组长度等,因此有必要对这些故障进行分析和诊断,包括定位故障源,日志分析,监测IP、IPX数据报的流量,实现物理或逻辑链路端到端测试等.
4)网络流量特征化.网络测量利用统计技术来分析原始流量数据,从而有效地提取网络应用或协议的具体特征.目前,主流网络流量监控工具有MRTG[2]和PRTG[3],其使用SNMP协议对流量信息进行监视,并通过数据分析绘制图表[4].
图1 网络测量体系的功能模块示意图
通常,网络测量的体系结构如图1所示,其主要有4个模块:数据采集、数据显示、数据分析和数据管理.其中,数据采集可在TCP/IP的任意层次中进行,采集到的数据提交给数据存储管理;经过分析的数据在数据管理中重新调整数据结构,最后通过数据显示模块提交给用户.
数据采集的方法分为主动测量和被动测量.主动测量易于控制,但需要合理有效地设计测量分组和测试流程,对被测网络有一定影响.被动测量则需要适当选择测量探针的位置,但不影响被测网络系统.
网络结构错综复杂,数据采集通常在多通道环境下运行,主要方式有:循环采样、同步采样和间隔采样.循环采样,是指采集设备使用多路开关以某一时钟频率将多个通道分别接入A/D循环进行采样.当通道间的时间关系很重要时,就需要用到同步采样方式.而间隔采样通过控制扫描时间,设置2次采集的时间间隔(微秒或纳秒级),效果接近同步采集.在实际应用中,通常采用性价比和灵活性较高的间隔采样方式.目前,WINCAP和SNIFFER工具是常用数据采集工具[5].WINCAP通过网卡获取用户接收和发送的数据包,监听NIC被动收集数据包(见图2);SNIFFER通过将网卡设置为杂乱模式,从而能够收集到网卡传输的每一个数据包.
图2 WINCAP层级结构示意图
数据分析,是对每个行为指标如何定义和计算进行研究,同时分析数据中包含的各种因素,例如算法、测量参数单位和测量误差来源等.此外,还要考虑网络测量的环境、方法、工具带来的误差和影响,测量后将这些因素进行一定的量化描述.目前,网络测量的相关性能指标主要是以IETF网络性能测量(IPPM)工作组制定的建议和草案为主,主要包括丢包率、流量、连通性、时延、链路带宽和容量、连接平均持续时间、网络拓扑结构等.
WIRESHARK/ETHEREAL和 TCPDUMP是目前较主流的网络数据分析软件[6].2者的主要区别是:WIRESHARK/ETHEREAL通过设置过滤规则对获取的数据进行过滤,使用图形界面显示出数据包的协议分析结构;TCPDUMP是一种开源软件,公开了所有接口,具备很强的扩展功能,主要应用于UNIX/LINUX系统中,它获取网络数据包,并对包的字段进行解析,以字符行的形式(Trace files)显示给用户,用户可订制和编程处理Trace文件,计算性能指标.
网络测量的原始数据量极大,需要设计恰当的存储、维护和检索方法.数据存储的格式化便于数据分析和检索.为了解决数据共享问题,一般采用数据库技术,同时为了灵活性更强,也可应用文件存储的方式.为提高数据处理能力,通常在数据分析前进行数据预处理.文献[7]中介绍了数据预处理中数据的清洗过程,通过确定核心数据的要求并对结果进行分类.
原始数据管理的过程中,最重要的一步是建立检索策略.网络测量过程中,对各项指标的需求把握明确后,可根据相应的参数指标构造检索策略过程.关系型数据库在测量过程中发挥着重大作用,它将网络测量采集到的数据按照预先的要求存储,提供给应用程序分析,又将分析结果重新存入数据库中,然后提供给UI接口显示给用户.由于网络数据流量较快,普通关系型数据无法满足其性能及容量的要求,因此,可设计 RRDTOOL(Round Robin Database Tool)来解决该问题[4],通过开启固定大小的空间来存放数据,使用指针指向最新数据的地址位,数据以类似环型结构基于时间存储,若一轮数据存储满,重新开始写入新数据,从而确保数据文件的大小不变,提高数据访问效率.
数据显示可以直观、形象地显示网络测量的结果.目前,MRTG、CACTI及 PRTG 等[8]监测工具都是通过RRDTOOL绘图引擎将数据绘制成流量图展现给用户的,通过处理RRD数据中的参数指标,创建用于在浏览器上显示的PNG格式图像.一般而言,PNG图像所显示的内容就是采集到的数据内容.
根据不同的数据采集方式,网络测量分为主动测量和被动测量.
主动测量是向被测网络注入一定量的测试流量数据,观察其响应结果并分析数据流量的相关参数,进而观察和测量网络状态及其变化[9].这种方法在测量过程中引入了一定的附加流量,会影响网络的正常运行.因此,测量结果需要根据引入的附加流量进行修正才能够真实反映网络实际运行情况.被动测量是通过对网络流量、数据参数的监视和收集,达到完成网络测量任务的目的.被动测量机制可以在一定程度上避免对网络正常运行的干扰和测量误差的出现,使得网络性能受影响的程度很小.同时,由于监测位置相对固定,其主要用于网络流量、吞吐量、时延等具有统计意义的信息收集,进而分析链路性能等网络状态.
主动探测可动态地获得链路的重要网络指标,如瓶颈带宽、瓶颈位置以及拓扑变化等[10]信息.Dovrolis等[11-12]在探测报文间隔模型(PGM)中使用报文对技术来估计链路瓶颈带宽,通过分析这些探测报文进入与离开网络的时间间隔之间的关系,进而获得端到端的瓶颈带宽.该模型具有算法简单,测量时间短的优点,但受到背景数据流的影响,存在时间扩展和时间压缩的问题.
Jain等[13]在探测报文速率模型(PRM)中采用自加载的周期性探测流技术(Slops)测量端到端的可用带宽.PRM模型是建立在自导拥塞思想上的,利用拥塞发生时探测速率接近可用带宽的特性,通过改变发送端的探测速率,在接收端观察时延的变化情况,从而判断拥塞的开始时间,进而获得可用带宽的估计值.该模型测量精确,能够适应不同网络状态,但由于注入链路的数据相对较大,将影响网络本身状态和流量特征,甚至导致网络不稳定.
Hu等[14]应用递归报文队列技术(RPT)定位端对端链路瓶颈位置.该技术其实是融合了报文队列技术和TRACEROUTE思想.发送端通过构造和发送重复的且TTL从1开始递增的报文队列,这样使得报文队列每经过一跳便能够返回两个连续的ICMP报文,根据这两个ICMP报文被发送端接收时产生的时间离差,估算发送端到这一路由的瓶颈带宽,从而获得整条链路瓶颈的具体位置,进而方便管理员进行网络优化配置与调整.该方法具有注入数据量相对其他同类算法少,定位准确,单端检测,易于部署等优点,其不足在于对某些影响定位的参数,如注入报文长度、数目以及初始注入速率等,采用人为的经验设定,不能做到根据网络环境自适应调整.
此外,Siekkinen等[15]和Maier等[16]研究了在ISP部署被动测量的方法,其主要关注流量模型和应用程序使用网络情况,同时能获得RTT和家庭用户的吞吐量.由于在家庭网络内部没有比较有利的监测点,因此无法测量出用户从ISP处获得的服务所能达到的真实性能,比如用户应用程序自身的限速,于ISP处监测到的性能指标将不能反应真实的链路性能.Han等[17]在用户端部署被动测量的方法,在用户机器上安装监测软件,能方便地从用户角度监测与分析接入网络的性能,但不适合监测大规模网络的性能,同时,由于用户很少长期运行计算机,该方法难以获得长期持续性的测量结果.Sundaresan等[18]在网关处使用被动测量,既能直接测量ISP接入链路的性能,又能了解用户的使用情况以及用户行为对网络性能的影响.应用该方法可以进行长期持续性的测量,并能详细分析不同ISP的流量模式对吞吐量与时延的影响等.
主动测量方法影响被测网络的运行,其应用有一定限制,而被动测量方法几乎不会对网络运行造成影响,其应用范围较广,特别适合于长期网络监听.如果需要系统地刻画网络的运行特征,就需要合理的结合使用这两种测量方法,并以此为基础对网络进行进一步的分析管理与规划设计.
基于流的测量与传统网络中的测量细节记录非常相似,都是以流为基准.对于网络测量的流,可以定义为在同一组特定的源地址和目标地址、源端口号和目标端口号之间传递的、有着固定的协议类型,具有开始时间、结束时间的数据包的集合.例如,NSF的Surveyor,在每个参与测量的网点上部署专用的测量设备,通过互相发送和接收主动测试,分组测量并记录特定路径的单向延迟和丢包率,中心数据库设备每隔几分种就轮询一次测量设备,如果测量设备有新的性能数据,就上传到中心数据库,系统还分析了路径的不对称性、丢失率的不对称性、时延的不对称性及各地区之间传输不对称性[19];CAIDA的CORALREEF通过在线监视方式监测流状态,然后通过HTML报告生成工具生成流量测量报告[20].此外,Test Traffic Measurement(TTM-RIS)、IEPM 和CFLOWD也是很好的流测量分析工具[20-22].
网络测量能够对每一个网络元素进行被动测量.例如,NETRAMET通过向测试链接或接点发送ICMP包同时以SNMP代理收集网络接口数据实现测量目的,主要测量参数指标是带宽[23];CAIDA的IFFINDER主要通过发送UDP包到未使用的端口,测量到各IP接口,并实现连接[24];由NLANR/DAST共同开发的IPERF,通过启动IPERF服务器监听进程,监听客户端连接,主要用于测量TCP及UDP带宽,同时测量延迟抖动、丢包率[23];NSF的NAI是目前测量基础设计中较全面的项目,它通过被动方式收集包头数据、主动性能数据及用SNMP协议采集网络路由稳定性的状态数据等[25].
传统网络传输中,每一个建立起来的连接都包含一个节点对,而且能够在每个交换机中为每个节点对维护数据寄存器,用来记录节点对之间的网络情况.但IP网络的类似测量要复杂一些,因为IP是一个数据报协议,中间有许多转发结点,测量数据往往不能直接获得.对此,可以通过被动测量得到原始数据进行分析,从而达到获得数据流的整体信息.但是这种方法需要处理大量数据,而且由于路由配置可能发生一些改变,导致对节点对之间流量的跟踪会出现丢失的情况.为实现针对节点对的测量,研究者们开发了很多工具:基础的有PING,可获得节点对之间网络往返时延、丢包率与连通性等参数;TRACERT/TRACEPATH,通过向节点对的另一方发送ICMP包,以路由跟踪方式检测数据包在网络上停止的位置,实现节点对之间的测量.此外,CAIDA开发的AUTOFOCUS,通过跟踪节点对收集数据,使用RRDTOOL形成可视化的数据图和时间轴;PATH PING也能够实现为路径中的每个路由器和链路提供网络延迟和数据丢失信息;Planet Lab可实现各节点对之间的测量[26-27].
路径就是IP分组从某个源端节点传送到目标端节点的过程中,所经过的一系列链接的集合.基于路径的网络测量通常是针对MPLS路由而言的.由于MPLS可以使用相对固定的路径对网络流量进行路由,所以能够在此基础上进行基于路径的测量,同时也可以开发基于流量的接入控制机制以及对传送的特定服务的性能进行跟踪和评估.
目前,SKITTER通过从几个源点到成千上万个目标点收集到的路径信息,采用断层摄像技术,动态发现和跟踪Internet拓扑结构,通过可视化技术实现绘制全球互联网拓扑结构[28].由NSF和DARPA开发的NIMI则通过主动测量方式,在互联网上大量部署Paxson研制的网络探针进程NPD(Network Probe Daemon),监测互联网络路径性能状况,NIMI由探针、联系配置中心、数据分析中心和客户测量端4部分组成[29].另外,TRACEROUTE可测量P2P路由信息;MTRACE可测量P2P多播路由信息;TRENO/CAP/CAPTRENO可测量批传输容量;ZING可测量单向延迟和往返延迟及丢包率;MFLECT利用组播方法研究路径特性;TRAFFICE/DISCARD测量吞吐量;SPAND(Shared Passive Network Performance)使用被动共享测量技术测量网络带宽,将结果存贮在各个域的网络测量性能数据中心共享,域中的主机可以从数据中心获取信息以预测性能,而不增加网络负载[30].
网络测量技术对于网络发展具有重要意义.网络测量技术后续的研究工作将针对不同测量工具的协同工作,合理构建大规模网络测量体系结构,测量和分析结果的可视化研究,测量所造成的网络安全问题,对未来网络的发展趋势分析等方面.随着对网络行为的深入研究,网络开发者和使用者会更加了解网络自身性质,增加应用种类,将网络服务质量进一步提高.
:
[1]裴昌幸.现代通讯系统与网络测量[M].北京:人民邮电出版社,2008.
[2]Oetiker T,Rand D.The Multirouter Traffic Grapher[EB/OL].[2011-02-18].http://oss.oetiker.ch/mrtg/,2012-09-10.
[3]Paessler-the NetworkMonitoring Company.PRTGManuals[EB/OL].[2012-08-10].http://www.paessler.com/support/manuals/,2012-09-10.
[4]Shipway S.Using MRTG with RRDtool and Routers2[M].Cheshire Cat Publishing,2011.
[5]The WinPcap Team.Winpcap documentation[EB/OL].http://www.winpcap.org/.
[6]Graderer G ,Loschmidt P,Sauter T.Real-time Enabled Debugging for Distributed Systems[C]//Proceedings of the ETFA2008IEEE International Conference.Hamburg:IEEE Press,2008.
[7]Zhang S C,Zhang C G ,Yang Q.DataPreparation forData Mining[J].Applied Artificial Intelligence,2003,17(5-6):375-381.
[8]The Cacti Group.Official Cacti Documentation[EB/OL].[2011-01-15].http://docs.cacti.net/,2012-05-10.
[9]Paxson A V.A Reactive Measurement Frame work[C]//Proceedings of the9th International Conference on Passive and Active Network Measurement.Cleveland OH USA:Springer Publisher,2008.
[10]Cunha I,Teixeira R,Veitch D,et al.Predicting and Tracking Internet Path Changes[C]//Proceedings of ACM SIGC OMM'11.Toronto:ACM Press,2011.
[11]Dovrolis C,Ramanathan P,Moore D.What do PacketDispersion Techniques Measure[C]//Proceedings of IEEE INFOC OM'01.Anchorage(Alaska):IEEE Press,2001.
[12]Dovrolis C,Ramanathan P,Moore D.Packet-dispersion Techniques and a Capacity-estimation Methodology[J].IEEE/ACM Transactions onNetworking,2004,12(6):963-977.
[13]Jain M,Dovrolis C.Pathload:A Measurement Tool for end-toend Available Bandwidth[C]//Proceedings of Passive and Active Measurements(PAM)Workshop,2002.Fort Collins,Colorado,USA:CoteSeer,2002.
[14]Hu N ,Li L,Mao Z M,et al.Locating Internet Bottlenecks:Algorithms,Measurements,and Implications[C]//Proceedings of ACM SIGC OMM'04.New York:ACM Press,2004.
[15]Siekkinen M,Collange D,Urvoy-Keller G ,et al.PerformanceLimitations of ADSL Users:a Case Study[C]//8th International Conference,PAM2007.Louvain-la-Neuve:SpringerBerlin Heidelberg,2007.
[16]Maier G ,Feldmann A,Paxson V ,et al.On Dominant Characteristics of ResidentialBroadband Internet Trafficc[C]//Proceedingsof the9th ACMSIGCOMMConference on Internet Measurement Conference.New York:ACM Press,2009.
[17]Han D,Agarwala A,Andersen D G,et al.Mark-and-sweep:getting the inside scoop on neighborhood networks[C]//Proceedingsof the8th ACMSIGCOMMConference on Internet Measurement Conference.New York:ACM Press,2008.
[18]Sundaresan S,Donato W de,Teixeira R,et al.Broadband Internet Performance:A View from the Gateway[C]//Proceedings of ACMSIGCOMM'11.Toronto:ACM Press,2011.
[19]Calyam P,Lee C-G,Ekici E,et al.Orchestration of Networkwide active Measurements for Supporting Distributed Computing Applications[J].IEEE Transactions on Computers,2007,56(12):1629-1642.
[20]The Cooperative Association for Internet Data Analysis.CAIDA Tools-Overview of CAIDA Software Tools[EB/OL].[2011-12-15].http://www.caida.org/tools/,2012-05-11.
[21]RIPE(Reseaux IP Europeens)NCC.Test Traffic Measurement Service[EB/OL].[2012-06-16].http://www.ripe.net/data-tools/stats/ttm/test-traffic-measurement-service,2012-06-21.
[22]Shriraml A,Murray M ,Hyun Y,et al.Comparison of Public end-to-end Bandwidth Estimation Tools on High-speed Links[C]//6th Interneational Workshop,PAM2005.Boston:Springer Berlin Heidelberg,2005.
[23]Nlanr,Dast.Iperf[EB/OL].[2008-03-19].http://iperf.sourceforge.net/,2012-08-10.
[24]Govindam R,Tangmunarunkit H.Heuristics for Internet Map Discovery[C]//Proceedings of IEEE INFOCOM,2000.Tel Aviv:IEEE Xplore,2000.
[25]Gregor T Mc.The Nlamr Network Analysis Infrastructure[J].IEEE Communications Magazine,2000,35(5):122-128.
[26]Estan C,Savage S,Varghese G.Automatically Inferring Patterns of Resource Consumption in Network Traffic[C]//Proceedingsof ACM Sigcomm,2003.New York:ACM Press,2003.
[27]Banerjee S,Grin T,Pias M.The Interdomain Connectivity of Planetlab Nodes[C]//Proceedings of PAM,2004.Antibes:Spinger Berlin Heidelberg,2004.
[28]The Cooperative Association for Internet Data Analysis.Skitter[EB/OL].[2011-12-15].http://www.caida.org/tools/measurement/skitter/,2012-05-11.
[29]Paxson V,Adams A ,Mathis M.Experiences with NIMI[C]//SAINT2000.Proceedings of Applications and the Internet(SAINT)Workshops.Nara:IEEE Conference Publications,2002.
[30]Srinivasan S,Mark S ,Katz R H.SPAND:Shared Passive Network Performance Discovery[C]//USENIX.Proceedings of the1st USITS.Monterey:The Advanced Computing Systems Association,1997.
Network Measurement Methods and Their Applications Summary
WANGYizhi,WANGChengyan
(School of Information Science and Technology,Xiamen University,Xiamen 361005,China)
Abstract:With the rapid development of networks and communication business,users'demands on network bandwidth and other resources increase and network applications become more diversified.In general,that the quality of network service(QoS)degrades is caused by that the burden of network traffic is overweight and the routing equipments are overload.In order to guarantee QoS,administrators have to regularly mea sure various performance metrics to evaluate the status of network.The function modules of network mea surement system,the popular tools of network measurement,some network measurement methods(active and passive)and their applicationswere introduced in this paper.The advantages and disadvantages of typ ical measurement methods were analyzed.
Key words:network measurement;performance metric;active measurement;passive measurement
TP393.06
A
1004-5422(2012)04-0341-05
2012-09-24.
中央高校基本科研业务费专项资金(2010121066)资助项目.
王意志(1982—),男,高级工程师,从事网络测量技术研究.