因特网在历史上一直没有被有效监测和测量。30多年来,随着因特网规模的迅速扩大,加上因特网本身也出现了重大的变化,使因特网的网络测量成为迫切需要解决的问题。
在因特网的变化中,最突出的就是网络从单纯的数据传送发展到多媒体信息传送。这就使得网络流量的形式发生了极大的变化。这种变化动摇了因特网设计的理论根基,使得网络流量模型从基于泊松分布变为基于自相似。
人们对互联网的流量特征、性能特征、可靠性与安全性特征以及网络行为模型等缺乏理解和缺乏精确描述的问题已经严重影响到因特网的发展和对因特网更加有效的利用,因此,许多专家提出应当更加深入地认识现有因特网的一些内在机制。而认识事物的第一步就是要测量它,并用数字表示出来。由此,“网络测量”这个新的研究领域应运而生。
1 网络测量的概念
对网络进行研究的最终目的是为了建立高效、稳定、安全、互操作性强、可预测以及可控制的网络,而网络测量是获得第一手网络行为指标和参数的最有效的手段。在对网络进行测量和测试的基础上建立网络行为模型,并用模拟仿真方法搭建从理论到实践的桥梁,是理解网络行为的十分有效的途径。
因特网的网络行为与传统电信网有很大差别。由于传统电信网使用的是电路交换,用户在呼叫完成后进行通话时,正常情况下,从用户端所感受到的通信质量一般都是确定不变的(因为网络性能通常符合有关的电信标准),并且不受其他用户通话情况的影响。如果用户发现通信质量突然变坏了,则表明网络出现了异常情况。但对于使用分组交换的IP网络,情况就很不一样。用户在传送一连串的分组时,每一个分组的传送都和当时其他用户对网络的使用状况密切相关,每一个分组的传送所反映出的网络行为都是动态变化的(这是正常情况)。因此,网络测量对于因特网具有特殊的意义。
网络测量和网络行为分析是高性能协议设计、网络设备开发、网络规划与建设、网络管理与操作的基础,同时也是开发高效能网络应用的基础。网络测量和网络行为分析可以为互联网的科学管理和有效控制以及为互联网的发展与利用提供科学的依据。
从概念上讲,网络测量是收集和分析网络协议运行性能的手段,可以帮助人们搞清网络(局域网或广域网)有时不能正常工作的原因。因此,当前网络测量已成为网络研究的重点之一。
在20世纪90年代初期就有人开始研究因特网的测量。1995年美国科学基金会(NSF)系统地进行了因特网通信量的较大规模测量。1996年初,美国应用网络研究国家实验室(NLANR)在NSF支持下召开了有关因特网统计与分析的研讨会ISMA[1]。此后,依托于美国加州大学圣地亚哥分校超级计算中心的因特网数据分析合作组织(CAIDA),对网络测量的相关理论和方法展开了系统性研究。IETF也成立了专门的工作组IPPM来制定IP网络的运行参数。1997年,V. Paxson的博士学位论文“因特网的端到端动态性能的测量与分析”成为网络测量领域中的经典文献[2]。
实际上网络测量也是一种技术,它通过收集数据或分组的踪迹来显示和分析在不同网络应用下网络中分组的活动情况。
从研究的实质上看,网络测量可以把因特网从技术上升到科学,并且能够更好地指导应用。可以说,对因特网的测量是对因特网进行控制的基础和前奏。
网络测量的具体用途可分为以下几大类:
(1)故障诊断
某些网络部件的故障会干扰整个网络的运行,例如,广播风暴、非法分组长度、地址错误、安全性攻击等,需要对这些故障进行诊断。
(2)协议排错
网络的研制者经常要对网络应用和网络协议“新的、改进的”版本进行测试。而网络测量能够为新协议和应用程序的正确运行提供手段,使其和标准保持一致,或使老的版本向后兼容。
(3)网络流量特征化
网络测量可使用统计技术来分析经验数据,从而提取出网络应用或网络协议的特征。流量特征化使设计的网络协议和网络设备具有更好的特性。
(4)性能评价
网络测量可用来考察某个协议或某个应用在因特网中的性能水平。网络测量的详细分析能够帮助确定性能“瓶颈”。一旦解决了被确定的性能问题,就能够研制性能更好的新协议。
(5)其他用途
网络测量还有许多其他的用途,例如,用于选择服务器/ISP设备,用于验证网络配置,用于设计因特网的新应用,用于配置网络或服务器,用于广域网中的负载平衡以及用于计费等方面。
网络测量可放在不同的层次上,如在应用程序上,在主机上或在网络上;也可以放在不同层次实体的交互过程中,如应用程序到主机或网络的交互中。
因特网的测量有许多常用的指标。例如,分组时延(单向或往返时延)、丢包率(即分组丢失率)、带宽(包括容量、“瓶颈”带宽、可用带宽)、可达性、路由和跳数、网络系统的性能(包括服务器性能、客户性能和网络路径性能)等。
当前网络测量的几个重点研究领域包括流量特征、网络拓扑、性能评价以及路由选择等。分组俘获(使用基于以太网硬件的Libpcap标准和基于ATM硬件的LibCoral标准)、数据分析以及三维图形表示(包括使用动画技术)等方法被广泛使用。
网络测量可以给从事网络工作的人,比如负责网络日常运营维护的ISP、网络工程建设的集成商、网络设备的生产商、互联网用户和网络研究人员等带来益处。
2 因特网流量的特点
过去10年间,因特网测量方面取得了很多成果,其中最重要的是C. Williamson的观察结果。这些结果虽然不全面,但却包括了重要的结论。下面给出这些结论[3]:
(1)因特网的通信量连续地变化。不仅是通信量本身,通信量的组成、协议、应用以及用户等也都在改变。对现有网络收集的数据仅仅是在因特网演化过程中的一个“快照”。不能把通信量的结构视为不变的。
(2)由于因特网的异构特性,描述聚合的网络流量特点很困难。在因特网中存在着大量不同类型的应用、多种协议、多种接入技术和多种接入速率,同时用户行为及因特网本身也是变化的。
(3)网络流量具有“邻近相关性”效应。表明因特网流量的模式非完全随机。因特网流量的结构与用户在应用层发生的任务有关,因此网络中传送的各分组并非是独立的。邻近相关性包括时间上的邻近相关性和空间上的邻近相关性。在主机级、路由器级和应用级都有该效应。
(4)分组流量并非均匀分布。因特网上主机的分组流量很不均匀,例如,10%(或20%)的主机上分布了总流量的90%(或80%),这主要是因为使用了客户服务器方式。此外,地理因素也是原因之一。
(5)分组长度分布呈双模态(双尖峰分布)。许多短分组包括交互式的流量和确认,这类分组约占40%;许多长分组是批量数据文件传输类型的应用,这些应用使用尽可能长的分组(基于最大传送单元),这类分组约占50%。中等长度的分组很少,仅10%左右。
(6)会话的到达过程是泊松过程。因特网的最终用户是人,这些人独立地随机发起对因特网的接入,例如,用户向万维网服务器请求单个页面时就服从于泊松过程。
(7)分组到达不是泊松分布。经典的排队论和网络设计是基于分组的到达过程是泊松分布(无记忆的指数分布)的假定。然而大量的实验结果指出,分组是突发式到达的(分组有成群的特性),分组到达的前后有关联,分组的到达时间并非独立和服从指数分布的。突发到达的特点是:平均值可能很低,但峰值可能很高,这与使用的时间段有关。流量可能是自相似的,在较长的时间范围内存在突发性(突发性难以精确定义)。
(8)多数TCP会话是简短的。例如,90%的会话所交换的数据少于10 KB,90%的交互连接仅持续几秒钟,80%的万维网文档传送小于10 KB。
(9)流量是双向的,通常是不对称的。数据通常在两个方向流动,但两个方向的数据量往往相差很大(尤其是下载万维网的大文件)。多数应用都使用TCP/IP流量。
(10)在因特网的分组流量中,TCP的份额占绝大部分。至今为止TCP协议一直是最重要的协议。即使目前IP电话和多播技术(这些应用是在UDP上运行)得到广泛应用,TCP仍处于主导地位。在可预见的未来仍是如此。正因为这样,许多研究仅关注TCP。
3 网络测量模式与测量技术
目前已有上百种网络测量工具可供使用。这些测量工具可按以下模式和技术进行分类。无论是硬件还是软件,网络测量设施都要求与网络直接连接,以便观察网上全部或部分的分组流量,或者利用过滤技术只收集感兴趣的流量。网络测量采用基于广播或多播的网络技术,具有超级用户权限。
网络测量可以使用硬件测量工具或软件测量工具。硬件测量工具是专门的设备,价格昂贵;软件测量工具的价格便宜,但性能和功能稍差。网络测量分为被动测量与主动测量。被动测量用于观察和记录网上的分组,不注入自己的流量,因此被动测量又称为非侵扰式测量,如tcpdump、NeTraMet等。被动测量不产生探测流量,但缺点是如果网络上没有流量,就无法工作,同时它还要求特殊的装置或改变协议。主动测量方法使用测量设备产生的分组对因特网进行探测,并测量出其特征,因此主动测量又称为侵扰式测量,例如:Ping用于估计到因特网特定目的地的网络时延,Traceroute用于检测因特网中的路径,Pathchar用于估计沿某路径的链路容量和时延等。
SNMP协议是一种网元级的被动测量方法。而端到端测量是一种网络级的主动测量方式。可结合两者特性进行测量:在大多数情况下利用端到端测量方法来判断网络整体性能是否正常,当发现异常时,再采用网元级测量方法逐点找出问题所在。
某些网络分析仪支持实时收集和分析网络数据,并以图形方式在线实时显示出来。也有些网络测量仪器只是实时收集和存储数据,分析则留待离线进行。离线分析的方式可以得出更加全面的结论。
从被测量对象上看,有局域网测量与广域网测量之分。早期的网络测量都是在以太网局域网上进行的。由于在一个组织内进行,安全性问题易于处理。利用局域网广播特性,可用杂模式监听进行测量。而广域网测量具有管理、安全和隐私的问题。对于与因特网有单个连接点的机构而言,测量设备最好放在靠近默认路由器的链路上。若同时测量客户、服务器和网络的行为,就能了解到更为全面的端到端网络性能。
根据收集数据和分析流量的层次不同,可以用不同的测量工具。许多设备支持对多层协议的分析,但对每种网络应采用不同的接口卡(如以太网卡、ATM网卡、帧中继卡、无线网卡等)。对IP和高层协议,后端分析引擎则是相同的。
测量工具中的成对分组与分组列车常被用来测量网络中的瓶颈带宽。成对分组是向网络连续发送两个分组。分组列车则是连续发送k(k > 2)个分组作为一组列车,对网络进行测量。
根据测量端口的不同,可以分为点对点测量(两个端点间的独立测量)和多点测量(多个端点间的协作测量)。对于与具有多个端口的繁忙路由器连接的链路而言,多点测量可能是避免干扰流的唯一方法,因此,多点测量是值得探讨的新领域。独立测量方式只需一台设备就能够得到测量结果,而协同测量方式往往需要多台设备交互工作才能测量到所需要的结果数据。共享多点测量的信息,能够消除冗余的探测流量。多点测量不仅是协作的,而且是主动探测。
因特网的测量还有相当多的困难。如:测量分组可能丢失,路由随时间变化,一些路由器关闭ICMP分组的测试功能等等。
4 相关研究
正在进行的网络测量研究项目有:
(1)国家“863”计划项目课题:网络测量技术与系统。
(2)江苏省自然科学基金项目:互联网网络行为测量关键技术的研究。
(3)自研项目:网格监测。
互联网性能监测系统由监测服务器和被测对象两部分组成[4]。它是一种易于实施、操作的自动化系统,以端到端、定量、可视化的方式监视、分析、管理互联网运营的性能参数。在全军IP网上近两年的实践表明,该系统能够为网管人员提供客观公正、综合及自动化程度高的网络级网管工具。
宽带网监测系统用于全面监测大型IP网络的运营,提供的主要功能包括:实时流测量(网络快照、流跟踪曲线)、历史流测量与查询(类似于程控中的长话记录)、流量阈值告警、访问控制和分析功能(协议、应用、主机活动量)。该系统采用分布式网络测量结构,提出并研制了网络测量策略系统,用以调度测量平台上资源;使用了系统自配置和服务发现技术、流测量技术(包括分组匹配和特定流实时监测等)、阈值报警技术、访问控制技术、数据分析技术以及SNMP代理技术。
5 结束语
网络测量作为理解网络行为和认识网络规律的基本手段,作为评估、管理网络性能的重要方法,已成为网络研究的热门课题之一。作为一个运动中的目标,因特网的规模在不断扩大,同时其本身内涵也在不断演化,这就要求网络测量工具能够适应因特网的这种变化。因此,针对中国的具体情况,研制和开发有自主知识产权的网络测量系统是很有必要的。
6 参考文献
[1] ISMA Workshops. Internet Statistic and Metrics Analysis [DB/OL]. http://www.caida.org/outreach/isma/9602/.
[2] Paxson V. Measurement and Analysis of End-to-End Internet Dynamics [D]. Berkeley: Univ of California, Berkeley, 1997.
[3] Williamson C. Internet Traffic Measurement [J]. IEEE Internet Computing, 2001(10/11):70-74.
[4] 陈鸣, 李兵, 杨扬等. 分布式网络性能监测系统 [J]. 电信科学, 2003,19(5):60-63.
[摘要] 文章概述了网络测量的基本概念和基本方法,介绍了C. Williamson对因特网流量的观察结果,探讨了网络测量模式与测量技术,最后介绍了解放军网络技术研究中心在网络测量方面所展开的研究工作。
[关键词] 网络测量;因特网流量;IP网络监测工具
[Abstract] The basic concept and fundamental methodologies of network measurement are presented. C. Williamson's observation results on the Internet traffic are reviewed. The network measurement modes and relevant technologies are discussed. Finally the research projects on network measurement conducted by the PLA network technology research center are briefly introduced.
[Keywords] network measurement; Internet traffic; IP monitoring tool