專利名稱:數(shù)據(jù)包協(xié)議類型識(shí)別系統(tǒng)以及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種識(shí)別系統(tǒng),該識(shí)別系統(tǒng)可以通過(guò)執(zhí)行類型匹配過(guò)程來(lái)識(shí)別數(shù)據(jù)包
的協(xié)議類型。
背景技術(shù):
傳統(tǒng)的協(xié)議識(shí)別系統(tǒng)可以根據(jù)類型匹配過(guò)程來(lái)確定網(wǎng)際協(xié)議包 (InternetProtocol,簡(jiǎn)稱為IP包)的應(yīng)用層協(xié)議(例如,超文本傳輸協(xié)議,即 hypertexttr雄fer protocol,簡(jiǎn)稱為HTTP ;文件傳輸協(xié)議,艮卩file transfer protocol, 簡(jiǎn)稱為FTP ;電驢協(xié)議,即e-donkey protocol)。舉例說(shuō)明,現(xiàn)有技術(shù)的一種協(xié)議識(shí)別系統(tǒng) 可以包括帶有類型匹配軟件的通用計(jì)算機(jī)。該通用計(jì)算機(jī)可利用類型匹配軟件將IP包的 內(nèi)容與一組類型進(jìn)行比較,根據(jù)比較結(jié)果以確定所述IP包的協(xié)議類型。然而,現(xiàn)有技術(shù)中 的這種協(xié)議識(shí)別系統(tǒng)不能足夠快地確定該IP包協(xié)議。 現(xiàn)有技術(shù)中的另一種協(xié)議識(shí)別系統(tǒng)可由現(xiàn)場(chǎng)可編程門陣列(fie 1 d-programmab 1 e gate array, FPGA)中的硬件電路來(lái)實(shí)現(xiàn)。比如說(shuō),程序員可編寫用于確定IP包協(xié)議的硬 件描述語(yǔ)言(hardware description language,簡(jiǎn)稱為HDL)禾呈序(如Verilog禾呈序),并 且將其編譯成所述硬件電路。因此,所述硬件電路可以處理IP包,并且根據(jù)該HDL程序以 確定IP包的協(xié)議。然而,通常情況是,為了裝載該硬件電路需要配置相對(duì)比較大的FPGA, 這樣可能會(huì)增加該協(xié)議識(shí)別系統(tǒng)的尺寸與成本。另外,由于硬件電路設(shè)計(jì)的復(fù)雜性,編寫 HDL程序需要花相對(duì)比較長(zhǎng)的時(shí)間。除此之外,對(duì)應(yīng)用層協(xié)議(例如,HTTP、 FTP、 e-donkey protocol、比特流協(xié)議,即BITT0RRENT protocol、簡(jiǎn)單郵件傳輸協(xié)議,即simple mail transfer protocol,簡(jiǎn)稱為SMTP)類型的任何改動(dòng),或者有任何新的協(xié)議加入互聯(lián)網(wǎng)協(xié)議 集(Internet protocol suite),均需要由程序員重新編寫HDL程序,這樣將花費(fèi)相對(duì)比較 長(zhǎng)的時(shí)間。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題在于提供用于識(shí)別數(shù)據(jù)包協(xié)議類型的識(shí)別系統(tǒng)以及方 法,其能降低系統(tǒng)成本,減小系統(tǒng)尺寸,提高系統(tǒng)的運(yùn)行速度,且所述識(shí)別系統(tǒng)的設(shè)計(jì)相對(duì) 比較簡(jiǎn)潔,所需時(shí)間相對(duì)比較短,更改起來(lái)相對(duì)比較容易。 本發(fā)明所述的一種識(shí)別系統(tǒng),用于識(shí)別數(shù)據(jù)包的協(xié)議類型,其包括數(shù)據(jù)存儲(chǔ)器,用 于按預(yù)定的順序存儲(chǔ)多個(gè)數(shù)掘單元,其中所述多個(gè)數(shù)據(jù)單元中的第一數(shù)據(jù)單元包括用于 確定所述數(shù)據(jù)包特征的指令;所述多個(gè)數(shù)據(jù)單元的總個(gè)數(shù);以及所述第一數(shù)據(jù)單元所對(duì)應(yīng) 的序列號(hào)。所述識(shí)別系統(tǒng)還包括連接至所述數(shù)據(jù)存儲(chǔ)器的匹配處理器,用于執(zhí)行所述指令, 產(chǎn)生所述執(zhí)行的結(jié)果,以及根據(jù)所述執(zhí)行結(jié)果、所述總個(gè)數(shù)和所述對(duì)應(yīng)的序列號(hào)來(lái)提供地 址指針。 另外,本發(fā)明所述的數(shù)據(jù)包協(xié)議類型的識(shí)別方法,其包括訪問(wèn)多個(gè)數(shù)據(jù)單元中的 第一數(shù)據(jù)單元;執(zhí)行所述第一數(shù)據(jù)單元中的指令;根掘所述執(zhí)行的結(jié)果來(lái)確定所述數(shù)據(jù)包的特征;以及根據(jù)所述執(zhí)行結(jié)果、所述多個(gè)數(shù)據(jù)單元的總個(gè)數(shù)和所述第一數(shù)據(jù)單元所對(duì)應(yīng) 的序列號(hào)來(lái)提供地址指針。 除此之外,本發(fā)明所述的另一種用于識(shí)別數(shù)據(jù)包協(xié)議類型的識(shí)別系統(tǒng),其包括數(shù) 據(jù)存儲(chǔ)器,用于提供多條指令,分別用于確定所述數(shù)據(jù)包的多種特征以及連接至所述數(shù) 據(jù)存儲(chǔ)器的匹配處理器,用于執(zhí)行所述多條指令中的第一指令,產(chǎn)生所述執(zhí)行的結(jié)果,以及 根據(jù)所述執(zhí)行結(jié)果、所述多條指令的總條數(shù)和所述第一指令所對(duì)應(yīng)的序列號(hào)來(lái)提供指令指 針。
以下通過(guò)對(duì)本發(fā)明的一些實(shí)施例結(jié)合其附圖的描述,可以進(jìn)一步理解本發(fā)明的目 的、具體結(jié)構(gòu)特征和優(yōu)點(diǎn)。
圖1為根據(jù)本發(fā)明的一個(gè)實(shí)施例的識(shí)別系統(tǒng)的模塊示意圖; 圖2為根據(jù)本發(fā)明的一個(gè)實(shí)施例的數(shù)據(jù)單元的結(jié)構(gòu)示意圖; 圖3為根據(jù)本發(fā)明的一個(gè)實(shí)施例的數(shù)據(jù)存儲(chǔ)器中數(shù)據(jù)單元的分布示意圖; 圖4為根據(jù)本發(fā)明的一個(gè)實(shí)施例的數(shù)據(jù)包協(xié)議類型的識(shí)別方法流程示意圖;以及 圖5為根據(jù)本發(fā)明的一個(gè)實(shí)施例的數(shù)據(jù)包協(xié)議類型的識(shí)別方法流程示意圖。
具體實(shí)施例方式以下將對(duì)本發(fā)明的實(shí)施例給出詳細(xì)的說(shuō)明。雖然本發(fā)明將結(jié)合實(shí)施例進(jìn)行闡述,
但應(yīng)理解這并非意指將本發(fā)明限定于這些實(shí)施例。相反,本發(fā)明意在涵蓋由后附權(quán)利要求
項(xiàng)所界定的本發(fā)明精神和范圍內(nèi)所定義的各種可選項(xiàng)、可修改項(xiàng)和等同項(xiàng)。 此外,在以下對(duì)本發(fā)明的詳細(xì)描述中,為了提供一個(gè)針對(duì)本發(fā)明的完全的理解,闡
明了大量的具體細(xì)節(jié)。然而,本領(lǐng)域技術(shù)人員將理解,沒(méi)有這些具體細(xì)節(jié),本發(fā)明同樣可以
實(shí)施。在另外的一些實(shí)例中,對(duì)于大家熟知的方案、流程、元件和電路未作詳細(xì)描述,以便于
凸顯本發(fā)明之主旨。 以下的具體實(shí)施方式
中的某些部分是以進(jìn)程、邏輯塊、處理過(guò)程和其他對(duì)計(jì)算機(jī)
存儲(chǔ)器中數(shù)據(jù)位的操作的象征性表示來(lái)呈現(xiàn)的。這些描述和表示法是數(shù)據(jù)處理領(lǐng)域內(nèi)的技
術(shù)人員最有效地向該領(lǐng)域內(nèi)的其他技術(shù)人員傳達(dá)他們工作實(shí)質(zhì)的方法。在本申請(qǐng)中,一個(gè)
進(jìn)程、邏輯塊、處理過(guò)程、或相似的事物,被構(gòu)思成有條理的步驟或指令的序列以實(shí)現(xiàn)想要
的結(jié)果。所述的步驟是需要對(duì)物理量進(jìn)行物理操作的步驟。通常,但不是必然的,這些物理
量的形式可為電或磁信號(hào),可在計(jì)算機(jī)系統(tǒng)中被存儲(chǔ)、傳輸、結(jié)并、比較等等。 然而,應(yīng)該明白的是,這些術(shù)語(yǔ)及其相似表述都與適當(dāng)?shù)奈锢砹肯嚓P(guān),并僅僅是運(yùn)
用于這些物理量的便利的標(biāo)記。除非在之后的討論中特別說(shuō)明,在本申請(qǐng)的全部?jī)?nèi)容中,運(yùn)
用"訪問(wèn)"、"執(zhí)行"、"確定"、"提供"、"產(chǎn)生"或類似術(shù)語(yǔ)之處,指的都是計(jì)算機(jī)系統(tǒng)或類似電
子計(jì)算設(shè)備中的操作和處理過(guò)程,所述的計(jì)算機(jī)系統(tǒng)對(duì)以物理(電子)量形式存在于所述
計(jì)算機(jī)系統(tǒng)的寄存器和存儲(chǔ)器中的數(shù)據(jù)進(jìn)行操作,并轉(zhuǎn)換為類似地以物理量形式存在于所 述計(jì)算機(jī)系統(tǒng)的寄存器、存儲(chǔ)器或其他此類信息存儲(chǔ)、傳輸或顯示設(shè)備中的其他數(shù)據(jù)。
在此所述的實(shí)施例是以計(jì)算機(jī)可執(zhí)行指令為討論的大背景的,所述的計(jì)算機(jī)指令 可位于某種形式的計(jì)算機(jī)可用的媒體(如,程序模塊)中,被一個(gè)或多個(gè)計(jì)算機(jī)或其他設(shè)備執(zhí)行。通常,程序模塊包括可執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例行程序、編制程 序、對(duì)象、元件、數(shù)據(jù)結(jié)構(gòu)等。所述程序模塊將在不同的實(shí)施例中結(jié)合或分開描述。
作為舉例,且并不局限于其中,計(jì)算機(jī)可用的媒體可包括計(jì)算機(jī)存儲(chǔ)媒體和通訊 媒體。計(jì)算機(jī)存儲(chǔ)媒體包括以任何方法或技術(shù)實(shí)現(xiàn)的用以存儲(chǔ)信息的揮發(fā)性和非揮發(fā)性 的、移動(dòng)和不可移動(dòng)的媒體,所述信息可為計(jì)算機(jī)可讀的指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他 數(shù)據(jù)。計(jì)算機(jī)存儲(chǔ)媒體包括(但不局限于)隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(R0M)、電 可擦除只讀存儲(chǔ)器(EEPR0M)、閃存或其他存儲(chǔ)器技術(shù),光盤ROM (CD-ROM),多功能數(shù)碼光盤 (DVD)或其他光學(xué)存儲(chǔ)器、盒式磁帶、磁帶、磁盤存儲(chǔ)器或其他磁的存儲(chǔ)器設(shè)備、或任何其他 可被用來(lái)存儲(chǔ)所需信息的媒體。 通訊媒體可具體化為計(jì)算機(jī)可讀的指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他已調(diào)制的數(shù) 據(jù)信號(hào)(如,載波或其他傳輸機(jī)制)中的數(shù)據(jù),并包括任何信息傳輸媒體。所述的"已調(diào)制 的數(shù)據(jù)信號(hào)"指一個(gè)有一個(gè)或多個(gè)特征集或遵循某種信號(hào)信息編碼方式變化的信號(hào)。作為 舉例,且并不局限于其中,通訊媒體包括有線媒體,如有線網(wǎng)絡(luò)或直線連接;和無(wú)線媒體,如 聲學(xué)的、無(wú)線電的(RF)、紅外線的和其他無(wú)線的媒體。上述任何媒體的組合都應(yīng)包括在計(jì)算 機(jī)可讀媒體的范圍內(nèi)。 圖4和圖5為根據(jù)本發(fā)明的實(shí)施例的計(jì)算機(jī)執(zhí)行方法的流程圖。圖4和圖5中的 流程可以作為計(jì)算機(jī)可執(zhí)行指令來(lái)被執(zhí)行。所述的計(jì)算機(jī)指令可位于某種形式的計(jì)算機(jī)可 用的媒體(如,程序模塊)中,被一個(gè)或多個(gè)計(jì)算機(jī)或其他設(shè)備執(zhí)行。 在一個(gè)實(shí)施例中,本發(fā)明提供了一種識(shí)別系統(tǒng)。該識(shí)別系統(tǒng)可以通過(guò)執(zhí)行類型匹 配過(guò)程來(lái)識(shí)別數(shù)據(jù)包的協(xié)議類型。更具體地說(shuō),在一個(gè)實(shí)施例中,該數(shù)據(jù)包的信息可通過(guò)一 種網(wǎng)際協(xié)議(如,傳輸層協(xié)議,即transport layerprotocol,簡(jiǎn)稱為TLP ;應(yīng)用層協(xié)議,即 即plication layer protocol,簡(jiǎn)稱為ALP)被打包在數(shù)據(jù)包中。每一種網(wǎng)際協(xié)議可以有一 種或多種特征,這些特征可以被轉(zhuǎn)化為一種或多種類型。這些特征類型可以按預(yù)定的順序 存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器中。類型匹配處理器可以訪問(wèn)該數(shù)據(jù)存儲(chǔ)器,并且將所述數(shù)據(jù)包與存儲(chǔ) 在數(shù)據(jù)存儲(chǔ)器中的特征類型進(jìn)行比較,以通過(guò)該比較來(lái)確定數(shù)據(jù)包是否與對(duì)應(yīng)的網(wǎng)際協(xié)議 匹配。 圖1為根據(jù)本發(fā)明的一個(gè)實(shí)施例的識(shí)別系統(tǒng)100的模塊示意圖。識(shí)別系統(tǒng)100 可用于識(shí)別數(shù)據(jù)包108的協(xié)議類型。在一個(gè)實(shí)施例中,數(shù)據(jù)包108可以是,但不限于,IP 數(shù)據(jù)包/數(shù)據(jù)報(bào)。IP數(shù)據(jù)包/數(shù)據(jù)報(bào)108可包括用于描述IP數(shù)據(jù)包108的傳輸層協(xié)議 (TLP)的協(xié)議字段區(qū)110,以及攜帶IP數(shù)據(jù)包108的數(shù)據(jù)的數(shù)據(jù)區(qū)112。 TLP可包括傳輸控 制協(xié)議(transmission control protocol,簡(jiǎn)稱為TCP)、用戶數(shù)據(jù)報(bào)協(xié)議(user datagram protocol,簡(jiǎn)稱為UDP)、互聯(lián)網(wǎng)組管理協(xié)議(Inte潔tg麗p management protocol,簡(jiǎn)稱為 IGMP),流控制傳輸協(xié)議(stream controltransmission protocol,簡(jiǎn)稱為SCTP)等等。
在一個(gè)實(shí)施例中,數(shù)據(jù)存儲(chǔ)器104可根據(jù)不同的協(xié)議在數(shù)據(jù)存儲(chǔ)器104的不同區(qū) 域存儲(chǔ)多個(gè)數(shù)據(jù)單元(如圖中所示的Di,Dw,...Dw,"i"為整數(shù))。舉例說(shuō)明,根據(jù)不同的 傳輸層協(xié)議(TLPs),數(shù)據(jù)存儲(chǔ)器104可被劃分為一個(gè)或多個(gè)區(qū)域。其中一個(gè)區(qū)域可存儲(chǔ)與 TCP相關(guān)的數(shù)據(jù)單元,一個(gè)區(qū)域可存儲(chǔ)與UDP相關(guān)的數(shù)據(jù)單元,一個(gè)區(qū)域可存儲(chǔ)與IGMP相關(guān) 的數(shù)據(jù)單元等等。除此之外,根據(jù)不同的應(yīng)用層協(xié)議(ALPs),每一個(gè)TLP相關(guān)區(qū)域可再次被 劃分為幾個(gè)子區(qū)域。舉例說(shuō)明,對(duì)于與TCP相關(guān)的區(qū)域,其中一個(gè)子區(qū)域可存儲(chǔ)與超文本傳輸協(xié)議(HTTP)相關(guān)的數(shù)據(jù)單元,一個(gè)子區(qū)域可存儲(chǔ)與簡(jiǎn)單郵件傳輸協(xié)議(SMTP)相關(guān)的數(shù) 據(jù)單元,一個(gè)子區(qū)域可存儲(chǔ)與電驢(e-donkey)協(xié)議相關(guān)的數(shù)據(jù)單元等等。
在一個(gè)實(shí)施例中,接收單元106可用于接收IP數(shù)據(jù)包108,以及根據(jù)協(xié)議字段區(qū) 110中的內(nèi)容來(lái)確定IP數(shù)據(jù)包108的TLP。因此,連接至接收單元106和數(shù)據(jù)存儲(chǔ)器104的 類型匹配處理器102(在此之后,稱為匹配處理器102)可根據(jù)IP數(shù)據(jù)包108的TLP來(lái)訪問(wèn) 數(shù)據(jù)存儲(chǔ)器104中一個(gè)對(duì)應(yīng)的區(qū)域中的數(shù)據(jù)單元。舉例說(shuō)明,在接收IP數(shù)據(jù)包108之后,接 收單元106可提取協(xié)議字段區(qū)110中的內(nèi)容,因而匹配處理器102可以根據(jù)所述內(nèi)容來(lái)產(chǎn) 生指向該對(duì)應(yīng)區(qū)域的初始數(shù)據(jù)單元的地址指針,以訪問(wèn)所述初始單元。其次,接收單元106 可以從IP數(shù)據(jù)區(qū)112中提取應(yīng)用層數(shù)據(jù),并且將所述應(yīng)用層數(shù)據(jù)存儲(chǔ)到接收單元106的數(shù) 據(jù)緩沖器中。匹配處理器102可以根據(jù)該對(duì)應(yīng)區(qū)域中的數(shù)據(jù)單元和所述數(shù)據(jù)緩沖器中的應(yīng) 用層數(shù)據(jù)來(lái)確定IP數(shù)據(jù)包108的ALP。 更具體地說(shuō),一個(gè)應(yīng)用層協(xié)議(ALP)可以有一種或多種特征,并且這些特征之間 可以有一種邏輯關(guān)系。比如說(shuō),如果IP數(shù)據(jù)包108的ALP是e-donkey協(xié)議,IP數(shù)據(jù)包108可 以與第一特征組和第二特征組CG2匹配。第一特征組可包括分別由"P"、"Q"、"R"和 "S"代表的四個(gè)特征單元。其中,第一特征單元P可代表一種特征,那就是IP數(shù)據(jù)區(qū)112中 的應(yīng)用層數(shù)據(jù)區(qū)的首字節(jié)內(nèi)容包括十六進(jìn)制碼0xE3。第二特征單元Q可代表一種特征,那 就是所述首字節(jié)的內(nèi)容包括十六進(jìn)制碼0xC5。第三特征單元R可代表一種特征,那就是所 述首字節(jié)的內(nèi)容包括十六進(jìn)制碼0xE4。第四特征單元S可代表一種特征,那就是所述首字 節(jié)的內(nèi)容包括十六進(jìn)制碼0xD4。在一個(gè)實(shí)施例中,第一特征組CGi可表達(dá)為P V Q V R V S。 換句話說(shuō),如果IP數(shù)據(jù)包108與特征單元P、Q、R和S中的一個(gè)特征單元匹配,則可代表IP 數(shù)據(jù)包108與第一特征組匹配。第二特征組CG2可以包括由"T"代表的第五特征單元。 第五特征單元T可代表一種特征,那就是所述應(yīng)用層數(shù)據(jù)區(qū)中第二至第五個(gè)字節(jié)的內(nèi)容包 括代表IP數(shù)據(jù)包108長(zhǎng)度的十六進(jìn)制碼。第二特征組C^可表達(dá)為T。同理,如果IP數(shù)據(jù) 包108與特征單元T匹配,IP數(shù)據(jù)包108則與第二特征組CG2匹配。在一個(gè)實(shí)施例中,如果 IP數(shù)據(jù)包108與兩個(gè)特征組CGi和CG2均匹配,IP數(shù)據(jù)包108的ALP為e-donkey協(xié)議。因 此,e-donkey協(xié)議的特征之間的邏輯關(guān)系可以表達(dá)為(P V Q V R V S) A T或CG工A CG2。
在 一 個(gè)實(shí)施例中,這些特征之間的邏輯關(guān)系也可表達(dá)為 (P A T) V (Q A T) V (R A T) V (S A T)。在本實(shí)施例中,e-donkey協(xié)議可以包括四個(gè) 特征組。第一特征組CG'工可表達(dá)為P A T。第二特征組CG' 2可表達(dá)為Q A T。第三特 征組CG' 3可表達(dá)為R A T。第四特征組CG' 4可表達(dá)為S A T。如果IP數(shù)據(jù)包108與特 征單元P和T匹配,IP數(shù)據(jù)包108則與第一特征組CG' i匹配;如果IP數(shù)據(jù)包108與特征 單元Q和T匹配,IP數(shù)據(jù)包108則與第二特征組CG' 2匹配;對(duì)于特征組CG' 3和CG' 4可以 以此類推。在一個(gè)實(shí)施例中,如果IP數(shù)據(jù)包108與特征組CG' p . . . CG' 4中的一個(gè)特征組 匹配,IP數(shù)據(jù)包108的ALP為e-donkey協(xié)議。因此,在一個(gè)實(shí)施例中,e-donkey協(xié)議的特 征之間的邏輯關(guān)系也可以表達(dá)為CG' iVCG' 2VCG' 3VCG' 4。 在一個(gè)實(shí)施例中,所述多個(gè)數(shù)據(jù)單元(如,Di, Di+1, . . . Di+5)中至少一個(gè)數(shù)據(jù)單元 可代表ALP的某種特征(如,P、Q、R、S、T)。舉例說(shuō)明,數(shù)據(jù)單元D^可以包括一條指令,用 于將前面所述的首字節(jié)內(nèi)容與值0xE3進(jìn)行比較。匹配處理器102可以訪問(wèn)數(shù)據(jù)單元Di+1, 然后執(zhí)行所述指令,并且產(chǎn)生執(zhí)行結(jié)果。所述執(zhí)行結(jié)果可代表IP數(shù)據(jù)包108是否包括對(duì)應(yīng)的特征P。同理,數(shù)據(jù)單元Di+2, . . . Di+5可分別用于確定IP數(shù)據(jù)包108是否包括特征Q、 R、 S禾口 T。 在一個(gè)實(shí)施例中,數(shù)據(jù)單元Dw,. . . Di+5可以作為用于IP數(shù)據(jù)包108類型匹配過(guò)程 的多個(gè)特征類型存儲(chǔ)于數(shù)據(jù)存儲(chǔ)器104中。數(shù)據(jù)單元Dw,. . . D"可以按預(yù)定的順序存儲(chǔ)在 數(shù)據(jù)存儲(chǔ)器104中,其中所述預(yù)定的順序是由所述特征之間的邏輯關(guān)系來(lái)決定的。在一個(gè) 實(shí)施例中,以e-donkey協(xié)議為例,其特征之間的邏輯關(guān)系可表達(dá)為(P V Q V R V S) A T, 因此分別代表P、Q、R和S的一組數(shù)據(jù)單元Di+1,. . . Di+4可以按順序地被存儲(chǔ),而代表T的數(shù) 據(jù)單元Dw可以存儲(chǔ)在數(shù)據(jù)單元組D^, ...Dw緊接著的下一個(gè)存儲(chǔ)單元中。在本實(shí)施例 中,數(shù)據(jù)單元Dw,. . . Di+5可以存儲(chǔ)在與e-donkey協(xié)議相關(guān)的子區(qū)域中。除此之外,如前面 所述,該特征之間的邏輯關(guān)系也可表達(dá)為(P A T) V (Q A T) V (R A T) V (S A T)。因 此在另一個(gè)實(shí)施例中,一組數(shù)據(jù)單元D,p ...Dj+8( "j"為整數(shù))可被設(shè)置為代表特征序列 P、 T、 Q、 T、 R、 T、 S和T,并且可按順序存儲(chǔ)在與e-donkey協(xié)議相關(guān)的子區(qū)域中。
總體而言,在一個(gè)實(shí)施例中,用于識(shí)別數(shù)據(jù)包108協(xié)議類型的識(shí)別系統(tǒng)IOO可以包 括數(shù)據(jù)存儲(chǔ)器104,用于按預(yù)定的順序存儲(chǔ)多個(gè)數(shù)據(jù)單元。其中所述多個(gè)數(shù)據(jù)單元中的第 一數(shù)據(jù)單元可以包括用于確定所述數(shù)據(jù)包特征的指令。所述第一數(shù)據(jù)單元還可以包括所 述多個(gè)數(shù)據(jù)單元的總個(gè)數(shù),和所述第一數(shù)據(jù)單元所對(duì)應(yīng)的序列號(hào)。此外,識(shí)別系統(tǒng)100還 可以包括連接至數(shù)據(jù)存儲(chǔ)器104的匹配處理器102。匹配處理器102可以執(zhí)行所述第一數(shù) 據(jù)單元內(nèi)的指令,并且產(chǎn)生執(zhí)行的結(jié)果。在一個(gè)實(shí)施例中,該指令的執(zhí)行結(jié)果包括一個(gè)布爾 (Boolean)值。如果該布爾值為真,則數(shù)據(jù)包108包括第一數(shù)據(jù)單元所代表的特征。如果該 布爾值為假,則數(shù)據(jù)包108不包括第一數(shù)據(jù)單元所代表的特征。除此之外,匹配處理器102 可以根據(jù)所述執(zhí)行結(jié)果、所述多個(gè)數(shù)據(jù)單元的總個(gè)數(shù)以及對(duì)應(yīng)于所述第一數(shù)據(jù)單元的序列 號(hào)來(lái)提供地址指針P』。在一個(gè)實(shí)施例中,匹配處理器102可根據(jù)地址指針P』來(lái)訪問(wèn)數(shù)據(jù) 存儲(chǔ)器104中的第二數(shù)據(jù)單元,并執(zhí)行該第二數(shù)據(jù)單元中的指令。 同理,匹配處理器102可以根據(jù)所述第二數(shù)據(jù)單元指令的執(zhí)行結(jié)果,以及存儲(chǔ)在
該第二數(shù)據(jù)單元的數(shù)據(jù)單元總個(gè)數(shù)和單元序列號(hào)來(lái)提供另一個(gè)指向第三數(shù)據(jù)單元的地址 指針。因此,匹配處理器102可以逐個(gè)訪問(wèn)第三數(shù)據(jù)單元、第四數(shù)據(jù)單元、第五數(shù)掘單元等 等,并且確定數(shù)據(jù)包108是否包括所被訪問(wèn)的數(shù)據(jù)單元所代表的特征。換句話說(shuō),匹配處理 器102可以基于數(shù)據(jù)存儲(chǔ)器104中的數(shù)據(jù)單元來(lái)執(zhí)行類型匹配過(guò)程,以確定數(shù)據(jù)包108的 ALP。在一個(gè)實(shí)施例中,如果數(shù)據(jù)包108與某個(gè)ALP的特征的邏輯組合匹配,匹配處理器102 可以產(chǎn)生一個(gè)輸出信號(hào)114以代表該ALP為數(shù)據(jù)包108的ALP。 圖2為根據(jù)本發(fā)明的一個(gè)實(shí)施例的數(shù)據(jù)單元200的結(jié)構(gòu)示意圖。以下將結(jié)合圖1 對(duì)圖2進(jìn)行描述。在一個(gè)實(shí)施例中,數(shù)據(jù)單元Di, Di+1, ...Di+5,...中的每給數(shù)據(jù)單元可以 與數(shù)據(jù)單元200具有相同結(jié)果,并且有著相同的長(zhǎng)度(例如,32個(gè)字節(jié))。
如圖2所示,數(shù)據(jù)單元200可以包括匹配方式區(qū)202用于代表ALP的一種類 型匹配方式。更具體地說(shuō),在一個(gè)實(shí)施例中,該類型匹配方式可包括第一匹配方式和 第二匹配方式。在第一匹配方式中,ALP的特征組之間的邏輯關(guān)系可以為邏輯或(如, CG'工VCG' 2VCG' 3VCG' 4),而每個(gè)特征組中的特征單元之間的邏輯關(guān)系可以為邏 輯與(如,P A T,Q A T,R A T和S A T)。在第二匹配方式中,ALP的特征組之間的邏輯關(guān) 系可以為邏輯與(如,A CG2),而每個(gè)特征組中的特征單元之間的邏輯關(guān)系可以為邏輯或(如,P V Q V R V S)。 以e-donkey協(xié)議為例,與e-donkey協(xié)議相關(guān)的子區(qū)域可以包括 一 組數(shù)據(jù)單 元Dj+1, . . . Dj+8。這組數(shù)據(jù)單元Dj+1, . . . Dj+8可以按順序地存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器104中,并 且被設(shè)置成分別代表特征單元P、 T、 Q、 T、 R、 T、 S和T。在本實(shí)施例中,每個(gè)數(shù)據(jù)單元 Dj+1,. . . Dj+8的匹配方式區(qū)202均有著相同的內(nèi)容,即第一匹配方式。因此,匹配處理器102 可以根據(jù)數(shù)據(jù)單元Dj+1, . . . Dj+8來(lái)執(zhí)行類型匹配過(guò)程,以確定數(shù)據(jù)包108是否與邏輯組合 (P A T) V (Q A T) V (R A T) V (S A T)匹配。 舉另一個(gè)例子說(shuō)明,與e-donkey協(xié)議相關(guān)的子區(qū)域可以包括一組數(shù)據(jù)單元 Di+1, . . . Di+5。這組數(shù)據(jù)單元Di+1, . . . Di+5可以按順序地存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器104中,并且被設(shè) 置成分別代表特征單元P、Q、R、S和T。在本例子中,每個(gè)數(shù)據(jù)單元Dw, ...D^的匹配方 式區(qū)202均有著相同的內(nèi)容,即第二匹配方式。因此,匹配處理器102可以根據(jù)數(shù)據(jù)單元 Di+1,... Di+5來(lái)執(zhí)行類型匹配過(guò)程,以確定數(shù)據(jù)包108是否與邏輯組合(PVQVRVS)AT 匹配。 在一個(gè)實(shí)施例中,數(shù)據(jù)單元200還可包括傳輸層協(xié)議(TLP)區(qū)204,用于代表數(shù)據(jù) 單元200位于的區(qū)域所對(duì)應(yīng)的TLP(如,TCP、UDP、IGMP、SCTP)。在一個(gè)實(shí)施例中,識(shí)別系統(tǒng) 100可以根據(jù)數(shù)據(jù)包108的協(xié)議字段區(qū)110的內(nèi)容來(lái)確定數(shù)據(jù)包108的TLP。因此,匹配處 理器102可以根據(jù)存儲(chǔ)在該TLP所對(duì)應(yīng)的區(qū)域中的數(shù)據(jù)單元來(lái)執(zhí)行類型匹配過(guò)程。
在一個(gè)實(shí)施例中,數(shù)據(jù)單元200還可包括應(yīng)用層協(xié)議(ALP)區(qū)206,用于代表數(shù) 據(jù)單元200位于的子區(qū)域所對(duì)應(yīng)的ALP(如,HTTP、 FTP、 e-donkey protocol、 BITTORRENT protocol、SMTP等等)。此外,數(shù)據(jù)單元200還可包括用于存儲(chǔ)該子區(qū)域中數(shù)據(jù)單元的總個(gè) 數(shù)NUt。t a的數(shù)據(jù)單元總個(gè)數(shù)區(qū)208,以及用于存儲(chǔ)數(shù)據(jù)單元200所對(duì)應(yīng)的一個(gè)單元序列號(hào) NUse(La的數(shù)據(jù)單元序列號(hào)區(qū)210。其中,NUt。t—a和NUse(La均正整數(shù),且NUseq—a不大于NUt。t—a。 以e-donkey協(xié)議為例,如果選擇第一匹配方式,那么對(duì)應(yīng)于e-donkey協(xié)議的子區(qū)域可包含 八(8)個(gè)特征單元P、T、Q、T、R、T、S和T,所以NUt。ta的值為8。其次,分別代表特征單元P、 T、Q、T、R、T、S和T的數(shù)據(jù)單元的NU,a可依次等于1、2、3、4、5、6、7和8。在另一方面,如 果選擇第二匹配方式,那么對(duì)應(yīng)于e-donkey協(xié)議的子區(qū)域可包含五(5)個(gè)特征單元P、 Q、 R、S和T,所以NUt。t a的值為5。其次,分別代表特征單元P、Q、R、S和T的數(shù)據(jù)單元的NU, a可依次等于1、2、3、4和5。 在一個(gè)實(shí)施例中,類型匹配方式(例如,第一匹配方式,第二匹配方式)是可以根 據(jù)ALP的數(shù)據(jù)單元總個(gè)數(shù)NUw a來(lái)選擇的。比如說(shuō),在第一匹配方式中,該數(shù)據(jù)單元總個(gè)數(shù) NUt。t—a可以為8。在第二匹配方式中,該數(shù)據(jù)單元總個(gè)數(shù)NUt。t—3可以為5,即第二匹配方式下 的數(shù)據(jù)單元總個(gè)數(shù)小于第一匹配方式下的數(shù)據(jù)單元總個(gè)數(shù)。因此,第二匹配方式可以,但不 是必須,被選擇用于該類型匹配過(guò)程。 除此之外,在一個(gè)實(shí)施例中,數(shù)據(jù)單元200包括特征組總組數(shù)區(qū)212用于存儲(chǔ) ALP的特征組的總組數(shù)NGt。t,以及特征組序列號(hào)區(qū)214用于存儲(chǔ)特征組所對(duì)應(yīng)的組序列號(hào) NGseq。其中,NGtot和NGseq均正整數(shù),且NGseq不大于NGtot。對(duì)于第一匹配方式,e-donkey協(xié)議 可以有四(4)個(gè)特征組CG'pCG'2、CG'3和CG'4,所以NGt。t的值為4。特征組CG' ^CG'2、 CG' 3和CG' 4的組序列號(hào)分別為1、2、3和4。對(duì)于第二匹配方式,e-donkey協(xié)議可以有兩 (2)個(gè)特征組和CG2 (NGt。t = 2),并且特征組和CG2的組序列號(hào)NGseq分別為1和2。
9
除此之外,在一個(gè)實(shí)施例中,數(shù)據(jù)單元200包括數(shù)據(jù)單元總個(gè)數(shù)區(qū)216用于存儲(chǔ)對(duì) 應(yīng)特征組中特征單元(數(shù)據(jù)單元)的總個(gè)數(shù)NUt。tg,以及數(shù)據(jù)單元序列號(hào)區(qū)218用于存儲(chǔ)數(shù) 據(jù)單元200在其所處特征組中所對(duì)應(yīng)的一個(gè)單元序列號(hào)NUse(Lg。其中,NUw g和NUse(Lg均正 整數(shù),且NU吣g不大于NUt。t g。舉例說(shuō)明,C^包括四個(gè)單元P、 Q、 R和S,所以的NUw g 等于4。其次,分別代表P、Q、R和S的數(shù)據(jù)單元的序列號(hào)NU,g可以依次為1、2、3和4。再 舉例說(shuō)明,CG' 2包括兩個(gè)單元Q和T,所以CG' 2的NUt。t g等于2。其次,分別代表Q和T的 數(shù)據(jù)單元的序列號(hào)NUse(Lg可以依次為1和2。 在一個(gè)實(shí)施例中,數(shù)據(jù)單元200中的指令包括代表指令集中的所述指令的關(guān)鍵 字。在一個(gè)實(shí)施例中,所述指令還包括至少一個(gè)用于執(zhí)行所述指令的參數(shù)。如圖2所示, 所述關(guān)鍵字可以存儲(chǔ)在關(guān)鍵字區(qū)220中,而所述至少一個(gè)參數(shù)可存儲(chǔ)在一個(gè)或多個(gè)選項(xiàng)區(qū) 222_1-222_N中(N為正整數(shù))。 更具體地說(shuō),所述指令集可以包括一些分別具有不同特定功能的指令。舉例說(shuō)明, 這些指令可以由一些關(guān)鍵字(例如,"content "、"> content "、"< content "、"+al"等等) 分別代表。其中,指令"content"、"〉 content"禾P"〈 content"可用于將接收單元106的 數(shù)據(jù)緩沖器中某特定儲(chǔ)存區(qū)的內(nèi)容與預(yù)設(shè)內(nèi)容進(jìn)行比較。選項(xiàng)區(qū)222_1可相應(yīng)地存儲(chǔ)所述 特定儲(chǔ)存區(qū)的首地址;選項(xiàng)區(qū)222_2可存儲(chǔ)所述特定儲(chǔ)存區(qū)的深度;以及選項(xiàng)區(qū)222_3可 存儲(chǔ)所述預(yù)設(shè)內(nèi)容。此外,指令"content"的比較結(jié)果可以代表所述特定儲(chǔ)存區(qū)的內(nèi)容是 否與該預(yù)設(shè)內(nèi)容相同。指令"< content"的比較結(jié)果可以代表所述特定儲(chǔ)存區(qū)的內(nèi)容是否 大于該預(yù)設(shè)內(nèi)容。指令"> content"的比較結(jié)果可以代表所述特定儲(chǔ)存區(qū)的內(nèi)容是否小于 該預(yù)設(shè)內(nèi)容。指令"+al"可用于將存儲(chǔ)在數(shù)據(jù)緩沖器中第一特定儲(chǔ)存區(qū)的值與預(yù)設(shè)值進(jìn)行 相加,并且把相加的和存儲(chǔ)到數(shù)據(jù)緩沖器的第二特定儲(chǔ)存區(qū)中。選項(xiàng)區(qū)222_1和222_2可 對(duì)應(yīng)地存儲(chǔ)該第一特定儲(chǔ)存區(qū)的首地址和深度;選項(xiàng)區(qū)222_3和222_4可存儲(chǔ)該第二特定 儲(chǔ)存區(qū)的首地址和深度;以及選項(xiàng)區(qū)222_5可存儲(chǔ)該特設(shè)值。 所述指令集的指令可以有許多不同的功能/作用(例如,內(nèi)容比較、簡(jiǎn)單數(shù)學(xué)運(yùn) 算、邏輯運(yùn)算、地址指針跳轉(zhuǎn)等等)。在訪問(wèn)數(shù)據(jù)單元200過(guò)后,匹配處理器102可以根據(jù) 關(guān)鍵字區(qū)220內(nèi)的關(guān)鍵字以及選項(xiàng)區(qū)222_1-222_N內(nèi)的參數(shù)來(lái)執(zhí)行所述指令集中對(duì)應(yīng)的指 令。在一個(gè)實(shí)施例中,匹配處理器102可以通過(guò)執(zhí)行該指令集中的指令來(lái)確定數(shù)據(jù)包108 是否包括一種對(duì)應(yīng)的特征。 圖3為根據(jù)本發(fā)明的一個(gè)實(shí)施例的數(shù)據(jù)存儲(chǔ)器104中數(shù)據(jù)單元的分布示意圖。以 下將結(jié)合圖1和圖2對(duì)圖3進(jìn)行描述。如圖3所示,數(shù)據(jù)存儲(chǔ)器104可以包括多個(gè)區(qū)域 316_1-316_K(K為正整數(shù))。這些區(qū)域316_1-316_K分別對(duì)應(yīng)于傳輸層協(xié)議TLP_1_TLP_ K(例如,TCP、 UDP、 IGMP、 SCTP等等)。在一個(gè)實(shí)施例中,每個(gè)區(qū)域316_1_316_K包括多個(gè) 子區(qū)域,分別對(duì)應(yīng)于不同應(yīng)用層協(xié)議(例如,HTTP、 FTP、 e-donkey protocol、 BITTORRENT protocol、 SMTP等等)。舉例說(shuō)明,對(duì)應(yīng)于傳輸層協(xié)議TLP_J(J < K)的區(qū)域316J可 以包括分別對(duì)應(yīng)于應(yīng)用層協(xié)議ALP314j, . . . ALP314 5的子區(qū)域314_1-314_5。這些子區(qū)域 314_1-314_5可以按順序地位于數(shù)據(jù)存儲(chǔ)器104中。 在一個(gè)實(shí)施例中,每個(gè)ALP包括一個(gè)或多個(gè)特征組。在圖3所示的實(shí)施例中,子區(qū) 域314_1的ALP314」包括存儲(chǔ)在子區(qū)域310_1和310_2的特征組CG31?!购虲G31。 2 ;以及子區(qū) 域314_2的ALP314 2包括存儲(chǔ)在子區(qū)域312_1-312_3的特征組CG312 !, . . . CG312 3。在一個(gè)實(shí)
10施例中,每個(gè)特征組可以包括一個(gè)或多個(gè)特征單元。舉例說(shuō)明,特征組CG,」可包括分別由 數(shù)據(jù)單元302_l-302_5所代表的特征單元U3。2j,. . . U3。2 5 ;特征組CG31。 2可包括分別由數(shù)據(jù) 單元304_l-304_4所代表的特征單元U3。4 " . . . U3。4 4 ;特征組CG312」可包括分別由數(shù)據(jù)單元 306_l-306_6所代表的特征單元U3。6j, . . . U3。6 6 ;以及特征組CG312 3可包括分別由數(shù)據(jù)單元 308_l-308_3所代表的特征單元U3。8j, U3。8 3。 如前面所述, 一個(gè)ALP可以包括多種特征,而這些特征可以分別由一些數(shù)據(jù)單元 來(lái)代表。匹配處理器102可以根據(jù)這些數(shù)據(jù)單元并通過(guò)第一匹配方式或者第二匹配方式 來(lái)執(zhí)行類型匹配過(guò)程。在圖3所示的實(shí)施例中,對(duì)于ALP^」的匹配選擇了第一匹配方式。 換句話說(shuō),ALP旭—i其特征之間的邏輯組合可以表達(dá)為(U3。2—! A U3。2—2.. . A U3。2—5) V (U3。4—! A U304—2... A U3。4—4)或CG,—i V CG310—2。而對(duì)于ALP加—2的匹配則選擇了第二匹配方式。換句 話說(shuō),ALP314—2其特征之間的邏輯組合可以表達(dá)為(U3。6—! V U3。6—2... V U3。6—6)... A (U3。8—! V U3 。83)或〇63121 A CG3122 A CG3123。在一個(gè)實(shí)施例中,數(shù)據(jù)單元302_1-302_5,304_1-304_4, 306_l-306_6, . . . 308_l-308_3按順序地存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器104中。 在一個(gè)實(shí)施例中,前面所述的第一數(shù)據(jù)單元可以位于區(qū)域314_1中。舉例說(shuō) 明,如果該第一數(shù)掘單元為數(shù)據(jù)單元302_1-302_4中的一個(gè),且其對(duì)應(yīng)指令執(zhí)行結(jié)果的 一個(gè)布爾值為真,前面所述的地址指針P』可指向緊接著所述第一數(shù)據(jù)單元而存儲(chǔ)的第 二數(shù)據(jù)單元302_2-302_5。如果該第一數(shù)據(jù)單元是特征組CG31?!怪械淖詈笠粋€(gè)數(shù)據(jù)單元 302_5且其對(duì)應(yīng)的執(zhí)行結(jié)果為真,即可代表數(shù)據(jù)包108與特征組CG31?!蛊ヅ?,其中CG31?!? U302—! A U302—2. A U302—5 。因此,數(shù)據(jù)包108的ALP可以為ALP314—10匹配處理器102因而可 以產(chǎn)生代表數(shù)據(jù)包108的ALP為ALP314」的輸出信號(hào)114。 再舉例說(shuō)明,如果該第一數(shù)據(jù)單元為數(shù)據(jù)單元302_1_302_5中的一個(gè),且其對(duì)應(yīng) 指令執(zhí)行結(jié)果的一個(gè)布爾值為假,即可代表數(shù)據(jù)包108與特征組CG31。」不匹配。因此,地址 指針Padd可指向緊接著多個(gè)數(shù)據(jù)單元302_l-302_5而存儲(chǔ)的第二數(shù)據(jù)單元304_1。
再另一個(gè)實(shí)施例中,該第一數(shù)據(jù)單元可以位于區(qū)域314_2中。舉例說(shuō)明,如果該 第一數(shù)據(jù)單元為數(shù)據(jù)單元306_l-306_5中的一個(gè),且其對(duì)應(yīng)指令執(zhí)行結(jié)果的一個(gè)布爾值為 假,地址指針P』可指向緊接著所述第一數(shù)據(jù)單元而存儲(chǔ)第二數(shù)據(jù)單元306—2-306—6。再舉 例說(shuō)明,如果該第一數(shù)據(jù)單元是數(shù)據(jù)單元306_6且其對(duì)應(yīng)的執(zhí)行指令為假,即可代表數(shù)據(jù) 包108與特征組CG312—!不匹配,其中CG312—! = U3。6—! V U3。6—2. V U3。6—6。由此可確定,數(shù)據(jù) 包108的ALP不是ALP^,所以地址指針Padd可指向緊接著子空間314_2的多個(gè)數(shù)據(jù)單元 306_l-306_6,. . . 308_l-308_3而存儲(chǔ)的第二數(shù)據(jù)單元(例如,子區(qū)域314_3的初始數(shù)據(jù)單 元)。 再舉例說(shuō)明,如果該第一數(shù)據(jù)單元為數(shù)據(jù)單元306_1_306_6中的一個(gè),且其對(duì)應(yīng) 指令執(zhí)行結(jié)果的一個(gè)布爾值為真,即可代表數(shù)據(jù)包108與特征組CG312」匹配。因此,地址 指針Padd可指向緊接著多個(gè)數(shù)據(jù)單元306_l-306_6而存儲(chǔ)的第二數(shù)據(jù)單元(例如,特征組 CG312 2的初始數(shù)據(jù)單元)。然而,如果該第一數(shù)據(jù)單元是子區(qū)域314—2最后一組特征組CG^ 3 的數(shù)據(jù)單元308_1-308_3中的一個(gè),且其對(duì)應(yīng)的指令執(zhí)行結(jié)果為真,即可代表數(shù)據(jù)包108與 特征組CG312, . . CG312 3均匹配。因此,數(shù)據(jù)包108的ALP可以為ALP314,匹配處理器102 因而可以產(chǎn)生代表數(shù)據(jù)包108的ALP為ALP314 2的輸出信號(hào)114。 除此之外,在一個(gè)實(shí)施例中,每個(gè)區(qū)域316_1-316_1(可以包括結(jié)束數(shù)據(jù)單元用于代表對(duì)應(yīng)區(qū)域316_1-316_K的結(jié)尾。舉例說(shuō)明,如圖3所示,區(qū)域316_J的結(jié)束數(shù)據(jù)單元 318可以包括用于終止類型匹配過(guò)程的指令。在一個(gè)實(shí)施例中,如果地址指針P』指向結(jié)束 數(shù)據(jù)單元318,匹配處理器102可以訪問(wèn)結(jié)束數(shù)據(jù)單元318然后中止該類型匹配過(guò)程。匹配 處理器102還可以產(chǎn)生代表數(shù)據(jù)包108與TLP_J中任何ALP均不匹配的輸出信號(hào)114。
圖4為根據(jù)本發(fā)明的一個(gè)實(shí)施例的識(shí)別數(shù)據(jù)包的方法流程示意圖400。在一個(gè)實(shí) 施例中,匹配處理器102可被配置使得識(shí)別系統(tǒng)IOO可以以流程圖400所示的方式運(yùn)行。以 下將結(jié)合圖1、圖2和圖3對(duì)圖4進(jìn)行描述。 在步驟402中,匹配處理器102可以根據(jù)指向第一數(shù)據(jù)單元(例如,302_1_302_5, 304_1-304_4,306_1-306_6,308_1-308_3等等)的第一地址指針P!來(lái)訪問(wèn)該第一數(shù)據(jù)單 元。在一個(gè)實(shí)施例中,該第一數(shù)據(jù)單元可以與數(shù)據(jù)單元200具有相同的結(jié)構(gòu)。在步驟404 中,匹配處理器102可以確定哪個(gè)匹配方式被選擇用于類型匹配過(guò)程。更具體地說(shuō),該第一 數(shù)據(jù)單元的匹配方式區(qū)202中的內(nèi)容可代表用于該類型匹配過(guò)程的匹配方式(例如,前面 所述的第一匹配方式和第二匹配方式)。如果選擇的是第一匹配方式,流程圖400將轉(zhuǎn)到步 驟406中。 在步驟406中,匹配處理器102可以執(zhí)行該第一數(shù)據(jù)單元的指令(例如,存儲(chǔ)在關(guān) 鍵字區(qū)220和選項(xiàng)區(qū)222J-222—N中的指令)。在一個(gè)實(shí)施例中,該執(zhí)行的結(jié)果包括布爾 值。在步驟408中,如果該執(zhí)行結(jié)果為真,即可代表數(shù)據(jù)包108與該第一數(shù)據(jù)單元所代表的 特征匹配,因此流程圖400將轉(zhuǎn)到步驟410中。在步驟410中,匹配處理器102可以將存儲(chǔ) 在數(shù)據(jù)單元總個(gè)數(shù)區(qū)216中的單元總個(gè)數(shù)NUw g與存儲(chǔ)在數(shù)據(jù)單元序列號(hào)區(qū)218的單元序 列號(hào)NUseq g進(jìn)行比較。在一個(gè)實(shí)施例中,該第一數(shù)據(jù)單元可以處于一個(gè)第一特征組范圍內(nèi) (例如,處于一組數(shù)據(jù)單元中)。該第一特征組可以包括NUt。t g個(gè)數(shù)據(jù)單元,并且該第一數(shù) 據(jù)單元所對(duì)應(yīng)的序列號(hào)可以為NUSMLg。如果序列號(hào)NUsraLg小于總個(gè)數(shù)NUt。t—g,即可代表所述 第一數(shù)據(jù)單元不是該第一特征組中的最后一個(gè)數(shù)據(jù)單元,因此流程圖400將轉(zhuǎn)到步驟412 中。在步驟412中,匹配處理器102可以提供指向一個(gè)第二數(shù)據(jù)單元的第二地址指針P2,且 P2可由此給出P2 = P,l。更具體地說(shuō),第一地址指針&被增加了一個(gè)長(zhǎng)度為一個(gè)數(shù)據(jù)單 元的相對(duì)量(例如,32bytes)。因此,流程圖400可以轉(zhuǎn)到步驟402,并且匹配處理器102可 以訪問(wèn)緊接著該第一數(shù)據(jù)單元而存儲(chǔ)的第二數(shù)據(jù)單元。 返回到步驟410中,如果序列號(hào)NUseq g等于總個(gè)數(shù)NUt。t g,即可代表該第一數(shù)據(jù)單 元是所述第一特征組的最后一個(gè)數(shù)據(jù)單元,因此流程圖400將轉(zhuǎn)到步驟414中。在步驟414 中,數(shù)據(jù)包108的ALP可被確定。更具體地說(shuō),因?yàn)檫x擇的匹配方式為第一匹配方式,所以 在對(duì)應(yīng)的ALP中特征組之間的邏輯關(guān)系為邏輯或,而每個(gè)特征組內(nèi)特征單元之間的邏輯關(guān) 系為邏輯與。當(dāng)所述第一數(shù)據(jù)單元是該第一特征組的最后一個(gè)數(shù)據(jù)單元時(shí),即可代表數(shù)據(jù) 包108與該第一特征組匹配。因此,匹配處理器102可以根據(jù)該第一數(shù)據(jù)單元的應(yīng)用層協(xié) 議區(qū)206中的內(nèi)容來(lái)確定數(shù)據(jù)包108的ALP。換句話說(shuō),數(shù)據(jù)包108的ALP是所述第一數(shù)據(jù) 單元中應(yīng)用層協(xié)議區(qū)206所代表的ALP。 返回到步驟408中,如果該執(zhí)行結(jié)果為假,即可代表數(shù)據(jù)包108不具有第一數(shù)據(jù)單 元所代表的特征,那么流程圖400將轉(zhuǎn)到步驟416中。在步驟416中,第二地址指針P2可 被提供,且可以由此給出P2 = P一NUt(「NUseq—Zl。更具體地說(shuō),在一個(gè)實(shí)施例中,第一地
址指針被增加了一個(gè)長(zhǎng)度為NUt。t—r_NUseq—r+l個(gè)數(shù)據(jù)單元的相對(duì)量(例如,(NUt。t—r_NUseq—^l)*(32byteS))。因此,流程圖400可以轉(zhuǎn)到步驟402,并且匹配處理器102可以訪問(wèn)緊接 著所述第一特征組而存儲(chǔ)的第二數(shù)據(jù)單元。 返回步驟404中,如果選擇的是第二匹配方式,流程圖400將轉(zhuǎn)到步驟418中以執(zhí) 行該第一數(shù)據(jù)單元中的指令。在步驟420中,如果該執(zhí)行結(jié)果為真,流程圖400將轉(zhuǎn)到步驟 422中。在步驟422中,匹配處理器102可以將存儲(chǔ)在特征組總組數(shù)區(qū)212中的總組數(shù)^ 與存儲(chǔ)在特征組序列號(hào)區(qū)214的組序列號(hào)NG,進(jìn)行比較。在一個(gè)實(shí)施例中,該第一特征組 可以處于一個(gè)對(duì)應(yīng)的ALP范圍內(nèi)。該ALP可以包括NGt。t個(gè)特征組,并且該第一特征組所對(duì) 應(yīng)的序列號(hào)可以為NG,。在第二匹配方式中,ALP中的特征組之間的邏輯關(guān)系為邏輯與,而 每個(gè)特征組內(nèi)特征單元之間的邏輯關(guān)系為邏輯或。如果序列號(hào)NG,小于總組數(shù)NGt。t,即可 代表所述第一特征組不是其對(duì)應(yīng)ALP的最后一個(gè)特征組,因此流程圖400將轉(zhuǎn)到步驟424 中。在步驟424中,第二地址指針P2可被提供,且可以由此給出P2 = P一NUt(「NUseu+l。 因此,流程圖400可以轉(zhuǎn)到步驟402,并且匹配處理器102可以訪問(wèn)緊接著所述第一特征組 而存儲(chǔ)的第二數(shù)據(jù)單元。 返回步驟422中,如果序列號(hào)NGseq等于總組數(shù)NGt。t,即可代表該第一特征組是其 對(duì)應(yīng)ALP的最后一個(gè)特征組,因此流程圖400將轉(zhuǎn)到步驟426中。在步驟426中,數(shù)據(jù)包 108的ALP可被確定。更具體地說(shuō),當(dāng)所述第一特征組是該ALP的最后一個(gè)特征組時(shí),即可 代表數(shù)據(jù)包108與該ALP的所有特征組均匹配。因此,匹配處理器102可以根據(jù)該第一數(shù) 據(jù)單元的應(yīng)用層協(xié)議區(qū)206中的內(nèi)容來(lái)確定數(shù)據(jù)包108的ALP。 返回步驟420中,如果該執(zhí)行結(jié)果為假,流程圖400將轉(zhuǎn)到步驟428中。在步驟 428中,匹配處理器102可將總個(gè)數(shù)NUt。t—g與序列號(hào)NUseq—g進(jìn)行比較。如果序列號(hào)NUseq—g小 于總個(gè)數(shù)NUt。t g,流程圖400將轉(zhuǎn)到步驟430中。類似于步驟412,第二地址指針P2可被提 供,且可由此給出&二P,1。如果序列號(hào)NU吣g等于總個(gè)數(shù)NUt。t—g,即可代表數(shù)據(jù)包108與 該第一特征組不匹配。換句話說(shuō),數(shù)據(jù)包108的ALP不是所述第一特征組所處的子區(qū)域所 對(duì)應(yīng)的ALP。因此,流程圖400將轉(zhuǎn)到步驟432中,以訪問(wèn)存儲(chǔ)在另一個(gè)ALP所對(duì)應(yīng)的區(qū)域 的第二數(shù)據(jù)單元。 更具體地說(shuō),在步驟432中,第二地址指針&可被提供,且可由此給出P2 = P一NUt(a-NUseq—a+l,其中NUt。t—a是存儲(chǔ)在數(shù)據(jù)單元總個(gè)數(shù)區(qū)208的數(shù)據(jù)單元總個(gè)數(shù),以及 NU犯"是存儲(chǔ)在數(shù)據(jù)單元序列號(hào)區(qū)210的數(shù)據(jù)單元序列號(hào)。在一個(gè)實(shí)施例中,在一個(gè)ALP所 對(duì)應(yīng)的子區(qū)域中,其特征單元(數(shù)據(jù)單元)總個(gè)數(shù)可以為NUt。ta,以及所述第一數(shù)據(jù)單元處 于該子區(qū)域范圍內(nèi)的序列號(hào)可以為NU,,因此,匹配處理器102可以訪問(wèn)緊接著所述子區(qū) 域而存儲(chǔ)的第二數(shù)據(jù)單元。 換另一種說(shuō)法,在一個(gè)實(shí)施例中,數(shù)據(jù)存儲(chǔ)器104可以用于提供多條指令。這 些指令可以存儲(chǔ)在多個(gè)數(shù)據(jù)單元(例如,302_l-302_5, 304—1-304—4, 306_1_306_6, 308_l-308_3等等)中。因此,所述多條指令可以按預(yù)定的順序存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器104中, 其中所述預(yù)定的順序是由這些指令的邏輯關(guān)系(例如,其對(duì)應(yīng)的多個(gè)數(shù)據(jù)單元之間的邏輯 關(guān)系)來(lái)決定的。所述多條指令可以分別用于確定所述數(shù)據(jù)包的多種特征。除此之外,連 接至數(shù)據(jù)存儲(chǔ)器104的匹配處理器102可以執(zhí)行所述多條指令中的第一指令,以及產(chǎn)生所 述執(zhí)行的結(jié)果。匹配處理器102可以根據(jù)所述執(zhí)行結(jié)果、所述多條指令的總條數(shù)和所述第 一指令所對(duì)應(yīng)的序列號(hào)來(lái)提供指令指針。在一個(gè)實(shí)施例中,匹配處理器102可以根據(jù)所述指令指針來(lái)訪問(wèn)數(shù)據(jù)存儲(chǔ)器104中的第二指令,以及執(zhí)行所述第二指令。 有利的是,在一個(gè)實(shí)施例中,每一種特征類型可以由一個(gè)數(shù)據(jù)單元來(lái)代表。因此,
如果一個(gè)ALP中的某種特征類型被改變,對(duì)應(yīng)的數(shù)據(jù)單元可以相應(yīng)地改變,其改變過(guò)程可
以相對(duì)比較快地完成。同時(shí),對(duì)匹配處理器102的配置無(wú)需作改動(dòng)。同理,如果在互聯(lián)網(wǎng)協(xié)
議集(Internet protocol suite)中加入一種新的協(xié)議,數(shù)據(jù)存儲(chǔ)器104中的一個(gè)或多個(gè)
數(shù)據(jù)單元可以被設(shè)置成代表所述新協(xié)議對(duì)應(yīng)的一些特征類型,其設(shè)置過(guò)程也可以相對(duì)比較
快地完成。 此外,在一個(gè)實(shí)施例中,匹配處理器102可以(但并非必須)由FPGA中的硬件電路 來(lái)實(shí)現(xiàn),從而提高類型匹配的運(yùn)行速度。根據(jù)對(duì)流程圖400所進(jìn)行的討論,匹配處理器102 的配置沒(méi)有像傳統(tǒng)協(xié)議識(shí)別系統(tǒng)中編譯HDL程序那樣的復(fù)雜性,因此該硬件電路的尺寸可 以減小。其次,數(shù)據(jù)存儲(chǔ)器104可以是(但不限于)相對(duì)比較便宜和小尺寸的閃存器。因 此,識(shí)別系統(tǒng)100的尺寸可以被減小,且成本可被降低。 圖5為根據(jù)本發(fā)明的一個(gè)實(shí)施例的識(shí)別數(shù)據(jù)包的方法流程示意圖500。以下將結(jié) 合圖1、圖2和圖3對(duì)圖5進(jìn)行描述。 在步驟502中,匹配處理器102可以訪問(wèn)多個(gè)數(shù)據(jù)單元中的第一數(shù)據(jù)單元(例如, 302_1-302_5, 304_1-304_4, 306_1_306_6, 308_1_308_3等等)。在一個(gè)實(shí)施例中,所述多個(gè) 數(shù)據(jù)單元可以按預(yù)定的順序存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器104中。所述預(yù)定的順序可以由所述多個(gè)數(shù) 據(jù)單元之間的邏輯關(guān)系來(lái)決定。 在步驟504中,連接至數(shù)據(jù)存儲(chǔ)器104的匹配處理器102可以執(zhí)行所述第一數(shù)據(jù) 單元中的指令。在步驟506中,匹配處理器102可以根據(jù)所述執(zhí)行的結(jié)果來(lái)確定數(shù)據(jù)包108 的特征。 除此之外,在步驟508中,匹配處理器102可以根據(jù)所述執(zhí)行結(jié)果、所述多個(gè)數(shù)據(jù) 單元的總個(gè)數(shù)和所述第一數(shù)據(jù)單元所對(duì)應(yīng)的序列號(hào)來(lái)提供地址指針。所述總個(gè)數(shù)和對(duì)應(yīng)的 序列號(hào)可以存儲(chǔ)在所述第一數(shù)據(jù)單元中(例如,存儲(chǔ)在數(shù)據(jù)單元總個(gè)數(shù)區(qū)208和數(shù)據(jù)單元 序列號(hào)區(qū)210中、存儲(chǔ)在數(shù)據(jù)單元總個(gè)數(shù)區(qū)216和數(shù)據(jù)單元序列號(hào)區(qū)218中)。
因此,本發(fā)明提供了一種用于識(shí)別數(shù)據(jù)包協(xié)議類型的識(shí)別系統(tǒng)。該數(shù)據(jù)包可以 (但不限于)IP數(shù)據(jù)包/數(shù)據(jù)報(bào)。所述識(shí)別系統(tǒng)可以包括數(shù)據(jù)存儲(chǔ)器和類型匹配處理器。 該數(shù)據(jù)存儲(chǔ)器可以包括多個(gè)數(shù)據(jù)單元分別用于存儲(chǔ)多條指令。每條指令可以用于代表ALP 的某種特征類型。所述匹配處理器可以訪問(wèn)該數(shù)據(jù)存儲(chǔ)器中的數(shù)據(jù)單元以及執(zhí)行存儲(chǔ)在該 數(shù)據(jù)單元中的指令,從而確定所述數(shù)據(jù)包是否與對(duì)應(yīng)的特征類型匹配。該匹配處理器可以 根據(jù)所述數(shù)據(jù)包的特征來(lái)通過(guò)一種特定的方式對(duì)一個(gè)或多個(gè)數(shù)據(jù)單元進(jìn)行訪問(wèn)。結(jié)果,該 匹配處理器可以根據(jù)這些數(shù)據(jù)單元來(lái)確定所述數(shù)據(jù)包的ALP。 雖然之前的說(shuō)明和附圖描述了本發(fā)明的實(shí)施例,應(yīng)當(dāng)理解在不脫離后附權(quán)利要求 書所界定的本發(fā)明原理的精神和發(fā)明范圍的前提下可以有各種增補(bǔ)、修改和替換。本領(lǐng)域 技術(shù)人員應(yīng)該理解,本發(fā)明在實(shí)際應(yīng)用中可根據(jù)具體的環(huán)境和工作要求在不背離發(fā)明準(zhǔn)則 的前提下在形式、結(jié)構(gòu)、布局、比例、材料、元素、組件及其它方面有所變化。因此,在此披露 之實(shí)施例僅用于說(shuō)明而非限制,本發(fā)明之范圍由后附權(quán)利要求及其合法等同物界定,而不 限于此前之描述。
權(quán)利要求
一種識(shí)別系統(tǒng),用于識(shí)別數(shù)據(jù)包的協(xié)議類型,其特征在于,所述識(shí)別系統(tǒng)包括數(shù)據(jù)存儲(chǔ)器,用于按預(yù)定的順序存儲(chǔ)多個(gè)數(shù)據(jù)單元,其中所述多個(gè)數(shù)據(jù)單元中的第一數(shù)據(jù)單元包括用于確定所述數(shù)據(jù)包特征的指令;所述多個(gè)數(shù)據(jù)單元的總個(gè)數(shù);以及所述第一數(shù)據(jù)單元所對(duì)應(yīng)的序列號(hào);以及連接至所述數(shù)據(jù)存儲(chǔ)器的匹配處理器,用于執(zhí)行所述指令,產(chǎn)生所述執(zhí)行的結(jié)果,并根據(jù)所述執(zhí)行結(jié)果、所述總個(gè)數(shù)和所述對(duì)應(yīng)的序列號(hào)來(lái)提供地址指針。
2. 根據(jù)權(quán)利要求1所述的識(shí)別系統(tǒng),其特征在于,所述匹配處理器根據(jù)所述地址指針 來(lái)訪問(wèn)所述數(shù)據(jù)存儲(chǔ)器中的第二數(shù)據(jù)單元,并執(zhí)行所述第二數(shù)據(jù)單元中的指令。
3. 根據(jù)權(quán)利要求1所述的識(shí)別系統(tǒng),其特征在于,所述指令包括代表指令集中的相應(yīng) 指令的關(guān)鍵字。
4. 根據(jù)權(quán)利要求1所述的識(shí)別系統(tǒng),其特征在于,所述指令包括至少一個(gè)用于執(zhí)行所 述指令的參數(shù)。
5. 根據(jù)權(quán)利要求1所述的識(shí)別系統(tǒng),其特征在于,所述預(yù)定的順序是由所述多個(gè)數(shù)據(jù) 單元的邏輯關(guān)系決定的。
6. 根據(jù)權(quán)利要求5所述的識(shí)別系統(tǒng),其特征在于,所述邏輯關(guān)系包括邏輯與。
7. 根據(jù)權(quán)利要求6所述的識(shí)別系統(tǒng),其特征在于,當(dāng)所述執(zhí)行結(jié)果的一個(gè)布爾值為真 時(shí),所述地址指針指向緊接著所述第一數(shù)據(jù)單元而存儲(chǔ)的第二數(shù)據(jù)單元。
8. 根據(jù)權(quán)利要求6所述的識(shí)別系統(tǒng),其特征在于,當(dāng)所述執(zhí)行結(jié)果的一個(gè)布爾值為假 時(shí),所述地址指針指向緊接著所述多個(gè)數(shù)據(jù)單元而存儲(chǔ)的第二數(shù)據(jù)單元。
9. 根據(jù)權(quán)利要求5所述的識(shí)別系統(tǒng),其特征在于,所述邏輯關(guān)系包括邏輯或。
10. 根據(jù)權(quán)利要求9所述的識(shí)別系統(tǒng),其特征在于,當(dāng)所述執(zhí)行結(jié)果的一個(gè)布爾值為真 時(shí),所述地址指針指向緊接著所述多個(gè)數(shù)據(jù)單元而存儲(chǔ)的第二數(shù)據(jù)單元。
11. 根據(jù)權(quán)利要求9所述的識(shí)別系統(tǒng),其特征在于,當(dāng)所述執(zhí)行結(jié)果的一個(gè)布爾值為假 時(shí),所述地址指針指向緊接著所述第一數(shù)據(jù)單元而存儲(chǔ)的第二數(shù)據(jù)單元。
12. —種數(shù)據(jù)包協(xié)議類型的識(shí)別方法,其特征在于,所述識(shí)別方法包括 訪問(wèn)多個(gè)數(shù)據(jù)單元中的第一數(shù)據(jù)單元; 執(zhí)行所述第一數(shù)據(jù)單元中的指令; 根據(jù)所述執(zhí)行的結(jié)果來(lái)確定所述數(shù)據(jù)包的特征;以及根據(jù)所述執(zhí)行結(jié)果、所述多個(gè)數(shù)據(jù)單元的總個(gè)數(shù)和所述第一數(shù)據(jù)單元所對(duì)應(yīng)的序列號(hào) 來(lái)提供地址指針。
13. 根據(jù)權(quán)利要求12所述的識(shí)別方法,其特征在于,所述識(shí)別方法還包括 根據(jù)所述地址指針訪問(wèn)第二數(shù)據(jù)單元;以及 執(zhí)行所述第二數(shù)據(jù)單元中的指令。
14. 根據(jù)權(quán)利要求12所述的識(shí)別方法,其特征在于,所述多個(gè)數(shù)據(jù)單元按預(yù)定的順序 存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器中,且所述預(yù)定的順序是由所述多個(gè)數(shù)據(jù)單元的邏輯關(guān)系決定的。
15. 根據(jù)權(quán)利要求14所述的識(shí)別方法,其特征在于,所述邏輯關(guān)系包括邏輯與。
16. 根據(jù)權(quán)利要求15所述的識(shí)別方法,其特征在于,當(dāng)所述執(zhí)行結(jié)果的一個(gè)布爾值為 真時(shí),產(chǎn)生指向緊接著所述第一數(shù)據(jù)單元而存儲(chǔ)的第二數(shù)據(jù)單元的地址指針。
17. 根據(jù)權(quán)利要求15所述的識(shí)別方法,其特征在于,當(dāng)所述執(zhí)行結(jié)果的一個(gè)布爾值為 假時(shí),產(chǎn)生指向緊接著所述多個(gè)數(shù)據(jù)單元而存儲(chǔ)的第二數(shù)據(jù)單元的地址指針。
18. 根據(jù)權(quán)利要求14所述的識(shí)別方法,其特征在于,所述邏輯關(guān)系包括邏輯或。
19. 根據(jù)權(quán)利要求18所述的識(shí)別方法,其特征在于,當(dāng)所述執(zhí)行結(jié)果的一個(gè)布爾值為 真時(shí),產(chǎn)生指向緊接著所述多個(gè)數(shù)據(jù)單元而存儲(chǔ)的第二數(shù)據(jù)單元的地址指針。
20. 根據(jù)權(quán)利要求18所述的識(shí)別方法,其特征在于,當(dāng)所述執(zhí)行結(jié)果的一個(gè)布爾值為 假時(shí),產(chǎn)生指向緊接著所述第一數(shù)據(jù)單元而存儲(chǔ)的第二數(shù)據(jù)單元的地址指針。
21. —種識(shí)別系統(tǒng),用于識(shí)別數(shù)據(jù)包的協(xié)議類型,其特征在于,所述識(shí)別系統(tǒng)包括 數(shù)據(jù)存儲(chǔ)器,用于提供多條指令,分別用于確定所述數(shù)據(jù)包的多種特征以及 連接至所述數(shù)據(jù)存儲(chǔ)器的匹配處理器,用于執(zhí)行所述多條指令中的第一指令,產(chǎn)生所述執(zhí)行的結(jié)果,以及根據(jù)所述執(zhí)行結(jié)果、所述多條指令的總個(gè)數(shù)和所述第一指令所對(duì)應(yīng)的 序列號(hào)來(lái)提供指令指針。
22. 根據(jù)權(quán)利要求21所述的識(shí)別系統(tǒng),其特征在于,所述匹配處理器根據(jù)所述指令指 針來(lái)訪問(wèn)所述數(shù)據(jù)存儲(chǔ)器中的第二指令,并執(zhí)行所述第二指令。
23. 根據(jù)權(quán)利要求21所述的識(shí)別系統(tǒng),其特征在于,所述執(zhí)行結(jié)果包括布爾值。
24. 根據(jù)權(quán)利要求21所述的識(shí)別系統(tǒng),其特征在于,所述多條指令按預(yù)定的順序存儲(chǔ) 在所述數(shù)據(jù)存儲(chǔ)器中,且所述預(yù)定的順序是由所述多條指令的邏輯關(guān)系決定的。
25. 根據(jù)權(quán)利要求24所述的識(shí)別系統(tǒng),其特征在于,所述邏輯關(guān)系包括邏輯與。
26. 根據(jù)權(quán)利要求24所述的識(shí)別系統(tǒng),其特征在于,所述邏輯關(guān)系包括邏輯或。
全文摘要
本發(fā)明公開了一種用于識(shí)別數(shù)據(jù)包協(xié)議類型的識(shí)別系統(tǒng)以及方法,其包括數(shù)據(jù)存儲(chǔ)器,用于按預(yù)定的順序存儲(chǔ)多個(gè)數(shù)據(jù)單元,其中所述多個(gè)數(shù)據(jù)單元中的第一數(shù)據(jù)單元包括,用于確定所述數(shù)據(jù)包特征的指令,所述多個(gè)數(shù)據(jù)單元的總個(gè)數(shù),以及所述第一數(shù)據(jù)單元所對(duì)應(yīng)的序列號(hào);所述識(shí)別系統(tǒng)還包括連接至所述數(shù)據(jù)存儲(chǔ)器的匹配處理器,用于執(zhí)行所述指令,產(chǎn)生所述執(zhí)行的結(jié)果,以及根據(jù)所述執(zhí)行結(jié)果、所述總個(gè)數(shù)和所述對(duì)應(yīng)的序列號(hào)來(lái)提供地址指針。
文檔編號(hào)G06F12/08GK101771711SQ200810192938
公開日2010年7月7日 申請(qǐng)日期2008年12月31日 優(yōu)先權(quán)日2008年12月31日
發(fā)明者劉振宇 申請(qǐng)人:凹凸電子(武漢)有限公司