基于 WinPcap 的數(shù)據(jù)包捕獲和分析系統(tǒng)

基于 WinPcap 的數(shù)據(jù)包捕獲和分析系統(tǒng)

ID:37594019

大?。?88.65 KB

頁數(shù):10頁

時間:2019-05-25

基于 WinPcap 的數(shù)據(jù)包捕獲和分析系統(tǒng)_第1頁
基于 WinPcap 的數(shù)據(jù)包捕獲和分析系統(tǒng)_第2頁
基于 WinPcap 的數(shù)據(jù)包捕獲和分析系統(tǒng)_第3頁
基于 WinPcap 的數(shù)據(jù)包捕獲和分析系統(tǒng)_第4頁
基于 WinPcap 的數(shù)據(jù)包捕獲和分析系統(tǒng)_第5頁
資源描述:

《基于 WinPcap 的數(shù)據(jù)包捕獲和分析系統(tǒng)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、http://www.paper.edu.cn?基于WinPcap的數(shù)據(jù)包捕獲和分析系統(tǒng)的設(shè)計與實現(xiàn)鄭玲北京郵電大學(xué)信息與通信工程學(xué)院,北京(100876)Email:zhengling1123@gmail.com摘要:WinPcap是Windows平臺上高性能的包捕獲開發(fā)工具。本文對WinPcap的結(jié)構(gòu)和功能進行了詳細的介紹和分析,闡述了基于WinPcap捕獲和分析網(wǎng)絡(luò)數(shù)據(jù)包的方法和主要步驟,并且給出了一個在Windows平臺上,MicrosoftVC++6.0環(huán)境下,基于WinPcap捕獲和分析網(wǎng)絡(luò)數(shù)據(jù)包的實例。該實例

2、能過濾用戶指定的IP地址、端口號和網(wǎng)絡(luò)協(xié)議的數(shù)據(jù)包,并在界面實時顯示數(shù)據(jù)包的具體信息。關(guān)鍵詞:WinPcap,數(shù)據(jù)包,包捕獲中圖分類號:TP39?1.引言隨著互聯(lián)網(wǎng)的飛速發(fā)展,網(wǎng)絡(luò)已成為信息交換的主要手段。一些網(wǎng)絡(luò)新業(yè)務(wù)在不斷地興起,如電子商務(wù)、移動支付等,這些都對網(wǎng)絡(luò)安全提出了較高的要求。與此同時,黑客對網(wǎng)絡(luò)的攻擊從未停止,很多網(wǎng)絡(luò)攻擊都是從捕獲局域網(wǎng)中的數(shù)據(jù)包開始。因此研究網(wǎng)絡(luò)底層數(shù)據(jù)包捕獲和分析技術(shù)對于保障網(wǎng)絡(luò)安全有著重要的意義。WinPcap是一個基于Win32平臺的,用于捕獲網(wǎng)絡(luò)數(shù)據(jù)包并進行分析的開源庫。WinP

3、cap?提供的驅(qū)動接口,可以在數(shù)據(jù)鏈路層實現(xiàn)對網(wǎng)絡(luò)數(shù)據(jù)流的捕獲和分析。同時,WinPcap以其開源的魅力和強大的功能,已經(jīng)贏得越來越多的網(wǎng)絡(luò)程序開發(fā)人員的青睞。2.WinPcap介紹[1]WinPcap是由意大利人FulvioRisso和Loris?Degioanni等人提出并實現(xiàn)的,在Windows?平臺上實現(xiàn)對底層數(shù)據(jù)包的捕獲和過濾。WinPcap能訪問網(wǎng)絡(luò)中的原始數(shù)據(jù)包,即沒有被操作系統(tǒng)利用網(wǎng)絡(luò)協(xié)議處理過的數(shù)據(jù)包。它的主要思想來自于UNIX?系統(tǒng)中著名的BSD?包捕獲結(jié)構(gòu),具有良好的結(jié)構(gòu)和性能??偟膩碚f,WinPca

