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

對多重搜索實行的過濾器規(guī)則進(jìn)行劃分的方法和系統(tǒng)的制作方法

文檔序號:7755733閱讀:171來源:國知局
專利名稱:對多重搜索實行的過濾器規(guī)則進(jìn)行劃分的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及計算機(jī)系統(tǒng),特別涉及一種用于更高效搜索過濾器規(guī)則以與鍵進(jìn)行匹配的方法和系統(tǒng)。
背景技術(shù)
圖1示出可以連接到因特網(wǎng)30的傳統(tǒng)網(wǎng)絡(luò)10和20。網(wǎng)絡(luò)10包括主機(jī)12、14和16,而網(wǎng)絡(luò)20包括主機(jī)22和24。各網(wǎng)絡(luò)10和20還分別包括交換機(jī)18和26,并且可以分別包括一個或多個服務(wù)器如服務(wù)器17、19和28。另外,網(wǎng)絡(luò)10和20還可以分別包括一個或多個接到因特網(wǎng)30的網(wǎng)關(guān)13和25。路由器和還可以控制網(wǎng)絡(luò)10和20上的通信消息(traffic)的網(wǎng)絡(luò)10和20的其他部分未被顯式示出,它們將被視作分別由交換機(jī)18和26所固有描述的以及更一般的網(wǎng)絡(luò)10和20。
圖2示出典型交換機(jī)50的一部分,它可以用于交換機(jī)18和26以及/或者路由器(未示出)。交換機(jī)50包括網(wǎng)絡(luò)處理器52和存儲器54。交換機(jī)50典型地還包括其他組件(未示出)。網(wǎng)絡(luò)處理器52管理交換功能,包括使用下述規(guī)則對分組(packet)進(jìn)行分類。存儲器54保存與規(guī)則相關(guān)的數(shù)據(jù)。
參照圖1和2,為了管理網(wǎng)絡(luò)如網(wǎng)絡(luò)10或20中的通信,使用過濾器規(guī)則。過濾器規(guī)則典型地由交換機(jī)、路由器和用來執(zhí)行分組分類的網(wǎng)絡(luò)其他部分使用。各過濾器規(guī)則用來對正在通過網(wǎng)絡(luò)傳輸?shù)姆纸M進(jìn)行分類,從而確定如何處理分組以及執(zhí)行什么服務(wù)。例如,過濾器規(guī)則可以用于測試從外部源進(jìn)入網(wǎng)絡(luò)的分組以確保可以阻止闖入網(wǎng)絡(luò)的企圖。例如,可以測試從因特網(wǎng)30進(jìn)入網(wǎng)絡(luò)10的通信消息,從而確保拒絕來自未經(jīng)授權(quán)源的分組進(jìn)入。類似地,可以防止來自網(wǎng)絡(luò)一部分的分組訪問網(wǎng)絡(luò)的另一部分。例如,可以防止來自某些主機(jī)12、14或16的分組訪問服務(wù)器17或服務(wù)器19。還可以記錄主機(jī)試圖連接服務(wù)器的情況,從而網(wǎng)絡(luò)擁有者可以采取適當(dāng)?shù)牟僮?。這些過濾器規(guī)則還可以用來根據(jù)分組的優(yōu)先級傳輸通信消息。例如,即使當(dāng)來自主機(jī)14或16的分組可能丟失時,也可以傳輸來自特定主機(jī)如主機(jī)12的分組,因為該分組具有更高優(yōu)先級。過濾器規(guī)則還可以用來確保當(dāng)非常擁擠時即使傳輸來自已建會話的通信消息也不允許開始新會話。還可以根據(jù)過濾器規(guī)則實現(xiàn)其他功能。
過濾器規(guī)則典型地還具有優(yōu)先級。過濾器規(guī)則還可以根據(jù)各過濾器規(guī)則的優(yōu)先級來交互。過濾器規(guī)則的優(yōu)先級可以用來確定當(dāng)鍵與兩條或多條過濾器規(guī)則的范圍匹配時所采取的操作。在這種情況下,具有較高優(yōu)先級的過濾器規(guī)則控制所采取的操作。例如,第一規(guī)則可以是處理大多數(shù)情況的缺省規(guī)則。第二規(guī)則可以是第一規(guī)則的例外。第二規(guī)則典型地將具有比第一規(guī)則更高的優(yōu)先級,以確保在分組與第一和第二規(guī)則都匹配的情況下將實行第二規(guī)則。在傳統(tǒng)系統(tǒng)中,所有過濾器規(guī)則根據(jù)它們的優(yōu)先級排在一個列表中。另外,在傳統(tǒng)系統(tǒng)中,各過濾器規(guī)則的不同優(yōu)先級由其在列表中的位置來反映。因此,在傳統(tǒng)系統(tǒng)中,優(yōu)先級數(shù)與過濾器規(guī)則數(shù)相同。因此,在傳統(tǒng)系統(tǒng)中,過濾器規(guī)則的優(yōu)先級數(shù)目大。
為了判定特定規(guī)則是否將作用于特定分組,對鍵進(jìn)行測試。典型所用的鍵是分組的網(wǎng)際協(xié)議(IP)首標(biāo)和分組的其他首標(biāo)。IP首標(biāo)典型地包含IP源地址(SA)和IP目的地址(DA)以及協(xié)議類型(P)字段。IP分組有效荷載典型地封裝另一首標(biāo)和有效荷載結(jié)構(gòu),并且內(nèi)部結(jié)構(gòu)典型地是傳輸控制協(xié)議(TCP)、用戶數(shù)據(jù)報協(xié)議(UDP)或其他標(biāo)準(zhǔn)結(jié)構(gòu)。TCP、UDP或其他標(biāo)準(zhǔn)結(jié)構(gòu)的首標(biāo)又包含源端口(SP)和目的端口(DP)值。這些字段典型地排序為SA、DA、SP、DP和P,并且分別為32、32、16、16和8位。規(guī)則典型地作用于這些字段中的一個或多個。例如,根據(jù)源和/或目的地址,規(guī)則可以判定來自特定主機(jī)的分組是否允許到達(dá)特定目的地址。
此外,鍵經(jīng)常還包含不同于上述字段的另外位。例如,開始會話的TCP同步分組可以具有與現(xiàn)有會話的TCP數(shù)據(jù)分組不同的特征。該特征使用上述字段之外的位來體現(xiàn)。該另外位可以由管理網(wǎng)絡(luò)上的通信消息的過濾器規(guī)則使用。例如,當(dāng)網(wǎng)絡(luò)擁擠時,過濾器規(guī)則可以主動丟棄TCP同步分組,而傳輸現(xiàn)有會話的TCP分組。這些操作允許網(wǎng)絡(luò)繼續(xù)工作并且?guī)椭鷾p輕擁擠。然而,為了執(zhí)行該功能,規(guī)則檢查TCP首標(biāo)中的同步位以判定分組是否是TCP同步過程的一部分。因此,過濾器規(guī)則典型地使用包括分組的IP首標(biāo)和其他首標(biāo)的至少一些字段并且可以包括另外位的鍵來工作。
在測試鍵中,判定是否對特定分組實行過濾器規(guī)則從而對分組進(jìn)行分類。鍵通過判定鍵的某些字段是否在規(guī)則的范圍內(nèi)來測試。各規(guī)則在一個或多個量綱中包含一個值范圍或一個確切值。每個量綱對應(yīng)于鍵的一個字段(典型地是IP首標(biāo)或其他首標(biāo))。一種過濾器規(guī)則字段范圍可以是單個值。在這種情況下,鍵將必須確切匹配規(guī)則值以作用于分組。其他規(guī)則具有某一字段范圍,該范圍由帶有以固定最高有效位開始的特定數(shù)目連續(xù)位和以任意最低有效位結(jié)束的其他連續(xù)位的所有二進(jìn)制值組成。在這種情況下,固定位稱作前綴。前綴是包含一定數(shù)目的1和0(1或0)的二進(jìn)制數(shù),其后面是占位符或通配符(*)。范圍的下界通過用0替換所有通配符來獲得。范圍的上界通過用1替換所有通配符來確定。其他規(guī)則具有任意范圍。任意范圍是不能使用單個前綴表達(dá)的范圍。然而,任意范圍可以使用多個前綴來表達(dá)。
各種機(jī)制可以用于搜索過濾器規(guī)則以與鍵進(jìn)行匹配。例如,如果過濾器規(guī)則的特定量綱要求確切匹配,則搜索可以包括搜索過濾器規(guī)則哈希值(hashed value)的表。搜索其他過濾器規(guī)則以與鍵進(jìn)行匹配可能要求遍歷二元決策樹或其他機(jī)制。根據(jù)用來搜索過濾器規(guī)則的機(jī)制以及過濾器規(guī)則,搜索效率可能不同。
因此,需要一種改善搜索過濾器規(guī)則以與鍵進(jìn)行匹配的效率的系統(tǒng)和方法。本發(fā)明就是解決這一需要。

