(57)【要約】【課題】ネットワーク中継装置の転送エンジン及び検索エンジンを１対多、多対１、多対多と可変に接続可能とする。【解決手段】クロスバスイッチ１０は、ルーティングプロセッサ２０間でパケットを転送する。ルーティングプロセッサ２０は、パケットからパケットヘッダを抽出する転送エンジン３０と、パケットの出力方路を検索する検索エンジン４０と、パケットを出力方路に従い転送するスイッチエンジン５０を有する。検索エンジン４０と転送エンジン３０は、１対１、多対１、１対多のいずれかで接続される。ルーティングプロセッサ２０は、転送エンジン３０と検索エンジン４０が、１対多、多対１、多対多と可変に接続されるようなアーキテクチャである。転送エンジン３０及び検索エンジン４０は、それぞれ、アーキテクチャに応じた所定の設定に従い、１対多、多対１、多対多で接続可能とするように、相互のエンジンを可変に接続するための接続部を備える。【選択図】  図１
2004260365.tif 000002
【特許請求の範囲】
【請求項１】
回線から入力されたパケットのヘッダ情報からパケットの転送先を検索し、パケットを転送先へ転送するための複数のルーティングプロセッサと、前記ルーティングプロセッサ間でパケットを転送するクロスバスイッチとを備えたネットワーク中継装置において、
前記ルーティングプロセッサは、
パケットを記憶するパケットバッファを有し、回線から受信したパケットを該パケットバッファに格納し、パケットからパケットヘッダを抽出するひとつ又は複数の転送エンジンと、
パケットヘッダ中の宛先アドレスに対応して出力スイッチエンジン番号及び出力転送エンジン番号及び出力回線番号を含む出力方路情報を記憶したルーティングテーブルを有し、パケットヘッダ中の宛先アドレスに従い該ルーティングテーブルから出力方路情報を検索して、前記転送エンジンに出力方路情報を送るひとつ又は複数の検索エンジンと、
前記転送エンジンにより指定された出力方路情報に従い、前記転送エンジンから受けたパケットを出力転送エンジン番号に対応する前記転送エンジンへ転送するスイッチエンジンと
を備え、
前記ルーティングプロセッサは、前記転送エンジンと前記検索エンジンとが、１対多又は多対１又は多対多に接続されるアーキテクチャが採用され、
前記転送エンジン及び前記検索エンジンは、それぞれ、該アーキテクチャに応じた所定の設定に従い、ひとつの前記転送エンジンに対して複数の前記検索エンジンを接続可能とするか、複数の前記転送エンジンに対してひとつの前記検索エンジンを接続可能とするか、複数の前記転送エンジンに対して複数の前記検索エンジンを接続可能とするように、相互のエンジンを可変に接続するための接続部をさらに備えた前記ネットワーク中継装置。
【請求項２】
前記スイッチエンジンが出力するデータは、出力方路情報及びパケットを含む請求項１に記載のネットワーク中継装置。
【請求項３】
前記クロスバスイッチからパケットを受信する側の前記ルーティングプロセッサは、
前記スイッチエンジンが、前記クロスバスイッチから出力方路情報及びパケットを含むデータを受信し、
前記転送エンジンは、前記スイッチエンジンから受信したパケットを前記パケットバッファに格納し、出力方路情報及びパケットヘッダを抽出して、前記検索エンジンに送り、出力回線番号に従いパケットを転送する請求項１に記載のネットワーク中継装置。
【請求項４】
前記検索エンジンは、出力方路情報に基づきフィルタリング又はサービス品質に関する処理を行う請求項３に記載のネットワーク中継装置。
【請求項５】
前記転送エンジンは、さらに、入力回線番号及び入力転送エンジン番号をさらに前記検索エンジンに送り、
前記検索エンジンは、さらに、入力回線番号及び入力転送エンジン番号に基づきフィルタリング又はサービス品質に関する処理を行う請求項１に記載のネットワーク中継装置。
【請求項６】
前記接続部は、
前記転送エンジン及び前記検索エンジンの対応関係を示すモードを記憶するモードレジスタと、
前記モードレジスタにより定められたモードに従い、前記転送エンジン又は前記検索エンジンのポートをひとつ又は複数の系統として選択的に有効とするためのセレクタと
を備えた請求項１に記載のネットワーク中継装置。
【請求項７】
前記接続部は、前記セレクタにより、
第１モードは全てのポートを１系統として有効とし、
第２モードは半分のポートを２系統として有効とし、
第３モードは１／４のポートを４系統として有効とする請求項６に記載のネットワーク中継装置。
【請求項８】
前記検索エンジン内のルーティングテーブルは、ネットワーク中継装置が備える前記スイッチエンジン及び前記転送エンジンに対して、一意に定めた識別情報を割り当てた番号を用いている請求項１に記載のネットワーク中継装置。
【請求項９】
前記転送エンジンと前記検索エンジンの各前記接続部間は、同時双方向インタフェースにより接続されており、１本の物理回線で双方向通信を可能とする請求項１に記載のネットワーク中継装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、高速高ポート密度なネットワーク中継装置に係り、特に、検索エンジンと転送エンジンが１対多、多対１、多対多と可変に接続可能な高速高ポート密度なネットワーク中継装置に関する。
【０００２】
【従来の技術】
一般に、ネットワークシステムにおいては、複数のネットワークをルータ等のネットワーク中継装置を介して接続し、パケットを中継している。ネットワーク中継装置は、宛先アドレスに基づき転送先を決定し、転送先のルータ又はホスト又はクライアントが接続されている回線にパケットを出力する。
【０００３】
図１０は、従来のネットワーク中継装置の構成例を示す図である。ネットワーク中継装置は、例えば、パケットバッファを有する転送エンジンと、ルーティングテーブルを有する検索エンジンと、スイッチエンジンとを含むルーティングプロセッサ、及び、複数のルーティングプロセッサ間でパケットを中継するクロスバスイッチを備えている。また、ルーティングプロセッサの転送エンジンと検索エンジンは、それぞれ１対１で接続されている。
【０００４】
まず、転送エンジンは、回線からパケットを受信すると、受信したパケットをパケットバッファに格納する（▲１▼）。また、転送エンジンは、パケットヘッダを抽出し検索エンジンに送信する（▲２▼）。検索エンジンは、転送エンジンからのパケットヘッダを基にルーティングテーブルを検索し、出力方路を決定する（▲３▼）。ルーティングテーブルには、例えば、宛先ＩＰアドレスに対応して出力スイッチエンジン及び出力回線を示す情報が記憶されている。検索エンジンは、決定した出力方路を転送エンジンに送信する（▲４▼）。また、検索エンジンは、パケットヘッダに基づきパケットを廃棄するフィルタリングやＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ、サービス品質）に関する処理を行う場合もある。転送エンジンは、スイッチエンジンに向かって、出力方路とパケットバッファ内のパケットを送信する（▲５▼）。スイッチエンジンは、指定された方路へパケットをスイッチングする（▲６▼）。
【０００５】
また、ネットワーク中継装置全体の中継処理性能を向上させる装置として、パケットのヘッダ情報からパケットの宛先を検索しパケットを転送するパケット転送ユニットを各ルーティングプロセッサ内に複数個設け、ネットワークインタフェース及びクロスバスイッチから入ってきたパケットを、パケット単位にパケット転送ユニットに振り分けることにより、パケットの転送処理ユニットの並列度に応じパケット転送処理を高速化した装置が提案されている（例えば、特許文献１参照）。
【特許文献１】
特開２００１−２１１２０３号公報
【０００６】
【発明が解決しようとする課題】
従来のネットワーク中継装置は、転送エンジンと検索エンジンが１対１で固定的に接続されている。ネットワーク中継装置の検索エンジンは、ネットワークに関する重要な情報を保持するため、信頼性向上のために検索エンジンを二重化するニーズがある。従来のネットワーク装置においては、検索エンジンを二重化すると、１対１で接続されている転送エンジンも二重化する必要がある。また、転送エンジンは回線と接続されているため、回線も二重化することになり、ネットワーク中継装置の構成を変更するだけでは二重化を実現することができない課題があった。
【０００７】
また、従来のネットワーク中継装置では、ポート数を増やすために転送エンジン数を増やすと、１対１で接続されている検索エンジン数を増やす必要がある。一般に検索エンジンは高価であり、検索エンジン数を増やすと装置全体も高価になる課題があった。
【０００８】
さらに、転送エンジンと検索エンジンの接続を１対多、多対１とするネットワーク中継装置を製作する場合、接続状況に応じて転送エンジンや検索エンジンのＬＳＩ等を開発する必要があり、開発コストがかかるという課題があった。
【０００９】
本発明は、以上の点に鑑み、１対多又は多対１又は多対多と可変に接続可能な転送エンジン及び検索エンジンを有するネットワーク中継装置を提供することを目的とする。また、本発明は、同じ構造の転送エンジンと検索エンジンで複数の接続パターンを選択可能なネットワーク中継装置を提供することを目的とする。さらに、本発明は、転送エンジンと検索エンジン間のパケットヘッダ及び出力方路を効率的に送受信することを目的とする。
【００１０】
【課題を解決するための手段】
本発明によると、  回線から入力されたパケットのヘッダ情報からパケットの転送先を検索し、パケットを転送先へ転送するための複数のルーティングプロセッサと、前記ルーティングプロセッサ間でパケットを転送するクロスバスイッチとを備えたネットワーク中継装置において、
前記ルーティングプロセッサは、
パケットを記憶するパケットバッファを有し、回線から受信したパケットを該パケットバッファに格納し、パケットからパケットヘッダを抽出するひとつ又は複数の転送エンジンと、
パケットヘッダ中の宛先アドレスに対応して出力スイッチエンジン番号及び出力転送エンジン番号及び出力回線番号を含む出力方路情報を記憶したルーティングテーブルを有し、パケットヘッダ中の宛先アドレスに従い該ルーティングテーブルから出力方路情報を検索して、前記転送エンジンに出力方路情報を送るひとつ又は複数の検索エンジンと、
前記転送エンジンにより指定された出力方路情報に従い、前記転送エンジンから受けたパケットを出力転送エンジン番号に対応する前記転送エンジンへ転送するスイッチエンジンと
を備え、
前記ルーティングプロセッサは、前記転送エンジンと前記検索エンジンとが、１対多又は多対１又は多対多に接続されるアーキテクチャが採用され、
前記転送エンジン及び前記検索エンジンは、それぞれ、該アーキテクチャに応じた所定の設定に従い、ひとつの前記転送エンジンに対して複数の前記検索エンジンを接続可能とするか、複数の前記転送エンジンに対してひとつの前記検索エンジンを接続可能とするか、複数の前記転送エンジンに対して複数の前記検索エンジンを接続可能とするように、相互のエンジンを可変に接続するための接続部をさらに備えた前記ネットワーク中継装置が提供される。
【００１１】
【発明の実施の形態】
図１は、ネットワーク中継装置の構成図である。ネットワーク中継装置は、クロスバスイッチ１０と、複数のルーティングプロセッサ２０とを備える。ルーティングプロセッサ２０は、転送エンジン３０、検索エンジン４０、スイッチエンジン５０を有する。また、転送エンジン３０は、それぞれ複数の回線と接続されている。ルーティングプロセッサ２０は、例えば、転送エンジン３０と検索エンジン４０が１対１で接続されたタイプＡ、多対１で接続されたタイプＢ、１対多で接続されたタイプＣの接続パターンで構成される。
【００１２】
本実施の形態におけるルーティングプロセッサ２０は、転送エンジン３０と検索エンジン４０が、１対多又は多対１と可変に接続されるようなアーキテクチャである。転送エンジン３０及び検索エンジン４０は、それぞれ、アーキテクチャに応じた所定の設定に従い、ひとつの転送エンジン３０に対して複数の検索エンジン４０を接続可能とするか、複数の転送エンジン３０に対してひとつの検索エンジン４０を接続可能とするように、相互のエンジンを可変に接続するための接続部を備えている。
【００１３】
なお、図１には、タイプＡ、Ｂ、Ｃのルーティングプロセッサ２０をひとつずつ示しているが、ネットワーク中継装置は、ひとつのタイプのみ、又はタイプＡ〜Ｃの適宜の組み合わせのルーティングプロセッサ２０を備えることができる。
【００１４】
クロスバスイッチ１０は、スイッチエンジンを有し、ルーティングプロセッサ２０との間でパケットを転送する。クロスバスイッチ１０は、ルーティングプロセッサ２０のスイッチエンジン５０からパケット及び出力方路情報を受け取ると、出力方路情報の出力スイッチエンジン番号に応じたスイッチエンジン５０に当該パケットを転送する。なお、クロスバスイッチ１０は、例えば、現用系と予備系を有する多重化構成であってもよい。また、クロスバスイッチ１０のスイッチエンジンと、ルーティングプロセッサ２０のスイッチエンジン５０は、同じ構造のスイッチエンジンを用いることができる。
【００１５】
ルーティングプロセッサ２０の転送エンジン３０は、パケットを記憶するパケットバッファを有し、回線から受信したパケットをパケットバッファに格納する。また、転送エンジン３０は、パケットからパケットヘッダを抽出し、検索エンジン４０へ送る。転送エンジン３０は、検索エンジン４０から出力方路情報を受け取り、受け取った出力方路情報とパケットバッファに格納されているパケットをスイッチエンジン５０に転送する。また、転送エンジン３０は、入力回線番号及び入力転送エンジン番号をさらに検索エンジン４０に送ってもよい。入力回線番号及び入力転送エンジン番号は、例えば、検索エンジン４０でのフィルタリングやＱｏＳに関する処理に使用される。
【００１６】
検索エンジン４０は、パケットヘッダ中の宛先アドレスに対応して出力スイッチエンジン番号及び出力転送エンジン番号及び出力回線番号を含む出力方路情報を記憶したルーティングテーブルを有する。検索エンジン４０は、転送エンジン３０から受け取ったパケットヘッダ中の宛先アドレスに従い、ルーティングテーブルから出力方路情報を検索して、転送エンジン３０に送る。また、検索エンジン４０は、転送エンジン３０から受け取った入力回線番号及び入力転送エンジン番号、及び／又は、出力方路情報に基づき、フィルタリング又はＱｏＳに関する処理を行う。
【００１７】
スイッチエンジン５０は、検索エンジン４０により指定された出力方路情報に従い、転送エンジン３０から受け取ったパケット及び出力方路情報を出力方路へ転送する。また、スイッチエンジン５０は、クロスバスイッチ１０から出力方路情報及びパケットを受信し、転送エンジン３０へ送信する。スイッチエンジン５０からパケットを受け取った転送エンジン３０は、出力方路情報に従い、当該パケットを回線に出力する。
【００１８】
ルーティングプロセッサ２０のタイプＡは、検索エンジン４０と転送エンジン３０が１対１で接続された構成である。タイプＡは、タイプＢ、Ｃの構成に比べて性能のバランスを重視した構成である。
【００１９】
タイプＢは、ひとつの検索エンジン４０に対して、複数の転送エンジン３０が接続された構成である。なお、図１に示すタイプＢでは、スイッチエンジンと転送エンジンは１対多で接続されているが、複数のスイッチエンジンを配置して１対１で接続するようにしてもよい。上述のタイプＡの構成では、回線数を増やすためには、転送エンジン３０、検索エンジン４０、スイッチエンジン５０のそれぞれを増やす必要がある。一方、タイプＢの構成では、ひとつの検索エンジン４０に対する回線数（ポート数）を多くできるため、ポート単価を安くすることができる。すなわち、タイプＢは、タイプＡ、Ｃの構成に比べて回線収容数（ポート密度）を重視した構成でもある。特に、パケット長の長いパケットを扱う場合、パケットのデータを処理する転送エンジン３０（性能はｐｐｓ、パケット毎秒）の負荷に対して、パケットのヘッダを処理する検索エンジン４０（性能はｂｐｓ、ビット毎秒）の負荷は小さくなるため、タイプＢの構成とすることにより検索エンジン４０を効率的に利用することができる。
【００２０】
なお、検索エンジン４０のポート数は限られているため、例えば、ひとつの検索エンジン４０に対して２つの転送エンジン３０を接続する場合、転送エンジン３０はタイプＡに比べて半分のポートが検索エンジン４０と接続される。したがって、タイプＡとタイプＢの転送エンジン３０及び検索エンジン４０は異なるバス幅を有する必要がある。本実施の形態におけるネットワーク中継装置では、バス幅を可変にする接続部を用いることにより、それぞれ同じ構造の転送エンジン３０及び検索エンジン４０でタイプＡ、タイプＢの接続が可能である。
【００２１】
タイプＣは、ひとつの転送エンジン３０に対して、複数の検索エンジン４０が接続された構成である。タイプＣの構成は、回線を多重化せずに、スイッチエンジン５０や検索エンジン４０を多重化した、信頼性を重視した構成である。タイプＣでは、例えば、一組の検索エンジン４０及びスイッチエンジン５０を予備系とし、残りを現用系とすることができる。特に、検索エンジン４０は、ネットワークに関する重要な情報を保持しているため、スイッチエンジン５０や検索エンジン４０を二重化することで信頼性を向上することができる。なお、予備系は一組でなくても、複数の組を予備系としてもよい。なお、図１に示すタイプＣでは、スイッチエンジン５０も多重化した構成としているが、検索エンジン４０のみを多重化し、スイッチエンジン５０と転送エンジン３０は１対１で接続された構成としてもよい。
【００２２】
タイプＣでは、例えば、ひとつの転送エンジン３０に対して複数の検索エンジン４０を接続する場合、転送エンジン３０は、接続された検索エンジン４０に同じデータを出力可能な構成とする必要がある。本実施の形態におけるネットワーク中継装置は、接続部が転送エンジン及び検索エンジンのポートを複数の系統として有効にすることで、複数の検索エンジンに同じデータを出力することが可能であり、タイプＡ及びＢと同じ構造の転送エンジン３０及び検索エンジン４０によりタイプＣの接続が可能である。なお、接続部の詳細な構成については後述する。
【００２３】
図２は、検索エンジン４０が有するルーティングテーブルのフォーマットである。
ルーティングテーブルは、例えば、宛先ＩＰアドレスに対応して、出力スイッチエンジン番号、出力転送エンジン番号、出力回線番号が記憶されている。本実施の形態におけるネットワーク中継装置は、スイッチエンジン５０に対して複数の転送エンジン３０が接続可能であるため、宛先ＩＰアドレスに対応して出力転送エンジン番号が記憶されている。なお、記憶されているスイッチエンジン番号、転送エンジン番号、回線番号は、それぞれスイッチエンジン５０及び転送エンジン３０及び回線に対して、一意に定めた識別情報を割り当てた番号であり、番号以外にも、適宜の情報を用いることができる。また、宛先ＩＰアドレスは、ＩＰアドレス以外にも適宜のアドレスを用いてもよい。
【００２４】
図３は、出力方路情報を付加したパケットフォーマットである。図３に示すパケットフォーマットは、例えば、ルーティングプロセッサ２０のスイッチエンジン５０がクロスバスイッチ１０に出力するパケットである。スイッチエンジン５０が出力するパケットは、転送エンジン３０が受信したヘッダ情報とペイロードを有する受信パケットと、検索エンジン４０が指定した出力方路情報を含む。
【００２５】
図４は、パケット中継装置の動作説明図である。例えば、パケット中継装置は、検索エンジン４０と転送エンジン３０が１対１又は１対多で接続されている複数のルーティングプロセッサ２０を有する。また、ルーティングプロセッサ２０のスイッチエンジン５０、検索エンジン４０、転送エンジン３０には、予め識別番号が割り当てられている。なお、この例では、転送エンジン３０の識別番号は、スイッチエンジン５０又は検索エンジン４０毎に割り当てられている。さらに、転送エンジン３０と回線が接続されているポートにも、予め識別番号が割り当てられている。また、図４では、各エンジンの接続状況は省略しているが、図１と同様に各転送エンジン３０は、検索エンジン４０及びスイッチエンジン５０と接続され、クロスバスイッチ１０は、ルーティングプロセッサ２０の各スイッチエンジン５０と接続されている。
【００２６】
図５は、パケット中継装置のシーケンス図である。例えば、宛先アドレスが１９２．１６８．０．１のパケットを図４の検索エンジン＃０に接続されている転送エンジン＃０が受信した場合の動作について、図４及び図５を用いて以下に説明する。なお、図４の検索エンジン＃０のルーティングテーブルには、図２に示すテーブルが予め記憶されている。
【００２７】
まず、検索エンジン＃０に接続されている転送エンジン＃０は、回線からパケットを受信すると、受信パケットからヘッダを抽出し、抽出したパケットヘッダを検索エンジン＃０へ送信する。また、転送エンジン＃０は、パケットを受信した入力回線番号及び入力転送エンジン番号を検索エンジン＃０に送信してもよい。さらに、転送エンジン＃０は、受信したパケットをパケットバッファに格納する。
【００２８】
パケットヘッダを受信した検索エンジン＃０は、受信したパケットヘッダの宛先ＩＰアドレスに基づき、ルーティングテーブルを参照する。検索エンジン＃０は、宛先ＩＰアドレスに対応する出力エンジン番号、出力転送エンジン番号、出力回線番号等の出力方路情報を取得する。この例では、検索エンジン＃０は、図２に示すルーティングテーブルを参照し、出力方路情報の出力スイッチエンジン番号として２、出力転送エンジン番号として３、出力回線番号として４を取得する。検索エンジン＃０は、取得した出力方路情報を転送エンジン＃０に送信する。また、検索エンジン＃０は、転送エンジン＃０から入力回線番号及び入力転送エンジン番号を受信し、これらの情報に基づいてフィルタリング又はＱｏＳに関する処理を行ってもよい。
【００２９】
転送エンジン＃０は、検索エンジン＃０から出力方路情報を受け取ると、パケットバッファに格納した該当するパケットデータに出力方路情報を付加し、スイッチエンジン＃０へ送信する。スイッチエンジン＃０は、出力方路情報の出力スイッチエンジン番号に従い、クロスバスイッチ１０を介してパケット及び出力方路情報を転送する。この例では、スイッチエンジン＃０は、出力エンジン番号２に従い、スイッチエンジン＃２にパケットを送信する。
【００３０】
パケットを受け取ったスイッチエンジン＃２は、出力転送エンジン番号に従い、受け取ったパケット及び出力方路情報を、例えば、転送エンジン＃３に出力する。転送エンジン＃３は、受信したパケットのヘッダを抽出し、出力方路情報及びパケットヘッダを検索エンジン＃２に送信する。検索エンジン＃２は、受信した情報を用いて、例えば、フィルタリング、遅延優先制御、ＱｏＳに関する処理を行う。なお、これらフィルタリング、遅延優先制御、ＱｏＳ等に関する処理は省略してもよい。また、検索エンジン＃２は、例えば、受信した出力方路情報の出力回線番号を転送エンジン＃３に送信する。検索エンジン＃２が送信するデータは、出力回線番号以外にも適宜のデータを用いてもよい。転送エンジン＃３は、検索エンジン＃２又はスイッチエンジン＃２から受信した出力回線番号４に対応する回線に、受信したパケットを出力する。
【００３１】
なお、上述の例では、検索エンジン＃０に接続されている転送エンジン＃０がパケットを入力した場合について説明したが、他の転送エンジンがパケットを入力した場合についても同様の処理によりパケットを中継することができる。また、図１のタイプＣのルーティングプロセッサ２０を有するネットワーク中継装置では、タイプＣ内の複数の検索エンジン４０及びスイッチエンジン５０のうち、現用系を予め設定し、設定された検索エンジン４０及びスイッチエンジン５０を用いて上述と同様の処理を行うことにより、パケットを中継することができる。
【００３２】
図６は、転送エンジン３０の接続部の説明図である。転送エンジン３０の接続部６０は、モードレジスタと、セレクタと、カウンタとを有する。また、接続部６０は、例えば０−１２７の複数のバス及びポートを有する。なお、接続部６０のバス及びポートは、適宜の数とすることができる。
【００３３】
モードレジスタは、転送エンジン３０及び検索エンジン４０の対応関係を示すモードを記憶する。例えば、モードレジスタは、転送エンジン３０と検索エンジン４０が全てのポートを１系統として有効とするモードＡ、半分のポートを２系統として有効とするモードＢ、１／４のポートを４系統として有効とするモードＣの内、どのモードで接続されているかを記憶する。なお、モードレジスタは、初期設定時等の適宜の時に、ソフトウェアや入力部からの入力により各モードが設定可能である。
【００３４】
セレクタは、モードレジスタにより定められたモードに従い、転送エンジン３０のポートをひとつ又は複数の系統として選択的に有効にする。セレクタは、例えば、２進カウンタや４進カウンタ等のカウンタの値に対応したポートを有効にする。２進カウンタ及び４進カウンタは、データを送信するサイクルに応じてカウントアップ（又はダウン）する。
【００３５】
例えば、モードＡでは、セレクタは、０−１２７の全てのポートを有効とし、転送エンジン３０の０−１２７のポートと、検索エンジン４０の０−１２７のポートが１対１で接続可能となる。
【００３６】
モードＢでは、セレクタは、２進カウンタの値（例えば、０か１）に従い０−６３のポートと６４−１２７のポートを順次切り替えて有効にする。また、有効となったポートは２つに分岐され、２系統として出力される。２系統として出力することにより、ひとつの転送エンジン３０と複数の検索エンジン４０を接続した場合に、同じデータを検索エンジン４０に送信することができる。
【００３７】
例えば、図１に示すタイプＢにおいて転送エンジン３０と検索エンジン４０を２対１で接続する場合には、モードレジスタをモードＢに設定し、各転送エンジン３０のポート０−６３（又は６４−１２７）と、検索エンジン４０の０−１２７のポートを接続する。また、図１に示すタイプＣにおいて転送エンジン３０と検索エンジン４０を１対２で接続する場合には、モードレジスタをモードＢに設定し、転送エンジン３０のポート０−６３をひとつの検索エンジン４０に接続し、残りのポートを他の検索エンジン４０に接続する。
【００３８】
モードＣでは、セレクタは、４進カウンタの値（例えば、０〜３のいずれか）に従い０−３１のポート、３２−６３のポート、６４−９５のポート、９６−１２７のポートを順次切り替えて有効にする。また、有効となったポートは４つに分岐され、４系統として出力される。
【００３９】
例えば、図１に示すタイプＢにおいて転送エンジン３０と検索エンジン４０を４対１で接続する場合には、モードレジスタをモードＣに設定し、各転送エンジン３０のポート０−３１（又はポート３２−６３、６４−９５、９６−１２７のいずれか）と、検索エンジン４０の０−１２７のポートを接続する。また、図１に示すタイプＣにおいて転送エンジン３０と検索エンジン４０を１対４で接続する場合には、モードレジスタをモードＣに設定し、例えば、転送エンジン３０のポート０−３１、３２−６３、６４−９５、９６−１２７をそれぞれの検索エンジン４０に接続する。
【００４０】
また、図１に示すネットワーク中継装置の検索エンジン４０と転送エンジン３０間、及び、スイッチエンジン５０と転送エンジン３０間は、ＳＢＴＬ（同時双方向インターフェース）で接続することもできる。ＳＢＴＬは、物理的に１本の線で双方向の通信を可能にする技術である。
【００４１】
図７に、ＳＢＴＬの説明図を示す。ＳＢＴＬは、双方向から「０」又は「１」の信号が送信されると、双方向からの信号に応じてＨｉｇｈ、Ｍｉｄｄｌｅ、Ｌｏｗのいずれかのレベルの信号になる。例えば、両者の信号が共に１ならばＨｉｇｈ、片方のみ１ならばＭｉｄｄｌｅ、両者ともに０ならばＬｏｗになる。ＳＢＴＬは、信号を受信する場合、自分の出力している信号と受信した信号から相手が送信した信号を判断する。例えば、自分が１を出力している場合、受信した信号がＨｉｇｈの時は相手が送信した信号は１、また、受信した信号がＭｉｄｄｌｅの時は相手が送信した信号は０と判断できる。自分が０を出力している場合も同様である。具体的には、ＳＢＴＬは、自分の出力している信号に応じて、受信するデータのスレッショルドを変えて信号を受信する。例えば、自分が１を出力している場合、受信するスレッショルドをＭｉｄｄｌｅとＨｉｇｈの中間にすることで、Ｍｉｄｄｌｅは０、Ｈｉｇｈは１として受信できる。
【００４２】
パケット中継装置の検索エンジン４０と転送エンジン３０の間は、パケットヘッダ及び出力方路の送受信を行うため、頻繁（パケットバイパケット）に双方向の通信が発生する。検索エンジン４０と転送エンジン３０間をＳＢＴＬで接続することにより、パケットヘッダ及び出力方路を効率的に送受信することができる。また、検索エンジン４０と転送エンジン３０を１対多又は多対１で接続する場合バス幅が減少するが、ＳＢＴＬを用いて双方向で送受信することによりバス幅の減少による影響を軽減することが可能となる。
【００４３】
図８は、検索エンジン４０の接続部の説明図である。検索エンジン４０の接続部６１は、モードレジスタと、セレクタと、カウンタとを有する。また、接続部６１は、例えば０−１２７の複数のバス及びポートを有する。なお、接続部６１のバス及びポートは、適宜の数とすることができる。モードレジスタ、セレクタ、カウンタは、上述の転送エンジン３０の接続部６０と同様であるので、その説明を省略する。なお、モードレジスタは、例えば、モードＸ、Ｙ、Ｚの内どのモードで接続されているかを記憶する。
【００４４】
モードＸでは、セレクタは、０−１２７の全てのポートを有効とし、例えば、検索エンジン４０の０−１２７のポートと、転送エンジン＃０の０−１２７のポートが１対１で接続可能となる。
【００４５】
モードＹでは、検索エンジン４０と転送エンジン３０を１対２で接続可能であり、例えば、検索エンジン４０の０−６３のポートが転送エンジン＃０の０−６３（又は６４−１２７）のポートへ、検索エンジン４０の６４−１２７のポートが転送エンジン＃１の０−６３のポートへ接続され、２系統が有効となる。検索エンジン４０から転送エンジン３０にパケットを送信する際には、セレクタによって選択された０−６３又は６４−１２７のバスは、転送エンジン３０からパケットヘッダと共に受け取った入力転送エンジン番号に基づき、転送エンジン＃０が接続されているポート０−６３、又は、転送エンジン＃１が接続されているポート６４−１２７の一方に接続される。また、検索エンジン４０と転送エンジン３０を２対１で接続する場合も、モードレジスタをモードＹに設定し、各検索エンジン４０の半分のポート（０−６３又は６４−１２７）と転送エンジン３０の０−１２７のポートを接続する。
【００４６】
モードＺでは、検索エンジン４０と転送エンジン３０を１対４で接続可能であり、例えば、検索エンジン４０の０−３１、３２−６３、６４−９５、９６−１２７のポートが、それぞれ転送エンジン＃０〜＃３のポートへ接続され、４系統が有効となる。セレクタによって選択されたバスは、上述と同様に入力転送エンジン番号に基づき、転送エンジン＃０〜＃３に接続されているいずれかのポートに接続される。また、検索エンジン４０と転送エンジン３０を４対１で接続する場合、モードレジスタをモードＺに設定し、各検索エンジン４０の１／４のポートと転送エンジン３０の０−１２７のポートを接続する。
【００４７】
このように、同じ構造の転送エンジン３０及び検索エンジン４０を適当な数用いて、多対１又は１対多の接続が可能となる。なお、上述の転送エンジン３０及び検索エンジン４０では、全ポートを１系統、半分のポートを２系統、１／４のポートを４系統としているが、これ以外にも適宜の数のポートをひとつ又は複数の系統とすることができる。また、スイッチエンジン５０は、検索エンジン４０の接続部６１と同様の接続部を有することもできる。
【００４８】
図９は、多対多接続のネットワーク中継装置の構成図である。図９に示すネットワーク中継装置は、ルーティングプロセッサ２０が、複数の転送エンジン３０と複数の検索エンジン４０が接続されたタイプＤで構成されている多対多接続の例である。これらの接続は、各エンジンの接続部のモードを適宜設定することにより図１に示す各エンジンと同一構造のエンジンにより実現できる。なお、図９にはタイプＤのみを示しているが、図１に示すタイプＡ、Ｂ、Ｃのいずれか又は複数と適宜組み合わせることもできる。
【００４９】
【発明の効果】
本発明によると、１対多、多対１、多対多と可変に接続可能な転送エンジン及び検索エンジンを有するネットワーク中継装置を提供することができる。また、本発明によると、同じ構造の転送エンジンと検索エンジンで複数の接続パターンを選択可能なネットワーク中継装置を提供することができる。さらに、本発明によると、転送エンジンと検索エンジン間のパケットヘッダ及び出力方路を効率的に送受信することができる。
【図面の簡単な説明】
【図１】ネットワーク中継装置の構成図。
【図２】検索エンジンが有するルーティングテーブルのフォーマット。
【図３】出力方路情報を付加したパケットフォーマット。
【図４】パケット中継装置の動作説明図。
【図５】パケット中継装置のシーケンス図。
【図６】転送エンジンの接続部の説明図。
【図７】ＳＢＴＬ（同時双方向インタフェース）の説明図。
【図８】検索エンジンの接続部の説明図。
【図９】多対多接続のネットワーク中継装置の構成図
【図１０】従来のネットワーク中継装置の構成例を示す図。
【符号の説明】
１０  クロスバスイッチ
２０  ルーティングプロセッサ
３０  転送エンジン
４０  検索エンジン
５０  スイッチエンジン
６０、６１  接続部
【図１】
2004260365.tif 000003
【図２】
2004260365.tif 000004
【図３】
2004260365.tif 000005
【図４】
2004260365.tif 000006
【図５】
2004260365.tif 000007
【図６】
2004260365.tif 000008
【図７】
2004260365.tif 000009
【図８】
2004260365.tif 000010
【図９】
2004260365.tif 000011
【図１０】
2004260365.tif 000012