(57)【要約】【課題】最初の１パケットに対してルーティングを行い、同一通信データの後続パケットについては、最初のパケットのルーティング結果を利用してパケットを転送することで、後続パケットに対する処理負荷を軽減し、高速にパケットを転送するネットワーク中継装置を得ること。【解決手段】通信データの最初のパケットについて、パケット処理部２３が、ルーティングプロセス管理テーブル２４を検索し、同一宛先のルーティングプロセス２７が存在しているか否かを判定する。その結果同一宛先のルーティングプロセス２７が存在しない場合だけ、通常ルーティング処理部２５が内部のルーティングテーブルを検索してルーティングを行う。同一宛先へのルーティングプロセス２７が存在する最初のパケットまたは後続パケットについては、そのルーティングプロセス２７を利用してパケットを送信する。【選択図】　　　図２
2004048278.tif 000002
【特許請求の範囲】
【請求項１】
通信データを分割したパケット内に少なくとも宛先ＩＰアドレスと送信元ＩＰアドレスと該パケットが前記通信データの最初のパケットまたは後続パケットであるかを示すパケット判定フラグと通信データ毎に付与される通信シーケンス番号の情報を含み、前記パケットを用いて通信を行うネットワークに適用され、受信した前記パケットを該パケット内の送信先ＩＰアドレスに送信するネットワーク中継装置であって、
前記宛先ＩＰアドレスと該宛先ＩＰアドレスに対応するポートが定義されているルーティングテーブルと、
受信したパケット内の宛先ＩＰアドレスに基づき前記ルーティングテーブルを検索することにより前記受信したパケットを送信するポートを決定し、決定したポートにパケットを送信する通常ルーティング処理部と、
前記決定したポートに前記受信したパケットを送信するルーティングプロセスを生成するプロセス管理部と、
前記ルーティングプロセス毎にそのルーティングプロセスを用いて送信されるパケットの宛先ＩＰアドレスと送信元ＩＰアドレスと通信シーケンス番号とが登録されるルーティングプロセス管理テーブルと、
前記受信したパケット内のパケット判定フラグに基づき受信したパケットが通信データの最初のパケットまたは後続パケットのどちらであるかを判定するパケット判定部と、
前記判定結果とルーティングプロセス管理テーブルに基づいて、前記受信したパケットに対して前記通常ルーティング処理部による前記パケット送信動作を行わせ、かつ前記プロセス管理部にルーティングプロセスを生成させるか、または、すでに生成されているルーティングプロセスを利用したパケット送信を実行させるパケット処理部と、
を備えることを特徴とするネットワーク中継装置。
【請求項２】
前記パケット処理部は、
前記受信したパケットが最初のパケットであってかつ前記ルーティングプロセス管理テーブルに前記受信した最初のパケット内の宛先ＩＰアドレスと同一宛先ＩＰアドレスのルーティングプロセスが登録されていない場合は、前記通常ルーティング処理部に前記受信した最初のパケットの処理を実行させ、前記受信したパケットが最初のパケットであってかつ前記ルーティングプロセス管理テーブルに前記受信した最初のパケット内の宛先ＩＰアドレスと同一宛先ＩＰアドレスのルーティングプロセスが登録されている場合は、前記同一宛先ＩＰアドレスのルーティングプロセスを利用するとともに前記ルーティングプロセス管理テーブルにこのルーティングプロセスを利用することを登録し、前記受信したパケットが後続パケットの場合は、前記ルーティングプロセス管理テーブルに登録されているルーティングプロセスのうち前記受信した後続パケット内の送信元ＩＰアドレスおよび通信シーケンス番号が一致するルーティングプロセスを利用することを決定することを特徴とする請求項１に記載のネットワーク中継装置。
【請求項３】
前記パケット処理部は、
前記パケット判定部の判定で後続パケットであると判定されたパケットに対して、前記ルーティングプロセス管理テーブルを検索しても前記後続パケットに含まれる送信元ＩＰアドレスおよび通信シーケンス番号と一致したルーティングプロセスが検出されなかった場合、異常が生じたと判定し、
前記通常ルーティング処理部は、前記異常が生じたと判断された場合、通常のルーティング処理を行って前記受信した全てのパケットに対して前記パケットを送信するポートを決定し、その決定にしたがってパケットを送信することを特徴とする請求項１または２に記載のネットワーク中継装置。
【請求項４】
通信データを分割したパケット内に少なくとも宛先ＩＰアドレスと送信元ＩＰアドレスと該パケットが前記通信データの最初のパケットまたは後続パケットであるかを示すパケット判定フラグと通信データ毎に付与された通信シーケンス番号とパケットの送信端末から受信端末までの通信経路を示す経路情報の情報を含み、前記パケットを用いて通信を行うネットワークに適用され、受信した前記パケットを該パケット内の送信元ＩＰアドレスに送信するネットワーク中継装置であって、
前記宛先ＩＰアドレスと該宛先ＩＰアドレスに対応するポートが定義されているルーティングテーブルと、
受信したパケット内の宛先ＩＰアドレスに基づき前記ルーティングテーブルを検索することにより前記受信したパケットを送信するポートを決定し、決定したポートと前記受信した最初のパケット内の経路情報とが一致している場合には、前記経路情報にしたがってパケットを送信する通常ルーティング処理部と、
前記決定したポートと前記受信した最初のパケット内の経路情報とが不一致の場合、前記通常ルーティング処理部で決定したポートにパケットを送信するエラー修正プロセスを生成するプロセス管理部と、
前記決定したポートと前記受信した最初のパケット内の経路情報との比較結果が登録されるエラー情報管理テーブルと、
前記受信したパケット内のパケット判定フラグに基づき通信データの最初のパケットまたは後続パケットのどちらかであるかを判定し、判定結果が前記最初のパケットの場合、前記通常ルーティング処理部で処理を行い、前記判定結果が後続パケットの場合、該後続パケット内の経路情報にしたがってパケットを送信するパケット判定部と、
を備えることを特徴とするネットワーク中継装置。
【請求項５】
通信データを分割したパケット内に少なくとも宛先ＩＰアドレスと送信元ＩＰアドレスと該パケットが前記通信データの最初のパケットまたは後続パケットであるかを示すパケット判定フラグと通信データ毎に付与された通信シーケンス番号とパケットの送信端末から受信端末までの通信経路を示す経路情報の情報を含み、前記パケットを用いて通信を行うネットワークに適用され、受信した前記パケットを該パケット内の送信元ＩＰアドレスに送信するネットワーク中継装置であって、
前記宛先ＩＰアドレスと該宛先ＩＰアドレスに対応するポートが定義されているルーティングテーブルと、
受信したパケット内の宛先ＩＰアドレスに基づき前記ルーティングテーブルを検索することにより前記受信したパケットを送信するポートを決定し、決定したポートと前記受信した最初のパケット内の経路情報とが一致している場合には、前記経路情報にしたがってパケットを送信する通常ルーティング処理部と、
前記決定したポートと前記受信した最初のパケット内の経路情報とが不一致の場合、前記通常ルーティング処理部で決定したポートにパケットを送信するエラー修正プロセスを生成するプロセス管理部と、
前記決定したポートと前記受信した最初のパケット内の経路情報との比較結果が登録されるエラー情報管理テーブルと、
前記受信したパケット内のパケット判定フラグに基づき通信データの最初のパケットまたは後続パケットのどちらかであるかを判定し、判定結果が前記最初のパケットの場合、前記通常ルーティング処理部で処理を行い、前記判定結果が後続パケットの場合、前記エラー情報管理テーブルに基づいて前記後続パケット内の経路情報にしたがってパケットを送信するか、前記エラー修正プロセスを用いてパケットを送信するかを決定するパケット判定部と、
を備えることを特徴とするネットワーク中継装置。
【請求項６】
前記パケット判定部は、
前記受信したパケットが後続パケットの場合、エラー情報管理テーブルを参照して、該後続パケット内に記載された経路情報が正しいかをチェックし、この情報が正しければ、前記後続パケット内の経路情報にしたがってパケットを送信し、エラー情報管理テーブルを参照して、該後続パケット内に記載された経路情報が正しいかをチェックし、この情報が誤りであれば、前記エラー修正プロセスにしたがってパケットを送信することを特徴とする請求項５に記載のネットワーク中継装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、異なるネットワークを相互接続するネットワーク中継装置に関するものであり、特に、パケットによるデータ通信において、そのパケットを高速に中継するネットワーク中継装置に関するものである。
【０００２】
【従来の技術】
たとえば、図１１はＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ　Ｃｏｎｔｒｏｌ　Ｐｒｏｔｏｃｏｌ／ＩｎｔｅｒｎｅｔＰｒｏｔｏｃｏｌ）プロトコルにおける従来のネットワーク中継装置を示すものであり、このネットワーク中継装置は、パケットを受信する複数の入力ポート（この場合ＰＩ１，ＰＩ２の２つ）と、宛先のＩＰアドレスを管理しているルーティングテーブル１００と、ルーティングテーブル１００と受信したパケットの宛先ＩＰアドレスに基づき受信したパケットを出力するポートを決定するＣＰＵ２００と、パケットを宛先のネットワークに出力する複数の出力ポート（この場合ＰＯ１〜ＰＯ３の３つ）とを備えている。
【０００３】
ルーティングテーブル１００は、図１２に示すように、宛先アドレスに対応した出力先ポートが登録される。図１２では、たとえば、宛先アドレスが「１３３．１４１．２４３．０」と「１３３．１４１．２４３．１８２」の場合、出力ポートＰＯ１にパケットを出力するように定義している。
【０００４】
図１３は、従来のネットワーク中継装置におけるパケットのフォーマットの概念を示す図である。パケットは、パケットの開始を示す開始フラグ、宛先ＭＡＣアドレス、送信元ＭＡＣアドレス、このパケットがどのようなプロトコル（ＩＰＶ４，ＩＰＶ６など）のパケットであるかを示すフラグ、宛先ＩＰアドレス、送信元ＩＰアドレス、ＴＣＰデータ、ユーザデータ、パケットの終了を示す終了フラグで構成される。
【０００５】
つぎに、従来のネットワーク中継装置の動作を説明する。たとえば、入力ポートＰＩ１が、図１３に示すパケットを受信する。ＣＰＵ２００は、入力ポートＰＩ１からパケットを受付けると、ルーティングテーブル１００に登録されている宛先アドレスの中から、パケット内の宛先ＩＰアドレスと一致するＩＰアドレスを検索し、パケットを出力する出力ポートを検索し、パケットを当該出力ポートに出力する。すなわち、ＣＰＵ２００は、ルーティングテーブルの宛先アドレスとパケット内の宛先ＩＰアドレスとを１ビットずつ比較し、最も長く一致した部分があるルーティングテーブル１００の宛先アドレスを正規の宛先アドレスと判断し、その宛先アドレスに対応する出力ポートにパケットを送信するロンゲストマッチを行う。
【０００６】
従来のネットワーク中継装置は、このような動作を、入力ポートＰＩ１，ＰＩ２がパケットを受信するたびに繰り返し、受信したパケットに対してルーティングを行う。
【０００７】
しかしながら、９０年代に入ってからの、インターネットの普及は目覚しいものがあり、トラフィックが増大し、ネットワーク中継装置の処理能力が問われている。ネットワーク中継装置の処理能力、性能は、ルーティングテーブルの検索処理が大きく影響する。上述したように、ルーティングテーブルの検索はロンゲストマッチであり、しかもこの処理を同一通信シーケンスに属するすべてのパケットについて実施している。この処理は単純なテーブル検索に比べて非常にＣＰＵ負荷が高い。そして、その検索処理は、ＣＰＵの性能に依存しているところが大きい。
【０００８】
このような問題を改善するために、ネットワーク中継装置の処理を高速化する従来技術として、特開平０９−９８１８９号公報あるいは特開平０７−２７３８０１号公報がある。
【０００９】
特開平０９−９８１８９号公報には、ＡＴＭにおいて、パケットの終了セルを検出し、検出したつぎのセルを先頭セルと認識し、その先頭セルのヘッダの宛先アドレスを抽出した時点で、経路テーブルからルーティングに必要な情報の検索を開始するようにした技術が開示されている。
【００１０】
また、パケット通信の場合には、ルーティングテーブルから宛先ＭＡＣアドレスと宛先ＩＰアドレスとを同時に検索し、所定時間内に宛先ＭＡＣアドレスまたは宛先ＩＰアドレスのどちらかで先に検索された宛先アドレスを用いてルーティング処理を行うようにした技術が開示されている。
【００１１】
特開平０７−２７３８０１号公報には、ＡＴＭ（Ａｓｙｎｃｈｒｏｎｏｕｓ　Ｔｒａｎｓｆｅｒ　Ｍｏｄｅ）−ＬＡＮ（Ｌｏｃａｌ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）や広域ＩＳＤＮ（Ｉｎｔｅｇｒａｔｅｄ　Ｓｅｒｖｉｃｅｓ　Ｄｉｇｉｔａｌ　Ｎｅｔｗｏｒｋ）などの各ブロックを固定長セル形式で運ぶネットワークシステムにおいて、パケットのヘッダ部分に該当するセルが揃った時点でルーティングテーブルを参照し、ルーティングが必要な場合には、ルーティング処理を開始するようにした技術が開示されている。
【００１２】
【発明が解決しようとする課題】
しかしながら、上記各従来技術では、セルまたはパケットを全て受信する前に、ルーティングに必要な情報である宛先ＩＰアドレスを取得し処理を高速化しているものの、受信したパケット毎にルーティングテーブルの検索を行わなければならない。すなわち、１つの通信データとしてみた場合に、全パケットに対してルーティングテーブルの検索を実行しているため、スループットはルーティングテーブルの検索時間で決定してしまうという問題があった。
【００１３】
この発明は上記に鑑みてなされたもので、最初の１パケットに対して通常のルーティング処理を行い、同一通信データの後続パケットについては、最初のパケットで行ったルーティング結果を利用してパケットを転送することで、後続パケットに対する処理負荷を軽減し、高速にパケットを転送するネットワーク中継装置を得ることを目的としている。
【００１４】
【課題を解決するための手段】
上記目的を達成するために、この発明にかかるネットワーク中継装置は、通信データを分割したパケット内に少なくとも宛先ＩＰアドレスと送信元ＩＰアドレスと該パケットが前記通信データの最初のパケットまたは後続パケットであるかを示すパケット判定フラグと通信データ毎に付与される通信シーケンス番号の情報を含み、前記パケットを用いて通信を行うネットワークに適用され、受信した前記パケットを該パケット内の送信先ＩＰアドレスに送信するネットワーク中継装置であって、前記宛先ＩＰアドレスと該宛先ＩＰアドレスに対応するポートが定義されているルーティングテーブルと、受信したパケット内の宛先ＩＰアドレスに基づき前記ルーティングテーブルを検索することにより前記受信したパケットを送信するポートを決定し、決定したポートにパケットを送信する通常ルーティング処理部と、前記決定したポートに前記受信したパケットを送信するルーティングプロセスを生成するプロセス管理部と、前記ルーティングプロセス毎にそのルーティングプロセスを用いて送信されるパケットの宛先ＩＰアドレスと送信元ＩＰアドレスと通信シーケンス番号とが登録されるルーティングプロセス管理テーブルと、前記受信したパケット内のパケット判定フラグに基づき受信したパケットが通信データの最初のパケットまたは後続パケットのどちらであるかを判定するパケット判定部と、前記判定結果とルーティングプロセス管理テーブルに基づいて、前記受信したパケットに対して前記通常ルーティング処理部による前記パケット送信動作を行わせ、かつ前記プロセス管理部にルーティングプロセスを生成させるか、または、すでに生成されているルーティングプロセスを利用したパケット送信を実行させるパケット処理部とを備えることを特徴とする。
【００１５】
この発明によれば、パケット判定部は、受信したパケットが通信データの最初のパケットまたは後続パケットであるかを判定し、パケット処理部に対して該パケットと、該パケットが同一通信シーケンス中の最初のパケットであるか否かという情報を受け渡すようにしている。
【００１６】
つぎの発明にかかるネットワーク中継装置は、上記の発明において、前記パケット処理部は、前記受信したパケットが最初のパケットであってかつ前記ルーティングプロセス管理テーブルに前記受信した最初のパケット内の宛先ＩＰアドレスと同一宛先ＩＰアドレスのルーティングプロセスが登録されていない場合は、前記通常ルーティング処理部に前記受信した最初のパケットの処理を実行させ、前記受信したパケットが最初のパケットであってかつ前記ルーティングプロセス管理テーブルに前記受信した最初のパケット内の宛先ＩＰアドレスと同一宛先ＩＰアドレスのルーティングプロセスが登録されている場合は、前記同一宛先ＩＰアドレスのルーティングプロセスを利用するとともに前記ルーティングプロセス管理テーブルにこのルーティングプロセスを利用することを登録し、前記受信したパケットが後続パケットの場合は、前記ルーティングプロセス管理テーブルに登録されているルーティングプロセスのうち前記受信した後続パケット内の送信元ＩＰアドレスおよび通信シーケンス番号が一致するルーティングプロセスを利用することを決定することを特徴とする。
【００１７】
この発明によれば、パケット処理部は、受信したパケットが最初のパケットであってかつルーティングプロセス管理テーブルに受信した最初のパケット内の宛先ＩＰアドレスと同一宛先ＩＰアドレスのルーティングプロセスが登録されていない場合は、通常ルーティング処理部に受信した最初のパケットの処理を実行させ、受信したパケットが最初のパケットであってかつルーティングプロセス管理テーブルに受信した最初のパケット内の宛先ＩＰアドレスと同一宛先ＩＰアドレスのルーティングプロセスが登録されている場合は、同一宛先ＩＰアドレスのルーティングプロセスを利用するとともにルーティングプロセス管理テーブルにこのルーティングプロセスを利用することを登録し、受信したパケットが後続パケットの場合は、ルーティングプロセス管理テーブルに登録されているルーティングプロセスのうち受信した後続パケット内の送信元ＩＰアドレスおよび通信シーケンス番号が一致するルーティングプロセスを利用することを決定するようにしている。
【００１８】
つぎの発明にかかるネットワーク中継装置は、上記の発明において、前記パケット処理部は、前記パケット判定部の判定で後続パケットであると判定されたパケットに対して、前記ルーティングプロセス管理テーブルを検索しても前記後続パケットに含まれる送信元ＩＰアドレスおよび通信シーケンス番号と一致したルーティングプロセスが検出されなかった場合、異常が生じたと判定し、前記通常ルーティング処理部は、前記異常が生じたと判断された場合、通常のルーティング処理を行って前記受信した全てのパケットに対して前記パケットを送信するポートを決定し、その決定にしたがってパケットを送信することを特徴とする。
【００１９】
この発明によれば、パケット処理部は、パケット判定部の判定で後続パケットであると判定されたパケットに対して、ルーティングプロセス管理テーブルを検索しても後続パケットに含まれる送信元ＩＰアドレスおよび通信シーケンス番号と一致したルーティングプロセスが検出されなかった場合、異常が生じたと判定し、通常ルーティング処理部は、異常が生じたと判断された場合、該後続パケットと同じ送信元ＩＰアドレスおよび通信シーケンスＩＤを持つ全てのパケットに対してパケットを送信するポートを決定し、その決定にしたがってパケットを送信するようにしている。
【００２０】
つぎの発明にかかるネットワーク中継装置は、上記の発明において、通信データを分割したパケット内に少なくとも宛先ＩＰアドレスと送信元ＩＰアドレスと該パケットが前記通信データの最初のパケットまたは後続パケットであるかを示すパケット判定フラグと通信データ毎に付与された通信シーケンス番号とパケットの送信端末から受信端末までの通信経路を示す経路情報の情報を含み、前記パケットを用いて通信を行うネットワークに適用され、受信した前記パケットを該パケット内の送信元ＩＰアドレスに送信するネットワーク中継装置であって、前記宛先ＩＰアドレスと該宛先ＩＰアドレスに対応するポートが定義されているルーティングテーブルと、受信したパケット内の宛先ＩＰアドレスに基づき前記ルーティングテーブルを検索することにより前記受信したパケットを送信するポートを決定し、決定したポートと前記受信した最初のパケット内の経路情報とが一致している場合には、前記経路情報にしたがってパケットを送信する通常ルーティング処理部と、前記決定したポートと前記受信した最初のパケット内の経路情報とが不一致の場合、前記通常ルーティング処理部で決定したポートにパケットを送信するエラー修正プロセスを生成するプロセス管理部と、前記決定したポートと前記受信した最初のパケット内の経路情報との比較結果が登録されるエラー情報管理テーブルと、前記受信したパケット内のパケット判定フラグに基づき通信データの最初のパケットまたは後続パケットのどちらかであるかを判定し、判定結果が前記最初のパケットの場合、前記通常ルーティング処理部で処理を行い、前記判定結果が後続パケットの場合、該後続パケット内の経路情報にしたがってパケットを送信するパケット判定部とを備えることを特徴とする。
【００２１】
この発明によれば、通信データの最初のパケットに対してのみ通常ルーティング処理部が最初のパケット内の宛先ＩＰアドレスに基づきパケットを送信するポートを決定し、決定されたポートと最初のパケット内の通信経路が一致しているか否かをエラー情報管理テーブルに登録し、決定されたポートと最初のパケット内の通信経路とが一致した場合は、上記決定されたポートに最初のパケットを送信し、決定されたポートと最初のパケット内の通信経路とが不一致の場合は、決定されたポートにしたがって最初のパケットを送信するとともに通常ルーティング処理部が決定した結果に基づいたエラー修正プロセスを生成する。通信データの後続パケットに対しては、そのパケット内の経路情報にしたがってパケットを送信するようにしている。
【００２２】
つぎの発明にかかるネットワーク中継装置は、通信データを分割したパケット内に少なくとも宛先ＩＰアドレスと送信元ＩＰアドレスと該パケットが前記通信データの最初のパケットまたは後続パケットであるかを示すパケット判定フラグと通信データ毎に付与された通信シーケンス番号とパケットの送信端末から受信端末までの通信経路を示す経路情報の情報を含み、前記パケットを用いて通信を行うネットワークに適用され、受信した前記パケットを該パケット内の送信元ＩＰアドレスに送信するネットワーク中継装置であって、前記宛先ＩＰアドレスと該宛先ＩＰアドレスに対応するポートが定義されているルーティングテーブルと、受信したパケット内の宛先ＩＰアドレスに基づき前記ルーティングテーブルを検索することにより前記受信したパケットを送信するポートを決定し、決定したポートと前記受信した最初のパケット内の経路情報とが一致している場合には、前記経路情報にしたがってパケットを送信する通常ルーティング処理部と、前記決定したポートと前記受信した最初のパケット内の経路情報とが不一致の場合、前記通常ルーティング処理部で決定したポートにパケットを送信するエラー修正プロセスを生成するプロセス管理部と、前記決定したポートと前記受信した最初のパケット内の経路情報との比較結果が登録されるエラー情報管理テーブルと、前記受信したパケット内のパケット判定フラグに基づき通信データの最初のパケットまたは後続パケットのどちらかであるかを判定し、判定結果が前記最初のパケットの場合、前記通常ルーティング処理部で処理を行い、前記判定結果が後続パケットの場合、前記エラー情報管理テーブルに基づいて前記後続パケット内の経路情報にしたがってパケットを送信するか、前記エラー修正プロセスを用いてパケットを送信するかを決定するパケット判定部とを備えることを特徴とする。
【００２３】
この発明によれば、通信データの最初のパケットに対してのみ通常ルーティング処理部が最初のパケット内の宛先ＩＰアドレスに基づきパケットを送信するポートを決定し、決定されたポートと最初のパケット内の通信経路が一致しているか否かをエラー情報管理テーブルに登録し、決定されたポートと最初のパケット内の通信経路とが一致した場合は、最初のパケット内の経路情報にしたがって最初のパケットを送信し、決定されたポートと最初のパケット内の通信経路とが不一致の場合は、決定されたポートにしたがって最初のパケットを送信するとともに通常ルーティング処理部が決定した結果に基づいたエラー修正プロセスを生成する。後続のパケットについてはエラー情報管理テーブルを検索し、パケット内の経路情報が正しいか否かを判定し、その結果に基づいて、経路情報に基づきパケットを転送するか、エラー修正プロセスに基づいてパケットを転送するか決定するようにしている。
【００２４】
つぎの発明にかかるネットワーク中継装置は、上記の発明において、前記パケット判定部は、前記受信したパケットが後続パケットの場合、エラー情報管理テーブルを参照して、該後続パケット内に記載された経路情報が正しいかをチェックし、この情報が正しければ、前記後続パケット内の経路情報にしたがってパケットを送信し、エラー情報管理テーブルを参照して、該後続パケット内に記載された経路情報が正しいかをチェックし、この情報が誤りであれば、前記エラー修正プロセスにしたがってパケットを送信することを特徴とする。
【００２５】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかるネットワーク中継装置の好適な実施の形態を詳細に説明する。
【００２６】
実施の形態１．
図１〜図５を用いて本発明の実施の形態１を説明する。図１は、実施の形態１のネットワーク中継装置が適用されるネットワークの構成を示す概念図である。実施の形態１のネットワーク中継装置が適用されるネットワークは、相互通信が可能な３台の端末１０〜１２と、異なるネットワークを接続する７台のルータ２０ａ〜２０ｇ（特許請求の範囲でいうところのネットワーク中継装置）とで構成されている。
【００２７】
端末１０〜１２は、この実施の形態１のルータ２０ａ〜２０ｇに対応するパケットを組み立てて送受信することが可能なインターフェースを有するとともに通常のＴＣＰ／ＩＰにおけるパケット処理も実行できるものとする。ユーザはオプション指定によりこれらの通信方式を選択するか、ネットワーク管理者が、ネットワークに接続されている端末１０〜１２に対して、所定の宛先に対する経路情報を配信し、これを元に本方式に対応したパケットを組み立てることが可能なようにする。
【００２８】
図３は、この実施の形態１のネットワーク中継装置で用いるパケットの構成を示している。この実施の形態１のネットワーク中継装置で用いるパケットは、パケットの開始を示す開始フラグ、宛先ＭＡＣアドレス、送信元ＭＡＣアドレス、宛先ＩＰアドレス、送信元ＩＰアドレス、ＴＣＰデータ、パケットが通信データの最初のパケット、後続のパケット、最後のパケットの何れであるかを示すパケット判定フラグ、通信データ毎に付与される通信シーケンス番号、ユーザデータ、パケットの終了を示す終了フラグで構成される。
【００２９】
図２は、この実施の形態１のネットワーク中継装置の構成を示すブロック図である。この実施の形態１のネットワーク中継装置は、入力ポート２１と、パケット判定部２２と、パケット処理部２３と、ルーティングプロセス管理テーブル２４と、通常ルーティング処理部２５と、プロセス管理部２６と、ルーティングプロセス２７と、出力ポート２８，２９とを備えている。
【００３０】
入力ポート２１は、ネットワークを介して到達したパケットを受信する。パケット判定部２２は、パケット内のパケット判定フラグに基づき、受信したパケットが通信データの最初のパケット、後続パケット、最後のパケットのいずれであるかを判定する。
【００３１】
パケット処理部２３は、パケット内の宛先ＩＰアドレスに基づいてルーティングプロセス管理テーブル２４からパケットのルーティングプロセスを検索する。そして、その検索結果にしたがって、新規にルーティングを行うか、すでに存在するルーティングプロセス２７を使用するかを判定する。最初のパケットに対して、すでに存在するルーティングプロセス２７を使用する場合には、ルーティングプロセス管理テーブル２４に使用するルーティングプロセスを登録する。
【００３２】
ルーティングプロセス管理テーブル２４には、ルーティングプロセス２７に関する情報が登録される。図４は、ルーティングプロセス管理テーブル２４に対する登録項目を示すものであり、ここでは登録項目として、プロセスＩＤ、宛先ＩＰアドレス、送信元ＩＰアドレス、通信シーケンスＩＤ、開始時刻を挙げている。プロセスＩＤには、ルーティングプロセス２７に対応したＩＤが登録され、ルーティングプロセス管理テーブル２４は、このプロセスＩＤにより管理される。宛先ＩＰアドレスと送信元ＩＰアドレスには、プロセスＩＤに対応するルーティングプロセス２７を生成したときのパケットに含まれる宛先ＩＰアドレスと送信元ＩＰアドレスが登録される。通信シーケンスＩＤには、パケット内の通信シーケンス番号が登録される。開始時刻は、ある通信シーケンスがルーティングプロセス２７の使用を開始した時刻が登録される。
【００３３】
通常ルーティング処理部２５は、宛先ＩＰアドレスと出力ポートを対応させたルーティングテーブルを有し、通信データの最初のパケットに対して通常のルーティング処理、すなわち、図１１に示した従来のネットワーク中継装置の動作と同様にロンゲストマッチによるルーティングを行う。そして、ルーティングにより決定したポートにパケットを送信する。
【００３４】
プロセス管理部２６は、通常ルーティング処理部２５からの通知により、新規のルーティングプロセス２７を生成し、ルーティングプロセス管理テーブル２４に生成したルーティングプロセス２７の情報を登録する。また、ルーティングプロセス２７が正常に動作しているかを監視する。たとえば、ルーティングプロセス２７とルーティングプロセス管理テーブル２４の情報とが一致しているか否か、一定時間以上利用されていないルーティングプロセスの消去、ルーティングプロセス２７が飽和状態（メモリのオーバーフロー）になった場合の古いルーティングプロセスの消去、ルーティングプロセスが過負荷状態となった場合にパケットが当該プロセスを受信するのを一時停止させたり、同一プロセスを生成し平行処理を行うなどルーティングプロセス２７を統括的に管理する。
【００３５】
ルーティングプロセス２７は、宛先情報を有し、パケットを宛先情報に対応する出力ポートに出力する。図２の場合は、ルーティングプロセス２７＃１は、出力ポート２８にパケットを転送し、ルーティングプロセス２７＃Ｎは、出力ポート２９にパケットを転送する。出力ポート２８，２９は、回線上にパケットを送信する。
【００３６】
図５のフローチャートを参照して、実施の形態１のネットワーク中継装置の動作を説明する。入力ポート２１は、図３に示すフォーマットのパケットを受信し、受信したパケットをパケット判定部２２に出力する（ステップＳ１００）。パケット判定部２２は、受付けたパケット内のパケット判定フラグに基づき、このパケットが通信データの最初のパケットであるか否かを判定し（ステップＳ１１０）、パケット処理部２３に判定結果を通知する。
【００３７】
判定結果が最初のパケットである場合、パケット処理部２３は、パケット内の宛先ＩＰアドレスと同一宛先のルーティングプロセス２７が存在するか否かを判定する（ステップＳ１２０）。すなわち、パケット処理部２３は、パケット内の宛先ＩＰアドレスをキーワードに、ルーティングプロセス管理テーブル２４の宛先ＩＰアドレスを検索し、一致するアドレスがあるか否かを判定する。
【００３８】
ルーティングプロセス管理テーブル２４の宛先アドレスにパケット内の宛先ＩＰアドレスが存在した場合、すなわち、すでにパケット内の宛先ＩＰアドレスと同一アドレス宛てのルーティングプロセス２７が存在する場合、パケット処理部２３は、ルーティングプロセス管理テーブル２４に同一宛先のルーティングプロセス２７を利用することを登録する（ステップＳ１３０）。具体的には、たとえば、パケット内の宛先ＩＰアドレスが「１００．１２４．２３．１」であった場合に、図４（ａ）のルーティングプロセス管理テーブル２４のプロセスＩＤ「１０」の宛先ＩＰアドレスとパケット内の宛先ＩＰアドレスが一致しているので、このパケットはプロセスＩＤ「１０」を利用する。そのため、パケット処理部２３は、図４（ｂ）に示すように、ルーティングプロセス管理テーブル２４に送信元ＩＰアドレス、通信シーケンスＩＤ、開始時刻（破線で囲った部分）を登録する。
【００３９】
ルーティングプロセス管理テーブル２４に登録が完了すると、パケット処理部２３は、ルーティングプロセス管理テーブル２４のプロセスＩＤに対応するルーティングプロセス２７にパケットを送出する。ルーティングプロセス２７は、該当出力ポートにパケットを送信し、当該出力ポートは、パケットをネットワークに送信する（ステップＳ１４０）。
【００４０】
一方、ルーティングプロセス管理テーブル２４の宛先アドレスにパケット内の宛先ＩＰアドレスが存在しなかった場合、すなわち、パケット内の宛先ＩＰアドレスと同一アドレス宛てのルーティングプロセスが存在しない場合、パケット処理部２３は、その旨を通常ルーティング処理部２５に通知する。
【００４１】
通常ルーティング処理部２５は、パケット内の宛先ＩＰアドレスをキーワードに内部のルーティングテーブルの宛先アドレスを検索し、ルーティングを行う（ステップＳ１５０）。そして、宛先アドレスに対応した出力ポートにパケットを出力する（ステップＳ１６０）。パケットを出力すると、通常ルーティング処理部２５は、新規にルーティングを行ったことをプロセス管理部２６に通知する。
【００４２】
プロセス管理部２６は、通常ルーティング処理部２５が新規にルーティングを行った宛先アドレスに対応したルーティングプロセスを生成する（ステップＳ１７０）。そして、ルーティングプロセス管理テーブル２４に新規にルーティングプロセスを生成したことを登録する（ステップＳ１８０）。具体的には、たとえば、パケット内の宛先ＩＰアドレスが「１００．１５９．５．１８」、送信元ＩＰアドレスが「１０．５３．４．１２０」であった場合、図４（ａ）に示すルーティングプロセス管理テーブル２４の宛先アドレスに宛先ＩＰアドレスと一致する宛先は存在しない。したがって、通常ルーティング処理部２５は、ルーティング処理を行ったことをプロセス管理部２６に通知する。その通知を受けて、プロセス管理部２６は、新規のルーティングプロセスを生成し、生成したルーティングプロセスのプロセスＩＤ、宛先アドレス、送信元ＩＰアドレス、通信シーケンスＩＤ、開始時刻を登録する。すなわち、図４（ｃ）に示すルーティングプロセス管理テーブル２４のプロセスＩＤが「１２」の情報が登録される。
【００４３】
パケット判定部２２からの判定通知が最初のパケットではない、すなわち、後続または最後のパケットである場合、パケット処理部２３は、パケット内の送信元ＩＰアドレスをキーワードに、ルーティングプロセス管理テーブル２４の送信元ＩＰアドレスを検索する（ステップＳ１９０）。そして、ルーティングプロセス管理テーブル２４に登録されている送信元ＩＰアドレスとパケット内の送信元ＩＰアドレスとが合致するか否かを判定する（ステップＳ２００）。合致した送信元ＩＰアドレスが検索された場合は、パケット処理部２３は、合致した送信元ＩＰアドレスに対応するプロセスＩＤが示すルーティングプロセス２７にパケットを送出する。ルーティングプロセス２７は、該当する出力ポートにパケットに送信し、該当する出力ポートは、パケットをネットワークに送信する（ステップＳ２１０）。
【００４４】
また、パケット処理部２３は、パケットをルーティングプロセス２７に送信した後、パケット判定部２２からの判定通知にそのパケットが通信データの最後のパケットであることを示す情報が含まれていたかを確認する（ステップＳ２２０）。そして、最後のパケットであった場合には、ルーティングプロセス管理テーブル２４からその通信データに対応する情報を削除する（ステップＳ２３０）。
【００４５】
一方、パケット判定部２２からの判定通知が後続パケットであるにもかかわらず、ルーティングプロセス管理テーブル２４内に、後続パケットの送信元ＩＰアドレスと通信シーケンス番号に対応するデータが存在しない場合、パケット処理部２３はこの状態をエラーと判断する（ステップＳ２４０）。すなわち、この実施の形態１のネットワーク中継装置では、最初のパケットが到着して処理が行われた時点で、新規にルーティングプロセス２７を生成するか、あるいは既存のルーティングプロセス２７を利用することがルーティングプロセス管理テーブル２４に登録されているかの何れかであるはずなので、後続パケットを受信した時には、必ずそのパケットの送信元ＩＰアドレスと通信シーケンス番号に対応するデータがルーティングプロセス管理テーブル２４に存在しなければならない。したがって、パケット処理部２３は、エラー状態と判断し、送信元端末に対してエラーが発生したことを通知する。そして、通常のルーティング処理、すなわち、従来技術と同様に受信したパケットに対して通常ルーティング処理部２５を介してパケットを出力ポートに出力する動作に切り替える（ステップＳ２５０）。
【００４６】
このようにこの実施の形態１では、通信データの最初のパケットを受信した場合、パケット処理部２３が、ルーティングプロセス管理テーブル２４を検索し、同一宛先のルーティングプロセス２７が存在しているか否かを判定する。その結果同一宛先のルーティングプロセス２７が存在しない場合だけ、通常ルーティング処理部２５が内部のルーティングテーブルを検索してルーティング処理を行う。それ以外、すなわち、すでに同一宛先へのルーティングプロセス２７が存在する最初のパケットまたは後続パケットの場合には、すでに存在する同一宛先へのルーティングプロセス２７を利用してパケットを送信するようにしている。これにより、受信した全てのパケットに対して検索処理に時間がかかるルーティングテーブルを検索するルーティング処理を行うことなく、ルーティングプロセス管理テーブル２４の検索のみでパケットを送信することができる。そのため、ネットワーク中継装置の処理負荷を軽減し、高速にパケットを転送することができる。
【００４７】
実施の形態２．
図６〜図１０を用いて本発明の実施の形態２を説明する。図６は、実施の形態２のネットワーク中継装置が適用されるネットワークの構成を示す概念図である。実施の形態２のネットワーク中継装置が適用されるネットワークは、同一ドメインとして定義されている端末１０，１１と、ルータ２０ａ，２０ｂと、経路情報サーバ４０で構成される。端末１０はルータ２０ａ、２０ｂを介して端末１１と通信可能となっている。
【００４８】
端末１０，１１は、実施の形態１のネットワーク中継装置が適用されるシステムにおいて用いられた端末１０，１１の機能に加え、通信履歴を記憶する機能を備えており、経路情報サーバ４０は、たとえば、ＳＮＭＰ（Ｓｉｍｐｌｅ　Ｎｅｔｗｏｒｋ　Ｍａｎａｇｅｍｅｎｔ　Ｐｒｏｔｏｃｏｌ）などのネットワーク管理のプロトコルを用いてルータ２０ａ，２０ｂから通信履歴を定期的に取得する。経路情報サーバ４０は、取得した通信履歴を蓄積しておく。そして、定期的に通信履歴を宛先アドレス別にソートし、通信経路に変更があるか否かをルータ２０ａ、２０ｂに問い合わせる。ルータ２０ａ，２０ｂからネットワークの混雑や異常発生により宛先への経路が変更になったことを知らせるエラー情報が返信されてきた場合、経路情報サーバ４０は、そのエラー情報を記憶するとともに、端末１０，１１にエラー情報を送信する。端末１０，１１は、その情報を以後のパケット組み立て時の経路情報に反映させる。
【００４９】
図８は、この実施の形態２のネットワーク中継装置に用いられるパケットの構成を示している。この実施の形態２のネットワーク中継装置に用いられるパケットは、パケットの開始を示す開始フラグ、宛先ＭＡＣアドレス、送信元ＭＡＣアドレス、宛先ＩＰアドレス、送信元ＩＰアドレス、ＴＣＰデータ、このパケットが通信データのどのパケットであるかを示すパケット判定フラグ、通信データ毎に付与される通信シーケンス番号、パケットを発信した送信元端末から宛先端末までどのネットワーク中継装置を経由するかとそれぞれのネットワーク中継装置で使用する出力ポートの情報を含む経路情報と、ユーザデータと、パケットの終了を示す終了フラグで構成される。
【００５０】
図７は、この実施の形態２のネットワーク中継装置の構成を示すブロック図である。この実施の形態２のネットワーク中継装置は、入力ポート２１と、パケット判定部３０と、エラー情報管理テーブル３１と、通常ルーティング処理部３２と、プロセス管理部２６と、エラー修正プロセス３３と、出力ポート２８，２９とを備えている。実施の形態１と同じ機能を持つ構成部分には同一符号を付し、重複する説明は省略する。
【００５１】
パケット判定部３０は、実施の形態１のパケット判定部３０が有する機能に加え、後続パケット内の送信元ＩＰアドレスと経路情報と通信シーケンス番号に基づき、エラー情報管理テーブル３１を検索し、パケット内の経路情報が正しいか否かを判定する。そして、その結果、パケット内の経路情報にしたがってパケットを送信するか、エラー修正プロセス３３にしたがってパケットを送信するかを決定する。
【００５２】
エラー情報管理テーブル３１には、パケット内の経路情報に誤りがあるか否かの情報が登録される。図９は、エラー情報管理テーブル３１に対する登録項目を示すものであり、ここでは登録項目として、送信元ＩＰアドレス、通信シーケンスＩＤ、宛先アドレス、状態、開始時刻を挙げている。送信元ＩＰアドレスと宛先ＩＰアドレスには、パケット内の経路情報の該当する送信元ＩＰアドレスと宛先ＩＰアドレスが登録される。たとえば、図６に示すルータ２０ａのエラー情報管理テーブル３１の場合、送信元ＩＰアドレスには端末１０のＩＰアドレスが、宛先ＩＰアドレスには端末１１のＩＰアドレスがそれぞれ登録される。通信シーケンスＩＤには、パケット内の通信シーケンス番号が登録される。状態には、最初のパケットに対する通常のルーティング処理において決定した出力ポートとパケット内に記載された最終宛先に到達するための本ルータでの出力ポート（ルータ２０ａの場合にはルータ２０ｂへ到達するための出力ポート）が一致した場合には「ＯＫ」が、不一致の場合には「ＮＧ」が登録される。また、エラー情報管理テーブル３１には、修正プロセス情報として、状態が「ＮＧ」の場合にプロセス管理部２６によって生成されるエラー修正プロセス３３の情報も記憶される。
【００５３】
通常ルーティング処理部３２は、宛先ＩＰアドレスと出力ポートを対応させたルーティングテーブルを有し、通信データの最初のパケットに対して通常のルーティング処理、すなわち、従来技術と同様のロンゲストマッチによるルーティングを行う。そして、パケット内の経路情報とルーティング処理によって決定した出力ポートとを比較し、その結果をエラー情報管理テーブル３１に登録する。
【００５４】
エラー修正プロセス３３は、通常ルーティング処理部３２で決定した送信先とパケット内の経路情報の宛先が不一致の場合に生成され、通常ルーティング処理部３２で決定した宛先に対応する出力ポートにパケットを出力する。図６の場合は、エラー修正プロセス３３＃１は、出力ポート２８にパケットを転送し、エラー修正プロセス３３＃Ｎは、出力ポート２９にパケットを転送する。
【００５５】
図１０のフローチャートを参照して、実施の形態２のネットワーク中継装置の動作を説明する。入力ポート２１は、図８に示すフォーマットのパケットを受信し、受信したパケットをパケット判定部３０に出力する（ステップＳ３００）。パケット判定部３０は、受付けたパケット内のパケット判定フラグに基づき、このパケットが通信データの最初のパケットであるか否かを判定する（ステップＳ３１０）。
【００５６】
入力されたパケットが最初のパケットの場合、パケット判定部３０は、通常ルーティング処理部３２にパケットを出力する。通常ルーティング処理部３２は、パケット内の宛先ＩＰアドレスをキーワードに内部のルーティングテーブルの宛先アドレスを検索し、ルーティングを行う。そして、宛先アドレスに対応した出力ポートにパケットを出力する（ステップＳ３２０）。通常ルーティング処理部３２は、パケット内の経路情報に含まれる自分自身の出力ポートの情報とルーティングテーブルの宛先アドレスを検索して決定した出力ポートとを比較する（ステップＳ３３０）。パケット内の自分自身の経路情報に含まれる出力ポートの情報とルーティングテーブルの宛先アドレスを検索して決定した出力ポートが一致した場合、通常ルーティング処理部３２は、エラー情報管理テーブル３１に２つの情報が一致したことを登録する（ステップＳ３４０）。具体的には、図９に示すように、パケットに含まれる情報に基づき送信元ＩＰアドレス、通信シーケンスＩＤ、宛先ＩＰアドレスを、状態には２つの情報が一致したことを示す「ＯＫ」を、開始時刻には、エラー情報管理テーブル３１に登録した時刻をそれぞれ登録する。
【００５７】
パケット内の経路情報に含まれる出力ポート情報とルーティングテーブルの宛先を検索して決定した出力ポートが不一致の場合、通常ルーティング処理部３２は、エラー情報管理テーブル３１に２つの情報が不一致であったこと、すなわち、パケット内の経路情報とは異なるルーティングを行ったことを登録する（ステップＳ３５０）。具体的には、図９に示すようにパケットに含まれる情報に基づき送信元ＩＰアドレス、通信シーケンスＩＤ、宛先ＩＰアドレスを、状態には２つの情報が不一致であったことを示す「ＮＧ」を、開始時刻には、エラー情報管理テーブル３１に登録した時刻をそれぞれ登録する。そして、パケット内の経路情報を通常ルーティング処理部３２がパケットを出力する出力ポート、すなわち、ルーティングテーブルにより決定された出力ポートの情報に変更し、出力ポートにパケットを出力する。また、エラー修正プロセス３３を生成するために、プロセス管理部２６にパケット内の経路情報に誤りがあったことを通知する。
【００５８】
プロセス管理部２６は、通常ルーティング処理部３２が決定した出力ポートにパケットを送信するためのエラー修正プロセス３３を生成する（ステップＳ３６０）。プロセス管理部２６は、エラー情報管理テーブル３１に生成したエラー修正プロセス３３に対応する情報を登録する。具体的には、宛先ＩＰアドレス「１００．１５９．５．１４」、通信シーケンスＩＤ「１２４」が通常ルーティング処理部３２の決定した宛先と不一致であったためにエラー修正プロセス３３＃１が生成されたとすると、この対応を修正プロセス情報としてエラー情報管理テーブル３１に登録する。また、これらの情報は、経路情報サーバ４０に通知され、経路情報サーバ４０を介して接続されている端末１０，１１に配信される（ステップＳ３７０）。これにより、端末１０，１１は、修正された経路情報をパケット内の経路情報に反映させる。
【００５９】
一方、受信したパケットが最初のパケットでない場合、すなわち、後続または最終のパケットであった場合、パケット判定部３０は、パケット内の送信元ＩＰアドレスと通信シーケンス番号とをキーワードに、エラー情報管理テーブル３１の送信元ＩＰアドレスと通信シーケンスＩＤとを検索する（ステップＳ３８０）。そして、合致した送信元ＩＰアドレスと通信シーケンスＩＤとが検索された場合、パケット判定部３０は、合致した送信元ＩＰアドレスに対応する状態が「ＯＫ」であるか否かを確認する（ステップＳ３９０）。合致した送信元ＩＰアドレスと通信シーケンスＩＤに対応する状態が「ＯＫ」であれば、パケット判定部３０は、パケット内の経路情報にしたがってパケットを出力する（ステップＳ４００）。合致したアドレスと通信シーケンスＩＤに対応する状態が「ＮＧ」であれば、パケット判定部３０は、エラー情報管理テーブル３１の修正プロセス情報に基づいて該当するエラー修正プロセス３３にパケットを出力する（ステップＳ４１０）。パケットを受け取ったエラー修正プロセス３３は、該当出力ポートにパケットを送信し、当該出力ポートは、パケットをネットワークに送信する。
【００６０】
このようにこの実施の形態２では、通信データの最初のパケットに対してのみ通常ルーティング処理部３２は通常のルーティング処理を行い、その結果とパケット内の通信経路が一致しているか否かをエラー情報管理テーブル３１に登録する。パケット内の通信経路とルーティング処理の結果が不一致の場合は、プロセス管理部２６が、ルーティング処理結果に基づいたエラー修正プロセス３３を生成する。パケット判定部３０は、後続のパケット内に含まれる送信元ＩＰアドレスと通信シーケンス番号とを用いてエラー情報管理テーブル３１を検索し、パケット内の経路情報が正しいか否かを判定し、その結果に基づいて、経路情報に基づきパケットを送信するか、エラー修正プロセス３３に基づいてパケットを送信するかを判定するようにしている。すなわち、最初のパケットのみルーティングテーブルを検索するルーティングを実行し、それ以降の後続パケットは、その結果を利用してパケットの送信先を決定するようにしているため、ネットワーク中継装置の処理負荷を軽減し、高速にパケットを転送することができる。
【００６１】
なお、より高速にパケットを転送するために、後続パケットについてはエラー情報管理テーブル３１を検索することなしに、パケット内の経路情報に基づいてパケットを送信するようにしてもよい。
【００６２】
【発明の効果】
以上説明したように、この発明によれば、パケット判定部は、受信したパケットが通信データの最初のパケットまたは後続パケットであるかを判定し、パケット処理部に対して該パケットと、該パケットが同一通信シーケンス中の最初のパケットであるか否かという情報を受け渡すようにしているため、ネットワーク中継装置の処理負荷を軽減することができる。
【００６３】
つぎの発明によれば、パケット処理部は、受信したパケットが最初のパケットであってかつルーティングプロセス管理テーブルに受信した最初のパケット内の宛先ＩＰアドレスと同一宛先ＩＰアドレスのルーティングプロセスが登録されていない場合は、通常ルーティング処理部に受信した最初のパケットの処理を実行させ、受信したパケットが最初のパケットであってかつルーティングプロセス管理テーブルに受信した最初のパケット内の宛先ＩＰアドレスと同一宛先ＩＰアドレスのルーティングプロセスが登録されている場合は、同一宛先ＩＰアドレスのルーティングプロセスを利用するとともにルーティングプロセス管理テーブルにこのルーティングプロセスを利用することを登録し、受信したパケットが後続パケットの場合は、ルーティングプロセス管理テーブルに登録されているルーティングプロセスのうち受信した後続パケット内の送信元ＩＰアドレスおよび通信シーケンス番号が一致するルーティングプロセスを利用することを決定するようにしている。すなわち、ネットワーク中継装置が全てのパケットに対して検索処理に時間がかかるルーティングテーブルを検索するルーティング処理を行う必要がないため、ネットワーク中継装置の処理負荷を軽減し、高速にパケットを転送することができる。
【００６４】
つぎの発明によれば、パケット処理部は、パケット判定部の判定で後続パケットであると判定されたパケットに対して、ルーティングプロセス管理テーブルを検索しても後続パケットに含まれる送信元ＩＰアドレスおよび通信シーケンス番号と一致したルーティングプロセスが検出されなかった場合、異常が生じたと判定し、通常ルーティング処理部は、異常が生じたと判断された場合、後続パケットと同じ送信元ＩＰアドレスおよび通信シーケンスＩＤを持つ全てのパケットに対してパケットを送信するポートを決定し、その決定にしたがってパケットを送信するようにしているため、ネットワーク中継装置としての信頼性を高めることができる。
【００６５】
つぎの発明によれば、通信データの最初のパケットに対してのみ通常ルーティング処理部が最初のパケット内の宛先ＩＰアドレスに基づきパケットを送信するポートを決定し、決定されたポートと最初のパケット内の通信経路が一致しているか否かをエラー情報管理テーブルに登録し、決定されたポートと最初のパケット内の通信経路とが一致した場合は、最初のパケット内の経路情報にしたがって最初のパケットを送信し、決定されたポートと最初のパケット内の通信経路とが不一致の場合は、決定されたポートにしたがって最初のパケットを送信するとともに通常ルーティング処理部が決定した結果に基づいたエラー修正プロセスを生成する。通信データの後続パケットに対しては、そのパケット内の経路情報にしたがってパケットを送信するようにしているため、検索処理に時間がかかるルーティングテーブルを検索するルーティング処理は最初のパケットに対してのみ行えばよく、ネットワーク中継装置の処理負荷を軽減し、高速にパケットを転送することができる。
【００６６】
つぎの発明によれば、通信データの最初のパケットに対してのみ通常ルーティング処理部が最初のパケット内の宛先ＩＰアドレスに基づきパケットを送信するポートを決定し、決定されたポートと最初のパケット内の通信経路が一致しているか否かをエラー情報管理テーブルに登録し、決定されたポートと最初のパケット内の通信経路とが一致した場合は、最初のパケット内の経路情報にしたがって最初のパケットを送信し、決定されたポートと最初のパケット内の通信経路とが不一致の場合は、決定されたポートにしたがって最初のパケットを送信するとともに通常ルーティング処理部が決定した結果に基づいたエラー修正プロセスを生成する。後続のパケットについてはエラー情報管理テーブルを検索し、パケット内の経路情報が正しいか否かを判定し、その結果に基づいて、経路情報に基づきパケットを転送するか、エラー修正プロセスに基づいてパケットを転送するか決定するようにしているため、検索処理に時間がかかるルーティングテーブルを検索するルーティング処理は最初のパケットに対してのみ行えばよく、ネットワーク中継装置の処理負荷を軽減し、高速にパケットを転送することができる。
【００６７】
つぎの発明によれば、パケット判定部は、受信したパケットが後続パケットの場合、エラー情報管理テーブルを参照して、該後続パケット内に記載された経路情報が正しいかをチェックし、この情報が正しければ、後続パケット内の経路情報にしたがってパケットを送信し、エラー情報管理テーブルを参照して、該後続パケット内に記載された経路情報が正しいかをチェックし、この情報が誤りであれば、エラー修正プロセスにしたがってパケットを送信するようにしているため、検索処理に時間がかかるルーティングテーブルを検索するルーティング処理は最初のパケットに対してのみ行えばよく、ネットワーク中継装置の処理負荷を軽減し、高速にパケットを転送することができる。
【図面の簡単な説明】
【図１】実施の形態１のネットワーク中継装置が適用されるシステムの構成を示すブロック図である。
【図２】実施の形態１のネットワーク中継装置の構成を示すブロック図である。
【図３】実施の形態１のネットワーク中継装置に適用されるパケットの構成を示す図である。
【図４】ルーティングプロセス管理テーブルの内容を示す図である。
【図５】実施の形態１のネットワーク中継装置の動作を説明するためのフローチャートである。
【図６】実施の形態２のネットワーク中継装置が適用されるシステムの構成を示すブロック図である。
【図７】実施の形態２のネットワーク中継装置の構成を示すブロック図である。
【図８】実施の形態２のネットワーク中継装置に適用されるパケットの構成を示す図である。
【図９】エラー情報管理テーブルの内容を示す図である。
【図１０】実施の形態２のネットワーク中継装置の動作を説明するためのフローチャートである。
【図１１】従来のネットワーク中継装置の構成を示すブロック図である。
【図１２】ルーティングテーブルの内容を示す図である。
【図１３】従来のネットワーク中継装置に適用されるパケットの構成を示す図である。
【符号の説明】
１０，１１，１２　端末、２０ａ，２０ｂ，２０ｃ，２０ｄ，２０ｅ，２０ｆ，２０ｇ　ルータ、２１　入力ポート、２２，３０　パケット判定部、２３　パケット処理部、２４　ルーティンプロセス管理テーブル、２５，３２　通常ルーティング処理部、２６　プロセス管理部、２７　ルーティングプロセス、２８，２９　出力ポート、３１　エラー情報管理テーブル、３３　エラー修正プロセス、４０　経路情報サーバ、１００　ルーティングテーブル、２００　ＣＰＵ。
【図１】
2004048278.tif 000003
【図２】
2004048278.tif 000004
【図３】
2004048278.tif 000005
【図４】
2004048278.tif 000006
【図５】
2004048278.tif 000007
【図６】
2004048278.tif 000008
【図７】
2004048278.tif 000009
【図８】
2004048278.tif 000010
【図９】
2004048278.tif 000011
【図１０】
2004048278.tif 000012
【図１１】
2004048278.tif 000013
【図１２】
2004048278.tif 000014
【図１３】
2004048278.tif 000015