(57)【要約】【課題】無線通信にかかる消費電力を低減する。【解決手段】本発明の実施形態によれば、通信部は、通信相手装置と無線通信する。測定部は、通信部による無線通信の通信状態を測定する。判断部は、測定部が測定して得た通信状態に関する複数のパラメータに基づいて、通信部による通信相手装置とのデータ通信の可否を判断する。【選択図】図２
2015100062.tif 000002
【特許請求の範囲】
【請求項１】
通信相手装置と無線通信する通信部と、
前記通信部による無線通信の通信状態を測定する測定部と、
前記測定部が測定して得た前記通信状態に関する複数のパラメータに基づいて、前記通信部による前記通信相手装置とのデータ通信の可否を判断する判断部と、
を備える通信装置。
【請求項２】
前記通信部は、要求元から情報の取得要求を受けた場合、前記情報を前記通信相手装置から無線通信により取得し、該取得した情報からＵＲＬを抽出し、
前記判断部は、前記抽出されたＵＲＬに応じたデータを前記通信相手装置から取得するか否かを前記複数のパラメータに基づいて判断し、
前記通信部は、前記判断部が取得すると判断した場合、前記通信相手装置から前記ＵＲＬに応じたデータを無線通信により取得し、前記取得した情報及び前記取得したデータを前記要求元へ返す
請求項１に記載の通信装置。
【請求項３】
前記測定部は、前記情報を取得した無線通信を対象として通信状態を測定し、
前記判断部は、前記測定部が測定して得た前記通信状態に関する複数のパラメータに基づいて、前記情報から抽出されたＵＲＬに応じたデータを取得するか否かを判断する
請求項２に記載の通信装置。
【請求項４】
前記通信部は、前記ＵＲＬに応じたデータを順次取得する通信を行い、
前記測定部は、前記ＵＲＬに応じたデータを取得する通信毎に、通信状態を測定し、
前記判断部は、前記測定部が測定して得た通信状態に関する複数のパラメータに基づいて、次のＵＲＬに応じたデータを取得するか否かを判断する
請求項３に記載の通信装置。
【請求項５】
前記通信相手装置は、複数あり、
前記判断部は、前記通信相手装置毎に、対象となる通信相手装置との通信について測定された通信状態に関する複数のパラメータに基づいて、前記対象となる通信相手装置から次のＵＲＬに応じたデータを取得するか否かを判断する
請求項４に記載の通信装置。
【請求項６】
前記通信相手装置は、複数あり、
前記判断部は、前記所属ネットワーク毎に、対象となる所属ネットワークに含まれる通信相手装置との通信について測定された通信状態に関する複数のパラメータに基づいて、前記対象となる所属ネットワークに含まれる通信相手装置から次のＵＲＬに応じたデータを取得するか否かを判断する
請求項４に記載の通信装置。
【請求項７】
前記判断部が用いる前記複数のパラメータには、
当該通信装置が直接接続する第１通信路に関する第１パラメータと、
前記通信部が無線中継装置を介して前記通信相手装置と通信する場合の、前記無線中継装置から前記通信相手装置までの第２通信路を含む通信路、または当該通信装置が直接接続する前記第１通信路の周波数に対して周波数差が所定の範囲内である周波数を有する第３通信路のいずれかに関する第２パラメータと、
を含み、
前記判断部は、前記第１パラメータと前記第２のパラメータとに基づいて、前記通信部による前記通信相手装置とのデータ通信の可否を判断する
請求項１から６のいずれか一項に記載の通信装置。
【請求項８】
前記第１パラメータは、当該通信装置が接続する無線中継装置からの信号の強さを表すパラメータであり、
前記第２パラメータは、前記第３通信路に関するパラメータであり、
前記第３通信路に関するパラメータは、前記無線中継装置との通信に使用する周波数と同じまたは近接する周波数帯を使用する他機器からの干渉電波に関するパラメータ、及び／または前記無線中継装置との通信に直接使用する通信路に近接する近接通信路に関するパラメータである
請求項７に記載の通信装置。
【請求項９】
前記近接通信路に関するパラメータは、前記近接通信路の混雑度、ＳＮＲ、ＳＩＲまたは前記無線中継装置との通信に使用する無線チャネルと近接する無線チャネルの電波の強さである
請求項８に記載の通信装置。
【請求項１０】
前記第１パラメータは、当該通信装置が接続する無線中継装置からの信号の強さを表すパラメータであり、
前記第２パラメータは、前記第２通信路を含む通信路に関するパラメータであり、
前記第２通信路を含む通信路に関するパラメータは、前記通信相手装置との間の論理的な通信路の速さ、遅延、または前記速さまたは前記遅延の揺らぎのいずれかを表すパラメータである
請求項７に記載の通信装置。
【請求項１１】
前記判断部は、前記ＵＲＬに応じたデータの種類、送受信の要求を発生させた要求元、または前記ＵＲＬに応じたデータの通信方向のいずれかによって決定される閾値と、前記測定部が測定して得た前記通信状態に関する複数のパラメータとの比較に基づいて、前記通信部によるデータの取得可否を判断する
請求項２から６のいずれか一項に記載の通信装置。
【請求項１２】
前記測定部は、前記判断部が前記通信部によるデータの取得を許可しないと判断した時から所定の待機時間が経過した場合、再度通信状態を測定し、
前記判断部は前記測定部が再度測定した結果に基づいて、前記通信部によるデータの取得可否を判断する
請求項１から１１のいずれか一項に記載の通信装置。
【請求項１３】
前記判断部は、一つの通信に対して前記測定部が測定し且つ前記判断部が判断した回数を記録し、該記録した回数が所定の値を上回った場合に、前記判断部が過去の判断に用いた条件を満たさない場合であっても前記通信部によるデータの取得を容認するか、通信するか否かを当該通信装置の使用者に問うか、もしくは前記情報に基づいて行う通信を破棄する
請求項１２に記載の通信装置。
【請求項１４】
通信相手装置と無線通信する通信部を備える通信装置が実行する通信方法であって、
測定部が、前記通信部による無線通信における通信状態を測定する測定ステップと、
判断部が、前記測定部が測定して得た前記通信状態に関する複数のパラメータに基づいて、前記通信部による前記通信相手装置とのデータ通信の可否を判断する判断ステップと、
を有する通信方法。
【請求項１５】
通信相手装置と無線通信する通信部を備える通信装置に、
前記通信部による無線通信の通信状態を測定する測定部、
前記測定部で測定して得た前記通信状態に関する複数のパラメータに基づいて、前記通信部による前記通信相手装置とのデータ通信の可否を判断する判断部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、通信装置、通信方法及びプログラムに関する。
【背景技術】
【０００２】
無線ＬＡＮ機能を備えた携帯端末装置（例えば、スマートフォン、タブレット端末など）は、コンテンツサーバ上のＨＴＭＬファイル、画像ファイル、動画ファイル、音声ファイル等のコンテンツを取得する。
【０００３】
その際、携帯端末装置は、無線通信により無線ＬＡＮなどのアクセスポイントを介して、サーバへＵＲＩ（Ｕｎｉｖｅｒｓａｌ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）を指定したコンテンツ取得要求を送信する。携帯端末装置は、このコンテンツ取得要求に応じてサーバが送信したコンテンツを、アクセスポイントを介して無線通信により取得する。
【０００４】
このアクセスポイントと通信する携帯端末装置が一台の場合、受信電波強度が高いほど、アプリケーションスループットが向上する傾向がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−１５４９８３号公報
【特許文献２】特開２００３−８７８６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の携帯端末装置は、受信電波強度が高いが、アクセスポイントの近くに多くの携帯端末装置が存在するなどしてアプリケーションスループットが十分に確保できない状況でも通信を継続しようとしてしまう。このため、通信のリトライが続くなどしてバッテリーが浪費されてしまうという問題がある。
【０００７】
そこで本発明の一態様は、上記問題に鑑みてなされたものであり、無線通信にかかる消費電力を低減することを可能とする通信装置、通信方法及びプログラムを提供することを課題とする。
【課題を解決するための手段】
【０００８】
本発明の実施形態によれば、通信部は、通信相手装置と無線通信する。測定部は、通信部による無線通信の通信状態を測定する。判断部は、測定部が測定して得た通信状態に関する複数のパラメータに基づいて、通信部による通信相手装置とのデータ通信の可否を判断する。
【図面の簡単な説明】
【０００９】
【図１】第１の実施形態における通信システム１の構成を示す概略ブロック図である。
【図２】第１の実施形態における通信装置１００の構成を示す概略ブロック図である。
【図３】第１の実施形態における通信装置１００の処理の流れの第１の例を示すフローチャートである。
【図４】第１の実施形態における通信装置１００の処理の流れの第２の例を示すフローチャートである。
【図５Ａ】管理表の第１の例である。
【図５Ｂ】管理表の第２の例である。
【図６】図３のフローチャートに対応する各構成要素の動作シーケンス図である。
【図７】２．４ＧＨｚ帯を使用する無線ＬＡＮのチャネル分布である。
【図８】第１の変形例に係る通信装置１００の処理の流れの一例を示すフローチャートである。
【図９】図８のフローチャートの処理後に行われる処理の流れの一例を示すフローチャートである。
【図１０】図８及び図９のフローチャートに対応する各構成要素の動作シーケンス図である。
【図１１】第２の実施形態の課題を説明するための図である。
【図１２】プリフェッチする際の条件を説明するための図である。
【図１３Ａ】第２の実施形態の変形例に係る通信装置１００の処理の流れの一例を示すフローチャートである。
【図１３Ｂ】図１３Ａのフローチャートの続きである。
【図１４Ａ】第２の実施形態の変形例に係る通信装置１００の処理の流れの一例を示すフローチャートである。
【図１４Ｂ】図１４Ａのフローチャートの続きである。
【図１５】Ａ、Ｂ、Ｃ、Ｄの４つの通信が実行待ちの指示通信としてキューに格納された状態から、それらの実行判定を行い、実行される様子を示す図である。
【図１６】通信相手となるサーバ毎にスループットを計算する処理を説明するための図である。
【図１７】第３の実施形態における通信装置１００ｂの構成を示す概略ブロック図である。
【図１８】第３の実施形態における通信装置１００ｂの処理の流れの第１の例を示すフローチャートである。
【図１９】第３の実施形態における通信装置１００ｂの処理の流れの第２の例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図面を参照しながら、本発明の実施形態について説明する。
（第１の実施形態）
図１は、第１の実施形態における通信システム１の構成を示す概略ブロック図である。通信システム１は、通信装置１００、通信装置１００と無線ネットワークを介して接続している無線中継装置２０１、無線中継装置２０１が接続しているネットワーク２０３、及びネットワーク２０３に接続している通信相手装置２０２を具備する。
【００１１】
通信装置１００は、無線ネットワークを介して無線中継装置２０１と互いに通信可能である。無線中継装置２０１は、例えば有線ＬＡＮなどでネットワーク２０３に接続している。無線中継装置２０１は、ネットワーク２０３を介して、通信相手装置２０２と互いに通信可能である。これにより、通信装置１００は、無線中継装置２０１及びネットワーク２０３を介して、通信相手装置２０２と互いに通信可能である。
無線中継装置２０１は、例えば、無線ＬＡＮのアクセスポイントである。
なお、ネットワーク２０３は例えば、インターネットや企業内ネットワーク網、地域網などであり、通信相手装置２０２は、例えばウェブサーバなどである。
【００１２】
図２は、第１の実施形態における通信装置１００の構成を示す概略ブロック図である。なお、この図には本願発明の実施に必要な部分だけを記載しており、一般的な通信装置、コンピュータシステムとして付随している構成要素の幾つかは省略されている。
【００１３】
通信装置１００は、処理部１０１、処理部１０１と電気的に接続された通信部１１０、及び通信部１１０と電気的に接続された大容量記憶部１０３を備える。
通信装置１００は、更に、通信部１１０と電気的に接続された測定部１０６、測定部１０６と電気的に接続された記憶部１０７、及び通信部１１０及び記憶部１０７と電気的に接続された判断部１０８を備える。
【００１４】
処理部１０１は通信装置１００全体の動作を司る処理部であり、オペレーティングシステム（ＯＳ）やアプリケーションが動作する。
【００１５】
大容量記憶部１０３は、代理実行部１０２がネットワーク上の他の通信装置との間で送受信するデータを保存する。大容量記憶部１０３は、例えば、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、ＳＤカードメモリなどのストレージである。
【００１６】
通信部１１０は通信相手装置２０２と無線通信する。通信部１１０は、処理部１０１、大容量記憶部１０３、判断部１０８及び測定部１０６と電気的に接続された代理実行部１０２、代理実行部１０２及び測定部１０６と電気的に接続された通信実行部１０４、及び通信実行部１０４及び測定部１０６と電気的に接続された無線部１０５を備える。通信部１１０は、通信モジュールに相当する。
なお、図２の通信装置１００の構成は一例であり、処理部１０１以外の要素が通信部１１０に含まれる場合がある。
【００１７】
代理実行部１０２は、処理部１０１で実行されるアプリケーション処理の一部を実行する機能を持った第二の処理部である。
【００１８】
通信実行部１０４は処理部１０１や代理処理部１０２で実行される通信アプリケーションを実行することにより、ネットワーク上の他の通信装置と通信するための処理を実行する。具体的には例えば、通信実行部１０４はＴＣＰ／ＩＰなどの通信プロトコルを実行する。
【００１９】
無線部１０５は、通信実行部１０４とネットワーク上の他の通信装置との間で通信を行う。例えば、無線部１０５は、ＩＥＥＥ８０２．１１規格に準拠した無線ＬＡＮインタフェースである。
【００２０】
測定部１０６は、通信部１１０による無線通信の通信状態を測定する。より詳細には、測定部１０６は代理実行部１０２、通信実行部１０４、無線部１０５の各部の状態を検知し、通信状態を測定する。
【００２１】
記憶部１０７は測定部１０６が測定した情報を記憶するメモリである。記憶部１０７は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。なお、ＲＡＭの種類は揮発性のＳＲＡＭでもＤＲＡＭでも、不揮発性のＲＡＭでもよい。記憶部１０７には、判断部１０８による判断の基準となる閾値や条件が記憶されている。なお、判断の基準となる閾値や条件は、不図示のメモリに記録されていてもよい。
【００２２】
判断部１０８は、測定部１０６が測定して得た通信状態に関する複数のパラメータに基づいて、通信部１１０によるデータの取得可否を判断する。その際、例えば、判断部１０８は記憶部１０７に蓄積された判断の基準となる閾値や条件に基づいて、通信部１１０による通信相手装置２０２とのデータ通信の可否を判断する。
【００２３】
図３は、第１の実施形態における通信装置１００の処理の流れの第１の例を示すフローチャートである。この処理フローは、何らかの通信要求が発生した時に実行されるものである。
（ステップＳ３０１）まず測定部１０６は、ビーコン等の無線中継装置２０１から送信される信号を受信した際に得られる電波強度の情報を用いて、現在通信中の無線中継装置２０１からの受信電波強度を測定する。
【００２４】
（ステップＳ３０２）次に、判断部１０８は、ステップＳ３０１で測定された受信電波強度が所定の閾値を上回ったか否か判断する。受信電波強度が所定の閾値を上回った場合（ＹＥＳ）、判断部１０８は、ステップＳ３０３へ進む。一方、受信電波強度が所定の閾値を下回った場合（ＮＯ）、判断部１０８は、要求の実行を中断して終了する。
【００２５】
（ステップＳ３０３）ステップＳ３０２で受信電波強度が所定の閾値を上回ったと判断された場合、通信部１１０は通信相手装置２０２から指示情報を無線通信により取得する。ここで指示情報（単に情報ということもある）とは、当該通信装置１００が実行する処理を指示する情報である。指示情報は、例えば、後段のステップにて実行する処理の内容を記述したファイルであり、ＨＴＭＬファイルやプログラムファイルである。ＨＴＭＬファイルでは＜ＳＣＲＩＰＴ＞タグや＜ＩＭＧ＞タグなどを用いて、スクリプトファイルや画像ファイルなどのＵＲＬが指定可能である。
【００２６】
（ステップＳ３０４）次に、処理部１０１は、指示情報を解析する。例えば、処理部１０１は、指示情報がＨＴＭＬファイルである場合、そのＨＴＭＬファイル内のＵＲＬを抽出する。
【００２７】
なお、処理部１０１は、ＨＴＭＬファイル中の＜Ａ＞タグに記載されたＵＲＩを抽出することにより、取得中のページからリンクされているページを再帰的に取得するようにしてもよい。なお、再帰的な取得を行う場合、処理部１０１は、その深さを別途定める閾値に基づいて制御するようにしてもよい。例えば図５Ａ及び図５Ｂの「方向」に対応する形で「再帰の深さ」というエントリがあり、深さ１の場合にＴｈ３＿１、深さ２の場合にＴｈ３＿２、深さ３の場合にＴｈ３＿３のように、「再帰の深さ」毎に閾値が定められていてもよい。また、処理部１０１は、深さ優先探索でリンク先を辿ってもよいし、幅優先探索でリンク先を辿ってもよい。
【００２８】
（ステップＳ３０５）ステップＳ３０４により実行すべき通信の内容が確定すると、通信部１１０は、確定された通信の内容を実際に実行する。その一例として、ステップＳ３０４によりＵＲＬが抽出されると、通信部１１０は、例えば、抽出されたＵＲＬに応じたデータを通信相手装置２０２から無線通信により取得する。
【００２９】
なお、ここで実行される通信は、通信相手装置２０２から情報を取得するダウンロード型の通信だけではなく、通信装置１００から通信相手装置２０２に情報を送信するアップロード型の通信であってもよい。ダウンロード型の通信の場合、通信部１１０は、取得した情報を大容量記憶部１０３に保存する。アップロード型の通信の場合、通信部１１０は、大容量記憶部１０３に保存された情報を指示に基づいてアップロードする。
【００３０】
なお、通信装置１００の内部にプログラムファイルの実行エンジンを有する場合、通信部１１０は、対応するプログラム言語で記述されたプログラムファイルをダウンロードし、処理部１０１は、このプログラムファイルを実行することで後段の処理を制御するようにしてもよい。この場合、プログラムファイルに記述されたプログラムは、取得すべき情報のＵＲＬを出力するだけの単純なプログラムでもよいし、通信装置１００で利用できる種々の情報を用いて通信処理を制御しながら、ＵＲＬを出力するような複雑なものでもよい。いずれにせよ、何らかの形で通信方法（プロトコル）、通信相手、送受信すべき情報が特定できるものを出力する。このような指示情報を用いる場合には、ステップＳ３０４とステップＳ３０５は実質的に一つの処理となる。
【００３１】
（ステップＳ３０６）一つの通信が終了すると、処理部１０１は、指示された通信が全て実行されたかどうかを確認する。全て実行されていれば（ＹＥＳ）、処理部１０１は、処理を終了する。実行すべき処理が残っていれば（ＮＯ）、処理部１０１は、残りの通信を実行するためステップＳ３０５に戻る。
【００３２】
以上が本実施形態における通信装置１００の基本的な動作フローである。なお、図３では、指示情報の取得前に受信電波強度を確認する処理を一度だけ実行するようにしたが、図４のように各通信の前に毎回実行するようにしてもよい。
【００３３】
図４は、第１の実施形態における通信装置１００の処理の流れの第２の例を示すフローチャートである。ステップＳ３０１〜ステップＳ３０６の処理は、図３の処理と同様であるので、その説明を省略する。
（ステップＳ３０１´）次に、測定部１０６は、現在通信中の無線中継装置２０１からの受信電波強度を測定する。
（ステップＳ３０２´）次に、判断部１０８は、ステップＳ３０１´で測定された受信電波強度が所定の閾値を上回ったか否か判断する。受信電波強度が所定の閾値を上回った場合（ＹＥＳ）、判断部１０８は、ステップＳ３０５へ進む。一方、受信電波強度が所定の閾値以下の場合（ＮＯ）、判断部１０８は、ステップＳ３０６へ進む。
【００３４】
また、実行する通信の特徴に合わせて複数の閾値を設け、それによって実行可否を判断するようにしてもよい。その際は、例えば、図５Ａや図５Ｂに示すような管理表が記憶部１０７に記憶されて管理されてもよい。
【００３５】
図５Ａは、管理表の第１の例である。図５Ａの管理表では、通信の種類と受信電波強度の閾値とが対応付けられている。図５Ａの例では通信の方向（ダウンロードとアップロード）で閾値を変えている。情報の種類は「＊」と記載しており、種類を特に定めていない。
【００３６】
図５Ｂは、管理表の第２の例である。図５Ｂの管理表では、通信の種類と受信電波強度の閾値とが対応付けられている。図５Ｂの例ではダウンロードとアップロードの二つに加え、ダウンロードでは情報の種類に応じて異なる閾値が設定されている。図５Ｂでは、ダウンロードする情報が動画データの場合に、受信電波強度の閾値がＴｈ２＿２である。ダウンロードする情報が音声データの場合に受信電波強度の閾値がＴｈ２＿３である。ダウンロードする情報が画像データの場合に受信電波強度の閾値がＴｈ２＿４である。ダウンロードする情報がその他のデータの場合に、受信電波強度の閾値がＴｈ２＿５である。
【００３７】
この場合、判断部１０８は、指示情報があるファイルのダウンロードであるとき、そのファイルの拡張子から情報の種類を判断し、判断した情報の種類に対応する閾値を記憶部１０７から読み出してもよい。
【００３８】
このようにダウンロードする情報の種類に応じて閾値を設定することで、例えば、判断部１０８は、受信電波強度が比較的大きいときには、動画データをダウンロードするようにし、受信電波強度が比較的小さいときには、動画データをダウンロードできないようにする。これにより、受信電波強度が比較的小さいときに動画データをダウンロードすることがなくなって、通信のリトライが続くことを避けることができるので、通信によりバッテリーが浪費されてしまうことを避けることができる。
【００３９】
なお、この閾値設定は一例であり、他の条件で閾値を設定してもよい。このように、判断部１０８は、ＵＲＬに応じたデータの種類、送受信の要求を発生させた要求元（例えば、アプリケーション）、またはＵＲＬに応じたデータの通信方向の少なくとも一つによって決定される閾値と、測定部１０６が測定して得た通信状態に関する複数のパラメータとの比較に基づいて、通信部１１０によるデータの取得可否を判断してもよい。これにより、例えば、アプリケーション毎に閾値が設けられる。例えば、動画を扱うアプリケーションについては他のアプリケーションよりも、受信電波強度の閾値とスループットの閾値が高くなるように設定されていてもよい。これにより、通信環境が良好なときにのみ、動画を通信相手装置２０２から取得するので、通信装置１００は消費電力を低減することができる。
【００４０】
引き続き、通信装置１００の内部構成要素の動作について述べる。図６は、図３のフローチャートに対応する各構成要素の動作シーケンス図である。
【００４１】
（Ｔ６０１）処理部１０１にて通信要求が発生すると、処理部１０１は代理実行部１０２に通信の実行を依頼する。
【００４２】
（Ｔ６０２）次に、この依頼を受けた代理実行部１０２は、判断部１０８に現在の電波強度に基づいて通信を行うべきかどうかの判断を求める。
【００４３】
（Ｔ６０３）次に、判断部１０８は測定部１０６に対して現在の受信電波強度の測定を依頼する。
【００４４】
（Ｔ６０４）次に、これを受けた測定部１０６は無線部１０５から受信電波強度の値を得る。
【００４５】
（Ｔ６０５）次に、測定部１０６は、この受信電波強度の値を記憶部１０７に保存する。
【００４６】
（Ｔ６０６）それとともに測定部１０６は、判断部１０８に測定完了を通知する。
【００４７】
（Ｔ６０７）判断部１０８は測定完了を受け取ると、記憶部１０７から測定値（受信電波強度）や判断のための条件（例えば所定の閾値、例えば図５Ａで記載したもの）を読み出す。
【００４８】
（Ｔ６０８）次に、判断部１０８は、ステップＳ３０１´で測定された受信電波強度が所定の閾値を上回ったか否か判断する。
【００４９】
（Ｔ６０９）次に、判断部１０８は、その結果を代理実行部１０２に通知する。
【００５０】
（Ｔ６１０）判断結果を受けた代理実行部１０２は、その結果が通信を許可するものだった場合、指示情報の取得をするよう通信実行部１０４を制御する。
【００５１】
（Ｔ６１１）Ｔ６１０における代理実行部１０２による制御を受けて、通信実行部１０４は、ＴＣＰ／ＩＰ処理など所定の処理を実行しながら、無線部１０５に対して、通信相手装置２０２から指示情報を取得するよう要求する。
【００５２】
（Ｔ６１２）無線部１０５は、指示情報を通信相手装置２０２に要求する。
【００５３】
（Ｔ６１３）無線部１０５は、Ｔ６１２における要求に応じて通信相手装置２０２が送信した指示情報を取得する。
【００５４】
（Ｔ６１４）次に、無線部１０５は、Ｔ６１３で取得した指示情報を代理実行部１０２へ出力する。
【００５５】
（Ｔ６１５）次に、代理実行部１０２は、受け取った指示情報を大容量記憶部１０３に保存する。
【００５６】
（Ｔ６１６）次に、代理実行部１０２は、受け取った指示情報を解析する。
【００５７】
（Ｔ６１７）次に、代理実行部１０２は、指示された通信を実行して、プリフェッチする。ここで、プリフェッチとは、指示情報に応じた処理を要求元（ここでは処理部１０１）の要求を受ける前に当該通信装置１００が実行することである。例えば、指示情報がＨＴＭＬファイルである場合、プリフェッチは、ＨＴＭＬファイル内のＵＲＬに応じたデータ（例えば、ＷＥＢページに表示される画像または動画のデータ）を要求元（ここでは処理部１０１）の要求を受ける前に取得することである。
【００５８】
（Ｔ６１８）次に、代理実行部１０２は、指示された一連の通信が完了したか否かを確認する。
【００５９】
（Ｔ６１９）次に、代理実行部１０２は、Ｔ６１８で一連の通信が完了したことを確認したら、処理部１０１に完了を通知する。
【００６０】
以上が、本実施形態における通信装置１００の基本的な動作シーケンスである。なお、図４のように指示された通信を実行するたびに判断が必要な場合には、Ｔ６１７にてＴ６０２〜Ｔ６０９の各ステップを毎回実行すればよい。また、図６のシーケンスでは判断部１０８からの指示を受けて測定部１０６が電波強度の測定を行うとしたが、測定部１０６が独立して測定を行い、測定した得た測定値を記憶部１０７に保存し続けるようにしてもよい。この場合、測定部１０６は例えば測定時刻とともに上記測定値を記録するようにしてもよい。なお、記憶部１０７に保存する測定値の数は任意に設定可能である。
【００６１】
＜第１の実施形態の変形例：受信電波強度以外の無線ＬＡＮ情報の活用＞
続いて、第１の実施形態の変形例について述べる。第１の実施形態では判断部１０８が通信部１１０によるデータの取得可否を判断する情報として、電波強度のみを用いていた。これに対して、本変形例では、無線部１０５（例えば、無線ＬＡＮインタフェース）から入手可能なその他の情報（例えば、受信電波強度以外の無線ＬＡＮ情報）も用いて、通信の実行可否を判断する。
【００６２】
ここで、その他の情報は、例えば、ＳＮＲ（Signal-to-Noise Rate）、ＣＮＲ（Carrier-to-Noise Rate）、ＳＩＲ（Signal-to-Interference Rate）、ＣＩＲ（Carrier-to-Interference Rate）、フレームロス、衝突の数、または混雑具合などである。
【００６３】
この混雑具合は、例えば、観測されたアクセスポイントのうち干渉するチャネルを使用しているアクセスポイントの数、送信を試みてから実際に送信できるまでの平均試行回数、接続中のアクセスポイントに接続する端末の数、または接続中の通信路を使用する通信装置の数などから導出される。ここで、上記その他の情報は、自らが使用する通信路に限定した値の場合もあれば、隣接するチャネルなどを含めて一つの周波数帯における値の場合もある。特になければ後者の意味で用いる。
【００６４】
判断部１０８が通信部１１０によるデータの取得可否を判断する際、各情報で判断基準が異なるが適切なアルゴリズムと組み合わせることによって、判断部１０８は無線ＬＡＮ通信に好適な環境か否かの判断ができる。例えばＳＩＲの場合は、値が大きいほど通信の品質が良いことを表すため、値が大きい状況で通信することが好ましい（他のＳＮＲ／ＣＮＲ／ＣＩＲも同様）。よって、判断部１０８は、例えば、受信電波強度が所定の閾値を超え、且つＳＩＲ、ＳＮＲ、ＣＮＲ、またはＣＩＲが所定の閾値を超える場合、通信部１１０によるデータの取得を実行すると判断してもよい。また、判断部１０８は、例えば、受信電波強度が所定の閾値以下、及び／またはＳＩＲ、ＳＮＲ、ＣＮＲ、またはＣＩＲが所定の閾値以下の場合、通信部１１０によるデータの取得を実行しないと判断してもよい。
【００６５】
一方、フレームロス及び衝突の数は小さいほど良好な通信環境と考えられるため、値が小さい状況で通信することが好ましい。よって、判断部１０８は、例えば、受信電波強度が所定の閾値を超え、且つフレームロスまたは衝突の数が所定の閾値以下の場合、通信部１１０によるデータの取得を実行すると判断してもよい。また、判断部１０８は、例えば、受信電波強度が所定の閾値以下、及び／またはフレームロスまたは衝突の数が所定の閾値を超える場合、通信部１１０によるデータの取得を実行しないと判断してもよい。
【００６６】
なお、これらの情報は第１の実施形態における受信電波強度に置き換える形で単独で用いてもよい。複数の指標を利用して通信の可否を判断する場合には、指標に対する優先度を事前に設定されており、優先度に従って順に判断してもよい。例えば、判断部１０８は、測定が容易な受信電波強度を第一の指標として用いて、電波強度が閾値を超えていることが確認できた場合に限って、ＳＩＲが所定の閾値を超えているか判断してもよい。
【００６７】
また、判断部１０８が用いる複数のパラメータには、当該通信装置１００が直接接続する第１通信路に関する第１パラメータと、通信部１１０が無線中継装置２０１を介して通信相手装置２０２と通信する場合の、無線中継装置２０１から通信相手装置２０２までの第２通信路を含む通信路、または当該通信装置１００が直接接続する第１通信路の周波数に対して周波数差が所定の範囲内である周波数を有する第３通信路のいずれかに関する第２パラメータと、があってもよい。その場合、判断部１０８は、第１パラメータと第２のパラメータとに基づいて、通信部１１０によるデータの取得可否を判断してもよい。
【００６８】
また、一例として、第１パラメータは、当該通信装置１００が接続する無線中継装置２０１からの信号の強さを表すパラメータであり、第２パラメータは、上記第３通信路に関するパラメータであってもよい。その場合、第３通信路に関するパラメータは、無線中継装置２０１との通信に使用する周波数と同じまたは近接する周波数帯を使用する他機器からの干渉電波に関するパラメータ、及び／または無線中継装置２０１との通信に直接使用する通信路に近接する近接通信路に関するパラメータである。この近接通信路に関するパラメータは、一例として、無線中継装置２０１との通信に使用する無線チャネルと近接する無線チャネルの電波の強さである。
【００６９】
以下、上述した第３通信路に関するパラメータが、無線中継装置２０１との通信に使用する無線チャネルと近接する無線チャネルの電波の強さである場合について、一例を用いて説明する。図７は、２．４ＧＨｚ帯を使用する無線ＬＡＮのチャネル分布である。互いに重なっている部分は電波が干渉することを示している。当該通信装置１００がチャネル６を使用していると仮定すると、通信装置１００が発する電波は、チャネル２〜５および７〜１０の電波と干渉する。測定部１０６は無線部１０５を用いて干渉する可能性があるチャネルの状況を確認する処理を行い、記憶部１０７に保存しておく。この処理には一定の時間を要することが考えられる。代理実行部１０２からの通信依頼を受けてから確認処理を行うと、通信開始までに大量に遅延が発生する可能性があるため、例えば、測定部１０６は事前にこの処理を行う。ここで、チャネルの状況は、例えば、電波を発する装置の混雑度（その一例として、アクセスポイントなど電波を発する他の装置の数）である。
【００７０】
実際に代理実行部１０２から通信要求が発生すると、測定部１０６は通信に使用するチャネルの電波強度を確認する。そして、その値が所定の閾値を超えた場合（電波強度としては好適と判断した場合）には、判断部１０８は、記憶部１０７に格納されている直近の干渉する他チャネル状況を確認し、その混雑度を確認する。一方、電波強度が弱い場合には判断部１０８は混雑度の確認は行わない。
【００７１】
なお、判断部１０８は、一例として、混雑度についても所定の閾値と比較する。例えば、判断部１０８は、干渉する他チャネルの混雑度が閾値以下の場合、通信するのに好適と判断してその旨を代理実行部１０２に返す。一方、判断部１０８は、例えば、干渉する他チャネルの混雑度が閾値よりも高かった場合、通信するには不適と判断してその旨を代理実行部１０２に返す。
【００７２】
図８〜図９は、前述の動作のフローチャートである。図８は、第１の変形例に係る通信装置１００の処理の流れの一例を示すフローチャートである。図９は、図８のフローチャートの処理後に行われる処理の流れの一例を示すフローチャートである。
まず、図８の処理の流れについて説明する。
【００７３】
（ステップＳ４０１）まず、測定部１０６は通信に使用するチャネルと干渉するチャネルの混雑度を測定する。
【００７４】
（ステップＳ４０２）次に、測定部１０６は測定した、干渉するチャネルの混雑度を記憶部１０７に保存する。
【００７５】
次に、図９のフローチャートの処理の流れについて説明する。この処理フローは、何らかの通信要求が発生した時に実行されるものである。
ステップＳ５０１〜Ｓ５０２の処理は、図３のステップＳ３０１〜Ｓ３０２の処理と同一であるので、その説明を省略する。
【００７６】
（ステップＳ５０３）次に、判断部１０８は、記憶部１０７に記憶されている、干渉するチャネルの混雑度及び所定の混雑度閾値を読み出す。
【００７７】
（ステップＳ５０４）次に、判断部１０８は、干渉するチャネルの混雑度が所定の閾値を下回ったか否か判断する。干渉するチャネルの混雑度が所定の混雑度閾値を下回った場合（ＹＥＳ）、通信に用いるチャネルへの干渉が少ないので、判断部１０８はステップＳ５０５へ進む。一方、干渉するチャネルの混雑度が所定の混雑度閾値以上の場合（ＮＯ）、通信に用いるチャネルへの干渉が多いので、判断部１０８は要求の実行を中断して終了する。
【００７８】
ステップＳ５０５〜Ｓ５０８の処理は、図３のステップＳ３０３〜Ｓ３０６の処理と同一であるので、その説明を省略する。
なお、図９では通信の実行前に１回だけ確認処理を行うようにしているが、図４と同様にして通信を実行する毎に、毎回確認処理を行うようにしてもよい。
【００７９】
図１０は図８及び図９のフローチャートに対応する各構成要素の動作シーケンス図である。通信装置１００は、以下のＴ７０１及びＴ７０２の処理を定期的に実行する。
【００８０】
（Ｔ７０１）まず、測定部１０６は、通信に用いるチャネルと干渉する干渉チャネルの混雑度を測定する。
【００８１】
（Ｔ７０２）次に、測定部１０６は、測定した干渉チャネルの混雑度を記憶部１０７に保存する。
【００８２】
（Ｔ７０３）処理部１０１にて通信要求が発生すると、処理部１０１は代理実行部１０２に通信の実行を依頼する。
【００８３】
（Ｔ７０４）次に、この依頼を受けた代理実行部１０２は、判断部１０８に現在の受信電波強度及び干渉チャネルの混雑度に基づいて通信を行うべきかどうかの判断を求める。
【００８４】
（Ｔ７０５）次に、判断部１０８は測定部１０６に対して現在の受信電波強度の測定を依頼する。
【００８５】
（Ｔ７０６）次に、これを受けた測定部１０６は無線部１０５から受信電波強度の値を得る。
【００８６】
（Ｔ７０７）次に、測定部１０６は、この受信電波強度の値を記憶部１０７に保存する。
【００８７】
（Ｔ７０８）それとともに測定部１０６は、判断部１０８に測定完了を通知する。
【００８８】
（Ｔ７０９）判断部１０８は測定完了を受け取ると、記憶部１０７から測定値（受信電波強度）や判断のための条件（例えば、所定の閾値、例えば図５Ａで記載したもの）を読み出す。
【００８９】
（Ｔ７１０）次に、判断部１０８は、測定された受信電波強度が、記憶部１０７から読み出した所定の閾値を上回ったか否か判断する。
【００９０】
（Ｔ７１１）次に、判断部１０８は、記憶部１０７から測定値（干渉するチャネルの混雑度）や判断のための条件（例えば、所定の混雑度閾値）を読み出す。
【００９１】
（Ｔ７１２）次に、判断部１０８は、干渉するチャネルの混雑度が、記憶部１０７から読み出した所定の混雑度閾値を下回ったか否か判断する。
【００９２】
（Ｔ７１３）次に、判断部１０８は、その結果を代理実行部１０２に通知する。
【００９３】
なお、図１０では判断部１０６が記憶部１０７から電波強度の測定値と混雑度の測定値を別々に読み出すように記述しているが、両値を一度に読み出すようにしてもよい。
【００９４】
ここでは混雑度を例に動作を述べたが、他の指標を用いても同様の動作で実現できる。
【００９５】
上述の例では、直接使用するチャネルとそれに干渉するチャネルとの関連に着目して述べたが、無線ＬＡＮの規格とは異なる他の干渉電波との関連に注目してもよい。
【００９６】
ここで、第３通信路に関するパラメータが、無線中継装置２０１との通信に使用する周波数と同じまたは近接する周波数帯の電波の強さの場合について、その一例を説明する。無線中継装置２０１との通信に使用する周波数と同じまたは近接する周波数帯の電波とは、例えば、電子レンジやコードレス電話などが出す２．４ＧＨｚ帯の電波である。これらの機器が出す電波は干渉電波であるため、例えばＳＮＲが悪化するなどの現象が確認できる。したがって、判断部１０８は、受信電波強度とＳＮＲを使っても先に述べた動作と同様の処理で、通信部１１０によるデータの取得可否を判断することができる。
【００９７】
このように通信に直接使用する通信路の状況だけでなく隣接する通信路の状況も把握することで、電波強度が強くても効率的な通信ができない場合を適切に検出できる。これにより、指示情報によって特定される通信を効率良く実行できるようになる。
【００９８】
（第２の実施形態）
続いて第２の実施形態について述べる。第１の実施形態では無線ＬＡＮインタフェースから得られる電波に関連する情報のみを用いて、通信開始の可否を判断していた。これに対して、第２の実施形態では、アプリケーションレベルのスループットも考慮した制御を行う。
【００９９】
図１１は、第２の実施形態の課題を説明するための図である。図１１のＣＡＳＥ１では、通信装置１００が一台で且つ通信装置１００から無線中継装置２０１までの距離が近いので、スループットが１５０Ｍｂｐｓと高い。また、通信装置１００から無線中継装置２０１までの距離が近いので、通信装置１００の送信電力が低出力とすることができ、その場合は、消費電力を抑えることができる。ここでスループットは、単位時間あたりの受信データ量である。
【０１００】
図１１のＣＡＳＥ２では、通信装置１００が一台で且つ通信装置１００から無線中継装置２０１までの距離が遠いので、スループットが１Ｍｂｐｓと低い。
【０１０１】
図１１のＣＡＳＥ３では、通信装置１００から無線中継装置２０１までの距離が近いので、通信装置１００の送信電力が低出力となり、消費電力を抑えることができる。ＣＡＳＥ１とは異なり、８台の通信装置１００から無線中継装置２０１までの距離が近くても、８台の通信装置１００が同時に無線中継装置２０１と無線通信すると、回線が混雑してスループットが１Ｍｂｐｓと低くなる可能性がある。このように、通信装置１００から無線中継装置２０１までの距離が近く受信電波強度が高い場合でも、一つの無線中継装置２０１に対して多くの通信装置１００が同時に無線通信すると、回線が混雑してスループットが落ちてしまう問題がある。
【０１０２】
それに対して、本実施形態では、図１２に示すように、プリフェッチする際の条件には、電波強度の範囲だけでなく、スループットの範囲も含まれる。
【０１０３】
図１２は、プリフェッチする際の条件を説明するための図である。同図において、縦軸はスループットで横軸は電波強度である。原点と点（Ｐｔｈ，Ｂｔｈ）を結ぶ直線Ｌ１が示されている。Ｐｔｈは、電波強度の閾値で、Ｂｔｈはスループットの閾値である。
【０１０４】
最初からデータを取得しない領域Ｒ１１は、電波強度が、電波強度の閾値Ｐｔｈより小さく、スループットが直線Ｌ１で得られるスループット以下の領域である。
最初はデータを取得するがプリフェッチしない領域Ｒ１２は、電波強度が、電波強度の閾値Ｐｔｈ以上で、スループットがスループットの閾値Ｂｔｈ未満の領域である。
【０１０５】
プリフェッチする領域Ｒ１３は、電波強度が、電波強度の閾値Ｐｔｈ以上で、スループットがスループットの閾値Ｂｔｈ以上で且つスループットが直線Ｌ１で得られるスループット以下の領域である。
【０１０６】
以下、処理の一例について説明する。
通信部１１０は、要求元（一例として処理部１０１）から情報の取得要求を受けた場合、この情報を通信相手装置２０２から無線通信により取得し、取得した情報からＵＲＬを抽出する。
【０１０７】
そして、判断部１０８は、抽出されたＵＲＬに応じたデータ（例えば、画像または動画データ）を要求元（一例として処理部１０１）の要求を受ける前に通信相手装置２０２から取得するか否かを複数のパラメータに基づいて判断する。図１２の例の場合、判断部１０８は、受信電波強度とスループットに基づいて判断する。
【０１０８】
そして、通信部１１０は、判断部１０８が要求元（一例として処理部１０１）の要求を受ける前に取得すると判断した場合、通信相手装置２０２から上記ＵＲＬに応じたデータを無線通信により取得し、取得した情報及び前記取得したデータを要求元（一例として処理部１０１）へ返す。これにより、処理部１０１は、画像または動画などのデータが埋め込まれたＷＥＢページを不図示の表示部に表示することができる。
【０１０９】
一方、通信部１１０は、判断部１０８が要求元の要求を受ける前に取得しないと判断した場合、取得した情報を要求元（一例として処理部１０１）へ返す。これにより、処理部１０１は、画像または動画などのデータが埋め込まれていないＷＥＢページを不図示の表示部に表示することができる。
【０１１０】
本実施形態のブロック図は第１の実施形態と同じである（図１）。ただし、測定部１０６が無線ＬＡＮに関する測定だけでなく、アプリケーションレベルの測定も可能な点が異なる。より具体的には、測定部１０６は例えば、通信実行部１０４が行う通信に対して、開始時刻や終了時刻、送受信データ量を記録することによってスループットを計測する。
【０１１１】
図１３Ａは、第２の実施形態の変形例に係る通信装置１００の処理の流れの一例を示すフローチャートである。図１３Ｂは、図１３Ａのフローチャートの続きである。図１３Ａ及び図１３Ｂの大部分は図３で示した第１の実施形態と同じである。図１３ＡのステップＳ７０１〜Ｓ７０２の処理は、図３のステップＳ３０１〜ステップＳ３０２と同一であるので、その説明を省略する。図１３ＢのステップＳ７０８〜Ｓ７１０の処理は、図３のステップＳ３０４〜ステップＳ３０６と同一であるので、その説明を省略する。
【０１１２】
図１３Ａにおける変更点はステップＳ７０３〜Ｓ７０７が追加された点である。以下、この追加されたステップについて説明する。
【０１１３】
（ステップＳ７０３）測定部１０６は、指示情報の取得開始時刻を記録する。
【０１１４】
（ステップＳ７０４）次に、通信部１１０は指示情報を取得する。指示情報をサーバから取得する際に、指示情報のサイズを把握することで、スループットの算出に必要なデータを求める。
【０１１５】
（ステップＳ７０５）次に、測定部１０６は、指示情報の取得終了時刻を記録する。
ステップＳ７０３とステップＳ７０５の処理は、スループットの算出に必要な通信時間を記録するためのものであり、ステップＳ７０６にて使用される。
【０１１６】
（ステップＳ７０６）次に、測定部１０６は、これらの情報を用いて、（取得した指示情報のサイズ）／｛（通信終了時刻）―（通信開始時刻）｝に従って、スループットを算出する。
【０１１７】
（ステップＳ７０７）次に判断部１０８は、算出したスループットが事前に定めた閾値を上回っているか否かを判断する。判断の結果、閾値を上回れば（ＹＥＳ）、判断部１０８は、ステップＳ７０８に進む。これにより、指示情報の解析とその指示に基づく通信が実行される（Ｓ７０８〜Ｓ７０９）。閾値を下回った場合（ＮＯ）、判断部１０８は、指示情報の解析やそれに基づく通信を実行することなく終了する。
【０１１８】
なお、スループットの比較に用いる閾値は第１の実施形態における電波強度の情報と同様に、記憶部１０７もしくは不図示のメモリに保存されているものとする。
【０１１９】
以上が本実施形態の基本的な動作である。なお、各構成要素の動作シーケンスは第１の実施形態とほぼ同じため省略する。
【０１２０】
測定部１０６は、指示情報を取得した無線通信を対象として受信電波強度とスループットを測定する。判断部１０８は、測定部１０６が測定して得た受信電波強度とスループットに基づいて、この指示情報から抽出されたＵＲＬに応じたデータを取得するか否かを判断する。これにより、受信電波強度が高く且つスループットが高い場合に判断部１０８はＵＲＬに応じたデータの取得を許可し、処理部１０１は、ＷＥＢページ内に埋め込まれる画像または動画データを通信により取得するようにする。一方、受信電波強度が低く、且つ／またはスループットが低い場合に、判断部１０８はＵＲＬに応じたデータの取得を不許可にし、処理部１０１は、ＷＥＢページ内に埋め込まれる画像または動画データを通信により取得しないようにする。
【０１２１】
なお、判断部１０８はデータの取得不可と判断した場合に、処理部１０１は、ＷＥＢページ内に埋め込まれる画像または動画データを一部だけ通信により取得してもよい。
【０１２２】
以上、第２の実施形態において、測定部１０６は、指示情報を取得した無線通信を対象として通信状態を測定する。そして、判断部１０８は、測定部１０６が測定して得た通信状態に関する複数のパラメータに基づいて、この指示情報から抽出されたＵＲＬに応じたデータを取得するか否かを判断する。これにより、通信部１１０は、指示情報を取得した無線通信時の通信状態が良好であれば、そのＵＲＬに応じたデータを取得し、指示情報を取得した無線通信時の通信状態が良好でなければ、そのＵＲＬに応じたデータを取得しない。このため、指示情報を取得した無線通信時の通信状態が良好のときだけ、ＵＲＬに応じたデータを取得するので、ＵＲＬに応じたデータの通信時間を短縮することができ、通信装置１００の消費電力を低減することができる。
【０１２３】
＜第２の実施形態の変形例：スループットの算出を複数回行う＞
上述した説明では、通信装置１００は、指示情報を取得する際にスループットを算出し、以降の通信を行うか否かを判定した。これに対して、指示情報の送受信にかかる一つ以上の通信に対して、一つの通信が完了する毎にスループットの判定を行うようにしてもよい。その場合、直前に実行した通信のスループットを測定して次の通信に対する実行可否を判断する（図１４、追加したステップＳ８０１〜Ｓ８０６）。
【０１２４】
図１４Ａは、第２の実施形態の変形例に係る通信装置１００の処理の流れの一例を示すフローチャートである。図１４Ｂは、図１４Ａのフローチャートの続きである。図１４ＡのステップＳ７０１〜Ｓ７０７の処理は、それぞれ図１３ＡのステップＳ７０１〜Ｓ７０７の処理と同一であるので、その説明を省略する。また図１４ＢのステップＳ７０８及びＳ７１０の処理は、それぞれ図１３ＢのステップＳ７０８及びＳ７１０の処理と同一であるので、その説明を省略する。ステップＳ８０１〜Ｓ８０４の処理は、図１３Ａ（図１４Ａ）のステップＳ７０３〜Ｓ７０６の処理と同一であるので、その説明を省略する。
【０１２５】
（ステップＳ８０５）次に、判断部１０８は、ステップＳ８０４で算出された直前の通信のスループットが所定の閾値を上回ったか否か判断する。直前の通信のスループットが閾値を上回った場合（ＹＥＳ）、判断部１０８は、ステップＳ８０６へ進む。直前の通信のスループットが閾値以下の場合（ＮＯ）、判断部１０８は、ステップＳ８０７へ進む。
【０１２６】
（ステップＳ８０６）ステップＳ８０５で直前の通信のスループットが閾値を上回ったと判定された場合、通信部１１０は、次の指示通信を実行する。その際、後続の通信に対する判断基準を得るためにスループットを測定する。
【０１２７】
（ステップＳ８０７）ステップＳ８０５で直前の通信のスループットが閾値以下と判定された場合、通信部１１０は、次の指示通信をスキップする。
【０１２８】
仮に指示通信の待機列がＦＩＦＯキューのように構成されているとすれば、キューの先頭にある指示通信に対して通信可否の判定を行い、下回った場合には、先頭の指示通信を破棄し、その次にある指示通信に注目する。この時、指示通信に対する閾値が全て同じであれば、すべての指示通信が破棄されて処理が終了する。一方、第１の実施形態（図５）で述べたように閾値が指示通信ごとに異なる場合には、ステップＳ８０５とＳ８０６を繰り返す中で実行できる指示通信を見つけながら処理を行う（図１５参照）。
【０１２９】
図１５はＡ、Ｂ、Ｃ、Ｄの４つの通信が実行待ちの指示通信としてキューに格納された状態から、それらの実行判定を行い、実行される様子を示す図である。ここでは、受信電波強度が所定の閾値を超えていると判断部１０８が既に判断したことを前提とする。判断部１０８は、最初に行う指示情報の取得処理から得たスループットを用いて、最初に通信Ａの実行判定を行う。通信Ａを実行すると通信Ａにおけるスループットが算出でき、キューにある次のエントリである通信Ｂに対する判定が可能となる。
【０１３０】
図１５では実行が許可されたと仮定しており、通信部１１０による通信Ｂの実行と測定部１０６によるスループットの算出が行われる。続いて、判断部１０８は、通信Ｂのスループットを用いて通信Ｃの判定を行うが、図１５では通信Ｃに対して不許可となった場合を示している。この判定により通信部１１０により通信Ｃはキューから取り除かれ、判断部１０８は、次のエントリである通信Ｄの判定に移る。もし、閾値が全体で１つであれば比較対象のスループットが同一なので通信Ｄも不許可になるが、図１５の場合には複数の閾値が設定されていることが仮定されており、通信Ｄの実行は許可された場合を示している。
【０１３１】
このように、通信部１１０は、ＵＲＬに応じたデータを順次取得する通信を行う。そして、測定部１０６は、ＵＲＬに応じたデータを取得する通信毎に、受信電波強度とスループットを測定する。そして、判断部１０８は、測定部１０６が測定して得た受信電波強度とスループットに基づいて、次のＵＲＬに応じたデータを取得するか否かを判断する。そして、通信部１１０は、判断部１０８が取得すると判断した場合、次のＵＲＬに応じたデータを取得する。一方、判断部１０８が取得すると判断した場合、通信部１１０は次のＵＲＬに応じたデータを取得しない。このように、判断部１０８が、ＵＲＬに応じたデータを取得する通信毎に取得するか否かを判断することで、その時々のネットワーク環境に応じてデータを取得するか否かを判断する。これにより、ネットワーク環境が悪い場合には、データを取得しなくて済むので、通信装置１００の消費電力を抑えることができる。
【０１３２】
＜第２の実施形態の補足１：使用する情報の種類＞
これまで述べた第２の実施形態では、判定に用いる条件として電波強度とアプリケーションレベルのスループットを用いた。このうち電波強度については、先に述べたように無線に関連する他のパラメータを併用してもよいし、他のパラメータ（例えば、混雑度やＳＮＲ）だけを用いるようにしてもよい。他のパラメータを併用する場合、例えば、第１の実施形態の変化形で述べたように、判断部１０８は、電波強度、混雑度／ＳＮＲの順に評価して、通信部１１０によるデータの取得可否を判断してもよい。
【０１３３】
また、無線に関するパラメータを複数用いる場合、その優先度は次の順序に従う。第１に優先される第１パラメータは、通信に直接使用する通信路（無線区間）に関するパラメータである。換言すれば、第１パラメータは、当該通信装置１００が直接接続する第１通信路に関するパラメータである。第１パラメータは、例えば、当該通信装置１００の受信電波強度、リンク速度、または当該通信装置１００が直接接続する第１通信路の混雑度である。
【０１３４】
ここで、リンク速度は、当該通信装置１００と無線中継装置２０１との間のアソシエーションによって決定される物理層の伝送レートである。また、当該通信路の混雑度は、例えば、当該通信装置１００と無線中継装置２０１が使用するチャネルにおいて、電波を送信可能な時間のうち電波が送信されている（当該通信装置１００から見たら電波が受信されている）割合である。
【０１３５】
第２に優先される第２パラメータは、無線中継装置２０１との通信に使用する周波数と同じまたは近接する周波数帯を使用する他機器からの干渉電波に関するパラメータ、及び／または無線中継装置２０１との通信に直接使用する通信路に近接する近接通信路に関するパラメータである。この第２パラメータは、第３通信路に関するパラメータの一例である。
ここで近接通信路に関するパラメータは、例えば、近接通信路の混雑度、ＳＮＲ、ＳＩＲ、または無線中継装置２０１との通信に使用する無線チャネルと近接する無線チャネルの電波の強さなどである。
【０１３６】
判断部１０８は、アプリケーションスループットの他に、パケットロスや再送回数、遅延、ＲＴＴ（Round Trip Time）、それらの揺らぎなど通信実行部１０４の情報を参照して測定部１０６で測定可能な情報を判断に活用してもよい。また、これらはスループットを置き換える条件として使用してもよいし、追加条件として使用してもよい。
【０１３７】
置き換えとして使用する場合、パケットロスであれば、判断部１０８は、ある値を閾値としてそれ以上パケットロスが発生していれば通信部１１０によるデータの取得を不許可とし、そうでなければ通信部１１０によるデータの取得を許可してもよい。再送回数、遅延及びＲＴＴも同様に少ないほうが好ましいパラメータであるため、判断部１０８は、閾値を設けて、再送回数、遅延またはＲＴＴのうち少なくとも一つと閾値との大小関係で、通信部１１０によるデータの取得可否を判断してもよい。具体的には例えば、判断部１０８は、再送回数、遅延またはＲＴＴのうち少なくとも一つが閾値を超える場合、通信部１１０によるデータの取得を不許可とし、再送回数、遅延またはＲＴＴ全てが閾値以下の場合、通信部１１０によるデータの取得を許可してもよい。
【０１３８】
一方、追加条件として使用する場合、スループットの情報を補足するものとして利用できる。例えば、スループットが高くてもパケットロスが多い場合や再送回数が大きい場合には、通信効率が低くなる可能性がある。その場合、判断部１０８は、指示通信の実行には不適と判断してもよい。
【０１３９】
これらの情報は、通信実行部１０４で管理されるＴＣＰ／ＩＰの統計情報（インタフェースごとの送受信パケットの数、エラーパケットの数、再送の数など）から得ることができる。
【０１４０】
なお、第１の実施形態で述べた無線関連のパラメータを複数使用し、本実施形態で述べたアプリケーションレベルのパラメータを複数使用する場合、判断部１０８は、無線関連のパラメータを用いた判断を行った後、アプリケーションレベルのパラメータを用いた判断を行ってもよい。
【０１４１】
上述したように、第１パラメータは、当該通信装置１００が接続する無線中継装置２０１からの信号の強さを表すパラメータであり、第２パラメータは、第２通信路を含む通信路に関するパラメータである。この第２通信路を含む通信路に関するパラメータは、通信相手装置２０２との間の論理的な通信路の速さ、遅延、または速さまたは遅延の揺らぎのいずれかを表すパラメータである。
【０１４２】
＜第２の実施形態の補足２：算出・判定の回数、スループットの粒度＞
また、図１４Ａ及び図１４Ｂでは電波強度の測定は最初の１回だけとし、スループットの測定は毎回行っている。これは一例であり、電波強度の測定とその判断も毎回行うようにしてもよい。逆に、電波強度の測定は毎回行ってスループットの測定を最初の１回だけにしてもよい。さらに第１の実施形態と同様に、スループットについても複数の閾値を設けて、指示通信の実行を制御するようにしてもよい。
【０１４３】
さらに、測定部１０６は、閾値と比較する際のスループットを、通信相手装置２０２（例えばサーバ）もしくは通信相手装置２０２が所属する所属ネットワークを単位として算出するようにしてもよい。例えば、測定部１０６は、所属ネットワークを単位としてスループットを算出する場合、例えば、ドメイン名毎またはＩＰアドレスごとにスループットを算出してもよい。
【０１４４】
ここで、図１６を用いて、通信相手となるサーバ毎にスループットを計算する処理を説明する。図１６は、通信相手となるサーバ毎にスループットを計算する処理を説明するための図である。図１６の例は、８個の要素で構成されたウェブページに含まれる情報を取得するケースを示している。図１６の例では、指示情報はウェブページのＨＴＭＬファイルであり、指示通信はＨＴＭＬファイルに記載された画像データを取得する通信である。図１６の例において、ＷＥＢぺージＰ１の構成要素Ａ１〜Ａ４はグループＡに分類され、構成要素Ｂ１及びＢ２はグループＢに分類され、構成要素Ｃ１及びＣ２はグループＣに分類されている。グループＡに分類される構成要素Ａ１〜Ａ４のデータは、サーバ２０２−Ａに格納されている。グループＢに分類される構成要素Ｂ１及びＢ２のデータは、サーバ２０２−Ｂに格納されている。グループＣに分類される構成要素Ｃ１及びＣ２のデータは、サーバ２０２−Ｃに格納されている。
【０１４５】
このような状況では、スループットがサーバごとに異なる可能性がある。もし、動画のような大きなデータが格納されたサーバとの間で十分なスループットが確保できないと、エネルギーの浪費につながってしまう。
そこで、グループごとにスループットを測定する方法を採用してもよい。この場合、例えば、判断部１０８は、グループＡの構成要素Ａ１のデータを取得する通信で測定されたスループットを、構成要素Ａ２のデータを取得する通信の可否判断に用いる。同様に例えば、判断部１０８は、グループＢの構成要素Ｂ１のデータを取得する通信で測定されたスループットを、構成要素Ｂ２のデータを取得する通信の可否判断に用いる。
【０１４６】
以下、通信相手装置毎に通信状態に関するパラメータを算出する場合における各部の処理の一例について説明する。
【０１４７】
通信相手装置は、複数あり、通信部１１０は、ＵＲＬに応じたデータを順次取得する通信を行う。そして測定部１０６は、ＵＲＬに応じたデータを取得する通信毎に、通信状態を測定する。そして判断部１０８は、通信相手装置毎に、対象となる通信相手装置との通信について測定された通信状態に関する複数のパラメータに基づいて、前記対象となる通信相手装置から次のＵＲＬに応じたデータを取得するか否かを判断する。
【０１４８】
続いて、通信相手装置が所属する所属ネットワーク毎に通信状態に関するパラメータを取得する場合における各部の処理の一例について説明する。通信相手装置２０２は、複数あり、通信部１１０は、ＵＲＬに応じたデータを順次取得する通信を行う。測定部１０６は、ＵＲＬに応じたデータを取得する通信毎に、通信状態を測定する。判断部１０８は、所属ネットワーク毎に、対象となる所属ネットワークに含まれる通信相手装置との通信について測定された通信状態に関する複数のパラメータに基づいて、対象となる所属ネットワークに含まれる通信相手装置から次のＵＲＬに応じたデータを取得するか否かを判断する。
【０１４９】
なお、例えば、ＷＥＢページに埋め込まれる複数の画像データを取得する通信など複数の通信が同時に行われている場合には、測定部１０６はそれらをすべて合わせてスループットを算出するようにしてもよい。例えば、第１の画像データのサイズがＤ１で第２の画像データのサイズがＤ２で、第１の画像データと第２の画像データを同時に通信で取得する際に、時間Ｔ１かかった場合には、測定部１０６は（Ｄ１＋Ｄ２）／Ｔ１をスループットとして算出してもよい。
【０１５０】
その場合、測定部１０６は、特定の通信の開始時刻及び終了時刻を計測するのではなく、ある所定期間における受信データ量を記録することでスループットを計算すればよい。指示通信が例えば、ドメインまたはＩＰアドレス等によって複数のグループに分けられる場合には、測定部１０６はグループごとに合算した受信データ量を用いてスループットを計算してもよい。
【０１５１】
（第３の実施形態）
続いて、第３の実施形態について説明する。これまでに述べた第１および第２の実施形態では、条件を満たさなかった指示通信は破棄されるとした。これに対して、第３の実施形態では所定時間だけ待機し、その後、再実行を試みる。
【０１５２】
図１７は、第３の実施形態における通信装置１００ｂの構成を示す概略ブロック図である。なお、図２と共通する要素には同一の符号を付し、その具体的な説明を省略する。第３の実施形態における通信装置１００ｂの構成は、第１の実施形態における通信装置１００の構成に対して、代理実行部１０２と電気的に接続されたタイマー１０９が追加されたものになっている。
【０１５３】
タイマー１０９は実行不可と判断されて待機時間が設定された通信に対して、所定の待機時間をカウントするタイマーである。
なお、図２と同様に、図１７の通信装置１００の構成は一例であり、通信部１１０に含まれる要素は流動的で処理部１０１以外の要素が通信部１１０に含まれる場合がある。
【０１５４】
図１８は、第３の実施形態における通信装置１００ｂの処理の流れの第１の例を示すフローチャートである。ここでは第１の実施形態を修正する形で記載したが、第２の実施形態に適用することも可能である。図１８のステップＳ３０１、Ｓ３０３〜Ｓ３０６の処理は、図３のステップＳ３０１、Ｓ３０３〜Ｓ３０６の処理と同一であるので、その説明を省略する。この処理フローは、何らかの通信要求が発生した時に実行されるものである。
【０１５５】
（ステップＳ３０２）判断部１０８は、ステップＳ３０１で測定された受信電波強度が所定の閾値を上回ったか否か判定する。受信電波強度が所定の閾値を上回った場合（ＹＥＳ）、判断部１０８は、ステップＳ３０３へ進む。一方、受信電波強度が所定の閾値以下の場合（ＮＯ）、判断部１０８は、ステップＳ３０２へ進む。この点が図３のステップＳ３０２とは異なる。
【０１５６】
（ステップＳ３０７）ステップ３０２で受信電波強度が所定の閾値以下と判断された場合、代理実行部１０２は、タイマー１０９をセットする。
【０１５７】
（ステップＳ３０８）そして、代理実行部１０２は、所定時間の待機を行う。
【０１５８】
（ステップＳ３０９）その後、代理実行部１０２は、タイマー１０９が終了しているか否か判定する。タイマー１０９が終了している場合（ＹＥＳ）、代理実行部１０２は、再度電波強度を確認するためにステップＳ３０１に戻る。タイマー１０９が終了している場合（ＹＥＳ）、代理実行部１０２は、更に待機するためにステップＳ３０８に戻る。
【０１５９】
なお、図１９に示すように再試行回数を確認するステップを追加し、所望の時間内に好適な環境下での通信が実行できない場合の処理を追加してもよい。
図１９は、第３の実施形態における通信装置１００ｂの処理の流れの第２の例を示すフローチャートである。図１９では、一例として、電波強度が悪くても通信可能な状態であれば通信をするように処理をする。図１９で、図１８から追加されたステップはＳ３１０〜Ｓ３１２であり、この追加されたステップについて以下説明する。なお、ステップＳ３０１の処理を開始する前に、試行回数が０にリセットされていることを前提とする。
【０１６０】
（ステップＳ３１０）ステップ３０２で受信電波強度が所定の閾値以下と判断された場合、判断部１０８は、試行回数が閾値を超えたか否か判断する。試行回数が閾値を超えた場合（ＹＥＳ）、判断部１０８は、ステップＳ３１１に進む。試行回数が閾値以下の場合（ＮＯ）、判断部１０８は、ステップＳ３０７に進む。
【０１６１】
（ステップＳ３１１）ステップＳ３１０で試行回数が閾値を超えたと判断された場合、判断部１０８は、通信部１１０が通信可能な状態か否か判定する。通信可能な状態の場合（ＹＥＳ）、判断部１０８は、ステップＳ３０３に進む。通信可能な状態でない場合（ＮＯ）、判断部１０８は、要求の実行を中断して終了する。
【０１６２】
（ステップＳ３１２）ステップＳ３０９でタイマー１０９が終了していると判断された場合、代理実行部１０２は、試行回数を１回増やし、ステップＳ３０１に戻る。
【０１６３】
ここで、試行回数の上限値や待機時間は事前に定められていると仮定している。
なお、通信装置１００は、電波強度が悪くても通信可能な状態であれば通信をするように処理をしたが、これに限ったものではない。通信装置１００は、通信するか否かを使用者に問う画面を不図示の表示部に表示してもよいし、通信装置１００は、通信を破棄してもよい。
【０１６４】
以上、第３の実施形態において、測定部１０６は、判断部１０８が通信部１１０によるデータの取得を許可しないと判断した時から所定の待機時間が経過した場合、再度通信状態を測定する。そして、判断部１０８は測定部１０６が再度測定した結果に基づいて、通信部１１０によるデータの取得可否を判断する。これにより、通信装置１００は、通信環境が良くなったときに、無線通信を行うことができるので、データ取得にかかる時間が短縮し、通信にかかる消費電力を低減することができる。
【０１６５】
判断部１０８は、一つの通信に対して測定部１０６が測定し且つ判断部１０８が判断した回数を記録し、この記録した回数が所定の値を上回った場合に、判断部１０８が過去の判断に用いた条件を満たさない場合であっても通信部１１０によるデータの取得を容認するか、通信するか否かを当該通信装置１００の使用者に問うか、もしくは指示情報に基づいて行う通信を破棄する。これにより、当該一つの通信が終了せずに、通信装置１００が無限に待機し続ける事態を回避することができる。
【０１６６】
なお、各実施形態の通信装置の各処理を実行するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、当該記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、プロセッサが実行することにより、各実施形態の通信装置に係る上述した種々の処理を行ってもよい。
【０１６７】
なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【０１６８】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ））のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【０１６９】
以上、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【０１７０】
１  通信システム
１００、１００ｂ  通信装置
１０１  処理部
１０２  代理実行部
１０３  大容量記憶部
１０４  通信実行部
１０５  無線部
１０６  測定部
１０７  記憶部
１０８  判断部
１０９  タイマー
１１０  通信部
２０１  無線中継装置
２０２  通信相手装置
２０３  ネットワーク
【図１】
2015100062.tif 000003
【図２】
2015100062.tif 000004
【図３】
2015100062.tif 000005
【図４】
2015100062.tif 000006
【図５Ａ】
2015100062.tif 000007
【図５Ｂ】
2015100062.tif 000008
【図６】
2015100062.tif 000009
【図７】
2015100062.tif 000010
【図８】
2015100062.tif 000011
【図９】
2015100062.tif 000012
【図１０】
2015100062.tif 000013
【図１１】
2015100062.tif 000014
【図１２】
2015100062.tif 000015
【図１３Ａ】
2015100062.tif 000016
【図１３Ｂ】
2015100062.tif 000017
【図１４Ａ】
2015100062.tif 000018
【図１４Ｂ】
2015100062.tif 000019
【図１５】
2015100062.tif 000020
【図１６】
2015100062.tif 000021
【図１７】
2015100062.tif 000022
【図１８】
2015100062.tif 000023
【図１９】
2015100062.tif 000024