專利名稱:Data processing device的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)處理技術(shù),特別涉及處理通信數(shù)據(jù)的數(shù)據(jù)處理裝置。
技術(shù)背景在互聯(lián)網(wǎng)的基礎(chǔ)設(shè)施得以完善,便攜式電話終端、個(gè)人電腦、VoIP (Voice over internet Protocal:基于internet切、i義的i吾音)電;舌終端等通葉言 終端得到廣泛普及的今天,互聯(lián)網(wǎng)的用戶正在暴增。在這種狀況下,計(jì) 算機(jī)病毒、黑客(八、;/年乂y)、垃圾郵件等與安全有關(guān)的問題變得明顯 化,需要有對(duì)通信進(jìn)行適當(dāng)控制的技術(shù)。隨著通信環(huán)境的改善,通信量 也變得很龐大,對(duì)大容量數(shù)據(jù)進(jìn)行高速處理的通信控制裝置的必要性在 逐漸增加。圖1示出了現(xiàn)有的通信控制裝置1的構(gòu)成?,F(xiàn)有的通信控制裝置1 包括接收側(cè)的通信控制部2、數(shù)據(jù)包處理部3、和發(fā)送側(cè)的通信控制部 4。通信控制部2及4分別包括PHY處理部5a及5b,進(jìn)4亍數(shù)據(jù)包的物 理層的處理;MAC處理部6a及6b,進(jìn)行數(shù)據(jù)包的MAC層的處理。數(shù) 據(jù)包處理部3包括IP處理部7,進(jìn)行IP (Internet Protocal: IP協(xié)議)的 協(xié)議處理;TCP處理部8等,進(jìn)行TCP (Transport Control Protocal:傳 送控制協(xié)議)的協(xié)議處理;協(xié)議處理部,進(jìn)行與協(xié)議對(duì)應(yīng)的處理;AP處 理部9,進(jìn)行應(yīng)用層的處理。AP處理部9根據(jù)數(shù)據(jù)包中包含的數(shù)據(jù),執(zhí) 行過濾等處理。專利文獻(xiàn)1:特開平4-180425號(hào)公報(bào)發(fā)明內(nèi)容發(fā)明所要解決的課題在現(xiàn)有的通信控制裝置1中,數(shù)據(jù)包處理部3是利用作為通用處理 器的CPU和在CPU上運(yùn)行的OS,通過軟件來實(shí)現(xiàn)的。但是,在這種構(gòu)
成中,通信控制裝置1的性能將依賴于CPU的性能,想要實(shí)現(xiàn)能夠高速地對(duì)大容量的數(shù)據(jù)包進(jìn)行處理的通信控制裝置,自然存在限制。例如,如果是64位的CPU, 一次同時(shí)能夠處理的數(shù)據(jù)量最大是64位,具有在 此以上性能的通信裝置不存在。而且,由于將具有通用功能的OS的存在 作為前提,因此存在安全漏洞等的可能性不是絕對(duì)沒有的,OS的升級(jí)等 的維護(hù)作業(yè)是必要的。本發(fā)明是鑒于這樣的狀況而提出的,其目的在于提供一種實(shí)現(xiàn)高速 數(shù)據(jù)處理裝置的技術(shù)。 解決i果題的手IS:本發(fā)明的一個(gè)實(shí)施方式涉及數(shù)據(jù)處理裝置。該數(shù)據(jù)處理裝置包括 第一存儲(chǔ)部,存儲(chǔ)基準(zhǔn)數(shù)據(jù),以作為決定對(duì)獲取的數(shù)據(jù)執(zhí)行的處理的 內(nèi)容的基準(zhǔn);檢索部,通過上述數(shù)據(jù)和上述基準(zhǔn)數(shù)據(jù)進(jìn)行比較,檢索 上述數(shù)據(jù)中是否包含上述基準(zhǔn)數(shù)據(jù);第二存儲(chǔ)部,將上述檢索部的檢 索結(jié)果和上述處理的內(nèi)容進(jìn)行關(guān)聯(lián)對(duì)應(yīng)存儲(chǔ);處理部,根據(jù)上述檢索 結(jié)果,對(duì)上述數(shù)據(jù)執(zhí)行與上述檢索結(jié)果所關(guān)聯(lián)對(duì)應(yīng)的處理,上述檢索 部由布線邏輯電路構(gòu)成。檢索部或者處理部可以使用FPGA (Field Programmable Gate Array: 現(xiàn)場(chǎng)可編程門陣列)等實(shí)現(xiàn)。通過由專用的硬件電路構(gòu)成檢索部,可以 實(shí)現(xiàn)具有所期望性能的數(shù)據(jù)處理裝置,而不受CPU性能的制約。上述布線邏輯電路可以包括多個(gè)第一比較電路,以位為單位對(duì)上 述數(shù)據(jù)和上述基準(zhǔn)數(shù)據(jù)進(jìn)行比較。通過并列設(shè)置第一比較電路例如64個(gè), 可以實(shí)現(xiàn)一次能夠?qū)Ρ菴PU的位數(shù)多的位數(shù)進(jìn)行比較的電路。上述檢索部可以包括位置檢測(cè)電路,其從上述數(shù)據(jù)中檢測(cè)上述基 準(zhǔn)數(shù)據(jù)和應(yīng)進(jìn)行比較對(duì)象數(shù)據(jù)的位置。上述位置檢測(cè)電路包括多個(gè)第 二比較電路,對(duì)上述通信數(shù)據(jù)和用于確定上述比較對(duì)象數(shù)據(jù)位置的位置 確定數(shù)據(jù)進(jìn)行比較,可以將上述數(shù)據(jù)每錯(cuò)開預(yù)定數(shù)據(jù)長(zhǎng)定的位輸入到上 述多個(gè)第二比較電路,并與上述位置確定數(shù)據(jù)同時(shí)并列進(jìn)行比較。由于 設(shè)置有多個(gè)第二比較電路,從而可以一次判定多個(gè)位置,能夠更高速地 檢測(cè)比較對(duì)象的位置。上述檢索部可以包括對(duì)分檢索電路,通過對(duì)分檢索對(duì)上述通信數(shù)
據(jù)中是否包含上述基準(zhǔn)數(shù)據(jù)進(jìn)行檢索。在上述基準(zhǔn)數(shù)據(jù)的數(shù)據(jù)數(shù)比上述 第 一存儲(chǔ)部所能保持的數(shù)據(jù)數(shù)少的情況下,可以從上述第 一存儲(chǔ)部的最后數(shù)據(jù)位置開始P條序貯存上述基準(zhǔn)數(shù)據(jù),并將0貯存到剩余的數(shù)據(jù)中。 由于基準(zhǔn)數(shù)據(jù)為0時(shí)可以不執(zhí)行比較而移到下一個(gè)對(duì)分檢索,從而能夠更高速地執(zhí)行對(duì)分4企索。上述檢索部可以包括判定電路,當(dāng)上述第一存儲(chǔ)部所存儲(chǔ)的多個(gè) 基準(zhǔn)數(shù)據(jù)分成3個(gè)以上的范圍時(shí),判定上述基準(zhǔn)數(shù)據(jù)和應(yīng)進(jìn)行比較的對(duì) 象數(shù)據(jù)屬于哪個(gè)范圍。上述判定電路包括多個(gè)第三比較電路,對(duì)上述 范圍的邊界的基準(zhǔn)數(shù)據(jù)和上述比較對(duì)象數(shù)據(jù)進(jìn)行比較,由上述多個(gè)第 三比較電路同時(shí)并列對(duì)上述比較對(duì)象數(shù)據(jù)屬于上述3個(gè)以上的范圍中 的哪個(gè)進(jìn)行判定。通過在對(duì)分檢索之前事先確定范圍,可以提高檢索 速度。在上述第一存儲(chǔ)部的預(yù)定位置存儲(chǔ)的上述基準(zhǔn)數(shù)據(jù)可以作為上 述邊界的基準(zhǔn)數(shù)據(jù)輸入到上述第三比較電路。由于可以自動(dòng)地設(shè)定邊 界的基準(zhǔn)數(shù)據(jù),從而即使第一存儲(chǔ)部的內(nèi)容作了變更,也可以立即開 始處理。述范圍。由此,可以進(jìn)一步提高檢索速度,從而進(jìn)一步實(shí)現(xiàn)更高速的 檢索。上述第一存儲(chǔ)部還存儲(chǔ)有表示上述數(shù)據(jù)中的比較對(duì)象數(shù)據(jù)位置的 信息,上述檢索部可以基于表示上述位置的信息提取上述比較對(duì)象數(shù) 據(jù)。由此,可以更柔性地設(shè)定比較對(duì)象數(shù)據(jù),從而可以提高檢索效率。上述第一存儲(chǔ)部或者上述第二存儲(chǔ)部可以被設(shè)置為能夠從外部進(jìn) 行重寫。由此,可以可變地設(shè)定基準(zhǔn)數(shù)據(jù)和處理內(nèi)容等,可以將數(shù)據(jù) 處理裝置用于各種各樣的數(shù)據(jù)處理。上述檢索部可以不待獲取通信數(shù)據(jù)包的所有數(shù)據(jù),而是在獲取了 應(yīng)與上述基準(zhǔn)數(shù)據(jù)進(jìn)行比較的數(shù)據(jù)時(shí),開始對(duì)該數(shù)據(jù)和上述基準(zhǔn)數(shù)據(jù) 進(jìn)4亍比較。由此,可以縮短處理時(shí)間。不限于4全索部中的比4交處理, 對(duì)于其他處理也同樣可以不待獲取所有的數(shù)據(jù)就開始。本發(fā)明另外的實(shí)施方式涉及一種數(shù)據(jù)處理裝置。該數(shù)據(jù)處理裝置, 其特征在于,包括多個(gè)上述任一個(gè)數(shù)據(jù)處理裝置,各上述數(shù)據(jù)處理
裝置包括2個(gè)在與通信線路間輸入輸出數(shù)據(jù)的接口 ,通過切換各上述 接口的輸入和輸出,對(duì)處理上述數(shù)據(jù)的方向進(jìn)行可變控制。由此,當(dāng) 任一個(gè)數(shù)據(jù)處理裝置處于不能動(dòng)作的狀態(tài)時(shí),可以使其他的數(shù)據(jù)處理 裝置動(dòng)作以作為替代,從而能夠提高抗障礙性。此外,當(dāng)任一個(gè)數(shù)據(jù) 處理裝置由于維護(hù)等原因而停止時(shí),可以使其他的數(shù)據(jù)處理裝置動(dòng)作 以作為替代,因此不停止運(yùn)用就可以進(jìn)4亍維護(hù)。而且,通過^f吏各數(shù)據(jù) 處理裝置處理的數(shù)據(jù)的流向隨業(yè)務(wù)量的狀況等變化,可以恰當(dāng)?shù)貞?yīng)對(duì)業(yè)務(wù)量的增減等。另外,作為本發(fā)明的實(shí)施方式,以上構(gòu)成要素的任意組合、以及將本發(fā)明的描述在方法、裝置、系統(tǒng)、記錄介質(zhì)、計(jì)算機(jī)程序等之間 進(jìn)行變換的方式也是有效的。發(fā)明的效果根據(jù)本發(fā)明,可以提供實(shí)現(xiàn)高速數(shù)據(jù)處理裝置的技術(shù)。
圖l是表示現(xiàn)有的通信裝置的構(gòu)成的圖。圖2是表示實(shí)施方式涉及的通信控制裝置的構(gòu)成的圖。圖3是表示數(shù)據(jù)包處理電路的構(gòu)成的圖。圖4是表示位置檢測(cè)電路的構(gòu)成的圖。圖5是表示第一數(shù)據(jù)庫(kù)的內(nèi)部數(shù)據(jù)的例子的圖。圖6是表示第一數(shù)據(jù)庫(kù)的內(nèi)部數(shù)據(jù)的另一個(gè)例子的圖。圖7是表示第一數(shù)據(jù)庫(kù)的內(nèi)部數(shù)據(jù)的又一個(gè)例子的圖。圖8是表示對(duì)分檢索電路所含的比較電路的構(gòu)成的圖。圖9是表示第二數(shù)據(jù)庫(kù)的內(nèi)部數(shù)據(jù)的例子的圖。圖IO是表示第二數(shù)據(jù)庫(kù)的內(nèi)部數(shù)據(jù)的另一個(gè)例子的圖。圖11是表示實(shí)施方式涉及的通信控制裝置的另一個(gè)構(gòu)成例子的圖。
符號(hào)說明
10通信控制裝置、12通信控制單元、14切換控制部、20數(shù)據(jù)包
處理電路、30檢索電路、32位置檢測(cè)電路、33比豐1電路、34索引電 路、35比較電路、36對(duì)分檢索電路、40處理執(zhí)行電路、50第一數(shù)據(jù) 庫(kù)、60第二數(shù)據(jù)庫(kù)。
具體實(shí)施方式
圖2示出了作為本發(fā)明數(shù)據(jù)處理裝置一個(gè)例子的通信控制裝置的構(gòu) 成。本實(shí)施方式的通信控制裝置10包括由布線邏輯電路的專用硬件構(gòu)成 的數(shù)據(jù)包處理電路20,以取代圖1所示的現(xiàn)有通信控制裝置1中由包含 CPU及OS的軟件實(shí)現(xiàn)的數(shù)據(jù)包處理部3。不是通過在作為通用處理電路 的CPU中運(yùn)行的OS和4t件來處理通信^t據(jù),而是設(shè)置對(duì)通信數(shù)據(jù)進(jìn)行 處理的專用硬件電路,由此能夠克服由CPU和OS等造成的性能限制, 實(shí)現(xiàn)高處理能力的通信控制裝置。例如,在為了執(zhí)行數(shù)據(jù)包過濾等而檢索數(shù)據(jù)包所含的數(shù)據(jù)中是否含 有作為過濾判斷基準(zhǔn)的基準(zhǔn)數(shù)據(jù)的情況下,使用CPU對(duì)通信數(shù)據(jù)和基準(zhǔn) 數(shù)據(jù)進(jìn)行比較時(shí), 一次最多只能比較64位,所以存在的問題是,即使想 提高處理速度也將受到CPU性能的限制。由于在CPU中必須無數(shù)次重 復(fù)進(jìn)行以下處理,即,從通信數(shù)據(jù)將64位讀入到存儲(chǔ)器,將其與基準(zhǔn)數(shù) 據(jù)進(jìn)行比較,接著再把下一64位讀入到存儲(chǔ)器,因此讀入到存儲(chǔ)器的時(shí) 間將制約速度,處理速度存在界限。相反,在本實(shí)施方式中,設(shè)置了由布線邏輯電路構(gòu)成的專用硬件電 路,以對(duì)通信數(shù)據(jù)和基準(zhǔn)數(shù)據(jù)進(jìn)行比較。該電路包括并列設(shè)置的多個(gè)比 較器,以能夠?qū)Ρ?4位長(zhǎng)的數(shù)據(jù)長(zhǎng)定度,例如1024位的數(shù)據(jù)長(zhǎng)定度進(jìn) 行比較。這樣,通過設(shè)置有專用的硬件可以同時(shí)并行執(zhí)行許多的位匹配。 可以從現(xiàn)有的使用CPU的通信控制裝置1 一次只能處理64位提高到一 次可以處理1024位,可以飛躍地提高處理速度。雖然增多比較器的數(shù)量 也能夠提高處理能力,但是成本和尺寸也會(huì)增大,因此可以在考慮預(yù)期 的處理性能和成本、尺寸等條件下,設(shè)計(jì)最適當(dāng)?shù)挠布娐贰4送?,由于本?shí)施方式的通信控制裝置IO是由布線邏輯電路形成的 專用硬件構(gòu)成的,因此不需要OS (Operating System:操作系統(tǒng))。為此, 不需要OS的安裝、故障應(yīng)對(duì)、升級(jí)等作業(yè),從而可以減少用于管理和維
護(hù)的費(fèi)用和工時(shí)。此外,與要求具有通用功能的CPU不同,由于不包含不必要的功能,因此沒有使用多余的資源,低成本化、電路面積的減少、 處理速度的提高是可以期待的。而且,與使用os的現(xiàn)有通信控制裝置不 同,由于沒有多余的功能,因此降低了安全漏洞等發(fā)生的可能性,對(duì)于 通過網(wǎng)絡(luò)來自惡意第三者的攻擊具有優(yōu)秀的抵抗性?,F(xiàn)有的通信控制裝置1通過以CPU和OS為前提的軟件對(duì)數(shù)據(jù)包進(jìn)行處理,在接收了數(shù)據(jù)包的所有數(shù)據(jù)后再進(jìn)行協(xié)議處理,將數(shù)據(jù)交給應(yīng)用程序。相反,在本實(shí)施方式的通信控制裝置10中,由于使用專用的硬件電路進(jìn)行處理,沒有必要在接收了數(shù)據(jù)包的所有數(shù)據(jù)后開始處理,如 果接收到處理所需的數(shù)據(jù),則不用等待接收后續(xù)的數(shù)據(jù)就可以在任何時(shí) 候開始處理。例如,在后述的位置檢測(cè)電路中進(jìn)行的位置檢測(cè)處理,可 以在接收到用于確定比較對(duì)象數(shù)據(jù)位置的位置確定數(shù)據(jù)時(shí)開始。這樣, 由于不用等待接收了所有的數(shù)據(jù)就可以動(dòng)態(tài)地執(zhí)行各種各樣的處理,因 此能夠縮短處理數(shù)據(jù)包的數(shù)據(jù)所需的時(shí)間。圖3示出了數(shù)據(jù)包處理電路的內(nèi)部構(gòu)成。數(shù)據(jù)包處理電路20包括 第一數(shù)據(jù)庫(kù)50,存儲(chǔ)基準(zhǔn)數(shù)據(jù),所述基準(zhǔn)數(shù)據(jù)作為用于決定對(duì)通信數(shù) 據(jù)執(zhí)行的處理內(nèi)容的基準(zhǔn);檢索電路30,通過比較通信數(shù)據(jù)和基準(zhǔn)數(shù) 據(jù)對(duì)接收的通信數(shù)據(jù)中是否含有基準(zhǔn)數(shù)據(jù)進(jìn)行檢索;第二數(shù)據(jù)庫(kù)60, 將檢索電路30的檢索結(jié)果和對(duì)通信數(shù)據(jù)執(zhí)行處理的內(nèi)容進(jìn)行關(guān)聯(lián)對(duì) 應(yīng)存儲(chǔ);處理執(zhí)行電路40,基于檢索電路30的檢索結(jié)果和第二數(shù)據(jù) 庫(kù)60所存儲(chǔ)的條件對(duì)通信數(shù)據(jù)進(jìn)行處理。檢索電路30包括位置檢測(cè)電路32,從通信數(shù)據(jù)中檢測(cè)應(yīng)與基準(zhǔn)數(shù) 據(jù)進(jìn)行比較的比較對(duì)象數(shù)據(jù)的位置;作為判定電路一個(gè)例子的索引電路 34,當(dāng)把所述第一數(shù)據(jù)庫(kù)50所存儲(chǔ)的基準(zhǔn)數(shù)據(jù)分成3個(gè)以上的范圍時(shí), 判定比較對(duì)象數(shù)據(jù)屬于這些范圍中的哪一個(gè);對(duì)分檢索電路36,在判定 的范圍中,檢索與比較對(duì)象數(shù)據(jù)一致的基準(zhǔn)數(shù)據(jù)。作為從基準(zhǔn)數(shù)據(jù)中檢 索比較對(duì)象數(shù)據(jù)的方法,可以使用任意的檢索技術(shù),但在本實(shí)施方式中 使用的是對(duì)分檢索法。圖4示出了位置檢測(cè)電路的內(nèi)部構(gòu)成。位置檢測(cè)電路32包括多個(gè) 比較電路33a 33f,用于對(duì)確定比較對(duì)象數(shù)據(jù)位置的位置確定數(shù)據(jù)和通信設(shè)置有6個(gè)比較電路33a 33f,但如后所述,比較 電路的個(gè)數(shù)可以是任意的。通信數(shù)據(jù)以每錯(cuò)開(fbb"C)預(yù)定的數(shù)據(jù) 長(zhǎng)定例如1字節(jié)輸入到各比較電路33a 33f中。然后,在這些多個(gè)比較電 路33a 33f中,同時(shí)并列進(jìn)行應(yīng)檢測(cè)的位置確定數(shù)據(jù)和通信數(shù)據(jù)的比較。在本實(shí)施方式中,將進(jìn)行以下處理時(shí)的情況作為用于說明通信控制 裝置IO動(dòng)作的例子進(jìn)行說明,即,檢測(cè)通信數(shù)據(jù)中包含的"No.###" 的字符串,將該字符串中包含的數(shù)字"###"與基準(zhǔn)數(shù)據(jù)進(jìn)行比較, 與基準(zhǔn)數(shù)據(jù)一致時(shí)允許數(shù)據(jù)包通過,不一致時(shí)將數(shù)據(jù)包廢棄。在圖4的例子中,為了從通信數(shù)據(jù)中檢測(cè)用于確定數(shù)字"# # #" 位置的位置確定數(shù)據(jù)"No.",將通信數(shù)據(jù)"OlNo. 361..."每錯(cuò)開l個(gè)字 符輸入到比較電路33a 33f中。即,比較電路33a中輸入"01N",比較 電路33b中輸入"lNo",比較電路33c中輸入"No.",比較電路33d中 輸入"o.,,,比較電路中33e輸入",3",比較電路33f中輸入"36"。 在此,比較電路33a 33f同時(shí)執(zhí)行與位置確定數(shù)據(jù)"No."的比較。由此, 比較電路33c匹配,從而檢測(cè)出在通信數(shù)據(jù)的最前頭開始第3個(gè)字符處 存在"No."的字符串。這樣,在由位置檢測(cè)電路32檢測(cè)出的位置確定 數(shù)據(jù)"No."之后,將檢測(cè)出存在作為比較對(duì)象數(shù)據(jù)的數(shù)字?jǐn)?shù)據(jù)。如果由CPU進(jìn)行同樣的處理,則首先將字符串"01N"與"No."進(jìn) 行比較,然后將字符串"lNo"與"No."進(jìn)行比較,由于必須從最前頭 開始依次逐一執(zhí)行比較處理,因此無法期待提高檢測(cè)速度。相反,在本 實(shí)施方式的通信控制裝置10中,通過并列設(shè)置多個(gè)比較電路33a 33f, 使得CPU中無法實(shí)現(xiàn)的同時(shí)并列的比較處理成為可能,可以極大地提高 處理速度。雖然比較電路越多能夠同時(shí)比較的位置就越多,檢測(cè)速度也 將提高,但是在考慮到成本和尺寸等條件下,設(shè)置獲得所需檢測(cè)速度的 足夠數(shù)量的比較電路就可以了 。位置檢測(cè)電路32不只用于檢測(cè)位置確定數(shù)據(jù),也可以用作檢測(cè)通用 的字符串的電路。此外,不^f義可以;險(xiǎn)測(cè)字符串,而且還可以4企測(cè)以位為 單位的置確定數(shù)據(jù)。圖5示出了第一數(shù)據(jù)庫(kù)的內(nèi)部數(shù)據(jù)的例子。作為用于決定數(shù)據(jù)包的 過濾、路徑選擇、交換、置換等處理內(nèi)容基準(zhǔn)的基準(zhǔn)數(shù)據(jù),按照某種分
類條件進(jìn)行分類并貯存在第一數(shù)據(jù)庫(kù)50中。在5的例子中,存儲(chǔ)有1000 個(gè)基準(zhǔn)數(shù)據(jù)。在第 一數(shù)據(jù)庫(kù)50的最前面的紀(jì)錄中,貯存有表示通信數(shù)據(jù)中的比較 對(duì)象數(shù)據(jù)位置的偏移51。例如,在TCP數(shù)據(jù)包中,由于數(shù)據(jù)包內(nèi)的數(shù)據(jù) 結(jié)構(gòu)以位為單位確定,因此如果將用于決定數(shù)據(jù)包的處理內(nèi)容的標(biāo)記信 息等位置作為偏移51設(shè)定,則可以只比較必要的位來決定處理內(nèi)容,從 而可以提高處理效率。此外,即使在數(shù)據(jù)包的數(shù)據(jù)結(jié)構(gòu)變更的情況下, 也可以通過變更偏移51來進(jìn)行對(duì)應(yīng)。在第一數(shù)據(jù)庫(kù)50中,也可以l&存 比較對(duì)象數(shù)據(jù)的數(shù)據(jù)長(zhǎng)定。由此,可以只使必要的比較器動(dòng)作來進(jìn)行比 較,從而可以提高檢索效率。索引電路34,在將第一數(shù)據(jù)庫(kù)50貯存的基準(zhǔn)數(shù)據(jù)分成3個(gè)以上的范 圍52a 52d時(shí),判定比較對(duì)象數(shù)據(jù)屬于這些范圍中的哪一個(gè)。在圖5的 例子中,1000個(gè)基準(zhǔn)數(shù)據(jù)被以每250個(gè)分成4個(gè)范圍52a 52d。索引電 路34包括對(duì)范圍的邊界的基準(zhǔn)數(shù)據(jù)與對(duì)象數(shù)據(jù)進(jìn)行比較的多個(gè)比較電路 35a 35c。通過比較電路35a 35c對(duì)比較對(duì)象數(shù)據(jù)與邊界的基準(zhǔn)數(shù)據(jù)同時(shí) 并列進(jìn)行比較,從而用一次比較處理就可以判定比較對(duì)象數(shù)據(jù)屬于哪個(gè) 范圍。輸入到索引電路34的比較電路35a 35c中的邊界基準(zhǔn)數(shù)據(jù),可以通 過通信控制裝置IO外部所設(shè)置的裝置來設(shè)定,也可以事先自動(dòng)地輸入第 一數(shù)據(jù)庫(kù)50預(yù)定位置的基準(zhǔn)數(shù)據(jù)。在后一種情況下,即使更新第一數(shù)據(jù) 庫(kù)50,也可以自動(dòng)地將第一數(shù)據(jù)庫(kù)50預(yù)定位置的基準(zhǔn)數(shù)據(jù)輸入到比較電 路35a 35c中,因此無需進(jìn)行初始i殳定就能立即執(zhí)行通信控制處理。如上所述,在由CPU執(zhí)行對(duì)分檢索的場(chǎng)合,不能同時(shí)執(zhí)行多個(gè)比較, 而在本實(shí)施方式的通信控制裝置10中,通過并列設(shè)置有多個(gè)比較電路 35a 35c,可以同時(shí)并列進(jìn)行比較處理,從而極大地提高了檢索速度。當(dāng)由索引電路34判定了范圍時(shí),對(duì)分檢索電路36以對(duì)分檢索法執(zhí) 行檢索。對(duì)分檢索電路36將由索引電路34判定的范圍進(jìn)一步分成2個(gè), 通過對(duì)位于該邊界位置的基準(zhǔn)數(shù)據(jù)和比較對(duì)象數(shù)據(jù)進(jìn)行比較,來判定屬 于哪個(gè)范圍。對(duì)分檢索電路36包括以位為單位對(duì)基準(zhǔn)數(shù)據(jù)和比較對(duì)象數(shù) 據(jù)進(jìn)行比較的多個(gè)比較電路,例如在本實(shí)施方式中包括1024個(gè),同時(shí)執(zhí) 行1024位的位匹配。當(dāng)判定了屬于被分成2個(gè)的范圍中的哪一個(gè)時(shí),進(jìn) 一步將該范圍分成2個(gè)并讀出位于邊界位置的基準(zhǔn)數(shù)據(jù),將其與對(duì)象數(shù) 據(jù)進(jìn)行比較。之后,通過重復(fù)該處理來進(jìn)一步限定范圍,最后檢索出與 比較對(duì)象數(shù)據(jù)一致的基準(zhǔn)數(shù)據(jù)。使用上述的例子進(jìn)一步對(duì)動(dòng)作進(jìn)行詳細(xì)說明。在圖4所示的通信數(shù) 據(jù)中,位置確定數(shù)據(jù)"No.,,之后的比較對(duì)象數(shù)據(jù)是數(shù)字"361"。由于 在確定數(shù)據(jù)"No."與比較對(duì)象數(shù)據(jù)"361"之間存在一個(gè)字符的空格, 因此為了從比較對(duì)象數(shù)據(jù)中除去該空格,偏移51被設(shè)定為"8"位。對(duì) 分檢索電路36從位置確定數(shù)據(jù)"No."之后的通信數(shù)據(jù)中跳過"8"位, 即l個(gè)字節(jié),將之后的"361"作為比較對(duì)象數(shù)據(jù)讀入。在索引電路34的比較電路35a到35c中,輸入"361"作為比較對(duì) 象數(shù)據(jù),作為基準(zhǔn)數(shù)據(jù),在比較電路35a中輸入位于范圍52a和52b邊 界的基準(zhǔn)數(shù)據(jù)"378",在比較電路35b中輸入位于范圍52b和52c邊界 的基準(zhǔn)數(shù)據(jù)"704",在比較電路35c中輸入位于范圍52c和52d邊界的 基準(zhǔn)數(shù)據(jù)"937"。由比較電路35a 35c同時(shí)進(jìn)行比較,判定出比較對(duì)象 數(shù)據(jù)"361"屬于范圍52a。之后,對(duì)分檢索電路36將檢索基準(zhǔn)數(shù)據(jù)中是 否存在比較對(duì)象數(shù)據(jù)"361"。圖6示出了第一數(shù)據(jù)庫(kù)內(nèi)部數(shù)據(jù)的另一個(gè)例子。在圖6的例子中, 基準(zhǔn)數(shù)據(jù)的數(shù)據(jù)個(gè)數(shù)少于第一數(shù)據(jù)庫(kù)50所能夠保持的數(shù)據(jù)數(shù)1000個(gè)。 此時(shí),在第一數(shù)據(jù)庫(kù)50中,從最后數(shù)據(jù)位置開始降序貯存基準(zhǔn)數(shù)據(jù)。然 后,將剩余的數(shù)據(jù)中貯存0。作為數(shù)據(jù)庫(kù)的加載方法,不是從最前面配置 數(shù)據(jù)而是從加載區(qū)域的后方配置,當(dāng)加載區(qū)域的開頭產(chǎn)生空位時(shí),對(duì)所 有的空位進(jìn)行清零,由此使數(shù)據(jù)庫(kù)一直處于滿的狀態(tài),從而可以使對(duì)分 檢索時(shí)的最大時(shí)間恒定。此外,當(dāng)對(duì)分檢索電路36在檢索中讀入"0" 作為基準(zhǔn)數(shù)據(jù)時(shí),由于比較結(jié)果是明顯的,因此可以不進(jìn)行比較而確定 范圍,并轉(zhuǎn)到下一比較。由此,可以提高檢索速度。在基于CPU的軟件處理中,在將基準(zhǔn)數(shù)據(jù)貯存到第 一數(shù)據(jù)庫(kù)50時(shí), 從最初的數(shù)據(jù)位置升序貯存基準(zhǔn)數(shù)據(jù)。在剩余的數(shù)據(jù)中例如貯存最大值, 在這種情況下,在對(duì)分檢索中不可能省略上述的比較處理。上述的比較 技術(shù)通過由專用的石更件電路構(gòu)成才企索電路30來實(shí)現(xiàn)。
圖7示出了第一數(shù)據(jù)庫(kù)內(nèi)部數(shù)據(jù)的又一個(gè)例子。在圖7的例子中, 不是把基準(zhǔn)數(shù)據(jù)均等地分成3個(gè)以上的范圍,而是范圍所屬的基準(zhǔn)數(shù)據(jù) 的個(gè)數(shù)是不均等的,例如范圍52a為500個(gè),范圍52b為100個(gè)。這些 范圍可以根據(jù)通信數(shù)據(jù)中的基準(zhǔn)數(shù)據(jù)的出現(xiàn)頻度的分布來進(jìn)行設(shè)定。也 就是說,可以對(duì)范圍進(jìn)行設(shè)定以使各范圍所屬的基準(zhǔn)數(shù)據(jù)的出現(xiàn)頻度的 和大致相同。由此,可以提高檢索效率。輸入到索引電路34的比較電路 35a 35c中的基準(zhǔn)數(shù)據(jù),也可以從外部進(jìn)行變更。由此,能夠動(dòng)態(tài)地i殳定 范圍,從而可以使檢索效率最佳化。圖8示出了對(duì)分檢索電路中包含的比較電路的構(gòu)成。如上所述,對(duì)分檢索電路36包括1024個(gè)比較電路36a、 36b.....。在各個(gè)比較電路36a、 36b.....中,基準(zhǔn)數(shù)據(jù)54和比較對(duì)象數(shù)據(jù)56被每1位地輸入,并比較其大小。索引電路34的各比較電路35a 35c的內(nèi)部構(gòu)成也是同樣 的。這樣,通過以專用的硬件電路執(zhí)行比較處理,可以使多個(gè)比較電路 并行動(dòng)作,同時(shí)對(duì)多位進(jìn)行比較,從而可以使比較處理高速化。圖9示出了第二數(shù)據(jù)庫(kù)內(nèi)部數(shù)據(jù)的例子。第二數(shù)據(jù)庫(kù)60包括貯存檢 索電路30的4企索結(jié)果的4全索結(jié)果欄62、以及貯存對(duì)通信數(shù)據(jù)執(zhí)行的處理 內(nèi)容的處理內(nèi)容欄64,并對(duì)檢索結(jié)果和處理內(nèi)容進(jìn)行關(guān)聯(lián)對(duì)應(yīng)保持。在 圖9的例子中設(shè)定如下條件當(dāng)通信數(shù)據(jù)中包含基準(zhǔn)數(shù)據(jù)時(shí),允許該數(shù) 據(jù)包通過;當(dāng)不包含基準(zhǔn)數(shù)據(jù)時(shí),將該數(shù)據(jù)包廢棄。處理執(zhí)行電路40根 據(jù)檢索結(jié)果從第二數(shù)據(jù)庫(kù)60檢索處理內(nèi)容,對(duì)通信數(shù)據(jù)執(zhí)行處理。處理 執(zhí)行電路40也可以由布線邏輯電路來實(shí)現(xiàn)。圖IO示出了第二數(shù)據(jù)庫(kù)內(nèi)部數(shù)據(jù)的另一個(gè)例子。在圖IO的例子中, 對(duì)每個(gè)基準(zhǔn)數(shù)據(jù)設(shè)定處理內(nèi)容。當(dāng)進(jìn)行數(shù)據(jù)包的置換時(shí),可以將待置換 的數(shù)據(jù)貯存到第二數(shù)據(jù)庫(kù)60中。在進(jìn)行數(shù)據(jù)包的路徑選擇或者交換時(shí), 可以將與路經(jīng)有關(guān)的信息貯存到第二數(shù)據(jù)庫(kù)60中。處理執(zhí)行電路40根 據(jù)檢索電路30的檢索結(jié)果,執(zhí)行第二數(shù)據(jù)庫(kù)60中貯存的過濾、路徑選 擇、交換、置換等處理。如圖10所示,當(dāng)對(duì)每個(gè)基準(zhǔn)數(shù)據(jù)設(shè)定處理內(nèi)容 時(shí),可以對(duì)第一數(shù)據(jù)庫(kù)50和第二數(shù)據(jù)庫(kù)60進(jìn)行綜合。第一數(shù)據(jù)庫(kù)及第二數(shù)據(jù)庫(kù)被設(shè)置為可以從外部進(jìn)行重寫。通過對(duì)這 些數(shù)據(jù)庫(kù)進(jìn)行替換,可以使用相同的通信控制裝置IO實(shí)現(xiàn)各種各樣的數(shù)
據(jù)處理或者通信控制。此外,也可以設(shè)置2個(gè)以上貯存作為檢索對(duì)象的 基準(zhǔn)數(shù)據(jù)的數(shù)據(jù)庫(kù),來進(jìn)行多階段的檢索處理。此時(shí),也可以設(shè)置2個(gè) 以上關(guān)聯(lián)對(duì)應(yīng)貯存了檢索結(jié)果和處理內(nèi)容的數(shù)據(jù)庫(kù),來實(shí)現(xiàn)更復(fù)雜的條 件分支。這樣,當(dāng)設(shè)置多個(gè)數(shù)據(jù)庫(kù)進(jìn)行多階段的檢索時(shí),也可以設(shè)置多 個(gè)位置4僉測(cè)電路32、索引電路34、對(duì)分檢索電路36等。上述用于比較的數(shù)據(jù),可以用同樣的壓縮邏輯進(jìn)行壓縮。在進(jìn)行比 較時(shí),如果比較源數(shù)據(jù)與比較目標(biāo)數(shù)據(jù)用同樣的方式壓縮,則可以與通 常一樣進(jìn)行比較。由此,比較時(shí)可以減少栽入的數(shù)據(jù)量。如果栽入的數(shù) 據(jù)量變少,則從存儲(chǔ)器讀出數(shù)據(jù)所需的時(shí)間就會(huì)縮短,全部的處理時(shí)間 也可以縮短。此外,由于可以削減比較器的數(shù)量,從而有助于裝置的小 型化、輕型化、低成本化。用于比較的數(shù)據(jù)可以用壓縮的形式貯存,也 可以從存儲(chǔ)器讀出后,在比較之前進(jìn)行壓縮。圖11示出了本實(shí)施方式的通信控制裝置的另外的構(gòu)成例子。本圖所 示的通信控制裝置10包括2個(gè)具有與圖2所示的通信控制裝置10同樣 構(gòu)成的通信控制單元12。此外,設(shè)有對(duì)各通信控制單元12的動(dòng)作進(jìn)行控 制的切換控制部14。各通信控制單元12包括2個(gè)輸入輸出接口 16,通 過各輸入輸出接口 16連接到上游側(cè)和下游側(cè)2個(gè)網(wǎng)絡(luò)上。通信控制單元 12從任一個(gè)網(wǎng)絡(luò)輸入通信數(shù)據(jù),將處理后的數(shù)據(jù)輸出到另一個(gè)網(wǎng)絡(luò)。切 換控制部14通過切換各通信控制單元12i殳置的輸入輸出接口 16的輸入 輸出,對(duì)通信控制單元12中的通信數(shù)據(jù)的流向進(jìn)行切換。由此,不僅可 以進(jìn)行單向的通信控制,而且還可以進(jìn)行雙向的通信控制。切換控制部14也可以進(jìn)行控制以^吏通信控制單元12的一方處理入 站的數(shù)據(jù)包、另一方處理出站的數(shù)據(jù)包,也可以進(jìn)行控制以使雙方都處 理出站的數(shù)據(jù)包。由此,例如根據(jù)業(yè)務(wù)量的狀況或者目的等,可以使進(jìn) 4亍控制的通j言方向變4匕。切換控制部14也可以通過獲取各通信控制單元12的動(dòng)作狀況,根 據(jù)其動(dòng)作狀況對(duì)通信控制的方向進(jìn)行切換。例如,在使一方的通信控制單元12處于待機(jī)狀態(tài),而使另一方的通信控制單元12動(dòng)作的情況下, 當(dāng)才僉測(cè)到該通信控制單元12由于故障等原因停止時(shí),可以使待^/L中的通 信控制單元12動(dòng)作以作為替代。由此,可以提高通信控制裝置10的容
錯(cuò)度。此外,當(dāng)對(duì)一方的通信控制單元12進(jìn)行數(shù)據(jù)庫(kù)的更新等維護(hù)時(shí), 也可以使另一方通信控制單元12動(dòng)作以作為替代。由此,在不4亭止通信 控制裝置IO運(yùn)行的情況下,能夠適當(dāng)?shù)剡M(jìn)行維護(hù)。在通信控制裝置10中也可以設(shè)置3個(gè)以上的通信控制單元12。切換 控制部14例如可以獲取業(yè)務(wù)量的狀況,并對(duì)各通信控制單元12的通信 方向進(jìn)行控制,以便將更多的通信控制單元12分配給通信量多的方向的 通信控制處理。由此,即使某個(gè)方向的通信量增加,也可以將通信速度 的降低限制到最小。另外,在多個(gè)通信控制單元12之間可以共用通信控制部2或者4的 一部分。此外,數(shù)據(jù)包處理電路20的一部分也可以共用。以上,通過實(shí)施方式對(duì)本發(fā)明進(jìn)行了說明。本領(lǐng)域的技術(shù)人員應(yīng)該 理解,實(shí)施方式僅為示例,本發(fā)明還存在對(duì)各構(gòu)成元素或各處理過程 進(jìn)行組合的各種各樣的變形實(shí)施例,這些變形實(shí)施例也包含在本發(fā)明 的范圍內(nèi)。產(chǎn)業(yè)上的可利用性本發(fā)明用作對(duì)通信數(shù)據(jù)等進(jìn)行處理的數(shù)據(jù)處理裝置。
權(quán)利要求
1. 數(shù)據(jù)處理裝置,其特征在于,包括第一存儲(chǔ)部,存儲(chǔ)基準(zhǔn)數(shù)據(jù),以作為決定對(duì)獲取的數(shù)據(jù)執(zhí)行的處 理的內(nèi)容的基準(zhǔn);檢索部,通過對(duì)所迷數(shù)據(jù)和所述基準(zhǔn)數(shù)據(jù)進(jìn)行比較,檢索所述數(shù) 據(jù)中是否包含所述基準(zhǔn)數(shù)據(jù);第二存儲(chǔ)部,將所述檢索部的檢索結(jié)果與所述處理的內(nèi)容進(jìn)行關(guān)聯(lián)對(duì)應(yīng)并存儲(chǔ);處理部,根據(jù)所述檢索結(jié)果,對(duì)所述數(shù)據(jù)執(zhí)行與所述檢索結(jié)果關(guān) 耳關(guān)對(duì)應(yīng)的處理,所述4企索部由布線邏輯電路構(gòu)成。
2. 根據(jù)權(quán)利要求1所述的數(shù)據(jù)處理裝置,其特征在于,所述布線 邏輯電路包括多個(gè)第一比較電路,以位為單位對(duì)所述數(shù)據(jù)和所述基準(zhǔn) 數(shù)據(jù)進(jìn)行比較。
3. 根據(jù)權(quán)利要求1所述的數(shù)據(jù)處理裝置,其特征在于,所述檢索 部包括位置檢測(cè)電路,從所述數(shù)據(jù)中檢測(cè)應(yīng)與所述基準(zhǔn)數(shù)據(jù)進(jìn)行比較 的比較對(duì)象數(shù)據(jù)的位置。
4. 根據(jù)權(quán)利要求3所述的數(shù)據(jù)處理裝置,其特征在于,所述位置 檢測(cè)電路包括對(duì)所述數(shù)據(jù)和用于確定所述比較對(duì)象數(shù)據(jù)位置的位置確 定數(shù)據(jù)進(jìn)行比較的多個(gè)第二比較電路,所述數(shù)據(jù)每錯(cuò)開預(yù)定數(shù)據(jù)長(zhǎng)度的 位輸入到所述多個(gè)第二比較電路,并與所述位置確定數(shù)據(jù)同時(shí)并列進(jìn)行 比較。
5. 根據(jù)權(quán)利要求1至4任一項(xiàng)所述的數(shù)據(jù)處理裝置,其特征在于, 所述檢索部包括對(duì)分檢索電路,通過對(duì)分檢索對(duì)所述數(shù)據(jù)中是否包含 所述基準(zhǔn)數(shù)據(jù)進(jìn)行檢索。
6. 根據(jù)權(quán)利要求5所述的數(shù)據(jù)處理裝置,其特征在于,所述基準(zhǔn) 數(shù)據(jù)的數(shù)據(jù)數(shù)比所述第一存儲(chǔ)部所能保持的數(shù)據(jù)數(shù)少時(shí),從所述第一存 儲(chǔ)部的最后數(shù)據(jù)位置開始降序貯存所述基準(zhǔn)數(shù)據(jù),并將0貯存到剩余的 數(shù)據(jù)中。
7. 根據(jù)權(quán)利要求1至6任一項(xiàng)所述的數(shù)據(jù)處理裝置,其特征在于, 所述檢索部包括判定電路,當(dāng)所述第一存儲(chǔ)部所存儲(chǔ)的多個(gè)基準(zhǔn)數(shù)據(jù) 分成3個(gè)以上的范圍時(shí),判定所述基準(zhǔn)數(shù)據(jù)和應(yīng)進(jìn)行比較的對(duì)象數(shù)據(jù)屬 于這些范圍中的哪一個(gè)。
8. 根據(jù)權(quán)利要求7所述的數(shù)據(jù)處理裝置,其特征在于,所述判定 電路包括對(duì)所述范圍的邊界的基準(zhǔn)數(shù)據(jù)和所述比較對(duì)象數(shù)據(jù)進(jìn)行比 較的多個(gè)第三比較電路,由所述多個(gè)第三比較電路同時(shí)并列對(duì)所述比 較對(duì)象數(shù)據(jù)屬于所迷3個(gè)以上范圍中的哪一個(gè)進(jìn)行判定。
9. 根據(jù)權(quán)利要求8所述的數(shù)據(jù)處理裝置,其特征在于,所述第一 存儲(chǔ)部的預(yù)定位置存儲(chǔ)的所述基準(zhǔn)數(shù)據(jù)輸入到所述第三比較電路,以 作為所述邊界的基準(zhǔn)數(shù)據(jù)。
10. 根據(jù)權(quán)利要求7或8所述的數(shù)據(jù)處理裝置,其特征在于,根
11. 根據(jù)權(quán)利要求1至IO任一項(xiàng)所述的數(shù)據(jù)處理裝置,其特征在 于,所述第一存儲(chǔ)部還存儲(chǔ)有表示所述數(shù)據(jù)中的比較對(duì)象數(shù)據(jù)位置的 信息,所述檢索部基于表示所述位置的信息提取所述比較對(duì)象數(shù)據(jù)。
12. 根據(jù)權(quán)利要求1至11任一項(xiàng)所述的數(shù)據(jù)處理裝置,其特征在 于,所述第一存儲(chǔ)部或者所述第二存儲(chǔ)部被設(shè)置為能夠從外部進(jìn)行重
13. 根據(jù)權(quán)利要求1至12任一項(xiàng)所述的數(shù)據(jù)處理裝置,其特征在 于,所述檢索部不待獲取通信數(shù)據(jù)包的所有數(shù)據(jù),而是在獲取了應(yīng)與 所述基準(zhǔn)數(shù)據(jù)進(jìn)行比較的數(shù)據(jù)時(shí),開始對(duì)該數(shù)據(jù)和所述基準(zhǔn)數(shù)據(jù)進(jìn)行 比較。
14. 數(shù)據(jù)處理裝置,其特征在于,包括多個(gè)權(quán)利要求1至13 任一項(xiàng)所述的數(shù)據(jù)處理裝置,各所述數(shù)據(jù)處理裝置包括2個(gè)在與通信線路之間輸入輸出數(shù)據(jù)的 接口,通過切換各所述接口的輸入和輸出,對(duì)處理所述數(shù)據(jù)的方向進(jìn) 行可變控制。
全文摘要
文檔編號(hào)H04L29/10GK101147381SQ20058004932
公開日2008年3月19日 申請(qǐng)日期2005年7月7日 優(yōu)先權(quán)日2005年2月18日
發(fā)明者Nagoya Mitsugu 申請(qǐng)人:Duaxes株式會(huì)社<發(fā)明(設(shè)計(jì))