輕量級(jí)Liunx防火墻研究與設(shè)計(jì)-流量控制、數(shù)據(jù)包更改_第1頁(yè)
輕量級(jí)Liunx防火墻研究與設(shè)計(jì)-流量控制、數(shù)據(jù)包更改_第2頁(yè)
輕量級(jí)Liunx防火墻研究與設(shè)計(jì)-流量控制、數(shù)據(jù)包更改_第3頁(yè)
輕量級(jí)Liunx防火墻研究與設(shè)計(jì)-流量控制、數(shù)據(jù)包更改_第4頁(yè)
輕量級(jí)Liunx防火墻研究與設(shè)計(jì)-流量控制、數(shù)據(jù)包更改_第5頁(yè)
已閱讀5頁(yè),還剩33頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

本科畢業(yè)設(shè)計(jì)題目:輕量級(jí)Linux防火墻研究與設(shè)計(jì) ——流量控制、數(shù)據(jù)包更改輕量級(jí)Linux防火墻研究與設(shè)計(jì)——流量控制、數(shù)據(jù)包更改摘要:隨著計(jì)算機(jī)和互聯(lián)網(wǎng)技術(shù)的快速發(fā)展以及在各種各樣的應(yīng)用領(lǐng)域中的迅速普及,而人類(lèi)對(duì)計(jì)算機(jī)和互聯(lián)網(wǎng)的依賴程度也越來(lái)越高,因此增強(qiáng)計(jì)算機(jī)系統(tǒng)以及互聯(lián)網(wǎng)絡(luò)的安全性能也就變得越來(lái)越重要。防火墻作為當(dāng)今互聯(lián)網(wǎng)絡(luò)中使用的最多,也是最廣泛的安全措施之一,伴隨著互聯(lián)網(wǎng)的快速發(fā)展而得到了廣泛的應(yīng)用,同時(shí)也被實(shí)踐證明是至今為數(shù)不多的成功的網(wǎng)絡(luò)安全應(yīng)用實(shí)例。另一方面,Linux作為目前唯一在全球范圍內(nèi)得到廣泛接受和應(yīng)用的開(kāi)源操作系統(tǒng),所提供的靈活性和可操作性為開(kāi)發(fā)和配置防火墻以及按照特定網(wǎng)絡(luò)環(huán)境的要求構(gòu)建防火墻提供了一個(gè)價(jià)格低廉、性能優(yōu)良的平臺(tái),日益獲得了眾多企業(yè)和個(gè)人用戶的廣泛接受。本防火墻在Linux操作系統(tǒng)中使用Nelfiter和QT編程軟件而構(gòu)建成的軟件。旨在實(shí)現(xiàn)完善的網(wǎng)絡(luò)安全功能并對(duì)其進(jìn)行有效管理的方法,如數(shù)據(jù)包轉(zhuǎn)發(fā)、數(shù)據(jù)包過(guò)濾、網(wǎng)絡(luò)監(jiān)控等。關(guān)鍵詞:網(wǎng)絡(luò)安全;Linux;防火墻;Nelfilter;QTThelightweightLinuxfirewallresearchanddesign——Flowcontrol、DatapackagechangeAbstract:WiththerapiddevelopmentofcomputerandInternettechnology,andawidevarietyofapplicationsintherapidlygrowingpopularityofthehumanrelianceoncomputersandtheInternetmoreandmore,thusenhancingthesafetyperformanceofthecomputersystemandtheInternetwillbecomeincreasinglyimportant.

Mostfirewallastoday'sInternet,oneofthemostextensivesecuritymeasures,alongwiththerapiddevelopmentoftheInternethasbeenwidelyused,alsobeenprovedtobeoneofthefewsofarsuccessfulnetworksecurityapplicationsinstance.Ontheotherhand,Linuxonaglobalscaleascurrentlytheonlywidelyacceptedopensourceoperatingsystemandapplications,provideflexibilityandmaneuverabilityforthedevelopmentanddeploymentoffirewallsandfirewallconstructedinaccordancewiththerequirementsofthespecificnetworkenvironmentwithanaffordable,theexcellentperformanceoftheplatform,gainingwideacceptanceofmanyenterprisesandindividualusers[1].

ThefirewallintheLinuxoperatingsystemusingtheNelfiterandQTprogrammingsoftwarebuiltintothesoftware.Anditseffectivemanagementmethodsaimedatachievingacomprehensivenetworksecurityfeatures,suchaspacketforwarding,packetfiltering,networkmonitoring,andsoon.

