[發(fā)明專利]一種基于網(wǎng)絡(luò)過濾器的內(nèi)容過濾網(wǎng)關(guān)實(shí)現(xiàn)方法無效
| 申請(qǐng)?zhí)枺?/td> | 200710100331.2 | 申請(qǐng)日: | 2007-06-08 |
| 公開(公告)號(hào): | CN101068229A | 公開(公告)日: | 2007-11-07 |
| 發(fā)明(設(shè)計(jì))人: | 張建標(biāo);孫鴻斌;艾蓉;張正國(guó) | 申請(qǐng)(專利權(quán))人: | 北京工業(yè)大學(xué) |
| 主分類號(hào): | H04L12/66 | 分類號(hào): | H04L12/66;H04L12/56 |
| 代理公司: | 北京思海天達(dá)知識(shí)產(chǎn)權(quán)代理有限公司 | 代理人: | 樓艮基 |
| 地址: | 100022*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 網(wǎng)絡(luò) 過濾器 內(nèi)容 過濾 網(wǎng)關(guān) 實(shí)現(xiàn) 方法 | ||
1、一種基于網(wǎng)絡(luò)過濾器的內(nèi)容過濾網(wǎng)關(guān)實(shí)現(xiàn)方法,其特征在于,該方法用一個(gè)內(nèi)容過濾網(wǎng)關(guān)透明的串聯(lián)在網(wǎng)絡(luò)邊界,以無IP方式,在網(wǎng)絡(luò)層來過濾所有出入局域網(wǎng)的數(shù)據(jù),所述內(nèi)容過濾網(wǎng)關(guān)運(yùn)行Linux?kernel?2.4操作系統(tǒng),安裝雙網(wǎng)卡,每塊網(wǎng)卡都設(shè)置為混雜模式,使用brctl配置兩塊網(wǎng)卡為網(wǎng)橋來實(shí)現(xiàn)透明串聯(lián)在網(wǎng)絡(luò)邊界上,所述內(nèi)容過濾網(wǎng)關(guān)依次按以下步驟來實(shí)現(xiàn)內(nèi)容過濾:
步驟1,初始化:
在所述內(nèi)容過濾網(wǎng)關(guān)中設(shè)有:
數(shù)據(jù)包捕獲模塊,數(shù)據(jù)包處理模塊,以及數(shù)據(jù)包轉(zhuǎn)發(fā)模塊,這些模塊工作在Linux系統(tǒng)的內(nèi)核態(tài),還設(shè)有內(nèi)容分析模塊,工作在用戶態(tài);在所述這些模塊中:
數(shù)據(jù)包捕獲模塊,注冊(cè)了設(shè)定的過濾函數(shù),對(duì)于那些需要轉(zhuǎn)發(fā)的數(shù)據(jù)包,送往數(shù)據(jù)包轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā),對(duì)于需要進(jìn)行內(nèi)容過濾的數(shù)據(jù)包,則送往數(shù)據(jù)包處理模塊;
數(shù)據(jù)包處理模塊,對(duì)數(shù)據(jù)包捕獲模塊發(fā)來的需要進(jìn)行內(nèi)容分析的TCP數(shù)據(jù)包,首先按序號(hào)順序在緩沖區(qū)中緩存,當(dāng)捕獲到一條連接的所有數(shù)據(jù)包時(shí),還原出該連接的應(yīng)用層數(shù)據(jù)內(nèi)容,交給工作在用戶態(tài)的內(nèi)容分析模塊進(jìn)行分析,合法就交給數(shù)據(jù)包轉(zhuǎn)發(fā)模塊依次轉(zhuǎn)發(fā)該連接的所有數(shù)據(jù)包,不合法就阻斷該連接,其處理步驟依次如下:
處理步驟(1):為每個(gè)數(shù)據(jù)包建立一個(gè)索引節(jié)點(diǎn)結(jié)構(gòu),結(jié)構(gòu)包括三項(xiàng):該包的套接字緩沖區(qū)指針、該包的序號(hào)、指向下一個(gè)數(shù)據(jù)包索引節(jié)點(diǎn)結(jié)構(gòu)的指針,為一條TCP連接的第一個(gè)數(shù)據(jù)包建立索引節(jié)點(diǎn)頭結(jié)構(gòu),作為該條TCP連接的標(biāo)志,該索引節(jié)點(diǎn)頭結(jié)構(gòu)包括:該包的套接字緩沖區(qū)指針、該包的序號(hào)、源IP地址,目的IP地址,源端口,目的端口、指向下一個(gè)數(shù)據(jù)包索引節(jié)點(diǎn)結(jié)構(gòu)的指針,再構(gòu)造一個(gè)數(shù)據(jù)包索引數(shù)組,數(shù)組中每一項(xiàng)存儲(chǔ)一個(gè)指向索引節(jié)點(diǎn)頭結(jié)構(gòu)的指針,這樣所有數(shù)據(jù)包的索引由一個(gè)二維鏈表來維護(hù),橫向存儲(chǔ)同一個(gè)TCP連接的數(shù)據(jù)包索引,縱向存儲(chǔ)不同連接的數(shù)據(jù)包索引,設(shè)定所述數(shù)據(jù)包索引數(shù)組每一項(xiàng)初始化為0,把數(shù)據(jù)包索引插入二維鏈表中;
處理步驟(2):當(dāng)TCP數(shù)據(jù)包到來時(shí),判斷數(shù)據(jù)包的數(shù)據(jù)長(zhǎng)度是否為0,若為0,檢查數(shù)據(jù)包的Fin標(biāo)志位是否為1,F(xiàn)in標(biāo)志位是TCP連接結(jié)束標(biāo)志,若不為1,就將該包轉(zhuǎn)發(fā);若為1,則表明該數(shù)據(jù)包所屬TCP連接已經(jīng)結(jié)束,對(duì)該連接進(jìn)行內(nèi)容還原;若數(shù)據(jù)包的數(shù)據(jù)長(zhǎng)度不為0,則需要將該數(shù)據(jù)包的索引節(jié)點(diǎn)插入二維鏈表中;
處理步驟(3):判斷數(shù)據(jù)包索引數(shù)組第一個(gè)元素是否為0,如果為0,則為該數(shù)據(jù)包創(chuàng)建索引節(jié)點(diǎn)頭結(jié)構(gòu),作為第一條連接的第一個(gè)數(shù)據(jù)包插入二維鏈表;如果不為0,判斷該數(shù)據(jù)包是否屬于該連接,根據(jù)源IP地址,目的IP地址,源端口,目的端口這四項(xiàng)唯一確定一條連接,如果不屬于該連接,則依次和數(shù)組其他元素比較,直到找到所屬連接或找到一項(xiàng)數(shù)組元素為0,如果數(shù)組元素為0,則為該數(shù)據(jù)包創(chuàng)建索引節(jié)點(diǎn)頭結(jié)構(gòu),作為新的一條連接的第一個(gè)數(shù)據(jù)包插入二維鏈表,如果找到了所屬連接,判斷是否為第一個(gè)數(shù)據(jù)包,如果是,創(chuàng)建索引節(jié)點(diǎn)頭結(jié)構(gòu),插入該連接第一個(gè)位置;如果不是,創(chuàng)建索引節(jié)點(diǎn)結(jié)構(gòu)按TCP序號(hào)插入正確位置,并保存該連接的頭指針,最后判斷該數(shù)據(jù)包Fin標(biāo)志位是否為1,如果不為1,利用網(wǎng)絡(luò)過濾器Netfilter框架標(biāo)準(zhǔn)返回值NF_STOLEN,告訴操作系統(tǒng)協(xié)議棧不再對(duì)該數(shù)據(jù)包進(jìn)行處理;如果為1,對(duì)該數(shù)據(jù)包所屬連接進(jìn)行內(nèi)容還原;
處理步驟(4):判斷是否已經(jīng)得到待內(nèi)容還原連接的頭指針,如果沒有,在數(shù)組中找到該連接;如果已經(jīng)得到,就依次取出該連接每個(gè)數(shù)據(jù)包的應(yīng)用層數(shù)據(jù),放入共享緩沖區(qū)中;
內(nèi)容分析模塊,管理員指定關(guān)鍵詞,及每個(gè)關(guān)鍵詞的權(quán)重,并設(shè)定所有連接共同服從的最大權(quán)重,在收到數(shù)據(jù)包處理模塊發(fā)來的內(nèi)容分析請(qǐng)求后,從所述共享緩沖區(qū)中,讀出該條連接的應(yīng)用層數(shù)據(jù),通過QS-DFSA算法,即反向有限自動(dòng)機(jī)計(jì)算步長(zhǎng)字符串匹配算法統(tǒng)計(jì)每個(gè)設(shè)定關(guān)鍵詞的出現(xiàn)次數(shù),計(jì)算每個(gè)關(guān)鍵詞權(quán)重和出現(xiàn)次數(shù)的乘積,再相加求和,得到該連接的權(quán)重,再將該連接的權(quán)重與管理員設(shè)定的所有連接共同服從的過濾最大權(quán)重相比較,超過最大權(quán)重就認(rèn)為不合法,否則就是合法;
步驟2,依次按以下步驟進(jìn)行數(shù)據(jù)包內(nèi)容過濾:
步驟2.1:數(shù)據(jù)包捕獲模塊在收到網(wǎng)絡(luò)發(fā)來的TCP數(shù)據(jù)包以后,根據(jù)源IP地址,目的IP地址,源端口,目的端口,協(xié)議類型,對(duì)于需要轉(zhuǎn)發(fā)的數(shù)據(jù)包,則發(fā)送到數(shù)據(jù)包轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā);對(duì)需要進(jìn)行內(nèi)容過濾的數(shù)據(jù)包,發(fā)送到數(shù)據(jù)包處理模塊處理;
步驟2.2:數(shù)據(jù)包處理模塊在收到需要進(jìn)行內(nèi)容過濾的TCP數(shù)據(jù)包后,按所述數(shù)據(jù)包處理步驟進(jìn)行處理,當(dāng)一條連接結(jié)束后就還原出該條連接的數(shù)據(jù),放入共享緩沖區(qū)中,并通知內(nèi)容分析模塊去共享緩沖區(qū)讀數(shù)據(jù);
步驟2.3:內(nèi)容分析模塊在收到數(shù)據(jù)包處理模塊通知后,從共享緩沖區(qū)中讀數(shù)據(jù)進(jìn)行分析,并將結(jié)果返回給數(shù)據(jù)包處理模塊;
步驟2.4:數(shù)據(jù)包處理模塊阻斷非法連接;對(duì)于合法連接交給數(shù)據(jù)包轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京工業(yè)大學(xué),未經(jīng)北京工業(yè)大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200710100331.2/1.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 網(wǎng)絡(luò)和網(wǎng)絡(luò)終端
- 網(wǎng)絡(luò)DNA
- 網(wǎng)絡(luò)地址自適應(yīng)系統(tǒng)和方法及應(yīng)用系統(tǒng)和方法
- 網(wǎng)絡(luò)系統(tǒng)及網(wǎng)絡(luò)至網(wǎng)絡(luò)橋接器
- 一種電力線網(wǎng)絡(luò)中根節(jié)點(diǎn)網(wǎng)絡(luò)協(xié)調(diào)方法和系統(tǒng)
- 一種多網(wǎng)絡(luò)定位方法、存儲(chǔ)介質(zhì)及移動(dòng)終端
- 網(wǎng)絡(luò)裝置、網(wǎng)絡(luò)系統(tǒng)、網(wǎng)絡(luò)方法以及網(wǎng)絡(luò)程序
- 從重復(fù)網(wǎng)絡(luò)地址自動(dòng)恢復(fù)的方法、網(wǎng)絡(luò)設(shè)備及其存儲(chǔ)介質(zhì)
- 神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法、裝置及存儲(chǔ)介質(zhì)
- 網(wǎng)絡(luò)管理方法和裝置
- 內(nèi)容再現(xiàn)系統(tǒng)、內(nèi)容提供方法、內(nèi)容再現(xiàn)裝置、內(nèi)容提供裝置、內(nèi)容再現(xiàn)程序和內(nèi)容提供程序
- 內(nèi)容記錄系統(tǒng)、內(nèi)容記錄方法、內(nèi)容記錄設(shè)備和內(nèi)容接收設(shè)備
- 內(nèi)容服務(wù)系統(tǒng)、內(nèi)容服務(wù)器、內(nèi)容終端及內(nèi)容服務(wù)方法
- 內(nèi)容分發(fā)系統(tǒng)、內(nèi)容分發(fā)裝置、內(nèi)容再生終端及內(nèi)容分發(fā)方法
- 內(nèi)容發(fā)布、內(nèi)容獲取的方法、內(nèi)容發(fā)布裝置及內(nèi)容傳播系統(tǒng)
- 內(nèi)容提供裝置、內(nèi)容提供方法、內(nèi)容再現(xiàn)裝置、內(nèi)容再現(xiàn)方法
- 內(nèi)容傳輸設(shè)備、內(nèi)容傳輸方法、內(nèi)容再現(xiàn)設(shè)備、內(nèi)容再現(xiàn)方法、程序及內(nèi)容分發(fā)系統(tǒng)
- 內(nèi)容發(fā)送設(shè)備、內(nèi)容發(fā)送方法、內(nèi)容再現(xiàn)設(shè)備、內(nèi)容再現(xiàn)方法、程序及內(nèi)容分發(fā)系統(tǒng)
- 內(nèi)容再現(xiàn)裝置、內(nèi)容再現(xiàn)方法、內(nèi)容再現(xiàn)程序及內(nèi)容提供系統(tǒng)
- 內(nèi)容記錄裝置、內(nèi)容編輯裝置、內(nèi)容再生裝置、內(nèi)容記錄方法、內(nèi)容編輯方法、以及內(nèi)容再生方法





