當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]NetFlow流量采集與聚合的研究實現(xiàn)

0 引 言
   
近年來,隨著信息技術的飛速發(fā)展,越來越多的企業(yè)和大型機構在其內(nèi)部構建基于網(wǎng)絡的應用,復雜程度及對網(wǎng)絡的依賴程度日益提高,各種各樣的網(wǎng)絡問題也隨之產(chǎn)生。網(wǎng)絡流量監(jiān)測是網(wǎng)絡管理和系統(tǒng)管理的一個重要組成部分,網(wǎng)絡流量數(shù)據(jù)為網(wǎng)絡的運行和維護提供了重要信息。這些數(shù)據(jù)對網(wǎng)絡的資源分布、容量規(guī)劃、服務質(zhì)量分析、錯誤監(jiān)測與隔離、安全管理都十分重要。因此,對網(wǎng)絡流量及相關情況實施科學合理的監(jiān)管和深入分析,成為網(wǎng)絡管理的重要環(huán)節(jié)之一;同時,它也為網(wǎng)絡問題提供有效解決方案及進行網(wǎng)絡的規(guī)劃。
    目前的網(wǎng)絡流量分析方法主要有基于SNMP、基于實時抓包分析、基于網(wǎng)絡探針和基于:Flow技術等幾種。NetFlow基于Flow技術,目前已得到大多數(shù)網(wǎng)絡設備廠商的支持,提供了網(wǎng)絡監(jiān)測方面非常完善的應用。基于NetFlow的流量采集方法可以獲得包括源/目的主機IP、應用協(xié)議類型、源/目的端口等詳細信息,根據(jù)這些信息就可以對協(xié)議(應用)、主機IP(用戶)以及AS域等進行統(tǒng)計排行和趨勢分析,也可對異常流量進行監(jiān)測分析。此外,NetFlow避免了大量部署和配置監(jiān)測探針的復雜過程,使得網(wǎng)絡性能分析更加全面、靈活且簡單易用。

l NetFlow技術
    NetFlow是Cisco公司提出的基于Cisco IOS系統(tǒng)的一種應用。它用于提供網(wǎng)絡設備上數(shù)據(jù)包形成的“流”的統(tǒng)計信息,并逐漸演變成為網(wǎng)絡流量統(tǒng)計和安全分析的主要手段。目前利用:NetFlow可以實現(xiàn)網(wǎng)絡流量監(jiān)測,用戶應用監(jiān)控,網(wǎng)絡安全,網(wǎng)絡規(guī)劃以及流量計費等功能。
    NetFlow有兩個核心的組件:NetFlow緩存,存儲IP流信息;NetFlow的數(shù)據(jù)導出或傳輸機制,NetFlow利用此機制將數(shù)據(jù)發(fā)送到網(wǎng)絡管理采集器。
1.1 流(Flow)的定義
    一條流由一個源主機與一個目的主機間的單方向傳輸?shù)木W(wǎng)絡數(shù)據(jù)包組成,其中,源和目的主機由各自的IP地址和端口號來標識。一條流一般由以下七個關鍵字段惟一標識:
    ·源地址
    ·目的地址
    ·源端口號
    ·目的端口號
    ·第3層協(xié)議類型(如TCP,UDP)
    ·服務類型
    ·入邏輯接口標示符
1.2 流(Flow)格式
   
