網(wǎng)絡(luò)數(shù)據(jù)包的分析與實(shí)現(xiàn)_第1頁
網(wǎng)絡(luò)數(shù)據(jù)包的分析與實(shí)現(xiàn)_第2頁
網(wǎng)絡(luò)數(shù)據(jù)包的分析與實(shí)現(xiàn)_第3頁
網(wǎng)絡(luò)數(shù)據(jù)包的分析與實(shí)現(xiàn)_第4頁
網(wǎng)絡(luò)數(shù)據(jù)包的分析與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 獨(dú)創(chuàng)性聲明本人聲明所呈交的畢業(yè)論文是本人在導(dǎo)師指導(dǎo)下進(jìn)行的理論學(xué)習(xí)、實(shí)習(xí)實(shí)踐以及研究所取得的成果,除了文中特別加以標(biāo)注和致謝之處外,論文中不包含其他人已經(jīng)發(fā)表或撰寫過的研究成果,也不包含獲得 青海民族大學(xué) 或其他教育機(jī)構(gòu)的學(xué)位或證書而使用過的材料。與我一起探討、工作的同學(xué)對本論文所做的任何貢獻(xiàn)均已在論文中作了明確的說明并表示了謝意。畢業(yè)論文作者簽名: 簽字日期: 年 月 日畢業(yè)論文版權(quán)使用授權(quán)書本畢業(yè)論文作者完全了解 青海民族大學(xué) 有關(guān)保留、使用畢業(yè)論文的規(guī)定。特授權(quán)青海民族大學(xué)可以將畢業(yè)論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,并采用影印、縮印或掃描等復(fù)制手段保存、匯編以供查閱和借閱。同

2、意學(xué)校向國家有關(guān)部門或機(jī)構(gòu)送交論文的復(fù)印件和磁盤。論文作者簽名: 簽字日期: 年 月 日 指導(dǎo)教師簽名: 簽字日期: 年 月 日 摘 要隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,社會(huì)進(jìn)入了一個(gè)信息爆炸的時(shí)代,世界也由于網(wǎng)絡(luò)而變小,人們通過各種技術(shù)和工具使交流突破了空間的限制。在網(wǎng)絡(luò)技術(shù)發(fā)展與普及的同時(shí),網(wǎng)絡(luò)安全問題引起了人們的廣泛關(guān)注。因此,研究并開發(fā)出一種能夠有效地實(shí)時(shí)捕獲網(wǎng)絡(luò)信息的系統(tǒng)具有極其重要的意義?;谶@一情況,本論文針對網(wǎng)絡(luò)數(shù)據(jù)的捕獲與數(shù)據(jù)包信息分析等問題進(jìn)行了深入的探討和研究。本論文逐一介紹了信息捕獲中的相關(guān)技術(shù)及需求分析,在系統(tǒng)設(shè)計(jì)中對數(shù)據(jù)包捕獲模塊、解碼數(shù)據(jù)包模塊和數(shù)據(jù)庫信息模塊的實(shí)現(xiàn)進(jìn)行了詳

3、細(xì)講述。通過運(yùn)用sniffer開發(fā)包實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)包的捕獲,利用tcp/ip 協(xié)議的封裝理論和自下而上的分析實(shí)現(xiàn)了數(shù)據(jù)包信息的分析,并且將分析出來的信息存入數(shù)據(jù)庫。另外,還能實(shí)現(xiàn)一些功能,如對指定的ip地址進(jìn)行數(shù)據(jù)包的捕獲,對捕獲結(jié)果進(jìn)行顯示等。關(guān)鍵詞:sniffer;數(shù)據(jù)捕獲;信息分析;局域網(wǎng)abstractas development of the network and technology, the society comes into a age of information explosion. due to the network, the world has become sma

4、ller, and people use all kinds of technologies and tools to break through the limitation of communication. the network security has been widely concerned followed by the development and universal of the network technology. therefore, it is great significance that an effective real-time interception

5、network information system is studied and developed. base on this situation, this thesis in-depth studies to capture the network data and so on. besides, it introduces relative technology and the needs information capture. the realization of the data capture module, data packet decoded module and da

6、tabase information module is displayed for detail in the systems design. the network data packet is captured through sniffer, some functions has been realized, such as network data packet capture, data packets of information analysis by using tcp / ip protocol encapsulation theory and bottom-up, and

7、 will analyze the information stored in the database. simultaneously, this software would also increases some functions, such as data packet capture by the ip address, make the results and statistics,display the results of data packet capture and so on.key words: sniffer; data capture; information a

8、nalysis ; lan目 錄1引言111課題意義和背景112課題研究技術(shù)和方法213 sniffer簡介32研究的目的及內(nèi)容521研究的目的及內(nèi)容522課題研究的相關(guān)技術(shù)63需求931功能需求932性能需求94 網(wǎng)絡(luò)嗅探器原理114.1系統(tǒng)功能概述1142功能模塊設(shè)計(jì)14421數(shù)據(jù)包捕獲模塊設(shè)計(jì)16422數(shù)據(jù)包解析存儲(chǔ)模塊17423數(shù)據(jù)包信息分析模塊設(shè)計(jì)17424數(shù)據(jù)包信息顯示模塊設(shè)計(jì)185網(wǎng)絡(luò)嗅探器的設(shè)計(jì)195.1測試環(huán)境195.2測試結(jié)果216、總結(jié)24參考文獻(xiàn):25致謝261引言隨著計(jì)算機(jī)技術(shù)的發(fā)展,網(wǎng)絡(luò)已經(jīng)日益成為生活中不可或缺的通訊工具,但是隨之而來的非法入侵也是一直威脅著計(jì)算機(jī)

9、網(wǎng)絡(luò)安全,由于在局域網(wǎng)采用廣播的方式,因此,在某個(gè)廣播域中可以監(jiān)聽到所有數(shù)據(jù)包,而黑客也能通過對這些數(shù)據(jù)包的分析來獲取局域網(wǎng)中的重要信息。另一方面,我們對黑客入侵活動(dòng)和其他網(wǎng)絡(luò)犯罪調(diào)查、取證也是通過網(wǎng)絡(luò)監(jiān)聽技術(shù)來獲取相關(guān)信息。所以,掌握以太網(wǎng)的監(jiān)聽技術(shù)原理、實(shí)現(xiàn)方法和防范措施顯得尤為重要。11課題意義和背景本設(shè)計(jì)利用sniffer來捕獲數(shù)據(jù)包、分析數(shù)據(jù)包,實(shí)現(xiàn)網(wǎng)絡(luò)嗅探功能。sniffer是windows環(huán)境下的鏈接層網(wǎng)絡(luò)訪問的工業(yè)標(biāo)準(zhǔn)工具,目前被廣泛使用。sniffer可以使用應(yīng)用程序繞過操作系統(tǒng)的協(xié)議棧去捕獲和傳輸網(wǎng)絡(luò)數(shù)據(jù)包。通過對sniffer的學(xué)習(xí),可以深入的理解與掌握網(wǎng)絡(luò)數(shù)據(jù)的組成,傳

