欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種防止拒絕服務攻擊的方法及裝置的制作方法

文檔序號:7714582閱讀:144來源:國知局
專利名稱:一種防止拒絕服務攻擊的方法及裝置的制作方法
技術領域
本發(fā)明涉及身份標識與位置標識分離的網絡,尤其涉及一種在身份標識與位置標 識分離的網絡中防止拒絕服務攻擊的方法及裝置。
背景技術
目前,因特網廣泛使用的TCP/IP(傳輸控制協(xié)議/因特網互聯(lián)協(xié)議)協(xié)議中IP地 址具有雙重功能,既作為網絡層的通信終端主機網絡接口在網絡拓撲中的位置標識,又作 為傳輸層主機網絡接口的身份標識。TCP/IP協(xié)議設計之初并未考慮主機移動的情況。但 是,當主機移動越來越普遍時,這種IP地址的語義過載缺陷日益明顯。當主機的IP地址發(fā) 生變化時,不僅路由要發(fā)生變化,通信終端主機的身份標識也發(fā)生變化,這樣會導致路由負 載越來越重,而且主機標識的變化會導致應用和連接的中斷。提出身份標識和位置標識分離的目的是解決IP地址的語義過載和路由負載嚴重 以及安全性等問題,將IP地址的雙重功能進行分離,實現(xiàn)對移動性、多家鄉(xiāng)性、IP地址動態(tài) 重分配、減輕路由負載及下一代互聯(lián)網中不同網絡區(qū)域之間的互訪等問題的支持。圖1所示為北京交通大學提出的一種一體化網絡架構,實現(xiàn)終端的身份標識和 位置標識的分離,該網絡架構包括映射服務器(Map Server, MS)、接入服務器(Access Service Router, ASR)和用戶設備(User Equipment,UE)等,每個UE都有一個唯一的接入 標識(AID),每個ASR都有一個路由標識(RID),UE具有移動性,可以在各ASR上注冊,在MS 中保存UE所接入的ASR的RID,也就是說MS保存著每個UE的AID和實際接入的ASR的RID 的對應表(AID-RID映射表)。當UEl和UE2開始使用網絡時,首先分別向MS發(fā)起注冊流程,UEl通過ASRl向MS 注冊后,MS將生成一個表項為AID1-RID1,表示UEl在ASRl下注冊,后續(xù)其它UE發(fā)給UEl 的數(shù)據(jù)包將經過ASRl轉發(fā)。同樣,當UE2通過ASR2向MS注冊后,MS將生成一個表項為 AID2-RID2,表示UE2在ASR2下注冊,后續(xù)其它UE發(fā)給UE2的數(shù)據(jù)包應經過ASR2轉發(fā)。經過一段時間后,MS上注冊的UE會趨于穩(wěn)定,MS將建立如圖2所示的AID-RID映 射表。當UEl和UE2都已經注冊后,并且UEl向UE2發(fā)送數(shù)據(jù)包(圖2中103所示)時, UEl生成一個目的地址為AID2的數(shù)據(jù)包,將此數(shù)據(jù)包發(fā)送給ASR1,ASRl收到此數(shù)據(jù)包后, 在本地的AID-RID映射表中查詢AID2對應的RID,ASR本地的AID-RID映射表的結構如圖 3所示。如果ASRl在本地的AID-RID映射表中查到AID2的位置映射關系AID2-RID2,則 ASRl將此數(shù)據(jù)包進行封裝后發(fā)送到ASR2,ASR2解封裝后發(fā)送給UE2。如果ASRl在本地的AID-RID映射表中查不到AID2的位置映射關系,則ASRl將向 MS查詢AID2的位置映射關系,MS查到AID2的位置映射關系后,將映射關系表AID2-RID2 發(fā)送給ASR1,ASRl收到此映射關系表后,保存到本地的AID-RID映射表中。如果后續(xù)UEl 再發(fā)送目的地址為AID2的數(shù)據(jù)包,由于ASRl中已經保存了 AID2-RID2的映射關系,則ASRl無需再次查詢MS即可直接發(fā)送UEl的數(shù)據(jù)包。上述流程是圖1所示的一體化的身份標識和位置標識分離的網絡中UE注冊和數(shù) 據(jù)包發(fā)送流程,由上述流程可以看出,在上述身份標識和位置標識分離的網絡中,存在對MS 造成攻擊威脅的場景,ASR每收到UE —個發(fā)向不同目的AID的數(shù)據(jù)包(下文中將這種不同 目的AID的數(shù)據(jù)包稱為首包),都必須向MS進行查詢,當UEl連續(xù)向ASRl發(fā)送不同目的AID 的數(shù)據(jù)包時,如圖4所示的數(shù)據(jù)包串,就會形成網絡攻擊。在圖4中,每個方框都代表一個由UE發(fā)送的數(shù)據(jù)包,數(shù)據(jù)包的目的地址分別是 AID2,AID3. · · AID27,也就是說,如果UEl依次發(fā)送目的地址為AID2,AID3. · · AID27這種不 同目的地址的數(shù)據(jù)包,ASRl每次都不能在本地的AID-RID映射表中查到AID對應的RID,因 此,ASRl每次都要向MS發(fā)消息查詢相應的映射表項,使ASRl和MS的性能大幅下降。而且,如果UEl頻繁發(fā)送這種首包,由于ASRl本地的AID-RID映射表的存貯空間 有限,ASRl必須對本地數(shù)據(jù)庫內的舊映射表項進行老化,也就是說,當數(shù)據(jù)庫滿后,ASRl收 到一個新的映射表項時,必須刪除一個舊的映射表項,這樣當UEl頻繁發(fā)送首包時,就會在 ASRl中生成很多新的無效表項,當數(shù)據(jù)庫滿以后,ASRl可能會用UEl新生成的無效映射表 項覆蓋其它UE的有效映射表項,當ASR收到其它UE的數(shù)據(jù)時,可能因為對應的有效映射表 項被老化刪除而被迫再次向MS查詢,進一步降低了 ASR的處理性能。綜上,UE連續(xù)發(fā)送不同目的AID的數(shù)據(jù)包的行為將造成如下問題(1) ASR每次都必須向MS查詢,增加了 ASR和MS雙方的信令負荷,降低了信令處理 性能。(2)如果用戶大量發(fā)送首包,ASR如果采用本地緩存首包,等待MS查詢結果后再轉 發(fā),將造成ASR積累大量數(shù)據(jù)包,內存消耗嚴重。如果ASR采用由MS轉發(fā)首包的方案,則會 造成理應由ASR直接發(fā)送的數(shù)據(jù),卻要經過MS轉發(fā),大大增加了 MS的負擔。(3)大量首包查詢使ASR本地映射表中保存了大量的無效映射表項,從而導致ASR 映射表緩存過大,如果限制緩存數(shù)量,則會導致映射表項更新過快,大量無效的映射表項將 覆蓋有效的映射表項,對映射表項被覆蓋的正常UE發(fā)送的數(shù)據(jù)包還需要重新查詢MS,從而 導致ASR更頻繁地向MS發(fā)送查詢消息,形成一種骨牌效應,導致ASR和MS都不能正常工作。上述應用場景已形成了拒絕服務(DOS)攻擊,如果多個用戶同時發(fā)起類似攻擊, MS信令負荷將更加嚴重,ASR的緩存將更加不足,AID-RID映射表將刷新更快,導致更加頻 繁地查詢MS,進一步消耗了 ASR和MS的處理能力,從而造成了分布式拒絕服務(DDOS)攻 擊。為表述方便,下文中將UE連續(xù)發(fā)送首數(shù)據(jù)包的DOS或DDOS攻擊統(tǒng)稱為首包攻擊。

