(57)【要約】【課題】共通のアドレステーブルを用いてパケットに対して並列処理を行なう場合に、アドレステーブルのデータの変更時でもパケットの順序逆転の発生を防止するアドレス検索装置を得ること。【解決手段】同期確立部５が、アドレス検索部７−１〜７−３から出力される処理通知である検索終了通知に基づいて、予め定められた処理順に従って検索終了通知を出力したアドレス検索部７−１〜７−３の次の処理順のアドレス検索部７−１〜７−３に検索開始指示を出力する。【選択図】        図１
2006148303.tif 000002
【特許請求の範囲】
【請求項１】
入力パケットの転送先を選択するために必要なデータが登録されるアドレステーブルと、
複数の並列処理部に対して予め定められた処理順に従って入力パケットを振り分けるパケット分離部と、
このパケット分離部によって振り分けられたパケットからアドレス検索に必要な情報を抽出するパケット前処理部、およびこのパケット前処理部によって抽出された情報に基づいて前記アドレステーブルを検索して前記振り分けられたパケットの転送先となるアドレスを選択するアドレス検索処理を実行するアドレス検索部をそれぞれ有する前記複数の並列処理部と、
を備え、前記入力パケットのアドレス検索処理を並列に実行するアドレス検索装置であって、
前記複数の並列処理部から出力される処理通知に基づいて、前記処理順に従って前記処理通知を出力した並列処理部の次の処理順の並列処理部のアドレス検索部に検索開始指示を出力する同期確立部、
を備え、
前記アドレス検索部は、
前記検索開始指示を受けると、前記アドレス検索処理を開始すること、
を特徴とするアドレス検索装置。
【請求項２】
前記アドレス検索部は、
前記アドレス検索処理を開始する際に、前記処理通知として検索開始通知を前記同期確立部に出力すること、
を特徴とする請求項１に記載のアドレス検索装置。
【請求項３】
前記アドレス検索部は、
前記アドレス検索処理が終了した後に、前記処理通知として検索終了通知を前記同期確立部に出力すること、
を特徴とする請求項１に記載のアドレス検索装置。
【請求項４】
前記パケット前処理部は、
前記アドレス検索に必要な情報を抽出した後に、前記処理通知として処理終了通知を前記同期確立部に出力し、
前記同期確立部は、
前記処理終了通知を受けてから所定時間が経過した後に、前記検索開始指示を出力すること、
を特徴とする請求項１に記載のアドレス検索装置。
【請求項５】
前記パケット前処理部は、
前記アドレス検索に必要な情報を抽出してから所定時間が経過した後に、前記処理通知として処理終了通知を前記同期確立部に出力すること、
を特徴とする請求項１に記載のアドレス検索装置。
【請求項６】
入力パケットの転送先を選択するために必要なデータが登録されるアドレステーブルと、
複数の並列処理部に対して予め定められた処理順に従って入力パケットを振り分けるパケット分離部と、
このパケット分離部によって振り分けられたパケットからアドレス検索に必要な情報を抽出するパケット前処理部、およびこのパケット前処理部によって抽出された情報に基づいて前記アドレステーブルを検索して前記振り分けられたパケットの転送先となるアドレスを選択するアドレス検索処理を実行するアドレス検索部をそれぞれ有する前記複数の並列処理部と、
を備え、前記入力パケットのアドレス検索処理を並列に実行するアドレス検索装置であって、
前記アドレス検索部は、
処理通知を受けると前記アドレス検索処理を開始するとともに、前記処理順に従って次の処理順の並列処理部のアドレス検索部に処理通知を出力すること、
を特徴とするアドレス検索装置。
【請求項７】
前記アドレス検索部は、
前記アドレス検索処理を開始する際に、前記処理通知として検索開始通知を出力すること、
を特徴とする請求項６に記載のアドレス検索装置。
【請求項８】
前記アドレス検索部は、
前記アドレス検索処理が終了した後に、前記処理通知として検索終了通知を出力すること、
を特徴とする請求項６に記載のアドレス検索装置。
【請求項９】
入力パケットの転送先を選択するために必要なデータが登録されるアドレステーブルと、
複数の並列処理部に対して予め定められた処理順に従って入力パケットを振り分けるパケット分離部と、
このパケット分離部によって振り分けられたパケットからアドレス検索に必要な情報を抽出するパケット前処理部、およびこのパケット前処理部によって抽出された情報に基づいて前記アドレステーブルを検索して前記振り分けられたパケットの転送先となるアドレスを選択するアドレス検索処理を実行するアドレス検索部をそれぞれ有する前記複数の並列処理部と、
を備え、前記入力パケットのアドレス検索処理を並列に実行するアドレス検索装置であって、
前記パケット前処理部は、
前記アドレス検索に必要な情報を抽出してから所定時間が経過した後に、前記処理順に従って次の処理順の並列処理部のアドレス検索部に処理終了通知を出力し、
前記アドレス検索部は、
前記処理終了通知を受けると、前記アドレス検索処理を開始すること、
を特徴とするアドレス検索装置。
【請求項１０】
入力パケットの転送先を選択するために必要なデータが登録されるアドレステーブルと、
複数の並列処理部に対して予め定められた処理順に従って入力パケットを振り分けるパケット分離部と、
このパケット分離部によって振り分けられたパケットからアドレス検索に必要な情報を抽出するパケット前処理部、およびこのパケット前処理部によって抽出された情報に基づいて前記アドレステーブルを検索して前記振り分けられたパケットの転送先となるアドレスを選択するアドレス検索処理を実行するアドレス検索部をそれぞれ有する前記複数の並列処理部と、
を備え、前記入力パケットのアドレス検索処理を並列に実行するアドレス検索装置であって、
前記パケット前処理部は、
前記アドレス検索に必要な情報を抽出した後に、前記処理順に従って次の処理順の並列処理部のアドレス検索部に処理終了通知を出力し、
前記アドレス検索部は、
前記処理終了通知を受けてから所定時間が経過した後に、前記アドレス検索処理を開始すること、
を特徴とするアドレス検索装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケットの転送先となるアドレスを検索するアドレス検索装置に関するものであり、特に、共通のアドレステーブルを用いてパケットのアドレス検索を並列処理によって行なうアドレス検索装置に関するものである。
【背景技術】
【０００２】
音声や画像などリアルタイム性が要求されるＩＰ（Internet Protocol）通信では、パケット転送に高速処理が要求される。パケット転送を高速に処理するために、従来から種々の技術が考えられている。
【０００３】
たとえば、特許文献１には、ＩＰアドレス最長一致検索処理時間を短縮し、短いパケットが連続して到着する場合においても、所望のスループットが得られるアドレス検索装置に関する技術が開示されている。
【０００４】
特許文献１に記載の従来のアドレス検索装置は、複数の検索処理部を備え、アドレス保持レジスタにＩＰアドレスが新たにロードされると、制御部が複数の検索処理部の中で検索動作を行なっていない検索処理部に処理を実行させるように制御する。
【０００５】
【特許文献１】特開２００１−６０９７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記特許文献１に記載の従来技術では、複数の検索処理部によってアドレス検索を並列に実行するようにしているため、１つの検索処理部でアドレス検索を行う場合と比較して、高速にアドレス検索を行なうことができる。
【０００７】
しかしながら、上記特許文献１に記載の従来技術では、アドレス検索装置にアドレス検索を行なうためのアドレステーブルが１つの場合、すなわち複数の検索処理部が共通のアドレステーブルを用いてアドレス検索を行う場合、並列処理されているパケットの処理時間が異なるため、アドレステーブルのデータ変更時にアドレス検索結果に順序逆転が発生することがあるという問題があった。
【０００８】
すなわち、先に到着したパケットのアドレスが変更後のアドレステーブルによる検索結果となり、後に到着したパケットのアドレスが変更前のアドレステーブルによる検索結果となり、パケットの順番に対してアドレス検索結果に順序逆転が発生することがある。
【０００９】
本発明は、上記に鑑みてなされたものであって、共通のアドレステーブルを用いてパケットに対して並列処理を行なう場合に、アドレステーブルのデータの変更時でもパケットの順序逆転の発生を防止するアドレス検索装置を得ることを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、本発明は、入力パケットの転送先を選択するために必要なデータが登録されるアドレステーブルと、複数の並列処理部に対して予め定められた処理順に従って入力パケットを振り分けるパケット分離部と、このパケット分離部によって振り分けられたパケットからアドレス検索に必要な情報を抽出するパケット前処理部、およびこのパケット前処理部によって抽出された情報に基づいて前記アドレステーブルを検索して前記振り分けられたパケットの転送先となるアドレスを選択するアドレス検索処理を実行するアドレス検索部をそれぞれ有する前記複数の並列処理部と、を備え、前記入力パケットのアドレス検索処理を並列に実行するアドレス検索装置であって、前記複数の並列処理部から出力される処理通知に基づいて、前記処理順に従って前記処理通知を出力した並列処理部の次の処理順の並列処理部のアドレス検索部に検索開始指示を出力する同期確立部、を備え、前記アドレス検索部は、前記検索開始指示を受けると、前記アドレス検索処理を開始すること、を特徴とする。
【発明の効果】
【００１１】
この発明によれば、同期確立部が、アドレステーブルを検索して入力パケットの転送先となるアドレスを選択するアドレス検索処理を実行するアドレス検索部を有する複数の並列処理部から出力される処理通知に基づいて、複数の並列処理部に対して予め定められた処理順に従って処理通知を出力した並列処理部の次の処理順の並列処理部のアドレス検索部にアドレス検索処理を開始させる検索開始指示を出力して各アドレス検索部がアドレステーブルにアクセスする順番を制御するようにしているので、アドレステーブルのデータの変更時でもパケットの順序逆転の発生を防止することができる。
【発明を実施するための最良の形態】
【００１２】
以下に、本発明にかかるアドレス検索装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１３】
実施の形態１．
図１および図２を用いてこの発明の実施の形態１を説明する。図１は、この発明にかかる実施の形態１のアドレス検索装置の構成を示すブロック図である。この発明にかかる実施の形態１のアドレス検索装置は、アドレステーブル４と、パケット分離部１と、複数（この場合は３つ）の並列処理部２−１〜２−３と、パケット多重部３と、同期確立部５とを備えている。
【００１４】
アドレステーブル４は、並列処理部２−１〜２−３が共通にアクセス可能であり、入力パケットの転送先となるアドレスを選択するためのアドレス検索に必要なデータが登録される。
【００１５】
パケット分離部１は、予め定められた処理順に基づいて入力パケットを並列処理部２−１〜２−３に振り分ける。たとえば、並列処理部２−１、並列処理部２−２、並列処理部２−３という処理順が定められている場合、１番目の入力パケットを並列処理部２−１に出力し、２番目の入力パケットを並列処理部２−２に出力し、３番目の入力パケットを並列処理部２−３に出力し、４番目の入力パケットを並列処理部２−１に出力するというように、入力パケットを順番に並列処理部２−１〜２−３に振り分ける。
【００１６】
並列処理部２−１〜２−３は、入力パケットからアドレス検索に必要な情報を抽出するパケット前処理部６−１〜６−３と、パケット前処理部６−１〜６−３によって抽出された情報基づいてとアドレステーブル４を検索して、パケット分離部１によって振り分けられたパケットの転送先となるアドレスを選択するアドレス検索処理を実行するアドレス検索部７−１〜７−３と、アドレス検索部７−１〜７−３によって選択されたアドレスに基づいてパケットのヘッダ情報などを変更するパケット後処理部８−１〜８−３とを備えている。
【００１７】
アドレス検索部７−１〜７−３は、同期確立部５からの検索開始指示を受けてアドレス検索処理を開始し、アドレス検索処理が終了するとアドレス検索処理が終了したことを示す処理通知として検索終了通知を同期確立部５に出力する。
【００１８】
同期確立部５は、アドレス検索部７−１〜７−３からの検索終了通知を受けると、予め定められた処理順に従って検索終了通知を出力したアドレス検索部７−１〜７−１の次の処理順のアドレス検索部７−１〜７−３に検索開始指示を出力する。たとえば、アドレス検索部７−１、アドレス検索部７−２、アドレス検索部７−３という処理順が定められていた場合、アドレス検索部７−１から検索終了通知を受けるとアドレス検索部７−２に検索開始指示を出力し、アドレス検索部７−２から検索終了通知を受けるとアドレス検索部７−３に検索開始指示を出力し、アドレス検索部７−３から検索終了通知を受けるとアドレス検索部７−１に検索開始指示を出力するというように、予め定められた順番に並列処理部２−１〜２−３がアドレス検索処理を実行するように制御する。
【００１９】
パケット多重部３は、パケット後処理部８−１〜８−３から入力されるパケットを入力パケットの到着順に多重し、多重したパケットを出力パケットとして出力する。
【００２０】
つぎに、この発明にかかる実施の形態１のアドレス検索装置の動作を説明する。なお、ここでは、並列処理部２−１、並列処理部２−２、並列処理部２−３の処理順がパケット分離部１および同期確立部５に予め定められているものとする。
【００２１】
パケット分離部１は、予め定められた処理順に従って入力パケットをパケット前処理部６−１〜６−３に振り分ける。入力パケットが入力されるとパケット前処理部６−１〜６−３は、振り分けられたパケットからアドレス検索に必要な情報を抽出する。たとえば、入力パケットのヘッダ情報から送信元のアドレスや転送先のアドレスなどを抽出する。
【００２２】
アドレス検索部７−１は、パケット前処理部６−１によって抽出された情報を検索キーとしてアドレステーブル４を検索して、入力パケットの転送先となるアドレスを選択するアドレス検索処理を開始する。アドレス検索部７−１は、アドレス検索処理が終了した後に、検索終了通知を同期確立部５に出力する。また、アドレス検索部７−１は、選択したアドレスをパケット後処理部８−１に通知する。
【００２３】
アドレス検索部７−１から検出終了通知を受けると、同期確立部５は、アドレス検索部７−２に検索開始指示を出力する。アドレス検索部７−２は、検索開始指示を受けるとパケット前処理部６−２によって抽出された情報を検索キーとしてアドレステーブル４を検索して、入力パケットの転送先となるアドレスを選択するアドレス検索処理を開始する。アドレス検索部７−２は、アドレス検索処理が終了した後に、検索終了通知を同期確立部５に出力する。また、アドレス検索部７−２は、選択したアドレスをパケット後処理部８−２に通知する。
【００２４】
アドレス検索部７−２から検出終了通知を受けると、同期確立部５は、アドレス検索部７−３に検索開始指示を出力する。アドレス検索部７−３は、検索開始指示を受けるとパケット前処理部６−３によって抽出された情報を検索キーとしてアドレステーブル４を検索して、入力パケットの転送先となるアドレスを選択するアドレス検索処理を開始する。アドレス検索部７−３は、アドレス検索処理を終了した後に、検索終了通知を同期確立部５に出力する。また、アドレス検索部７−３は、選択したアドレスをパケット後処理部８−３に通知する。
【００２５】
パケット後処理部８−１〜８−３は、アドレス検索部７−１〜７−３から通知されたアドレスに基づいて入力パケットのヘッダ情報の転送先アドレスを変更する。パケット後処理部８−１〜８−３は、ヘッダ情報を変更したパケットをパケット多重部３に送信する。
【００２６】
パケット多重部３は、パケット後処理部８−１〜８−３から入力されたパケットを、入力パケットの入力順、すなわちパケット分離部１が入力パケットを振り分ける前の順番で多重する。パケット多重部３は多重したパケットを出力パケットとして出力する。
【００２７】
一方、アドレス検索部７−３から検出終了通知を受けると、同期確立部５は、アドレス検索部７−１に検索開始指示を出力する。これにより、アドレス検索部７−１が、つぎのパケットのアドレス検索処理を開始する。
【００２８】
図２は、同期確立部５がアドレス検索部７−１〜７−３のアドレス検索処理を制御するシーケンス図である。アドレス検索部７−１は、アドレス検索処理を行ない（Ｓ００１）、アドレス検索処理が終了すると検索終了通知を同期確立部５に出力する（Ｓ００２）。アドレス検索部７−１から検索終了通知を受けると同期確立部５は、検索開始指示をアドレス検索部７−２に出力する（Ｓ００３）。
【００２９】
検索開始指示を受けてアドレス検索部７−２はアドレス検索処理を開始し（Ｓ００４）、アドレス検索処理が終了すると検索終了通知を同期確立部５に出力する（Ｓ００５）。検索終了通知を受けると同期確立部５は、検索開始指示をアドレス検索部７−３に出力する（Ｓ００６）。
【００３０】
検索開始指示を受けてアドレス検索部７−３はアドレス検索処理を開始し（Ｓ００７）、アドレス検索処理が終了すると検索終了通知を同期確立部５に出力する（Ｓ００８）。検索終了通知を受けると同期確立部５は、検索開始指示をアドレス検索部７−１に出力する（Ｓ００９）。検索開始指示を受けるとアドレス検索部７−１はアドレス検索処理を開始する（Ｓ０１０）。
【００３１】
このように同期確立部５は、アドレス検索部７−１〜７−３から検索終了通知を受けると予め定められた処理順に従って、検索終了通知を出力したアドレス検索部７−１〜７−３の次の処理順のアドレス検索部７−１〜７−３に検索開始指示を出力する動作を繰り返す。
【００３２】
以上説明したように、この実施の形態１では、同期確立部５が、アドレス検索部７−１〜７−３から出力される処理通知である検索終了通知に基づいて、予め定められた処理順に従って検索終了通知を出力したアドレス検索部７−１〜７−３の次の処理順のアドレス検索部７−１〜７−３に検索開始指示を出力するようにしているので、複数のアドレス検索部７−１〜７−３によってアドレス検索処理を並列に行なうアドレス検索装置において、アドレス検索部７−１〜７−３が共通にアクセスするアドレステーブル４のデータが変更された場合でも、パケットの順序逆転の発生を防止することができる。
【００３３】
実施の形態２．
図３を用いてこの発明の実施の形態２を説明する。実施の形態１では、同期確立部５が、アドレス検索部７−１〜７−３から出力される処理通知である検索終了通知に基づいて、予め定められた処理順に従って、検索終了通知を出力したアドレス検索部７−１〜７−３の次の処理順のアドレス検索部７−１〜７−３に検索開始指示を出力するようにして、パケットの順序逆転の発生を防止した。
【００３４】
しかしながら、実施の形態１では、アドレス検索処理が終了した後に次のアドレス検索処理を実行するようにしているので、パケットの転送処理の速度が遅くなってしまうという問題があった。
【００３５】
このような問題を改善するために、この実施の形態２では、アドレス検索処理の開始に同期させて順次アドレス検索処理を行なうものである。
【００３６】
この発明にかかる実施の形態２のアドレス検索装置の構成は、図１に示した実施の形態１のアドレス検索装置と同じであるので、ここではその説明を省略する。
【００３７】
この発明にかかる実施の形態２のアドレス検索装置のアドレス検索部７−１〜７−３は、アドレスの検索処理を開始する際に、処理通知として検索開始通知を同期確立部５に出力する。同期確立部５は、アドレス検索部７−１〜７−３からの検索開始通知を受けると、予め定められた処理順に従って検索開始通知を出力したアドレス検索部７−１〜７−３の次の処理順のアドレス検索部７−１〜７−３に検索開始指示を出力する。
【００３８】
つぎに、この発明にかかる実施の形態２のアドレス検索装置の動作を説明する。なお、この発明にかかる実施の形態２のアドレス検索装置の動作は、実施の形態１のアドレス検索部７−１〜７−３が検索終了通知の代わりに検索開始通知を出力し、同期確立部５が検索開始通知に基づいて、検索開始通知を出力したアドレス検索部７−１〜７−３の次の処理順のアドレス検索部７−１〜７−３に検索開始指示を出力するものであるので、図３のシーケンス図を参照して、同期確立部５がアドレス検索部７−１〜７−３のアドレス検索処理を制御する動作のみを説明する。
【００３９】
アドレス検索部７−１は、検索開始通知を同期確立部５に出力した（Ｓ１０１）後に、アドレス検索処理を開始する（Ｓ１０２）。アドレス検索部７−１から検索開始通知を受けると同期確立部５は、検索開始指示をアドレス検索部７−２に出力する（Ｓ１０３）。
【００４０】
検索開始指示を受けると、アドレス検索部７−２は、検索開始通知を同期確立部５に出力して（Ｓ１０４）、アドレス検索処理を開始する（Ｓ１０５）。アドレス検索部７−２から検索終了通知を受けると同期確立部５は、検索開始指示をアドレス検索部７−３に出力する（Ｓ１０６）。
【００４１】
検索開始指示を受けると、アドレス検索部７−３は、検索開始通知を同期確立部５に出力して（Ｓ１０７）、アドレス検索処理を開始する（Ｓ１０８）。アドレス検索部７−３から検索終了通知を受けると同期確立部５は、検索開始指示をアドレス検索部７−１に出力する（Ｓ１０９）。
【００４２】
検索開始指示を受けると、アドレス検索部７−１は、検索開始通知を同期確立部５に出力して（Ｓ１１０）、アドレス検索処理を開始する（Ｓ１１１）。
【００４３】
このように同期確立部５は、アドレス検索部７−１〜７−３から検索開始通知を受けると予め定められた処理順に従って、検索開始通知を出力したアドレス検索部７−１〜７−３の次の処理順のアドレス検索部７−１〜７−３に検索開始指示を出力する動作を繰り返す。
【００４４】
以上説明したように、この実施の形態２では、同期確立部５が、アドレス検索部７−１〜７−３から出力される処理通知である検索開始通知に基づいて、予め定められた処理順に従って検索開始通知を出力したアドレス検索部７−１〜７−３の次の処理順のアドレス検索部７−１〜７−３に検索開始指示を出力するようにしているので、複数のアドレス検索部７−１〜７−３によってアドレス検索処理を並列に行なうアドレス検索装置において、アドレス検索部７−１〜７−３が共通にアクセスするアドレステーブル４のデータが変更された場合でも、アドレス検索処理を並列に実行しつつ、パケットの順序逆転の発生を防止することができる。
【００４５】
実施の形態３．
図４および図５を用いてこの発明にかかる実施の形態３を説明する。図４は、この発明にかかる実施の形態３のアドレス検索装置の構成を示すブロック図である。この発明にかかる実施の形態３のアドレス検索装置は、図１に示した実施の形態１のアドレス検索装置のパケット前処理部６−１〜６−３、アドレス検索部７−１〜７−３、および同期確立部５の代わりに、パケット前処理部６ａ−１〜６ａ−３、アドレス検索部７ａ−１〜７ａ−３、および同期確立部５ａを備えている。図１に示した実施の形態１のアドレス検索装置と同じ機能を持つ構成部分には同一符号を付し、重複する説明は省略する。
【００４６】
パケット前処理部６ａ−１〜６ａ−３は、実施の形態１のパケット前処理部６−１〜６−３の機能に加えて、入力パケットに対する前処理（入力パケットからアドレス検索に必要な情報を抽出するなど、アドレス検索処理の前に行なうべき処理）が終了した後に、処理通知として処理終了通知を同期確立部５ａに出力する機能を備えている。
【００４７】
アドレス検索部７ａ−１〜７ａ−３は、同期確立部５ａからの検索開始指示を受けると、パケット前処理部６ａ−１〜６ａ−３によって抽出された情報基づいてとアドレステーブル４を検索して、パケット分離部１によって振り分けられたパケットの転送先となるアドレスを選択するアドレス検索処理を実行する。
【００４８】
同期確立部５ａは、パケット前処理部６ａ−１〜６ａ−３からの処理終了通知を受けると、予め定められた所定時間が経過した後に、予め定められた処理順に従って処理終了通知を出力したパケット前処理部６ａ−１〜６ａ−３の次の処理順のアドレス検索部７ａ−１〜７ａ−３に検索開始指示を出力する。所定時間は、パケット前処理部６ａ−１〜６ａ−３が入力パケットに対する前処理を終了してからアドレス検索部７ａ−１〜７ａ−３がアドレステーブル４にアクセスしてアドレス検索処理を開始するために必要な時間以上の時間とする。
【００４９】
つぎに、この発明にかかる実施の形態３のアドレス検索装置の動作を説明する。なお、この発明にかかる実施の形態３のアドレス検索装置の動作は、実施の形態１のアドレス検索装置のアドレス検索処理が検索開始通知に基づいて制御されているのに対して、パケット前処理部６ａ−１〜６ａ−３からの処理終了通知に基づいて制御されるものであるので、図５のシーケンス図を参照して、同期確立部５ａがパケット前処理部６ａ−１〜６ａ−３からの処理終了通知に基づいてアドレス検索部７ａ−１〜７ａ−３を制御する動作のみを説明する。
【００５０】
パケット前処理部６ａ−１は、入力パケットに対する前処理が終了すると処理終了通知を同期確立部５ａに出力する（Ｓ２０１）。パケット前処理部６ａ−１から処理終了通知を受けると、同期確立部５ａは、アドレス検索部７ａ−２に対する所定時間の計測を開始する（Ｓ２０２）。
【００５１】
パケット前処理部６ａ−２は、入力パケットに対する前処理が終了すると処理終了通知を同期確立部５ａに出力する（Ｓ２０３）。パケット前処理部６ａ−２から処理終了通知を受けると、同期確立部５ａは、アドレス検索部７ａ−３に対する所定時間の計測を開始する（Ｓ２０４）。
【００５２】
アドレス検索部７ａ−２に対する所定時間の計測が終了すると、同期確立部５ａは、検索開始指示をアドレス検索部７ａ−２に出力する（Ｓ２０５）。検索開始指示を受けると、アドレス検索部７ａ−２はアドレス検索処理を開始する。
【００５３】
パケット前処理部６ａ−３は、入力パケットに対する前処理が終了すると処理終了通知を同期確立部５ａに出力する（Ｓ２０６）。パケット前処理部６ａ−３から処理終了通知を受けると、同期確立部５ａは、アドレス検索部７ａ−１に対する所定時間の計測を開始する（Ｓ２０７）。
【００５４】
アドレス検索部７ａ−３に対する所定時間の計測が終了すると、同期確立部５ａは、検索開始指示をアドレス検索部７ａ−３に出力する（Ｓ２０８）。検索開始指示を受けると、アドレス検索部７ａ−３はアドレス検索処理を開始する。
【００５５】
パケット前処理部６ａ−１は、入力パケットに対する前処理が終了すると処理終了通知を同期確立部５ａに出力する（Ｓ２０９）。パケット前処理部６ａ−１から処理終了通知を受けると、同期確立部５ａは、アドレス検索部７ａ−２に対する所定時間の計測を開始する（Ｓ２１０）。
【００５６】
アドレス検索部７ａ−１に対する所定時間の計測が終了すると、同期確立部５ａは、検索開始指示をアドレス検索部７ａ−１に出力する（Ｓ２１１）。検索開始指示を受けると、アドレス検索部７ａ−１はアドレス検索処理を開始する。
【００５７】
このように同期確立部５ａは、パケット前処理部６ａ−１〜６ａ−３から検索終了通知を受けてから所定時間が経過した後に、予め定められた処理順に従って検索終了通知を出力したパケット前処理部６ａ−１〜６ａ−３の次の処理順のアドレス検索部７ａ−１〜７ａ−３に検索開始指示を出力する動作を繰り返す。
【００５８】
なお、図５では、アドレス検索部７ａ−２，７ａ−３に検索開始指示を出力する前に、パケット前処理部６ａ−２，６ａ−３から処理終了通知が出力される場合を例に挙げて説明したがこれに限るものではなく、同期確立部５ａは、処理終了通知を受けてから所定時間を経過した後に、処理出力通知を出力したパケット前処理部６ａ−１〜６ａ−３の次の処理順のアドレス検索部７ａ−１〜７ａ−３に検索開始通知を出力すればよい。たとえば、同期確立部５ａは、パケット前処理部６ａ−１から処理終了通知を受けてから所定時間が経過した後であれば、次の処理順のパケット前処理部６ａ−１から処理終了通知を受けていなくても、アドレス検索部７ａ−２に検索開始通知を出力する。
【００５９】
以上説明したように、この実施の形態３では、同期確立部５ａが、パケット前処理部６ａ−１〜６ａ−３から出力される処理通知である処理終了通知を受けてから所定時間が経過した後に、予め定められた処理順に従って処理終了通知を出力したパケット前処理部６ａ−１〜６ａ−３の次の処理順のアドレス検索部７ａ−１〜７ａ−３に検索開始指示を出力するようにしているので、複数のアドレス検索部７ａ−１〜７ａ−３によってアドレス検索処理を並列に行なうアドレス検索装置において、アドレス検索部７ａ−１〜７ａ−３が共通にアクセスするアドレステーブル４のデータが変更された場合でも、アドレス検索処理を並列に実行しつつ、パケットの順序逆転の発生を防止することができる。
【００６０】
実施の形態４．
実施の形態３では、同期確立部５ａがパケット前処理部６ａ−１〜６ａ−３からの処理終了通知を受けてから所定時間が経過した後に、予め定められた処理順に従って処理終了通知を出力したパケット前処理部６ａ−１〜６ａ−３の次の処理順のアドレス検索部７ａ−１〜７ａ−３に検索開始指示を出力するようにしたが、パケット前処理部６ａ−１〜６ａ−３が、入力パケットに対する前処理を終了してから所定時間経過後に処理終了通知を同期確立部５ａに出力するようにしてもよい。この場合、同期確立部５ａは、処理終了通知を受けると直ちに、予め定められた処理順に従って処理終了通知を出力したパケット前処理部６ａ−１〜６ａ−３の次の処理順のアドレス検索部７ａ−１〜７ａ−３に検索開始指示を出力する。
【００６１】
これにより、複数のアドレス検索部７ａ−１〜７ａ−３によってアドレス検索処理を並列に行なうアドレス検索装置において、アドレス検索部７ａ−１〜７ａ−３が共通にアクセスするアドレステーブル４のデータが変更された場合でも、アドレス検索処理を並列に実行しつつ、パケットの順序逆転の発生を防止することができる。
【００６２】
実施の形態５．
図６および図７を用いてこの発明にかかる実施の形態５を説明する。図６は、この発明にかかる実施の形態５のアドレス検索装置の構成を示すブロック図である。図６に示したアドレス検索装置は、図１に示した実施の形態１のアドレス検索装置のアドレス検索部７−１〜７−３の代わりにアドレス検索部７ｂ−１〜７ｂ−３を備え、同期確立部５が削除されている。図１に示した実施の形態１のアドレス検索装置と同じ機能を持つ構成部分には同一符号を付し、重複する説明は省略する。
【００６３】
アドレス検索部７ｂ−１〜７ｂ−３は、予め定められた処理順に従って次の処理順のアドレス検索部７ｂ−１〜７ｂ−３に処理通知として処理終了通知を出力するとともに、一つ前のアドレス検索部７ｂ−１〜７ｂ−３から処理終了通知を受けるとアドレス検索処理を開始する。
【００６４】
つぎに、この発明にかかる実施の形態５のアドレス検索装置の動作を説明する。なお、この発明にかかる実施の形態５のアドレス検索装置の動作は、実施の形態１のアドレス検索装置のアドレス検索が同期確立部５を介して制御されているのに対して、他のアドレス検索部７ｂ−１〜７ｂ−３の検索終了通知に基づいて制御されるものであるので、図７のシーケンス図を参照して、検索終了通知に基づいてアドレス検索部７ｂ−１〜７ｂ−３を制御する動作のみを説明する。
【００６５】
アドレス検索処理が終了すると、アドレス検索部７ｂ−１は、検索終了通知をアドレス検索部７ｂ−２に出力する（Ｓ３０１）。検索終了通知を受けてアドレス検索部７ｂ−２は、アドレス検索処理を行ない（Ｓ３０２）、アドレス検索処理が終了すると検索終了通知をアドレス検索部７ｂ−３に出力する（Ｓ３０３）。
【００６６】
検索終了通知を受けてアドレス検索部７ｂ−３は、アドレス検索処理を行ない（Ｓ３０４）、アドレス検索処理が終了すると終了通知をアドレス検索部７ｂ−１に出力する（Ｓ３０５）。検索終了通知を受けてアドレス検索部７ｂ−１はアドレス検索処理を開始する（Ｓ３０６）。
【００６７】
このようにアドレス検索部７ｂ−１〜７ｂ−３は、１つ前の処理順のアドレス検索部７ｂ−１〜７ｂ−３から検索終了通知を受けるとアドレス検索処理を開始し、アドレス検索処理が終了すると、予め定められた処理順に従って次の処理順のアドレス検索部７ｂ−１〜７ｂ−３に検索終了通知を出力する動作を繰り返す。
【００６８】
以上説明したように、この実施の形態５では、１つ前の処理順のアドレス検索部７ｂ−１〜７ｂ−３から検索終了通知を受けるとアドレス検索処理を開始し、アドレス検索処理が終了すると、予め定められた処理順に従って次の処理順のアドレス検索部７ｂ−１〜７ｂ−３に検索終了通知を出力するようにしているので、複数のアドレス検索部７ｂ−１〜７ｂ−３によってアドレス検索処理を並列に行なうアドレス検索装置において、アドレス検索部７ｂ−１〜７ｂ−３が共通にアクセスするアドレステーブル４のデータが変更された場合でも、パケットの順序逆転の発生を防止することができる。
【００６９】
実施の形態６．
実施の形態５では、アドレス検索部７ｂ−１〜７ｂ−３は、１つ前の処理順のアドレス検索部７ｂ−１〜７ｂ−３に検索終了通知を出力して、順次アドレス検索処理を行なうようにしたが、検索終了通知の代わりにアドレス検索処理を開始する前に検索開始通知を出力してもよい。
【００７０】
これにより、複数のアドレス検索部７ｂ−１〜７ｂ−３によってアドレス検索処理を並列に行なうアドレス検索装置において、アドレス検索部７ｂ−１〜７ｂ−３が共通にアクセスするアドレステーブル４のデータが変更された場合でも、アドレス検索処理を並列に実行しつつ、パケットの順序逆転の発生を防止することができる。
【００７１】
実施の形態７．
図８および図９を参照してこの発明の実施の形態７を説明する。図８は、この発明にかかる実施の形態７のアドレス検索装置の構成を示すブロック図である。この発明にかかる実施の形態７のアドレス検索装置は、図６に示した実施の形態５のアドレス検索装置のパケット前処理部６−１〜６−３およびアドレス検索部７ｂ−１〜７ｂ−３の代わりに、パケット前処理部６ｂ−１〜６ｂ−３およびアドレス検索部７ｃ−１〜７ｃ−３を備えている。図６に示した実施の形態５と同じ機能を持つ構成部分には同一符号を付し、重複する説明は省略する。
【００７２】
パケット前処理部６ｂ−１〜６ｂ−３は、実施の形態５のパケット前処理部６−１〜６−３の機能に加えて、入力パケットに対する前処理（入力パケットからアドレス検索に必要な情報を抽出するなど、アドレス検索処理の前に行なうべき処理）が終了して所定時間が経過した後に、予め定められた処理順に従って次の処理順のアドレス検索部７ｃ−１〜７ｃ−３に処理終了通知を出力する機能を備えている。所定時間は、パケット前処理部６ｂ−１〜６ｂ−３が入力パケットに対する前処理を終了してからアドレス検索部７ｃ−１〜７ｃ−３がアドレステーブル４にアクセスしてアドレス検索処理を開始するために必要な時間以上の時間とする。アドレス検索部７ｃ−１〜７ｃ−３は、処理終了通知を受けるとアドレス検索処理を開始する。
【００７３】
つぎに、この発明にかかる実施の形態７のアドレス検索装置の動作を説明する。なお、この発明にかかる実施の形態７のアドレス検索装置の動作は、実施の形態３のアドレス検索装置のアドレス検索が同期確立部５ａを介して制御されるのに対して、パケット前処理部６ｂ−１〜６ｂ−３からの処理終了通知に基づいて制御されるものであるので、図９のシーケンス図を参照して、処理終了通知に基づいてアドレス検索部７ｃ−１〜７ｃ−３を制御する動作のみを説明する。
【００７４】
パケット前処理部６ｂ−１は、入力パケットに対する前処理が終了すると所定時間の計測を開始する（Ｓ４０１）。所定時間の計測が終了すると、パケット前処理部６ｂ−１は、アドレス検索部７ｃ−２に処理終了通知を出力する（Ｓ４０２）。処理終了通知を受けると、アドレス検索部７ｃ−２は、アドレス検索処理を開始する。
【００７５】
パケット前処理部６ｂ−２は、入力パケットに対する前処理が終了すると所定時間の計測を開始する（Ｓ４０３）。所定時間の計測が終了すると、パケット前処理部６ｂ−２は、アドレス検索部７ｃ−３に処理終了通知を出力する（Ｓ４０４）。処理終了通知を受けると、アドレス検索部７ｃ−３は、アドレス検索処理を開始する。
【００７６】
パケット前処理部６ｂ−３は、入力パケットに対する前処理が終了すると所定時間の計測を開始する（Ｓ４０５）。所定時間の計測が終了すると、パケット前処理部６ｂ−３は、アドレス検索部７ｃ−１に処理終了通知を出力する（Ｓ４０６）。処理終了通知を受けると、アドレス検索部７ｃ−１は、アドレス検索処理を開始する。
【００７７】
パケット前処理部６ｂ−１は、入力パケットに対する前処理が終了すると所定時間の計測を開始する（Ｓ４０７）。所定時間の計測が終了すると、パケット前処理部６ｂ−１は、アドレス検索部７ｃ−２に処理終了通知を出力する（Ｓ４０８）。処理終了通知を受けると、アドレス検索部７ｃ−２は、アドレス検索処理を開始する。
【００７８】
このようにパケット前処理部６ｂ−１〜６ｂ−３は、入力パケットに対する前処理が終了すると所定時間が経過した後に、予め定められた処理順に従って次の処理順のアドレス検索部７ｃ−１〜７ｃ−３に処理終了通知を出力し、アドレス検索部７ｃ−１〜７ｃ−３は処理終了通知を受けるとアドレス検索処理を開始する動作を繰り返す。
【００７９】
以上説明したように、この実施の形態７では、パケット前処理部６ｂ−１〜６ｂ−３は、入力パケットに対する前処理が終了すると所定時間が経過した後に、予め定められた処理順に従って次の処理順のアドレス検索部７ｃ−１〜７ｃ−３に処理終了通知を出力するようにしているので、複数のアドレス検索部７ｃ−１〜７ｃ−３によってアドレス検索処理を並列に行なうアドレス検索装置において、アドレス検索部７ｃ−１〜７ｃ−３が共通にアクセスするアドレステーブル４のデータが変更された場合でも、アドレス検索処理を並列に実行しつつ、パケットの順序逆転の発生を防止することができる。
【００８０】
実施の形態８．
実施の形態７では、パケット前処理部６ｂ−１〜６ｂ−３が入力パケットに対する前処理が終了してから所定時間が経過した後に、予め定められた処理順に従って次の処理順のアドレス検索部７ｃ−１〜７ｃ−３に処理終了通知を出力するようにしたが、パケット前処理部６ｂ−１〜６ｂ−３が入力パケットに対する前処理が終了してから直ちにアドレス検索部７ｃ−１〜７ｃ−３に処理終了通知を出力し、アドレス検索部７ｃ−１〜７ｃ−３が、処理終了通知を受けてから所定時間が経過した後に、アドレス検索処理を開始するようにしてもよい。
【００８１】
これにより、複数のアドレス検索部７ｃ−１〜７ｃ−３によってアドレス検索処理を並列に行なうアドレス検索装置において、アドレス検索部７ｃ−１〜７ｃ−３が共通にアクセスするアドレステーブル４のデータが変更された場合でも、アドレス検索処理を並列に実行しつつ、パケットの順序逆転の発生を防止することができる。
【産業上の利用可能性】
【００８２】
以上のように、本発明にかかるアドレス検索装置は、ＩＰ通信におけるパケットの並列処理に有用であり、特に、共通のアドレステーブルを用いてパケットの転送先となるアドレスを選択する場合に適している。
【図面の簡単な説明】
【００８３】
【図１】この発明にかかる実施の形態１のアドレス検索装置の構成を示すブロック図である。
【図２】この発明にかかる実施の形態１のアドレス検索装置の動作を説明するためのシーケンス図である。
【図３】この発明にかかる実施の形態２のアドレス検索装置の動作を説明するためのシーケンス図である。
【図４】この発明にかかる実施の形態３のアドレス検索装置の構成を示すブロック図である。
【図５】この発明にかかる実施の形態３のアドレス検索装置の動作を説明するためのシーケンス図である。
【図６】この発明にかかる実施の形態５のアドレス検索装置の構成を示すブロック図である。
【図７】この発明にかかる実施の形態５のアドレス検索装置の動作を説明するためのシーケンス図である。
【図８】この発明にかかる実施の形態７のアドレス検索装置の構成を示すブロック図である。
【図９】この発明にかかる実施の形態７のアドレス検索装置の動作を説明するためのシーケンス図である。
【符号の説明】
【００８４】
１  パケット分離部
２−１，２−２，２−３  並列処理部
３  パケット多重部
４  アドレステーブル
５，５ａ  同期確立部
６−１，６−２，６−３，６ａ−１，６ａ−２，６ａ−３，６ｂ−１，６ｂ−２，６ｂ−３  パケット前処理部
７−１，７−２，７−３，７ａ−１，７ａ−２，７ａ−３，７ｂ−１，７ｂ−２，７ｂ−３，７ｃ−１，７ｃ−２，７ｃ−３  アドレス検索部
８−１，８−２，８−３  パケット後処理部
【図１】
2006148303.tif 000003
【図２】
2006148303.tif 000004
【図３】
2006148303.tif 000005
【図４】
2006148303.tif 000006
【図５】
2006148303.tif 000007
【図６】
2006148303.tif 000008
【図７】
2006148303.tif 000009
【図８】
2006148303.tif 000010
【図９】
2006148303.tif 000011