ethereal協(xié)議分析系統(tǒng)介紹

ethereal協(xié)議分析系統(tǒng)介紹

ID:1454029

大小:1.66 MB

頁數(shù):29頁

時(shí)間:2017-11-11

ethereal協(xié)議分析系統(tǒng)介紹_第1頁
ethereal協(xié)議分析系統(tǒng)介紹_第2頁
ethereal協(xié)議分析系統(tǒng)介紹_第3頁
ethereal協(xié)議分析系統(tǒng)介紹_第4頁
ethereal協(xié)議分析系統(tǒng)介紹_第5頁
資源描述:

《ethereal協(xié)議分析系統(tǒng)介紹》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。

1、Ethereal協(xié)議分析系統(tǒng)介紹???Ethereal是一個(gè)開放源碼的網(wǎng)絡(luò)分析系統(tǒng),也是是目前最好的開放源碼的網(wǎng)絡(luò)協(xié)議分析器,支持Linux和windows平臺(tái)。Ethereal起初由GeraldCombs開發(fā),隨后由一個(gè)松散的Etheral團(tuán)隊(duì)組織進(jìn)行維護(hù)開發(fā)。它目前所提供的強(qiáng)大的協(xié)議分析功能完全可以媲美商業(yè)的網(wǎng)絡(luò)分析系統(tǒng),自從1998年發(fā)布最早的0.2版本至今,大量的志愿者為Ethereal添加新的協(xié)議解析器,如今Ethereal已經(jīng)支持五百多種協(xié)議解析。很難想象如此多的人開發(fā)的代碼可以很好的融入系統(tǒng)中;并且在系統(tǒng)中加入一個(gè)新的協(xié)議解析器很簡單,一個(gè)不了解系統(tǒng)的結(jié)構(gòu)的新手也可以根據(jù)

2、留出的接口進(jìn)行自己的協(xié)議開發(fā)。這都?xì)w功于Ehereal良好的設(shè)計(jì)結(jié)構(gòu)。事實(shí)上由于網(wǎng)絡(luò)上各種協(xié)議種類繁多,各種新的協(xié)議層出不窮。一個(gè)好的協(xié)議分析器必需有很好的可擴(kuò)展性和結(jié)構(gòu)。這樣才能適應(yīng)網(wǎng)絡(luò)發(fā)展的需要不斷加入新的協(xié)議解析器。1Ethereal的捕包平臺(tái)  網(wǎng)絡(luò)分析系統(tǒng)首先依賴于一套捕捉網(wǎng)絡(luò)數(shù)據(jù)包的函數(shù)庫。這套函數(shù)庫工作在在網(wǎng)絡(luò)分析系統(tǒng)模塊的最底層。作用是從網(wǎng)卡取得數(shù)據(jù)包或者根據(jù)過濾規(guī)則取出數(shù)據(jù)包的子集,再轉(zhuǎn)交給上層分析模塊。從協(xié)議上說,這套函數(shù)庫將一個(gè)數(shù)據(jù)包從鏈路層接收,至少將其還原至傳輸層以上,以供上層分析。在Linux系統(tǒng)中,1992年LawrenceBerkeleyLab的Stev

3、enMcCanne和VanJacobson提出了包過濾器的一種的實(shí)現(xiàn),BPF(BSDPacketFilter)。Libpcap是一個(gè)基于BPF的開放源碼的捕包函數(shù)庫?,F(xiàn)有的大部分Linux捕包系統(tǒng)都是基于這套函數(shù)庫或者是在它基礎(chǔ)上做一些針對(duì)性的改進(jìn)  在window系統(tǒng)中,意大利人FulvioRisso和LorisDegioanni提出并實(shí)現(xiàn)了Winpcap函數(shù)庫,作者稱之為NPF。由于NPF的主要思想就是來源于BPF,它的設(shè)計(jì)目標(biāo)就是為windows  系統(tǒng)提供一個(gè)功能強(qiáng)大的開發(fā)式數(shù)據(jù)包捕獲平臺(tái),希望在Linux系統(tǒng)中的網(wǎng)絡(luò)分析工具經(jīng)過簡單編譯以后也可以移植到windows中,因此這