發(fā)明內容
本發(fā)明要解決的技術問題是提供一種防止拒絕服務攻擊的方法及裝置,解決惡意 用戶頻繁發(fā)送不同目的地址的數(shù)據(jù)包,導致網絡設備負荷過大以至于無法正常工作的問 題。為解決上述技術問題,本發(fā)明的一種防止拒絕服務攻擊的方法,包括在用戶的命中率低于命中率閾值和/或該用戶的未命中數(shù)高于未命中數(shù)閾值時, 將該用戶設置為限制狀態(tài);若數(shù)據(jù)包為未命中數(shù)據(jù)包,則查詢發(fā)送該數(shù)據(jù)包的用戶的狀態(tài),如果該用戶處于限制狀態(tài),則丟棄該數(shù)據(jù)包。進一步地,命中率為單位時間內用戶發(fā)送的在本地接入標識(AID)-路由標識 (RID)映射表中查找到目的AID對應的RID的數(shù)據(jù)包的數(shù)量/單位時間內該用戶發(fā)送的數(shù) 據(jù)包的總數(shù)。進一步地,未命中數(shù)為單位時間內用戶發(fā)送的在本地AID-RID映射表中未查找 到目的AID對應的RID的數(shù)據(jù)包的數(shù)量。進一步地,該方法還包括在用戶的上下文中添加未命中數(shù)、命中數(shù)和用戶狀態(tài)的記錄。進一步地,判斷數(shù)據(jù)包是否為未命中數(shù)據(jù)包的方法為根據(jù)該數(shù)據(jù)包的目的AID, 查詢本地的AID-RID映射表,若未查找到目的AID對應的RID,則判定該數(shù)據(jù)包為未命中數(shù) 據(jù)包,對發(fā)送該數(shù)據(jù)包的用戶的上下文中保存的未命中數(shù)遞增一個數(shù)據(jù)包的記錄;若查找 到目的AID對應的RID,則判定該數(shù)據(jù)包為命中數(shù)據(jù)包,對發(fā)送該數(shù)據(jù)包的用戶的上下文中 保存的命中數(shù)遞增一個數(shù)據(jù)包的記錄。進一步地,在執(zhí)行查詢發(fā)送該數(shù)據(jù)包的用戶的狀態(tài)前,還判斷是否到達用戶限制 狀態(tài)的調整周期,如果是,則從該用戶的上下文中讀取未命中數(shù)和命中數(shù),計算該用戶的命 中率,判斷該用戶的命中率是否低于為該用戶配置的命中率閾值和/或該用戶的未命中數(shù) 是否高于為該用戶配置的未命中數(shù)閾值,如果是,則將該用戶設置為限制狀態(tài),并計入該用 戶的上下文中的用戶狀態(tài)的記錄中。進一步地,如果判斷該用戶的命中率不低于為該用戶配置的命中率閾值和/或該 用戶的未命中數(shù)不高于為該用戶配置的未命中數(shù)閾值,則進一步判斷該用戶在一周期內的 限制次數(shù)是否大于一限制次數(shù)閾值,如果大于,則仍將該用戶設置為限制狀態(tài);如果小于, 則將該用戶設置為未限制狀態(tài)。進一步地,在計算用戶的命中率后,還將該用戶的上下文中的未命中數(shù)和命中數(shù) 的記錄清零。進一步地,在判斷該用戶的命中率是否低于為該用戶配置的命中率閾值和/或該 用戶的未命中數(shù)是否高于為該用戶配置的未命中數(shù)閾值之前,還根據(jù)用戶屬性,判斷該用 戶是否屬于特殊服務器用戶,如果是,則將標準命中率閾值降低一個等級,將標準未命中數(shù) 閾值提高一個等級分別配置為該用戶的命中率閾值和未命中數(shù)閾值;否則,將標準命中率 閾值和標準未命中數(shù)閾值分別配置為該用戶的命中率閾值和未命中數(shù)閾值。進一步地,該方法還包括判斷該用戶的登錄時間是否小于一指定的登錄時間閾 值,如果小于,則將為該用戶配置的命中率閾值降低一個等級,將為該用戶配置的未命中數(shù) 閾值提高一個等級。進一步地,該方法還包括判斷啟動時間是否小于一指定的啟動時間閾值,如果小 于,則將為該用戶配置的命中率閾值降低一個等級,將為該用戶配置的未命中數(shù)閾值提高一個等級。進一步地,該方法還包括判斷系統(tǒng)是否過負荷,如果是,則將為該用戶配置的命 中率閾值降低一個等級,將為該用戶配置的未命中數(shù)閾值提高一個等級。進一步地,該方法還包括統(tǒng)計單位時間內一個或多個用戶發(fā)送的全部數(shù)據(jù)包的 數(shù)量和未命中數(shù)據(jù)包的數(shù)量,計算命中率,作為平均命中率,將統(tǒng)計得到的未命中數(shù)作為平均未命中數(shù),對平均命中率和平均未命中數(shù)進行調整,分別作為標準命中率閾值和標準未 命中數(shù)閾值。進一步地,用戶屬性保存在映射服務器或認證服務器中;在到映射服務器對用戶進行注冊后,映射服務器在注冊應答消息中增加一用戶屬 性字段,下發(fā)用戶屬性;在向認證服務器請求對用戶進行認證后,認證服務器在認證應答消息中增加一用 戶屬性字段,下發(fā)用戶屬性。進一步地,一種防止拒絕服務攻擊的裝置,包括用戶數(shù)據(jù)接收單元、本地映射表 查詢單元和首包攻擊識別和控制單元,其中用戶數(shù)據(jù)接收單元,用于接收用戶發(fā)送的數(shù)據(jù)包,將接收到的數(shù)據(jù)包發(fā)送給本地 映射表查詢單元;本地映射表查詢單元,用于從本地的AID-RID映射表中查詢接收到的數(shù)據(jù)包的目 的AID對應的RID,將查詢結果和數(shù)據(jù)包發(fā)送給首包攻擊識別和控制單元;首包攻擊識別和控制單元,用于在用戶的命中率低于命中率閾值和/或該用戶的 未命中數(shù)高于未命中數(shù)閾值時,將該用戶設置為限制狀態(tài);并在根據(jù)接收到的查詢結果判 斷接收到的數(shù)據(jù)包為未命中數(shù)據(jù)包時,查詢發(fā)送該數(shù)據(jù)包的用戶的狀態(tài),如果該用戶處于 限制狀態(tài),則丟棄該數(shù)據(jù)包。進一步地,命中率為單位時間內用戶發(fā)送的在本地AID-RID映射表中查找到目 的AID對應的RID的數(shù)據(jù)包的數(shù)量/單位時間內該用戶發(fā)送的數(shù)據(jù)包的總數(shù);未命中數(shù)為單位時間內用戶發(fā)送的在本地AID-RID映射表中未查找到目的AID 對應的RID的數(shù)據(jù)包的數(shù)量。進一步地,在用戶的上下文中添加未命中數(shù)、命中數(shù)和用戶狀態(tài)的記錄;首包攻擊識別和控制單元,還用于在根據(jù)接收到的查詢結果判斷接收到的數(shù)據(jù)包 為未命中數(shù)據(jù)包時,對發(fā)送該數(shù)據(jù)包的用戶的上下文中保存的未命中數(shù)遞增一個數(shù)據(jù)包的 記錄;在根據(jù)接收到的查詢結果判斷接收到的數(shù)據(jù)包為命中數(shù)據(jù)包時,對發(fā)送該數(shù)據(jù)包的 用戶的上下文中保存的命中數(shù)遞增一個數(shù)據(jù)包的記錄。進一步地,首包攻擊識別和控制單元,還用于在執(zhí)行查詢發(fā)送該數(shù)據(jù)包的用戶的 狀態(tài)前,判斷是否到達用戶限制狀態(tài)的調整周期,如果是,則從該用戶的上下文中讀取未命 中數(shù)和命中數(shù),計算該用戶的命中率,判斷該用戶的命中率是否低于為該用戶配置的命中 率閾值和/或該用戶的未命中數(shù)是否高于為該用戶配置的未命中數(shù)閾值,如果是,則將該 用戶設置為限制狀態(tài),并計入該用戶的上下文中的用戶狀態(tài)的記錄中;首包攻擊識別和控制單元計算用戶的命中率后,還將該用戶的上下文中的未命中 數(shù)和命中數(shù)的記錄清零。進一步地,如果首包攻擊識別和控制單元判斷該用戶的命中率不低于為該用戶配 置的命中率閾值和/或該用戶的未命中數(shù)不高于為該用戶配置的未命中數(shù)閾值,則進一步 判斷該用戶在一周期內的限制次數(shù)是否大于一限制次數(shù)閾值,如果大于,則仍將該用戶設 置為限制狀態(tài);如果小于,則將該用戶設置為未限制狀態(tài)。進一步地,首包攻擊識別和控制單元判斷該用戶的命中率是否低于為該用戶配置 的命中率閾值和/或該用戶的未命中數(shù)是否高于為該用戶配置的未命中數(shù)閾值之前,還根據(jù)用戶屬性,判斷該用戶是否屬于特殊服務器用戶,如果是,則將標準命中率閾值降低一個 等級,將標準未命中數(shù)閾值提高一個等級分別配置為該用戶的命中率閾值和未命中數(shù)閾 值;否則,將標準命中率閾值和標準未命中數(shù)閾值分別配置為該用戶的命中率閾值和未命 中數(shù)閾值。進一步地,首包攻擊識別和控制單元還判斷該用戶的登錄時間是否小于一指定的 登錄時間閾值,如果小于,則將為該用戶配置的命中率閾值降低一個等級,將為該用戶配置 的未命中數(shù)閾值提高一個等級。進一步地,首包攻擊識別和控制單元還判斷啟動時間是否小于一指定的啟動時間 閾值,如果小于,則將為該用戶配置的命中率閾值降低一個等級,將為該用戶配置的未命中 數(shù)閾值提高一個等級。進一步地,首包攻擊識別和控制單元還判斷系統(tǒng)是否過負荷,如果是,則將為該用 戶配置的命中率閾值降低一個等級,將為該用戶配置的未命中數(shù)閾值提高一個等級。進一步地,該裝置還包括命中率統(tǒng)計和建模單元,該命中率統(tǒng)計和建模單元,用于 統(tǒng)計單位時間內一個或多個用戶發(fā)送的全部數(shù)據(jù)包的數(shù)量和未命中數(shù)據(jù)包的數(shù)量,計算命 中率,作為平均命中率,將統(tǒng)計得到的未命中數(shù)作為平均未命中數(shù)。綜上所述,本發(fā)明結合命中率控制和未命中數(shù)控制,并結合用戶類型識別、系統(tǒng)啟 動狀態(tài)修正、系統(tǒng)過負荷修正以及用戶剛登錄狀態(tài)的修正,防止拒絕服務攻擊,本發(fā)明可實 現(xiàn)對惡意用戶頻繁發(fā)送首包造成的D0S/DD0S攻擊進行有效控制;可根據(jù)系統(tǒng)啟動、系統(tǒng)過 負荷、特殊用戶、用戶登錄等情況,對首包攻擊的限制進行調整,保證上述特殊場景下系統(tǒng) 在避免首包攻擊的同時用戶也能夠正常使用網絡。