10、輸與分析。 嗅探器,可以理解為一個(gè)安裝在計(jì)算機(jī)上的竊聽設(shè)備它可以用來竊聽計(jì)算機(jī)在網(wǎng)絡(luò)上所產(chǎn)生的眾多的信息。簡單一點(diǎn)解釋:一部電話的竊聽裝置, 可以用來竊聽雙方通話的內(nèi)容,而計(jì)算機(jī)網(wǎng)絡(luò)嗅探器則可以竊聽計(jì)算機(jī)程序在網(wǎng)絡(luò)上發(fā)送和接收到的數(shù)據(jù)。計(jì)算機(jī)直接所傳送的數(shù)據(jù),事實(shí)上是大量的二進(jìn)制數(shù)據(jù)。因此, 一個(gè)網(wǎng)絡(luò)竊聽程序必須也使用特定的網(wǎng)絡(luò)協(xié)議來分解嗅探到的數(shù)據(jù), 嗅探器也就必須能夠識(shí)別出那個(gè)協(xié)議對應(yīng)于這個(gè)數(shù)據(jù)片斷,只有這樣才能夠進(jìn)行正確的解碼嗅探器是網(wǎng)絡(luò)的抓包工具,可以對網(wǎng)絡(luò)中大量數(shù)據(jù)抓取,從而方便使用者對網(wǎng)絡(luò)中用戶的一些信息進(jìn)行分析,所以,通常被黑客運(yùn)用于網(wǎng)絡(luò)攻擊。我們?nèi)绻材苷莆站W(wǎng)絡(luò)嗅探器的原理和設(shè)

11、計(jì),可以將它運(yùn)用與網(wǎng)絡(luò)故障檢測、網(wǎng)絡(luò)狀況的監(jiān)視,還可以加強(qiáng)企業(yè)信息安全防護(hù)。12課題研究技術(shù)和方法網(wǎng)絡(luò)數(shù)據(jù)捕獲技術(shù)是獲取信息的關(guān)鍵技術(shù),它通過監(jiān)聽技術(shù),過濾技術(shù)獲取原始數(shù)據(jù),根據(jù)tcp/ip分層理論進(jìn)行層層拆解,提取相關(guān)協(xié)議中的信息。本畢業(yè)設(shè)計(jì)主要通過使用sniffer開發(fā)包,在java環(huán)境下編寫出了一款簡單的軟件對數(shù)據(jù)包信息按tcp協(xié)議類型、udp協(xié)議類型、arp等分類捕獲,捕獲出所需要的敏感信息,并且將捕獲出來的信息寫入數(shù)據(jù)庫。網(wǎng)絡(luò)嗅探器并不會(huì)告訴你問題究竟是什么,而只會(huì)告訴你究竟發(fā)生了什么。對網(wǎng)絡(luò)嗅探器的研究我加深了對通信協(xié)議的理解,網(wǎng)絡(luò)數(shù)據(jù)結(jié)構(gòu)的理解。對網(wǎng)絡(luò)嗅探器的深入研究更重要的是可

12、以讓我們的互聯(lián)網(wǎng)世界更安全、信息更健康。計(jì)算機(jī)的嗅探器比起電話竊聽器,有他獨(dú)特的優(yōu)勢: 很多的計(jì)算機(jī)網(wǎng)絡(luò)采用的是“共享媒體。也就是說,你不必中斷他的通訊,并且配置特別的線路,再安裝嗅探器,你幾乎可以在任何連接著的網(wǎng)絡(luò)上直接竊聽到你同一掩碼范圍內(nèi)的計(jì)算機(jī)網(wǎng)絡(luò)數(shù)據(jù)。我們稱這種竊聽方式為“基于混雜模式的嗅探” 。 盡管如此,這種“共享” 的技術(shù)發(fā)展的很快,慢慢轉(zhuǎn)向“交換” 技術(shù),這種技術(shù)會(huì)長期內(nèi)會(huì)繼續(xù)使用下去, 它可以實(shí)現(xiàn)有目的選擇的收發(fā)數(shù)據(jù)。13 sniffer簡介當(dāng)信息以明文的形式在網(wǎng)絡(luò)上傳輸時(shí),便可以使用網(wǎng)絡(luò)監(jiān)聽的方式來進(jìn)行攻擊。將網(wǎng)絡(luò)接口設(shè)置在監(jiān)聽模式,便可以將網(wǎng)上傳輸?shù)脑丛床粩嗟男畔⒔孬@。

13、但實(shí)際上sniffer技術(shù)被廣泛地應(yīng)用于網(wǎng)絡(luò)故障診斷、協(xié)議分析、應(yīng)用性能分析和網(wǎng)絡(luò)安全保障等各個(gè)領(lǐng)域。sniffer程序是一種利用以太網(wǎng)的特性把網(wǎng)絡(luò)適配卡(nic,一般為以太網(wǎng)卡)置為雜亂(promiscuous)模式狀態(tài)的工具,一旦網(wǎng)卡設(shè)置為這種模式,它就能接收傳輸在網(wǎng)絡(luò)上的每一個(gè)信息包。普通的情況下,網(wǎng)卡只接收和自己的地址有關(guān)的信息包,即傳輸?shù)奖镜刂鳈C(jī)的信息包。要使sniffer能接收并處理這種方式的信息,系統(tǒng)需要支持bpf,linux下需要支持socket一packet。但一般情況下,網(wǎng)絡(luò)硬件和tcp/ip堆棧不支持接收或者發(fā)送與本地計(jì)算機(jī)無關(guān)的數(shù)據(jù)包,所以,為了繞過標(biāo)準(zhǔn)的tcp/ip堆

