自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

基于Hadoop的大規(guī)模網(wǎng)絡(luò)流量分析

云計算 Hadoop
分布式數(shù)據(jù)系統(tǒng)HDFS保證了備份數(shù)據(jù)的數(shù)量均勻分布在集群內(nèi)部的各個節(jié)點上,數(shù)據(jù)更不易因機器的故障而丟失。本文基于Hadoop設(shè)計實現(xiàn)了適用于大規(guī)模網(wǎng)絡(luò)流量的分析系統(tǒng),使用了四個節(jié)點構(gòu)成的分析集群,用來和一個單點SILK的數(shù)據(jù)流分析工具進行對比,結(jié)果表明該方法在大量數(shù)據(jù)的情況下相比于傳統(tǒng)的流分析工具具有更好的效率、可靠性及可擴展性。

在網(wǎng)絡(luò)流量的分析中,基于流的分析被大多數(shù)ISP所采用,分析系統(tǒng)一般部署在一臺高配置的服務(wù)器中。如由CERT網(wǎng)絡(luò)勢態(tài)感知團隊(CERT-NetSA)開發(fā)的用于大規(guī)模網(wǎng)絡(luò)安全分析的網(wǎng)絡(luò)交互分析工具集 SILK(the System for Internet-Level Knowledge),支持有效的收集、存儲和分析網(wǎng)絡(luò)流數(shù)據(jù),SILK可以高效地查詢歷史大流量數(shù)據(jù)集,能用于分析大的企業(yè)或者中型ISP的骨干或邊界網(wǎng)絡(luò)流量。然而,隨著互聯(lián)網(wǎng)帶寬的日益增加,單臺系統(tǒng)會受到硬件等因素的限制使計算速度變得很緩慢,而且數(shù)據(jù)存放在單個服務(wù)器時的風(fēng)險往往也很大,需要考慮使用分布式的方法。而分布式計算平臺Hadoop以及依托在Hadoop平臺下的MapReduce框架為解決這類問題提供了良好的支撐。Hadoop 是Apache的一個子項目主要由分布式文件系HDFS計算框架和資源管理器YARN組成,其中MapReduce是當(dāng)中最著名的計算框架,也是大規(guī)模分析網(wǎng)絡(luò)流量的基礎(chǔ)。

Hadoop搭建的網(wǎng)絡(luò)流量分析系統(tǒng)比之傳統(tǒng)的分析手段有著以下的優(yōu)點:1.更節(jié)省成本。只用少量的廉價機器就可以搭建起一個基于Hadoop的分布式計算平臺;2.更具擴展性。使用分布式計算框架,每個節(jié)點都參與運算,計算效率隨著節(jié)點數(shù)的增加線性增長;3. 更加可靠。分布式數(shù)據(jù)系統(tǒng)HDFS保證了備份數(shù)據(jù)的數(shù)量均勻分布在集群內(nèi)部的各個節(jié)點上,數(shù)據(jù)更不易因機器的故障而丟失。本文基于Hadoop設(shè)計實現(xiàn)了適用于大規(guī)模網(wǎng)絡(luò)流量的分析系統(tǒng),使用了四個節(jié)點構(gòu)成的分析集群,用來和一個單點SILK的數(shù)據(jù)流分析工具進行對比,結(jié)果表明該方法在大量數(shù)據(jù)的情況下相比于傳統(tǒng)的流分析工具具有更好的效率、可靠性及可擴展性。

網(wǎng)絡(luò)流分析

一條流由一個源主機與一個目的主機間的單方向傳輸?shù)木W(wǎng)絡(luò)數(shù)據(jù)包組成,其中源和目的主機由各自的IP地址和端口號來標(biāo)識。更明確的定義是,一條流由源IP地址、目的IP地址、源端口、目的端口、時間戳、服務(wù)類型、入邏輯接口標(biāo)識符等關(guān)鍵字唯一標(biāo)識。

在過去的數(shù)十年間,有很多技術(shù)和工具被廣泛地應(yīng)用到網(wǎng)絡(luò)流量的分析當(dāng)中。Tcpdump是最常見的一種網(wǎng)絡(luò)流分析工具,Wireshark則提供了用戶友好的界面,以其簡單易用性著稱。CoralReef和Snort的相繼出現(xiàn)為實時分析網(wǎng)絡(luò)流量也做出了很大的貢獻。隨后又出現(xiàn)了如SILK等網(wǎng)絡(luò)流分析工具。這些網(wǎng)絡(luò)流分析工具在少量的數(shù)據(jù)下完全可以勝任網(wǎng)絡(luò)流分析的工作。然而隨著近幾年來數(shù)據(jù)爆炸式的增長,傳統(tǒng)的基于單點的網(wǎng)絡(luò)流量分析的方法變得越來越不能滿足需求。

