028
基于NetFlow的流量分析系统样本
(样本只提供该系统的基本情况介绍,若需要完整的设计和论文,建议您购买本系统,凡是购买本站系统的,本站均根据您的要求,把系统上的开发信息,题目等修改成符合您的要求)
本设计包含内容:源代码+毕业论文
论文大概:
1
前言
以往的因特网建设的工作重点基本是”以量为主”,随着用户对业务的要求不断提高,”量质并重”已成为当前工作的核心,因为只有这样才可以使网络的建设和发展更加科学,在众多的影响网络性能的因素中,网络流量是最为重要,它包含了用户上网的所有信息.但是一直以来,对网络流量的分析处理由于捕获网络流量非常困难而停滞不前.
然而在国外,运营商与企业由于受到来自各方面的压力和由于经济的考虑,均已大规模地开展了对网络流量的分析研究以应用.通过这些分析研究应用,运营商可以科学的估算出各种业务在网络总流量中所占的比重和各条链路上的分布,可以科学的预测链路流量和业务流量的增长规律,可以客观的评测各类用户上网的特性和对网络造成的影响,并可以预测各类用户增加时对网络可造成的影响,以指导网络建设与管理.
2 相关技术概述
2.1 网络流量的分类
网络流量按照其包括信息的内容的不同一般可以分为以下四类:
2.1.1 网络节点端口流量
网络节点端口流量指的是网络节点设备流入和流出的数据包的信息统计。它包括数据包的个数、字节数、包的大小分布、丢包数等非常多的统计信息,监视节点端口流量的典型工具是MRTG,另外许多厂商的网管工具也提供这些功能,如HP公司的OpenView平台。MRTG的功能单一,它使用SNMP协议访问网络节点获取MIB信息(包括网络节点端口流量),然后通过web方式输出结果。
2.1.2
端到端的IP流量
端到端的IP流量指的是在网络层从一个源到一个目的IP包的统计信息,相对于网络节点端口流量而言,可以了解到网络中的用户都访问了那些网络,是网络分析、规划、设计及优化的重要依据。采集端到端IP流量的典型工具是
Sniffer、NetFlow及流量探针等。
2.1.3 业务层流量
业务层流量除了包含端对端IP流量的信息之外,还包含了第四层(TCP层)的端口信息,显而易见,它包含了应用服务的种类信息,利用这些信息可以做更详细的分析。
2.1.4
完整的用户业务数据流量
完整的用户业务数据流量对于安全、性能等方面的分析非常有效,例如捕捉黑客的来访数据包可以制止某些犯罪行为或者获得重要的数据。由于捕捉完整的用户业务数据包需要超强的捕获能力和超高的硬盘存储速度和容量,因此许多工具如Sniffer和流量探针之类的只能实现短时间内对数据包的捕捉和跟踪。
3 系统分析与用户需求报告
3.1
问题概述:
企业网络管理是一个富有挑战性的工作,在网络管理中他们面对着日益复杂的要求,以及在面对富有战略意义的商业目标时,需要为众多的用户要求之间寻找一个最佳的平衡点,同时还要限制在允许经济支出范围内。
当在广域网中即想要以最少的带宽做最多的事情又要满足用户可扩展需求,同时基本上不影响整个网络的性能与花费的企业用户来说,这些要求对管理者就变得特别富有挑战性了。
为了出色的完成自己的工作,通常网络管理者可能需要回答如下一些问题:
什么应用程序正在网络中运行,而且他们每一个所消耗的带宽为多少?
能否安全的删除一个应用程序,而不影响网络中的其他部分?
当应用程序运行变慢时,是否是网络中的故障?
当一个广域网线路需要升级时,是否能对已存在的网络传输流起最优化的作用?
在企业内部,每一个商业部门需要消耗多少带宽?以及是否能提供基于用户信息的帐单回查信息?
怎么判断你是否需要升级这些商业系统?……
为了得到如何回答和解决诸如上述问题的信息,你可能不得不在一些监测设备以及工作人员上花费大量的资金。这些在现在乃至将来都是一个量度。
3.2 解决途径:
为了精确的、全面的得到回答上述问题的信息,通常有下述五种传统的方法来得到重要的管理数据:
基于SNMP的监测:大部分企业已经部署了一系列基于SNMP的管理系统。这些系统通过轮询SNMP的MIBs,从中得出网络设备的相关信息,并通过图形化或者以报告的形式显示出这些数据。它的优点包括广泛的支持通过多个厂商的网络设备以及能够访问一些“暗箱“数据,例如一些已经撤消的接口的数据包。缺点是频繁的轮询产生流量和CPU的负载,同时完完全没有能力来为记费目的的分解流量数据的能力,例如通过应用程序、目标IP或者源IP。
RMON:通常只有RMON1支持大多数的网络设备。它们在MAC层
捕捉流量数据的状态信息,以提供如上层对话者与会话等有用的标准报告。这个标准仅仅只应用于以太网与令牌环网中,同时在以太网交换机中得到广泛的支持。然而对路由器的支持非常有限,例如,在CISCO路由器中仅仅支持警告与事件组,而且仅仅用与以太网接口,因此这中方法不能用于监测WAN的流量。在MAC层操作也意味着流量信息不能按照协议、应用程序、源IP或者目的IP来进行分解。这些数据要求需要用RMON2,而RMON2需要用到扩展的流量探针。
流量探针:RMON2收集从OSI模型的第二到第七层的流量状态信息,通过探针可以根据协议、应用程序、源IP和目的IP来分解流量数据。RMON2也支持捕捉和解码单独的数据包以及监测除IP协议外的其他协议,如IPX等。作为添加一个硬件的解决途径,流量探针并不关心诸如接口数据包的丢弃,同时从监测网络的解决途径来说,增加了一些实质性的花费。这些花费因素意味着一个流量探针解决途径不适合于部署在通过那些大型的可伸缩的网络中—它仅仅适合于那些部署少数探针和在任何给定时间可将它们移动至网络中任何一个点而引起大部分问题的网络中。此外,每个探针仅仅能够支持1至2种物理接口类型。因此,如果使用了多种WAN技术,相应的就需要有多个探针。相反,netflow在内部支持所有的路由器接口。另外,在WAN线路中每插入一个探针就会引起断线,相反,Netflow则不需要中断任何服务或设备。
网络分析器或者”Sniffer”:一些单位试图利用如”sniffer”这样的工具。这些被设计用来检测故障,和被用来捕捉快照为详细分析所用。它们不能提供对长期的历史记录的分析。它们也需要大量的人力,同时也不能被集中管理和数据存储。它们不适合于真正的企业解决途径。
IP统计:显示通过IOS的源与目的地之间交换的IP数据包的字节数和数据包数,这是CISCO路由器特有的功能。它仅是通过路由器并且被记录或者终端产生的IP流量的量度,而像路由升级或者SNMP轮询应答等将不被记录。这不是流的概念,同时数据也不能根据应用程序和协议被分解。
除以上的五种传统的技术外,一个更好的流量监测技术是通过CISCO设备来解决企业网络中应用的Netflow技术,以下将来详细的介绍这种技术。
s");
}
得出结果的如图5-2:
(图5-1)
(图5-2)
(2)查看特定主机的通信记录
输入查看主机的ip地址,其主要代码如下:
$db->sql("SELECT *
FROM traffic_info where src_ip='$ip';");
if(not
defined $db->FetchRow()){
print
"没有此主机的记录!";
}else{
&Data_header;
while ($db->FetchRow())
{
($secs,$in_index,$next_hop,$dest_ip,$out_index,$protocol,$port_num,$src_as,$dest_as,$src_encapsulation,$dest_encapsulation,$bytes,$flow)
=
$db->Data("secs","in_index","next_hop","dest_ip","out_index","protocol","port_num","src_as","dest_as","src_encapsulation","dest_encapsulation","bytes","flow");
}
所得结果如图5-3所示:
(图5-3)
5.5 Web显示
数据在Web页面中具体显示样式参见图5-1、图5-2、图5-3。
为了直观的在Web中显示各种流量的分布状况,本系统对流量数据进行部分的分析后形成了饼状图,从而可从图形直观的看出整个网络内部的通信的流量状况分布情况。其具体样式见图5-4、图5-5。
(图5-4)
(图5-5)