freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

網(wǎng)絡(luò)協(xié)議仿真軟件的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文-資料下載頁

2024-11-07 20:37本頁面

【導(dǎo)讀】[摘要]由于網(wǎng)絡(luò)模型和協(xié)議的抽象性,即使專業(yè)人員對其理解也有很大困難。為了將抽象的難以。理解的網(wǎng)絡(luò)模型框架、協(xié)議原理、網(wǎng)絡(luò)應(yīng)用等專業(yè)知識,用易于理解的通俗易懂的形式將其理解。員更好的理解網(wǎng)絡(luò)協(xié)議原理、掌握學(xué)習(xí)要領(lǐng)。包的原理和技術(shù),并介紹了幾種常見的抓包軟件,然后研究了入侵檢測系統(tǒng)中使用的包捕獲技術(shù),等功能,最后通過動畫演示生動形象的描述網(wǎng)絡(luò)協(xié)議如何運(yùn)行。

  

【正文】 k API編程較簡單,但只能捕獲 IP層以上的數(shù)據(jù),得不到數(shù)據(jù)鏈路層幀信息。用 NDIS驅(qū)動程序?qū)崿F(xiàn)對整個(gè)以太網(wǎng)包的截獲,雖然可以實(shí)現(xiàn)十分全面、強(qiáng)大的功能,但編程復(fù)雜,并且容易導(dǎo)致系統(tǒng)崩潰。實(shí)際上很多產(chǎn)品都是結(jié)合了幾種不同的技術(shù)從多個(gè)層面上來進(jìn)行 Windows下網(wǎng)絡(luò)數(shù)據(jù)包的捕獲。 (1)使用外界提供的驅(qū)動捕獲程序,如 WinPcap驅(qū)動,這也是本課題所采取的方法。 (2)使 用或自行編寫中間層驅(qū)動程序,如 Win2020 SDK中提供了幾個(gè)這樣的驅(qū)動程序??煞譃橛脩艏壓蛢?nèi)核級兩類,其中內(nèi)核級主要包括 NDIS中間層捕獲驅(qū)動程序、 TDI捕獲驅(qū)動程序、 NDIS捕獲鉤子驅(qū)動程序等,并且它們都是利用網(wǎng)絡(luò)驅(qū)動實(shí)現(xiàn)的;用戶級的則包括 SPI接口, Windows 2020包捕獲過濾接口等。 (3)直接調(diào)用 NDIS驅(qū)動庫函數(shù),這種方法功能非常強(qiáng)大,但是比較風(fēng)險(xiǎn),有可能會導(dǎo)致系統(tǒng)崩潰或網(wǎng)絡(luò)癱瘓,應(yīng)該謹(jǐn)慎采用。 (4)使用原始套接字。在 TCP/IP協(xié)議簇中,可以建立面向連接的 SOCK (修改 )型的 Socket,和非連接的 SOCK DGRAM類型的 Socket。在所有的網(wǎng)絡(luò)程序中,這兩種 Socket用的最為廣泛。此外,還有一些不常用的 Socket類型,它們卻是在某些網(wǎng)絡(luò)通信中擔(dān)當(dāng)著重要的角色,比如 Raw Socket,與其他兩種套接字不同的是,原始套接字捕獲到的數(shù)據(jù)包不只是單純的數(shù)據(jù)信息,而是含有 IP頭、TCP頭等信息的數(shù)據(jù)信息。它可以用來接收或發(fā)送 ICMP協(xié)議包以及 TCP/IP協(xié)議棧不能夠處理的口包,及處理 IP層以上的數(shù)據(jù)包,還可以用來發(fā)送一些自己制定源地址的特殊作用的口包,利用RawSocket來捕獲數(shù) 據(jù)包優(yōu)點(diǎn)是方法簡單,缺點(diǎn)是功能有限,只能捕獲 IP層以上的數(shù)據(jù)包。 2) NDIS(Network Driver Interface Specification)驅(qū)動規(guī)范 圖 214是 Windows環(huán)境下的包捕獲原理圖,其中 NDIS網(wǎng)絡(luò)驅(qū)動器接口規(guī)范是 Windows操作系統(tǒng)網(wǎng)絡(luò)驅(qū)動功能的關(guān)鍵部分,是整個(gè)包捕獲架構(gòu)的基礎(chǔ),它是 Windows中最底端的與連網(wǎng)有關(guān)的軟石河子大學(xué)學(xué)士學(xué)位論文 第二章 網(wǎng)絡(luò)協(xié)議及協(xié)議仿真技術(shù) 20 件,主要是為各種應(yīng)用協(xié)議與網(wǎng)卡之間提供一套接口函數(shù),上面列舉的 Windows下的數(shù)據(jù)包捕獲解決方案都是以 NDIS為基礎(chǔ)的。 NDIS是 Microsoft和 3Com公司聯(lián)合制定的網(wǎng)絡(luò)驅(qū)動規(guī)范,提供了大量的操作函數(shù),是一個(gè)定義網(wǎng)絡(luò)適配器與協(xié)議驅(qū)動之間通信的規(guī)范。 NDIS向上支持多種網(wǎng)絡(luò)協(xié)議,比如 TCP/IP、 NWLink、 IPX/SPX、 NETBEUI等,向下支持不同廠家生產(chǎn)的多種網(wǎng)卡,屏蔽了下層各種網(wǎng)卡的差別。 NDIS還支持多種工作模式,支持多處理器,還提供了一個(gè)完備的 NDIS庫,但庫中的各個(gè)函數(shù)都是工作在核心模式下的,用戶不宜直接操作,這就需要尋找另外的接口。設(shè)計(jì)NDIS驅(qū)動最主要的目的是允許協(xié)議驅(qū)動發(fā)送和接收網(wǎng)絡(luò)上的數(shù)據(jù)包而不用關(guān)心特定的適配器或操作系統(tǒng)。 NDIS驅(qū)動程序的結(jié)構(gòu)如圖 215 所示。 圖 214 Windows 環(huán)境下的包捕獲原理簡圖 圖 215 NDIS 驅(qū)動程序的結(jié)構(gòu)圖 NDIS支持三種類型的網(wǎng)絡(luò)驅(qū)動: (1)網(wǎng)卡驅(qū)動。網(wǎng)卡驅(qū)動管理著計(jì)算機(jī)上的所有網(wǎng)卡,它負(fù)責(zé)向上提供一個(gè)接口,該接口允許上層協(xié)議發(fā)送數(shù)據(jù)包到網(wǎng)絡(luò)上,還負(fù)責(zé)處理中斷,停止啟用網(wǎng)卡,查詢和設(shè)置驅(qū)動的運(yùn)行功能。網(wǎng)卡驅(qū)動可以是小端口驅(qū)動 (Miniport driver)或完全網(wǎng)卡驅(qū)動 (FullNIC driver)。小端口驅(qū)動僅僅石河子大學(xué)學(xué)士學(xué)位論文 第二章 網(wǎng)絡(luò)協(xié)議及協(xié)議仿真技術(shù) 21 實(shí)現(xiàn)了管理網(wǎng)卡的必要操作,包括在網(wǎng)卡上發(fā)送和接收數(shù)據(jù) 。對于所有最底層的網(wǎng)卡驅(qū)動的操作由NDIS提供,例如同步。小端口驅(qū)動不直接調(diào)用操作系統(tǒng)函數(shù),它們對于操作系統(tǒng)的接口是 NDIS,它僅僅是向上傳遞數(shù)據(jù)包給 NDIS并且 NDIS確保這些數(shù)據(jù)包被傳遞給正確的協(xié)議。完全網(wǎng)卡驅(qū)動完成硬件細(xì)節(jié)的操作和所有由 NDIS完成的同步和查詢操作,例如,完全網(wǎng)卡驅(qū)動維持接收到的數(shù)據(jù)的綁定信息。 (2)中間層驅(qū)動。中間層驅(qū)動位于協(xié)議驅(qū)動和小端口驅(qū)動之間,它能夠截獲所有的網(wǎng)絡(luò)數(shù)據(jù)包。NDIS中間層驅(qū)動的應(yīng)用很廣泛,不僅僅是個(gè)人防火墻,還可以用來實(shí)現(xiàn) NAT、 PPP Over Ethemet、VPN以及 VLan[14]。對于高層驅(qū)動,中間層驅(qū)動看起來像是小端口,對于小端口,中間層驅(qū)動看起來像協(xié)議驅(qū)動。一個(gè)中間層協(xié)議驅(qū)動可以位于另一個(gè)中間層驅(qū)動之上,盡管這種分層可能對系統(tǒng)性能帶來負(fù)面影響。開發(fā)中間層驅(qū)動的一個(gè)關(guān)鍵原因是在現(xiàn)存的遺留協(xié)議驅(qū)動和小端口驅(qū)動之間建立一個(gè)溝通的橋梁。例如,中間層驅(qū)動可以實(shí)現(xiàn) LAN協(xié)議 ATM協(xié)議之間的轉(zhuǎn)換。中間層驅(qū)動不能與用戶模式的應(yīng)用程序通信,但可以與其他的 NDIS驅(qū)動通信。 (3)協(xié)議驅(qū)動實(shí)現(xiàn)了網(wǎng)絡(luò)協(xié)議棧,如 TCP/IP或 IPX/SPX,它可以在一個(gè)或多個(gè)網(wǎng)卡上提供服務(wù) 。應(yīng)用層的程序可以利用協(xié)議驅(qū)動提供的服務(wù),協(xié)議驅(qū)動又利用網(wǎng)卡驅(qū)動和中間層驅(qū)動提供的服務(wù)。NPF被看作是一個(gè)協(xié)議驅(qū)動,處在與 TCP/IP協(xié)議同一級的位置,它的作用就是使應(yīng)用程序繞過操作系統(tǒng)的協(xié)議棧實(shí)現(xiàn)對原始數(shù)據(jù)包的捕獲。圖 216 說明了 NPF在 NDIS棧中的位置。 圖 216 NPF 在 NDIS 棧中的位置 基于 WinPcap 的包捕獲過程 基于 WinPcap的包捕獲過程:首先獲取網(wǎng)卡設(shè)備列表并選擇要監(jiān)聽的一塊網(wǎng)卡,將其設(shè)置為混雜模式,還要設(shè)置好過濾器等參數(shù);然后把網(wǎng)卡上的數(shù)據(jù)包復(fù)制到內(nèi)核緩沖區(qū)中;最后通 過上層的調(diào)用,把內(nèi)核緩沖區(qū)中的數(shù)據(jù)包拷貝到用戶緩沖區(qū)中,再交給應(yīng)用程序?qū)?shù)據(jù)進(jìn)行加工提取出有用的信息。利用 WinPcap驅(qū)動捕獲的數(shù)據(jù)幀其實(shí)是經(jīng)過傳輸層、網(wǎng)絡(luò)層和數(shù)據(jù)鏈路層的封裝而生成的太網(wǎng)數(shù)據(jù)幀,因此可以對數(shù)據(jù)幀作進(jìn)一步解析得到有用信息。 當(dāng)數(shù)據(jù)由網(wǎng)絡(luò)流向捕獲應(yīng)用程序時(shí),網(wǎng)卡驅(qū)動程序首先截獲到數(shù)據(jù)包,包過濾器通過對 NDIS石河子大學(xué)學(xué)士學(xué)位論文 第二章 網(wǎng)絡(luò)協(xié)議及協(xié)議仿真技術(shù) 22 接口庫函數(shù)的調(diào)用,將數(shù)據(jù)包完整地拷貝到預(yù)先設(shè)置的內(nèi)核緩沖器中,其數(shù)據(jù)由應(yīng)用程序通過接口函數(shù)拷貝到用戶緩沖器中,實(shí)現(xiàn)對網(wǎng)絡(luò)數(shù)據(jù)的捕獲。而且,在一次系統(tǒng)讀請求調(diào)用過程中,可以將內(nèi)核緩沖區(qū) (kernelbuffer)中的多個(gè)數(shù)據(jù)包讀取到用戶緩沖區(qū) (userbuffer)中。當(dāng)數(shù)據(jù)由捕獲應(yīng)用程序流向網(wǎng)絡(luò)時(shí),其流程與數(shù)據(jù)由網(wǎng)絡(luò)流向捕獲應(yīng)用程序時(shí)相反。所不同的是,在一次寫請求的調(diào)用過程中,只能將用戶緩沖區(qū)中的一個(gè)數(shù)據(jù)包寫到內(nèi)核緩沖區(qū)中。 在數(shù)據(jù)包捕獲期間, WinPcap的捕獲操作依賴于 2個(gè)主要部件 [15]: 第一個(gè)就是包過濾器。包過濾器決定了一個(gè)數(shù)據(jù)包是否應(yīng)該被接受,事實(shí)上,被 NPF過濾器所過濾掉的數(shù)據(jù)包要比接受的數(shù)據(jù)包多,所以一個(gè)高效的數(shù)據(jù)包過濾器對一個(gè)嗅探系統(tǒng)是很重要的。 NPF數(shù)據(jù)包過濾器的設(shè)計(jì)較為復(fù)雜,因?yàn)樗粌H要決定數(shù)據(jù)包是否應(yīng)該被接收,而且還要決定保存的數(shù)據(jù)包的字節(jié)數(shù)。 第二個(gè)是環(huán)形緩沖區(qū),捕獲的數(shù)據(jù)包首先被添加一個(gè)頭部,頭部中包含著時(shí)間戳和包的大小等信息,然后數(shù)據(jù)包會被存儲在這個(gè)緩沖區(qū)中。另外為了加速應(yīng)用程序?qū)?shù)據(jù)包的分析,各個(gè)包之間還有相應(yīng)的填充字節(jié)使之對齊。應(yīng)用程序從 NPF緩沖區(qū)中讀取數(shù)據(jù)時(shí),一般一次讀取一組數(shù)據(jù)包,這樣可以使讀取數(shù)據(jù)包的次數(shù)減到最小。如果一個(gè)新的 數(shù)據(jù)包到達(dá)時(shí)緩沖區(qū)己經(jīng)滿了,那么 NPF將會丟棄這個(gè)數(shù)據(jù)包。另外,內(nèi)核和用戶緩沖區(qū)都可以在運(yùn)行時(shí)改變,把它們設(shè)置在適當(dāng)?shù)拇笮】梢蕴岣邞?yīng)用程序捕獲數(shù)據(jù)包的性能。 通過本章的介紹,課題組成員加深了對 Windows下數(shù)據(jù)包捕獲原理的理解,及對 WinPcap框架的理解,得到了基于 WinPcap開發(fā)嗅探程序的一般步驟,結(jié)合上面幾章相關(guān)知識實(shí)現(xiàn)一個(gè)網(wǎng)絡(luò)數(shù)據(jù)包嗅探器。 Equation Chapter (Next) Section 1 石河子大學(xué)學(xué)士學(xué)位論文 第三章 需求分析與動畫演示設(shè)計(jì) 23 第三章 需求分析與動畫演示設(shè)計(jì) 功能需求 經(jīng)過使用一部分網(wǎng)絡(luò)抓包軟件,親自試驗(yàn),并參考相關(guān)的文獻(xiàn)及框架的基礎(chǔ)上。得出一個(gè)基本的網(wǎng)絡(luò)數(shù)據(jù)包捕獲和分析軟件應(yīng)該具有一些功能。在本課題的軟件開發(fā)部分都應(yīng)該需要實(shí)現(xiàn)。 首先需要一個(gè)人機(jī)友好的界面環(huán)境,力求簡潔實(shí)用方便 ,能夠在 windows2020及 windows2020以后的版 本中運(yùn)行。由此,決定采用通用的 MFC以完成界面部分的設(shè)計(jì)。 需要 支持網(wǎng)絡(luò)數(shù)據(jù)包的捕獲 ,經(jīng)過以上的分析決定采用 winpcap進(jìn)行實(shí)現(xiàn)。能夠捕獲arp,tcp,udp,icmp等數(shù)據(jù)包。 支持過濾規(guī)則的腳本編程。能夠通過自定義一些符合 winpcap過濾規(guī)則語法的語句進(jìn)行捕獲特定的數(shù)據(jù)包。 需要對數(shù)據(jù)包進(jìn)行統(tǒng)計(jì),顯示捕捉開始后各類數(shù)據(jù)包的個(gè)數(shù)和總數(shù)。 對每個(gè)數(shù)據(jù)包的時(shí)間戳,源網(wǎng)卡地址,目的網(wǎng)卡地址,源 IP 地址,目標(biāo)網(wǎng)卡地址,長度,協(xié)議,源端口,目的端口進(jìn)行記錄和顯示。 能夠?qū)?shù)據(jù)包在鏈路層,網(wǎng)絡(luò)層和傳輸層進(jìn)行分 析,顯示數(shù)據(jù)包各個(gè)標(biāo)識的含義。能夠把捕獲的數(shù)據(jù)包以十六進(jìn)制的形式保存為 xml文件輸出。 性能需求 1) 系統(tǒng)處理的準(zhǔn)確性和及時(shí)性 系統(tǒng)處理的準(zhǔn)確性和及時(shí)性是軟件的必要性能。在軟件設(shè)計(jì)和開發(fā)過程中,要充分考慮當(dāng)前和將來可能承受的工作量,使系統(tǒng)的處理能力和響應(yīng)時(shí)間能夠滿足管理員對信息處理的需求。 由于嗅探器軟件的抓包功能對于整個(gè)軟件的功能和性能完成舉足輕重。作為軟件的很多數(shù)據(jù)來源,抓包的數(shù)量和時(shí)間又影響嗅探軟件對數(shù)據(jù)包的分析活動。在軟件開發(fā)的過程中,必須采用一定的方法保證軟件的準(zhǔn)確性。 2) 軟件的開放性和系統(tǒng)的可擴(kuò)充 性 軟件系統(tǒng)在開發(fā)過程中,硬挨充分考慮到以后的可擴(kuò)充性。比如將來需要擴(kuò)充的抓包類型和數(shù)據(jù)包分析,用戶對嗅探功能的具體需求也會不斷更新和完善。所有這些,都要求軟件提供足夠的手段進(jìn)行功能的調(diào)整和擴(kuò)充。而要實(shí)現(xiàn)這一點(diǎn),應(yīng)該通過軟件的開放性來完成。只要符合一定的規(guī)范,可以簡單地加入和減少系統(tǒng)的模塊,配置系統(tǒng)的硬件。通過軟件的修補(bǔ),替換完成軟件的升級和更新?lián)Q代。 3)軟件的易用性 抓包軟件是面相網(wǎng)絡(luò)管理員的,而管理人員對捕獲的數(shù)據(jù)往往需要對捕獲日志進(jìn)行分析。這就石河子大學(xué)學(xué)士學(xué)位論文 第三章 需求分析與動畫演示設(shè)計(jì) 24 要求軟件提供方便的手段供網(wǎng)絡(luò)管理員對數(shù)據(jù)進(jìn)行導(dǎo)出,備份, 分析等。 4)軟件的標(biāo)準(zhǔn)型 軟件在設(shè)計(jì)開發(fā)使用過程中涉及到很多計(jì)算機(jī)硬件、軟件。所有這些都要符合主流國際、國家和行業(yè)標(biāo)準(zhǔn)。例如在開發(fā)過程中使用的操作性同、網(wǎng)絡(luò)系統(tǒng)、開發(fā)工具都必須符合通用標(biāo)準(zhǔn)。如作為業(yè)界標(biāo)準(zhǔn)的 TCP/IP網(wǎng)絡(luò)協(xié)議及 ISO9002標(biāo)準(zhǔn)所要求的質(zhì)量規(guī)范等;同時(shí),在自主開發(fā)本系統(tǒng)時(shí),要進(jìn)行良好的設(shè)計(jì)工作,制定行之有效的工程規(guī)范,保證代碼的易讀性、可操作性和可移植性。 5)軟件的先進(jìn)性 目前計(jì)算系統(tǒng)的技術(shù)發(fā)展相當(dāng)快,作為基于操作系統(tǒng)的圖形界面嗅探軟件,應(yīng)保證在軟件的生命周期里盡量做到系統(tǒng)的先進(jìn),充分 企業(yè)的信息處理的要求而不至于落后。這一方面通過系統(tǒng)的開放性和可擴(kuò)充性,不斷改善軟件的功能完成。另一方面,應(yīng)在考慮成本的基礎(chǔ)上盡量采用當(dāng)前主流并先進(jìn)且有良好發(fā)展前途的產(chǎn)品。 6)軟件的響應(yīng)速度 軟件在日常處理中響應(yīng)速度為 ,達(dá)到及時(shí)要求。在進(jìn)行抓包活動的時(shí)候,保證數(shù)據(jù)量不至于過大而占用系統(tǒng)內(nèi)存。并控制 CPU的占用率,不影響其他軟件的正常工作。 可行性分析 學(xué)校校園網(wǎng)內(nèi)提供了大量資料庫,可以進(jìn)行相關(guān)資料的查找。并且學(xué)校的機(jī)房可以提供相應(yīng)的實(shí)驗(yàn)環(huán)境進(jìn)行實(shí)驗(yàn)的測試。嗅探器的編寫需要掌握 C++, MFC的相關(guān)知 識,局域網(wǎng)網(wǎng)絡(luò)工作機(jī)制。而這正好與論文作者本科階段的學(xué)習(xí)方向與學(xué)習(xí)興趣一致。 再加上平時(shí)對嗅探器的有所研究。所以理論上,編寫一個(gè)嗅探器是可行的。在給定的時(shí)間可以實(shí)現(xiàn)需求分析中的功能。軟件的質(zhì)量可以達(dá)到及時(shí)響應(yīng)的需求。 動畫演示設(shè)計(jì) 1)主界面演示實(shí)現(xiàn),如圖 31: 石河子大學(xué)學(xué)士學(xué)位論文 第三章 需求分析與動畫演示設(shè)計(jì) 25 圖 31 主界面 2) OSI參考模型實(shí)現(xiàn),如圖 32 圖 32 OSI 參考模型演示界面 3) IP重組過程實(shí)現(xiàn),如圖 33 石河子大學(xué)學(xué)士學(xué)位論文 第三章 需求分析與動畫演示設(shè)計(jì) 26 圖 33 IP 重組過程演示界面 4) TCP/IP工作流程實(shí)現(xiàn),如圖 34 圖 34 TCP/IP 工作流程演示界 面 5) TCP建立連接和釋放過程演示,如圖 35 石河子大學(xué)學(xué)士學(xué)位論文 第三章 需求分析與動畫演示
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1