(57)【要約】【課題】端末装置に無線通信装置を装着してサーバ装置との通信を行うケースにおいても、ウィンドウサイズを適切に設定できる端末装置を提供する。【解決手段】端末装置１は、ネットワーク層以上のプロトコルを処理するＴＣＰ処理部１２０と、データリンク層と対応して設けられ、無線通信装置２を制御するデバイスドライバ部１１０とを備える。ＴＣＰ処理部１２０は、端末装置１とサーバ装置５との間の往復遅延時間を測定し、当該往復遅延時間をデバイスドライバ部１１０に通知する。デバイスドライバ部１１０は、無線通信装置２に対して最適化された多次元テーブルＴを用いて、ＴＣＰ処理部１２０から通知された往復遅延時間と、無線区間の予測データ帯域とから、サーバ装置５のデータ送信量を決定し、決定したデータ送信量をＴＣＰ処理部１２０に通知する。【選択図】図３
2011151738.tif 000002
【特許請求の範囲】
【請求項１】
装着された無線通信装置を用いて、サーバ装置から送信されるデータをネットワークを介して受信する端末装置であって、
ＯＳＩ参照モデルのネットワーク層以上のプロトコルを処理する上位層プロトコル処理部と、
ＯＳＩ参照モデルのデータリンク層と対応して設けられ、前記無線通信装置を制御する装置制御部と
を備え、
前記上位層プロトコル処理部は、
前記端末装置と前記サーバ装置との間の往復遅延時間を測定する測定部と、
前記往復遅延時間を前記装置制御部に通知する第１の通知部と
を有し、
前記装置制御部は、
前記無線通信装置に対して最適化された導出用情報を用いて、前記上位層プロトコル処理部から通知された前記往復遅延時間と、無線区間の予測データ帯域とから、前記サーバ装置のデータ送信量を決定する決定部と、
前記決定部によって決定された前記データ送信量を前記上位層プロトコル処理部に通知する第２の通知部と
を有する端末装置。
【請求項２】
前記測定部は、前記往復遅延時間を複数回測定し、
前記第１の通知部は、前記測定部によって複数回測定された往復遅延時間のうち最小の往復遅延時間を前記装置制御部に通知する請求項１に記載の端末装置。
【請求項３】
複数種類の無線通信装置の何れかが前記端末装置に装着される場合、前記決定部は、前記複数種類の無線通信装置毎に用意された複数の導出用情報のうち、前記端末装置に装着された無線通信装置と対応する導出用情報を用いて前記データ送信量を決定する請求項１又は２に記載の端末装置。
【請求項４】
前記上位層プロトコル処理部は、
前記装置制御部によって通知された前記データ送信量を調整する調整部と、
前記装置制御部によって通知された前記データ送信量又は前記調整部による調整後の前記データ送信量を示す情報を含み、前記サーバ装置に送信される確認応答を生成する生成部と
をさらに有する請求項１〜３の何れか一項に記載の端末装置。
【請求項５】
前記装置制御部は、
前記無線通信装置が行う無線通信の状況を示す無線通信情報を取得する取得部と、
前記取得部によって取得された前記無線通信情報を用いて前記予測データ帯域を計算する計算部と
をさらに有する請求項１〜４の何れか一項に記載の端末装置。
【請求項６】
前記装置制御部は、前記往復遅延時間と前記予測データ帯域と前記データ送信量との対応付けである前記導出用情報を予め記憶する記憶部をさらに備え、
前記決定部は、前記記憶部に記憶された前記導出用情報を参照して、前記上位層プロトコル処理部から通知された前記往復遅延時間と、前記計算部によって計算された前記予測データ帯域とに対応する前記データ送信量を決定し、
前記記憶部は、実験又はシミュレーションにより求められた前記データ送信量を記憶する請求項５に記載の端末装置。
【請求項７】
前記記憶部は、前記装置制御部の外部から参照できないように構成されている請求項６に記載の端末装置。
【請求項８】
前記上位層プロトコル処理部は、ＯＳＩ参照モデルのトランスポート層のプロトコルであるＴＣＰに従った処理を行う請求項１〜７の何れか一項に記載の端末装置。
【請求項９】
前記装置制御部は、前記無線通信装置と対応するデバイスドライバを前記端末装置にインストールすることによって構成される請求項１〜８の何れか一項に記載の端末装置。
【請求項１０】
装着された無線通信装置を用いて、サーバ装置から送信されるデータをネットワークを介して受信する端末装置に、
ＯＳＩ参照モデルのネットワーク層以上のプロトコルを処理する上位層プロトコル処理手順と、
ＯＳＩ参照モデルのデータリンク層と対応して設けられ、前記無線通信装置を制御する装置制御手順と
を実行させ、
前記上位層プロトコル処理手順は、
前記端末装置と前記サーバ装置との間の往復遅延時間を測定する測定手順と、
前記往復遅延時間を前記装置制御手順に通知する第１の通知手順と
を有し、
前記装置制御手順は、
前記無線通信装置に対して最適化された導出用情報を用いて、前記上位層プロトコル処理手順から通知された前記往復遅延時間と、無線区間の予測データ帯域とから、前記サーバ装置のデータ送信量を決定する決定手順と、
前記決定手順によって決定された前記データ送信量を前記上位層プロトコル処理手順に通知する第２の通知手順と
を有する制御プログラム。
【請求項１１】
装着された無線通信装置を用いて、サーバ装置から送信されるデータをネットワークを介して受信する端末装置の制御方法であって、
ＯＳＩ参照モデルのネットワーク層以上のプロトコルを処理する上位層プロトコル処理部が、前記端末装置と前記サーバ装置との間の往復遅延時間を測定するステップと、
前記上位層プロトコル処理部が、ＯＳＩ参照モデルのデータリンク層と対応して設けられ、前記無線通信装置を制御する装置制御部に前記往復遅延時間を通知するステップと、
前記装置制御部が、前記無線通信装置に対して最適化された導出用情報を用いて、前記上位層プロトコル処理部から通知された前記往復遅延時間と、無線区間の予測データ帯域とから、前記サーバ装置のデータ送信量を決定するステップと、
前記装置制御部が、前記決定するステップによって決定された前記データ送信量を前記上位層プロトコル処理部に通知するステップと
を有する制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置との通信を行うクライアントとして動作する端末装置、制御プログラム及び制御方法に関する。
【背景技術】
【０００２】
現在、高速大容量の無線通信システムが普及している。そのような無線通信システムにおいては、ＯＳＩ参照モデルのトランスポート層にＴＣＰ（Transmission Control Protocol）を使用するアプリケーションが多数利用されている。
【０００３】
ＴＣＰでは、データ送信側であるサーバ装置がデータ受信側であるクライアントからの確認応答（ＡＣＫ）を受信しなくても、サーバ装置からクライアントへ連続してデータを送信できる量として受信ウィンドウサイズが設定される。クライアントは、受信ウィンドウサイズを決定し、サーバ装置へ送信するＡＣＫに当該受信ウィンドウサイズを示す情報を含めることで、サーバ装置からのデータ送信量を調整する。
【０００４】
受信ウィンドウサイズが小さすぎる場合、伝送路の帯域を最大限利用することができず、ＴＣＰのデータ帯域は頭打ちとなる。一方、受信ウィンドウサイズが大きすぎる場合、伝送路で一度に送ることのできるデータ量を超えてしまう。この場合、送りきれなかったデータは、例えばルータのバッファに一時的に蓄えられるが、その分、各パケットの到着時間が遅くなり、遅延が大きくなる。また、ルータのバッファからパケットが溢れた場合、パケットロスが発生するため、かえってデータ帯域が低下してしまう。
【０００５】
以上のことから、受信ウィンドウサイズを適切な値に設定しないと、ＴＣＰのデータ帯域が低下し、ＴＣＰを用いたアプリケーションの通信性能が劣化する。
【０００６】
受信ウィンドウサイズは、式(1)で求められる値に設定することが理想的とされている（非特許文献１参照）。
【０００７】
受信ウィンドウサイズ（bit）= データ帯域（bit/sec）×往復遅延時間（sec）・・(1)
なお、式(1)の往復遅延時間は、サーバ装置からクライアントまでの通信経路上のノード（ルータなど）におけるキュー待ち遅延を取り除いた、ノード間のリンク部分のみで発生する遅延である。
【０００８】
無線通信システムにおいては、クライアントとして無線通信装置が使用され、無線通信環境が動的に変化することから、適切な受信ウィンドウサイズを設定することが難しい。
【０００９】
無線通信システムに適用されるＴＣＰとしては、無線通信装置が使用する無線通信経路（無線ベアラ又はトランスポートチャネル）の種別と当該無線通信経路の状態とを考慮して、式(1)により受信ウィンドウサイズを設定する方式が提案されている（特許文献１参照）。特許文献１に記載の技術によれば、無線通信環境に適応した受信ウィンドウサイズを設定できるとされている。
【先行技術文献】
【非特許文献】
【００１０】
【非特許文献１】W.Richard Stevens、“詳解TCP/IP〈Vol.1〉プロトコル”、ピアソン・エデュケーション、pp.327、2000年
【特許文献】
【００１１】
【特許文献１】特開２００８−２８９０８０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、特許文献１に記載の技術には、クライアントとして動作するノートＰＣ等の端末装置に対し、外付けの無線通信装置を装着してサーバ装置との通信を行うケースにおいて、次のような問題がある。
【００１３】
具体的には、端末装置に装着される無線通信装置毎にその特性が異なることから、ある無線通信環境下において一の無線通信装置に対して適切な受信ウィンドウサイズが、他の無線通信装置に対しては不適切な受信ウィンドウサイズになることがある。
【００１４】
特許文献１に記載の技術では、受信ウィンドウサイズを設定する際に無線通信装置毎の特性の違いが十分に考慮されておらず、ウィンドウサイズを適切に設定できない問題があった。
【００１５】
そこで、本発明は、端末装置に無線通信装置を装着してサーバ装置との通信を行うケースにおいても、ウィンドウサイズを適切に設定できる端末装置、制御プログラム及び制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１６】
上述した課題を解決するために、本発明は以下のような特徴を有している。まず、本発明の第１の特徴は、装着された無線通信装置（無線通信装置２）を用いて、サーバ装置（サーバ装置５）から送信されるデータをネットワーク（ネットワーク４）を介して受信する端末装置（端末装置１）であって、ＯＳＩ参照モデルのネットワーク層以上のプロトコルを処理する上位層プロトコル処理部（例えばＴＣＰ処理部１２０）と、ＯＳＩ参照モデルのデータリンク層と対応して設けられ、前記無線通信装置を制御する装置制御部（例えばデバイスドライバ部１１０）とを備え、前記上位層プロトコル処理部は、前記端末装置と前記サーバ装置との間の往復遅延時間を測定する測定部（往復遅延時間測定部１２１）と、前記往復遅延時間を前記装置制御部に通知する第１の通知部（最小往復遅延時間通知部１２３）とを有し、前記装置制御部は、前記無線通信装置に対して最適化された導出用情報（例えば多次元テーブルＴ）を用いて、前記上位層プロトコル処理部から通知された前記往復遅延時間と、無線区間の予測データ帯域とから、前記サーバ装置のデータ送信量を決定する決定部（受信ウィンドウサイズ決定部１１５）と、前記決定部によって決定された前記データ送信量を前記上位層プロトコル処理部に通知する第２の通知部（受信ウィンドウサイズ通知部１１６）とを有することを要旨とする。
【００１７】
このような特徴によれば、端末装置に無線通信装置を装着してサーバ装置との通信を行うケースにおいても、端末装置がウィンドウサイズを適切に設定できる。
【００１８】
本発明の第２の特徴は、本発明の第１の特徴に係り、前記測定部は、前記往復遅延時間を複数回測定し、前記第１の通知部は、前記測定部によって複数回測定された往復遅延時間のうち最小の往復遅延時間を前記装置制御部に通知することを要旨とする。
【００１９】
本発明の第３の特徴は、本発明の第１又は第２の特徴に係り、複数種類の無線通信装置の何れかが前記端末装置に装着される場合、前記決定部は、前記複数種類の無線通信装置毎に用意された複数の導出用情報のうち、前記端末装置に装着された無線通信装置と対応する導出用情報を用いて前記データ送信量を決定することを要旨とする。
【００２０】
本発明の第４の特徴は、本発明の第１〜第３の何れかの特徴に係り、前記上位層プロトコル処理部は、前記装置制御部によって通知された前記データ送信量を調整する調整部（受信ウィンドウサイズ調整部１２５）と、前記装置制御部によって通知された前記データ送信量又は前記調整部による調整後の前記データ送信量を示す情報を含み、前記サーバ装置に送信される確認応答を生成する生成部（ＡＣＫ生成部１２６）とをさらに有することを要旨とする。
【００２１】
本発明の第５の特徴は、本発明の第１〜第４の何れかの特徴に係り、前記装置制御部は、前記無線通信装置が行う無線通信の状況を示す無線通信情報を取得する取得部（無線通信情報取得部１１２）と、前記取得部によって取得された前記無線通信情報を用いて前記予測データ帯域を計算する計算部（予測データ帯域計算部１１３）とをさらに有することを要旨とする。
【００２２】
本発明の第６の特徴は、本発明の第５の特徴に係り、前記装置制御部は、前記往復遅延時間と前記予測データ帯域と前記データ送信量との対応付けである前記導出用情報を予め記憶する記憶部（多次元テーブル記憶部１１４）をさらに備え、前記決定部は、前記記憶部に記憶された前記導出用情報を参照して、前記上位層プロトコル処理部から通知された前記往復遅延時間と、前記計算部によって計算された前記予測データ帯域とに対応する前記データ送信量を決定し、前記記憶部は、実験又はシミュレーションにより求められた前記データ送信量を記憶することを要旨とする。
【００２３】
本発明の第７の特徴は、本発明の第６の特徴に係り、前記記憶部は、前記装置制御部の外部から参照できないように構成されていることを要旨とする。
【００２４】
本発明の第８の特徴は、本発明の第１〜第７の何れかの特徴に係り、前記上位層プロトコル処理部は、ＯＳＩ参照モデルのトランスポート層のプロトコルであるＴＣＰに従った処理を行うことを要旨とする。
【００２５】
本発明の第９の特徴は、本発明の第１〜第８の何れかの特徴に係り、前記装置制御部は、前記無線通信装置と対応するデバイスドライバを前記端末装置にインストールすることによって構成されることを要旨とする。
【００２６】
本発明の第１０の特徴は、装着された無線通信装置を用いて、サーバ装置から送信されるデータをネットワークを介して受信する端末装置に、ＯＳＩ参照モデルのネットワーク層以上のプロトコルを処理する上位層プロトコル処理手順と、ＯＳＩ参照モデルのデータリンク層と対応して設けられ、前記無線通信装置を制御する装置制御手順とを実行させ、前記上位層プロトコル処理手順は、前記端末装置と前記サーバ装置との間の往復遅延時間を測定する測定手順と、前記往復遅延時間を前記装置制御手順に通知する第１の通知手順とを有し、前記装置制御手順は、前記無線通信装置に対して最適化された導出用情報を用いて、前記上位層プロトコル処理手順から通知された前記往復遅延時間と、無線区間の予測データ帯域とから、前記サーバ装置のデータ送信量を決定する決定手順と、前記決定手順によって決定された前記データ送信量を前記上位層プロトコル処理手順に通知する第２の通知手順とを有する制御プログラムであることを要旨とする。
【００２７】
本発明の第１１の特徴は、装着された無線通信装置を用いて、サーバ装置から送信されるデータをネットワークを介して受信する端末装置の制御方法であって、ＯＳＩ参照モデルのネットワーク層以上のプロトコルを処理する上位層プロトコル処理部が、前記端末装置と前記サーバ装置との間の往復遅延時間を測定するステップと、前記上位層プロトコル処理部が、ＯＳＩ参照モデルのデータリンク層と対応して設けられ、前記無線通信装置を制御する装置制御部に前記往復遅延時間を通知するステップと、前記装置制御部が、前記無線通信装置に対して最適化された導出用情報を用いて、前記上位層プロトコル処理部から通知された前記往復遅延時間と、無線区間の予測データ帯域とから、前記サーバ装置のデータ送信量を決定するステップと、前記装置制御部が、前記決定するステップによって決定された前記データ送信量を前記上位層プロトコル処理部に通知するステップとを有することを要旨とする。
【発明の効果】
【００２８】
本発明によれば、端末装置に無線通信装置を装着してサーバ装置との通信を行うケースにおいても、ウィンドウサイズを適切に設定できる端末装置、制御プログラム及び制御方法を提供できる。
【図面の簡単な説明】
【００２９】
【図１】本発明の実施形態に係る通信システムの全体概略構成図である。
【図２】本発明の実施形態に係る端末装置及び無線通信装置の概略構成図である。
【図３】本発明の実施形態に係る端末装置の詳細構成図である。
【図４】CDMA 1x EV-DOにおいて、ある無線通信環境での受信ウィンドウサイズとデータ帯域・往復遅延時間との関係を示すグラフである。
【図５】本発明の実施形態に係る多次元テーブルの構成例を示す図である。
【図６】本発明の実施形態に係るＴＣＰ処理部の動作を示すフローチャートである。
【図７】本発明の実施形態に係るデバイスドライバ部の動作を示すフローチャートである。
【発明を実施するための形態】
【００３０】
次に、図面を参照して、本発明の実施形態を説明する。具体的には、（１）全体概略構成、（２）端末装置及び無線通信装置の構成、（３）多次元テーブル、（４）端末装置の動作、（５）作用・効果、（６）その他の実施形態について説明する。以下の実施形態における図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
【００３１】
（１）全体概略構成
図１は、本実施形態に係る通信システムの全体概略構成図である。
【００３２】
図１に示すように、本実施形態に係る通信システムは、端末装置１、無線通信装置２、無線基地局３、ネットワーク４、及びサーバ装置５を有する。
【００３３】
端末装置１は、例えばノートＰＣ等の可搬型の端末装置である。無線通信装置２は、端末装置１に装着可能であり、例えばカード型の形状を有する。無線基地局３は、無線通信装置２との無線通信を行う。ネットワーク４は、無線基地局３とサーバ装置５との間に設けられ、多数のルータを含むパケット交換網として構成される。サーバ装置５は、例えばメールサーバ又はコンテンツサーバである。
【００３４】
端末装置１及びサーバ装置５は、ＯＳＩ参照モデルのトランスポート層にＴＣＰを使用した通信を行う。端末装置１は、データ送信側であるサーバ装置５からデータを受信するクライアントとして動作する。
【００３５】
サーバ装置５が送信するデータはネットワーク４を経由して無線基地局３で受信され、無線基地局３は、受信したデータを無線区間を介して無線通信装置２に送信する。無線通信装置２は、無線基地局３からデータを受信し、受信したデータを端末装置１に中継する。
【００３６】
端末装置１は、受信ウィンドウサイズを決定し、サーバ装置５へ送信するＡＣＫに当該受信ウィンドウサイズを示す情報を含めることで、サーバ装置５からのデータ送信量を調整する。
【００３７】
無線通信装置２及び無線基地局３からなる無線通信システムは、CDMA(Code Division Multiple Access) 1x EV-DO(Evolution-Data Only)や、HSDPA(High Speed Downlink Packet Access)といった高速大容量の無線通信システムである。本実施形態では、無線通信装置２及び無線基地局３のそれぞれは、CDMA 1x EV-DOに準拠して構成されるものとする。
【００３８】
なお、図１においては、１つの無線通信装置２のみを図示しているが、端末装置１には、複数種類の無線通信装置２の何れかを装着可能である。無線通信装置２の種類とは、例えば無線通信装置２のメーカーや型番を意味する。
【００３９】
（２）端末装置及び無線通信装置の構成
次に、端末装置１及び無線通信装置２の構成について、（２．１）概略構成、（２．２）端末装置の詳細構成の順に説明する。
【００４０】
（２．１）概略構成
図２は、本実施形態に係る端末装置１及び無線通信装置２の概略構成図である。
【００４１】
図２に示すように、無線通信装置２は、無線部２１、信号処理部２２、及びインタフェース部２３を有する。端末装置１は、インタフェース部１１、処理部１２、記憶部１３、及びユーザインタフェース部１４を有する。
【００４２】
無線通信装置２において、無線部２１は、アンテナ、増幅器及びフィルタ等を含む。信号処理部２２は、例えばベースバンドプロセッサであり、各種の信号処理を行う。インタフェース部２３は、端末装置１側のインタフェース部１１と電気的に接続される。
【００４３】
端末装置１において、インタフェース部１１は、無線通信装置２側のインタフェース部２３と電気的に接続される。処理部１２は、例えばＣＰＵであり、記憶部１３に記憶されている制御プログラムを実行することによって、後述する各種の機能を実現する。記憶部１３は、例えば半導体メモリやハードディスクであり、処理部１２が実行する制御プログラムやオペレーティングシステム（ＯＳ）を記憶するとともに、処理部１２の作業領域（ワークエリア）として機能する。記憶部１３は、受信データを一時的に記憶する受信バッファ１３１を有する。ユーザインタフェース部１４は、例えばディスプレイやキーボードを含み、端末装置１のユーザとのインタフェースとして機能する。
【００４４】
データ受信時において、無線部２１は、アンテナからの受信信号を低周波数帯の受信データに変換し、当該受信データを信号処理部２２に入力する。信号処理部２２は、受信データを復調し、復調された受信データをインタフェース部２３に入力する。インタフェース部２３に入力された受信データは、インタフェース部２３及びインタフェース部１１を介して処理部１２に入力される。処理部１２は、インタフェース部１１から入力された受信データを一旦受信バッファ１３１に格納した後に処理する。
【００４５】
データ送信時において、処理部１２は、送信データをインタフェース部１１及びインタフェース部２３を介して信号処理部２２に入力する。信号処理部２２は、送信データを変調し、変調された送信データを無線部２１に入力する。無線部２１は、入力された送信データを高周波数帯の送信信号に変換し、当該送信信号をアンテナから送信する。
【００４６】
（２．２）端末装置の詳細構成
図３は、本実施形態に係る端末装置１の詳細構成図である。なお、図３は、ＯＳＩ参照モデルのプロトコルスタック図も兼ねている。図３における物理層処理部Ｐ１と、データリンク層処理部Ｐ２の一部とは、無線通信装置２の無線部２１及び信号処理部２２に相当する。
【００４７】
図３に示すように、端末装置１の処理部１２は、データリンク層処理部Ｐ２の一部、ネットワーク層処理部Ｐ３、トランスポート層処理部Ｐ４、セッション層処理部Ｐ５、プレゼンテーション層処理部Ｐ６、及びアプリケーション層処理部Ｐ７を有する。
【００４８】
なお、物理層処理部Ｐ１、データリンク層処理部Ｐ２、ネットワーク層処理部Ｐ３、トランスポート層処理部Ｐ４、セッション層処理部Ｐ５、プレゼンテーション層処理部Ｐ６、及びアプリケーション層処理部Ｐ７は、ＯＳＩ参照モデルの物理層、データリンク層、ネットワーク層、トランスポート層、セッション層、プレゼンテーション層、及びアプリケーション層とそれぞれ対応して設けられる。
【００４９】
トランスポート層処理部Ｐ４は、ＴＣＰに従った処理を行うＴＣＰ処理部１２０を有する。本実施形態においてトランスポート層処理部Ｐ４は、上位層プロトコル処理部に相当する。トランスポート層処理部Ｐ４の詳細については後述する。
【００５０】
データリンク層処理部Ｐ２は、端末装置１のＯＳと無線通信装置２とのインタフェースとして機能するとともに無線通信装置２を制御するデバイスドライバ部１１０を有する。本実施形態においてデバイスドライバ部１１０は、装置制御部に相当する。デバイスドライバ部１１０は、無線通信装置２と対応するデバイスドライバを端末装置１にインストールすることによって構成される。デバイスドライバ部１１０の詳細については後述する。
【００５１】
（２．２．１）ＴＣＰ処理部の構成
次に、ＴＣＰ処理部１２０の構成について説明する。
【００５２】
図３に示すように、ＴＣＰ処理部１２０は、往復遅延時間測定部１２１、最小往復遅延時間記憶部１２２、最小往復遅延時間通知部１２３、受信ウィンドウサイズ取得部１２４、受信ウィンドウサイズ調整部１２５、及びＡＣＫ生成部１２６を有する。
【００５３】
往復遅延時間測定部１２１は、ＴＣＰのタイムスタンプオプションなどの方法によって、サーバ装置５から受信したセグメントから、端末装置１とサーバ装置５との間の往復遅延時間を複数回定期的に測定する。
【００５４】
なお、セグメントとは、ＴＣＰで取り扱われるデータの最小単位である。セグメントにＩＰヘッダを付加することでＩＰパケットが構成される。
【００５５】
最小往復遅延時間記憶部１２２は、往復遅延時間測定部１２１で測定された往復遅延時間の最小値を最小往復遅延時間として記憶する。最小往復遅延時間記憶部１２２は、記憶する最小往復遅延時間を定期的に更新することが好ましい。
【００５６】
最小往復遅延時間を使用する理由は、次の通りである。適切な受信ウィンドウサイズを求めるには、往復遅延時間の値は、キュー待ち遅延を取り除いた、リンク部分のみで発生する遅延を用いることが好ましい。リンク部分の遅延はゼロになることはないが、キュー待ち遅延は、途中のルータのキューがほとんど空である場合、ゼロに近い値となる。そこで、最小往復遅延時間を、キュー待ち遅延を取り除いたリンク部分のみの遅延で構成される往復遅延時間とみなすこととする。
【００５７】
最小往復遅延時間通知部１２３は、最小往復遅延時間通知部１２３は、最小往復遅延時間記憶部１２２に記憶されている最小往復遅延時間をデバイスドライバ部１１０に定期的に通知する。デバイスドライバ部１１０に最小往復遅延時間を通知する時間間隔は、例えばＴＣＰの設定であらかじめｎ秒と決めておく。
【００５８】
最小往復遅延時間を通知されたデバイスドライバ部１１０は、当該最小往復遅延時間に基づいて受信ウィンドウサイズを決定する（詳細については後述）。
【００５９】
本実施形態では、デバイスドライバ部１１０において、適切な受信ウィンドウサイズを計算する手段をＡＰＩ（Application Program Interface）として実装する。この場合、最小往復遅延時間通知部１２３は、最小往復遅延時間をデバイスドライバ部１１０のＡＰＩに渡す。当該ＡＰＩは受信ウィンドウサイズを決定し、決定した受信ウィンドウサイズを戻り値としてＴＣＰ処理部１２０へ返す。
【００６０】
受信ウィンドウサイズ取得部１２４は、デバイスドライバ部１１０から通知された受信ウィンドウサイズを取得する。
【００６１】
受信ウィンドウサイズ調整部１２５は、受信ウィンドウサイズ取得部１２４によって取得された受信ウィンドウサイズを現時点での受信バッファ１３１の空き容量と比較し、比較結果に応じて当該受信ウィンドウサイズを調整する。受信ウィンドウサイズ調整部１２５の動作の詳細については後述する。
【００６２】
ＡＣＫ生成部１２６は、受信ウィンドウサイズ調整部１２５による調整後の受信ウィンドウサイズを示す情報を含み、サーバ装置５に送信されるＡＣＫセグメントを生成する。ＡＣＫ生成部１２６によって生成されたＡＣＫセグメントは、ネットワーク層処理部Ｐ３、データリンク層処理部Ｐ２、及び物理層処理部Ｐ１を経由してサーバ装置５に送信される。
【００６３】
（２．２．２）デバイスドライバ部の構成
次に、デバイスドライバ部１１０の構成について説明する。デバイスドライバ部１１０は、無線通信装置２に対して最適化された多次元テーブルＴ（図５参照）を用いて、ＴＣＰ処理部１２０から通知された往復遅延時間と、無線区間の予測データ帯域とから、サーバ装置５の受信ウィンドウサイズを決定する。
【００６４】
図３に示すように、デバイスドライバ部１１０は、最小往復遅延時間取得部１１１、無線通信情報取得部１１２、予測データ帯域計算部１１３、多次元テーブル記憶部１１４、受信ウィンドウサイズ決定部１１５、及び受信ウィンドウサイズ通知部１１６を有する。
【００６５】
最小往復遅延時間取得部１１１は、ＴＣＰ処理部１２０から通知された最小往復遅延時間を取得する。
【００６６】
無線通信情報取得部１１２は、無線通信装置２が行う無線通信の状況を示す無線通信情報を取得する。無線通信情報とは、無線通信装置２から取得できる情報であり、例えば、ＤＲＣ（Data Rate Control）、ＭＣＳ（Modulation and Coding Scheme）レベル、ＳＩＮＲ（Signal-to-Interference and Noise power Ratio）、ＲＳＳＩ（Received Signal Strength Indicator）、又は無線基地局３のスケジューリング情報などが無線通信情報に相当する。
【００６７】
なお、ＤＲＣとは、CDMA 1x EV-DOで使用され、次フレームで予測される無線品質と対応するデータ帯域を示す情報である。ＭＣＳレベルとは、無線通信に適用される変調方式及び符号化方式の組み合わせを示す情報である。ＤＲＣ及びＭＣＳレベルは、無線品質と対応するデータ帯域を示している。例えば、CDMA 1x EV-DO Rev.Aでは、無線区間のデータ帯域は、その時の無線状態に応じて38.4kbps〜3072kbpsの間で変動する。ＳＩＮＲ及びＲＳＳＩは無線品質（受信信号の良好さ）を表す指標値である。スケジューリング情報とは、無線通信装置２にどの程度の無線通信リソースが割り当てられるかを示す情報である。
【００６８】
予測データ帯域計算部１１３は、無線通信情報取得部１１２によって取得された無線通信情報を用いて予測データ帯域を計算する。予測データ帯域とは、現時点でのデータ帯域の予測値であってもよく、現時点よりも未来の時点でのデータ帯域の予測値であってもよい。本実施形態では、予測データ帯域は、現時点よりも未来の時点でのデータ帯域の予測値であるものとする。
【００６９】
多次元テーブル記憶部１１４は、往復遅延時間と予測データ帯域と受信ウィンドウサイズとを対応付けた多次元テーブルＴを予め記憶する。多次元テーブル記憶部１１４は、実験又はシミュレーションにより求められた受信ウィンドウサイズを記憶する。多次元テーブル記憶部１１４は、デバイスドライバ部１１０の外部から参照できないように構成されている。多次元テーブルＴの詳細については後述する。
【００７０】
受信ウィンドウサイズ決定部１１５は、多次元テーブル記憶部１１４を参照して、ＴＣＰ処理部１２０から通知された最小往復遅延時間と、予測データ帯域計算部１１３によって計算された予測データ帯域とに対応する受信ウィンドウサイズを決定する。
【００７１】
受信ウィンドウサイズ通知部１１６は、受信ウィンドウサイズ決定部１１５によって決定された受信ウィンドウサイズをＴＣＰ処理部１２０に通知する。
【００７２】
（３）多次元テーブル
次に、多次元テーブルＴの構成について説明する。
【００７３】
図４は、CDMA 1x EV-DOにおいて、ある無線通信環境での受信ウィンドウサイズとデータ帯域・往復遅延時間との関係を示すグラフである。
【００７４】
図４に示すように、受信ウィンドウサイズは、ある一定の値以上大きくしても、データ帯域はほとんど向上せず、逆に往復遅延時間が増えるので、逆効果であることがわかる。また、図４より、データ帯域を最大限引き出し、かつ、往復遅延時間も小さいという、適切な受信ウィンドウサイズは、21900(byte)付近であることが分かる。
【００７５】
この図の無線通信環境において、上で述べた予測データ帯域と最小往復遅延時間とを計算したところ、それぞれ、962(kbps)と100(ms)であった。この値を式(1)に代入すると、その計算結果は、12025(byte)となる。これは、適切な受信ウィンドウサイズである21900(byte)とは大きくずれている。
【００７６】
この原因は、予測データ帯域の予測誤差が大きいことや、最小往復遅延時間の値にも誤差が含まれていることなどが考えられる。いずれにせよ、予測データ帯域と最小往復遅延時間を式(1)へ代入して適切な受信ウィンドウサイズを求めることは難しい。
【００７７】
シミュレーションによる評価により、予測データ帯域と最小往復遅延時間の値のどちらか、もしくは両方が増加すれば、適切な受信ウィンドウサイズも増加することが分かっている。しかし、その増加のパターンは線形的ではなく、予測データ帯域と最小往復遅延時間の値によって変化することが分かっている。また、この増加のパターンは、無線通信装置２の種類によって変わることも分かっている。
【００７８】
無線通信における適切な受信ウィンドウサイズの増加パターンを解析して、式(1)のように数式で表すことは、不可能ではないが困難である。それは、無線通信における適切な受信ウィンドウサイズの増加パターンは、単純な形をしていなからである。さらに、無線通信装置２によって適切な受信ウィンドウサイズの増加パターンが異なるため、無線通信装置２毎に適切な受信ウィンドウサイズを求める数式を求めるのは困難である。
【００７９】
そこで、評価実験やシミュレーションなどから、予測データ帯域及び最小往復遅延時と、それに対応する適切な受信ウィンドウサイズを求め、それらの値をプロットした多次元テーブルＴを作成する。適切な受信ウィンドウサイズを求める数式を求めるよりも、多次元テーブルＴを作成する方がはるかに容易であり、また、適切な受信ウィンドウサイズを求める数式を使用する場合と同様に、予測データ帯域及び最小往復遅延時間の値から、適切な受信ウィンドウサイズをすぐに求めることができる。
【００８０】
図５は、多次元テーブルＴの構成例を示す図である。
【００８１】
図５に示すように、多次元テーブルＴは、最小往復遅延時間と予測データ帯域と適切な受信ウィンドウサイズとの関係を示している。多次元テーブルＴの値は離散的に存在するため、受信ウィンドウサイズ決定部１１５は、その途中の値を例えば線形補間などの補間処理を行って決定する。
【００８２】
なお、上で説明した、適切な受信ウィンドウサイズを計算するための多次元テーブルＴは、無線通信装置２の種類（メーカーや型番）によって異なってくる。この多次元テーブルＴは、例えば無線通信装置２のメーカーが、評価実験やシミュレーションなどを行って値を決定する。
【００８３】
また、無線通信装置２毎に別々のデバイスドライバを用意し、デバイスドライバに多次元テーブルＴを格納する。こうすることで、それぞれの無線通信装置２に適した多次元テーブルＴを構成可能になる。
【００８４】
このような多次元テーブルＴの値は、無線通信装置２を作成したメーカーの立場からすると、外部に公表したくないと考えられる。そこで、適切な受信ウィンドウサイズを計算するための多次元テーブルＴを、無線通信装置２のデバイスドライバ部１１０内部に組み込み、デバイスドライバ部１１０の外部からは、多次元テーブルＴの値を直接参照できないようにする。
【００８５】
（４）端末装置の動作
次に、端末装置１の動作について、ＴＣＰ処理部１２０の動作及びデバイスドライバ部１１０の動作の順に説明する。
【００８６】
（４．１）ＴＣＰ処理部の動作
図６は、ＴＣＰ処理部１２０の動作を示すフローチャートである。
【００８７】
図６に示すように、ステップＳ１１において、最小往復遅延時間通知部１２３は、最小往復遅延時間記憶部１２２に記憶されている最小往復遅延時間をデバイスドライバ部１１０に通知する。デバイスドライバ部１１０は、受信ウィンドウサイズを決定する。
【００８８】
ステップＳ１２において、受信ウィンドウサイズ取得部１２４は、デバイスドライバ部１１０によって決定された受信ウィンドウサイズを取得する。
【００８９】
ステップＳ１３において、受信ウィンドウサイズ調整部１２５は、受信ウィンドウサイズ取得部１２４によって取得された受信ウィンドウサイズを現時点での受信バッファ１３１の空き容量と比較する。
【００９０】
受信ウィンドウサイズが受信バッファ１３１の空き容量よりも大い場合（ステップＳ１３；Ｎｏ）、ステップＳ１４において受信ウィンドウサイズ調整部１２５は、受信ウィンドウサイズを受信バッファ１３１の空き容量と同じ値にする。これは、受信バッファ１３１の空き容量よりも多い量のデータを受信することができないからである。
【００９１】
ステップＳ１５において、受信ウィンドウサイズ調整部１２５は、シリーウインドウシンドロームを回避するために受信ウィンドウサイズの調整を行う。シリーウインドウシンドロームとは、小さなサイズのセグメントが継続して送信される状態である。
【００９２】
ステップＳ１６において、ＡＣＫ生成部１２６は、受信ウィンドウサイズ調整部１２５によって最終的に決定された受信ウィンドウサイズの情報をヘッダ部分に含むＡＣＫセグメントを生成する。
【００９３】
ＡＣＫ生成部１２６によって生成されたＡＣＫセグメントは、ネットワーク層処理部Ｐ３、データリンク層処理部Ｐ２、及び物理層処理部Ｐ１を経由してサーバ装置５に送信される。
【００９４】
（４．２）デバイスドライバ部の動作
図７は、デバイスドライバ部１１０の動作を示すフローチャートである。
【００９５】
図７に示すように、ステップＳ２１において、最小往復遅延時間取得部１１１は、ＴＣＰ処理部１２０から通知された最小往復遅延時間を取得する。
【００９６】
ステップＳ２２において、無線通信情報取得部１１２は、無線通信情報を取得する。予測データ帯域計算部１１３は、無線通信情報取得部１１２によって取得された無線通信情報に基づいて、予測データ帯域を計算する。
【００９７】
ステップＳ２３において、最小往復遅延時間取得部１１１によって取得された最小往復遅延時間と、予測データ帯域計算部１１３によって計算された予測データ帯域とが、受信ウィンドウサイズ決定部１１５に入力される。
【００９８】
ステップＳ２４において、受信ウィンドウサイズ決定部１１５は、多次元テーブルＴを参照し、最小往復遅延時間取得部１１１によって取得された最小往復遅延時間と、予測データ帯域計算部１１３によって計算された予測データ帯域とから、適切な受信ウィンドウサイズを決定する。
【００９９】
ここで、複数種類の無線通信装置２の何れかが端末装置１に装着される場合、受信ウィンドウサイズ決定部１１５は、複数種類の無線通信装置２毎に用意された複数の多次元テーブルＴのうち、端末装置１に装着された無線通信装置２と対応する多次元テーブルＴを用いて受信ウィンドウサイズを決定する。そのために、受信ウィンドウサイズ決定部１１５は、インタフェース部１１に装着されている無線通信装置２の種類を判別する機能を有するものとする。
【０１００】
ステップＳ２５において、受信ウィンドウサイズ通知部１１６は、受信ウィンドウサイズ決定部１１５によって決定された受信ウィンドウサイズをＴＣＰ処理部１２０に通知する。
【０１０１】
（５）作用・効果
以上説明したように、本実施形態によれば、端末装置１に無線通信装置２を装着してサーバ装置５との通信を行うケースにおいても、端末装置１がウィンドウサイズを適切に設定できる。
【０１０２】
本実施形態では、往復遅延時間測定部１２１は、往復遅延時間測定部１２１によって複数回測定された往復遅延時間のうちの最小往復遅延時間をデバイスドライバ部１１０に通知する。これにより、端末装置１とサーバ装置５との間の伝送経路で生じる遅延のうち、キュー待ち遅延を取り除いたリンク部分のみの遅延に近い値を用いて受信ウィンドウサイズを決定可能になるため、受信ウィンドウサイズを適切に設定可能となる。
【０１０３】
本実施形態では、受信ウィンドウサイズ決定部１１５は、複数種類の無線通信装置２毎に用意された複数の多次元テーブルＴのうち、端末装置１に装着された無線通信装置２と対応する多次元テーブルＴを用いて受信ウィンドウサイズを決定する。これにより、端末装置１に装着される無線通信装置２が変更される場合でも、無線通信装置２に適した受信ウィンドウサイズを決定できる。
【０１０４】
本実施形態では、予測データ帯域計算部１１３は、無線通信情報取得部１１２によって取得された無線通信情報を用いて予測データ帯域を計算する。これにより、無線通信環境に適した受信ウィンドウサイズを設定可能になる。
【０１０５】
本実施形態では、評価実験やシミュレーションから求められた受信ウィンドウサイズの値をプロットした多次元テーブルＴを使用することで、予測データ帯域及び最小往復遅延時間の値から、適切な受信ウィンドウサイズをすぐに求めることができる。
【０１０６】
（６）その他の実施形態
上記のように、本発明は実施形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなる。
【０１０７】
（６．１）予測データ帯域の計算例１
以下において、予測データ帯域計算部１１３による予測データ帯域の計算方法の一例について説明する。
【０１０８】
無線通信システムでは、複数の無線通信装置が無線リソースを共有するため、他の無線通信装置の通信状況によっても、無線区間のデータ帯域が変動する。例えば、無線通信装置２に接続する無線通信装置の数が多い場合、各無線通信装置に割り当てられる無線リソースが相対的に少なくなるため、無線品質が良好な無線通信装置であっても、高速なデータ帯域が得られないことがある。
【０１０９】
そこで、予測データ帯域計算部１１３は、無線基地局３のスケジューリング情報を用いて、次のように予測データ帯域を計算する。予測データ帯域計算部１１３は、現時点以前の所定期間内で無線通信装置２が割り当て可能な全ての無線リソースのうち無線通信装置２に割り当てられた無線リソースが占める割合を示す割当率を計算し、当該割当率と、無線品質に応じて定められるデータ帯域とから、予測データ帯域を計算する。
【０１１０】
これにより、無線基地局３から無線通信装置２に割り当てられる無線リソースの量が動的に変化する場合であっても、予測データ帯域を精度良く計算できる。
【０１１１】
（６．２）予測データ帯域の計算例２
以下において、予測データ帯域計算部１１３による予測データ帯域の計算方法の他の例について説明する。
【０１１２】
無線通信システムでは、その時の無線状態に応じて、ＨＡＲＱの再送回数が変化する。ハイブリッドＡＲＱの再送回数が多くなると、無線区間における遅延も大きくなる。また、無線端末が、最大スロット数を使い切らずに、最大スロット数の一部のみでデータの復号に成功（“アーリー・ターミネーション”と呼ばれる）することがある。このような場合には、最大スロット数の一部のみが使用されるため、最大スロット数を使い切った場合のデータ帯域と比較してデータ帯域が上昇したことになる。
【０１１３】
そこで、予測データ帯域計算部１１３は、最大スロット数を全て使用した場合のデータ帯域に対して、最大スロット数の一部のみでデータの復号に成功する確率を考慮してデータ帯域を計算する。これにより、アーリー・ターミネーションがデータ帯域に与える影響を反映したデータ帯域を計算できる。
【０１１４】
（６．３）実施形態の変更例
上述した実施形態においては、無線通信装置２及び無線基地局３からなる無線通信システムは、CDMA 1x EV-DOやHSDPAといった第３．５世代（３．５Ｇ）携帯電話システムに従って構成されていたが、LTE（Long Term Evolution）やLTE-Advancedといった第３．９世代（３．９Ｇ）又は第４世代（４Ｇ）携帯電話システムに従って構成されてもよい。
【０１１５】
上述した実施形態においては、受信ウィンドウサイズ決定部１１５が多次元テーブルＴを用いて受信ウィンドウサイズを決定していたが、このようなテーブルを利用する場合に限らず、実験又はシミュレーションにより定められた値をある程度再現可能な数式を用いて受信ウィンドウサイズを決定してもよい。この場合、当該計算式は、導出用情報に相当する。
【０１１６】
このように本発明は、ここでは記載していない様々な実施形態等を包含するということを理解すべきである。したがって、本発明はこの開示から妥当な特許請求の範囲の発明特定事項によってのみ限定されるものである。
【符号の説明】
【０１１７】
Ｐ１…物理層処理部、Ｐ２…データリンク層処理部、Ｐ３…ネットワーク層処理部、Ｐ４…トランスポート層処理部、Ｐ５…セッション層処理部、Ｐ６…プレゼンテーション層処理部、Ｐ７…アプリケーション層処理部、Ｔ…多次元テーブル、１…端末装置、２…無線通信装置、３…無線基地局、４…ネットワーク、５…サーバ装置、１１…インタフェース部、１２…処理部、１３…記憶部、１４…ユーザインタフェース部、２１…無線部、２２…信号処理部、２３…インタフェース部、１１０…デバイスドライバ部、１１１…最小往復遅延時間取得部、１１２…無線通信情報取得部、１１３…予測データ帯域計算部、１１４…多次元テーブル記憶部、１１５…受信ウィンドウサイズ決定部、１１６…受信ウィンドウサイズ通知部、１２０…ＴＣＰ処理部、１２１…往復遅延時間測定部、１２２…最小往復遅延時間記憶部、１２３…最小往復遅延時間通知部、１２４…受信ウィンドウサイズ取得部、１２５…受信ウィンドウサイズ調整部、１２６…ＡＣＫ生成部、１３１…受信バッファ
【図１】
2011151738.tif 000003
【図２】
2011151738.tif 000004
【図３】
2011151738.tif 000005
【図４】
2011151738.tif 000006
【図５】
2011151738.tif 000007
【図６】
2011151738.tif 000008
【図７】
2011151738.tif 000009