网络流量分析研究文档格式.docx
《网络流量分析研究文档格式.docx》由会员分享,可在线阅读,更多相关《网络流量分析研究文档格式.docx(40页珍藏版)》请在冰豆网上搜索。
![网络流量分析研究文档格式.docx](https://file1.bdocx.com/fileroot1/2023-2/1/9afb8d48-9fa8-4307-b551-a8970350b72b/9afb8d48-9fa8-4307-b551-a8970350b72b1.gif)
第一章网络流量分析
1.1网络流量
1.1.1网络流量的定义及作用
1.网络流量:
指能够连接网络的设备在网络上所产生的数据流量。
就像要根据来往车辆的多少和流向来设计道路的宽度和连接方式一样,根据网络流量设计校园网络是十分必要的。
2.网络流量作用:
(1)用户层面:
通过网络流量来计算通信费用,便于运营商向其用户计算网络消费。
(2)管理层面:
分析网络流量可以帮助企业、政府了解其下属的流量使用情况,并对其采取如建立网络防火墙等适当的控制以减少资源损失。
(3)网站层面:
可以了解网站访客的一些数据,如IP地址、浏览器的UserAgent数据等。
可以统计网站的在线人数,了解用户所访问的网站页面。
通过分析出异常流量可以帮助网站管理员知道是否有滥用现象。
可以了解网站使用情况,提前应对网站服务器系统负载问题。
可以了解网站是否对于用户有足够的吸引能力。
(4)综合层面:
可以用于评价一个网站的网站权重(如Alexa指标)。
可以得知大多数用户上网习惯,从而对于网络进行有方向性的规划以更适应用户需求。
1.1.2网络流量分类
很多网络应用具有自身的特性,对于网络环境的需求也不尽相同,因此只有对网络流量进行及时准确的识别和分类,才能准确地为不同应用提供合适的网络环境,有效利用网络资源,为用户提供更好的服务质量。
网络流量分类的研究很广泛,使用的方法也很多,但主要是基于以下三个层面的:
1.Packet-level的流量分类:
主要关注数据包(packet)的特征及其到达过程,如数据包大小分布、数据包到达时间间隔的分布等。
2.Flow-level的流量分类:
主要关注流(flow)的特征及其到达过程,可以为一个TCP连接或者一个UDP流。
其中,流通常指一个由源IP地址、源端口、目的IP地址、目的端口、应用协议组成的五元组。
3.Stream-level的流量分类:
主要关注主机对及它们之间的应用流量,通常指一个由源IP地址、目的IP地址、应用协议组成的三元组,适用于在一个更粗粒度上研究骨干网的长期流量统计特性。
在上述三个层面的流量分类中,使用最广泛的是Flow-level的流量分类。
这种以流为单位分析网络中传输数据的方法,是分组交换网络发展的必然需求。
1.2网络流量分析
1.2.1网络流量分析常用技术
随着计算机技术的发展,网络流量分析技术也与时俱进,既有传统的基于数据库的网络管理技术,也有面向开放式互联网的网络分析技术。
目前,在网络流量分析中占据主流的常用分析技术主要有:
1.SNMP技术
SNMP(SimpleNetworkManagementProtocol,简单网络管理协议)是一种基于TCP/IP的互联网网管协议,其定义了传送管理信息的协议消息格式及管理工作站和被管理设备之间进行消息传送的规程。
它能对互联网中不同类型的设备进行监控和管理,对网络中存在的问题进行定位。
SNMP自1988年问世以来,己得到广泛接受和认可,成为事实上的工业标准。
SNMP是用标准化方法定义的,通常一个标准的网管系统包括三个组成部分:
SNMP协议,这包括理解SNMP操作、SNMP消息的格式以及如何在应用程序和设备之间交换信息;
管理信息结构(StructureofManagementInformation,SMI),它是用于指定一个设备维护的管理信息的规则集;
管理信息库(ManagementInformationBase,MIB),它是设备所维护的全部被管理对象的结构集合。
基于SNMP的流量分析就是通过SNMP协议访问设备获取MIB库中的端口流量信息,典型工具有MRTG(MultiRouterTrafficGrapher)
,MRTG是一个使用的免费软件,通过SNMP协议从设备得到流量信息,将流量负载情况绘制成PNG格式图片,并以WEB形式显示给用户。
由于MRTG使用起来很方便,能够直观显示端口流量负载,所以是各类网管人员常用的网络监视工具。
但MRTG的功能比较单一,其收集到的流量信息仅是简单的端口出、入流量统计信息,不能深入分析包的类型、流向等信息。
图1.2.1SNMP管理技术图
2.RMON技术
RMON(RemoteMonitoring,远程监控)是由IETF(InternetEngineeringTaskForce,InternetZ程任务组)定义的一种远程监控标准,是对SNMP标准的扩展。
它定义了标准功能以及网管站和远程监控器之间的接口,使得监控器和网管站之间可以进行网络监控数据的交换,从而实现了对一个网段乃至整个网络的数据流量的监视功能。
RMON的目标是为了扩展SNMP的MIB-II管理信息库),使SNMP更为有效、更为积极主动地监控远程设备。
RMONMIB由一组统计数据、分析数据和诊断数据构成,利用许多供应商生产的标准工具都可以显示出这些数据,因而它具有独立于供应商的远程网络分析功能。
此后,IETF在RMON基础上又提出了RMONII标准,RMONII能将网络的监控层次提高到应用层。
RMON通过采用功能强大的“报警组(AlarmGroup)”而实现先期的网络诊断,它允许为关键性的网络参数设置阂值,以便自动地将报警信号传送到中央管理控制台。
RMON的监控功能是否有效,关键在于其探测器要具有存储统计数据历史的能力,这样就不需要不停地轮询才能生成一个有关网络运行状况趋势的视图。
当一个探测器发现一个网段处于一种不正常状态时,它会主动与网络维护管理控制台的RMON客户应用程序联系,并将描述不正常状况的捕获信息转发。
RMON探测器可用两种方法收集数据:
一种是通过专用的RMON探针(Probe,对待测链路的RMON,RMONII等信息进行统计和记录。
另一种方法是将RMONAgent直接植入网络设备(路由器、交换机、HUB等),使它们成为带RMONprobe功能的网络设施,网管站用SNMP的基本命令与其交换数据信息,收集网络信息。
但这种方式受网络设备资源限制,一般不能获取RMONMIB的所有数据,大多数只收集统计量、历史、告警、事件等4个组的信息。
图1.2.2利用RMON对网络进行流量和流向管理
3.NetStream技术
Internet的高速发展为用户提供了更高的带宽,支持的业务和应用日渐增多,传统流量统计如SNMP、端口镜像等,由于统计流量方式不灵活或是需要投资专用服务器成本高等原因,无法满足对网络进行更细致的管理,需要一种新技术来更好的支持网络流量统计。
NetStream是华为公司基于“流”的概念,定义了一种用于路由器/交换机输出网络流量的统计数据的方法,路由器/交换机对通过的IP数据包进行统计和分析,并上报给网流采集器,网流采集器把搜集的数据包及统计数据传送到网流分析器,经合并处理后存入数据库,并进行进一步的分析处理。
通过对上述原始、详细的基本IP数据流进行分析,能准确把握网络运行状态,实时发现网络异常情况并进行处理,也能支持面对业务应用的精细管理和计费
。
应用NetStream,可以对网络中的业务流量情况进行统计和分析。
在网络的接入层、汇聚层、核心层上,都可以通过部署NetStreamoNetStream流是通过七元组来标识的,即通过接口索引、源IP地址、目的IP地址、源端口号、目的端口号、协议号和ToS组成的七元组确定一个NetStream流,设备根据七元组信息对过往的数据包进行NetStream统计。
一个典型的NetStream系统由NDE,NSC和NDA三部分组成。
(1)NDE(NetStreamDataExporter):
NDE负责对网络流进行分析处理,提取符合条件的流进行统计,并将统计信息输出NDA(NetStreamDataAnalyzer)设备。
输出前也可对数据进行一些处理,[比如聚合。
配置了NetStream功能的设备在NetStream系统中担当NDE角色。
(2)NSC(NetStreamCollector):
NSC通常为运行于Unix或者Windows上的一个应用程序,负责解析来自NDE的报文,把统计数据收集到数据库中,可供NDA进行解析。
NSC可以采集多个NDE设备输出的数据,对数据进行进一步的过滤和聚合。
(3)NDA(NetStreamDataAnalyzer):
NDA是一个网络流量分析工具,它从NSC中提取统计数据,进行进一步的加工处理,生成报表,为各种业务提供依据(比如流量计费、网络规划,攻击监测)。
通常,NDA具有图形化用户界面,使用户可以方便地获取、显示和分析收集到的数据。
图1.2.3NetStream系统中角色
4.sFlow技术
sFlow是由InMon,HP和FoundryNetworks于2001年联合开发的一种网络监测技术,它采用数据流随机采样技术,可提供完整的第二层到第四层,甚至全网络范围内的流量信息,可以适应超大网络流量(如大于lOGbit/s)环境下的流量分析,让用户详细、实时地分析网络传输流的性能、趋势和存在的问题。
sFlow技术有很多优点:
成本低廉;
在不断发展升级当中,能在没有消耗额外资源的环境监测万兆网络,不会带来新的网络冲突;
有自己的一套准确可靠的计量方式;
数据信息量大。
sFlow己经成为一项线速运行的“永远在线”技术,可以将sFlow技术嵌入到网络路由器和交换机ASIC芯片中。
与使用镜像端口、探针和旁路监测技术的传统网络监视解决方案相比,sFlow能够明显地降低实施费用,同时可以使实现面向每一个端口的全企业网络监视解决方案成为可能。
目前它己成为Internet上的一项标准协议(RFC3176),很多著名网络厂商(例如Foundry,Extreme等)都提供了支持sFlow技术的网络设备。
随着各大厂商的支持,sFlow逐渐成为工业标准。
sFlow监控系统包括sFlow代理、sFlow数据采集器或sFlow分析器。
sFlow代理通常为硬件芯片,内嵌到路由器或交换机中,通过统计采样技术获取流量信息形成sFlow数据包,并立即发送给sFlow分析器进行流量分析。
这些信息包括:
MAC地址、VLAN(802.1q802.1p),IP地址、服务类型、源AS,源对等AS、目标AS路径、端口统计等。
sFlow使用两种独立的采样方法来获取数据:
针对交换数据流基于数据包统计的采样方法和针对网络接口统计数据基于时间的采样方法。
sFlow还能使用不同的采样率,对交换机或仅对其中一些端口实施监视,保证了设计管理方案时的灵活性。
图1.2.4sFlow基本原理图
5.MPLS技术
MPLS(多协议标签交换)是一种在开放的通信网上利用标签引导数据高速、高效传输的新技术。
该技术将第3层的路由技术与第2层的交换技术结合在一起,兼具了高速交换、QoS性能、流量控制、IP技术的灵活和可扩展等特性。
当网络发生拥塞或处于瓶颈时,加标签的IP数据包比未加标签的IP数据包多出4个字节的标签头,随着加标签的IP数据包数量的增加,同时由于它的快速转发机制和标签超载现象,与未加标签的IP数据包相比,加大了网络拥塞程度,从而使加标签的IP数据包的流量性能受到影响。
MPLS网络由标记边缘路由器(LER)和标记交换路由器(LSR)组成。
在LSR内,MPLS控制模块以IP功能为中心,转发模块基于标记交换算法,并通过标记分发协议(LDP)在节点间完成标记信息以及相关信令的发送。
LDP信令以及标记绑定信息只在MPLS相邻节点间传递。
LSR之间或LSR与LER之间依然需要运行标准的路由协议,并由此来获得拓扑信息。
通过这些信息LSR可以明确选取报文的下一条并可最终建立特定的标记交换路径(LSP)。
MPLS的运作原理是提供每个IP数据包一个标记,并由此决定数据包的路径以及优先级。
与MPLS兼容的路由器(Router),在将数据包转送到其路径前,仅读取数据包标记,无须读取每个数据包的IP地址以及标头,然后将所传送的数据包置于FrameRelay或ATM的虚拟电路上,并迅速将数据包传送至终点的路由器,进而减少数据包的延迟,同时由FrameRelay及ATM交换器所提供的QoS(QualityofService)对所传送的数据包加以分级,因而大幅提升网络服务品质,提供更多样化的服务。
6.NetFlow技术
NetFlow协议由Cisco公司开发,是一种实现网络层高性能交换的技术。
该技术首先被用于网络设备对数据交换进行加速,并可同步实现对高速转发的IP数据流(Flow)进行测量和统计。
经过多年的技术演进,NetFlow原来用于数据交换加速的功能己经逐步改由网络设备中的专用集成电路(ASIC)芯片实现,而对流经网络设备的IPFlow进行测量和统计的功能却更加成熟,并成为当今互联网领域公认的最主要的IP流量分析、统计和计费行业标准。
NetFlow以流为数据统计的采集单位,其核心是对流缓存进行组织与管理,最终得到按照某种汇聚方法统计的数据,数据中包括源IP、目的IP、源端口、目的端口、传输协议、数据包数量和字节数等字段,这些字段就是网络流量统计分析的重要依据。
NetFlow技术通过对原始数据进行抽样和过滤,记录下IP数据包的特征,通过分析数据包主要的七个属性来快速的区分网络中传送的各种不同类型业务的数据流。
对区分出的每个数据流,NetFlow可以进行单独地跟踪和准确计量,记录其传送方向和目的地等流向特性,统计其起始和结束时间,服务类型,包含的数据包数量和字节数量等流量信息。
对采集到的数据流流量和流向信息,NetFlow可以定期输出原始记录,也可以对原始记录进行自动汇聚后输出统计结果。
图1.2.5Netflow处理流程
1.2.2网络流量分析应用
网络流量分析在网络行为学中起着一个衔接的作用,主要利用网络流量测量部分收集到的各种流量信息,通过运用不同的方法对其进行分析和建模,以发现流量的特性,对网络性能做出客观的评价,并以此作为对网络进行控制和优化的依据。
网络流量分析技术的应用主要包括以下几个方面:
1.节省运营费用
通过对网络出口流量和流向的分析,可以统计出业务类型、服务等级、通信时间和时长、通信数据量等参数,可以详细了解网络内部用户对其他外部网络的访问情况,为基于IP的计费应用和SLA的校验服务提供数据依据,从而有效地选择与其他运营商的互联方式,节省费用。
2.优化网络结构
网络流量能直接反映网络性能的好坏。
通过对网络中一些特定流量的长期监控,获得网络流量数据后对其进行统计和计算,从而得到网络及其主要成分的性能指标,定期形成性能报表,并维护网络流量数据库或日志存储网络及其主要成分的性能的历史数据,可供网管人员正确分析网络使用状况,对网络及其主要成分的性能进行性能管理,通过数据分析获得性能的变化趋势,分析制约网络性能的瓶颈问题,可以为多出口的流量负载均衡、重要链路的带宽设置、路由选择和设定QoS等网络优化措施提供数据依据。
3.分析用户行为
通过对与其他网络互联流量的监控,分析网络内部用户访问其他外部网络的业务特点和主要流量的去向,准确掌握内部用户对外网的兴趣点,找到最多应用的热点信息内容。
根据分析结果进行相应网络内容的建设,将用户感兴趣的热点信息内容放到内部网络,减轻互联链路的压力。
4.评估网络价值
通过对各个分支网络出入流量的成,了解各分支网络占用带宽的情况,从而反映其占用的网络成本,也可以了解其业务开展情况,并作出价值评估。
5.确定重点客户
通过对重要应用和大客户的流量进行统计分析,掌握重要应用和大客户的流量状况,进行网络带宽的成本分析,有助于在网络服务质量和网络成本之间取得最佳平衡。
6.实施安全预警
网络流量异常会严重影响网络性能,造成网络拥塞,严重的甚至会网络中断,使网络设备利用率达到100%,无法响应进一步的指令。
通过对网络内流量的实时分析,有助于及时发现网络中出现的异常流量,迅速分析出异常流量的具体属性,并向网络管理者进行告警,判断是否出现了入侵,并按照事先拟定的规则集进行处理,记录异常情况发生时的详细网络状况,使入侵得到及时发现和处理。
第二章NetFlow交换和NetFlow数据
2.1路由和交换
众所周知,路由器是互联网络的枢纽,它一个作用是连通不同的网络,另一个是选择信息传送的线路。
选择通畅快捷的近路,能大大提高通信速度,减轻网络通信负荷,节约网络系统资源,提高网络系统畅通率,从而让网络发挥出更大的效益。
路由器所要实现的是完成数据传输过程中的路由功能,所谓路由就是指通过相互连接的网络把信息从源地点移动到目标地点的活动。
为了实现网络中有效的传输数据,路由的过程包含两个相互联系的过程:
路由选择和交换。
通过前者做出路由决策,通过后者把数据包移到下一个网段上的目的地。
交换过程是指路由器如何在两个不同的接口间传送报文,在路由器的交换过程中常见的有五种交换路径:
过程交换,快速交换,优化交换,分散式交换以及NetFlow交换,下面着重介绍NetFlow交换技术及NetFlow数据。
2.2NetFlow交换技术
NetFlow交换在网络层实现高性能的交换,是由Cisco引入的一种交换技术。
目前Cisco的大部分中高端路由器已经支持NetFlow交换,同时Juniper、Extreme等其他网络设备供应商也支持NetFlow交换,使其逐渐成为通用的标准。
NetFlow交换在虚拟局域网(VLAN)技术的基础上,在同一个平台上提供了交换和路由两种功能。
在交换LAN或ATM骨干网上提供NetFlow交换,这就允许在VLAN之间进行数据转发。
在传统的网络交换中,每一个输入分组是单独处理的,路由器为每个分组进行一系列独立的查询,利用一系列函数去检查访问列表、获取统计数据、交换该分组。
然后将它发送到目的地。
这些查询包括确定是否采用安全访问过滤,以及更新网络统计记录。
而在NetFlow交换中
,查询过程仅对分组流中的第一个分组进行,当一个网络流被识别并确定了与其相关的服务后,那么后面所有的分组都作为该信息流的一部分,在面向连接的基础上进行处理,这样就绕过了访问列表的检查,进而依次对分组进行交换和获取统计信息。
2.2.1NetFlow交换的支持
目前在国内应用比较广泛的Cisco路由器包括2500系列、4000系列、7000系列、7200系列和7500系列,这些路由器进行路由的过程基本上是相似的,但是交换的过程却根据其系统结构的不同而不同。
Cisco7200系列路由器和Cisco7500系列路由器以及更高级别的Cisco路由器支持NetFlow交换。
如果使用不同的路由平台,那么它们可能会有不同的交换路径。
表2.1显示了CiscoIOS交换路径和路由平台之间的相关性。
表2.1.1各型号路由器支持的交换方式
Cisco2500/4000系列路由器的硬件结构比7000/7500系列路由器的硬件结构简单。
这些设备只在交换过程中才共享存储器。
所有的报文缓存和Cach