(57)【要約】【課題】遅延発生時に適切な通信制御を行う。【解決手段】サーバ２０は、データを送信する。この時、サーバ２０内のＲＴＯタイマ２０４ａ３は、リセットされ、計時を開始する。一方、無線端末１０は、データを受信した場合に、確認応答としてのＡＣＫを返信する。この時、無線端末１０内のＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３は、リセットされ、計時を開始する。その後、無線端末１０が、サーバ２０からのデータを受信せず、確認応答としてのＡＣＫを返信しない状態が継続し、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３がタイムアウトに達すると、無線端末１０は、サーバ２０に対して、当該サーバ２０内のＲＴＯタイマ２０４ａ３をリセットするためのＲＲＲｅｑを送信する。サーバ２０がＲＲＲｅｑを受信すると、ＲＴＯタイマ２０４ａ３は、リセットされ、計時を開始する。【選択図】図１
2011147035.tif 000002
【特許請求の範囲】
【請求項１】
データを送信する送信装置と、前記送信装置からの前記データを受信する受信装置とを含む通信システムであって、
前記受信装置は、
前記送信装置からの前記データを受信した場合に前記送信装置へ第１の応答を送信するとともに、前記第１の応答の送信後に予め定められた規定時間よりも短い時間間隔で前記送信装置へ第２の応答を送信する送信部を備え、
前記送信装置は、
前記データの送信後の経過時間を計時するとともに、前記第１の応答及び前記第２の応答の受信後の経過時間を計時する計時部と、
前記第１の応答及び前記第２の応答の少なくとも何れかを受信した場合に、前記計時部による計時をリセットするリセット部と、
前記計時部によって計時される前記経過時間が前記規定時間に達するまでに、前記受信装置からの前記第１の応答及び前記第２の応答の何れも受信しない場合に、前記データを再送する再送部と、
を備える通信システム。
【請求項２】
前記受信装置は、
前記規定時間を算出する算出部を備える請求項１に記載の通信システム。
【請求項３】
前記送信部は、前記受信装置における受信済みの前記データと同一のシーケンス番号と、直前に送信した前記第１の応答又は前記第２の応答に含まれる受信ウィンドウサイズの情報とは異なる受信ウィンドウサイズの情報とを含んだ前記第２の応答を送信する請求項１又は２に記載の通信システム。
【請求項４】
前記送信装置は、
前記第２の応答を受信した場合に、前記受信装置へ前記第２の応答の受信に対する第３の応答を送信する第２の送信部を備え、
前記受信装置は、前記第３の応答を受信した場合、前記第２の応答の送信を停止する請求項１乃至３の何れかに記載の通信システム。
【請求項５】
前記送信装置と前記受信装置との間に設けられ、前記送信装置と前記受信装置との通信を中継する中継装置と、
前記送信装置と前記中継装置との間に設けられるパケット交換網とを備える請求項１乃至４の何れかに記載の通信システム。
【請求項６】
受信装置へデータを送信する送信装置であって、
前記データの送信後の経過時間を計時するとともに、前記受信装置において前記データを受信した場合に送信される第１の応答と、前記受信装置において予め定められた規定時間よりも短い時間間隔で送信される第２の応答との受信後の経過時間を計時する計時部と、
前記計時部によって計時される経過時間が前記規定時間に達するまでに、前記受信装置からの前記第１の応答及び前記第２の応答の何れも受信しない場合に、前記データを再送する再送部と、
前記第１の応答及び前記第２の応答の少なくとも何れかを受信した場合に、前記計時部による計時をリセットするリセット部と
を備える送信装置。
【請求項７】
送信装置からのデータを受信する受信装置であって、
前記送信装置からの前記データを受信した場合に前記送信装置へ第１の応答を送信するとともに、予め定められた規定時間よりも短い時間間隔で前記送信装置へ第２の応答を送信する送信部を備える受信装置。
【請求項８】
データを送信する送信装置と、前記送信装置からの前記データを受信する受信装置とを含む通信システムにおける通信制御方法であって、
前記受信装置が、前記送信装置からの前記データを受信した場合に前記送信装置へ第１の応答を送信するとともに、予め定められた規定時間よりも短い時間間隔で前記送信装置へ第２の応答を送信するステップと、
前記送信装置が、前記データの送信後の経過時間を計時するとともに、前記第１の応答及び前記第２の応答の受信後の経過時間を計時するステップと、
前記送信装置が、前記データの送信後の経過時間を計時するとともに、前記第１の応答及び前記第２の応答の受信後の経過時間を計時するステップと、
前記送信装置が、前記第１の応答及び前記第２の応答の少なくとも何れかを受信した場合に、前記計時をリセットするステップと、
前記送信装置が、計時される前記経過時間が前記規定時間に達するまでに、前記受信装置からの前記第１の応答及び前記第２の応答の何れも受信しない場合に、前記データを再送するステップと
を備える通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを送信する送信装置と、前記送信装置からの前記データを受信する受信装置とを含む通信システム、当該通信システムにおける送信装置及び受信装置、当該通信システムにおける通信制御方法に関する。
【背景技術】
【０００２】
近年、ｃｄｍａ  １ｘ  ＥＶ−ＤＯや、ＨＳＤＰＡ等の高速大容量の通信システムが普及しつつある。また、３ＧＰＰ（Third Generation Partnership Project）においては、現在、規格策定中のＬＴＥ（Long Term Evolution）等の高速大容量の通信システムが提案されている。このような通信システムでは、ＯＳＩ参照モデルのトランスポート層にＴＣＰ（Transmission Control Protocol）を採用するアプリケーションが数多く利用される。ＴＣＰは、通信の信頼性を向上させるために再送制御を行うプロトコルである。また、ＴＣＰでは、ＲＴＯ（Retransmission TimeOut）と称されるタイムアウトが規定されている。送信装置は、ＴＣＰセグメントを送信した後、ＲＴＯとして設定されている時間が経過しても、受信装置からの確認応答（ＡＣＫ）を受信できなかった場合、ＴＣＰセグメントを含んだパケットを再送する（RFC 2988）（例えば、非特許文献１参照）。
【０００３】
ＲＴＯを決定する手法として式（１）で示される、Ｊａｃｏｂｓｏｎのアルゴリズムが用いられる。
【０００４】
【数１】
2011147035.tif 000003
【０００５】
式（１）において、ｍはパケットの往復遅延時間（ＲＴＴ）の計測値である。ａは平滑化された計測値であり、Ｊａｃｏｂｓｏｎのアルゴリズムでは、平均の評価値（平均値）として扱われる。Ｅｒｒは平均値と計測値の誤差である。ｇ１及びｇ２は平滑化係数であり、ｇ１＝０．１２５、ｇ２＝０．２５である。νはＲＴＴの平均偏差である。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】"RFC 2988 (rfc2988) - Computing TCP's Retransmission Timer"、［ｏｎｌｉｎｅ］、［平成２１年１２月２４日検索］、＜ＵＲＬ：http://www.faqs.org/rfcs/rfc2988.html＞
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の通信システムでは、受信装置が携帯電話機等の無線端末であり、無線端末と送信装置との間に無線基地局が設置され、無線基地局と、当該無線基地局におけるセクタ内の無線端末との間で無線通信が行われる場合、無線基地局のスケジューラは、当該無線基地局から無線端末に向かう下りリンクにおいて、無線端末へ無線リソースを割り当てる。無線基地局のスケジューラとしては、例えばＰＦ（Proportional Fair）方式が採用される。
【０００８】
ＰＦ方式のスケジューラが採用される場合には、無線基地局内のバッファに無線端末向けのパケットが存在する場合であっても、当該無線端末の通信状態が急激に悪化したり、無線基地局におけるセクタ内の通信量が急激に増加すると、数秒間程度、無線端末に無線リソースが割り当てられないことがある。更には、これにより、通信システムでは、突発的に数秒程度の遅延が発生することがある。
【０００９】
この場合、トランスポート層であるＴＣＰレイヤにおいても、数秒間程度、通信が停止する。このため、ＴＣＰレイヤにおいてＲＴＯが発生し、送信装置は、ＴＣＰセグメントが喪失したと見なして、当該ＴＣＰセグメントを再送する。しかし、上述したように、実際には、ＴＣＰセグメントを含んだパケットは、無線基地局内のバッファに蓄積され、送信待ちの状態にある。このため、その後に無線基地局のスケジューラが無線端末に無線リソースを割り当てると、無線基地局は、無線端末に対して同一のパケットを２度送信することになり、無線通信区間における通信効率が劣化する。
【００１０】
このような問題を解決する方法として、Ｆ−ＲＴＯ（Forward Retransmission Timeout）がＴＣＰレイヤに実装される場合がある（RFC 4138）。Ｆ−ＲＴＯでは、送信装置は、ＲＴＯが発生したことに対応して、ＴＣＰセグメントを送信する際に、最初に再送対象のＴＣＰセグメントを１つ送信する。更に、送信装置は、受信装置からの当該再送対象のＴＣＰセグメントの受信に対する確認応答（ＡＣＫ）を受信した後に、再送対象ではなく、新規のＴＣＰセグメントを２つ送信する。その後、送信装置は、新規のＴＣＰセグメントの受信に対するＡＣＫを受信した場合、当該ＡＣＫのシーケンス番号に基づいて、ＲＴＯがネットワークにおけるパケットの喪失によるものであるか、突発的な遅延によるものなのかを判別する。これにより、不必要な再送を減らすことができる。
【００１１】
しかしながら、Ｆ−ＲＴＯを採用しても、なお、不必要な再送が発生する場合がある。このように、現在のＴＣＰレイヤにおける通信制御では、通信システムにおいて発生する遅延に対して適切に対処できない。
【００１２】
上記問題点に鑑み、本発明は、遅延発生時に適切な通信制御を行うことが可能な通信システム、送信装置、受信装置及び通信制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上述した課題を解決するために、本発明は以下のような特徴を有している。本発明の第１の特徴は、データを送信する送信装置（サーバ２０）と、前記送信装置からの前記データを受信する受信装置（無線端末１０）とを含む通信システム（通信システム１）であって、前記受信装置は、前記送信装置からの前記データを受信した場合に前記送信装置へ第１の応答（ＡＣＫ）を送信するとともに、前記第１の応答の送信後に予め定められた規定時間（ＲＴＯ）よりも短い時間間隔で前記送信装置へ第２の応答（ＲＲＲｅｑ）を送信する送信部（セグメント送信部１０４ａ５）を備え、前記送信装置は、前記データの送信後の経過時間を計時するとともに、前記第１の応答及び前記第２の応答の受信後の経過時間を計時する計時部（ＲＴＯタイマ２０４ａ３）と、前記第１の応答及び前記第２の応答の少なくとも何れかを受信した場合に、前記計時部による計時をリセットするリセット部（セグメント送信部２０４ａ５）と、前記計時部によって計時される前記経過時間が前記規定時間に達するまでに、前記受信装置からの前記第１の応答及び前記第２の応答の何れも受信しない場合に、前記データを再送する再送部（セグメント送信部２０４ａ５）とを備えることを要旨とする。
【００１４】
このような通信システムでは、受信装置は、送信装置からのデータを受信した場合には、第１の応答を送信装置へ送信し、更には、規定時間よりも短い時間間隔で、第１の応答とは異なる第２の応答を送信装置へ送信している。一方、送信装置は、データの送信後の経過時間を計時するとともに、第１の応答及び第２の応答の受信後の経過時間を計時し、更には、第１の応答及び第２の応答の少なくとも何れかを受信した場合には、計時をリセットする。そして、送信装置は、計時される経過時間が規定時間に達するまでに、受信装置からの第１の応答及び第２の応答の何れも受信しない場合には、データを再送する。
【００１５】
送信装置によって送信されたデータが、当該送信装置と受信装置との間の中継装置において、受信装置への送信がなされないまま蓄積している場合には、受信装置は、第１の応答を送信することはないが、規定時間よりも短い時間間隔で第２の応答を送信することになり、一方、送信装置は、経過時間が規定時間に達するまでに、第２の応答を受信した場合には、計時をリセットするため、計時が規定時間に達することはなく、データの再送を行うことはない。従って、不要な再送が行われることがなく、遅延発生時に適切な通信制御を行うことが可能となる。
【００１６】
本発明の第２の特徴は、前記受信装置は、前記規定時間を算出する算出部（タイムアウト時間決定部１０４ａ２）を備えることを要旨とする。
【００１７】
本発明の第３の特徴は、前記送信部は、前記受信装置における受信済みの前記データと同一のシーケンス番号と、直前に送信した前記第１の応答又は前記第２の応答に含まれる受信ウィンドウサイズの情報とは異なる受信ウィンドウサイズの情報とを含んだ前記第２の応答を送信することを要旨とする。
【００１８】
本発明の第４の特徴は、前記送信装置は、前記第２の応答を受信した場合に、前記受信装置へ前記第２の応答の受信に対する第３の応答（ＲＲＡｃｋ）を送信する第２の送信部（セグメント送信部２０４ａ５）を備え、前記受信装置は、前記第３の応答を受信した場合、前記第２の応答の送信を停止することを要旨とする。
【００１９】
本発明の第５の特徴は、前記送信装置と前記受信装置との間に設けられ、前記送信装置と前記受信装置との通信を中継する中継装置（無線基地局３０）と、前記送信装置と前記中継装置との間に設けられるパケット交換網（パケット交換網５０）とを備えることを要旨とする。
【００２０】
本発明の第６の特徴は、受信装置へデータを送信する送信装置であって、前記データの送信後の経過時間を計時するとともに、前記受信装置において前記データを受信した場合に送信される第１の応答と、前記受信装置において予め定められた規定時間よりも短い時間間隔で送信される第２の応答との受信後の経過時間を計時する計時部と、前記計時部によって計時される経過時間が前記規定時間に達するまでに、前記受信装置からの前記第１の応答及び前記第２の応答の何れも受信しない場合に、前記データを再送する再送部と、前記第１の応答及び前記第２の応答の少なくとも何れかを受信した場合に、前記計時部による計時をリセットするリセット部とを備えることを要旨とする。
【００２１】
本発明の第７の特徴は、送信装置からのデータを受信する受信装置であって、前記送信装置からの前記データを受信した場合に前記送信装置へ第１の応答を送信するとともに、予め定められた規定時間よりも短い時間間隔で前記送信装置へ第２の応答を送信する送信部を備えることを要旨とする。
【００２２】
本発明の第８の特徴は、データを送信する送信装置と、前記送信装置からの前記データを受信する受信装置とを含む通信システムにおける通信制御方法であって、前記受信装置が、前記送信装置からの前記データを受信した場合に前記送信装置へ第１の応答を送信するとともに、予め定められた規定時間よりも短い時間間隔で前記送信装置へ第２の応答を送信するステップと、前記送信装置が、前記データの送信後の経過時間を計時するとともに、前記第１の応答及び前記第２の応答の受信後の経過時間を計時するステップと、前記送信装置が、前記データの送信後の経過時間を計時するとともに、前記第１の応答及び前記第２の応答の受信後の経過時間を計時するステップと、前記送信装置が、前記第１の応答及び前記第２の応答の少なくとも何れかを受信した場合に、前記計時をリセットするステップと、前記送信装置が、計時される前記経過時間が前記規定時間に達するまでに、前記受信装置からの前記第１の応答及び前記第２の応答の何れも受信しない場合に、前記データを再送するステップとを備えることを要旨とする。
【発明の効果】
【００２３】
本発明によれば、遅延発生時に適切な通信制御を行うことが可能となる。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施形態に係る通信システムの全体概略構成図である。
【図２】本発明の実施形態に係る、無線端末の構成図である。
【図３】本発明の実施形態に係る、サーバの構成図である。
【図４】本発明の実施形態に係る、無線端末の第１の動作を示すフローチャートである。
【図５】本発明の実施形態に係る、ＴＣＰセグメントの構成を示す図である。
【図６】本発明の実施形態に係る、無線端末の第２の動作を示すフローチャートである。
【図７】本発明の実施形態に係る、サーバの動作を示すフローチャートである。
【図８】本発明の実施形態に係る、通信システムの第１の動作を示すシーケンス図である。
【図９】本発明の実施形態に係る、通信システムの第２の動作を示すシーケンス図である。
【図１０】本発明の実施形態に係る、通信システムの第３の動作を示すシーケンス図である。
【発明を実施するための形態】
【００２５】
次に、図面を参照して、本発明の実施形態を説明する。具体的には、（１）通信システムの概略構成、（２）無線端末の構成、（３）サーバの構成、（４）無線端末の動作、（５）サーバの動作、（６）通信システムの動作、（７）作用・効果、（８）その他の実施形態について説明する。以下の実施形態における図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
【００２６】
（１）通信システムの概略構成
図１は、本実施形態に係る通信システムの概略構成図である。本実施形態では、通信システム１は、無線通信区間において３ＧＰＰｓ仕様の技術を用いて構成されている。図１に示す通信システム１は、無縁端末１０、サーバ２０、無線基地局３０及びパケット交換網５０とを含む。
【００２７】
無線端末１０と無線基地局３０とは、無線通信区間を介して無線通信を行う。
【００２８】
サーバ２０と無線基地局３０とは、パケット交換網５０に接続され、当該パケット交換網５０を介して通信を行う。
【００２９】
本実施形態では、サーバ２０から無線端末１０へ画像や音声等の各種コンテンツデータを含んだＴＣＰセグメントが伝送される。従って、無線基地局３０と無線端末１０との間の無線通信において、画像等のデータを含んだＴＣＰセグメントは主に下りリンクを伝送され、当該ＴＣＰセグメントに対する応答であるＡＣＫとしてのＴＣＰセグメントが主に上りリンクを伝送される。
【００３０】
（２）無線端末の構成
図２は、無線端末１０の構成を示す図である。図２に示す無線端末１０は、制御部１００、記憶部１１０、無線通信部１２０、及び、アンテナ１３０を含む。
【００３１】
制御部１００は、例えばＣＰＵによって構成され、無線端末１０が具備する各種機能を制御する。記憶部１１０は、例えばメモリによって構成され、無線端末１０における制御などに用いられる各種情報を記憶する。無線通信部１２０は、ＲＦ回路、ベースバンド回路等を含み、変調及び復調、符号化及び復号等を行い、アンテナ１３０を介して、無線基地局３０との間で、無線信号の送信及び受信を行う。
【００３２】
制御部１００は、ＯＳＩ（Open Systems Interconnection）参照モデルの７階層のそれぞれに対応する処理部として、物理層処理部１０１、データリンク層処理部１０２、ネットワーク層処理部１０３、トランスポート層処理部１０４、セッション層処理部１０５、プレゼンテーション層処理部１０６、及び、アプリケーション層処理部１０７を含む。
【００３３】
これらのうち、トランスポート層処理部１０４は、ＴＣＰレイヤに関わる処理を行うものであり、ＴＣＰ（Transmission Control Protocol）受信処理部１０４ａを含む。更に、ＴＣＰ受信処理部１０４ａは、セグメント受信部１０４ａ１、タイムアウト時間決定部１０４ａ２、ＲＴＯ（Retransmission TimeOut）  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４、セグメント送信部１０４ａ５、及び、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫ監視部１０４ａ６を含む。
【００３４】
セグメント受信部１０４ａ１は、サーバ２０からのＴＣＰセグメントを受信する。タイムアウト時間決定部１０４ａ２は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３のタイムアウトの時間を決定する。ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４は、後述するＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔを送信するか否かを決定する。セグメント送信部１０４ａ５は、サーバ２０へＴＣＰセグメントを送信する。ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫ監視部１０４ａ６は、サーバ２０からの後述するＲＴＯ  Ｒｅｓｅｔ  ＡＣＫを監視する。
【００３５】
（３）サーバの構成
図３は、サーバ２０の構成を示す図である。図３に示すサーバ２０は、制御部２００、記憶部２１０、及び、インタフェース（Ｉ／Ｆ）部２２０を含む。
【００３６】
制御部２００は、例えばＣＰＵによって構成され、サーバ２０が具備する各種機能を制御する。記憶部２１０は、例えばメモリによって構成され、サーバ２０における制御などに用いられる各種情報を記憶する。Ｉ／Ｆ部２２０は、パケット交換網５０に接続され、当該パケット交換網５０及び無線基地局３０を介して、無線端末１０との間で、パケットの送信及び受信を行う。
【００３７】
制御部２００は、ＯＳＩ参照モデルの７階層のそれぞれに対応する処理部として、物理層処理部２０１、データリンク層処理部２０２、ネットワーク層処理部２０３、トランスポート層処理部２０４、セッション層処理部２０５、プレゼンテーション層処理部２０６、及び、アプリケーション層処理部２０７を含む。
【００３８】
これらのうち、トランスポート層処理部２０４は、ＴＣＰレイヤに関わる処理を行うものであり、ＴＣＰ送信処理部２０４ａを含む。更に、ＴＣＰ送信処理部２０４ａは、セグメント受信部２０４ａ１、ＲＴＯ時間決定部２０４ａ２、ＲＴＯタイマ２０４ａ３、セグメント再送決定部２０４ａ４、セグメント送信部２０４ａ５、及び、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ監視部２０４ａ６を含む。
【００３９】
セグメント受信部２０４ａ１は、無線端末１０からのＴＣＰセグメントを受信する。ＲＴＯ時間決定部２０４ａ２は、ＲＴＯタイマ２０４ａ３のタイムアウトの時間（ＲＴＯ）を決定する。セグメント再送決定部２０４ａ４は、無線端末１０向けのＴＣＰセグメントの再送の要否を決定する。セグメント送信部２０４ａ５は、サーバ２０へＴＣＰセグメントを送信する。ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ監視部２０４ａ６は、サーバ２０からの後述するＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔを監視する。
【００４０】
（４）無線端末の動作
図４は、無線端末１０におけるＴＣＰセグメントの受信時の動作を示すフローチャートである。
【００４１】
ステップＳ４０１において、セグメント受信部１０４ａ１は、サーバ２０からのパケットに含まれるＴＣＰセグメントを、パケット交換網５０、アンテナ１３０及び無線通信部１２０を介して受信する。
【００４２】
ステップＳ４０２において、セグメント受信部１０４ａ１は、ＲＴＴを算出する。具体的には、セグメント受信部１０４ａ１は、図５に示すＴＣＰセグメントのＴＣＰヘッダ内のタイムスタンプオプションに含まれる、タイムスタンプエコーフィールドと、その時点の時刻との差からＲＴＴを算出する。
【００４３】
ステップＳ４０３において、タイムアウト時間決定部１０４ａ２は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３のタイムアウト時間を算出し、設定する。ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３のタイムアウト時間は、後述するサーバ２０内のＲＴＯタイマ２０４ａ３のタイムアウト時間であるＲＴＯよりも短い必要がある。このため、タイムアウト時間決定部１０４ａ２は、セグメント受信部１０４ａ１によって算出されたＲＴＴと、上述した式（１）とに基づいてＲＴＯを算出する。更に、タイムアウト時間決定部１０４ａ２は、算出したＲＴＯに０＜α＜１となる係数αを乗算した値を、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３のタイムアウト時間として算出する。
【００４４】
ステップＳ４０４において、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫ監視部１０４ａ６は、セグメント受信部１０４ａ１によって受信されたＴＣＰセグメントが、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫであるか否かを判定する。ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫは、サーバ２０においてＲＴＯタイマ２０４ａ３がリセットされたことを示す情報である。
【００４５】
本実施形態では、図５に示すＴＣＰセグメントのＴＣＰヘッダ内の４ビット長のＲｅｓｅｒｖｅｄ領域のうち、１つのビットが、ＴＣＰセグメントがＲＴＯ  Ｒｅｓｅｔ  ＡＣＫであるか否かを示すフラグとなり、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫはＴＣＰヘッダのみで構成される。例えば、フラグが「１」であれば、ＴＣＰセグメントがＲＴＯ  Ｒｅｓｅｔ  ＡＣＫであることを示す。ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫ監視部１０４ａ６は、このフラグに基づいて、セグメント受信部１０４ａ１によって受信されたＴＣＰセグメントが、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫであるか否かを判定することができる。
【００４６】
ＴＣＰセグメントがＲＴＯ  Ｒｅｓｅｔ  ＡＣＫでないと判定された場合、ステップＳ４０５において、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫ監視部１０４ａ６は、ＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４の状態を、ＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔの送信が可能な状態である「Ｅｎａｂｌｅ」に設定する。
【００４７】
その後、ステップＳ４０６において、ＴＣＰ受信処理部１０４ａは、通常のＴＣＰに関するデータ処理を行う。更に、ステップＳ４０７において、セグメント送信部１０４ａ５は、ＴＣＰセグメントを正常に受信したことを示す、ＡＣＫを含んだＴＣＰセグメントを生成する。更に、セグメント送信部１０４ａ５は、ＡＣＫを含んだＴＣＰセグメントを、無線通信部１２０、アンテナ１３０及びパケット交換網５０を介して、サーバ２０へ送信する。
【００４８】
次に、ステップＳ４０８において、セグメント送信部１０４ａ５は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３をリセットする。リセットの後、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３は、計時を開始する。
【００４９】
一方、ステップＳ４０４において、ＴＣＰセグメントがＲＴＯ  Ｒｅｓｅｔ  ＡＣＫであると判定された場合、ステップＳ４０９において、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫ監視部１０４ａ６は、セグメント送信部１０４ａ５がＲＴＯ  Ｒｅｓｅｔ  ＡＣＫに対応するＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔを送信してから、セグメント受信部１０４ａ１がＲＴＯ  Ｒｅｓｅｔ  ＡＣＫを受信するまでの間に、当該ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫを含んだＴＣＰセグメント以外のＴＣＰセグメントを、サーバ２０から受信したか否かを判定する。ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔは、サーバ２０内のＲＴＯタイマ２０４ａ３のリセットを要求する情報である。
【００５０】
ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓの送信からＲＴＯ  Ｒｅｓｅｔ  ＡＣＫの受信までの間に、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫを含んだＴＣＰセグメント以外のＴＣＰセグメントを受信していない場合には、ステップＳ４１０において、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫ監視部１０４ａ６は、ＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４の状態を、ＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔの送信が不能な状態である「Ｄｉｓａｂｌｅ」に設定する。
【００５１】
一方、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓの送信からＲＴＯ  Ｒｅｓｅｔ  ＡＣＫの受信までの間に、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫを含んだＴＣＰセグメント以外のＴＣＰセグメントを受信している場合には、ステップＳ４１１において、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫ監視部１０４ａ６は、ＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４の状態を、「Ｅｎａｂｌｅ」に設定する。
【００５２】
図６は、無線端末１０におけるＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３のタイムアウト時の動作を示すフローチャートである。
【００５３】
ステップＳ５０１において、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３がタイムアウトになると、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４は、Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３からのタイムアウトの通知を受ける。
【００５４】
ステップＳ５０２において、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４は、自身の状態が「Ｅｎａｂｌｅ」であるか否かを判定する。
【００５５】
Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４の状態が「Ｅｎａｂｌｅ」であると判定された場合、ステップＳ５０３において、セグメント送信部１０４ａ５は、新たなＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔを含んだＴＣＰセグメントを生成する。
【００５６】
本実施形態では、図５に示すＴＣＰセグメントのＴＣＰヘッダ内の４ビット長のＲｅｓｅｒｖｅｄ領域のうち、１つのビットが、ＴＣＰセグメントがＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔであるか否かを示すフラグとなり、ＲＴＯ  Ｒｅｓｅｔ  ＲｅｑｕｅｓｔはＴＣＰヘッダのみで構成される。例えば、フラグが「１」であれば、ＴＣＰセグメントがＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔであることを示す。セグメント送信部１０４ａ５は、新たなＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔを含んだＴＣＰセグメントを生成する際に、このフラグを設定する。
【００５７】
更に、セグメント送信部１０４ａ５は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔを含んだＴＣＰセグメントを、無線通信部１２０、アンテナ１３０及びパケット交換網５０を介して、サーバ２０へ送信する。
【００５８】
その後、ステップＳ５０４において、セグメント送信部１０４ａ５は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３をリセットする。リセットの後、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３は、計時を開始する。
【００５９】
一方、ステップＳ５０２において、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４の状態が「Ｅｎａｂｌｅ」でないと判定された場合、換言すれば、Ｒｅｑｕｅｓｔ送信決定部１０４ａ４の状態が「Ｄｉｓａｂｌｅ」であると判定された場合には、一連の動作が終了する。従って、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３はリセットされず、その後、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫを含んだＴＣＰセグメント以外のＴＣＰセグメントが受信されるまで、タイムアウトの状態を継続する。
【００６０】
（５）サーバの動作
図７は、サーバ２０におけるＴＣＰセグメント受信時の動作を示すフローチャートである。
【００６１】
ステップＳ６０１において、セグメント受信部２０４ａ１は、無線端末１０からのパケットに含まれるＴＣＰセグメントを、パケット交換網５０及びＩ／Ｆ部２２０を介して受信する。
【００６２】
ステップＳ６０２において、セグメント受信部２０４ａ１は、ＲＴＴを算出する。具体的には、無線端末１０内のセグメント受信部１０４ａ１と同様、セグメント受信部２０４ａ１は、図５に示すＴＣＰセグメントのＴＣＰヘッダ内のタイムスタンプオプションの情報によって、ＲＴＴを算出する。
【００６３】
ステップＳ６０３において、ＲＴＯ時間決定部２０４ａ２は、ＲＴＯタイマ２０４ａ３のタイムアウト時間であるＲＴＯを算出し、設定する。具体的には、ＲＴＯ時間決定部２０４ａ２は、セグメント受信部２０４ａ１によって算出されたＲＴＴと、上述した式（１）とに基づいてＲＴＯを算出する。
【００６４】
ステップＳ６０４において、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ監視部２０４ａ６は、セグメント受信部２０４ａ１によって受信されたＴＣＰセグメントが、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔであるか否かを判定する。具体的には、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ監視部２０４ａ６は、図５に示すＴＣＰセグメントのＴＣＰヘッダ内の４ビット長のＲｅｓｅｒｖｅｄ領域のうち、ＴＣＰセグメントがＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔであるか否かを示すフラグに基づいて、ＴＣＰセグメントが、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔであるか否かを判定することができる。
【００６５】
ＴＣＰセグメントがＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔでないと判定された場合、ステップＳ６０５において、セグメント送信部２０４ａ５は、通常のＴＣＰセグメントの送信処理を行う。この送信処理において、セグメント送信部２０４ａ５は、ＲＴＯタイマ２０４ａ３をリセットする。リセットの後、ＲＴＯタイマ２０４ａ３は、計時を開始する。
【００６６】
一方、ステップＳ６０４において、ＴＣＰセグメントがＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔであると判定された場合、ステップＳ６０６において、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ監視部２０４ａ６は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔに対応するＲＴＯ  Ｒｅｓｅｔ  ＡＣＫを含んだＴＣＰセグメントを生成する。
【００６７】
この際、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ監視部２０４ａ６は、図５に示すＴＣＰセグメントのＴＣＰヘッダ内の４ビット長のＲｅｓｅｒｖｅｄ領域のうち、ＴＣＰセグメントがＲＴＯ  Ｒｅｓｅｔ  ＡＣＫであるか否かを示すフラグを設定する。更に、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ監視部２０４ａ６は、ＴＣＰセグメントのＴＣＰヘッダ内のタイムスタンプオプションにおける、タイムスタンプエコー応答に、ステップＳ６０１においてセグメント受信部２０４ａ１によって受信されたＲＴＯ  Ｒｅｓｅｔ  ＲｅｑｕｅｓｔとしてのＴＣＰセグメントのＴＣＰヘッダ内のタイムスタンプオプションに含まれる、無線端末１０におけるＴＣＰセグメントの送信時刻を含ませる。これにより、無線端末１０は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ  ＡＣＫが、どのＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔに対する確認応答であるかを判定可能となる。
【００６８】
更に、セグメント送信部２０４ａ５は、ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫを含んだＴＣＰセグメントを、Ｉ／Ｆ部２２０及びパケット交換網５０を介して、無線端末１０へ送信する。
【００６９】
更に、ステップＳ６０７において、セグメント送信部２０４ａ５は、ＲＴＯタイマ２０４ａ３をリセットする。リセットの後、ＲＴＯタイマ２０４ａ３は、計時を開始する。
【００７０】
（６）通信システムの動作
無線端末１０とサーバ２０とは上述した動作を行うが、これらが協働することにより、通信システム１全体では、以下の動作が行われる。なお、以下においては、最小の伝送単位（ＭＭＳ：Maximum Segment Size）を１０００バイト、サーバ２０の輻輳ウインドウサイズを固定の１ＭＭＳ、すなわち、１０００バイトとする。
【００７１】
図８は、無線通信区間の下りリンクにおいて、無線基地局３０のスケジューラによる遅延が発生した場合の通信システム１の動作を示すシーケンス図である。
【００７２】
ステップＳ７０１において、サーバ２０内のセグメント送信部２０４ａ５は、無線端末１０に向けて、シーケンス番号（ｓｅｑ）が１〜１０００の１０００バイトのデータ（Ｄａｔａ(1〜1000)）を含んだＴＣＰセグメント送信する。無線端末１０内のセグメント受信部１０４ａ１は、無線基地局３０を介してＤａｔａ(1〜1000)を含んだＴＣＰセグメントを受信する。
【００７３】
ステップＳ７０２において、無線端末１０内のセグメント送信部１０４ａ５は、受信したＤａｔａ(1〜1000)に対する確認応答として、次に受信すべきデータの先頭のシーケンス番号１００１と、受信ウインドウサイズ（ｒｗｎｄ）である１０００バイトとを含んだＡＣＫ(seq=1001, rwnd=1000)を生成し、当該ＡＣＫ(seq=1001, rwnd=1000)を含んだＴＣＰセグメントをサーバ２０へ向けて送信する。この際、無線端末１０内のＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３はリセットされる。サーバ２０内のセグメント受信部２０４ａ１は、無線基地局３０を介してＡＣＫ(seq=1001, rwnd=1000)を含んだＴＣＰセグメントを受信する。
【００７４】
ステップＳ７０３において、サーバ２０内のセグメント送信部２０４ａ５は、受信したＡＣＫ(seq=1001, rwnd=1000)に対応する、シーケンス番号が１００１〜２０００の１０００バイトのデータ（Ｄａｔａ(1001〜2000)）を含んだＴＣＰセグメントを送信する。
【００７５】
Ｄａｔａ(1001〜2000)を含んだＴＣＰセグメントは、無線基地局３０に到達する。この際、無線端末１０の受信状態が悪い等の理由により、無線基地局３０のスケジューラが無線端末１０に対して下りの無線リソースの割り当てを停止すると、無線基地局３０と無線端末との間の下りリンクによる通信が停止する。このため、Ｄａｔａ(1001〜2000)を含んだＴＣＰセグメントは、無線端末１０へ送信されないまま、無線基地局３０内のバッファに保持される。従って、Ｄａｔａ(1001〜2000)を含んだＴＣＰセグメントは、無線端末１０に到達せず、無線端末１０内のＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３は、リセットされずに、やがてタイムアウトに達する。
【００７６】
ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３がタイムアウトに達すると、ステップＳ７０４において、無線端末１０内のセグメント送信部１０４ａ５は、次に受信すべきデータの先頭のシーケンス番号１００１と、直前に送信したＡＣＫ、又は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔに含まれる受信ウインドウサイズよりも大きい受信ウインドウサイズ（ここでは１バイトだけ大きい１００１バイト）とを含んだＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ（ＲＲＲｅｑ(seq=1001, rwnd=1001)）を生成し、当該ＲＲＲｅｑ(seq=1001, rwnd=1001)）を含んだＴＣＰセグメントを送信する。サーバ２０が、同じシーケンス番号、且つ、同じ受信ウインドウサイズを含んだＡＣＫを複数回受信すると、重複するＡＣＫが発生したとみなして再送を行ってしまう場合がある。しかし、上述したようにＲＲＲｅｑに含まれる受信ウインドウサイズが直前に送信したＡＣＫ等に含まれる受信ウインドウサイズよりも大きくなることにより、サーバ２０による不要な再送が防止される。
【００７７】
なお、上述したように下りリンクの通信が停止しても、上りリンクの通信は可能である。このため、サーバ２０内のセグメント受信部２０４ａ１は、無線基地局３０を介して無線端末１０からのＲＲＲｅｑ(seq=1001, rwnd=1001)を含んだＴＣＰセグメントを受信できる。
【００７８】
ステップＳ７０５において、サーバ２０内のセグメント送信部２０４ａ５は、受信したＲＲＲｅｑ(seq=1001, rwnd=1000)に対する確認応答であるＲＴＯ  Ｒｅｓｅｔ  ＡＣＫ（ＲＲＡｃｋ）を含んだＴＣＰセグメントを無線端末１０に向けて送信する。更に、サーバ２０内のＲＴＯタイマ２０４ａ３がリセットされる。このように、ＲＴＯタイマ２０４ａ３がタイムアウトする前にＲＲＲｅｑが受信され、当該ＲＴＯタイマ２０４ａ３がリセットされることで、ＲＴＯタイマ２０４ａ３がタイムアウトし、サーバ２０が、既に無線基地局３０内のバッファに保持されているＤａｔａ(1001〜2000)を再送すること、換言すれば、不要な再送が防止される。
【００７９】
ここでは、依然として下りリンクの通信が停止しているため、ＲＲＡｃｋは無線端末１０に到達せず、無線基地局３０内のバッファに保持される。このため、無線端末１０内のＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３は、リセットされずに、再度タイムアウトに達する。
【００８０】
ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３がタイムアウトに達すると、ステップＳ７０６において、無線端末１０内のセグメント送信部２０４ａ５は、ステップＳ７０４と同様、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔとして、次に受信すべきデータの先頭のシーケンス番号１００１と、直前に送信したＲＲＲｅｑ(seq=1001, rwnd=1001)に含まれる受信ウインドウサイズ１００１バイトよりも大きい受信ウインドウサイズ（ここでは１バイトだけ大きい１００２バイト）とを含んだＲＲＲｅｑ(seq=1001, rwnd=1002)を生成し、当該ＲＲＲｅｑ(seq=1001, rwnd=1002)を含んだＴＣＰセグメントを送信する。サーバ２０内のセグメント受信部２０４ａ１は、無線基地局３０を介して無線端末１０からのＲＲＲｅｑ(seq=1001, rwnd=1002)を含んだＴＣＰセグメントを受信する。
【００８１】
ステップＳ７０７において、サーバ２０は、受信したＲＲＲｅｑ(seq=1001, rwnd=1000)に対する確認応答であるＲＲＡｃｋを含んだＴＣＰセグメントを、無線端末１０に向けて送信する。更に、ＲＴＯタイマ２０４ａ３がリセットされる。ここでも、依然として下りリンクの通信が停止しているため、ＲＲＡｃｋは無線端末１０に到達せず、無線基地局３０内のバッファに保持される。
【００８２】
その後、無線端末１０の受信状態が回復した等の理由により、無線基地局３０のスケジューラが無線端末１０に対して下りの無線リソースの割り当てを再開すると、無線基地局３０と無線端末との間の下りリンクによる通信が再開する。このため、ステップＳ７０８において、無線基地局３０は、バッファ内の無線端末１０向けのデータのうち、最初に保持されたＤａｔａ(1001〜2000)を含んだＴＣＰセグメントを送信する。無線端末１０内のセグメント受信部１０４ａ１は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３がタイムアウトする前に、Ｄａｔａ(1001〜2000)を含んだＴＣＰセグメントを受信する。
【００８３】
ステップＳ７０９において、無線端末１０内のセグメント送信部２０４ａ５は、受信したＤａｔａ(1001〜2000)に対する確認応答として、次に受信すべきデータの先頭のシーケンス番号１００１と、受信ウインドウサイズ１０００バイトとを含んだＡＣＫ(seq=1001, rwnd=1000)を生成し、当該ＡＣＫ(seq=1001, rwnd=1000)を含んだＴＣＰセグメントをサーバ２０へ向けて送信する。この際、無線端末１０内のＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４の状態は、ＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔの送信が可能な状態である「Ｅｎａｂｌｅ」に設定される。更には、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３はリセットされる。サーバ２０内のセグメント受信部２０４ａ１は、無線基地局３０を介してＡＣＫ(seq=1001, rwnd=1000)を受信する。この際、ＲＴＯタイマ２０４ａ３はリセットされる。
【００８４】
ステップＳ７１０において、無線基地局３０は、２つのＲＲＡｃｋを含んだＴＣＰセグメントを無線端末１０へ送信する。無線端末１０は、２つのＲＲＡｃｋを含んだＴＣＰセグメントを受信する。この際、受信したＲＲＡｃｋに対応するＲＲＲｅｑがステップＳ７０４及びステップＳ７０６において送信されてから、ステップＳ７１０においてＲＲＡｃｋを受信するまでの間に、無線端末１０は、ステップＳ７０８においてＤａｔａ(1001〜2000)を受信している。従って、無線端末１０内のＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４の状態は、ＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔの送信が可能な状態である「Ｅｎａｂｌｅ」に設定される。
【００８５】
図９は、パケット交換網５０において比較的長い時間の輻輳が発生した場合の通信システム１の動作を示すシーケンス図である。
【００８６】
ステップＳ８０１及びステップＳ８０２の動作は、図８のステップＳ７０１及びステップＳ７０２の動作と同様であるので、その説明は省略する。
【００８７】
ステップＳ８０３において、サーバ２０内のセグメント送信部２０４ａ５は、受信したＡＣＫ(seq=1001, rwnd=1000)に対応する、シーケンス番号が１００１〜２０００の１０００バイトのデータ（Ｄａｔａ(1001〜2000)）を含んだＴＣＰセグメントを送信する。
【００８８】
この際、パケット交換網５０に輻輳が発生すると、Ｄａｔａ(1001〜2000)を含んだＴＣＰセグメントは、無線基地局３０に到達せずに喪失してしまう。このため、Ｄａｔａ(1001〜2000)を含んだＴＣＰセグメントは、無線端末１０へ到達せず、無線端末１０内のＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３は、リセットされずに、やがてタイムアウトに達する。
【００８９】
ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３がタイムアウトに達すると、ステップＳ８０４において、無線端末１０内のセグメント送信部１０４ａ５は、次に受信すべきデータの先頭のシーケンス番号１００１と、直前に送信したＡＣＫ、又は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔに含まれる受信ウインドウサイズよりも大きい受信ウインドウサイズ（ここでは１バイトだけ大きい１００１バイト）とを含んだＲＲＲｅｑ(seq=1001, rwnd=1001)を生成し、当該ＲＲＲｅｑ(seq=1001, rwnd=1001)を含んだＴＣＰセグメントを送信する。
【００９０】
しかしながら、ここでは、パケット交換網５０に輻輳が継続しているため、ＲＲＲｅｑ(seq=1001, rwnd=1001)を含んだＴＣＰセグメントは、サーバ２０へ到達せずに喪失する。このため、サーバ２０から無線端末１０へＤａｔａ(1001〜2000)を含んだＴＣＰセグメントは送信されず、無線端末１０内のＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３は、リセットされずに、再度タイムアウトに達する。
【００９１】
ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３がタイムアウトに達すると、ステップＳ８０５において、無線端末１０内のセグメント送信部１０４ａ５は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔとして、次に受信すべきデータの先頭のシーケンス番号１００１と、直前に送信したＲＲＲｅｑ(seq=1001, rwnd=1001)に含まれる受信ウインドウサイズ１００１バイトよりも大きい受信ウインドウサイズ（ここでは１バイトだけ大きい１００２バイト）とを含んだＲＲＲｅｑ(seq=1001, rwnd=1002)を生成し、ＲＲＲｅｑ(seq=1001, rwnd=1002)を含んだＴＣＰセグメントを送信する。ここでは、パケット交換網５０の輻輳状態が解消されているため、サーバ２０内のセグメント受信部２０４ａ１は、無線基地局３０を介して無線端末１０からのＲＲＲｅｑ(seq=1001, rwnd=1002)を含んだＴＣＰセグメントを受信する。
【００９２】
一方、ステップＳ８０２においてサーバ２０がＡＣＫを受信した後、当該サーバ２０は、無線端末１０からのデータを受信しない状態が継続するため、サーバ２０内のＲＴＯタイマ２０４ａ３は、リセットされずに、やがてタイムアウトに達する。ＲＴＯタイマ２０４ａ３がタイムアウトに達すると、ステップＳ８０６において、サーバ２０内のセグメント再送決定部２０４ａ４は、Ｄａｔａ(1001〜2000)の再送を決定し、セグメント送信部２０４ａ５は、Ｄａｔａ(1001〜2000)を含んだＴＣＰセグメントを再送する。ここで、パケット交換網５０の輻輳状態が解消されているため、無線端末１０内のセグメント受信部１０４ａ１は、無線基地局３０を介してサーバ２０からのＤａｔａ(1001〜2000)を含んだＴＣＰセグメントを受信する。
【００９３】
ステップＳ８０７において、サーバ２０内のセグメント送信部２０４ａ５は、ステップＳ８０５において受信したＲＲＲｅｑ(seq=1001, rwnd=1002)に対する確認応答であるＲＴＯ  Ｒｅｓｅｔ  ＡＣＫ（ＲＲＡｃｋ）を含んだＴＣＰセグメントを、無線端末１０に向けて送信する。更に、ＲＴＯタイマ２０４ａ３がリセットされる。このように、ＲＴＯタイマ２０４ａ３がタイムアウトする前にＲＲＲｅｑが受信され、当該ＲＴＯタイマ２０４ａ３がリセットされることで、ＲＴＯタイマ２０４ａ３がタイムアウトし、サーバ２０が、Ｄａｔａ(1001〜2000)を再送すること、換言すれば、不要な再送が防止される。無線端末１０内のセグメント受信部１０４ａ１は、無線基地局３０を介してＲＲＡｃｋを含んだＴＣＰセグメントを受信する。
【００９４】
一方、ステップＳ８０８において、無線端末１０内のセグメント送信部１０４ａ５は、ステップＳ８０６において受信したＤａｔａ(1001〜2000)に対する確認応答として、次に受信すべきデータの先頭のシーケンス番号２００１と、受信ウインドウサイズ１０００バイトとを含んだＡＣＫ(seq=2001, rwnd=1000)を生成し、当該ＡＣＫ(seq=2001, rwnd=1000)を含んだＴＣＰセグメントを、サーバ２０へ向けて送信する。この際、無線端末１０内のＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４の状態は、ＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔの送信が可能な状態である「Ｅｎａｂｌｅ」に設定される。更には、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３はリセットされる。サーバ２０内のセグメント受信部２０４ａ１は、無線基地局３０を介してＡＣＫ(seq=2001, rwnd=1000)を含んだＴＣＰセグメントを受信する。この際、ＲＴＯタイマ２０４ａ３はリセットされる。
【００９５】
図１０は、パケット交換網５０において比較的短い時間の輻輳が発生した場合の通信システム１の動作を示すシーケンス図である。
【００９６】
ステップＳ９０１及びステップＳ９０２の動作は、図８のステップＳ７０１及びステップＳ７０２の動作と同様であるので、その説明は省略する。
【００９７】
ステップＳ９０３において、サーバ２０内のセグメント送信部２０４ａ５は、受信したＡＣＫ(seq=1001, rwnd=1000)に対応する、シーケンス番号が１００１〜２０００の１０００バイトのデータ（Ｄａｔａ(1001〜2000)）を含んだＴＣＰセグメントを送信する。
【００９８】
この際、パケット交換網５０に輻輳が発生すると、Ｄａｔａ(1001〜2000)を含んだセグメントは、無線基地局３０に到達せずに喪失してしまう。このため、Ｄａｔａ(1001〜2000)を含んだセグメントは、無線端末１０へ到達せず、無線端末１０内のＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３は、リセットされずに、やがてタイムアウトに達する。
【００９９】
ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３がタイムアウトに達すると、ステップＳ９０４において、無線端末１０内のセグメント送信部１０４ａ５は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔとして、次に受信すべきデータの先頭のシーケンス番号１００１と、直前に送信したＡＣＫ、又は、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔに含まれる受信ウインドウサイズよりも大きい受信ウインドウサイズ（ここでは１バイトだけ大きい１００１バイト）とを含んだＲＲＲｅｑ(seq=1001, rwnd=1001)を生成し、当該ＲＲＲｅｑ(seq=1001, rwnd=1001)を含んだＴＣＰセグメントを送信する。
【０１００】
ここでは、パケット交換網５０の輻輳が解消されているため、サーバ２０内のセグメント受信部２０４ａ１は、無線基地局３０を介して、無線端末１０からのＲＲＲｅｑ(seq=1001, rwnd=1002)を含んだＴＣＰセグメントを受信する。
【０１０１】
ステップＳ９０５において、サーバ２０内のセグメント送信部２０４ａ５は、受信したＲＲＲｅｑ(seq=1001, rwnd=1002)に対する確認応答であるＲＴＯ  Ｒｅｓｅｔ  ＡＣＫ（ＲＲＡｃｋ）を含んだＴＣＰセグメントを、無線端末１０に向けて送信する。更に、ＲＴＯタイマ２０４ａ３はリセットされる。無線端末１０内のセグメント受信部２０４ａ１は、無線基地局３０を介してＲＲＡｃｋを含んだＴＣＰセグメントを受信する。この際、受信したＲＲＡｃｋに対応するＲＲＲｅｑがステップＳ９０４において送信されてから、ステップＳ９０５においてＲＲＡｃｋを受信するまでの間に、無線端末１０は、サーバ２０からのデータを受信していない。従って、無線端末１０内のＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４の状態は、ＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔの送信が不能な状態である「Ｄｉｓａｂｌｅ」に設定される。
【０１０２】
ステップＳ９０５においてサーバ２０がＲＲＲｅｑを受信した後、当該サーバ２０は、無線端末１０からのデータを受信しない状態が継続するため、サーバ２０内のＲＴＯタイマ２０４ａ３は、リセットされずに、やがてタイムアウトに達する。ＲＴＯタイマ２０４ａ３がタイムアウトに達すると、ステップＳ９０６において、サーバ２０内のセグメント再送決定部２０４ａ４は、Ｄａｔａ(1001〜2000)の再送を決定し、セグメント送信部２０４ａ５は、Ｄａｔａ(1001〜2000)を含んだＴＣＰセグメントを再送する。無線端末１０内のセグメント受信部２０４ａ１は、無線基地局３０を介して、サーバ２０からのＤａｔａ(1001〜2000)を含んだＴＣＰセグメントを受信する。
【０１０３】
ステップＳ９０７において、サーバ２０内のセグメント送信部２０４ａ５は、受信したＤａｔａ(1001〜2000)に対する確認応答として、次に受信すべきデータの先頭のシーケンス番号２００１と、受信ウインドウサイズ１０００バイトとを含んだＡＣＫ(seq=2001, rwnd=1000)を生成し、当該ＡＣＫ(seq=2001, rwnd=1000)を含んだＴＣＰセグメントを、サーバ２０へ向けて送信する。この際、無線端末１０内のＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部１０４ａ４の状態は、ＲＴＯ  Ｒｓｅｔ  Ｒｅｑｕｅｓｔの送信が可能な状態である「Ｅｎａｂｌｅ」に設定される。更には、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３はリセットされる。サーバ２０内のセグメント受信部２０４ａ１は、無線基地局３０を介してＡＣＫ(seq=2001, rwnd=1000)を受信する。この際、ＲＴＯタイマ２０４ａ３はリセットされる。
【０１０４】
（７）作用・効果
本発明の実施形態に係る通信システム１では、サーバ２０は、データを送信する。この時、サーバ２０内のＲＴＯタイマ２０４ａ３は、リセットされ、計時を開始する。一方、無線端末１０は、データを受信した場合に、確認応答としてのＡＣＫを返信する。この時、無線端末１０内のＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３は、リセットされ、計時を開始する。
【０１０５】
その後、無線端末１０が、サーバ２０からのデータを受信せず、確認応答としてのＡＣＫを返信しない状態が継続し、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３がタイムアウトに達すると、無線端末１０は、サーバ２０に対して、当該サーバ２０内のＲＴＯタイマ２０４ａ３をリセットするためのＲＲＲｅｑを送信する。サーバ２０がＲＲＲｅｑを受信すると、ＲＴＯタイマ２０４ａ３は、リセットされ、計時を開始する。
【０１０６】
ここで、ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ１０４ａ３のタイムアウト時間は、サーバ２０内のＲＴＯタイマ２０４ａ３のタイムアウト時間であるＲＴＯよりも短い時間に設定されている。このため、サーバ２０がＲＲＲｅｑを受信する前に、ＲＴＯタイマ２０４ａ３がタイムアウトになって、データの再送が行われることはない。
【０１０７】
従って、図８に示すように、無線基地局３０のスケジューラによる遅延が発生し、無線基地局３０内のバッファに保持されているような場合に、サーバ２０が不要な再送を行うことが防止される。
【０１０８】
一方、図９及び図１０に示すように、パケット交換網５０において輻輳が発生した場合には、サーバ２０はデータを再送する必要があるが、この場合には、この場合には、サーバ２０がＲＲＲｅｑを受信することなく、ＲＴＯタイマ２０４ａ３がタイムアウトになって、データの再送が行われる。
【０１０９】
従って、遅延発生時に適切な通信制御を行うことができる。
【０１１０】
また、本実施形態では、ＲＲＲｅｑとＲＲＡｃｋがネットワーク上を伝送され、オーバヘッドとなる。しかしながら、ＲＲＲｅｑとＲＲＡｃｋは、ＴＣＰヘッダのみで構成されるため、不要なデータが再送される場合よりも、データ長は短く、オーバヘッドは小さくなる。
【０１１１】
（８）その他の実施形態
上記のように、本発明は実施形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなる。
【０１１２】
上述した実施形態では、無線端末１０と無線基地局３０との間の無線通信区間において３ＧＰＰｓ仕様の技術（例えば、ｃｄｍａ  １ｘ、ＥＶ−ＤＯ、ＨＳＤＰＡ、ＬＴＥ等）の技術が用いられているが、無線通信区間には、他の技術が用いられていてもよい。
【０１１３】
このように本発明は、ここでは記載していない様々な実施形態等を包含するということを理解すべきである。したがって、本発明はこの開示から妥当な特許請求の範囲の発明特定事項によってのみ限定されるものである。
【産業上の利用可能性】
【０１１４】
本発明の通信システム、送信装置、受信装置及び通信制御方法によれば、遅延発生時に適切な通信制御を行うことが可能であり、通信システム等として有用である。
【符号の説明】
【０１１５】
１…通信システム、１０…無線端末、２０…サーバ、３０…無線基地局、５０…パケット交換網、１００…制御部、１０１…物理層処理部、１０２…データリンク層処理部、１０３…ネットワーク層処理部、１０４…トランスポート層処理部、１０４ａ…ＴＣＰ受信処理部、１０４ａ１…セグメント受信部、１０４ａ２…タイムアウト時間決定部、１０４ａ３…ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔタイマ、１０４ａ４…ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ送信決定部、１０４ａ５…セグメント送信部、１０４ａ６…ＲＴＯ  Ｒｅｓｅｔ  ＡＣＫ監視部、１０５…セッション層処理部、１０６…プレゼンテーション層処理部、１０７…アプリケーション層処理部、１１０…記憶部、１２０…無線通信部、１３０…アンテナ、２００…制御部、２０１…物理層処理部、２０２…データリンク層処理部、２０３…ネットワーク層処理部、２０４…トランスポート層処理部、２０４ａ…ＴＣＰ送信処理部、２０４ａ１…セグメント受信部、２０４ａ２…ＲＴＯ時間決定部、２０４ａ３…ＲＴＯタイマ、２０４ａ４…セグメント再送決定部、２０４ａ５…セグメント送信部、２０４ａ６…ＲＴＯ  Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ監視部、２０５…セッション層処理部、２０６…プレゼンテーション層処理部、２０７…アプリケーション層処理部、２１０…記憶部、１２０…Ｉ／Ｆ部
【図１】
2011147035.tif 000004
【図２】
2011147035.tif 000005
【図３】
2011147035.tif 000006
【図４】
2011147035.tif 000007
【図５】
2011147035.tif 000008
【図６】
2011147035.tif 000009
【図７】
2011147035.tif 000010
【図８】
2011147035.tif 000011
【図９】
2011147035.tif 000012
【図１０】
2011147035.tif 000013