网络流量分析技术 科普

随着IT、网络技术的迅猛发展和企业信息化程度的不断提高,各种网络应用越来越丰富,各种应用时时刻刻都在争夺有限的网络带宽,从而导致网络管理的难度不断增大。因此,如何保证网络的可用性和关键业务的畅通运行,对企业发展将起到至关重要的作用。企业需要有相应的技术手段,明确了解网络上各种应用的带宽占用情况,分析用户流量行为,以便合理的规划和分配网络带宽,有效地保障关键业务应用的正常运行。

与此相适应,网络管理也从过去的设备级管理上升为今天的业务管理。因此,专业的网络流量和协议分析软件也应运而生,他们帮助用户具体了解当前的流量组成、协议分布和用户行为。

网络流量分析是指捕捉网络中流动的数据包,并通过查看包内部数据以及进行相关的协议、流量分析、统计等来发现网络运行过程中出现的问题,它是网络和系统管理人员进行网络故障和性能诊断的有效工具。常用的网络流量和协议分析有四种方法。


  • 基于SNMP
    本方法仅能对网络设备端口的整体流量进行分析,可以获得设备端口的实时或者历史的流入/流出带宽、丢包、误包等性能指标,但无法分析具体的用户流量和协议组成。通过扩展实现RMON和RMON II,该方法可在一定程度上(网络2层到4层)实现有限的端到端通信会话数据分析、TopN用户统计等功能。相关的产品有HP的OpenView NNM,CA的 UniCenter,MRTG等。因其具有实现简单、标准统一、接口开放的特点,被业界广泛采用。
  • 基于网络探针(Probe)
    本方式的数据抓包、分析和统计等功能一般都在网络"探针"上以硬件方式实现,分析的结果存储在探针的内存或磁盘之中,具体的前端展现依赖与之对应的专门软件。因此具有效率高、可靠性高、高速运行不丢包的特点。本种方式可深入的对网络2层、3层甚至7层的特性进行详细分析。常见的产品有Agilent的 NetMetrix 及其Probes,NetScout 的nGenius Performance Manager 及其Probes等。
  • 基于实时抓包分析
    基于实时抓包的分析技术提供详细的从物理层到应用层的数据分析。但该方法主要侧重于协议分析,而非用户流量访问统计和趋势分析,仅能在短时间内对流经接口的数据包进行分析,无法满足大流量、长期的抓包和趋势分析的要求。常见的产品有NAI 的Sniffer Pro,免费的tcpdump、ethereal等。
  • 基于流(Flow)的流量分析
    目前基于流的分析技术主要有两种:sFlow和NetFlow。sFlow是由InMon、HP和Foundry Networks联合开发的一种网络监测技术,它采用数据流随机采样技术,可以适应超大网络流量(如大于10Gbps)环境下的流量分析,让用户详细、实时地分析网络传输流的性能、趋势和存在的问题。目前,仅有HP、Foundry和 Extreme Networks等厂商的部分型号的交换机支持sFlow。
    NetFlow是Cisco公司开发的技术,它既是一种交换技术,又是一种流量分析技术,同时也是业界主流的计费技术之一。它可以回答有关IP流量的如下问题:谁在什么时间、在什么地方、使用何种协议、访问谁、具体的流量是多少等问题。NetFlow因为其技术和Cisco网络产品的市场占有率优势而成为当今主流的流量分析技术之一。

基于Flow的分析方法将成为趋势

在上面所提到的四种方法中,基于Flow的分析方法应该是网络流量分析技术的趋势。这是它的技术实现理论所决定的。(流量管理方式比较表)

传统的基于SNMP的通用网管软件仅能对网络的整体流量进行监控,而无法对具体协议种类和应用流量组成进行进一步分析,它无法回答当前网络流量分别由哪些应用(协议)组成、各占多大的比例,哪些用户的访问数据量最大,分别使用什么协议,数据源和目的地是什么等问题。而基于基于网络探针(Probe)的分析方法中,"探针"和软件之间的接口一般是私有接口,第三方软件无法使用,所以此种软硬件结合的方案价格昂贵,部署不是很方便。

基于Flow的分析方法中,网络流(network flow)通常被定义为给定源节点和目的节点之间传输的单向数据包/帧序列。通常,网络设备(3层交换机、路由器等)本身提供了基于IP包头的分析功能,负责网络流数据的分析和整理,按照一定的条件和定义良好的数据格式向流采集器(Flow Collector)输出数据,然后再有相关的软件将采集到的流数据进行整理、分析和客户端展现。这种方法具有价格低廉、部署和配置方便的特点,可适应长期的、大流量环境下的数据采集和分析。最近,IETF的技术人员正在制订IPFIX(IP Flow Information Export)规范,使得网络中流量统计信息的格式趋于标准化。IPFIX基于Cisco的NetFlow V9设计,是一种针对数据输出的、基于模板的格式,具有很强的可扩展性。

NetFlow何处用武?

基于NetFlow的应用系统,根据其侧重点不同,可以分成多种类型的应用:

  • 网络流量分析及容量规划
    基于NetFLow的应用系统可以根据NetFlow记录的源/目的IP地址、源/目的端口、L3协议类型、Flow开始/结束时间、包数、字节数等字段,进行综合的静态和动态分析,获取大量的有用信息,如网络在某一时间段内的具体协议、流量大小分布,TopN的流量用户排行、TopN的应用排行,用户之间的详细通信会话,各种应用的流量随时间的变化趋势等等。
    经过长时间的数据采集,可以了解整体网络流量和重要应用带宽的占用状况及其变化趋势,用户的使用模式等信息,为今后的网络规划和升级提供决策参考。
  • 流量计费
    基于NetFlow可实现多种计费方式,如基于流量、不同的时间段、QoS、应用类型、自治域计费等。
  • 安全监测
    根据采集的NetFlow数据,可综合进行模式匹配、基线分析等,进行DoS/DDoS攻击和蠕虫等病毒检测,从而快速定位网络中的异常行为。

传统的安全解决方案不能定位攻击的来源,只能被动防御,如果采用FLOW技术,那么可以很清晰地定位攻击的源地址,目的地址,以及从哪个路由器的物理接口进来,从哪个物理接口出去,这样可以在物理接口上配置ACL,适时地切断蠕虫或者DDOS的流量,进而保护整个网络不受影响。

关于用flow技术解决安全的问题,在国内还没有正式推广应用。目前国内专业的安全公司大都集中在开发解决局部网络安全的产品,如防火墙,IDS入侵检测,IPS入侵防护系统,分布式扫描器等,或者提供安全评估、安全响应等软性的服务上,没有对FLOW技术特点进行深入研究,市场上也就没有专业安全公司提供的FLOW技术安全解决方案。


你可能感兴趣的:(【开发工具】)