亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種流量控制方法和裝置的制作方法

文檔序號:7974443閱讀:129來源:國知局
專利名稱:一種流量控制方法和裝置的制作方法
技術(shù)領(lǐng)域
本申請涉及網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別是涉及一種流量控制方法和裝置。
背景技術(shù)
隨著計算機的廣泛應(yīng)用,對網(wǎng)絡(luò)中的應(yīng)用服務(wù)器訪問也越來越多,越來越頻繁,但在對應(yīng)用服務(wù)器的訪問中,可能會存在因為網(wǎng)絡(luò)爬蟲或者惡意攻擊而產(chǎn)生的訪問,此類訪問容易使應(yīng)用服務(wù)器的系統(tǒng)資源被耗盡,并導(dǎo)致應(yīng)用服務(wù)器不穩(wěn)定?,F(xiàn)有技術(shù)中,通過在用戶端的請求未到達應(yīng)用服務(wù)器端時,對請求進行攔截,一般抓取分析該請求中的IP地址信息,確認該請求所屬用戶端,如果分析出同一 IP地址對應(yīng)的用戶請求在短時間內(nèi)訪問頻率過高,則對該IP地址對應(yīng)的用戶請求進行過濾。由于其在用戶端的請求未到達應(yīng)用服務(wù)器端時對請求進行攔截,并采用一種用戶信息對請求進行過濾,導(dǎo)致過濾信息不全并且安全性不高,容易導(dǎo)致對用戶端的請求的錯誤過濾。例如,如果以固定IP地址為過濾目標,當多個用戶端共用一個IP地址時,只要其中一個用戶使這個IP地址的請求滿足過濾條件時,系統(tǒng)將對這個IP地址進行過濾,這將導(dǎo)致此IP地址下的其他正常用戶端訪問也被錯誤過濾掉。同時,現(xiàn)有技術(shù)的單一性使其適用范圍狹窄,不能適應(yīng)現(xiàn)在過濾過程中越來越高,越來越靈活的要求;并且,在過濾時,對用戶端的每個請求都會遍歷整個過濾規(guī)則,給服務(wù)器帶來大量的額外的開銷,過濾效率低下。