14、棧,網(wǎng)卡就必須設(shè)置為我們剛開始講的混雜模式。一般情況下,要激活這種方式,內(nèi)核必須支持這種偽設(shè)備bp filter,而且需要root權(quán)限來運(yùn)行這種程序,所以sniffer需要root身份安裝,如果只是以本地用戶的身份進(jìn)入了系統(tǒng),那么不可能嗅探到root的密碼,因此不能運(yùn)行sniffer。sniffer分為軟件和硬件兩種,軟件的sniffer有 sniffer pro、network monitor、packet bone等,其優(yōu)點(diǎn)是易于安裝部署,易于學(xué)習(xí)使用,同時(shí)也易于交流;缺點(diǎn)是無法抓取網(wǎng)絡(luò)上所有的傳輸,某些情況下也就無法真正了解網(wǎng)絡(luò)的故障和運(yùn)行情況。硬件的sniffer通常稱為協(xié)議分析儀,一

15、般都是商業(yè)性的,價(jià)格也比較昂貴,但會(huì)具備支持各類擴(kuò)展的鏈路捕獲能力以及高性能的數(shù)據(jù)實(shí)時(shí)捕獲分析的功能?;谝蕴W(wǎng)絡(luò)嗅探的sniffer只能抓取一個(gè)物理網(wǎng)段內(nèi)的包,就是說,監(jiān)聽的目標(biāo)中間不能有路由或其他屏蔽廣播包的設(shè)備,這一點(diǎn)很重要。所以,對一般撥號(hào)上網(wǎng)的用戶來說,是不可能利用sniffer來竊聽到其他人的通信內(nèi)容的。sniffer與其他網(wǎng)絡(luò)協(xié)議分析儀最大的差別在于它的人工智能專家系統(tǒng)。簡單地說,sniffer能自動(dòng)實(shí)時(shí)監(jiān)視網(wǎng)絡(luò),捕捉數(shù)據(jù),識(shí)別網(wǎng)絡(luò)配置,自動(dòng)發(fā)現(xiàn)網(wǎng)絡(luò)故障并進(jìn)行告警,它能指出: 網(wǎng)絡(luò)故障發(fā)生的位置,以及出現(xiàn)在osi第幾層。 網(wǎng)絡(luò)故障的性質(zhì),產(chǎn)生故障的可能的原因以及為解決故障建議采取

16、的行動(dòng)。 sniffer 還提供了專家配制功能,用戶可以自已設(shè)定專家系統(tǒng)判斷故障發(fā)生的觸發(fā)條件。sniffer可以在全部七層osi協(xié)議上進(jìn)行解碼,目前沒有任何一個(gè)系統(tǒng)可以做到對協(xié)議有如此透徹的分析;它采用分層方式,從最低層開始,一直到第七層,甚至對oracle數(shù)據(jù)庫、sybase數(shù)據(jù)庫都可以進(jìn)行協(xié)議分析;每一層用不同的顏色加以區(qū)別。sniffer對每一層都提供了summary、detail、hex等幾種解碼窗口。在同一時(shí)間,最多可以打開六個(gè)觀察窗口。sniffer還可以進(jìn)行強(qiáng)制解碼功能,如果網(wǎng)絡(luò)上運(yùn)行的是非標(biāo)準(zhǔn)協(xié)議,可以使用一個(gè)現(xiàn)有標(biāo)準(zhǔn)協(xié)議樣板去嘗試解釋捕獲的數(shù)據(jù)。 sniffer提供了在線實(shí)

17、時(shí)解碼分析和在線捕捉,將捕捉的數(shù)據(jù)存盤后進(jìn)行解碼分析二種功能。2研究的目的及內(nèi)容21研究的目的及內(nèi)容綜合所學(xué)知識(shí),使知識(shí)系統(tǒng)化與實(shí)用化。研究網(wǎng)絡(luò)抓包功能,可以對網(wǎng)絡(luò)中大量數(shù)據(jù)包抓取,從而方便使用者對網(wǎng)絡(luò)中用戶的一些信息進(jìn)行分析,掌握這些原理,我們可以運(yùn)用網(wǎng)絡(luò)抓包工具來進(jìn)行網(wǎng)絡(luò)故障檢測、網(wǎng)絡(luò)狀況監(jiān)聽,加強(qiáng)信息的安全防護(hù),預(yù)防黑客的攻擊等。本系統(tǒng)需要實(shí)現(xiàn)的共更能模塊有數(shù)據(jù)包捕獲模塊、數(shù)據(jù)包信息顯示模塊、數(shù)據(jù)包解析及存儲(chǔ)模塊、數(shù)據(jù)包分析模塊。當(dāng)一個(gè)黑客成功地攻陷了一臺(tái)主機(jī),并拿到了root權(quán)限,而且還想利用這臺(tái)主機(jī)去攻擊同一(物理)網(wǎng)段上的其他主機(jī)時(shí),他就會(huì)在這臺(tái)主機(jī)上安裝嗅探軟件,對以太網(wǎng)設(shè)備上傳

18、送的數(shù)據(jù)包進(jìn)行偵聽,從而發(fā)現(xiàn)感興趣的包。如果發(fā)現(xiàn)符合條件的包,就把它存到一個(gè)log文件中去。通常設(shè)置的這些條件是包含字“username”或“password”的包,這樣的包里面通常有黑客感興趣的密碼之類的東西。一旦黑客截獲得了某臺(tái)主機(jī)的密碼,他就會(huì)立刻進(jìn)入這臺(tái)主機(jī)。如果嗅探器運(yùn)行在路由器上或有路由功能的主機(jī)上,就能對大量的數(shù)據(jù)進(jìn)行監(jiān)控,因?yàn)樗羞M(jìn)出網(wǎng)絡(luò)的數(shù)據(jù)包都要經(jīng)過路由器。嗅探器屬于第m層次的攻擊。就是說,只有在攻擊者已經(jīng)進(jìn)入了目標(biāo)系統(tǒng)的情況下,才能使用嗅探這種攻擊手段,以便得到更多的信息。嗅探器除了能得到口令或用戶名外,還能得到更多的其他信息,比如一個(gè)重要的信息、在網(wǎng)上傳送的金融信息等等

