專利名稱:限制會話數(shù)的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種限制會話(session)數(shù)的方法及裝置。
背景技術(shù):
對于路由器、網(wǎng)絡(luò)地址轉(zhuǎn)換設(shè)備(Network Address Translation,NAT)以及防火墻設(shè)備,會話數(shù)是一個重要性能指標(biāo)。
以NAT為例,是基于地址和端口進(jìn)行轉(zhuǎn)換,可以實現(xiàn)一個IP地址被多個用戶同時共享,因而提高了地址利用率。NAT基于4層端口,通常以傳輸控制協(xié)議(Transfer Control Protocol,TCP)或用戶數(shù)據(jù)報協(xié)議(User DatagramProtocol,UDP)的會話形式進(jìn)行轉(zhuǎn)換,因此,NAT可支持的會話數(shù)是NAT中的重要指標(biāo)。單個用戶很難把NAT的出口帶寬消耗光,但確可輕易將NAT的會話資源全部消耗掉,從而導(dǎo)致其他用戶無法上網(wǎng)。因此,一般NAT都對單個用戶會話數(shù)量進(jìn)行限制,又稱NAT連接數(shù)限制。該方案可以很好地限制單個用戶的NAT會話數(shù),防止用戶對NAT會話資源過度占用而致使其他用戶無法上網(wǎng),可增加NAT的穩(wěn)定性。
然而,由于在實際操作中,用戶可能會使用一些不易控制的、占用大量會話數(shù)的應(yīng)用,例如對等聯(lián)網(wǎng)(peer-to-peer,P2P)類應(yīng)用,這些應(yīng)用具有高度的靈活性和智能性,能夠快速不停地嘗試建立新的連接,選擇更多更好的連接,從而占用大量的會話資源,一旦達(dá)到用戶會話數(shù)上限,該用戶就不可以再使用其他網(wǎng)絡(luò)業(yè)務(wù)了??梢?,也許是由于一次意外點(diǎn)擊P2P類應(yīng)用,就喪失了使用其他應(yīng)用的權(quán)利,這對于用戶而言是難以接受的。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供一種方法,以便對會話數(shù)進(jìn)行有效限制;與方法相對應(yīng),本發(fā)明還提供一種限制會話數(shù)的裝置。
為此,本發(fā)明實施例采用如下技術(shù)方案一種限制會話數(shù)的方法,包括以下步驟配置多個包括一條或多條訪問控制列表的限制組,并為每個限制組設(shè)定計數(shù)器及會話數(shù)最大值;接收并解析會話建立請求,按照請求所包含信息與訪問控制列表的對應(yīng)關(guān)系,對所述請求進(jìn)行限制組匹配;判斷所述請求所匹配的限制組的計數(shù)器值是否小于或等于該限制組的會話數(shù)最大值,若是,建立會話,并增加計數(shù)器值,否則,禁止建立會話。
上述方法還包括接收并解析會話刪除請求,對所述會話刪除請求進(jìn)行限制組匹配;在確定與會話刪除請求匹配的限制組后,按照所述會話刪除請求刪除會話,并減小與所述會話刪除請求匹配的限制組的計數(shù)器值。
上述方法還包括接收到會話老化通知后,對所述會話進(jìn)行限制組匹配;在確定與會話老化通知匹配的限制組后,按照所述會話老化通知老化會話,并減小會話所匹配的限制組的計數(shù)器值。
所述方法針對單個用戶進(jìn)行會話數(shù)限制,或者,針對支持多實例的虛擬專用網(wǎng)進(jìn)行會話數(shù)限制。
對限制組采用精度匹配方式進(jìn)行匹配所述請求能夠滿足多個限制組的訪問控制列表的要求時,選擇匹配精度最高的限制組作為最終匹配的限制組;或者對限制組采用順序匹配方式進(jìn)行匹配所述請求能夠滿足多個限制組的訪問控制列表的要求時,選擇順序在前的限制組作為最終匹配的限制組。
所述訪問控制列表依據(jù)IP五元組中一個或多個元素設(shè)置。
一種限制會話數(shù)的裝置,包括限制組配置單元,用于配置由一條或多條訪問控制列表組成的限制組,并為每個限制組設(shè)定計數(shù)器及會話數(shù)最大值;請求接收解析單元,用于接收并解析會話建立請求;匹配單元,用于對所述請求進(jìn)行限制組匹配,獲得匹配的限制組;判斷單元,用于判斷所匹配的限制組的計數(shù)器值是否小于或等于該限制組的會話數(shù)最大值,若是,發(fā)出允許建立會話指示,否則,發(fā)出禁止建立會話指示;會話執(zhí)行單元,當(dāng)所述判斷單元指示允許建立會話時,建立會話,并通知所述限制組配置單元增加所匹配的限制組的計數(shù)器值,當(dāng)所述判斷單元指示禁止建立會話時,禁止建立會話。
請求接收解析單元,進(jìn)一步用于接收會話刪除請求;匹配單元,進(jìn)一步用于對所述會話刪除請求進(jìn)行限制組匹配;會話執(zhí)行單元,刪除會話,并通知所述限制組配置單元減小所匹配的限制組的計數(shù)器值。
請求接收解析單元,進(jìn)一步用于接收會話老化通知;匹配單元,進(jìn)一步用于對所述老化的會話進(jìn)行限制組匹配;會話執(zhí)行單元,刪除會話,并通知所述限制組配置單元減小所匹配的限制組的計數(shù)器值。
所述裝置用于限制防火墻會話數(shù)、用于限制網(wǎng)絡(luò)地址轉(zhuǎn)換設(shè)備會話數(shù),或者,用于限制路由器會話數(shù)。
對于上述技術(shù)方案的技術(shù)效果分析如下(1)本發(fā)明不同于現(xiàn)有技術(shù)籠統(tǒng)限制用戶會話數(shù)的方式,對各類應(yīng)用的會話數(shù)通過配置不同的限制組分別進(jìn)行限制,從而避免由某類應(yīng)用(例如P2P)占用過多會話資源而導(dǎo)致無法進(jìn)行其余應(yīng)用的問題。
(2)本發(fā)明還可以降低計算機(jī)病毒的影響。例如,一些病毒會對外進(jìn)行TCP建鏈攻擊,或者進(jìn)行端口掃描,采用本發(fā)明,不會允許其無限制建鏈,在病毒建立會話數(shù)達(dá)到設(shè)定的會話數(shù)最大值后,即禁止建立會話,從而限制了病毒的進(jìn)一步入侵,也保證了其他應(yīng)用的正常運(yùn)行。
圖1為本發(fā)明方法實施例一首次建立會話流程圖;圖2為本發(fā)明方法實施例一后續(xù)建立會話流程圖;圖3為本發(fā)明方法實施例二刪除會話流程圖;圖4為本發(fā)明方法實施例二老化會話流程圖;圖5為本發(fā)明會話數(shù)限制的裝置示意圖。
具體實施例方式
本發(fā)明不同于現(xiàn)有技術(shù)籠統(tǒng)限制用戶會話數(shù)的方式,對各類應(yīng)用的會話數(shù)分別進(jìn)行限制,從而避免由某類應(yīng)用(例如P2P)占用過多會話資源而導(dǎo)致無法進(jìn)行其余應(yīng)用的問題。
正如前面分析,現(xiàn)有技術(shù)沒有對各類應(yīng)用進(jìn)行區(qū)分,而是籠統(tǒng)的限制用戶會話數(shù),對于設(shè)備(例如NAT)而言,確實能夠?qū)挃?shù)限制在其允許的一個范圍內(nèi);然而,從用戶角度來看,則認(rèn)為是網(wǎng)絡(luò)出現(xiàn)了問題有時能夠連接,有時則不能連接。對于瀏覽網(wǎng)頁的應(yīng)用,由于瀏覽一個網(wǎng)頁通常要建立多個會話才能完成,當(dāng)存在P2P類應(yīng)用的影響時,會導(dǎo)致網(wǎng)頁顯示不全,或根本無法連接,給用戶帶來很大不便。
本發(fā)明正是從現(xiàn)有技術(shù)的問題出發(fā),按照不同應(yīng)用類型,對用戶的會話數(shù)分別進(jìn)行限制。
概括而言,本發(fā)明包括以下步驟1、配置由一條或多條訪問控制列表(Access Control List,ACL)組成的限制組,并為每個限制組設(shè)定計數(shù)器及會話數(shù)最大值;2、接收并解析會話建立請求,對所述請求進(jìn)行限制組匹配;3、判斷所述請求所匹配的限制組的計數(shù)器值是否小于或等于該限制組的會話數(shù)最大值,若是,建立會話,并增加計數(shù)器值,否則,禁止建立會話。
其中,ACL早期用于對用戶的訪問進(jìn)行限制,提高系統(tǒng)性能,后來逐步擴(kuò)大到對數(shù)據(jù)流進(jìn)行分類,滿足配置規(guī)則的數(shù)據(jù)流就屬于一類,繼而進(jìn)行分別處理。在本發(fā)明中,ACL可以按照IP五元組進(jìn)行設(shè)置,IP五元組由“源IP、源端口、協(xié)議類型、目的IP和目的端口”構(gòu)成。ACL可以按照IP五元組中一個或多個元素進(jìn)行設(shè)置,一般是按照數(shù)據(jù)流出口方向“協(xié)議類型、目的IP和目的端口”設(shè)置。本發(fā)明中,一個限制組就對應(yīng)一類應(yīng)用,對各類型應(yīng)用的會話數(shù)分別限制,從而避免某一類應(yīng)用(P2P)占用過多會話資源而導(dǎo)致其余應(yīng)用無法進(jìn)行的問題。
本發(fā)明提供的方法和裝置適用于各種會話數(shù)限制場合和設(shè)備,例如,可用來限制路由器會話數(shù)、提供狀態(tài)檢測的防火墻會話數(shù)和NAT會話數(shù)。下面以NAT為例,對本發(fā)明方法和裝置的詳細(xì)實現(xiàn)進(jìn)一步闡述,對于其余應(yīng)用與NAT類似,本文不再一一贅述。
首先,介紹本發(fā)明方法實施例一(1)要為各類應(yīng)用配置會話數(shù)最大值以及計數(shù)器,每類應(yīng)用對應(yīng)一個限制組,那么多個限制組可構(gòu)成一個會話限制配置表。
參見表1,為利用“協(xié)議類型、目的IP和目的端口”設(shè)置ACL從而構(gòu)成的會話限制配置表的一個典型示例。
表1
其中,每一個限制組號代表一個限制組,也即表示一種應(yīng)用。每個限制組可包含一條ACL,例如限制組1;也可以包含多條ACL,例如,限制組2,它就由“協(xié)議類型TCP,目的端口80”和“協(xié)議類型TCP,目的端口443”兩條ACL組成。假設(shè)限制組2所包含的ACL表示HTTP協(xié)議,也即只有滿足上述條件的數(shù)據(jù)流(發(fā)起HTTP連接的數(shù)據(jù)流)才會匹配上該項限制組。
在實際配置時,也可將上述表1拆分為兩個表進(jìn)行兩次配置,首先配置“限制組號”和“ACL”,也即對ACL分類;然后再配置各限制組號對應(yīng)的會話數(shù)最大值以及計數(shù)器,也即對各個限制組進(jìn)行統(tǒng)計配置。
在配置階段,各ACL的計數(shù)器值都是默認(rèn)值,例如默認(rèn)0。
(2)為每一個請求建立會話的用戶按照表1進(jìn)行匹配,查找其對應(yīng)的限制組,從而獲知該限制組的會話數(shù)最大值,以及計數(shù)器當(dāng)前值。
在對表1所示的會話限制配置表進(jìn)行匹配時,可采用不同的匹配方式。一種是采用精度匹配,該方式是指優(yōu)先配置精度高的限制組,例如,某用戶發(fā)起“協(xié)議類型為TCP、目的端口為80”的訪問,通過匹配表1,則限制組號為1和2的兩項都滿足,然而限制組1中未對目的端口做要求,而限制組2明確要求目的端口為80,因此限制組2的匹配精度高,則認(rèn)為匹配項為限制組2。另一種是順序匹配,該方式是指各限制組中,優(yōu)先匹配順序靠前的限制組,例如上述“協(xié)議類型為TCP、目的端口為80”的訪問,則匹配項為限制組1。
當(dāng)用戶第一次請求建立某應(yīng)用的會話時,該應(yīng)用對應(yīng)的限制組的計數(shù)器必然為默認(rèn)值,自然小于會話數(shù)最大值,也即允許該用戶建立會話。
當(dāng)用戶后續(xù)再請求建立某應(yīng)用的會話時,此時限制組的計數(shù)器已具有一定的值,是否允許建立會話則需要進(jìn)一步判斷。
(3)判斷匹配的限制組的計數(shù)器值是否小于或等于該限制組的會話數(shù)最大值,如果是,則建立會話,并對計數(shù)器增加,例如加1;否則,則認(rèn)為該用戶建立的某應(yīng)用(限制組)會話數(shù)已經(jīng)達(dá)到會話數(shù)最大值,則不再允許為其建立會話。
實際上,可以通過一張連接限制表對每個用戶的會話數(shù)進(jìn)行維護(hù)。參見表2,為某用戶的連接限制表示例。
表2
其中,用戶ID是用戶的唯一標(biāo)識,可以采用源IP地址表示。對于源IP,可以采用“模糊”配置方式,即僅配置一個源IP范圍,滿足該范圍的所有用戶都認(rèn)為采用一個連接限制表。
對于表2所示的連接限制表,可以在用戶第一次請求建立會話時動態(tài)生成,動態(tài)生成的好處在于可以節(jié)約資源,只為當(dāng)前用戶建立表項;或者,在用戶數(shù)不是很多的情況下,也可以事先靜態(tài)配置完成,在具體匹配限制組后,再動態(tài)維護(hù)。
由于在維護(hù)表2時,必然要維護(hù)計數(shù)器值,因此在配置表1時,可以不配置計數(shù)器值一項。
正如前面(2)介紹,用戶請求建立會話,可分為首次請求和后續(xù)請求,兩種情況處理方式大致相同,只不過對于后續(xù)請求的情況,不需要建立連接限制表(表2),而直接利用首次請求時建立的即可。
參見圖1,為用戶首次建立會話流程圖。
包括
步驟101用戶首次請求建立NAT會話,即首次接收到用戶建立會話的數(shù)據(jù)包;步驟102查詢NAT規(guī)則,確定需要進(jìn)行NAT轉(zhuǎn)換;步驟103查詢會話限制配置組表(表1),匹配限制組,從而獲知該限制組的會話數(shù)最大值;步驟104為用戶建立連接限制表(表2),其中包括計數(shù)器;步驟105判斷計數(shù)器值是否小于或等于會話數(shù)最大值,若是,執(zhí)行步驟106,否則執(zhí)行步驟109;步驟106對計數(shù)器加1;步驟107建立NAT會話,完成NAT地址轉(zhuǎn)換;步驟108轉(zhuǎn)發(fā)數(shù)據(jù)包;步驟109禁止建立NAT會話。
參見圖2,為用戶后續(xù)建立會話流程圖。
包括步驟201用戶后續(xù)數(shù)據(jù)包進(jìn)入;步驟202查詢NAT規(guī)則,確定需要進(jìn)行NAT轉(zhuǎn)換;步驟203查詢會話限制配置表(表1),匹配限制組,從而獲知該限制組的會話數(shù)最大值;步驟204查詢該用戶的連接限制表(表2),獲知當(dāng)前計數(shù)器值;步驟205判斷計數(shù)器值是否小于或等于會話數(shù)最大值,若是,執(zhí)行步驟206,否則執(zhí)行步驟209;步驟206對計數(shù)器加1;步驟207建立NAT會話,完成NAT地址轉(zhuǎn)換;步驟208轉(zhuǎn)發(fā)數(shù)據(jù)包;步驟209禁止NAT轉(zhuǎn)換。
實際上,可以將表2添加到表1中,一并進(jìn)行維護(hù)。合并后參見表3,表3所示稱為“會話配置限制表”。
表3
之前介紹的采用表1和表2的方式,由于分別為每個用戶維護(hù)一個表項較少的連接限制表,從而占用資源少,但是由于各用戶的連接限制表是分別維護(hù)的,訪問效率不高;而采用表3的方式,由于針對每個用戶都需要再維護(hù)一遍表1中的各項參數(shù),則會占用相對多一些的資源,但是由于各用戶都統(tǒng)一存在與一個表中,訪問效率提高。兩種方式各有優(yōu)劣,可根據(jù)具體實際情況,選擇一種合適的實現(xiàn)方式。
下面,介紹本發(fā)明方法實施例二本實施例在實施例一的基礎(chǔ)上,增加刪除會話情況的實現(xiàn)。
需要刪除會話的情況包括兩種,一種是用戶主動請求刪除,例如,接收到TCP的刪除控制包后進(jìn)行的會話刪除;另外一種是NAT會話表老化,繼而需要對會話進(jìn)行刪除。
其中,上述提到的NAT會話表,是本領(lǐng)域一般所指會話表,它是為了記錄一個數(shù)據(jù)流的NAT變換關(guān)系,建立的一個正、反兩個方向的會話記錄,只要符合會話的正反向數(shù)據(jù)流就按統(tǒng)一的方式進(jìn)行地址轉(zhuǎn)換。通常NAT會話表由轉(zhuǎn)換前的IP五元組作為索引(key),以轉(zhuǎn)換后的IP五元組作為結(jié)果。
在了解了NAT會話表的基礎(chǔ)上,分別對兩種刪除會話的情況予以詳細(xì)介紹。
一、用戶主動請求刪除①當(dāng)接收到刪除會話請求(例如,TCP的刪除控制包)后,可以查詢會話限制配置表(表1)和連接限制表(表2),或者單獨(dú)查詢會話配置限制表(表3),得到匹配刪除請求的各表項,然后將匹配的限制組的計數(shù)器值進(jìn)行減小,例如減1,同時,刪除會話。此外,對于聯(lián)合查詢表1和表2的情況,如果表2為動態(tài)建立的,則可以判斷用戶是否在一定時間段內(nèi)沒有建立會話的請求,如果是,則可以將表2刪除,以節(jié)省資源;對于靜態(tài)建立表2的情形,一般是保留表2。
②此外,除了上述介紹的查詢表1和表2、或者表3,還可以查詢NAT會話表。但是這有一個前提,即在配置表1或表3時,將限制組號保存到NAT會話表中,這樣,會話刪除時可以直接從會話表中得到限制組號,繼而再查詢表2或表3,方便進(jìn)行計數(shù)器值的減操作。
參見圖3,為采用上述方式②來進(jìn)行的用戶請求刪除會話流程圖。
包括步驟301用戶請求刪除會話,即接收到用戶刪除數(shù)據(jù)包;步驟302查詢NAT會話表;步驟303從NAT會話表中得到限制組號;步驟304根據(jù)限制組號,從連接限制表(表2)或會話配置限制表(表3)中得到限制組號對應(yīng)的計數(shù)器值,并執(zhí)行計數(shù)器減操作;步驟305刪除NAT會話,完成NAT地址轉(zhuǎn)換;步驟306轉(zhuǎn)發(fā)數(shù)據(jù)包。
二、老化刪除對于會話表定時老化刪除會話的情況,同樣可以采用上述①或②的方式來對計數(shù)器值進(jìn)行減操作。
參見圖4,為采用上述方式②來進(jìn)行的老化刪除會話流程圖。
包括步驟401會話表老化定時器超時;步驟402查詢NAT會話表;步驟403確定需要老化會話;步驟404從NAT會話表中得到限制組號;步驟405根據(jù)限制組號,從連接限制表(表2)或會話配置限制表(表3)中得到限制組號對應(yīng)的計數(shù)器值,并執(zhí)行計數(shù)器減操作;步驟406刪除NAT會話,完成NAT地址轉(zhuǎn)換。
在實施例一和實施例二的基礎(chǔ)上,下面以一個具體應(yīng)用實例來對上述實施例提供的方法進(jìn)行說明。
例如,為了保證網(wǎng)頁瀏覽不受其他應(yīng)用的影響,設(shè)置了限制組1;為了保證TCP連接不受其他應(yīng)用影響,設(shè)置了限制組2;設(shè)置缺省限制組3。具體如表4所示。
表4
假設(shè)“協(xié)議類型TCP+目的端口80”為HTTP協(xié)議;“協(xié)議類型TCP+目的端口443”為HTTPS協(xié)議,即限制組1表示“網(wǎng)頁瀏覽”應(yīng)用。并假設(shè)對表4的匹配方式采用精度匹配。
當(dāng)用戶A發(fā)起HTTP訪問瀏覽網(wǎng)頁時,會查詢表4,匹配限制組1,得到會話數(shù)最大值200,此時,為用戶A建立連接限制表,連接限制表中包括限制組1的計數(shù)器值。然后判斷計數(shù)器值是否達(dá)到限制組1會話數(shù)最大值,由于是HTTP第一個連接,顯然沒有達(dá)到,此時將限制組1計數(shù)器值加1,同時建立HTTP連接。當(dāng)用戶A再發(fā)起B(yǎng)T訪問時,此處假設(shè)BT采用TCP協(xié)議,會查詢表4,匹配限制組22,然后再為用戶A建立的連接限制表中添加限制組2表項,判斷計數(shù)器值是否達(dá)到限制組2會話數(shù)最大值,由于是BT第一個連接,顯然沒有達(dá)到,此時將限制組2計數(shù)器值加1,同時建立BT連接。包含限制組1(HTTP)和限制組2(BT)訪問的用戶A的連接限制表參見表5。
表5
對于用戶A后續(xù)繼續(xù)發(fā)起訪問,則動態(tài)維護(hù)表5,主要是確定計數(shù)器值小于或等于會話數(shù)最大值時,對計數(shù)器值進(jìn)行增加操作;對于用戶A后續(xù)刪除會話,則也需要對表5進(jìn)行維護(hù),主要是對計數(shù)器值進(jìn)行減操作。
一般而言,BT訪問會大量建立連接,很快會達(dá)到限制組2的會話數(shù)最大值300,此時,即不再允許BT訪問。而由于HTTP和HTTPS是單獨(dú)的限制組,不會受到BT訪問的影響,這樣啟動BT下載將不會對用戶瀏覽網(wǎng)頁造成任何影響。
另外,本發(fā)明還可以降低計算機(jī)病毒的影響。例如,一些病毒會對外進(jìn)行TCP建鏈攻擊,或者進(jìn)行端口掃描,采用本發(fā)明,不會允許其無限制建鏈,在病毒建立會話數(shù)達(dá)到設(shè)定的會話數(shù)最大值后,即禁止建立會話,從而限制了病毒的進(jìn)一步入侵,也保證了其他應(yīng)用的正常運(yùn)行。
下面,介紹本發(fā)明方法實施例三上述的實施例一和實施例二,都是針對單個用戶而言,進(jìn)行的會話數(shù)限制,而本實施例是針對支持多實例的虛擬專用網(wǎng)(Virtual Private Network,VPN)進(jìn)行會話數(shù)限制。
實施例一或?qū)嵤├H針對用戶進(jìn)行會話數(shù)限制,而實施例三是針對包括多個用戶的一個VPN進(jìn)行限制,指示限制對象不同,其實現(xiàn)原理和細(xì)節(jié)是類似的。
下面仍以一個具體應(yīng)用實例來對實施例三提供的方法進(jìn)行說明。
例如,為了保證網(wǎng)頁瀏覽不受其他應(yīng)用的影響,設(shè)置了限制組1;為了保證TCP連接不受其他應(yīng)用影響,設(shè)置了限制組2;設(shè)置缺省限制組3。具體如表6所示。
表6
假設(shè)“協(xié)議類型TCP+目的端口80”為HTTP協(xié)議;“協(xié)議類型TCP+目的端口443”為HTTPS協(xié)議,即“網(wǎng)頁瀏覽”。并假設(shè)對表6的匹配方式采用精度匹配。
當(dāng)VPN_A的用戶A發(fā)起HTTP訪問瀏覽網(wǎng)頁時,會查詢表6,匹配限制組1,得到會話數(shù)最大值20000,此時,為VPN_A建立連接限制表,連接限制表中包括限制組1的計數(shù)器值。然后判斷計數(shù)器值是否達(dá)到限制組1會話數(shù)最大值,由于是VPN_A第一個HTTP連接,顯然沒有達(dá)到,此時將限制組1計數(shù)器值加1,同時為用戶A建立HTTP連接。當(dāng)VPN_A的用戶B再發(fā)起HTTP訪問時,也匹配限制組1,判斷限制組1計數(shù)器值是否達(dá)到會話數(shù)最大值,如果沒有,將限制組1計數(shù)器值加1,同時為用戶B建立HTTP連接,否則,拒絕為用戶B建立HTTP連接。
VPN_A的連接限制表參見表7。
表7
對于VPN_A中用戶后續(xù)繼續(xù)發(fā)起訪問,則動態(tài)維護(hù)表7,主要是確定計數(shù)器值小于或等于會話數(shù)最大值時,對計數(shù)器值進(jìn)行增加操作;對于VPN_A中用戶后續(xù)刪除會話,則也需要對表7進(jìn)行維護(hù),主要是對計數(shù)器值進(jìn)行減操作。
與方法相對應(yīng),本發(fā)明還提供一種限制會話數(shù)的裝置,該裝置用于限制防火墻會話數(shù)、NAT會話數(shù)或者路由器會話數(shù),可以針對用戶或VPN進(jìn)行限制。
參見圖5,為該裝置內(nèi)部結(jié)構(gòu)示意圖,包括限制組配置單元501,用于配置由一條或多條ACL組成的限制組,并為每個限制組設(shè)定計數(shù)器及會話數(shù)最大值;請求接收解析單元502,用于接收并解析會話建立請求;匹配單元503,用于對所述請求進(jìn)行限制組匹配;判斷單元504,用于判斷所匹配的限制組的計數(shù)器值是否小于或等于該限制組的會話數(shù)最大值,若是,發(fā)出允許建立會話指示,否則,發(fā)出禁止建立會話指示;會話執(zhí)行單元505,當(dāng)判斷單元504指示允許建立會話時,建立會話,并通知所述限制組配置單元501增加所匹配的限制組的計數(shù)器值,當(dāng)判斷單元504指示禁止建立會話時,禁止建立會話。
當(dāng)用戶或VPN主動請求刪除會話時,各單元增加以下功能請求接收解析單元502,進(jìn)一步用于接收會話刪除請求;匹配單元503,進(jìn)一步用于對會話刪除請求進(jìn)行限制組匹配;會話執(zhí)行單元505,刪除會話,并通知限制組配置單元501減小所匹配的限制組的計數(shù)器值。
當(dāng)由于老化需要刪除會話時,各單元增加以下功能請求接收解析單元502,進(jìn)一步用于接收會話老化通知;匹配單元503,進(jìn)一步用于對所述老化的會話進(jìn)行限制組匹配;會話執(zhí)行單元505,刪除會話,并通知所述限制組配置單元501減小所匹配的限制組的計數(shù)器值。
本發(fā)明提供的裝置具體實現(xiàn)細(xì)節(jié)可參見方法實施例,在此不再贅述。
以上所述僅是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種限制會話數(shù)的方法,其特征在于,包括配置多個包括一條或多條訪問控制列表的限制組,并為每個限制組設(shè)定計數(shù)器及會話數(shù)最大值;接收并解析會話建立請求,按照請求所包含信息與訪問控制列表的對應(yīng)關(guān)系,對所述請求進(jìn)行限制組匹配;判斷所述請求所匹配的限制組的計數(shù)器值是否小于或等于該限制組的會話數(shù)最大值,若是,建立會話,并增加計數(shù)器值,否則,禁止建立會話。
2.根據(jù)權(quán)利要求1所述方法,其特征在于,還包括接收并解析會話刪除請求,對所述會話刪除請求進(jìn)行限制組匹配;在確定與會話刪除請求匹配的限制組后,按照所述會話刪除請求刪除會話,并減小與所述會話刪除請求匹配的限制組的計數(shù)器值。
3.根據(jù)權(quán)利要求1所述方法,其特征在于,還包括接收到會話老化通知后,對所述會話進(jìn)行限制組匹配;在確定與會話老化通知匹配的限制組后,按照所述會話老化通知老化會話,并減小會話所匹配的限制組的計數(shù)器值。
4.根據(jù)權(quán)利要求1、2或3所述方法,其特征在于,所述方法針對單個用戶進(jìn)行會話數(shù)限制,或者,針對支持多實例的虛擬專用網(wǎng)進(jìn)行會話數(shù)限制。
5.根據(jù)權(quán)利要求1、2或3所述方法,其特征在于,對限制組采用精度匹配方式進(jìn)行匹配所述請求能夠滿足多個限制組的訪問控制列表的要求時,選擇匹配精度最高的限制組作為最終匹配的限制組;或者對限制組采用順序匹配方式進(jìn)行匹配所述請求能夠滿足多個限制組的訪問控制列表的要求時,選擇順序在前的限制組作為最終匹配的限制組。
6.根據(jù)權(quán)利要求1、2或3所述方法,其特征在于,所述訪問控制列表依據(jù)IP五元組中一個或多個元素設(shè)置。
7.一種限制會話數(shù)的裝置,其特征在于,包括限制組配置單元,用于配置由一條或多條訪問控制列表組成的限制組,并為每個限制組設(shè)定計數(shù)器及會話數(shù)最大值;請求接收解析單元,用于接收并解析會話建立請求;匹配單元,用于對所述請求進(jìn)行限制組匹配,獲得匹配的限制組;判斷單元,用于判斷所匹配的限制組的計數(shù)器值是否小于或等于該限制組的會話數(shù)最大值,若是,發(fā)出允許建立會話指示,否則,發(fā)出禁止建立會話指示;會話執(zhí)行單元,當(dāng)所述判斷單元指示允許建立會話時,建立會話,并通知所述限制組配置單元增加所匹配的限制組的計數(shù)器值,當(dāng)所述判斷單元指示禁止建立會話時,禁止建立會話。
8.根據(jù)權(quán)利要求7所述裝置,其特征在于,請求接收解析單元,進(jìn)一步用于接收會話刪除請求;匹配單元,進(jìn)一步用于對所述會話刪除請求進(jìn)行限制組匹配;會話執(zhí)行單元,刪除會話,并通知所述限制組配置單元減小所匹配的限制組的計數(shù)器值。
9.根據(jù)權(quán)利要求7所述裝置,其特征在于,請求接收解析單元,進(jìn)一步用于接收會話老化通知;匹配單元,進(jìn)一步用于對所述老化的會話進(jìn)行限制組匹配;會話執(zhí)行單元,刪除會話,并通知所述限制組配置單元減小所匹配的限制組的計數(shù)器值。
10.根據(jù)權(quán)利要求7、8或9所述裝置,其特征在于,所述裝置用于限制防火墻會話數(shù)、用于限制網(wǎng)絡(luò)地址轉(zhuǎn)換設(shè)備會話數(shù),或者,用于限制路由器會話數(shù)。
全文摘要
本發(fā)明公開了一種限制會話數(shù)的方法,包括以下步驟配置多個包含一條或多條訪問控制列表的限制組,并為每個限制組設(shè)定計數(shù)器及會話數(shù)最大值;接收并解析會話建立請求,對所述請求進(jìn)行限制組匹配;判斷所述請求所匹配的限制組的計數(shù)器值是否小于或等于該限制組的會話數(shù)最大值,若是,建立會話,并增加計數(shù)器值,否則,禁止建立會話。應(yīng)用本發(fā)明,能夠有效避免由于某類應(yīng)用占用大量會話而導(dǎo)致其余應(yīng)用無法進(jìn)行的問題。與上述方法相對應(yīng),本發(fā)明還提供一種限制會話數(shù)的裝置。
文檔編號H04L29/12GK101083665SQ200710135879
公開日2007年12月5日 申請日期2007年7月30日 優(yōu)先權(quán)日2007年7月30日
發(fā)明者盧勝文 申請人:杭州華三通信技術(shù)有限公司