(57)【要約】 【課題】  本発明は、通信の信頼性を確保したままネットワークシステムにおける通信経路の切り替え速度の向上を目的とする。【解決手段】  本実施例に係る通信装置は、第１の情報処理装置と第２の情報処理装置との通信を複数の通信経路を介して中継する通信装置において、該第１の情報処理装置より受信する受信情報を格納する格納手段と、該格納手段より取り出した該受信情報を送信情報として、該複数の通信経路のうち少なくとも一つの通信経路を介して、該第２の情報処理装置へ送信する通信手段と、該第２の情報処理装置より送信される確認情報を監視し、該確認情報を受信しない場合には、該受信情報を送信情報として、他の通信経路を介して、該第２の情報処理装置へ送信することを該通信手段に指示する監視手段とからなることを特徴とする。【選択図】  図１
2008072521.tif 000002
【特許請求の範囲】
【請求項１】
第１の情報処理装置と第２の情報処理装置との通信を複数の通信経路を介して中継する通信装置において、
該第１の情報処理装置より受信する受信情報を格納する格納手段と、
該格納手段より取り出した該受信情報を送信情報として、該複数の通信経路のうち少なくとも一つの通信経路を介して、該第２の情報処理装置へ送信する通信手段と、
該第２の情報処理装置より送信される確認情報を監視し、該確認情報を受信しない場合には、該受信情報を送信情報として、他の通信経路を介して、該第２の情報処理装置へ送信することを該通信手段に指示する監視手段と、
からなることを特徴とする通信装置。
【請求項２】
請求項１に記載の通信装置は、
該通信手段において、該送信情報を送信した通信経路を介して、該確認情報を受信することを特徴とする通信装置。
【請求項３】
請求項１に記載の通信装置は、
該監視手段において、該確認情報を受信した場合には、該格納手段は受信した該確認情報に対応する該情報を削除することを特徴とする通信装置。
【請求項４】
第１の情報処理装置と第２の情報処理装置との通信を複数の通信経路を介して中継する通信方法において、
該第１の情報処理装置より受信する受信情報を格納する格納ステップと、
該格納ステップにおいて格納した該受信情報を送信情報として取り出す取り出しステップと、
該取り出しステップにおいて取り出した該送信情報を、該複数の通信経路のうち少なくとも一つの通信経路を介して、該第２の情報処理装置へ送信する通信ステップと、
該第２の情報処理装置より送信される確認情報を監視し、該確認情報を受信しない場合には、該受信情報を該送信情報として、他の通信経路を介して、該第２の情報処理装置へ送信することを該通信手段に指示する監視ステップと、
からなることを特徴とする通信方法。
【請求項５】
第１の情報処理装置と第２の情報処理装置との通信を複数の通信経路を介して中継する通信装置において実行させることが可能な通信プログラムにおいて、
該第１の情報処理装置より受信する受信情報を格納する格納ステップと、
該格納ステップにおいて格納した該受信情報を送信情報として取り出す取り出しステップと、
該取り出しステップにおいて取り出した該送信情報を、該複数の通信経路のうち少なくとも一つの通信経路を介して、該第２の情報処理装置へ送信する通信ステップと、
該第２の情報処理装置より送信される確認情報を監視し、該確認情報を受信しない場合には、該受信情報を該送信情報として、他の通信経路を介して、該第２の情報処理装置へ送信することを該通信手段に指示する監視ステップと、
からなることを特徴とする通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置間の通信経路の冗長化の技術に関する。                    
【背景技術】
【０００２】
ネットワークシステムの信頼性を向上するために、ネットワークシステムを構成する通信経路は冗長化されている。情報処理装置は所定の通信経路を介して、他の情報処理装置と通信を行う。そして通信に使用していた通信経路に障害が発生した場合、情報処理装置は他の通信可能な通信経路を用いて該他の情報処理装置と通信を行う。これによりネットワークシステムは、障害が発生した場合であっても、通信を継続することができる。
【０００３】
しかしながら通信経路に障害が発生した場合、情報処理装置は障害が発生した通信経路に送信済みの情報を他の通信経路に送り直さなければならず、通信経路の切り替えを迅速に行うことができない。
【０００４】
また通信経路の冗長化技術に関するものとして以下の特許文献がある。
【特許文献１】特開２００５−２６９０２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、通信の信頼性を確保したままネットワークシステムにおける通信経路の切り替え速度の向上を目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る通信装置は、第１の情報処理装置と第２の情報処理装置との通信を複数の通信経路を介して中継する通信装置において、該第１の情報処理装置より受信する受信情報を格納する格納手段と、該格納手段より取り出した該受信情報を送信情報として、該複数の通信経路のうち少なくとも一つの通信経路を介して、該第２の情報処理装置へ送信する通信手段と、該第２の情報処理装置より送信される確認情報を監視し、該確認情報を受信しない場合には、該受信情報を送信情報として、他の通信経路を介して、該第２の情報処理装置へ送信することを該通信手段に指示する監視手段とからなることを特徴とする。
【０００７】
また本発明に係る通信装置は、該通信手段において、該送信情報を送信した通信経路を介して、該確認情報を受信することを特徴とする。
【０００８】
また本実施例に係る通信装置は、該監視手段において、該確認情報を受信した場合には、該格納手段は受信した該確認情報に対応する該情報を削除することを特徴とする。
【０００９】
また本発明に係る通信方法は、第１の情報処理装置と第２の情報処理装置との通信を複数の通信経路を介して中継する通信方法において、該第１の情報処理装置より受信する受信情報を格納する格納ステップと、該格納ステップにおいて格納した該受信情報を送信情報として取り出す取り出しステップと、該取り出しステップにおいて取り出した該送信情報を、該複数の通信経路のうち少なくとも一つの通信経路を介して、該第２の情報処理装置へ送信する通信ステップと、該第２の情報処理装置より送信される確認情報を監視し、該確認情報を受信しない場合には、該受信情報を該送信情報として、他の通信経路を介して、該第２の情報処理装置へ送信することを該通信手段に指示する監視ステップとからなることを特徴とする。
【００１０】
また本発明に係る通信プログラムは、第１の情報処理装置と第２の情報処理装置との通信を複数の通信経路を介して中継する通信プログラムにおいて、該第１の情報処理装置より受信する受信情報を格納する格納ステップと、該格納ステップにおいて格納した該受信情報を送信情報として取り出す取り出しステップと、該取り出しステップにおいて取り出した該送信情報を、該複数の通信経路のうち少なくとも一つの通信経路を介して、該第２の情報処理装置へ送信する通信ステップと、該第２の情報処理装置より送信される確認情報を監視し、該確認情報を受信しない場合には、該受信情報を該送信情報として、他の通信経路を介して、該第２の情報処理装置へ送信することを該通信手段に指示する監視ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、情報装置間に配置された情報を中継する通信装置において情報を保持することによって、通信経路に障害が発生した場合における通信経路の切り替えを迅速に行うことができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明を実施するための形態を示す。
【実施例１】
【００１３】
図１は、本実施例に係るネットワークシステムの概念図である。
【００１４】
本実施例に係るネットワークシステムは、サーバ１０１とサーバ１０２がネットワークを介して通信を行うネットワークシステムであって、サーバ１０１とサーバ１０２の間にＴＣＰアクセラレータ１０３、１０４が中継している構成となっている。ＴＣＰアクセラレータ１０３、１０４は、ＷＡＮ１０５、１０６を介して通信を行う装置であって、サーバ１０１とサーバ１０２との通信を高速化する装置である。ＴＣＰアクセラレータ１０３とＴＣＰアクセラレータ１０４は、ＷＡＮ１０５とＷＡＮ１０６の異なる２つのネットワークに接続している。サーバ１０１とサーバ１０２は、それぞれのＷＡＮ１０５、１０６を通信経路として情報のやりとりを行う。ＴＣＰアクセラレータ１０３、１０４は、ＴＣＰアクセラレータ間でのみ有効な専用のプロトコル（以下、専用プロトコルと呼ぶ。）によって通信を行う通信装置である。サーバ１０１は、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）を用いて、ＴＣＰアクセラレータ１０３と通信を行い、同様にしてサーバ１０２は、ＴＣＰ／ＩＰを用いてＴＣＰアクセラレータ１０４と通信を行う。そしてＴＣＰアクセラレータ１０３とＴＣＰアクセラレータ１０４は、ＷＡＮ１０５、１０６を介して専用プロトコルを用いて通信を行う。
【００１５】
そしてＴＣＰアクセラレータ１０３はルーティングテーブル６００を有しており、ＴＣＰアクセラレータ１０４はルーティングテーブル７００を有している。ルーティングテーブルは、サーバ１０１、１０２、ＴＣＰアクセラレータ１０３、１０４、ルータが保持する情報パケット（以下、単にパケットと呼ぶ。）の送信先に関する経路情報が記載されているテーブルであって、本実施例におけるルーティングテーブルには、パケットを送信する「送信先」、通信に使用する「ゲートウェイ」、通信に使用する「インターフェース（Ｉ／Ｆ）」が示されている。パケット内には、パケットを送信したい所望の送信先の情報が存在する。ＴＣＰアクセラレータ１０３、１０４は、その所望の送信先の情報とＴＣＰアクセラレータ１０３、１０４が有しているルーティングテーブルを比較して、対応するゲートウェイにパケットを送信する。具体的には、パケットには、以下に示すように送信先のＭＡＣアドレス、ＩＰアドレスの情報が含まれているので、送信先のＭＡＣアドレス、ＩＰアドレスとルーティングテーブルに記載されているＭＡＣアドレス、ＩＰアドレスを比較してパケットを所定のゲートウェイに送信する。
【００１６】
また本実施例におけるパケットは、送信元を示す送信元のＭＡＣアドレス、ＩＰアドレスと送信先を示す送信先のＭＡＣアドレス、ＩＰアドレス、ＴＣＰヘッダ、データから構成されている。ＴＣＰヘッダは、ＴＣＰの機能に関する情報が含まれており、ＡＣＫ、ＳＹＮ、ＦＩＮパケットなどパケットの種類を示す各フラグの情報、ウインドウサイズの情報などが含まれている。データは、送信したい本来の情報であって、パケットを送信するための送信先のＭＡＣアドレスなどの制御情報を除いたものである。
【００１７】
ＴＣＰアクセラレータ１０３は、ＬＡＮポート１０３１、ＷＡＮポート１０３２、１０３３を有している。ＬＡＮポート１０３１、ＷＡＮポート１０３２、１０３３はすべて物理インタフェースであって、ＬＡＮポート１０３１は、サーバ１０１とＴＣＰアクセラレータ１０３を接続するのに用いられている。ＷＡＮポート１０３２は、ＷＡＮ１０５を介してＴＣＰアクセラレータ１０４が有するＷＡＮポート１０４２と接続されている。同様にして、ＷＡＮポート１０３３は、ＷＡＮ１０６を介してＴＣＰアクセラレータ１０４が有するＷＡＮポート１０４３と接続されている。ＴＣＰアクセラレータ１０３とＴＣＰアクセラレータ１０４は、サーバ１０１とサーバ１０２の通信を行う通信経路としてＷＡＮ１０５を介したＷＡＮポート１０３２、ＷＡＮ１０４２間の通信経路を主として利用する。
【００１８】
ＴＣＰアクセラレータ１０３とＴＣＰアクセラレータ１０４は、互いにＷＡＮポート１０３２−ＷＡＮポート１０４２間とＷＡＮポート１０３３−ＷＡＮポート１０４３間で、予め設定可能な時間間隔で監視パケットを送信しあう。監視パケットは、ＷＡＮポート１０３２−ＷＡＮポート１０４２間とＷＡＮポート１０３３−ＷＡＮポート１０４３間の通信経路が正常であるか否かを監視するパケットである。ＴＣＰアクセラレータ１０３、１０４は、監視パケットを受信した場合は応答パケットを互いに返信する。監視パケットに対する応答パケットが所定の時間以上経過しても返信されない場合には、ＷＡＮ１０５、１０６を介した通信経路に障害が発生したと判断される。通信経路の切り替えは、図１０に示す切り替え表１０００に合わせて行われる。切り替え表１０００は、ＴＣＰアクセラレータ１０３の格納部２０２に格納されている。ＴＣＰアクセラレータ１０３の使用している運用ポートがＷＡＮポート１０３２であって、ＷＡＮポート１０３２−ＷＡＮポート１０４２間、ＷＡＮポート１０３３−ＷＡＮポート１０４３間の通信経路が共に正常である場合には、ＷＡＮポート１０３２を継続して使用する。ＷＡＮポート１０３２−ＷＡＮポート１０４２間の通信経路に障害が発生し、ＷＡＮポート１０３３−ＷＡＮポート１０４３間の通信経路が正常である場合は、運用ポートとしてＷＡＮポート１０３３を使用して通信を行う。ＷＡＮポート１０３２−ＷＡＮポート１０４２間の通信経路が正常であって、ＷＡＮポート１０３３−ＷＡＮポート１０４３間の通信経路に障害が発生した場合には、継続してＷＡＮポート１０３２を使用して通信を行う。ＷＡＮポート１０３２−ＷＡＮポート１０４２間、ＷＡＮポート１０３３−ＷＡＮポート１０４３間の通信経路の両方において障害が発生した場合には、運用ポートの切り替えを行わず、どちらかの通信経路が復旧するまで待機する。ＴＣＰアクセラレータ１０３の使用している運用ポートがＷＡＮポート１０３３であって、ＷＡＮポート１０３２−ＷＡＮポート１０４２間、ＷＡＮポート１０３３−ＷＡＮポート１０４３間の通信経路が共に正常である場合には、ＷＡＮポート１０３３を継続して使用する。ＷＡＮポート１０３２−ＷＡＮポート１０４２間の通信経路に障害が発生し、ＷＡＮポート１０３３−ＷＡＮポート１０４３間の通信経路が正常である場合は、ＷＡＮポート１０３３を継続して使用する。ＷＡＮポート１０３２−ＷＡＮポート１０４２間の通信経路が正常であって、ＷＡＮポート１０３３−ＷＡＮポート１０４３間の通信経路に障害が発生した場合には、運用ポートとしてＷＡＮポート１０３２を使用して通信を行う。ＷＡＮポート１０３２−ＷＡＮポート１０４２間、ＷＡＮポート１０３３−ＷＡＮポート１０４３間の通信経路の両方において障害が発生した場合には、運用ポートの切り替えを行わず、どちらかの通信経路が復旧するまで待機する。ＴＣＰアクセラレータ１０４も同様にして図１０に相当する切り替え表を有している。
【００１９】
ＷＡＮポート１０３２、ＷＡＮ１０４２間の通信経路において障害が発生した場合には、ＴＣＰアクセラレータ１０３、１０４それぞれに搭載されているＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）１０３４、１０４４がＷＡＮポート１０３３、ＷＡＮ１０４３間の通信経路に切り替える。
【００２０】
ＴＣＰアクセラレータ１０３は、ＬＡＮポート１０３１、ＷＡＮポート１０３２、１０３３の物理インタフェースを有している。ＬＡＮポート１０３１は、サーバ１０１とＴＣＰアクセラレータ１０３を接続するのに用いられている。ＷＡＮポート１０３２は、ＷＡＮ１０５を介してＴＣＰアクセラレータ１０４が有するＷＡＮポート１０４２と接続されている。同様にして、ＷＡＮポート１０３３は、ＷＡＮ１０６を介してＴＣＰアクセラレータ１０４が有するＷＡＮポート１０４３と接続されている。またＴＣＰアクセラレータ１０４は、ＬＡＮポート１０４１、ＷＡＮポート１０４２、１０４３の物理インタフェースを有している。ＬＡＮポート１０４１は、サーバ１０２とＴＣＰアクセラレータ１０４を接続するのに用いられている。ＷＡＮポート１０４２は、ＷＡＮ１０５を介してＴＣＰアクセラレータ１０３が有するＷＡＮポート１０３２と接続されている。同様にして、ＷＡＮポート１０４３は、ＷＡＮ１０６を介してＴＣＰアクセラレータ１０３が有するＷＡＮポート１０３３と接続されている。
【００２１】
そして、ＴＣＰアクセラレータ１０３は仮想インタフェース１０３５を有しており、仮想インタフェース１０３５は仮想ゲートウェイ１０３６と接続されている。仮想インタフェース１０３５と仮想ゲートウェイ１０３６は、物理的には存在せず、ＯＳ１０３４によって仮想的に作り出され、ソフト的に設定が行われる。同様にして、ＴＣＰアクセラレータ１０４は仮想インタフェース１０４５を有しており、仮想インタフェース１０４５は仮想ゲートウェイ１０４６と接続されている。仮想インタフェース１０４５と仮想ゲートウェイ１０４６は、物理的には存在せず、ＯＳ１０４４によって仮想的に作り出され、ソフト的に設定が行われる。サーバ１０１は、ＳＹＮパケットを仮想ゲートウェイ１０３６に送信し、仮想ゲートウェイ１０３６はＳＹＮパケットを受信するとＡＣＫパケットをサーバ１０１に送信する。サーバ１０１は、仮想ゲートウェイ１０３６よりＡＣＫパケットを受信すると、ＡＣＫパケットを受け取った旨のＡＣＫパケットを仮想ゲートウェイ１０３６に送信する。仮想ゲートウェイ１０３６がＡＣＫパケットを受信するとサーバ１０１と仮想ゲートウェイ１０３６の間でセッションが確立される。サーバ１０１と仮想ゲートウェイ１０３６は、ＴＣＰ／ＩＰによって通信を行っている。同様にしてサーバ１０２は、ＳＹＮパケットを仮想ゲートウェイ１０４６に送信し、仮想ゲートウェイ１０４６はＳＹＮパケットを受信するとＡＣＫパケットをサーバ１０２に送信する。サーバ１０２は、仮想ゲートウェイ１０４６よりＡＣＫパケットを受信すると、ＡＣＫパケットを受け取った旨のＡＣＫパケットを仮想ゲートウェイ１０４６に送信する。仮想ゲートウェイ１０４６がＡＣＫパケットを受信するとサーバ１０２と仮想ゲートウェイ１０４６の間でセッションが確立される。サーバ１０２と仮想ゲートウェイ１０４６は、ＴＣＰ／ＩＰによって通信を行っている。さらに仮想ゲートウェイ１０３６と仮想ゲートウェイ１０４６に間においても、仮想ゲートウェイ１０３６が仮想ゲートウェイ１０４６にＳＹＮパケットを送信し、仮想ゲートウェイ１０４６がＳＹＮパケットを受信すると、仮想ゲートウェイ１０４６はＡＣＫパケットを仮想ゲートウェイ１０３６に送信する。仮想ゲートウェイ１０３６は、ＡＣＫパケットを受信すると、ＡＣＫパケットを受信した旨のＡＣＫパケットを仮想ゲートウェイ１０４６に送信する。仮想ゲートウェイ１０４６がＡＣＫパケットを受信すると、仮想ゲートウェイ１０３６と仮想ゲートウェイ１０４６の間でセッションが確立される。
【００２２】
仮想ゲートウェイ１０３６と仮想ゲートウェイ１０４６とのパケットの送受信は、物理的にはＷＡＮ１０５を介したＷＡＮポート１０３２とＷＡＮポート１０４２の間の通信経路を経由して行われる。そしてＷＡＮ１０５を介したＷＡＮポート１０３２とＷＡＮポート１０４２の間の通信経路に障害が発生した場合、ＯＳ１０３４、１０４４はＷＡＮ１０６を介したＷＡＮポート１０３３とＷＡＮポート１０４３の間の通信経路に切り替えて、仮想ゲートウェイ１０３６と仮想ゲートウェイ１０４６とのパケットの送受信を行う。ここで通信経路を切り替えた場合であっても、ＯＳ１０３４、１０４４が通信を行う物理的インタフェースを切り替えるため、仮想ゲートウェイ１０３６と仮想ゲートウェイ１０４６との間のセッションは維持される。これにより通信経路に障害が発生した場合であっても、セッションを維持したまま通信経路を切り替えることができるため、パケットの損失などを起こすことなく通信経路の切り替えを行うことができる。
【００２３】
また付記に記載の格納手段は、バッファ２０３に相当するものであり、バッファ２０３と同等の機能を有する。付記に記載の通信手段及び監視手段は、制御２０１において実行される機能と同等の機能を有する。さらの付記に記載の通信プログラムは、通信装置の格納部２０２に格納されており、ＴＣＰアクセラレータ１０３において実行可能な通信プログラムである。
【００２４】
図２は、本実施例に係るＴＣＰアクセラレータ１０３のハードブロック図である。
【００２５】
ＴＣＰアクセラレータ１０３は、制御部２０１、ＬＡＮポート１０３１、ＷＡＮポート１０３２、１０３３、格納部２０２、バッファ２０３から構成されている。
【００２６】
制御部２０１は、ＣＰＵ、ＲＡＭなどで構成され、ＬＡＮポート１０３１、ＷＡＮポート１０３２、１０３３、格納部２０２、バッファ２０３の各種制御を行う。これらの制御は、格納部２０２に格納されているＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、制御プログラムの実行等により処理される。制御部２０１は、格納部２０２に格納されたＯＳを起動して通信経路の切り替え処理などを行う。またＯＳは、サーバ１０１から受信するパケットをバッファ２０３に格納し、さらに格納したパケットを呼び出し、ＴＣＰアクセラレータ１０４に送信する処理を行う。本実施例において、パケットはバッファ２０３に格納され、順次ＷＡＮポート１０３２若しくはＷＡＮポート１０３３から送信される構成となっており、ＴＣＰアクセラレータ１０３から送信されたパケットは定期的にバッファ２０３から削除される。ＴＣＰアクセラレータ１０３がＴＣＰアクセラレータ１０３に送信したパケットが削除されるタイミングは、バッファ２０３に格納されるパケットの量が所定の閾値を超えた場合に削除する構成であってもよいし、所定の時間が経過した後にパケットを削除する構成であってもよい。
【００２７】
ＬＡＮポート１０３１は、サーバ１０１と接続されている。サーバ１０１とＴＣＰアクセラレータ１０３は、ＴＣＰ／ＩＰによってセッションを張り、通信を行う。制御部２０１は、サーバ１０１からＬＡＮポート１０３１を介して受信したパケットをバッファ２０３に格納する。ここで制御部２０１は、仮想インタフェース１０３５と仮想ゲートウェイ１０３６を仮想的に作成し、バッファ２０３に格納したパケットは仮想ゲートウェイ１０３６に送信されたものとして処理する。
【００２８】
ＷＡＮポート１０３２、１０３３は、それぞれ、ＷＡＮ１０５、１０６を介して、ＴＣＰアクセラレータ１０４と接続されている。ＷＡＮポート１０３２とＷＡＮポート１０３３はＴＣＰアクセラレータ１０４が有する異なるＷＡＮポート１０４２とＷＡＮポート１０４３にそれぞれ接続されている。ＴＣＰアクセラレータ１０３は、ＷＡＮポート１０３２とＷＡＮポート１０３３を介した２つの通信経路をＴＣＰアクセラレータ１０４との間に有しており、通常はＷＡＮポート１０３２を用いてＴＣＰアクセラレータ１０４と通信を行っている。制御部２０１によって動作しているＯＳ１０３４が、ＷＡＮポート１０３２を用いた通信経路に障害が発生したことを判断した場合には、ＯＳ１０３４は、障害が発生した通信経路をＷＡＮポート１０３３を用いた通信経路に切り替える。
【００２９】
格納部２０２は、ＯＳ１０３４などのＴＣＰアクセラレータ１０３を制御するプログラム、アプリケーションなどが格納されている。またルーティングテーブルも格納されており、ＯＳ１０３４は、ルーティングテーブルを参照してＴＣＰアクセラレータが受信したパケットの送信先を決定してパケットを送信する。
【００３０】
バッファ２０３は、パケットを一時的に保持する記憶領域であって、主としてサーバ１０１から受信したパケットを格納する。制御部２０２は、格納した該パケットをバッファ２０３から呼び出して、順次ＴＣＰアクセラレータ１０３に物理的に接続されている所定のルータ（図示せず。）に送信する。これにより、ＴＣＰ／ＩＰによってサーバ１０１とＴＣＰアクセラレータ１０３が通信する通信速度とＴＣＰアクセラレータ１０３、１０４間の通信速度の差を補う構成となっている。
【００３１】
本実施例では、ＴＣＰアクセラレータ１０３とＴＣＰアクセラレータ１０４の間の通信は、ＷＡＮポート１０３２を介した通信経路を主として用いる。ＷＡＮポート１０３２を介した通信経路に障害が発生した場合には、ＯＳ１０３４が、ＷＡＮポート１０３３を介した通信経路を代替経路として切り替える。
【００３２】
図３は、本実施例におけるパケットの送信経路を示した概念図である。
【００３３】
サーバ１０１がサーバ１０２にパケットを送信する場合の送信経路を示した概念図であって、ＴＣＰアクセラレータ１０３とＴＣＰアクセラレータ１０４との間の通信は、ＷＡＮポート１０３２、１０４２の間のＷＡＮ１０５を介した通信経路を用いる。
【００３４】
まず、本実施例におけるネットワークシステムは、通信を行うためにセッションの確立を行う。サーバ１０１と仮想ゲートウェイ１０３６のセッションを矢印３０１で表わす。同様にして、サーバ１０２と仮想ゲートウェイ１０４６のセッションを矢印３０２で表わす。仮想ゲートウェイ１０３６と仮想ゲートウェイ１０４６のセッションは矢印３０３で表わす。まずサーバ１０１が、ＳＹＮパケットを仮想ゲートウェイ１０３６に送信し、仮想ゲートウェイ１０３６はＳＹＮパケットを受信するとＡＣＫパケットをサーバ１０１に送信する。サーバ１０１は、仮想ゲートウェイ１０３６よりＡＣＫパケットを受信すると、ＡＣＫパケットを受け取った旨のＡＣＫパケットを仮想ゲートウェイ１０３６に送信する。仮想ゲートウェイ１０３６がＡＣＫパケットを受信するとサーバ１０１と仮想ゲートウェイ１０３６の間でセッション３０１が確立される。同様にしてサーバ１０２は、ＳＹＮパケットを仮想ゲートウェイ１０４６に送信し、仮想ゲートウェイ１０４６はＳＹＮパケットを受信するとＡＣＫパケットをサーバ１０２に送信する。サーバ１０２は、仮想ゲートウェイ１０４６よりＡＣＫパケットを受信すると、ＡＣＫパケットを受け取った旨のＡＣＫパケットを仮想ゲートウェイ１０４６に送信する。仮想ゲートウェイ１０４６がＡＣＫパケットを受信するとサーバ１０２と仮想ゲートウェイ１０４６の間でセッション３０２が確立される。仮想ゲートウェイ１０３６と仮想ゲートウェイ１０４６に間においても、仮想ゲートウェイ１０３６が仮想ゲートウェイ１０４６にＳＹＮパケットを送信し、仮想ゲートウェイ１０４６がＳＹＮパケットを受信すると、仮想ゲートウェイ１０４６はＡＣＫパケットを仮想ゲートウェイ１０３６に送信する。仮想ゲートウェイ１０３６は、ＡＣＫパケットを受信すると、ＡＣＫパケットを受信した旨のＡＣＫパケットを仮想ゲートウェイ１０４６に送信する。仮想ゲートウェイ１０４６がＡＣＫパケットを受信すると、仮想ゲートウェイ１０３６と仮想ゲートウェイ１０４６の間でセッション３０３が確立される。
【００３５】
サーバ１０１は、サーバ１０２へ送信したいパケットをＴＣＰアクセラレータ１０３に送信する（Ｓ３０４）。ＴＣＰアクセラレータ１０３は、ＬＡＮポート１０３１よりパケットを受信する。ＴＣＰアクセラレータ１０３は、ＯＳ１０３４によって受信したパケットがサーバ１０２に送信したいパケットだと判断した場合には、仮想インタフェース１０３５を介して、仮想ゲートウェイ１０３６に送信する（Ｓ３０５）。仮想ゲートウェイ１０３６は、受信したパケットをカプセル化する。カプセル化されたパケットは、ＷＡＮポート１０３２から送信され、ＷＡＮ１０５を介してＴＣＰアクセラレータ１０４に送信される（Ｓ３０６、３０７、３０８）。ＴＣＰアクセラレータ１０４は、ＷＡＮポート１０４２によってカプセル化されたパケットを受信する。ＴＣＰアクセラレータ１０４は、ＯＳ１０４４によってカプセル化されたパケットがサーバ１０２に送信したいパケットだと判断した場合（仮想ゲートウェイ１０４６が送信先であると判断した場合）には、仮想インタフェース１０４５を介して、仮想ゲートウェイ１０４６に送信する（Ｓ３０９）。仮想ゲートウェイ１０４６は、受信したパケットのカプセル化を解除する。そしてカプセル化を解除したパケットは、サーバ１０２に送信される（Ｓ３１０、３１１）。サーバ１０２は、パケットを受信し、サーバ１０１からサーバ１０２へのパケットの送信が完了する。
【００３６】
図４は、本実施例におけるパケットの送信経路を示した概念図である。
【００３７】
サーバ１０１がサーバ１０２にパケットを送信する場合の送信経路を示した概念図であって、ＴＣＰアクセラレータ１０３とＴＣＰアクセラレータ１０４との間の通信は、ＷＡＮポート１０３３、１０４３の間のＷＡＮ１０６を介した通信経路を用いる。ＷＡＮポート１０３２、１０４２の間のＷＡＮ１０５を介した通信経路に障害が発生した場合、通信経路の切り替えを行い、ＷＡＮポート１０３３、１０４３の間のＷＡＮ１０６を介した通信経路を用いて通信を行う。
【００３８】
本実施例におけるネットワークシステムは、通信を行うためにセッションを形成しており、サーバ１０１と仮想ゲートウェイ１０３６のセッションを矢印３０１で表わす。同様にして、サーバ１０２と仮想ゲートウェイ１０４６のセッションを矢印３０２で表わす。仮想ゲートウェイ１０３６と仮想ゲートウェイ１０４６のセッションは矢印３０３で表わす。まずサーバ１０１が、ＳＹＮパケットを仮想ゲートウェイ１０３６に送信し、仮想ゲートウェイ１０３６はＳＹＮパケットを受信するとＡＣＫパケットをサーバ１０１に送信する。サーバ１０１は、仮想ゲートウェイ１０３６よりＡＣＫパケットを受信すると、ＡＣＫパケットを受け取った旨のＡＣＫパケットを仮想ゲートウェイ１０３６に送信する。仮想ゲートウェイ１０３６がＡＣＫパケットを受信するとサーバ１０１と仮想ゲートウェイ１０３６の間でセッション３０１が確立される。同様にしてサーバ１０２は、ＳＹＮパケットを仮想ゲートウェイ１０４６に送信し、仮想ゲートウェイ１０４６はＳＹＮパケットを受信するとＡＣＫパケットをサーバ１０２に送信する。サーバ１０２は、仮想ゲートウェイ１０４６よりＡＣＫパケットを受信すると、ＡＣＫパケットを受け取った旨のＡＣＫパケットを仮想ゲートウェイ１０４６に送信する。仮想ゲートウェイ１０４６がＡＣＫパケットを受信するとサーバ１０２と仮想ゲートウェイ１０４６の間でセッション３０２が確立される。仮想ゲートウェイ１０３６と仮想ゲートウェイ１０４６に間においても、仮想ゲートウェイ１０３６が仮想ゲートウェイ１０４６にＳＹＮパケットを送信し、仮想ゲートウェイ１０４６がＳＹＮパケットを受信すると、仮想ゲートウェイ１０４６はＡＣＫパケットを仮想ゲートウェイ１０３６に送信する。仮想ゲートウェイ１０３６は、ＡＣＫパケットを受信すると、ＡＣＫパケットを受信した旨のＡＣＫパケットを仮想ゲートウェイ１０４６に送信する。仮想ゲートウェイ１０４６がＡＣＫパケットを受信すると、仮想ゲートウェイ１０３６と仮想ゲートウェイ１０４６の間でセッション３０３が確立される。
【００３９】
サーバ１０１は、サーバ１０２へ送信したいパケットをＴＣＰアクセラレータ１０３に送信する（Ｓ３０４）。ＴＣＰアクセラレータ１０３は、ＬＡＮポート１０３１よりパケットを受信する。ＴＣＰアクセラレータ１０３は、ＯＳ１０３４によって受信したパケットがサーバ１０２に送信したいパケットだと判断した場合には、仮想インタフェース１０３５を介して、仮想ゲートウェイ１０３６に送信する（Ｓ３０５）。仮想ゲートウェイ１０３６は、受信したパケットをカプセル化する。カプセル化されたパケットは、ＷＡＮポート１０３３から送信され、ＷＡＮ１０６を介してＴＣＰアクセラレータ１０４に送信される（Ｓ３０６、４０１、４０２）。ＴＣＰアクセラレータ１０４は、ＷＡＮポート１０４３によってカプセル化されたパケットを受信する。ＴＣＰアクセラレータ１０４は、ＯＳ１０４４によってカプセル化されたパケットがサーバ１０２に送信したいパケットだと判断した場合（仮想ゲートウェイ１０４６が送信先であると判断した場合）には、仮想インタフェース１０４５を介して、仮想ゲートウェイ１０４６に送信する。仮想ゲートウェイ１０４６は、受信したパケットのカプセル化を解除する。そしてカプセル化を解除したパケットは、サーバ１０２に送信される（Ｓ３１０、３１１）。サーバ１０２は、パケットを受信し、サーバ１０１からサーバ１０２へのパケットの送信が完了する。
【００４０】
図５は、本実施例に係るネットワークシステムのパケットの流れを示す概念図である。
【００４１】
サーバ１０１が、サーバ１０２に送信するパケットは、パケット５０１〜パケット５０８であって、送信される過程においてカプセル化、カプセル化の解除などによって変形される。本実施例におけるパケットは、送信元を示す送信元のＭＡＣアドレスと送信元のＩＰアドレス、送信先を示す送信先のＭＡＣアドレスと送信先のＩＰアドレス、ＴＣＰヘッダ、データから構成されている。ＴＣＰヘッダは、ＴＣＰの機能に関する情報が含まれており、ＡＣＫ、ＳＹＮ、ＦＩＮパケットなどパケットの種類を示す各フラグの情報、ウインドウサイズの情報などが含まれている。データは、送信したい本来の情報であって、パケットを送信するための送信先のＭＡＣアドレスなどの制御情報を除いたものである。
【００４２】
サーバ１０１は、ＴＣＰアクセラレータ１０３にパケット５０１を送信する。パケット５０１は送信元のＭＡＣアドレスが「サーバ１０１」、送信元のＩＰアドレスが「サーバ１０１」、送信先のＭＡＣアドレスが「ＬＡＮポート１０３１」、送信先のＩＰアドレスが「サーバ１０２」、ＴＣＰヘッダ、データから構成されている。ここでＭＡＣアドレス、ＩＰアドレスを示す「サーバ１０１」などは、数字の組み合わせによって表わされるものであるが、ここでは形式的に「サーバ１０１」などと記載している。以下他のパケット（パケット５０２〜パケット５０８）においてもＭＡＣアドレス、ＩＰアドレスは、所定の送信元、送信先の名称を代用して記載する。
【００４３】
ＯＳ１０３４は、ＬＡＮポート１０３１において受信したパケット５０１において、送信元のＭＡＣアドレスを「仮想インタフェース１０３５」、送信先のＭＡＣアドレスを「仮想ゲートウェイ１０３６」に書き換え、パケット５０１を書き換えたパケット５０２を仮想インタフェース１０３５を介して仮想ゲートウェイ１０３６に送信する。
【００４４】
ＯＳ１０３４は、仮想ゲートウェイ１０３６においてパケット５０２をカプセル化してパケット５０３を生成する。具体的には、パケット５０２の送信元のＩＰアドレス「サーバ１０１」、送信先のＩＰアドレス「サーバ１０２」、ＴＣＰヘッダ、データをカプセル化し、新たに送信元のＭＡＣアドレス「仮想ゲートウェイ１０３６」、送信元のＩＰアドレス「仮想ゲートウェイ１０３６」、送信先のＭＡＣアドレス「仮想インタフェース１０３５」、送信先のＩＰアドレス「仮想ゲートウェイ１０４６」、ＴＣＰアクセラレータ１０３とＴＣＰアクセラレータ１０４が通信を行う専用プロトコルのヘッダを付加してパケット５０３を生成する。ＯＳ１０３４は、仮想インタフェース１０３５を介して受信したパケット５０３の送信元のＭＡＣアドレスを「ＷＡＮポート１０３２」、送信先のＭＡＣアドレスを「ルータ６１」に書き換え、パケット５０３を書き換えたパケット５０４をＷＡＮポート１０３２からルータ６１に送信する。ルータ６１は、ＷＡＮ１０５を構成するルータの１つであって、ＷＡＮポート１０３２に接続されているルータである。パケット５０４は、ＷＡＮ１０５を構成するルータに順次送信されて運ばれ、ルータ６２が受信する。ルータ６２は、ＷＡＮ１０５を構成するルータの１つであって、ＷＡＮポート１０４２に接続されているルータである。ルータ６２は、受信したパケットの送信元のＭＡＣアドレスを「ルータ６２」、送信先のＭＡＣアドレスを「ＷＡＮポート１０４２」に書き換えてＴＣＰアクセラレータ１０４に送信する。ここでルータ６２が受信するパケットの送信元のＭＡＣアドレスは「ルータ６２に接続されているルータ」、送信先のＭＡＣアドレスは「ルータ６２」である。ＴＣＰアクセラレータ１０４のＯＳ１０４４は、ＷＡＮポート１０４２において受信したパケット５０５において、送信元のＭＡＣアドレスを「仮想インタフェース１０４５」、送信先のＭＡＣアドレスを「仮想ゲートウェイ１０４６」に書き換え、パケット５０５を書き換えたパケット５０６を仮想インタフェース１０４５を介して仮想ゲートウェイ１０４６に送信する。ＯＳ１０４４は、仮想ゲートウェイ１０４６においてパケット５０６のカプセル化を解除し、パケット５０７を生成する。パケット５０７は、送信元のＭＡＣアドレス「仮想ゲートウェイ１０４６」、送信元のＩＰアドレス「サーバ１０１」、送信先のＭＡＣアドレス「仮想インタフェース１０４５」、送信先のＩＰアドレス「サーバ１０２」、ＴＣＰヘッダ、データから構成されている。ＯＳ１０４４は、仮想インタフェース１０４５を介して受信したパケット６０７の送信元のＭＡＣアドレスを「ＬＡＮポート１０４１」、送信先のＭＡＣアドレスを「サーバ１０２」に書き換え、パケット５０７を書き換えたパケット５０８をＬＡＮポート１０４１からサーバ１０２に送信する。サーバ１０２がパケット５０８を受信することによって、パケットの伝送が終了する。
【００４５】
図６は、本実施例に係るＴＣＰアクセラレータ１０３が有するルーティングテーブル６００である。
【００４６】
ルーティングテーブル６００は、パケットをルーティングするためのテーブルであって、格納部２０２に格納されており、ＯＳ１０３４によって管理されている。
【００４７】
ルーティングテーブル６００は、パケットを送信する「送信先」、通信に使用する「ゲートウェイ」、通信に使用する「インタフェース」が示されている。「送信先」は、サーバ１０２、仮想ゲートウェイ１０３６、サーバ１０１が設定されており、それ以外の所に対応するデフォルトが設定されている。さらにルーティングテーブル６００にはそれぞれの送信先に対応するゲートウェイ、インタフェースが記載されている。送信先「サーバ１０２」に対応するゲートウェイ、インタフェースはそれぞれ仮想ゲートウェイ１０３６、仮想インタフェース１０３５である。また送信先「仮想ゲートウェイ１０３６」に対応するゲートウェイはなく、対応するインタフェースは仮想インタフェース１０３５である。また送信先「サーバ１０１」に対応するゲートウェイはなく、対応するインタフェースはＬＡＮポート１０３１である。さらに送信先「デフォルト」に対応するゲートウェイ、インタフェースはそれぞれ「ルータ６１」、「ＷＡＮポート１０３２」である。
【００４８】
そしてＯＳ１０３４は、ルーティングテーブル６００を参照してパケットの送信先を判断すると共に、パケットの送信に使用するゲートウェイ、インタフェースを選択する。
【００４９】
ＯＳ１０３４は、パケットを送信する通信経路に障害が発生したと判断した場合に、「送信先」のデフォルトに対応するゲートウェイをルータ６１から新たなルータに書き換え、インタフェースを「ＷＡＮ１０３３」に書き換える。ここで新たなルータとは、ＷＡＮ１０３３に接続されたルータであって、ＷＡＮ１０６を形成するルータの１つである。
【００５０】
図７は、本実施例に係るＴＣＰアクセラレータ１０４が有するルーティングテーブル７００である。
【００５１】
ルーティングテーブル７００は、パケットをルーティングするためのテーブルであって、ＴＣＰアクセラレータ１０４が有する格納部に格納されており、ＯＳ１０４４によって管理されている。
【００５２】
ルーティングテーブル７００は、パケットを送信する「送信先」、通信に使用する「ゲートウェイ」、通信に使用する「インタフェース」が示されている。「送信先」は、サーバ１０１、仮想ゲートウェイ１０４６、サーバ１０２が設定されており、それ以外の所に対応するデフォルトが設定されている。さらにルーティングテーブル７００にはそれぞれの送信先に対応するゲートウェイ、インタフェースが記載されている。送信先「サーバ１０１」に対応するゲートウェイ、インタフェースはそれぞれ仮想ゲートウェイ１０４６、仮想インタフェース１０４５である。また送信先「仮想ゲートウェイ１０４６」に対応するゲートウェイはなく、対応するインタフェースは仮想インタフェース１０４５である。また送信先「サーバ１０２」に対応するゲートウェイはなく、対応するインタフェースはＬＡＮポート１０４１である。さらに送信先「デフォルト」に対応するゲートウェイ、インタフェースはそれぞれ「ルータ６２」、「ＷＡＮポート１０４２」である。
【００５３】
そしてＯＳ１０４４は、ルーティングテーブル７００を参照してパケットの送信先を判断すると共に、パケットの送信に使用するゲートウェイ、インタフェースを選択する。
【００５４】
ＯＳ１０４４は、パケットを送信する通信経路に障害が発生したと判断した場合に、「送信先」のデフォルトに対応するゲートウェイをルータ６２から新たなルータに書き換え、インタフェースを「ＷＡＮ１０４３」に書き換える。ここで新たなルータとは、ＷＡＮ１０４３に接続されたルータであって、ＷＡＮ１０６を形成するルータの１つである。
【００５５】
図８は、本実施例に係るネットワークシステムのシーケンス図である。
【００５６】
サーバ１０１がＴＣＰアクセラレータ１０３、１０４を介してサーバ１０２に情報を伝送するシーケンス図である。情報はパケットとして分割されて送信される。
【００５７】
まずサーバ１０１は、パケットをＴＣＰ／ＩＰを用いてＴＣＰアクセラレータ１０３に送信する。ここで「情報」のパケットはシーケンス図において「ＤＡＴＡ」と記載する。サーバ１０１は「ＤＡＴＡ８０１」、「ＤＡＴＡ８０４」、「ＤＡＴＡ８０７」の３パケットを順次、ＴＣＰアクセラレータ１０３に送信する。サーバ１０１は、「ＤＡＴＡ８０７」を送信した場合、一旦「ＤＡＴＡ」の送信を中断し、ＴＣＰアクセラレータ１０３からの応答を待つ。ＴＣＰアクセラレータ１０３は、「ＤＡＴＡ８０７」を受信すると「ＤＡＴＡ８０１」、「ＤＡＴＡ８０４」、「ＤＡＴＡ８０７」の３パケットを受信したことの確認応答として「ＡＣＫ８１０」をサーバ１０１に返信する。
【００５８】
ＴＣＰアクセラレータ１０３は受信した「ＤＡＴＡ８０１」をＴＣＰアクセラレータ１０４に「ＤＡＴＡ８０２」として送信する。同様にしてＴＣＰアクセラレータ１０３は受信した「ＤＡＴＡ８０４」を「ＤＡＴＡ８０５」、「ＤＡＴＡ８０７」を「ＤＡＴＡ８０８」としてＴＣＰアクセラレータ１０４に送信する。
【００５９】
ＴＣＰアクセラレータ１０４は、受信した「ＤＡＴＡ８０２」をサーバ１０２に「ＤＡＴＡ８０３」として送信する。同様にしてＴＣＰアクセラレータ１０４は受信した「ＤＡＴＡ８０５」を「ＤＡＴＡ８０６」、「ＤＡＴＡ８０８」を「ＤＡＴＡ８０９」としてサーバ１０２に送信する。
【００６０】
サーバ１０２は、「ＤＡＴＡ８０９」を受信すると「ＤＡＴＡ８０３」、「ＤＡＴＡ８０６」、「ＤＡＴＡ８０９」の３パケットを受信したことの確認応答として「ＡＣＫ８１１」をＴＣＰアクセラレータ１０４に返信する。
【００６１】
サーバ１０１は、「ＡＣＫ８１０」を受信すると、再び「ＤＡＴＡ」の送信を開始する。サーバ１０１は「ＤＡＴＡ８１２」、「ＤＡＴＡ８１５」、「ＤＡＴＡ８１８」の３パケットを順次、ＴＣＰアクセラレータ１０３に送信する。サーバ１０１は、「ＤＡＴＡ８１８」を送信した場合、再び「ＤＡＴＡ」の送信を中断し、ＴＣＰアクセラレータ１０３からの応答を待つ。ＴＣＰアクセラレータ１０３は、「ＤＡＴＡ８１８」を受信すると「ＤＡＴＡ８１２」、「ＤＡＴＡ８１５」、「ＤＡＴＡ８１８」の３パケットを受信したことの確認応答として「ＡＣＫ８２１」をサーバ１０１に返信する。
【００６２】
ＴＣＰアクセラレータ１０３は受信した「ＤＡＴＡ８１２」をＴＣＰアクセラレータ１０４に「ＤＡＴＡ８１３」として送信する。同様にしてＴＣＰアクセラレータ１０３は受信した「ＤＡＴＡ８１５」を「ＤＡＴＡ８１６」、「ＤＡＴＡ８１８」を「ＤＡＴＡ８１９」としてＴＣＰアクセラレータ１０４に送信する。
【００６３】
ＴＣＰアクセラレータ１０４は、受信した「ＤＡＴＡ８１３」をサーバ１０２に「ＤＡＴＡ８１４」として送信する。同様にしてＴＣＰアクセラレータ１０４は受信した「ＤＡＴＡ８１６」を「ＤＡＴＡ８１７」、「ＤＡＴＡ８１９」を「ＤＡＴＡ８２０」としてサーバ１０２に送信する。
【００６４】
サーバ１０２は、「ＤＡＴＡ８２０」を受信すると「ＤＡＴＡ８１４」、「ＤＡＴＡ８１７」、「ＤＡＴＡ８２０」の３パケットを受信したことの確認応答として「ＡＣＫ８２２」をＴＣＰアクセラレータ１０４に返信する。
【００６５】
サーバ１０１は、「ＤＡＴＡ」の送信を終了する場合、「ＤＡＴＡ」の送信を終了することを示す「ＦＩＮ８２３」をＴＣＰアクセラレータ１０３に送信する。ＴＣＰアクセラレータ１０３は、「ＦＩＮ８２３」を「ＦＩＮ８２４」としてＴＣＰアクセラレータ１０４に送信し、ＴＣＰアクセラレータ１０４は、「ＦＩＮ８２５」を送信する。ＴＣＰアクセラレータ１０３は、「ＦＩＮ８２３」を受信すると、「ＦＩＮ８２３」を受信したことを示す確認応答として「ＦＩＮＡＣＫ８２６」をサーバ１０１に返信し、サーバ１０１とＴＣＰアクセラレータ１０３の間の情報の伝送処理が終了する。またサーバ１０２も、「ＦＩＮ８２５」を受信すると、「ＦＩＮ８２５」を受信したことを示す確認応答として「ＦＩＮＡＣＫ８２７」をＴＣＰアクセラレータ１０４に返信し、ＴＣＰアクセラレータ１０４とサーバ１０２の間の情報の伝送処理が終了する。これにより、サーバ１０１からサーバ１０２に情報を伝送する伝送処理が終了する。
【実施例２】
【００６６】
図９は、本実施例におけるネットワークシステムの概念図である。
【００６７】
サーバ１０１とサーバ１０２がパケットを送受信する場合の通信経路を示した概念図である。
【００６８】
サーバ１０１がＴＣＰアクセラレータ１０３、１０４の間に存在するＷＡＮ１０５を介してサーバ１０２にパケットを送信するとき、パケットは、仮想ゲートウェイ１０３６、１０４６を経由してサーバ１０２に送信される。サーバ１０１は、パケットをＴＣＰアクセラレータ１０３に送信する。ＴＣＰアクセラレータ１０３は、ＬＡＮポート１０３１よりパケットを受信する。ＴＣＰアクセラレータ１０３は、ＯＳ１０３４によって受信したパケットがサーバ１０２に送信したいパケットだと判断した場合には、仮想インタフェース１０３５を介して、仮想ゲートウェイ１０３６に送信する。仮想ゲートウェイ１０３６は、受信したパケットをカプセル化する。カプセル化されたパケットは、ＷＡＮポート１０３２から送信され、ＷＡＮ１０５を介してＴＣＰアクセラレータ１０４に送信される。ＴＣＰアクセラレータ１０４は、ＷＡＮポート１０４２によってカプセル化されたパケットを受信する。ＴＣＰアクセラレータ１０４は、ＯＳ１０４４によってカプセル化されたパケットがサーバ１０２に送信したいパケットだと判断した場合（仮想ゲートウェイ１０４６が送信先であると判断した場合）には、仮想インタフェース１０４５を介して、仮想ゲートウェイ１０４６に送信する。仮想ゲートウェイ１０４６は、受信したパケットのカプセル化を解除する。そしてカプセル化を解除したパケットは、サーバ１０２に送信される。サーバ１０２は、パケットを受信し、サーバ１０１からサーバ１０２へのパケットの送信が完了する。
【００６９】
またサーバ１０２がサーバ１０１にパケットを送信する場合も、サーバ１０１がサーバ１０２へパケットを送信するのに用いたＷＡＮ１０５を介してパケットを送信する。通信に用いる運用ポートは予め設定されており、運用ポートの切り替えは、ノードＩＤが大きいＴＣＰアクセラレータが運用ポートの切り替えを行い、ノードＩＤの小さいＴＣＰアクセラレータが運用ポートを合わせる構成となっている。運用ポートの正常か否かは、監視パケットとそれに対応する応答パケットより判断する。ここでノードＩＤとは、ＴＣＰアクセラレータを識別する情報であって、ＴＣＰアクセラレータそれぞれについて割り振られた固有の番号である。
【００７０】
サーバ１０２は、サーバ１０１へのパケットをＴＣＰアクセラレータ１０４に送信する（Ｓ９０１）。ＴＣＰアクセラレータ１０４は、ＬＡＮポート１０４１よりパケットを受信する。ＴＣＰアクセラレータ１０４は、ＯＳ１０４４によって受信したパケットがサーバ１０１に送信したいパケットだと判断した場合には、仮想インタフェース１０４５を介して、仮想ゲートウェイ１０４６に送信する（Ｓ９０２）。仮想ゲートウェイ１０４６は、受信したパケットをカプセル化する。カプセル化されたパケットは、ＷＡＮポート１０４２から送信され、ＷＡＮ１０５を介してＴＣＰアクセラレータ１０３に送信される（Ｓ９０３、９０４、９０５）。ＴＣＰアクセラレータ１０３は、ＷＡＮポート１０３２によってカプセル化されたパケットを受信する。ＴＣＰアクセラレータ１０３は、ＯＳ１０３４によってカプセル化されたパケットがサーバ１０１に送信したいパケットだと判断した場合（仮想ゲートウェイ１０３６が送信先であると判断した場合）には、仮想インタフェース１０３５を介して、仮想ゲートウェイ１０３６に送信する（Ｓ９０６）。仮想ゲートウェイ１０３６は、受信したパケットのカプセル化を解除する。そしてカプセル化を解除したパケットは、サーバ１０１に送信される（Ｓ９０７、９０８）。サーバ１０１は、パケットを受信し、サーバ１０２からサーバ１０１へのパケットの送信が完了する。
【００７１】
このように、通信経路として、サーバ１０１がサーバ１０２にパケットを送信するのに使用した通信経路と同じ通信経路を用いる設定としておくことによって、待機経路であるＷＡＮ１０６を介した通信経路に負荷をかけることなく、効率的に通信を行うことができる。
【００７２】
次に、以上述べた通信装置の実施形態から抽出される技術的思想を請求項の記載形式に準じて付記として列挙する。本発明に係る技術的思想は上位概念から下位概念まで、様々なレベルやバリエーションにより把握できるものであり、以下の付記に本発明が限定されるものではない。
【００７３】
（付記１）  第１の情報処理装置と第２の情報処理装置との通信を複数の通信経路を介して中継する通信装置において、
該第１の情報処理装置より受信する受信情報を格納する格納手段と、
該格納手段より取り出した該受信情報を送信情報として、該複数の通信経路のうち少なくとも一つの通信経路を介して、該第２の情報処理装置へ送信する通信手段と、
該第２の情報処理装置より送信される確認情報を監視し、該確認情報を受信しない場合には、該受信情報を送信情報として、他の通信経路を介して、該第２の情報処理装置へ送信することを該通信手段に指示する監視手段と、
からなることを特徴とする通信装置。
【００７４】
（付記２）  付記１に記載の通信装置は、
該通信手段において、該送信情報を送信した通信経路を介して、該確認情報を受信することを特徴とする通信装置。
【００７５】
（付記３）  付記１に記載の通信装置は、
該監視手段において、該確認情報を受信した場合には、該格納手段は受信した該確認情報に対応する該情報を削除することを特徴とする通信装置。
【００７６】
（付記４）  付記１に記載の通信装置は、
該送信情報を送信するのに用いる通信経路を示すルーティングテーブルを有していることを特徴とする通信装置。
【００７７】
（付記５）  付記１に記載の通信装置は、
該受信情報は送信先アドレスを有しており、該送信先アドレスが第２の情報処理装置である場合には、該受信情報は該格納手段に格納されることを特徴とする通信装置。
【００７８】
（付記６）  付記１に記載の通信装置は、
該監視手段が、予め設定された時間経過した後であっても該確認情報を受信しない場合には、該通信手段は該確認情報に対応する該情報を他の通信経路を介して該他の情報処理装置に送信することを特徴とする通信装置。
【００７９】
（付記７）  付記１に記載の通信装置は、
該確認情報は該送信情報を該第２の情報処理装置が受信したことを示す情報であることを特徴とする通信装置。
【００８０】
（付記８）  付記１に記載の通信装置は、
該複数の通信経路の障害の有無を監視する障害監視手段をさらに有することを特徴とする通信装置。
【００８１】
（付記９）  第１の情報処理装置と第２の情報処理装置との通信を複数の通信経路を介して中継する通信方法において、
該第１の情報処理装置より受信する受信情報を格納する格納ステップと、
該格納ステップにおいて格納した該受信情報を送信情報として取り出す取り出しステップと、
該取り出しステップにおいて取り出した該送信情報を、該複数の通信経路のうち少なくとも一つの通信経路を介して、該第２の情報処理装置へ送信する通信ステップと、
該第２の情報処理装置より送信される確認情報を監視し、該確認情報を受信しない場合には、該受信情報を該送信情報として、他の通信経路を介して、該第２の情報処理装置へ送信することを該通信手段に指示する監視ステップと、
からなることを特徴とする通信方法。
【００８２】
通信方法。
【００８３】
（付記１０）  第１の情報処理装置と第２の情報処理装置との通信を複数の通信経路を介して中継する通信プログラムにおいて、
該第１の情報処理装置より受信する受信情報を格納する格納ステップと、
該格納ステップにおいて格納した該受信情報を送信情報として取り出す取り出しステップと、
該取り出しステップにおいて取り出した該送信情報を、該複数の通信経路のうち少なくとも一つの通信経路を介して、該第２の情報処理装置へ送信する通信ステップと、
該第２の情報処理装置より送信される確認情報を監視し、該確認情報を受信しない場合には、該受信情報を該送信情報として、他の通信経路を介して、該第２の情報処理装置へ送信することを該通信手段に指示する監視ステップと、
をコンピュータに実行させることを特徴とする通信プログラム。
【図面の簡単な説明】
【００８４】
【図１】本実施例に係るネットワークシステムの概念図である。
【図２】本実施例に係るＴＣＰアクセラレータ１０３のハードブロック図である。
【図３】本実施例におけるパケットの送信経路を示した概念図である。
【図４】本実施例におけるパケットの送信経路を示した概念図である。
【図５】本実施例に係るネットワークシステムのパケットの流れを示す概念図である。
【図６】本実施例に係るＴＣＰアクセラレータ１０３が有するルーティングテーブル６００である。
【図７】本実施例に係るＴＣＰアクセラレータ１０４が有するルーティングテーブル７００である。
【図８】本実施例に係るネットワークシステムのシーケンス図である。
【図９】本実施例におけるネットワークシステムの概念図である。
【図１０】本実施例に係る通信経路の切り替えを示す切り替え表である。
【符号の説明】
【００８５】
１０１…サーバ
１０２…サーバ
１０３…ＴＣＰアクセラレータ
１０４…ＴＣＰアクセラレータ
１０３１…ＬＡＮポート
１０３２…ＷＡＮポート
１０３３…ＷＡＮポート
１０３４…ＯＳ
１０３５…仮想インタフェース
１０３６…仮想ゲートウェイ
１０４１…ＬＡＮポート
１０４２…ＷＡＮポート
１０４３…ＷＡＮポート
１０４４…ＯＳ
１０４５…仮想インタフェース
１０４６…仮想ゲートウェイ
２０１…制御部
２０２…格納部
２０３…バッファ
【図１】
2008072521.tif 000003
【図２】
2008072521.tif 000004
【図３】
2008072521.tif 000005
【図４】
2008072521.tif 000006
【図５】
2008072521.tif 000007
【図６】
2008072521.tif 000008
【図７】
2008072521.tif 000009
【図８】
2008072521.tif 000010
【図９】
2008072521.tif 000011
【図１０】
2008072521.tif 000012