19、。嗅探器幾乎能得到任何在以太網(wǎng)上傳送的數(shù)據(jù)包。因此,設(shè)計(jì)本系統(tǒng)的就是為了達(dá)到基本的維護(hù)網(wǎng)絡(luò)安全的作用,對網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)進(jìn)行捕獲,然后從中得到所有的網(wǎng)絡(luò)數(shù)據(jù)包,并對其進(jìn)行簡單的分析操作。在網(wǎng)絡(luò)入侵取證系統(tǒng)中,對網(wǎng)絡(luò)上傳送的數(shù)據(jù)包進(jìn)行有效的監(jiān)聽即捕獲包是目前取證的關(guān)鍵技術(shù),只有進(jìn)行高效的數(shù)據(jù)包捕獲,網(wǎng)絡(luò)管理員才能對所捕獲的數(shù)據(jù)進(jìn)行一系列的分析,從而進(jìn)行可靠的網(wǎng)絡(luò)安全管理。網(wǎng)絡(luò)的安全性和高可用性是建立在有效的網(wǎng)絡(luò)管理基礎(chǔ)之上的,網(wǎng)絡(luò)管理包括配置管理、故障管理、性能管理、安全管理和計(jì)費(fèi)管理五大部分。對于企業(yè)計(jì)算機(jī)網(wǎng)絡(luò)來說,網(wǎng)絡(luò)故障管理主要側(cè)重于實(shí)時(shí)的監(jiān)控,而網(wǎng)絡(luò)性能管理更看中歷史分析。22課題研究的

20、相關(guān)技術(shù)互聯(lián)網(wǎng)技術(shù)互聯(lián)網(wǎng)技術(shù)不僅僅是物理上的連接,還包括邏輯上的連接,互聯(lián)網(wǎng)使多個(gè)網(wǎng)絡(luò)形成一個(gè)有機(jī)整體,實(shí)現(xiàn)跨網(wǎng)絡(luò)的互操作。網(wǎng)絡(luò)互聯(lián)的根本問題是解決網(wǎng)絡(luò)技術(shù)和應(yīng)用所帶來的網(wǎng)絡(luò)異構(gòu)性問題。網(wǎng)絡(luò)互連技術(shù)必須保證以下3點(diǎn):使不同硬件結(jié)構(gòu)計(jì)算機(jī)能相互通信適用于多種不同的操作系統(tǒng)能使多種分組交換網(wǎng)絡(luò)硬件網(wǎng)絡(luò)的功能主要由各層的協(xié)議來完成,tcp/ip協(xié)議時(shí)當(dāng)前因特網(wǎng)協(xié)議族的總稱,tcp/ip協(xié)議族龐大,成為重要的協(xié)議ip地址ip地址是互聯(lián)網(wǎng)中重要部分,它能將不同的物理網(wǎng)絡(luò)地址統(tǒng)一到具有全球的ip地址。目前ip地址還是用ipv4版本,分為5類,各類都有自己的范圍。但是嚴(yán)格按照分類來分配ip地址會(huì)浪費(fèi)很大的地

21、址空間,因此用到了無類地址劃分,用子網(wǎng)掩碼來區(qū)別網(wǎng)絡(luò)號(hào)和主機(jī)號(hào)。因特網(wǎng)的ip協(xié)議提供了整個(gè)因特網(wǎng)通用的地址格式,并在統(tǒng)一管理下進(jìn)行ip地址分配,確保一個(gè)地址對應(yīng)一臺(tái)主機(jī)或路由器,這樣對上層而言物理地址的差異性就被屏蔽了,因此當(dāng)一臺(tái)主機(jī)從一個(gè)網(wǎng)絡(luò)移動(dòng)到另一個(gè)網(wǎng)絡(luò)的時(shí)候需要改變這臺(tái)主機(jī)的ip地址。以下是ip數(shù)據(jù)報(bào)格式示意圖:圖2.1上圖個(gè)字段含義如下: 版本:當(dāng)前ip協(xié)議的版本號(hào),本論文采用的版本號(hào)為4;首部長度:以32bit為單位的包頭長度;服務(wù)類型:規(guī)定對本數(shù)據(jù)報(bào)的處理方式,比如優(yōu)先權(quán)等;總長:以byte為單位的整個(gè)ip數(shù)據(jù)報(bào)長度;標(biāo)識(shí):信源主機(jī)賦予每個(gè)ip數(shù)據(jù)報(bào)的唯一標(biāo)識(shí)符號(hào),用于控制分片及

22、其重組;標(biāo)志和片偏移:同樣用于控制分片及其重組;生存時(shí)間:設(shè)置本數(shù)據(jù)報(bào)的最大生存時(shí)間,以秒為單位;協(xié)議:表示創(chuàng)建本ip數(shù)據(jù)報(bào)數(shù)據(jù)區(qū)數(shù)據(jù)的高層協(xié)議的類型,如tcp,udp等;頭標(biāo)校驗(yàn)和:用于保證頭標(biāo)數(shù)據(jù)的完整性;源ip地址和目的ip地址:分別指發(fā)送本數(shù)據(jù)報(bào)的主機(jī)ip地址和接受本數(shù)據(jù)報(bào)的主機(jī)的ip地址;選項(xiàng):用于控制和測試,是ip數(shù)據(jù)報(bào)中可選的部分,包含“源路徑”、“路徑記錄”、“時(shí)間戳”等幾種類型。以下是tcp/ip 網(wǎng)絡(luò)體系結(jié)構(gòu)與上述各協(xié)議之間的關(guān)系模型。 圖2.2應(yīng)用層的大多數(shù)應(yīng)用程序通過tcp、udp來訪問網(wǎng)絡(luò)層,或者通過icmp來使用網(wǎng)絡(luò)層,如ping、trace route等也可以使用

23、ip直接訪問網(wǎng)絡(luò)層。傳輸層中的tcp、udp為應(yīng)用層提供可靠的或不可靠網(wǎng)絡(luò)傳輸?shù)木W(wǎng)絡(luò)傳輸服務(wù)。網(wǎng)絡(luò)層的icmp是ip協(xié)議的附屬協(xié)議,ip協(xié)議用它與路由器之間交換錯(cuò)誤報(bào)文或其它控制信息。網(wǎng)絡(luò)接口層的arp、rarp是以太網(wǎng)和令牌環(huán)使用的特殊協(xié)議,用來轉(zhuǎn)換ip層和網(wǎng)絡(luò)接口層使用的地址。3。需求31功能需求本軟件的設(shè)計(jì)就是為了達(dá)到基本的維護(hù)網(wǎng)絡(luò)安全的作用,對網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)進(jìn)行捕獲,然后從中得到所有的網(wǎng)絡(luò)數(shù)據(jù)包,并對其進(jìn)行簡單的分析操作。在網(wǎng)絡(luò)入侵取證系統(tǒng)中,對網(wǎng)絡(luò)上傳送的數(shù)據(jù)包進(jìn)行有效的監(jiān)聽即捕獲包是目前取證的關(guān)鍵技術(shù),只有進(jìn)行高效的數(shù)據(jù)包捕獲,網(wǎng)絡(luò)管理員才能對所捕獲的數(shù)據(jù)進(jìn)行一系列的分析,從而進(jìn)

