當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]高速網(wǎng)絡(luò)流量監(jiān)測系統(tǒng)的設(shè)計與實現(xiàn)

 隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,網(wǎng)絡(luò)應(yīng)用范圍不斷擴(kuò)大,網(wǎng)絡(luò)結(jié)構(gòu)和網(wǎng)絡(luò)應(yīng)用越來越復(fù)雜,這使得網(wǎng)絡(luò)出現(xiàn)各種問題的可能性增大,同時管理網(wǎng)絡(luò)的難度也增大。網(wǎng)絡(luò)流量監(jiān)測提供了一種探索實際環(huán)境中網(wǎng)絡(luò)特性的手段。從實現(xiàn)方法的角度,目前所存在的流量測量方法可分為兩大類:基于硬件的測量方法和基于通用PC平臺測量方法?;谟布臏y量方法由于在高速鏈路的環(huán)境下具有了巨大的性能優(yōu)勢,一般為大型開發(fā)商和運營商所用,但是因為其價格比較昂貴,大多數(shù)的中小企業(yè)還是選用基于通用PC的流量監(jiān)測方法。然而,隨著網(wǎng)絡(luò)速率的不斷提高,基于通用PC平臺的流量監(jiān)測因為受到操作系統(tǒng)和硬件性能的限制,不能滿足高速鏈路流量監(jiān)測的需求。
 本文設(shè)計并實現(xiàn)了一種高速網(wǎng)絡(luò)流量監(jiān)測系統(tǒng)。該系統(tǒng)基于高速數(shù)據(jù)采集卡和普通服務(wù)器,在硬件采集、存儲數(shù)據(jù)的基礎(chǔ)上,實現(xiàn)數(shù)據(jù)捕獲、分析、統(tǒng)計、報表等功能。通過該系統(tǒng),用戶可以制定針對特定業(yè)務(wù)的流量監(jiān)測,并且可以對網(wǎng)絡(luò)的健康狀況和瓶頸等進(jìn)行測試,幫助用戶迅速地確定網(wǎng)絡(luò)問題。
1 設(shè)計方案
 網(wǎng)絡(luò)流量監(jiān)測驗證系統(tǒng)由硬件支撐平臺、軟件支撐平臺和網(wǎng)絡(luò)流量監(jiān)測應(yīng)用軟件(ntop)三部分構(gòu)成。
1.1 硬件支撐平臺
1.1.1 TurboCap高速捕獲卡

 TurboCap是一種雙端口千兆捕獲與注入工具,具備多種功能,包括同時全速捕獲與注入、多端口通信聚合以及可調(diào)控的pass-thru模式。該工具套件同時提供TurboCap API以及winPcap/libpcap API。TurboCap套件包括TurboCap千兆捕獲卡、TurboCap驅(qū)動和用戶級的API三部分。
1.1.2 服務(wù)器
 TurboCap卡是一種基于PCI-E的接口卡(4x或8x),為了最大程度發(fā)揮其性能,網(wǎng)絡(luò)流量監(jiān)測系統(tǒng)采用HP380G6服務(wù)器,該服務(wù)器主要配置如下:PCI-E為X8 PCI-E卡插槽;CPU采用2.4 GHz雙核Intel Xeon W3503;內(nèi)存為8 GB;存儲為SAS硬盤(10 000轉(zhuǎn))RAID卡。
1.2 軟件支撐平臺
 軟件支撐平臺主要包括Linux操作系統(tǒng)、TurboCap卡驅(qū)動和TurboCap Libpcap(Packet Capture Library)開發(fā)包模塊等。
