您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > NetFlow网络业务流量监测技术的应用和设计
NetFlow网络业务流量监测技术的应用和设计随着宽带互联网在中国的迅速发展,全国各大电信运营商的网络规模都在不断扩张,网络结构日渐复杂,网络业务日趋丰富,网络流量高速增长。电信运营商需要通过可靠、有效的网络业务流量监测系统对其网络以及网络所承载的各类业务进行及时、准确的流量和流向分析,进而挖掘网络资源潜力,控制网络互联成本,并为网络规划、优化调整和业务发展提供基础依据。目前国内电信运营商已建的网络管理系统所能实现的流量监测功能非常有限,远远不能满足运营商的迫切需要。1、互联网业务流量监测技术的应用及现状1.1互联网业务流量监测技术的应用流量监测技术的应用主要包括以下几个方面:a)为网络出口互联链路的设置提供决策支持通过对网络出口流量和流向的分析,可以详细了解网络内部用户对其他外部网络的访问情况,从而有效地选择与其他网络的互联方式和互联地点,节约互联链路费用。b)掌握用户对其他运营商的访问情况通过对与其他网络互联流量的监控,分析网络内部用户访问其他外部网络的业务特点和主要流量的去向,准确掌握内部用户对外网的兴趣点,找到最多应用的热点信息内容。根据分析结果进行相应网络内容的建设,将用户感兴趣的热点信息内容放到内部网络,减轻互联链路的压力。c)评估分支网络的成本和价值通过对各个分支网络出入流量的监控,分析流量的大小、去向及内容组成,了解各分支网络占用带宽的情况,从而反映其占用的网络成本,也可以了解其业务开展情况,并作出价值评估。d)提供重要应用和大客户统计分析通过对重要应用和大客户的流量进行统计分析,掌握重要应用和大客户的流量状况,进行网络带宽的成本分析,有助于在网络服务质量和网络成本之间取得最佳平衡。e)基于IP的计费应用和服务等级协议(SLA)的校验服务通过对大客户接入电路上的流量进行监控分析,可以统计出业务类型、服务等级、通信时间和时长、通信数据量等参数,为基于IP的计费应用和SLA的校验服务提供数据依据。f)掌握网络状况通过对网络中一些特定流量的长期监控,有助于网管人员了解网络的流量模型,所形成的基准数据可供网管人员正确分析网络使用状况,并可及时发布异常警讯,在故障事件爆发或扩大前实施防范措施,进而提升网络的整体质量及效能。g)实现对网络异常通信的检测,重点防范分布式拒绝服务(DDoS)的攻击和大范围的蠕虫病毒发作通过对网络内流量的实时分析,有助于及时发现网络中出现的异常流量,迅速分析出异常流量的具体属性。通过与网络通信正常基线的比对,管理员对出现的异常通信可以快速定性是否为网络安全攻击,确定安全攻击的类型,评估本次攻击的危险程度及可能造成的影响范围,并采用相应技术手段实施事故应急处理。h)为网络优化提供数据依据通过流量分析,可以为多出口的流量负载均衡、重要链路的带宽设置、路由选择和设定QoS等网络优化措施提供数据依据。1.2互联网业务流量监测技术现状分析目前国内电信运营商的运维部门大都还没有建设一套能够完全满足管理需求的互联网业务流量监测系统。现有的网络管理系统虽然可以提供业务流量监测手段,但基本上只是采用一些通用型的网络链路使用率监视软件,如利用免费的MRTG和简单网络管理协议(SNMP),对网络的重点链路和互联点进行简单的端口级流量监视和统计;或采用在网络中部分重点业务接入点(POP)加装远程监控(RMON)探针的方式,利用RMONI/Ⅱ协议对网络中部分端口进行网络流量和上层业务流量的监视和采集。上述两种被普遍采用的网络流量监测系统都有着明显的技术局限性。SNMP采集端口的数据主要是在网元层用来监控网络流量和设备的性能,而且SNMP采集的数据是基于端口的,无法提供端到端的准确的流量信息,因此对流向的统计手段不明确。利用RMON探针对运营商网络进行流量和流向管理可以部分弥补SNMP的技术局限性,其业务分析和协议分析功能较强。但是,采用RMON探针建设的流量监测系统也有处理性能不足和难以在大型网络普遍部署的局限性。为克服现有网管系统对网络流量和流向分析功能的技术局限性,运营商迫切需要寻找一种功能丰富、成熟稳定的新技术,对现有管理系统中流量信息的采集和分析方式进行改造和升级。新的流量信息采集和分析技术应具备对运营商的运行网络影响小、无需对网络拓扑进行改变就能平滑升级的技术特征,既可以对网络中各个链路的带宽使用率进行统计,又可以对每条链路上不同类型业务的流量和流向进行分析和统计。本文主要讨论功能强大、应用广泛的NetFlow技术。2、流量监测系统建设方案中需要考虑的问题2.1NetFlow技术简介NetFlow是Cisco公司提出的网络数据包交换技术,该技术首先被用于网络设备对数据交换进行加速,并可同步实现对高速转发的IP数据流(Flow)进行测量和统计。经过多年的技术演进,NetFlow原来用于数据交换加速的功能已经逐步改由网络设备中的专用集成电路(ASIC)芯片实现,而对流经网络设备的IPFlow进行测量和统计的功能却更加成熟,并成为当今互联网领域公认的最主要的IP流量分析、统计和计费行业标准。为对运营商网络中不同类型的业务流进行准确的流量和流向分析与计量,首先需要对网络中传输的各种类型数据包进行区分。由于IP网络的非面向连接特性,网络中不同类型业务的通信可能是任意一台终端设备向另一台终端设备发送的一组IP数据包,这组数据包实际上就构成了运营商网络中某种业务的一个Flow。如果管理系统能对全网传送的所有Flow进行区分,准确记录传送时间、传送方向和Flow的大小,就可以对运营商全网所有业务的流量和流向进行分析和统计。通过分析网络中不同Flow之间的差别,可以发现判断任何两个IP数据包是否属于同一个Flow,实际上可以通过分析IP数据包的以下7个属性来实现:a)源IP地址;b)目标IP地址;c)源通信端口号;d)目标通信端口号;e)第三层协议类型;f)服务类型(TOS)字节;g)网络设备输入或输出的逻辑网络端口(iflndex)。Cisco公司的NetFlow技术就是利用分析IP数据包的上述7个属性,快速区分网络中传送的各种不同类型业务的Flow。对区分出的每个Flow,NetFlow技术可以进行单独跟踪和准确计量,记录其传送方向和目的地等流向特性,统计其起始和结束时间、服务类型、包含的数据包数量和字节数量等流量信息。在NetFlow技术的演进过程中,Cisco公司一共开发出了NetFlowV1、NetFlowV5、NetFlowV7、NetFlowV8和NetFlowV9等5个主要的实用版本。下面对网络流量和流向分析系统中最常用的NetFlowV5数据输出的数据包格式作一简单介绍。图1为NetFlowV5输出数据包的包头格式。图2为包含在每个NetFlowV5输出数据包中的具体Flow的流量和流向统计信息的数据格式。图1NetFlowV5输出数据包的包头格式图2NetFlowV5输出数据包中每个Flow的具体流量和流向统计信息格式NetFlow的数据输出要求先在路由器和交换机上定制NetFlow流输出,并选择输出流的版本、个数、缓冲区的大小等,配置相应NetFlow流量收集器(FlowCollector)的IP地址、端口等信息。此时路由器或交换机即可以用户数据报协议(UDP)的方式向外发送流信息,然后在NetFlowFlowCollector端配置接收端口号,设置汇聚、过滤策略和流量文件存放目录、格式等。NetFlow有非采样和采样两种使用模式。一般来说,NetFlowFlowCollector都选用UNIX工作站来收集数据,NetFlowFlowCollector收集的数据将存放在本地磁盘中(路径由用户定义)。同时,它也可以通过网关以Socket方式发送信息到其他网管分析软件,或直接读取存放在NetFlowFlowCollector工作站中的数据文件,对其进行分析处理。NetFlow记录的流包含了丰富的信息,非常适合于网络性能分析。NetFlow不需要其他硬件流量设备的支持,开启和关闭都非常方便,因此在国外已有很多运营商用它来收集流量,服务于网络规划、设计和优化等领域。但开启NetFlow需要消耗一定的路由器资源(CPU和内存)。根据NetFlow的特点,该技术非常适用于大型网络。NetFlow采集实施成本较低、安装方便,而且不受速率的限制,是目前运营商流量监测的首选技术。采集到的NetFlow数据,结合边界网关协议(BGP)路由信息,可以更加精确地分析路由信息和互联流量的自治域(AS)属性。2.2流量采集对业务网络的影响评估2.2.1带宽占用采用NetFlow方案不要求处理从某个接口接受到的每个数据包,用来对被监控路由器进行流量分析的数据来自采集到的NetFlow数据,从路由器送出的非采样NetFlow数据不到流经该路由器数据量的1%,使用采样NetFlow时数据更为大大减少。根据计算,在采样率为1000:1时,对10Gbit/s的流量进行NetFlow分析,只产生1.3Mbit/s的流量。因此,NetFlow产生的这部分流量对于骨干网的带宽占用很少。2.2.2路由器性能消耗利用NetFlow技术实现流量监测需要路由器开启NetFlow协议以配合采集数据,因此会对路由器的CPU造成一定的负担。Cisco公司和Juniper公司等路由器厂家都针对这些问题作了详细的研究。不同的产品系列和NetFlow协议是否经过采样等,对CPU的影响程度也不同。根据Cisco公司的“NetFlowPerformanceAnalysis”白皮书,在非采样方式下,路由器开启NetFlow后,其CPU使用状况如下:a)如果有10000条同时在线的Flow,则路由器的CPU使用率平均增加7.14%;b)如果有45000条同时在线的Flow,则路由器的CPU使用率平均增加19.16%;c)如果有65000条同时在线的Flow,则路由器的CPU使用率平均增加22.98%。这些数据是基于不同的产品系列进行测试的平均值。在采样方式下开启NetFlow对路由器的CPU影响会更小。根据Cisco公司的资料显示,12000系列的路由器在非采样方式下需要增加23.5%的CPU使用率来处理65000条Flow,而在采用100:1的采样率时CPU使用率仅增加3%。在不同的采样率下,CPU的负担增加程度也不同。路由器上不同类型的线卡对NetFlow的支持情况也有所不同。仍以Cisco公司路由器为例,Engine3和Engine4+的线卡是采用专门的硬件来处理NetFlow数据,开启NetFlow对路由器性能影响较小;而通常认为Engine2的线卡开启NetFlow对路由器性能的影响相对较大。2.3NetFlow采样率的设定在采样方式下,路由器按照一定的采样率采集NetFlow数据,流量分析系统接收NetFlow数据对网络的流量进行计算和分析,因此路由器的采样率在很大程度上决定了分析结果的准确性。如果路由器设定的采样率过高(如1000:1或更高),流量分析的误差将加大,尤其对小Flow或混杂在大流量中的部分关键的小Flow的分析,更容易产生比较大的误差。在路由器上开启NetFlow会消耗一些设备资源,特别是需要占用一些CPU和Memory等重要资源,而且采样率越低,对资源的占用越大。如果设置过低的NetFlow采样率会对路由器的性能带来较大的影响。因此,应根据路由器上需要打开的NetFlow功能板卡的主要类型,并结合设备上开通的电路的流量情况灵活地设置路由器的NetFlow采样率,包括100:1、500:1、1000:1和3000:1等。2.4流量采集点的设置为了实现对所监测网内的所有流量进行分析,首先需要合理地设置流量采集点。采集点的设置非常关键,直接影响到系统能否准确地对流量进行全面分析。下面主要针对运营商网络优化应用提出采集点设置建议方案。由于主要是实现对运营商网络的优化,所以不一定需要对网络中传送的所有流量数据进行100%的监测。为减少对网络设备的资源占用,降低对系统的容量要求,可以选用数据包抽样的NetFlow数据采集方式,对网络中的所有流
本文标题:NetFlow网络业务流量监测技术的应用和设计
链接地址:https://www.777doc.com/doc-4390597 .html