(57)【要約】【課題】  ＶＰＮ対応に独立したテーブルを用い、ＶＰＮ毎に並列に検索することにより、１つの宛先アドレスが複数のＶＰＮに属する利用形態を許容すると共に、検索時間を短縮する。【解決手段】  ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、入力ＩＰパケットのＶＰＮ識別情報に基づきこの複数の前記テーブルの中から当該ＩＰパケットが属するＶＰＮに対応する前記テーブルを選択する手段と、この選択する手段により選択された前記テーブルに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段とを備える。【選択図】  図１
2005051648.tif 000002
【特許請求の範囲】
【請求項１】
複数のＶＰＮユーザが、独立したＩＰアドレス体系を用いて、１つのネットワークで、仮想的に独立のネットワークを構成するＶＰＮ(Virtual Private Network)におけるテーブル検索装置において、
ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、
入力ＩＰパケットのＶＰＮ識別情報に基づきこの複数の前記テーブルの中から当該ＩＰパケットが属するＶＰＮに対応する前記テーブルを選択する手段と、
この選択する手段により選択された前記テーブルに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段と
を備えたことを特徴とするＶＰＮ用テーブル検索装置。
【請求項２】
複数のＶＰＮユーザが、独立したＩＰアドレス体系を用いて、１つのネットワークで、仮想的に独立のネットワークを構成するＶＰＮにおけるテーブル検索装置において、
ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、
この複数のテーブルが格納されたメモリと、
このメモリ内における複数の前記テーブルの格納先頭位置を示すポインタ値がＶＰＮ対応に記録されたポインタテーブルと、
入力ＩＰパケットのＶＰＮ識別情報に基づきこのポインタテーブルから当該ＩＰパケットが属するＶＰＮに対応するポインタ値を選択する手段と、
この選択する手段により選択されたポインタ値に基づき前記メモリから前記テーブルを読み出す手段と、
この読み出す手段により読み出された前記テーブルに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段と
を備えたことを特徴とするＶＰＮ用テーブル検索装置。
【請求項３】
複数のＶＰＮユーザが、独立したＩＰアドレス体系を用いて、１つのネットワークで、仮想的に独立のネットワークを構成するＶＰＮにおけるテーブル検索装置において、
ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、
複数の前記テーブルがそれぞれ格納された複数のメモリと、
このメモリに格納された前記テーブルに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定する複数のテーブル検索手段と、
１以上の入力ＩＰパケットを一時蓄積する手段と、
この一時蓄積する手段に蓄積されたＩＰパケットを読み出してそのＶＰＮ識別情報に対応するＶＰＮの前記テーブルが格納された前記メモリを選択し複数の前記テーブル検索手段のいずれかに当該選択された前記メモリに格納された前記テーブルを割当てる手段と
を備え、
複数の前記テーブル検索手段は、個々に他のテーブル検索手段と並行して処理を実行する手段を備えた
ことを特徴とするＶＰＮ用テーブル検索装置。
【請求項４】
複数のＶＰＮユーザが、独立したＩＰアドレス体系を用いて、１つのネットワークで、仮想的に独立のネットワークを構成するＶＰＮにおけるテーブル検索装置において、
ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、
到着したＩＰパケットのＶＰＮ識別情報に基づき当該ＩＰパケットの所属するＶＰＮの前記テーブルを当該ＩＰパケットのヘッダ情報に付加したデータを作成する手段と、
このデータに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段と
を備えたことを特徴とするＶＰＮ用テーブル検索装置。
【請求項５】
複数のＶＰＮユーザが、独立したＩＰアドレス体系を用いて、１つのネットワークで、仮想的に独立のネットワークを構成するＶＰＮにおけるテーブル検索装置において、
ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、
到着したＩＰパケットのＶＰＮ識別情報に基づき当該ＩＰパケットの所属するＶＰＮの前記テーブルを当該ＩＰパケットのヘッダ情報に付加したデータを作成する手段と、
このデータに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段と
を備え、
前記テーブル検索手段が複数タンデムに接続され、
複数タンデムに接続された前記テーブル検索手段により複数の前記データを並行に処理する手段を備えた
ことを特徴とするＶＰＮ用テーブル検索装置。
【請求項６】
複数のＶＰＮユーザが、独立したＩＰアドレス体系を用いて、１つのネットワークで、仮想的に独立のネットワークを構成するＶＰＮにおけるテーブル検索装置において、
ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、
到着したＩＰパケットのＶＰＮ識別情報に基づき当該ＩＰパケットの所属するＶＰＮの前記テーブルを当該ＩＰパケットのヘッダ情報に付加したデータを作成する手段と、
このデータに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段と
を備え、
前記テーブル検索手段が複数タンデムに接続され、
前記テーブルの検索領域が複数に分割され、
複数タンデムに接続された前記テーブル検索手段には、複数に分割された前記検索領域のいずれかが検索対象領域としてそれぞれ割当てられ、
複数タンデムに接続された前記テーブル検索手段により１つのデータを並行に処理する手段を備えた
ことを特徴とするＶＰＮ用テーブル検索装置。
【請求項７】
情報処理装置にインストールすることにより、その情報処理装置に、請求項１ないし６のいずれかに記載のＶＰＮ用テーブル検索装置の各手段に相応する機能を実現させることを特徴とするプログラム。
【請求項８】
請求項７記載のプログラムが記録された前記情報処理装置読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＶＰＮ(Virtual Private Network)における宛先アドレスに対応する出力ポートが記録されたテーブルの検索技術に関する。
【背景技術】
【０００２】
図７に従来のＶＰＮネットワークの構成を、図８に従来のルータの構成を示す。従来ネットワークでは基本的に、ＩＰアドレスを重複無く使用する形でＶＰＮを実現する。また、ルータでもこのＩＰアドレスをベースにルーティングを行う。
【０００３】
ＶＰＮを実現する場合は、あらかじめ登録されているＳＡ（ソース・アドレス）に許されているＤＡ（宛先アドレス）であることも監視され、他のＶＰＮから当該ＶＰＮへパケットが混入することも防いでいる（例えば、特許文献１または２参照）。図８に示すように、宛先アドレス（ＤＡ）に対応する出力ポート番号が記録されたテーブルを用いて、入力ＩＰパケットを所定の出力ポートに振り分ける。
【特許文献１】特開２０００−３５８０６４号公報
【特許文献２】特開２０００−３３２７８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来は、複数のＶＰＮが一つのテーブルに記録され、ＦＥ（フォワーディングエンジン）は、宛先アドレス（ＤＡ）に基づき出力ポートを決定する。このときに、例えば、記録されている宛先アドレスの最上段から順に検索を行い、入力ＩＰパケットの宛先アドレスと一致したところで出力ポートを決定する。
【０００５】
また、従来のＶＰＮは、図８に示すように、宛先アドレスによってＶＰＮが分類されている。したがって、前述したように、ＩＰアドレスを重複なく使用することが必要である。これは、１つの宛先アドレスが複数のＶＰＮに属することは許されていないことを意味する。
【０００６】
しかし、多種多様なＶＰＮの利用形態が要求される昨今では、１つの宛先アドレスが複数のＶＰＮに属するといったＶＰＮの利用形態も必要となる場合があり得る。例えば、ユーザ＃３はＶＰＮ＃１およびＶＰＮ＃２の双方に属しており、ＶＰＮ＃１のユーザ＃１からのＩＰパケットおよびＶＰＮ＃２のユーザ＃２からのＩＰパケットの双方をユーザ＃３が受け取るというＶＰＮ利用形態を実現しようとしても従来のＶＰＮは、このような要求に対応することは困難だった。
【０００７】
また、ＩＰアドレスの重複を許さないために、必然的に、ＩＰアドレスの一覧からなる１つの大規模なテーブルを用いることになる。このような１つの大規模なテーブルを用いて検索を行うと、テーブルのデータ量が膨大であるため、検索に長い処理時間を要する問題がある。
【０００８】
本発明は、このような背景に行われたものであって、ＶＰＮ対応に独立したテーブルを用い、ＶＰＮ毎に並列に検索することにより、１つの宛先アドレスが複数のＶＰＮに属する利用形態を許容することができると共に、検索時間を短縮することができるＶＰＮ用テーブル検索装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明はＶＰＮ毎に検索テーブルを備え、複数のパケットを同時に異なるＶＰＮ毎にテーブルから検索したり、パケットが検索するフィールドを限定して、そのフィールドを順にシフトすることにより、パイプライン構成することを主たる特徴とする。
【００１０】
すなわち、本発明は、複数のＶＰＮユーザが、独立したＩＰアドレス体系を用いて、１つのネットワークで、仮想的に独立のネットワークを構成するＶＰＮにおけるテーブル検索装置であって、本発明の特徴とするところは、ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、入力ＩＰパケットのＶＰＮ識別情報に基づきこの複数の前記テーブルの中から当該ＩＰパケットが属するＶＰＮに対応する前記テーブルを選択する手段と、この選択する手段により選択された前記テーブルに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段とを備えたところにある（請求項１）。
【００１１】
このように、ＶＰＮ対応にテーブルを設けることにより、１つの宛先アドレスが複数のＶＰＮに属するといった利用形態を許容することができると共に、検索すべきデータ量をＶＰＮ毎に分散させることができる。これにより、多種多様なＶＰＮ利用形態に対応できると共に、テーブルの検索時間を短縮することができる。
【００１２】
あるいは、本発明のＶＰＮ用テーブル検索装置は、ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、この複数のテーブルが格納されたメモリと、このメモリ内における複数の前記テーブルの格納先頭位置を示すポインタ値がＶＰＮ対応に記録されたポインタテーブルと、入力ＩＰパケットのＶＰＮ識別情報に基づきこのポインタテーブルから当該ＩＰパケットが属するＶＰＮに対応するポインタ値を選択する手段と、この選択する手段により選択されたポインタ値に基づき前記メモリから前記テーブルを読み出す手段と、この読み出す手段により読み出された前記テーブルに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段とを備えたことを特徴とする（請求項２）。
【００１３】
本発明では、ＶＰＮ対応に分かれた多数のテーブルを用意する必要があるが、このテーブルを格納するメモリは、例えば、１つ用意しておけばよく、経済的に本発明装置を実現することができる。また、テーブル検索を高速に行うためには、メモリは、高速アクセスに対応する必要があるが、高速アクセスに対応するメモリ部（例えば、キャッシュメモリ）は、全テーブルを格納しておくメモリとは別個に用意しておき、必要に応じてメモリからキャッシュメモリにデータを移してデータ検索すればよい。これにより、一部を高速アクセスに対応するメモリ部とするので、経済的に本発明装置を実現することができる。
【００１４】
あるいは、本発明のＶＰＮ用テーブル検索装置は、ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、複数の前記テーブルがそれぞれ格納された複数のメモリと、このメモリに格納された前記テーブルに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定する複数のテーブル検索手段と、１以上の入力ＩＰパケットを一時蓄積する手段と、この一時蓄積する手段に蓄積されたＩＰパケットを読み出してそのＶＰＮ識別情報に対応するＶＰＮの前記テーブルが格納された前記メモリを選択し複数の前記テーブル検索手段のいずれかに当該選択された前記メモリに格納された前記テーブルを割当てる手段とを備え、複数の前記テーブル検索手段は、個々に他のテーブル検索手段と並行して処理を実行する手段を備えたことを特徴とする（請求項３）。
【００１５】
このように、複数のＩＰパケットの出力ポート決定処理を並行して行うことにより、高速化を図ることができる。例えば、前記一時蓄積する手段からの読み出し速度は、前記テーブル検索手段の検索周期よりも短くてよい。その理由は、複数の前記テーブル検索手段が並行処理を行うので、１つのテーブル検索処理が終了していなくても、他のテーブル検索処理を開始することができるからである。
【００１６】
あるいは、本発明のテーブル検索装置は、ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、到着したＩＰパケットのＶＰＮ識別情報に基づき当該ＩＰパケットの所属するＶＰＮの前記テーブルを当該ＩＰパケットのヘッダ情報に付加したデータを作成する手段と、このデータに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段とを備えたことを特徴とする（請求項４）。
【００１７】
このように、ＩＰパケットの宛先アドレスとテーブルとを一体化することにより、データ検索に際してデータの取り扱いを簡単化することができる。また、これにより、データフロー形式での検索を実現することができる。
【００１８】
あるいは、本発明のテーブル検索装置は、ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、到着したＩＰパケットのＶＰＮ識別情報に基づき当該ＩＰパケットの所属するＶＰＮの前記テーブルを当該ＩＰパケットのヘッダ情報に付加したデータを作成する手段と、このデータに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段とを備え、前記テーブル検索手段が複数タンデムに接続され、複数タンデムに接続された前記テーブル検索手段により複数の前記データを並行に処理する手段を備えたことを特徴とする（請求項５）。
【００１９】
これにより、ＩＰパケットの宛先アドレスとテーブルとを一体化したデータを用いて、パイプライン制御を行い、複数のテーブル検索を並行して行うことにより、処理の高速化を図ることができる。
【００２０】
あるいは、本発明のテーブル検索装置は、ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブルと、到着したＩＰパケットのＶＰＮ識別情報に基づき当該ＩＰパケットの所属するＶＰＮの前記テーブルを当該ＩＰパケットのヘッダ情報に付加したデータを作成する手段と、このデータに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段とを備え、前記テーブル検索手段が複数タンデムに接続され、前記テーブルの検索領域が複数に分割され、複数タンデムに接続された前記テーブル検索手段には、複数に分割された前記検索領域のいずれかが検索対象領域としてそれぞれ割当てられ、複数タンデムに接続された前記テーブル検索手段により１つのデータを並行に処理する手段を備えたことを特徴とする（請求項６）。
【００２１】
これにより、ＩＰパケットの宛先アドレスとテーブルとを一体化したデータを用いて、パイプライン制御を行い、１つのテーブル検索を分割して並行に行うことにより、処理の高速化を図ることができると共に、検索領域を細分化することにより、個々のテーブル検索手段の処理負荷を少ないものとすることができるため、小規模な装置構成を実現することができる。
【００２２】
また、本発明の他の観点は、情報処理装置にインストールすることにより、その情報処理装置に、本発明のＶＰＮ用テーブル検索装置の各手段に相応する機能を実現させることを特徴とするプログラムである（請求項７）。
【００２３】
さらに、本発明の他の観点は、本発明のプログラムが記録された前記情報処理装置読取可能な記録媒体である（請求項８）。本発明のプログラムは本発明の記録媒体に記録されることにより、前記情報処理装置は、この記録媒体を用いて本発明のプログラムをインストールすることができる。あるいは、本発明のプログラムを保持するサーバからネットワークを介して直接前記情報処理装置に本発明のプログラムをインストールすることもできる。
【００２４】
これにより、汎用の情報処理装置を用いて、ＶＰＮ対応に独立したテーブルを用い、ＶＰＮ毎に並列に検索することにより、１つの宛先アドレスが複数のＶＰＮに属する利用形態を許容することができると共に、検索時間を短縮することができるＶＰＮ用テーブル検索装置を実現することができる。
【発明の効果】
【００２５】
以上説明したように、本発明によれば、ＶＰＮ対応に独立したテーブルを用い、ＶＰＮ毎に並列に検索することにより、１つの宛先アドレスが複数のＶＰＮに属する利用形態を許容することができると共に、検索時間を短縮することができるＶＰＮ用テーブル検索装置を実現することができる。
【発明を実施するための最良の形態】
【００２６】
（第一実施形態）
本発明の第一実施形態を図１および図２を参照して説明する。図１は第一実施形態のテーブル検索装置の構成図である。
【００２７】
第一実施形態のテーブル検索装置は、図１に示すように、ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブル１−１〜１−３と、入力ＩＰパケットのＶＰＮ識別情報に基づきこの複数のテーブル１−１〜１−３の中から当該ＩＰパケットが属するＶＰＮに対応するテーブル１−ｉ（ｉは自然数：１〜３）を選択するＶＰＮ選択部３と、このＶＰＮ選択部３により選択されたテーブル１−ｉに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索部２とを備えたことを特徴とする（請求項１）。
【００２８】
すなわち、最長一致検索を用いて、ＶＰＮ毎に同一のＩＰアドレスを用いるためにＶＰＮ毎にテーブル１−１〜１−３を備える。テーブル検索部２では、まず、ＶＰＮ識別情報で識別されたＶＰＮ毎のテーブル１−ｉをＶＰＮ選択部３で選択し、その後は、そのテーブル１−ｉの中で最長一致検索を行う。図２は、その論理的構成を示す図である。ＶＰＮ番号により、バイナリトリー自身を分岐させ、それぞれのＶＰＮ毎にバイナリートリーを独立して持つ。
【００２９】
ＶＰＮ識別情報は、ＩＰパケットのヘッダ情報に含まれる。ヘッダ情報の固定位置をＶＰＮ識別情報と定めた場合には、ＶＰＮ識別情報としては、単に、ＶＰＮ番号を表す値を表示するだけでよい。また、ヘッダ情報の任意の位置をＶＰＮ識別情報とする場合には、ＶＰＮ識別情報としては、ＶＰＮ識別情報であることを表す識別子とこれに続くＶＰＮ番号を表す値とで表示される。ＩＰヘッダの場合には、オプション領域の一部にＶＰＮ識別情報を書き込めばよい。
【００３０】
（第二実施形態）
本発明の第二実施形態を図３を参照して説明する。図３は第二実施形態のテーブル検索装置の構成図である。
【００３１】
第二実施形態のテーブル検索装置は、図３に示すように、ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブル１−１〜１−３と、この複数のテーブル１−１〜１−３が格納されたメモリ７と、このメモリ７内における複数のテーブル１−１〜１−３の格納先頭位置を示すポインタ値がＶＰＮ対応に記録されたポインタテーブル５と、入力ＩＰパケットのＶＰＮ識別情報に基づきこのポインタテーブル５から当該ＩＰパケットが属するＶＰＮに対応するポインタ値を選択する手段と、この選択する手段により選択されたポインタ値に基づきメモリ７からテーブル１−ｉを読み出す手段とを備えたＶＰＮ判定部４と、このＶＰＮ判定部４により読み出されキャッシュ部６に格納されたテーブル１−ｉに基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索部１２とを備えたことを特徴とする（請求項２）。
【００３２】
このように、ＶＰＮ判定部４では、ポインタテーブル５を検索し、当該ＶＰＮのポインタテーブル５に格納されたメモリの先頭アドレスを得る。例では、先頭アドレスによりＶＰＮ＃２のテーブル部分をキャッシュ部６にコピーしてテーブル検索を行う。
【００３３】
このことによって、高速のキャッシュメモリの大きさは小さくて済み、経済的、かつ、大規模なＶＰＮをサポートすることが可能である。
【００３４】
（第三実施形態）
第三実施形態のテーブル検索装置を図４を参照して説明する。図４は第三実施形態のテーブル検索装置の構成図である。
【００３５】
第三実施形態のテーブル検索装置は、図４に示すように、ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブル１−１〜１−４と、複数のテーブル１−１〜１−４がそれぞれ格納された複数のメモリ７−１〜７−４と、このメモリ７−１〜７−４に格納されたテーブル１−１〜１−４に基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定する複数のテーブル検索部２２−１〜２２−３と、１以上の入力ＩＰパケットを一時蓄積するパケット処理部８と、このパケット処理部８に蓄積されたＩＰパケットを読み出してそのＶＰＮ識別情報に対応するＶＰＮのテーブル１−ｉ（ｉは自然数：１〜４）が格納されたメモリ７−ｉを選択し複数のテーブル検索部２２−１〜２２−３のいずれかに当該選択されたメモリ７−ｉに格納されたテーブル１−ｉを割当てるＶＰＮ制御部９とを備え、複数のテーブル検索部２２−１〜２２−３は、個々に他のテーブル検索部と並行して処理を実行する手段を備えたことを特徴とする（請求項３）。
【００３６】
このように、パケット処理部８を有しており、複数の検索要求のあるパケットをストアする。ＶＰＮ制御部９では、現在処理をしていないＶＰＮのパケットであれば、空いているテーブル検索部２２−１〜２２−３（＃１〜＃３）のいずれかにパケットを転送すると同時に、該当するメモリ７−ｉへアクセスをさせる。
【００３７】
例では、テーブル検索部２２−１（＃１）にＶＰＮ＃７、テーブル検索部２２−２（＃２）にＶＰＮ＃５、テーブル検索部２２−３（＃３）にＶＰＮ＃１を格納し、検索を行っている。
【００３８】
ここで、テーブル検索部２２−１〜２２−３は複数パラレルに存在し、その数は、例えば、ＶＰＮの総数よりも少ない。また、テーブル検索部２２−１〜２２−３は同時動作することができる。メモリ７−１〜７−４もダイナミックに使用し、拡張性を有することを特徴とする。
【００３９】
（第四実施形態）
第四実施形態を図５を参照して説明する。図５は第四実施形態のテーブル検索装置の構成図である。
【００４０】
第四実施形態のテーブル検索装置は、図５に示すように、ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブル１−１〜１−３と、到着したＩＰパケットのＶＰＮ識別情報に基づき当該ＩＰパケットの所属するＶＰＮのテーブル１−ｉを当該ＩＰパケットのヘッダ情報に付加したデータ１１を作成するＩＰパケット到着部１０と、このデータ１１に基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索部３２とを備えたことを特徴とする（請求項４）。
【００４１】
このように、ＩＰパケットが到着するとＶＰＮを識別し、ＶＰＮ毎のテーブル１−１〜１−３もしくはその一部を読み出し、ＩＰパケットに付加する（接続する）。破線で囲まれた部分が実際のデータ１１となり、ＩＰヘッダにテーブル１−ｉが接続されている。これらのデータ１１はコントロール部１４を通してメモリ部１３に格納され、テーブル検索部３２によりデータフロー形式で検索される。
【００４２】
（第五実施形態）
本発明の第五実施形態を図５および図６を参照して説明する。図６は第五実施形態のテーブル検索装置の構成図である。図５におけるＩＰパケット到着部１０、テーブル１−１〜１−３、データ１１は、第五実施形態でも共通である。
【００４３】
第五実施形態のテーブル検索装置は、図６に示すように、ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブル１−１〜１−３と、到着したＩＰパケットのＶＰＮ識別情報に基づき当該ＩＰパケットの所属するＶＰＮのテーブル１−ｉを当該ＩＰパケットのヘッダ情報に付加したデータ１１を作成するＩＰパケット到着部１０と、このデータ１１に基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索部４２−１〜４２−３とを備え、テーブル検索部４２−１〜４２−３が複数タンデムに接続され、複数タンデムに接続されたテーブル検索部４２−１〜４２−３により複数のデータ１１を並行に処理するコントロール部１５を備えたことを特徴とする（請求項５）。
【００４４】
第五実施形態では、第四実施形態のようにデータフロー形式の検索となっており、データフローをパイプライン的に流す図６の例では、３ｓｔａｇｅであるが、最大必要検索段数に合わせてｓｔａｇｅを設けると、１クロック毎に次のＩＰパケットをメモリ部２３−１に入れて検索処理することもできる。
【００４５】
（第六実施形態）
第六実施形態を図５および図６を参照して説明する。図６は第五実施形態と共通である。
【００４６】
第六実施形態のテーブル検索装置は、図６に示すように、ＶＰＮ対応に設けられそれぞれ同一ＶＰＮに属する宛先のアドレスとその出力ポート番号とが記録された複数のテーブル１−１〜１−３と、到着したＩＰパケットのＶＰＮ識別情報に基づき当該ＩＰパケットの所属するＶＰＮのテーブル１−ｉを当該ＩＰパケットのヘッダ情報に付加したデータ１１を作成するＩＰパケット到着部１０と、このデータ１１に基づき前記ＩＰパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索部４２−１〜４２−３とを備え、テーブル検索部４２−１〜４２−３が複数タンデムに接続され、テーブル１−１〜１−３の検索領域が複数に分割され、複数タンデムに接続されたテーブル検索部４２−１〜４２−３には、複数に分割された前記検索領域のいずれかが検索対象領域としてそれぞれ割当てられ、複数タンデムに接続されたテーブル検索部４２−１〜４２−３により１つのデータを並行に処理するコントロール部１５を備えたことを特徴とする（請求項６）。
【００４７】
第六実施形態では、テーブル１−ｉの検索フィールドをＫ個に分割しておき、パイプライン毎に検索すべきビットをシフトさせることにより、個々のテーブル検索部４２−１〜４２−３の処理負荷を軽減させられるので、小規模な検索装置を用いることができる。
【００４８】
（第七実施形態）
本発明は、汎用の情報処理装置にインストールすることにより、その情報処理装置に本発明のテーブル検索装置の各手段に相応する機能を実現させるプログラムとして実現することができる（請求項７）。このプログラムは、記録媒体に記録されて情報処理装置にインストールされ（請求項８）、あるいは通信回線を介して情報処理装置にインストールされることにより当該情報処理装置に、テーブル１−１〜１−４、テーブル検索部２、１２、２２−１〜２２−３、３２、４２−１〜４２−３、ＶＰＮ選択部３、ＶＰＮ判定部４、ポインタテーブル５、キャッシュ部６、メモリ７、７−１〜７−４、パケット処理部８、ＶＰＮ制御部９、ＩＰパケット到着部１０、メモリ部１３、２３−１〜２３−３、コントロール部１４、１５にそれぞれ相応する機能を実現させることができる。
【産業上の利用可能性】
【００４９】
本発明によれば、ＶＰＮ対応に独立したテーブルを用い、ＶＰＮ毎に並列に検索することにより、１つの宛先アドレスが複数のＶＰＮに属する利用形態を許容することができると共に、検索時間を短縮することができるので、多種多様なＶＰＮ利用形態に対応することができ、ユーザの利便性を向上させることができる。
【図面の簡単な説明】
【００５０】
【図１】第一実施形態のテーブル検索装置の構成図。
【図２】第一実施形態の論理的バイナリートリーの構成図。
【図３】第二実施形態のテーブル検索装置の構成図。
【図４】第三実施形態のテーブル検索装置の構成図。
【図５】第四実施形態のテーブル検索装置の構成図。
【図６】第五および第六実施形態のテーブル検索装置の構成図。
【図７】従来のＶＰＮを説明するための図。
【図８】従来のルータを説明するための図。
【符号の説明】
【００５１】
１−１〜１−４  テーブル
２、１２、２２−１〜２２−３、３２、４２−１〜４２−３  テーブル検索部
３  ＶＰＮ選択部
４  ＶＰＮ判定部
５  ポインタテーブル
６  キャッシュ部
７、７−１〜７−４  メモリ
８  パケット処理部
９  ＶＰＮ制御部
１０  ＩＰパケット到着部
１１  データ
１３、２３−１〜２３−３  メモリ部
１４、１５  コントロール部
【図１】
2005051648.tif 000003
【図２】
2005051648.tif 000004
【図３】
2005051648.tif 000005
【図４】
2005051648.tif 000006
【図５】
2005051648.tif 000007
【図６】
2005051648.tif 000008
【図７】
2005051648.tif 000009
【図８】
2005051648.tif 000010