24、行可靠的網(wǎng)絡(luò)安全管理(1)對網(wǎng)絡(luò)中的數(shù)據(jù)包能及時(shí)抓捕。(2)對抓捕到的數(shù)據(jù)包進(jìn)行分析,能辨別出包的類型、大小、包的源地址、協(xié)議類型等。(3)向用戶顯示分析的結(jié)果,并對數(shù)據(jù)包進(jìn)行簡單解釋。(4)用戶可操作性,用戶能根據(jù)自己的設(shè)置進(jìn)行控制進(jìn)行抓包、何時(shí)抓包、抓何種類型的包、何時(shí)停止等。(5)可對比性,可以把抓到的數(shù)據(jù)包和數(shù)據(jù)庫內(nèi)的特征進(jìn)行對比,以便能分析斷數(shù)據(jù)包。有于水平有限,不可能實(shí)現(xiàn)像sniffer或者影音神探那樣復(fù)雜的設(shè)置和分析,所以我們只對抓取到的本機(jī)在網(wǎng)絡(luò)中的通信數(shù)據(jù)(如協(xié)議類型,源、目的地址和端口、數(shù)據(jù)包的大小等)加以分析,實(shí)現(xiàn)一個(gè)簡單的網(wǎng)絡(luò)嗅探器。一個(gè)窗體顯示主頁面,另一個(gè)頁面顯示詳

25、細(xì)的包信息。而像sniffer的復(fù)雜功能也不能全部實(shí)現(xiàn),而是實(shí)現(xiàn)了部分功能和簡單分析,本系統(tǒng)未完善之處還有待解決。32性能需求由于本設(shè)計(jì)是安裝在個(gè)人電腦上,所以要求用戶界面簡潔,友好,方便使用和操作。網(wǎng)絡(luò)上數(shù)據(jù)包的捕獲是入侵檢測系統(tǒng)的基礎(chǔ),關(guān)鍵是要保證高速的抓包和低的丟包率。一方面,網(wǎng)絡(luò)檢測部分的數(shù)據(jù)源是網(wǎng)絡(luò)上的數(shù)據(jù)包,需要經(jīng)過捕獲后方可以提交給分析系統(tǒng);另一方面,捕獲數(shù)據(jù)包效率的高低直接影響著網(wǎng)絡(luò)探測部分的性能的好壞,如果發(fā)生丟包現(xiàn)象,則有可能丟掉的包就是攻擊包。在保證高速的抓包和低的丟包率的同時(shí),要還要求程序能有較強(qiáng)的穩(wěn)定性。一款好的信息過濾軟件,都是將在一個(gè)長時(shí)間工作的環(huán)境中運(yùn)行。如果不

26、能保證較強(qiáng)的穩(wěn)定性的話,那么軟件對信息過濾的效率和功能有很大的局限性,對數(shù)據(jù)信息過濾就是失敗的。那么這款軟件就不會(huì)具備同其他同類似軟件的競爭力,更不會(huì)有市場,那么它就注定成為一款失敗的軟件。假如,當(dāng)用戶使用這款軟件時(shí),軟件占用了太多的系統(tǒng)資源而導(dǎo)致用戶對電腦的其他操作都很難進(jìn)行,那么,沒有人會(huì)用這款軟件。所以,該軟件還應(yīng)該具備一種特點(diǎn)就是:低的系統(tǒng)資源占用率。4網(wǎng)絡(luò)嗅探器原理網(wǎng)絡(luò)數(shù)據(jù)捕獲技術(shù)是獲取信息的關(guān)鍵技術(shù),它通過監(jiān)聽技術(shù),過濾技術(shù)獲取原始數(shù)據(jù),根據(jù)tcp/ip分層理論進(jìn)行層層拆解,提取相關(guān)協(xié)議中的信息。本畢業(yè)設(shè)計(jì)主要通過使用sniffer開發(fā)包,在java環(huán)境下編寫出了一款簡單的軟件對數(shù)

27、據(jù)包信息按tcp協(xié)議類型、udp協(xié)議類型、icmp、igmp、arp進(jìn)行分類捕獲,捕獲出所需要的敏感信息,并且將捕獲出來的信息寫入數(shù)據(jù)庫。4.1系統(tǒng)功能概述先描述一下信息在網(wǎng)絡(luò)上的傳輸、信息的特征類型和任何被偷聽的。網(wǎng)絡(luò)的一個(gè)特點(diǎn)就是數(shù)據(jù)總是在流動(dòng)中,從一處到另外一處,而互聯(lián)網(wǎng)是由錯(cuò)綜復(fù)雜的各種網(wǎng)絡(luò)交匯而成的,也就是說:當(dāng)你的數(shù)據(jù)從網(wǎng)絡(luò)的一臺(tái)電腦到另一臺(tái)電腦的時(shí)候,通常會(huì)經(jīng)過大量不同的網(wǎng)絡(luò)設(shè)備,(我們用tracert命令就可以看到這種路徑是如何進(jìn)行的)。如果傳輸過程中,有人看到了傳輸中的數(shù)據(jù),那么問題就出現(xiàn)了這就好比給人發(fā)了一封郵件,在半路上被人拆開偷看一樣,這樣說或許還不是很可怕,那要是傳送

28、的數(shù)據(jù)是企業(yè)的機(jī)密文件那,或是用戶的信用卡帳號(hào)和密碼呢? 通過前面的敘述可以知道,這款軟件具有的功能,那就是:能夠分別捕獲局域網(wǎng)中的tcp協(xié)議類型數(shù)據(jù),udp協(xié)議類型數(shù)據(jù)和從某一特定的ip地址發(fā)送出來的tcp協(xié)議類型數(shù)據(jù)和udp協(xié)議數(shù)據(jù)類型。并且,將這些捕獲出來的數(shù)據(jù)包的基本信息存入到數(shù)據(jù)庫中,提供給網(wǎng)絡(luò)管理員使用和進(jìn)一步的分析。嗅探偵聽主要有兩種途徑,一種是將偵聽工具軟件放到網(wǎng)絡(luò)連接的設(shè)備或者放到可以控制網(wǎng)絡(luò)連接設(shè)備的電腦上,(比如網(wǎng)關(guān)服務(wù)器,路由器)當(dāng)然要實(shí)現(xiàn)這樣的效果可能也需要通過其他黑客技術(shù)來實(shí)現(xiàn):比如通過木馬方式將嗅探器發(fā)給某個(gè)網(wǎng)絡(luò)管理員,使其不自覺的為攻擊者進(jìn)行了安裝。另外一種是針

