尽在掌控 网络流量管理各角度解析
2009-06-05 计世网
近十几年来,互联网得到了飞速发展。据统计,互联网目前已成为人类社会最重要的信息基础设施,占人类信息交流的80%。在这种大背景下,面对日益复杂的网络联机及逐渐增加的网络流量,系统和网络管理者必须花更多时间和精力来了解这些网络设备的运作状况,以维持一个企业网络的正常运作。一般来说,网络管理者需要了解各个网段频宽的使用率、网络问题的瓶颈发生于何处,一旦网络发生问题,必须能够很快地分析和判断出问题的发生原因,这些就是网络流量管理的主要工作内容。那么,管理网络流量的时候应该基于什么样的依据,通过什么手段和策略有效地把流量进行识别、分析和管理呢?
网络流量管理的目标
随着网络流量的不断增长以及网络应用的日趋纷繁复杂化,我们不难看到,简单、无限制地增加网络带宽是不能解决网络流量的根本问题的。我们需要对网络流量进行管理,从而保证网络的健康和网络应用的正常服务。
在网络流量管理的过程中,我们首要的问题就要明确网络管理目标。在网络流量管理主要有4个目标: 首先,我们要了解网络流量的使用情况; 其次,要找到优化网络性能的途径; 第三,要通过网络管理技术来提升网络效能; 最后,还需要做好网络流量信息安全方面的防护工作。
要达到上述4个目标,网络管理员首先要通过有效的分类方式非常明确地知道,我们需要的带宽到底哪些是实际使用的。其次是找到网络性能的瓶颈。网络性能有两个很重要的指标,一个是吞吐量,即网络能够传输的最大数据量,另一个是延迟等。第三,应用成熟的流量监控及控制软件来提升网络性能,从而满足不同的网络应用需求。最后,网管们还可以综合运用入侵检测系统(IDS)、防火墙、统一威胁管理(UTM)设备来对网络流量进行信息安全方面的防护工作。
在日常的网络流量管理中,为了有效实现网络管理4个目标,我们需要采取相应的步骤。这个步骤包括网络流量捕捉和分类、网络流量监视(统计和分析)和控制策略。
1. 网络流量捕捉和分类: 这是进行网络流量管理的第一步。只有通过设置捕捉点,对网络流量进行捕捉和分类,才能进行后续的分析和控制工作。这里特别需要强调的是,网络流量分类可以非常宏观化,也可以细化。比如TCP、UDP、ICMP等分类就比较宏观,而HTTP、FTP甚至是诸如Kazza、Skype等P2P流量的分类和识别就比较细化了。在日常工作中,网络管理员可以采用Wireshark、TCPDump等知名的报文捕捉和分析软件进行流量捕捉和分类工作。
2.网络流量监视(分析): 监视用来显示流量的运行状况,帮助找出问题所在和执行相应的管理策略。应用程序和网络管理能够收集分类、展示和收集信息,包括带宽利用率、活跃的主机和网络效率以及活跃的应用程序。该目标可以通过采用市面上常见的NTOP等可视化分析管理工具来协助网络管理员在实际工作中实现。
3. 控制策略: 网络流量分析的下一步是根据优先级别分配带宽资源。分配的依据可以是主机、应用等等,特别需要考虑的是注意将消耗资源的P2P程序或者音频视频下载等进行滞后考虑。具体操作时可以应用流行的流量控制工具来进行和实现,如进行分类监视和控制网络流量,这样,我们就可以将网络流量有效管理起来,将原来无序的网络流量变得有序起来。
以下我们具体介绍如何进行网络流量管理工作,包括网络流量的识别、网络流量的分析和控制。
网络流量的识别
流量识别,也叫业务识别(Application Awareness),是网络流量管理的第一步。网络流量识别通过对业务流量从数据链路层到应用层的报文深度检查分析,依据协议类型、端口号、特征字符串和流量行为特征等参数,获取业务类型、业务状态、业务内容和用户行为等信息,并进行分类统计和存储。业务识别的基本目的是帮助网络管理员获得网络层之上的业务层流量信息,如业务类型、业务状态、业务分布、业务流量流向等。
业务识别是一个相对复杂的过程,需要多个功能模块的协同工作,业务识别的工作过程简单描述如下:
1. 识别处理模块采用多通道识别处理,通过对网络流量的源/目的IP地址和源/目的端口号的Hash算法,将网络流量均匀地分配到多个处理通道中。
2. 多处理通道并行执行网络流量的深度报文检查,获取网络流量的特征信息,并与业务识别特征库中的特征进行比对。
3. 将匹配结果送往识别处理模块,并标识特定网络流量。如果存在多个匹配结果,选取优先级较高的匹配结果进行标识。特定网络流量一经识别确定,该网络流量的后续连接将不再进行深度的报文检查,直接将其网络层和传输层信息与已知识别结果进行比对,以提高执行效率。
4. 识别处理模块将网络流量的业务识别结果存储到识别结果存储模块中,为网络流量的统计分析提供依据。
5. 统计分析模块从识别结果存储模块中读取相关信息,并以曲线、饼图、柱状图或者文本的方式将识别结果信息显示或以文件的形式输出。
6. 在结果存储模块中保存的识别结果信息会输出到网络流量管理功能区,为实施网络流量管理提供依据。
目前常用的业务识别技术有两种,即DPI技术和DFI技术。
DPI技术 DPI是深度报文检测(Deep Packet Inspection)的简称。DPI技术之所以称为“深度”的检测技术,是相对于传统的检测技术而言的。传统的流量检测技术仅获取那些寄存在数据包网络层和传输层协议头中的基本信息,包括源/目的IP地址、源/目的传输层端口号、协议号,以及底层的连接状态等。通过这些参数很难获得足够多的业务应用信息,特别是对于当前P2P应用、VoIP应用、IPTV应用被广泛开展的情况,传统的流量检测技术已经不能满足网络流量管理的需要了。
DPI技术对传统的流量检测技术进行了“深度”扩展,在获取数据包基本信息的同时,对多个相关数据包的应用层协议头和协议负荷进行扫描,获取保存在应用层中的特征信息,对网络流量进行精细的检查、监控和分析。
DPI技术通常采用如下的数据包分析方法:
● 传输层端口分析。许多应用使用默认的传输层端口号,例如HTTP协议使用80端口。
● 特征字匹配分析。一些应用在应用层协议头或者应用层负荷中的特定位置包含特征字段,通过特征字段的识别实现数据包检查、监控和分析。
● 通信交互过程分析。对多个会话的事务交互过程进行监控分析,包括包长度、发送的包数目等,实现对网络业务的检查、监控和分析。
该技术如果进行更加详细的划分,还可分为特征字的识别技术、应用层网关识别技术、行为模式识别技术,这三类识别技术分别适用于不同类型的协议,相互之间无法替代,只有综合地运用这三大技术,才能有效、灵活地识别网络上的各类应用,从而实现控制和计费。
DFI技术 DFI是深度流行为检测(Deep Flow Inspection)的简称,也是一种典型的业务识别技术。DFI技术是针对DPl技术的不足提出的,为了解决DPI技术的执行效率、加密流量识别和频繁升级等问题。DFI更关注于网络流量特征的通用性,因此,DFI技术并不对网络流量进行深度的报文检测,而仅通过对网络流量的状态、网络层和传输层信息、业务流持续时间、平均流速率、字节长度分布等参数的统计分析,来获取业务类型、业务状态。
网络流量的统计分析
通过流量统计分析,网络管理者能够知道当前网络中的业务流量的类型、带宽、时间和空间分布、流向等信息。
在管理的过程中,管理员可以采用常见的NTOP工具来协助完成。NTOP工具与传统的tcpdump或ethereal等网络流量捕捉工具有着极大的差异,它主要是提供网络报文的统计数据,而不是报文的内容。此外,NTOP不需要使用Web服务器,它自身就支持HTTP协议。首先,它提供了一种快速容易的方法来得到网络活动的准确信息,并且不使用网络探测或侦听设备。在大多数情况下,网络探测器对追踪网络故障是必需的,而在某些时候可能因为探测器正被使用于监测其他设备而无法获得,就可以使用NTOP工具; 其次,在某些给定的网络配置下可能无法与探测器连接,比如两个通过WAN互连的Unix系统,在这种情况下,用户可以应用NTOP工具。
一般说来,使用NTOP工具可以辅助网络管理员完成以下一些工作: 自动从网络中识别有用的信息; 将截获的数据包转换成易于识别的格式; 对网络环境中通信失败的情况进行分析; 探测网络环境中的通信瓶颈; 记录网络通信的时间和过程。
NTOP工具可以通过分析网络流量来确定网络上存在的各种问题,也可以用来判断是否有黑客正在攻击网络系统,还可以很方便地显示出特定的网络协议、占用大量带宽的主机、各次通信的目标主机、数据包的发送时间、传递数据包的延时等详细信息。通过了解这些信息,网管员可以对故障做出及时的响应,对网络进行相应的优化调整,以保证网络运行的效率和安全。
网络流量的控制
将流量控制能力添加到网络流量管理中,能够帮助网络管理者对网络资源和业务资源进行带宽控制和资源调度,如对HTTP、FTP、SMTP以及P2P等应用进行管理,尤其是对P2P流量进行抑制来提升传统数据业务的用户体验度。
具备流量控制能力的网络流量管理还能够对严重影响业务运营者收入的未经许可的其他业务进行抑制。比如,对于VoIP业务,我们可以通过对VoIP信令流量和媒体流量的关联检测和统计分析,以及通过截断媒体数据包、伪装信令报文等方式对流量进行管理。还可以通过综合使用网络层、传输层和应用层检测技术,对未经许可的宽带私接用户采取中断连接、主动告警、分时控制等多种管理动作。
流量控制还能够帮助网络流量管理实现业务资源的调度,并能够获得业务资源使用、业务状态的实时情况。当某一网络应用业务服务器负载较大时,可以进行全局的业务资源负载均衡,以平均地承担业务请求; 同时也能够对用户的业务请求进行调度,决定是否继续响应用户新的业务请求,并根据用户的优先级优先响应高优先级用户的业务请求,以提升业务运营效率。
流量控制通常的做法是在输出端口处建立一个队列进行流量控制,控制的方式是基于路由,亦即基于目的IP地址或目的子网的网络号。流量控制器基本的功能模块为队列、分类和过滤器。由于目前网络流量种类繁多,网络管理员在管理时通常都采用分类的方式进行。
对于网络流量管理来说,除了应具有上述的流量识别、流量分析和流量控制的功能之外,我们一般还希望其具有和防火墙等网络安全设备协同构建一个主动的安全威胁防御体系的功能,以提升整个网络的安全防护能力,从而更好地保证网络流量。
比如,流量特征识别分析就是一种必要的流量管理手段。它能够主动发现诸如DDoS攻击、病毒和木马等异常流量,较好地弥补其他网络安全设备如防火墙、入侵防护系统(IPS)和统一威胁管理(UTM)等的不足,提升其主动发现安全威胁的能力,并能够及时向其他网络安全设备发出告警,从安全威胁源头开始就进行主动的防御。此外,具备流量识别能力的网络流量管理还能够获取并保存网络流量的网络层信息(例如,源/目的IP地址、应用端口、用户标识ID等信息),通过这些信息,网络管理者能够对安全威胁进行溯源定位。
链接一 DFI技术与DPI技术比较
DFI与DPI两种技术的设计基本目标都是为了实现业务识别,但是两者在实现的着眼点和技术细节方面还是存在着较大区别的。从两种技术的对比情况看,两者互有优势,也都有短处,DPI技术适用于需要精细和准确识别、精细管理的环境,而DFI技术适用于需要高效识别、粗放管理的环境。
从处理速度来看: DFI处理速度相对快,而采用DPI技术由于要逐包进行拆包操作,并与后台数据库进行匹配对比,处理速度会慢些。由于采用DFI技术进行流量分析仅需将流量特征与后台流量模型比较即可,因此,与目前多数基于DPI的带宽管理系统的处理能力仅为线速1Gbit/s相比,基于DFI的系统可以达到线速10Gbit/s,完全可以满足企业网络流量管理的需求。
从维护成本来看: DFI维护成本相对较低,而基于DPI技术的带宽管理系统总是滞后新应用,需要紧跟新协议和新型应用的产生而不断升级后台应用数据库,否则就不能有效识别、管理新技术下的带宽,影响模式匹配效率; 而基于DFI技术的系统在管理维护上的工作量要少于DPI系统,因为同一类型的新应用与旧应用的流量特征不会出现大的变化,因此不需要频繁升级流量行为模型。
从识别准确率来看: 两种技术各有所长。由于DPI采用逐包分析、模式匹配技术,因此,可以对流量中的具体应用类型和协议做到比较准确的识别; 而DFI仅对流量行为分析,因此只能对应用类型进行笼统分类,如对满足P2P流量模型的应用统一识别为P2P流量,对符合网络语音流量模型的类型统一归类为VoIP流量,但是无法判断该流量是否采用H.323或其他协议。如果数据包是经过加密传输的,采用DPI方式的流控技术则不能识别其具体应用,而DFI方式的流控技术不受影响,因为应用流的状态行为特征不会因加密而根本改变。
链接二 几种常见的网络流量
当前随着网络应用的不断丰富和发展,网络流量也随之变得复杂和种类繁多起来,下面是最为常见的几种网络流量:
1. HTTP流量: HTTP是互联网上使用最为广泛的协议,早就已经取代传统文件下载的主要应用层协议FTP,如今,随着YouTube等视频共享网站的拉动,HTTP协议的网络流量在过去四年里首次超过了P2P应用的流量。
2. FTP流量: 从互联网出现的开始,FTP就一直是用户使用频率最高的应用服务之一,重要性仅次于HTTP和SMTP。而随着P2P应用的出现,其重要性地位虽然有所降低,但是仍然是用户们下载文件不可替代的重要应用和途径之一。
3. SMTP流量: 电子邮件是整个互联网业务重要的组成部分。据统计,3/4以上的用户上网的主要目的是收发邮件,每天有十数亿封电子邮件在全球传递。特别是由于电子邮件的廉价和操作简便,诱使有人将它作为大量散发自己信息的工具,最终导致了互联网世界中垃圾邮件的泛滥。
4. VoIP流量: 2006年全球IP电话用户从1030万增长到1870万,增幅达83%。2007年VoIP通话量已达到全部通话量的75%。因此,互联网上VoIP的流量也是非常值得管理员关注的。
5. P2P流量: 目前网络带宽“消费大户”是P2P文件共享,在中东占据了49%,东欧地区占据了84%。从全球来看,夜间时段的网络带宽有95%被P2P占据。
6. Streaming流量: 随着诸如PPLive、PPStream等视频软件的出现,视频直播和点播成为广大互联网用户观看节目和网上娱乐的最佳生活方式,因此其流量也在不断地增加。