JP2011151738A - 端末装置、制御プログラム及び制御方法 - Google Patents
端末装置、制御プログラム及び制御方法 Download PDFInfo
- Publication number
- JP2011151738A JP2011151738A JP2010013365A JP2010013365A JP2011151738A JP 2011151738 A JP2011151738 A JP 2011151738A JP 2010013365 A JP2010013365 A JP 2010013365A JP 2010013365 A JP2010013365 A JP 2010013365A JP 2011151738 A JP2011151738 A JP 2011151738A
- Authority
- JP
- Japan
- Prior art keywords
- unit
- wireless communication
- delay time
- trip delay
- round
- 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.)
- Pending
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
【課題】端末装置に無線通信装置を装着してサーバ装置との通信を行うケースにおいても、ウィンドウサイズを適切に設定できる端末装置を提供する。
【解決手段】端末装置1は、ネットワーク層以上のプロトコルを処理するTCP処理部120と、データリンク層と対応して設けられ、無線通信装置2を制御するデバイスドライバ部110とを備える。TCP処理部120は、端末装置1とサーバ装置5との間の往復遅延時間を測定し、当該往復遅延時間をデバイスドライバ部110に通知する。デバイスドライバ部110は、無線通信装置2に対して最適化された多次元テーブルTを用いて、TCP処理部120から通知された往復遅延時間と、無線区間の予測データ帯域とから、サーバ装置5のデータ送信量を決定し、決定したデータ送信量をTCP処理部120に通知する。
【選択図】図3
【解決手段】端末装置1は、ネットワーク層以上のプロトコルを処理するTCP処理部120と、データリンク層と対応して設けられ、無線通信装置2を制御するデバイスドライバ部110とを備える。TCP処理部120は、端末装置1とサーバ装置5との間の往復遅延時間を測定し、当該往復遅延時間をデバイスドライバ部110に通知する。デバイスドライバ部110は、無線通信装置2に対して最適化された多次元テーブルTを用いて、TCP処理部120から通知された往復遅延時間と、無線区間の予測データ帯域とから、サーバ装置5のデータ送信量を決定し、決定したデータ送信量をTCP処理部120に通知する。
【選択図】図3
Description
本発明は、サーバ装置との通信を行うクライアントとして動作する端末装置、制御プログラム及び制御方法に関する。
現在、高速大容量の無線通信システムが普及している。そのような無線通信システムにおいては、OSI参照モデルのトランスポート層にTCP(Transmission Control Protocol)を使用するアプリケーションが多数利用されている。
TCPでは、データ送信側であるサーバ装置がデータ受信側であるクライアントからの確認応答(ACK)を受信しなくても、サーバ装置からクライアントへ連続してデータを送信できる量として受信ウィンドウサイズが設定される。クライアントは、受信ウィンドウサイズを決定し、サーバ装置へ送信するACKに当該受信ウィンドウサイズを示す情報を含めることで、サーバ装置からのデータ送信量を調整する。
受信ウィンドウサイズが小さすぎる場合、伝送路の帯域を最大限利用することができず、TCPのデータ帯域は頭打ちとなる。一方、受信ウィンドウサイズが大きすぎる場合、伝送路で一度に送ることのできるデータ量を超えてしまう。この場合、送りきれなかったデータは、例えばルータのバッファに一時的に蓄えられるが、その分、各パケットの到着時間が遅くなり、遅延が大きくなる。また、ルータのバッファからパケットが溢れた場合、パケットロスが発生するため、かえってデータ帯域が低下してしまう。
以上のことから、受信ウィンドウサイズを適切な値に設定しないと、TCPのデータ帯域が低下し、TCPを用いたアプリケーションの通信性能が劣化する。
受信ウィンドウサイズは、式(1)で求められる値に設定することが理想的とされている(非特許文献1参照)。
受信ウィンドウサイズ(bit)= データ帯域(bit/sec)×往復遅延時間(sec)・・(1)
なお、式(1)の往復遅延時間は、サーバ装置からクライアントまでの通信経路上のノード(ルータなど)におけるキュー待ち遅延を取り除いた、ノード間のリンク部分のみで発生する遅延である。
なお、式(1)の往復遅延時間は、サーバ装置からクライアントまでの通信経路上のノード(ルータなど)におけるキュー待ち遅延を取り除いた、ノード間のリンク部分のみで発生する遅延である。
無線通信システムにおいては、クライアントとして無線通信装置が使用され、無線通信環境が動的に変化することから、適切な受信ウィンドウサイズを設定することが難しい。
無線通信システムに適用されるTCPとしては、無線通信装置が使用する無線通信経路(無線ベアラ又はトランスポートチャネル)の種別と当該無線通信経路の状態とを考慮して、式(1)により受信ウィンドウサイズを設定する方式が提案されている(特許文献1参照)。特許文献1に記載の技術によれば、無線通信環境に適応した受信ウィンドウサイズを設定できるとされている。
W.Richard Stevens、"詳解TCP/IP〈Vol.1〉プロトコル"、ピアソン・エデュケーション、pp.327、2000年
しかしながら、特許文献1に記載の技術には、クライアントとして動作するノートPC等の端末装置に対し、外付けの無線通信装置を装着してサーバ装置との通信を行うケースにおいて、次のような問題がある。
具体的には、端末装置に装着される無線通信装置毎にその特性が異なることから、ある無線通信環境下において一の無線通信装置に対して適切な受信ウィンドウサイズが、他の無線通信装置に対しては不適切な受信ウィンドウサイズになることがある。
特許文献1に記載の技術では、受信ウィンドウサイズを設定する際に無線通信装置毎の特性の違いが十分に考慮されておらず、ウィンドウサイズを適切に設定できない問題があった。
そこで、本発明は、端末装置に無線通信装置を装着してサーバ装置との通信を行うケースにおいても、ウィンドウサイズを適切に設定できる端末装置、制御プログラム及び制御方法を提供することを目的とする。
上述した課題を解決するために、本発明は以下のような特徴を有している。まず、本発明の第1の特徴は、装着された無線通信装置(無線通信装置2)を用いて、サーバ装置(サーバ装置5)から送信されるデータをネットワーク(ネットワーク4)を介して受信する端末装置(端末装置1)であって、OSI参照モデルのネットワーク層以上のプロトコルを処理する上位層プロトコル処理部(例えばTCP処理部120)と、OSI参照モデルのデータリンク層と対応して設けられ、前記無線通信装置を制御する装置制御部(例えばデバイスドライバ部110)とを備え、前記上位層プロトコル処理部は、前記端末装置と前記サーバ装置との間の往復遅延時間を測定する測定部(往復遅延時間測定部121)と、前記往復遅延時間を前記装置制御部に通知する第1の通知部(最小往復遅延時間通知部123)とを有し、前記装置制御部は、前記無線通信装置に対して最適化された導出用情報(例えば多次元テーブルT)を用いて、前記上位層プロトコル処理部から通知された前記往復遅延時間と、無線区間の予測データ帯域とから、前記サーバ装置のデータ送信量を決定する決定部(受信ウィンドウサイズ決定部115)と、前記決定部によって決定された前記データ送信量を前記上位層プロトコル処理部に通知する第2の通知部(受信ウィンドウサイズ通知部116)とを有することを要旨とする。
このような特徴によれば、端末装置に無線通信装置を装着してサーバ装置との通信を行うケースにおいても、端末装置がウィンドウサイズを適切に設定できる。
本発明の第2の特徴は、本発明の第1の特徴に係り、前記測定部は、前記往復遅延時間を複数回測定し、前記第1の通知部は、前記測定部によって複数回測定された往復遅延時間のうち最小の往復遅延時間を前記装置制御部に通知することを要旨とする。
本発明の第3の特徴は、本発明の第1又は第2の特徴に係り、複数種類の無線通信装置の何れかが前記端末装置に装着される場合、前記決定部は、前記複数種類の無線通信装置毎に用意された複数の導出用情報のうち、前記端末装置に装着された無線通信装置と対応する導出用情報を用いて前記データ送信量を決定することを要旨とする。
本発明の第4の特徴は、本発明の第1〜第3の何れかの特徴に係り、前記上位層プロトコル処理部は、前記装置制御部によって通知された前記データ送信量を調整する調整部(受信ウィンドウサイズ調整部125)と、前記装置制御部によって通知された前記データ送信量又は前記調整部による調整後の前記データ送信量を示す情報を含み、前記サーバ装置に送信される確認応答を生成する生成部(ACK生成部126)とをさらに有することを要旨とする。
本発明の第5の特徴は、本発明の第1〜第4の何れかの特徴に係り、前記装置制御部は、前記無線通信装置が行う無線通信の状況を示す無線通信情報を取得する取得部(無線通信情報取得部112)と、前記取得部によって取得された前記無線通信情報を用いて前記予測データ帯域を計算する計算部(予測データ帯域計算部113)とをさらに有することを要旨とする。
本発明の第6の特徴は、本発明の第5の特徴に係り、前記装置制御部は、前記往復遅延時間と前記予測データ帯域と前記データ送信量との対応付けである前記導出用情報を予め記憶する記憶部(多次元テーブル記憶部114)をさらに備え、前記決定部は、前記記憶部に記憶された前記導出用情報を参照して、前記上位層プロトコル処理部から通知された前記往復遅延時間と、前記計算部によって計算された前記予測データ帯域とに対応する前記データ送信量を決定し、前記記憶部は、実験又はシミュレーションにより求められた前記データ送信量を記憶することを要旨とする。
本発明の第7の特徴は、本発明の第6の特徴に係り、前記記憶部は、前記装置制御部の外部から参照できないように構成されていることを要旨とする。
本発明の第8の特徴は、本発明の第1〜第7の何れかの特徴に係り、前記上位層プロトコル処理部は、OSI参照モデルのトランスポート層のプロトコルであるTCPに従った処理を行うことを要旨とする。
本発明の第9の特徴は、本発明の第1〜第8の何れかの特徴に係り、前記装置制御部は、前記無線通信装置と対応するデバイスドライバを前記端末装置にインストールすることによって構成されることを要旨とする。
本発明の第10の特徴は、装着された無線通信装置を用いて、サーバ装置から送信されるデータをネットワークを介して受信する端末装置に、OSI参照モデルのネットワーク層以上のプロトコルを処理する上位層プロトコル処理手順と、OSI参照モデルのデータリンク層と対応して設けられ、前記無線通信装置を制御する装置制御手順とを実行させ、前記上位層プロトコル処理手順は、前記端末装置と前記サーバ装置との間の往復遅延時間を測定する測定手順と、前記往復遅延時間を前記装置制御手順に通知する第1の通知手順とを有し、前記装置制御手順は、前記無線通信装置に対して最適化された導出用情報を用いて、前記上位層プロトコル処理手順から通知された前記往復遅延時間と、無線区間の予測データ帯域とから、前記サーバ装置のデータ送信量を決定する決定手順と、前記決定手順によって決定された前記データ送信量を前記上位層プロトコル処理手順に通知する第2の通知手順とを有する制御プログラムであることを要旨とする。
本発明の第11の特徴は、装着された無線通信装置を用いて、サーバ装置から送信されるデータをネットワークを介して受信する端末装置の制御方法であって、OSI参照モデルのネットワーク層以上のプロトコルを処理する上位層プロトコル処理部が、前記端末装置と前記サーバ装置との間の往復遅延時間を測定するステップと、前記上位層プロトコル処理部が、OSI参照モデルのデータリンク層と対応して設けられ、前記無線通信装置を制御する装置制御部に前記往復遅延時間を通知するステップと、前記装置制御部が、前記無線通信装置に対して最適化された導出用情報を用いて、前記上位層プロトコル処理部から通知された前記往復遅延時間と、無線区間の予測データ帯域とから、前記サーバ装置のデータ送信量を決定するステップと、前記装置制御部が、前記決定するステップによって決定された前記データ送信量を前記上位層プロトコル処理部に通知するステップとを有することを要旨とする。
本発明によれば、端末装置に無線通信装置を装着してサーバ装置との通信を行うケースにおいても、ウィンドウサイズを適切に設定できる端末装置、制御プログラム及び制御方法を提供できる。
次に、図面を参照して、本発明の実施形態を説明する。具体的には、(1)全体概略構成、(2)端末装置及び無線通信装置の構成、(3)多次元テーブル、(4)端末装置の動作、(5)作用・効果、(6)その他の実施形態について説明する。以下の実施形態における図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
(1)全体概略構成
図1は、本実施形態に係る通信システムの全体概略構成図である。
図1は、本実施形態に係る通信システムの全体概略構成図である。
図1に示すように、本実施形態に係る通信システムは、端末装置1、無線通信装置2、無線基地局3、ネットワーク4、及びサーバ装置5を有する。
端末装置1は、例えばノートPC等の可搬型の端末装置である。無線通信装置2は、端末装置1に装着可能であり、例えばカード型の形状を有する。無線基地局3は、無線通信装置2との無線通信を行う。ネットワーク4は、無線基地局3とサーバ装置5との間に設けられ、多数のルータを含むパケット交換網として構成される。サーバ装置5は、例えばメールサーバ又はコンテンツサーバである。
端末装置1及びサーバ装置5は、OSI参照モデルのトランスポート層にTCPを使用した通信を行う。端末装置1は、データ送信側であるサーバ装置5からデータを受信するクライアントとして動作する。
サーバ装置5が送信するデータはネットワーク4を経由して無線基地局3で受信され、無線基地局3は、受信したデータを無線区間を介して無線通信装置2に送信する。無線通信装置2は、無線基地局3からデータを受信し、受信したデータを端末装置1に中継する。
端末装置1は、受信ウィンドウサイズを決定し、サーバ装置5へ送信するACKに当該受信ウィンドウサイズを示す情報を含めることで、サーバ装置5からのデータ送信量を調整する。
無線通信装置2及び無線基地局3からなる無線通信システムは、CDMA(Code Division Multiple Access) 1x EV-DO(Evolution-Data Only)や、HSDPA(High Speed Downlink Packet Access)といった高速大容量の無線通信システムである。本実施形態では、無線通信装置2及び無線基地局3のそれぞれは、CDMA 1x EV-DOに準拠して構成されるものとする。
なお、図1においては、1つの無線通信装置2のみを図示しているが、端末装置1には、複数種類の無線通信装置2の何れかを装着可能である。無線通信装置2の種類とは、例えば無線通信装置2のメーカーや型番を意味する。
(2)端末装置及び無線通信装置の構成
次に、端末装置1及び無線通信装置2の構成について、(2.1)概略構成、(2.2)端末装置の詳細構成の順に説明する。
次に、端末装置1及び無線通信装置2の構成について、(2.1)概略構成、(2.2)端末装置の詳細構成の順に説明する。
(2.1)概略構成
図2は、本実施形態に係る端末装置1及び無線通信装置2の概略構成図である。
図2は、本実施形態に係る端末装置1及び無線通信装置2の概略構成図である。
図2に示すように、無線通信装置2は、無線部21、信号処理部22、及びインタフェース部23を有する。端末装置1は、インタフェース部11、処理部12、記憶部13、及びユーザインタフェース部14を有する。
無線通信装置2において、無線部21は、アンテナ、増幅器及びフィルタ等を含む。信号処理部22は、例えばベースバンドプロセッサであり、各種の信号処理を行う。インタフェース部23は、端末装置1側のインタフェース部11と電気的に接続される。
端末装置1において、インタフェース部11は、無線通信装置2側のインタフェース部23と電気的に接続される。処理部12は、例えばCPUであり、記憶部13に記憶されている制御プログラムを実行することによって、後述する各種の機能を実現する。記憶部13は、例えば半導体メモリやハードディスクであり、処理部12が実行する制御プログラムやオペレーティングシステム(OS)を記憶するとともに、処理部12の作業領域(ワークエリア)として機能する。記憶部13は、受信データを一時的に記憶する受信バッファ131を有する。ユーザインタフェース部14は、例えばディスプレイやキーボードを含み、端末装置1のユーザとのインタフェースとして機能する。
データ受信時において、無線部21は、アンテナからの受信信号を低周波数帯の受信データに変換し、当該受信データを信号処理部22に入力する。信号処理部22は、受信データを復調し、復調された受信データをインタフェース部23に入力する。インタフェース部23に入力された受信データは、インタフェース部23及びインタフェース部11を介して処理部12に入力される。処理部12は、インタフェース部11から入力された受信データを一旦受信バッファ131に格納した後に処理する。
データ送信時において、処理部12は、送信データをインタフェース部11及びインタフェース部23を介して信号処理部22に入力する。信号処理部22は、送信データを変調し、変調された送信データを無線部21に入力する。無線部21は、入力された送信データを高周波数帯の送信信号に変換し、当該送信信号をアンテナから送信する。
(2.2)端末装置の詳細構成
図3は、本実施形態に係る端末装置1の詳細構成図である。なお、図3は、OSI参照モデルのプロトコルスタック図も兼ねている。図3における物理層処理部P1と、データリンク層処理部P2の一部とは、無線通信装置2の無線部21及び信号処理部22に相当する。
図3は、本実施形態に係る端末装置1の詳細構成図である。なお、図3は、OSI参照モデルのプロトコルスタック図も兼ねている。図3における物理層処理部P1と、データリンク層処理部P2の一部とは、無線通信装置2の無線部21及び信号処理部22に相当する。
図3に示すように、端末装置1の処理部12は、データリンク層処理部P2の一部、ネットワーク層処理部P3、トランスポート層処理部P4、セッション層処理部P5、プレゼンテーション層処理部P6、及びアプリケーション層処理部P7を有する。
なお、物理層処理部P1、データリンク層処理部P2、ネットワーク層処理部P3、トランスポート層処理部P4、セッション層処理部P5、プレゼンテーション層処理部P6、及びアプリケーション層処理部P7は、OSI参照モデルの物理層、データリンク層、ネットワーク層、トランスポート層、セッション層、プレゼンテーション層、及びアプリケーション層とそれぞれ対応して設けられる。
トランスポート層処理部P4は、TCPに従った処理を行うTCP処理部120を有する。本実施形態においてトランスポート層処理部P4は、上位層プロトコル処理部に相当する。トランスポート層処理部P4の詳細については後述する。
データリンク層処理部P2は、端末装置1のOSと無線通信装置2とのインタフェースとして機能するとともに無線通信装置2を制御するデバイスドライバ部110を有する。本実施形態においてデバイスドライバ部110は、装置制御部に相当する。デバイスドライバ部110は、無線通信装置2と対応するデバイスドライバを端末装置1にインストールすることによって構成される。デバイスドライバ部110の詳細については後述する。
(2.2.1)TCP処理部の構成
次に、TCP処理部120の構成について説明する。
次に、TCP処理部120の構成について説明する。
図3に示すように、TCP処理部120は、往復遅延時間測定部121、最小往復遅延時間記憶部122、最小往復遅延時間通知部123、受信ウィンドウサイズ取得部124、受信ウィンドウサイズ調整部125、及びACK生成部126を有する。
往復遅延時間測定部121は、TCPのタイムスタンプオプションなどの方法によって、サーバ装置5から受信したセグメントから、端末装置1とサーバ装置5との間の往復遅延時間を複数回定期的に測定する。
なお、セグメントとは、TCPで取り扱われるデータの最小単位である。セグメントにIPヘッダを付加することでIPパケットが構成される。
最小往復遅延時間記憶部122は、往復遅延時間測定部121で測定された往復遅延時間の最小値を最小往復遅延時間として記憶する。最小往復遅延時間記憶部122は、記憶する最小往復遅延時間を定期的に更新することが好ましい。
最小往復遅延時間を使用する理由は、次の通りである。適切な受信ウィンドウサイズを求めるには、往復遅延時間の値は、キュー待ち遅延を取り除いた、リンク部分のみで発生する遅延を用いることが好ましい。リンク部分の遅延はゼロになることはないが、キュー待ち遅延は、途中のルータのキューがほとんど空である場合、ゼロに近い値となる。そこで、最小往復遅延時間を、キュー待ち遅延を取り除いたリンク部分のみの遅延で構成される往復遅延時間とみなすこととする。
最小往復遅延時間通知部123は、最小往復遅延時間通知部123は、最小往復遅延時間記憶部122に記憶されている最小往復遅延時間をデバイスドライバ部110に定期的に通知する。デバイスドライバ部110に最小往復遅延時間を通知する時間間隔は、例えばTCPの設定であらかじめn秒と決めておく。
最小往復遅延時間を通知されたデバイスドライバ部110は、当該最小往復遅延時間に基づいて受信ウィンドウサイズを決定する(詳細については後述)。
本実施形態では、デバイスドライバ部110において、適切な受信ウィンドウサイズを計算する手段をAPI(Application Program Interface)として実装する。この場合、最小往復遅延時間通知部123は、最小往復遅延時間をデバイスドライバ部110のAPIに渡す。当該APIは受信ウィンドウサイズを決定し、決定した受信ウィンドウサイズを戻り値としてTCP処理部120へ返す。
受信ウィンドウサイズ取得部124は、デバイスドライバ部110から通知された受信ウィンドウサイズを取得する。
受信ウィンドウサイズ調整部125は、受信ウィンドウサイズ取得部124によって取得された受信ウィンドウサイズを現時点での受信バッファ131の空き容量と比較し、比較結果に応じて当該受信ウィンドウサイズを調整する。受信ウィンドウサイズ調整部125の動作の詳細については後述する。
ACK生成部126は、受信ウィンドウサイズ調整部125による調整後の受信ウィンドウサイズを示す情報を含み、サーバ装置5に送信されるACKセグメントを生成する。ACK生成部126によって生成されたACKセグメントは、ネットワーク層処理部P3、データリンク層処理部P2、及び物理層処理部P1を経由してサーバ装置5に送信される。
(2.2.2)デバイスドライバ部の構成
次に、デバイスドライバ部110の構成について説明する。デバイスドライバ部110は、無線通信装置2に対して最適化された多次元テーブルT(図5参照)を用いて、TCP処理部120から通知された往復遅延時間と、無線区間の予測データ帯域とから、サーバ装置5の受信ウィンドウサイズを決定する。
次に、デバイスドライバ部110の構成について説明する。デバイスドライバ部110は、無線通信装置2に対して最適化された多次元テーブルT(図5参照)を用いて、TCP処理部120から通知された往復遅延時間と、無線区間の予測データ帯域とから、サーバ装置5の受信ウィンドウサイズを決定する。
図3に示すように、デバイスドライバ部110は、最小往復遅延時間取得部111、無線通信情報取得部112、予測データ帯域計算部113、多次元テーブル記憶部114、受信ウィンドウサイズ決定部115、及び受信ウィンドウサイズ通知部116を有する。
最小往復遅延時間取得部111は、TCP処理部120から通知された最小往復遅延時間を取得する。
無線通信情報取得部112は、無線通信装置2が行う無線通信の状況を示す無線通信情報を取得する。無線通信情報とは、無線通信装置2から取得できる情報であり、例えば、DRC(Data Rate Control)、MCS(Modulation and Coding Scheme)レベル、SINR(Signal-to-Interference and Noise power Ratio)、RSSI(Received Signal Strength Indicator)、又は無線基地局3のスケジューリング情報などが無線通信情報に相当する。
なお、DRCとは、CDMA 1x EV-DOで使用され、次フレームで予測される無線品質と対応するデータ帯域を示す情報である。MCSレベルとは、無線通信に適用される変調方式及び符号化方式の組み合わせを示す情報である。DRC及びMCSレベルは、無線品質と対応するデータ帯域を示している。例えば、CDMA 1x EV-DO Rev.Aでは、無線区間のデータ帯域は、その時の無線状態に応じて38.4kbps〜3072kbpsの間で変動する。SINR及びRSSIは無線品質(受信信号の良好さ)を表す指標値である。スケジューリング情報とは、無線通信装置2にどの程度の無線通信リソースが割り当てられるかを示す情報である。
予測データ帯域計算部113は、無線通信情報取得部112によって取得された無線通信情報を用いて予測データ帯域を計算する。予測データ帯域とは、現時点でのデータ帯域の予測値であってもよく、現時点よりも未来の時点でのデータ帯域の予測値であってもよい。本実施形態では、予測データ帯域は、現時点よりも未来の時点でのデータ帯域の予測値であるものとする。
多次元テーブル記憶部114は、往復遅延時間と予測データ帯域と受信ウィンドウサイズとを対応付けた多次元テーブルTを予め記憶する。多次元テーブル記憶部114は、実験又はシミュレーションにより求められた受信ウィンドウサイズを記憶する。多次元テーブル記憶部114は、デバイスドライバ部110の外部から参照できないように構成されている。多次元テーブルTの詳細については後述する。
受信ウィンドウサイズ決定部115は、多次元テーブル記憶部114を参照して、TCP処理部120から通知された最小往復遅延時間と、予測データ帯域計算部113によって計算された予測データ帯域とに対応する受信ウィンドウサイズを決定する。
受信ウィンドウサイズ通知部116は、受信ウィンドウサイズ決定部115によって決定された受信ウィンドウサイズをTCP処理部120に通知する。
(3)多次元テーブル
次に、多次元テーブルTの構成について説明する。
次に、多次元テーブルTの構成について説明する。
図4は、CDMA 1x EV-DOにおいて、ある無線通信環境での受信ウィンドウサイズとデータ帯域・往復遅延時間との関係を示すグラフである。
図4に示すように、受信ウィンドウサイズは、ある一定の値以上大きくしても、データ帯域はほとんど向上せず、逆に往復遅延時間が増えるので、逆効果であることがわかる。また、図4より、データ帯域を最大限引き出し、かつ、往復遅延時間も小さいという、適切な受信ウィンドウサイズは、21900(byte)付近であることが分かる。
この図の無線通信環境において、上で述べた予測データ帯域と最小往復遅延時間とを計算したところ、それぞれ、962(kbps)と100(ms)であった。この値を式(1)に代入すると、その計算結果は、12025(byte)となる。これは、適切な受信ウィンドウサイズである21900(byte)とは大きくずれている。
この原因は、予測データ帯域の予測誤差が大きいことや、最小往復遅延時間の値にも誤差が含まれていることなどが考えられる。いずれにせよ、予測データ帯域と最小往復遅延時間を式(1)へ代入して適切な受信ウィンドウサイズを求めることは難しい。
シミュレーションによる評価により、予測データ帯域と最小往復遅延時間の値のどちらか、もしくは両方が増加すれば、適切な受信ウィンドウサイズも増加することが分かっている。しかし、その増加のパターンは線形的ではなく、予測データ帯域と最小往復遅延時間の値によって変化することが分かっている。また、この増加のパターンは、無線通信装置2の種類によって変わることも分かっている。
無線通信における適切な受信ウィンドウサイズの増加パターンを解析して、式(1)のように数式で表すことは、不可能ではないが困難である。それは、無線通信における適切な受信ウィンドウサイズの増加パターンは、単純な形をしていなからである。さらに、無線通信装置2によって適切な受信ウィンドウサイズの増加パターンが異なるため、無線通信装置2毎に適切な受信ウィンドウサイズを求める数式を求めるのは困難である。
そこで、評価実験やシミュレーションなどから、予測データ帯域及び最小往復遅延時と、それに対応する適切な受信ウィンドウサイズを求め、それらの値をプロットした多次元テーブルTを作成する。適切な受信ウィンドウサイズを求める数式を求めるよりも、多次元テーブルTを作成する方がはるかに容易であり、また、適切な受信ウィンドウサイズを求める数式を使用する場合と同様に、予測データ帯域及び最小往復遅延時間の値から、適切な受信ウィンドウサイズをすぐに求めることができる。
図5は、多次元テーブルTの構成例を示す図である。
図5に示すように、多次元テーブルTは、最小往復遅延時間と予測データ帯域と適切な受信ウィンドウサイズとの関係を示している。多次元テーブルTの値は離散的に存在するため、受信ウィンドウサイズ決定部115は、その途中の値を例えば線形補間などの補間処理を行って決定する。
なお、上で説明した、適切な受信ウィンドウサイズを計算するための多次元テーブルTは、無線通信装置2の種類(メーカーや型番)によって異なってくる。この多次元テーブルTは、例えば無線通信装置2のメーカーが、評価実験やシミュレーションなどを行って値を決定する。
また、無線通信装置2毎に別々のデバイスドライバを用意し、デバイスドライバに多次元テーブルTを格納する。こうすることで、それぞれの無線通信装置2に適した多次元テーブルTを構成可能になる。
このような多次元テーブルTの値は、無線通信装置2を作成したメーカーの立場からすると、外部に公表したくないと考えられる。そこで、適切な受信ウィンドウサイズを計算するための多次元テーブルTを、無線通信装置2のデバイスドライバ部110内部に組み込み、デバイスドライバ部110の外部からは、多次元テーブルTの値を直接参照できないようにする。
(4)端末装置の動作
次に、端末装置1の動作について、TCP処理部120の動作及びデバイスドライバ部110の動作の順に説明する。
次に、端末装置1の動作について、TCP処理部120の動作及びデバイスドライバ部110の動作の順に説明する。
(4.1)TCP処理部の動作
図6は、TCP処理部120の動作を示すフローチャートである。
図6は、TCP処理部120の動作を示すフローチャートである。
図6に示すように、ステップS11において、最小往復遅延時間通知部123は、最小往復遅延時間記憶部122に記憶されている最小往復遅延時間をデバイスドライバ部110に通知する。デバイスドライバ部110は、受信ウィンドウサイズを決定する。
ステップS12において、受信ウィンドウサイズ取得部124は、デバイスドライバ部110によって決定された受信ウィンドウサイズを取得する。
ステップS13において、受信ウィンドウサイズ調整部125は、受信ウィンドウサイズ取得部124によって取得された受信ウィンドウサイズを現時点での受信バッファ131の空き容量と比較する。
受信ウィンドウサイズが受信バッファ131の空き容量よりも大い場合(ステップS13;No)、ステップS14において受信ウィンドウサイズ調整部125は、受信ウィンドウサイズを受信バッファ131の空き容量と同じ値にする。これは、受信バッファ131の空き容量よりも多い量のデータを受信することができないからである。
ステップS15において、受信ウィンドウサイズ調整部125は、シリーウインドウシンドロームを回避するために受信ウィンドウサイズの調整を行う。シリーウインドウシンドロームとは、小さなサイズのセグメントが継続して送信される状態である。
ステップS16において、ACK生成部126は、受信ウィンドウサイズ調整部125によって最終的に決定された受信ウィンドウサイズの情報をヘッダ部分に含むACKセグメントを生成する。
ACK生成部126によって生成されたACKセグメントは、ネットワーク層処理部P3、データリンク層処理部P2、及び物理層処理部P1を経由してサーバ装置5に送信される。
(4.2)デバイスドライバ部の動作
図7は、デバイスドライバ部110の動作を示すフローチャートである。
図7は、デバイスドライバ部110の動作を示すフローチャートである。
図7に示すように、ステップS21において、最小往復遅延時間取得部111は、TCP処理部120から通知された最小往復遅延時間を取得する。
ステップS22において、無線通信情報取得部112は、無線通信情報を取得する。予測データ帯域計算部113は、無線通信情報取得部112によって取得された無線通信情報に基づいて、予測データ帯域を計算する。
ステップS23において、最小往復遅延時間取得部111によって取得された最小往復遅延時間と、予測データ帯域計算部113によって計算された予測データ帯域とが、受信ウィンドウサイズ決定部115に入力される。
ステップS24において、受信ウィンドウサイズ決定部115は、多次元テーブルTを参照し、最小往復遅延時間取得部111によって取得された最小往復遅延時間と、予測データ帯域計算部113によって計算された予測データ帯域とから、適切な受信ウィンドウサイズを決定する。
ここで、複数種類の無線通信装置2の何れかが端末装置1に装着される場合、受信ウィンドウサイズ決定部115は、複数種類の無線通信装置2毎に用意された複数の多次元テーブルTのうち、端末装置1に装着された無線通信装置2と対応する多次元テーブルTを用いて受信ウィンドウサイズを決定する。そのために、受信ウィンドウサイズ決定部115は、インタフェース部11に装着されている無線通信装置2の種類を判別する機能を有するものとする。
ステップS25において、受信ウィンドウサイズ通知部116は、受信ウィンドウサイズ決定部115によって決定された受信ウィンドウサイズをTCP処理部120に通知する。
(5)作用・効果
以上説明したように、本実施形態によれば、端末装置1に無線通信装置2を装着してサーバ装置5との通信を行うケースにおいても、端末装置1がウィンドウサイズを適切に設定できる。
以上説明したように、本実施形態によれば、端末装置1に無線通信装置2を装着してサーバ装置5との通信を行うケースにおいても、端末装置1がウィンドウサイズを適切に設定できる。
本実施形態では、往復遅延時間測定部121は、往復遅延時間測定部121によって複数回測定された往復遅延時間のうちの最小往復遅延時間をデバイスドライバ部110に通知する。これにより、端末装置1とサーバ装置5との間の伝送経路で生じる遅延のうち、キュー待ち遅延を取り除いたリンク部分のみの遅延に近い値を用いて受信ウィンドウサイズを決定可能になるため、受信ウィンドウサイズを適切に設定可能となる。
本実施形態では、受信ウィンドウサイズ決定部115は、複数種類の無線通信装置2毎に用意された複数の多次元テーブルTのうち、端末装置1に装着された無線通信装置2と対応する多次元テーブルTを用いて受信ウィンドウサイズを決定する。これにより、端末装置1に装着される無線通信装置2が変更される場合でも、無線通信装置2に適した受信ウィンドウサイズを決定できる。
本実施形態では、予測データ帯域計算部113は、無線通信情報取得部112によって取得された無線通信情報を用いて予測データ帯域を計算する。これにより、無線通信環境に適した受信ウィンドウサイズを設定可能になる。
本実施形態では、評価実験やシミュレーションから求められた受信ウィンドウサイズの値をプロットした多次元テーブルTを使用することで、予測データ帯域及び最小往復遅延時間の値から、適切な受信ウィンドウサイズをすぐに求めることができる。
(6)その他の実施形態
上記のように、本発明は実施形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなる。
上記のように、本発明は実施形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなる。
(6.1)予測データ帯域の計算例1
以下において、予測データ帯域計算部113による予測データ帯域の計算方法の一例について説明する。
以下において、予測データ帯域計算部113による予測データ帯域の計算方法の一例について説明する。
無線通信システムでは、複数の無線通信装置が無線リソースを共有するため、他の無線通信装置の通信状況によっても、無線区間のデータ帯域が変動する。例えば、無線通信装置2に接続する無線通信装置の数が多い場合、各無線通信装置に割り当てられる無線リソースが相対的に少なくなるため、無線品質が良好な無線通信装置であっても、高速なデータ帯域が得られないことがある。
そこで、予測データ帯域計算部113は、無線基地局3のスケジューリング情報を用いて、次のように予測データ帯域を計算する。予測データ帯域計算部113は、現時点以前の所定期間内で無線通信装置2が割り当て可能な全ての無線リソースのうち無線通信装置2に割り当てられた無線リソースが占める割合を示す割当率を計算し、当該割当率と、無線品質に応じて定められるデータ帯域とから、予測データ帯域を計算する。
これにより、無線基地局3から無線通信装置2に割り当てられる無線リソースの量が動的に変化する場合であっても、予測データ帯域を精度良く計算できる。
(6.2)予測データ帯域の計算例2
以下において、予測データ帯域計算部113による予測データ帯域の計算方法の他の例について説明する。
以下において、予測データ帯域計算部113による予測データ帯域の計算方法の他の例について説明する。
無線通信システムでは、その時の無線状態に応じて、HARQの再送回数が変化する。ハイブリッドARQの再送回数が多くなると、無線区間における遅延も大きくなる。また、無線端末が、最大スロット数を使い切らずに、最大スロット数の一部のみでデータの復号に成功(“アーリー・ターミネーション”と呼ばれる)することがある。このような場合には、最大スロット数の一部のみが使用されるため、最大スロット数を使い切った場合のデータ帯域と比較してデータ帯域が上昇したことになる。
そこで、予測データ帯域計算部113は、最大スロット数を全て使用した場合のデータ帯域に対して、最大スロット数の一部のみでデータの復号に成功する確率を考慮してデータ帯域を計算する。これにより、アーリー・ターミネーションがデータ帯域に与える影響を反映したデータ帯域を計算できる。
(6.3)実施形態の変更例
上述した実施形態においては、無線通信装置2及び無線基地局3からなる無線通信システムは、CDMA 1x EV-DOやHSDPAといった第3.5世代(3.5G)携帯電話システムに従って構成されていたが、LTE(Long Term Evolution)やLTE-Advancedといった第3.9世代(3.9G)又は第4世代(4G)携帯電話システムに従って構成されてもよい。
上述した実施形態においては、無線通信装置2及び無線基地局3からなる無線通信システムは、CDMA 1x EV-DOやHSDPAといった第3.5世代(3.5G)携帯電話システムに従って構成されていたが、LTE(Long Term Evolution)やLTE-Advancedといった第3.9世代(3.9G)又は第4世代(4G)携帯電話システムに従って構成されてもよい。
上述した実施形態においては、受信ウィンドウサイズ決定部115が多次元テーブルTを用いて受信ウィンドウサイズを決定していたが、このようなテーブルを利用する場合に限らず、実験又はシミュレーションにより定められた値をある程度再現可能な数式を用いて受信ウィンドウサイズを決定してもよい。この場合、当該計算式は、導出用情報に相当する。
このように本発明は、ここでは記載していない様々な実施形態等を包含するということを理解すべきである。したがって、本発明はこの開示から妥当な特許請求の範囲の発明特定事項によってのみ限定されるものである。
P1…物理層処理部、P2…データリンク層処理部、P3…ネットワーク層処理部、P4…トランスポート層処理部、P5…セッション層処理部、P6…プレゼンテーション層処理部、P7…アプリケーション層処理部、T…多次元テーブル、1…端末装置、2…無線通信装置、3…無線基地局、4…ネットワーク、5…サーバ装置、11…インタフェース部、12…処理部、13…記憶部、14…ユーザインタフェース部、21…無線部、22…信号処理部、23…インタフェース部、110…デバイスドライバ部、111…最小往復遅延時間取得部、112…無線通信情報取得部、113…予測データ帯域計算部、114…多次元テーブル記憶部、115…受信ウィンドウサイズ決定部、116…受信ウィンドウサイズ通知部、120…TCP処理部、121…往復遅延時間測定部、122…最小往復遅延時間記憶部、123…最小往復遅延時間通知部、124…受信ウィンドウサイズ取得部、125…受信ウィンドウサイズ調整部、126…ACK生成部、131…受信バッファ
Claims (11)
- 装着された無線通信装置を用いて、サーバ装置から送信されるデータをネットワークを介して受信する端末装置であって、
OSI参照モデルのネットワーク層以上のプロトコルを処理する上位層プロトコル処理部と、
OSI参照モデルのデータリンク層と対応して設けられ、前記無線通信装置を制御する装置制御部と
を備え、
前記上位層プロトコル処理部は、
前記端末装置と前記サーバ装置との間の往復遅延時間を測定する測定部と、
前記往復遅延時間を前記装置制御部に通知する第1の通知部と
を有し、
前記装置制御部は、
前記無線通信装置に対して最適化された導出用情報を用いて、前記上位層プロトコル処理部から通知された前記往復遅延時間と、無線区間の予測データ帯域とから、前記サーバ装置のデータ送信量を決定する決定部と、
前記決定部によって決定された前記データ送信量を前記上位層プロトコル処理部に通知する第2の通知部と
を有する端末装置。 - 前記測定部は、前記往復遅延時間を複数回測定し、
前記第1の通知部は、前記測定部によって複数回測定された往復遅延時間のうち最小の往復遅延時間を前記装置制御部に通知する請求項1に記載の端末装置。 - 複数種類の無線通信装置の何れかが前記端末装置に装着される場合、前記決定部は、前記複数種類の無線通信装置毎に用意された複数の導出用情報のうち、前記端末装置に装着された無線通信装置と対応する導出用情報を用いて前記データ送信量を決定する請求項1又は2に記載の端末装置。
- 前記上位層プロトコル処理部は、
前記装置制御部によって通知された前記データ送信量を調整する調整部と、
前記装置制御部によって通知された前記データ送信量又は前記調整部による調整後の前記データ送信量を示す情報を含み、前記サーバ装置に送信される確認応答を生成する生成部と
をさらに有する請求項1〜3の何れか一項に記載の端末装置。 - 前記装置制御部は、
前記無線通信装置が行う無線通信の状況を示す無線通信情報を取得する取得部と、
前記取得部によって取得された前記無線通信情報を用いて前記予測データ帯域を計算する計算部と
をさらに有する請求項1〜4の何れか一項に記載の端末装置。 - 前記装置制御部は、前記往復遅延時間と前記予測データ帯域と前記データ送信量との対応付けである前記導出用情報を予め記憶する記憶部をさらに備え、
前記決定部は、前記記憶部に記憶された前記導出用情報を参照して、前記上位層プロトコル処理部から通知された前記往復遅延時間と、前記計算部によって計算された前記予測データ帯域とに対応する前記データ送信量を決定し、
前記記憶部は、実験又はシミュレーションにより求められた前記データ送信量を記憶する請求項5に記載の端末装置。 - 前記記憶部は、前記装置制御部の外部から参照できないように構成されている請求項6に記載の端末装置。
- 前記上位層プロトコル処理部は、OSI参照モデルのトランスポート層のプロトコルであるTCPに従った処理を行う請求項1〜7の何れか一項に記載の端末装置。
- 前記装置制御部は、前記無線通信装置と対応するデバイスドライバを前記端末装置にインストールすることによって構成される請求項1〜8の何れか一項に記載の端末装置。
- 装着された無線通信装置を用いて、サーバ装置から送信されるデータをネットワークを介して受信する端末装置に、
OSI参照モデルのネットワーク層以上のプロトコルを処理する上位層プロトコル処理手順と、
OSI参照モデルのデータリンク層と対応して設けられ、前記無線通信装置を制御する装置制御手順と
を実行させ、
前記上位層プロトコル処理手順は、
前記端末装置と前記サーバ装置との間の往復遅延時間を測定する測定手順と、
前記往復遅延時間を前記装置制御手順に通知する第1の通知手順と
を有し、
前記装置制御手順は、
前記無線通信装置に対して最適化された導出用情報を用いて、前記上位層プロトコル処理手順から通知された前記往復遅延時間と、無線区間の予測データ帯域とから、前記サーバ装置のデータ送信量を決定する決定手順と、
前記決定手順によって決定された前記データ送信量を前記上位層プロトコル処理手順に通知する第2の通知手順と
を有する制御プログラム。 - 装着された無線通信装置を用いて、サーバ装置から送信されるデータをネットワークを介して受信する端末装置の制御方法であって、
OSI参照モデルのネットワーク層以上のプロトコルを処理する上位層プロトコル処理部が、前記端末装置と前記サーバ装置との間の往復遅延時間を測定するステップと、
前記上位層プロトコル処理部が、OSI参照モデルのデータリンク層と対応して設けられ、前記無線通信装置を制御する装置制御部に前記往復遅延時間を通知するステップと、
前記装置制御部が、前記無線通信装置に対して最適化された導出用情報を用いて、前記上位層プロトコル処理部から通知された前記往復遅延時間と、無線区間の予測データ帯域とから、前記サーバ装置のデータ送信量を決定するステップと、
前記装置制御部が、前記決定するステップによって決定された前記データ送信量を前記上位層プロトコル処理部に通知するステップと
を有する制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010013365A JP2011151738A (ja) | 2010-01-25 | 2010-01-25 | 端末装置、制御プログラム及び制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010013365A JP2011151738A (ja) | 2010-01-25 | 2010-01-25 | 端末装置、制御プログラム及び制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011151738A true JP2011151738A (ja) | 2011-08-04 |
Family
ID=44538309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010013365A Pending JP2011151738A (ja) | 2010-01-25 | 2010-01-25 | 端末装置、制御プログラム及び制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011151738A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015029238A1 (ja) * | 2013-08-30 | 2015-03-05 | ニューロネット株式会社 | 通信品質測定制御装置、通信装置、およびプログラム |
JP2015106880A (ja) * | 2013-12-02 | 2015-06-08 | 富士通株式会社 | 通信ノード |
-
2010
- 2010-01-25 JP JP2010013365A patent/JP2011151738A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015029238A1 (ja) * | 2013-08-30 | 2015-03-05 | ニューロネット株式会社 | 通信品質測定制御装置、通信装置、およびプログラム |
JP6002953B2 (ja) * | 2013-08-30 | 2016-10-05 | ニューロネット株式会社 | 通信品質測定制御装置、通信装置、およびプログラム |
US9930565B2 (en) | 2013-08-30 | 2018-03-27 | Neuronet Inc. | Controlling apparatus for communication-quality measuring, communication apparatus, and program |
JP2015106880A (ja) * | 2013-12-02 | 2015-06-08 | 富士通株式会社 | 通信ノード |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102002660B1 (ko) | 실시간 현장 성능을 위한 동적 tcp 층 최적화 | |
US10374958B2 (en) | Method and apparatus for TCP-based transmission control in communication system | |
US8406199B2 (en) | Data flow amount control device and data flow amount control method | |
US9351183B2 (en) | Apparatus and method for measuring and using congestion in a wireless communication system | |
CN112970215A (zh) | 用于无线网络的动态可靠性目标 | |
US10911359B2 (en) | Transmit data volume control device, method, and recording medium | |
JP2010004549A (ja) | チャンネル品質インジケータに適応的にバイアスを掛けて所要のブロック誤り率を維持する無線通信方法および装置 | |
JP6627966B2 (ja) | 無線アクセスネットワークノード、外部ノード、及びこれらの方法 | |
EP2706695A2 (en) | Wireless communication system, base station, and wireless communication method | |
KR102231454B1 (ko) | 적응적 변조 및 코딩 방법 및 기지국 | |
WO2022142374A1 (zh) | 一种确定排队优先级的方法、通信设备、装置及存储介质 | |
WO2011013768A1 (ja) | 無線端末及び伝送速度予測方法 | |
KR20190011898A (ko) | 무선 통신 시스템에서 단말, 기지국 및 이의 통신 방법 | |
RU2727166C1 (ru) | Способ и устройство для передачи информации | |
JP2011151738A (ja) | 端末装置、制御プログラム及び制御方法 | |
US9642092B2 (en) | Apparatus for controlling modulation and coding scheme depending on communication speed | |
US9106381B2 (en) | Method and system configuring a base station to trigger HS-DPCCH generation | |
WO2011013724A1 (ja) | 無線端末及び伝送速度予測方法 | |
US8942119B1 (en) | Determining a burstiness profile of a wireless communication system | |
US20190191447A1 (en) | Method and apparatus for scheduling terminal radio resources | |
US11503506B2 (en) | Base station device, wireless communication control method, and recording medium having base station control program stored therein | |
CN113873562B (zh) | 应用于双卡双通终端的编码控制方法、装置、系统和基站 | |
CN109921876B (zh) | Csi调制信息确定方法及装置、计算机存储介质 | |
WO2020194369A1 (ja) | 端末装置、基地局装置、および無線通信システム | |
JP5498888B2 (ja) | 無線端末及び伝送速度計算方法 |