發(fā)明內(nèi)容
本發(fā)明提供一種用于在計算機(jī)系統(tǒng)中存儲多條過濾器規(guī)則的方法和系統(tǒng)。所述多條過濾器規(guī)則在至少一個量綱中使用至少一個值范圍,其中,量綱也稱作字段。該方法和系統(tǒng)包括將所述多條過濾器規(guī)則中的一部分分離為多個過濾器規(guī)則純子集。所述多個過濾器規(guī)則純子集均包括所述多條過濾器規(guī)則中的至少一條。該方法和系統(tǒng)還包括組合所述多個過濾器規(guī)則純子集中的一部分以提供組合子集,并且判定所述多條過濾器規(guī)則的使用效率是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善。如果結(jié)果是所得到子集的實行速度和/或存儲效率仍可以作進(jìn)一步的改善,則另外重新組合過濾器規(guī)則的純子集或非純子集。該方法和系統(tǒng)還包括如果搜索和/或存儲所述多條過濾器規(guī)則的效率得到改善,則存儲包括經(jīng)過組合的所述多個過濾器規(guī)則子集中的一部分的所述多條過濾器規(guī)則。
根據(jù)在此公開的系統(tǒng)和方法,本發(fā)明提供一種劃分過濾器規(guī)則子集的機(jī)制,它可以改善用于與鍵進(jìn)行匹配的過濾器規(guī)則的存儲效率和/或?qū)嵭兴俣取?br>

