TW201112706A - Recognition system and method for recognizing a data packet - Google Patents
Recognition system and method for recognizing a data packet Download PDFInfo
- Publication number
- TW201112706A TW201112706A TW098146092A TW98146092A TW201112706A TW 201112706 A TW201112706 A TW 201112706A TW 098146092 A TW098146092 A TW 098146092A TW 98146092 A TW98146092 A TW 98146092A TW 201112706 A TW201112706 A TW 201112706A
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- data unit
- instruction
- identification system
- unit
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Description
201112706 六、發明說明: 【發明所屬之技術領域】 本發明係關於一種識別系統,尤其是關於一種圖樣匹 配之識別系統。 【先前技術】 習知的協定識別系統可以根據圖樣匹配過程來確定 網際網路協定(Internet Protocol,IP )封包的應用層協定(例 如’超文本傳輸協定(hypertext transfer protocol,HTTP)、 檔案傳輸協定(file transfer protocol,FTP )、電驢協定 (e-donkey protocol))。例如,習知的協定識別系統可以包 括具有圖樣匹配軟體的通用電腦。該通用電腦可利用圖樣 匹配軟體將IP封包的内容與圖樣匹配軟體中的一組圖樣 進行比較,以根據比較結果確定該IP封包的協定。然而, 這種習知協定識別系統不能快速地確定該IP封包協定。 習知技術中的另一種協定識別系統可由場可程式化 閘極陣列(field-programmable gate array,FPGA )中的硬體 電路來實現。例如,用以確定IP封包協定的硬體描述語言 (hardware description language, HDL)程式(如 Verilog 程式)可為該硬體電路編譯。因此,該硬體電路可以處理 IP封包,並且根據該HDL程式以確定ip封包的協定。然 而,通常配置相對較大的FPGA以載入該硬體電路,其增 加該協定識別系統的尺寸與成本。另外,由於硬體電路設 计的複雜性,編寫HDL程式需要花相對較長的時間。除 此之外’對應用層協定(例如,HTTp、FTp、e_d〇nkey協 0527-TW-CH Spec+Claim(barbara.c-20 ] 00202) 4 201112706 定、BITT0RRENT協定、簡單郵件傳輸協定(simple mail transfer protocol,SMTP))圖樣的任何變化,或任何新加入 網際網路協定集(internetprotoc〇lsuite)的協定,均需要 由程式撰寫者重新編寫HDL程式,其將花費相對較長的 時間。 【發明内容】 本發明提供一種識別一資料封包之識別系統,其包括 一資料記憶體,按一預定順序儲存複數個資料單元,其中 該複數個資料單元中的-第-資料單S包括:確定該資 料封包之一特徵的一指令;該複數個資料單元的一總數; 及該第-資料單元的—對應序列號;以及—輕接至該資料 記憶體的匹配處理器,執行該指令,產生該執行的-結 果,並根據該執行結果、該總數和該對應序列號提供一位 址指標。 【實施方式】 以下將對本發明的實施例做出詳細說明。雖然本發明 Ϊ結ί實,進行_ ’但應理解這並非意指將本發明限 疋些實施例。相反地,本發明意在涵蓋由後附申請專 利範圍所界定的本發明精神和範H内所定義的各種變 化、修改和均等物。 j外,在以下對本發明的詳細描述中,闡明大量的具 體細即以提供針對本發_全面理解。然而,本技術領域 十具有通常知識者細解,沒有這些具體細節,本發明同 0527-TW-CH Spec+Claim(barb ara.c-20100202) 201112706 樣可以實施。在㈣實财,胁f — 和電路未作詳細描述,以便於凸顯本發明之主=、疋件 以下部分詳細描述係以程序、邏輯方二 腦記憶體内資料位元的運算之符號表示之3 些也迷與錢縣㈣處理技術領域巾 = 二:傳,工作實質内容的最有效方式。在本發明中 主序、一邏輯方塊、一步驟或其他等 之步驟或指令導引產生-所需之二= 驟係需要將物理量(physical quantiti_ (r!Tlatl°n)。賴並非必要,但通常這些物理量採用 了诚或雜號的形式俾使在電腦純㈣存 結合、比較等等。 达 」而’ 些相似的用語皆與適當的物理量有關,且僅 Ϊ疋物理量上標上转賴之標示。除非特別強 调’否則顯然從以下述描述可知,在本發明中,這些“存取 (access ) ”、“執行(execute ),,、“判斷(define ) ”、“提 供(provide),,、“產生(gen崎),,等等之用語,係參考 電腦系統或其他類似之電子計算裝置之動作及步驟,這些 動作及步f將代表電腦系統中暫存器及記憶體内之物理 (電子)量處理及轉換為其蝴似於代表電㈣統記憶體 或暫存器内或其他諸如資賴存、親絲示裝置内之物 理量之其他資料。 本發明實施例係透過以一般文字來描述以電腦可使 用的媒體形式(例如,程式模組)存在且透過一或多個電 腦或其他裝置來執行之電腦可執行指令。一般來說,程式 0527-TW-CH Spec+Claim(barbara.c-2〇100202) 6 201112706 ===^?,_組 Ξ式模組的功能將因各種不同實《樣 訊媒=:用:=,存媒體及通 :tr以儲存例如電腦可讀之指令、= 、且或其他資料之可變㈤義)/不可變、 二= ,的電腦儲存媒體。電腦儲存媒體包括隨機二己;】 (RAM)、唯讀記憶體(R〇M)、電子 °心體 15 記憶體(酿叫快閃記憶體或二::唯: 職)、數位多功能磁碟(靖)^ =學= f,卡式磁帶(cassettes)、磁帶(tape)、磁碟、或盆 式儲存或其他可用於儲存資料之媒體,但不以、為^ ^碰可使”腦可讀指令、㈣結構、^模组 資料信號上之資料,例如載波或其他傳輸機 ::呈何資訊傳送媒體。術語「調變資料信號」意 有-❹组特徵組,或以例如在該信號上加密 力口密方法而改變之信號。舉例來說,通訊媒體包括例如有 線稱或以直接線路相連之有線媒體,或例如聲 (acoustic) ( radio frequency, RF ), 他等等無線媒體,但不以此為限。上述媒體之結合亦包^ 在電腦可讀媒體之範圍中。 圖4和圖5為根據本發明的實施例的電腦實施方法的 流程圖。圖4和圖5中的流程可以作為存在於電腦可用媒 0527-TW-CH Spec+Claim(barbara.c-20100202) 7 201112706 體上之某些形式的電腦可執行指令來實施,如)被一個或 多個電腦或其他裝置執行之程式模組。 在一實施例中,本發明提供一種識別系統。該識別系 統可以透過執行圖樣匹配過程來識別資料封包。更具體地 說,在一實施例中,根據一網際協定(例如,傳輸層協定 (transport layer protocol,TLP )、應用層協定(application layer protocol,ALP )),該資料封包可包括被打包在該資料 封包中的訊息。每一種網際網路協定可以有一種或多種特 徵,可被轉為一種或多種圖樣。這些特徵圖樣可按預定順 序儲存在資料記憶體中。圖樣匹配處理器可存取該資料記 憶體,並將該資料封包與儲存在資料記憶體中的特徵圖樣 比較,以根據該比較確定該資料封包是否與對應的協定匹 配。如此,識別系統可識別出資料封包的協定。 圖1為根據本發明的一實施例的識別系統1〇〇方塊 圖。識別系統100可用於識別資料封包1〇8 ^在一實施例 中,資料封包108可以是IP封包/資料電報,但不以此為 限。IP封包/資料電報108可包括定義ip封包1〇8的傳輸 層協定(TLP)的協定區110,及載有ip封包1〇8的資料 的資料區112。TLP可包括傳輸控制協定(transmission control protocol, TCP )、使用者資料電報協定(user datagram protocol,UDP )、網際網路群組管理協定(internet group management protocol,IGMP)、流量控制傳輸協定 (stream control transmission protocol, SCTP )等等。 在一實施例中,資料記憶體104可根據不同的協定在 資料記憶體104的不同區域儲存多個資料單元(如圖中所 0527-TW-CH Spec+Claim(barbara.c-20100202) 8 201112706 ^ ΐ1,..·〜,叩’為整數舉例說明,根據不同的 TLP,貝料記憶體1()4可被劃分為一個或多個區域。盆中 一個區域可儲存與似相_資料單元,-個區域可儲存 ί、UDeP相太關的資料單元’一個區域可儲存與IGMP相關的 資料單元等等。除此之外,根據不同的ALP ’每一個tlp 相關區域可再次被劃分為幾個子區域。舉例說明,對於與 TCP,關的區域,其中-個子區域可儲存與HTTP相關的 資料單元’ 一個子區域可儲存與SMTP相關的資料單元, 一個子區域可儲存與e_d〇nkey協定相關的資料單元等等。 在一實施例中,接收單元106可用於接收Ip封包 1⑽,以及根據協定區110中的内容來確定正封包.108.的 TLP因此,轉接至接收單元106和資料記憶體1〇4的圖 樣匹配處理器102 (在此之後,稱為匹配處理器102)可 根據IP封包1〇8的TLP來存取資料記憶體1〇4中一個對 應區域中的資料單元。舉例說明,在接收IP封包108之後, 接收單元106可擷取協定區11〇中的内容,故使匹配處理 器1 〇 2可以根據該内容來產生指向該對應區域的開始資料 單元的位址指標’以存取該開始單元。此外,接收單元1〇6 可以從IP資料區112中擷取應用層資料,並且將該應用層 資料儲存到接收單元106的資料緩衝器中。匹配處理器1〇2 可以根據該對應區域中的資料單元和該資料緩衝器中的 應用層資料來確定IP封包108的ALP。 更具體地說’一個ALP可以有一種或多種特徵,並且 這些特徵之間可以有一種邏輯關係。比如說,如果IP封包 的ALP是e-donkey協定,IP封包108可以與第一特 0527-TW-CH Spec+Claim(barbara.c-20100202) 9 201112706 徵組〇〇丨和第二特徵組Cg2匹配。 分別由“P,,、%,,、《R,,#«s,,& t Μ特徵組CGi可包括 =2:r層資料區的第_=内碼= η::種特徵’即包括十六進位物c5之第 二== 特徵單μ可代表-種特徵,即』 十八進位碼0χΕ4之第-位元組内容。第四特徵單元 =表-種特徵’即包括十六進位碼㈣4之第—位元組= 容。在一實施例中,第一特徵組CGi可表 、 換句話說,如果IP封包⑽與特徵單^卜q、 二之-,,則可代表IP封包⑽與第—特徵組 。第一特徵組CG2可以包括由T代 2特徵單元了可代表—種特徵,即包括代表Ιρζ= 長度的十六進位碼之應用層資料區巾第二 内容。第二特徵組CG2可表達為:Τ。類似地,如果3 ,10S^ cg2匹配。在-貫施例中’如果1?封包⑽與兩個特徵电 CGl和CG2均匹配’IP封包⑽的ALP為e-d〇nkey協定。 因此’ e-donkey協定的特徵之間的邏輯關係可以表 (PvQvRvS)aT或 CG’aCG2。 在一實施例中,这些特徵之間的邏輯關係也可表達 為:…T)V(QaTMRaTMSaT)。在一此等實施例中, 協定可以包括四個特徵組。第—特徵組⑽可表達為. Μ。第二特徵組叫可表達為:QaT。第三特徵組cg, 可表達為:RAT。第四特徵組说4可表達為:Sat。如果3 0527-TW-CH Spec+CIaim(barbara.c-20100202) 10 201112706 IP封包108與特徵置一 ^ ι π 特徵組叫匹配匹配❿封包1〇8則與第一 配,㈣包刚二正特封徵包^與特徵單元_匹 CG,知ΓΓ,~r、 特徵、卫CG 2匹配;對於特徵組
3 4以以此類推。在一實施例中,如果iP 108與特徵組CG,】rrT,甘士 π如果IP封包 包⑽的ALP為:麵二t之:㈣徵組匹配, e-d〇nkey協定的特徵 ’ CAW、間的邏輯關係也可以表達為: 0 4 在一實施例中,多個資料單元(如,D_D. n、 中至少一個資料單元可代表 "1+lj-D^) 〇.R ο Tx 〜表ALP的—對應特徵(如,ρ、 Q、R、s、τ)。例如’資料單元D⑷可 前述的第一位元組内容與值〇χΕ 括才",將 魔可以存取資料單元Di+iJi 5 匹配處理器 封包⑽是奸括誠㈣細斯日令’且產生代表ip 疋祜對應的特徵p 料單元Di+2, ".Di+5可分別用㈣^仃、、,。果。類似地’資 特徵Q、R、S和T。 '疋1P封包1〇8是否包括
在一實施例中,資料單元D 記憶體104中作為用於資料封包以儲存於資料 特徵圖樣。資料單元]>+ 、°樣匹配過程的多個 資料記憶體1〇4中’其;該預;序儲存在 邏輯關係來決定的。在—實施例中,=疋由該特徵之間的 例,其特徵之間的邏輯關係 .e'donkey協定為 此糾代表卜Q、_的—4^(:Tvs)at,因 以按順序地被儲存,而代表τ的資 hi,…Di+4可 資料單元組〜,為4緊接著的下一儲= 0527-TW-CH Spec+Claim(barbara.c-20100202) 11 201112706 此等實施例中’資料單元Di+1,…Di+5可以儲存在與 e_donkey協定相關的子區域中。此外’如前所述,該特徵 之間的邏輯關係也可表達為:(paT)v(qaT)v(RaT)v(SaT)。因 此在另一實施例中,一組資料單元Dj+1,…Dj+8(“j”為整數) 可被設定為代表特徵序列p、T、Q、T、R、T、S和τ, 並且可按順序儲存在與e-donkey協定相關的子區域中。 一般而言,在一實施例中,用於識別資料封包1〇8的 識別系統10 0可以包括用於按預定的順序儲存一組資料單 元的資料記憶體104。該組資料單元中的第一資料單元可 以包括用於確定該資料封包1〇8特徵的指令。該第一資料 單元還可以包括該組資料單元的總數,和該第一資料單元 所對應的序列號。此外,識別系統1〇〇還可以包括耦接至 資料記憶體104的匹配處理器102。匹配處理器1〇2可以 執行該第-資料單元_指令,並且產生執行結果。在一 實施例中’該指令的執行結果包括一個布林(B〇〇lean)值。 如果該布林值為真(true),則資料封包1〇8包括第一資料 單元所代表的特徵。如果該布林值為假(㈣),則資料封 包1〇8不包括第-資料單元所代表的特徵。除此之外,匹 配處理器1G2可以根據該執行結果、該組f元 以及對應於該第—資料單元的序列號來提供位址Γ標 padd。在-實施例中’ E配處理器102可根據位址指標^ 來存取資料記憶體1〇4中的第二資料單 a一 資料單元中的齡。 卿这第- 0527-TW*CH Spec+Claim(barbarac*20100202) 12 201112706 數和單元序列號來提供另-個指向第三資料單元的 指標。因此,匹配處理器102可以逐一存取第三資料單_ 第四資料單元、狂㈣單元科,並且確定^封包^ 是否包括被存取的資料單元所代表的特徵。換句話說, 配處理器102可以根據資料記憶體1〇4中的資料單元來= 行圖樣匹配過程,以確定資料封包1〇8的ALp。在一每扩 例中,如果資料封包⑽與某個ALP的特徵的邏輯組^ 配,匹配處理器102可以產生一個輸出信號ιΐ4以代表該 ALP為資料封包108的ALP 〇 Λ 圖2為根據本發明的—實施例的f料單元· ..圖。以下將結合圖1對圖2進行描述。在—實施例中,資 料單元DbDi+1,…Di+5,..·中的每個資料單元可以鱼 元200具有相同架構與長度(例如,32個位元組八早 如圖2所示,資料單元細可以包括四配模式區搬, 代表ALP的-種圖樣匹配模式。更制言之,在—實施 中,該圖樣匹配模式可包括第—匹配模式和第二匹配模 式二在第-匹配模式中,對應之ALp的特徵組之間的邏輯 關係可以為賴OR (如,cg.iVCG.2vCG>cg.4),而每個特 徵組中的特徵單元之_邏輯關可以為邏輯and(如, ΡλΤ ’ QaT,RaT和Sat)。在第二匹配模式中,對應⑽ 的特徵組之間的邏輯關係可以為邏輯AND'Z如, CGiaCG2),而每個特徵說中的特徵單元之間的邏輯關係可 以為邏輯OR (如,PvqvRvS)。 a e_d論ey狀為例,與e_d⑽key協抑關的子 可以包括-組資料單元、,...如。這組資料單元 0527-TW-CH Spec+Claim(barbara.c-20100202) 13 201112706 依序儲存在資料記憶體1G4中,並且被設 一此等實例中,i=p、eT、Q、T、R、T、s^Te 702 -母個資料單兀Dj+1,…Dj+8的匹配模式區 均有表不第一匹配模式之相同内容。因此,匹配處理 器102可以根據資 η μ 處 、 象貝科卓兀Dj+1,…Dj+8來執行圖樣匹配過 ,以確定資料封包1〇8是否與邏輯组合 (paTMQaTMRaT)v(SaT)匹配。 , 如另實例所示,與e-donkey協定相關的子區域可以 包括一組資料單元1W為5。這組資料單元Di+1,為5 儲存在資料記憶體刚中,並且被設定成分別代 表?徵早tlP、q、r、.s* τ。在一此等實例中,每個資 料早7G Di+1,·..Di+5的匹配模式區2〇2均有表示第二匹配模 式之相同内今。因此,匹配處理器1〇2可以根據資料單元
Dhi,…Di+S來執行圖樣匹配過程,以確定資料封包1〇8是 否與邏輯組合(PvqvRvS)aT匹配。 在-實施例中,資料單元2〇〇還可包括傳輸層協定 (TLP)區204,代表資料單元位於的區域所對應的 TLP (如,TCP、UDP、IGMP、SCTP)。在一實施例中, 識別系統1〇〇可以根據資料封包⑽的協定區11〇的内容 來確疋資料封包1G8的TLP。如此,匹配處理器1〇2可以 根據儲存在對應輯巾的資料單元來執行®樣匹配過程。 在-實施例中,資料單元200還可包括應用層協定 (ALP) 1 206,代表資料單元2〇〇 <立於的子區域所對應
的 ALP (如,HTTP、FTP、e-donkey 協定、BITTORRENT 協疋、SMTP等等)。此外,資料單元200還可包括用於儲 0527-IW-CH Spec+Claim(barbara.c-20100202) 14 201112706 存該對應子區域中資料單元的總數NUtC)t_a的單元總數區 2〇8 ’以及用於儲存資料單元2〇〇所對應的一個單元序列 號NUseq-a的單元序列號區210。在一實施例中,NUtC)t_a和 NUseq-a 為正整數,且 NUseq_a 不大於 NUt〇t_a。以 e-d〇nkey 協定為例’如果選擇第一匹配模式,則與e-donkey協定相 關的子區域可包含八(8)個特徵單元P、T、Q、T、R、 T、S和T,所以^仏^為8。此外,分別代表特徵單元p、 τ、Q、τ、R、T、s和τ的資料單元序列號的NUseu可 為1 2、3、4、5、ό、7和8。另一方面,如果選擇第二 匹配模式’則與e-donkey協定相關的子區域可包含五(5 ) ,特徵單元P、Q、R、S和T,所以NU—為5。此外, 分別代表特徵單元P、Q、R、S和T的資料單元序列號的 NUseq_a 可為 1、2、3、4和5。 々在一實施例中,圖樣匹配模式(例如,第一匹配模式 和第二匹配模式)可以根據對應ALP的資料單元總數 ^Ut〇t:ae選擇。例如,在第一匹配模式中,e-donkey協定的 資料單元總數NUtot_a可以為8。在第二匹配模式中, e_d〇nkey協定的資料單元總數NUtot_a可以為5,因此第二 匹配模式下的資料單元數小於第一匹配模式下的資料單 元數因此,第二匹配模式可以(但非必需)被選擇用於 該圖樣匹配過程。 除此之外,在一實施例中,資料單元200包括用於儲 存對應ALP的特徵組的總組數NGtot之組總數區212,以 及用於儲##所職的組序舰之組序列號區 14在男、施例中,NGtot和NGseq為正整數,且NGseq 0527-TW-CHSpec+Claim(barbara.c-2〇l〇〇2〇2) 201112706 不大於NGtot。對於第一匹配模式,e_d〇nkey協定可以有四 4)個特徵組CG,〗、CG,2、CG,3和CG,4,所以NGtot為 4特徵組CG rCGVCG’A CG,4的組序列號分別為卜 2 3和4。對於第二匹配模式,e-donkey協定可以有二(2) 個特徵組CGi和CG2 (NGtQt=2),且特徵組CGi和CG2的 組序列號NGseq分別為 除此之外,在一實施例中,資料單元200包括用於儲 存對應特徵組巾特徵單元(f料單元)總數薦心之單元 總數區216,以及用於儲存資料單元2〇〇在其對應特徵組 中的-個對應序列號而叫_〆單元序列號區218。在一實 施例中’,薦心和NUseq』為正整數,且NUseq』不大於 NUtQt_g。例如’CGi包括四個單元p、Q、R* s,所以CGi 的NUt()t_g為4。此外,分別代表p、q、R和s的資料單 元的序列號NUseq_g依次為i、2、3和4。又例如,CG,2 包括二個單元Q和T,所以CG,2的2。此外, 分別代表Q和T的資料單元的序列號]^11叫^為丨和2。 在一實施例中,資料單元200中的指令包括代表指令 集中的該指令的關鍵字。在一實施例中,該指令還包括至 少一個用於執行該指令的參數。如圖2所示,該關鍵字可 以儲存在關鍵字區220中,而該至少一個參數可儲存在一 個或多個選項區222_1-222_N* (N為正整數)。 更特別言之,該指令集可以包括一些分別具有不同特 定功能的指令。例如.,該組指令可以由一些關鍵字(例如, “content”、“>content”、“〈content”、“+al”等等)代表。其 中,指令“content”、“>content”和“〈content”可用於將接收 0527-TW-CH Spec+Claim(barbara.c-20100202) 16 201112706 單元106的資料緩衝器中一預設區域的内容與一預設内容 比較。據此’選項區222_1可儲存該預設區域的開始位址; 選項區222_2可儲存該預設區域的深度;以及選項區222_3 可儲存該預設内容。此外’指令“contenf,的比較結果可以 代表該特定預設區域的内容是否與該預設内容相同。指令 “〈content”的比較結果可以代表該預設區域的内容是否大 於該預設内容。指令“>content”的比較結果可以代表該預設 區域的内容是否小於該預設内容。指令“+al,,可用於將儲存 在資料緩衝器中第一特定預設區域的值與預設值相加,並 且把相加的和(sum)儲存到資料緩衝器的第二預設區域 中。選項區222一 1和222_2可對應地儲存該第一預設區域 的開始位址和深度;選項區222一3和222一4可儲存該第二 預設區域的開始位址和深度;以及選項區222—5可儲存該 預設值。 ~ β 該指令集的指令可以有許多不同的功能(例如,内容 比較、簡單數學運算、邏輯運算、位址指標跳轉等等)。 ,存取資料單元200過後,匹配處理器1()2可以根據關鍵 字區220内的關鍵字以及選項區222J_222—Ν内的參數來 執行該指令集中-對應的指令。在一實施例中,匹配處理 器102可以藉由執行該指令集中的一對應指令來確定資料 封包108是否包括一特徵。 圖3為根據本發明的一實施例的資料記憶體ι〇4中資 料單元的分佈圖。圖3將結合圖丨和圖2進行描述。如圖 3所示’資料記憶體104可以包括複數個區域316j_316_k (K為正整數)’分別對應於傳輸層協定TLP_1-TLP K(例 0527-TW-CH Spec+Claim(barbarac-20100202) \η 201112706 如’ TCP、UDP、IGMP、SCTP等等)。在一實施例中,每 個區域316_1-316—K包括一組子區域,分別對應於不同應 用層協疋(例如 ’ HTTP、FTP、e-donkey protocol、 BITTORRENT protoco卜 SMTP 等等)。例如,tlP J ( J<K ) 的區域316_J可以包括分別對應於應用層協定 ALP314_i, ...ALP314 5 的子區域 314_1-314_5。這些子區域 314_1-314—5可以依序位於資料記憶體1〇4中。 在一實施例中,每個ALP包括一個或多個特徵組。在 圖3所示的實例中,子區域314J的ALp3i4」包括儲存在 子區域310—1和310_2的特徵組(^训^和CG3i〇 2 ;且子 區域314_2的ALPsh—2包相儲存在子區域312—丨_312—3的 特徵組CGmj,…CGM2_3。在一實施例中,每個特徵纟且可 以包括一個或多個特徵單元。例如,特徵組CG3i〇〗可包 括分別由資料單元302^-302^所代表的特徵單元 Usou,…U3〇2_5 ;特徵組CG310_2可包括分別由資料單元 304_1-3G4_4所代表的特徵單元% h ...U3。“;特徵组 CG^可包括分別*資料單元3〇6j_3〇6_6所代表的特徵 早凡U^,...U306_6 :以及特徵組CG3i2」可包括分別 料單元308—1-308—3所代表的特徵單元U3〇8—!,…。 如則所述’-個ALP可以包括由一組資料單元代表 一組特徵。匹配處理器⑽可以根據這些資料單元藉由第 -匹配模式或者第二匹崎式來執行圖樣匹崎程。 314 1
(U302J Λ U3〇2-2"· Λ U3()2_5) V (U3〇4 Λ U Q所不的貫例中’對於alp314」的匹配選擇第—匹配模式。 換句話說’ ALP314 1其特徵之間的邏輯組合可以表達為: 而 304,··Λν4)或 cg31(uVCg3ul2 0527-TW-CH Spec+Claim(barbara.c-20100202) 18 201112706 T^i4^ ° ^ (u ·;特徵之間的邏輯組合可以表達為·· 一每施 C 中 I:) : Μ。8-1 V A。8-3)或 ^312·ι 八⑺312-2 Λ ⑺312 3。^ 中。 依序儲存在資料記憶體1〇4 3Μ f ’前述的第-資料單元可為位於區域 個布林值為真ηΙ、制齡執行結果的一 資料單元而健存4的:二可指向緊接著該第- 明,若該第-資料t=rG:2-5。再舉例說 料單元302一5,且A對庳的 31〇J中的最後一個資 封包108 丁、、,°果為真’即可代表資料 以°如此’資料封包⑽的AlU 乂為ALP3141。匹配處理 0 LP 了 包108的ALP為ALP 。 可以產生代表資料封 再舉例說以二信,。 3〇2一1_3〇2_5中的—個 貝’斗早兀為—組資料單元 林值為假,即可代表資_;;對應指令執行結果的一個布 配。因此,位址指=包;08與特徵_心不匹 add可指向緊接著兮έ曰次斗:!》。-搬-1-302-5而儲存的第二資料單元3〇4 ^組貝抖早70 在另一實施例中,該第 ; 3Μ一2中。例如,如果該第 二早-可以位於區域 306—巾的一個,且# =為-組資料單元 一對應扣7執行結果的一個布 0527-TW-CH Spec+Claim(barbara.c-20100202) 19 201112706 儲存的第二資料ί =可2指向緊接著該第1料單元而 假,即可代早?: 一6且其對應的執行指令為 tcG D貝科封包108與特徵組呢121不匹配,i AL/i是由此可較資料封包⑽的 間3Μ2 Γ2/斤以位址指標^可指向緊接著子空 3〇6 1-30“ 3〇R夕個資料單元(例如, 如“第二資料單元(例 3〇6 ϋ例6^的2果該第—資料單元為該組資料單元 林值為真,—即可代對應指令執行結果的一個布 了代表貝料封包1⑽與特徵組CG3121匹配。 3〇6Μ〇!Γ'# 的心咨4:⑽存的第二資料單元(例如,特徵組CG312 2 =始資料單元)。然而,在另一實例中,如果該第一資2 元早區域m後一組特徵組CG312-3的資料單 、〇8—3巾的_個,且賊應的指令執行結果為 真’即可代表資觸包⑽鱗徵组CG3i2i,".CG3i2^ ,配:因此’資料封包108的ALP可以為ALP””。匹配 理器102因而可以產生代表資料封包⑽# ALp為 ALP314_2的輸出信號114。 、除此之外,在一實施例中,每個區域316—jjM-K可 以包括結束資料單元,祕代表對應區域3丨6—1316_〖的 結尾。舉例說明,如圖3.所示,區域316一;的結束資料單 兀318可以包括用於終止圖樣匹配過程的指令。在一實施 0527-TW-CH Spec+Claim(barbarac-20100202) 20 201112706 例中’如果位址指標Padd指向結束資料單元M8,匹配處 理器102可以存取結束資料單元318,並接著中止該圖樣 匹配過程。匹配處理器1〇2還可以產生代表資料封包1〇8 與TLP一J中任何ALP均不匹配的輸出信號IN。 __圖4為根據本發明的一實施例以一識別系統執行的例 示性方法流程圖4〇〇。在一實施例中,匹配處理器1〇2可 被配置,俾使識別系統1〇〇可以流程圖400所示的方式操 作以下將結合圖1、圖2和圖3對圖4進行描述。 。。在步驟402中,匹配處理器1〇2可以根據指向第一資 料單元(例如,302_1-302_5, 304_1-304__4, 306_>306_6, =8一 1-308一3.等等)的第一位址指標Ρι來存取該第一資料 單元。在一實施例中’該第一資料單元可以與資料單元2〇〇 具有相同的架構。在步驟綱中’匹配處理器1()2可以確 定哪個匹配模式被選擇用於圖樣匹配過程。更具體地戈 該第-資料單元的匹配模式區2G2中的内容可絲用二亥 圖樣匹配過程的匹配模式(例如,前述的第—匹配 ^ 第二匹配模式)。如果選擇的是第—匹配模式 將轉到步驟406中。 _ _在步驟406中,匹配處理器102可以執行該第 早το的指令(例如’儲存在關鍵字區22()和選項 222」-222—N中的指令)。在-實施例中,該指令的二 果包括布林值。在步驟顿中,如果該執行結果為真^ 可代表資料封包108與該第一資料單元 ; 配,因此流程圖400將轉到步驟41〇中。/ 、寺徵匹 匹配處理器102可以將儲存於單元總數區2ΐ6中的:數 0527-TW-CH Spec+Claim(barbara.c-20100202) 21 201112706 NUt()t_g與儲存於單元序列號區218的序列號NUseq_g比較。 在一實施例中’該第一資料單元可以處於一第一特徵組 (例如’一組資料單元)内。該第一特徵組可以包括NUtm_g 個資料單元’且該第一資料單元的序列號可以為NUseq_g。 如果序列號NUsetLg小於總數NUt()t_g,即可代表該第一資 料單元不是該第一特徵組中的最後一個資料單元,因此流 程圖400將轉到步驟412中。在步驟412中,匹配處理器 102可以提供指向一第二資料單元的第二位址指標卩2,且 P2可由此給定:Pfh+l。更具體地說,第一位址指標Ρι 被增加一個資料單元長度的偏移量(例如,32位元組)。 因此,抓程圖400可以轉到步驟4〇2 ’並且匹配處理器ίο〕· 可以存取緊接著該第—資料單元㈣存的第二資料單元。 返回到步驟410巾,如果序列號Ν'』等於總數 NUt。匕g ’即。可絲該第—㈣單元是該第—特徵組的最後 一個貧料單π,因此流程圖4〇〇將轉到步驟々Μ中。在步 驟414中,資料封包108❺ALp可被確定。更具體地說, ^選擇的匹配模式為第-匹配模式,所以在對應的ALp =徵組之_賴_為邏輯⑽,㈣娜徵組内特 徵早70之_邏輯關係為邏輯AND。當該第 該第-特徵_最後-個資料單元時,即 ⑽與該第-特徵組匹配。因此,匹配處理琴1〇2可以^ 據該第-資料單元的應用層蚊區高中的内容 料封包⑽的ALP。換句話說,資料封包是 該第一資料單元中應用層協定區高所代表的ALp。疋 返回到步驟4〇8中,如果該執行結果為假,即可代表 0527-TW-CH Spec+Claim(barbara.c-20100202) 22 201112706 資料封包108不具有第一資料單元所代表的特徵,那麼流 程圖400將轉到步驟416中。在步驟416中,第二位址^ 標P2被提供’且可由此給定:p2=Pl+NUt(^_NUse^+i 具體地說,在一實施例中,第一位址指標匕被增加一個為 NUtQt_rNUseq_r+i個資料單元長度的相對量(例如, (NUtot_r-NUseq_r+l)*(32位元組))。因此’流程圖4〇〇可以轉 到步驟402,並且匹配處理器102可以存取緊接著該第一 特徵組而儲存的第二資料單元。 Λ 返回步驟404中,如果選擇的是第二匹配模式,流程 圖400將轉到步驟418中以執行該第一資料單元中的指 令。在步驟420中,如果該執行結果為真,流程圖4〇〇 ^ 轉到步驟422中。在步驟422中,匹配處理器1〇2可以將 儲存在組總組數區212中的組總數薦⑹與儲存在組序列 號區214的組序舰NGseq比車交。在一實施例中,該第一 特徵組可以處於-個對應的ALp内。胃ALp可以包括 NGtot個賴組’且該第—魏_序舰可⑽NGY f第-匹模式巾,alp巾的特徵組之間的邏輯關係為邏 輯AND,而每個特徵組内特徵單元之間的邏輯關係為邏輯 OR '如果序列號NGseq小於總組數腿⑽,即可代表該第 特徵組不疋其ALP的最後—個特徵組,因此流程圖働 =轉到步驟424中。在步驟似中,第二位址指標&可被 提供’且可由此給定:㈣侧⑹眞^+1。因此,流 ^圖400可以轉到步驟術,且匹配處理器搬可以存取 I、接者該第-特徵組而儲存的第:資料單元。 返回步驟422中,払里—,^ 如果序列號NGseq等於總組數 0527-TW-CH Spec+CIaim(barbara.c-20 J 00202) 23 201112706 NGtot ’即可代表該第—特徵 特徵組,因此流程圖4〇〇將;;對應ALP❸最後一個 卜資料封肖Γ 轉到步驟426中。在步驟你 τ貧科封匕的ALP可赫被— -特徵組是該ALP的最後—彳體地說’當該第 包108盥爷麦一個特徵組時,即可代表資料封 包與該ALP的所有特徵組均匹配。因此,匹配處理器 102可以根據該第一資料 &隨處理态 容來較資料封包uTXt朗層财區施中的内 = 在步驟428中,匹配處理器撤可將
Lg與序列號NUseq-g比較。如果序舰叫叫g小 挑數NUtot_g ’流程圖400將轉到步驟4 於 驟仍,第二他赌Μ被提供,且可由此 Ρι+卜如料顺NUseq_g#機數NUt(g,g卩可代表 料封包108與該第-特徵組不匹配。換句話說,資料封包 108的ALP不疋該第一特徵組所處的子區域所對應的 ALP。因此,流程圖4〇〇將轉到步驟432中,以存取儲存 在另一個ALP的區域的第二資料單元。 子 更具體地說,在步驟432中,第二位址指標!>2可被提 供,且可由此給定:P2=Pl+NUtot—a-NUseq_a+l,其中 Νυ^ 是儲存在單元總數區208的單元總數,及NUseq_a是儲存^ 單元序列號區210的單元序列號。在一實施例中,在〜個 ALP所對應的子區域中,其特徵單元(資料單元)總數可 以為NUtot_a,以及該第一資料單元處於該子區域範圍内的 序列號可以為NUseq_a。因此,匹配處理器102可以存取緊 接著該子區域而儲存的第二資料單元。 ' 0527-TW-CH Spec+Claim(barbara.c-20100202) 24 201112706 換言之,在一實施例中,資料記憶體1〇4可以用於提 供複數個指令。這些指令可以儲存在多個資料單元(例 如,302-1-30^ 304^.30^306- 等專)中。因此,該複數個指令可以按預定順序儲存在資 料記憶體104中,其中該預定順序是由這些指令的邏輯關 係(例如,其對應的資料單元之間的邏輯關係)決定。該 複數個指令可以分別操作為確定該資料封包的複數個特 徵。除此之外,耦接至資料記憶體104的匹配處理器1〇2 可以執行該複數個指令中的第一指令,並產生該執行的結 果。匹配處理器102可以根據該執行結果、該複數個指令 的總數和該第一指令所對應的序列號來產生指令指標。在 一具施例中,匹配處理器1〇2可以根據該指令指標來存取 資料記憶體104中的第二指令,以及執行該第二指令。 有利的是,在一實施例中,每一種特徵圖樣可以由一 個資料單元來代表。因此,如果一個ALP中的一特徵圖樣 改!,對應的資料单元可以相應地改變,其可以相對快速 地元成。同時,匹配處理器1〇2的配置無需改變。類似地, 如果在網際網路協定集(internetprotoc〇lsuite)中加入一 種新的協定,資料記憶體104中的一個或多個資料單元可 以據此被設定成代表該新協定對應的特徵圖樣,其亦可以 相對快速地完成。 此外,在一實施例中,匹配處理器1〇2可以(但非 必需)由FPGA中的硬體電路來實現,以提升圖樣匹配過 程的速度。根據對流程圖400所進行的討論,匹配處理器 102的配置沒有像習知協定識別系統中編譯^^匕程式般的 0527-TW-CH Spe(H-Claim(barbara.c-20100202) 201112706 複雜性’因此該硬體電路的尺寸可以减小。此外,資料2 憶體U)4可以是(但不限於)相對比較便宜和小尺寸的伊 閃記憶體。因此,識別系統100的尺才可 、 J Μ被減小’且成 本可被降低。 目5為根據本發明的-實施例以1別系統執行 的例示性流程圖500。以下將結合圖i、圖2和圖3 _ $ 進行描述。 在步驟502 +,匹配處理器1〇2 τ以存取一组資料單 元(例如,302_1-302一5, 304)3〇4—4, 3〇6 13〇6 6 308-1-308一3等等)中的第一資料單元。在一實施例中~,’ 該組資料單元可以按預定順序儲存在資.料記憶體丨中。 該預定順序可以由該組資料單元之間的邏輯^係決定。 在步驟504 +,輕接至資料記憶冑1〇4的匹配處理器 102可以執行該第一資料單元中的指令。在步驟5〇6中, 匹配處理器102可以根據該執行的結果來確定資料封包 108的特徵。 除此之外,在步驟508中,匹配處理器1〇2可以根據 該執行結果、該組資料單元的資料單元總數和該第一資料 單元所對應的序列號來供位址指標。該總數和對應的序 列號可以儲存在該第一資料單元中(例如,單元總數區2〇8 和單元序列號區210中、單元總數區216和單元序列號區 218 中)。 據此,本發明提供一種用於識別資料封包的識別系 統。該資料封包可以(但祕於)IP f料封包/#料電報。 該識別系統可以包括資料記憶體和圖樣匹配處理器。該資 0527-TW-CH Spec+Claim(barbara.c-20100202) 26 201112706 :分存複數個 η —— 代表ALP的特徵圖樣。該匹配虛 在中的,體中的資料單元以及執行儲存 在該貝枓早4的指令,以確定該:#料封包是否 = 特徵圖樣隨。該匹處理器可以根據/包二、 種特定的模式對-個或多個資料單元進行存取。 1 =二配處理器可以根據這些資料單元來確定該資料: 上文具體實施模式和附圖僅為本發明之常用實施 顯然’在;《離申請專利翻所界定的本發明精神和 ,明祀_前提下-可以有各種增補、修改和替^本技術 員域中具有通¥知識者應該理解,本發明在實際應用中可 根據具體的環境和I作要求在不背離發明準則的前提下 在形式、架構、佈局、比例、材料、元素、組件及其它方 面有所Wb。因此’在此披露之實施例僅用於說明而非限 $本發明之範圍由後附申請專利範圍及其合法等效物界 疋,而不限於先前之描述。 【圖式簡單說明】 透過對本發明的實施例及結合其所附圖式的描述,可 以進一步理解本發明的目的、具體架構特徵和優點。 圖1為根據本發明一實施例的識別系統的方塊圖; 圖2為根據本發明一實施例的資料單元的架構圖; 圖3為根據本發明一實施例的資料記憶體中資料單元 的分佈圖; u ' 0527-TW-CH Spec+Claim(barbara.c-20100202) 27 201112706 圖4為根據本發明一實施例以一識別系統執行操作的 例示性流程圖;以及 圖5為根據本發明___實施例以一識別糸統執行4呆作的 例示性流程圖^ 【主要元件符號說明】 ioo :識別系統 102:圖樣匹配處理器/匹配處理器 104 :資料記憶體 106 :接收單元 108 :資料封包/ip封包/資料電報 H0 :協定區 H2 :資料區 U4 :輸出信號 200 :資料單元 202 :匹配模式區 2〇4 :傳輸層協定(TLp)區 206 :應用層協定(ALP)區 208 :單元總數區 210:單元序列號區 212 :組總數區 214 :組序列號區 216 :單元總數區 218 :單元序列號區 220 :關鍵字區 0527-TW-CH Spec+CIaim(barbara.c-20100202) 222一 -1、222— _N : 選項區 302— _1 〜302_ _5 : 資料單元 304— —1〜304— _4 : 資料單元 306— _1 〜306— _6 · 資料單元 308— -1 〜308_ _8 : 資料單元 310— .1 ' 310_ _2 : 子區域 312— _1 〜310— _3 : 子區域 314— _1 〜314_ _5 : 子區域 316_ _1 〜316_ _K : 區域 318 : 400 : 結束資料單元 流程圖 201112706 402〜432 :步驟 500 :流程圖 502、504、506、508 :步驟 0527-TW-CH Spec+Claim(barbara.c-20100202) 29
Claims (1)
- 201112706 七、申請專利範圍: 1. 一種識別一資料封包之識別系統,其包括: 一資料記憶體,按一預定順序儲存複數個資料單元 其中該複數個資料單元中的一第一資料單元包括: 確定該資料封包之一特徵的一指令; 該複數個資料單元的一總數;及 該第一資料單元的一對應序列號;以及 耗接至該資料記憶體的一匹配處理器,執行該指令, 產生該執行的一結果,並根據該執行結果、該總數和 該對應序列號提供一位址指標。 2·如申請專利範圍策1項之識別系統,其中,該匹配處 理器根據該位址指標存取該資料記憶體中的一第二 資料單元,並執行該第二資料單元中的一指令。 3.如申請專利範圍第1項之識別系统,其中,該指 括才"集中代表該指令的一關鍵字。 4·=請專利範圍^項之識別系統 括用於該指令的該執行之至少一參數。讣7包 5.如申凊專利範圍第1 序是由該滿㈣*項識別糸統,其中,該預定順 賁料單元的一邏輯關係決定。 工凊專利範圍第5項之識別系統,其 係包括邏輯and。 邏輯關 7. 如申請專利範圍坌 .結果具有-布==識Γ統,其中’當該執行 該第一資料單元指標指向儲存緊接 Τ平7L的一第二資料單元。 8. 如申請專利範圍第6 項之識I钱H當該執行 0527-TW-CH Spec+Claim(barbara.c-20100202) 30 201112706 存緊接 :其中,該邏輯關 1〇. =圍第9項之識別系統,其中,當該執行 有-布林值為真時,該位址指標指向儲 該複數個資料單元的一第二資料單元。 、接 η.如申請專利範圍第9項之識別系統,其中,當該 =果具有—布林值為假時,該位址指標指向儲存緊^ 该第一資料單元而一第二資料單元。 ' 12. 一種識別一資料封包之方法,其包括: 存取複數個資料單元中的一第一資料單元; 執行該第一資料單元中的一指令.; 根據該執行的-結果確定該資料封包的一特徵;以及 根據該執行結果、該複數個資料單元的一總數和該第 —資料單元的一對應序列號提供一位址指標。 13. 如申請專利範圍第12項之方法,還包括: 根據該位址指標存取一第二資料單元;以及 執行該第二資料單元中的一指令。 14. 如:請專利範㈣12項之方法,其中,該複數個資 料單元按一預定順序儲存在一資料記憶體中,該預定 順序是由該複數個資料單元的一邏輯關係決定。 15. 如申請專利範圍第14項之方法,其中,該邏輯關係 包括邏輯AND。 %如申請專職圍第15項之方法’還包括當該執行結 0527-TW'CH Spec+Claim(barbarax-20100202) 31 201112706 指向错存緊接該第-資 m出 第—貝科早兀之該位址指標。 17·如申請專利範圍第15項之 :二:林值為假時,產生指向儲;緊== 資科早70的一第二資料單元之該位址指標。數個 I::圍第14項之方法,,該邏輯關係 19.=專,第18項之方法,還包括當該執行处 布林值為真時,產生指向儲存緊接該複數個° 貝料早元而-第二資料單元之該位址指禪。 2〇·如申請專利範圍第18項之方法,還 果ί有-布林值為假時,產生指向儲存緊接該= 料單元而一第二資料單元之該位址指標。 21. —種識別一資料封包之識別系統,其包括: 一資料憶體’提供分別確定該資料封包的複數個 徵之複數個指令··以及 ’ 輕接至該資料記憶體的一匹配處理器,執行該複數個 指令中的-第-指令,產生該執行的一結果,並根據 該執行結果、該複數個指令中一指令總數和該第一指 令的一對應序列號提供一指令指標。 曰 22. 如申請專利範圍第21項之識別系統,其中,該匹配 處理器根據該指令指標來存取該資料記憶體中的— 第二指令,並執行該第二指令。 23. 如申請專利範圍第21項之識別系統,其中,該執行 結果包括一布林值。 0527-TW-CH Spec+Claim(barbara.c-20100202) 32 201112706 24. 如申請專利範圍第21項之識別系統,其中, 個指令按一預定順序儲存在該資料記憶體中 順序是由該複數個指令的一邏輯關係決定。 25. 如申請專利範圍第24項之識別系統,其中, 關係包括邏輯AND。 26. 如申請專利範圍第24項之識別系統,其中, 關係包括邏輯OR。 該複數 ,該預定 該邏輯 該邏輯 0527-TW-CH Spec+Claim(barbara.c-20100202) 33
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/347,292 US8018942B2 (en) | 2008-12-31 | 2008-12-31 | Recognition systems based on pattern matching |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201112706A true TW201112706A (en) | 2011-04-01 |
Family
ID=42284910
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098146092A TW201112706A (en) | 2008-12-31 | 2009-12-31 | Recognition system and method for recognizing a data packet |
Country Status (2)
Country | Link |
---|---|
US (1) | US8018942B2 (zh) |
TW (1) | TW201112706A (zh) |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5860136A (en) * | 1989-06-16 | 1999-01-12 | Fenner; Peter R. | Method and apparatus for use of associated memory with large key spaces |
JPH07262152A (ja) * | 1994-03-24 | 1995-10-13 | Hitachi Ltd | コンピュータシステム |
US6798777B1 (en) * | 2000-04-17 | 2004-09-28 | Juniper Networks, Inc. | Filtering and route lookup in a switching device |
WO2002101968A2 (en) * | 2001-06-11 | 2002-12-19 | Bluefire Security Technology | Packet filtering system and methods |
US7116663B2 (en) * | 2001-07-20 | 2006-10-03 | Pmc-Sierra Ltd. | Multi-field classification using enhanced masked matching |
US7386525B2 (en) * | 2001-09-21 | 2008-06-10 | Stonesoft Corporation | Data packet filtering |
US7580408B2 (en) * | 2001-11-21 | 2009-08-25 | Alcatel Lucent | Configurable packet processor |
US7466687B2 (en) * | 2003-04-28 | 2008-12-16 | International Business Machines Corporation | Packet classification using modified range labels |
US8364833B2 (en) * | 2003-09-11 | 2013-01-29 | Bae Systems Plc | Real-time network monitoring and security |
US7613775B2 (en) * | 2003-11-25 | 2009-11-03 | Freescale Semiconductor, Inc. | Network message filtering using hashing and pattern matching |
US7596809B2 (en) * | 2004-06-14 | 2009-09-29 | Lionic Corporation | System security approaches using multiple processing units |
US7668160B2 (en) * | 2005-03-31 | 2010-02-23 | Intel Corporation | Methods for performing packet classification |
US7567567B2 (en) * | 2005-04-05 | 2009-07-28 | Sun Microsystems, Inc. | Network system including packet classification for partitioned resources |
US7639618B2 (en) * | 2006-05-18 | 2009-12-29 | Siemens Enterprise Communications Gmbh & Co. Kg | System and method for recognition and cyclic service of partial sequences of communication requests |
-
2008
- 2008-12-31 US US12/347,292 patent/US8018942B2/en active Active
-
2009
- 2009-12-31 TW TW098146092A patent/TW201112706A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
US20100166013A1 (en) | 2010-07-01 |
US8018942B2 (en) | 2011-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10440279B2 (en) | Smart camera user interface | |
CN105373731B (zh) | 用于提供可信平台模块服务的设备和方法 | |
CN107395665A (zh) | 一种区块链业务受理及业务共识方法及装置 | |
CN107562775A (zh) | 一种基于区块链的数据处理方法及设备 | |
CN110033368A (zh) | 区块链中实现隐私保护的方法 | |
US9060046B2 (en) | Method and apparatus for transferring media data between devices | |
CN106970822A (zh) | 一种容器创建方法及装置 | |
TW201106258A (en) | Parallel processing and internal processors | |
US8627274B2 (en) | Software tool and method for generating a virtual appliance | |
TWI356342B (en) | Computer system memory, computer program productio | |
WO2012097217A1 (en) | Content based file chunking | |
CN104025046B (zh) | 与利用调回的isa桥接关联的方法、装置和计算设备 | |
TW200404225A (en) | Dynamic wizard interface system and method | |
TW200839571A (en) | Device and method for access time reduction by speculatively decoding non-memory read commands on a serial interface | |
CN105426348B (zh) | 一种可扩展标记语言xml文件的生成方法、装置和系统 | |
CN107580013A (zh) | 跨域请求数据的方法及装置 | |
KR20140101370A (ko) | 자율형 네트워크 스트리밍 기법 | |
WO2019095854A1 (zh) | 可溯源的多方数据处理方法、装置及设备 | |
CN110765395A (zh) | 一种用于提供小说信息的方法与设备 | |
TW200816058A (en) | Providing additional information from a removable storage medium | |
RU2008150493A (ru) | Устройство обработки информации, способ обработки информации и программа обработки информации | |
CN108182119A (zh) | 读写分离控制方法和装置、存储介质及电子装置 | |
Baker et al. | OpenSHMEM-UCX: evaluation of UCX for implementing OpenSHMEM programming model | |
TW200406682A (en) | Method, system and program for configuring components on a bus for input/output operations | |
TW201112706A (en) | Recognition system and method for recognizing a data packet |