4、兩種捕包架構(gòu)是非?,F(xiàn)實(shí)的。就實(shí)現(xiàn)來說提供的函數(shù)調(diào)用接口也是一致的?! thereal網(wǎng)絡(luò)分析系統(tǒng)也需要一個(gè)底層的抓包平臺(tái),在Linux中是采用Libpcap函數(shù)庫抓包,在windows系統(tǒng)中采用winpcap函數(shù)庫抓包2層次化的數(shù)據(jù)包協(xié)議分析方法  取得捕包函數(shù)捕回的數(shù)據(jù)包后就需要進(jìn)行協(xié)議分析和協(xié)議還原工作了。由于OSI的7層協(xié)議模型,協(xié)議數(shù)據(jù)是從上到下封裝后發(fā)送的。對(duì)于協(xié)議分析需要從下至上進(jìn)行。首先對(duì)網(wǎng)絡(luò)層的協(xié)議識(shí)別后進(jìn)行組包還原然后脫去網(wǎng)絡(luò)層協(xié)議頭。將里面的數(shù)據(jù)交給傳輸層分析,這樣一直進(jìn)行下去直到應(yīng)用層??Ip??

5、?Tcpudp?

6、?HTTP?TFTP  由于網(wǎng)絡(luò)協(xié)議種類很

7、多,就Ethereal所識(shí)別的500多種協(xié)議來說,為了使協(xié)議和協(xié)議間層次關(guān)系明顯。從而對(duì)數(shù)據(jù)流里的各個(gè)層次的協(xié)議能夠逐層處理。Ethereal系統(tǒng)采用了協(xié)議樹的方式。上圖就是一個(gè)簡單的協(xié)議樹。如果協(xié)議A的所有數(shù)據(jù)都是封裝在協(xié)議B里的,那么這個(gè)協(xié)議A就是協(xié)議B是另外一個(gè)協(xié)議的兒子節(jié)點(diǎn)。我們將最低層的無結(jié)構(gòu)數(shù)據(jù)流作為根接點(diǎn)。那么具有相同父節(jié)點(diǎn)的協(xié)議成為兄弟節(jié)點(diǎn)。那么這些擁有同樣父協(xié)議兄弟節(jié)點(diǎn)協(xié)議如何互相區(qū)分了?Ethereal系統(tǒng)采用協(xié)議的特征字來識(shí)別。每個(gè)協(xié)議會(huì)注冊(cè)自己的特征字。這些特征字給自己的子節(jié)點(diǎn)協(xié)議提供可以互相區(qū)分開來的標(biāo)識(shí)。比如tcp協(xié)議的port字段注冊(cè)后。Tcp.port=

8、21就可以認(rèn)為是ftp協(xié)議,特征字可以是協(xié)議規(guī)范定義的任何一個(gè)字段。比如ip協(xié)議就可以定義proto字段為一個(gè)特征字?! ≡贓thereal中注冊(cè)一個(gè)協(xié)議解析器首先要指出它的父協(xié)議是什么。另外還要指出自己區(qū)別于父節(jié)點(diǎn)下的兄弟接點(diǎn)協(xié)議的特征。比如ftp協(xié)議。在Ethereal中他的父接點(diǎn)是tcp協(xié)議,它的特征就是tcp協(xié)議的port字段為21?! ∵@樣當(dāng)一個(gè)端口為21的tcp數(shù)據(jù)流來到時(shí)。首先由tcp協(xié)議注冊(cè)的解析模塊處理,處理完之后通過查找協(xié)議樹找到自己協(xié)議下面的子協(xié)議,判斷應(yīng)該由那個(gè)子協(xié)議來執(zhí)行,找到正確的子協(xié)議后,就轉(zhuǎn)交給ftp注冊(cè)的解析模塊處理。這樣由根節(jié)點(diǎn)開始一層層解析下去?!?/p>

9、 由于采用了協(xié)議樹加特征字的設(shè)計(jì),這個(gè)系統(tǒng)在協(xié)議解析上由了很強(qiáng)的擴(kuò)展性,增加一個(gè)協(xié)議解析器只需要將解析函數(shù)掛到協(xié)議樹的相應(yīng)節(jié)點(diǎn)上即可。?3基于插件技術(shù)的協(xié)議分析器?  所謂插件技術(shù),就是在程序的設(shè)計(jì)開發(fā)過程中,把整個(gè)應(yīng)用程序分成宿主程序和插件兩個(gè)部分,宿主程序與插件能夠相互通信,并且,在宿主程序不變的情況下,可以通過增減插件或修改插件來調(diào)整應(yīng)用程序的功能。運(yùn)用插件技術(shù)可以開發(fā)出伸縮性良好、便于維護(hù)的應(yīng)用程序。它著名的應(yīng)用實(shí)例有:媒體播放器win

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

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

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