Hadoop中的MapReduce計算框架以前主要被應(yīng)用于大規(guī)模的網(wǎng)絡(luò)文本分析、數(shù)據(jù)挖掘以及日志分析當(dāng)中。在本次工作中,我們把MapReduce創(chuàng)新性的應(yīng)用在了網(wǎng)絡(luò)流分析當(dāng)中,這樣就可以使相應(yīng)的網(wǎng)絡(luò)流的統(tǒng)計不在拘泥于一個節(jié)點上,突破了單點網(wǎng)絡(luò)流統(tǒng)計的局限性。同時使得網(wǎng)絡(luò)流分析具有了更高的可擴展性,每當(dāng)集群遇到計算瓶頸時,我們只需加入更多的節(jié)點,就可以使計算速度提升,而不是花費大量的金錢去購買更高配置的機器。

Hadoop網(wǎng)絡(luò)流量分析

NetFlow產(chǎn)生大量的數(shù)據(jù),但大多時候我們只需要這些數(shù)據(jù)的統(tǒng)計結(jié)果。用普通的串行方法可以在少量的數(shù)據(jù)集上進行統(tǒng)計,并且達到很理想的效果,但是一旦數(shù)據(jù)超過一定量級,便不能有效地進行處理,這時一些基于分布式的并行計算框架就有了用武之地。為了實現(xiàn)并行計算,已經(jīng)有很多組織機構(gòu)提出了多種方法,其中以Google提出的MapReduce框架最為著名。該框架已被廣泛應(yīng)用于文本搜索,海量數(shù)據(jù)挖掘等場合。

概述

圖1展示了我們進行流分析時的機器拓?fù)浣Y(jié)構(gòu)。其中Hadoop云平臺提供了分布式文件系統(tǒng)HDFS和云計算功能。

 

首先從各個數(shù)據(jù)源中提取數(shù)據(jù),然后把各個數(shù)據(jù)源數(shù)據(jù)解析出來的可讀數(shù)據(jù)上傳云平臺上。云平臺的計算由一個主節(jié)點組織,若干從節(jié)點協(xié)同。主節(jié)點用來存儲元數(shù)據(jù)、分配資源和任務(wù)調(diào)度。我們可以對其進行相應(yīng)的系數(shù)配置如緩沖區(qū)大小、數(shù)據(jù)分片大小、處理線程的多少等因素,以更好地達到實驗效果。從節(jié)點則接受主節(jié)點的調(diào)度,主要參與運算,同時也會定時反饋自己所在節(jié)點的狀況。每個從節(jié)點上會根據(jù)HDFS的配置有若干份,在進行分布式計算時,從節(jié)點計算時通過Hadoop自帶的RPC協(xié)議來進行通信。具體的計算過程則是由MapReduce框架完成。

 #p#

MapReduce下的Flow分析

MapReduce計算框架下,任何數(shù)據(jù)都可以被看做是一對鍵值的組合。Map函數(shù)和Reduce函數(shù)是 Map-Reduce的兩大組成部分。Map函數(shù)用來對原始數(shù)據(jù)進行過濾,然后產(chǎn)生中間結(jié)果(也是鍵-值的形式)該中間結(jié)果作為Reduce函數(shù)的輸入。之后,Hadoop會把具有相同鍵的值歸為一個列表,然后再遍歷列表進行數(shù)據(jù)的統(tǒng)計。Reduce過后,通常中間數(shù)據(jù)集都會縮小,因為Reduce過程中僅提取了該部分的有效信息。為了能使用MapReduce框架進行不同流字段的分析,應(yīng)當(dāng)設(shè)計自己Map和Reduce函數(shù),如果要做某時間段的流量檢測,那么Map函數(shù)要設(shè)計成帶有可以提取某時間段所有流量的功能。如果我們要查看是否有潛在的DDos攻擊,那么Map函數(shù)被設(shè)計成可以提取知名端口字段,其他的功能與此類似。

圖2詳細(xì)地介紹了統(tǒng)計某時間段流量的MapRed-uce的工作流程。圖中有一個上文沒有提到combiner的過程,該過程主要用于再從節(jié)點進行部分歸并,以提高程序的運行效率。

 

1.輸入文件