發(fā)明內(nèi)容
本申請?zhí)峁┮环N流量控制方法和裝置,通過靈活配置的流量過濾規(guī)則,解決因為網(wǎng)絡(luò)爬蟲或者惡意攻擊導(dǎo)致的系統(tǒng)不穩(wěn)定,降低對用戶端的錯誤過濾的情況,降低服務(wù)器系統(tǒng)開銷。為了解決上述問題,本申請公開了一種流量控制方法,包括:請求攔截步驟,在應(yīng)用服務(wù)器端攔截用戶端的請求;用戶信息獲取步驟,根據(jù)所述請求獲得用戶信息組合;黑名單過濾步驟,將所述用戶信息組合,與黑名單中的用戶信息組合進行匹配,如果匹配,則進行過濾;其中,所述黑名單通過如下步驟生成:訪問計數(shù)步驟,根據(jù)所述請求對應(yīng)用戶信息組合的記錄日志,統(tǒng)計所述用戶請求對應(yīng)的用戶信息組合的訪問次數(shù);黑名單生成步驟,針對所述訪問次數(shù),依據(jù)流量控制規(guī)則生成所述用戶信息組合的黑名單。優(yōu)選的,所述的用戶信息包括cookie信息、和/或IP信息、和/或session信息、和/或應(yīng)用請求參數(shù)信息。優(yōu)選的,所述的黑名單過濾步驟包括:關(guān)鍵詞匹配步驟,將用戶信息組合中對應(yīng)的關(guān)鍵詞組合與流量控制規(guī)則中的關(guān)鍵詞組合進行匹配,如果匹配上,進入黑名單匹配步驟;黑名單匹配步驟,將所述關(guān)鍵詞組合對應(yīng)的值組合與黑名單中的值組合進行匹配,如果匹配上,則進行過濾。優(yōu)選的,所述的黑名單匹配步驟包括:第一黑名單匹配步驟,將所述值組合與應(yīng)用服務(wù)器端的黑名單中的值組合進行匹配,如果未匹配上,則將該值組合存入應(yīng)用服務(wù)器端的緩存日志,并返回業(yè)務(wù)邏輯,反之,則轉(zhuǎn)入第二黑名單匹配步驟;第二黑名單匹配步驟,將所述值組合與流量控制中心服務(wù)器端的黑名單中的值組合進行匹配,如果未匹配上,則將流量控制服務(wù)器中心服務(wù)器端的黑名單更新到應(yīng)用服務(wù)器端,將該值組合存入應(yīng)用服務(wù)器端的緩存日志,并返回業(yè)務(wù)邏輯,反之,則進行過濾。優(yōu)選的,對于所述應(yīng)用服務(wù)器端的緩存日志進行如下處理:通過應(yīng)用服務(wù)器端將所述緩存日志更新到流量控制中心服務(wù)器端的日志文件中。優(yōu)選的,對于所述日志文件進行如下操作:通過流量控制中心服務(wù)器端掃描所述日志文件;統(tǒng)計所述值組合的次數(shù);依據(jù)所述次數(shù)根據(jù)流量控制規(guī)則生成所述值組合的黑名單。優(yōu)選的,在用戶信息獲取步驟中包括:步驟Al,抓取請求中包括的由應(yīng)用服務(wù)器端分配給已登錄用戶端的session id ;步驟A2,依據(jù)所述session id,在應(yīng)用服務(wù)器端中提取與session id對應(yīng)session 內(nèi)容。優(yōu)選的,所述的過濾包括返回解鎖頁面給用戶端。優(yōu)選的,當用戶端進行解鎖,則將該用戶端對應(yīng)的請求的關(guān)鍵詞值從黑名單刪除,并將刪除后的黑名單更新到各應(yīng)用服務(wù)器端。相應(yīng)的,本申請還公開了一種流量控制裝置,包括:請求攔截模塊,用于在應(yīng)用服務(wù)器端攔截用戶端的請求;用戶信息獲取模塊,用于根據(jù)所述請求獲得用戶信息組合;黑名單過濾模塊,用于將所述用戶信息組合,與黑名單中的用戶信息組合進行匹配,如果匹配,則進行過濾;其中,所述黑名單通過如下模塊生成:訪問計數(shù)模塊,用于根據(jù)所述請求對應(yīng)用戶信息組合的記錄日志,統(tǒng)計所述用戶請求對應(yīng)的用戶信息組合的訪問次數(shù);黑名單生成模塊,用于針對所述訪問次數(shù),依據(jù)流量控制規(guī)則生成所述用戶信息組合的黑名單。與現(xiàn)有技術(shù)相比,本申請包括以下優(yōu)點:首先,本申請通過在應(yīng)用服務(wù)器端攔截用戶端的請求,根據(jù)所述請求全面地獲取各用戶信息,并通過黑名單機制對用戶端的請求進行過濾,在解決因網(wǎng)絡(luò)爬蟲或者惡意攻擊在短時間內(nèi)產(chǎn)生巨量網(wǎng)絡(luò)訪問的同時,降低服務(wù)器系統(tǒng)開銷,能更準確的對用戶端的請求進行過濾,可以降低對正常訪問用戶端錯誤過濾的情況;依據(jù)用戶信息的全面獲取能力,能根據(jù)不同的實際情況調(diào)整過濾的用戶信息組合,配置靈活,適用面廣泛,特別是針對現(xiàn)在分布式系統(tǒng),可以有效的提高系統(tǒng)的過濾效率。


