网络流量监控在网络管理、入侵监测、协议分析、流量工程等领域有着广泛应用,网络流量监控是网络流量特征归纳、网络行为分析的重要基础,是网络安全最重要的组成部分。
流量监控重要性
内网各个主机之间的通讯,都是通过数据包来完成的,在数据包中标识了通讯内容、通讯协议、发送源地址以及发送目的地址信息,可以通过分析这些数据,了解当前网络的运行情况,在第一时间排查故障。一些常见的病毒入侵、网络性能问题、网络异常行为都可以通过分析数据包来发现故障源头。
流量监控常用技术
基于主机内嵌软件监测
基于主机内嵌软件的流量监测,在主机内安装流量监测软件以完成流量监测任务。通过软件套接字嵌入软件截获往返通信内容。该方式能够截获全部通信报文,可以进行各种协议层的分析,但不能看到全网范围的流量情况。
基于流量镜像协议分析
流量镜像(在线TAP)协议把网络设备的某个端口(链路)流量镜像给协议分析仪,通过7层协议解码对网络流量进行检测。协议分析是网络监测最基本的手段,特别适合网络故障分析,但是只针对单条链路,不适合全网监测。
基于硬件探针监测
硬件探针是一种用来获取网络流量的硬件设备,使用时将它串接在需要捕获流量的链路中,通过分流链路上的数字信号获取流量信息。一个硬件探针监测一个子网的流量信息(通常是一条链路)。对于全网的监测需要采用分布式方案,在每条链路部署一个探针,再通过后台服务器和数据库,收集所有探针的数据,做全网的流量分析和长期报告。该方式,能够提供丰富的从物理层到应用层的详细信息。但受限于探针的接口速率,一般只针对1000M以下的速率,着重单条链路的流量分析。
基于SNMP协议的流量监测
基于SNMP协议的流量监测,通过网络设备MIB收集一些具体设备及流量信息有关的变量。包括:输入字节数、输入非广播包数、输入广播包数、输入包丢弃数、输入包错误数、输入未知协议包数、输出包数、输出非广播包数、输出广播包数、输出包丢弃数、输出包错误数、输出队长等,类似方式还包括RMON。该方式,使用软件方法实现,不需要对网络进行改造或增加部件、配置简单、费用低。但是只包括字节数、报文数等最基本的内容,不适用于复杂的流量监测。
基于Netflow的流量监测
基于Netflow的流量监测,提供的流量信息扩大到了基于五元组(源IP地址、目的IP地址、源端口、目的端口、协议号)的字节数和报文数统计,可以区分各个逻辑通道上的流。该监测方法,通常需要在网络设备上附加单独的功能模块实现。
基于镜像端口的流量监测
端口镜像(Port Mirroring)能够把交换机一个或多个端口(VLAN)的数据镜像到一个或多个端口。当没有设置镜像端口针对本地网卡进行监控时,所能捕获的仅仅是本机流量以及网络中的广播数据包、组播数据包,而其他主机的通讯数据包是无法获取的。对于交互式网络来说,可以在交换机或路由器上设置镜像端口,指定交换机多个或所有端口镜像到一个端口,这样通过连接该端口并监控,就可以捕获多个端口的总流量数据。该方式能够很容易获取全网的流量数据,但对于分析系统的接收性能以及网络带宽要求较高。
流量监控的意义
流量监控有利于及时了解整个网络的运行态势、网络负载情况、网络安全状况、流量发展趋势、用户行为模式、业务与站点的接受程度,为网络的运行和维护提供重要依据,有利于管理人员进行网络性能分析、异常检测、链路状态监测、容量规划等工作。
流量监控为流量分析提供了基础数据(流量分析主要从带宽、网络协议、基于网段的业务、网络异常流量、应用服务异常等五个方面进行流量分析)。在一个复杂的网络环境中,必须保证重要应用的带宽需求,通过基于带宽的网络流量分析,能够及时明确带宽使用情况,带宽不足时,可以尽快解决。针对不同网络协议进行流量监控和分析,如果某一协议在一个时间段内出现超常暴涨,就有可能是攻击流量或蠕虫病毒出现。大多数组织,将不同业务系统通过VLAN进行逻辑隔离,流量系统可以针对不同的VLAN进行网络流量监控,以监控业务系统是否异常。