啟動NetFlow的設備會輸出其緩沖區(qū)里的信息,以UDP包的形式傳送給NetFlow流量采集器。包由包頭和若干流記錄組成。常用的NetFlOW輸出包格式共有5個版本,它們分別是Version 1,Version 5,Ver-sion 7,Version 8和Version 9,其中V5是最為流行和成熟的版本,目前得到最廣泛的使用。最新的V9已經(jīng)被列入IETF的標準,并有待進一步研究和規(guī)范。V9采用了模板技術與流記錄相結合的方式,使NetFlow輸出包的格式具有動態(tài)和可擴展的特性。NetFlow V9的輸出格式主要由三部分構成:
    (1)包頭部(Packet Header):包括版本號、包中數(shù)據(jù)流總數(shù)、系統(tǒng)時間、數(shù)據(jù)流序列、數(shù)據(jù)源ID等。
    (2)模板流集(Template FlowSet):包含一個或多個模板,模板是用于描繪數(shù)據(jù)流中各個數(shù)據(jù)段的含義,可以在路由器上根據(jù)需要自行設置模板。
    (3)數(shù)據(jù)流集(。Data FlowSet):包含多個數(shù)據(jù)流,每個數(shù)據(jù)流集通過模板ID對應某個模板。數(shù)據(jù)采集端根據(jù)模板來解析數(shù)據(jù)流。

2 NetFlow流量采集與聚合
2.1 系統(tǒng)概述

    根據(jù)NetFlow的特點,設計并實現(xiàn)了一個網(wǎng)絡流量監(jiān)測系統(tǒng),其系統(tǒng)結構如圖1所示。

    當NetFlow采集器接收到從路由器發(fā)送來的Net-Flow數(shù)據(jù)包后,采集器將進行數(shù)據(jù)包的解析和數(shù)據(jù)流聚合,形成多種適合統(tǒng)計分析需要的數(shù)據(jù),再分門別類地存入數(shù)據(jù)庫。分析器則根據(jù)前端不同的查詢請求,依照一定的查詢策略從數(shù)據(jù)庫不同的表中提取相應數(shù)據(jù)進行分析展現(xiàn)。
    本系統(tǒng)的后臺采集器和聚合處理部分用JAVA編寫實現(xiàn),數(shù)據(jù)庫采用開源的MySQL,而NetFlow流量分析利用Tomcat服務器通過Web方式展現(xiàn),前臺部分用JSP編寫實現(xiàn)。工作的重點即在于數(shù)據(jù)采集、數(shù)據(jù)聚合以及數(shù)據(jù)庫設計部分。
2.2 NetFlow流采集
2.2.1 采集器的設計

    數(shù)據(jù)采集模塊是整個系統(tǒng)的基礎。由于。NetFlow數(shù)據(jù)流量非常大,為防止丟包系統(tǒng)采用緩沖區(qū)和線程池結構,如圖2所示。

    當采集器監(jiān)聽到一個NetFlow數(shù)據(jù)包時,將該數(shù)據(jù)包接收到緩沖區(qū),并從包解析線程池中取出一個線程,根據(jù)相應的NetFlow的報文格式解析出數(shù)據(jù)流信息,將該原始流信息放入緩沖區(qū),然后將原始流存入數(shù)據(jù)庫,同時采用相應的聚合策略聚合原始流生成聚合流并存入相應的數(shù)據(jù)庫中。
2.2.2 NetFlow數(shù)據(jù)包接收與解析
   
由于NetFlow數(shù)據(jù)是借助于UDP數(shù)據(jù)報來傳送,因而倘若后續(xù)的處理速度跟不上數(shù)據(jù)包到達的速度,則會出現(xiàn)嚴重丟包的現(xiàn)象。為解決高速大流量數(shù)據(jù)的及時接收及較低丟包率問題,采用了多線程的方式來實現(xiàn)。用獨立的兩個線程分別完成數(shù)據(jù)接收和解析操作:接收數(shù)據(jù)的線程在特定的IP地址監(jiān)聽相應的UDP端口,接收到的數(shù)據(jù)暫存在緩沖區(qū)中;解析線程從緩沖區(qū)提取數(shù)據(jù),按照相應的報文格式進行解析。由于接收線程和解析線程共享同一個臨界資源,即接收的緩沖區(qū),需要對臨界資源進行加鎖操作。
    下面為部分實現(xiàn)多線程采集的JAVA代碼實例,其中packet為接收的NetFlow數(shù)據(jù)包對象,linkedLst為linkedList容器,利用synchronized進行線程間同步。
    (1) 接收線程

   

   
