JP3797538B2 - ウィンドウ制御方法、受信装置、中継制御方法、及び中継装置 - Google Patents
ウィンドウ制御方法、受信装置、中継制御方法、及び中継装置 Download PDFInfo
- Publication number
- JP3797538B2 JP3797538B2 JP2000231706A JP2000231706A JP3797538B2 JP 3797538 B2 JP3797538 B2 JP 3797538B2 JP 2000231706 A JP2000231706 A JP 2000231706A JP 2000231706 A JP2000231706 A JP 2000231706A JP 3797538 B2 JP3797538 B2 JP 3797538B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- unit
- processing unit
- segment
- relay
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Communication Control (AREA)
- Mobile Radio Communication Systems (AREA)
- Computer And Data Communications (AREA)
Description
【発明の属する技術分野】
本発明は送信装置が受信装置へウィンドウを用いてデータを送信するデータ転送方法と、当該ウィンドウを制御するウィンドウ制御方法および受信装置と、送信装置と受信装置との間でデータを中継する中継装置と、当該中継装置における中継制御方法とに関する。
【0002】
【従来の技術】
従来より、コンピュータネットワークにおける業界標準の通信プロトコルとしてTCP/IP(Transmission Control Protocol / Internet Protocol)が普及している。このTCP/IPは、ネットワーク層の通信プロトコルであるIPの上位にトランスポート層の通信プロトコルであるTCPを搭載した2層構成となっている。
【0003】
TCPは送信端ノードのソケット(IPアドレス及びポート番号)と受信端ノードのソケットとの組み合わせで識別されるコネクションを設定し、上位のアプリケーション層のユーザーに対して全二重/双方向のストリームサービスを提供する。上記コネクションにおけるデータ転送単位はセグメントであり、その構成は図1に示す通りである。
【0004】
図1のTCPヘッダフィールドにおいて、“シーケンス番号”は送信データストリーム内での自セグメントのオクテット位置を示す情報である。また、“確認応答番号”は送信データストリーム内で次に受信するデータのオクテット位置(受信済みの最上位オクテットの次のオクテット)を示す情報であり、後述のACKフラグとともに用いられる。さらに、“ウィンドウ”はセグメント転送時のウィンドウサイズ(送受信バッファのサイズ)を指定する情報である。また、“コードビット”は自セグメントのタイプを示す情報であり、自セグメントはオンに設定されたフラグに応じたタイプとして取り扱われる。なお、URGフラグは緊急セグメント、ACKフラグは確認セグメント(以後、ACKセグメント)、PSHフラグは転送強制セグメント、RSTフラグはリセットセグメント、SYNフラグは同期セグメント、FINフラグは転送終了セグメントに対応している。なお、通常のデータセグメントでは全フラグがオフとなる。
【0005】
上述したようにセグメントには“ウィンドウ”が含まれており、TCPではウィンドウサイズに基づいたデータ転送が行われる。すなわち、TCPでは可変サイズのウィンドウを用いたフロー制御が行われている。また、このフロー制御においては、この可変サイズのウィンドウをスライディングウィンドウ方式で使用している。
【0006】
スライディングウィンドウ方式では、受信端ノードからの確認応答(ACKセグメント)が無くてもウィンドウ内のデータが続けて送信され、確認応答がある毎に、受信が確認されたデータ数だけ、このウィンドウがスライドされる。例えば、図2に示す例では、ウィンドウ内の“1”〜“5”の5個のデータセグメントが順に送信され、“2”のデータセグメントに対するACKセグメントが返送されてくると、ウィンドウWがスライドされ、後続の“6”および“7”のデータセグメントがウィンドウW内に入ってくる。
【0007】
ところで、送信端ノードでは、広告ウィンドウサイズと輻輳ウィンドウサイズとの小さい方を最終的なウィンドウサイズとして採用し、このサイズの送信ウィンドウを用いてセグメントの送信を行う。なお、広告ウィンドウは受信端ノードのバッファ容量やデータ処理能力等に基づいて受信端ノードにおいて設定されるウィンドウであり、そのサイズは受信端ノードから送信端ノードへ通知される。
【0008】
輻輳ウィンドウは輻輳を回避するために送信端ノードにおいて設定されるウィンドウであり、そのサイズは送信したデータセグメントに対する確認応答の受け取り状況に応じて算出される。輻輳ウィンドウサイズの代表的な算出アルゴリズムでは、輻輳ウィンドウサイズを1セグメント分から始め、受信端ノードから確認応答を正常に受け取っている間はラウンドトリップタイム(送信端ノードがデータセグメントを送信してから当該セグメントに対する確認応答を受け取るまでの経過時間)毎に2倍し、送信後のタイムアウト時間内に確認応答を受け取ることができなかった場合(再送が行われる場合)には0.5倍する。ただし、輻輳ウィンドウサイズが設定されたスレッシュホールド値以上の場合にはラウンドトリップタイム毎の輻輳ウィンドウの増加量は1セグメント分となる。スレッシュホールド値は輻輳回避処理の開始点を示す値であり、受信端ノードから確認応答を正常に受け取っている間は徐々に大きくなり、送信後のタイムアウト時間内に確認応答を受け取ることができなかった場合に引き下げられる。
このように、輻輳ウィンドウサイズの初期値を小さな値とし、そこから徐々に大きくする方法は“スロースタート”と呼ばれており、TCPにおける輻輳回避の重要な要素の一つとなっている。
【0009】
ところで、近年、LAN(Local Area Network)やインターネット上のサービスノードへのアクセスにおいて通信路の無線化が進行しており、TCP/IPに対応した各種の移動端末が開発・商品化されている。ここで、サービスノードSNから移動端末MへTCPセグメント(TCPのデータセグメント)を転送する手順とその際に必須となる機能構成について図3を参照して説明する。
【0010】
図3に示すように、移動端末Mはトランスポート層の通信プロトコルを処理するためのトランスポートプロトコル処理部M1と、ネットワーク層の通信プロトコルを処理するためのネットワークプロトコル処理部M2と、無線データリンク層の通信プロトコルを処理するための無線データリンク処理部M3とを備えており、これらに対応して、サービスノードSNはトランスポートプロトコル処理部SN1と、ネットワークプロトコル処理部SN2と、無線データリンク処理部SN3とを備えている。
【0011】
また、サービスノードSNから移動端末MへのTCPセグメントの転送に必須の機能要素として、トランスポートプロトコル処理部M1にはTCPセグメント受信処理部M11、広告ウィンドウサイズ決定部M12、及びACK送信処理部M13が、トランスポートプロトコル処理部SN1にはTCPセグメント送信処理部SN11、ACKセグメント受信処理部SN12、及びウィンドウ更新部SN13が設けられている。また、ネットワークプロトコル処理部M2,SN2にはそれぞれIPプロトコル処理部M21,SN21が、無線データリンク処理部M3,SN3にはそれぞれワイヤレスリンクデータ処理部M31,SN31が設けられており、これらの機能要素が、サービスノードSNから移動端末MへのTCPセグメントの転送に係る処理を各層において実現する。
【0012】
サービスノードSNにおいて、トランスポートプロトコル処理部SN1のTCPセグメント送信処理部SN11から下位のネットワークプロトコル処理部SN2へTCPセグメントが渡されると、IPプロトコル処理部SN21において当該TCPセグメントを用いたIPパケットが生成され、当該IPパケットが下位の無線データリンク処理部SN3へ渡されると、ワイヤレスリンクデータ処理部SN31において当該IPパケットを用いたフレームが生成され、当該フレームが図示せぬ物理層での処理を経てネットワークへ転送される。
【0013】
一方、移動端末Mにおいて、無線データリンク処理部SN3のワイヤレスリンクデータ処理部M31がネットワークから自端末宛てのフレームを物理層の処理を経て受信し、当該フレームからIPパケットを復元して上位のネットワークプロトコル処理部M2へ渡すと、IPプロトコル処理部M21において当該IPパケットを用いてTCPセグメントが復元される。
【0014】
さらに、当該TCPセグメントはトランスポートプロトコル処理部M1へ渡され、TCPセグメント受信処理部M11により受信される。さらに、トランスポートプロトコル処理部M1では、上位のアプリケーション層との共有バッファ(図示略)に受信セグメント(ここではTCPセグメント受信処理部M11により受信されたTCPセグメント)を記憶させて上位のアプリケーション層の使用に供する処理と、広告ウィンドウサイズ決定部M12が広告ウィンドウサイズを計算する処理が行われる。また、ACK送信処理部M13では受信セグメントに対応したACKセグメントが作成され、下位のネットワークプロトコル処理部M2へ渡される。この際、当該ACKセグメントのウインドウフィールドには広告ウィンドウサイズ決定部M12により算出された広告ウィンドウサイズが指定される。以降、上述と逆順の処理が行われ、当該ACKセグメントはサービスノードSNのトランスポートプロトコル処理部M1へ渡され、ACKセグメント受信処理部SN12により受信される。
【0015】
また、トランスポートプロトコル処理部M1では、ウィンドウ更新部SN13により、当該ACKセグメントにおいて指定されている移動端末Mの広告ウィンドウサイズが保持され、この広告ウィンドウサイズと移動端末Mに対して計算された輻輳ウィンドウサイズとの最小値に基づいて確認応答なしに転送可能なTCPセグメント(すなわち送信ウィンドウサイズ)が決定される。ここで決定されたTCPセグメントは上述の転送手順に従って移動端末Mへ転送されることになる。
【0016】
次に、移動端末Mが行うTCPの通信制御処理の流れについて図4を参照して説明する。この図に示すように、移動端末Mの図示せぬ電源が投入されると(あるいはTCP/IPに従った通信を実現するための通信プロセスが起動されると)、移動端末MはTCPの通信制御に関してイベント待ち状態となる(ステップSA1)。この状況下で上位のアプリケーション層からOPENコマンドが渡されると(ステップSA2)、移動端末MはOPENコマンドにより指定された通信相手(ここではサービスノードSN)との間で3ウェイハンドシェークによるネゴシエーションを行ってコネクションを確立し(ステップSA3)、イベント待ちに戻る。
【0017】
イベント待ちにおいて上位のアプリケーション層からCLOSEコマンドが渡されると(ステップSA4)、CLOSEコマンドにより指定されたコネクションが存在する場合には当該コネクションを解放するためのTCP通信終了処理を行い(ステップSA5,SA6)、イベント待ちに戻る。逆に、CLOSEコマンドにより指定されたコネクションが存在しない場合には移動端末Mは何もせずにイベント待ちに戻る(ステップSA5)。
【0018】
イベント待ち処理において、上記以外のイベントが発生した場合には、移動端末Mはイベントに応じた処理を行う。例えば、通信相手からTCPセグメントが転送されてきた場合には、図5に示すTCP広告ウィンドウ制御処理を行う。このTCP広告ウィンドウ制御処理は前述したトランスポートプロトコル処理部M1による受信、計算、及び送信処理そのものであり(ステップSB1〜SB3)、この一連の処理の後に移動端末Mはイベント待ち状態に戻る。
【0019】
また、移動端末Mは図3に示す機能構成の他に、図6に示す無線データリンクの通信制御を行うための機能構成を備えている。なお、図6には移動端末Mの無線データリンク処理部M3の無線データリンク通信制御に係る機能構成と、当該移動端末Mと通信する基地局(図示略)に設けられている無線データリンク処理部BS1の無線データリンク通信制御に係る機能構成とが示されている。
【0020】
この図に示すように、基地局の無線データリンク処理部BS1には、基地局IDを含むビーコンフレームを移動端末Mへ送信するビーコンフレーム処理部BS11と、移動端末Mとの間で同期処理を行う同期処理部BS12とが設けられている。また、移動端末Mの無線データリンク処理部M3にはビーコンフレーム処理部BS11に対応したビーコンフレーム処理部M32と、同期処理部BS12に対応した同期処理部M35と、近隣の基地局に対する情報を格納した基地局リストLを有する基地局リスト更新処理部M33、基地局リストLに基づいて最適な基地局を選択する最適BS処理部M34が設けられている。
【0021】
上記構成の無線データリンク処理部M3では、ビーコンフレーム処理部M32が基地局から送信されたビーコンフレームを受信すると、基地局リスト更新処理部M33が当該ビーコンフレーム内に設定されている基地局IDや電波強度などの情報を用いて基地局リストLを変更する。この変更処理には、情報の追加、変更、及び削除が含まれている。また、最適基地局処理部M34では、基地局リストLに基づいて最適基地局が選択され、ここで選択された最適基地局に対して、同期処理部M35が同期処理を行う。
【0022】
【発明が解決しようとする課題】
ところで、ワイヤレス通信環境では、移動端末の移動やフェージング、電波障害などの様々な要因によって基地局からの電波強度が変化する。したがって、TCP/IPに従ってサービスノードから移動端末へTCPセグメントを転送する場合、イーサネットなど有線のネットワーク環境に比較してセグメントが消失しやすい。
【0023】
前述したように、サービスノードから移動端末へのTCPセグメントが消失すると、サービスノードにおいて確認応答のタイムアウトが生じ、タイムアウトしたTCPセグメントが再送されるとともに、輻輳ウィンドウサイズやスレッシュホールド値が小さくなる。したがって、TCP/IPに対応した移動端末では輻輳ウィンドウサイズやスレッシュホールド値が小さくなり、スループットが一時的に低下する可能性が高い、といえる。
【0024】
また、TCPではスロースタートが採用されていることから、一旦、輻輳ウィンドウサイズやスレッシュホールド値が小さくなってしまうと、通信スループットが回復するまでにはある程度の時間がかかってしまう。もちろん、ワイヤレス通信環境における通信スループットも電波強度の回復に応じて回復するが、ワイヤレス通信環境は有線の通信環境に比較して狭帯域高遅延となるのが普通であることから、小さくなってしまった輻輳ウィンドウサイズやスレッシュホールド値が回復するまでには長時間を要する。
【0025】
このように、TCPに従った通信における従来のウィンドウ制御方法では、狭帯域または高遅延の通信環境において通信効率が低くなってしまうという問題がある。この問題は、特にワイヤレス通信環境を前提とする移動端末を用いた場合に顕著である。
【0026】
本発明は上述した事情に鑑みて為されたものであり、送信装置が受信装置へウィンドウを用いてデータを送信するデータ転送において、ワイヤレス通信環境のような狭帯域または高遅延あるいは狭帯域高遅延の通信環境であっても高い通信効率を維持することができるデータ転送方法、ウィンドウ制御方法、受信装置、中継制御方法及び中継装置を提供することを目的としている。
【0027】
【課題を解決するための手段】
上述した課題を解決するために、請求項1に記載のウィンドウ制御方法は、通知された上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置から送信されたトランスポート層のデータを受信する受信装置におけるウィンドウ制御方法において、トランスポート層より下位の層のリンクに関する通信品質が予め設定された基準を満たさない期間において、前記送信装置から送信されたトランスポート層のデータを受信した場合には該データを保存する保存ステップと、前記通信品質が予め設定された基準を満たさない期間の終了を検出し、この検出後に前記保存ステップにて保存された前記データの送達を示す情報を前記送信装置へ送信する確認応答ステップとを有することを特徴としている。
【0031】
さらに、請求項1に記載のウィンドウ制御方法において、前記通信品質を定期的に取得して前記期間の終了を検出するようにしてもよい(請求項2)。
【0032】
また、請求項1または2のいずれかに記載のウィンドウ制御方法において、前記受信装置は移動無線端末であり、前記リンクは無線リンクであり、前記通信品質は電波強度であるとしてもよい(請求項3)。
【0036】
また、上記課題を解決するために、請求項4に記載の受信装置は、受信した上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置から送信されたトランスポート層のデータを受信して該データに対応した送達確認データを返信する受信装置において、トランスポート層より下位の層のリンクに関する通信品質を取得する通信品質取得部と、前記通信品質取得部により取得された通信品質と予め設定された基準とに基づいて、通信品質が予め設定された基準を満たさない期間内であるか否かを判定する劣化期間判定部と、前記劣化期間判定部により前記期間内であると判定された期間において前記送信装置から送信されたトランスポート層のデータを受信した場合には該データを保存する保存送達確認処理部と、前記通信品質取得部により取得された通信品質と予め設定された基準とに基づいて、前記通信品質が予め設定された基準を満たす期間の開始を検出する回復検出部とを具備し、前記保存送達確認処理部は更に、前記回復検出部により前記期間の開始が検出されると前記保存したデータに応じた送達確認データを前記送信装置へ送信することを特徴としている。
【0037】
また、 請求項4に記載の受信装置において、前記通信品質取得部を制御して定期的に前記通信品質を取得させる取得契機制御部を設けてもよい(請求項5)。
【0038】
さらに、請求項4または5のいずれかに記載の受信装置において、前記送信装置から送信されたトランスポート層のデータを無線通信網経由で受信する無線通信部を具備し、 前記リンクは無線リンクであり、前記通信品質は該無線リンクにおける電波強度であるとしてもよい(請求項6)。
【0039】
また、請求項6に記載の受信装置において、前記無線リンクの電波強度を表す情報を記憶した電波強度記憶部と、前記無線リンクの電波強度を常に監視し、この監視結果に応じて前記電波強度記憶部に記憶された情報を逐次更新する電波強度監視部とを具備し、前記通信品質取得部は前記電波強度記憶部から前記情報を読み出すことで前記リンクの電波強度を取得するようにしてもよい(請求項7)。
【0041】
また、上記課題を解決するために、請求項8に記載の中継制御方法は、受信した上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置と該送信装置から送信されたトランスポート層のデータを受信するとともにトランスポート層より下位の層のリンクに関する通信品質に基づいた上限サイズを前記トランスポート層のデータへの送達確認データに含めて返送する受信装置との間でデータを転送する中継装置における中継制御方法において、前記受信装置から前記送信装置へ送信された送達確認データ中の上限サイズの値が小さい場合には該送達確認データの該送信装置への転送を遅らせるとともに該送信装置から前記受信装置へのデータを一時退避し、この状況下で大きな上限サイズを含む送達確認データが該受信装置から該送信装置へ送信された場合には一時退避されたデータを該受信装置へ転送することを特徴としている。
【0042】
また、請求項8に記載の中継制御方法において、前記受信装置は移動無線端末であり、前記リンクは無線リンクであり、前記通信品質は電波強度であり、前記受信装置が他の中継装置の配下に移動した場合には一時退避されたデータを該他の中継装置へ転送し、他の中継装置から転送されてくるデータを受信し前記受信装置へ転送するようにしてもよい(請求項9)。
【0043】
また、請求項8または9に記載の中継制御方法において、前記受信装置から前記送信装置へ送信された送達確認データ中の上限サイズが小さい場合には該送達確認データの前記送信装置への転送を一定時間だけ遅らせるようにしてもよい(請求項10)。
【0044】
また、請求項10に記載の中継制御方法において、前記受信装置が他の中継装置の配下に移動した場合には一時退避されたデータを該他の中継装置へ転送するとともに転送が遅らされている未転送の送達確認データを前記送信装置へ転送するようにしてもよい(請求項11)。
【0045】
また、上記課題を解決するために、請求項12に記載の中継装置は、受信した上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置と該送信装置から送信されたトランスポート層のデータを受信するとともにトランスポート層より下位の層のリンクに関する通信品質に基づいた上限サイズを前記トランスポート層のデータへの送達確認データに含めて返送する受信装置との間でデータを転送する中継装置において、データを一時的に記憶する一時記憶部と、前記受信装置から前記送信装置へ送信された送達確認データから上限サイズを抽出する上限サイズ抽出部と、前記上限サイズ抽出部により抽出された上限サイズの大小を判定する検査部と、前記検査部により上限サイズが小さいと判定された場合には該上限サイズを含む送達確認データを遅延させてから前記送信装置へ転送する遅延処理部と、前記検査部により上限サイズが小さいと判定された場合には前記送信装置から前記受信装置へのデータを前記一時記憶部に記憶させる退避処理を開始する退避処理部と、前記退避処理が行われている環境下で前記検査部により上限サイズが大きいと判定された場合には、該退避処理の開始時から前記一時記憶部に記憶されたデータを前記受信装置へ転送するとともに、前記退避処理を終了させる回復処理部とを具備することを特徴としている。
【0046】
また、請求項12に記載の中継装置において、他の中継装置から転送されてくるデータを受信し前記受信装置へ転送する移動対応受信部を具備し、前記受信装置は移動無線端末であり、前記リンクは無線リンクであり、前記通信品質は電波強度であり、前記回復処理部は、前記退避処理が行われている環境下で前記受信装置が他の中継装置の配下に移動した場合には、該退避処理の開始時から前記一時記憶部に記憶されたデータを該他の中継装置へ転送するようにしてもよい(請求項13)。
【0047】
また、請求項12または13に記載の中継装置において、前記遅延処理部は前記検査部により上限サイズが小さいと判定された場合には該上限サイズを含む送達確認データを一定時間だけ遅延させてから前記送信装置へ転送するようにしてもよい(請求項14)。
【0048】
また、請求項14に記載の中継装置において、前記回復処理部は、前記退避処理が行われている環境下で前記受信装置が他の中継装置の配下に移動した場合には、該退避処理の開始時から前記一時記憶部に記憶されたデータを該他の中継装置へ転送するとともに転送が遅らされている未転送の送達確認データを前記送信装置へ転送するようにしてもよい(請求項15)。
【0049】
【発明の実施の形態】
以下、図面を参照して、本発明の実施形態について説明する。なお、各図において、TCPセグメントの転送に係る機能が共通している要素には同一の符号を付し、重複する説明を回避するものとする。
【0050】
<第1実施形態>
(1)第1実施形態に係るシステム構成
図7は本発明の第1実施形態に係る移動端末MSを用いた移動通信システムの構成例を示す概念図であり、この図における移動端末MSは無線通信路上でTCP/IPに従った通信を行うための通信機能を実装し、基地局BSとの間で無線データリンク層の通信を行うとともに、ネットワークNW及び基地局BSを介してサービスノードSNからTCPセグメントの転送を受ける。なお、ネットワークNWは移動パケット通信網やLAN、インターネット等のTCP/IPに対応したネットワークである。また、図示を略すが、ネットワークNWには複数の基地局BSが接続(あるいは収容)されており、移動端末MSは複数の基地局BSから最適な基地局BSを選択し、この基地局BSを介してTCPセグメントの転送を受ける。
【0051】
(2)移動端末MSのハードウェア構成
図8は移動端末MSのハードウェア構成を示すブロック図であり、この図において、1は基地局BSとの無線通信を行う無線部、2は無線部1を制御する制御部であり、無線部1との間でデータ授受を行う。制御部2は各種制御および演算を行うCPU(Central Processing Unit)21と、CPU21に読み出される各種プログラムやパラメータ(例えば閾値)等を更新不可能に記憶した更新不可記憶部22と、CPU21のワークエリアとして使用される更新可能記憶部23と、CPU21に制御され、CPU21により設定された時間間隔で割り込み信号を発生するタイマ24とを有する。後述する各種機能は、CPU21が更新不可記憶部22及び更新可能記憶部23の少なくとも一方に記憶された各種プログラムを実行することにより実現される。
【0052】
(3)移動端末MSの機能
(3−1)概要
基本的には、移動端末MSは基地局BS及びネットワークNWを介してサービスノードSNからTCPセグメントの転送を受ける際に、基地局BSに対応した電波強度が予め設定された閾値以下になった場合には受信したTCPセグメント(受信セグメント)を保存するとともに広告ウィンドウサイズを0としたACKセグメントをサーバノードSNへ送信し、電波強度が回復して閾値を超えた場合には保存されたTCPセグメントに基づいた通常の広告ウィンドウサイズのACKセグメントをサーバノードSNへ送信する。なお、本発明の実施形態において、受信セグメントの「保存」とは受信バッファ(あるいは共有バッファ)に記憶された受信セグメントを複製して所定の記憶領域に記憶させる処理を意味する。すなわち、受信セグメントは上位のアプリケーション層の使用に供されるとともに、その受信時の電波強度が予め設定された閾値以下の場合にはその複製データが所定の記憶領域に記憶される。
【0053】
すなわち、移動端末MSは、電波強度が弱すぎる場合にはパケットロスの虞があるからサービスノードSNからのTCPセグメントの送信を一時停止させ、電波強度が回復してから送信を再開させることで、サービスノードSNにおいてタイムアウトが発生する可能性が高いTCPセグメントの送信を抑制するように作動する。また、移動端末MSは、電波強度が弱くなって正常に送達されなかった虞のあるACKセグメントを電波強度の回復後に再送信することで、サービスノードSNにおけるタイムアウトの発生回数の削減を図っている。
【0054】
(3−2)具体的な機能
次に移動端末MSの具体的な機能について図9を参照して説明する。図9は移動端末MSにおけるTCP広告ウィンドウ制御に係る機能構成を示すブロック図であり、この図に示すように、移動端末MSはTCP広告ウィンドウ制御に関して、トランスポートプロトコル処理部MS1、ネットワークプロトコル処理部M2、無線データリンク処理部M3、及びワイヤレス用TCP広告ウィンドウ制御処理部MS2を有する。なお、ネットワークプロトコル処理部M2及び無線データリンク処理部M3の機能については前述の通りである。
【0055】
トランスポートプロトコル処理部MS1は図3のトランスポートプロトコル処理部M1が有する機能を全て含んでいる。すなわち、トランスポートプロトコル処理部MS1に含まれている各部MS11〜MS13はトランスポートプロトコル処理部M1内の対応する各部M11〜M13の機能を全て有する。各部MS11〜MS13が有する新機能については後述する。一方、ワイヤレスリンク用TCP広告ウィンドウ制御処理部MS2は、電波強度検査処理部MS21、受信セグメント保存処理部MS22、ACK情報指定部MS23、広告ウィンドウサイズ指定部MS24、及びタイマ処理部MS25を包含している。
【0056】
(3−2−1)トランスポートプロトコル処理部MS1の機能
トランスポートプロトコル処理部MS1のTCPセグメント受信処理部MS11が備えている新機能としては、TCPセグメントの受信時にその旨を電波強度検査処理部MS21へ通知する機能と、図示せぬ受信バッファに対する受信セグメント保存処理部MS22からのアクセスを許容する機能とが挙げられる。
【0057】
広告ウィンドウサイズ決定部MS12が備えている新機能としては、広告ウィンドウサイズ指定部MS24から広告ウィンドウサイズが指定されている場合には当該広告ウィンドウサイズを自端末の広告ウィンドウサイズとして採用する機能と、電波強度検査処理部MS21から後述の再開指示が与えられると広告ウィンドウサイズを通常の計算によって算出する機能が挙げられる。
【0058】
ACK送信処理部MS13が備えている新機能としては、ACK情報指定部MS23からACK情報が渡された場合には当該ACK情報に基づいてACKセグメントを生成し、当該ACKセグメントを、そのウインドウフィールドに広告ウィンドウサイズ決定部MS12が算出(採用)した広告ウィンドウサイズを指定した後にネットワークプロトコル処理部M2のIPプロトコル処理部M21へ渡す機能が挙げられる。
【0059】
(3−2−2)ワイヤレスリンク用TCP広告ウィンドウ制御処理部MS2の機能
電波強度検査処理部MS21は無線データリンク処理部M3内の基地局リストLから電波強度を取得するものであり、電波強度の取得の契機としては、TCPセグメント受信処理部MS11からの通知と、タイマ処理部MS25からの割り込み通知とが挙げられる。また、電波強度検査処理部MS21は取得された電波強度が予め設定された閾値以下か否かを判定し、閾値を超えている場合には再開指示を広告ウィンドウサイズ決定部MS12へ通知する。この再開指示は広告ウィンドウサイズを通常の計算により得る処理を再開する旨の指示である。また、電波強度検査処理部MS21は上記判定結果と契機の種別とを受信セグメント保存処理部MS22へ通知する。
【0060】
受信セグメント保存処理部MS22は、電波強度検査処理部MS21から情報の通知を受けると、この情報に応じた処理を行う。受信セグメント保存処理部MS22は、電波強度検査処理部MS21から電波強度が予め設定された閾値以下であることを示す情報を受けた場合には、その旨を広告ウィンドウサイズ決定部MS12へ通知する。また、電波強度検査処理部MS21からの情報が、TCPセグメントの受信を契機として得られた電波強度が閾値以下であることを表す場合には、受信セグメント保存処理部MS22はTCPセグメント受信処理部MS11の受信セグメントを受信バッファから読み出し、保存セグメントSSとして保存する。この際、保存セグメントSSが既に存在する場合には、その内容が入れ替えられることになる。
【0061】
また、電波強度検査処理部MS21からの情報が、割り込み通知を契機として得られた電波強度が閾値を超えていることを表す場合には、受信セグメント保存処理部MS22はその旨を広告ウィンドウサイズ決定部MS12へ通知するとともに、保存セグメントSSのヘッダフィールドから当該セグメントに対するACKセグメントを生成するために必要な情報(シーケンス番号や確認応答番号など)を読み出してACK情報指定部MS23に渡し、保存セグメントSSをクリアする(削除または消去する)。
【0062】
また、電波強度検査処理部MS21からの情報が、TCPセグメントの受信を契機として得られた電波強度が閾値を超えていること、及び割り込み通知を契機として得られた電波強度が閾値以下であることの何れかを表す場合には、受信セグメント保存処理部MS22は何もしない。
【0063】
ACK情報指定部MS23は受信セグメント保存処理部MS22から渡された情報をACK情報としてACK送信処理部MS13へ通知する。
【0064】
広告ウィンドウサイズ指定部MS24は、TCPセグメントの受信を契機として得られた電波強度が予め設定された閾値以下である旨の通知を受信セグメント保存処理部MS22から受けると、広告ウィンドウサイズ決定部MS12に対して最小の広告ウィンドウサイズ(本実施形態では0)を指定するとともに、タイマ処理部MS25に対してタイマの設定とその設定内容を指示する。なお、タイマの設定内容を示す情報としては電波強度検査処理部MS21へ定期的に通知を行う際の時間間隔などがある。当該時間間隔は予め設定されるものであり、その設定値は任意であるが、本実施形態では、数秒程度の設定値が採用されている。また、広告ウィンドウサイズ指定部MS24は、割り込み通知を契機として得られた電波強度が予め設定された閾値を超えている旨の通知を受信セグメント保存処理部MS22から受けると、タイマ処理部MS25に対してタイマの解除を指示する。
【0065】
タイマ処理部MS25は、広告ウィンドウサイズ指定部MS24からタイマの設定指示を受けると、この指示に従ってタイマを設定する。タイマが設定された状態のタイマ処理部MS25は、電波強度検査処理部MS21に対して、設定内容に従ったタイミング(本実施形態では数秒間隔)で割り込み通知を出す。また、タイマ処理部MS25は、広告ウィンドウサイズ指定部MS24からタイマの解除指示を受けると、この指示に従ってタイマを解除する。タイマが解除された状態のタイマ処理部MS25は何もしない。
【0066】
(4)移動端末MSのTCP通信制御動作
次に、上述した構成および機能の移動端末MSの動作について説明する。ただし、ここでは、制御部2のCPU21が更新不可記憶部22または更新可能記憶部23に記憶された各種プログラムを実行し、図9に示す機能が実現されているものとする。
【0067】
図10は移動端末MSが実行するTCP通信制御処理の流れを示すフローチャートであり、この図に示す流れが図4に示す流れと異なる点は、ステップSA7の処理に代えてステップSC3の処理が設けられた点と、ステップSC1,SC2の処理が新設された点である。
【0068】
図10に示すように、移動端末MSでは、イベント待ちにおいて発生したイベントが上位のアプリケーション層からのOPENコマンドやCLOSEコマンドの引き渡しではなく(ステップSA1,SA2,SA4)、タイマ処理部MS25からの割り込み通知の出力である場合、後述する定期処理が行われる(ステップSC1,SC2)。なお、定期処理の実行後、移動端末Mはイベント待ち状態に戻る。また、発生したイベントが上述のいずれのイベントでもない場合には、移動端末MSはイベントに応じた処理を行う(ステップSC3)。なお、ステップSC3の処理に含まれるTCP広告ウィンドウ制御処理(後述する)はステップSA7の処理に含まれる同処理と異なる。
【0069】
次に、上記TCP通信制御動作について、図10、図11、及び図12を参照して具体的に説明する。ただし、ここでは、移動端末MSと最適基地局BS間の電波状況は、最初は十分に高いレベルで安定し、次に徐々に悪化し、最後に急速に回復するものとする。
【0070】
通信相手からTCPセグメントが転送されてくると、図11のTCP広告ウィンドウ制御処理が行われる(ステップSC3)。TCP広告ウィンドウ制御処理では、まず、TCPセグメント受信処理部MS11によりTCPセグメントが受信され(ステップSD1)、受信の旨が電波強度検査処理部MS21へ通知される。この通知が契機となり、電波強度検査処理部MS21により、無線データリンク処理部M3内の基地局リストLから最適基地局BSに対応した電波強度が取得され(ステップSD2)、この電波強度が予め設定された閾値と比較される(ステップSD3)。
【0071】
移動端末MSと最適基地局BS間の電波状況は最初は十分に高いレベルで安定しているため、当該電波強度は予め設定された閾値を超えている。したがって、広告ウィンドウサイズは広告ウィンドウサイズ決定部MS12により通常の方法で計算され(ステップSD9)、算出された広告ウィンドウサイズがウィンドウフィールドに設定されたACKセグメントがACK送信処理部MS13によりネットワークプロトコル処理部M2のIPプロトコル処理部MS21に渡される(ステップSD10)。以後、移動端末MSは再びイベント待ち状態となる(図10のステップSA1)。TCPセグメントが連続して転送される場合には、電波状況が一定のレベル以下に悪化するまで、上述した処理が繰り返し行われる。
【0072】
電波状況が一定のレベル以下に悪化し、電波強度が閾値以下となった直後にTCPセグメントが転送されてくると、ステップSD3の判定結果が変わる。この結果、電波強度検査処理部MS21から情報の通知を受けた受信セグメント保存処理部MS22により、受信セグメントが保存セグメントSSとして一時的に保存される(ステップSD5)。また、受信セグメント保存処理部MS22からの情報を受けた広告ウィンドウサイズ指定部MS24により、タイマ設定部MS25においてはタイマが設定され、広告ウィンドウサイズ設定部MS12においては値が0の広告ウィンドウサイズが採用される(ステップSD7,SD8)。そして、この広告ウィンドウサイズ(すなわち0)がウィンドウフィールドに設定されたACKセグメントがACK送信処理部MS13によりIPプロトコル処理部MS21に渡される(ステップSD10)。以後、移動端末MSは再びイベント待ち状態となる。
【0073】
タイマが設定されると、タイマ処理部MS25から電波強度検査処理部MS21へ所定時間間隔(例えば数秒間隔)で割り込み通知が出される。イベント待ち状態において割り込み通知が出されると、移動端末MSは図12の定期処理を開始する(ステップSC1,SC2)。定期処理では、割り込み通知を受けた電波強度検査処理部MS21により、最適基地局BSに対応した電波強度が取得され(ステップSE1)、この電波強度が予め設定された閾値と比較される(ステップSE2)。ここでは電波強度は閾値以下であるため、以後、移動端末MSは再びイベント待ち状態となる。電波状況が回復して電波強度が閾値を超えるまで、上記処理が定期的に繰り返し行われる。
【0074】
また、この状況下でTCPセグメントが転送されてくると、保存セグメントSSが既に保存されていることから、受信セグメント保存処理部MS22により、当該TCPセグメントが保存セグメントSSとして保存される(ステップSD4,SD5)。すなわち、保存セグメントSSの内容が入れ替えられる。以降の処理は最初に保存セグメントSSを保存する場合の処理と同様であり、ステップSD7,SD8,SD10の処理後、移動端末MSは再びイベント待ち状態となる。
【0075】
ここで、電波状況が急速に回復し、電波強度が閾値を超えた状況下でタイマ処理部MS25から割り込み通知が出されると、図12のステップSE2の判定結果が変わる。この結果、電波強度検査処理部MS21から広告ウィンドウサイズ決定部MS12へ再開指示が渡され、広告ウィンドウサイズ決定部MS12では広告ウィンドウサイズが通常の方法にて計算される(ステップSE5)。また、電波強度検査処理部MS21から情報を受けた受信セグメント保存処理部MS22によって保存セグメントSSのヘッダフィールドから情報(シーケンス番号や確認応答番号など)が取得され、この情報に基づいたACK情報がACK情報指定部MS23からACK送信処理部MS13に渡される(ステップSE3)。また、受信セグメント保存処理部MS22から情報を受けた広告ウィンドウサイズ指定部MS24により、タイマ設定部MS25においてタイマが解除される(ステップSE4)。
【0076】
そして、保存セグメントSSに対するACKセグメントであって通常の計算により算出された広告ウィンドウサイズがウィンドウフィールドに指定されたACKセグメントがACK送信処理部MS13からIPプロトコル処理部MS21に渡される(ステップSE10)。また、この際、保存セグメントSSは受信セグメント保存処理部MS22によりクリアされる(ステップSE7)。したがって、次に受信セグメントを一時保存する際には、入れ替えではなく、新規保存となる。以後、移動端末MSは再びイベント待ち状態となる。なお、タイマは既に解除されているため、電波強度が閾値以下となってタイマが再び設定されない限り、定期処理が行われることはない。
【0077】
なお、電波状況が回復して電波強度が閾値を超えた場合にTCPセグメントが転送されてきた場合の動作は、電波状況が十分に高いレベルで安定している場合にTCPセグメントが転送されてきた場合の動作であり、前述の通りである。
【0078】
(5)第1実施形態に係る移動通信システムの動作
次に、移動端末MSを用いた移動通信システムの動作について、図13を参照して説明する。図13は当該移動通信システムにおける移動端末MSとサービスノードSNとの間のやり取りの一例を示す概念図であり、この図に示す一例は、移動端末MSの動作の説明で用いられた条件(移動端末MSと最適基地局BS間の電波状況は、最初は十分に高いレベルで安定し、次に徐々に悪化し、最後に急速に回復するという条件)と同一の条件下で得られたものである。
【0079】
この図において、サービスノードSN側に描かれたシーケンスはサービスノードSNから移動端末MSへ向けて送出されたTCPセグメントであり、移動端末MS側に描かれたシーケンスは移動端末MSにおいて受信されたTCPセグメントである。また、移動端末MS側には、保存セグメントSSの内容の変遷が上記シーケンスに対応付けて描かれている。また、1〜6の数字はセグメントの登場順序を示すものであり、各シーケンス及び変遷において、対応する部分には同一の番号が記載されている。なお、この図において、時間は時刻t1から時刻t6の方向へ経過しており、時刻t1以前と時刻t5以降は電波強度が閾値を超えている区間、時刻t1から時刻t5までの区間は電波強度が閾値以下である区間である。さらに、時刻t1から時刻t5までの区間では電波強度は徐々に弱くなっていく。
【0080】
時刻t1以前の電波強度が閾値を超えている状況下でサービスノードSNから1番目のTCPセグメントが送出されると、このTCPセグメントd1はある程度の時間だけ遅れて移動端末MSにおいて受信される。この遅れは通信路の遅延時間に起因した遅れであり、この図に示す例では、サービスノードSNにおける3番目のTCPセグメントd3の転送タイミングと移動端末MSにおける1番目のTCPセグメントの受信タイミングとが一致するような遅延時間が存在する。
【0081】
1番目のTCPセグメントd1を受信した移動端末MSは受信セグメントに対応したACKセグメントa1をサービスノードSNへ送出する。この時点は時刻t1以前であるため、このACKセグメントa1内のウィンドウフィールドに指定された広告ウィンドウサイズは通常の計算によって得られたサイズとなっており、このACKセグメントa1を受信したサービスノードSNでは、徐々に大きくなってきている輻輳ウィンドウサイズと広告ウィンドウサイズとの最小値が送信ウィンドウサイズとして決定される。
【0082】
移動端末MSにおける2番目のTCPセグメントd2の受信時点(時刻t2)は、電波強度が閾値以下となっている時刻t1〜時刻t5の区間内となる。したがって、移動端末MSにおいて、2番目のTCPセグメントd2が保存セグメントSSとして一時的に保存される。また、2番目のTCPセグメントd2に対応して移動端末MSからサービスノードSNへ送出されるACKセグメントa2内のウィンドウフィールドには0が指定される。したがって、このACKセグメントa2を受信したサービスノードSNでは、送信ウィンドウサイズが0となり、以降のTCPパケットの転送が停止される。
【0083】
ただし、ACKセグメントa2がサービスノードSNに受信されるのは、5番目のTCPセグメントd5が送出された後であることから、サービスノードSNから移動端末MSへ3番目のTCPセグメントd3、4番目のTCPセグメントd4、5番目のTCPセグメントd5が順に送出されることになる。ここでは、これらのTCPセグメントのうち、3番目のTCPセグメントd3及び4番目のTCPセグメントd4が移動端末MSにおいて受信され、5番目のTCPセグメントd5については電波強度が著しく弱くなったために無線区間で消失するものとする。
【0084】
移動端末MSでは、3番目のTCPセグメントd3及び4番目のTCPセグメントd4の受信タイミング(時刻t3,t4)で、保存セグメントSSの内容が最新の受信セグメントに入れ替えられるとともに、それぞれウィンドウフィールドに0が指定されたACKセグメントa3,a4がサービスノードSNへ送出される。ただし、これらのACKセグメントa3,a4は、5番目のTCPセグメントd5と同様の理由で消失するものとする。
【0085】
この結果、時刻t5までにサービスノードSNにおいて受信されたACKセグメントは1番目のTCPセグメントd1に対応したものと、2番目のTCPセグメントd2に対応したものだけとなる。なお、5番目のTCPセグメントd5の送出後、サービスノードSNからのTCPセグメントの送出は停止している。時刻t5において電波状況が回復して電波強度が閾値を超えると、このことが移動端末MSにより検出され、時刻t6において、保存セグメントSS(4番目のTCPセグメントd4)に対応したACKセグメントa4が移動端末MSから送出される。このACKセグメントa4内のウィンドウフィールドに指定された広告ウィンドウサイズは通常の計算によって得られたサイズとなっている。
【0086】
サービスノードSNにおいて4番目のTCPセグメントd4のタイムアウト前にACKセグメントa4が受信され、かつ3番目のTCPセグメントがタイムアウトしていないとすると、この時点でタイムアウトしているTCPセグメントは存在しない。したがって、サービスノードSNの送信ウィンドウサイズは転送を停止する以前の送信ウィンドウサイズより小さくなることはない。
【0087】
3番目のTCPセグメントがタイムアウトしていないため、サービスノードSNから移動端末MSへ6番目のTCPセグメントd6が送出され、さらに7番目のセグメントd7が送出される。この時点までに3番目のTCPセグメントd3がタイムアウトすると、次に、当該TCPセグメントが再送される。
【0088】
(6)第1実施形態に係る補足
以上、説明したように、本発明の第1実施形態によれば、移動端末MSが基地局BSから離れる等の要因により電波強度が弱くなるとTCP通信がー時的に中断されるため、パケットロスに起因した幅榛ウィンドウサイズの縮小、及びスレッシュホールドの低下を回避することができる。さらに、電波強度が強くなると、通常の方法によって広告ウィンドウサイズが計算されるため、迅速に通信スループットを回復することができる。これらのことから、上記実施形態では通信スループットの大幅な増大が達成されている。
【0089】
また、本実施形態では、移動端末MSにおいて電波強度が弱くなったときに受信したTCPセグメントを保存セグメントSSとして保存し、電波強度の回復時に当該保存セグメントSSに対応したACKセグメントをサービスノードSNへ送信するようにしている。これにより、パケットロスに起因した幅榛ウィンドウサイズの縮小、及びスレッシュホールドの低下をより確実に回避することができる。なお、広告ウィンドウサイズの通知手段として既存方式と同様にACKセグメントを用いるようにしたため、既存のサービスノードSNをそのまま使用できるという利点もある。
【0090】
なお、上述した実施形態では保存セグメントSSの数を1としたが、複数とし、電波強度の回復後に複数の保存セグメントに対応した複数のACKセグメントを送出するようにしてもよい。また、サービスノードSNにおけるタイムアウト時間とサービスノードSNとの間のラウンドトリップタイムとに基づいてタイムアウトを回避可能な保存セグメントのみを電波強度の回復後にサービスノードSNへ返信するようにしてもよい。
【0091】
また、本実施形態では特に触れていないが、移動端末MSの工場出荷時に閾値を設定するようにしてもよいし、使用者が設定できるようにしてもよい。さらに、移動端末MSはTCP/IPに対応した無線通信装置であればよく、例えば、単体の携帯電話機であってもよいし、無線通信機能を備えたPDAであってもよい。もちろん、有線の固定端末を受信装置として用いることも可能である。また、電波強度が弱い期間における広告ウィンドウサイズは0に限定されるものではなく、要求仕様に応じて適宜設定すべきものである。
【0092】
さらに、一時点の電波強度に基づいて各種判断を行うようにしたが、電波強度の変遷に基づいて近い将来の電波強度を予測して各種判断を行うようにしてもよい。例えば、閾値を超えた電波強度が所定時間(あるいは所定回数)だけ連続して維持された場合にのみTCP通信を再開するようにしてもよい。もちろん、電波強度が回復した旨を使用者が指示し、この指示に従ってTCP通信を再開するようにしてもよい。
【0093】
また、本実施形態ではTCPでのデータ転送を前提とし、広告ウィンドウサイズを変えてサービスノードSNの送信ウィンドウサイズを変える例を示したが、本発明を他の通信プロトコルに従ったデータ転送に適用する場合には、適用先の通信プロトコルに適合した他の手法を採用することも考えられる。なお、スライディングウィンドウ方式はTCPのみならず、HDLC(High level DataLink Control)、パケット交換などでも採用されている。
【0094】
<第2実施形態>
(1)第2実施形態に係るシステム構成
図14は本発明の第2実施形態に係る中継ノードTNを用いた移動通信システムの構成例を示す概念図であり、この図に示す移動通信システムが図7に示す移動通信システムと大きく異なる点は、基地局BSとサービスノードSNとがネットワークNWではなく、中継ノードTNを介して接続されている点である。なお、基地局BSaと基地局BSbは基地局BSと同一機能を有する基地局であり、両者を区別しない場合には単に基地局BSと記す。また、中継ノードTNaと中継ノードTNbは同一機能を有する中継ノードであり、以後、両者を区別しない場合には単に中継ノードTNと記す。
【0095】
基地局BSaは比較的に狭い範囲をカバーする地域ネットワークLNaを介して中継ノードTNaに接続されており、基地局BSbは地域ネットワークLNbを介して中継ノードTNbに接続されている。さらに、各中継ノードTNa,TNbは比較的に広い範囲をカバーする広域ネットワークGNを介してサービスノードSNに接続されている。すなわち、中継ノードTNa配下の基地局(例えば基地局BSa)に収容されている移動端末MSは、当該基地局、地域ネットワークLNa、中継ノードTNa、及び広域ネットワークGNを介して、サービスノードSNからTCPセグメントの転送を受ける。これと同様に、中継ノードTNb配下の基地局(例えば基地局BSb)に収容されている移動端末MSは、当該基地局、地域ネットワークLNb、中継ノードTNb、及び広域ネットワークGNを介して、サービスノードSNからTCPセグメントの転送を受ける。なお、地域ネットワークLNaと地域ネットワークLNbは同一機能を有することから、以後、両者を区別しない場合には単に地域ネットワークLNと記す。
【0096】
(2)中継ノードTNのハードウェア構成
図15は中継ノードTNのハードウェア構成を示すブロック図であり、この図において、3は通信部であり、地域ネットワークLNを介して配下の基地局BSと通信するとともに、広域ネットワークGNを介してサービスノードSNと通信する。また、通信部3は広域ネットワークGNを介して他の中継ノードTNと通信する。
【0097】
4は通信部3を制御する制御部であり、通信部3との間でデータ授受を行う。制御部4は各種制御および演算を行うCPU41と、CPU41に読み出される各種プログラムやパラメータ(例えば後述のACK転送遅延時間)等を記憶した不揮発性メモリ42と、CPU41のワークエリアとして使用されるワークメモリ43と、サービスノードSNから移動端末MSへの中継データをCPU41が一時的に退避するためのバッファ44と、CPU41に制御され、CPU41により設定された時間間隔で割り込み信号を発生するタイマ45とを有する。後述する各種機能は、CPU41が不揮発性メモリ42に記憶された各種プログラムを実行することにより実現される。
【0098】
(3)中継ノードTNの機能
(3−1)概要
基本的には、中継ノードTNはサービスノードSNから移動端末MSへTCPセグメントを転送するとともに移動端末MSからサービスノードSNへACKセグメントを転送する際に、ACKセグメント中の広告ウィンドウサイズを抽出し、このサイズが0の場合には当該ACKセグメントのサービスノードSNへの転送を予め設定された一定時間であるACK転送遅延時間だけ遅らせるとともに以降のサービスノードSNから当該移動端末MSへのTCPセグメントを当該移動端末MSへ転送せずにバッファリングし、その後、広告ウィンドウサイズが0でないACKセグメントを受信したときに、バッファリングされたデータ(以後、バッファデータ)を当該移動端末MSへ送信する。
【0099】
すなわち、中継ノードTNは、電波強度が弱すぎる場合にサービスノードSNからのTCPセグメントの送信を一時停止させるためのACKセグメントをサービスノードSNが受信する時点を遅らせ、サービスノードSNからのTCPセグメントの送信を第1実施形態に比較してACK転送遅延時間だけ長く続けさせ、さらにこの間に送信されたTCPセグメントをバッファリングして電波強度の回復後に移動端末MSへ転送するようにすることで、移動端末MSにおける瞬間的な通信品質の低下(電波強度の低下)が通信に与える影響をサービスノードSNに伝えないように作動する。また、中継ノードTNを上述のように作動させることにより、結果的に、移動端末MSとサービスノードSNとの間の通信が完全に途絶する際の電波強度が第1実施形態における電波強度よりも弱くなることが期待される。
【0100】
また、中継ノードTNは、移動端末MSが他の中継ノードTNの配下に移動した場合にはそれまでのバッファデータを他の中継ノードTNへ転送し、他の中継ノードTNの配下の移動端末MSが自中継ノードTNの配下に移動してきた場合には他の中継ノードTNから転送されてくるバッファデータを受信して移動端末MSへ転送することで、ハンドオーバ時の電波強度の低下に対して効率良く対応できるようにしている。
【0101】
(3−2)具体的な機能
次に中継ノードTNの具体的な機能について図16を参照して説明する。
図16は中継ノードTNにおける中継制御に係る機能構成を示すブロック図であり、この図に示すように、中継ノードTNは中継制御に関して、IPプロトコル処理部TN1、移動通知受信処理部TN2、TCPバッファTN3、取り出し条件検査部TN4、ACK受信処理部TN5、ACK転送処理部TN6、TCP受信処理部TN7、TCP送信処理部TN8、移動前バッファ転送部TN9、及び移動先バッファ受信部TN10を有する。なお、IPプロトコル処理部TN1とネットワーク(地域ネットワークLN/広域ネットワークGN)との間にはデータリンク層に係る処理部と物理層に係る処理部が存在するが、ここでは図示を省略している。
【0102】
IPプロトコル処理部TN1はネットワーク層の転送処理を行うものであり、IPパケットの組み立て・分解や後述の移動通知パケットおよびバッファデータ転送パケットの組み立て・分解などを行う。
【0103】
TCPバッファTN3はサービスノードSNから移動端末MSへのTCPセグメントをTCPコネクション毎に一時記憶するものであり、図15のバッファ44から構成されている。なお、本実施形態においては、バッファ44の記憶容量はACK転送遅延時間の最大値とサービスノードSNから移動端末MSへのデータ転送速度とサービスノードSN及び自中継ノードTN間の遅延時間と収容可能な移動端末MSの数とに応じて設定されている。
【0104】
取り出し条件検査部TN4はIPプロトコル処理部TN1がネットワーク側からIPパケットを受け取ると、当該IPパケットが所定条件を満たすか否かを判定し、判定結果に応じた処理を行う。具体的には、取り出し条件検査部TN4は、当該IPパケットから広告ウィンドウサイズを抽出し、この広告ウィンドウサイズが0であるか否かを判定し、0の場合には当該IPパケットを取り出してACK受信処理部TN5へ渡す。なお、本発明の実施形態において、IPパケットを「取り出す」ということは、当該IPパケットに対する以降のIPプロトコル処理部TN1における処理(ネットワーク側へのスルー出力)を中止することをも意味している。
また、取り出し条件検査部TN4はACK受信処理部TN5により後述の取り出し条件が設定されると、サービスノードSNから移動端末MSへのIPパケットが当該取り出し条件を満たすか否かを検査し、一致する場合には当該IPパケットを取り出してTCP受信処理部TN7へ渡す。また、取り出し条件が設定された取り出し条件検査部TN4は移動端末MSからサービスノードSNへのIPパケットが当該取り出し条件を満たし、かつ当該IPパケットに含まれるACKセグメントの広告ウィンドウサイズが0でなければ、当該IPパケットを取り出してACK受信処理部TN5へ渡す。
【0105】
ACK受信処理部TN5は取り出し条件検査部TN4から広告ウィンドウサイズが0のIPパケットを受け取ると、取り出し条件検査部TN4に対して、当該IPパケットの取り出し元のTCPコネクションにおける取り出し条件を設定するとともに、当該IPパケットをACK保存パケットASSとしてワークメモリ43に一時記憶させる。なお、取り出し条件はTCPコネクションを指定する情報を含んでおり、取り出し条件が設定された取り出し条件検査部TN4では、当該取り出し条件で指定されたTCPコネクションを介してサービスノードSNから送信されてきたIPパケットが取り出されるとともに、当該TCPコネクションを介して移動端末MSから送信されてきた、広告ウィンドウサイズが0でないIPパケットが取り出される。
また、ACK受信処理部TN5は、取り出し条件検査部TN4から広告ウィンドウサイズが0でないIPパケットを受け取ると、TCPバッファTN3の該当する領域に記憶されたIPパケットを読み出してTCP送信処理部TN8へ渡し当該領域をクリアする処理と、該当するTCPコネクションに関して取り出し条件検査部TN4に設定された取り出し条件を解除する処理と、取り出し条件検査部TN4からのIPパケット(広告ウィンドウサイズが0でないIPパケット)をACK転送処理部TN6へ渡す処理とを行う。
【0106】
ACK転送処理部TN6はACK保存パケットASSについて記憶を開始した時刻からの経過時間をタイマ45を用いて測定し、この経過時間がACK転送遅延時間に達した時に、該当するACK保存パケットASSをIPプロトコル処理部TN1経由でサービスノードSNへ転送するともに、当該ACK保存パケットASSを削除する。また、ACK転送処理部TN6はACK受信処理部TN5から渡されたIPパケットをそのままIPプロトコル処理部TN1経由でサービスノードSNへ転送する
【0107】
TCP受信処理部TN7は取り出し条件検査部TN4からIPパケットを受け取ると、これをTCPバッファTN3に記憶させる。
【0108】
移動通知受信処理部TN2は移動端末MSから地域ネットワークLNを介して送信されてきた移動通知(移動端末MSが他の中継ノードTNの配下から自中継ノードTNの配下に移動してきた旨の通知)と他の中継ノードTNから広域ネットワークGNを介して送信されてきた移動通知パケット(移動端末MSが自中継ノードTNの配下から他の中継ノードTNの配下に移動した旨を通知するパケット)とを受信し、これらの移動通知を移動前バッファ転送部TN9へ渡す。
【0109】
移動前バッファ転送部TN9は移動通知受信処理部TN2から渡された移動通知に応じた処理を行う。具体的には、当該移動通知が移動端末MSからの移動通知であれば、移動前バッファ転送部TN9およびIPプロトコル処理部TN1は当該移動通知を含む移動通知パケットを生成し、当該移動端末MSの移動元の中継ノードTNへ送信する。また、当該移動通知が他の中継ノードTNからの移動通知であれば、移動前バッファ転送部TN9はTCPバッファTN3の該当する領域に記憶されたIPパケットを読み出し、移動前バッファ転送部TN9およびIPプロトコル処理部TN1は当該IPパケットをカプセル化したバッファデータ転送パケットを生成して当該他の中継ノードTNへ送信する。なお、上記バッファデータ転送パケットは移動通知パケットのACKパケットとなるものであり、TCPバッファTN3の該当する領域にIPパケットが記憶されていない場合にも空のIPパケットをカプセル化した形で送信される。
【0110】
図17は移動通知パケットおよびバッファデータ転送パケットの構成の一部を示す図であり、両パケットはこの図に示す構成のヘッダをIPおよびUDP(User Datagram Protocol)パケットのヘッダに追加することで得られる。追加されるヘッダは、8ビット長のタイプフィールドと、1ビット長のA、I、M及びGフィールドと、4ビット長の予約ビットフィールドと、16ビット長の有効時間フィールドと、32ビット長の移動端末アドレスフィールド及び移動先中継ノードアドレスフィールドと、IDフィールドと、拡張部フィールドとを有する。
【0111】
タイプフィールドはパケットタイプを表すフィールドであり、本実施形態では中継ノードTN間で交換されるパケットであることを示す値が設定される。AフィールドはACKパケットの要否を示すフィールドであり、本実施形態では、移動通知パケットにおいては「要」、バッファデータ転送パケットにおいては「否」を示す値が設定される。IフィールドはIDフィールドの有無を示すフィールドである。M及びGフィールドはパケットのカプセル化の方式を示す。
【0112】
有効時間フィールドは16ビットのフィールドであり、本実施形態では、移動通知パケットにおいて当該移動通知の有効時間を設定するために使用されている。なお、本実施形態では、有効時間を過ぎても転送すべきバッファデータが残っている場合には、再び移動通知パケットを転送するようにしている。
IDフィールドはパケットを識別可能な情報を格納するためのフィールドである。ただし、ACKパケットにおいては、本パケットを要求する移動通知パケットのIDがIDフィールドに格納される。
【0113】
移動先バッファ受信部TN10は他の中継ノードTNからのバッファデータ転送パケットをIPプロトコル処理部TN1経由で受け取ると、このバッファデータ転送パケットに含まれているIPパケットを抽出し、TCP送信処理部TN8へ渡す。
【0114】
TCP送信処理部TN8はACK受信処理部TN5から渡されたIPパケットをIPプロトコル処理部TN1経由で移動端末MSへ送信するとともに、移動先バッファ受信部TN10から渡されたIPパケットをIPプロトコル処理部TN1経由で移動端末MSへ送信する。
【0115】
(4)中継ノードTNの動作
次に、上述した構成および機能の中継ノードTNの動作について説明する。ただし、ここでは、制御部4のCPU41が不揮発性メモリ42に記憶された各種プログラムを実行し、図16に示す機能が実現されているものとする。また、取り出し条件検査部には取り出し条件が未設定であるものとする。
【0116】
(4−1)ACK対応動作
図18は中継ノードTNが実行するACK対応処理の流れを示すフローチャートであり、この図に示すように、ACKセグメントを含むIPパケットが移動端末MSから送信されてくると、取り出し条件検査部TN4により当該ACKセグメント中の広告ウィンドウサイズが抽出され、その値が0であるか否かが判定される(ステップSF1,SF2)。広告ウィンドウサイズが0でなければ、当該IPパケットは取り出されず、そのままサービスノードSNへ転送される(ステップSF3)。
【0117】
広告ウィンドウサイズが0の場合には、当該IPパケットが取り出し条件検査部TN4により取り出され、ACK受信処理部TN5によりACK保存パケットASSとしてワークメモリ43に一時記憶される(ステップSF4)。この際、当該ACK保存パケットASSについて記憶を開始した時刻からの経過時間の測定がACK転送処理部TN6により開始されるとともに(ステップSF5)、当該IPパケットの取り出し元のTCPコネクションにおける取り出し条件が取り出し条件検査部TN4に対して設定される(ステップSF6)。これにより、以後、当該取り出し条件が解除されるまで、当該TCPコネクションを介してサービスノードSNから移動端末MSへ送信されるIPパケットは取り出し条件検査部TN4により取り出され、TCP受信処理部TN7によりTCPバッファTN3に記憶される(バッファリング)。
【0118】
上記バッファリングが行われているときにACKセグメントを含むIPパケットが当該TCPコネクションを介して移動端末MSから送信されてくると、取り出し条件検査部TN4により当該ACKセグメント中の広告ウィンドウサイズが抽出され、その値が0であるか否かが判定される(ステップSF7,SF8)。ここで広告ウィンドウサイズが0であれば上述のステップSF4〜SF6の処理が繰り返され、0でなければ当該IPパケットが取り出し条件検査部TN4により取り出され、ACK受信処理部TN5へ渡される。
【0119】
そして、広告ウィンドウサイズが0でないIPパケットを受け取ったACK受信処理部TN5により、TCPバッファTN3の該当する領域に記憶されたIPパケットが読み出され、TCP送信処理部TN8及びIPプロトコル処理部TN1を介して該当する移動端末MSへ転送される(ステップSF9)。この際、IPパケットが読み出されたTCPバッファTN3の領域の記憶内容がクリアされるとともに、当該TCPコネクションに関して取り出し条件検査部TN4に設定された取り出し条件が解除される。また、ACK受信処理部TN5へ渡された、広告ウィンドウサイズが0ではないIPパケットは、ACK転送処理部TN6及びIPプロトコル処理部TN1を介してサービスノードSNへ転送される。
以後、処理はステップSF1に戻る。
【0120】
(4−2)遅延中継動作
図19は中継ノードTNが実行する遅延中継処理の流れを示すフローチャートであり、この図に示す処理は、記憶を開始した時刻からの経過時間の測定が行われているACK保存パケットASSが存在する限り、ACK転送処理部TN6において継続して行われる。すなわち、ACK転送処理部TN6においては、記憶を開始した時刻からの経過時間がACK転送遅延時間に達したACK保存パケットASSが存在するか否かが監視され(ステップSG1)、存在する場合には、該当するACK保存パケットASSがIPプロトコル処理部TN1経由でサービスノードSNへ転送され、中継ノードTN内から削除される(ステップSG2)。すなわち、広告ウィンドウサイズが0のIPパケットはACK転送遅延時間だけ遅延されて転送される。
【0121】
(4−3)移動対応送信動作
図20は中継ノードTNが実行する移動対応送信処理の流れを示すフローチャートであり、この図に示すように、移動端末MSが他の中継ノードTNの配下へ移動したか否かが常時監視され(ステップSH1)、移動した場合にはバッファリングされたデータが移動先の中継ノードTNへ転送される(ステップSH2)。移動端末MSが他の中継ノードTNの配下へ移動した場合には移動端末MSから直接的に移動通知が送信されてくることはないため、移動先の中継ノードTNからの移動通知パケットの受信をもって当該移動が発生したと判断される。移動先の中継ノードTNからの移動通知パケットは移動通知受信処理部TN2により受信され、当該パケット中の移動通知が移動前バッファ転送部TN9へ渡される。この移動前バッファ転送部TN9により、移動通知に応じたIPパケットがTCPバッファTN3から読み出され、このIPパケットをカプセル化したバッファデータ転送パケットがIPプロトコル処理部TN1経由で移動先の中継ノードTNへ送信される。
【0122】
(4−4)移動対応受信動作
図21は中継ノードTNが実行する移動対応受信処理の流れを示すフローチャートであり、この図に示すように、ハンドオーバにより他の中継ノードTNの配下から自中継ノードTNの配下へ移動してきた移動端末MSが存在するか否かが常時監視され(ステップSI1)、存在する場合には、移動元の中継ノードTNにおいてバッファリングされたデータを取得する処理および当該データを移動端末MSへ転送する処理が行われる(ステップSI2〜SI4)。
【0123】
ハンドオーバにより移動してきた移動端末MSが存在するか否かの判定は、移動端末MSから移動通知が送信されてきたか否かで行われる。移動端末MSからの移動通知が送信されてくると、この通知は移動通知受信処理部TN2により受信され(ステップSI1)、移動前バッファ転送部TN9へ渡される。この移動前バッファ転送部TN9により、当該移動通知を含む移動通知パケットが生成され、IPプロトコル処理部TN1を介して移動元の中継ノードTNへ転送される(ステップSI2)。
【0124】
この移動通知パケットに応答して移動元の中継ノードTNからバッファデータ転送パケットが送信されてくると、当該バッファデータ転送パケットはIPプロトコル処理部TN1経由で移動先バッファ受信部TN10により受信される(ステップSI3)。この移動先バッファ受信部TN10により、当該バッファデータ転送パケットに含まれているIPパケットが抽出され、当該IPパケットがTCP送信処理部TN8およびIPプロトコル処理部TN1を介して当該移動端末MSへ転送される(ステップSI4)。
【0125】
(5)第2実施形態に係る移動通信システムの動作
次に、中継ノードTNを用いた移動通信システムの動作について、図22を参照して説明する。
図22は当該移動通信システムにおけるデータ転送の流れの一例を示す概念図であり、この図に示す一例は、サービスノードTNとの間でTCPコネクションを介したデータ転送を行っている移動端末MSが基地局BSaから基地局BSbへハンドオーバすることによって得られた例である。
【0126】
移動端末MSの基地局BSaに対する電波強度が閾値を超えている状況下で、移動端末MSとサービスノードSNとの間に中継ノードTNaを経由したTCPコネクションが確立され、このTCPコネクションを介してサービスノードSNから移動端末MSへTCPセグメント(TCPデータ)が転送されると、これに応答してACKセグメントが移動端末MSからサービスノードSNへ転送される。この際、ACKセグメント内の広告ウィンドウサイズは0でないことから、中継ノードTNaは当該TCPコネクション上の通信に全く関与しない。
【0127】
ここで、移動端末MSが基地局BSaから遠ざかる等して基地局BSaに対する電波強度が閾値以下となると、第1実施形態で既述したように、移動端末MSは広告ウィンドウサイズを0としたACKセグメントをサービスノードSNへ送信する。このACKセグメントを含むIPパケットは中継ノードTNaにおいて取り出され、ACK転送遅延時間だけ遅延される。広告ウィンドウサイズが0のACKセグメントが中継ノードTNaにおいてACK転送遅延時間だけ遅延されている間にも、サービスノードSNから移動端末MSへTCPセグメントを含むIPパケットが送信されているが、当該IPパケットは中継ノードTNaにおいて取り出され、バッファリングされる。また、広告ウィンドウサイズを0としたACKセグメントを含むIPパケットはACK転送遅延時間だけ遅延された後に中継ノードTNaからサービスノードSNへ転送され、このACKセグメントを受信したサービスノードSNでは送信ウィンドウサイズが0となり、以後の送信が停止される。
【0128】
このような状況下で移動端末MSが基地局BSbに近づく等して基地局BSbに対する電波強度が閾値を超えるとともに基地局BSaから基地局BSbへのハンドオーバが行われると、当該ハンドオーバを示す移動通知が移動端末MSから中継ノードTNbへ送信される。この際、移動端末MSとサービスノードSNとの間のTCPコネクションは中継ノードTNbを介したコネクションに変更される。
【0129】
次に、この移動通知を受信した中継ノードTNbから中継ノードTNaへ当該移動通知を含む移動通知パケットが転送され、この移動通知パケットに対応したバッファデータ転送パケット(サービスノードSNから移動端末MSへ送信され、中継ノードTNaにおいてバッファリングされたIPパケットをカプセル化したパケット)が中継ノードTNaから中継ノードTNbへ転送される。
【0130】
中継ノードTNbでは、中継ノードTNaから転送されてきたバッファデータ転送パケットが受信され、当該バッファデータ転送パケットから元のIPパケットが抽出される。抽出されたIPパケットは順次、移動端末MSへ転送され、これに応答して移動端末からACKセグメントを含むIPパケットが返送される。当該IPパケットの返送先はサービスノードSNであり、当該ACKセグメント内の広告ウィンドウサイズは0でないことから、当該IPパケットは中継ノードTNaの関与を受けずに転送され、サービスノードSNに受信される。サービスノードSNでは当該ACKセグメント内の広告ウィンドウサイズに基づいた処理が行われ、以後、TCPセグメントの送信が再開される。
【0131】
なお、基地局MSaから基地局MSbへのハンドオーバが行われずに電波強度が回復した場合には、移動端末MSからのACKセグメント(広告ウィンドウサイズが0でないACKセグメント)の受信を契機として、中継ノードTNaから移動端末MSへ、バッファリングされたIPパケットが転送される。もちろん、この際にはTCPコネクションの経路は変更されない。なお、当該ACKセグメントはサービスノードSNへそのまま転送される。
【0132】
(6)第2実施形態に係る補足
以上、説明したように、本発明の第2実施形態によれば、第1実施形態と同様の効果を得られるのみならず、通信が完全に途絶するときの電波強度を結果的により低くすることができるとともに、電波強度が短時間だけ低くなるような状況下であればサービスノードに与える影響を小さくすることができる。これらのことから、本発明の第2実施形態によれば、通信スループットをより一層、増大させることができる。
なお、本発明の第2実施形態による移動通信システムにおいても、第1実施形態と同様の変形が可能である。
また、本発明の第2実施形態においては、中継ノードTNにおいて広告ウィンドウサイズが0のACKセグメントの転送を一定時間だけ遅らせるようにしたが、これに限定されるものではない。例えば、TCPコネクション上のデータ転送速度に応じた時間だけ遅らせるようにしてもよいし、電波強度が閾値を超えたときに未転送のACKセグメントが中継ノードTN内に残留している場合には、当該ACKセグメントを中継ノードTNからサービスノードSNへ強制的に転送するようにしてもよい。
さらに、言うまでもないが、本発明は上述した態様に限定されるものではなく、様々な態様を含むものである。
【0133】
【発明の効果】
以上説明したように、本発明によれば、受信側におけるトランスポート層より下位の層のリンク(例えば無線リンク)に関する通信品質(例えば電波強度)に基づいて、トランスポート層のデータ転送において送信側で用いられるウィンドウの上限サイズが決定される。すなわち、ウィンドウの制御はトランスポート層の状況だけでなく、更に下位の層の状況をも加味して行われる。よって、より適切な上限サイズを設定することができる。例えば、送達確認状況に応じて送信装置のウィンドウサイズが変動するデータ転送においては、下位の層のリンクの通信品質が劣化した場合に上限サイズを小さくすれば、パケットロスが発生し易い環境下でのデータの送信を抑制し、ウィンドウサイズが小さくなり過ぎてしまう事態を避けることができる。
【0134】
また、受信装置において、下位の層の通信品質の劣化時には受信データが保存され、下位の層の通信品質の回復時に当該受信データに対応した送達確認データが送信装置へ送信される。すなわち、消失する可能性が高かった送達確認データを確実に返信することができる。これは送達確認状況に応じて送信装置のウィンドウサイズが変動するデータ転送において重要な効果である。
【0135】
このように、本発明では、送信装置において用いられるウィンドウサイズを小さくなり過ぎてしまう事態を避けることができるが、このことは、特に、スロースタート等の機能を備えた通信プロトコルでのデータ転送をワイヤレス通信路経由で行う場合に顕著な効果をもたらす。このような場合には、ウィンドウサイズの縮小は以降の通信において大幅なスループットの低下を長期間にわたって招くが、本発明によればウィンドウサイズの縮小が抑制されるため、このような問題を回避することができる。
【0136】
さらに加えて、本発明によれば、中継装置において、受信装置から送信装置へ送信された送達確認データ中の上限サイズの値が小さい場合には、この送達確認データの送信装置への転送が遅らされるとともに送信装置から受信装置へのデータが一時退避され、この状況下で大きな上限サイズを含む送達確認データが受信装置から送信装置へ送信されると、一時退避されたデータが受信装置へ転送される。すなわち、通信が完全に途絶するときの通信品質を結果的により低くすることができるとともに、通信品質が短時間だけ劣化するような状況下であれば送信装置からの送信に与える影響を小さくすることができる。よって、通信スループットのより一層の増大を図ることができる。
【図面の簡単な説明】
【図1】 TCPにおけるデータ転送単位であるセグメントの構成を示す概念図である。
【図2】 スライディングウィンドウ方式による通信イメージを示す概念図である。
【図3】 従来の移動端末MとサービスノードSN間のデータ通信における通信プロトコル構成を示す概念図である。
【図4】 同移動端末Mが実行するTCP通信制御処理の流れを示すフローチャートである。
【図5】 同移動端末Mが実行するTCP広告ウィンドウ制御処理の流れを示すフローチャートである。
【図6】 同移動端末Mと基地局間のデータ通信に関与しない無線データリンク通信制御に係る機能構成を示すブロック図である。
【図7】 本発明の第1実施形態に係る移動端末MSを用いた移動通信システムの構成例を示す概念図である。
【図8】 同移動端末MSのハードウェア構成を示すブロック図である。
【図9】 同移動端末MSにおけるTCP広告ウィンドウ制御に係る機能構成を示すブロック図である。
【図10】 同移動端末MSが実行するTCP通信制御処理の流れを示すフローチャートである。
【図11】 同移動端末MSが実行するTCP広告ウィンドウ制御処理の流れを示すフローチャートである。
【図12】 同移動端末MSが実行する定期処理の流れを示すフローチャートである。
【図13】 同移動通信システムにおける移動端末MSとサービスノードSNとの間のやり取りの一例を示す概念図である。
【図14】 本発明の第2実施形態に係る中継ノードTNを用いた移動通信システムの構成例を示す概念図である。
【図15】 中継ノードTNのハードウェア構成を示すブロック図である。
【図16】 中継ノードTNにおける中継制御に係る機能構成を示すブロック図である。
【図17】 移動通知パケットおよびバッファデータ転送パケットの構成の一部を示す図である。
【図18】 中継ノードTNが実行するACK対応処理の流れを示すフローチャートである。
【図19】 中継ノードTNが実行する遅延中継処理の流れを示すフローチャートである。
【図20】 中継ノードTNが実行する移動対応送信処理の流れを示すフローチャートである。
【図21】 中継ノードTNが実行する移動対応受信処理の流れを示すフローチャートである。
【図22】 同中継ノードTNを用いた移動通信システムにおけるデータ転送の流れの一例を示す概念図である。
【符号の説明】
1 無線部
2,4 制御部
3 通信部
21,41 CPU
22 更新不可記憶部
23 更新可能記憶部
24,45 タイマ
42 不揮発性メモリ
43 ワークメモリ
44 バッファ
ASS ACK保存パケット
BS,BS1,BSa,BSb 基地局
BS11,M32 ビーコンフレーム処理部
BS12,M35 同期処理部
GN 広域ネットワーク
L 基地局リスト
LN,LNa,LNb 地域ネットワーク
M,MS 移動端末
M1,MS1,SN1 トランスポートプロトコル処理部
M2,SN2 ネットワークプロトコル処理部
M3,SN3 無線データリンク処理部
M11,MS11 TCPセグメント受信処理部
M12,MS12 広告ウィンドウサイズ決定部
M13,MS13 ACK送信処理部
M21,SN21 IPプロトコル処理部
M31,SN31 ワイヤレスリンクデータ処理部
M33 基地局リスト更新処理部
M34 最適基地局処理部
MS2 ワイヤレスリンク用TCP広告ウィンドウ制御処理部
MS21 電波強度検査処理部
MS22 受信セグメント保存処理部
MS23 ACK情報指定部
MS24 広告ウィンドウサイズ指定部
MS25 タイマ処理部
NW ネットワーク
SN サービスノード
SN11 TCPセグメント送信処理部
SN12 ACKセグメント受信処理部
SN13 ウィンドウ更新部
SS 保存パケット
TN,TNa,TNb 中継ノード
TN1 IPプロトコル処理部
TN2 移動通知受信処理部
TN3 TCPバッファ
TN4 取り出し条件検査部
TN5 ACK受信処理部
TN6 ACK転送処理部
TN7 TCP受信処理部
TN8 TCP送信処理部
TN9 移動前バッファ転送部
TN10 移動先バッファ受信部
Claims (15)
- 通知された上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置から送信されたトランスポート層のデータを受信する受信装置におけるウィンドウ制御方法において、
トランスポート層より下位の層のリンクに関する通信品質が予め設定された基準を満たさない期間において、前記送信装置から送信されたトランスポート層のデータを受信した場合には該データを保存する保存ステップと、
前記通信品質が予め設定された基準を満たさない期間の終了を検出し、この検出後に前記保存ステップにて保存された前記データの送達を示す情報を前記送信装置へ送信する確認応答ステップと
を有することを特徴とするウィンドウ制御方法。 - 請求項1に記載のウィンドウ制御方法において、
前記通信品質を定期的に取得して前記期間の終了を検出する
ことを特徴とするウィンドウ制御方法。 - 請求項1または2のいずれかに記載のウィンドウ制御方法において、
前記受信装置は移動無線端末であり、前記リンクは無線リンクであり、前記通信品質は電波強度である
ことを特徴とするウィンドウ制御方法。 - 受信した上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置から送信されたトランスポート層のデータを受信して該データに対応した送達確認データを返信する受信装置において、
トランスポート層より下位の層のリンクに関する通信品質を取得する通信品質取得部と、
前記通信品質取得部により取得された通信品質と予め設定された基準とに基づいて、通信品質が予め設定された基準を満たさない期間内であるか否かを判定する劣化期間判定部と、
前記劣化期間判定部により前記期間内であると判定された期間において前記送信装置から送信されたトランスポート層のデータを受信した場合には該データを保存する保存送達確認処理部と、
前記通信品質取得部により取得された通信品質と予め設定された基準とに基づいて、前記通信品質が予め設定された基準を満たす期間の開始を検出する回復検出部とを具備し、
前記保存送達確認処理部は更に、前記回復検出部により前記期間の開始が検出されると前記保存したデータに応じた送達確認データを前記送信装置へ送信する
ことを特徴とする受信装置。 - 請求項4に記載の受信装置において、
前記通信品質取得部を制御して定期的に前記通信品質を取得させる取得契機制御部を具備することを特徴とする受信装置。 - 請求項4または5のいずれかに記載の受信装置において、
前記送信装置から送信されたトランスポート層のデータを無線通信網経由で受信する無線通信部を具備し、
前記リンクは無線リンクであり、前記通信品質は該無線リンクにおける電波強度であることを特徴とする受信装置。 - 請求項6に記載の受信装置において、
前記無線リンクの電波強度を表す情報を記憶した電波強度記憶部と、
前記無線リンクの電波強度を常に監視し、この監視結果に応じて前記電波強度記憶部に記憶された情報を逐次更新する電波強度監視部とを具備し、
前記通信品質取得部は前記電波強度記憶部から前記情報を読み出すことで前記リンクの電波強度を取得することを特徴とする受信装置。 - 受信した上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置と該送信装置から送信されたトランスポート層のデータを受信するとともにトランスポート層より下位の層のリンクに関する通信品質に基づいた上限サイズを前記トランスポート層のデータへの送達確認データに含めて返送する受信装置との間でデータを転送する中継装置における中継制御方法において、
前記受信装置から前記送信装置へ送信された送達確認データ中の上限サイズの値が小さい場合には該送達確認データの該送信装置への転送を遅らせるとともに該送信装置から前記受信装置へのデータを一時退避し、
この状況下で大きな上限サイズを含む送達確認データが該受信装置から該送信装置へ送信された場合には一時退避されたデータを該受信装置へ転送することを特徴とする中継制御方法。 - 請求項8に記載の中継制御方法において、
前記受信装置は移動無線端末であり、前記リンクは無線リンクであり、前記通信品質は電波強度であり、
前記受信装置が他の中継装置の配下に移動した場合には一時退避されたデータを該他の中継装置へ転送し、
他の中継装置から転送されてくるデータを受信し前記受信装置へ転送する
ことを特徴とする中継制御方法。 - 請求項8または9に記載の中継制御方法において、
前記受信装置から前記送信装置へ送信された送達確認データ中の上限サイズが小さい場合には該送達確認データの前記送信装置への転送を一定時間だけ遅らせる
ことを特徴とする中継制御方法。 - 請求項10に記載の中継制御方法において、
前記受信装置が他の中継装置の配下に移動した場合には一時退避されたデータを該他の中継装置へ転送するとともに転送が遅らされている未転送の送達確認データを前記送信装置へ転送する
ことを特徴とする中継制御方法。 - 受信した上限サイズの範囲内で送信データの送達確認状況に応じてサイズが変動するウィンドウを用いてデータの送信を制御する送信装置と該送信装置から送信されたトランスポート層のデータを受信するとともにトランスポート層より下位の層のリンクに関する通信品質に基づいた上限サイズを前記トランスポート層のデータへの送達確認データに含めて返送する受信装置との間でデータを転送する中継装置において、
データを一時的に記憶する一時記憶部と、
前記受信装置から前記送信装置へ送信された送達確認データから上限サイズを抽出する上限サイズ抽出部と、
前記上限サイズ抽出部により抽出された上限サイズの大小を判定する検査部と、
前記検査部により上限サイズが小さいと判定された場合には該上限サイズを含む送達確認データを遅延させてから前記送信装置へ転送する遅延処理部と、
前記検査部により上限サイズが小さいと判定された場合には前記送信装置から前記受信装置へのデータを前記一時記憶部に記憶させる退避処理を開始する退避処理部と、
前記退避処理が行われている環境下で前記検査部により上限サイズが大きいと判定された場合には、該退避処理の開始時から前記一時記憶部に記憶されたデータを前記受信装置へ転送するとともに、前記退避処理を終了させる回復処理部と
を具備することを特徴とする中継装置。 - 請求項12に記載の中継装置において、
他の中継装置から転送されてくるデータを受信し前記受信装置へ転送する移動対応受信部を具備し、
前記受信装置は移動無線端末であり、前記リンクは無線リンクであり、前記通信品質は電波強度であり、
前記回復処理部は、前記退避処理が行われている環境下で前記受信装置が他の中継装置の配下に移動した場合には、該退避処理の開始時から前記一時記憶部に記憶されたデータを該他の中継装置へ転送する
ことを特徴とする中継装置。 - 請求項12または13に記載の中継装置において、
前記遅延処理部は前記検査部により上限サイズが小さいと判定された場合には該上限サイズを含む送達確認データを一定時間だけ遅延させてから前記送信装置へ転送する
ことを特徴とする中継装置。 - 請求項14に記載の中継装置において、
前記回復処理部は、前記退避処理が行われている環境下で前記受信装置が他の中継装置の配下に移動した場合には、該退避処理の開始時から前記一時記憶部に記憶されたデータを該他の中継装置へ転送するとともに転送が遅らされている未転送の送達確認データを前記送信装置へ転送する
ことを特徴とする中継装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000231706A JP3797538B2 (ja) | 2000-06-14 | 2000-07-31 | ウィンドウ制御方法、受信装置、中継制御方法、及び中継装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000178926 | 2000-06-14 | ||
JP2000-178926 | 2000-06-14 | ||
JP2000231706A JP3797538B2 (ja) | 2000-06-14 | 2000-07-31 | ウィンドウ制御方法、受信装置、中継制御方法、及び中継装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002077300A JP2002077300A (ja) | 2002-03-15 |
JP3797538B2 true JP3797538B2 (ja) | 2006-07-19 |
Family
ID=26593955
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000231706A Expired - Fee Related JP3797538B2 (ja) | 2000-06-14 | 2000-07-31 | ウィンドウ制御方法、受信装置、中継制御方法、及び中継装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3797538B2 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3712399B2 (ja) | 2003-03-17 | 2005-11-02 | ボーダフォン株式会社 | 局装置 |
JP4639603B2 (ja) * | 2004-02-24 | 2011-02-23 | パナソニック株式会社 | 無線伝送装置および無線伝送装置の省電力駆動方法 |
JP4509825B2 (ja) * | 2005-03-01 | 2010-07-21 | 三菱電機株式会社 | 移動体通信システム |
KR100842281B1 (ko) * | 2006-12-08 | 2008-06-30 | 한국전자통신연구원 | 무선 네트워크상에서 경로 회복 알림을 통하여 전송 제어 프로토콜의 성능을 관리하는 장치 및 그 방법 |
JP5034519B2 (ja) * | 2007-01-31 | 2012-09-26 | 富士通株式会社 | 通信装置、サーバ装置、及び情報処理システム |
JP5239477B2 (ja) * | 2008-04-22 | 2013-07-17 | 日本電気株式会社 | 無線基地局装置及びその通信方法 |
JP5417886B2 (ja) | 2009-02-24 | 2014-02-19 | 富士通株式会社 | 通信装置、通信インターフェース・モジュール、及び通信方法 |
JP2013030936A (ja) * | 2011-07-27 | 2013-02-07 | Kyocera Corp | 通信システム、通信装置および通信方法 |
-
2000
- 2000-07-31 JP JP2000231706A patent/JP3797538B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002077300A (ja) | 2002-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7436854B2 (en) | Transmitter device for controlling data transmission | |
EP1581013B1 (en) | Transmitted packet replenishment system and transmitted packet replenishing method | |
US7929430B2 (en) | Congestion control access gateway and congestion control method for the same | |
EP1381200B1 (en) | Node, correspondent node, mobility anchor point, and home agent in a packet communication system, as well as packet communication system and path MTU discovery method | |
US6590875B1 (en) | Radio data communication technique for maintaining a connection between a mobile radio transmission device and a server during a communication interruption | |
US7474616B2 (en) | Congestion indication for flow control | |
JP4005508B2 (ja) | ヘッダ圧縮におけるコンテキスト情報の再配置 | |
JP2591467B2 (ja) | アクセス方式 | |
US7184401B2 (en) | Link-aware transmission control protocol | |
CA2387289C (en) | Packet communication method and proposal node | |
US20030086395A1 (en) | System and method for efficient handover in wireless packet data network | |
US6937570B2 (en) | Resource aware session adaptation system and method for enhancing network throughput | |
JP3797538B2 (ja) | ウィンドウ制御方法、受信装置、中継制御方法、及び中継装置 | |
US20120314576A1 (en) | High-speed communication system and high-speed communication method | |
US20220225163A1 (en) | Communications device, infrastructure equipment and methods | |
JP2003047037A (ja) | 通信システム、及び、ハンドオーバ制御方法 | |
JP2002152835A (ja) | 移動端末装置 | |
JP2004153542A (ja) | エージェントプログラム及び無線端末並びにハンドオフ制御方法 | |
JP2570144B2 (ja) | タイムスタンプによるパケット再送制御方法 | |
JP2006165623A (ja) | 無線中継システム、無線クライアント、無線中継方法及び無線中継プログラム | |
JP4421936B2 (ja) | ハンドオーバ方法、通信システムおよび端末局 | |
JP2010028874A (ja) | 端末局 | |
WO2021192293A1 (ja) | 基地局、無線通信システム、及び無線通信方法 | |
JP2002354010A (ja) | 無線データ通信装置、トランスポートレイヤプロトコル制御方法およびデータリンクレイヤプロトコル制御方法 | |
JP3659864B2 (ja) | データ通信システムおよびデータ通信プログラムを記録した記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040607 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051116 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051220 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060220 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060411 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060413 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090428 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100428 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110428 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |