常用网络流量采集技术分析

流量采集技术是监控网络流量的关键技术之一,为流量分析提供数据来源。为了能够在复杂企业网中有效的分析网络流量,本文对常见的四重网络流量采集技术进行讲解,并分析了不同流量采集方式的优缺点。
1.  Sniffer
嗅探法是一种常用的网络技术,通过在交换机的镜像端口设置数据采集点,来捕获数据报文的,这种方式采集的信息最全面,可以完全复制网络中的数据报文。但是Sniffer技术的应用也受到了一定的限制,大多数厂商的设备不支持跨VLAN或者跨模块镜像数据,因此可能需要在多个网段安装装探针,在部署上比较复杂,一般企业网络VLAN数量很多,一般都不可能实现全部VLAN的监控。流量很大的网络中采用端口镜像对网络设备的性能也会造成一定的影响,而且对所有数据报文都进行采集在吞吐量很大的网络中也是难以实现的。
2.  SNMP
Snmp是一种主动的采集方式,采集程序需要定时取出路由器内存中的IPAccounting记录,同时清空相应的内存记录,才能继续采集后续的数据,这对路由器的性能造成较大的影响,取得的数据只包含口层的数据,没有MAC地址信息,对于伪造源口地址的蠕虫病毒无能为力。
3.  Netflow
Netflow是Cisco公司的专有技术,早期的Netflow版本需要统计所有的网络数据报文,因此对网络设备性能影响较大,v8以后的版本提供了采样功能,但是Netflow数据中只有基于流的统计信息,只记录口、端口等数据,也没有MAC地址信息。
4.  sFlow
sflow采用采样的方式,通过设置一定的采样率,进行数据捕获,对网络设备的性能影响很小。sFlow agent一般采集数据报文前128个字节,通过封装后发往sFlow receiver,数据报文中包括了完整的源和目标的MAC地址、协议类型、TCP/UDP、端口号、应用层协议,甚至URL信息。