圖1是其中可以使用本發(fā)明的網(wǎng)絡(luò)計算機(jī)系統(tǒng)的圖;圖2是其中可以使用本發(fā)明的交換機(jī)的圖;圖3是示出用于改善實行效率的存儲過濾器規(guī)則的本發(fā)明系統(tǒng)的一個實施例的方框圖;圖4是示出用于在計算機(jī)系統(tǒng)中存儲與過濾器規(guī)則相關(guān)的數(shù)據(jù)的本發(fā)明方法的一個實施例的高層流程圖;圖5是示出用于將計算機(jī)系統(tǒng)中的過濾器規(guī)則劃分為純子集的本發(fā)明方法的一個實施例的流程圖;圖6是示出用于對過濾器規(guī)則純子集進(jìn)行排序的本發(fā)明方法的一個實施例的流程圖;圖7是示出用于測試過濾器規(guī)則的組合以改善效率的本發(fā)明方法的一個
具體實施例方式
本發(fā)明涉及分組分類的一種改進(jìn)。下面描述讓本領(lǐng)域的普通技術(shù)人員能夠?qū)崿F(xiàn)和使用本發(fā)明,并且它是在專利申請及其要求的上下文中提供的。對優(yōu)選實施例的各種修改對于本領(lǐng)域的技術(shù)人員而言將是明顯的,并且在此所述的一般原理可以應(yīng)用于其他實施例。因此,本發(fā)明不限于所示實施例,而是具有與在此所述的原理和特性一致的最廣范圍。
本發(fā)明提供一種用于在計算機(jī)系統(tǒng)中存儲多條過濾器規(guī)則的方法和系統(tǒng)。所述多條過濾器規(guī)則在至少一個量綱或字段中使用至少一個值范圍。該方法和系統(tǒng)包括將所述多條過濾器規(guī)則中的一部分分離為多個過濾器規(guī)則純子集。所述多個過濾器規(guī)則純子集均包括所述多條過濾器規(guī)則中的至少一條。該方法和系統(tǒng)還包括組合所述多個過濾器規(guī)則純子集中的一部分以提供組合子集,并且判定所述多條過濾器規(guī)則的使用效率是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善。如果結(jié)果是所得到子集的實行速度和/或存儲效率仍可以作進(jìn)一步的改善,則另外重新組合過濾器規(guī)則的純子集或非純子集。該方法和系統(tǒng)還包括如果搜索和/或存儲所述多條過濾器規(guī)則的效率得到改善,則存儲包括經(jīng)過組合的所述多個過濾器規(guī)則子集中的一部分的所述多條過濾器規(guī)則。
本發(fā)明將按照一組特定規(guī)則來描述。然而,本領(lǐng)域的普通技術(shù)人員應(yīng)該清楚,該方法和系統(tǒng)將有效用于使用其他范圍的其他規(guī)則。本領(lǐng)域的普通技術(shù)人員還應(yīng)該清楚,該方法和系統(tǒng)有效用于使用其他任務(wù)規(guī)則的其他系統(tǒng)。然而,絕不反對將該方法和系統(tǒng)應(yīng)用于其他規(guī)則。
為更具體闡述本發(fā)明的方法和系統(tǒng),現(xiàn)在參照圖3,圖3示出了利用三元內(nèi)容可尋址存儲器(TCAM)來存儲與過濾器規(guī)則相關(guān)的數(shù)據(jù)的本發(fā)明系統(tǒng)100的一個實施例的方框圖。系統(tǒng)100最好用于網(wǎng)絡(luò)如網(wǎng)絡(luò)10和20中。更具體地說,系統(tǒng)100最好用于如交換機(jī)18或26的組件中。然而,系統(tǒng)100可以用于計算機(jī)系統(tǒng)的其他部分中。這樣,系統(tǒng)100與過濾器規(guī)則一起使用。過濾器規(guī)則在一個或多個量綱中具有范圍。這些量綱對應(yīng)于鍵的字段,包括IP首標(biāo)或其他首標(biāo)的字段。各范圍可以通過一個或多個前綴來描述。
系統(tǒng)100包括處理器102、存儲器104和性能評價工具(“PET 106”)。存儲器104最好類似于存儲器54,并且用于存儲與過濾器規(guī)則相關(guān)的數(shù)據(jù)。處理器102最好執(zhí)行下述功能如將過濾器規(guī)則劃分為純子集以及幫助組合過濾器規(guī)則的純子集。過濾器規(guī)則的純子集是帶有標(biāo)為i=1,2,3,…,N的N(典型為5)個字段的過濾器規(guī)則集。對于每個字段i,必須只占三種可能性中的一種。各規(guī)則中的字段i可以是對于各規(guī)則完全一致的可能不同值;各規(guī)則中的字段i可以完全是通配符;或者各規(guī)則中的字段i可以是同一公共前綴。例如,具有下面字段的下列過濾器規(guī)則一起形成一個純子集。
表1規(guī)則源地址目的地址源端口目的端口協(xié)議R1 1.2.3.45.6.7.8 80 * 6R2 1.2.3.45.6.7.20 80 * 6R3 1.2.3.45.6.7.52 80 * 6R4 1.2.3.45.6.7.79 80 * 6R5 1.2.3.45.6.7.11380 * 6過濾器規(guī)則R1、R2、R3、R4和R5具有相同的源地址、源端口和協(xié)議。R1、R2、R3、R4和R5的這些字段還要求確切匹配。過濾器規(guī)則R1、R2、R3、R4和R5的目的地址全部通過同一前綴5.6.7來描述。所有過濾器規(guī)則R1、R2、R3、R4和R5的目的端口可以為任何值。因此,過濾器規(guī)則R1、R2、R3、R4和R5形成一個純子集。
PET 106可以用來評價使用特定過濾器規(guī)則集的系統(tǒng)如交換機(jī)的性能。PET 106最好考慮對過濾器規(guī)則執(zhí)行的搜索類型、正被搜索的過濾器規(guī)則數(shù)目以及用來執(zhí)行搜索的機(jī)制如二元決策樹或TCAM。PET 106用來如下所述評估過濾器規(guī)則不同組合的效率。在一個優(yōu)選實施例中,PET 106測量存儲過濾器規(guī)則的代價和/或?qū)嵭羞^濾器規(guī)則的速度。
圖4是示出用于在計算機(jī)系統(tǒng)中存儲與過濾器規(guī)則相關(guān)的數(shù)據(jù)的本發(fā)明方法150的一個實施例的高層流程圖。方法150最好使用系統(tǒng)100來實現(xiàn)。對要用于計算機(jī)系統(tǒng)例如交換機(jī)18或26中的過濾器規(guī)則集執(zhí)行方法150。通過步驟152,將過濾器規(guī)則劃分為純子集。步驟152使用處理器102來執(zhí)行。通過步驟154,嘗試性地組合一些純子集來提供組合子集。在一個優(yōu)選實施例中,在步驟154嘗試性地組合兩個過濾器規(guī)則子集。步驟154最好首先組合規(guī)則(元素)最多的子集。通過步驟156,判定過濾器規(guī)則的使用效率是否通過組合得到改善。在一個優(yōu)選實施例中,過濾器規(guī)則的使用效率通過存儲過濾器規(guī)則的代價或?qū)嵭羞^濾器規(guī)則的速度來給出。過濾器規(guī)則的使用效率也可以是存儲過濾器規(guī)則的代價和實行過濾器規(guī)則的速度的組合。如果過濾器規(guī)則的使用效率得到改善,則通過步驟158,以在步驟154獲得的組合存儲過濾器規(guī)則。否則,不存儲組合。然后,通過步驟160,可以再次執(zhí)行步驟154-158以進(jìn)一步改善過濾器規(guī)則的搜索性能。在一個優(yōu)選實施例中,重復(fù)步驟154-158,直到組合過濾器規(guī)則各部分不再改善性能為止。然而,在另一個實施例中,可以使用另一目標(biāo)。例如,可以重復(fù)步驟154-158,直到達(dá)到特定性能級別或者進(jìn)一步組合所實現(xiàn)的性能改善處于或低于特定級別為止。因此,重復(fù)步驟154-158,直到達(dá)到期望性能目標(biāo)。
因此,使用方法150和系統(tǒng)100,將過濾器規(guī)則劃分為純子集。搜索純子集典型地更簡單和更高效。例如,在表1的規(guī)則純子集中,哈希處理可以忽略除目的地址字段之外的所有鍵字段。另外,聯(lián)合通過重復(fù)應(yīng)用方法150而形成的子集(形成某對的合并),直到進(jìn)一步的性能改善不可能或者滿足某種其他標(biāo)準(zhǔn)。如果子集組合不提高過濾器規(guī)則搜索效率,則在方法150中不存儲組合。然而,如果組合提高效率,則一起存儲從而一起搜索組合子集。因此,改善使用方法150和/或系統(tǒng)100的計算機(jī)系統(tǒng)如交換機(jī)18或26的性能。
圖5是示出用于將計算機(jī)系統(tǒng)中的過濾器規(guī)則劃分為純子集的本發(fā)明方法200的一個實施例的流程圖。通過步驟202,選擇一條過濾器規(guī)則作為當(dāng)前純子集的一部分。步驟202最好還包括從計算機(jī)系統(tǒng)的過濾器規(guī)則列表中刪除該過濾器規(guī)則。通過步驟204,選擇剩余過濾器規(guī)則之一作為當(dāng)前規(guī)則。通過步驟206,判定當(dāng)前規(guī)則是否加到當(dāng)前純子集以形成一個新的純子集。因此,步驟206可以包括,測試當(dāng)前規(guī)則,以確保當(dāng)前過濾器規(guī)則的字段要求確切匹配且與當(dāng)前子集中過濾器規(guī)則的相應(yīng)字段相同,可以通過與子集中過濾器規(guī)則的相應(yīng)字段的前綴相同的前綴來描述,或者可以與子集中過濾器規(guī)則的相應(yīng)字段一樣全部采用通配符來描述。
如果判定當(dāng)前過濾器規(guī)則不能加到當(dāng)前純子集并且形成新的純子集,則通過步驟208不將當(dāng)前規(guī)則加到當(dāng)前純子集。如果當(dāng)前過濾器規(guī)則可以加到當(dāng)前純子集來形成新的純子集,則通過步驟210將當(dāng)前規(guī)則加到當(dāng)前純子集。另外,通過步驟212,從規(guī)則列表中刪除當(dāng)前規(guī)則。
通過步驟214,判定是否存在任何剩余規(guī)則要進(jìn)行測試以與當(dāng)前純子集合并。如果是,則返回到步驟204,并且選擇另一條當(dāng)前過濾器規(guī)則。如果測試完畢所有過濾器規(guī)則以包括在當(dāng)前純子集中,則通過步驟216判定是否存在任何過濾器規(guī)則剩余(未被刪除)。如果否,則方法200結(jié)束。否則,返回到步驟202,并且形成另一個純子集。
因此,使用方法200,可以將過濾器規(guī)則劃分為純子集。因此,方法200最好用來執(zhí)行圖4所示的方法150的步驟152?;氐綀D5,方法152將計算機(jī)系統(tǒng)的過濾器規(guī)則劃分為考慮計算機(jī)系統(tǒng)的所有過濾器規(guī)則所需的多個純子集。一旦將過濾器規(guī)則劃分為純子集,則可以如下所述組合純子集。
圖6是示出用于對過濾器規(guī)則的純子集進(jìn)行排序的本發(fā)明方法230的一個實施例的流程圖。在一個優(yōu)選實施例中,方法230用來準(zhǔn)備過濾器規(guī)則的純子集以在圖4所示的方法150的步驟154進(jìn)行組合。回到圖6,通過步驟232,確定各純子集中的元素數(shù)。然后,通過步驟234,可以丟棄空子集。通過步驟236,以非遞增元素數(shù)依次列出純子集。因此,使用方法230,以條目最多的純子集為開始且以條目最少的純子集為結(jié)束列出各純子集。結(jié)果,當(dāng)結(jié)合方法230執(zhí)行步驟154或下述方法250時,首先將測試元素最多的純子集以與其他子集合并。因此,方法230可以允許方法150和250更快速地導(dǎo)致提高存儲效率或執(zhí)行過濾器規(guī)則以與鍵進(jìn)行匹配的搜索速度(使用效率)的純子集組合。
圖7是示出用于測試過濾器規(guī)則的組合以改善效率的本發(fā)明方法250的一個實施例的流程圖。在一個優(yōu)選實施例中,方法250可以用來執(zhí)行圖4所示的方法150的步驟154-160。回到圖7,方法250用于組合純子集對。然而,絕不反對本發(fā)明的方法和系統(tǒng)的另一個實施例以不同數(shù)目的子集形成組合。通過步驟252,確定在純子集中搜索過濾器規(guī)則的代價。在步驟252確定的代價可以當(dāng)作基線。通過步驟254,選擇一對子集,并且形成它們的合并,以嘗試性地生成其中少一個子集的新子集組。通過步驟256確定相對于先前子集的搜索子集對(組合)的速度和/或存儲新子集組的代價。步驟256最好使用PET106來執(zhí)行,并且考慮可能使用的不同類型的搜索引擎。例如,兩個純子集均可以使用全匹配算法來搜索。然而,由于兩個純子集的組合可能不是純子集,因此,組合可能要求更復(fù)雜的搜索機(jī)制如二元決策樹。如果搜索代價和/或存儲純子集對合并的效率小于搜索總代價和/或存儲兩個純子集的效率,則通過步驟258以純子集的組合代替單獨純子集。步驟258最好對所有純子集對都執(zhí)行。在一個優(yōu)選實施例中,在首次執(zhí)行步驟258之后,當(dāng)與特定其他純子集放在一起時更高效搜索的過濾器規(guī)則純子集得到組合。然后,通過步驟260,重復(fù)步驟252-258以反復(fù)組合子集,直到進(jìn)一步組合不改善搜索速度和/或存儲代價。在隨后重復(fù)中,步驟252-258作用于子集組合而不是純子集對。例如,當(dāng)首次重復(fù)步驟252-258時,在前一趟保存的純子集對可以與另一純子集或另一純子集對組合。下次重復(fù)步驟252-258時,可以組合子集對的對。該過程最好繼續(xù)直到進(jìn)一步組合不再可以改善搜索代價為止。
因此,使用方法250,典型地組合純子集,然后如果性能改善,則重新組合。如果判定搜索和/或存儲兩個子集合并比單獨搜索和/或存儲一對子集更高效,則以子集合并代替兩個單獨子集。對于其他子集對和更高級別的子集組合,重復(fù)該過程。結(jié)果,所保存的規(guī)則最終組合具有由PET 106測量的更低存儲代價,更快速度或某種其他改善。因此,可以改善使用過濾器規(guī)則的計算機(jī)系統(tǒng)的性能。
上面公開了一種用于劃分和存儲過濾器規(guī)則的方法和系統(tǒng)。根據(jù)本發(fā)明編寫的軟件要存儲在某種形式的計算機(jī)可讀介質(zhì)如存儲器、CD-ROM中,或者通過網(wǎng)絡(luò)傳輸,并且由處理器執(zhí)行。因此,計算機(jī)可讀介質(zhì)包括例如可以通過網(wǎng)絡(luò)傳輸?shù)挠嬎銠C(jī)可讀信號。雖然本發(fā)明是根據(jù)所示實施例來描述的,但是本領(lǐng)域的普通技術(shù)人員應(yīng)該清楚,對這些實施例可以進(jìn)行改變,并且這些改變將在本發(fā)明的精神和范圍內(nèi)。因此,在不脫離所附權(quán)利要求的精神和范圍的情況下,本領(lǐng)域的普通技術(shù)人員可以進(jìn)行各種修改。
權(quán)利要求
1.一種用于在計算機(jī)系統(tǒng)中存儲多條過濾器規(guī)則的方法,所述多條過濾器規(guī)則在至少一個量綱中使用至少一個值范圍,所述方法包括如下步驟(a)將所述多條過濾器規(guī)則中的一部分劃分為多個過濾器規(guī)則純子集,所述多個過濾器規(guī)則純子集均包括所述多條過濾器規(guī)則中的至少一條;(b)組合所述多個過濾器規(guī)則純子集中的一部分以提供組合純子集;(c)判定所述多條過濾器規(guī)則的使用效率是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善;以及(d)如果所述多條過濾器規(guī)則的使用效率得到改善,則存儲所述多條過濾器規(guī)則,包括作為組合子集存儲所述多條過濾器規(guī)則中的一部分。
2.如權(quán)利要求1所述的方法,還包括如下步驟(e)如果所述多條過濾器規(guī)則的使用效率沒有得到改善,則重新組合所述多個過濾器規(guī)則純子集中的第二部分。
3.如權(quán)利要求1所述的方法,其中,存儲步驟(d)導(dǎo)致多個存儲子集,所述方法還包括如下步驟(e)組合所述多個存儲子集中的一部分,以提供第二組合子集;(f)判定所述多條過濾器規(guī)則的使用效率是否通過組合所述多個存儲過濾器規(guī)則子集中的一部分而得到改善;以及(g)如果所述多條過濾器規(guī)則的使用效率得到改善,則存儲所述多個存儲子集中的一部分,包括作為第二組合子集存儲所述多個存儲子集中的一部分。
4.如權(quán)利要求3所述的方法,還包括如下步驟(h)重復(fù)步驟(e)、(f)和(g),直到所述多條過濾器規(guī)則的使用效率不再得到改善。
5.如權(quán)利要求3所述的方法,還包括如下步驟(h)重復(fù)步驟(e)、(f)和(g),直到所述多條過濾器規(guī)則的使用效率達(dá)到特定級別。
6.如權(quán)利要求1所述的方法,其中,組合步驟(b)還包括如下步驟(b1)組合所述多個過濾器規(guī)則純子集中的一對。
7.如權(quán)利要求1所述的方法,其中,效率判定步驟(c)還包括如下步驟(c1)判定實行所述多條過濾器規(guī)則的速度是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善。
8.如權(quán)利要求1所述的方法,其中,效率判定步驟(c)還包括如下步驟(c1)判定存儲所述多條過濾器規(guī)則的代價是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善。
9.如權(quán)利要求1所述的方法,其中,效率判定步驟(c)還包括如下步驟(c1)判定實行所述多條過濾器規(guī)則的速度與存儲所述多條過濾器規(guī)則的代價的組合是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善。
10.一種計算機(jī)可讀介質(zhì),包含一種用于在計算機(jī)系統(tǒng)中存儲多條過濾器規(guī)則的程序,所述多條過濾器規(guī)則在至少一個量綱中使用至少一個值范圍,所述程序包括如下指令(a)將所述多條過濾器規(guī)則中的一部分劃分為多個過濾器規(guī)則純子集,所述多個過濾器規(guī)則純子集均包括所述多條過濾器規(guī)則中的至少一條;(b)組合所述多個過濾器規(guī)則純子集中的一部分以提供組合純子集;(c)判定所述多條過濾器規(guī)則的使用效率是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善;以及(d)如果所述多條過濾器規(guī)則的使用效率得到改善,則存儲所述多條過濾器規(guī)則,包括作為組合子集存儲所述多條過濾器規(guī)則中的一部分。
11.如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),其中,所述程序還包括如下指令(e)如果所述多條過濾器規(guī)則的使用效率沒有得到改善,則重新組合所述多個過濾器規(guī)則純子集中的第二部分。
12.如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),其中,存儲指令(d)導(dǎo)致多個存儲子集,所述程序還包括如下指令(e)組合所述多個存儲子集中的一部分,以提供第二組合子集;(f)判定所述多條過濾器規(guī)則的使用效率是否通過組合所述多個存儲過濾器規(guī)則子集中的一部分而得到改善;以及(g)如果所述多條過濾器規(guī)則的使用效率得到改善,則存儲所述多個存儲子集中的一部分,包括作為第二組合子集存儲所述多個存儲子集中的一部分。
13.如權(quán)利要求12所述的計算機(jī)可讀介質(zhì),其中,所述程序還包括如下指令(h)重復(fù)指令(e)、(f)和(g),直到所述多條過濾器規(guī)則的使用效率不再得到改善。
14.如權(quán)利要求12所述的計算機(jī)可讀介質(zhì),其中,所述程序還包括如下指令(h)重復(fù)指令(e)、(f)和(g),直到所述多條過濾器規(guī)則的使用效率達(dá)到特定級別。
15.如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),其中,組合指令(b)還包括如下指令(b1)組合所述多個過濾器規(guī)則純子集中的一對。
16.如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),其中,效率判定指令(c)還包括如下指令(c1)判定實行所述多條過濾器規(guī)則的速度是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善。
17.如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),其中,效率判定指令(c)還包括如下指令(c1)判定存儲所述多條過濾器規(guī)則的代價是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善。
18.如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),其中,效率判定指令(c)還包括如下指令(c1)判定實行所述多條過濾器規(guī)則的速度與存儲所述多條過濾器規(guī)則的代價的組合是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善。
19.一種用于在計算機(jī)系統(tǒng)中存儲多條過濾器規(guī)則的系統(tǒng),所述多條過濾器規(guī)則在至少一個量綱中使用至少一個值范圍,所述系統(tǒng)包括處理器,用于將所述多條過濾器規(guī)則中的一部分劃分為多個過濾器規(guī)則純子集,所述多個過濾器規(guī)則純子集均包括所述多條過濾器規(guī)則中的至少一條,并且組合所述多個過濾器規(guī)則純子集中的一部分以提供組合子集;性能評價工具,用于判定所述多條過濾器規(guī)則的使用效率是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善;以及存儲器,用于如果所述多條過濾器規(guī)則的使用效率得到改善,則存儲所述多條過濾器規(guī)則,包括作為組合子集存儲所述多個過濾器規(guī)則子集中的一部分。
20.如權(quán)利要求19所述的系統(tǒng),其中,如果所述多條過濾器規(guī)則的使用效率沒有得到改善,則處理器還重新組合所述多個過濾器規(guī)則純子集中的第二部分。
21.如權(quán)利要求19所述的系統(tǒng),其中,存儲器包括多個存儲子集,并且處理器還組合所述多個存儲子集中的一部分,以提供第二組合子集,其中,性能評價工具還判定所述多條過濾器規(guī)則的使用效率是否通過組合所述多個存儲過濾器規(guī)則子集中的一部分而得到改善,并且如果所述多條過濾器規(guī)則的使用效率得到改善,則存儲器還存儲所述多個存儲子集中的一部分,包括作為第二組合子集存儲所述多個存儲子集中的一部分。
22.如權(quán)利要求21所述的系統(tǒng),其中,處理器還重新組合所述多個存儲過濾器規(guī)則子集中的另一部分,并且性能評價工具還重新判定所述多條過濾器規(guī)則的使用效率是否通過重新組合所述多個存儲過濾器規(guī)則子集中的其他部分而得到改善,直到所述多條過濾器規(guī)則的使用效率不再得到改善。
23.如權(quán)利要求22所述的系統(tǒng),其中,處理器還重新組合所述多個存儲過濾器規(guī)則子集中的另一部分,并且性能評價工具還重新判定所述多條過濾器規(guī)則的使用效率是否通過重新組合所述多個存儲過濾器規(guī)則子集中的其他部分而得到改善,直到所述多條過濾器規(guī)則的使用效率達(dá)到特定級別。
24.如權(quán)利要求19所述的系統(tǒng),其中,處理器通過組合所述多個過濾器規(guī)則純子集中的一對來組合所述多條過濾器規(guī)則中的一部分。
25.如權(quán)利要求19所述的系統(tǒng),其中,性能評價工具通過判定實行所述多條過濾器規(guī)則的速度是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善,判定所述多條過濾器規(guī)則的使用效率。
26.如權(quán)利要求19所述的系統(tǒng),其中,性能評價工具通過判定存儲所述多條過濾器規(guī)則的代價是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善,判定所述多條過濾器規(guī)則的使用效率。
27.如權(quán)利要求19所述的系統(tǒng),其中,性能評價工具通過判定實行所述多條過濾器規(guī)則的速度與存儲所述多條過濾器規(guī)則的代價的組合是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善,判定所述多條過濾器規(guī)則的使用效率。
全文摘要
公開了一種用于在計算機(jī)系統(tǒng)中存儲多條過濾器規(guī)則的方法和系統(tǒng)。所述多條過濾器規(guī)則在至少一個量綱中使用至少一個值范圍。該方法和系統(tǒng)包括將所述多條過濾器規(guī)則中的一部分分離為多個過濾器規(guī)則純子集。所述多個過濾器規(guī)則純子集均包括所述多條過濾器規(guī)則中的至少一條。該方法和系統(tǒng)還包括組合所述多個過濾器規(guī)則純子集中的一部分以提供組合子集,并且判定所述多條過濾器規(guī)則的使用效率是否通過組合所述多個過濾器規(guī)則純子集中的一部分而得到改善。該方法和系統(tǒng)還包括,如果所述多條過濾器規(guī)則的搜索效率得到改善,則存儲所述多條過濾器規(guī)則,包括作為組合子集存儲所述多個過濾器規(guī)則子集中的一部分。
文檔編號H04L29/06GK1482548SQ0315307
公開日2004年3月17日 申請日期2003年8月12日 優(yōu)先權(quán)日2002年8月12日
發(fā)明者小埃弗里特·A·科爾, 小埃弗里特 A 科爾, 戈洛瓦尼斯基, 奧爾加·戈洛瓦尼斯基, D 杰弗里斯, 克拉克·D·杰弗里斯, 小羅伯特·F·坎特納, 特 F 坎特納, W 沃澤拉, 蘭德爾·W·沃澤拉, 哈姆 齊哈維, 阿夫拉哈姆·齊哈維 申請人:國際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
普洱| 庆云县| 建平县| 盐城市| 天津市| 杨浦区| 江都市| 井冈山市| 盐边县| 玉屏| 涞源县| 阿拉善盟| 淮北市| 霍邱县| 若尔盖县| 紫阳县| 南康市| 工布江达县| 民勤县| 丹棱县| 延寿县| 云霄县| 乳源| 寿宁县| 东港市| 类乌齐县| 扶风县| 乐都县| 镇坪县| 巴中市| 香河县| 洛扎县| 万荣县| 石渠县| 黄骅市| 崇文区| 宜川县| 东阿县| 平舆县| 赞皇县| 页游|