4、p提供了以下?4?個功能:①捕獲原始數(shù)據(jù)包,無論它是發(fā)往某臺機器的,還是在其他設(shè)備(共享媒介)上進行交換的;②在數(shù)據(jù)包發(fā)送給某應(yīng)用程序前,根據(jù)用戶指定的規(guī)則過濾數(shù)據(jù)包;③將原始數(shù)據(jù)包通過網(wǎng)絡(luò)發(fā)送出去;④收集并統(tǒng)計網(wǎng)絡(luò)流量信息。這些功能需要借助安裝在Win32內(nèi)核中的網(wǎng)絡(luò)設(shè)備驅(qū)動程序和若干個動態(tài)鏈接庫才能實現(xiàn)。然而,WinPcap有其應(yīng)用的局限性:它不能阻止、過濾或操縱同一機器上的其他應(yīng)用程序的通訊,它僅僅能簡單地“監(jiān)視”在網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)包。所以,它不能提供類似網(wǎng)絡(luò)流量控制、服務(wù)質(zhì)量調(diào)度和個人防火墻之類的支持。1?http

5、://www.paper.edu.cn?WinPcap的整體結(jié)構(gòu)分為三個相對獨立的部分:網(wǎng)絡(luò)組包過濾器(NetgroupPacket?Filter,NPF)、低級動態(tài)鏈接庫(Packet.dll)和高級動態(tài)鏈接庫(Wpcap.dll),如圖?1?所示。Application?Wpcap.dllPacket.dll?User?LevelNPF?Device?DriverKernel?Level?Network?Packets圖?1?WinPcap系統(tǒng)結(jié)構(gòu)NPF(NetgroupPacket?Filter)是一個虛擬設(shè)備驅(qū)動程

6、序,是WinPcap的核心部分,它從網(wǎng)卡驅(qū)動程序收集到網(wǎng)絡(luò)數(shù)據(jù)包,轉(zhuǎn)發(fā)給過濾器進行過濾,也可以發(fā)送給統(tǒng)計器進行網(wǎng)絡(luò)統(tǒng)計分析,還可以發(fā)送到轉(zhuǎn)儲器,直接將網(wǎng)絡(luò)數(shù)據(jù)包存儲到磁盤。Packet.dll?是內(nèi)核級、低層次的包過濾動態(tài)鏈接庫,通過它直接映射到?Windows?系統(tǒng)內(nèi)核的調(diào)用,使應(yīng)用程序可以運行在不同的Windows?系統(tǒng)中,通過調(diào)用可直接訪問?NPF驅(qū)動程序的?API,接收或發(fā)送網(wǎng)絡(luò)數(shù)據(jù)包。Wpcap.dll是高級的、與系統(tǒng)無關(guān)的動態(tài)鏈接庫,它與應(yīng)用程序鏈接在一起,使用packet.dll提供的服務(wù),向應(yīng)用程序提供更完

7、善的監(jiān)聽接口和更多功能的函數(shù)調(diào)用。3.系統(tǒng)架構(gòu)本系統(tǒng)基于WinPcap?用于捕獲和分析網(wǎng)絡(luò)數(shù)據(jù)包。用戶可以根據(jù)需要,選擇捕獲指定的?IP地址、端口號和協(xié)議類型的數(shù)據(jù)包(默認捕獲局域網(wǎng)內(nèi)的所有數(shù)據(jù)包)。捕獲后系統(tǒng)在用戶界面以十六進制的形式實時地顯示這些數(shù)據(jù)包的完整信息,并解析其幀長、源?MAC地址、目的?MAC地址、以太網(wǎng)類型、源?IP地址、目的IP地址、IP協(xié)議、源端口號、目的端口號等內(nèi)容并顯示在界面上。如果是?HTTP協(xié)議的數(shù)據(jù)包,則顯示其明文。同時,系統(tǒng)能夠把每次捕獲的數(shù)據(jù)包保存在本地文件中,記錄日志信息。對于數(shù)據(jù)包的

8、捕獲,如果在一個繁忙的網(wǎng)絡(luò)上進行,而不設(shè)置任何過濾,則得到的數(shù)據(jù)2?http://www.paper.edu.cn?包是非常多的。如果應(yīng)用程序不進行必要的性能優(yōu)化,那么將會丟失大量的數(shù)據(jù)包。因此對捕包性能的優(yōu)化必不可少,本系統(tǒng)采用多線程來解決此問題:一個線程負責(zé)捕獲數(shù)據(jù)包,一個線程負者數(shù)據(jù)處理,一個線程

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。