圖1為現(xiàn)有技術中的一種身份標識與位置標識分離的網絡的架構圖;圖2為映射服務器中的映射表;圖3為ASR中的本地映射表;圖4為一種典型的首包攻擊的示意圖;圖5為另一種身份標識與位置標識分離的網絡的架構圖;圖6為第三種身份標識與位置標識分離的網絡的架構圖;圖7為一種改進的首包攻擊的示意圖;圖8為本發(fā)明一種可防止首包攻擊的裝置的結構示意圖;圖9為首包攻擊識別和控制單元實現(xiàn)的主要功能的流程圖;圖10為首包攻擊和識別單元調整限制策略的方法的流程圖。
具體實施例方式圖5所示為另一種實現(xiàn)身份標識和位置標識分離的網絡的架構,本架構將網絡劃 分為接入網和骨干網。接入網位于骨干網的邊緣,用于負責所有終端的接入。骨干網負責通 過接入網接入的終端間數(shù)據(jù)報文的路由和轉發(fā)。接入網與骨干網在拓撲關系上沒有重疊。本架構的網絡中有兩種標識類型接入標識(AID =Access Identifier)和路由標 識(RID =R0UtingIdentifier)。其中,AID是終端的用戶身份識別,用于標識終端用戶(也簡稱為用戶)的身份,網絡為每個終端用戶唯一分配一個AID,在接入網使用,在終端的移 動過程中始終保持不變;RID是為終端分配的位置標識,在骨干網使用。本架構中,接入網絡的終端可以是移動終端、固定終端和游牧終端中的一種或多 種,如手機、固定電話、電腦和應用服務器等等。本架構中,接入網用于為終端提供到二層(物理層和鏈路層)接入手段,維護終 端與ASN之間的物理接入鏈路??赡艿亩咏尤胧侄伟ǚ涓C移動網技術(GSM/CDMA/ TD-SCDMA/WCDMA/ffiMAX/LTE)、DSL、寬帶光纖接入或 WiFi 接入等等。本架構的骨干網組網時分為兩個平面廣義轉發(fā)平面和映射轉發(fā)平面,還包括接 入服務節(jié)點(ASN =Access Service Node)和認證中心。ASN是廣義轉發(fā)平面、映射轉發(fā)平面與接入網的分界節(jié)點,具有與接入網、廣義轉 發(fā)平面和映射轉發(fā)平面的接口。用于為終端提供接入服務、維護終端與網絡的連接,為終端 分配RID,到映射轉發(fā)平面登記注冊和查詢終端的RID,維護AID-RID的映射信息,以及實現(xiàn) 數(shù)據(jù)報文的路由和轉發(fā)。廣義轉發(fā)平面主要用于根據(jù)數(shù)據(jù)報文中的RID進行選路和轉發(fā)以RID為目的 地址的數(shù)據(jù)報文,廣義轉發(fā)平面內的數(shù)據(jù)路由轉發(fā)行為與傳統(tǒng)IP網絡一致。如圖所示, 廣義轉發(fā)平面的主要網元包括通用路由器(CR=Common Router)和互聯(lián)服務節(jié)點(ISN : Interconnect Service Node)映射轉發(fā)平面主要用于保存終端的身份位置映射信息(即AID-RID的映射信 息),處理對終端位置的登記注冊和查詢,路由并轉發(fā)以AID為目的地址的數(shù)據(jù)報文。如圖 所示,映射轉發(fā)平面的主要網元包括身份位置寄存器/分組轉發(fā)功能(ILR/PTF =Identity Location Register/Packet Transfer Function)0認證中心,用于記錄本架構網絡終端用戶的屬性信息如用戶類別、認證信息和用 戶服務等級等,完成對終端的接入認證和授權,還可具有計費功能。認證中心支持終端與網 絡間的雙向認證,可產生用于認證、完整性保護和加密的用戶安全信息。在另一實施例中,ASN在架構的劃分中獨立于骨干網,位于骨干網和接入網的分界 節(jié)點,具有與接入網和骨干網的接口,如圖6所示。其實際完成的功能與圖5是一樣的。本實施例的方法及裝置可應用在上述的任意一種網絡架構中,下面僅以一體化網 絡架構為例說明本發(fā)明,但不作為對本發(fā)明的限制。為防范首包攻擊,最好的辦法是在ASR上對用戶的惡意操作進行有效的控制。本 發(fā)明為防范首包DOS或DDOS攻擊,采取的主要措施為在ASR中配置本地映射表命中率閾 值和未命中數(shù)閾值,如果一個用戶在單位時間內本地映射表命中率低于閾值和/或未命中 數(shù)高于閾值,則對該用戶啟動限制措施。定義本地映射表命中率(簡稱命中率)如下命中率=單位時間內用戶發(fā)送的在本地AID-RID映射表中查找到目的AID對應的 RID的數(shù)據(jù)包(簡稱命中數(shù)據(jù)包)的數(shù)量+單位時間內該用戶發(fā)送的數(shù)據(jù)包的總數(shù);可以用如下公式表示R = H/(H+U);其中R(Rate)為命中率;H(Hit)為單位時間內用戶發(fā)送的命中數(shù)據(jù)包的數(shù)量; U (Unhit)為單位時間內用戶發(fā)送的在本地AID-RID映射表中未查找到目的AID對應的RID 的數(shù)據(jù)包(簡稱未命中數(shù)據(jù)包)的數(shù)量。
舉例來說,如果以1分鐘為單位時間,某用戶在1分鐘內發(fā)送的數(shù)據(jù)包的總量為 200個,其中ASR在本地映射表中查到目的AID對應的RID的數(shù)據(jù)包的數(shù)量為180個,則H =180,U = 20, R = H/(H+U) = 90%,也就是說,在上述情況下,該用戶發(fā)送數(shù)據(jù)包的命中 率為90%。一般來說,用戶上網進行的操作主要是瀏覽網頁、下載、即時通話和游戲等,這些 應用都有特定的通信對象,一般業(yè)務都是先建立TCP(傳輸控制協(xié)議)連接,然后發(fā)送業(yè)務 數(shù)據(jù)包,因此,在建立TCP連接后,要進行相應的業(yè)務操作,也就是說,絕大多數(shù)因特網應用 都不會向一個目的地址只發(fā)一個數(shù)據(jù)包后就換另外一個目的地址,即使僅建立TCP連接, TCP的握手過程也需要有多條信令交互,因此,如果一個用戶存在過低的命中率,如低于 50%,其行為一般屬于不正常的范圍。除了命中率以外,單位時間內的未命中數(shù)據(jù)包的絕對數(shù)量也需要關注。因為采用 命中率進行控制后,惡意用戶可能會察覺到單純發(fā)送首包的低命中率攻擊已經被系統(tǒng)防 范,可能就會采用首包和后續(xù)包夾雜的方式來探測ASR設置的命中率閾值,從而進一步發(fā) 起攻擊,舉例來說,如果將每個目的地址不同的首包記為F (First),將后續(xù)的與首包目的地 址相同的數(shù)據(jù)包記為S (kcond),如果將ASR的命中率閾值配置為50%,惡意用戶可以重復 發(fā)送圖7所示的數(shù)據(jù)包序列。如圖7所示,如果某個惡意用戶在單位時間內發(fā)送圖中的15個數(shù)據(jù)包,F(xiàn)都是未 命中數(shù)據(jù)包,S為命中數(shù)據(jù)包,未命中數(shù)據(jù)包的個數(shù)U = 6,命中數(shù)量包的個數(shù)H = 9,根據(jù) 命中率計算公式得出R = H/(H+U) =60%,由于計算出來的命中率R = 60%,大于命中率 閾值50%,惡意用戶就可以采用這種數(shù)據(jù)包序列發(fā)起持續(xù)的攻擊。為防止這種固定序列的數(shù)據(jù)包導致的首包攻擊,在考慮命中率限制的基礎上,還 要進一步限制單位時間內發(fā)送首包的總量,在具體操作上,可以統(tǒng)計單位時間內未命中數(shù) 據(jù)包的數(shù)量U,如果未命中數(shù)據(jù)包的數(shù)量U達到指定閾值(未命中數(shù)閾值),同樣認為該用 戶具備首包攻擊的特征需要進行限制,例如,在上述固定序列的場景中,如果將未命中數(shù)閾 值配置為180,在單位時間內(如1分鐘)內用戶發(fā)送了 500個數(shù)據(jù)包,由于其未命中率為 1-60%= 40%,則其未命中數(shù)據(jù)包的絕對數(shù)量為500 X 40% = 200個,超出了未命中數(shù)閾值 180,ASR也認為該用戶具備首包攻擊的特征,應予以限制。統(tǒng)計單位時間內用戶發(fā)送的所有數(shù)據(jù)包的數(shù)量和命中數(shù)據(jù)包的數(shù)量,就可以得到 平均命中率和未命中數(shù),根據(jù)平均命中率和未命中數(shù),就可以建立合適的首包攻擊防范模 型(標準命中率閾值和未命中數(shù)閾值)并進行控制。例如為制定合適的標準命中率閾值, 可以統(tǒng)計ASR穩(wěn)定運行情況下,單位時間內接收到的本地用戶的所有數(shù)據(jù)包的總和,以及 所有命中數(shù)據(jù)包的總和,用所有命中數(shù)據(jù)包的總和除以接收到的所有數(shù)據(jù)包的總和,得到 平均命中率,對平均命中率進行適當調整,如下調三分之一,作為標準命中率閾值。在實際使用中,由于用戶或ASR的原因會出現(xiàn)一些誤差需要修正,表現(xiàn)在如下幾 種情況(1)特殊用戶,例如,有些控制多個傳感器的服務器用戶,需要周期性掃描各個傳 感器,從傳感器獲取數(shù)據(jù),由于掃描周期通常比較長,完成一次掃描后,到下次掃描時,該服 務器的AID-RID映射表項可能已被覆蓋,因此其業(yè)務特征本身就屬于命中率偏低的情景; 還有一些廣播服務器,也存在類似情況。因此ASR應該對這些特定用戶設置較低的命中率閾值,為此ASR需要從認證服務器或者映射服務器獲取用戶屬性信息,如果屬于服務器類 的特殊用戶,特別是傳感器的服務器用戶可以減少首包攻擊的控制力度。O) ASR的啟動情況也需要考慮,如果ASR剛啟動不久,大量用戶未完成登錄,映射 表的建立還不完全,就會出現(xiàn)命中率偏低的情況,這種情況一般會持續(xù)幾十分鐘或幾小時 才能穩(wěn)定,在這段時間內,ASR應該適當減小首包攻擊的控制力度。(3)系統(tǒng)過負荷的時候,應修改命中率閾值和未命中數(shù)閾值,以加大首包攻擊控制 力度,使ASR省出更多的處理性能處理正常業(yè)務。(4)當用戶剛登錄到一個新ASR時,由于此用戶習慣的映射關系尚未建立,就會出 現(xiàn)命中率偏低,因此在用戶剛登錄期間,ASR應適當減小控制力度。為實現(xiàn)本實施例的方法,需要在用戶的上下文中添加未命中數(shù)U、命中數(shù)H和命中 率R的記錄。圖8所示為本發(fā)明的一種防止拒絕服務攻擊的裝置的結構示意圖,其中,首包攻 擊識別和控制單元是最關鍵的單元,命中率統(tǒng)計和建模單元是一個輔助單元,可以幫助設 備管理員設定合適的命中率閾值和未命中數(shù)閾值,下面分別描述各單元的作用用戶數(shù)據(jù)接收單元,用于接收用戶發(fā)送的數(shù)據(jù)包,將數(shù)據(jù)包發(fā)送給本地映射表查 詢單元。本地映射表查詢單元,用于根據(jù)接收到的數(shù)據(jù)包中包含的目的AID,從本地 AID-RID映射表中查詢目的AID對應的RID,將查詢結果和數(shù)據(jù)包發(fā)送給首包攻擊識別和控 制單元,查詢結果為數(shù)據(jù)包為命中數(shù)據(jù)包或未命中數(shù)據(jù)包。首包攻擊識別和控制單元,用于計算用戶的命中率,并根據(jù)用戶屬性、系統(tǒng)啟動狀 態(tài)、系統(tǒng)過負荷狀態(tài)、用戶是否處于剛登錄狀態(tài)等修正命中率閾值,在用戶的命中率低于命 中率閾值和/或該用戶的未命中數(shù)高于未命中數(shù)閾值時,將該用戶設置為限制狀態(tài);并根 據(jù)限制的情況,將數(shù)據(jù)包分發(fā)給數(shù)據(jù)封裝發(fā)送單元,或者通知異地映射表查詢單元,或者丟 棄處理。另外,此單元將會和命中率統(tǒng)計和建模單元以及網管人機接口交互,協(xié)助建立合理 的標準命中率閾值。(具體功能請參考下述對圖7和圖8的描述)數(shù)據(jù)封裝和發(fā)送單元,對命中數(shù)據(jù)包進行正常封裝轉發(fā)。映射表接收單元,用于接收映射服務器發(fā)送來的映射表項,并對本地映射表數(shù)據(jù) 庫進行更新。本地映射表數(shù)據(jù)庫,用于保存用戶的身份標識和路由標識的映射對照表(AID-RID 映射表),此表項由映射表接收單元注入新的映射表項,具備映射表項老化和更新功能,可 以接受本地映射表查詢單元的查詢請求,并將查詢結果返回給本地映射表查詢單元。異地映射表查詢單元,根據(jù)首包攻擊識別和控制單元的識別結果,負責將未命中 數(shù)據(jù)包,通過封裝到特定消息中發(fā)送到到映射服務器。命中率統(tǒng)計和建模單元,用于根據(jù)本地映射表查詢單元的查詢結果,并從首包攻 擊識別和控制單元獲取用戶的命中數(shù)和未命中數(shù),統(tǒng)計單位時間內一個或多個用戶發(fā)送的 全部數(shù)據(jù)包的數(shù)量和未命中數(shù)據(jù)包的數(shù)量,計算命中率,作為平均命中率,將統(tǒng)計得到的未 命中數(shù)作為平均未命中數(shù)。也就是每隔一定時間,計算并記錄一個平均命中率,建立從開機 到穩(wěn)定后平均命中率的各個數(shù)值,形成對應的命中率曲線,幫助管理員根據(jù)曲線設定合適 的命中率閾值。此外,該單元還和首包攻擊識別和控制單元交互,記錄每個時間段最高的命中率,最低的命中率,并統(tǒng)計各個命中率下各有多少用戶,建立詳細的命中率統(tǒng)計模型。網管人機接口,提供人機接口,為首包攻擊識別和控制單元設置合適的標準命中 率和未命中數(shù)閾值,向命中率統(tǒng)計和建模單元查詢系統(tǒng)的命中率模型,根據(jù)管理員需要提 供各個命中率模型數(shù)據(jù)。圖9為首包攻擊識別和控制單元實現(xiàn)的功能的流程,包括901 首包攻擊識別和控制單元接收本地映射表查詢單元的查詢結果和數(shù)據(jù)包;查詢結果為數(shù)據(jù)包為命中數(shù)據(jù)包或未命中數(shù)據(jù)包。902 根據(jù)數(shù)據(jù)包的源地址識別出發(fā)送數(shù)據(jù)包的用戶,查找到該用戶的上下文;903 分析從本地映射表查詢單元接收到的查詢結果,如果查詢結果為數(shù)據(jù)包為未 命中數(shù)據(jù)包,則執(zhí)行步驟904 ;如果查詢結果為數(shù)據(jù)包為命中數(shù)據(jù)包,則執(zhí)行步驟909 ;904 對用戶上下文中的未命中數(shù)U遞增一個數(shù)據(jù)包的記錄,如,加1 ;905 判斷是否到達用戶限制狀態(tài)的調整周期(調整周期可由運營商配置),如果 是,則進行數(shù)據(jù)包限制策略的調整過程(參見圖8描述);否則,執(zhí)行步驟906;906:查找用戶的上下文,判斷用戶是否已被設置為限制狀態(tài),如果是,則執(zhí)行步驟 907 ;否則,執(zhí)行步驟908 ;907 根據(jù)ASR配置的數(shù)據(jù)包處理策略采取相應限制措施,如丟棄數(shù)據(jù)包等,結束;908 將數(shù)據(jù)包發(fā)送給異地映射表查詢單元,由異地映射表查詢單元向MS發(fā)起映 射表的查詢處理,結束;909 將數(shù)據(jù)包轉發(fā)給數(shù)據(jù)封裝發(fā)送單元進行處理;910 對用戶上下文中的用戶的命中數(shù)H加1,結束。圖10所示為首包攻擊識別和控制單元進行數(shù)據(jù)包限制策略的調整過程,包括1001 首包攻擊和識別單元根據(jù)用戶屬性,判斷用戶是否屬于傳感器的服務器或 其它進行廣播或組播發(fā)送的特殊用戶,如果是,則執(zhí)行步驟1002 ;否則,執(zhí)行步驟1003 ;為獲得用戶屬性,要求映射服務器或認證服務器將用戶的類別信息傳送給ASR,為 此,在ASR到映射服務器對用戶進行注冊或向認證服務器請求對用戶進行認證后,映射服 務器在注冊應答消息中,認證服務器在認證應答消息中增加一個用戶屬性字段,將用戶屬 性傳送給ASR,ASR記錄到用戶的上下文中,便于后續(xù)進行控制。1002:為該用戶配置特殊的命中率閾值和未命中數(shù)閾值,一般此類服務器用戶所 需的命中率閾值較標準命中率閾值低一個等級(如,低10%左右),而未命中數(shù)閾值較標準 未命中數(shù)閾值高一個等級(如,高10%左右),允許服務器可以正常進行業(yè)務必須的首包發(fā) 送操作,發(fā)送相對較多的首包;1003 為該用戶配置標準的命中率閾值和未命中數(shù)閾值;1004 判斷該用戶的登錄時間是否小于一指定的登錄時間閾值(如登錄時間小于 10分鐘),如果小于,則執(zhí)行步驟1005 ;否則,執(zhí)行步驟1006 ;1005 對用戶的命中率閾值和未命中數(shù)閾值分別下調一個等級和上調一個等級 (如10% ),允許剛登錄的用戶發(fā)送稍多的首包,以使用戶在剛登錄時的業(yè)務不會受到限 制;用戶剛登錄時,習慣發(fā)送的目的AID尚未在本地映射表中建立對應的RID的項目, 因此,用戶會有短暫時間的命中率偏低和未命中數(shù)偏高,為保證剛登錄用戶有良好的服務質量需要下調命中率閾值和未命中數(shù)閾值。1006 判斷啟動時間是否小于一指定的啟動時間閾值,如果是,則執(zhí)行步驟1007 ; 否則,執(zhí)行步驟1008;在ASR剛開始投入使用或者ASR因故障被復位重新啟動時,ASR的本地AID-RID映 射表為空,隨著用戶登錄和發(fā)送數(shù)據(jù),ASR的本地映射表數(shù)據(jù)庫的表項會逐漸增加,在經過 一段時間后,用戶都正常登錄,并都發(fā)送了他們經常發(fā)送的數(shù)據(jù)包后,ASR中的本地映射表 數(shù)據(jù)庫表項才會穩(wěn)定下來,后續(xù)用戶的命中率才會維持一個相對較高的數(shù)值,而在ASR的 本地映射表穩(wěn)定下之前,用戶的命中率可能會較低,因此,當ASR設置和調整命中率閾值的 時候,必須考慮ASR剛啟動的影響,這個啟動過程一般需要幾十分鐘到幾小時不等,具體時 間可由運營商根據(jù)運營情況設定??梢钥闯?,判斷ASR啟動狀態(tài)是為了避免ASR啟動時將 大量用戶判斷為首包攻擊用戶,導致這些用戶無法正常工作,這是很必要的手段。1007 下調命中率閾值一個等級并上調未命中數(shù)閾值一個等級(如10%),保證新 登錄的大批用戶可以正常操作;1008 判斷系統(tǒng)是否過負荷,如果是,則執(zhí)行步驟1009 ;否則,執(zhí)行1010 ;當ASR等設備過負荷時,可以相應的調高命中率閾值和調低未命中數(shù)閾值,降低 各類用戶允許發(fā)送的首包數(shù)量,保證大多數(shù)用戶能正常轉發(fā)。這是犧牲少量用戶而保證大 多數(shù)用戶業(yè)務進行的手段,因為在ASR負荷能力剩余較高的情況下,少量的首包攻擊對ASR 影響不大,為保證服務質量,可以給予較為寬松的控制閾值,但如果ASR本身負荷很高,嚴 格限制命中率閾值和未命中數(shù)閾值則是減輕設備負荷的必要手段。1009:根據(jù)過負荷情況調高命中率閾值一個等級,并調低未命中數(shù)閾值一個等級, 調整的范圍在10%左右;1010:從該用戶的上下文中讀取未命中數(shù)和命中數(shù),計算該用戶的命中率,判斷該 用戶的命中率是否低于為該用戶配置的命中率閾值和/或該用戶的未命中數(shù)是否高于為 該用戶配置的未命中數(shù)閾值,如果是,則執(zhí)行步驟1011 ;否則,執(zhí)行步驟1012 ;1011 將用戶設置為限制狀態(tài),計入用戶的上下文中,將該用戶的命中率和未命中數(shù)清零;1012:查看此用戶歷史被限制情況,判斷該用戶在一周期時間內的被限制次數(shù)是 否大于一指定的限制次數(shù)閾值,如果大于,則仍將該用戶設置為限制狀態(tài);如果小于,則將 該用戶設置為未限制狀態(tài)。此步驟主要針對某些惡意用戶可能會實施間斷性攻擊,對于此類用戶,如果查到 其歷史記錄中發(fā)送過多次攻擊,可以延長其解除限制時間,對此惡意用戶實行較長時間的 限制。以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領域的技 術人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內,所作的任何修 改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
權利要求
1.一種防止拒絕服務攻擊的方法,包括在用戶的命中率低于命中率閾值和/或該用戶的未命中數(shù)高于未命中數(shù)閾值時,將該 用戶設置為限制狀態(tài);若數(shù)據(jù)包為未命中數(shù)據(jù)包,則查詢發(fā)送該數(shù)據(jù)包的用戶的狀態(tài),如果該用戶處于限制 狀態(tài),則丟棄該數(shù)據(jù)包。
2.如權利要求1所述的方法,其特征在于,所述命中率為單位時間內用戶發(fā)送的在本地接入標識(AID)-路由標識(RID)映射表 中查找到目的AID對應的RID的數(shù)據(jù)包的數(shù)量/單位時間內該用戶發(fā)送的數(shù)據(jù)包的總數(shù)。
3.如權利要求2所述的方法,其特征在于,所述未命中數(shù)為單位時間內用戶發(fā)送的在本地AID-RID映射表中未查找到目的AID 對應的RID的數(shù)據(jù)包的數(shù)量。
4.如權利要求3所述的方法,其特征在于,該方法還包括在用戶的上下文中添加未命 中數(shù)、命中數(shù)和用戶狀態(tài)的記錄。
5.如權利要求4所述的方法,其特征在于,判斷數(shù)據(jù)包是否為未命中數(shù)據(jù)包的方法為 根據(jù)該數(shù)據(jù)包的目的AID,查詢本地的AID-RID映射表,若未查找到目的AID對應的RID,則 判定該數(shù)據(jù)包為未命中數(shù)據(jù)包,對發(fā)送該數(shù)據(jù)包的用戶的上下文中保存的未命中數(shù)遞增一 個數(shù)據(jù)包的記錄;若查找到目的AID對應的RID,則判定該數(shù)據(jù)包為命中數(shù)據(jù)包,對發(fā)送該 數(shù)據(jù)包的用戶的上下文中保存的命中數(shù)遞增一個數(shù)據(jù)包的記錄。
6.如權利要求5所述的方法,其特征在于,在執(zhí)行所述查詢發(fā)送該數(shù)據(jù)包的用戶的狀態(tài)前,還判斷是否到達用戶限制狀態(tài)的調整 周期,如果是,則從該用戶的上下文中讀取未命中數(shù)和命中數(shù),計算該用戶的命中率,判斷 該用戶的命中率是否低于為該用戶配置的命中率閾值和/或該用戶的未命中數(shù)是否高于 為該用戶配置的未命中數(shù)閾值,如果是,則將該用戶設置為限制狀態(tài),并計入該用戶的上下 文中的用戶狀態(tài)的記錄中。
7.如權利要求6所述的方法,其特征在于,如果判斷該用戶的命中率不低于為該用戶配置的命中率閾值和/或該用戶的未命中 數(shù)不高于為該用戶配置的未命中數(shù)閾值,則進一步判斷該用戶在一周期內的限制次數(shù)是否 大于一限制次數(shù)閾值,如果大于,則仍將該用戶設置為限制狀態(tài);如果小于,則將該用戶設 置為未限制狀態(tài)。
8.如權利要求6所述的方法,其特征在于,在計算用戶的命中率后,還將該用戶的上下 文中的未命中數(shù)和命中數(shù)的記錄清零。
9.如權利要求7所述的方法,其特征在于,在判斷該用戶的命中率是否低于為該用戶 配置的命中率閾值和/或該用戶的未命中數(shù)是否高于為該用戶配置的未命中數(shù)閾值之前, 還根據(jù)用戶屬性,判斷該用戶是否屬于特殊服務器用戶,如果是,則將標準命中率閾值降低 一個等級,將標準未命中數(shù)閾值提高一個等級分別配置為該用戶的命中率閾值和未命中數(shù) 閾值;否則,將標準命中率閾值和標準未命中數(shù)閾值分別配置為該用戶的命中率閾值和未 命中數(shù)閾值。
10.如權利要求9所述的方法,其特征在于,該方法還包括判斷該用戶的登錄時間是 否小于一指定的登錄時間閾值,如果小于,則將為該用戶配置的命中率閾值降低一個等級,將為該用戶配置的未命中數(shù)閾值提高一個等級。
11.如權利要求10所述的方法,其特征在于,該方法還包括判斷啟動時間是否小于一 指定的啟動時間閾值,如果小于,則將為該用戶配置的命中率閾值降低一個等級,將為該用 戶配置的未命中數(shù)閾值提高一個等級。
12.如權利要求11所述的方法,其特征在于,該方法還包括判斷系統(tǒng)是否過負荷,如 果是,則將為該用戶配置的命中率閾值降低一個等級,將為該用戶配置的未命中數(shù)閾值提 高一個等級。
13.如權利要求9所述的方法,其特征在于,該方法還包括統(tǒng)計單位時間內一個或多 個用戶發(fā)送的全部數(shù)據(jù)包的數(shù)量和未命中數(shù)據(jù)包的數(shù)量,計算命中率,作為平均命中率,將 統(tǒng)計得到的未命中數(shù)作為平均未命中數(shù),對平均命中率和平均未命中數(shù)進行調整,分別作 為所述標準命中率閾值和標準未命中數(shù)閾值。
14.如權利要求9所述的方法,其特征在于,所述用戶屬性保存在映射服務器或認證服務器中;在到所述映射服務器對用戶進行注冊后,映射服務器在注冊應答消息中增加一用戶屬 性字段,下發(fā)所述用戶屬性;在向所述認證服務器請求對用戶進行認證后,認證服務器在認證應答消息中增加一用 戶屬性字段,下發(fā)所述用戶屬性。
15.一種防止拒絕服務攻擊的裝置,包括用戶數(shù)據(jù)接收單元、本地映射表查詢單元和 首包攻擊識別和控制單元,其中所述用戶數(shù)據(jù)接收單元,用于接收用戶發(fā)送的數(shù)據(jù)包,將接收到的數(shù)據(jù)包發(fā)送給所述 本地映射表查詢單元;所述本地映射表查詢單元,用于從本地的AID-RID映射表中查詢接收到的數(shù)據(jù)包的目 的AID對應的RID,將查詢結果和數(shù)據(jù)包發(fā)送給所述首包攻擊識別和控制單元;所述首包攻擊識別和控制單元,用于在用戶的命中率低于命中率閾值和/或該用戶的 未命中數(shù)高于未命中數(shù)閾值時,將該用戶設置為限制狀態(tài);并在根據(jù)接收到的查詢結果判 斷接收到的數(shù)據(jù)包為未命中數(shù)據(jù)包時,查詢發(fā)送該數(shù)據(jù)包的用戶的狀態(tài),如果該用戶處于 限制狀態(tài),則丟棄該數(shù)據(jù)包。
16.如權利要求15所述的裝置,其特征在于,所述命中率為單位時間內用戶發(fā)送的在本地AID-RID映射表中查找到目的AID對應 的RID的數(shù)據(jù)包的數(shù)量/單位時間內該用戶發(fā)送的數(shù)據(jù)包的總數(shù);所述未命中數(shù)為單位時間內用戶發(fā)送的在本地AID-RID映射表中未查找到目的AID 對應的RID的數(shù)據(jù)包的數(shù)量。
17.如權利要求16所述的裝置,其特征在于,在用戶的上下文中添加未命中數(shù)、命中數(shù)和用戶狀態(tài)的記錄;所述首包攻擊識別和控制單元,還用于在根據(jù)接收到的查詢結果判斷接收到的數(shù)據(jù)包 為未命中數(shù)據(jù)包時,對發(fā)送該數(shù)據(jù)包的用戶的上下文中保存的未命中數(shù)遞增一個數(shù)據(jù)包的 記錄;在根據(jù)接收到的查詢結果判斷接收到的數(shù)據(jù)包為命中數(shù)據(jù)包時,對發(fā)送該數(shù)據(jù)包的 用戶的上下文中保存的命中數(shù)遞增一個數(shù)據(jù)包的記錄。
18.如權利要求17所述的裝置,其特征在于,所述首包攻擊識別和控制單元,還用于在執(zhí)行所述查詢發(fā)送該數(shù)據(jù)包的用戶的狀態(tài) 前,判斷是否到達用戶限制狀態(tài)的調整周期,如果是,則從該用戶的上下文中讀取未命中數(shù) 和命中數(shù),計算該用戶的命中率,判斷該用戶的命中率是否低于為該用戶配置的命中率閾 值和/或該用戶的未命中數(shù)是否高于為該用戶配置的未命中數(shù)閾值,如果是,則將該用戶 設置為限制狀態(tài),并計入該用戶的上下文中的用戶狀態(tài)的記錄中;所述首包攻擊識別和控制單元計算用戶的命中率后,還將該用戶的上下文中的未命中 數(shù)和命中數(shù)的記錄清零。
19.如權利要求18所述的裝置,其特征在于,如果所述首包攻擊識別和控制單元判斷該用戶的命中率不低于為該用戶配置的命中 率閾值和/或該用戶的未命中數(shù)不高于為該用戶配置的未命中數(shù)閾值,則進一步判斷該用 戶在一周期內的限制次數(shù)是否大于一限制次數(shù)閾值,如果大于,則仍將該用戶設置為限制 狀態(tài);如果小于,則將該用戶設置為未限制狀態(tài)。
20.如權利要求19所述的裝置,其特征在于,所述首包攻擊識別和控制單元判斷該用戶的命中率是否低于為該用戶配置的命中率 閾值和/或該用戶的未命中數(shù)是否高于為該用戶配置的未命中數(shù)閾值之前,還根據(jù)用戶屬 性,判斷該用戶是否屬于特殊服務器用戶,如果是,則將標準命中率閾值降低一個等級,將 標準未命中數(shù)閾值提高一個等級分別配置為該用戶的命中率閾值和未命中數(shù)閾值;否則, 將標準命中率閾值和標準未命中數(shù)閾值分別配置為該用戶的命中率閾值和未命中數(shù)閾值。
21.如權利要求20所述的裝置,其特征在于,所述首包攻擊識別和控制單元還判斷該用戶的登錄時間是否小于一指定的登錄時間 閾值,如果小于,則將為該用戶配置的命中率閾值降低一個等級,將為該用戶配置的未命中 數(shù)閾值提高一個等級。
22.如權利要求21所述的裝置,其特征在于,所述首包攻擊識別和控制單元還判斷啟動時間是否小于一指定的啟動時間閾值,如果 小于,則將為該用戶配置的命中率閾值降低一個等級,將為該用戶配置的未命中數(shù)閾值提 高一個等級。
23.如權利要求22所述的裝置,其特征在于,所述首包攻擊識別和控制單元還判斷系統(tǒng)是否過負荷,如果是,則將為該用戶配置的 命中率閾值降低一個等級,將為該用戶配置的未命中數(shù)閾值提高一個等級。
24.如權利要求20所述的裝置,其特征在于,該裝置還包括命中率統(tǒng)計和建模單元,該 命中率統(tǒng)計和建模單元,用于統(tǒng)計單位時間內一個或多個用戶發(fā)送的全部數(shù)據(jù)包的數(shù)量和 未命中數(shù)據(jù)包的數(shù)量,計算命中率,作為平均命中率,將統(tǒng)計得到的未命中數(shù)作為平均未命 中數(shù)。
全文摘要
本發(fā)明公開了一種防止拒絕服務攻擊的方法,包括在用戶的命中率低于命中率閾值和/或該用戶的未命中數(shù)高于未命中數(shù)閾值時,將該用戶設置為限制狀態(tài);若數(shù)據(jù)包為未命中數(shù)據(jù)包,則查詢發(fā)送該數(shù)據(jù)包的用戶的狀態(tài),如果該用戶處于限制狀態(tài),則丟棄該數(shù)據(jù)包。本發(fā)明結合命中率控制和未命中數(shù)控制,并結合用戶類型識別、系統(tǒng)啟動狀態(tài)修正、系統(tǒng)過負荷修正以及用戶剛登錄狀態(tài)的修正,防止拒絕服務攻擊,本發(fā)明可實現(xiàn)對惡意用戶頻繁發(fā)送首包造成的DOS/DDOS攻擊進行有效控制;可根據(jù)系統(tǒng)啟動、系統(tǒng)過負荷、特殊用戶、用戶登錄等情況,對首包攻擊的限制進行調整,保證上述特殊場景下系統(tǒng)在避免首包攻擊的同時用戶也能夠正常使用網絡。
文檔編號H04L29/06GK102045308SQ20091018112
公開日2011年5月4日 申請日期2009年10月10日 優(yōu)先權日2009年10月10日
發(fā)明者何輝, 張世偉, 符濤 申請人:中興通訊股份有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
新宾| 开江县| 涟水县| 武乡县| 台湾省| 泊头市| 阿荣旗| 鲁山县| 晋中市| 鄂州市| 通渭县| 兴海县| 镇安县| 白河县| 丰县| 恩平市| 南木林县| 灵山县| 三原县| 哈密市| 西藏| 台东县| 鹤山市| 太湖县| 西贡区| 梁山县| 大渡口区| 芷江| 永丰县| 滁州市| 宝清县| 安义县| 沂源县| 富顺县| 徐州市| 萨嘎县| 敖汉旗| 澳门| 左权县| 浪卡子县| 枝江市|