(57)【特許請求の範囲】
【請求項１】
通知された上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置から送信されたトランスポート層のデータを受信する受信装置におけるウィンドウ制御方法において、
トランスポート層より下位の層のリンクに関する通信品質が予め設定された基準を満たさない期間において、前記送信装置から送信されたトランスポート層のデータを受信した場合には該データを保存する保存ステップと、
前記通信品質が予め設定された基準を満たさない期間の終了を検出し、この検出後に前記保存ステップにて保存された前記データの送達を示す情報を前記送信装置へ送信する確認応答ステップと
を有することを特徴とするウィンドウ制御方法。
【請求項２】
請求項１に記載のウィンドウ制御方法において、
前記通信品質を定期的に取得して前記期間の終了を検出する
ことを特徴とするウィンドウ制御方法。
【請求項３】
請求項１または２のいずれかに記載のウィンドウ制御方法において、
前記受信装置は移動無線端末であり、前記リンクは無線リンクであり、前記通信品質は電波強度である
ことを特徴とするウィンドウ制御方法。
【請求項４】
受信した上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置から送信されたトランスポート層のデータを受信して該データに対応した送達確認データを返信する受信装置において、
トランスポート層より下位の層のリンクに関する通信品質を取得する通信品質取得部と、
前記通信品質取得部により取得された通信品質と予め設定された基準とに基づいて、通信品質が予め設定された基準を満たさない期間内であるか否かを判定する劣化期間判定部と、
前記劣化期間判定部により前記期間内であると判定された期間において前記送信装置から送信されたトランスポート層のデータを受信した場合には該データを保存する保存送達確認処理部と、
前記通信品質取得部により取得された通信品質と予め設定された基準とに基づいて、前記通信品質が予め設定された基準を満たす期間の開始を検出する回復検出部とを具備し、
前記保存送達確認処理部は更に、前記回復検出部により前記期間の開始が検出されると前記保存したデータに応じた送達確認データを前記送信装置へ送信する
ことを特徴とする受信装置。
【請求項５】
請求項４に記載の受信装置において、
前記通信品質取得部を制御して定期的に前記通信品質を取得させる取得契機制御部を具備することを特徴とする受信装置。
【請求項６】
請求項４または５のいずれかに記載の受信装置において、
前記送信装置から送信されたトランスポート層のデータを無線通信網経由で受信する無線通信部を具備し、
前記リンクは無線リンクであり、前記通信品質は該無線リンクにおける電波強度であることを特徴とする受信装置。
【請求項７】
請求項６に記載の受信装置において、
前記無線リンクの電波強度を表す情報を記憶した電波強度記憶部と、
前記無線リンクの電波強度を常に監視し、この監視結果に応じて前記電波強度記憶部に記憶された情報を逐次更新する電波強度監視部とを具備し、
前記通信品質取得部は前記電波強度記憶部から前記情報を読み出すことで前記リンクの電波強度を取得することを特徴とする受信装置。
【請求項８】
受信した上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置と該送信装置から送信されたトランスポート層のデータを受信するとともにトランスポート層より下位の層のリンクに関する通信品質に基づいた上限サイズを前記トランスポート層のデータへの送達確認データに含めて返送する受信装置との間でデータを転送する中継装置における中継制御方法において、
前記受信装置から前記送信装置へ送信された送達確認データ中の上限サイズの値が小さい場合には該送達確認データの該送信装置への転送を遅らせるとともに該送信装置から前記受信装置へのデータを一時退避し、
この状況下で大きな上限サイズを含む送達確認データが該受信装置から該送信装置へ送信された場合には一時退避されたデータを該受信装置へ転送することを特徴とする中継制御方法。
【請求項９】
請求項８に記載の中継制御方法において、
前記受信装置は移動無線端末であり、前記リンクは無線リンクであり、前記通信品質は電波強度であり、
前記受信装置が他の中継装置の配下に移動した場合には一時退避されたデータを該他の中継装置へ転送し、
他の中継装置から転送されてくるデータを受信し前記受信装置へ転送する
ことを特徴とする中継制御方法。
【請求項１０】
請求項８または９に記載の中継制御方法において、
前記受信装置から前記送信装置へ送信された送達確認データ中の上限サイズが小さい場合には該送達確認データの前記送信装置への転送を一定時間だけ遅らせる
ことを特徴とする中継制御方法。
【請求項１１】
請求項１０に記載の中継制御方法において、
前記受信装置が他の中継装置の配下に移動した場合には一時退避されたデータを該他の中継装置へ転送するとともに転送が遅らされている未転送の送達確認データを前記送信装置へ転送する
ことを特徴とする中継制御方法。
【請求項１２】
受信した上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置と該送信装置から送信されたトランスポート層のデータを受信するとともにトランスポート層より下位の層のリンクに関する通信品質に基づいた上限サイズを前記トランスポート層のデータへの送達確認データに含めて返送する受信装置との間でデータを転送する中継装置において、
データを一時的に記憶する一時記憶部と、
前記受信装置から前記送信装置へ送信された送達確認データから上限サイズを抽出する上限サイズ抽出部と、
前記上限サイズ抽出部により抽出された上限サイズの大小を判定する検査部と、
前記検査部により上限サイズが小さいと判定された場合には該上限サイズを含む送達確認データを遅延させてから前記送信装置へ転送する遅延処理部と、
前記検査部により上限サイズが小さいと判定された場合には前記送信装置から前記受信装置へのデータを前記一時記憶部に記憶させる退避処理を開始する退避処理部と、
前記退避処理が行われている環境下で前記検査部により上限サイズが大きいと判定された場合には、該退避処理の開始時から前記一時記憶部に記憶されたデータを前記受信装置へ転送するとともに、前記退避処理を終了させる回復処理部と
を具備することを特徴とする中継装置。
【請求項１３】
請求項１２に記載の中継装置において、
他の中継装置から転送されてくるデータを受信し前記受信装置へ転送する移動対応受信部を具備し、
前記受信装置は移動無線端末であり、前記リンクは無線リンクであり、前記通信品質は電波強度であり、
前記回復処理部は、前記退避処理が行われている環境下で前記受信装置が他の中継装置の配下に移動した場合には、該退避処理の開始時から前記一時記憶部に記憶されたデータを該他の中継装置へ転送する
ことを特徴とする中継装置。
【請求項１４】
請求項１２または１３に記載の中継装置において、
前記遅延処理部は前記検査部により上限サイズが小さいと判定された場合には該上限サイズを含む送達確認データを一定時間だけ遅延させてから前記送信装置へ転送する
ことを特徴とする中継装置。
【請求項１５】
請求項１４に記載の中継装置において、
前記回復処理部は、前記退避処理が行われている環境下で前記受信装置が他の中継装置の配下に移動した場合には、該退避処理の開始時から前記一時記憶部に記憶されたデータを該他の中継装置へ転送するとともに転送が遅らされている未転送の送達確認データを前記送信装置へ転送する
ことを特徴とする中継装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は送信装置が受信装置へウィンドウを用いてデータを送信するデータ転送方法と、当該ウィンドウを制御するウィンドウ制御方法および受信装置と、送信装置と受信装置との間でデータを中継する中継装置と、当該中継装置における中継制御方法とに関する。
【０００２】
【従来の技術】
従来より、コンピュータネットワークにおける業界標準の通信プロトコルとしてＴＣＰ／ＩＰ（Transmission Control Protocol / Internet Protocol）が普及している。このＴＣＰ／ＩＰは、ネットワーク層の通信プロトコルであるＩＰの上位にトランスポート層の通信プロトコルであるＴＣＰを搭載した２層構成となっている。
【０００３】
ＴＣＰは送信端ノードのソケット（ＩＰアドレス及びポート番号）と受信端ノードのソケットとの組み合わせで識別されるコネクションを設定し、上位のアプリケーション層のユーザーに対して全二重／双方向のストリームサービスを提供する。上記コネクションにおけるデータ転送単位はセグメントであり、その構成は図１に示す通りである。
【０００４】
図１のＴＣＰヘッダフィールドにおいて、“シーケンス番号”は送信データストリーム内での自セグメントのオクテット位置を示す情報である。また、“確認応答番号”は送信データストリーム内で次に受信するデータのオクテット位置（受信済みの最上位オクテットの次のオクテット）を示す情報であり、後述のＡＣＫフラグとともに用いられる。さらに、“ウィンドウ”はセグメント転送時のウィンドウサイズ（送受信バッファのサイズ）を指定する情報である。また、“コードビット”は自セグメントのタイプを示す情報であり、自セグメントはオンに設定されたフラグに応じたタイプとして取り扱われる。なお、ＵＲＧフラグは緊急セグメント、ＡＣＫフラグは確認セグメント（以後、ＡＣＫセグメント）、ＰＳＨフラグは転送強制セグメント、ＲＳＴフラグはリセットセグメント、ＳＹＮフラグは同期セグメント、ＦＩＮフラグは転送終了セグメントに対応している。なお、通常のデータセグメントでは全フラグがオフとなる。
【０００５】
上述したようにセグメントには“ウィンドウ”が含まれており、ＴＣＰではウィンドウサイズに基づいたデータ転送が行われる。すなわち、ＴＣＰでは可変サイズのウィンドウを用いたフロー制御が行われている。また、このフロー制御においては、この可変サイズのウィンドウをスライディングウィンドウ方式で使用している。
【０００６】
スライディングウィンドウ方式では、受信端ノードからの確認応答（ＡＣＫセグメント）が無くてもウィンドウ内のデータが続けて送信され、確認応答がある毎に、受信が確認されたデータ数だけ、このウィンドウがスライドされる。例えば、図２に示す例では、ウィンドウ内の“１”〜“５”の５個のデータセグメントが順に送信され、“２”のデータセグメントに対するＡＣＫセグメントが返送されてくると、ウィンドウＷがスライドされ、後続の“６”および“７”のデータセグメントがウィンドウＷ内に入ってくる。
【０００７】
ところで、送信端ノードでは、広告ウィンドウサイズと輻輳ウィンドウサイズとの小さい方を最終的なウィンドウサイズとして採用し、このサイズの送信ウィンドウを用いてセグメントの送信を行う。なお、広告ウィンドウは受信端ノードのバッファ容量やデータ処理能力等に基づいて受信端ノードにおいて設定されるウィンドウであり、そのサイズは受信端ノードから送信端ノードへ通知される。
【０００８】
輻輳ウィンドウは輻輳を回避するために送信端ノードにおいて設定されるウィンドウであり、そのサイズは送信したデータセグメントに対する確認応答の受け取り状況に応じて算出される。輻輳ウィンドウサイズの代表的な算出アルゴリズムでは、輻輳ウィンドウサイズを１セグメント分から始め、受信端ノードから確認応答を正常に受け取っている間はラウンドトリップタイム（送信端ノードがデータセグメントを送信してから当該セグメントに対する確認応答を受け取るまでの経過時間）毎に２倍し、送信後のタイムアウト時間内に確認応答を受け取ることができなかった場合（再送が行われる場合）には０．５倍する。ただし、輻輳ウィンドウサイズが設定されたスレッシュホールド値以上の場合にはラウンドトリップタイム毎の輻輳ウィンドウの増加量は１セグメント分となる。スレッシュホールド値は輻輳回避処理の開始点を示す値であり、受信端ノードから確認応答を正常に受け取っている間は徐々に大きくなり、送信後のタイムアウト時間内に確認応答を受け取ることができなかった場合に引き下げられる。
このように、輻輳ウィンドウサイズの初期値を小さな値とし、そこから徐々に大きくする方法は“スロースタート”と呼ばれており、ＴＣＰにおける輻輳回避の重要な要素の一つとなっている。
【０００９】
ところで、近年、ＬＡＮ（Local Area Network）やインターネット上のサービスノードへのアクセスにおいて通信路の無線化が進行しており、ＴＣＰ／ＩＰに対応した各種の移動端末が開発・商品化されている。ここで、サービスノードＳＮから移動端末ＭへＴＣＰセグメント（ＴＣＰのデータセグメント）を転送する手順とその際に必須となる機能構成について図３を参照して説明する。
【００１０】
図３に示すように、移動端末Ｍはトランスポート層の通信プロトコルを処理するためのトランスポートプロトコル処理部Ｍ１と、ネットワーク層の通信プロトコルを処理するためのネットワークプロトコル処理部Ｍ２と、無線データリンク層の通信プロトコルを処理するための無線データリンク処理部Ｍ３とを備えており、これらに対応して、サービスノードＳＮはトランスポートプロトコル処理部ＳＮ１と、ネットワークプロトコル処理部ＳＮ２と、無線データリンク処理部ＳＮ３とを備えている。
【００１１】
また、サービスノードＳＮから移動端末ＭへのＴＣＰセグメントの転送に必須の機能要素として、トランスポートプロトコル処理部Ｍ１にはＴＣＰセグメント受信処理部Ｍ１１、広告ウィンドウサイズ決定部Ｍ１２、及びＡＣＫ送信処理部Ｍ１３が、トランスポートプロトコル処理部ＳＮ１にはＴＣＰセグメント送信処理部ＳＮ１１、ＡＣＫセグメント受信処理部ＳＮ１２、及びウィンドウ更新部ＳＮ１３が設けられている。また、ネットワークプロトコル処理部Ｍ２，ＳＮ２にはそれぞれＩＰプロトコル処理部Ｍ２１，ＳＮ２１が、無線データリンク処理部Ｍ３，ＳＮ３にはそれぞれワイヤレスリンクデータ処理部Ｍ３１，ＳＮ３１が設けられており、これらの機能要素が、サービスノードＳＮから移動端末ＭへのＴＣＰセグメントの転送に係る処理を各層において実現する。
【００１２】
サービスノードＳＮにおいて、トランスポートプロトコル処理部ＳＮ１のＴＣＰセグメント送信処理部ＳＮ１１から下位のネットワークプロトコル処理部ＳＮ２へＴＣＰセグメントが渡されると、ＩＰプロトコル処理部ＳＮ２１において当該ＴＣＰセグメントを用いたＩＰパケットが生成され、当該ＩＰパケットが下位の無線データリンク処理部ＳＮ３へ渡されると、ワイヤレスリンクデータ処理部ＳＮ３１において当該ＩＰパケットを用いたフレームが生成され、当該フレームが図示せぬ物理層での処理を経てネットワークへ転送される。
【００１３】
一方、移動端末Ｍにおいて、無線データリンク処理部ＳＮ３のワイヤレスリンクデータ処理部Ｍ３１がネットワークから自端末宛てのフレームを物理層の処理を経て受信し、当該フレームからＩＰパケットを復元して上位のネットワークプロトコル処理部Ｍ２へ渡すと、ＩＰプロトコル処理部Ｍ２１において当該ＩＰパケットを用いてＴＣＰセグメントが復元される。
【００１４】
さらに、当該ＴＣＰセグメントはトランスポートプロトコル処理部Ｍ１へ渡され、ＴＣＰセグメント受信処理部Ｍ１１により受信される。さらに、トランスポートプロトコル処理部Ｍ１では、上位のアプリケーション層との共有バッファ（図示略）に受信セグメント（ここではＴＣＰセグメント受信処理部Ｍ１１により受信されたＴＣＰセグメント）を記憶させて上位のアプリケーション層の使用に供する処理と、広告ウィンドウサイズ決定部Ｍ１２が広告ウィンドウサイズを計算する処理が行われる。また、ＡＣＫ送信処理部Ｍ１３では受信セグメントに対応したＡＣＫセグメントが作成され、下位のネットワークプロトコル処理部Ｍ２へ渡される。この際、当該ＡＣＫセグメントのウインドウフィールドには広告ウィンドウサイズ決定部Ｍ１２により算出された広告ウィンドウサイズが指定される。以降、上述と逆順の処理が行われ、当該ＡＣＫセグメントはサービスノードＳＮのトランスポートプロトコル処理部Ｍ１へ渡され、ＡＣＫセグメント受信処理部ＳＮ１２により受信される。
【００１５】
また、トランスポートプロトコル処理部Ｍ１では、ウィンドウ更新部ＳＮ１３により、当該ＡＣＫセグメントにおいて指定されている移動端末Ｍの広告ウィンドウサイズが保持され、この広告ウィンドウサイズと移動端末Ｍに対して計算された輻輳ウィンドウサイズとの最小値に基づいて確認応答なしに転送可能なＴＣＰセグメント（すなわち送信ウィンドウサイズ）が決定される。ここで決定されたＴＣＰセグメントは上述の転送手順に従って移動端末Ｍへ転送されることになる。
【００１６】
次に、移動端末Ｍが行うＴＣＰの通信制御処理の流れについて図４を参照して説明する。この図に示すように、移動端末Ｍの図示せぬ電源が投入されると（あるいはＴＣＰ／ＩＰに従った通信を実現するための通信プロセスが起動されると）、移動端末ＭはＴＣＰの通信制御に関してイベント待ち状態となる（ステップＳＡ１）。この状況下で上位のアプリケーション層からＯＰＥＮコマンドが渡されると（ステップＳＡ２）、移動端末ＭはＯＰＥＮコマンドにより指定された通信相手（ここではサービスノードＳＮ）との間で３ウェイハンドシェークによるネゴシエーションを行ってコネクションを確立し（ステップＳＡ３）、イベント待ちに戻る。
【００１７】
イベント待ちにおいて上位のアプリケーション層からＣＬＯＳＥコマンドが渡されると（ステップＳＡ４）、ＣＬＯＳＥコマンドにより指定されたコネクションが存在する場合には当該コネクションを解放するためのＴＣＰ通信終了処理を行い（ステップＳＡ５，ＳＡ６）、イベント待ちに戻る。逆に、ＣＬＯＳＥコマンドにより指定されたコネクションが存在しない場合には移動端末Ｍは何もせずにイベント待ちに戻る（ステップＳＡ５）。
【００１８】
イベント待ち処理において、上記以外のイベントが発生した場合には、移動端末Ｍはイベントに応じた処理を行う。例えば、通信相手からＴＣＰセグメントが転送されてきた場合には、図５に示すＴＣＰ広告ウィンドウ制御処理を行う。このＴＣＰ広告ウィンドウ制御処理は前述したトランスポートプロトコル処理部Ｍ１による受信、計算、及び送信処理そのものであり（ステップＳＢ１〜ＳＢ３）、この一連の処理の後に移動端末Ｍはイベント待ち状態に戻る。
【００１９】
また、移動端末Ｍは図３に示す機能構成の他に、図６に示す無線データリンクの通信制御を行うための機能構成を備えている。なお、図６には移動端末Ｍの無線データリンク処理部Ｍ３の無線データリンク通信制御に係る機能構成と、当該移動端末Ｍと通信する基地局（図示略）に設けられている無線データリンク処理部ＢＳ１の無線データリンク通信制御に係る機能構成とが示されている。
【００２０】
この図に示すように、基地局の無線データリンク処理部ＢＳ１には、基地局ＩＤを含むビーコンフレームを移動端末Ｍへ送信するビーコンフレーム処理部ＢＳ１１と、移動端末Ｍとの間で同期処理を行う同期処理部ＢＳ１２とが設けられている。また、移動端末Ｍの無線データリンク処理部Ｍ３にはビーコンフレーム処理部ＢＳ１１に対応したビーコンフレーム処理部Ｍ３２と、同期処理部ＢＳ１２に対応した同期処理部Ｍ３５と、近隣の基地局に対する情報を格納した基地局リストＬを有する基地局リスト更新処理部Ｍ３３、基地局リストＬに基づいて最適な基地局を選択する最適ＢＳ処理部Ｍ３４が設けられている。
【００２１】
上記構成の無線データリンク処理部Ｍ３では、ビーコンフレーム処理部Ｍ３２が基地局から送信されたビーコンフレームを受信すると、基地局リスト更新処理部Ｍ３３が当該ビーコンフレーム内に設定されている基地局ＩＤや電波強度などの情報を用いて基地局リストＬを変更する。この変更処理には、情報の追加、変更、及び削除が含まれている。また、最適基地局処理部Ｍ３４では、基地局リストＬに基づいて最適基地局が選択され、ここで選択された最適基地局に対して、同期処理部Ｍ３５が同期処理を行う。
【００２２】
【発明が解決しようとする課題】
ところで、ワイヤレス通信環境では、移動端末の移動やフェージング、電波障害などの様々な要因によって基地局からの電波強度が変化する。したがって、ＴＣＰ／ＩＰに従ってサービスノードから移動端末へＴＣＰセグメントを転送する場合、イーサネットなど有線のネットワーク環境に比較してセグメントが消失しやすい。
【００２３】
前述したように、サービスノードから移動端末へのＴＣＰセグメントが消失すると、サービスノードにおいて確認応答のタイムアウトが生じ、タイムアウトしたＴＣＰセグメントが再送されるとともに、輻輳ウィンドウサイズやスレッシュホールド値が小さくなる。したがって、ＴＣＰ／ＩＰに対応した移動端末では輻輳ウィンドウサイズやスレッシュホールド値が小さくなり、スループットが一時的に低下する可能性が高い、といえる。
【００２４】
また、ＴＣＰではスロースタートが採用されていることから、一旦、輻輳ウィンドウサイズやスレッシュホールド値が小さくなってしまうと、通信スループットが回復するまでにはある程度の時間がかかってしまう。もちろん、ワイヤレス通信環境における通信スループットも電波強度の回復に応じて回復するが、ワイヤレス通信環境は有線の通信環境に比較して狭帯域高遅延となるのが普通であることから、小さくなってしまった輻輳ウィンドウサイズやスレッシュホールド値が回復するまでには長時間を要する。
【００２５】
このように、ＴＣＰに従った通信における従来のウィンドウ制御方法では、狭帯域または高遅延の通信環境において通信効率が低くなってしまうという問題がある。この問題は、特にワイヤレス通信環境を前提とする移動端末を用いた場合に顕著である。
【００２６】
本発明は上述した事情に鑑みて為されたものであり、送信装置が受信装置へウィンドウを用いてデータを送信するデータ転送において、ワイヤレス通信環境のような狭帯域または高遅延あるいは狭帯域高遅延の通信環境であっても高い通信効率を維持することができるデータ転送方法、ウィンドウ制御方法、受信装置、中継制御方法及び中継装置を提供することを目的としている。
【００２７】
【課題を解決するための手段】
上述した課題を解決するために、請求項１に記載のウィンドウ制御方法は、通知された上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置から送信されたトランスポート層のデータを受信する受信装置におけるウィンドウ制御方法において、トランスポート層より下位の層のリンクに関する通信品質が予め設定された基準を満たさない期間において、前記送信装置から送信されたトランスポート層のデータを受信した場合には該データを保存する保存ステップと、前記通信品質が予め設定された基準を満たさない期間の終了を検出し、この検出後に前記保存ステップにて保存された前記データの送達を示す情報を前記送信装置へ送信する確認応答ステップとを有することを特徴としている。
【００３１】
さらに、請求項１に記載のウィンドウ制御方法において、前記通信品質を定期的に取得して前記期間の終了を検出するようにしてもよい（請求項２）。
【００３２】
また、請求項１または２のいずれかに記載のウィンドウ制御方法において、前記受信装置は移動無線端末であり、前記リンクは無線リンクであり、前記通信品質は電波強度であるとしてもよい（請求項３）。
【００３６】
また、上記課題を解決するために、請求項４に記載の受信装置は、受信した上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置から送信されたトランスポート層のデータを受信して該データに対応した送達確認データを返信する受信装置において、トランスポート層より下位の層のリンクに関する通信品質を取得する通信品質取得部と、前記通信品質取得部により取得された通信品質と予め設定された基準とに基づいて、通信品質が予め設定された基準を満たさない期間内であるか否かを判定する劣化期間判定部と、前記劣化期間判定部により前記期間内であると判定された期間において前記送信装置から送信されたトランスポート層のデータを受信した場合には該データを保存する保存送達確認処理部と、前記通信品質取得部により取得された通信品質と予め設定された基準とに基づいて、前記通信品質が予め設定された基準を満たす期間の開始を検出する回復検出部とを具備し、前記保存送達確認処理部は更に、前記回復検出部により前記期間の開始が検出されると前記保存したデータに応じた送達確認データを前記送信装置へ送信することを特徴としている。
【００３７】
また、 請求項４に記載の受信装置において、前記通信品質取得部を制御して定期的に前記通信品質を取得させる取得契機制御部を設けてもよい（請求項５）。
【００３８】
さらに、請求項４または５のいずれかに記載の受信装置において、前記送信装置から送信されたトランスポート層のデータを無線通信網経由で受信する無線通信部を具備し、  前記リンクは無線リンクであり、前記通信品質は該無線リンクにおける電波強度であるとしてもよい（請求項６）。
【００３９】
また、請求項６に記載の受信装置において、前記無線リンクの電波強度を表す情報を記憶した電波強度記憶部と、前記無線リンクの電波強度を常に監視し、この監視結果に応じて前記電波強度記憶部に記憶された情報を逐次更新する電波強度監視部とを具備し、前記通信品質取得部は前記電波強度記憶部から前記情報を読み出すことで前記リンクの電波強度を取得するようにしてもよい（請求項７）。
【００４１】
また、上記課題を解決するために、請求項８に記載の中継制御方法は、受信した上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置と該送信装置から送信されたトランスポート層のデータを受信するとともにトランスポート層より下位の層のリンクに関する通信品質に基づいた上限サイズを前記トランスポート層のデータへの送達確認データに含めて返送する受信装置との間でデータを転送する中継装置における中継制御方法において、前記受信装置から前記送信装置へ送信された送達確認データ中の上限サイズの値が小さい場合には該送達確認データの該送信装置への転送を遅らせるとともに該送信装置から前記受信装置へのデータを一時退避し、この状況下で大きな上限サイズを含む送達確認データが該受信装置から該送信装置へ送信された場合には一時退避されたデータを該受信装置へ転送することを特徴としている。
【００４２】
また、請求項８に記載の中継制御方法において、前記受信装置は移動無線端末であり、前記リンクは無線リンクであり、前記通信品質は電波強度であり、前記受信装置が他の中継装置の配下に移動した場合には一時退避されたデータを該他の中継装置へ転送し、他の中継装置から転送されてくるデータを受信し前記受信装置へ転送するようにしてもよい（請求項９）。
【００４３】
また、請求項８または９に記載の中継制御方法において、前記受信装置から前記送信装置へ送信された送達確認データ中の上限サイズが小さい場合には該送達確認データの前記送信装置への転送を一定時間だけ遅らせるようにしてもよい（請求項１０）。
【００４４】
また、請求項１０に記載の中継制御方法において、前記受信装置が他の中継装置の配下に移動した場合には一時退避されたデータを該他の中継装置へ転送するとともに転送が遅らされている未転送の送達確認データを前記送信装置へ転送するようにしてもよい（請求項１１）。
【００４５】
また、上記課題を解決するために、請求項１２に記載の中継装置は、受信した上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置と該送信装置から送信されたトランスポート層のデータを受信するとともにトランスポート層より下位の層のリンクに関する通信品質に基づいた上限サイズを前記トランスポート層のデータへの送達確認データに含めて返送する受信装置との間でデータを転送する中継装置において、データを一時的に記憶する一時記憶部と、前記受信装置から前記送信装置へ送信された送達確認データから上限サイズを抽出する上限サイズ抽出部と、前記上限サイズ抽出部により抽出された上限サイズの大小を判定する検査部と、前記検査部により上限サイズが小さいと判定された場合には該上限サイズを含む送達確認データを遅延させてから前記送信装置へ転送する遅延処理部と、前記検査部により上限サイズが小さいと判定された場合には前記送信装置から前記受信装置へのデータを前記一時記憶部に記憶させる退避処理を開始する退避処理部と、前記退避処理が行われている環境下で前記検査部により上限サイズが大きいと判定された場合には、該退避処理の開始時から前記一時記憶部に記憶されたデータを前記受信装置へ転送するとともに、前記退避処理を終了させる回復処理部とを具備することを特徴としている。
【００４６】
また、請求項１２に記載の中継装置において、他の中継装置から転送されてくるデータを受信し前記受信装置へ転送する移動対応受信部を具備し、前記受信装置は移動無線端末であり、前記リンクは無線リンクであり、前記通信品質は電波強度であり、前記回復処理部は、前記退避処理が行われている環境下で前記受信装置が他の中継装置の配下に移動した場合には、該退避処理の開始時から前記一時記憶部に記憶されたデータを該他の中継装置へ転送するようにしてもよい（請求項１３）。
【００４７】
また、請求項１２または１３に記載の中継装置において、前記遅延処理部は前記検査部により上限サイズが小さいと判定された場合には該上限サイズを含む送達確認データを一定時間だけ遅延させてから前記送信装置へ転送するようにしてもよい（請求項１４）。
【００４８】
また、請求項１４に記載の中継装置において、前記回復処理部は、前記退避処理が行われている環境下で前記受信装置が他の中継装置の配下に移動した場合には、該退避処理の開始時から前記一時記憶部に記憶されたデータを該他の中継装置へ転送するとともに転送が遅らされている未転送の送達確認データを前記送信装置へ転送するようにしてもよい（請求項１５）。
【００４９】
【発明の実施の形態】
以下、図面を参照して、本発明の実施形態について説明する。なお、各図において、ＴＣＰセグメントの転送に係る機能が共通している要素には同一の符号を付し、重複する説明を回避するものとする。
【００５０】
＜第1実施形態＞
（１）第１実施形態に係るシステム構成
図７は本発明の第１実施形態に係る移動端末ＭＳを用いた移動通信システムの構成例を示す概念図であり、この図における移動端末ＭＳは無線通信路上でＴＣＰ／ＩＰに従った通信を行うための通信機能を実装し、基地局ＢＳとの間で無線データリンク層の通信を行うとともに、ネットワークＮＷ及び基地局ＢＳを介してサービスノードＳＮからＴＣＰセグメントの転送を受ける。なお、ネットワークＮＷは移動パケット通信網やＬＡＮ、インターネット等のＴＣＰ／ＩＰに対応したネットワークである。また、図示を略すが、ネットワークＮＷには複数の基地局ＢＳが接続（あるいは収容）されており、移動端末ＭＳは複数の基地局ＢＳから最適な基地局ＢＳを選択し、この基地局ＢＳを介してＴＣＰセグメントの転送を受ける。
【００５１】
（２）移動端末ＭＳのハードウェア構成
図８は移動端末ＭＳのハードウェア構成を示すブロック図であり、この図において、１は基地局ＢＳとの無線通信を行う無線部、２は無線部１を制御する制御部であり、無線部１との間でデータ授受を行う。制御部２は各種制御および演算を行うＣＰＵ（Central Processing Unit）２１と、ＣＰＵ２１に読み出される各種プログラムやパラメータ（例えば閾値）等を更新不可能に記憶した更新不可記憶部２２と、ＣＰＵ２１のワークエリアとして使用される更新可能記憶部２３と、ＣＰＵ２１に制御され、ＣＰＵ２１により設定された時間間隔で割り込み信号を発生するタイマ２４とを有する。後述する各種機能は、ＣＰＵ２１が更新不可記憶部２２及び更新可能記憶部２３の少なくとも一方に記憶された各種プログラムを実行することにより実現される。
【００５２】
（３）移動端末ＭＳの機能
（３−１）概要
基本的には、移動端末ＭＳは基地局ＢＳ及びネットワークＮＷを介してサービスノードＳＮからＴＣＰセグメントの転送を受ける際に、基地局ＢＳに対応した電波強度が予め設定された閾値以下になった場合には受信したＴＣＰセグメント（受信セグメント）を保存するとともに広告ウィンドウサイズを０としたＡＣＫセグメントをサーバノードＳＮへ送信し、電波強度が回復して閾値を超えた場合には保存されたＴＣＰセグメントに基づいた通常の広告ウィンドウサイズのＡＣＫセグメントをサーバノードＳＮへ送信する。なお、本発明の実施形態において、受信セグメントの「保存」とは受信バッファ（あるいは共有バッファ）に記憶された受信セグメントを複製して所定の記憶領域に記憶させる処理を意味する。すなわち、受信セグメントは上位のアプリケーション層の使用に供されるとともに、その受信時の電波強度が予め設定された閾値以下の場合にはその複製データが所定の記憶領域に記憶される。
【００５３】
すなわち、移動端末ＭＳは、電波強度が弱すぎる場合にはパケットロスの虞があるからサービスノードＳＮからのＴＣＰセグメントの送信を一時停止させ、電波強度が回復してから送信を再開させることで、サービスノードＳＮにおいてタイムアウトが発生する可能性が高いＴＣＰセグメントの送信を抑制するように作動する。また、移動端末ＭＳは、電波強度が弱くなって正常に送達されなかった虞のあるＡＣＫセグメントを電波強度の回復後に再送信することで、サービスノードＳＮにおけるタイムアウトの発生回数の削減を図っている。
【００５４】
（３−２）具体的な機能
次に移動端末ＭＳの具体的な機能について図９を参照して説明する。図９は移動端末ＭＳにおけるＴＣＰ広告ウィンドウ制御に係る機能構成を示すブロック図であり、この図に示すように、移動端末ＭＳはＴＣＰ広告ウィンドウ制御に関して、トランスポートプロトコル処理部ＭＳ１、ネットワークプロトコル処理部Ｍ２、無線データリンク処理部Ｍ３、及びワイヤレス用ＴＣＰ広告ウィンドウ制御処理部ＭＳ２を有する。なお、ネットワークプロトコル処理部Ｍ２及び無線データリンク処理部Ｍ３の機能については前述の通りである。
【００５５】
トランスポートプロトコル処理部ＭＳ１は図３のトランスポートプロトコル処理部Ｍ１が有する機能を全て含んでいる。すなわち、トランスポートプロトコル処理部ＭＳ１に含まれている各部ＭＳ１１〜ＭＳ１３はトランスポートプロトコル処理部Ｍ１内の対応する各部Ｍ１１〜Ｍ１３の機能を全て有する。各部ＭＳ１１〜ＭＳ１３が有する新機能については後述する。一方、ワイヤレスリンク用ＴＣＰ広告ウィンドウ制御処理部ＭＳ２は、電波強度検査処理部ＭＳ２１、受信セグメント保存処理部ＭＳ２２、ＡＣＫ情報指定部ＭＳ２３、広告ウィンドウサイズ指定部ＭＳ２４、及びタイマ処理部ＭＳ２５を包含している。
【００５６】
（３−２−１）トランスポートプロトコル処理部ＭＳ１の機能
トランスポートプロトコル処理部ＭＳ１のＴＣＰセグメント受信処理部ＭＳ１１が備えている新機能としては、ＴＣＰセグメントの受信時にその旨を電波強度検査処理部ＭＳ２１へ通知する機能と、図示せぬ受信バッファに対する受信セグメント保存処理部ＭＳ２２からのアクセスを許容する機能とが挙げられる。
【００５７】
広告ウィンドウサイズ決定部ＭＳ１２が備えている新機能としては、広告ウィンドウサイズ指定部ＭＳ２４から広告ウィンドウサイズが指定されている場合には当該広告ウィンドウサイズを自端末の広告ウィンドウサイズとして採用する機能と、電波強度検査処理部ＭＳ２１から後述の再開指示が与えられると広告ウィンドウサイズを通常の計算によって算出する機能が挙げられる。
【００５８】
ＡＣＫ送信処理部ＭＳ１３が備えている新機能としては、ＡＣＫ情報指定部ＭＳ２３からＡＣＫ情報が渡された場合には当該ＡＣＫ情報に基づいてＡＣＫセグメントを生成し、当該ＡＣＫセグメントを、そのウインドウフィールドに広告ウィンドウサイズ決定部ＭＳ１２が算出（採用）した広告ウィンドウサイズを指定した後にネットワークプロトコル処理部Ｍ２のＩＰプロトコル処理部Ｍ２１へ渡す機能が挙げられる。
【００５９】
（３−２−２）ワイヤレスリンク用ＴＣＰ広告ウィンドウ制御処理部ＭＳ２の機能
電波強度検査処理部ＭＳ２１は無線データリンク処理部Ｍ３内の基地局リストＬから電波強度を取得するものであり、電波強度の取得の契機としては、ＴＣＰセグメント受信処理部ＭＳ１１からの通知と、タイマ処理部ＭＳ２５からの割り込み通知とが挙げられる。また、電波強度検査処理部ＭＳ２１は取得された電波強度が予め設定された閾値以下か否かを判定し、閾値を超えている場合には再開指示を広告ウィンドウサイズ決定部ＭＳ１２へ通知する。この再開指示は広告ウィンドウサイズを通常の計算により得る処理を再開する旨の指示である。また、電波強度検査処理部ＭＳ２１は上記判定結果と契機の種別とを受信セグメント保存処理部ＭＳ２２へ通知する。
【００６０】
受信セグメント保存処理部ＭＳ２２は、電波強度検査処理部ＭＳ２１から情報の通知を受けると、この情報に応じた処理を行う。受信セグメント保存処理部ＭＳ２２は、電波強度検査処理部ＭＳ２１から電波強度が予め設定された閾値以下であることを示す情報を受けた場合には、その旨を広告ウィンドウサイズ決定部ＭＳ１２へ通知する。また、電波強度検査処理部ＭＳ２１からの情報が、ＴＣＰセグメントの受信を契機として得られた電波強度が閾値以下であることを表す場合には、受信セグメント保存処理部ＭＳ２２はＴＣＰセグメント受信処理部ＭＳ１１の受信セグメントを受信バッファから読み出し、保存セグメントＳＳとして保存する。この際、保存セグメントＳＳが既に存在する場合には、その内容が入れ替えられることになる。
【００６１】
また、電波強度検査処理部ＭＳ２１からの情報が、割り込み通知を契機として得られた電波強度が閾値を超えていることを表す場合には、受信セグメント保存処理部ＭＳ２２はその旨を広告ウィンドウサイズ決定部ＭＳ１２へ通知するとともに、保存セグメントＳＳのヘッダフィールドから当該セグメントに対するＡＣＫセグメントを生成するために必要な情報（シーケンス番号や確認応答番号など）を読み出してＡＣＫ情報指定部ＭＳ２３に渡し、保存セグメントＳＳをクリアする（削除または消去する）。
【００６２】
また、電波強度検査処理部ＭＳ２１からの情報が、ＴＣＰセグメントの受信を契機として得られた電波強度が閾値を超えていること、及び割り込み通知を契機として得られた電波強度が閾値以下であることの何れかを表す場合には、受信セグメント保存処理部ＭＳ２２は何もしない。
【００６３】
ＡＣＫ情報指定部ＭＳ２３は受信セグメント保存処理部ＭＳ２２から渡された情報をＡＣＫ情報としてＡＣＫ送信処理部ＭＳ１３へ通知する。
【００６４】
広告ウィンドウサイズ指定部ＭＳ２４は、ＴＣＰセグメントの受信を契機として得られた電波強度が予め設定された閾値以下である旨の通知を受信セグメント保存処理部ＭＳ２２から受けると、広告ウィンドウサイズ決定部ＭＳ１２に対して最小の広告ウィンドウサイズ（本実施形態では０）を指定するとともに、タイマ処理部ＭＳ２５に対してタイマの設定とその設定内容を指示する。なお、タイマの設定内容を示す情報としては電波強度検査処理部ＭＳ２１へ定期的に通知を行う際の時間間隔などがある。当該時間間隔は予め設定されるものであり、その設定値は任意であるが、本実施形態では、数秒程度の設定値が採用されている。また、広告ウィンドウサイズ指定部ＭＳ２４は、割り込み通知を契機として得られた電波強度が予め設定された閾値を超えている旨の通知を受信セグメント保存処理部ＭＳ２２から受けると、タイマ処理部ＭＳ２５に対してタイマの解除を指示する。
【００６５】
タイマ処理部ＭＳ２５は、広告ウィンドウサイズ指定部ＭＳ２４からタイマの設定指示を受けると、この指示に従ってタイマを設定する。タイマが設定された状態のタイマ処理部ＭＳ２５は、電波強度検査処理部ＭＳ２１に対して、設定内容に従ったタイミング（本実施形態では数秒間隔）で割り込み通知を出す。また、タイマ処理部ＭＳ２５は、広告ウィンドウサイズ指定部ＭＳ２４からタイマの解除指示を受けると、この指示に従ってタイマを解除する。タイマが解除された状態のタイマ処理部ＭＳ２５は何もしない。
【００６６】
（４）移動端末ＭＳのＴＣＰ通信制御動作
次に、上述した構成および機能の移動端末ＭＳの動作について説明する。ただし、ここでは、制御部２のＣＰＵ２１が更新不可記憶部２２または更新可能記憶部２３に記憶された各種プログラムを実行し、図９に示す機能が実現されているものとする。
【００６７】
図１０は移動端末ＭＳが実行するＴＣＰ通信制御処理の流れを示すフローチャートであり、この図に示す流れが図４に示す流れと異なる点は、ステップＳＡ７の処理に代えてステップＳＣ３の処理が設けられた点と、ステップＳＣ１，ＳＣ２の処理が新設された点である。
【００６８】
図１０に示すように、移動端末ＭＳでは、イベント待ちにおいて発生したイベントが上位のアプリケーション層からのＯＰＥＮコマンドやＣＬＯＳＥコマンドの引き渡しではなく（ステップＳＡ１，ＳＡ２，ＳＡ４）、タイマ処理部ＭＳ２５からの割り込み通知の出力である場合、後述する定期処理が行われる（ステップＳＣ１，ＳＣ２）。なお、定期処理の実行後、移動端末Ｍはイベント待ち状態に戻る。また、発生したイベントが上述のいずれのイベントでもない場合には、移動端末ＭＳはイベントに応じた処理を行う（ステップＳＣ３）。なお、ステップＳＣ３の処理に含まれるＴＣＰ広告ウィンドウ制御処理（後述する）はステップＳＡ７の処理に含まれる同処理と異なる。
【００６９】
次に、上記ＴＣＰ通信制御動作について、図１０、図１１、及び図１２を参照して具体的に説明する。ただし、ここでは、移動端末ＭＳと最適基地局ＢＳ間の電波状況は、最初は十分に高いレベルで安定し、次に徐々に悪化し、最後に急速に回復するものとする。
【００７０】
通信相手からＴＣＰセグメントが転送されてくると、図１１のＴＣＰ広告ウィンドウ制御処理が行われる（ステップＳＣ３）。ＴＣＰ広告ウィンドウ制御処理では、まず、ＴＣＰセグメント受信処理部ＭＳ１１によりＴＣＰセグメントが受信され（ステップＳＤ１）、受信の旨が電波強度検査処理部ＭＳ２１へ通知される。この通知が契機となり、電波強度検査処理部ＭＳ２１により、無線データリンク処理部Ｍ３内の基地局リストＬから最適基地局ＢＳに対応した電波強度が取得され（ステップＳＤ２）、この電波強度が予め設定された閾値と比較される（ステップＳＤ３）。
【００７１】
移動端末ＭＳと最適基地局ＢＳ間の電波状況は最初は十分に高いレベルで安定しているため、当該電波強度は予め設定された閾値を超えている。したがって、広告ウィンドウサイズは広告ウィンドウサイズ決定部ＭＳ１２により通常の方法で計算され（ステップＳＤ９）、算出された広告ウィンドウサイズがウィンドウフィールドに設定されたＡＣＫセグメントがＡＣＫ送信処理部ＭＳ１３によりネットワークプロトコル処理部Ｍ２のＩＰプロトコル処理部ＭＳ２１に渡される（ステップＳＤ１０）。以後、移動端末ＭＳは再びイベント待ち状態となる（図１０のステップＳＡ１）。ＴＣＰセグメントが連続して転送される場合には、電波状況が一定のレベル以下に悪化するまで、上述した処理が繰り返し行われる。
【００７２】
電波状況が一定のレベル以下に悪化し、電波強度が閾値以下となった直後にＴＣＰセグメントが転送されてくると、ステップＳＤ３の判定結果が変わる。この結果、電波強度検査処理部ＭＳ２１から情報の通知を受けた受信セグメント保存処理部ＭＳ２２により、受信セグメントが保存セグメントＳＳとして一時的に保存される（ステップＳＤ５）。また、受信セグメント保存処理部ＭＳ２２からの情報を受けた広告ウィンドウサイズ指定部ＭＳ２４により、タイマ設定部ＭＳ２５においてはタイマが設定され、広告ウィンドウサイズ設定部ＭＳ１２においては値が０の広告ウィンドウサイズが採用される（ステップＳＤ７，ＳＤ８）。そして、この広告ウィンドウサイズ（すなわち０）がウィンドウフィールドに設定されたＡＣＫセグメントがＡＣＫ送信処理部ＭＳ１３によりＩＰプロトコル処理部ＭＳ２１に渡される（ステップＳＤ１０）。以後、移動端末ＭＳは再びイベント待ち状態となる。
【００７３】
タイマが設定されると、タイマ処理部ＭＳ２５から電波強度検査処理部ＭＳ２１へ所定時間間隔（例えば数秒間隔）で割り込み通知が出される。イベント待ち状態において割り込み通知が出されると、移動端末ＭＳは図１２の定期処理を開始する（ステップＳＣ１，ＳＣ２）。定期処理では、割り込み通知を受けた電波強度検査処理部ＭＳ２１により、最適基地局ＢＳに対応した電波強度が取得され（ステップＳＥ１）、この電波強度が予め設定された閾値と比較される（ステップＳＥ２）。ここでは電波強度は閾値以下であるため、以後、移動端末ＭＳは再びイベント待ち状態となる。電波状況が回復して電波強度が閾値を超えるまで、上記処理が定期的に繰り返し行われる。
【００７４】
また、この状況下でＴＣＰセグメントが転送されてくると、保存セグメントＳＳが既に保存されていることから、受信セグメント保存処理部ＭＳ２２により、当該ＴＣＰセグメントが保存セグメントＳＳとして保存される（ステップＳＤ４，ＳＤ５）。すなわち、保存セグメントＳＳの内容が入れ替えられる。以降の処理は最初に保存セグメントＳＳを保存する場合の処理と同様であり、ステップＳＤ７，ＳＤ８，ＳＤ１０の処理後、移動端末ＭＳは再びイベント待ち状態となる。
【００７５】
ここで、電波状況が急速に回復し、電波強度が閾値を超えた状況下でタイマ処理部ＭＳ２５から割り込み通知が出されると、図１２のステップＳＥ２の判定結果が変わる。この結果、電波強度検査処理部ＭＳ２１から広告ウィンドウサイズ決定部ＭＳ１２へ再開指示が渡され、広告ウィンドウサイズ決定部ＭＳ１２では広告ウィンドウサイズが通常の方法にて計算される（ステップＳＥ５）。また、電波強度検査処理部ＭＳ２１から情報を受けた受信セグメント保存処理部ＭＳ２２によって保存セグメントＳＳのヘッダフィールドから情報（シーケンス番号や確認応答番号など）が取得され、この情報に基づいたＡＣＫ情報がＡＣＫ情報指定部ＭＳ２３からＡＣＫ送信処理部ＭＳ１３に渡される（ステップＳＥ３）。また、受信セグメント保存処理部ＭＳ２２から情報を受けた広告ウィンドウサイズ指定部ＭＳ２４により、タイマ設定部ＭＳ２５においてタイマが解除される（ステップＳＥ４）。
【００７６】
そして、保存セグメントＳＳに対するＡＣＫセグメントであって通常の計算により算出された広告ウィンドウサイズがウィンドウフィールドに指定されたＡＣＫセグメントがＡＣＫ送信処理部ＭＳ１３からＩＰプロトコル処理部ＭＳ２１に渡される（ステップＳＥ１０）。また、この際、保存セグメントＳＳは受信セグメント保存処理部ＭＳ２２によりクリアされる（ステップＳＥ７）。したがって、次に受信セグメントを一時保存する際には、入れ替えではなく、新規保存となる。以後、移動端末ＭＳは再びイベント待ち状態となる。なお、タイマは既に解除されているため、電波強度が閾値以下となってタイマが再び設定されない限り、定期処理が行われることはない。
【００７７】
なお、電波状況が回復して電波強度が閾値を超えた場合にＴＣＰセグメントが転送されてきた場合の動作は、電波状況が十分に高いレベルで安定している場合にＴＣＰセグメントが転送されてきた場合の動作であり、前述の通りである。
【００７８】
（５）第1実施形態に係る移動通信システムの動作
次に、移動端末ＭＳを用いた移動通信システムの動作について、図１３を参照して説明する。図１３は当該移動通信システムにおける移動端末ＭＳとサービスノードＳＮとの間のやり取りの一例を示す概念図であり、この図に示す一例は、移動端末ＭＳの動作の説明で用いられた条件（移動端末ＭＳと最適基地局ＢＳ間の電波状況は、最初は十分に高いレベルで安定し、次に徐々に悪化し、最後に急速に回復するという条件）と同一の条件下で得られたものである。
【００７９】
この図において、サービスノードＳＮ側に描かれたシーケンスはサービスノードＳＮから移動端末ＭＳへ向けて送出されたＴＣＰセグメントであり、移動端末ＭＳ側に描かれたシーケンスは移動端末ＭＳにおいて受信されたＴＣＰセグメントである。また、移動端末ＭＳ側には、保存セグメントＳＳの内容の変遷が上記シーケンスに対応付けて描かれている。また、１〜６の数字はセグメントの登場順序を示すものであり、各シーケンス及び変遷において、対応する部分には同一の番号が記載されている。なお、この図において、時間は時刻ｔ１から時刻ｔ６の方向へ経過しており、時刻ｔ１以前と時刻ｔ５以降は電波強度が閾値を超えている区間、時刻ｔ１から時刻ｔ５までの区間は電波強度が閾値以下である区間である。さらに、時刻ｔ１から時刻ｔ５までの区間では電波強度は徐々に弱くなっていく。
【００８０】
時刻ｔ１以前の電波強度が閾値を超えている状況下でサービスノードＳＮから１番目のＴＣＰセグメントが送出されると、このＴＣＰセグメントｄ１はある程度の時間だけ遅れて移動端末ＭＳにおいて受信される。この遅れは通信路の遅延時間に起因した遅れであり、この図に示す例では、サービスノードＳＮにおける３番目のＴＣＰセグメントｄ３の転送タイミングと移動端末ＭＳにおける１番目のＴＣＰセグメントの受信タイミングとが一致するような遅延時間が存在する。
【００８１】
１番目のＴＣＰセグメントｄ１を受信した移動端末ＭＳは受信セグメントに対応したＡＣＫセグメントａ１をサービスノードＳＮへ送出する。この時点は時刻ｔ１以前であるため、このＡＣＫセグメントａ１内のウィンドウフィールドに指定された広告ウィンドウサイズは通常の計算によって得られたサイズとなっており、このＡＣＫセグメントａ１を受信したサービスノードＳＮでは、徐々に大きくなってきている輻輳ウィンドウサイズと広告ウィンドウサイズとの最小値が送信ウィンドウサイズとして決定される。
【００８２】
移動端末ＭＳにおける２番目のＴＣＰセグメントｄ２の受信時点（時刻ｔ２）は、電波強度が閾値以下となっている時刻ｔ１〜時刻ｔ５の区間内となる。したがって、移動端末ＭＳにおいて、２番目のＴＣＰセグメントｄ２が保存セグメントＳＳとして一時的に保存される。また、２番目のＴＣＰセグメントｄ２に対応して移動端末ＭＳからサービスノードＳＮへ送出されるＡＣＫセグメントａ２内のウィンドウフィールドには０が指定される。したがって、このＡＣＫセグメントａ２を受信したサービスノードＳＮでは、送信ウィンドウサイズが０となり、以降のＴＣＰパケットの転送が停止される。
【００８３】
ただし、ＡＣＫセグメントａ２がサービスノードＳＮに受信されるのは、５番目のＴＣＰセグメントｄ５が送出された後であることから、サービスノードＳＮから移動端末ＭＳへ３番目のＴＣＰセグメントｄ３、４番目のＴＣＰセグメントｄ４、５番目のＴＣＰセグメントｄ５が順に送出されることになる。ここでは、これらのＴＣＰセグメントのうち、３番目のＴＣＰセグメントｄ３及び４番目のＴＣＰセグメントｄ４が移動端末ＭＳにおいて受信され、５番目のＴＣＰセグメントｄ５については電波強度が著しく弱くなったために無線区間で消失するものとする。
【００８４】
移動端末ＭＳでは、３番目のＴＣＰセグメントｄ３及び４番目のＴＣＰセグメントｄ４の受信タイミング（時刻ｔ３，ｔ４）で、保存セグメントＳＳの内容が最新の受信セグメントに入れ替えられるとともに、それぞれウィンドウフィールドに０が指定されたＡＣＫセグメントａ３，ａ４がサービスノードＳＮへ送出される。ただし、これらのＡＣＫセグメントａ３，ａ４は、５番目のＴＣＰセグメントｄ５と同様の理由で消失するものとする。
【００８５】
この結果、時刻ｔ５までにサービスノードＳＮにおいて受信されたＡＣＫセグメントは１番目のＴＣＰセグメントｄ１に対応したものと、２番目のＴＣＰセグメントｄ２に対応したものだけとなる。なお、５番目のＴＣＰセグメントｄ５の送出後、サービスノードＳＮからのＴＣＰセグメントの送出は停止している。時刻ｔ５において電波状況が回復して電波強度が閾値を超えると、このことが移動端末ＭＳにより検出され、時刻ｔ６において、保存セグメントＳＳ（４番目のＴＣＰセグメントｄ４）に対応したＡＣＫセグメントａ４が移動端末ＭＳから送出される。このＡＣＫセグメントａ４内のウィンドウフィールドに指定された広告ウィンドウサイズは通常の計算によって得られたサイズとなっている。
【００８６】
サービスノードＳＮにおいて４番目のＴＣＰセグメントｄ４のタイムアウト前にＡＣＫセグメントａ４が受信され、かつ３番目のＴＣＰセグメントがタイムアウトしていないとすると、この時点でタイムアウトしているＴＣＰセグメントは存在しない。したがって、サービスノードＳＮの送信ウィンドウサイズは転送を停止する以前の送信ウィンドウサイズより小さくなることはない。
【００８７】
３番目のＴＣＰセグメントがタイムアウトしていないため、サービスノードＳＮから移動端末ＭＳへ６番目のＴＣＰセグメントｄ６が送出され、さらに７番目のセグメントｄ７が送出される。この時点までに３番目のＴＣＰセグメントｄ３がタイムアウトすると、次に、当該ＴＣＰセグメントが再送される。
【００８８】
（６）第１実施形態に係る補足
以上、説明したように、本発明の第１実施形態によれば、移動端末ＭＳが基地局ＢＳから離れる等の要因により電波強度が弱くなるとＴＣＰ通信がー時的に中断されるため、パケットロスに起因した幅榛ウィンドウサイズの縮小、及びスレッシュホールドの低下を回避することができる。さらに、電波強度が強くなると、通常の方法によって広告ウィンドウサイズが計算されるため、迅速に通信スループットを回復することができる。これらのことから、上記実施形態では通信スループットの大幅な増大が達成されている。
【００８９】
また、本実施形態では、移動端末ＭＳにおいて電波強度が弱くなったときに受信したＴＣＰセグメントを保存セグメントＳＳとして保存し、電波強度の回復時に当該保存セグメントＳＳに対応したＡＣＫセグメントをサービスノードＳＮへ送信するようにしている。これにより、パケットロスに起因した幅榛ウィンドウサイズの縮小、及びスレッシュホールドの低下をより確実に回避することができる。なお、広告ウィンドウサイズの通知手段として既存方式と同様にＡＣＫセグメントを用いるようにしたため、既存のサービスノードＳＮをそのまま使用できるという利点もある。
【００９０】
なお、上述した実施形態では保存セグメントＳＳの数を１としたが、複数とし、電波強度の回復後に複数の保存セグメントに対応した複数のＡＣＫセグメントを送出するようにしてもよい。また、サービスノードＳＮにおけるタイムアウト時間とサービスノードＳＮとの間のラウンドトリップタイムとに基づいてタイムアウトを回避可能な保存セグメントのみを電波強度の回復後にサービスノードＳＮへ返信するようにしてもよい。
【００９１】
また、本実施形態では特に触れていないが、移動端末ＭＳの工場出荷時に閾値を設定するようにしてもよいし、使用者が設定できるようにしてもよい。さらに、移動端末ＭＳはＴＣＰ／ＩＰに対応した無線通信装置であればよく、例えば、単体の携帯電話機であってもよいし、無線通信機能を備えたＰＤＡであってもよい。もちろん、有線の固定端末を受信装置として用いることも可能である。また、電波強度が弱い期間における広告ウィンドウサイズは０に限定されるものではなく、要求仕様に応じて適宜設定すべきものである。
【００９２】
さらに、一時点の電波強度に基づいて各種判断を行うようにしたが、電波強度の変遷に基づいて近い将来の電波強度を予測して各種判断を行うようにしてもよい。例えば、閾値を超えた電波強度が所定時間（あるいは所定回数）だけ連続して維持された場合にのみＴＣＰ通信を再開するようにしてもよい。もちろん、電波強度が回復した旨を使用者が指示し、この指示に従ってＴＣＰ通信を再開するようにしてもよい。
【００９３】
また、本実施形態ではＴＣＰでのデータ転送を前提とし、広告ウィンドウサイズを変えてサービスノードＳＮの送信ウィンドウサイズを変える例を示したが、本発明を他の通信プロトコルに従ったデータ転送に適用する場合には、適用先の通信プロトコルに適合した他の手法を採用することも考えられる。なお、スライディングウィンドウ方式はＴＣＰのみならず、ＨＤＬＣ（High level DataLink Control）、パケット交換などでも採用されている。
【００９４】
＜第２実施形態＞
（１）第２実施形態に係るシステム構成
図１４は本発明の第２実施形態に係る中継ノードＴＮを用いた移動通信システムの構成例を示す概念図であり、この図に示す移動通信システムが図７に示す移動通信システムと大きく異なる点は、基地局ＢＳとサービスノードＳＮとがネットワークＮＷではなく、中継ノードＴＮを介して接続されている点である。なお、基地局ＢＳａと基地局ＢＳｂは基地局ＢＳと同一機能を有する基地局であり、両者を区別しない場合には単に基地局ＢＳと記す。また、中継ノードＴＮａと中継ノードＴＮｂは同一機能を有する中継ノードであり、以後、両者を区別しない場合には単に中継ノードＴＮと記す。
【００９５】
基地局ＢＳａは比較的に狭い範囲をカバーする地域ネットワークＬＮａを介して中継ノードＴＮａに接続されており、基地局ＢＳｂは地域ネットワークＬＮｂを介して中継ノードＴＮｂに接続されている。さらに、各中継ノードＴＮａ，ＴＮｂは比較的に広い範囲をカバーする広域ネットワークＧＮを介してサービスノードＳＮに接続されている。すなわち、中継ノードＴＮａ配下の基地局（例えば基地局ＢＳａ）に収容されている移動端末ＭＳは、当該基地局、地域ネットワークＬＮａ、中継ノードＴＮａ、及び広域ネットワークＧＮを介して、サービスノードＳＮからＴＣＰセグメントの転送を受ける。これと同様に、中継ノードＴＮｂ配下の基地局（例えば基地局ＢＳｂ）に収容されている移動端末ＭＳは、当該基地局、地域ネットワークＬＮｂ、中継ノードＴＮｂ、及び広域ネットワークＧＮを介して、サービスノードＳＮからＴＣＰセグメントの転送を受ける。なお、地域ネットワークＬＮａと地域ネットワークＬＮｂは同一機能を有することから、以後、両者を区別しない場合には単に地域ネットワークＬＮと記す。
【００９６】
（２）中継ノードＴＮのハードウェア構成
図１５は中継ノードＴＮのハードウェア構成を示すブロック図であり、この図において、３は通信部であり、地域ネットワークＬＮを介して配下の基地局ＢＳと通信するとともに、広域ネットワークＧＮを介してサービスノードＳＮと通信する。また、通信部３は広域ネットワークＧＮを介して他の中継ノードＴＮと通信する。
【００９７】
４は通信部３を制御する制御部であり、通信部３との間でデータ授受を行う。制御部４は各種制御および演算を行うＣＰＵ４１と、ＣＰＵ４１に読み出される各種プログラムやパラメータ（例えば後述のＡＣＫ転送遅延時間）等を記憶した不揮発性メモリ４２と、ＣＰＵ４１のワークエリアとして使用されるワークメモリ４３と、サービスノードＳＮから移動端末ＭＳへの中継データをＣＰＵ４１が一時的に退避するためのバッファ４４と、ＣＰＵ４１に制御され、ＣＰＵ４１により設定された時間間隔で割り込み信号を発生するタイマ４５とを有する。後述する各種機能は、ＣＰＵ４１が不揮発性メモリ４２に記憶された各種プログラムを実行することにより実現される。
【００９８】
（３）中継ノードＴＮの機能
（３−１）概要
基本的には、中継ノードＴＮはサービスノードＳＮから移動端末ＭＳへＴＣＰセグメントを転送するとともに移動端末ＭＳからサービスノードＳＮへＡＣＫセグメントを転送する際に、ＡＣＫセグメント中の広告ウィンドウサイズを抽出し、このサイズが０の場合には当該ＡＣＫセグメントのサービスノードＳＮへの転送を予め設定された一定時間であるＡＣＫ転送遅延時間だけ遅らせるとともに以降のサービスノードＳＮから当該移動端末ＭＳへのＴＣＰセグメントを当該移動端末ＭＳへ転送せずにバッファリングし、その後、広告ウィンドウサイズが０でないＡＣＫセグメントを受信したときに、バッファリングされたデータ（以後、バッファデータ）を当該移動端末ＭＳへ送信する。
【００９９】
すなわち、中継ノードＴＮは、電波強度が弱すぎる場合にサービスノードＳＮからのＴＣＰセグメントの送信を一時停止させるためのＡＣＫセグメントをサービスノードＳＮが受信する時点を遅らせ、サービスノードＳＮからのＴＣＰセグメントの送信を第１実施形態に比較してＡＣＫ転送遅延時間だけ長く続けさせ、さらにこの間に送信されたＴＣＰセグメントをバッファリングして電波強度の回復後に移動端末ＭＳへ転送するようにすることで、移動端末ＭＳにおける瞬間的な通信品質の低下（電波強度の低下）が通信に与える影響をサービスノードＳＮに伝えないように作動する。また、中継ノードＴＮを上述のように作動させることにより、結果的に、移動端末ＭＳとサービスノードＳＮとの間の通信が完全に途絶する際の電波強度が第１実施形態における電波強度よりも弱くなることが期待される。
【０１００】
また、中継ノードＴＮは、移動端末ＭＳが他の中継ノードＴＮの配下に移動した場合にはそれまでのバッファデータを他の中継ノードＴＮへ転送し、他の中継ノードＴＮの配下の移動端末ＭＳが自中継ノードＴＮの配下に移動してきた場合には他の中継ノードＴＮから転送されてくるバッファデータを受信して移動端末ＭＳへ転送することで、ハンドオーバ時の電波強度の低下に対して効率良く対応できるようにしている。
【０１０１】
（３−２）具体的な機能
次に中継ノードＴＮの具体的な機能について図１６を参照して説明する。
図１６は中継ノードＴＮにおける中継制御に係る機能構成を示すブロック図であり、この図に示すように、中継ノードＴＮは中継制御に関して、ＩＰプロトコル処理部ＴＮ１、移動通知受信処理部ＴＮ２、ＴＣＰバッファＴＮ３、取り出し条件検査部ＴＮ４、ＡＣＫ受信処理部ＴＮ５、ＡＣＫ転送処理部ＴＮ６、ＴＣＰ受信処理部ＴＮ７、ＴＣＰ送信処理部ＴＮ８、移動前バッファ転送部ＴＮ９、及び移動先バッファ受信部ＴＮ１０を有する。なお、ＩＰプロトコル処理部ＴＮ１とネットワーク（地域ネットワークＬＮ／広域ネットワークＧＮ）との間にはデータリンク層に係る処理部と物理層に係る処理部が存在するが、ここでは図示を省略している。
【０１０２】
ＩＰプロトコル処理部ＴＮ１はネットワーク層の転送処理を行うものであり、ＩＰパケットの組み立て・分解や後述の移動通知パケットおよびバッファデータ転送パケットの組み立て・分解などを行う。
【０１０３】
ＴＣＰバッファＴＮ３はサービスノードＳＮから移動端末ＭＳへのＴＣＰセグメントをＴＣＰコネクション毎に一時記憶するものであり、図１５のバッファ４４から構成されている。なお、本実施形態においては、バッファ４４の記憶容量はＡＣＫ転送遅延時間の最大値とサービスノードＳＮから移動端末ＭＳへのデータ転送速度とサービスノードＳＮ及び自中継ノードＴＮ間の遅延時間と収容可能な移動端末ＭＳの数とに応じて設定されている。
【０１０４】
取り出し条件検査部ＴＮ４はＩＰプロトコル処理部ＴＮ１がネットワーク側からＩＰパケットを受け取ると、当該ＩＰパケットが所定条件を満たすか否かを判定し、判定結果に応じた処理を行う。具体的には、取り出し条件検査部ＴＮ４は、当該ＩＰパケットから広告ウィンドウサイズを抽出し、この広告ウィンドウサイズが０であるか否かを判定し、０の場合には当該ＩＰパケットを取り出してＡＣＫ受信処理部ＴＮ５へ渡す。なお、本発明の実施形態において、ＩＰパケットを「取り出す」ということは、当該ＩＰパケットに対する以降のＩＰプロトコル処理部ＴＮ１における処理（ネットワーク側へのスルー出力）を中止することをも意味している。
また、取り出し条件検査部ＴＮ４はＡＣＫ受信処理部ＴＮ５により後述の取り出し条件が設定されると、サービスノードＳＮから移動端末ＭＳへのＩＰパケットが当該取り出し条件を満たすか否かを検査し、一致する場合には当該ＩＰパケットを取り出してＴＣＰ受信処理部ＴＮ７へ渡す。また、取り出し条件が設定された取り出し条件検査部ＴＮ４は移動端末ＭＳからサービスノードＳＮへのＩＰパケットが当該取り出し条件を満たし、かつ当該ＩＰパケットに含まれるＡＣＫセグメントの広告ウィンドウサイズが０でなければ、当該ＩＰパケットを取り出してＡＣＫ受信処理部ＴＮ５へ渡す。
【０１０５】
ＡＣＫ受信処理部ＴＮ５は取り出し条件検査部ＴＮ４から広告ウィンドウサイズが０のＩＰパケットを受け取ると、取り出し条件検査部ＴＮ４に対して、当該ＩＰパケットの取り出し元のＴＣＰコネクションにおける取り出し条件を設定するとともに、当該ＩＰパケットをＡＣＫ保存パケットＡＳＳとしてワークメモリ４３に一時記憶させる。なお、取り出し条件はＴＣＰコネクションを指定する情報を含んでおり、取り出し条件が設定された取り出し条件検査部ＴＮ４では、当該取り出し条件で指定されたＴＣＰコネクションを介してサービスノードＳＮから送信されてきたＩＰパケットが取り出されるとともに、当該ＴＣＰコネクションを介して移動端末ＭＳから送信されてきた、広告ウィンドウサイズが０でないＩＰパケットが取り出される。
また、ＡＣＫ受信処理部ＴＮ５は、取り出し条件検査部ＴＮ４から広告ウィンドウサイズが０でないＩＰパケットを受け取ると、ＴＣＰバッファＴＮ３の該当する領域に記憶されたＩＰパケットを読み出してＴＣＰ送信処理部ＴＮ８へ渡し当該領域をクリアする処理と、該当するＴＣＰコネクションに関して取り出し条件検査部ＴＮ４に設定された取り出し条件を解除する処理と、取り出し条件検査部ＴＮ４からのＩＰパケット（広告ウィンドウサイズが０でないＩＰパケット）をＡＣＫ転送処理部ＴＮ６へ渡す処理とを行う。
【０１０６】
ＡＣＫ転送処理部ＴＮ６はＡＣＫ保存パケットＡＳＳについて記憶を開始した時刻からの経過時間をタイマ４５を用いて測定し、この経過時間がＡＣＫ転送遅延時間に達した時に、該当するＡＣＫ保存パケットＡＳＳをＩＰプロトコル処理部ＴＮ１経由でサービスノードＳＮへ転送するともに、当該ＡＣＫ保存パケットＡＳＳを削除する。また、ＡＣＫ転送処理部ＴＮ６はＡＣＫ受信処理部ＴＮ５から渡されたＩＰパケットをそのままＩＰプロトコル処理部ＴＮ１経由でサービスノードＳＮへ転送する
【０１０７】
ＴＣＰ受信処理部ＴＮ７は取り出し条件検査部ＴＮ４からＩＰパケットを受け取ると、これをＴＣＰバッファＴＮ３に記憶させる。
【０１０８】
移動通知受信処理部ＴＮ２は移動端末ＭＳから地域ネットワークＬＮを介して送信されてきた移動通知（移動端末ＭＳが他の中継ノードＴＮの配下から自中継ノードＴＮの配下に移動してきた旨の通知）と他の中継ノードＴＮから広域ネットワークＧＮを介して送信されてきた移動通知パケット（移動端末ＭＳが自中継ノードＴＮの配下から他の中継ノードＴＮの配下に移動した旨を通知するパケット）とを受信し、これらの移動通知を移動前バッファ転送部ＴＮ９へ渡す。
【０１０９】
移動前バッファ転送部ＴＮ９は移動通知受信処理部ＴＮ２から渡された移動通知に応じた処理を行う。具体的には、当該移動通知が移動端末ＭＳからの移動通知であれば、移動前バッファ転送部ＴＮ９およびＩＰプロトコル処理部ＴＮ１は当該移動通知を含む移動通知パケットを生成し、当該移動端末ＭＳの移動元の中継ノードＴＮへ送信する。また、当該移動通知が他の中継ノードＴＮからの移動通知であれば、移動前バッファ転送部ＴＮ９はＴＣＰバッファＴＮ３の該当する領域に記憶されたＩＰパケットを読み出し、移動前バッファ転送部ＴＮ９およびＩＰプロトコル処理部ＴＮ１は当該ＩＰパケットをカプセル化したバッファデータ転送パケットを生成して当該他の中継ノードＴＮへ送信する。なお、上記バッファデータ転送パケットは移動通知パケットのＡＣＫパケットとなるものであり、ＴＣＰバッファＴＮ３の該当する領域にＩＰパケットが記憶されていない場合にも空のＩＰパケットをカプセル化した形で送信される。
【０１１０】
図１７は移動通知パケットおよびバッファデータ転送パケットの構成の一部を示す図であり、両パケットはこの図に示す構成のヘッダをＩＰおよびＵＤＰ（User Datagram Protocol）パケットのヘッダに追加することで得られる。追加されるヘッダは、８ビット長のタイプフィールドと、１ビット長のＡ、Ｉ、Ｍ及びＧフィールドと、４ビット長の予約ビットフィールドと、１６ビット長の有効時間フィールドと、３２ビット長の移動端末アドレスフィールド及び移動先中継ノードアドレスフィールドと、ＩＤフィールドと、拡張部フィールドとを有する。
【０１１１】
タイプフィールドはパケットタイプを表すフィールドであり、本実施形態では中継ノードＴＮ間で交換されるパケットであることを示す値が設定される。ＡフィールドはＡＣＫパケットの要否を示すフィールドであり、本実施形態では、移動通知パケットにおいては「要」、バッファデータ転送パケットにおいては「否」を示す値が設定される。ＩフィールドはＩＤフィールドの有無を示すフィールドである。Ｍ及びＧフィールドはパケットのカプセル化の方式を示す。
【０１１２】
有効時間フィールドは１６ビットのフィールドであり、本実施形態では、移動通知パケットにおいて当該移動通知の有効時間を設定するために使用されている。なお、本実施形態では、有効時間を過ぎても転送すべきバッファデータが残っている場合には、再び移動通知パケットを転送するようにしている。
ＩＤフィールドはパケットを識別可能な情報を格納するためのフィールドである。ただし、ＡＣＫパケットにおいては、本パケットを要求する移動通知パケットのＩＤがＩＤフィールドに格納される。
【０１１３】
移動先バッファ受信部ＴＮ１０は他の中継ノードＴＮからのバッファデータ転送パケットをＩＰプロトコル処理部ＴＮ１経由で受け取ると、このバッファデータ転送パケットに含まれているＩＰパケットを抽出し、ＴＣＰ送信処理部ＴＮ８へ渡す。
【０１１４】
ＴＣＰ送信処理部ＴＮ８はＡＣＫ受信処理部ＴＮ５から渡されたＩＰパケットをＩＰプロトコル処理部ＴＮ１経由で移動端末ＭＳへ送信するとともに、移動先バッファ受信部ＴＮ１０から渡されたＩＰパケットをＩＰプロトコル処理部ＴＮ１経由で移動端末ＭＳへ送信する。
【０１１５】
（４）中継ノードＴＮの動作
次に、上述した構成および機能の中継ノードＴＮの動作について説明する。ただし、ここでは、制御部４のＣＰＵ４１が不揮発性メモリ４２に記憶された各種プログラムを実行し、図１６に示す機能が実現されているものとする。また、取り出し条件検査部には取り出し条件が未設定であるものとする。
【０１１６】
（４−１）ＡＣＫ対応動作
図１８は中継ノードＴＮが実行するＡＣＫ対応処理の流れを示すフローチャートであり、この図に示すように、ＡＣＫセグメントを含むＩＰパケットが移動端末ＭＳから送信されてくると、取り出し条件検査部ＴＮ４により当該ＡＣＫセグメント中の広告ウィンドウサイズが抽出され、その値が０であるか否かが判定される（ステップＳＦ１，ＳＦ２）。広告ウィンドウサイズが０でなければ、当該ＩＰパケットは取り出されず、そのままサービスノードＳＮへ転送される（ステップＳＦ３）。
【０１１７】
広告ウィンドウサイズが０の場合には、当該ＩＰパケットが取り出し条件検査部ＴＮ４により取り出され、ＡＣＫ受信処理部ＴＮ５によりＡＣＫ保存パケットＡＳＳとしてワークメモリ４３に一時記憶される（ステップＳＦ４）。この際、当該ＡＣＫ保存パケットＡＳＳについて記憶を開始した時刻からの経過時間の測定がＡＣＫ転送処理部ＴＮ６により開始されるとともに（ステップＳＦ５）、当該ＩＰパケットの取り出し元のＴＣＰコネクションにおける取り出し条件が取り出し条件検査部ＴＮ４に対して設定される（ステップＳＦ６）。これにより、以後、当該取り出し条件が解除されるまで、当該ＴＣＰコネクションを介してサービスノードＳＮから移動端末ＭＳへ送信されるＩＰパケットは取り出し条件検査部ＴＮ４により取り出され、ＴＣＰ受信処理部ＴＮ７によりＴＣＰバッファＴＮ３に記憶される（バッファリング）。
【０１１８】
上記バッファリングが行われているときにＡＣＫセグメントを含むＩＰパケットが当該ＴＣＰコネクションを介して移動端末ＭＳから送信されてくると、取り出し条件検査部ＴＮ４により当該ＡＣＫセグメント中の広告ウィンドウサイズが抽出され、その値が０であるか否かが判定される（ステップＳＦ７，ＳＦ８）。ここで広告ウィンドウサイズが０であれば上述のステップＳＦ４〜ＳＦ６の処理が繰り返され、０でなければ当該ＩＰパケットが取り出し条件検査部ＴＮ４により取り出され、ＡＣＫ受信処理部ＴＮ５へ渡される。
【０１１９】
そして、広告ウィンドウサイズが０でないＩＰパケットを受け取ったＡＣＫ受信処理部ＴＮ５により、ＴＣＰバッファＴＮ３の該当する領域に記憶されたＩＰパケットが読み出され、ＴＣＰ送信処理部ＴＮ８及びＩＰプロトコル処理部ＴＮ１を介して該当する移動端末ＭＳへ転送される（ステップＳＦ９）。この際、ＩＰパケットが読み出されたＴＣＰバッファＴＮ３の領域の記憶内容がクリアされるとともに、当該ＴＣＰコネクションに関して取り出し条件検査部ＴＮ４に設定された取り出し条件が解除される。また、ＡＣＫ受信処理部ＴＮ５へ渡された、広告ウィンドウサイズが０ではないＩＰパケットは、ＡＣＫ転送処理部ＴＮ６及びＩＰプロトコル処理部ＴＮ１を介してサービスノードＳＮへ転送される。
以後、処理はステップＳＦ１に戻る。
【０１２０】
（４−２）遅延中継動作
図１９は中継ノードＴＮが実行する遅延中継処理の流れを示すフローチャートであり、この図に示す処理は、記憶を開始した時刻からの経過時間の測定が行われているＡＣＫ保存パケットＡＳＳが存在する限り、ＡＣＫ転送処理部ＴＮ６において継続して行われる。すなわち、ＡＣＫ転送処理部ＴＮ６においては、記憶を開始した時刻からの経過時間がＡＣＫ転送遅延時間に達したＡＣＫ保存パケットＡＳＳが存在するか否かが監視され（ステップＳＧ１）、存在する場合には、該当するＡＣＫ保存パケットＡＳＳがＩＰプロトコル処理部ＴＮ１経由でサービスノードＳＮへ転送され、中継ノードＴＮ内から削除される（ステップＳＧ２）。すなわち、広告ウィンドウサイズが０のＩＰパケットはＡＣＫ転送遅延時間だけ遅延されて転送される。
【０１２１】
（４−３）移動対応送信動作
図２０は中継ノードＴＮが実行する移動対応送信処理の流れを示すフローチャートであり、この図に示すように、移動端末ＭＳが他の中継ノードＴＮの配下へ移動したか否かが常時監視され（ステップＳＨ１）、移動した場合にはバッファリングされたデータが移動先の中継ノードＴＮへ転送される（ステップＳＨ２）。移動端末ＭＳが他の中継ノードＴＮの配下へ移動した場合には移動端末ＭＳから直接的に移動通知が送信されてくることはないため、移動先の中継ノードＴＮからの移動通知パケットの受信をもって当該移動が発生したと判断される。移動先の中継ノードＴＮからの移動通知パケットは移動通知受信処理部ＴＮ２により受信され、当該パケット中の移動通知が移動前バッファ転送部ＴＮ９へ渡される。この移動前バッファ転送部ＴＮ９により、移動通知に応じたＩＰパケットがＴＣＰバッファＴＮ３から読み出され、このＩＰパケットをカプセル化したバッファデータ転送パケットがＩＰプロトコル処理部ＴＮ１経由で移動先の中継ノードＴＮへ送信される。
【０１２２】
（４−４）移動対応受信動作
図２１は中継ノードＴＮが実行する移動対応受信処理の流れを示すフローチャートであり、この図に示すように、ハンドオーバにより他の中継ノードＴＮの配下から自中継ノードＴＮの配下へ移動してきた移動端末ＭＳが存在するか否かが常時監視され（ステップＳＩ１）、存在する場合には、移動元の中継ノードＴＮにおいてバッファリングされたデータを取得する処理および当該データを移動端末ＭＳへ転送する処理が行われる（ステップＳＩ２〜ＳＩ４）。
【０１２３】
ハンドオーバにより移動してきた移動端末ＭＳが存在するか否かの判定は、移動端末ＭＳから移動通知が送信されてきたか否かで行われる。移動端末ＭＳからの移動通知が送信されてくると、この通知は移動通知受信処理部ＴＮ２により受信され（ステップＳＩ１）、移動前バッファ転送部ＴＮ９へ渡される。この移動前バッファ転送部ＴＮ９により、当該移動通知を含む移動通知パケットが生成され、ＩＰプロトコル処理部ＴＮ１を介して移動元の中継ノードＴＮへ転送される（ステップＳＩ２）。
【０１２４】
この移動通知パケットに応答して移動元の中継ノードＴＮからバッファデータ転送パケットが送信されてくると、当該バッファデータ転送パケットはＩＰプロトコル処理部ＴＮ１経由で移動先バッファ受信部ＴＮ１０により受信される（ステップＳＩ３）。この移動先バッファ受信部ＴＮ１０により、当該バッファデータ転送パケットに含まれているＩＰパケットが抽出され、当該ＩＰパケットがＴＣＰ送信処理部ＴＮ８およびＩＰプロトコル処理部ＴＮ１を介して当該移動端末ＭＳへ転送される（ステップＳＩ４）。
【０１２５】
（５）第２実施形態に係る移動通信システムの動作
次に、中継ノードＴＮを用いた移動通信システムの動作について、図２２を参照して説明する。
図２２は当該移動通信システムにおけるデータ転送の流れの一例を示す概念図であり、この図に示す一例は、サービスノードＴＮとの間でＴＣＰコネクションを介したデータ転送を行っている移動端末ＭＳが基地局ＢＳａから基地局ＢＳｂへハンドオーバすることによって得られた例である。
【０１２６】
移動端末ＭＳの基地局ＢＳａに対する電波強度が閾値を超えている状況下で、移動端末ＭＳとサービスノードＳＮとの間に中継ノードＴＮａを経由したＴＣＰコネクションが確立され、このＴＣＰコネクションを介してサービスノードＳＮから移動端末ＭＳへＴＣＰセグメント（ＴＣＰデータ）が転送されると、これに応答してＡＣＫセグメントが移動端末ＭＳからサービスノードＳＮへ転送される。この際、ＡＣＫセグメント内の広告ウィンドウサイズは０でないことから、中継ノードＴＮａは当該ＴＣＰコネクション上の通信に全く関与しない。
【０１２７】
ここで、移動端末ＭＳが基地局ＢＳａから遠ざかる等して基地局ＢＳａに対する電波強度が閾値以下となると、第１実施形態で既述したように、移動端末ＭＳは広告ウィンドウサイズを０としたＡＣＫセグメントをサービスノードＳＮへ送信する。このＡＣＫセグメントを含むＩＰパケットは中継ノードＴＮａにおいて取り出され、ＡＣＫ転送遅延時間だけ遅延される。広告ウィンドウサイズが０のＡＣＫセグメントが中継ノードＴＮａにおいてＡＣＫ転送遅延時間だけ遅延されている間にも、サービスノードＳＮから移動端末ＭＳへＴＣＰセグメントを含むＩＰパケットが送信されているが、当該ＩＰパケットは中継ノードＴＮａにおいて取り出され、バッファリングされる。また、広告ウィンドウサイズを０としたＡＣＫセグメントを含むＩＰパケットはＡＣＫ転送遅延時間だけ遅延された後に中継ノードＴＮａからサービスノードＳＮへ転送され、このＡＣＫセグメントを受信したサービスノードＳＮでは送信ウィンドウサイズが０となり、以後の送信が停止される。
【０１２８】
このような状況下で移動端末ＭＳが基地局ＢＳｂに近づく等して基地局ＢＳｂに対する電波強度が閾値を超えるとともに基地局ＢＳａから基地局ＢＳｂへのハンドオーバが行われると、当該ハンドオーバを示す移動通知が移動端末ＭＳから中継ノードＴＮｂへ送信される。この際、移動端末ＭＳとサービスノードＳＮとの間のＴＣＰコネクションは中継ノードＴＮｂを介したコネクションに変更される。
【０１２９】
次に、この移動通知を受信した中継ノードＴＮｂから中継ノードＴＮａへ当該移動通知を含む移動通知パケットが転送され、この移動通知パケットに対応したバッファデータ転送パケット（サービスノードＳＮから移動端末ＭＳへ送信され、中継ノードＴＮａにおいてバッファリングされたＩＰパケットをカプセル化したパケット）が中継ノードＴＮａから中継ノードＴＮｂへ転送される。
【０１３０】
中継ノードＴＮｂでは、中継ノードＴＮａから転送されてきたバッファデータ転送パケットが受信され、当該バッファデータ転送パケットから元のＩＰパケットが抽出される。抽出されたＩＰパケットは順次、移動端末ＭＳへ転送され、これに応答して移動端末からＡＣＫセグメントを含むＩＰパケットが返送される。当該ＩＰパケットの返送先はサービスノードＳＮであり、当該ＡＣＫセグメント内の広告ウィンドウサイズは０でないことから、当該ＩＰパケットは中継ノードＴＮａの関与を受けずに転送され、サービスノードＳＮに受信される。サービスノードＳＮでは当該ＡＣＫセグメント内の広告ウィンドウサイズに基づいた処理が行われ、以後、ＴＣＰセグメントの送信が再開される。
【０１３１】
なお、基地局ＭＳａから基地局ＭＳｂへのハンドオーバが行われずに電波強度が回復した場合には、移動端末ＭＳからのＡＣＫセグメント（広告ウィンドウサイズが０でないＡＣＫセグメント）の受信を契機として、中継ノードＴＮａから移動端末ＭＳへ、バッファリングされたＩＰパケットが転送される。もちろん、この際にはＴＣＰコネクションの経路は変更されない。なお、当該ＡＣＫセグメントはサービスノードＳＮへそのまま転送される。
【０１３２】
（６）第２実施形態に係る補足
以上、説明したように、本発明の第２実施形態によれば、第１実施形態と同様の効果を得られるのみならず、通信が完全に途絶するときの電波強度を結果的により低くすることができるとともに、電波強度が短時間だけ低くなるような状況下であればサービスノードに与える影響を小さくすることができる。これらのことから、本発明の第２実施形態によれば、通信スループットをより一層、増大させることができる。
なお、本発明の第２実施形態による移動通信システムにおいても、第１実施形態と同様の変形が可能である。
また、本発明の第２実施形態においては、中継ノードＴＮにおいて広告ウィンドウサイズが０のＡＣＫセグメントの転送を一定時間だけ遅らせるようにしたが、これに限定されるものではない。例えば、ＴＣＰコネクション上のデータ転送速度に応じた時間だけ遅らせるようにしてもよいし、電波強度が閾値を超えたときに未転送のＡＣＫセグメントが中継ノードＴＮ内に残留している場合には、当該ＡＣＫセグメントを中継ノードＴＮからサービスノードＳＮへ強制的に転送するようにしてもよい。
さらに、言うまでもないが、本発明は上述した態様に限定されるものではなく、様々な態様を含むものである。
【０１３３】
【発明の効果】
以上説明したように、本発明によれば、受信側におけるトランスポート層より下位の層のリンク（例えば無線リンク）に関する通信品質（例えば電波強度）に基づいて、トランスポート層のデータ転送において送信側で用いられるウィンドウの上限サイズが決定される。すなわち、ウィンドウの制御はトランスポート層の状況だけでなく、更に下位の層の状況をも加味して行われる。よって、より適切な上限サイズを設定することができる。例えば、送達確認状況に応じて送信装置のウィンドウサイズが変動するデータ転送においては、下位の層のリンクの通信品質が劣化した場合に上限サイズを小さくすれば、パケットロスが発生し易い環境下でのデータの送信を抑制し、ウィンドウサイズが小さくなり過ぎてしまう事態を避けることができる。
【０１３４】
また、受信装置において、下位の層の通信品質の劣化時には受信データが保存され、下位の層の通信品質の回復時に当該受信データに対応した送達確認データが送信装置へ送信される。すなわち、消失する可能性が高かった送達確認データを確実に返信することができる。これは送達確認状況に応じて送信装置のウィンドウサイズが変動するデータ転送において重要な効果である。
【０１３５】
このように、本発明では、送信装置において用いられるウィンドウサイズを小さくなり過ぎてしまう事態を避けることができるが、このことは、特に、スロースタート等の機能を備えた通信プロトコルでのデータ転送をワイヤレス通信路経由で行う場合に顕著な効果をもたらす。このような場合には、ウィンドウサイズの縮小は以降の通信において大幅なスループットの低下を長期間にわたって招くが、本発明によればウィンドウサイズの縮小が抑制されるため、このような問題を回避することができる。
【０１３６】
さらに加えて、本発明によれば、中継装置において、受信装置から送信装置へ送信された送達確認データ中の上限サイズの値が小さい場合には、この送達確認データの送信装置への転送が遅らされるとともに送信装置から受信装置へのデータが一時退避され、この状況下で大きな上限サイズを含む送達確認データが受信装置から送信装置へ送信されると、一時退避されたデータが受信装置へ転送される。すなわち、通信が完全に途絶するときの通信品質を結果的により低くすることができるとともに、通信品質が短時間だけ劣化するような状況下であれば送信装置からの送信に与える影響を小さくすることができる。よって、通信スループットのより一層の増大を図ることができる。
【図面の簡単な説明】
【図１】  ＴＣＰにおけるデータ転送単位であるセグメントの構成を示す概念図である。
【図２】  スライディングウィンドウ方式による通信イメージを示す概念図である。
【図３】  従来の移動端末ＭとサービスノードＳＮ間のデータ通信における通信プロトコル構成を示す概念図である。
【図４】  同移動端末Ｍが実行するＴＣＰ通信制御処理の流れを示すフローチャートである。
【図５】  同移動端末Ｍが実行するＴＣＰ広告ウィンドウ制御処理の流れを示すフローチャートである。
【図６】  同移動端末Ｍと基地局間のデータ通信に関与しない無線データリンク通信制御に係る機能構成を示すブロック図である。
【図７】  本発明の第１実施形態に係る移動端末ＭＳを用いた移動通信システムの構成例を示す概念図である。
【図８】  同移動端末ＭＳのハードウェア構成を示すブロック図である。
【図９】  同移動端末ＭＳにおけるＴＣＰ広告ウィンドウ制御に係る機能構成を示すブロック図である。
【図１０】  同移動端末ＭＳが実行するＴＣＰ通信制御処理の流れを示すフローチャートである。
【図１１】  同移動端末ＭＳが実行するＴＣＰ広告ウィンドウ制御処理の流れを示すフローチャートである。
【図１２】  同移動端末ＭＳが実行する定期処理の流れを示すフローチャートである。
【図１３】  同移動通信システムにおける移動端末ＭＳとサービスノードＳＮとの間のやり取りの一例を示す概念図である。
【図１４】  本発明の第２実施形態に係る中継ノードＴＮを用いた移動通信システムの構成例を示す概念図である。
【図１５】  中継ノードＴＮのハードウェア構成を示すブロック図である。
【図１６】  中継ノードＴＮにおける中継制御に係る機能構成を示すブロック図である。
【図１７】  移動通知パケットおよびバッファデータ転送パケットの構成の一部を示す図である。
【図１８】  中継ノードＴＮが実行するＡＣＫ対応処理の流れを示すフローチャートである。
【図１９】  中継ノードＴＮが実行する遅延中継処理の流れを示すフローチャートである。
【図２０】  中継ノードＴＮが実行する移動対応送信処理の流れを示すフローチャートである。
【図２１】  中継ノードＴＮが実行する移動対応受信処理の流れを示すフローチャートである。
【図２２】  同中継ノードＴＮを用いた移動通信システムにおけるデータ転送の流れの一例を示す概念図である。
【符号の説明】
１                    無線部
２，４                制御部
３                    通信部
２１，４１            ＣＰＵ
２２                  更新不可記憶部
２３                  更新可能記憶部
２４，４５            タイマ
４２                  不揮発性メモリ
４３                  ワークメモリ
４４                  バッファ
ＡＳＳ                ＡＣＫ保存パケット
ＢＳ，ＢＳ１，ＢＳａ，ＢＳｂ      基地局
ＢＳ１１，Ｍ３２      ビーコンフレーム処理部
ＢＳ１２，Ｍ３５      同期処理部
ＧＮ                  広域ネットワーク
Ｌ                    基地局リスト
ＬＮ，ＬＮａ，ＬＮｂ  地域ネットワーク
Ｍ，ＭＳ              移動端末
Ｍ１，ＭＳ１，ＳＮ１  トランスポートプロトコル処理部
Ｍ２，ＳＮ２          ネットワークプロトコル処理部
Ｍ３，ＳＮ３          無線データリンク処理部
Ｍ１１，ＭＳ１１      ＴＣＰセグメント受信処理部
Ｍ１２，ＭＳ１２      広告ウィンドウサイズ決定部
Ｍ１３，ＭＳ１３      ＡＣＫ送信処理部
Ｍ２１，ＳＮ２１      ＩＰプロトコル処理部
Ｍ３１，ＳＮ３１      ワイヤレスリンクデータ処理部
Ｍ３３                基地局リスト更新処理部
Ｍ３４                最適基地局処理部
ＭＳ２                ワイヤレスリンク用ＴＣＰ広告ウィンドウ制御処理部
ＭＳ２１              電波強度検査処理部
ＭＳ２２              受信セグメント保存処理部
ＭＳ２３              ＡＣＫ情報指定部
ＭＳ２４              広告ウィンドウサイズ指定部
ＭＳ２５              タイマ処理部
ＮＷ                  ネットワーク
ＳＮ                  サービスノード
ＳＮ１１              ＴＣＰセグメント送信処理部
ＳＮ１２              ＡＣＫセグメント受信処理部
ＳＮ１３              ウィンドウ更新部
ＳＳ                  保存パケット
ＴＮ，ＴＮａ，ＴＮｂ  中継ノード
ＴＮ１                ＩＰプロトコル処理部
ＴＮ２                移動通知受信処理部
ＴＮ３                ＴＣＰバッファ
ＴＮ４                取り出し条件検査部
ＴＮ５                ＡＣＫ受信処理部
ＴＮ６                ＡＣＫ転送処理部
ＴＮ７                ＴＣＰ受信処理部
ＴＮ８                ＴＣＰ送信処理部
ＴＮ９                移動前バッファ転送部
ＴＮ１０              移動先バッファ受信部
【図１】
0003797538.tif 000002
【図２】
0003797538.tif 000003
【図３】
0003797538.tif 000004
【図４】
0003797538.tif 000005
【図５】
0003797538.tif 000006
【図６】
0003797538.tif 000007
【図７】
0003797538.tif 000008
【図８】
0003797538.tif 000009
【図９】
0003797538.tif 000010
【図１０】
0003797538.tif 000011
【図１１】
0003797538.tif 000012
【図１２】
0003797538.tif 000013
【図１３】
0003797538.tif 000014
【図１４】
0003797538.tif 000015
【図１５】
0003797538.tif 000016
【図１６】
0003797538.tif 000017
【図１７】
0003797538.tif 000018
【図１８】
0003797538.tif 000019
【図１９】
0003797538.tif 000020
【図２０】
0003797538.tif 000021
【図２１】
0003797538.tif 000022
【図２２】
0003797538.tif 000023