29、對不安全的局域網(wǎng)(采用交換hub實(shí)現(xiàn)),放到個(gè)人電腦上就可以實(shí)現(xiàn)對整個(gè)局域網(wǎng)的偵聽,這里的原理是這樣的:共享hub獲得一個(gè)子網(wǎng)內(nèi)需要接收的數(shù)據(jù)時(shí),并不是直接發(fā)送到指定主機(jī),而是通過廣播方式發(fā)送到每個(gè)電腦,對于處于接受者地位的電腦就會(huì)處理該數(shù)據(jù),而其他非接受者的電腦就會(huì)過濾這些數(shù)據(jù),這些操作與電腦操作者無關(guān),是系統(tǒng)自動(dòng)完成的,但是電腦操作者如果有意的話,他是可以將那些原本不屬于他的數(shù)據(jù)打開這就是安全隱患。以太網(wǎng)的數(shù)據(jù)傳輸是基于“共享”原理的:所有的同一本地網(wǎng)范圍內(nèi)的計(jì)算機(jī)共同接收到相同的數(shù)據(jù)包。這意味著計(jì)算機(jī)直接的通訊都是透明可見的。正是因?yàn)檫@樣的原因,以太網(wǎng)卡都構(gòu)造了硬件的“過濾器”這個(gè)過濾器

30、將忽略掉一切和自己無關(guān)的網(wǎng)絡(luò)信息。事實(shí)上是忽略掉了與自身mac地址不符合的信息。 嗅探程序正是利用了這個(gè)特點(diǎn),它主動(dòng)的關(guān)閉了這個(gè)嗅探器,也就是前面提到的設(shè)置網(wǎng)卡“混雜模式”。因此,嗅探程序就能夠接收到整個(gè)以太網(wǎng)內(nèi)的網(wǎng)絡(luò)數(shù)據(jù)了信息了。由于大量的計(jì)算機(jī)在以太網(wǎng)內(nèi)“共享“數(shù)據(jù)流,所以必須有一個(gè)統(tǒng)一的辦法用來區(qū)分傳遞給不同計(jì)算機(jī)的數(shù)據(jù)流。這種問題不會(huì)發(fā)生在撥號(hào)用戶身上,因?yàn)橛?jì)算機(jī)會(huì)假定一切數(shù)據(jù)都由用戶動(dòng)給modem然后通過電話線傳送出去??墒牵?dāng)發(fā)送數(shù)據(jù)到以太網(wǎng)上的時(shí)候,你必須弄清楚,哪臺(tái)計(jì)算機(jī)是你發(fā)送數(shù)據(jù)的對象。的確,現(xiàn)在有大量的雙向通訊程序出現(xiàn)了,看上去,他們好像只會(huì)在兩臺(tái)機(jī)器內(nèi)交換信息,可以太網(wǎng)

31、的信息是共享的,其他用戶,其實(shí)一樣接收到了你發(fā)送的數(shù)據(jù),只不過是被過濾器給忽略掉了。 mac地址是由一組6個(gè)16進(jìn)制數(shù)組成的,它存在于每一塊以太網(wǎng)卡中。如果對網(wǎng)絡(luò)結(jié)構(gòu)不太熟悉,建議參考一下osi 7-layer model,這將有助于理解后面的東西以太網(wǎng)所使用的協(xié)議主要是tcp/ip,并且tcp/ip也用于其他的網(wǎng)絡(luò)模型(比如撥號(hào)用戶,他們并不是處于一個(gè)以太網(wǎng)環(huán)境中)。舉例一下,很多的小團(tuán)體計(jì)算機(jī)用戶都為實(shí)現(xiàn)文件和打印共享,安裝了“netbeui” 因?yàn)樗皇腔趖cp/ip協(xié)議的,所以來自于網(wǎng)絡(luò)的黑客一樣無法得知他們的設(shè)備情況?;趓aw協(xié)議,傳輸和接收都在以太網(wǎng)里起著支配作用。你不能直接發(fā)

32、送一個(gè)raw數(shù)據(jù)給以太網(wǎng),用戶必須先做一些事情,讓以太網(wǎng)能夠理解用戶的意思。這有點(diǎn)類似于郵寄信件的方法,不可能直接把一封信投遞出去,而是必須先裝信封,寫地址,貼郵票,網(wǎng)絡(luò)上的傳輸也是這樣的。 下面給出一個(gè)簡單的例子,助于理解系統(tǒng)的原理:假如有usera和userb,各自的ip如下usera ip 地址: 10.0.0.23 userb ip 地址: 192.168.100.54 現(xiàn)在知道usera要于userb進(jìn)行計(jì)算機(jī)通訊,usera需要為10.0.0.23到192.168.100.54的通訊建立一個(gè)ip包 。這個(gè)ip包在網(wǎng)絡(luò)上傳輸,它必須能夠穿透路由器。因此,usera必須首先提交這個(gè)包給

33、路由器。由每個(gè)路由器考查目地ip地址然后決定傳送路徑。usera 所知道的只是本地與路由的連接,和userb的ip地址。usera并不清楚網(wǎng)絡(luò)的結(jié)構(gòu)情況和路由走向。usera必須告訴路由預(yù)備發(fā)送的數(shù)據(jù)包的情況,以太網(wǎng)數(shù)據(jù)傳輸結(jié)構(gòu)大概是這樣的: 圖4.1理解一下這個(gè)結(jié)構(gòu),usera的計(jì)算機(jī)建立了一個(gè)包假設(shè)它由100個(gè)字節(jié)的長度(假設(shè)20 個(gè)字節(jié)是ip信息,20個(gè)字節(jié)是tcp信息,還有60個(gè)字節(jié)為傳送的數(shù)據(jù))?,F(xiàn)在把這個(gè)包發(fā)給以太網(wǎng),放14個(gè)字節(jié)在目地mac地址之前,源mac地址,還要置一個(gè)0x0800的標(biāo)記,他指示出了tcp/ip棧后的數(shù)據(jù)結(jié)構(gòu)。同時(shí),也附加了4個(gè)字節(jié)用于做crc校驗(yàn),crc校驗(yàn)