首先,我們把提取的原始NetFlow字段利用SILK自帶的工具rwfilter解析成Hadoop可以讀出的數(shù)據(jù)字段,即文本字段。接著把這些解析出來的字段由Hadoop客戶端上傳到HDFS中,由于解析出來的文本字段遠遠大于原來的二進制形式的文件,所以需要把這部分輸入規(guī)模變小一些。SILK本身并不提供解析二進制文件的接口,所以采取了把源數(shù)據(jù)進行壓縮的方法,采取的壓縮格式最好是能支持 Hadoop的LZO,通過實驗也證明了這種壓縮方式確實有最好效率。

2.Mapper

Mapper首先讀入存在在HDFS中的文件作為自己的輸入,它的讀入以行為單位。然后再用文本處理工具對這些行字段進行提取,提取的字段和要進行的操作有關(guān)。以統(tǒng)計某時段的某IP的流入流量為例,Mapper輸入中會有IP、端口、協(xié)議、時間戳等字段。由于是進行某時間段流量的統(tǒng)計,我們把該時間段內(nèi)的IP字段提取出來作為鍵,把該時間段內(nèi)的流量提取出來作為值,這樣就構(gòu)成了一個Mapper。

3.Reducer

Reducer把Mapper的輸出作為輸入,同樣以統(tǒng)計某IP地址某時間段流入流量為例。Mapper中得到了IP-Bytes鍵值對,Reducer中把相同的鍵所對應(yīng)的值歸并在一個列表L中這樣,鍵值對就變成(IP,L),這樣就可以遍歷L并把所有的流量相加,就得到了我們想要的結(jié)果。

實驗及結(jié)果對比

為了進行實驗,我們搭建了1個主節(jié)點以及4個從節(jié)點的Hadoop-2.4.1版本的集群,集群的每個從節(jié)點帶有2.83GHz的12核CPU,內(nèi)存大小為48G,硬盤大小為40TB,集群的主節(jié)點帶有一個12核2.83GHz的CPU和64G內(nèi)存。為了提高效率,主從節(jié)點均在同一個機架上,連在同一個交換機上。SILK的對比試驗則是在單節(jié)點上進行,配置相同。

可以看到當(dāng)數(shù)據(jù)量不大時,SILK往往具有更快的速度,這是因為Hadoop在進行計算前,要做一些集群間的通信及初始化工作,在小數(shù)據(jù)集上并不占優(yōu)勢。然而當(dāng)我們把實驗數(shù)據(jù)逐漸加大時,發(fā)現(xiàn)Hadoop會在某個點超越SILK的分析速度,當(dāng)數(shù)據(jù)集再逐漸擴大時,Hadoop的優(yōu)勢變得更加明顯,如圖3所示。

 

本文主要展示了如何利用Hadoop和MapReduce框架進行大規(guī)模的網(wǎng)絡(luò)流的分析的方法,并列舉了幾個利用這種方法進行實際分析的實例以及和傳統(tǒng)方法進行網(wǎng)絡(luò)流分析的對比。實踐中,該方法在大量數(shù)據(jù)的情況下相比于傳統(tǒng)的流分析工具具有更高的效率。另外它在可靠性、可擴展性方面也有著突出的表現(xiàn),隨著Hadoop更高版本的推出,現(xiàn)在的單點故障問題以及分布式系統(tǒng)安全方面也有了顯著的提升,使得該方法的應(yīng)用更成為了可能。

責(zé)任編輯:Ophira 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2012-09-07 11:19:21

SNMPNetFlow虛擬網(wǎng)絡(luò)

2011-04-06 11:36:28

MRTG流量

2022-04-14 08:21:48

微服務(wù)項目多模塊

2016-01-14 11:40:13

2010-06-01 10:45:02

Mrtg 安裝

2012-05-16 09:00:35

網(wǎng)絡(luò)流量分析工具調(diào)試Android應(yīng)用

2019-07-26 11:13:53

2020-05-22 17:40:34

網(wǎng)絡(luò)流量

2023-08-03 10:29:41

2015-10-15 13:50:17

網(wǎng)絡(luò)流量分析東華網(wǎng)智

2013-06-03 10:24:30

2024-11-18 16:32:33

2011-04-20 10:51:56

網(wǎng)絡(luò)流量分析工具網(wǎng)絡(luò)監(jiān)測

2011-08-01 13:23:19

組網(wǎng)

2016-10-07 22:54:03

流量監(jiān)控ossim

2011-08-08 14:34:32

2023-01-17 07:35:00

2015-12-07 17:07:36

SDN網(wǎng)絡(luò)流量

2011-07-26 10:27:41

跨地域網(wǎng)絡(luò)網(wǎng)絡(luò)管理

2021-10-19 15:11:33

網(wǎng)絡(luò)數(shù)據(jù)技術(shù)
點贊
收藏

51CTO技術(shù)棧公眾號