(57)【要約】  第１のネットワーク装置は、受信したデータの転送を行うための転送制御部と、対向する第２の中継装置に障害が発生したことを検知する検知部と、を備える。転送制御部は、受信したデータの転送を行う転送部と、第２の中継装置の障害の発生を検知するために受信したデータを加工する加工部であって、（ｉ）マークをデータに付与するオプション部と、（ｉｉ）シーケンス番号に所定値を加算する加算部と、（ｉｉｉ）確認応答番号に対し所定値を減算する減算部と、を有する加工部と、を有する。検知部は、マークと確認応答番号の少なくともいずれか一方に基づいて対向する第２の中継装置の障害の発生を検知する。【選択図】図２
2013128483.tif 000002
【特許請求の範囲】
【請求項１】
シーケンス番号を用いたストリーム型の通信によってデータを伝送する２つの端末と、前記２つの端末の伝送路上に直列に配置され前記２つの端末間のデータを中継するための第１と第２の中継装置と、を有するネットワークに配置される第１の中継装置であって、
受信したデータの転送を行うための転送制御部と、
対向する前記第２の中継装置に障害が発生したことを検知する検知部と、を備え、
前記転送制御部は、
前記受信したデータの転送を行う転送部と、
前記第２の中継装置の障害の発生を検知するために前記受信したデータを加工する加工部であって、（ｉ）前記第２の中継装置に向けてデータを転送する場合に、転送するデータに前記第１と第２の中継装置間でのデータのやり取りであることを示すためのマークをデータに付与するオプション部と、（ｉｉ）データを対向する前記端末に送信する場合に、送信元の前記端末から送信されるデータに付与されているシーケンス番号に所定値を加算する加算部と、（ｉｉｉ）データを対向する前記端末から受信した場合に、前記端末から送信されたデータに確認応答番号が付与されているときに、前記確認応答番号に対し前記所定値を減算する減算部と、を有する加工部と、を有し、
前記検知部は、前記マークと前記確認応答番号の少なくともいずれか一方に基づいて対向する前記第２の中継装置の障害の発生を検知する、第１の中継装置。
【請求項２】
請求項１に記載の第１の中継装置であって、
前記検知部は、前記第２の中継装置から送信されて受信したデータに前記マークが付与されていない場合に、前記第２の中継装置の障害の発生を検知する、第１の中継装置。
【請求項３】
請求項１に記載の第１の中継装置であって、
前記検知部は、前記第２の中継装置から送信されて受信したデータのうちの前記確認応答番号が、本来受信すべき番号から前記所定値を加算した番号である場合に、前記第２の中継装置の障害の発生を検知する、第１の中継装置。
【請求項４】
請求項１に記載の第１の中継装置であって、
前記検知部は、前記第２の中継装置から送信されて受信したデータに前記マークが付与されていない場合であり、かつ、前記受信したデータのうちの前記確認応答番号が、本来受信すべき番号から前記所定値を加算した番号である場合に、前記第２の中継装置の障害の発生を検知する、第１の中継装置。
【請求項５】
請求項１乃至請求項４のいずれか一項に記載の第１の中継装置であって、
前記２つの端末はＴＣＰを用いて通信を行い、
前記転送制御部は、
受信したデータによって前記検知部が前記第２の中継装置の障害の発生を検知した場合に、前記受信したデータがＴＣＰコネクション確立要求を行うためのＳＹＮパケットを含む場合は、前記加工部の機能を用いることなく前記受信したデータの転送を行う、第１の中継装置。
【請求項６】
請求項１乃至請求項５のいずれか一項に記載の第１の中継装置であって、
前記２つの端末はＴＣＰを用いて通信を行い、
前記転送制御部は、
受信したデータによって前記検知部が前記第２の中継装置の障害の発生を検知した場合に、前記受信したデータがＴＣＰコネクション確立要求を行うためのＳＹＮパケットに対する確認応答パケットを含む場合は、前記加工部の機能を用いることなく前記受信したデータの転送を行う、第１の中継装置。
【請求項７】
シーケンス番号を用いたストリーム型の通信によってデータが伝送される２つの端末と、前記２つの端末の伝送路上に直列に配置され前記２つの端末間のデータを中継するための第１と第２の中継装置と、を有するネットワークに配置される第１の中継装置の制御方法であって、
（ａ）受信したデータを転送する工程と、
（ｂ）対向する前記第２の中継装置に障害が発生したことを検知する工程と、を備え、
前記工程（ａ）は、
（ａ１）前記第２の中継装置に向けてデータを転送する場合に、転送するデータに前記第１と第２の中継装置間でのデータのやり取りであることを示すためのマークをデータに付与する工程と、
（ａ２）データを対向する前記端末に送信する場合に、送信元の前記端末から送信されるデータに付与されているシーケンス番号に所定値を加算する工程と、
（ａ３）データを対向する前記端末から受信した場合に、前記対向する端末から送信されるデータに確認応答番号が付与されているときに、前記確認応答番号に前記所定値を減算する工程と、を含み、
前記工程（ｂ）は、
前記マークと前記確認応答番号の少なくともいずれか一方に基づいて対向する前記第２の中継装置の障害の発生を検知する工程を含む、制御方法。
【請求項８】
ネットワークシステムであって、
シーケンス番号を用いたストリーム型の通信によってデータを伝送する２つの端末と、
前記２つの端末の伝送路上に直列に配置され前記２つの端末間のデータを中継するための第１と第２の中継装置と、を備え、
前記１と第２の中継装置は、それぞれ、
受信したデータの転送を行うための転送制御部と、
対向する他方の前記中継装置に障害が発生したことを検知する検知部と、を備え、
前記転送制御部は、
前記受信したデータの転送を行う転送部と、
前記他方の中継装置の障害の発生を検知するために前記受信したデータを加工する加工部であって、（ｉ）前記他方の中継装置に向けてデータを転送する場合に、転送するデータに前記第１と第２の中継装置間でのデータのやり取りであることを示すためのマークをデータに付与するオプション部と、（ｉｉ）データを対向する前記端末に送信する場合に、送信元の前記端末から送信されるデータに付与されているシーケンス番号に所定値を加算する加算部と、（ｉｉｉ）データを対向する前記端末から受信した場合に、前記端末から送信されたデータに確認応答番号が付与されているときに、前記確認応答番号に対し前記所定値を減算する減算部と、を有する加工部と、を有し、
前記検知部は、前記マークと前記確認応答番号の少なくともいずれか一方に基づいて対向する前記他方の中継装置の障害の発生を検知する、ネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、端末間に配置されデータを中継するための中継装置、中継装置の制御方法、及び、端末と中継装置とを備えるネットワークシステムに関する。
【背景技術】
【０００２】
グローバル拠点間の通信網として、IP-VPN技術などを用いたWAN(Wide Area Network)を用いることが一般的になっている。ある拠点にある端末が、別の海外の拠点にある端末と通信する場合は、各拠点間をWANで接続して通信する。WANでは通常、契約によって使用可能な帯域幅が制限されている。また、海外との通信ではとくに遅延が大きくなる。【０００３】
端末間の通信では一般にTCPが用いられる。TCPではRTT(Round Trip Time)の大きさに応じて通信の帯域が制御される。WAN経由での通信では、高スループットを得ることが困難な場合がある。ここで、高スループットを実現するための技術として、特許文献１に記載の技術等がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開番号  ＷＯ２０１１／０３３８９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
TCPを用いた通信では、送信帯域がRTTと廃棄率に大きく左右されるため、WANのようなRTTが大きく、ホップ数が大きくて廃棄箇所が多い環境下では、契約帯域を大幅に下回る送信帯域しか得られない場合がある。【０００６】
これに対する対策として、TCPのようなシーケンス番号を用いたストリーム型の通信の伝送経路の途中において、複数の中継装置を用いて送信帯域がRTTと廃棄率に左右されないようにストリームを管理することで、送信帯域を改善することが考えられる。【０００７】
このとき、中継装置で障害が発生すると、障害が発生した中継装置に対向する中継装置で障害を検出することができず、種々の不具合が発生する場合があった。例えば、通信装置（端末）間の通信が切断するまでに時間が掛かるという不具合や、中継装置にセッションが残ったままになり同一ポートでの通信が阻害される不具合や、メモリ不足が生じるという不具合等が発生する場合がある。【０００８】
本発明は、上述の課題を解決するために成されたものであり、シーケンス番号を用いたストリーム型の通信を行う環境下において、対向する中継装置の障害の発生を検知できる技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、上記の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することができる。【００１０】
［適用例１］シーケンス番号を用いたストリーム型の通信によってデータを伝送する２つの端末と、前記２つの端末の伝送路上に直列に配置され前記２つの端末間のデータを中継するための第１と第２の中継装置と、を有するネットワークに配置される第１の中継装置であって、
受信したデータの転送を行うための転送制御部と、
対向する前記第２の中継装置に障害が発生したことを検知する検知部と、を備え、
前記転送制御部は、
前記受信したデータの転送を行う転送部と、
前記第２の中継装置の障害の発生を検知するために前記受信したデータを加工する加工部であって、（ｉ）前記第２の中継装置に向けてデータを転送する場合に、転送するデータに前記第１と第２の中継装置間でのデータのやり取りであることを示すためのマークをデータに付与するオプション部と、（ｉｉ）データを対向する前記端末に送信する場合に、送信元の前記端末から送信されるデータに付与されているシーケンス番号に所定値を加算する加算部と、（ｉｉｉ）データを対向する前記端末から受信した場合に、前記端末から送信されたデータに確認応答番号が付与されているときに、前記確認応答番号に対し前記所定値を減算する減算部と、を有する加工部と、を有し、
前記検知部は、前記マークと前記確認応答番号の少なくともいずれか一方に基づいて対向する前記第２の中継装置の障害の発生を検知する、第１の中継装置。【００１１】
適用例１に記載の第１の中継装置によれば、加工部を有することで検知部がマークと確認応答番号の少なくともいずれか一方に基づいて対向する第２の中継装置の障害の発生を容易に検知できる。【００１２】
［適用例２］適用例１に記載の第１の中継装置であって、
前記検知部は、前記第２の中継装置から送信されて受信したデータに前記マークが付与されていない場合に、前記第２の中継装置の障害の発生を検知する、第１の中継装置。
適用例２に記載の第１の中継装置によれば、受信したデータにマークが付与されているか否かを判別することで第２の中継装置の障害の発生を容易に検知できる。【００１３】
［適用例３］適用例１に記載の第１の中継装置であって、
前記検知部は、前記第２の中継装置から送信されて受信したデータのうちの前記確認応答番号が、本来受信すべき番号から前記所定値を加算した番号である場合に、前記第２の中継装置の障害の発生を検知する、第１の中継装置。
適用例３に記載の第１の中継装置によれば、受信したデータのうちの前記確認応答番号が、本来受信すべき番号から前記所定値を加算した番号であるか否かを判別することで第２の中継装置の障害の発生を容易に検知できる。【００１４】
［適用例４］適用例１に記載の第１の中継装置であって、
前記検知部は、前記第２の中継装置から送信されて受信したデータに前記マークが付与されていない場合であり、かつ、前記受信したデータのうちの前記確認応答番号が、本来受信すべき番号から前記所定値を加算した番号である場合に、前記第２の中継装置の障害の発生を検知する、第１の中継装置。
適用例４に記載の第１の中継装置によれば、障害発生の検知をマークと確認応答番号の２つの要素により行なうことで、障害発生検知の精度を向上できる。【００１５】
［適用例５］適用例１乃至適用例４のいずれか一つに記載の第１の中継装置であって、
前記２つの端末はＴＣＰを用いて通信を行い、
前記転送制御部は、
受信したデータによって前記検知部が前記第２の中継装置の障害の発生を検知した場合に、前記受信したデータがＴＣＰコネクション確立要求を行うためのＳＹＮパケットを含む場合は、前記加工部の機能を用いることなく前記受信したデータの転送を行う、第１の中継装置。
適用例５に記載の第１の中継装置によれば、障害発生を検知した場合でも、データ通信を継続できる。【００１６】
［適用例６］適用例１乃至適用例５のいずれか一つに記載の第１の中継装置であって、
前記２つの端末はＴＣＰを用いて通信を行い、
前記転送制御部は、
受信したデータによって前記検知部が前記第２の中継装置の障害の発生を検知した場合に、前記受信したデータがＴＣＰコネクション確立要求を行うためのＳＹＮパケットに対する確認応答パケットを含む場合は、前記加工部の機能を用いることなく前記受信したデータの転送を行う、第１の中継装置。
適用例６に記載の第１の中継装置によれば、障害発生を検知した場合でも、データ通信を継続できる。【００１７】
なお、本発明は、種々の態様で実現することが可能である。例えば、上記に記載の第１の中継装置に限らず、第１の中継装置の制御方法、第１の制御装置の機能や、制御方法を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記憶媒体、第１と第２の中継装置及び第１と第２の通信装置を備えたネットワークシステム等の態様で実現することができる。
【図面の簡単な説明】
【００１８】
【図１】参考例のネットワークシステム５ｗを説明するための図である。
【図２】実施例としてのネットワークシステム５を説明するための図である。
【図３】実施例で用いられるＴＣＰヘッダを示す図である。
【図４】ネットワークシステム５におけるデータ通信時のＴＣＰヘッドの変化について説明するための図である。
【図５】通常行なわれる３ウェイ・ハンドシェイクの処理フローである。
【図６】コネクション確立後の通信を説明するための図である。
【図７】３ウェイ・ハンドシェイク時の障害発生の検知について説明するための図である。
【図８】３ウェイ・ハンドシェイク時の障害検知の第１の態様を説明するための図である。
【図９】３ウェイ・ハンドシェイク時の障害検知の第２の態様を説明するための図である。
【図１０】３ウェイ・ハンドシェイク時の障害検知の第３の態様を説明するための図である。
【図１１】３ウェイ・ハンドシェイク時の障害検知の第４の態様を説明するための図である。
【図１２】３ウェイ・ハンドシェイク時の障害検知の第５の態様を説明するための図である。
【図１３】３ウェイ・ハンドシェイク時の障害検知の第６の態様を説明するための図である。
【図１４】ＴＣＰによるデータ通信中に障害が発生した場合の第１の障害検知態様を説明するための図である。
【図１５】ＴＣＰによるデータ通信中に障害が発生した場合の第２の障害検知態様を説明するための処理である。
【発明を実施するための形態】
【００１９】
次に、本発明の実施の形態を以下の順序で説明する。
Ａ．参考例：
Ｂ．実施例：
Ｃ．変形例：
【００２０】
Ａ．参考例：
実施例を説明する前に、理解の容易のために本発明を適用していない参考例について説明する。図１は、参考例のネットワークシステム５ｗを説明するための図である。ネットワークシステム５ｗは、端末としての第１の通信装置２０ｗと、端末としての第２の通信装置２１ｗと、第１の中継装置１０ｗと、第２の中継装置１１ｗと、を備える。第１と第２の通信装置２０ｗ，２１ｗは、第１と第２の中継装置１０ｗ，１１ｗとインターネットを介してデータ通信を実現させている。
【００２１】
ネットワークシステム５ｗにおいて、第１の通信装置２０ｗと第１の中継装置１０ｗとの間のデータ通信、及び、第２の通信装置２１ｗと第２の中継装置との間のデータ通信はＴＣＰセッションで管理されている、また、ネットワークシステム５ｗにおいて、第１の中継装置１０ｗと第２の中継装置１１ｗとの間のデータ通信は、中継装置１０ｗ，１１ｗ間の固有のＴＣＰセッション（「高速化ＴＣＰセッション」ともいう。）として中継装置１０ｗ、１１ｗが管理している。
【００２２】
第１と第２の中継装置１０ｗ，１１ｗ間の高速化ＴＣＰセッションでは、第１の通信装置２０ｗや第２の通信装置２１ｗから送信されるデータに付与されたシーケンス番号（「元のシーケンス番号」ともいう。）に一定の値を加算したシーケンス番号（「中継装置間シーケンス番号」ともいう。）が用いられる。例えば、第２の通信装置２１ｗから送信されたデータに付与されているシーケンス番号に対し、第２の中継装置１１ｗは一定の値を加算する。そして、加算したシーケンス番号をデータに付与して第１の中継装置１０ｗにデータを送信する。また、中継装置１０ｗ，１１ｗから通信装置２０ｗ，２１ｗにデータを転送する場合は、中継装置間シーケンス番号から加算された値を減算して元のシーケンス番号に戻す。また、第１と第２の中継装置１０ｗ，１１ｗ間の高速化ＴＣＰセッションでは、中継装置１０ｗ，１１ｗ間での通信であることを識別するためのＴＣＰオプションをデータに付与する。ＴＣＰオプションは、中継装置１０ｗ，１１ｗから通信装置２０ｗ，２１ｗにデータが送信される際に、送信されるデータから削除される。
【００２３】
ここで、第２の中継装置１１ｗに障害が発生した場合（障害発生時）を考える。ここで、「障害の発生」とは、データ（パケット）を転送する機能は正常であるが、高速化ＴＣＰセッションを用いてデータを転送する機能に異常が生じた場合を指す。すなわち、「障害の発生」とは、第２の中継装置１１ｗが元のシーケンス番号に一定の値を加算できない状態、又は、第２の中継装置１１ｗがＴＣＰオプションのデータへの付与及び削除ができない状態をいう。
【００２４】
障害発生時において、第１の通信装置２０ｗから送信されたデータのシーケンス番号に対し、第１の中継装置１０ｗは一定の値を加算して中継装置間シーケンス番号が付与されたデータを第２の中継装置１１ｗに送信する。第２の中継装置１１ｗは受信したデータに付与された中継装置間シーケンス番号を処理することなく第２の通信装置２１ｗにデータを送信する。第２の通信装置２１ｗは、受信したデータのシーケンス番号がＴＣＰセッションにおけるシーケンス番号（元のシーケンス番号）とは異なっているため、受信したデータを不正なデータとして認識する。そして、第２の通信装置２１ｗは、ＴＣＰセッションで用いられるシーケンス番号（元のシーケンス番号）とＡＣＫを送信する。しかしながら、第１の中継装置１０ｗでは第２の通信装置２１ｗから送信されたシーケンス番号を認識できず第１の通信装置２０ｗにデータを転送することができない。すなわち、第１と第２の通信装置２０ｗ，２１ｗ間における通信の継続や、セッションの切断ができないという問題が発生する。
【００２５】
Ｂ．実施例：
Ｂ−１．ネットワークシステム５の構成：
図２は、本発明の実施例としてのネットワークシステム５を説明するための図である。図２に示すように、ネットワークシステム５は、端末としての第１と第２の通信装置４５４，４５５と、第１と第２の通信装置４５４，４５５間のデータ通信を中継する第１と第２の中継装置４４１，４４２と、を備える。第１と第２の中継装置４４１，４４２は、第１と第２の通信装置４５４，４５５の伝送路路上に直列に配置されている。第１と第２の通信装置４５４，４５５はＴＣＰを用いてデータ（パケット）通信を行う。なお、第１と第２の中継装置４４１，４４２との間にはインターネット（図示せず）が存在する。
【００２６】
第１の中継装置４４１は、外部機器（例えば第１の通信装置４５４）との間でデータの受信及び送信を行う入出力インタフェース４１，４８と、受信したデータの転送を制御するための転送制御部４４と、他の中継装置４４２の障害を検知するための検知部４６と、を備える。なお、第２の中継装置４４２の構成も同様の構成であるため、内部構成の図示は省略すると共に説明を省略する。
【００２７】
転送制御部４４は、送受信するデータに加工等を施すための加工部４８と、データの転送を行う転送部４９と、を備える。転送部４９は、受信したデータに付与されているＩＰアドレス等に基づいてデータの転送を行う。
【００２８】
加工部４８は、オプション部４８ａと、加算部４８ｂと、減算部４８ｃと、を備える。オプション部４８ａは、対向する第２の中継装置４４２に向けてデータを転送する場合に、転送するデータに第１と第２の中継装置間でのデータのやり取りであることを示すためのマークをデータに付与する。本実施例では、このマークはＴＣＰヘッダのＴＣＰオプションを使用している。加算部４８ｂは、データを対向する通信装置（ここでは、第１の通信装置４５４）に送信する場合に、送信元の通信装置（ここでは、第２の通信装置４５５）から送信されるデータに付与されているシーケンス番号（元のシーケンス番号）に所定値を加算する。所定値は任意の値を選択可能であり、本実施例では、１００００００を元のシーケンス番号に加算する。減算部４８ｃは、データを対向する通信装置（ここでは、第１の通信装置４５４）から受信した場合に、通信装置から送信されたデータに付与されている確認応答番号に対し所定値（本実施例では、１００００００）を減算する。また、第１と第２の中継装置４４１，４４２は、中継装置４４１，４４２間の固有の通信を管理するためのセッション管理テーブル（図示せず）を備える。
【００２９】
なお、加工部４８は、第１と第２の中継装置４４１，４４２間でのデータ通信を高速に行なうための機能を有していても良い。例えば、国際公開番号ＷＯ２０１１／０３３８９４（国際出願日：２０１０年８月１９日）に開示の内容を取り込んでも良い。例えば、第１と第２の中継装置４４１，４４２の加工部４８は、データの再送状況に基づいてデータを送信するために送信帯域を制御する帯域制御部を備えても良い。帯域制御部を備える場合、加工部４８が正常に機能している場合は、転送部４９は制御された送信帯域に従って、データを転送する。
【００３０】
検知部４６は、ＴＣＰオプションと確認応答番号の少なくともいずれか一方に基づいて対向する第２の中継装置４４２の障害の発生を検知する。また、例えば、検知部４６によって検知された障害の発生は、図示しないサーバに障害発生情報として送信される。そして、サーバが、障害発生情報の解析や、外部への報知等の処理を行う。
【００３１】
図３は、実施例で用いられるＴＣＰヘッダを示す図である。図３に示すＴＣＰヘッダはＴＣＰで定められている通常のヘッダ構成である。フィールド１０１には、送信元ポート番号及び宛先ポート番号が格納される。フィールド１０２には、シーケンス番号が格納される。フィールド１０３には、確認応答番号（ＡＣＫ番号）が格納される。フィールド１０４には、ヘッダ長、ＡＣＫフラグ等の各種フラグ、ウィンドウサイズ等の情報が格納される。フィールド１０５には、チェックサム、緊急ポインタが格納される。フィールド１０６には、オプション種別、オプション長、オプション値が格納される。詳細には、フィールド１０６には、ＭＳＳ（Maximum Segment Size）に関する情報が格納される。フィールド１０７は、オプション種別、オプション長、オプション値（バージョン番号）が格納される。詳細には、第１と第２の中継装置４４１，４４２間でのデータ通信の際にデータに付与されるＴＣＰオプションに関する情報が格納される。フィールド１０８は、データフィールドである。
【００３２】
図４は、ネットワークシステム５におけるデータ通信時のＴＣＰヘッドの変化について説明するための図である。図４は、コネクション確立時（３ウェイ・ハンドシェイク時）に行なわれる通信の一部を例として示している。第１の通信装置４５４は、端末間で実行される通常のＴＣＰで通信を開始する（ステップＳ３０）。例えば、シーケンス番号（Ｓｅｑ♯）１０００でＳＹＮパケットを送信する。第１の中継装置４４１のオプション部４８ａは、受信したデータにＴＣＰオプションを付与し、転送部４９がデータを第２の中継装置４４２に送信する（ステップＳ３２）。第２の中継装置４４２のオプション部４８ａは、受信したデータからＴＣＰオプションを外し、第２の中継装置の加算部４８ｂは、受信したデータのシーケンス番号に１００００００を加算する（ステップＳ３３）。そして、処理後のデータを転送部４９が第２の通信装置４５５に送信する（ステップＳ３３）。
【００３３】
第２の通信装置４５５は、通常のＴＣＰ処理を行い、受信したデータ中のシーケンス番号に対して次に期待するシーケンスをＡＣＫ番号に付与して送信する（ステップＳ３４）。本実施例では、ＡＣＫ番号はステップＳ３０で送信された元のシーケンス番号に所定値１００００００と１を加算した値となる。第２の中継装置４４２の減算部４８ｃは、送信元の第２の通信装置４５５から送信されたデータのＡＣＫ番号から所定値である１００００００を減算することで、元のシーケンスと整合が取れるように処理する（ステップＳ３５）。また、第２の中継装置４４２のオプション部４８ａは、データに対しＴＣＰオプションを付与する（ステップＳ３５）。そして、処理後のデータを第２の中継装置４４２の転送部４９が第１の中継装置４４１に送信する（ステップＳ３５）。第１の中継装置４４１のオプション部４８ａは、第２の中継装置４４２から受信したデータのＴＣＰオプションを外し、元のストリームと整合させる（ステップＳ３６）。また、第１の中継装置４４１は、受信したデータのシーケンス番号に所定値である１００００００を加算する（ステップＳ３６）。そして、第１の中継装置４４１の転送部４９は、処理後のデータを第１の通信装置４５４に送信する（ステップＳ３６）。なお、図示は省略するが、ステップＳ３６の後、第１の中継装置４４１は、受信したＳＹＮ／ＡＣＫパケットのＡＣＫ番号をシーケンス番号としてＡＣＫパケットを第１の中継装置４４１に送信する。そして、第１の中継装置４４１及び第２の中継装置４４１の加工部４８は、それぞれＡＣＫパケット対し所定の処理を施す。最終的には、第２の通信装置４５５がＡＣＫパケットを受信してコネクションが確立される。
【００３４】
理解の容易にために、一般的に行なわれる３ウェイ・ハンドシェイクの処理について説明する。図５は、通常行なわれる３ウェイ・ハンドシェイクの処理フローである。すなわち、図５は、本発明を適用しない場合の３ウェイ・ハンドシェイク時の一般的な処理フローである。第１の通信装置４５４は、第２の通信装置４５５に対して任意のシーケンス番号Ａ（Ａには任意の番号が入力される。）でＳＹＮパケットを送信する（ステップＳ４０）。第２の通信装置４５５は、ＳＹＮパケットに対する応答として、任意のシーケンス番号Ｂ（ＢにはＡとは異なる任意の番号が入力される。）を用いて、受信したシーケンス番号Ａに１を加算した番号をＡＣＫ番号に設定してＳＹＮ／ＡＣＫパケットを第１の通信装置４５４に送信する（ステップＳ４１）。第１の通信装置４５４は、受信したＳＹＮ／ＡＣＫパケットに対して、ＳＹＮパケットで用いたシーケンス番号Ａに１を加算した値（すなわち、ステップＳ４１で送信されたＡＣＫ番号）をシーケンス番号とする（ステップＳ４２）。また、第１の通信装置４５４は、ステップＳ４１で送信されたシーケンス番号Ｂに１を加算した値（Ｂ＋１）をＡＣＫ番号とする（ステップＳ４２）。そして、シーケンス番号とＡＣＫ番号を付与したデータを第２の通信装置４５５に送信する（ステップＳ４２）。これにより、第１と第２の通信装置４５４，４５５間でコネクションが確立される。
【００３５】
図６は、ネットワークシステム５のコネクション確立後の通信を説明するための図である。図６では、第１の通信装置４５４から送信されるデータ量は１４６０バイトと仮定する。第１の通信装置４５４は、所定のシーケンス番号（本実施例では、シーケンス番号２００１）を付してデータを第１の中継装置４４１に送信する（ステップＳ５０）。第１の中継装置４４１は、受信したデータにＴＣＰオプションを付与して第２の中継装置４４２にデータを送信する（ステップＳ５１）。ＴＣＰオプションをデータに付与することで、通常のＴＣＰを用いた通信と区別することができる。第２の中継装置４４２は、第１の中継装置４４２から送信されたデータを受信すると、受信したデータからＴＣＰオプションを外すと共に、シーケンス番号に所定値（本実施例では１００００００）を加算する（ステップＳ５２）。そして、第２の中継装置４４２は、処理後のデータを第２の通信装置４５５に送信する（ステップＳ５２）。
【００３６】
第２の通信装置４５５は、次に受信を期待する番号に所定値（本実施例では１００００００）が加算された状態のＡＣＫ番号を付与したデータを第２の中継装置４４２に送信する（ステップＳ５３）。第１の中継装置４４１は、第２の中継装置４４２から送信されたデータを受信すると、受信したデータに対しＴＣＰオプションを付与すると共に、確認応答番号から所定値（本実施例では１００００００）を減算する（ステップＳ５４）。これにより、ステップＳ５０で送信された元のシーケンス番号に対するＡＣＫ番号となる。そして、第２の中継装置４４２は、処理後のデータを第１の中継装置４４１に送信する（ステップＳ５４）。第１の中継装置４４１は、第２の中継装置４４２から送信されたデータを受信すると、受信したデータからＴＣＰオプションを外すと共に、シーケンス番号に所定値（本実施例では１００００００）を加算する（ステップＳ５５）。そして、第１の中継装置４４１は、処理後のデータを第１の通信装置４５４に送信する（ステップＳ５５）。
【００３７】
ネットワークシステム５は、ステップＳ５５以降のデータ通信（ステップＳ５６〜Ｓ５８）ついても、同様の処理を行う。すなわち、ステップＳ５６の動作はステップＳ５０の動作と同様であり、ステップＳ５７の動作はステップＳ５１の動作と同様であり、ステップＳ５８の動作はステップＳ５２の動作と同様である。
【００３８】
なお、以降において、ネットワークシステム５の第１と第２の中継装置４４１，４４２での各場面での障害発生の検知方法について詳細に説明する。
【００３９】
Ｂ−２．障害発生の検知について：
Ｂ−２−１．３ウェイ・ハンドシェイクにおける障害発生の検知：
図７は、３ウェイ・ハンドシェイク時の障害発生の検知について説明するための図である。すなわち、図７は、３ウェイ・ハンドシェイク時において、第１の中継装置４４１と第２の中継装置４４２のいずれかに障害（詳細には、加工部４８の障害）が発生した場合の障害発生の検知方法について説明するための図である。
【００４０】
ＴＣＰでは、コネクションを確立する際、ＳＹＮパケットに対してＳＹＮ／ＡＣＫパケットが返信され、ＳＹＮ／ＡＣＫパケットに対してＡＣＫパケットを返信すことでコネクションが確立される。詳細には以下に記載する工程によりコネクションが確立される。
・ステップＳ６０：第１の通信装置４５４から第１の中継装置４４１にＳＹＮパケットを送信する。
・ステップＳ６１：ＴＣＰオプションをデータに付与して第１の中継装置４４１から第２の中継装置４４２にデータを送信する。
・ステップＳ６２：ＴＣＰオプションをデータから外すと共に、シーケンス番号に所定値である１００００００を加算して第２の中継装置４４２から第２の通信装置４５５にデータを送信する。
・ステップＳ６３：第２の通信装置４５５から第２の中継装置４４２にＳＹＮ／ＡＣＫを送信する。ＡＣＫ番号は受信したシーケンス番号に１を加算する。
・ステップＳ６４：ＴＣＰオプションをデータに付与すると共に、ＡＣＫ番号から所定値である１００００００を減算して第２の中継装置４４２から第１の中継装置４４１にデータを送信する。
・ステップＳ６５：ＴＣＰオプションをデータから外すと共に、シーケンス番号に所定値である１００００００を加算して第１の中継装置４４１から第１の通信装置４５４にデータを送信する。
・ステップＳ６６：受信したＡＣＫ番号をシーケンス番号とし、受信したシーケンス番号に１を加算し、ＡＣＫを第１の通信装置４５４から第１の中継装置４４１に送信する。
・ステップＳ６７：ＴＣＰオプションをデータに付与して第１の中継装置４４１から第２の中継装置４４２にデータを送信する。
・ステップＳ６８：ＴＣＰオプションをデータから外すと共に、シーケンス番号に所定値である１００００００を加算して第２の中継装置４４２から第２の通信装置４５５にデータを送信する。
【００４１】
ここで、図７に示す各地点６０ｐ，６１ｐ，６４ｐ，６５ｐ，６６ｐ，６７ｐにおいて障害が発生した場合の障害検知方法の概略は以下の通りとなる。
【００４２】
・地点６０ｐでの障害発生時（第１の障害検知態様）：
ＳＹＮパケットにＴＣＰオプションが付与されていないため、第２の中継装置４４２で障害検知が可能である。
・地点６１ｐでの障害発生時（第２の障害検知態様）
ＳＹＮ／ＡＣＫパケットにＴＣＰオプションが付与されていないため、第１の中継装置４４１で障害検知が可能である。
・地点６４ｐでの障害発生時（第３の障害検知態様）
ＳＹＮ／ＡＣＫパケットにＴＣＰオプションが付与されていないことと、ＡＣＫ番号が減算されていないことによって、第１の中継装置４４１で障害検知が可能である。
・地点６５ｐでの障害発生時（第４の障害検知態様）
ＡＣＫパケットにＴＣＰオプションが付与されていなため、第２の中継装置４４２で障害検知が可能である。
・地点６６ｐでの障害発生時（第５の障害検知態様）
ＡＣＫパケットにＴＣＰオプションが付与されていないことと、ＡＣＫ番号が減算されていないことによって、第２の中継装置４４２で障害検知が可能である。
・地点６７ｐでの障害発生時（第６の障害検知態様）
再送されたＳＹＮ／ＡＣＫパケットにＴＣＰオプションが付与されていないことと、ＡＣＫ番号が減算されていないことによって、第１の中継装置４４１で障害検知が可能である。
【００４３】
上記に挙げた各地点６０ｐ，６１ｐ，６４ｐ，６５ｐ，６６ｐ，６７ｐでの障害発生の詳細処理フローを障害検知の実施形態として以下に詳述する。
【００４４】
Ｂ−２−２．第１の障害検知態様：
図８は、３ウェイ・ハンドシェイク時の障害検知の第１の態様を説明するための図である。図８は、第１の通信装置４５４がＳＹＮパケットを送信する時点６０ｐで、第１の中継装置４４１に障害が発生していた場合の処理フローである。
【００４５】
第１の通信装置４５４がＳＹＮパケットを送信すると、第１の中継装置４４１は加工部４８によってＳＹＮパケットを処理できず、ＳＹＮパケットをパススルーする（ステップＳ７０）。第２の中継装置４４２の検知部４６は、受信したＳＹＮパケットにＴＣＰオプションが付与されていないことを検知することで、第１の中継装置４４１の障害発生を検知できる（ステップＳ７０ａ）。ステップＳ７１以降の工程は、ネットワークシステム５の第１と第２の中継装置４４１，４４２間において、第１と第２の中継装置４４１，４４２間で用いられることが可能な固有のセッション（高速化セッション）が形成されていない為に、通常のＴＣＰセッションによってデータを転送する。すなわち、ステップＳ７１の次に、第２の通信装置４５５は、ＳＹＮ／ＡＣＫパケットを第２の中継装置４４２に送信し、第２の中継装置４４２と第１の中継装置４４１はＳＹＮ／ＡＣＫパケットを第１の中継装置４４１に向けて転送する（ステップＳ７３，Ｓ７３ａ）。ＳＹＮ／ＡＣＫパケットを受信した第１の中継装置４４１は、受信したＳＹＮ／ＡＣＫパケットに対して、ＳＹＮパケットで使用したシーケンス番号１０００に１を加算した値（すなわち、ステップＳ７２で送信されたＡＣＫ番号）をシーケンス番号としてＡＣＫパケットを第２の通信装置４５５に向けて送信する（ステップＳ７４）。第１の中継装置４４１と第２の中継装置４４２は、第１の通信装置４５４から送信されたＡＣＫパケットをパススルーして第２の通信装置４５５に転送する（ステップＳ７５，Ｓ７６）。これにより、第１の通信装置４５４と第２の通信装置４５５との間でコネクションが確立される。
【００４６】
Ｂ−２−３．第２の障害検知態様：
図９は、３ウェイ・ハンドシェイク時の障害検知の第２の態様を説明するための図である。図９では、第１の通信装置４５４からＳＹＮパケットを送信する時点６１ｐで、第２の中継装置４４２に障害が発生していた場合の処理フローである。
【００４７】
コネクションを確立するために、第１の通信装置４５４からＳＹＮパケットが第１の中継装置４４１に送信される（ステップＳ８０）。第１の中継装置４４１は、第１の通信装置４５４からのＳＹＮパケットを受信すると、ＳＹＮパケットにＴＣＰオプションを付与し、第２の中継装置４４２に送信する（ステップＳ８１）。しかしながら、第２の中継装置４４２は、加工部４８（図２）において所定の処理ができないため、ＳＹＮパケットをパススルーし第２の通信装置４５５に送信する（ステップＳ８１ａ）。第２の通信装置４５５は、受信したＳＹＮパケットにＴＣＰオプションが付与されているが、第２の通信装置４５５はＴＣＰオプションをサポートしておらず解釈できない為、ＴＣＰオプションを無視する（ステップＳ８１ｂ）。第２の通信装置４５５は、受信したＳＹＮパケットに対する応答としてＳＹＮ／ＡＣＫパケットを第２の通信装置４４２に送信する（ステップＳ８２）。ここで、第２の中継装置４４２は、第２の通信装置４５５から送信されたＳＹＮ／ＡＣＫパケットを加工部４８で処理することなく第１の中継装置４４１に送信する（ステップＳ８２ａ）。第１の中継装置４４１は、第２の中継装置４４１から受信したＳＹＮ／ＡＣＫパケットにＴＣＰオプションが付与されていないことを検知することで、第２の中継装置４４２の障害発生を検知できる（ステップＳ８２ｂ）。また、ステップＳ８２ｂにおいて、第１の中継装置４４１は、障害発生の検知後にセッション管理テーブルを削除して以降の通信をパススルーさせる。
【００４８】
第１の中継装置４４１は、ステップＳ８３において加工部４８の機能を用いることなくＳＹＮ／ＡＣＫパケットを第１の通信装置４５４に送信する（パススルー）。第１の通信装置４５４は、受信したＳＹＮ／ＡＣＫパケットに対して、ＳＹＮパケットで使用したシーケンス番号１０００に１を加算した値（すなわち、ステップＳ８３で送信されたＡＣＫ番号）をシーケンス番号としてＡＣＫパケットを第２の通信装置４５５に向けて送信する（ステップＳ８４）。ステップＳ８４では、通常のＴＣＰセッションによってＡＣＫパケットが第１の中継装置４４１，第２の中継装置４４２，第２の通信装置４５５に順にパススルーによって転送される（ステップＳ８５，Ｓ８６）。これにより、第１の通信装置４５４と第２の通信装置４５５との間でコネクションが確立される。
【００４９】
Ｂ−２−４．第３の障害検知態様：
図１０は、３ウェイ・ハンドシェイク時の障害検知の第３の態様を説明するための図である。図１０は、第２の中継装置４４２が第２の通信装置４５５にＳＹＮパケットを送信した地点６４ｐで第２の中継装置４４２に障害が発生した場合の処理フローを示している。
【００５０】
図１０において、ステップＳ９０〜ステップＳ９２は、図７に示すステップＳ６０〜ステップＳ６２と同様の処理工程であるため説明を省略する。ステップＳ９２の後に、第２の通信装置４５５は、ＳＹＮパケットに対する応答としてＳＹＮ／ＡＣＫパケットを第２の中継装置４４２に送信する（ステップＳ９３）。ここで、第２の中継装置４４２は、受信したＳＹＮ／ＡＣＫパケットをパススルーして第１の中継装置４４１にＳＹＮ／ＡＣＫパケットを送信する（ステップＳ９３ａ）。第１の中継装置４４１は、受信したＳＹＮ／ＡＣＫパケットにＴＣＰオプションが付与されていないことと、ＡＣＫ番号が減算されていないことを検知することで、対向する第２の中継装置４４２の障害発生を検知できる（ステップＳ９４）。本実施例では、ＡＣＫ番号が減算されていないことは、第２の中継装置４４２の検知部４６が、受信したＡＣＫ番号から所定値（１００００００）を減算した値が、本来受信すべき期待するＡＣＫ番号であることによって判別する。対向する第２の中継装置４４２の障害発生を検知した後に、第１の中継装置４４１は、第１の通信装置４５４、及び、第２の中継装置４４２を介して第２の通信装置４５５にリセット（ＲＳＴ）パケットを送信し、以降の通信を強制的に終了しても良い。また、対向する第２の中継装置４４２の障害発生を検知した後に、第１の中継装置４４１は、受信したＳＹＮ／ＡＣＫパケットをパススルーして第１の通信装置４５４にＳＹＮ／ＡＣＫパケットを送信し、３ウェイ・ハンドシェイクの処理を継続しても良い。
【００５１】
Ｂ−２−５．第４の障害検知態様：
図１１は、３ウェイ・ハンドシェイク時の障害検知の第４の態様を説明するための図である。図１１は、第１の中継装置４４１がＳＹＮパケットを第２の中継装置４４２に送信した地点６５ｐで第１の中継装置４４１に障害が発生した場合の処理フローである。
【００５２】
図１１において、ステップＳ１００〜ステップＳ１０３は、図７に示すステップＳ６０〜ステップＳ６３と同様の処理工程であるため説明を省略する。第２の通信装置４５５から受信したＳＹＮ／ＡＣＫパケットに対し、第２の中継装置４４２は、ＴＣＰオプションを付与すると共に確認応答番号から所定値を減算してＳＹＮ／ＡＣＫパケットを第１の中継装置４４１に送信する（ステップＳ１０４）。そして、第１の中継装置４４１は、加工部４８に障害が発生しているため、第２の中継装置４４２から受信したＳＹＮ／ＡＣＫパケットを加工部４８で処理することなく第１の通信装置４５４に送信する（ステップＳ１０４ａ）。第１の通信装置４５４に送信されたＳＹＮ／ＡＣＫパケットにはＴＣＰオプションが付与されたままであるが、第１の通信装置４５４は、ＴＣＰオプションを解釈できないためＴＣＰオプションが付与されたＳＹＮ／ＡＣＫパケットを受信できる（ステップＳ１０４ｂ）。第１の通信装置４５４は、受信したＳＹＮ／ＡＣＫパケットのＡＣＫ番号をシーケンス番号としてＡＣＫパケットを第１の中継装置４４１に送信する（ステップＳ１０５）。第１の中継装置４４１は第１の中継装置４４１から送信されたＡＣＫパケットをパススルーして第２の中継装置４４２に送信する（ステップＳ１０５ａ）。第２の中継装置４４２は、第１の中継装置４４１から送信されたＡＣＫパケットにＴＣＰオプションが付与されていないことを検知することで、対向する第１の中継装置４４１の障害発生を検知できる（ステップＳ１０６）。対向する第１の中継装置４４１の障害発生を検知した後は、第２の中継装置４４２は、第２の通信装置４４５、及び、第１の中継装置４４１を介して第１の通信装置４５４にＲＳＴパケットを送信し、以降の通信を強制的に終了しても良い。また、対向する第１の中継装置４４１の障害発生を検知した後は、第２の中継装置４４２は、受信したＡＣＫパケットをパススルーして第２の通信装置４５５にＡＣＫパケットを送信することで、３ウェイ・ハンドシェイクの処理を継続しても良い。
【００５３】
Ｂ−２−６．第５の障害検知態様：
図１２は、３ウェイ・ハンドシェイク時の障害検知の第５の態様を説明するための図である。図１２は、第１の中継装置４４１がＳＹＮ／ＡＣＫパケットを第１の通信装置４５４に送信した地点６６ｐで第１の中継装置４４１に障害が発生した場合の処理フローである。
【００５４】
図１２において、ステップＳ１１０〜ステップＳ１１５は、図７に示すステップＳ６０〜ステップＳ６５と同様の処理工程であるため説明を省略する。ステップＳ１１５の後に、第１の通信装置４５４は、受信したＳＹＮ／ＡＣＫパケットのＡＣＫ番号をシーケンス番号としてＡＣＫパケットを第１の中継装置４４１に送信する（ステップＳ１１６）。第１の中継装置４４１は、加工部４８に障害が発生しているため、受信したＡＣＫパケットを加工部４８で処理することなく第２の中継装置４４２に送信する（ステップＳ１１７）。第２の中継装置４４２は、受信したＡＣＫパケットにＴＣＰオプションが付与されていないことと、ＡＣＫ番号が減算されていないことを検知することで、対向する第１の中継装置４４１の障害発生を検知できる（ステップＳ１１８）。対向する第１の中継装置４４１の障害発生を検知した後に、第２の中継装置４４２は、第２の通信装置４５５、及び、第１の中継装置４４２を介して第２の通信装置４５５にリセット（ＲＳＴ）パケットを送信し、以降の通信を強制的に終了しても良い。また、対向する第１の中継装置４４１の障害発生を検知した後に、第２の中継装置４４２は、受信したＳＹＮ／ＡＣＫパケットをパススルーして第１の通信装置４５４にＳＹＮ／ＡＣＫパケットを送信し、３ウェイ・ハンドシェイクの処理を継続しても良い。
【００５５】
Ｂ−２−７．第６の障害検知態様：
図１３は、３ウェイ・ハンドシェイク時の障害検知の第６の態様を説明するための図である。図１３は、第２の中継装置４４２がＳＹＮ／ＡＣＫパケットを第１の中継装置４４１に送信した直後に第２の中継装置４４２に障害が発生した場合の処理フローである。
【００５６】
図１３において、ステップＳ１２０〜ステップＳ１２６は、図７に示すステップＳ６０〜ステップＳ６６と同様の処理工程であるため説明を省略する。第１の通信装置４５４から送信されたＡＣＫパケットに対し、第１の中継装置４４１はＴＣＰオプションを付与すると共に、ＡＣＫ番号から所定値である１００００００を減算してＡＣＫパケットを第２の中継装置４４２に送信する（ステップＳ１２７）。第２の中継装置４４２は、加工部４８に障害が発生しているため、第１の中継装置４４２から受信したＡＣＫパケットを加工部４８で処理することなく第２の通信装置４５５に送信する（ステップＳ１２８）。第２の通信装置４５５は、ＡＣＫパケットを受信するが受信したＡＣＫパケットのシーケンス番号が期待するシーケンス番号（シーケンス番号：１０１０００１）とは異なるためシーケンス違いによりステップＳ１２３と同様のＳＹＮ／ＡＣＫパケットを第２の中継装置４４２に再送する（ステップＳ１２９）。また、第２の中継装置４４２は、再送されたＳＹＮ／ＡＣＫパケットをパススルーし、第１の中継装置４４１に送信する（ステップＳ１２９ａ）。第１の中継装置４４１は、受信したＳＹＮ／ＡＣＫパケットにＴＣＰオプションが付与されていないことと、ＡＣＫ番号が減算されていないことを検知することで、対向する第２の中継装置４４２の障害発生を検知できる（ステップＳ１３０）。対向する第２の中継装置の障害発生を検知した後に、第１の中継装置４４１は、第１の通信装置４５４、及び、第２の中継装置４４２を介して第２の通信装置４５５にリセット（ＲＳＴ）パケットを送信し、以降の通信を強制的に終了しても良い。また、対向する第２の中継装置４４２の障害発生を検知した後に、第１の中継装置４４１は、受信したＳＹＮ／ＡＣＫパケットをパススルーして第１の通信装置４５４にＳＹＮ／ＡＣＫパケットを送信し、３ウェイ・ハンドシェイクの処理を継続しても良い。
【００５７】
Ｂ−３．コネクション確立後の障害発生の検知について：
図１４は、ＴＣＰによるデータ通信中に障害が発生した場合の第１の障害検知態様を説明するための図である。図１４では、シーケンス番号１００１におけるデータの第２の通信装置４５５への送信が完了した地点（ステップＳ１４０〜ステップＳ１４２の後の地点）１４０ｐで、第１の中継装置４４１に障害が発生した場合の障害検知処理フローである。なお、図１４では、シーケンス番号１０００１のデータに対するＡＣＫパケットについては図示を省略している。
【００５８】
第１の通信装置４５４は、シーケンス番号１０００１のデータを第１の中継装置４４１に送信後、シーケンス番号１１４６１のデータを第１の中継装置４４１に送信する（ステップＳ１５０）。第１の中継装置４４１は障害が発生しているため受信したデータを加工部４８で処理することなく第２の中継装置４４２に送信する（ステップＳ１５１）。シーケンス番号１１４６１のデータを受信した第２の中継装置４４２は、受信したデータにＴＣＰオプションが付与されていないこと、ＡＣＫ番号が減算されていないことを検知することで、対向する第１の中継装置４４１の障害を検知できる（ステップＳ１５5）。対向する第１の中継装置４４１の障害を検知した後に、第２の中継装置４４２は、第２の通信装置４５５、及び、第１の中継装置４４１を介して第１の通信装置４５４にリセット（ＲＳＴ）パケットを送信し、以降の通信を強制的に終了させても良い。また、対向する第１の中継装置４４１の障害発生を検知した後に、第２の中継装置４４２は、受信したデータをパススルーによって第２の通信装置４５５に送信しても良い。なお、第２の中継装置４４２は、受信したデータをパススルーによって第２の通信装置４５５に送信した場合において、第２の通信装置４５５は受信したデータのＡＣＫ番号が、本体付加されるべき期待するＡＣＫ番号に所定値である１００００００を加算した値と異なるときは、シーケンスエラーと判断する。そして、第２の通信装置４５５は、期待するＡＣＫ番号（ここでは、ＡＣＫ番号２０００１）を第２の中継装置４４２，第１の中継装置４４１を介して第１の通信装置４５４に送信する。
【００５９】
図１５は、ＴＣＰによるデータ通信中に障害が発生した場合の第２の障害検知態様を説明するための処理である。図１５では、シーケンス番号１０００１のデータの第２の通信装置４５５への送信が完了した後（ステップＳ１６０〜ステップＳ１６２の後）に、第２の中継装置４４２に障害が発生した場合の障害検知フローである。
【００６０】
第１の通信装置４５４は、シーケンス番号１０００１のデータを第１の中継装置４４１に送信後、シーケンス番号１１４６１のデータを第１の中継装置４４１に送信する（ステップＳ１７０）。第１の中継装置４４１は、シーケンス番号１１４６１のデータにＴＣＰオプションを付与すると共に、ＡＣＫ番号から所定値である１００００００を減算して第２の中継装置４４２にデータを送信する（ステップＳ１７１）。第２の中継装置４４２は受信したデータをパススルーする（ステップＳ１７２）。第２の中継装置４４２からのデータを受信した第２の通信装置４５５は、期待したシーケンス番号（シーケンス番号１０１１４６１）とは異なるシーケンス番号が付与されたデータを受信したため、シーケンスエラーとして再送要求のＡＣＫパケットを返送する（ステップＳ１８０）。第２の中継装置４４２は、障害発生中の為、再送要求のＡＣＫパケットをパススルーする（ステップＳ１８１）。第１の中継装置４４１は、再送要求のＡＣＫパケットにＴＣＰオプションが付与されていないことと、ＡＣＫ番号が減算されていないことを検知することで、対向する第２の中継装置４４２の障害を検知できる（ステップＳ１８５）。対向する第２の中継装置４４２の障害を検知した後に、第１の中継装置４４１は、第１の通信装置４５４、及び、第２の中継装置４４２を介して第２の通信装置４５５にリセット（ＲＳＴ）パケットを送信し、以降の通信を強制的に終了させても良い。また、対向する第２の中継装置４４２の障害を検知した後に、第１の中継装置４４１は、受信したデータをパススルーによって第１の通信装置４５４に送信しても良い。なお、図１５では、第１の中継装置４４１は、シーケンス番号１１４６１のデータに対するＡＣＫパケットに基づき障害発生を検知したが（ステップＳ１８５）、シーケンス番号１０００１のデータに対するＡＣＫパケットの送信がステップＳ１８０よりも先に処理された場合は、該ＡＣＫパケットに基づき障害発生を検知できる。
【００６１】
Ｂ−４．効果：
上記のように、第１と第２の中継装置４４１，４４２は、ＴＣＰオプションとＡＣＫ番号の少なくともいずれか一方に基づいて、一方の中継装置４４１，４４２が他方の中継装置４４１，４４２の障害発生を容易に検知できる。これにより、例えば、第１と第２の中継装置４４１，４４２のいずれかに障害が発生した場合に、タイムアウト等によるデータ通信の中断を待つことなく、パススルーによるデータ送信や、ＲＳＴパケットの送信等のデータ通信を進めるための処理を速やかに実行できる。
【００６２】
上記実施例では、ＴＣＰオプションとＡＣＫ番号に基づいて中継装置４４１，４４２の障害発生を検知している（例えば、図１０，図１２，図１３）。ＴＣＰオプションに加え、ＡＣＫ番号も障害発生を検知するための判断要素に加えることで、他のネットワーク（コネクション）から誤って侵入したＴＣＰオプションが付与されたパケットを元に、対向する中継装置４４１，４４２の障害発生を誤って検知できない可能性を低減できる。すなわち、より精度良く中継装置４４１，４４２の障害発生を検知できるネットワークシステム５を構築できる。
【００６３】
また、上記実施例では、受信したデータによって検知部４６が対向する中継装置４４１，４４２の障害発生を検知した場合に、障害発生を検知した中継装置４４１，４４２が受信したデータがＳＹＮパケットを含む場合は、パススルーによって以降のデータを処理している（図８）。これにより、３ウェイ・ハンドシェイクの処理を中断することなくコネクションを確立できる。
【００６４】
また、上記実施例では、受信したデータによって検知部４６が対向する中継装置４４１，４４２の障害発生を検知した場合に、障害発生を検知した中継装置４４１，４４２が受信したデータがＴＣＰコネクション確立要求を行うためのＳＹＮパケットに対するＡＣＫパケットを含む場合は、パススルーによって以降のデータを処理している（図９）。これにより、３ウェイ・ハンドシェイクの処理を中断することなくコネクションを確立できる。
【００６５】
ここで、上記実施例の第１の中継装置４４１と第２の中継装置４４２が課題を解決するための手段に記載の「第１の中継装置」に相当する。詳細には、上記実施例のうち、第１の中継装置４４１が課題を解決するための手段に記載の「第１の中継装置」に相当する場合は、第２の中継装置４４２が課題を解決するための手段に記載の「第２の中継装置」に相当する。また、上記実施例のうち、第２の中継装置４４２が課題を解決するための手段に記載の「第１の中継装置」に相当する場合は、第１の中継装置４４１が課題を解決するための手段に記載の「第２の中継装置」に相当する。
【００６６】
Ｃ．変形例：
以上、本発明の一実施例について説明したが、本発明はこのような実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができる。例えば以下のような変形が可能である。
【００６７】
Ｃ−１．第１変形例：
上記実施例の障害検知の一態様では、データにＴＣＰオプションが付与されていないことと、ＡＣＫ番号が減算されていないことを検知することで対向する中継装置４４１，４４２の障害発生を検知する態様を含んでいたが（例えば、Ｂ−２−４．第３の障害検知態様）、これに限定されるものではない。すなわち、データにＴＣＰオプションが付与されていないことと、ＡＣＫ番号が減算されていないことの少なくともいずれか一方を検知することで、一方の中継装置４４１，４４２が、他方の対向する中継装置４４１，４４２の障害発生を検知しても良い。例えば、図１０において、第１の中継装置４４１が受信したデータにＴＣＰオプションが付与されていないことを検知することで、第１の中継装置４４１は対向する第２の中継装置４４２の障害発生を検知しても良い。また、例えば図１０において、第１の中継装置４４１が受信したデータのＡＣＫ番号が所定値減算されていないことを検知することで、第１の中継装置４４１は対向する第２の中継装置４４２の障害発生を検知しても良い。すなわち、以下の変形態様の中継装置であっても良い。
【００６８】
・第１の変形態様：
シーケンス番号を用いたストリーム型の通信によってデータを伝送する２つの端末と、前記２つの端末の伝送路上に直列に配置され前記２つの端末間のデータを中継するための第１と第２の中継装置と、を有するネットワークに配置される第１の中継装置であって、
受信したデータの転送を行うための転送制御部と、
対向する前記第２の中継装置に障害が発生したことを検知する検知部と、を備え、
前記転送制御部は、
前記受信したデータの転送を行う転送部と、
前記第２の中継装置の障害の発生を検知するために前記受信したデータを加工する加工部であって、（ｉ）前記第２の中継装置に向けてデータを転送する場合に、転送するデータに前記第１と第２の中継装置間でのデータのやり取りであることを示すためのマークをデータに付与するオプション部と、を有する加工部と、を有し、
前記検知部が対向する前記第２の中継装置の障害の発生を検知するための要素として前記マークを含む、第１の中継装置。
上記第１の変形態様の第１の中継装置は、マークに基づいて対向する第２の中継装置の障害発生を検知できる。ここで、検知部は、第２の中継装置から送信されて受信したデータにマークが付与されていない場合に、第２の中継装置の障害の発生を容易に検知できる。
【００６９】
・第２の変形態様：
シーケンス番号を用いたストリーム型の通信によってデータを伝送する２つの端末と、前記２つの端末の伝送路上に直列に配置され前記２つの端末間のデータを中継するための第１と第２の中継装置と、を有するネットワークに配置される第１の中継装置であって、
受信したデータの転送を行うための転送制御部と、
対向する前記第２の中継装置に障害が発生したことを検知する検知部と、を備え、
前記転送制御部は、
前記受信したデータの転送を行う転送部と、
前記第２の中継装置の障害の発生を検知するために前記受信したデータを加工する加工部であって、（ｉ）データを対向する前記端末に送信する場合に、送信元の前記端末から送信されるデータに付与されているシーケンス番号に所定値を加算する加算部と、（ｉｉ）データを対向する前記端末から受信した場合に、前記端末から送信されたデータに付与されている確認応答番号に対し前記所定値を減算する減算部と、を有する加工部と、を有し、
前記検知部が対向する前記第２の中継装置の障害の発生を検知するための要素として前記確認応答番号を含む、第１の中継装置。
上記第２の変形態様の第１の中継装置は、確認応答番号に基づいて対向する第２の中継装置の障害発生を検知できる。ここで、検知部は、第２の中継装置から送信されて受信したデータのうち確認応答番号が、本来受信すべき番号から所定値を加算した番号である場合に、第２の中継装置の障害の発生を容易に検知できる。
【００７０】
Ｃ−２．第２変形例：
上記実施例では、第１と第２の通信装置４５４，４５５はＴＣＰによってデータ通信を行っていたが、データ通信に用いられるプロトコルはＴＣＰに限定されるものではない。すなわち、第１と第２の通信装置４５４，４５５がシーケンス番号を用いたストリーム型の通信によってデータ通信を行う場合に、本発明を適用できる。例えば、ＲＴＣＰ(Real-time Transport Control Protocol)を用いたデータ通信にも本発明は適用できる。
【００７１】
Ｃ−３．第３変形例：
上記実施例では、第１と第２の中継装置４４１，４４２が対向する中継装置４４１，４４２の障害発生を検知し、ＲＳＴパケットを送信することでデータ通信を中断していたが、以下のようにしてデータ通信を中断しても良い。すなわち、ネットワークシステム５に接続された制御装置を新たに備え、中継装置４４１，４４２によって障害が検知された場合に、障害を検知した中継装置が障害検知を制御装置に報知し、障害検知に関する情報を受信した制御装置がデータ通信の中断を実行しても良い。
【符号の説明】
【００７２】
５，５ｗ…ネットワークシステム
１０ｗ…第１の中継装置
１１ｗ…第２の中継装置
２０ｗ…第１の通信装置
２１ｗ…第２の通信装置
４１，４２…入出力インタフェース
４４…転送制御部
４６…検知部
４８…加工部
４８ａ…オプション部
４８ｂ…加算部
４８ｃ…減算部
４９…転送部
４４１…第１の中継装置
４４２…第２の中継装置
４５４…第１の通信装置
４５５…第２の通信装置
【図１】
2013128483.tif 000003
【図２】
2013128483.tif 000004
【図３】
2013128483.tif 000005
【図４】
2013128483.tif 000006
【図５】
2013128483.tif 000007
【図６】
2013128483.tif 000008
【図７】
2013128483.tif 000009
【図８】
2013128483.tif 000010
【図９】
2013128483.tif 000011
【図１０】
2013128483.tif 000012
【図１１】
2013128483.tif 000013
【図１２】
2013128483.tif 000014
【図１３】
2013128483.tif 000015
【図１４】
2013128483.tif 000016
【図１５】
2013128483.tif 000017
【手続補正書】
【提出日】平成25年7月16日(2013.7.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
シーケンス番号を用いた通信によってデータを伝送する２つの端末と、前記２つの端末の伝送路上に配置され前記２つの端末間のデータを中継するための第１と第２の中継装置と、を有するネットワークに配置される第１の中継装置であって、
受信したデータの転送を行うための転送制御部と、
対向する前記第２の中継装置に障害が発生したことを検知する検知部と、を備え、
前記転送制御部は、
前記受信したデータの転送を行う転送部と、
前記受信したデータを加工する加工部であって、（ｉ）前記第２の中継装置に向けてデータを転送する場合に、転送するデータに前記第１と第２の中継装置間でのデータのやり取りであることを示すためのマークをデータに付与するオプション部と、（ｉｉ）データを対向する前記端末に送信する場合に、送信元の前記端末から送信されるデータに付与されているシーケンス番号に所定値を加算する加算部と、（ｉｉｉ）データを対向する前記端末から受信した場合に、前記端末から送信されたデータに確認応答番号が付与されているときに、前記確認応答番号に対し前記所定値を減算する減算部と、を有する加工部と、を有し、
前記検知部は、前記第２の中継装置から送信されるデータに付与される、前記第１と第２の中継装置間でのデータのやり取りであることを示すための第１のマークと、確認応答番号である第１の確認応答番号の少なくともいずれか一方に基づいて対向する前記第２の中継装置の障害の発生を検知する、第１の中継装置。
【請求項２】
請求項１に記載の第１の中継装置であって、
前記検知部は、前記第２の中継装置から送信されて受信したデータに前記第１のマークが付与されていない場合に、前記第２の中継装置の障害の発生を検知する、第１の中継装置。
【請求項３】
請求項１に記載の第１の中継装置であって、
前記検知部は、前記第２の中継装置から送信されて受信したデータのうちの前記第１の確認応答番号が、本来受信すべき番号から前記所定値を加算した番号である場合に、前記第２の中継装置の障害の発生を検知する、第１の中継装置。
【請求項４】
請求項１に記載の第１の中継装置であって、
前記検知部は、前記第２の中継装置から送信されて受信したデータに前記第１のマークが付与されていない場合であり、かつ、前記受信したデータのうちの前記第１の確認応答番号が、本来受信すべき番号から前記所定値を加算した番号である場合に、前記第２の中継装置の障害の発生を検知する、第１の中継装置。
【請求項５】
請求項１乃至請求項４のいずれか一項に記載の第１の中継装置であって、
前記２つの端末はＴＣＰを用いて通信を行い、
前記転送制御部は、
受信したデータによって前記検知部が前記第２の中継装置の障害の発生を検知した場合に、前記受信したデータがＴＣＰコネクション確立要求を行うためのＳＹＮパケットを含む場合は、前記加工部の機能を用いることなく前記受信したデータの転送を行う、第１の中継装置。
【請求項６】
請求項１乃至請求項５のいずれか一項に記載の第１の中継装置であって、
前記２つの端末はＴＣＰを用いて通信を行い、
前記転送制御部は、
受信したデータによって前記検知部が前記第２の中継装置の障害の発生を検知した場合に、前記受信したデータがＴＣＰコネクション確立要求を行うためのＳＹＮパケットに対する確認応答パケットを含む場合は、前記加工部の機能を用いることなく前記受信したデータの転送を行う、第１の中継装置。
【請求項７】
シーケンス番号を用いた通信によってデータが伝送される２つの端末と、前記２つの端末の伝送路上に配置され前記２つの端末間のデータを中継するための第１と第２の中継装置と、を有するネットワークに配置される第１の中継装置の制御方法であって、
（ａ）受信したデータを転送する工程と、
（ｂ）対向する前記第２の中継装置に障害が発生したことを検知する工程と、を備え、
前記工程（ａ）は、
（ａ１）前記第２の中継装置に向けてデータを転送する場合に、転送するデータに前記第１と第２の中継装置間でのデータのやり取りであることを示すためのマークをデータに付与する工程と、
（ａ２）データを対向する前記端末に送信する場合に、送信元の前記端末から送信されるデータに付与されているシーケンス番号に所定値を加算する工程と、
（ａ３）データを対向する前記端末から受信した場合に、前記対向する端末から送信されるデータに確認応答番号が付与されているときに、前記確認応答番号に前記所定値を減算する工程と、を含み、
前記工程（ｂ）は、
前記第２の中継装置から送信されるデータに付与される、前記第１と第２の中継装置間でのデータのやり取りであることを示すための第１のマークと、確認応答番号である第１の確認応答番号の少なくともいずれか一方に基づいて対向する前記第２の中継装置の障害の発生を検知する工程を含む、制御方法。
【請求項８】
ネットワークシステムであって、
シーケンス番号を用いた通信によってデータを伝送する２つの端末と、
前記２つの端末の伝送路上に配置され前記２つの端末間のデータを中継するための第１と第２の中継装置と、を備え、
前記１と第２の中継装置は、それぞれ、
受信したデータの転送を行うための転送制御部と、
対向する他方の前記中継装置に障害が発生したことを検知する検知部と、を備え、
前記転送制御部は、
前記受信したデータの転送を行う転送部と、
前記受信したデータを加工する加工部であって、（ｉ）前記他方の中継装置に向けてデータを転送する場合に、転送するデータに前記第１と第２の中継装置間でのデータのやり取りであることを示すためのマークをデータに付与するオプション部と、（ｉｉ）データを対向する前記端末に送信する場合に、送信元の前記端末から送信されるデータに付与されているシーケンス番号に所定値を加算する加算部と、（ｉｉｉ）データを対向する前記端末から受信した場合に、前記端末から送信されたデータに確認応答番号が付与されているときに、前記確認応答番号に対し前記所定値を減算する減算部と、を有する加工部と、を有し、
一方の前記中継装置が備える前記検知部は、前記他方の中継装置の前記オプション部によって付与される前記マークと、前記他方の中継装置から送信されるデータに付与される前記確認応答番号の少なくともいずれか一方に基づいて対向する前記他方の中継装置の障害の発生を検知する、ネットワークシステム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
本発明は、上述の課題を解決するために成されたものであり、シーケンス番号を用いた通信を行う環境下において、対向する中継装置の障害の発生を検知できる技術を提供することを目的とする。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
本発明は、上記の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することができる。
形態１：シーケンス番号を用いた通信によってデータを伝送する２つの端末と、前記２つの端末の伝送路上に配置され前記２つの端末間のデータを中継するための第１と第２の中継装置と、を有するネットワークに配置される第１の中継装置であって、
受信したデータの転送を行うための転送制御部と、
対向する前記第２の中継装置に障害が発生したことを検知する検知部と、を備え、
前記転送制御部は、
前記受信したデータの転送を行う転送部と、
前記受信したデータを加工する加工部であって、（ｉ）前記第２の中継装置に向けてデータを転送する場合に、転送するデータに前記第１と第２の中継装置間でのデータのやり取りであることを示すためのマークをデータに付与するオプション部と、（ｉｉ）データを対向する前記端末に送信する場合に、送信元の前記端末から送信されるデータに付与されているシーケンス番号に所定値を加算する加算部と、（ｉｉｉ）データを対向する前記端末から受信した場合に、前記端末から送信されたデータに確認応答番号が付与されているときに、前記確認応答番号に対し前記所定値を減算する減算部と、を有する加工部と、を有し、
前記検知部は、前記第２の中継装置から送信されるデータに付与される、前記第１と第２の中継装置間でのデータのやり取りであることを示すための第１のマークと、確認応答番号である第１の確認応答番号の少なくともいずれか一方に基づいて対向する前記第２の中継装置の障害の発生を検知する、第１の中継装置。
形態２：シーケンス番号を用いた通信によってデータが伝送される２つの端末と、前記２つの端末の伝送路上に配置され前記２つの端末間のデータを中継するための第１と第２の中継装置と、を有するネットワークに配置される第１の中継装置の制御方法であって、
（ａ）受信したデータを転送する工程と、
（ｂ）対向する前記第２の中継装置に障害が発生したことを検知する工程と、を備え、
前記工程（ａ）は、
（ａ１）前記第２の中継装置に向けてデータを転送する場合に、転送するデータに前記第１と第２の中継装置間でのデータのやり取りであることを示すためのマークをデータに付与する工程と、
（ａ２）データを対向する前記端末に送信する場合に、送信元の前記端末から送信されるデータに付与されているシーケンス番号に所定値を加算する工程と、
（ａ３）データを対向する前記端末から受信した場合に、前記対向する端末から送信されるデータに確認応答番号が付与されているときに、前記確認応答番号に前記所定値を減算する工程と、を含み、
前記工程（ｂ）は、
前記第２の中継装置から送信されるデータに付与される、前記第１と第２の中継装置間でのデータのやり取りであることを示すための第１のマークと、確認応答番号である第１の確認応答番号の少なくともいずれか一方に基づいて対向する前記第２の中継装置の障害の発生を検知する工程を含む、制御方法。
形態３：ネットワークシステムであって、
シーケンス番号を用いた通信によってデータを伝送する２つの端末と、
前記２つの端末の伝送路上に配置され前記２つの端末間のデータを中継するための第１と第２の中継装置と、を備え、
前記１と第２の中継装置は、それぞれ、
受信したデータの転送を行うための転送制御部と、
対向する他方の前記中継装置に障害が発生したことを検知する検知部と、を備え、
前記転送制御部は、
前記受信したデータの転送を行う転送部と、
前記受信したデータを加工する加工部であって、（ｉ）前記他方の中継装置に向けてデータを転送する場合に、転送するデータに前記第１と第２の中継装置間でのデータのやり取りであることを示すためのマークをデータに付与するオプション部と、（ｉｉ）データを対向する前記端末に送信する場合に、送信元の前記端末から送信されるデータに付与されているシーケンス番号に所定値を加算する加算部と、（ｉｉｉ）データを対向する前記端末から受信した場合に、前記端末から送信されたデータに確認応答番号が付与されているときに、前記確認応答番号に対し前記所定値を減算する減算部と、を有する加工部と、を有し、
一方の前記中継装置が備える前記検知部は、前記他方の中継装置の前記オプション部によって付与される前記マークと、前記他方の中継装置から送信されるデータに付与される前記確認応答番号の少なくともいずれか一方に基づいて対向する前記他方の中継装置の障害の発生を検知する、ネットワークシステム。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
Ｂ．実施例：
Ｂ−１．ネットワークシステム５の構成：
図２は、本発明の実施例としてのネットワークシステム５を説明するための図である。図２に示すように、ネットワークシステム５は、端末としての第１と第２の通信装置４５４，４５５と、第１と第２の通信装置４５４，４５５間のデータ通信を中継する第１と第２の中継装置４４１，４４２と、を備える。第１と第２の中継装置４４１，４４２は、第１と第２の通信装置４５４，４５５の伝送路上に直列に配置されている。第１と第２の通信装置４５４，４５５はＴＣＰを用いてデータ（パケット）通信を行う。なお、第１と第２の中継装置４４１，４４２との間にはインターネット（図示せず）が存在する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
第１の中継装置４４１は、外部機器（例えば第１の通信装置４５４）との間でデータの受信及び送信を行う入出力インタフェース４１，４２と、受信したデータの転送を制御するための転送制御部４４と、他の中継装置４４２の障害を検知するための検知部４６と、を備える。なお、第２の中継装置４４２の構成も同様の構成であるため、内部構成の図示は省略すると共に説明を省略する。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００３２
【補正方法】変更
【補正の内容】
【００３２】
図４は、ネットワークシステム５におけるデータ通信時のＴＣＰヘッドの変化について説明するための図である。図４は、コネクション確立時（３ウェイ・ハンドシェイク時）に行なわれる通信の一部を例として示している。第１の通信装置４５４は、端末間で実行される通常のＴＣＰで通信を開始する（ステップＳ３０）。例えば、シーケンス番号（Ｓｅｑ♯）１００００でＳＹＮパケットを送信する。第１の中継装置４４１のオプション部４８ａは、受信したデータにＴＣＰオプションを付与し、転送部４９がデータを第２の中継装置４４２に送信する（ステップＳ３２）。第２の中継装置４４２のオプション部４８ａは、受信したデータからＴＣＰオプションを外し、第２の中継装置の加算部４８ｂは、受信したデータのシーケンス番号に１００００００を加算する（ステップＳ３３）。そして、処理後のデータを転送部４９が第２の通信装置４５５に送信する（ステップＳ３３）。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００３３
【補正方法】変更
【補正の内容】
【００３３】
第２の通信装置４５５は、通常のＴＣＰ処理を行い、受信したデータ中のシーケンス番号に対して次に期待するシーケンスをＡＣＫ番号に付与して送信する（ステップＳ３４）。本実施例では、ＡＣＫ番号はステップＳ３０で送信された元のシーケンス番号に所定値１００００００と１を加算した値となる。第２の中継装置４４２の減算部４８ｃは、送信元の第２の通信装置４５５から送信されたデータのＡＣＫ番号から所定値である１００００００を減算することで、元のシーケンスと整合が取れるように処理する（ステップＳ３５）。また、第２の中継装置４４２のオプション部４８ａは、データに対しＴＣＰオプションを付与する（ステップＳ３５）。そして、処理後のデータを第２の中継装置４４２の転送部４９が第１の中継装置４４１に送信する（ステップＳ３５）。第１の中継装置４４１のオプション部４８ａは、第２の中継装置４４２から受信したデータのＴＣＰオプションを外し、元のストリームと整合させる（ステップＳ３６）。また、第１の中継装置４４１は、受信したデータのシーケンス番号に所定値である１００００００を加算する（ステップＳ３６）。そして、第１の中継装置４４１の転送部４９は、処理後のデータを第１の通信装置４５４に送信する（ステップＳ３６）。なお、図示は省略するが、ステップＳ３６の後、第１の中継装置４４１は、受信したＳＹＮ／ＡＣＫパケットのＡＣＫ番号をシーケンス番号としてＡＣＫパケットを第１の中継装置４４１に送信する。そして、第１の中継装置４４１及び第２の中継装置４４２の加工部４８は、それぞれＡＣＫパケット対し所定の処理を施す。最終的には、第２の通信装置４５５がＡＣＫパケットを受信してコネクションが確立される。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００３６
【補正方法】変更
【補正の内容】
【００３６】
第２の通信装置４５５は、次に受信を期待する番号に所定値（本実施例では１００００００）が加算された状態のＡＣＫ番号を付与したデータを第２の中継装置４４２に送信する（ステップＳ５３）。第２の中継装置４４２は、第２の通信装置４５５から送信されたデータを受信すると、受信したデータに対しＴＣＰオプションを付与すると共に、確認応答番号から所定値（本実施例では１００００００）を減算する（ステップＳ５４）。これにより、ステップＳ５０で送信された元のシーケンス番号に対するＡＣＫ番号となる。そして、第２の中継装置４４２は、処理後のデータを第１の中継装置４４１に送信する（ステップＳ５４）。第１の中継装置４４１は、第２の中継装置４４２から送信されたデータを受信すると、受信したデータからＴＣＰオプションを外すと共に、シーケンス番号に所定値（本実施例では１００００００）を加算する（ステップＳ５５）。そして、第１の中継装置４４１は、処理後のデータを第１の通信装置４５４に送信する（ステップＳ５５）。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００４０
【補正方法】変更
【補正の内容】
【００４０】
ＴＣＰでは、コネクションを確立する際、ＳＹＮパケットに対してＳＹＮ／ＡＣＫパケットが返信され、ＳＹＮ／ＡＣＫパケットに対してＡＣＫパケットを返信することでコネクションが確立される。詳細には以下に記載する工程によりコネクションが確立される。
・ステップＳ６０：第１の通信装置４５４から第１の中継装置４４１にＳＹＮパケットを送信する。
・ステップＳ６１：ＴＣＰオプションをデータに付与して第１の中継装置４４１から第２の中継装置４４２にデータを送信する。
・ステップＳ６２：ＴＣＰオプションをデータから外すと共に、シーケンス番号に所定値である１００００００を加算して第２の中継装置４４２から第２の通信装置４５５にデータを送信する。
・ステップＳ６３：第２の通信装置４５５から第２の中継装置４４２にＳＹＮ／ＡＣＫを送信する。ＡＣＫ番号は受信したシーケンス番号に１を加算する。
・ステップＳ６４：ＴＣＰオプションをデータに付与すると共に、ＡＣＫ番号から所定値である１００００００を減算して第２の中継装置４４２から第１の中継装置４４１にデータを送信する。
・ステップＳ６５：ＴＣＰオプションをデータから外すと共に、シーケンス番号に所定値である１００００００を加算して第１の中継装置４４１から第１の通信装置４５４にデータを送信する。
・ステップＳ６６：受信したＡＣＫ番号をシーケンス番号とし、受信したシーケンス番号に１を加算し、ＡＣＫを第１の通信装置４５４から第１の中継装置４４１に送信する。
・ステップＳ６７：ＴＣＰオプションをデータに付与して第１の中継装置４４１から第２の中継装置４４２にデータを送信する。
・ステップＳ６８：ＴＣＰオプションをデータから外すと共に、シーケンス番号に所定値である１００００００を加算して第２の中継装置４４２から第２の通信装置４５５にデータを送信する。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００４５
【補正方法】変更
【補正の内容】
【００４５】
第１の通信装置４５４がＳＹＮパケットを送信すると、第１の中継装置４４１は加工部４８によってＳＹＮパケットを処理できず、ＳＹＮパケットをパススルーする（ステップＳ７０）。第２の中継装置４４２の検知部４６は、受信したＳＹＮパケットにＴＣＰオプションが付与されていないことを検知することで、第１の中継装置４４１の障害発生を検知できる（ステップＳ７０ａ）。ステップＳ７１以降の工程は、ネットワークシステム５の第１と第２の中継装置４４１，４４２間において、第１と第２の中継装置４４１，４４２間で用いられることが可能な固有のセッション（高速化セッション）が形成されていない為に、通常のＴＣＰセッションによってデータを転送する。すなわち、ステップＳ７１の次に、第２の通信装置４５５は、ＳＹＮ／ＡＣＫパケットを第２の中継装置４４２に送信し、第２の中継装置４４２と第１の中継装置４４１はＳＹＮ／ＡＣＫパケットを第１の通信装置４５４に向けて転送する（ステップＳ７３，Ｓ７３ａ）。ＳＹＮ／ＡＣＫパケットを受信した第１の通信装置４５４は、受信したＳＹＮ／ＡＣＫパケットに対して、ＳＹＮパケットで使用したシーケンス番号１００００に１を加算した値（すなわち、ステップＳ７２で送信されたＡＣＫ番号）をシーケンス番号としてＡＣＫパケットを第２の通信装置４５５に向けて送信する（ステップＳ７４）。第１の中継装置４４１と第２の中継装置４４２は、第１の通信装置４５４から送信されたＡＣＫパケットをパススルーして第２の通信装置４５５に転送する（ステップＳ７５，Ｓ７６）。これにより、第１の通信装置４５４と第２の通信装置４５５との間でコネクションが確立される。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００４７
【補正方法】変更
【補正の内容】
【００４７】
コネクションを確立するために、第１の通信装置４５４からＳＹＮパケットが第１の中継装置４４１に送信される（ステップＳ８０）。第１の中継装置４４１は、第１の通信装置４５４からのＳＹＮパケットを受信すると、ＳＹＮパケットにＴＣＰオプションを付与し、第２の中継装置４４２に送信する（ステップＳ８１）。しかしながら、第２の中継装置４４２は、加工部４８（図２）において所定の処理ができないため、ＳＹＮパケットをパススルーし第２の通信装置４５５に送信する（ステップＳ８１ａ）。第２の通信装置４５５は、受信したＳＹＮパケットにＴＣＰオプションが付与されているが、第２の通信装置４５５はＴＣＰオプションをサポートしておらず解釈できない為、ＴＣＰオプションを無視する（ステップＳ８１ｂ）。第２の通信装置４５５は、受信したＳＹＮパケットに対する応答としてＳＹＮ／ＡＣＫパケットを第２の中継装置４４２に送信する（ステップＳ８２）。ここで、第２の中継装置４４２は、第２の通信装置４５５から送信されたＳＹＮ／ＡＣＫパケットを加工部４８で処理することなく第１の中継装置４４１に送信する（ステップＳ８２ａ）。第１の中継装置４４１は、第２の中継装置４４２から受信したＳＹＮ／ＡＣＫパケットにＴＣＰオプションが付与されていないことを検知することで、第２の中継装置４４２の障害発生を検知できる（ステップＳ８２ｂ）。また、ステップＳ８２ｂにおいて、第１の中継装置４４１は、障害発生の検知後にセッション管理テーブルを削除して以降の通信をパススルーさせる。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００４８
【補正方法】変更
【補正の内容】
【００４８】
第１の中継装置４４１は、ステップＳ８３において加工部４８の機能を用いることなくＳＹＮ／ＡＣＫパケットを第１の通信装置４５４に送信する（パススルー）。第１の通信装置４５４は、受信したＳＹＮ／ＡＣＫパケットに対して、ＳＹＮパケットで使用したシーケンス番号１００００に１を加算した値（すなわち、ステップＳ８３で送信されたＡＣＫ番号）をシーケンス番号としてＡＣＫパケットを第２の通信装置４５５に向けて送信する（ステップＳ８４）。ステップＳ８４では、通常のＴＣＰセッションによってＡＣＫパケットが第１の中継装置４４１，第２の中継装置４４２，第２の通信装置４５５に順にパススルーによって転送される（ステップＳ８５，Ｓ８６）。これにより、第１の通信装置４５４と第２の通信装置４５５との間でコネクションが確立される。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００５２
【補正方法】変更
【補正の内容】
【００５２】
図１１において、ステップＳ１００〜ステップＳ１０３は、図７に示すステップＳ６０〜ステップＳ６３と同様の処理工程であるため説明を省略する。第２の通信装置４５５から受信したＳＹＮ／ＡＣＫパケットに対し、第２の中継装置４４２は、ＴＣＰオプションを付与すると共に確認応答番号から所定値を減算してＳＹＮ／ＡＣＫパケットを第１の中継装置４４１に送信する（ステップＳ１０４）。そして、第１の中継装置４４１は、加工部４８に障害が発生しているため、第２の中継装置４４２から受信したＳＹＮ／ＡＣＫパケットを加工部４８で処理することなく第１の通信装置４５４に送信する（ステップＳ１０４ａ）。第１の通信装置４５４に送信されたＳＹＮ／ＡＣＫパケットにはＴＣＰオプションが付与されたままであるが、第１の通信装置４５４は、ＴＣＰオプションを解釈できないためＴＣＰオプションが付与されたＳＹＮ／ＡＣＫパケットを受信できる（ステップＳ１０４ｂ）。第１の通信装置４５４は、受信したＳＹＮ／ＡＣＫパケットのＡＣＫ番号をシーケンス番号としてＡＣＫパケットを第１の中継装置４４１に送信する（ステップＳ１０５）。第１の中継装置４４１は第１の通信装置４５４から送信されたＡＣＫパケットをパススルーして第２の中継装置４４２に送信する（ステップＳ１０５ａ）。第２の中継装置４４２は、第１の中継装置４４１から送信されたＡＣＫパケットにＴＣＰオプションが付与されていないことを検知することで、対向する第１の中継装置４４１の障害発生を検知できる（ステップＳ１０６）。対向する第１の中継装置４４１の障害発生を検知した後は、第２の中継装置４４２は、第２の通信装置４５５、及び、第１の中継装置４４１を介して第１の通信装置４５４にＲＳＴパケットを送信し、以降の通信を強制的に終了しても良い。また、対向する第１の中継装置４４１の障害発生を検知した後は、第２の中継装置４４２は、受信したＡＣＫパケットをパススルーして第２の通信装置４５５にＡＣＫパケットを送信することで、３ウェイ・ハンドシェイクの処理を継続しても良い。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００５４
【補正方法】変更
【補正の内容】
【００５４】
図１２において、ステップＳ１１０〜ステップＳ１１５は、図７に示すステップＳ６０〜ステップＳ６５と同様の処理工程であるため説明を省略する。ステップＳ１１５の後に、第１の通信装置４５４は、受信したＳＹＮ／ＡＣＫパケットのＡＣＫ番号をシーケンス番号としてＡＣＫパケットを第１の中継装置４４１に送信する（ステップＳ１１６）。第１の中継装置４４１は、加工部４８に障害が発生しているため、受信したＡＣＫパケットを加工部４８で処理することなく第２の中継装置４４２に送信する（ステップＳ１１７）。第２の中継装置４４２は、受信したＡＣＫパケットにＴＣＰオプションが付与されていないことと、ＡＣＫ番号が減算されていないことを検知することで、対向する第１の中継装置４４１の障害発生を検知できる（ステップＳ１１８）。対向する第１の中継装置４４１の障害発生を検知した後に、第２の中継装置４４２は、第２の通信装置４５５、及び、第１の中継装置４４１を介して第１の通信装置４５４にリセット（ＲＳＴ）パケットを送信し、以降の通信を強制的に終了しても良い。また、対向する第１の中継装置４４１の障害発生を検知した後に、第２の中継装置４４２は、受信したＳＹＮ／ＡＣＫパケットをパススルーして第１の通信装置４５４にＳＹＮ／ＡＣＫパケットを送信し、３ウェイ・ハンドシェイクの処理を継続しても良い。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００５６
【補正方法】変更
【補正の内容】
【００５６】
図１３において、ステップＳ１２０〜ステップＳ１２６は、図７に示すステップＳ６０〜ステップＳ６６と同様の処理工程であるため説明を省略する。第１の通信装置４５４から送信されたＡＣＫパケットに対し、第１の中継装置４４１はＴＣＰオプションを付与すると共に、ＡＣＫ番号から所定値である１００００００を減算してＡＣＫパケットを第２の中継装置４４２に送信する（ステップＳ１２７）。第２の中継装置４４２は、加工部４８に障害が発生しているため、第１の中継装置４４１から受信したＡＣＫパケットを加工部４８で処理することなく第２の通信装置４５５に送信する（ステップＳ１２８）。第２の通信装置４５５は、ＡＣＫパケットを受信するが受信したＡＣＫパケットのシーケンス番号が期待するシーケンス番号（シーケンス番号：１０１０００１）とは異なるためシーケンス違いによりステップＳ１２３と同様のＳＹＮ／ＡＣＫパケットを第２の中継装置４４２に再送する（ステップＳ１２９）。また、第２の中継装置４４２は、再送されたＳＹＮ／ＡＣＫパケットをパススルーし、第１の中継装置４４１に送信する（ステップＳ１２９ａ）。第１の中継装置４４１は、受信したＳＹＮ／ＡＣＫパケットにＴＣＰオプションが付与されていないことと、ＡＣＫ番号が減算されていないことを検知することで、対向する第２の中継装置４４２の障害発生を検知できる（ステップＳ１３０）。対向する第２の中継装置の障害発生を検知した後に、第１の中継装置４４１は、第１の通信装置４５４、及び、第２の中継装置４４２を介して第２の通信装置４５５にリセット（ＲＳＴ）パケットを送信し、以降の通信を強制的に終了しても良い。また、対向する第２の中継装置４４２の障害発生を検知した後に、第１の中継装置４４１は、受信したＳＹＮ／ＡＣＫパケットをパススルーして第１の通信装置４５４にＳＹＮ／ＡＣＫパケットを送信し、３ウェイ・ハンドシェイクの処理を継続しても良い。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】００５７
【補正方法】変更
【補正の内容】
【００５７】
Ｂ−３．コネクション確立後の障害発生の検知について：
図１４は、ＴＣＰによるデータ通信中に障害が発生した場合の第１の障害検知態様を説明するための図である。図１４では、シーケンス番号１０００１におけるデータの第２の通信装置４５５への送信が完了した地点（ステップＳ１４０〜ステップＳ１４２の後の地点）１４０ｐで、第１の中継装置４４１に障害が発生した場合の障害検知処理フローである。なお、図１４では、シーケンス番号１０００１のデータに対するＡＣＫパケットについては図示を省略している。
【国際調査報告】
2013128483.tif 000018
2013128483.tif 000019
2013128483.tif 000020
2013128483.tif 000021