收藏 分销(赏)

NetFlow流量采集与聚合的研究应用实现.doc

上传人:快乐****生活 文档编号:2509630 上传时间:2024-05-30 格式:DOC 页数:19 大小:1.08MB
下载 相关 举报
NetFlow流量采集与聚合的研究应用实现.doc_第1页
第1页 / 共19页
NetFlow流量采集与聚合的研究应用实现.doc_第2页
第2页 / 共19页
NetFlow流量采集与聚合的研究应用实现.doc_第3页
第3页 / 共19页
NetFlow流量采集与聚合的研究应用实现.doc_第4页
第4页 / 共19页
NetFlow流量采集与聚合的研究应用实现.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

1、NetFlow流量采集与聚合研究实现时间:-07-10 09:21:32来源:当代电子技术作者:郭剑云 曹庆华0 引 言近年来,随着信息技术飞速发展,越来越多公司和大型机构在其内部构建基于网络应用,复杂限度及对网络依赖限度日益提高,各种各样网络问题也随之产生。网络流量监测是网络管理和系统管理一种重要构成某些,网络流量数据为网络运营和维护提供了重要信息。这些数据对网络资源分布、容量规划、服务质量分析、错误监测与隔离、安全管理都十分重要。因而,对网络流量及有关状况实行科学合理监管和进一步分析,成为网络管理重要环节之一;同步,它也为网络问题提供有效解决方案及进行网络规划。 当前网络流量分析办法重要有

2、基于SNMP、基于实时抓包分析、基于网络探针和基于:Flow技术等几种。NetFlow基于Flow技术,当前已得到大多数网络设备厂商支持,提供了网络监测方面非常完善应用。基于NetFlow流量采集办法可以获得涉及源目主机IP、应用合同类型、源目端口等详细信息,依照这些信息就可以对合同(应用)、主机IP(顾客)以及AS域等进行记录排行和趋势分析,也可对异常流量进行监测分析。此外,NetFlow避免了大量布置和配备监测探针复杂过程,使得网络性能分析更加全面、灵活且简朴易用。l NetFlow技术 NetFlow是Cisco公司提出基于Cisco IOS系统一种应用。它用于提供网络设备上数据包形成“

3、流”记录信息,并逐渐演变成为网络流量记录和安全分析重要手段。当前运用:NetFlow可以实现网络流量监测,顾客应用监控,网络安全,网络规划以及流量计费等功能。 NetFlow有两个核心组件:NetFlow缓存,存储IP流信息;NetFlow数据导出或传播机制,NetFlow运用此机制将数据发送到网络管理采集器。11 流(Flow)定义 一条流由一种源主机与一种目主机间单方向传播网络数据包构成,其中,源和目主机由各自IP地址和端标语来标记。一条流普通由如下七个核心字段惟一标记: 源地址 目地址 源端标语 目端标语 第3层合同类型(如TCP,UDP) 服务类型 入逻辑接口标示符12 流(Flow)

4、格式启动NetFlow设备会输出其缓冲区里信息,以UDP包形式传送给NetFlow流量采集器。包由包头和若干流记录构成。惯用NetFlOW输出包格式共有5个版本,它们分别是Version 1,Version 5,Ver-sion 7,Version 8和Version 9,其中V5是最为流行和成熟版本,当前得到最广泛使用。最新V9已经被列入IETF原则,并有待进一步研究和规范。V9采用了模板技术与流记录相结合方式,使NetFlow输出包格式具备动态和可扩展特性。NetFlow V9输出格式重要由三某些构成: (1)包头部(Packet Header):涉及版本号、包中数据流总数、系统时间、数据

5、流序列、数据源ID等。 (2)模板流集(Template FlowSet):包括一种或各种模板,模板是用于描绘数据流中各个数据段含义,可以在路由器上依照需要自行设立模板。 (3)数据流集(。Data FlowSet):包括各种数据流,每个数据流集通过模板ID相应某个模板。数据采集端依照模板来解析数据流。2 NetFlow流量采集与聚合21 系统概述 依照NetFlow特点,设计并实现了一种网络流量监测系统,其系统构造如图1所示。 当NetFlow采集器接受到从路由器发送来Net-Flow数据包后,采集器将进行数据包解析和数据流聚合,形成各种适合记录分析需要数据,再分门别类地存入数据库。分析器则

6、依照前端不同查询祈求,依照一定查询方略从数据库不同表中提取相应数据进行分析呈现。 本系统后台采集器和聚合解决某些用JAVA编写实现,数据库采用开源MySQL,而NetFlow流量分析运用Tomcat服务器通过Web方式呈现,前台某些用JSP编写实现。工作重点即在于数据采集、数据聚合以及数据库设计某些。22 NetFlow流采集221 采集器设计 数据采集模块是整个系统基本。由于。NetFlow数据流量非常大,为防止丢包系统采用缓冲区和线程池构造,如图2所示。 当采集器监听到一种NetFlow数据包时,将该数据包接受到缓冲区,并从包解析线程池中取出一种线程,依照相应NetFlow报文格式解析出数

7、据流信息,将该原始流信息放入缓冲区,然后将原始流存入数据库,同步采用相应聚合方略聚合原始流生成聚合流并存入相应数据库中。222 NetFlow数据包接受与解析由于NetFlow数据是借助于UDP数据报来传送,因而倘若后续解决速度跟不上数据包到达速度,则会浮现严重丢包现象。为解决高速大流量数据及时接受及较低丢包率问题,采用了多线程方式来实现。用独立两个线程分别完毕数据接受和解析操作:接受数据线程在特定IP地址监听相应UDP端口,接受到数据暂存在缓冲区中;解析线程从缓冲区提取数据,按照相应报文格式进行解析。由于接受线程和解析线程共享同一种临界资源,即接受缓冲区,需要对临界资源进行加锁操作。 下面为

8、某些实现多线程采集JAVA代码实例,其中packet为接受NetFlow数据包对象,linkedLst为linkedList容器,运用synchronized进行线程间同步。 (1) 接受线程23 NetFlow流聚合NetFlow原始数据数据量非常庞大,保存每一条流数据原始记录将会使对数据进行查询分析时产生效率低下问题,在绝大某些应用中也没有必要把数据粒度设计得如此之小。所谓流量聚合,是指对符合NetFlow数据格式原始流记录依照一定条件进行流量合并,实现多条流合并为一条过程,以实现原始流压缩整顿。231 聚合方略 流量聚合有三个核心要素:聚合条件(F)、时间粒度(T)和聚合项(C)。满足相

9、似聚合条件和时间粒度流进行流量叠加,并保存聚合项。三元组聚合方略:,其中: 按照实际流量分析需要,从F,T,C中各取出一种值构成一种聚合方略。对于T粒度要依照实际监控时间长短和监测精度来设立,普通来说T3 min适合于当天实时流量监测;T30 min用于一周流量分析;T3 h用于一月内流量分析。232 聚合实现 对于一种新采集原始流,必要能依照其所携带聚合条件信息迅速匹配与否已存在与其相似聚合条件聚合流,若有则做流量叠加,若没有则创立一条新聚合流。Hash表具备从Key迅速映射到Value特点,这种特点对于实时性较高聚合非常故意义。图3为流量聚合Iash表设计。 在图3中聚合条件(F)作为Ke

10、y,聚合项(C)作为Hash函数映射值,时间粒度(T)作为Hash表导出到数据库时间。这样可以满足实时流量监测需要,同步也压缩数据减少存储空间,提高数据查询效率。3 实际NetFlow流采集与流量监测 在本系统设计数据采集器支持下,系统数据库为前端分析提供了充分且多样化数据准备,前端程序只需通过简朴查询语句即可得到所需数据集,简化了查询工作量。运用该系统采集NetFlow数据包50 000个,时间持续约7 h,时间粒度为3 min,重要检查丢包状况,以及聚合后压缩效率。这次采集无丢包发生,表1为该系统采集数据成果。 图4是系统由所采集数据生成该时段流量监测图。4 结 语 NetFlow数据流海

11、量特性使得服务器程序效率至关重要,因而基于NetFlow流量监测重要任务是如何依照应用保存最重要网络流特性以及如何更高效地实现数据检索。基于NetFlow特点,提出了一套合用于大流量网络流量采集与聚合存储方案。流量采集通过多线程和缓冲区机制实现,有效提高了流量采集可靠性。采集原始流经聚合,并通过合理分级存储方略进行存储组织,为前端数据分析提供了全面支持。本系统在实际应用中获得了良好效果。下一步还将对采集和多级聚合存储方案进行改进,以丰富系统对网络流量记录分析功能,并力求为异常流量分析提供较为完善数据支持。第二篇:Netflow版本演进在Netflow技术演进过程中,思科公司一共开发出了5个重要

12、实用版本,即:* Netflow V1,为Netflow技术第一种实用版本。支持IOS 11.1,11.2,11.3和12.0,但在如今实际网络环境中已经不建议使用。* Netflow V5,增长了对数据流BGP AS信息支持,是当前重要实际应用版本。支持IOS 11.1CA和12.0及其后续IOS版本。* Netflow V7,思科Catalyst互换机设备支持一种Netflow版本,需要运用互换机MLS或CEF解决引擎。* Netflow V8,增长了网络设备对Netflow记录数据进行自动汇聚功能(共支持11种数据汇聚模式),可以大大减少对数据输出带宽需求。支持IOS12.0(3)T,1

13、2.0(3)S,12.1及其后续IOS版本。* Netflow V9,一种全新灵活和可扩展Netflow数据输出格式,采用了基于模板(Template)记录数据输出。以便添加需要输出数据域和支持各种 Netflow新功能,如Multicase Netflow,MPLS Aware Netflow,BGP Next Hop V9,Netflow for IPv6等。支持IOS12.0(24)S和12.3T及其后续IOS版本。在思科公司Netflow V9还被IETF组织从5个候选方案中拟定为IPFIX(IP Flow Information Export)原则。Netflow数据输出格式下面对网

14、络流量和流向分析系统中最常使用Netflow V5数据输出数据包格式进行一种简朴简介。下图为Netflow输出数据包包头格式:下图为包括在每个Netflow V5输出数据包中详细数据流流量和流向记录信息数据格式:Netflow V9数据输出格式与V5有较大区别,重要是由于Netflow V9采用了基于模板式数据输出方式。网络设备在进行Netflow V9格式数据输出时会向上层管理服务器分别发送数据包模板和数据流纪录。数据包模板拟定了后续发送数据流纪录数据包格式和长度,便于管理服务器对后续数据包解决。同步为避免传播过程中浮现丢包或错误,网络设备会定期重复发送数据包模板给上层管理服务器。如何运用N

15、etflow技术进行IP网流量和流向分析为充分运用思科Netflow技术在网络流量和流向信息采集和分析领域强大功能,运营商可以对既有网管中心网络流量管理系统进行技术改造,在原有运用SNMP合同或RMON合同进行数据采集基本上,用Netflow技术对其进行补充甚至进行代替。下面对运用Netflow技术在运营商网络中几种典型使用方式进行简介。互联网互换中心(NAP)流量和流向监控互联网互换中心作为专为ISP提供网络互联和互换网络通信汇聚点,需要及时、精确地掌握各个ISP网络间通信流量和流向数据,为互换中心合理规划路由方略和调节ISP接入带宽提供根据。为此互联网互换中心管理员可以在核心互换设备与每个

16、ISP互联网络端口上启动Netflow数据采集。如果ISP接入端口为高速率端口(如速率超过 OC-12),还可以选取采用数据包抽样Netflow采集方式,减少对核心互换设备资源消耗和Netflow记录成果输出数据量。通过进一步分析还可以发现,互换中心作为提供ISP互联服务商,只需要关注下联ISP间通信流量和流向记录,而无需进行更加详细记录分析(如基于IP地址,IP网段,服务类型等流量和流向分析)。由于每个ISP均有各自不同BGP AS号码,因此互换中心管理员还可以进一步优化核心互换设备Netflow数据输出选项:运用Netflow V8开始支持记录数据内置汇聚功能,由核心互换设备对采集到原始记

17、录数据进行针对不同源和目地BGP AS号记录汇总,只把汇总后记录成果发送给上层管理系统。这样不但可以大大减少输出给上层管理系统记录数据量,还可以简化上层管理系统数据分析负荷,使其可以更加简便迅速地生成所需记录报表。下图为一种典型互联网互换中心运用Netflow技术进行ISP间通信流量和流向管理系统构造图:运营商间互联链路流量和流向监控每个电信运营商网络都是通过互联链路与一种或各种其他运营商网络相连接。运营商为更好地服务自己公司客户或个人顾客,需要理解自己客户访问网络模式以及访问网络资源所在位置;同步运营商为了和其他运营商谈判订立双边或多边网络访问合同,也需要对双方互相访问网络资源进行评估,这些

18、都需要对双方网络互联链路进行通信流量和流向监控和记录。为实现对运营商间互联链路流量和流向管理,管理员可以在每个与其他运营商互联边界路由器上启动Netflow,对互联网络端口进行数据采集。依照互联链路端口速率,可以选取全Netflow采集或数据包抽样Netflow采集方式。由于管理员需要分析自己客户详细网络访问纪录,理解她们需要获取网络资源确切位置,因此管理中心应当收集尽量详尽Netflow记录数据,意味着启动了Netflow数据采集边界路由器不应做任何记录数据汇聚,而应把Netflow原始记录记录直接发送给上层管理服务器。管理服务器在接受到各个边界路由器发送来Netflow原始记录记录后,可以

19、对数据进行统一分类解决或把原始记录存储到数据仓库中,由后续数据挖掘应用程序对入库数据进行细致分析,并生成运营商需要记录报表。下图为运营商运用Netflow技术监控与其他运营商间互联链路流量和流向管理系统实行示意图:公司客户流量计费随着中华人民共和国宽带互联网发展,越来越多公司客户开始运用宽带网络变化公司业务解决流程。电信运营商为了适应这种需求,需要提供比往更加丰富服务内容,如不但提供数据接入业务,还可以提供IP电话、视频和网络存储等业务。由于不同类型业务差别性,老式固定费率计费方式也开始变得不能满足客户需要。运营商需要跟随客户需求转变,同步变化自己运营支撑系统,提供各种灵活业务计费方式供客户选

20、取。运用Netflow技术,运营商可以精准记录出客户租用接入链路上传送各种不同类型业务通信流量,涉及业务类型,服务级别,通信时间和时长,通信数据量等参数。这些详细通信流量记录数据可以被运营商计费和帐务系统进行解决,生成基于客户业务流量计费账单。为实现客户业务流量计费,需要在接入客户所有接入路由器相应网络端口上都启动Netflow数据采集。由于计费数据规定高精准性,因此应当尽量采用全Netflow数据采集方式,避免使用数据包抽样Netflow数据采集方式。接入路由器采集到Netflow流量记录数据需要被统一发送给运营商计费系统,由其进行不同类型业务流量分类,汇总、批价和计费,最后由帐务系统生成提

21、交给客户计费账单。下图为运用Netflow技术采集客户业务流量信息运营支撑系统构造图:运营商网络优化为提高客户对运营商网络使用满意度,运营商需要及时理解自己网络负载状况,对的预测也许浮现网络瓶颈,适时规划将来网络升级,这些管理需求都可以通过运用Netflow技术对运营商网络进行精确网络带宽使用率监测和网络流向分析来实现。由于重要是实现对运营商网络优化,因此不一定需要对网络中传送所有流量数据进行100%监测。为减少对网络设备资源占用,减少对上层管理系统容量规定,可以选用数据包抽样Netflow数据采集方式,对核心网络重点链路进行记录。采集到抽样记录数据可以运用上层管理系统进行全网集中解决,也可以

22、分区域进行局部解决,分别计算出全网通信流量和流向记录报表或某些区域通信流量和流向记录报表。由此管理员可以迅速发现网络当前使用状况,不同链路使用率变化趋势,并可以此为根据规划网络与否需要调节和扩容,最后实现网络优化使用。下图为运用Netflow技术进行运营商核心网络优化管理系统构造图:上一篇:用Netflow进行IP网流量和流向分析()下一篇:菜鸟教程:子网掩码基本教学篇V5 :NameDescriptionOffsetField LengthinBytesSource IPaddrIP address of the device that sent the flow04Destination

23、IPaddrIP address of the destination device44Next hop router IP addressn/a84Inbound snmpIFindexSNMP index number that identifies the Inbound interface on the Packeteer unit:1 Inside (built-in)2 Outside (built-in)3 Upper_Inside (upper LEM)4 Upper_Outside (upper LEM)5 Lower_Inside (lower LEM)6 Lower_Ou

24、tside (lower LEM)122Outbound snmpIFindexSNMP index number that identifies the Outbound interface on the Packeteer unit:1 Inside (built-in)2 Outside (built-in)3 Upper_Inside (upper LEM)4 Upper_Outside (upper LEM)5 Lower_Inside (lower LEM)6 Lower_Outside (lower LEM)142Packet CountNumber of packets in

25、the flow164Byte CountTotal number of bytes in the flow204Time at Start of FlowValue of SysUpTime when the first packet in the flow was seen (measured in milliseconds)244Time at End of FlowValue of SysUpTime when the last packet in the flow was seen (measured in milliseconds)284Source PortPort number

26、 of the device that the flow went out of322Destination PortPort number of the device that the flow went to342One pad byten/a361TCP flagsProtocol state (URG=32,ACK=16,PSH=8,RST=4,SYN=2,FIN=1). For example,a value of 27 indicates the flow had a SYN,ACK,PUSH,and FIN (2+16+8+1=27).371Layer 4 ProtocolTyp

27、e of layer 4 protocol. For example,ICMP=1,TCP=6,Telnet=14,UDP=17381IP Type of Service (ToS) / DiffservValue that designates special handling of traffic (precedence,delay,throughput,and reliability)391Source Autonomous Sys IDn/a402Dest. Autonomous Sys IDn/a422Source Mask Bits Countn/a441Destination M

28、ask Bits Countn/a451Two Pad Bytesn/a462FLOW HEADER FORMATBytesContentsDescription0-1versionNetFlow export format version number2-3countNumber of flows exported in this packet (1-30)4-7sys_uptimeCurrent time in milliseconds since the export device booted8-11unix_secsCurrent count of seconds since 000

29、0 UTC 197012-15unix_nsecsResidual nanoseconds since 0000 UTC 197016-19flow_sequenceSequence counter of total flows seen20engine_typeType of flow-switching engine21engine_idSlot number of the flow-switching engine22-23sampling_intervalFirst two bits hold the sampling mode;remaining 14 bits hold value

30、 of sampling intervalFLOW RECORD FORMATBytesContentsDescription0-3srcaddrSource IP address4-7dstaddrDestination IP address8-11nexthopIP address of next hop router12-13inputSNMP index of input interface14-15outputSNMP index of output interface16-19dPktsPackets in the flow20-23dOctetsTotal number of L

31、ayer 3 bytes in the packets of the flow24-27firstSysUptime at start of flow28-31lastSysUptime at the time the last packet of the flow was received32-33srcportTCP/UDP source port number or equivalent34-35dstportTCP/UDP destination port number or equivalent36pad1Unused (zero) bytes37tcp_flagsCumulativ

32、e OR of TCP flags38protIP protocol type (for example,TCP = 6;UDP = 17)39tosIP type of service (ToS)40-41src_asAutonomous system number of the source,either origin or peer42-43dst_asAutonomous system number of the destination,either origin or peer44src_maskSource address prefix mask bits45dst_maskDes

33、tination address prefix mask bits46-47pad2Unused (zero) bytesNetflow数据输出格式下面对网络流量和流向分析系统中最常使用Netflow V5数据输出数据包格式进行一种简朴简介。下图为Netflow输出数据包包头格式:下图为包括在每个Netflow V5输出数据包中详细数据流流量和流向记录信息数据格式:系统解决能力估算模型分析 :2.6.1计算数据取定一方面取定如下计算数据:a)一种NetFlow V5输出数据包包长为1 500 Byte;b)一种NetFlow V5输出数据包中涉及Flow数量为30;c)网络流量中数据包平均包长

34、为384 Byte;d)采样率:500:1其中,NetFlow V5输出数据包包长及其涉及Flow数量是拟定,而网络流量中数据包平均包长、采样率则需要依照详细网络状况进行取定。2.6.2系统解决能力流量分析系统实现对NetFlow数据采集和分析解决,本文采用“每秒解决Flow数”来衡量系统解决能力。在估算系统解决能力时,一方面要计算系统需要分析流量大小(Gbit/s),然后依照前面已经取定计算数据,系统每秒需要进行解决Flow数量为:(系统需要分析流量大小102410241024)/(5003848)2.6.3流量数据采集带宽采集NetFlow数据需要占用一定网络带宽。计算出系统每秒需要进行解决Flow数量之后,就可以计算出采集NetFlow数据需要网络带宽(Mbit/s)最大为:(系统每秒需要进行解决Flow数量/30)15008/1024/1024

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服