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

正文內(nèi)容

windows平臺下個人防火墻的設(shè)計與實現(xiàn)畢業(yè)論文-資料下載頁

2025-06-24 05:38本頁面
  

【正文】 度 USHORT checksum。 // 校驗和} UDPHeader。接受到這些數(shù)據(jù)包后,filterFunction函數(shù)就可以對數(shù)據(jù)包進行解析,然后做出相應(yīng)處理。filterFunction函數(shù)的流程圖如下所示:開始接收到數(shù)據(jù)包進行包頭解析,并與過濾規(guī)則列表中的規(guī)則進行匹配匹配成功不作處理并放行阻止丟棄結(jié)束YN圖 54 filterFunction函數(shù)流程圖 驅(qū)動控制模塊的實現(xiàn)本文對FilterHook驅(qū)動的控制是通過編寫的控制程序來實現(xiàn)的,驅(qū)動控制模塊負責用戶層對驅(qū)動層的交互,向驅(qū)動層發(fā)送控制信息,實現(xiàn)在用戶層對驅(qū)動層的控制。程序首先進行驅(qū)動服務(wù)的安裝,安裝成功后打開驅(qū)動設(shè)備,然后根據(jù)用戶操作提供的IOCTL代碼對驅(qū)動設(shè)備進行控制。通過該程序,實現(xiàn)了驅(qū)動服務(wù)的安裝,打開驅(qū)動設(shè)備,整體結(jié)構(gòu)如圖55所示:圖55 驅(qū)動控制示意圖驅(qū)動服務(wù)安裝打開驅(qū)動設(shè)備對驅(qū)動設(shè)備進行控制 驅(qū)動服務(wù)安裝打開服務(wù)管理打開服務(wù)服務(wù)已創(chuàng)建開啟服務(wù)關(guān)閉句柄結(jié)束創(chuàng)建服務(wù)關(guān)閉句柄開啟服務(wù)YN驅(qū)動控制模塊首先執(zhí)行的是驅(qū)動服務(wù)的安裝,其流程如圖56所示:圖56 驅(qū)動服務(wù)安裝1. 打開服務(wù)管理,調(diào)用系統(tǒng)API:OpenSCManager,建立了一個連接到服務(wù)控制管理器,并打開指定的數(shù)據(jù)庫。傳入機器名字,返回一個指向服務(wù)管理數(shù)據(jù)庫的句柄。2. 嘗試打開驅(qū)動服務(wù),調(diào)用系統(tǒng)API:OpenService,打開驅(qū)動服務(wù),傳入上一步得到的句柄,如果想要打開的驅(qū)動服務(wù)已經(jīng)存在,則可以直接開啟驅(qū)動服務(wù),即調(diào)用系統(tǒng)API:StartService,開啟那個驅(qū)動服務(wù)。如果那個驅(qū)動服務(wù)不存在,則首先得創(chuàng)建那個驅(qū)動服務(wù),調(diào)用系統(tǒng)API:CreateService,創(chuàng)建驅(qū)動服務(wù),需要傳入驅(qū)動服務(wù)的名字和驅(qū)動文件的路徑,獲得驅(qū)動服務(wù)句柄。然后再調(diào)用StartServie,開啟這個驅(qū)動服務(wù)。3. 關(guān)閉句柄。服務(wù)開啟之后,關(guān)閉之前所有的句柄。 打開驅(qū)動設(shè)備驅(qū)動服務(wù)安裝成功后,接著在用戶層打開FilterHook Driver。通過調(diào)用OpenDevice函數(shù)(封裝系統(tǒng)API:CreateFile)來實現(xiàn)該函數(shù)原型如下:long OpenDevice(LPCTSTR DriverName, HANDLE *DriverHandle);DriverName為驅(qū)動設(shè)備名,*DriverHandle為設(shè)備句柄(指針)。系統(tǒng)API:CreateFile函數(shù)通過該句柄傳入驅(qū)動設(shè)備的名字,然后函數(shù)返回設(shè)備句柄打開驅(qū)動設(shè)備。 對驅(qū)動設(shè)備進行控制本文防火墻提供了四種操作對驅(qū)動設(shè)備進行控制,分別為start、stop、add和clear,分別對應(yīng)啟動防火墻、停止防火墻、添加過濾規(guī)則、清除過濾規(guī)則。要實現(xiàn)這些操作,首先,定義了4種消息碼,此消息碼就是發(fā)送給驅(qū)動層的操作信息,這4個消息碼分別是:START_IP_HOOK、STOP_IP_HOOK、ADD_FILTER、CLEAR_FILTER。接著,封裝了四個功能函數(shù),來實現(xiàn)這四種消息碼的功能請求:StartFilter()、StopFilter()、AddFilter()、CleanFilter()。其中,這四個功能函數(shù)的主要實現(xiàn)都調(diào)用了系統(tǒng)API:DeviceControl,這個API負責向驅(qū)動層發(fā)送控制信息。這個API所需參數(shù)主要有三個:驅(qū)動設(shè)備句柄,即上一步中打開驅(qū)動設(shè)備獲取句柄;控制碼:即上面預先定義的四個控制碼,不同的控制碼代表通知驅(qū)動執(zhí)行不同的操作;一個緩沖區(qū),即需要傳遞給驅(qū)動層具體的數(shù)據(jù)。這里,執(zhí)行ADD_FILTER時,需要傳遞過濾規(guī)則的結(jié)構(gòu)體,其他情況下這個參數(shù)為空。 用戶界面本文所述防火墻實現(xiàn)后的用戶界面如圖57所示:圖57 個人防火墻用戶界面本界面用MFC設(shè)計,其整體基于對話框。使用到的控件有:靜態(tài)文本框、文本框、按鈕和列表框。界面設(shè)計遵循直觀,簡單的設(shè)計思路,用戶通過界面可以直觀的了解防火墻的功能:啟動、停止、添加過濾規(guī)則、刪除過濾規(guī)則。用戶界面程序的核心實現(xiàn)就是使用CDriver類向過濾鉤子驅(qū)動程序發(fā)送幾個設(shè)備控制碼(START_IP_HOOK、STOP_IP_HOOK、ADD_FILTER、CLEAR_FILTER)。點擊start按鈕,防火墻就根據(jù)該動作向FilterHook驅(qū)動程序發(fā)送START_IP_HOOK控制碼,這樣防火墻就可以啟動,開始工作。防火墻啟動后就可以根據(jù)右側(cè)已有規(guī)則進行數(shù)據(jù)過濾。添加過濾規(guī)則時,只需在左側(cè)文本框內(nèi)輸入?yún)f(xié)議號、源\目IP地址、源\目掩碼、源\目端口號等信息然后點擊add按鈕(向FilterHook驅(qū)動程序發(fā)送ADD_FILTER控制碼)就可生成一條規(guī)則并在右側(cè)列表框內(nèi)顯示。通過clear按鈕(向FilterHook驅(qū)動程序發(fā)送CLEAR_FILTER控制碼)清除已有規(guī)則。點擊stop按鈕后,防火墻就根據(jù)該動作向FilterHook驅(qū)動程序發(fā)送START_IP_HOOK控制碼以關(guān)閉防火墻,停止過濾。與其他商用防火墻相比,本個人防火墻界面和功能都可能相對簡單,但可以對已知的欲阻止訪問進行提前對管控規(guī)則進行設(shè)置,這樣的好處是可以對已知的預提前阻止的訪問規(guī)則進行添加,起到提前預防作用。 系統(tǒng)測試軟件測試就是利用測試工具按照測試方案和流程對產(chǎn)品進行功能和性能測試,甚至根據(jù)需要編寫不同的測試工具,設(shè)計和維護測試系統(tǒng),對測試方案可能出現(xiàn)的問題進行分析和評估。執(zhí)行測試用例后,需要跟蹤故障,以確保開發(fā)的產(chǎn)品適合需求。其中功能測試就是對產(chǎn)品的各功能進行驗證,根據(jù)功能測試用例,逐項測試,檢查產(chǎn)品是否達到用戶要求的功能。下面就對本防火墻系統(tǒng)進行功能測試。功能測試也叫黑盒子測試或數(shù)據(jù)驅(qū)動測試,只需考慮各個功能,、架構(gòu)出發(fā),按照需求編寫出來的測試用例,輸入數(shù)據(jù)在預期結(jié)果和實際結(jié)果之間進行評測,進而提出更加使產(chǎn)品達到用戶使用的要求 測試環(huán)境與工具本系統(tǒng)屬于Windows驅(qū)動開發(fā)范疇,涉及內(nèi)核部分。為避免驅(qū)動錯誤導致系統(tǒng)錯誤錯誤,故整個測試過程在VMware Workstation虛擬機內(nèi)的Windows XP系統(tǒng)環(huán)境下進行。VMware Workstation 是一款桌面虛擬計算機軟件,提供用戶可在單一的桌面上同時運行不同的操作系統(tǒng),和進行開發(fā)、測試 、部署新的應(yīng)用程序的最佳解決方案,故能很好的避免測試中出現(xiàn)的錯誤導致的嚴重后果。由于涉及驅(qū)動層的部分無法直接顯示,因此借助了DebugView這個調(diào)試工具來幫助查看驅(qū)動層的輸出顯示。DebugView是一款調(diào)試工具軟件,可以顯示計算機內(nèi)的字符信息,對于本驅(qū)動程序在內(nèi)核層的運行結(jié)果進行查看。 功能測試1. 測試方法添加防火墻過濾規(guī)則。設(shè)置需要阻止的TCP協(xié)議通信的源、目IP地址,設(shè)置好端口號和掩碼等。然后開啟防火墻,訪問添加的規(guī)則內(nèi)的IP地址。預期該規(guī)則指定的源IP地址和目的IP地址之間的HTTP(端口號80)通信將被防火墻攔截阻止。2. 測試過程及結(jié)果本次測試一個是以訪問黑龍江大學校園網(wǎng)為例,黑龍江大學校園網(wǎng)為源地址,由于目的地址只有本機,故設(shè)置為忽略,依次填入該條測試規(guī)則用例,協(xié)議號為6表示TCP協(xié)議,端口號默認設(shè)置為零(因具體的端口號可能未知)。規(guī)則設(shè)置如圖58所示:圖58 添加過濾規(guī)則測試用例右側(cè)顯示規(guī)則已經(jīng)添加,表示規(guī)則添加成功。此時并未啟動防火墻,過濾驅(qū)動還未注冊,規(guī)則未能生效,故仍可對規(guī)則所指定IP進行訪問。然后點擊start按鈕,啟動防火墻,再次訪問該地址,預期過濾規(guī)則生效,可以對規(guī)則指定通信進行攔截,實際測試結(jié)果顯示如下:圖59 測試結(jié)果演示圖測試結(jié)果表明,規(guī)則所指定的該IP與本地IP間的通信被阻止,即數(shù)據(jù)攔截成功。這是用戶可以直接看到的結(jié)果。由于驅(qū)動層的運行信息無法像用戶層的一樣顯示出來,如果想要看到驅(qū)動層的攔截過濾情況,需要借助一些工具,本文借助DebugView對防火墻驅(qū)動層進行查看,結(jié)果如圖510所示:圖510 FilterHook Driver測試結(jié)果圖通過結(jié)果,可以看到該數(shù)據(jù)包的詳細情況,顯示表明,規(guī)則生效,防火墻攔截過濾成功。另外,再對禁止所有數(shù)據(jù)包進行測試。方法是:在規(guī)則里添加一條各項所有為0的規(guī)則,然后啟動防火墻。測試結(jié)果:所有的網(wǎng)絡(luò)數(shù)據(jù)通信都被阻止。經(jīng)以上測試,本個人防火墻能成功運行,能通過管控規(guī)則對制定的網(wǎng)絡(luò)數(shù)據(jù)包進行過濾,能正常使用。結(jié)論本文主要介紹了windows平臺下個人防火墻的設(shè)計與實現(xiàn)的全過程。本防火墻主要使用FilterHook Driver技術(shù)實現(xiàn),可以實現(xiàn)根據(jù)規(guī)則制定的地址對網(wǎng)絡(luò)和本機通信間的網(wǎng)絡(luò)數(shù)據(jù)包進行攔截過濾,包括IP數(shù)據(jù)包,TCP數(shù)據(jù)包和UDP數(shù)據(jù)包。本文首先介紹了個人防火墻的開發(fā)背景,意義和國內(nèi)外研究現(xiàn)狀。接著簡單介紹了防火墻實現(xiàn)所用到的理論知識和相關(guān)工具。然后對本防火墻的功能模塊和實現(xiàn)進行了詳細的分析介紹。最后進行了對防火墻核心過濾功能的測試。本文所述防火墻采用的過濾技術(shù)——FilterHook Driver技術(shù)的特點是結(jié)構(gòu)簡單,相對其他過濾攔截技術(shù)而言較易于實現(xiàn),并能通過與IP Filter Driver配合截獲所有IP數(shù)據(jù)包。本文所實現(xiàn)的采用該技術(shù)個人防火墻實現(xiàn)了添加\刪除管控規(guī)則,對規(guī)則制定地址的數(shù)據(jù)包進行過濾和日志記錄的功能這些基本核心功能,實現(xiàn)的防火墻也簡單明了,易于操作??偨Y(jié)此次windows平臺下個人防火墻的設(shè)計與實現(xiàn)過程,使我對Windows程序設(shè)計有了更深的理解和認識,特別是對內(nèi)核驅(qū)動模式開發(fā)部分的知識提升很大。同時,也意識到一些不足,總結(jié)如下:1. 功能較其他流行防火墻單一,這也跟人力和時間有一定關(guān)系,但主要還是知識儲備的欠缺。2. 數(shù)據(jù)包部分的處理的有些細節(jié)考慮也有些許不夠全面。3. 由于初涉MFC程序設(shè)計,故本次實現(xiàn)的個人防火墻在實現(xiàn)了相應(yīng)功能后的界面比較單一。相信這些問題也會在以后的不斷摸索和學習中的到改善。本次畢業(yè)設(shè)計的完成,對個人而言,也收獲頗豐,不僅擴大了我的知識儲備,還提高了我Windows程序設(shè)計方面的編碼能力,給了我一個良好的開端,為今后的深入研究打下了基礎(chǔ)。參考文獻30致謝在論文即將完成之際,回首整個系統(tǒng)設(shè)計及論文撰寫過程,首先要感謝我的導師趙鵬老師,本次論文的順利完成離不開趙老師的悉心指導。從論文開題到中期檢查到終稿審查這整個過程中,趙鵬老師以他淵博的學識,嚴謹?shù)闹螌W態(tài)度給予我理論技術(shù)上的指導和分析,大到論文的整體框架結(jié)構(gòu),小到開題報告中具體段落,都離不開趙老師的細致負責的指導和建設(shè)性的啟發(fā)和建議。這些不僅對論文的順利完成起到了很大的作用,而且讓我知道了治學嚴謹?shù)闹匾裕芤娣藴\。其次,感謝我大學四年中的任課老師,是他們四年中的悉心教導,讓我對完成論文有了扎實的理論基礎(chǔ),并使我具備了解決問題的能力。這使我在論文完成過程中遇到問題時能以平和的心態(tài)面對困難并解決困難。再者,論文的順利完成也離不開部分同學的幫助,他們在我遇到某些困難的時候也給予了我理論上的指點。在此對他們表示由衷的感謝。最后,向百忙之中投入時間和精力來評閱我論文的評審老師們致以誠摯的謝意。31
點擊復制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1