Keywords:networksecurity;Linux;firewall;Nelfilter;QT目錄一、系統(tǒng)分析 1(一)、可行性分析 11、技術(shù)可行性分析 12、操作可行性分析 13、經(jīng)濟(jì)可行性分析 1(二)、系統(tǒng)處理流程 1(三)、系統(tǒng)數(shù)據(jù)流程 2二、需求分析 8(一)、系統(tǒng)需求規(guī)定 81、對(duì)功能的規(guī)定 82、對(duì)性能的規(guī)定 113、其他的專(zhuān)門(mén)要求 12(二)、系統(tǒng)運(yùn)行環(huán)境的規(guī)定 121、硬件及其他設(shè)備 122、支持軟件 133、語(yǔ)言版本 134、顯示參數(shù) 13三、概要設(shè)計(jì) 14(一)、系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì) 141、數(shù)據(jù)的邏輯描述 14四、詳細(xì)設(shè)計(jì) 18(一)、程序系統(tǒng)的結(jié)構(gòu) 181、系統(tǒng)模塊層次結(jié)構(gòu) 18(二)、程序模塊設(shè)計(jì)說(shuō)明 191、流量控制模塊 192、幫助模塊 213、系統(tǒng)信息模塊 224、流量監(jiān)測(cè)模塊 245、用戶設(shè)置模塊 25五、系統(tǒng)測(cè)試 28(一)、測(cè)試計(jì)劃 28(二)、測(cè)試結(jié)果及發(fā)現(xiàn) 28總結(jié) 32參考文獻(xiàn) 33致謝 34=1\*CHINESENUM3一、系統(tǒng)分析(一)、可行性分析1、技術(shù)可行性分析 本防火墻[1]是在Linux[5][6]操作系統(tǒng)上進(jìn)行開(kāi)發(fā)完成的軟件,全部分為用戶交互程序、后臺(tái)進(jìn)程、服務(wù)器進(jìn)程、內(nèi)核[4][6]模塊4大模塊。對(duì)于用戶交互程序的開(kāi)發(fā)主要是使用QT[4]程序編程軟件,QT程序編程軟件中的界面設(shè)計(jì)已經(jīng)可以很好的完成用戶交互程序的大部分功能;服務(wù)器進(jìn)程實(shí)現(xiàn)了網(wǎng)頁(yè)跳轉(zhuǎn)功能;而其他的三個(gè)模塊使用Nelfilter以及Linux操作系統(tǒng)自帶的iptables兩者進(jìn)行就可以進(jìn)行編寫(xiě)和實(shí)現(xiàn)了。因此,本防火墻在技術(shù)方面是可行的。2、操作可行性分析 本防火墻對(duì)于用戶而言,最重要的一個(gè)部分就是用戶交互程序了,其他的幾個(gè)模塊都是對(duì)用戶透明的。而本防火墻的用戶交互界面非常的簡(jiǎn)潔明了,而且還有用戶幫助功能,里面有幫助文檔,根據(jù)幫助文檔用戶就可以很快的熟悉本軟件了。3、經(jīng)濟(jì)可行性分析 成本:本防火墻是使用QT程序編程軟件結(jié)合Nelfilter在Linux操作系統(tǒng)上進(jìn)行開(kāi)發(fā)的,Linux操作系統(tǒng)是開(kāi)源的操作系統(tǒng),而QT程序編程軟件是免費(fèi)的軟件,使用的服務(wù)器是自己的電腦,所以本防火墻的開(kāi)發(fā)成本較低。 效益:本防火墻是屬于輕量級(jí)的,技術(shù)和功能還只是初級(jí)的,而且還不夠完善,因此目前還未考慮效益問(wèn)題。(二)、系統(tǒng)處理流程 本Linux防火墻軟件可以分為:用戶交互程序、后臺(tái)進(jìn)程、服務(wù)器進(jìn)程、內(nèi)核模塊等4大模塊,而網(wǎng)卡是主機(jī)設(shè)備中的已有接口,是內(nèi)核進(jìn)程自主調(diào)用以及運(yùn)行的設(shè)備。其他工具分為了防護(hù)、斷網(wǎng)、日志、更新等4種,具體的系統(tǒng)基本流程如下圖:圖1.1防火墻系統(tǒng)基本流程圖Fig1.1FigureofFirewallSystemflowchar(三)、系統(tǒng)數(shù)據(jù)流程 頂層的數(shù)據(jù)流圖主要是描述了所經(jīng)過(guò)防火墻的主要數(shù)據(jù)流,展示了主機(jī)硬件設(shè)備對(duì)防火墻的操作和與其他的外部硬件設(shè)備進(jìn)行交流時(shí)的數(shù)據(jù)流動(dòng),如下圖1.2所示。圖1.2防火墻的頂層DFD圖Fig1.2FigureofFirewalltoplayerDFD 接下來(lái)的就是第二層數(shù)據(jù)流圖了,它展示了用戶在防火墻中所做的相關(guān)操作,具體如下圖1.3所示。圖1.3防火墻第二層DFD圖Fig1.3FigureoffirewallsecondlayerDFD 第二層的數(shù)據(jù)流圖描述了用戶通過(guò)防火墻的用戶交互界面來(lái)進(jìn)行對(duì)防火墻的操作。用戶通過(guò)用戶交互界面可以進(jìn)行防護(hù)和網(wǎng)絡(luò)連接操作,前者可以決定是開(kāi)啟防護(hù)還是關(guān)閉防護(hù),后者可以決定是斷開(kāi)還是不斷開(kāi)網(wǎng)絡(luò);在用戶交互界面可以直接看到當(dāng)前設(shè)備的安全狀態(tài)、活動(dòng)進(jìn)程、系統(tǒng)信息,也可以查看日志和關(guān)于防火墻操作方法的用戶幫助文檔;另外在操作功能中的規(guī)則策略之中,用戶可以自主的添加或刪除自己想要或不想要的規(guī)則;最后在安全咨詢那里可以鏈接到服務(wù)器主頁(yè)。 第三層的數(shù)據(jù)流圖是防火墻的子數(shù)據(jù)流圖,有多個(gè)。下面的是用戶主機(jī)設(shè)備跟外部設(shè)備進(jìn)行通信時(shí)的數(shù)據(jù)流圖,如下圖1.4所示。圖1.4第三層DFD圖——流量控制Fig1.4FigureofthirdlayerDFD-flowcontrol 幫助文檔信息數(shù)據(jù)流圖描述了用戶通過(guò)用戶交互界面查看以往日志記錄和防火墻使用幫助文檔,具體數(shù)據(jù)流圖如下圖1.5所示。圖1.5第三層DFD圖——幫助文檔信息Fig1.5FigureofthirdlayerDFD-helpdocumentation 系統(tǒng)基本信息顯示數(shù)據(jù)流圖描述了防火墻在運(yùn)行后,主動(dòng)獲取當(dāng)前系統(tǒng)的一些基本信息然后顯示在用戶交互界面當(dāng)中,以方便用戶進(jìn)行查看,如當(dāng)前系統(tǒng)所有運(yùn)行的進(jìn)程信息和進(jìn)程數(shù)、通過(guò)網(wǎng)絡(luò)接口的總流量以及當(dāng)前系統(tǒng)的安全狀態(tài)設(shè)置等,具體的數(shù)據(jù)流圖如下圖1.6所示。圖1.6第三層DFD圖——系統(tǒng)基本信息顯示Fig1.6FigureofthirdlayerDFD-Basicinformationdisplaysystem 流量監(jiān)測(cè)是將通過(guò)網(wǎng)卡的數(shù)據(jù)包進(jìn)行檢測(cè)分類(lèi),全部分為兩類(lèi):流入的數(shù)據(jù)包和傳出的數(shù)據(jù)包,根據(jù)流入的數(shù)據(jù)包的數(shù)量可以體現(xiàn)為接收速度;而傳送出去的數(shù)據(jù)包的數(shù)量可以體現(xiàn)為發(fā)送速度。這兩者合起來(lái)就是總流量了。具體的請(qǐng)看下圖1.7所示。圖1.7第三層DFD圖——流量監(jiān)測(cè)Fig1.7FigureofthirdlayerDFD-flowmonitor數(shù)據(jù)包更改就是將應(yīng)用層發(fā)送出去的數(shù)據(jù)包修改其里面的信息。如下圖1.8圖。圖1.8第三層DFD圖——數(shù)據(jù)包更改Fig1.8FigureofthirdlayerDFD-Datapackagechange=2\*CHINESENUM3二、需求分析(一)、系統(tǒng)需求規(guī)定1、對(duì)功能的規(guī)定 通過(guò)對(duì)本防火墻的分析,本防火墻主要的功能分為4大模塊:用戶交互程序、后臺(tái)進(jìn)程、服務(wù)器進(jìn)程和內(nèi)核模塊。用戶交互程序用戶交互程序主要是為了讓用戶有一個(gè)清晰、簡(jiǎn)潔的界面來(lái)操作防火墻,本模塊只要有防護(hù)設(shè)置、斷網(wǎng)設(shè)置、規(guī)則操作、用戶幫助、安全咨詢、系統(tǒng)信息顯示、安全狀態(tài)設(shè)置、日志、設(shè)置等功能;后臺(tái)進(jìn)程后臺(tái)進(jìn)程主要的功能是將防火墻檢測(cè)到的一些非法的IP信息保存到系統(tǒng)緩存中,防火墻會(huì)讀取該緩存中信息來(lái)攔截所有包含有這些非法信息的IP數(shù)據(jù)包,會(huì)直接將這些數(shù)據(jù)丟棄掉;服務(wù)器進(jìn)程服務(wù)器進(jìn)程的功能顯示服務(wù)器主頁(yè),用戶可以通過(guò)用戶交互界面中的安全咨詢進(jìn)行鏈接,服務(wù)器會(huì)將主頁(yè)發(fā)送并顯示在用戶交互界面;內(nèi)核模塊內(nèi)核模塊對(duì)用戶來(lái)說(shuō)透明的,它的功能有流量控制、數(shù)據(jù)包過(guò)濾、數(shù)據(jù)包攔截、通信、產(chǎn)生PROC文件。本系統(tǒng)的最頂層的矩形框代表防火墻的主控模塊,調(diào)用下層模塊以完成全部的基本功能;第二層的每個(gè)模塊控制完成防火墻的一個(gè)主要功能,如此實(shí)現(xiàn)自頂向下逐步求精,本防火墻的功能總圖如圖2.1所示:圖2.1防火墻功能總圖Fig2.1figureoffirewallfeaturesGeneralPlan 防火墻的功能總圖說(shuō)明了防火墻的模塊組成及其功能層次結(jié)構(gòu),下面使用IPO表來(lái)說(shuō)明模塊間的信息傳遞及模塊內(nèi)部的處理。表2.1用戶幫助的IPO表Tab2.1IPOofuserhelp系統(tǒng)名稱:輕量級(jí)Linux防火墻——流量控制、數(shù)據(jù)包更改模塊名:用戶幫助日期:2013-5-1模塊編號(hào):3.4上層調(diào)用模塊:用戶交互程序下層被調(diào)用的模塊:無(wú)輸入數(shù)據(jù):無(wú)輸出數(shù)據(jù):用戶幫助文檔處理:將用戶幫助文檔顯示到用戶交互界面表2.2數(shù)據(jù)包更改的IOP表Tab2.2IPOofSafetyAdvisory系統(tǒng)名稱:輕量級(jí)Linux防火墻——流量控制、數(shù)據(jù)包更改模塊名:數(shù)據(jù)包更改日期:2013-5-1模塊編號(hào):2.3上層調(diào)用模塊:內(nèi)核模塊下層被調(diào)用的模塊:無(wú)輸入數(shù)據(jù):應(yīng)用層發(fā)出的數(shù)據(jù)包輸出數(shù)據(jù):數(shù)據(jù)包處理:將應(yīng)用層發(fā)出的數(shù)據(jù)包進(jìn)行更改后再發(fā)送出去表2.3用戶設(shè)置的IPO表Tab2.3IPOofusersetting系統(tǒng)名稱:輕量級(jí)Linux防火墻——流量控制、數(shù)據(jù)包更改模塊名:設(shè)置日期:2013-5-1模塊編號(hào):3.9上層調(diào)用模塊:用戶交互程序下層被調(diào)用的模塊:無(wú)輸入數(shù)據(jù):無(wú)輸出數(shù)據(jù):寫(xiě)進(jìn)規(guī)則鏈處理:將用戶設(shè)置的信息保存到內(nèi)核規(guī)則鏈中表2.4流量監(jiān)測(cè)的IPO表Tab2.4IPOofaddrule系統(tǒng)名稱:輕量級(jí)Linux防火墻——流量控制、數(shù)據(jù)包更改模塊名:流量監(jiān)測(cè)日期:2013-5-1模塊編號(hào):3.7上層調(diào)用模塊:用戶交互程序下層被調(diào)用的模塊:無(wú)輸入數(shù)據(jù):通過(guò)網(wǎng)卡的數(shù)據(jù)包輸出數(shù)據(jù):接收速度、發(fā)送速度、總流量處理:將通過(guò)網(wǎng)卡的數(shù)據(jù)包整合成輸出信息需要的數(shù)據(jù)表2.5修改規(guī)則的IPO表Tab2.5IPOofmodifytherule系統(tǒng)名稱:輕量級(jí)Linux防火墻——流量控制、數(shù)據(jù)包更改模塊名:修改規(guī)則日期:2113-5-1模塊編號(hào):3.8.2上層調(diào)用模塊:規(guī)則操作下層被調(diào)用的模塊:無(wú)輸入數(shù)據(jù):無(wú)輸出數(shù)據(jù):用戶幫助文檔處理:將用戶幫助文檔顯示到用戶交互界面表2.6刪除規(guī)則的IPO表Tab2.6IPOofdeleterule系統(tǒng)名稱:輕量級(jí)Linux防火墻——流量控制、數(shù)據(jù)包更改模塊名:刪除規(guī)則日期:2113-5-1模塊編號(hào):3.8.2上層調(diào)用模塊:規(guī)則操作下層被調(diào)用的模塊:無(wú)輸入數(shù)據(jù):無(wú)輸出數(shù)據(jù):無(wú)處理:將用戶選擇刪除的規(guī)則從內(nèi)核的規(guī)則鏈中刪除表2.7系統(tǒng)信息的IPO表Tab2.7IPOofTotalflow系統(tǒng)名稱:輕量級(jí)Linux防火墻——流量控制、數(shù)據(jù)包更改模塊名:總流量日期:2113-5-1模塊編號(hào):3.7上層調(diào)用模塊:用戶交互程序下層被調(diào)用的模塊:無(wú)輸入數(shù)據(jù):無(wú)輸出數(shù)據(jù):數(shù)據(jù)包總數(shù)處理:把通過(guò)網(wǎng)卡的數(shù)據(jù)包整合成流量顯示到用戶交互界面2、對(duì)性能的規(guī)定(1)靈活性 本防火墻是在Linux操作系統(tǒng)下開(kāi)發(fā)出來(lái)的軟件,所以本軟件能在任何版本的Linux操作系統(tǒng)中運(yùn)行,不會(huì)因?yàn)橄到y(tǒng)的環(huán)境發(fā)生改變而無(wú)法運(yùn)行。唯一跟防火墻比較密切相關(guān)的接口就是網(wǎng)卡了,但是不會(huì)因?yàn)榫W(wǎng)卡的改變而使得防火墻崩潰或者是出現(xiàn)錯(cuò)誤?!灸憧梢杂星蟊赜矄帷扛舯诶贤醵际窃趺磥?lái)的如果你真的雄風(fēng)依舊她又怎會(huì)另謀高就做真正男人就要有求必硬老中醫(yī)魏亻言:msdf003,讓你有求必硬3、其他的專(zhuān)門(mén)要求(1)軟件并行處理能力 本防火墻軟件能夠支持多模塊同時(shí)運(yùn)行,而且一般情況下就有兩個(gè)模塊或者兩個(gè)以上處于同時(shí)運(yùn)行中,比如內(nèi)核模塊和后臺(tái)進(jìn)程是防火墻開(kāi)始運(yùn)行時(shí)就已經(jīng)同時(shí)運(yùn)行了,只有在防火墻停止運(yùn)行時(shí)而停止運(yùn)行。(2)軟件可靠性 防火墻的可靠性體現(xiàn)在了過(guò)濾規(guī)則上,本防火墻的規(guī)則鏈可以過(guò)濾或者攔截通過(guò)TCP協(xié)議、UDP協(xié)議或ICMP協(xié)議發(fā)送過(guò)來(lái)的數(shù)據(jù)包。(3)對(duì)使用方便的要求 本防火墻擁有一個(gè)清晰、簡(jiǎn)潔的用戶交互界面,可以大大方便用戶進(jìn)行操作,而且還包含了使用幫助文檔。(4)軟件適應(yīng)性本軟件兼容各種版本的Linux操作系統(tǒng)。(5)軟件安全性本軟件擁有可靠的安全措施,對(duì)系統(tǒng)的防護(hù)性高。(二)、系統(tǒng)運(yùn)行環(huán)境的規(guī)定1、硬件及其他設(shè)備 為了保證防火墻運(yùn)行的高效性和可靠性,客戶端應(yīng)具有一定的軟硬件配置,而服務(wù)器只提供主頁(yè)鏈接,因此對(duì)服務(wù)器的要求不是很高。 服務(wù)器端配置要求:有上網(wǎng)功能的計(jì)算機(jī)就行,提供一個(gè)連接主頁(yè)的鏈接。客戶端配置要求:2.0GHz以上雙核CPU,1GB以上物理內(nèi)存,40GBSATA接口硬盤(pán);集成的千兆以太網(wǎng)卡;操作系統(tǒng):最好是內(nèi)核在3.5.2以上版本的Linux操作系統(tǒng)就可以了。2、支持軟件 操作系統(tǒng):Linux(最好是內(nèi)核在3.5.2以上的版本) 開(kāi)發(fā)語(yǔ)言:C語(yǔ)言[3][7]和C++ 編程軟件:版本是4.7.2或以上的QT3、語(yǔ)言版本 簡(jiǎn)體中文版4、顯示參數(shù) 分辨率:1024×768;色彩:256色以上=3\*CHINESENUM3三、概要設(shè)計(jì)(一)、系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)1、數(shù)據(jù)的邏輯描述 對(duì)于本防火墻中編程人員新建的部分?jǐn)?shù)據(jù)元素[7]描述如下:函數(shù)或結(jié)構(gòu)名數(shù)據(jù)元素名數(shù)據(jù)類(lèi)型數(shù)據(jù)描述netlink_informationseqint序列號(hào)addr_schar[20]源地址port_sint源端口addr_dchar[20]目的地址port_dint目的端口stchar[8]連接狀態(tài)nettypesnettype鏈接協(xié)議nettypeUDP0UDP協(xié)議TCP1TCP協(xié)議NR_LINK2未知的協(xié)議sock_inode_pid_pathinode_t__ino_t[]結(jié)點(diǎn)數(shù)組nr_sockint打開(kāi)的socket數(shù)cmd_tchar[256]命令路徑pidint進(jìn)程的pid值chain_nodefw_iotypetypeio出站還是進(jìn)站chain_node_tlist_head規(guī)則鏈鏈表結(jié)點(diǎn)destuint16_t目的端口號(hào)protocol__u8協(xié)議類(lèi)型levellevels安全級(jí)別typeioFW_OUT0出站FW_IN1進(jìn)站FW_IOTYPE2未知levelsSAFE0安全DANGER1不安全OPTION2安全級(jí)別由防火墻決定LEVELNUM3安全級(jí)別fw_chain_listchain_listlist_head鏈表頭,組成規(guī)則鏈chain_lockrwlock_t讀寫(xiě)鎖isallowchangedateint是否允許更改數(shù)據(jù)包list_lenint規(guī)則鏈條數(shù)fw_icmp_matchicmp_mach_type__u8icmp包類(lèi)型filterbool是否過(guò)濾這種icmp類(lèi)型的數(shù)據(jù)包itoanumint參數(shù)pidchar參數(shù),進(jìn)程pidMAX_PATH1024路徑的最大長(zhǎng)度MAX_SOCKET_NR1024最大的socket數(shù)MAX_PID32768最大的pid值MAX_CMD32命令的最大長(zhǎng)度IPPROTO_ICMP11ICMP協(xié)議IPPROTO_IGMP12IGMP協(xié)議IPPROTO_TCP16TCP協(xié)議IPPROTO_EGP18EGP協(xié)議IPPROTO_PUP112PUP協(xié)議IPPROTO_UDP117UDP協(xié)議IPPROTO_IDP122IDP協(xié)議IPPROTO_DCCP133DCCP協(xié)議IPPROTO_RSVP146RSVP協(xié)議圖3.1總的數(shù)據(jù)元素Fig3.1Figureoftotaldataelement(1)、靜態(tài)數(shù)據(jù)數(shù)據(jù)元素名數(shù)據(jù)類(lèi)型數(shù)據(jù)描述UDP0UDP協(xié)議TCP1TCP協(xié)議NR_LINK2未知的協(xié)議FW_OUT0出站FW_IN1進(jìn)站FW_IOTYPE2未知SAFE0安全DANGER1不安全OPTION2安全級(jí)別由防火墻決定LEVELNUM3安全級(jí)別MAX_PATH1024路徑的最大長(zhǎng)度MAX_SOCKET_NR1024最大的socket數(shù)MAX_PID32768最大的pid值MAX_CMD32命令的最大長(zhǎng)度IPPROTO_IP10IPPROTO_ICMP11ICMP協(xié)議IPPROTO_IGMP12IGMP協(xié)議IPPROTO_TCP16TCP協(xié)議IPPROTO_EGP18EGP協(xié)議IPPROTO_PUP112PUP協(xié)議IPPROTO_UDP117UDP協(xié)議IPPROTO_IDP122IDP協(xié)議IPPROTO_DCCP133DCCP協(xié)議IPPROTO_RSVP146RSVP協(xié)議IPPROTO_GRE147GRE協(xié)議圖3.2靜態(tài)數(shù)據(jù)Fig3.1Figureofstaticdataelement(2)、動(dòng)態(tài)輸入數(shù)據(jù)數(shù)據(jù)元素名數(shù)據(jù)類(lèi)型數(shù)據(jù)描述seqint序列號(hào)addr_schar[20]源地址port_sint源端口addr_dchar[20]目的地址port_dint目的端口stchar[8]連接狀態(tài)nettypesnettype鏈接協(xié)議fw_iotypetypeio出站還是進(jìn)站chain_node_tlist_head規(guī)則鏈鏈表結(jié)點(diǎn)destuint16_t目的端口號(hào)protocol__u8協(xié)議類(lèi)型levellevels安全級(jí)別通過(guò)網(wǎng)卡流入的數(shù)據(jù)包sk_buff圖3.3動(dòng)態(tài)輸入數(shù)據(jù)Fig3.1Figureoftrendsinputdata(3)、動(dòng)態(tài)輸出數(shù)據(jù) 動(dòng)態(tài)輸出的數(shù)據(jù)有兩種:一是發(fā)送出去的數(shù)據(jù)包;二是產(chǎn)生proc文件、規(guī)則鏈文件、用戶設(shè)置文件、日志文件和配置文件。(4)、內(nèi)部生成數(shù)據(jù) 內(nèi)部生成的數(shù)據(jù)就是產(chǎn)生proc文件、規(guī)則鏈文件、用戶設(shè)置文件、日志文件和配置文件。(5)、數(shù)據(jù)約定 必須進(jìn)行數(shù)據(jù)約定的數(shù)據(jù)元素有以下這些:端口號(hào),數(shù)據(jù)類(lèi)型為int,值域?yàn)?~65535,超過(guò)范圍發(fā)出錯(cuò)誤信息;進(jìn)程pid,數(shù)據(jù)類(lèi)型為int,值域?yàn)?~32768,超過(guò)范圍發(fā)出錯(cuò)誤信息;IP地址,數(shù)據(jù)類(lèi)型為char*,值域?yàn)?.0.0.0~255.255.255.255,超過(guò)范圍發(fā)出錯(cuò)誤信息;連接的socket數(shù),數(shù)據(jù)類(lèi)型為int,值域?yàn)?~1024,超過(guò)范圍連接無(wú)效并發(fā)出錯(cuò)誤信息;四、詳細(xì)設(shè)計(jì)(一)、程序系統(tǒng)的結(jié)構(gòu)1、系統(tǒng)模塊層次結(jié)構(gòu) 根據(jù)前面軟件需求的分析,將本防火墻分成4大模塊:內(nèi)核模塊、用戶交互程序、后臺(tái)進(jìn)程和服務(wù)器,每個(gè)模塊名稱及其程序?qū)哟谓Y(jié)構(gòu)如下表4.1所示。表4.1程序?qū)哟谓Y(jié)構(gòu)表Tab4.1tableofprocesshierarchystructure模塊名稱程序?qū)哟谓Y(jié)構(gòu)內(nèi)核模塊圖4.1用戶交互程序模塊圖4.2、圖4.3(1)、內(nèi)核模塊圖4.1內(nèi)核模塊層次結(jié)構(gòu)圖Fig4.1FigureofKernelmoduleHierarchicalStructure(2)、用戶交互程序模塊圖4.2用戶交互程序模塊層次結(jié)構(gòu)圖Fig4.2FigureofUserinteractionprogrammodulesHierarchicalStructure(二)、程序模塊設(shè)計(jì)說(shuō)明1、流量控制模塊(1)、模塊描述 主機(jī)在與外部設(shè)置進(jìn)行通信時(shí),防火墻需要對(duì)雙方通信中傳遞的數(shù)據(jù)進(jìn)行控制和檢測(cè),只有合法正確的數(shù)據(jù)才會(huì)接收以及發(fā)送,而不合法的數(shù)據(jù)會(huì)直接丟棄掉。(2)、模塊功能圖4.3流量控制模塊IPO圖Fig4.3IPOofFlowcontrolmodule(3)、模塊輸入項(xiàng)表4.2模塊輸入項(xiàng)Tab4.2tableofModuleinput輸入項(xiàng)名稱標(biāo)識(shí)類(lèi)型格式有效范圍輸入方式數(shù)據(jù)來(lái)源數(shù)據(jù)包skbsk_buffIP數(shù)據(jù)報(bào)20-65535被動(dòng)輸入外部設(shè)備數(shù)據(jù)包skbsk_buffIP數(shù)據(jù)報(bào)20-65535被動(dòng)輸入應(yīng)用層(4)、模塊輸出項(xiàng)表4.3模塊輸出項(xiàng)Tab4.3tableofModuleoutput輸出項(xiàng)名稱標(biāo)識(shí)類(lèi)型格式有效范圍輸出方式數(shù)據(jù)來(lái)源數(shù)據(jù)包skbsk_buffIP數(shù)據(jù)報(bào)20-65535主動(dòng)輸出應(yīng)用層數(shù)據(jù)包skbsk_buffIP數(shù)據(jù)報(bào)20-65535主動(dòng)輸出外部設(shè)備(5)、模塊流程邏輯圖4.4流量控制流程圖Fig4.4FigureofFlowcontrolflowchart(6)、模塊接口表4.4模塊接口Tab4.4tableofModuleinterface上層模塊內(nèi)核模塊下層模塊無(wú)2、幫助模塊(1)、模塊描述 用戶在運(yùn)行防火墻后,如果是對(duì)防火墻的操作感到有些不了解的話,就可以查看用戶幫助文檔了,幫助文檔里的內(nèi)容就是對(duì)防火墻操作方法的說(shuō)明。(2)、模塊功能圖4.5幫助模塊IPO圖Fig4.5IPOofhelpmodule(3)、模塊輸入項(xiàng)表4.5幫助模塊輸入項(xiàng)Tab4.5tableofhelpmoduleinput輸入項(xiàng)名稱標(biāo)識(shí)類(lèi)型格式有效范圍輸入方式數(shù)據(jù)來(lái)源鼠標(biāo)點(diǎn)擊事件流eventQMouseEvent——鼠標(biāo)左鍵手動(dòng)點(diǎn)擊鼠標(biāo)點(diǎn)擊(4)、模塊輸出項(xiàng)表4.6幫助模塊輸出項(xiàng)Tab4.6tableofhelpmoduleoutput輸出項(xiàng)名稱標(biāo)識(shí)類(lèi)型格式有效范圍輸出方式數(shù)據(jù)來(lái)源幫助文檔——圖片————自動(dòng)輸出幫助文檔(5)、模塊流程邏輯圖4.6幫助模塊流程圖Fig4.6FigureofHelpmoduleflowchart(6)模塊接口表4.7幫助模塊接口Tab4.7tableofHelpModuleinterface上層模塊用戶交互程序模塊下層模塊無(wú)3、系統(tǒng)信息模塊(1)、模塊描述 系統(tǒng)信息顯示的是當(dāng)前系統(tǒng)處于活動(dòng)狀態(tài)的進(jìn)程信息。(2)、模塊功能圖4.7系統(tǒng)信息模塊IPO圖Fig4.7IPOofsysteminformationmodule(3)模塊輸出項(xiàng)表4.8規(guī)則操作模塊輸出項(xiàng)Tab4.8tableofRuleoperationmoduleoutput輸出項(xiàng)名稱標(biāo)識(shí)類(lèi)型格式有效范圍輸出方式數(shù)據(jù)來(lái)源進(jìn)程名namechar[32]——0-32字節(jié)自動(dòng)輸出——本地IPs_ipchar[16]——0-16位自動(dòng)輸出——本地端口號(hào)s_portint——0-65535自動(dòng)輸出——遠(yuǎn)程IPd_ipchar[16]——0-16位自動(dòng)輸出——遠(yuǎn)程端口號(hào)d_portint——0-65535自動(dòng)輸出——協(xié)議名protocolchar————自動(dòng)輸出——安全級(jí)別levelint————自動(dòng)輸出——(4)、模塊流程邏輯圖4.8系統(tǒng)信息流程圖Fig4.8FigureofSysteminformation(5)、模塊接口表4.9系統(tǒng)信息模塊接口Tab4.9tableofRuleoperationModuleinterface上層模塊用戶交互程序模塊下層模塊無(wú)4、流量監(jiān)測(cè)模塊(1)、模塊描述 在用戶交互界面的最下面有一個(gè)面板顯示通過(guò)網(wǎng)卡時(shí)的流量速度,以及總量,這可以方便用戶知道自己使用的流量是多少。(2)、模塊功能圖4.9流量監(jiān)測(cè)模塊的IPO圖Fig4.9IPOofflowmonitormodule(3)、模塊輸出項(xiàng)表4.10流量監(jiān)測(cè)模塊輸出項(xiàng)Tab4.10tableofFlowmonitormoduleoutput輸出項(xiàng)名稱標(biāo)識(shí)類(lèi)型格式有效范圍輸出方式數(shù)據(jù)來(lái)源接收速度newtratelong——32位內(nèi)核輸出網(wǎng)卡發(fā)送速度newrratelong——32位內(nèi)核輸出網(wǎng)卡總流量totleStreamlong——32位內(nèi)核輸出網(wǎng)卡(4)、模塊流程邏輯圖4.10流量監(jiān)測(cè)模塊流程圖Fig4.10FigureofFlowmonitorflowchart(5)模塊接口表4.11流量監(jiān)測(cè)模塊接口Tab4.11tableofFlowmonitormoduleinterface上層模塊用戶交互程序模塊下層模塊無(wú)5、用戶設(shè)置模塊(1)、模塊描述 本模塊是給用戶設(shè)置防火墻所用,里面有多種設(shè)置項(xiàng),這里就不多說(shuō)了。(2)、模塊功能圖4.11用戶設(shè)置模塊IPO圖Fig4.11IPOofusersettingmodule(3)模塊流程邏輯圖4.12用戶設(shè)置流程圖Fi

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論