(58)【調査した分野】(Int.Cl.,DB名)
当該中継装置との接続前にアクセスネットワーク側の情報を取得するための接続前情報要求を当該中継装置宛てに送信し、当該接続前情報要求に対する応答として当該中継装置から送信された接続前情報応答信号を受信する通信制御手段を更に有し、
前記バックホール混雑度決定手段は、受信された当該接続前情報応答信号から、WAN(Wide Area Network)側インタフェース対応回線の容量、負荷率及び通信速度の情報のうちの少なくとも1つを取得し、当該取得した情報に基づいて、当該バックホール混雑度パラメータを算出し、
前記最大ウィンドウ設定手段は、少なくとも算出された当該バックホール混雑度パラメータを用いて、最大ウィンドウサイズの更新値候補であるウィンドウサイズ更新値を算出し、当該ウィンドウサイズ更新値が、先に算出した最大ウィンドウサイズよりも小さい場合、当該ウィンドウサイズ更新値を新たな最大ウィンドウサイズに設定する
ことを特徴とする請求項1に記載の無線端末。
前記無線混雑度推定手段は、受信された当該報知信号又は応答信号から、無線リソースの使用度合いの情報を取得し、当該取得した情報に基づいて当該無線混雑度を推定することを特徴とする請求項3に記載の無線端末。
前記ウィンドウ制御手段は、複数のセッションが起動した場合、各セッションのウィンドウサイズの合計を、当該最大ウィンドウサイズ内の値に制御することを特徴とする請求項1から4のいずれか1項に記載の無線端末。
装置。
中継装置から無線ネットワークを介して送信される報知信号又は応答信号によってアクセスネットワーク側の情報を取得可能な無線端末において、ウィンドウサイズを制御するプログラムであって、
受信された当該報知信号又は応答信号から、アクセスネットワーク側の回線容量を含む情報を取得し、当該取得した情報に基づいて、バックホール側での通信の混雑の度合いを示すバックホール混雑度パラメータを決定するバックホール混雑度決定手段と、
当該バックホール混雑度パラメータに基づいて、まとめて送信又は受信するデータ量を規定する最大ウィンドウサイズを算出する最大ウィンドウ設定手段と、
送信及び受信の少なくとも一方に係る全てのウィンドウサイズを、当該最大ウィンドウサイズ内の値に制御するウィンドウ制御手段と
してコンピュータを機能させることを特徴とするウィンドウサイズ制御プログラム。
中継装置から無線ネットワークを介して送信される報知信号又は応答信号によってアクセスネットワーク側の情報を取得可能な無線端末において、ウィンドウサイズを制御する方法であって、
受信された当該報知信号又は応答信号から、アクセスネットワーク側の回線容量を含む情報を取得し、当該取得した情報に基づいて、バックホール側での通信の混雑の度合いを示すバックホール混雑度パラメータを決定する第1のステップと、
当該バックホール混雑度パラメータに基づいて、まとめて送信又は受信するデータ量を規定する最大ウィンドウサイズを算出する第2のステップと、
送信及び受信の少なくとも一方に係る全てのウィンドウサイズを、当該最大ウィンドウサイズ内の値に制御する第3のステップと
を有することを特徴とするウィンドウサイズ制御方法。
【背景技術】
【0002】
従来、無線通信分野では、コグニティブ無線技術が提案されている。これは、通信機器が通信環境を認識し、使用する周波数や通信システムを選択して、限られた帯域で周波数の利用効率を向上させる技術である。ここで、周波数利用効率を向上させるためには、アプリケーションの求める高い品質(QoS)のパケットを優先して伝達させつつ、TCP(Transmission Control Protocol)等のベストエフォート型パケットにおける送信レートをも高める必要がある。
【0003】
しかしながら、例えばTCPでは通常、応答(受信確認)を待たずに送信可能なデータ量を規定する「ウィンドウサイズ」を、ネットワークでの通信状況を考慮せずに設定している。例えば、スループットのベンチマークを高めるため、RWIN(Receive Window)の最大値をデフォルトとしている無線機器も少なくない。ここで、RWINは、受信ウィンドウサイズであり、受信側が応答(受信確認)を送ることなく受信できるデータ量に相当する。
【0004】
その結果、ネットワークでのスループットの上限を超える量のパケットが送信されてしまう場合も生じ得る。この場合、受信側のバッファ溢れによるパケットロスを解消すべくパケット再送が頻発する。これにより、通信が輻輳し、送信側自体のスループットが低下するだけでなく、当該ネットワークにおける他の通信機器による通信にも輻輳による悪影響を与える可能性が生じてしまう。
【0005】
さらに、例えば、無線ネットワークの基地局又はアクセスポイント(AP)のセルエッジ等で通信する無線端末においては、受信信号強度が相当に弱い。それにも関わらず、端末側のTCPのRWINが大きな値に固定されている場合、受信信号強度が強い場合に比べて通信速度がより低いので、通信相手のサーバが受信確認(ACK)を受け取るまでにより多くの時間がかかってしまう。ここで、受信に失敗したフレームが発生すると、このフレームのシーケンス番号以降のフレームが再送されることになる。その結果、多量の再送パケットによる無線リソースの消費が大きくなり、この無線端末のスループットが低下するのみならず、セル全体のスループットや隣接セルのスループットも低下する可能性が生じる。
【0006】
このようなスループット低下の問題を解決すべく、例えば特許文献1は、無線LAN(local Area Network)システムにおいて、単位時間当たりに無線の使用された割合である無線混雑度に基づいて、TCP及びUDP(User Datagram Protocol)におけるRWINを決定する技術を開示している。
【0007】
また、例えば特許文献2は、端末に搭載されたOS(Operating System)のバージョンとネットワードカードのスピードとを検知し、検知したこれらの情報に基づいてLook up Table又は所定の数式を用い、TCPにおけるRWINを一意に決定する技術を開示している。
【0008】
さらに、例えば特許文献3は、LTE(Long Term Evolution)とCDMA2000 1xとの2つの無線通信方式に対応した通信インタフェースを搭載する無線通信装置を開示している。この装置では、LTEを用いた外部サーバとの通信中にその通信品質が所定の閾値以下に低下し、この低下に応じて通信をCDMA2000 1xにハンドダウンした場合、当該装置から外部サーバに通知するRWINを、ハンドダウン前に比べて縮小させる。
【0009】
また、例えば特許文献4は、移動局と移動通信システムの無線制御装置との間で無線ベアラが確立されると、予め用意された複数のRWINから、無線ベアラの種類またはトランスポートチャネルの種別に応じて適切なRWINを選択して、移動局に設定する端末装置を開示している。この装置では、その後、移動局と移動通信システムとの間で無線ベアラの変更があると、さらに無線ベアラの種類またはトランスポートチャネルの種別に応じて適切なRWINを選択して、移動局に設定する。
【発明の概要】
【発明が解決しようとする課題】
【0011】
しかしながら、以上に説明した特許文献1〜4に記載された技術を含む従来技術では、例えば無線端末がインターネットを介して外部のサーバと通信する場合においても、端末側の通信状況、又は端末と基地局やAPとの間の通信状況を勘案してウィンドウサイズを設定する。このようにウィンドウサイズを設定した場合でも、例えば、通信相手となるサーバの処理能力、サーバ内部の処理負荷、サーバ周辺での通信の混雑状況や、さらには当該サーバまでの通信経路におけるボトルネックの存在によっては、結局のところ、スループットの低下を招いてしまう。
【0012】
即ち、従来技術では、例えローカルな通信システム範囲では最適なウィンドウサイズを実現していたとしても、基地局やAPのバックホール側やサーバ機器周辺において通信が輻輳していたり、通信経路に深刻なボトルネックが存在していたりした場合、パケット詰まりやパケットの再送が発生し、スループットが著しく低下してしまう問題がある。特に、パケットの再送が頻発すると、対象となっている無線端末でのスループットが低下するだけでなく、無線リソースが長時間浪費されてしまい、無線通信システム全体のスループットの低下を引き起こしてしまう可能性がある。
【0013】
そこで、本発明は、バックホール側での通信の輻輳や通信経路におけるボトルネックの存在にも対処し、より良好な通信を実現するウィンドウサイズを設定可能な無線端末、通信システム、通信プログラム及び通信方法を提供することを目的とする。
【課題を解決するための手段】
【0014】
本発明によれば、中継装置から無線ネットワークを介して送信される報知信号又は応答信号によってアクセスネットワーク側の情報を取得可能な無線端末であって、
受信された当該報知信号又は応答信号から、アクセスネットワーク側の回線容量を含む情報を取得し、当該取得した情報に基づいて、バックホール側での通信の混雑の度合いを示すバックホール混雑度パラメータを決定するバックホール混雑度決定手段と、
当該バックホール混雑度パラメータに基づいて、まとめて送信又は受信するデータ量を規定する最大ウィンドウサイズを算出する最大ウィンドウ設定手段と、
送信及び受信の少なくとも一方に係る全てのウィンドウサイズを、当該最大ウィンドウサイズ内の値に制御するウィンドウ制御手段と
を有する無線端末が提供される。
【0015】
この本発明による無線端末の一実施形態として、当該中継装置との接続前にアクセスネットワーク側の情報を取得するための接続前情報要求を当該中継装置宛てに送信し、当該接続前情報要求に対する応答として当該中継装置から送信された接続前情報応答信号を受信する通信制御手段を更に有し、
バックホール混雑度決定手段は、受信された当該接続前情報応答信号から、WAN(Wide Area Network)側インタフェース対応回線の容量、負荷率及び通信速度の情報のうちの少なくとも1つを取得し、当該取得した情報に基づいて、当該バックホール混雑度パラメータを算出し、
最大ウィンドウ設定手段は、少なくとも算出された当該バックホール混雑度パラメータを用いて、最大ウィンドウサイズの更新値候補であるウィンドウサイズ更新値を算出し、当該ウィンドウサイズ更新値を新たな最大ウィンドウサイズに設定する
ことも好ましい。
【0016】
ここで、バックホール混雑度パラメータが所定の閾値より大きい場合は、先に算出した最大ウィンドウサイズよりも小さい場合に、当該ウィンドウサイズ更新値を新たな最大ウィンドウサイズに設定する。一方、バックホール混雑度が所定の閾値より小さい場合は、当該無線端末が利用可能なネットワークリソースが大きいと見做し、初期ウィンドウサイズよりも大きい更新値を新たな最大ウィンドウサイズに設定することも好ましい。
【0017】
また、本発明による無線端末では、当該無線ネットワーク内の通信の混雑の度合いを示す無線混雑度を推定する無線混雑度推定手段を更に有し、最大ウィンドウ設定手段は、当該無線混雑度及び当該バックホール混雑度パラメータに基づいて、まとめて送信又は受信するデータ量を規定する最大ウィンドウサイズを算出することも好ましい。また、無線混雑度推定手段は、受信された当該報知信号又は応答信号から、無線リソースの使用度合いの情報を取得し、当該取得した情報に基づいて当該無線混雑度を推定することも好ましい。
【0018】
本発明によれば、さらに、上記の接続前情報要求を送信可能な無線端末と、当該中継装置とを備えた通信システムであって、
当該中継装置は、当該接続前情報要求に対する応答として、バックホールに係る往復遅延時間の情報を含む接続前情報応答信号を無線端末宛てに送信する接続前情報応答手段を有し、
無線端末の最大ウィンドウ設定手段は、少なくとも算出された当該バックホール混雑度パラメータを用いてバックホールに係るスループットを算出し、当該算出したスループットと、受信された当該接続前情報応答信号に含まれる当該往復遅延時間の情報とを用いて当該ウィンドウサイズ更新値を算出する通信システムが提供される。
【0019】
本発明によれば、さらにまた、以上に述べた無線端末と、当該中継装置と、当該中継装置を介して当該無線端末と通信可能なサーバとを備えた通信システムであって、
サーバは、無線端末によって送信された接続要求信号及び/又はデータ信号を受信した際、このサーバ位置での通信の混雑の度合いを示すサーバ混雑度パラメータを含む応答信号を、無線端末宛てに送信し、
無縁端末の最大ウィンドウ設定手段は、少なくとも受信された当該応答信号に含まれる当該サーバ混雑度パラメータを用いて、最大ウィンドウサイズの更新値候補であるウィンドウサイズ更新値を算出し、当該ウィンドウサイズ更新値が算出した最大ウィンドウサイズよりも小さい場合、当該ウィンドウサイズ更新値を新たな最大ウィンドウサイズに設定する通信システムが提供される。
【0020】
また、本発明による無線端末の一実施形態として、ウィンドウ制御手段は、複数のセッションが起動した場合、各セッションのウィンドウサイズの合計を、当該最大ウィンドウサイズ内の値に制御することも好ましい。
【0021】
さらに、本発明による無線端末の他の実施形態として、無線混雑度推定手段は、UDP(User Datagram Protocol)による通信で使用される時間の割合であるUDP使用時間率を更に推定し、
最大ウィンドウ設定手段は、当該UDP使用時間率、当該無線混雑度及び当該バックホール混雑度パラメータに基づいて、最大ウィンドウサイズを算出することも好ましい。
【0022】
本発明によれば、また、中継装置から無線ネットワークを介して送信される報知信号又は応答信号によってアクセスネットワーク側の情報を取得可能な無線端末において、ウィンドウサイズを制御するプログラムであって、
受信された当該報知信号又は応答信号から、アクセスネットワーク側の回線容量を含む情報を取得し、当該取得した情報に基づいて、バックホール側での通信の混雑の度合いを示すバックホール混雑度パラメータを決定するバックホール混雑度決定手段と、
当該バックホール混雑度パラメータに基づいて、まとめて送信又は受信するデータ量を規定する最大ウィンドウサイズを算出する最大ウィンドウ設定手段と、
送信及び受信の少なくとも一方に係る全てのウィンドウサイズを、当該最大ウィンドウサイズ内の値に制御するウィンドウ制御手段と
してコンピュータを機能させるウィンドウサイズ制御プログラムが提供される。
【0023】
本発明によれば、さらに、中継装置から無線ネットワークを介して送信される報知信号又は応答信号によってアクセスネットワーク側の情報を取得可能な無線端末において、ウィンドウサイズを制御する方法であって、
受信された当該報知信号又は応答信号から、アクセスネットワーク側の回線容量を含む情報を取得し、当該取得した情報に基づいて、バックホール側での通信の混雑の度合いを示すバックホール混雑度パラメータを決定する第1のステップと、
当該バックホール混雑度パラメータに基づいて、まとめて送信又は受信するデータ量を規定する最大ウィンドウサイズを算出する第2のステップと、
送信及び受信の少なくとも一方に係る全てのウィンドウサイズを、当該最大ウィンドウサイズ内の値に制御する第3のステップと
を有するウィンドウサイズ制御方法が提供される。
【発明の効果】
【0024】
本発明の無線端末、通信システム、通信プログラム及び通信方法によれば、バックホール側での通信の輻輳や通信経路におけるボトルネックの存在にも対処し、より良好な通信を実現するウィンドウサイズを設定することが可能となる。
【発明を実施するための形態】
【0026】
以下、本発明の実施形態について、図面を用いて詳細に説明する。
【0027】
[通信システム]
図1は、本発明による通信システムの一実施形態を示す模式図である。
【0028】
図1によれば、本実施形態の通信システムは、
(a)無線端末1と、
(b)無線LAN(Local Area Network)やLTE等の無線ネットワークを介して無線端末1と通信接続可能な無線アクセスポイント(AP)や基地局22といった中継装置と、
(c)中継装置のバックホール側にあって例えばアクセスネットワークやインターネットを介して中継装置と通信接続可能なサーバ3と
を有している。
【0029】
ここで、アクセスネットワークは、例えば、光固定回線、ADSL(Asymmetric Digital Subscriber Line)、Wi−Fi(登録商標)等の無線LAN、WiMAX(Worldwide Interoperability for Microwave Access)、LTE(Long Term Evolution)、又は3G(3rd Generation)といった通信事業者網とすることができる。
【0030】
本実施形態の無線端末1は、Passpoint対応の端末であり、例えば、スマートフォン、タブレット型コンピュータ、携帯電話機、パーソナルコンピュータ、又はノート型コンピュータといった情報機器である。また、中継装置としての無線AP20や基地局22は、本実施形態においてPasspoint対応の中継装置であり、多数のPasspoint対応の無線端末1と無線ネットワークを介して接続可能である。
【0031】
ここで、Passpointとは、IEEE802.11u及びWi-Fi allianceの標準仕様であり、端末が中継装置との接続に先立ってアクセスネットワーク側の情報を取得する技術の規定である。具体的には、GAS(Generic Advertisement Service,汎用通知サービス)及びANQP(Access Network Query Protocol)の仕組みが規定されており、特に、IEEE802.11u Amendment 9:Interworking with External Networksでは、GAS/ANQPのフレーム構成及びGASの2-way、4-way exchangeの仕組みが規定されている。
【0032】
このような仕組みを利用することによって、無線端末1は、AP等の中継装置との接続に先立って、アクセスネットワーク側の情報、例えばインターネットを介したデータ通信が可能か否か、無線端末のユーザが契約しているサービス提供事業者の加入情報を用いて当該中継装置を介したデータ通信が可能か否か、当該APを介して設置場所固有のサービスの提供を受けられるか否か、更には当該中継装置に接続した後にどの程度の通信品質が得られるのか等の情報を取得可能になる。
【0033】
Passpoint標準仕様では、このようなアクセスネットワーク側の情報は、AP等の中継装置又は中継装置の後位のネットワーク上に設置されたアクセスネットワーク情報管理サーバ4に保持される。中継装置は、当該情報を保持しない場合、無線端末1からのGASクエリ要求に応じ、ANQPを活用してサーバ4に情報を転送し、サーバ4から情報を取得後、取得した情報をGASクエリ応答として無線端末1に送信する。
【0034】
このようなPasspoint対応の無線端末1は、無線AP20といった中継装置から無線LAN等の無線ネットワークを介して送信される報知信号又は応答信号によって、アクセスネットワーク側の情報を取得可能となる。そこで、無線端末1は、取得したアクセスネットワーク側の情報に基づき、バックホール側での通信の輻輳や通信経路におけるボトルネックの存在に対処して、より良好な通信を実現する「ウィンドウサイズ」を決定することができる。
【0035】
具体的に、無線端末1は、
(a)無線ネットワーク内の通信の混雑の度合いを示す「無線混雑度」を推定する。「無線混雑度」は、無線ネットワーク内で送受信されているパケットを検知し、検知したパケットの送受信に係る時間に基づいて算出してもよいが、受信した報知信号又は応答信号から取得される無線リソースの使用度合いの情報に基づいて算出することもできる。また、
(b)受信した報知信号又は応答信号から、アクセスネットワーク側の回線容量を含む情報を取得し、取得した情報に基づいて、バックホール側での通信の混雑の度合いを示す「バックホール混雑度パラメータ」を決定する。
【0036】
無線端末1は、さらに、
(c)推定した「無線混雑度」及び「バックホール混雑度パラメータ」に基づいて、まとめて送信又は受信するデータ量を規定する「最大ウィンドウサイズ」を算出し、
(d)送信及び受信の少なくとも一方に係る全ての「ウィンドウサイズ」を、算出した「最大ウィンドウサイズ」内の値に制御する。
【0037】
このように、本発明では、ウィンドウサイズの制御において、無線端末1におけるアクセスネットワーク側の情報を取得する機能を用い、バックホール側での通信の混雑の度合いを示す「バックホール混雑度パラメータ」を決定して利用する。これにより、バックホール側での通信の輻輳や通信経路におけるボトルネックの存在にも対処することができ、より良好な通信を実現するウィンドウサイズを設定することが可能となるのである。
【0038】
尚、上記(c)において、「最大ウィンドウサイズ」を「バックホール混雑度パラメータ」のみに基づいて算出することも可能である。例えば、「無線混雑度」を概ね所定値とすることが可能な無線通信環境の場合、「無線混雑度」を考慮しなくても「最大ウィンドウサイズ」を決定し得る。しかしながら、通常の無線ネットワークでは、「無線混雑度」にも基づいて「最大ウィンドウサイズ」を決定することにより、より適切なウィンドウサイズ制御を実現可能となる。
【0039】
[無線端末、中継装置、サーバ]
図2は、無線端末1、無線AP20及びサーバ3の一実施形態における機能構成を示す機能ブロック図である。尚、以下、1つの実施形態として、無線ネットワークが無線LANであって、通信プロトコルがTCP(Transmission Control Protocol)又はUDP(User Datagram Protocol)である場合を説明する。当然、本発明の通信システムでは、これらの実施形態に限定されるものではない。
【0040】
図2によれば、無線端末1は、無線LANを介した無線AP20との通信を可能にする通信インタフェース101と、プロセッサ・メモリとを備えている。ここで、プロセッサ・メモリは、無線端末1に搭載されたコンピュータを機能させるプログラムを実行することによって、その機能を実現させる。
【0041】
さらに、プロセッサ・メモリは、機能構成部として、無線混雑度推定部111と、バックホール混雑度決定部112と、サーバ混雑度取得部113と、最大ウィンドウ設定部114と、ウィンドウ制御部115と、通信制御部116とを有する。尚、
図2における各機能構成部を矢印で接続した処理の流れは、本発明によるウィンドウサイズ制御方法の一実施形態としても理解される。
【0042】
無線混雑度推定部111は、無線LAN内で送受信されているパケットを検知し、検知したパケットの送受信に係る時間に基づいて、無線LAN内の通信の混雑の度合いを示す「無線混雑度」を推定する。
【0043】
図3は、無線混雑度の推定方法を説明するためのパケットに係る時間を示す模式図である。
【0044】
図3において、T
method1は、DataパケットやACKパケットでの実際に信号電波が放射されている時間を示し、一方、T
method2は、DIFS、SIFS、Backoffを含めた時間を示す。T
method1(μsec)は、次式を用いて算出される。
【数1】
ここで、PLCP
preambleはPLCP(Physical Layer Convergence Procedure)プリアンブルの時間長(μsec)、PLCP
head(sig)はPLCPシグナルの時間長(μsec)、PLCP
head(serv)はPLCPサービスのバイト数(bytes)、MAC
headはMACヘッダのバイト数(bytes)、Dataはデータのバイト数(bytes)、Rateは物理層の伝送レート(Mbps)である。
【0045】
同じく
図2に示すように、無線LANでは、DIFS(Distributed Inter Frame Space)、SIFS(Short Inter Frame Space)やBackoffを用いたCSMA/CA(Carrier Sense Multiple Access/Collision Avoidance)を採用している。ここで、T
method2は、上記のT
method1に比べて、このCSMA/CAにおける必須の待ち時間であるDIFSと、SIFSと、Backoffとを更に含めた時間となっている。ここで、DIFSやSIFSには、パケット種別により決まっている所定の時間長を用いることができる。また、Backoffには、平均Backoff時間を用いることができる。
【0046】
次いで、パケット毎に上記のT
method2を算出し、1秒当たりに無線が使用されていた時間を無線混雑度DCとする。即ち、無線混雑度DCは、IFSやBackoffも含めて無線が使用されている時間の割合(時間率)であり、100%使用されている場合、1となる。尚、算出に用いるパケットは、端末が送受信しているパケット以外のパケット、及びビーコン等のブロードキャストパケットとする。
【0047】
また、変更態様として、無線混雑度DCは、受信された報知信号(ビーコン報知信号)又は応答信号(プローブ応答信号)から取得されるチャネル利用率CUとして、次式
(2) DC(CU)=CBT/(dot11CUBIntervals・dot11BP・1024)・255
を用いて算出することも可能である。ここで、CBTはCarrier Senseメカニズムが”channel busy indication”を示した区間であるチャネルビジー時間(channel busy time)であり、dot11CUBIntervalsは、dot11 Channel Utilization Beacon Intervalsであって、”channel busy indication”が測定された区間での連続するビーコンインターバルの数であり、dot11BPは、dot11 Beacon Periodであって、ビーコンフレームの送信間隔である。
【0048】
図2に戻って、無線混雑度推定部111は、UDPによる通信で使用される時間の割合である「UDP使用時間率」を更に推定することも好ましい。この場合、後に説明する最大ウィンドウ設定部114は、「UDP使用時間率」及び「無線混雑度」に基づいて、最大ウィンドウサイズを算出することができる。
【0049】
バックホール混雑度決定部112は、受信された接続前情報応答信号(GASクエリ応答信号)から、WAN(Wide Area Network)側インタフェース対応回線(バックホール回線)の容量WC、負荷率及び(現時点での上り、下り又は上り下り両方の)通信速度の情報のうちの少なくとも1つを取得し、取得した情報に基づいて、「バックホール混雑度パラメータ」を算出する。
【0050】
ここで、「バックホール混雑度パラメータ」として、例えば、後に説明するウィンドウサイズ更新値の式(6)に使用されるボトルネックバッファ(bottleneck buffer)BNB及び上記のWAN容量WCとすることができる。
【0051】
サーバ混雑度取得部113は、サーバ3から送信された応答信号又はデータ信号から、後述するサーバ3のサーバ混雑度計測部312で計測された「サーバ混雑度パラメータ」を取得する。
【0052】
最大ウィンドウ設定部114は、「無線混雑度」及び「バックホール混雑度パラメータ」に基づいて、まとめて送信又は受信するデータ量を規定する「最大ウィンドウサイズ」を算出する。また、最大ウィンドウ設定部114は、少なくとも決定された「バックホール混雑度パラメータ」を用いて、「最大ウィンドウサイズ」の更新値候補であるウィンドウサイズ更新値を算出し、このウィンドウサイズ更新値が、先に算出した「最大ウィンドウサイズ」よりも小さい場合、このウィンドウサイズ更新値を新たな「最大ウィンドウサイズ」に設定することも好ましい。
【0053】
最大ウィンドウ設定部114は、また、少なくとも決定された「バックホール混雑度パラメータ」を用いてバックホールに係るスループットを算出し、算出したスループットと、受信された接続前情報応答信号(GASクエリ応答信号)に含まれる往復遅延時間(RTT)の情報とを用いてウィンドウサイズ更新値を算出することも好ましい。
【0054】
最大ウィンドウ設定部114は、さらに、少なくとも取得した「サーバ混雑度パラメータ」を用いて、「最大ウィンドウサイズ」の更新値候補であるウィンドウサイズ更新値を算出し、このウィンドウサイズ更新値が算出した「最大ウィンドウサイズ」よりも小さい場合、このウィンドウサイズ更新値を新たな「最大ウィンドウサイズ」に設定することも好ましい。
【0055】
ここで、最大ウィンドウサイズをMAXWINとし、最大可能スループットをTPmaxとし、往復遅延時間をRTT(Round Trip Time)とすると、
(3) MAXWIN=TPmax・RTT
となる。また、接続確立時における(受信)ウィンドウサイズは、
(4) RWIN=min(初期RWIN,CWIN)
で決定される。
【0056】
次いで、ボトルネックバッファをBNBとし、WAN容量(WAN Capacity)をWCとし、サーババッファ(server buffer)をSBとし、サーバのアクセスや送受信処理の負荷量をACCとし、初期値をi=1として、更新ごとにiが1だけ増分するとして、次式により、往復遅延時間RTTの更新値が算出される。
(5) RTT(i+1)=CBT+BNB/WC+ΔSB+(再送回数)・(再送フレームの時間)
ここで、ΔSB=f(SB,ACC)はサーバの処理能力における遅延時間増加差分である。一実施例として次に示すように算出される。即ち、SU(i)=ACC(i)/SB(i)として、
SU(i)≧0.9、つまり、高負荷状態であれば、ΔB=f(SB,ACC)=100とし、
0.9>SU(i)≧0.5ならば、ΔSB=f(SB,ACC)=10とし、
0.5>SU(i)ならば、ΔSB=f(SB,ACC)=0と設定される。
【0057】
ここで、CWIN(輻輳ウィンドウサイズ)が設定したウィンドウサイズよりも大きいとすると、(受信)ウィンドウサイズ更新値RWIN(i+1)は、次式
(6) RWIN(i+1)=
RWIN(i)・f(CU(i))・f(RSSI(i))・f(BNB(i))・f(n
retrans(i))・f(SU(i))・C
で算出される。ここでCは定数である。
【0058】
式(6)において、f(CU(i))は、「無線混雑度」の寄与部分である。ここで、無線混雑度が所定の閾値より大きい場合は、無線端末が送信できる機会が少なくなるだけではなく、送信できたとしても、混雑の影響で処理遅延が大きくなったり、再送が必要となったりするため、新たな最大ウィンドウサイズをより小さい値に設定すべく、f(CU(i))を小さめに調整する。一方、利用可能な回線容量が大きく、無線混雑度が所定の閾値より小さい場合は、無線端末が利用可能なネットワークリソースが大きいと見做し、初期ウィンドウサイズよりも大きい更新値を新たな最大ウィンドウサイズに設定すべく、f(CU(i))を大きめに調整する。無線混雑度が所定の閾値区間以内の場合は、無線混雑度による(受信)ウィンドウサイズが寄与しないように設定される。このような設定の一例を式(7)に示す。
(7) CU(i) ≧0.9ならば、f(CU(i))=1−CU(i)
0.9>CU(i) ≧0.5ならば、f(CU(i))=1
0.5≧CU(i) ならば、f(CU(i))=2
と設定される。
【0059】
また、RSSIは、Received Signal Strength Indicatorであって受信信号強度であり、f(RSSI(i))は、受信信号強度の所定閾値をRSSI1及びRSSI2(<RSSI1)として、
(8) RSSI(i)>RSSI1ならば、f(RSSI(i))=1
RSSI1≧RSSI(i)>RSSI2ならば、f(RSSI(i))=cr(crは所定定数、例えばcr=0.5)
RSSI2≧RSSI(i)ならば、f(RSSI(i))=0
と設定される。RSSIは時々刻々、瞬間的に変化し得る値であるが、一定の時間間隔、例えば0.5秒間、1秒間又は3秒間について平準化したRSSIを利用することも望ましい。
【0060】
さらに、式(6)において、f(BNB(i))は、帯域幅遅延積をBDPとして、
(9)f(BNB(i))=BNB(i)/BDP
と設定される。尚、帯域遅延幅BDP=(ネットワーク帯域)・RTTである。また、式(6)において、f(n
retrans(i))は、
(10) f(n
retrans(i))=1−(再送回数)/(全再送回数)
と設定される。
【0061】
また、式(6)において、f(SU(i))は、サーバの負荷状態の寄与部分である。SU(i)は、SU(i)=ACC(i)/SB(i)であって、i時点でのサーバへのアクセス(負荷)量とその時点でのサーバの利用可能なバッファ容量との比である。SU(i)が所定の閾値より大きい場合、サーバが新規に受け付け可能なアクセス量は少なくなり、サーバが過負荷状態に陥ると新規のアクセスは不可能となる。一方、SU(i)=ACC(i)/SB(i)が所定の閾値より小さい場合、新規アクセスは十分に受け付け可能であり、RWINを変更する必要がない。このような設定の一例を次式(11)に示す。
(11) SU(i)=ACC(i)/SB(i)として、
SU(i)≧0.9ならば、f(SU(i))=0とし、
0.9>SU(i)≧0.6ならば、f(SU(i))=0.5とし、
0.6>SU(i)ならば、f(SU(i))=1と設定される。
【0062】
最大ウィンドウ設定部114は、以上に説明した式(6)を用いて、ウィンドウサイズ更新値を算出し、このウィンドウサイズ更新値が、先に算出した「最大ウィンドウサイズ」よりも小さい場合、このウィンドウサイズ更新値を新たな「最大ウィンドウサイズ」に設定する。
【0063】
同じく
図2によれば、ウィンドウ制御部115は、送信及び受信の少なくとも一方に係る全てのウィンドウサイズを、「最大ウィンドウサイズ」内の値に制御する。ここで、ウィンドウ制御部115は、複数のセッションが起動した場合、各セッションのウィンドウサイズの合計を、「最大ウィンドウサイズ」内の値に制御することも好ましい。
【0064】
通信制御部116は、無線端末1での無線通信全体を制御する。通信制御部116は、特に、無線AP20との接続前にアクセスネットワーク側の情報を取得するための接続前情報要求(GASクエリ要求)を無線AP20宛てに送信し、接続前情報要求(GASクエリ要求)に対する応答として無線AP20から送信された接続前情報応答信号(GASクエリ応答信号)を受信する。
【0065】
同じく
図2によれば、無線AP20は、無線LANを介した無線端末1との通信、及びアクセスネットワークやインターネットを介したサーバ3との通信を可能にする通信インタフェース201と、プロセッサ・メモリとを備えている。ここで、プロセッサ・メモリは、無線AP20に搭載されたコンピュータを機能させるプログラムを実行することによってその機能を実現させ、機能構成部として、通信制御部211と、接続前情報応答部212とを有する。
【0066】
接続前情報応答部212は、接続前情報要求(GASクエリ要求)に対する応答として、バックホールに係る往復遅延時間(RTT)の情報を含む接続前情報応答信号(GASクエリ応答信号)を無線端末1宛てに送信する。
【0067】
同じく
図2によれば、サーバ3は、アクセスネットワークやインターネットを介した無線AP20との通信を可能にする通信インタフェース301と、プロセッサ・メモリとを備えている。ここで、プロセッサ・メモリは、サーバ3に搭載されたコンピュータを機能させるプログラムを実行することによってその機能を実現させ、機能構成部として、通信制御部311と、サーバ混雑度計測部312とを有する。
【0068】
サーバ混雑度計測部312は、無線端末1によって送信された接続要求信号及び/又はデータ信号を受信した際、サーバ3位置での通信の混雑の度合いを示す「サーバ混雑度パラメータ」を含む応答信号を計測する。ここで、「サーバ混雑度パラメータ」として、例えば、上述した往復遅延時間の更新値RTT(i+1)の式(5)及びRWIN(i+1)の式(6)に使用されるサーバの利用率SU(i)とすることができる。
【0069】
[ウィンドウサイズ制御方法]
以下、本発明に係るウィンドウサイズの制御の一実施形態を、通信シーケンスを用いて説明する。この実施形態でも、無線ネットワークが無線LANであって、通信プロトコルがTCPである場合を説明する。ここで、最初に、この通信シーケンスの説明に必要なTCPヘッダの内容について説明する。
【0070】
図4は、TCPヘッダの構造を示すフォーマット図である。
【0071】
図4によれば、TCPヘッダは、ウィンドウサイズ(16bits)と、コードビット(6bits)と、シーケンス番号とをフィールドとして含む。ここで、ウィンドウサイズは、上述した「ウィンドウサイズ」であり、受信側が現在受信可能なデータサイズを送信側に通知するために使用する領域である。この際、送信側はこのウィンドウサイズを超えるサイズのデータを送信することはない。
【0072】
コードビットは、フラグとして使用されるURG、ACK、PSH、RST、SYN及びFINの6つを含む。このうち、SYN(Synchronize Flag)は、このビットが1の場合、セグメントが通信接続の確立の要求であることを示す。この場合、シーケンス番号フィールド(32bits)にシーケンス番号の初期値が入る。また、ACK(Acknowledgement Flag)は、このビットが1の場合、確認応答フィールドが有効であることを示す。
【0073】
シーケンス番号は、分割されたTCPセグメントの開始位置(オクテット)を初期値に加算したものである。通信接続確立時に、SYNセグメント(SYN=1)によって初期化される。初期値はゼロ又は乱数値をとる。
【0074】
図5は、本発明によるウィンドウサイズ制御方法の一実施形態を示すシーケンス図である。
【0075】
(S501)Passpoint対応の無線AP20はビーコン信号を報知する。このビーコン信号は、無線LANの識別子であるSSID、無線AP20のMAC(Media Access Control)アドレスであるBSSID、及び無線AP20がPasspoint対応である旨の情報(Interworking bit=1)を含み、さらに、BSS Loadとしてチャネル利用率CU、及び残留リソース容量AAC等の情報を含む。
【0076】
(S502)または、ステップS501のビーコン信号にかかわらず、無線端末1は、自身のMACアドレスを含むプローブ要求を発信してもよい。
(S503)プローブ要求を受信した無線AP20は、この無線端末1宛てに、上述したビーコン信号に含まれる情報と同様の情報を含むプローブ応答を送信する。
【0077】
次いで、GAS/ANQPプロセスに移行する(ステップS504〜S507)。
(S504)無線端末1は、アクセスネットワーク側(バックホール側)の情報を取得するべく、無線AP20にGASクエリ要求を送信する。
(S505)無線AP20は、受信したGASクエリ要求に対応する情報要求を、ANQPプロセスとしてAN情報管理サーバ4に送信する。
【0078】
(S506)AN情報管理サーバ4は、受信した情報要求に応じたアクセスネットワーク側の情報を含む情報応答を、ANQPプロセスとして無線AP20に送信する。無線AP20は、このANQPプロセスの中で、WAN metricsからWAN側インタフェース対応回線(バックホール回線)における容量WC、性質(対象、非対称)、負荷率、及び通信速度情報を取得する。
(S507)無線AP20は、受信した情報応答に対応したGASクエリ応答を、GASクエリ要求の送信元の無線端末1に送信する。
【0079】
(S508)無線端末1は、最大ウィンドウサイズMAXWINを算出する。この算出には例えば上述した式(6)を使用することができる。以降、無線端末1は、送信及び受信の少なくとも一方に係る全てのウィンドウサイズを、算出・更新する最大ウィンドウサイズMAXWIN内の値に制御する。
【0080】
(S509〜S511)無線端末1は、無線AP20に接続要求を送信する。この接続要求を受信した無線AP20は接続応答を無線端末1に送信する。その結果、無線端末1と無線AP20との間に無線通信接続が確立する。
【0081】
次いで、無線端末1とサーバ3との間の3ウェイハンドシェイクプロセスに移行する(ステップS512〜S514)。
(S512)無線端末1は、接続要求SYNを送信する。ここで、無線端末1側のWIN(RWIN)をwin1とし、MSS(Maximum Segment Size)=mssとする。この接続要求SYNは、例えば、
SYN=1、シーケンス番号Seq=0、WIN=win1、MSS=mms、・・・
とのパラメータを含む。この際、無線端末1側のWINは、ステップS508で算出された最大ウィンドウサイズMAXWIN以内の値に設定される。即ち、win1≦MAXWINである。
【0082】
このように、本実施形態によれば、ウィンドウサイズWIN(=RWIN)を、無線混雑度だけでなく、例えばWAN metricsから得られるバックホール側での通信の輻輳や通信経路におけるボトルネック等を表すバックホール混雑度パラメータをも考慮して決定することができる。その結果、無線LAN側での通信状況だけではなく、バックホール側をも含めた通信システム全体での通信状況を考慮したデータの送受信が実現可能となる。
【0083】
(S513)サーバ3は、接続応答SYN・ACKを送信する。ここで、サーバ3側のWIN(RWIN)をwinsとする。この接続応答SYN・ACKは、例えば、
ACK=1、Seq=0、WIN=wins、MSS=mms、(サーバ混雑度パラメータ)、・・・
とのパラメータを含む。
【0084】
(S514)無線端末1は、接続成立応答ACKを送信する。この接続成立応答ACKは、例えば、
ACK=1、シーケンス番号Seq=1、WIN=win1、・・・
とのパラメータを含む。
以上の3ウェイハンドシェイクプロセスによって、無線端末1とサーバ3との間でお互いのWIN(RWIN)が認識され、さらに、無線端末1は、サーバ3のサーバ混雑度パラメータを受け取ることができる。
【0085】
(S515)無線端末1は、取得したサーバ3のサーバ混雑度パラメータ、例えばサーババッファ(server buffer)SB、を用いてウィンドウサイズ更新値を算出し、このウィンドウサイズ更新値が、ステップS508で算出した最大ウィンドウサイズMAXWINよりも小さい場合、このウィンドウサイズ更新値を新たな最大ウィンドウサイズMAXWINに設定する。また、このウィンドウサイズ更新値が、ステップS508で算出した最大ウィンドウサイズMAXWIN以上である場合においても、このウィンドウサイズ更新値を新たな最大ウィンドウサイズMAXWINに設定することも好ましい(この場合、即ち、新たに算出したウィンドウサイズ更新値をもって最大ウィンドウサイズMAXWINを更新する)。
【0086】
このように、本実施形態によれば、ウィンドウサイズWIN(=RWIN)を、無線混雑度だけでなく、サーバ3での通信混雑状況を表すサーバ混雑度パラメータをも考慮して決定することができる。その結果、無線LAN側での通信状況だけではなく、サーバ側をも含めた通信システム全体での通信状況を考慮したデータの送受信が実現可能となる。
【0087】
以下、無線端末1がサーバ3からデータをダウンロードする場合を説明する。例えば、無線端末1のウィンドウサイズWIN=win1が16384bytesであって、MSS=mss=1024bytesであり、サーバ3のウィンドウサイズWIN=winsが65535bytesであったとする。この場合、サーバ3が無線端末1からのACKの受信を待たないで一度に送信することのできるセグメントの数は、
(12) win1/mss=16386/1024=16
であり、サーバ3は16セグメントを一度に送信する。但し、以下の実施例では、図面の見易さのため、win1/mss=3、即ち、サーバ3は3セグメントを一度に送信するものとしている。
【0088】
(S516〜S518)サーバ3は、データセグメントSEND(Seq=51)、データセグメントSEND(Seq=52)及びデータセグメントSEND(Seq=53)を順次、無線端末1宛てに送信する。その際、サーバ3はSEND送信時のサーバ混雑度パラメータを、送信するSENDに含めて送信する。
【0089】
(S519〜S521)無線端末1は、受信したSENDに対する応答ACKをサーバ3に送信する。ここで、SEND(Seq=51)、SEND(Seq=52)及びSEND(Seq=53)に対してはそれぞれ、
ACK(ACK=52,WIN=win2)、
ACK(ACK=53,WIN=win2)、及び
ACK(ACK=54,WIN=win2)
を応答として送信する。ここで、win2は、ステップS515で更新された最大ウィンドウサイズMAXWIN以内の値として決定された、更新されたウィンドウサイズWIN(RWIN)である。サーバ3は、WIN=win2を含むACKを受信し、無線端末1のウィンドウサイズの更新を認識する。
【0090】
(S522)無線端末1は、ステップS516〜S518で取得したサーバ3の「サーバ混雑度パラメータ」、例えばサーババッファ(server buffer)SBや、サーバの利用率SU(i)を用いてウィンドウサイズ更新値を算出し、このウィンドウサイズ更新値が、ステップS515で算出した最大ウィンドウサイズMAXWINよりも小さい場合、このウィンドウサイズ更新値を新たな最大ウィンドウサイズMAXWINに設定する。また、このウィンドウサイズ更新値が、ステップS515で算出した最大ウィンドウサイズMAXWIN以上である場合においても、このウィンドウサイズ更新値を新たな最大ウィンドウサイズMAXWINに設定することも好ましい(この場合、即ち、新たに算出したウィンドウサイズ更新値をもって最大ウィンドウサイズMAXWINを更新する)。
【0091】
このように、本実施形態によれば、最大ウィンドウサイズMAXWINを、無線LANでの通信の混雑具合、バックホール側での通信の混雑具合やボトルネックの存在、さらにはサーバ側での通信の混雑具合に基づいて適宜、適切な値に更新することができる。これにより、通信システム全体にとって適切であるウィンドウサイズWINをもってデータのやり取りを行うことが可能となる。その結果、パケット詰まりやパケットの再送の発生を抑制し、スループットの低下を防止することが可能となるのである。
【0092】
(S523〜S529)以下、ステップS523〜S529は、サーバ3がACK(ACK=54)を受けてSeq=54からデータを送信する以外、ステップS516〜S522と同様にして処理を進める。
【0093】
以上詳細に説明したように、本発明の無線端末、通信システム、通信プログラム及び通信方法によれば、バックホール混雑度パラメータ、さらには実施形態によってはサーバ混雑度パラメータを取得し、これらに基づいて、まとめて送信又は受信するデータ量を規定する最大ウィンドウサイズを決定する。これにより、バックホール側での通信の輻輳や通信経路におけるボトルネックの存在、さらには実施形態によってはサーバ位置での通信混雑状況にも対処し、より良好な通信を実現するウィンドウサイズを設定することが可能となる。
【0094】
また、以上に述べた本発明の種々の実施形態において、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。