專利名稱:一種tcp連接淘汰方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)安全領(lǐng)域。具體涉及一種TCP連接淘汰方法。
背景技術(shù):
隨著網(wǎng)絡(luò)的飛速發(fā)展,網(wǎng)絡(luò)環(huán)境越來越復(fù)雜,在網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)越難保證其原始順序,為了能對上層應(yīng)用進(jìn)行有效的分析,同時(shí)保證響應(yīng)主干網(wǎng)上數(shù)據(jù)流的速度,TCP卸載技術(shù)日益普及。由于系統(tǒng)資源的限制,如物理內(nèi)存等。支持的TCP并發(fā)連接數(shù)也有限,在高速的網(wǎng)絡(luò)環(huán)境下,必然存在著較大的TCP并發(fā)連接數(shù),也就存在著TCP連接的淘汰問題。 TCP連接的淘汰主要包含兩個(gè)步驟,TCP連接的淘汰策略和檢索。其中檢索占有主要的時(shí)間復(fù)雜度,傳統(tǒng)的方法是對TCP連接按照建立的順序進(jìn)行存儲,檢索時(shí)對所有鏈接進(jìn)行遍歷。 在并發(fā)連接較大的情況下,順序檢索效率很低,時(shí)間復(fù)雜讀為0(n),η為TCP并發(fā)連接的長度。因此,為了提高效率,并發(fā)連接數(shù)較大的系統(tǒng),一般采用hash鏈表進(jìn)行存儲,每個(gè)hash 項(xiàng)連接一個(gè)沖突鏈,進(jìn)行檢索時(shí)可以采用hash方法,時(shí)間復(fù)雜度為沖突鏈長度。在這種機(jī)制行。淘汰策略一般使用最久未使用的淘汰的方法。專利號CN200580011566. 3 (提供協(xié)議以實(shí)現(xiàn)使用拆分式TCP連接的無線TCP會話的方法和裝置)公開了一種方法和系統(tǒng),該系統(tǒng)根據(jù)該方法操作用以經(jīng)由無線網(wǎng)絡(luò)和因特網(wǎng)在MS與端點(diǎn)目的地之間設(shè)立TCP會話。該方法包括將拆分式TCP連接請求從該MS發(fā)送到位于該網(wǎng)絡(luò)中的PEP,其中該拆分式TCP連接請求包括用于對該MS的網(wǎng)絡(luò)地址和該端點(diǎn)目的地的網(wǎng)絡(luò)地址進(jìn)行標(biāo)識的信息。該方法還包括響應(yīng)于從該MS接收該拆分式TCP連接請求,建立拆分式TCP連接,該拆分式TCP連接包括在該MS與該P(yáng)EP之間的無線TCP (WTCP) 連接和在該P(yáng)EP與該端點(diǎn)目的地之間的至少部分途中的TCP連接。在一個(gè)實(shí)施例中,該端點(diǎn)目的地是耦合到因特網(wǎng)的應(yīng)用服務(wù)器,而該TCP連接在該P(yáng)EP與該應(yīng)用服務(wù)器之間建立。 在另一實(shí)施例中,該端點(diǎn)目的地是在第二無線網(wǎng)絡(luò)中耦合到第二 PEP的第二 MS,而該TCP 連接至少建立到該第二 PEP,然后從該第二 PEP到該第二 MS為WTCP連接。專利號CN200610066008. 3 ( 一種TCP連接的合并方法)公開了一種TCP連接的合并方法,其特征包括:A、第一、第二從設(shè)備分別向主設(shè)備發(fā)出建立TCP連接請求,主設(shè)備采用哄騙方式立即發(fā)送確認(rèn)消息給第一、第二從設(shè)備,在主設(shè)備不啟動TCP處理流程情況下, 第一、第二從設(shè)備分別與主設(shè)備建立TCP連接TCP I,TCP II ;B、在主設(shè)備上建立該兩個(gè)TCP 連接TCP I, TCP II的對應(yīng)關(guān)系;C、第一、第二從設(shè)備通過主設(shè)備轉(zhuǎn)發(fā)進(jìn)行數(shù)據(jù)傳輸。采用本發(fā)明的TCP連接的合并方法,由于中間節(jié)點(diǎn)不用處理復(fù)雜的TCP協(xié)議和狀態(tài)機(jī),大大降低中間節(jié)點(diǎn)的處理負(fù)荷??刹捎镁W(wǎng)絡(luò)處理器或硬件邏輯實(shí)現(xiàn)高速轉(zhuǎn)發(fā),將兩條以上TCP連接的合并從而實(shí)現(xiàn)端到端的可靠傳輸?,F(xiàn)有技術(shù)的缺點(diǎn)是采用最久沒使用的方法淘汰TCP連接,有可能淘汰前段非?;钴S,但由于網(wǎng)絡(luò)原因數(shù)據(jù)隔了一段時(shí)間沒有到達(dá)的連接。同時(shí)在synfIood攻擊時(shí),很容易把有效的TCP連接淘汰掉。
發(fā)明內(nèi)容
本發(fā)明克服現(xiàn)有技術(shù)不足,通過調(diào)整TCP連接的淘汰策略,保證活躍節(jié)點(diǎn)被保持, 刪最少,最久沒有使用的連接節(jié)點(diǎn),一定程度上能防止synflood攻擊。本發(fā)明提供一種TCP連接淘汰方法,通過使用hash高效的存儲和檢索,建立有效的TCP連接淘汰機(jī)制,始終淘汰訪問次數(shù)最少,最久沒有使用的TCP連接。本發(fā)明提供的TCP連接淘汰方法,包括如下步驟1)初始化并發(fā)連接表;2)接收syn,reset數(shù)據(jù)包,根據(jù)四元組查找并發(fā)鏈接表,轉(zhuǎn)步驟5 ;3)接收syn ack或ack數(shù)據(jù)包,轉(zhuǎn)步驟8 ;4)接收fin或fin ack數(shù)據(jù)包,轉(zhuǎn)步驟9 ;5)查找成功,則為重傳的syn包,丟棄;查找失敗,則查看最大并發(fā)連接數(shù)是否大于閾值,小于則轉(zhuǎn)步驟6,否則轉(zhuǎn)步驟7。6)查找調(diào)用次數(shù)最少,最久沒訪問的連接節(jié)點(diǎn)進(jìn)行淘汰;7)新建并發(fā)連接項(xiàng),調(diào)用次數(shù)置1,把節(jié)點(diǎn)移動到調(diào)用次數(shù)為1的節(jié)點(diǎn)首,轉(zhuǎn)步驟 10 ;8)查找節(jié)點(diǎn),成功,則增加調(diào)用次數(shù),把節(jié)點(diǎn)移動到相同調(diào)用次數(shù)節(jié)點(diǎn)首,失敗則非連接數(shù)據(jù)則丟棄;轉(zhuǎn)步驟10 ;9)關(guān)閉對應(yīng)的連接。10) 一個(gè)數(shù)據(jù)包處理結(jié)束,下一個(gè)數(shù)據(jù)包到來轉(zhuǎn)步驟2,3,4之一。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于本發(fā)明這種TCP連接淘汰策略,保證訪問比較頻繁的活躍節(jié)點(diǎn)被保持,淘汰訪問次數(shù)少,且最久沒有訪問的節(jié)點(diǎn)。此方法一定程度上能防止synflood攻擊。
圖1是一種TCP連接淘汰方法的流程圖。
具體實(shí)施例方式
本發(fā)明方案的詳細(xì)步驟如下1.初始化并發(fā)連接表;2.接收syn, reset數(shù)據(jù)包,根據(jù)四元組杳找并發(fā)鏈接表,轉(zhuǎn)步驟5 ;3.接收syn ack或ack數(shù)據(jù)包,轉(zhuǎn)步驟84.接收fin或fin ack數(shù)據(jù)包,轉(zhuǎn)步驟9 ;5.查找成功,則為重傳的syn包,丟棄;查找失敗,則查看最大并發(fā)連接數(shù)是否大于閾值,小于則轉(zhuǎn)步驟6,否則轉(zhuǎn)步驟7。6.查找調(diào)用次數(shù)最少,最久沒訪問的連接節(jié)點(diǎn)進(jìn)行淘汰;7.新建并發(fā)連接項(xiàng),調(diào)用次數(shù)置1,把節(jié)點(diǎn)移動到調(diào)用次數(shù)為1的節(jié)點(diǎn)首,轉(zhuǎn)步驟 10 ;8.查找節(jié)點(diǎn),成功,則增加調(diào)用次數(shù),把節(jié)點(diǎn)移動到相同調(diào)用次數(shù)節(jié)點(diǎn)首,失敗則非連接數(shù)據(jù)則丟棄;轉(zhuǎn)步驟10 ;9.關(guān)閉對應(yīng)的連接。10.直到系統(tǒng)關(guān)閉,否則轉(zhuǎn)步驟2。
以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非對其限制,盡管參照上述實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,所述領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解依然可以對本發(fā)明的具體實(shí)施方式
進(jìn)行修改或者同等替換,而未脫離本發(fā)明精神和范圍的任何修改或者等同替換, 其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
權(quán)利要求
1.一種TCP連接淘汰方法,其特征在于,通過使用hash高效的存儲和檢索,建立有效的 TCP連接淘汰機(jī)制,始終淘汰訪問次數(shù)最少,最久沒有使用的TCP連接。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,1)初始化并發(fā)連接表;2)接收syn,reset數(shù)據(jù)包,根據(jù)四元組查找并發(fā)鏈接表,轉(zhuǎn)步驟5;3)接收synack或ack數(shù)據(jù)包,轉(zhuǎn)步驟84)接收fin或finack數(shù)據(jù)包,轉(zhuǎn)步驟9 ;5)查找成功,則為重傳的syn包,丟棄;查找失敗,則查看最大并發(fā)連接數(shù)是否大于閾值,小于則轉(zhuǎn)步驟6,否則轉(zhuǎn)步驟7。6)查找調(diào)用次數(shù)最少,最久沒訪問的連接節(jié)點(diǎn)進(jìn)行淘汰;7)新建并發(fā)連接項(xiàng),調(diào)用次數(shù)置1,把節(jié)點(diǎn)移動到調(diào)用次數(shù)為1的節(jié)點(diǎn)首,轉(zhuǎn)步驟10;8)查找節(jié)點(diǎn),成功,則增加調(diào)用次數(shù),把節(jié)點(diǎn)移動到相同調(diào)用次數(shù)節(jié)點(diǎn)首,失敗則非連接數(shù)據(jù)則丟棄;轉(zhuǎn)步驟10 ;9)關(guān)閉對應(yīng)的連接。10)一個(gè)數(shù)據(jù)包處理結(jié)束,下一個(gè)數(shù)據(jù)包到來轉(zhuǎn)步驟2,3,4之一。
全文摘要
本發(fā)明提供一種TCP連接淘汰方法,其特征在于,通過使用hash高效的存儲和檢索;有效的TCP連接淘汰機(jī)制,始終淘汰訪問次數(shù)最少,最久沒有使用(LRU)的TCP連接。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于本發(fā)明實(shí)現(xiàn)了一種TCP連接淘汰策略,保證訪問比較頻繁的活躍節(jié)點(diǎn)被保持,淘汰訪問次數(shù)少,且最久沒有訪問的節(jié)點(diǎn)。此方法保留了活躍的連接,一定程度上能防止synflood攻擊。
文檔編號H04L29/06GK102546394SQ20111041348
公開日2012年7月4日 申請日期2011年12月13日 優(yōu)先權(quán)日2011年12月13日
發(fā)明者劉朝輝, 劉燦, 李鋒偉, 竇曉光, 邵宗有 申請人:曙光信息產(chǎn)業(yè)(北京)有限公司