Linux操作系統(tǒng)采用Fedora 10,主要因為捕獲卡的驅(qū)動為Fedora 10。
1.2.1 Libpcap開發(fā)模塊
 Libpcap由Berkeley 大學(xué)的JACOBSON V、LERES C 和MCCANNE S編寫, 是一個平臺獨立的網(wǎng)絡(luò)數(shù)據(jù)包捕獲開發(fā)包,應(yīng)用非常廣泛,幾乎只要涉及網(wǎng)絡(luò)數(shù)據(jù)包的捕獲功能,都可以使用Libpcap開發(fā)包。Libpcap可以在絕大多數(shù)類Unix/Linux平臺下工作。Libpcap軟件包可從http://www.tcpdump.org下載,目前最新版本為1.1.1。
 本文采用的Libpcap版本號為libpcap-1.0.0-tc_17.fc10.x86_64,是由CACE公司提供的與TurboCap卡驅(qū)動配套的開發(fā)包。
1.2.2 支撐軟件安裝
 以ROOT用戶安裝TurboCap驅(qū)動, TurboCap內(nèi)核模塊,TurboCap開發(fā)庫、文檔、例子以及支持TurboCap修改版的libpcap 1.0.0,操作如下:
 [root@x86_64]# rpm -ivh kernel-firmware-2.6.27.12-170.2.5.preemptive.kernel.kt.fc10.x86_64.rpm
 [root@x86_64]# rpm -ivh kernel-2.6.27.12-170.2.5.preemptive.kernel.kt.fc10.x86_64.rpm
 [root@x86_64]# rpm -ivh turbocap-1.6.2117-1.fc10.x86_64.rpm libpcap-1.0.0-tc_16.fc10.x86_64.rpm
 [root@x86_64]# rpm -ivh turbocap-module-2.6.27.12-170.2.5.preemptive.kernel.kt.fc10-1.6.2117-1.fc10.x86_64.rpm
 之后重啟計算機(jī),確認(rèn)選擇啟動的內(nèi)核是:Fedora (2.6.27.12-170.2.5.preemptive.kernel.kt.fc10.i686)或者Fedora(2.6.27.12-170.2.5.preemptive.kernel.kt.fc10.x86_64)
1.3 網(wǎng)絡(luò)流量監(jiān)測應(yīng)用軟件
 ntop是一套網(wǎng)絡(luò)流量監(jiān)控軟件,由意大利Pisa大學(xué)教授DERI L于1997年開始開發(fā),并以開源方式提供使用,可以從http://www.ntop.org下載,目前最新版本為4.0.3。ntop以sniffery方式運作,采用網(wǎng)頁接口,主要功能有網(wǎng)絡(luò)監(jiān)控、網(wǎng)絡(luò)流量統(tǒng)計、提供網(wǎng)絡(luò)最佳化與除錯的信息以及偵測可疑的網(wǎng)絡(luò)流通信息等。
1.3.1 ntop功能
 ntop可以監(jiān)測的數(shù)據(jù)包括:網(wǎng)絡(luò)流量、使用協(xié)議、系統(tǒng)負(fù)載和端口情況等。
 ntop能夠更加直觀地將網(wǎng)絡(luò)使用量的情況和每個節(jié)點計算機(jī)的網(wǎng)絡(luò)帶寬使用詳細(xì)情況顯示出來??梢酝ㄟ^分析網(wǎng)絡(luò)流量來確定網(wǎng)絡(luò)上存在的各種問題,如瓶頸效應(yīng)或性能下降;也可以用來判斷是否有黑客正在攻擊網(wǎng)絡(luò)系統(tǒng)。如果懷疑網(wǎng)絡(luò)正在遭受攻擊,通過ntop截獲的數(shù)據(jù)包可以確定正在攻擊系統(tǒng)的是什么類型的數(shù)據(jù)包,以及它們的源頭,從而可以及時地作出響應(yīng),或者對網(wǎng)絡(luò)進(jìn)行相應(yīng)的調(diào)整,以保證網(wǎng)絡(luò)運行的效率和安全。通過ntop網(wǎng)管員還可以很方便地確定哪些通信量屬于某個特定的網(wǎng)絡(luò)協(xié)議、占主要通信量的是哪個主機(jī)、各次通信的目標(biāo)是哪個主機(jī)、數(shù)據(jù)包發(fā)送時間、各主機(jī)間數(shù)據(jù)包傳遞的間隔時間等。這些信息為網(wǎng)管員判斷網(wǎng)絡(luò)問題及優(yōu)化網(wǎng)絡(luò)性能,提供了十分寶貴的信息。