34、用來檢查傳輸數(shù)據(jù)的正確性?,F(xiàn)在發(fā)送數(shù)據(jù)到網(wǎng)絡(luò)。所有在網(wǎng)內(nèi)的計(jì)算機(jī)通過適配器都能夠發(fā)現(xiàn)這個(gè)數(shù)據(jù)片,其中也包括路由適配器,嗅探器和其他一些機(jī)器。通常,適配器都具有一塊芯片用來做結(jié)構(gòu)比較的,檢查結(jié)構(gòu)中的目地mac地址和自己的mac地址,如果不相同,則適配器會(huì)丟棄這個(gè)結(jié)構(gòu)。這個(gè)操作會(huì)由硬件來完成,所以,對于計(jì)算機(jī)內(nèi)的程序來說,整個(gè)過程時(shí)毫無察覺的。當(dāng)路由器的以太網(wǎng)適配器發(fā)現(xiàn)這個(gè)結(jié)構(gòu)后,它會(huì)讀取網(wǎng)絡(luò)信息,并且去掉前14個(gè)字節(jié),跟蹤4個(gè)字節(jié)。查找0x8000標(biāo)記,然后對這個(gè)結(jié)構(gòu)進(jìn)行處理(它將根據(jù)網(wǎng)絡(luò)狀況推測出下一個(gè)最快路由節(jié)點(diǎn),從而最快傳送數(shù)據(jù)到預(yù)定的目標(biāo)地址)。 設(shè)想,只有路由機(jī)器能夠檢查這個(gè)結(jié)構(gòu),并且

35、所有其他的機(jī)器都忽略這個(gè)結(jié)構(gòu),則嗅探器無論如何也無法檢測到這個(gè)結(jié)構(gòu)的。 以太網(wǎng)卡的mac地址是一組48比特的數(shù)字,這48比特分為兩個(gè)部分組成,前面的24比特用于表示以太網(wǎng)卡的寄主,后面的24比特是一組序列號(hào),是由寄主進(jìn)行支派的。這樣可以擔(dān)保沒有任何兩塊網(wǎng)卡的mac地址是相同的(當(dāng)然可以通過特殊的方法實(shí)現(xiàn))。如果出現(xiàn)相同的地址,將發(fā)生問題,所有這一點(diǎn)是非常重要的。這24比特被稱之為oui(organizationally unique identifier)。可是,oui的真實(shí)長度只有22比特,還有兩個(gè)比特用于其他:一個(gè)比特用來校驗(yàn)是否是廣播或者多播地址,另一個(gè)比特用來分配本地執(zhí)行地址(一些網(wǎng)絡(luò)

36、允許管理員針對具體情況再分配mac地址)。 舉個(gè)例子,你的mac地址在網(wǎng)絡(luò)中表示為 03 00 00 00 00 01 。第一個(gè)字節(jié)所包含的值二進(jìn)制表示方法為00000011??梢钥吹?,最后兩個(gè)比特都被置為真值。他指定了一個(gè)多播模式,向所有的計(jì)算機(jī)進(jìn)行廣播,使用了“netbeui”協(xié)議(一般的,在windows計(jì)算機(jī)的網(wǎng)絡(luò)中,文件共享傳輸?shù)仁遣皇褂胻cp/ip協(xié)議的)。42功能模塊設(shè)計(jì)通過前面的敘述可以知道,這款軟件具有的功能,那就是:能夠分別捕獲局域網(wǎng)中的數(shù)據(jù)包。并且,將這些捕獲出來的數(shù)據(jù)包的基本信息存入到數(shù)據(jù)庫中,提供給網(wǎng)絡(luò)管理員使用和進(jìn)一步的分析。本系統(tǒng)流程圖如下圖: 圖4-2 本系統(tǒng)包

37、括四個(gè)基本模塊,分別是數(shù)據(jù)包捕獲模塊,數(shù)據(jù)分析模塊,數(shù)據(jù)包存儲(chǔ)模塊和數(shù)據(jù)包顯示模塊。其中數(shù)據(jù)包捕獲模塊的功能是:利用sniffer控件,通過網(wǎng)卡設(shè)備從網(wǎng)絡(luò)中捕獲數(shù)據(jù)包;數(shù)據(jù)分析模塊的功能是:主要實(shí)現(xiàn)數(shù)據(jù)的解析,從網(wǎng)絡(luò)適配器中捕獲到的數(shù)據(jù)的為原始數(shù)據(jù)(raw data),這些原始數(shù)據(jù)為二進(jìn)制格式,必須轉(zhuǎn)化為能比較好明白的格式,這就要求將這些原始數(shù)據(jù)能按照網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)木唧w格式來保存,主要為了能較好的讀懂相關(guān)的信息,以便使用者分析;數(shù)存儲(chǔ)模塊的功能是:經(jīng)過前兩個(gè)模塊處理后的數(shù)據(jù),現(xiàn)在已經(jīng)轉(zhuǎn)化成了對我們有用的信息了,而這些信息不可能一直讓他存放在內(nèi)存中,那么就需要在數(shù)據(jù)庫中建立相應(yīng)的表,把這些信息存

38、貯在這些數(shù)據(jù)庫表的相應(yīng)列名中,以使用者處理、使用。數(shù)據(jù)包顯示模塊的功能是:能讓使用者看到相關(guān)的數(shù)據(jù)包信息,顯示當(dāng)前程序的判斷結(jié)果,讓用戶能根據(jù)顯示的信息和特征信息對比,從而能判斷當(dāng)前網(wǎng)絡(luò)的性能。 421數(shù)據(jù)包捕獲模塊設(shè)計(jì) 數(shù)據(jù)包的抓捕模塊主要用sniffer開發(fā)包實(shí)現(xiàn),模塊的設(shè)計(jì)思想遵循sniffer捕獲數(shù)據(jù)包的流程,流程分三步:查找設(shè)備,打開設(shè)備和捕獲數(shù)據(jù)的函數(shù)。查找設(shè)備:查找網(wǎng)卡打開設(shè)備:打開網(wǎng)卡捕獲數(shù)據(jù)的函數(shù):編寫程序時(shí)所用的函數(shù)。數(shù)據(jù)包捕獲原理:網(wǎng)絡(luò)數(shù)據(jù)捕獲技術(shù)是獲取信息的關(guān)鍵技術(shù),它通過監(jiān)聽技術(shù),過濾技術(shù)獲取原始數(shù)據(jù),根據(jù)tcp/ip分層理論進(jìn)行層層拆解,提取相關(guān)協(xié)議中的信息其抓包流