[!--empirenews.page--]2.3 NetFlow流聚合
    NetFlow的原始數(shù)據(jù)數(shù)據(jù)量非常龐大,保存每一條流數(shù)據(jù)的原始記錄將會使對數(shù)據(jù)進行查詢分析時產(chǎn)生效率低下的問題,在絕大部分應用中也沒有必要把數(shù)據(jù)粒度設計得如此之小。所謂流量聚合,是指對符合NetFlow數(shù)據(jù)格式的原始流記錄根據(jù)一定條件進行流量合并,實現(xiàn)多條流合并為一條的過程,以實現(xiàn)原始流的壓縮整理。
2.3.1 聚合策略
    流量聚合有三個關鍵要素:聚合條件(F)、時間粒度(T)和聚合項(C)。滿足相同聚合條件和時間粒度的流進行流量疊加,并保留聚合項。三元組聚合策略:<F,T,c>,其中:

   
    按照實際流量分析的需要,從F,T,C中各取出一個值組成一個聚合策略。對于T的粒度要根據(jù)實際監(jiān)控的時間長短和監(jiān)測精度來設置,一般來說T=3 min適合于當天實時流量的監(jiān)測;T=30 min用于一周流量的分析;T=3 h用于一月內(nèi)流量的分析。
2.3.2 聚合的實現(xiàn)
    對于一個新采集的原始流,必須能根據(jù)其所攜帶的聚合條件信息快速匹配是否已存在與其相同聚合條件的聚合流,若有則做流量疊加,若沒有則創(chuàng)建一條新的聚合流。Hash表具有從Key快速映射到Value的特點,這種特點對于實時性較高的聚合非常有意義。圖3為流量聚合的}Iash表設計。

    在圖3中聚合條件(F)作為Key,聚合項(C)作為Hash函數(shù)的映射值,時間粒度(T)作為Hash表導出到數(shù)據(jù)庫的時間。這樣可以滿足實時流量監(jiān)測的需要,同時也壓縮數(shù)據(jù)減少存儲空間,提高數(shù)據(jù)的查詢效率。

3 實際NetFlow流采集與流量監(jiān)測
    在本系統(tǒng)設計的數(shù)據(jù)采集器的支持下,系統(tǒng)數(shù)據(jù)庫為前端分析提供了充足且多樣化的數(shù)據(jù)準備,前端程序只需通過簡單的查詢語句即可得到所需的數(shù)據(jù)集,簡化了查詢的工作量。利用該系統(tǒng)采集NetFlow數(shù)據(jù)包50 000個,時間持續(xù)約7 h,時間粒度為3 min,主要檢驗丟包情況,以及聚合后壓縮效率。這次采集無丟包發(fā)生,表1為該系統(tǒng)采集的數(shù)據(jù)結果。

    圖4是系統(tǒng)由所采集的數(shù)據(jù)生成的該時段的流量監(jiān)測圖。

4 結 語
    NetFlow數(shù)據(jù)流的海量特征使得服務器程序的效率至關重要,因此基于NetFlow的流量監(jiān)測的主要任務是如何根據(jù)應用保存最重要的網(wǎng)絡流特征以及如何更高效地實現(xiàn)數(shù)據(jù)檢索?;贜etFlow特點,提出了一套適用于大流量網(wǎng)絡的流量采集與聚合存儲方案。流量采集通過多線程和緩沖區(qū)機制實現(xiàn),有效提高了流量采集的可靠性。采集的原始流經(jīng)聚合,并通過合理的分級存儲策略進行存儲組織,為前端的數(shù)據(jù)分析提供了全面支持。本系統(tǒng)在實際應用中取得了良好效果。下一步還將對采集和多級聚合存儲方案進行改進,以豐富系統(tǒng)對網(wǎng)絡流量統(tǒng)計分析功能,并力爭為異常流量分析提供較為完善的數(shù)據(jù)支持。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