1.3.2 ntop基本架構(gòu)
 ntop基本架構(gòu)分成三個模塊:數(shù)據(jù)包捕獲(Packet Sniffer)模塊,數(shù)據(jù)包分析(Packet Analyser)模塊以及報告引擎(Report Engine)模塊,如圖1所示。由Packet Sniffer收集網(wǎng)絡(luò)上的Packet,然后送給Packet Analyser去處理,再由Report Engine將處理分析后的數(shù)據(jù)呈現(xiàn)出來。

1.3.3 ntop安裝與使用
 在FC10下,ntop的安裝配置更簡單,大多數(shù)庫默認(rèn)都已經(jīng)安裝,只需另外安裝GeoIP和rrdtool,下面簡單介紹一下ntop的安裝和配置。
解壓縮源碼:tar -zxvf ntop-4.0.3.tar.gz;
 運行:cd ntop-4.0.3;
 運行:./autogen.sh;
 運行:make && make install;
 添加用戶:useradd -M-s/sbin/nologin-r ntop;
 設(shè)置用戶權(quán)限:chown ntop:root /usr/local/var/ntop/;
 設(shè)置用戶權(quán)限:chown ntop:ntop /usr/local/share/ntop/;
 設(shè)置密碼:ntop-A;
 ntop作為守護(hù)進(jìn)程運行:/usr/local/bin/ntop-d-L-u ntop-P/usr/local/var/ntop--skip-version-check--use-syslog=daemon;
 查看統(tǒng)計信息:打開瀏覽器,在地址欄輸入http://host_ip:3000(“IP”就是安裝ntop的那臺網(wǎng)管工作站的IP地址),即可打開ntop界面。
2 網(wǎng)絡(luò)流量監(jiān)控系統(tǒng)的接入方式
2.1 網(wǎng)絡(luò)數(shù)據(jù)獲得技術(shù)

 在交換網(wǎng)絡(luò)中,有兩種有效的獲得數(shù)據(jù)的方法:
 (1)鏡像端口SPAN(Switch Port Analysis):某些交換機(jī)可以將一個或幾個端口的數(shù)據(jù)包復(fù)制到一個指定的端口,然后可以在該端口上接網(wǎng)絡(luò)流量監(jiān)測系統(tǒng)。
?。?)分路器TAP(Test Access Port):可以把任意一個端口收到的數(shù)據(jù)注入到另一個端口??捎糜诩磿r分析網(wǎng)絡(luò)流量,且不占用任何網(wǎng)絡(luò)資源。分路器TAP串接在被監(jiān)控鏈路上,可永久固定在被監(jiān)控鏈路上,避免插拔鏈路,不用配置交換機(jī)和額外占用交換機(jī)端口。
2.2 網(wǎng)絡(luò)流量監(jiān)控系統(tǒng)的部署方式——SPAN方式
 網(wǎng)絡(luò)流量監(jiān)控系統(tǒng)的部署方式為SPAN方式。下面主要說明如何在Catalyst 2950上配置SPAN功能,以下是SPAN實現(xiàn)的范例:
 C2950#conf t
 C2950(config)#
 C2950(config)#monitor session 1 source interface fastEthernet 0/2
 !-- Interface fa 0/2 is configured as source port
 C2950(config)#monitor session 1 destination interface fastEthernet 0/3
 !-- Interface fa0/3 is configured as destination port
 C2950(config)#
 在使用SPAN時需要注意:(1)保證鏡像端口的線速等于或高于被監(jiān)測端口的線速,防止數(shù)據(jù)過載,造成數(shù)據(jù)包丟失;(2)SPAN功能會增加交換機(jī)的負(fù)荷,占用交換機(jī)的CPU、內(nèi)存等系統(tǒng)資源,致使交換機(jī)性能下降,所以在獲取到足夠的數(shù)據(jù)后,需要去除SPAN功能;(3)由于不同交換機(jī)轉(zhuǎn)發(fā)機(jī)制不同,有的交換機(jī)的SPAN功能會自動丟棄錯誤的數(shù)據(jù)包,導(dǎo)致無法獲取到錯誤的數(shù)據(jù)包,而錯誤的數(shù)據(jù)包能為解決網(wǎng)絡(luò)問題提供重要依據(jù)。