39、程圖如下 圖4-2-1422數(shù)據(jù)包解析存儲(chǔ)模塊相關(guān)數(shù)據(jù)信息捕獲分析完畢后,接下來就是對數(shù)據(jù)的保存。當(dāng)存儲(chǔ)模塊從數(shù)據(jù)包抓捕模塊接到數(shù)據(jù)包時(shí),先會(huì)和數(shù)據(jù)庫的特征信息進(jìn)行對比,然后可以再次抓包和已對比的數(shù)據(jù)包進(jìn)行存儲(chǔ),等待其他模塊調(diào)用。數(shù)據(jù)庫中存儲(chǔ)了數(shù)據(jù)包的特征信息,通過對比和存儲(chǔ),使用戶知道接收到什么包以及接受到的數(shù)據(jù)包數(shù)量。數(shù)據(jù)包解析存儲(chǔ)模塊流程圖如下:圖4-2-2423數(shù)據(jù)包信息分析模塊設(shè)計(jì)數(shù)據(jù)分析模塊實(shí)現(xiàn)時(shí),本系統(tǒng)提取的數(shù)據(jù)包中主要的一些信息,如數(shù)據(jù)包中的ip地址,端口信息等。網(wǎng)絡(luò)中的數(shù)據(jù)包都有各自的大小、生存時(shí)間、端口信息等特征,通過對捕獲的數(shù)據(jù)包進(jìn)行解封可以知道各自屬于什么包、包的源地址

40、等。數(shù)據(jù)包信息分析模塊流程圖如下: 圖4-2-3424數(shù)據(jù)包信息顯示模塊設(shè)計(jì)數(shù)據(jù)包顯示模塊的功能是:主要實(shí)現(xiàn)數(shù)據(jù)的反饋信息,將這些數(shù)據(jù)的分析結(jié)果轉(zhuǎn)為能讓使用者比較好理解的格式,這就要求將這些原始數(shù)據(jù)能按照網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)木唧w格式來保存,主要為了能較好的讀懂相關(guān)的信息,以便使用者分析 圖4-2-45網(wǎng)絡(luò)嗅探器的設(shè)計(jì) 基于windowns form編程實(shí)現(xiàn)一個(gè)簡單嗅探器的設(shè)計(jì)和實(shí)現(xiàn)。5.1測試環(huán)境在編寫本軟件前,首先確定了使用java語言。本軟件必須首先安裝java編程環(huán)境中設(shè)置好相關(guān)配置。由于這是一個(gè)抓包程序,因此需要兩臺(tái)以上的pc機(jī)和一些網(wǎng)絡(luò)通訊設(shè)備,具體的實(shí)驗(yàn)環(huán)境:個(gè)人電腦2臺(tái)或2臺(tái)以上,交換

41、機(jī)一個(gè),網(wǎng)線若干,電腦通過交換機(jī)組成一個(gè)局域網(wǎng)環(huán)境。有于水平有限,不可能實(shí)現(xiàn)像sniffer或者影音神探那樣復(fù)雜的設(shè)置和分析,所以我們只對抓取到的本機(jī)在網(wǎng)絡(luò)中的通信數(shù)據(jù)(如協(xié)議類型,源、目的地址和端口、數(shù)據(jù)包的大小等)加以分析,實(shí)現(xiàn)一個(gè)簡單的網(wǎng)絡(luò)嗅探器。一個(gè)窗體顯示主頁面,另一個(gè)頁面顯示詳細(xì)的包信息。詳細(xì)信息頁面,我們顯示一下信息:開始時(shí)間:嗅探器抓取數(shù)據(jù)包的時(shí)間; 源端口:源目的ip地址+端口號(hào);目的端口:目的ip地址+端口號(hào);協(xié)議類型:只分析一下類型,gpg,icmp,idp,igmp,ip,nd,pup,tcp,udp,其他的不再分析;版本信息:協(xié)議的版本;生存時(shí)間:;報(bào)頭大?。簣?bào)文報(bào)首

42、部大??;報(bào)文總長:整個(gè)數(shù)據(jù)報(bào)的大??;優(yōu)先級(jí)別:提供七個(gè)級(jí)別,分別是routine = 0,priority = 1,immediate = 2,flash = 3,flashoverride = 4,criticecp = 5,internetworkcontrol = 6,networkcontrol = 7;延遲:normaldelay = 0、 lowdelay = 1;吞吐量:normalthroughput = 0,highthroughput = 1; 可靠性:normalreliability = 0,highreliability = 1;項(xiàng)目實(shí)施(1)java第三方winfo

43、rm開發(fā)工具中新建項(xiàng)目windows應(yīng)用程序mysinffer。 (2)添加一個(gè)窗體文件和一個(gè)類文件,分別命名form1.cs、assemblyinfo.cs.cs實(shí)現(xiàn)詳細(xì)信息頁面。(3)編碼,詳細(xì)的代碼如源程序。當(dāng)使用系統(tǒng)類提供的接口取到數(shù)據(jù)包的bite流時(shí),對流的初始化處理如下:public packet(byte raw, datetime time) if (raw = null)throw new argumentnullexception();if (raw.length 4; m_headerlength = (raw0 & 0x0f) * 4;if (raw0 & 0x0f)

44、5);m_delay = (delay)(raw1 & 0x10) 4);m_throughput = (throughput)(raw1 & 0x8) 3);m_reliability = (reliability)(raw1 & 0x4) 2);m_totallength = raw2 * 256 + raw3;if (m_totallength != raw.length)throw new argumentexception(); / 無效的數(shù)據(jù)包大小m_identification = raw4 * 256 + raw5;m_timetolive = raw8;if (enum.isdefined(typeof(protocol), (int)raw9)m_protocol = (protocol)raw9;elsem_protocol = protocol.other;m_checksum = new byte2;m_checksum0 = raw11;m_checksum1 = raw10;m_sourceaddress = new ipaddress(bitconverter.touint32(raw, 12);m_destinationaddress =

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論