圖1是本申請一種流量控制方法的實施例的流程示意圖;圖2是本申請一種流量控制裝置的結(jié)構(gòu)示意圖;圖3是本申請一種流量控制裝置的優(yōu)選的結(jié)構(gòu)示意圖。
具體實施例方式為使本申請的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面依據(jù)附圖和具體實施方式
對本申請作進一步詳細的說明。本申請通過在應(yīng)用服務(wù)器端攔截用戶端的請求,根據(jù)所述請求全面地獲取各用戶信息,并通過黑名單機制對用戶端的請求進行過濾,在解決因網(wǎng)絡(luò)爬蟲或者惡意攻擊在短時間內(nèi)產(chǎn)生巨量網(wǎng)絡(luò)訪問的同時,降低服務(wù)器系統(tǒng)開銷,能更準確的對用戶端的請求進行過濾,可以降低對正常訪問用戶端錯誤過濾的情況;依據(jù)用戶信息的全面獲取能力,能根據(jù)不同的實際情況調(diào)整過濾的用戶信息組合,配置靈活,適用面廣泛,特別是針對現(xiàn)在分布式系統(tǒng),可以有效的提高系統(tǒng)的過濾效率。本申請還主要針對在應(yīng)用服務(wù)器端進行注冊的用戶端進行的處理過程。參照圖1,其示出了本申請一種流量控制方法的實施例的流程示意圖。請求攔截步驟110,在應(yīng)用服務(wù)器端攔截用戶端的請求;用戶端可以通過網(wǎng)絡(luò)將其請求發(fā)送到應(yīng)用服務(wù)器端,然后由應(yīng)用服務(wù)器根據(jù)請求返回相關(guān)信息。用戶端發(fā)送的請求由應(yīng)用服務(wù)器端設(shè)置的攔截器進行攔截。其中,在實際中,應(yīng)用服務(wù)器端可以分布式系統(tǒng),即可以由多個分布式應(yīng)用服務(wù)器組成,本申請可在每一個應(yīng)用服務(wù)器內(nèi)都可設(shè)置一個攔截器,用來攔截到各個應(yīng)用服務(wù)器的請求,所述應(yīng)用服務(wù)器一般為web應(yīng)用服務(wù)器。用戶信息獲取步驟120,根據(jù)所述請求獲取用戶信息組合;實際中用戶端的請求可包括cookie信息、IP地址信息、session id、requestparameter(應(yīng)用請求參數(shù))等用戶信息。依據(jù)用戶端請求中的上述信息,在應(yīng)用服務(wù)器端可獲取包括cookie信息、和/或IP信息、和/或session信息、和/或應(yīng)用請求參數(shù)信息(request parameter)等用戶信息。其中對于用戶信息session,可以通過如下步驟獲得:步驟Al,抓取請求中包括的由應(yīng)用服務(wù)器端分配給已登錄用戶端的session id。步驟A2,依據(jù)所述session id,在應(yīng)用服務(wù)器端中提取與session id對應(yīng)session 內(nèi)容。session機制是一種應(yīng)用服務(wù)器端的機制,應(yīng)用服務(wù)器使用一種類似于散列表的結(jié)構(gòu)(包括散列表)來保存信息。但程序需要為某個用戶端的請求創(chuàng)建一個session的時候,應(yīng)用服務(wù)器首先檢查這個用戶端的請求里是否包含了一個session標識即sessionid,如果已經(jīng)包含一個session id則說明應(yīng)用服務(wù)器已經(jīng)為此客戶創(chuàng)建過session,應(yīng)用服務(wù)器就按照session id把這個session提取出來進行處理。如果客戶請求不包含session id,則由應(yīng)用服務(wù)器為此客戶創(chuàng)建一個session,并且生成一個與此session相關(guān)聯(lián)的session id,這個session id將在本次響應(yīng)中返回給用戶端保存。而該應(yīng)用服務(wù)器中的session是與外界隔離的,無法在該應(yīng)用服務(wù)器以外提取該session信息。因此,對于用戶信息session來說,需要依據(jù)用戶端請求中的session id,在應(yīng)用服務(wù)器端提取session。在實際中cookie信息、session信息和request parameter信息中都包括了key (關(guān)鍵詞)及對應(yīng)的 value (值),比如 cookie:“key = id, value = 100156”,該 cookie中的關(guān)鍵詞為id,其值為100156,實際中該值可以為用戶的在應(yīng)用服務(wù)器端的注冊id。對于session信息:“key = id, value = 100123”,該session中的關(guān)鍵詞為id,其值為100123,實際中該值也可為用戶在服務(wù)器端注冊的id ;對于request parameter,其中的關(guān)鍵詞key和value值對應(yīng)各實際的應(yīng)用。對于IP信息,其關(guān)鍵詞為IP,其值為其具體的IP值比如201.1.1.109。本申請可以依據(jù)上述信息進行過濾。黑名單過濾步驟130,將所述用戶信息組合,與黑名單中的用戶信息組合進行匹配,如果匹配,則進行過濾。優(yōu)選的,所述的黑名單過濾步驟包括:關(guān)鍵詞匹配步驟SI,將用戶信息組合中對應(yīng)的關(guān)鍵詞組合與流量控制規(guī)則中的關(guān)鍵詞組合進行匹配,如果匹配上,進入黑名單匹配步驟;比如所述流量控制規(guī)則配置如下:1、請求的用戶端IP地址為*.*.*.*和請求中session:1d為xx的請求每分種不能超過30次。(其中IP代表關(guān)鍵詞,*.*.*.*代表其值,其中id代表關(guān)鍵詞,xx代表其值)那么對于根據(jù)用戶請求獲得的用戶信息組合為IP信息和session信息組合,其中IP信息的關(guān)鍵詞為IP,值為202.1.1.109,session信息的關(guān)鍵詞為id,其值為100186。首先,將上述用戶信息組合中對應(yīng)的關(guān)鍵詞組合IP和id與流量控制規(guī)則中配置的關(guān)鍵詞IP和id進行匹配,顯然可以匹配上,則轉(zhuǎn)入步驟S2。當用戶請求的IP信息和session信息的關(guān)鍵詞組合與流量控制規(guī)則中的關(guān)鍵詞組合不匹配,比如用戶的IP信息和session信息的關(guān)鍵詞組合為IP和AB,則不對其進行過濾,由應(yīng)用服務(wù)器返回業(yè)務(wù)邏輯,比如返回請求錯誤的業(yè)務(wù)邏輯。實際中,步驟SI可在應(yīng)用服務(wù)器端進行。實際中,流量控制規(guī)則配置可如下:1、請求中cookie:A為xx的請求每分種不能超過30次。(其中A代表關(guān)鍵詞,xx代表其值)2、請求中session:A為xx的請求每分種不能超過30次。(其中A代表關(guān)鍵詞,xx代表其值)3、請求request parameter:A為xx的請求每分種不能超過30次。(其中A代表關(guān)鍵詞,XX代表其值)4、請求的用戶端IP地址為*.*.*.*的請求每分種不能超過30次。(其中IP代表關(guān)鍵詞,*.*.*.*代表其值)其中一個或者多個的組合。黑名單匹配步驟S2,將所述關(guān)鍵詞組合對應(yīng)的值組合與黑名單中的值組合進行匹配,如果匹配上,則進行過濾。
在通過步驟SI的關(guān)鍵詞匹配之后,對于匹配上的關(guān)鍵詞組合對應(yīng)的值組合,比如前述IP和id關(guān)鍵詞組合對應(yīng)的202.1.1.109和100186,與黑名單中的值組合進行匹配,如果匹配上,則進行過濾。如果沒有匹配上,則繼續(xù)記錄以該值的組合進行計數(shù)。其中,所述黑名單通過如下步驟生成:訪問計數(shù)步驟140,根據(jù)所述請求對應(yīng)用戶信息組合的記錄日志,統(tǒng)計所述用戶請求對應(yīng)的用戶信息組合的訪問次數(shù);在實際中是以流量控制規(guī)則中的用戶信息組合進行訪問次數(shù)的統(tǒng)計。更進一步的是針對用戶信息組合的關(guān)鍵詞組合對應(yīng)的值的組合進行的訪問次數(shù)的統(tǒng)計。比如前述的根據(jù)用戶請求獲得的用戶信息組合為IP信息和session信息組合,其中IP信息的關(guān)鍵詞為IP,值為202.1.1.109,session信息的關(guān)鍵詞為id,其值為100186,就以202.1.1.109和100186為組合進行訪問次數(shù)的統(tǒng)計。其中,對于用戶信息組合的訪問次數(shù)可根據(jù)流量控制規(guī)則里配置的時間長度進行統(tǒng)計。比如前述每分鐘不得超過30次,那么從第一次接收某個用戶請求開始,比如在10:00時刻第一次接收到某個請求,對于該請求對應(yīng)的用戶信息組合的統(tǒng)計從10:00時刻開始,一直統(tǒng)計到10:01時刻結(jié)束,然后將針對該用戶組合的統(tǒng)計清零,再重新開始統(tǒng)計,如此循環(huán);或者,也可以按照時間點的統(tǒng)計次數(shù)之間的差額確認流量控制規(guī)則配置的時間段內(nèi),該用戶信息組合的訪問次數(shù),比如10:00時刻為O次,10:01時刻為25次,10:02時刻為40次,10:03時刻為60次,那么第一個I分鐘內(nèi)訪問次數(shù)就是25次,第二個I分鐘內(nèi)就是15次,第三個I分鐘內(nèi)就是20次。當然,還有其他方法統(tǒng)計流量控制規(guī)則配置時間段內(nèi)的訪問次數(shù),本申請不對其加以限制。黑名單生成步驟150,針對所述訪問次數(shù),依據(jù)流量控制規(guī)則生成所述用戶信息組合的黑名單。比如前述控制規(guī)則:1、請求的用戶端IP地址為*.*.*.*和請求中session:1d為xx的請求每分種不能超過30次。(其中IP代表關(guān)鍵詞,*.*.*.*代表其值,其中id代表關(guān)鍵詞,xx代表其值)實際中,流量控制規(guī)則可以根據(jù)實際應(yīng)用環(huán)境靈活調(diào)整,比如,如果為例提高安全性,系統(tǒng)采用session機制,而不采用cookie機制,可以單獨以session信息為用戶信息設(shè)置流量控制規(guī)則,也可以session信息和IP信息的組合為用戶信息組合設(shè)置流量控制規(guī)則;如果需要針對應(yīng)用服務(wù)器的應(yīng)用進行過濾,那么可以以用戶請求中的應(yīng)用請求參數(shù)(request parameter)信息作為用戶信息設(shè)置流量控制規(guī)則,也可以應(yīng)用請求參數(shù)信息和session信息為用戶信息組合進行過濾;還可根據(jù)實際情況的要求以其他的用戶信息組合設(shè)置流量控制規(guī)則,其中,具體時間間隔和次數(shù)也可根據(jù)實際要求進行設(shè)定,配置靈活,應(yīng)用廣泛。進一步的,所述的黑名單匹配步驟包括:第一黑名單匹配步驟S3,將所述值組合與應(yīng)用服務(wù)器端的黑名單中的值組合進行匹配,如果未匹配上,則將該值組合存入應(yīng)用服務(wù)器端的緩存日志,并返回業(yè)務(wù)邏輯,反之,則轉(zhuǎn)入第二黑名單匹配步驟。比如對于前述根據(jù)用戶請求獲得的用戶信息組合為IP信息和session信息組合,其中IP信息的關(guān)鍵詞為IP,值為202.1.1.109,session信息的關(guān)鍵詞為id,其值為100186,就以202.1.1.109和100186為組合首先與應(yīng)用服務(wù)器端的黑名單中的值的組合進行匹配,如果匹配上,則進行過濾,如果未匹配上,則當次該組合及對應(yīng)請求存入應(yīng)用服務(wù)器端的緩存日志中,并按該請求的要求返回處理結(jié)果。對于應(yīng)用服務(wù)器的緩存日志,優(yōu)選的,通過應(yīng)用服務(wù)器端將所述緩存日志更新到流量控制中心服務(wù)器端的日志文件中。在實際應(yīng)用中,用戶端的請求的攔截在應(yīng)用服務(wù)器端,請求的響應(yīng)處理也在應(yīng)用服務(wù)器端,規(guī)則的配置和黑名單的生成都在流量控制中心服務(wù)器端。在實際中,應(yīng)用服務(wù)器端將所述緩存日志以一定的時間間隔更新到流量控制中心服務(wù)器端的日志文件中,比如,每5秒更新一次。進一步的,對于所述日志文件進行如下操作:步驟ml,通過流量控制中心服務(wù)器端掃描所述日志文件;步驟m2,統(tǒng)計所述值組合的次數(shù);步驟m3,依據(jù)所述次數(shù)根據(jù)流量控制規(guī)則生成所述值組合的黑名單。對于流量控制中心服務(wù)器端的日志文件,流量控制中心服務(wù)器可實時依據(jù)該日志,根據(jù)流量控制規(guī)則生成黑名單。在實際生成過程中,可以由流量控制中心服務(wù)器端的規(guī)則引擎掃描流量控制中心服務(wù)器的日志文件,通過tair (Key/Value結(jié)構(gòu)數(shù)據(jù)存儲系統(tǒng),默認支持基于內(nèi)存和文件的兩種存儲方式)做訪問計數(shù)器統(tǒng)計所述值組合的次數(shù)。然后由規(guī)則引擎依據(jù)流量控制規(guī)則里面的次數(shù)閾值生成黑名單。第二黑名單匹配步驟S4,將所述值組合與流量控制中心服務(wù)器端的黑名單中的值組合進行匹配,如果未匹配上,則將流量控制服務(wù)器中心服務(wù)器端的黑名單更新到應(yīng)用服務(wù)器端,將該值組合存入應(yīng)用服務(wù)器端的緩存日志,并返回業(yè)務(wù)邏輯,反之,則進行過濾。此步驟的目的是對請求的值組合的進一步的核查,因為通過前述黑名單生成過程知道,應(yīng)用服務(wù)器端的黑名單與流量控制中心服務(wù)器端的黑名單可能存在同步的延遲,此步驟可以增加過濾的精確度和有效性。在此步驟中,如果未匹配上,說明應(yīng)用服務(wù)器端的黑名單失效,比如,用戶端根據(jù)要求進行解鎖操作,則系統(tǒng)(流量控制中心服務(wù)器端)會將解鎖的用戶端的請求相關(guān)用戶信息組合從黑名單刪除。那么,此時就需要將流量控制中心服務(wù)器端的黑名單再次更新到應(yīng)用服務(wù)器端,使應(yīng)用服務(wù)器端的黑名單保持準確。同時,對于該值組合,系統(tǒng)會將其存入應(yīng)用服務(wù)器端的緩存日志。優(yōu)選的,所述的過濾包括返回解鎖頁面給用戶端。優(yōu)選的,當用戶端進行解鎖,則將該用戶端對應(yīng)的請求的關(guān)鍵詞值從黑名單刪除,并將刪除后的黑名單更新到各應(yīng)用服務(wù)器端。實際中,用戶端的解鎖處理在應(yīng)用服務(wù)器中進行,當用戶端的解鎖請求發(fā)送到應(yīng)用服務(wù)器端后,應(yīng)用服務(wù)器端將對該請求的解鎖信息發(fā)送到流量控制中心服務(wù)器端,流量控制中心服務(wù)器端則將該用戶端對應(yīng)的請求的關(guān)鍵詞值從黑名單刪除,并將刪除后的黑名單更新到分布式系統(tǒng)的各應(yīng)用服務(wù)器端。另外,所述的過濾也可為限制被過濾用戶端在一定時間段內(nèi)不能進行訪問,本申請不對過濾方法加以限制。
參照圖2,其是本申請一種流量控制裝置的結(jié)構(gòu)示意圖。請求攔截模塊210,用于在應(yīng)用服務(wù)器端攔截用戶端的請求;用戶信息獲取模塊220,用于根據(jù)所述請求獲得用戶信息組合;黑名單過濾模塊230,用于將所述用戶信息組合,與黑名單中的用戶信息組合進行匹配,如果匹配,則進行過濾;其中,所述黑名單通過如下模塊生成:訪問計數(shù)模塊240,用于根據(jù)所述請求對應(yīng)用戶信息組合的記錄日志,統(tǒng)計所述用戶請求對應(yīng)的用戶信息組合的訪問次數(shù);黑名單生成模塊250,用于針對所述訪問次數(shù),依據(jù)流量控制規(guī)則生成所述用戶信息組合的黑名單。優(yōu)選的,所述黑名單過濾模塊包括:關(guān)鍵詞匹配模塊,用于將用戶信息組合中對應(yīng)的關(guān)鍵詞組合與流量控制規(guī)則中的關(guān)鍵詞組合進行匹配,如果匹配上,進入黑名單匹配步驟。黑名單匹配模塊,用于將所述關(guān)鍵詞組合對應(yīng)的值組合與黑名單中的值組合進行匹配,如果匹配上,則進行過濾。進一步,優(yōu)選的,所述的黑名單匹配模塊包括:第一黑名單匹配模塊,將所述值組合與應(yīng)用服務(wù)器端的黑名單中的值組合進行匹配,如果未匹配上,則將該值組合存入應(yīng)用服務(wù)器端的緩存日志,并返回業(yè)務(wù)邏輯,反之,則轉(zhuǎn)入第二黑名單匹配步驟;第二黑名單匹配模塊,將所述值組合與流量控制中心服務(wù)器端的黑名單中的值組合進行匹配,如果未匹配上,則將流量控制服務(wù)器中心服務(wù)器端的黑名單更新到應(yīng)用服務(wù)器端,將該值組合存入應(yīng)用服務(wù)器端的緩存日志,并返回業(yè)務(wù)邏輯,反之,則進行過濾。進一步的,優(yōu)選的,所述的應(yīng)用服務(wù)器端還包括:緩存日志模塊,用于存儲每次未匹配上黑名單的用戶信息組合對應(yīng)的值組合。解鎖模塊,用于解除解鎖頁面對用戶端請求的鎖定。優(yōu)選的,所述流量控制中心服務(wù)器端的訪問計數(shù)模塊以tair (Key/Value結(jié)構(gòu)數(shù)據(jù)存儲系統(tǒng),默認支持基于內(nèi)存和文件的兩種存儲方式)做訪問計數(shù)器統(tǒng)計所述值組合的訪問次數(shù)。所述流量控制中心服務(wù)器端的黑名單生成模塊為規(guī)則引擎,用于配置規(guī)則,并針對所述訪問次數(shù),依據(jù)流量控制規(guī)則生成所述用戶信息組合的黑名單。優(yōu)選的,所述流量控制中心服務(wù)器端還包括解鎖信息發(fā)送模塊,用于當用戶端進行解鎖,則將該用戶端對應(yīng)的請求的關(guān)鍵詞值從黑名單刪除,并將刪除后的黑名單更新到各應(yīng)用服務(wù)器端。參照圖3,其示出了本申請一種流量控制裝置的優(yōu)選的結(jié)構(gòu)示意圖。本申請包括應(yīng)用服務(wù)器端210和流量控制中心服務(wù)器端220 ;其中所述的應(yīng)用服務(wù)器端可以為分布式應(yīng)用服務(wù)器端。所述的應(yīng)用服務(wù)器端210包括:請求攔截模塊,用于在應(yīng)用服務(wù)器端攔截所有用戶端的請求。用戶信息獲取模塊,用于根據(jù)所述請求獲得用戶信息組合。
關(guān)鍵詞匹配模塊,用于將用戶信息組合中對應(yīng)的關(guān)鍵詞組合與流量控制規(guī)則中的關(guān)鍵詞組合進行匹配,如果匹配上,進入黑名單匹配步驟。第一黑名單匹配模塊,將所述值組合與應(yīng)用服務(wù)器端的黑名單中的值組合進行匹配,如果未匹配上,則將該值組合存入應(yīng)用服務(wù)器端的緩存日志,并返回業(yè)務(wù)邏輯,反之,則轉(zhuǎn)入第二黑名單匹配步驟。緩存日志模塊,用于存儲每次未匹配上黑名單的用戶信息組合對應(yīng)的值組合。解鎖模塊,用于解除解鎖頁面對用戶端請求的鎖定。所述的流量控制中心服務(wù)器端220包括:訪問計數(shù)模塊,根據(jù)所述請求對應(yīng)用戶信息組合的記錄日志,統(tǒng)計所述用戶請求對應(yīng)的用戶信息組合的訪問次數(shù)。規(guī)則引擎,用于配置規(guī)則,并針對所述訪問次數(shù),依據(jù)流量控制規(guī)則生成所述用戶信息組合的黑名單。第二黑名單匹配模塊,將所述值組合與流量控制中心服務(wù)器端的黑名單中的值組合進行匹配,如果未匹配上,則將流量控制服務(wù)器中心服務(wù)器端的黑名單更新到應(yīng)用服務(wù)器端,將該值組合存入應(yīng)用服務(wù)器端的緩存日志,并返回業(yè)務(wù)邏輯,反之,則進行過濾。解鎖信息發(fā)送模塊,用于當用戶端進行解鎖,則將該用戶端對應(yīng)的請求的關(guān)鍵詞值從黑名單刪除,并將刪除后的黑名單更新到各應(yīng)用服務(wù)器端。本申請在應(yīng)用服務(wù)器對用戶端的請求進行攔截以前,流量控制中心服務(wù)器端將黑名單推送給應(yīng)用服務(wù)器端;應(yīng)用服務(wù)器端的請求攔截模塊對到達應(yīng)用服務(wù)器的請求進行攔截;應(yīng)用服務(wù)器端的用戶信息獲取模塊獲取用戶信息組合,所述的用戶信息包括cookie信息、和/或IP信息、和/或session信息、和/或應(yīng)用請求參數(shù)信息(requestparameter)等;應(yīng)用服務(wù)器端的關(guān)鍵詞匹配模塊首先將用戶信息組合中對應(yīng)的關(guān)鍵詞組合與流量控制規(guī)則中的關(guān)鍵詞組合進行匹配,如果未匹配,則返回業(yè)務(wù)邏輯;如果匹配上,進入第一黑名單匹配模塊;應(yīng)用服務(wù)器端的第一黑名單匹配模塊,根據(jù)被推送到應(yīng)用服務(wù)器端的黑名單,對所述請求的用戶信息組合的關(guān)鍵詞組合對應(yīng)的值組合與黑名單中值組合的進行匹配;如果未匹配上,則將該值組合存入應(yīng)用服務(wù)器端的緩存日志模塊,并返回業(yè)務(wù)邏輯;如果匹配上,則進入第二黑名單匹配模塊;流量控制中心服務(wù)器端的第二黑名單匹配模塊,根據(jù)其當時的黑名單,將所述值組合與流量控制中心服務(wù)器端的黑名單中的值組合進行匹配,如果未匹配上,則將流量控制服務(wù)器中心服務(wù)器端的黑名單更新到應(yīng)用服務(wù)器端,將該值組合存入應(yīng)用服務(wù)器端的緩存日志模塊,并返回業(yè)務(wù)邏輯,反之,則進行過濾,即返回解鎖頁面給用戶端。用戶端根據(jù)要求發(fā)送解鎖請求到應(yīng)用服務(wù)器端后,應(yīng)用服務(wù)器端將解鎖消息發(fā)送給流量控制中心服務(wù)器端。流量控制中心服務(wù)器端的解鎖信息發(fā)送模塊將該用戶端對應(yīng)的請求的關(guān)鍵詞值從黑名單刪除,并將刪除后的黑名單更新到各應(yīng)用服務(wù)器端。其中,應(yīng)用服務(wù)器端的緩存日志模塊中的記錄則定時更新到流量控制中心服務(wù)器端的日志文件中;流量控制中心的規(guī)則引擎掃描該日志文件,tair訪問計數(shù)器統(tǒng)計對應(yīng)用戶請求的所述值組合的次數(shù),然后由規(guī)則引擎依據(jù)所述次數(shù),根據(jù)流量控制規(guī)則生成黑名單;流量控制中心再將該新的黑名單推送到各應(yīng)用服務(wù)器端。對于裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。以上對本申請所提供的一種流量控制方法和裝置,進行了詳細介紹,本文中應(yīng)用了具體個例對本申請的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本申請的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請的思想,在具體實施方式
及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本申請的限制。
權(quán)利要求
1.一種流量控制方法,其特征在于,包括: 請求攔截步驟,在應(yīng)用服務(wù)器端攔截用戶端的請求; 用戶信息獲取步驟,根據(jù)所述請求獲得用戶信息組合; 黑名單過濾步驟,將所述用戶信息組合,與黑名單中的用戶信息組合進行匹配,如果匹配,則進行過濾; 其中,所述黑名單通過如下步驟生成: 訪問計數(shù)步驟,根據(jù)所述請求對應(yīng)用戶信息組合的記錄日志,統(tǒng)計所述用戶請求對應(yīng)的用戶信息組合的訪問次數(shù); 黑名單生成步驟,針對所述訪問次數(shù),依據(jù)流量控制規(guī)則生成所述用戶信息組合的黑名單。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于: 所述的用戶信息包括cookie信息、和/或IP信息、和/或session信息、和/或應(yīng)用請求參數(shù)信息。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述的黑名單過濾步驟包括: 關(guān)鍵詞匹配步驟,將用戶信息組合中對應(yīng)的關(guān)鍵詞組合與流量控制規(guī)則中的關(guān)鍵詞組合進行匹配,如果匹配上,進入黑名單匹配步驟; 黑名單匹配步驟,將所述關(guān)鍵詞組合對應(yīng)的值組合與黑名單中的值組合進行匹配,如果匹配上,則進行過濾。
4.根據(jù)權(quán)利要求3所述的方`法,其特征在于,所述的黑名單匹配步驟包括: 第一黑名單匹配步驟,將所述值組合與應(yīng)用服務(wù)器端的黑名單中的值組合進行匹配,如果未匹配上,則將該值組合存入應(yīng)用服務(wù)器端的緩存日志,并返回業(yè)務(wù)邏輯,反之,則轉(zhuǎn)入第二黑名單匹配步驟; 第二黑名單匹配步驟,將所述值組合與流量控制中心服務(wù)器端的黑名單中的值組合進行匹配,如果未匹配上,則將流量控制服務(wù)器中心服務(wù)器端的黑名單更新到應(yīng)用服務(wù)器端,將該值組合存入應(yīng)用服務(wù)器端的緩存日志,并返回業(yè)務(wù)邏輯,反之,則進行過濾。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,對于所述應(yīng)用服務(wù)器端的緩存日志進行如下處理: 通過應(yīng)用服務(wù)器端將所述緩存日志更新到流量控制中心服務(wù)器端的日志文件中。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,對于所述日志文件進行如下操作: 通過流量控制中心服務(wù)器端掃描所述日志文件; 統(tǒng)計所述值組合的次數(shù); 依據(jù)所述次數(shù)根據(jù)流量控制規(guī)則生成所述值組合的黑名單。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,在用戶信息獲取步驟中包括: 步驟Al,抓取請求中包括的由應(yīng)用服務(wù)器端分配給已登錄用戶端的session id ; 步驟A2,依據(jù)所述session id,在應(yīng)用服務(wù)器端中提取與session id對應(yīng)session內(nèi)容。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于: 所述的過濾包括返回解鎖頁面給用戶端。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于:當用戶端進行解鎖,則將該用戶端對應(yīng)的請求的關(guān)鍵詞值從黑名單刪除,并將刪除后的黑名單更新到各應(yīng)用服務(wù)器端。
10.一種流量控制裝置,其特征在于,包括: 請求攔截模塊,用于在應(yīng)用服務(wù)器端攔截用戶端的請求; 用戶信息獲取模塊,用于根據(jù)所述請求獲得用戶信息組合; 黑名單過濾模塊,用于將所述用戶信息組合,與黑名單中的用戶信息組合進行匹配,如果匹配,則進行過濾; 其中,所述黑名單通過如下模塊生成: 訪問計數(shù)模塊,用于根據(jù)所述請求對應(yīng)用戶信息組合的記錄日志,統(tǒng)計所述用戶請求對應(yīng)的用戶信息組合的訪問次數(shù); 黑名單生成模塊,用于針 對所述訪問次數(shù),依據(jù)流量控制規(guī)則生成所述用戶信息組合的黑名單。
全文摘要
本申請?zhí)峁┝艘环N流量控制方法和裝置,涉及網(wǎng)絡(luò)技術(shù)領(lǐng)域。所述的方法包括在應(yīng)用服務(wù)器端攔截用戶端的請求;根據(jù)所述請求獲得用戶信息組合;將所述用戶信息組合,與黑名單中的用戶信息組合進行匹配,如果匹配,則進行過濾;其中,所述黑名單通過如下步驟生成根據(jù)所述請求對應(yīng)用戶信息組合的記錄日志,統(tǒng)計所述用戶請求對應(yīng)的用戶信息組合的訪問次數(shù);針對所述訪問次數(shù),依據(jù)流量控制規(guī)則生成所述用戶信息組合的黑名單。本申請在解決因網(wǎng)絡(luò)爬蟲或者惡意攻擊在短時間內(nèi)產(chǎn)生巨量網(wǎng)絡(luò)訪問時,降低服務(wù)器系統(tǒng)開銷,更準確的對用戶端的請求進行過濾,可降低對正常訪問用戶端錯誤過濾的情況;配置靈活,適用面廣泛,可有效的提高系統(tǒng)的過濾效率。
文檔編號H04L29/06GK103107948SQ20111036222
公開日2013年5月15日 申請日期2011年11月15日 優(yōu)先權(quán)日2011年11月15日
發(fā)明者王濤 申請人:阿里巴巴集團控股有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1