(57)【要約】    【課題】      エントリ数の増加に伴う検索時間が短縮でき、特にエントリが範囲を持つ値の場合に高速に検索すること。    【解決手段】  入力信号１１１には、所定の範囲を取る固定値と所定の値を取る数値データの一方又は双方が含まれている。信号識別回路１０２では、比較データ出力部１２１が備える複数の比較データ保持部１３１が範囲比較データ１１３１と数値比較データ１１３２とからなる比較データ１３２をデータ検知部１２２に与える。データ検知部１２２では、複数のデータ検出部１４１のそれぞれが比較データ１３２と入力信号１１１との一致比較を行う。これによって、入力信号の識別が高速に行える。  【選択図】      図１
2005318213.tif 000002
【特許請求の範囲】
【請求項１】
入力信号が有する固定値が取るべき範囲を示す比較データを出力する比較データ出力手段と、
前記入力信号が有する固定値と前記比較データが示す範囲とを比較して前記比較データが示す範囲に含まれる固定値を有する入力信号を検知するデータ検知手段と、を具備することを特徴とする信号識別回路。
【請求項２】
入力信号が有する固定値が取るべき範囲を示す比較データと、入力信号が有する数値データが取るべき値を示す比較データとの双方を保持出力する比較データ保持手段を複数個で構成される比較データ出力手段と、
前記複数の比較データ保持手段がそれぞれ出力する比較データを受けて、前記比較データが示す範囲を範囲データとして有する入力信号と、前記比較データが示す値を数値データとして有する入力信号とをそれぞれ検知するデータ検知手段と、を具備することを特徴とする信号識別回路。
【請求項３】
前記データ検知手段は、
前記比較データと前記範囲データとを比較する範囲比較手段の比較結果に応じて、前記比較データが示す範囲に含まれる固定値を有する入力信号を検出するデータ検出手段と、
前記比較データと前記数値データとを比較する一致比較手段の比較結果に応じて、前記数値比較データが示す値を数値データとして有する入力信号を検出するデータ検出手段と、を具備することを特徴とする請求項２記載の信号識別回路。
【請求項４】
前記範囲比較手段は、
前記比較データが示す範囲の上限値と前記範囲データとを比較する上限比較手段と、
前記比較データが示す範囲の下限値と前記範囲データとを比較する下限比較手段とで構成され、
前記データ検出手段は、前記上限比較手段と前記下限比較手段との比較結果に基づいて入力信号を検出することを特徴とする請求項３記載の信号識別回路。
【請求項５】
入力信号が有する範囲データや数値データが複数ある場合は、前記比較データ出力手段を構成する複数個の比較データ保持手段は、それぞれ、対応した比較データを保持出力し、前記データ検知手段を構成する複数のデータ検出手段では、前記範囲比較手段が複数の範囲データ毎に設けられ、前記一致比較手段が複数の数値データ毎に設けられることを特徴とする請求項３記載の信号識別回路。
【請求項６】
前記データ検知手段は、前記複数のデータ検出手段が、それぞれ前記入力信号が有するデータと前記比較データとの２データをビット毎に比較するビット対応回路を複数個で構成される場合に、範囲データとの比較動作を行うデータ検出手段では、前記複数のビット対応回路を前記範囲比較手段用に振り分け、数値データとの比較動作を行うデータ検出手段では、前記複数のビット対応回路を前記一致比較手段用に振り分ける対応振分手段と、
前記対応振分手段の振り分けに応じ、範囲データの各ビットを前記範囲比較手段用の対応する前記ビット対応回路に分配し、また、数値データの各ビットを前記一致比較手段の対応する前記ビット対応回路に分配するデータ分配手段と、を具備することを特徴とする請求項３又は請求項５記載の信号識別回路。
【請求項７】
前記比較データ出力手段が出力する比較データを新たな比較データに変更する比較データ変更手段、を具備することを特徴とする請求項１から請求項６の何れか一項に記載の信号識別回路。
【請求項８】
受信パケットのヘッダに含まれる所定データを抽出するデータ抽出手段と、抽出された前記所定データを入力信号とする請求項１から請求項６のいずれかに記載の信号識別回路と、前記信号識別回路の識別結果に応じて前記受信パケットを処理する処理手段と、を具備することを特徴とするパケット処理装置。
【請求項９】
前記信号識別回路は、前記比較データが示す範囲と一致する範囲データを有する入力信号を検出したデータ検出手段を認識する検出認識手段を具備し、前記処理手段は、前記検出認識手段の認識に応じて受信パケットの処理を行うことを特徴とする請求項８記載のパケット処理装置。
【請求項１０】
前記信号識別回路は、前記検出認識手段の認識に応じて受信パケットの処理を決定する処理決定手段を具備し、前記処理手段は、前記処理決定手段の決定に応じて受信パケットの処理を行うことを特徴とする請求項９記載のパケット処理装置。
【請求項１１】
前記処理決定手段は、前記データ検出手段に対応して設けられ、受信パケットの処理を前記処理手段に指示するための処理情報を保持する処理情報保持手段を具備し、前記検出認識手段が認識したデータ検出手段に対応する前記処理情報保持手段に保持する処理情報を前記処理手段に出力することを特徴とする請求項１０記載のパケット処理装置。
【請求項１２】
前記処理情報保持手段に保持された前記処理情報を変更する処理情報変更手段、を具備することを特徴とする請求項１１記載のパケット処理装置。
【請求項１３】
前記比較データ変更手段は、前記検出認識手段がいずれのデータ検出手段も認識しない場合に、前記比較データ保持手段に新たな比較データを保持させることを特徴とする請求項８から請求項１２のいずれかに記載のパケット処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力信号が所定の範囲にあるか否かを判別する信号識別回路及びそれを用いて受信パケットを処理するパケット処理装置に関する。
【背景技術】
【０００２】
従来、順不同で転送されてくるパケットデータの効率的な処理を可能にするために、受信パケットデータをＩＤ毎に整列させてメモリに格納する方法が採用されている（例えば特許文献１）。以下、図６と図７を参照してその概要を説明する。なお、図６は、従来のＩＤ付きパケットデータのＩＤ別メモリ格納装置の構成を示すブロック図である。図７は図６に示すエントリレジスタとＩＤテーブルとメモリアドレスとの関係を示す図である。
【０００３】
図６において、エントリ検索回路６０２は、有効なＩＤテーブルアドレスを示すエントリレジスタ６０４を備え、転送されてくるパケットデータを一時的に保存するデータ保持回路６０１から受信通知が接続され、またＩＤ比較回路６０３に対して比較開始通知とＩＤテーブルアドレスを接続している。ＩＤ比較回路６０３は、ＩＤテーブル６０５を備え、ＩＤ不一致通知をエントリ検索回路６０２に接続し、また、ＩＤ一致時には、該当するメモリ６０６にアドレスを生成し、出力する構成である。
【０００４】
図６と図７において、エントリレジスタ６０４の各ビット番号は、ＩＤテーブル６０５のアドレスに対応しており、ＩＤテーブル６０５に有効なＩＤエントリが有るか無いかを“１”、“０”により示している。
【０００５】
ＩＤテーブル６０５には、複数の異なるＩＤがエントリできるようになっており、ＩＤとページを有している。ＩＤテーブルアドレスは、パケットデータを格納するメモリ６０６の上位アドレスを示し、ＩＤテーブル６０５に書かれているページは、そのメモリ６０６の下位アドレスに対応している。
【０００６】
データ保持回路６０１は、パケットデータを受信すると一時的にそれを保持し、同時にエントリ検索回路６０２に受信通知を行う。エントリ検索回路６０２は、エントリレジスタ６０４を読み込み、０ビット目から順に、有効なＩＤテーブル６０５があることを示す“１”のビットを検索していく。
【０００７】
“１”のビットを見つけた時点で、そのビット番号が示す有効ＩＤテーブル６０５のアドレスを保持し、ＩＤ比較回路６０３に通知する。ＩＤ比較回路６０３は、エントリ検索回路６０２が示す有効なＩＤテーブルアドレスを用いてＩＤテーブル６０５を読み込み、受信したパケットデータのＩＤと同一かどうかを比較する。
【０００８】
ＩＤが一致した場合には、ＩＤテーブル６０５のページをインクリメントし、メモリ６０６のアドレスの上位アドレスをＩＤテーブルアドレス、下位アドレスをインクリメントしたページとして該当するメモリ６０６へパケットデータを格納する。
【０００９】
この従来のパケット格納装置は、受信したパケットデータのＩＤとＩＤテーブル６０５内の有効なＩＤエントリとの一致を検出し、一致したパケットデータをメモリ６０６に格納する構成となっており、ＩＰアドレスのような範囲を持たない値をエントリの検索に使用して好適である。
【特許文献１】特開２００１−７８５２号公報（図１、図２）
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、従来のパケット格納装置では、ＴＣＰ／ＵＤＰポートのような範囲を持つ値をエントリとした場合、受信したパケットデータのＩＤとＩＤテーブル６０５内の有効なＩＤエントリとの一致をＩＤ比較回路６０３が検出するまでエントリの対象となる範囲の値をひとつずつ検索する必要があるので、検索に時間がかかる。同様に、エントリが範囲を持たない値でもＩＤテーブル６０５内の有効なＩＤエントリ数の増加に伴い検索にかかる時間は増大する。
【００１１】
本発明は、かかる点に鑑みてなされたものであり、エントリ数の増加に伴う検索時間を短縮し、特にエントリが範囲を持つ値の場合に高速に検索することができる信号識別回路及びそれを用いたパケット処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
かかる課題を解決するため、本発明の信号識別回路は、入力信号が有する固定値が取るべき範囲を示す比較データを出力する比較データ出力手段と、前記入力信号が有する固定値と前記比較データが示す範囲とを比較して前記比較データが示す範囲に含まれる前記固定値を有する入力信号を検知するデータ検知手段と、を具備する構成を採る。
【００１３】
この構成によれば、二値の大小関係のみならず、所定の範囲にある固定値を有する入力信号を識別することができるので、範囲を持つ値のエントリを高速に検索することができる。
【００１４】
本発明の信号識別回路は、入力信号が有する固定値が取るべき範囲を示す比較データと入力信号が有する数値データが取るべき値を示す比較データとの双方を保持出力する比較データ保持手段を複数個で構成される比較データ出力手段と、前記複数の比較データ保持手段がそれぞれ出力する比較データを受けて、前記比較データが示す範囲を範囲データとして有する入力信号と前記比較データが示す値を数値データとして有する入力信号とをそれぞれ検知するデータ検知手段と、を具備する構成を採る。
【００１５】
この構成によれば、データ検知手段では、比較データと入力信号が有する固定値や数値データとを繰り返し比較することなく、速やかな判別が可能となるので、エントリ数の増加に伴う検索時間を短縮することができる。
【００１６】
本発明の信号識別回路は、請求項２記載の信号識別回路において、前記データ検知手段は、前記比較データと前記範囲データとを比較する範囲比較手段の比較結果に応じて、前記比較データが示す範囲に含まれる固定値有する入力信号を検出するデータ検出手段と、前記比較データと前記数値データとを比較する一致比較手段の比較結果に応じて、前記数値比較データが示す値を数値データとして有する入力信号を検出するデータ検出手段と、を具備する構成を採る。
【００１７】
この構成によれば、データ検出手段では、所定の固定値を有する入力信号と所定の数値データを有する入力信号とを検出することができる。
【００１８】
本発明の信号識別回路は、請求項３記載の信号識別回路において、前記範囲比較手段は、前記比較データが示す範囲の上限値と前記範囲データとを比較する上限比較手段と、前記比較データが示す範囲の下限値と前記範囲データとを比較する下限比較手段とで構成され、前記データ検出手段は、前記上限比較手段と前記下限比較手段との比較結果に基づいて入力信号を検出する構成を採る。
【００１９】
この構成によれば、比較データに含まれた範囲を示す比較データが示す上限値及び下限値と範囲データとを比較するので、所定の範囲にある固定値を有する入力信号を確実に検出することができる。
【００２０】
本発明の信号識別回路は、請求項３記載の信号識別回路において、入力信号が有する範囲データや数値データが複数ある場合は、前記比較データ出力手段を構成する複数個の比較データ保持手段は、それぞれ、対応した比較データを保持出力し、前記データ検知手段を構成する複数のデータ検出手段では、範囲比較手段が複数の範囲データ毎に設けられ、一致比較手段が複数の数値データ毎に設けられる構成を採る。
【００２１】
この構成によれば、入力信号が有する範囲データや数値データが複数ある場合は、それぞれの範囲データや数値データを有する入力信号を迅速に検出することができる。
【００２２】
本発明の信号識別回路は、請求項３又は請求項５記載の信号識別回路において、前記データ検知手段は、前記複数のデータ検出手段が、それぞれ前記入力信号が有するデータと前記比較データとの２データをビット毎に比較するビット対応回路を複数個で構成される場合に、範囲データとの比較動作を行うデータ検出手段では、前記複数のビット対応回路を前記範囲比較手段用に振り分け、数値データとの比較動作を行うデータ検出手段では、前記複数のビット対応回路を前記一致比較手段用に振り分ける対応振分手段と、前記対応振分手段の振り分けに応じ、範囲データの各ビットを前記範囲比較手段用の対応する前記ビット対応回路に分配し、また、数値データの各ビットを前記一致比較手段の対応する前記ビット対応回路に分配するデータ分配手段と、を具備する構成を採る。
【００２３】
この構成によれば、比較データと範囲データや数値データとの比較がビット毎に行えるので、確実な比較動作が行える。
【００２４】
本発明の信号識別回路は、請求項１から請求項６の何れか一項に記載の信号識別回路において、前記比較データ出力手段が出力する比較データを新たな比較データに変更する比較データ変更手段、を具備する構成を採る。
【００２５】
この構成によれば、範囲データや数値データと比較データとをデータ検出手段に柔軟に比較させることができる。
【００２６】
本発明のパケット処理装置は、受信パケットのヘッダに含まれる所定データを抽出するデータ抽出手段と、抽出された前記所定データを入力信号とする請求項１から請求項６のいずれか一項に記載の信号識別回路と、前記信号識別回路の識別結果に応じて前記受信パケットを処理する処理手段と、を具備する構成を採る。
【００２７】
この構成によれば、データ抽出手段が、受信したパケットから入力信号を抽出して信号識別回路に識別させ、その識別に応じて確実に受信パケットの処理が行えるので、パケットに搭載されたデータに応じたフィルタリングが可能である。
【００２８】
本発明のパケット処理装置は、請求項８記載のパケット処理装置において、前記信号識別回路は、前記比較データが示す範囲と一致する範囲データを有する入力信号を検出したデータ検出手段を認識する検出認識手段を具備し、前記処理手段は、前記検出認識手段の認識に応じて受信パケットの処理を行う構成を採る。
【００２９】
この構成によれば、検出認識手段が比較データによって示された範囲にある範囲データを有する入力信号を検出したデータ検出手段を認識した場合に、検出認識手段の認識に応じて処理手段が受信パケットを処理するようになっているので、受信パケットが有する範囲データに応じたフィルタリングが可能である。
【００３０】
本発明のパケット処理装置は、請求項９記載のパケット処理装置において、前記信号識別回路は、前記検出認識手段の認識に応じて受信パケットの処理を決定する処理決定手段を具備し、前記処理手段は、前記処理決定手段の決定に応じて受信パケットの処理を行う構成を採る。
【００３１】
この構成によれば、検出認識手段の認識に応じて受信パケットの処理を決定することができる。
【００３２】
本発明のパケット処理装置は、請求項１０記載のパケット処理装置において、前記処理決定手段は、前記データ検出手段に対応して設けられ、受信パケットの処理を前記処理手段に指示するための処理情報を保持する処理情報保持手段を具備し、前記検出認識手段が認識したデータ検出手段に対応する前記処理情報保持手段に保持する処理情報を前記処理手段に出力する構成を採る。
【００３３】
この構成によれば、データ検出手段別に備えた処理情報保持手段には、受信パケットの処理を処理手段に指示するための処理情報が保持されており、検出認識手段がデータ検出手段を認識した場合に、そのデータ検出手段に対応する処理情報保持手段が処理情報を処理手段に出力するので、処理手段は、その処理情報に応じて確実に受信パケットの処理が行える。
【００３４】
本発明のパケット処理装置は、請求項１１記載のパケット処理装置において、前記処理情報保持手段に保持された前記処理情報を変更する処理情報変更手段、を具備する構成を採る。
【００３５】
この構成によれば、受信パケットに含まれるデータに対応する処理を設定可能なパケット処理装置を得ることができる。
【００３６】
本発明のパケット処理装置は、請求項８から請求項１２のいずれか一項に記載のパケット処理装置において、前記比較データ変更手段は、前記検出認識手段がいずれのデータ検出手段も認識しない場合に、前記比較データ保持手段に新たな比較データを保持させる構成を採る。
【００３７】
この構成によれば、いずれのデータ検出手段も検出認識手段が認識しない場合に、比較データ変更手段が、比較データ保持手段に新たな比較データを保持させ、その新たな比較データと入力信号とをデータ検出手段が新たに比較するので、全てのエントリ数に等しいデータ検出手段と比較データ保持手段とを信号識別回路に設けることなく確実に入力信号が検出することができる。
【発明の効果】
【００３８】
本発明によれば、エントリ数の増加に伴う検索時間が短縮でき、特にエントリが範囲を持つ値の場合に高速に検索することができる。
【発明を実施するための最良の形態】
【００３９】
本発明の骨子は、所定の範囲を取るべき固定値や所定の値を取るべき数値データ、それら各々のデータを複数有する入力信号を確実に識別でき、かつ、それら所定の範囲や所定の値を柔軟に変更できるようにし、イーサネット（Ｒ）上のＴＣＰ／ＩＰパケットの識別のみならず様々なプロトコルに適用可能とすることである。
【００４０】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【００４１】
図１は、本発明の一実施の形態に係る信号識別回路１０２を備えるパケット処理装置１００の構成を示すブロック図である。図１に示すパケット処理装置１００は、データ抽出部１０１と、信号識別回路１０２と、処理部１０３と、処理情報変更部１０４とを備えている。
【００４２】
データ抽出部１０１は、入力する受信パケット１１０をそのまま一方の出力端から処理部１０３に与え、入力する受信パケット１１０のヘッダから抽出した所定のデータであるヘッダ情報（以降「入力信号」という）１１１を他方の出力端から信号識別回路１０２に与える。
【００４３】
ここで、入力信号１１１には、所定の範囲を取る固定値と所定の値を取る数値データの一方又は双方が含まれている。例えば、受信パケット１１０がＴＣＰ／ＩＰパケットである場合は、そのヘッダには、ＴＣＰ／ＵＤＰポート番号とＩＰアドレスとが含まれている。この場合に、所定の範囲を取る固定値とは、ＴＣＰ／ＵＤＰポート番号であり、所定の値を取る数値データとは、ＩＰアドレスである。
【００４４】
信号識別回路１０２は、比較データ出力部１２１とデータ検知部１２２と比較データ変更部１２３と分配振分指示部１２４とを備え、入力信号１１１に含まれる固定値と数値データの一方又は双方を識別し、処理部１０３に対し処理指示１１２を与えるようになっている。
【００４５】
処理部１０３は、データ抽出部１０１からの受信パケット１１０を信号識別回路１０２からの処理指示１１２に従って処理し、後段に出力する。処理情報変更部１０４は、信号識別回路１０２のデータ検知部１２２における処理決定部１４４が処理部１０３に受信パケットの処理を行わせる処理情報に変更を加える。
【００４６】
以下、信号識別回路１０２について説明する。比較データ出力部１２１は、複数の比較データ保持部１３１にて構成されている。複数の比較データ保持部１３１は、それぞれ、入力信号１１１に含まれる固定値や数値データを識別する元になる比較データ１１３をデータ検知部１２２に出力する。各比較データ１１３は、入力信号１１１に含まれる固定値が持つべき範囲を示す範囲比較データ１１３１と、入力信号１１１に含まれる数値データが持つべき値を示す数値比較データ１１３２とからなるとしている。そして、複数の比較データ保持部１３１がそれぞれ保持する比較データ１１３は、比較データ変更部１２３が変更できるようになっている。
【００４７】
この比較データ出力部１２１は、ＴＣＰ／ＩＰパケットに適用した場合は、基本的には、例えば図２に示すように構成される。図２において、比較データ出力部１２１を構成する複数の比較データ保持部１３１は、それぞれ、範囲比較データ１１３１の保持領域と数値比較データ１１３２の保持領域とで構成される。範囲比較データ１１３１は、ＴＣＰ／ＵＤＰポート番号であり、上限値と下限値とを持つ。数値比較データ１１３２は、ＩＰアドレスであり、数値である。したがって、範囲比較データ１１３１の保持領域には、上限値データと下限値データとが保持される。また、数値比較データ１１３２の保持領域には、数値データが保持される。
【００４８】
次に、データ検知部１２２は、複数の比較データ保持部１３１と１対１に対応して設けられ、入力信号１１１と比較データ１１３との一致判定を行って入力信号１１１が持つ固定値や数値データを検出するデータ検出部１４１と、データ抽出部１０１からの入力信号１１１を複数のデータ検出部１４１に分配するデータ分配部１４２と、複数のデータ検出部１４１のいずれが検出動作を行ったかを認識する検出認識部１４３と、検出認識部１４３の出力を受けて処理部１０３に受信パケットの処理を行わせる処理情報を決定し、それに基づき上記の処理指示１１２を出力する処理決定部１４４と、を備えている。データ分配部１４２の分配方法および各データ検出部１４１での検出方法は、分配振分指示部１２４が指示するようになっている。
【００４９】
このデータ検知部１２２は、ＴＣＰ／ＩＰパケットに適用した場合は、基本的には、例えば、図３に示すように構成される。図３において、データ分配部１４２は、入力信号１１１に含まれる範囲データと数値データとを分配振分指示部１２４の指示に従って複数のデータ検出部１４１に分配する。
【００５０】
つまり、各データ検出部１４１には、対応する比較データ保持部１３１から比較データ１１３が入力されるが、入力信号１１１に含まれる範囲データと数値データのいずれか一方又は双方について検出動作を行う。そして、適宜に検出対象データの変更が行えるようになっている。
【００５１】
即ち、各データ検出部１４１は、範囲比較データ１１３１と入力信号１１１に含まれる固定値とを比較する範囲比較部３０１と、数値比較データ１１３２と入力信号１１１に含まれる数値データとを比較する一致比較部３０２とを備え、範囲比較部３０１は、上限比較部３０１１と下限比較部３０１２とで構成される。そして、これらの上限比較部３０１１と下限比較部３０１２と一致比較部３０２とは、多数のビット対応回路３０３の組み合わせによって構成するようになっている。
【００５２】
各ビット対応回路３０３は、入力信号１１１に含まれる固定値や数値データと比較データ１１３との２データをビット毎に比較し、比較結果を出力する構成になっている。対応振分部３０４は、分配振分指示部１２４の指示に従って各データ検出部１４１が持つ多数のビット対応回路３０３に対して２値の比較指示信号３１１を個別に与え、各データ検出部１４１において、多数のビット対応回路３０３を上限比較部３０１１用と下限比較部３０１２用と一致比較部３０２用とに振り分ける機能を有している。
【００５３】
データ分配部１４２の上記した分配動作は、対応振分部３０４の振り分けに応じて、範囲データの各ビットを上限比較部３０１１の対応するビット対応回路３０３と下限比較部３０１２の対応するビット対応回路３０３とに分配し、数値データの各ビットを一致比較部３０２の対応するビット対応回路３０３に分配する動作である。
【００５４】
このような構成によって、範囲比較部３０１は、範囲データと範囲比較データ１１３１とを対応するビット別に確実に比較でき、一致比較部３０２は、数値データと数値比較データ１１３２とを対応するビット別に確実に比較できることになる。
【００５５】
一致比較部３０２おけるビット対応回路３０３群では、ＭＳＢ（最上位ビット）は、図３中の符号Ａ列に位置するビット対応回路３０３に割り当てられ、ＬＳＢ（最下位ビット）は、図３中の符号Ｂ列に位置するビット対応回路３０３に割り当てられている。
【００５６】
上限比較部３０１１おけるビット対応回路３０３群では、ＭＳＢは、図３中の符号Ｃ列に位置するビット対応回路３０３に割り当てられ、ＬＳＢは、図３中の符号Ｄ列に位置するビット対応回路３０３に割り当てられている。
【００５７】
下限比較部３０１２おけるビット対応回路３０３群では、ＭＳＢは、図３中の符号Ｅ列に位置するビット対応回路３０３に割り当てられ、ＬＳＢは、図３中の符号Ｆ列に位置するビット対応回路３０３に割り当てられている。
【００５８】
一致比較部３０２、上限比較部３０１１及び下限比較部３０１２を構成するビット対応回路３０３群では、各ビット対応回路３０３は、２データの割り当てられたビットについて、２データが等しいか否かの比較動作を行い、その比較結果を下位ビット側のビット対応回路３０３に出力する。最終的に、最下位ビットを比較するビット対応回路３０３から一致したか不一致であるかの比較結果３１２が検出認識部１４３に入力される。すなわち、上限比較部３０１１及び下限比較部３０１２を構成するビット対応回路３０３群では、入力信号の固定値の上限値と範囲比較データ１１３１の上限値との大小を比較して、入力信号の固定値の上限値が範囲比較データ１１３１の上限値より小さいと判断した場合は、更に、入力信号の固定値の下限値と範囲比較データ１１３１の下限値との大小を比較し、入力信号の固定値の下限値が範囲比較データ１１３１の下限値より大きいと判断した場合に、それらの比較結果から入力信号の固定値が範囲比較データ１１３１の範囲内にあると判断する機能を有する。
【００５９】
このように、範囲比較部３０１では、固定値と範囲比較データ１１３１とを対応するビット別に確実に比較でき、一致比較部３０２では、数値データと数値比較データ１１３２とを対応するビット別に確実に比較できる。つまり、信号識別回路１０２では、ヘッダが有するＴＣＰ／ＵＤＰポート番号を固定値とした場合にはサービスの種類を複数識別でき、またＩＰアドレスを数値データとした場合には所定のホストを複数識別できるようになる。これは、データ検知部１２２の構成の仕方によって、いずれか一方の識別のみ行うことも、双方の識別を行うこともできること意味する。
【００６０】
そして、検出認識部１４３は、複数のデータ検出部１４１の中で、範囲比較データ１１３１が示す範囲にある固定値を有する入力信号１１１を検出したデータ検出部１４１と、数値比較データ１１３２に一致する数値データを有する入力信号１１１を検出したデータ検出部１４１とを認識できると、その認識結果が、処理決定部１４４に出力される。
【００６１】
なお、検出認識部１４３がいずれのデータ検出部１４１も認識できないときは、比較データ変更部１２３は、各比較データ保持部１３１に新たな比較データを保持させて、データ検出部１４１がその新たな比較データと入力信号とを新たに比較することもできる。
【００６２】
処理決定部１４４は、検出認識部１４３の認識に応じて受信パケットの処理を決定し、その決定に応じた処理指示１１２を処理部１０３に与え、受信パケット１１０の処理を行わせる。
【００６３】
具体的には、処理決定部１４４は、図３に示すように、複数の処理情報保持回路３０５を備えている。それらはデータ検出部１４１の各々に対応して設けられ、受信パケット１１０の処理を処理部１０３に指示するための処理情報を保持するようになっている。処理決定部１４４は、検出認識部１４３が認識したデータ検出部１４１に対応する処理情報保持回路３０５に保持した処理情報を処理指示１１２として出力させ、その処理情報に応じたパケット処理を処理部１０３に行わせ得るようになっている。
【００６４】
これによって、例えば、処理情報保持回路３０５に受信ヘッダに応じた方路を示す処理情報を保持させ、その処理情報に応じた方路に処理部１０３が受信パケット１１０を送信するように構成した場合には、受信ヘッダに応じた方路にパケットを送信する処理をするパケット処理装置が得られる。
【００６５】
また、例えば、処理情報保持回路３０５に受信ヘッダに応じた変換後のヘッダを保持させておき、処理決定部１４４が出力する処理情報に応じて処理部１０３がヘッダを変換するように構成した場合には、受信ヘッダに応じてヘッダ変換が行えるパケット処理装置を得ることができる。
【００６６】
そして、図１に示す処理情報変更部１０４は、上記の処理情報保持回路３０５に保持された処理情報を書き込んで変更するようになっているので、受信パケットのプロトコルに応じた処理情報を処理決定部１４４に出力させることができる。したがって、本実施の形態に係るパケット処理装置を様々なプロトコルに対応させることができる。
【００６７】
ところで、入力信号１１１となるＴＣＰ／ＩＰパケットのヘッダに含まれるＴＣＰ／ＵＤＰポート番号は、実際には、宛先（ＤＡ）と送信元（ＳＡ）とを有している。また、入力信号１１１となるＴＣＰ／ＩＰパケットのヘッダに含まれるＩＰアドレスは、実際には、宛先（ＤＡ）と送信元（ＳＡ）とを有している。
【００６８】
そこで、図４と図５を参照して、ＴＣＰ／ＵＤＰポート番号とＩＰアドレスとの宛先・送信元の双方を識別するようにした信号識別回路１０２の構成について説明する。なお、図４は、比較データ出力部１２１の構成例を示すブロック図である。図５は、データ検知部１２２の構成例を示すブロック図である。
【００６９】
図４では、比較データ出力部１２１を構成する複数の比較データ保持部１３１は、それぞれ、ＴＣＰ／ＵＤＰポート番号が取るべき範囲を示す範囲比較データ１１３１とＩＰアドレスの取るべき値を示す数値比較データ１１３２とを宛先・送信元双方含んだ比較データ１１３を保持している場合が示されている。
【００７０】
即ち、範囲比較データ１１３１の保持領域では、ＴＣＰ／ＵＤＰポート番号の宛先（ＤＡ）と送信元（ＳＡ）について、上限値データと下限値データがそれぞれ保持される。また、数値比較データ１１３２の保持領域では、ＩＰアドレスの宛先（ＤＡ）と送信元（ＳＡ）について、数値データがそれぞれ保持される。
【００７１】
ここで、図１に示す比較データ変更部１２３は、新たな比較データ１１３を比較データ保持部１３１に保持させ、比較データ１１３を変更することができるので、固定値又は数値データと比較データ１１３とをデータ検出部１４１に柔軟に比較させることができる。したがって、ＴＣＰ／ＩＰパケットの識別においては、ポート番号により識別するサービスの変更や、宛先・送信元アドレスにより識別するホストの変更が容易に可能な構成となっている。
【００７２】
次に、入力信号１１１となるＴＣＰ／ＩＰパケットのヘッダに含まれるＴＣＰ／ＵＤＰポート番号が宛先（ＤＡ）と送信元（ＳＡ）とを持ち、これら双方のポート番号を固定値としてＴＣＰ／ＵＤＰポート番号によるサービスの識別を行う場合には、比較データ１１３には、これら双方のポート番号である固定値を識別するための範囲比較データ１１３１を複数個用意し、対応するデータ検出部１４１は、図５に示すように、宛先（ＤＡ）を識別する範囲比較部５０１と送信元（ＳＡ）を識別する範囲比較部５０２とで構成し、範囲比較部５０１と範囲比較部５０２とのそれぞれにおいて、上限比較部５０１１，５０２１と下限比較部５０１２，５０２２とを設け、宛先・送信元双方のポート番号が所定の範囲にあるか否かを同時に検出できるようにする。
【００７３】
そして、それら複数の上限比較部５０１１，５０２１と、下限比較部５０１２，５０２２とにビット対応回路３０３を振り分けるように対応振分部３０４を構成し、データ分配部１４２に上限比較部５０１１，５０２１と下限比較部５０１２，５０２２との各々に対応する範囲データを分配させ、各々のデータ検出部１４１に対応する固定値と範囲比較データ１１３１とを比較させる構成とする。
【００７４】
このように構成すれば、データ検知部１２２では、宛先・送信元ポート番号と複数の比較データ１１３とを同時に比較する各々のデータ検出部１４１の比較結果に基づき、宛先・送信元ポート番号の両方に対して複数のサービスに対応する固定値を有する入力信号１１１を速やかに検知することができるので、信号識別回路１０２は、宛先・送信元ポート番号によるサービスの識別に適用可能となる。
【００７５】
また、入力信号１１１となるＴＣＰ／ＩＰパケットのヘッダに含まれるＩＰアドレスが宛先（ＤＡ）と送信元（ＳＡ）とを持ち、これら双方のＩＰアドレス（ＤＡ／ＳＡ）を数値データとしてＩＰアドレスの識別を行う場合には、比較データ１１３は、これら双方の
のＩＰアドレス（ＤＡ／ＳＡ）である数値データを識別する数値比較データ１１３２を複数個用意し、対応するデータ検出部１４１は、図５に示すように、宛先（ＤＡ）を識別する一致比較部５０３と送信元（ＳＡ）を識別する一致比較部５０４とで構成し、宛先・送信元双方のＩＰアドレスが所定の値にあるか否かを同時に検出できるようにする。
【００７６】
そして、それら複数の数値データ別の一致比較部５０３，５０４に複数のビット対応回路３０３を振り分けるように対応振分部３０４を構成し、データ分配部１４２に一致比較部５０３，５０４の各々に対応する数値データを分配させ、各々のデータ検出部１４１に対応する数値比較データ１１３２と数値データを比較させる構成とする。
【００７７】
このように構成すれば、データ検知部１２２では、宛先・送信元アドレスと複数の比較データ１１３とを同時に比較する各々のデータ検出部１４１の比較結果に基づき、宛先・送信元アドレスの両方に対して複数のホストに対応する数値データを含んでいる入力信号１１１を速やかに検知することができるので、信号識別回路１０２は、宛先・送信元アドレスによるホストの識別に適用可能となる。
【００７８】
以上説明したように、本実施の形態による信号識別回路は、入力信号が取るべき固定値や数値を通知する比較データを各種変更可能に発生できる比較データ保持部と、比較データ毎に、入力信号が有する固定値や数値がその比較データが通知する範囲や数値と一致するか否かを検知するデータ検知部とを設けたので、二値の大小関係のみならず、所定の固定値や数値を有する入力信号を高速に識別することができ、所定の固定値や数値を有するエントリを高速に検索することができる。
【００７９】
また、検索すべきエントリ数が多い場合でも、全てのエントリ数に等しい比較データ保持部とデータ検知部とを信号識別回路に設けることなく入力信号を確実に検出できるようになっているので、速やかな判別が可能であり、エントリ数の増加に伴う検索時間を短縮することができる。
【００８０】
即ち、本実施の形態による信号識別回路は、所定の固定値を取るべき範囲データや所定の数値を取るべき数値データ、それら各々のデータを複数有する入力信号を確実に識別できる上に、それら所定の固定値や所定の数値を柔軟に変更できる構成となっているので、イーサネット（Ｒ）上のＴＣＰ／ＩＰパケットの識別のみならず様々なプロトコルに適用可能である。
【産業上の利用可能性】
【００８１】
本発明は、エントリが範囲を持つ値の場合に高速検索するのに好適できる。
【図面の簡単な説明】
【００８２】
【図１】本発明の一実施の形態に係る信号識別回路を備えるパケット処理装置の構成を示すブロック図
【図２】図１に示す比較データ出力部の基本的な構成例を示すブロック図
【図３】図１に示すデータ検知部の基本的な構成例を示すブロック図
【図４】図１に示す比較データ出力部の具体的な構成例を示すブロック図
【図５】図１に示すデータ検知部の具体的な構成例を示すブロック図
【図６】従来のＩＤ付きパケットデータのＩＤ別メモリ格納装置の構成を示すブロック図
【図７】図６に示すエントリレジスタとＩＤテーブルとメモリアドレスとの関係を示す図
【符号の説明】
【００８３】
１００  パケット処理装置
１０１  データ抽出部
１０２  信号識別回路
１０３  処理部
１０４  処理情報変更部
１２１  比較データ出力部
１２２  データ検知部
１２３  比較データ変更部
１２４  分配振分指示部
１４１  データ検出部
１４２  データ分配部
１４３  検出認識部
１４４  処理決定部
３０１  範囲比較部
３０２  一致比較部
３０３  ビット対応回路
３０４  対応振分部
３０５  処理情報保持回路
３０１１  上限比較部
３０１２  下限比較部
５０１  範囲比較部（ＤＡ）
５０２  範囲比較部（ＳＡ）
５０３  一致比較部（ＤＡ）
５０４  一致比較部（ＳＡ）
５０１１  上限比較部（ＤＡ）
５０１２  下限比較部（ＤＡ）
５０２１  上限比較部（ＳＡ）
５０２２  下限比較部（ＳＡ）
【図１】
2005318213.tif 000003
【図２】
2005318213.tif 000004
【図３】
2005318213.tif 000005
【図４】
2005318213.tif 000006
【図５】
2005318213.tif 000007
【図６】
2005318213.tif 000008
【図７】
2005318213.tif 000009