2.3 網(wǎng)絡(luò)流量監(jiān)控系統(tǒng)的部署方式——TAP方式
 網(wǎng)絡(luò)流量監(jiān)控系統(tǒng)的部署方式采用TAP方式,TAP方式又分以下幾種:
?。?)交換分路器(TAP)模式。當(dāng)TurboCap卡處于pass-thru模式時,TurboCap把一個端口收到的數(shù)據(jù)注入到同卡上的另一個端口。兩個端口支持全速對發(fā),從而使TurboCap具有分路器的功能。
?。?)匯聚TAP模式。安裝方法類似于交換TAP。匯聚TAP可以將多條鏈路的全雙工數(shù)據(jù)合并到單一數(shù)據(jù)流中,這樣可以從單一數(shù)據(jù)流中看到來自多個SPAN端口的匯聚流量,將其復(fù)制后供分析使用。TurboCap支持同卡上的全速雙口通信聚合。用戶可以通過一個叫做Board Aggregationg Port(BAP)的虛擬端口來訪問聚合通信。TurboCap還支持對多TurboCap卡的端口進(jìn)行聚合,這樣用戶可以一次捕獲超過兩個端口的通信。
在借助TAP分析網(wǎng)絡(luò)數(shù)據(jù)的時候,需要注意以下三點:(1)TAP主要用于對骨干鏈路數(shù)據(jù)的獲取(當(dāng)然也可以用于其他鏈路),使用時需要預(yù)先布放(串接)到鏈路中,避免監(jiān)測骨干鏈路時再串接TAP而引起中斷網(wǎng)絡(luò)的情況發(fā)生;(2)被監(jiān)測的鏈路流量不要超過TAP端口的線速,防止數(shù)據(jù)包因過載而丟失;(3)將不同的TAP組合起來使用可以實現(xiàn)更高要求的數(shù)據(jù)監(jiān)測,通過TAP模式和聚合功能,就可以實現(xiàn)聚合TAP的功能。
 本文基于高速采集卡和普通服務(wù)器設(shè)計了高速網(wǎng)絡(luò)流量監(jiān)測系統(tǒng),采用Linux操作系統(tǒng)和開源軟件,成本低,滿足了高速鏈路流量監(jiān)測的需求。該系統(tǒng)既支持SPAN方式,也支持TAP方式,這兩種技術(shù)在網(wǎng)絡(luò)監(jiān)測、分析時都普遍應(yīng)用。用戶可以根據(jù)自己的使用情況,選擇合適的部署方式來部署網(wǎng)絡(luò)流量監(jiān)測系統(tǒng)。
參考文獻(xiàn)
[1] 鄭惠之,羅進(jìn)文.一種有效的流量控制策略—ntop[J]. 信息科技,2002(3):38-39.
[2] 趙冉.網(wǎng)絡(luò)流量測量系統(tǒng)Ntop的分析與研究[D].西安:西北大學(xué),2008.
[3] TAMON M A. Ntop network monitoring guide[EB/OL].[2008].http://techowto.wordpress.com.

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

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

關(guān)鍵字: 阿維塔 塞力斯 華為

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

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

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

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

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

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

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

關(guān)鍵字: 騰訊 編碼器 CPU

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

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

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

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

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

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

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

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

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

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