(57)【要約】      （修正有）【課題】適宜無線区間におけるアプリケーション層のメッセージの疎通を図る。【解決手段】システムは、プロキシ装置と無線端末とを含む。プロキシ装置は、ネットワークを介して複数のアクセスポイント、およびサーバと接続され、複数のアクセスポイントのうちいずれかのアクセスポイントとの無線リンクを介して無線端末とサーバとの間で通信されるアプリケーション層のプロトコルによるメッセージを転送する転送部と、転送部において転送されるメッセージの転送状況を示す転送情報を生成する第１生成部と有する。更に、無線端末は、転送情報を取得する取得部と、転送情報に基づいて無線端末とアクセスポイントとの間の無線リンクにおけるメッセージの疎通状況を示す無線区間情報を生成する第２生成部と、無線区間情報に基づいて、無線リンク先のアクセスポイントを切り替える切替部とを有する。【選択図】図３
2015195529.tif 000002
【特許請求の範囲】
【請求項１】
プロキシ装置と無線端末とを含むシステムであって、
前記プロキシ装置は、
ネットワークを介して複数のアクセスポイント、およびサーバと接続され、
前記複数のアクセスポイントのうちいずれかのアクセスポイントとの無線リンクを介して前記無線端末と前記サーバとの間で通信されるアプリケーション層のプロトコルによるメッセージを転送する転送部と、
前記転送部において転送される前記メッセージの転送状況を示す転送情報を生成する
第１生成部と
を有し、
前記無線端末は、
前記転送情報を取得する取得部と、
前記転送情報に基づいて前記無線端末と前記アクセスポイントとの間の無線リンクにおけるメッセージの疎通状況を示す無線区間情報を生成する第２生成部と、
前記無線区間情報に基づいて、無線リンク先のアクセスポイントを切り替える切替部と
を有するシステム。
【請求項２】
前記第１生成部は、前記無線端末から送信された前記プロトコルによるリクエストメッセージを転送した時点から、当該リクエストメッセージに対するレスポンスメッセージを転送する時点までの待ち時間を計測し、
前記取得部は、前記待ち時間を取得し、
前記無線端末は、更に、
前記リクエストメッセージを送信した時点から、前記無線リンクを介して前記レスポンスメッセージを受信した時点までの応答時間を計測する計測部
を有し、
前記第２生成部は、前記リクエストメッセージのデータ量と前記レスポンスメッセージのデータ量との合計を、前記応答時間から前記プロキシ装置から取得した前記待ち時間を引いた差分時間で除して、転送率を算出し、
前記切替部は、前記転送率が閾値を下回った場合に、無線リンク先のアクセスポイントを切り替える
請求項１記載のシステム。
【請求項３】
前記無線端末は、更に、
前記プロトコルによるリクエストメッセージを送信した第１時点を計測する計測部
を有し、
前記第１生成部は、前記リクエストメッセージを転送した第２時点を計測し、
前記取得部は、前記第２時点を取得し、
前記第２生成部は、前記リクエストメッセージのデータ量を、前記第１時点から前記第２時点までの時間で除して、転送率を算出し、
前記切替部は、前記転送率が閾値を下回った場合に、無線リンク先のアクセスポイントを切り替える
請求項１記載のシステム。
【請求項４】
前記第１生成部は、前記サーバから返信された、前記プロトコルによるレスポンスメッセージを転送する第１時点を計測し、
前記無線端末は、更に、
前記レスポンスメッセージを受信した第２時点を計測する計測部
を有し、
前記取得部は、前記第１時点を取得し、
前記第２生成部は、前記レスポンスメッセージのデータ量を、前記第１時点から前記第２時点までの時間で除して、転送率を算出し、
前記切替部は、前記転送率が閾値を下回った場合に、無線リンク先のアクセスポイントを切り替える
請求項１記載のシステム。
【請求項５】
前記プロキシ装置は、更に、
前記複数のアクセスポイントの各々について、所定時間内に当該アクセスポイントとの無線リンクを介してリクエストメッセージを送信した無線端末の数を計数する計数部
を有し、
前記切替部は、前記無線端末における受信強度が所定基準を超えた電波を送出している２つ以上のアクセスポイントについての前記無線端末の数を比較し、前記無線端末の数が少ない方のアクセスポイントを次の無線リンク先に選定する
請求項１乃至４のいずれか１つ記載のシステム。
【請求項６】
前記プロキシ装置は、更に、
前記複数のアクセスポイントの各々について、所定時間内に当該アクセスポイントを介して転送された前記プロトコルによるメッセージのデータ量の総計を算出する算出部
を有し、
前記切替部は、前記無線端末における受信強度が所定基準を超えた電波を送出している２つ以上のアクセスポイントについての前記総計を比較し、前記総計が小さい方のアクセスポイントを次の無線リンク先に選定する
請求項１乃至４のいずれか１つ記載のシステム。
【請求項７】
ネットワークを介して複数のアクセスポイントおよびサーバと接続しているプロキシ装置と、無線端末とによる通信方法であって、
前記プロキシ装置において、前記複数のアクセスポイントのうちいずれかのアクセスポイントとの無線リンクを介して前記無線端末と前記サーバとの間で通信されるアプリケーション層のプロトコルによるメッセージを転送する処理と、
前記プロキシ装置において、転送される前記メッセージの転送状況を示す転送情報を生成する処理と、
前記無線端末において、前記転送情報を取得する処理と、
前記無線端末において、前記転送情報に基づいて前記無線端末と前記アクセスポイントとの間の無線リンクにおけるメッセージの疎通状況を示す無線区間情報を生成する処理と、
前記無線端末において、前記無線区間情報に基づいて、無線リンク先のアクセスポイントを切り替える処理と
を含む通信方法。
【請求項８】
アクセスポイントとネットワークを介して接続しているプロキシ装置から、無線端末自身とサーバとの間で通信されるアプリケーション層のプロトコルによるメッセージの転送状況を示す転送情報を取得する取得部と、
前記転送情報に基づいて前記無線端末自身と前記アクセスポイントとの間の無線リンクにおけるメッセージの疎通状況を示す無線区間情報を生成する生成部と、
前記無線区間情報に基づいて、無線リンク先のアクセスポイントを切り替える切替部と
を有する無線端末。
【請求項９】
無線端末に、
アクセスポイントとネットワークを介して接続しているプロキシ装置から、当該無線端末とサーバとの間で通信されるアプリケーション層のプロトコルによるメッセージの転送状況を示す転送情報を取得する処理と、
前記転送情報に基づいて当該無線端末と前記アクセスポイントとの間の無線リンクにおけるメッセージの疎通状況を示す無線区間情報を生成する処理と、
前記無線区間情報に基づいて、無線リンク先のアクセスポイントを切り替える処理と
を実行させるためのプログラム。
【請求項１０】
ネットワークを介して複数のアクセスポイント、およびサーバと接続され、
前記複数のアクセスポイントのうちいずれかのアクセスポイントとの無線リンクを介して無線端末とサーバとの間で通信されるアプリケーション層のプロトコルによるメッセージを転送する転送部と、
前記転送部において転送される前記メッセージの転送状況を示す転送情報を生成する
生成部と
を有するプロキシ装置。
【請求項１１】
ネットワークを介して複数のアクセスポイント、およびサーバと接続されるプロキシ装置に、
前記複数のアクセスポイントのうちいずれかのアクセスポイントとの無線リンクを介して無線端末とサーバとの間で通信されるアプリケーション層のプロトコルによるメッセージを転送する転送処理と、
前記転送処理において転送される前記メッセージの転送状況を示す転送情報を生成する処理と
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線リンク先のアクセスポイントを切り替える技術に関する。
【背景技術】
【０００２】
無線端末の分野において、携帯電話網あるいは無線ＬＡＮ（Local Area Network）を介してＷＥＢサーバにアクセスし、データ通信を行うアプリケーションプログラムが普及している。このようなアプリケーションプログラムは、ある程度の速さで継続的にＷＥＢサーバとアプリケーション層のメッセージ（例えばＨＴＴＰ（Hypertext Transfer Protocol）メッセージ）を交わすことによって、安定的に動作する。
【０００３】
携帯電話網に接続する無線端末では、データ通信を継続させるために、ハンドオーバーによって基地局を切り替えることがある。ある文献には、ハンドオーバーにおいて最も受信信号レベルの高い基地局へ切り替えることが記載されている。
【０００４】
一方、無線ＬＡＮを介するデータ通信の場合にも、受信信号レベルが基準を下回った場合に、無線リンク先のアクセスポイントを切り替えることがある。しかし、受信信号レベルがある程度高いアクセスポイントであっても、例えばそのアクセスポイントにおけるパケット誤り率が高ければ、無線端末とアクセスポイントとの無線区間で交わされるアプリケーション層のメッセージが停滞し、アプリケーションプログラムが円滑に動作しないことがある。
【０００５】
また、無線ＬＡＮを介するデータ通信の場合には、アクセスポイントを切り替える際に、次のアクセスポイントへの再接続に伴い、データ通信が一時的に中断することが多い。従って、無用なアクセスポイントの切り替えは却ってアプリケーションプログラムの動作を不安定化させるという面がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−３０４３９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、一側面によれば、適宜無線区間におけるアプリケーション層のメッセージの疎通を図ることである。
【課題を解決するための手段】
【０００８】
一態様に係るシステムは、プロキシ装置と無線端末とを含む。そして、上記プロキシ装置は、ネットワークを介して複数のアクセスポイント、およびサーバと接続され、複数のアクセスポイントのうちいずれかのアクセスポイントとの無線リンクを介して無線端末とサーバとの間で通信されるアプリケーション層のプロトコルによるメッセージを転送する転送部と、上記転送部において転送されるメッセージの転送状況を示す転送情報を生成する第１生成部と有する。更に、上記無線端末は、転送情報を取得する取得部と、転送情報に基づいて無線端末とアクセスポイントとの間の無線リンクにおけるメッセージの疎通状況を示す無線区間情報を生成する第２生成部と、無線区間情報に基づいて、無線リンク先のアクセスポイントを切り替える切替部とを有する。
【発明の効果】
【０００９】
一側面としては、適宜無線区間におけるアプリケーション層のメッセージの疎通を図ることができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、ネットワーク構成例を示す図である。
【図２】図２は、ネットワーク構成例を示す図である。
【図３】図３は、転送されるメッセージの例を示す図である。
【図４】図４は、メッセージ転送における時間経過の例を示す図である。
【図５】図５は、メッセージ転送における時間経過の例を示す図である。
【図６】図６は、無線端末のモジュール構成例を示す図である。
【図７】図７は、無線端末におけるシーケンス例を示す図である。
【図８】図８は、中継処理フローの例を示す図である。
【図９】図９は、中継処理フローの例を示す図である。
【図１０】図１０は、指示部の構成例を示す図である。
【図１１】図１１は、指示処理フローの例を示す図である。
【図１２】図１２は、指示処理フローの例を示す図である。
【図１３】図１３は、切り替え処理フローの例を示す図である。
【図１４】図１４は、プロキシ装置のモジュール構成例を示す図である。
【図１５】図１５は、プロキシ装置のシーケンス例を示す図である。
【図１６】図１６は、プロキシ装置のメイン処理フローの例を示す図である。
【図１７】図１７は、生成処理フローの例を示す図である。
【図１８】図１８は、実施の形態２において転送されるメッセージの例を示す図である。
【図１９】図１９は、実施の形態２に係る無線端末のモジュール構成例を示す図である。
【図２０】図２０は、実施の形態２に係る無線端末におけるシーケンス例を示す図である。
【図２１】図２１は、実施の形態２に係る中継処理フローの例を示す図である。
【図２２】図２２は、実施の形態２に係る中継処理フローの例を示す図である。
【図２３】図２３は、実施の形態２に係る指示処理フローの例を示す図である。
【図２４】図２４は、実施の形態２に係る切り替え処理フローの例を示す図である。
【図２５】図２５は、実施の形態２に係るプロキシ装置のモジュール構成例を示す図である。
【図２６】図２６は、履歴テーブルの例を示す図である。
【図２７】図２７は、実施の形態２に係るプロキシ装置のシーケンス例を示す図である。
【図２８】図２８は、実施の形態２に係るプロキシ装置のメイン処理フローの例を示す図である。
【図２９】図２９は、実施の形態２に係るプロキシ装置のメイン処理フローの例を示す図である。
【図３０】図３０は、計数処理フローの例を示す図である。
【図３１】図３１は、実施の形態３において転送されるメッセージの例を示す図である。
【図３２】図３２は、実施の形態３に係る無線端末におけるシーケンス例を示す図である。
【図３３】図３３は、実施の形態３に係る中継処理フローの例を示す図である。
【図３４】図３４は、実施の形態３に係る指示処理フローの例を示す図である。
【図３５】図３５は、実施の形態３に係る切り替え処理フローの例を示す図である。
【図３６】図３６は、実施の形態３に係るプロキシ装置のモジュール構成例を示す図である。
【図３７】図３７は、実施の形態３に係る履歴テーブルの例を示す図である。
【図３８】図３８は、実施の形態３に係るプロキシ装置のシーケンス例を示す図である。
【図３９】図３９は、実施の形態３に係るプロキシ装置のシーケンス例を示す図である。
【図４０】図４０は、実施の形態３に係るプロキシ装置のメイン処理フローの例を示す図である。
【図４１】図４１は、実施の形態３に係るプロキシ装置のメイン処理フローの例を示す図である。
【図４２】図４２は、総計処理フローの例を示す図である。
【図４３】図４３は、実施の形態４において転送されるメッセージの例を示す図である。
【図４４】図４４は、実施の形態４に係る無線端末におけるシーケンス例を示す図である。
【図４５】図４５は、実施の形態４に係る中継処理フローの例を示す図である。
【図４６】図４６は、実施の形態４に係る指示処理フローの例を示す図である。
【図４７】図４７は、実施の形態４に係るプロキシ装置のシーケンス例を示す図である。
【図４８】図４８は、実施の形態４に係るプロキシ装置のメイン処理フローの例を示す図である。
【図４９】図４９は、実施の形態４に係る生成処理フローの例を示す図である。
【図５０】図５０は、実施の形態５において転送されるメッセージの例を示す図である。
【図５１】図５１は、実施の形態５に係る無線端末におけるシーケンス例を示す図である。
【図５２】図５２は、実施の形態５に係る中継処理フローの例を示す図である。
【図５３】図５３は、実施の形態５に係る指示処理フローの例を示す図である。
【図５４】図５４は、実施の形態５に係るプロキシ装置のシーケンス例を示す図である。
【図５５】図５５は、実施の形態５に係るプロキシ装置のメイン処理フローの例を示す図である。
【図５６】図５６は、実施の形態５に係る生成処理フローの例を示す図である。
【図５７】図５７は、無線端末のハードウエア構成例を示す図である。
【図５８】図５８は、コンピュータの機能ブロック図である。
【図５９】図５９は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【００１１】
［実施の形態１］
図１に、ネットワーク構成例を示す。この図に示したＬＡＮは、例えば無線ＬＡＮを用いたインターネット接続サービスを提供するシステムのために設けられる。無線端末１０１は、アクセスポイント１０３との無線リンクを形成し、インターネット上のサーバ１０７にアクセスする。このネットワーク構成におけるサーバ１０７は、例えばＷＥＢサーバである。
【００１２】
図１に示したネットワーク構成は、多段プロキシを用いている。無線端末１０１内にローカルプロキシ部が設けられ、更にＬＡＮとインターネットとの間にプロキシ装置１０５が設けられる。つまり、無線端末１０１内のローカルプロキシ部が、下位のプロキシに相当し、プロキシ装置１０５が上位のプロキシに相当する。この例における無線端末１０１内のローカルプロキシ部とプロキシ装置１０５とは、共にＨＴＴＰプロキシである。
【００１３】
図２に、別のネットワーク構成例を示す。この図に示したＬＡＮは、例えば企業内システムのために設けられる。この例では、サーバ１０７は、ＬＡＮに接続されている。このネットワーク構成におけるサーバ１０７は、例えば企業内のサーバである。
【００１４】
図２に示したネットワーク構成も、多段プロキシを用いている。無線端末１０１内にローカルプロキシ部が設けられ、更にＬＡＮに接続されるプロキシ装置１０５が設けられる。図１の場合と同様に、無線端末１０１内のローカルプロキシ部が、下位のプロキシに相当し、プロキシ装置１０５が、上位のプロキシに相当する。図２に示す例の場合も、無線端末１０１内のローカルプロキシ部とプロキシ装置１０５とは、共にＨＴＴＰプロキシである。
【００１５】
図３に、転送されるメッセージの例を示す。ここでは、アプリケーション層のメッセージの例として、ＨＴＴＰメッセージを示す。つまり、この例におけるリクエストメッセージは、ＨＴＴＰリクエストであり、この例におけるレスポンスメッセージは、ＨＴＴＰレスポンスである。
【００１６】
リクエストメッセージは、無線端末１０１から送信され、プロキシ装置１０５において中継される。中継されたリクエストメッセージは、リクエストメッセージの宛先であるサーバ１０７において受信される。
【００１７】
サーバ１０７は、リクエストメッセージを受信すると、リクエストメッセージの内容に応じた処理を行って、その処理結果であるレスポンスメッセージを送信する。レスポンスメッセージは、プロキシ装置１０５において中継される。中継されたレスポンスメッセージは、リクエストメッセージの送信元である無線端末１０１において受信される。
【００１８】
無線端末１０１から送信されるリクエストメッセージは、「／／ｗｗｗ．ｘｘｘ．ｊｐ／」で特定されるサーバ１０７から、「ｉｎｄｅｘ．ｈｔｍｌ」というファイルを取得する要求を示している。また、このリクエストメッセージは、リクエストメッセージ自身が「ＨＴＴＰ／１．１」に準拠していることを示している。
【００１９】
この図は、このリクエストメッセージが、時刻Ｔ1に無線端末１０１から送信され、時刻Ｔ2にプロキシ装置１０５において受信されたことを示している。
【００２０】
プロキシ装置１０５からサーバ１０７へ転送されるリクエストメッセージは、「ｉｎｄｅｘ．ｈｔｍｌ」というファイルを取得する要求を示している。また、このリクエストメッセージは、リクエストメッセージ自身が「ＨＴＴＰ／１．１」に準拠していることを示している。
【００２１】
この図は、このリクエストメッセージが、プロキシ装置１０５から送信され、時刻Ｔ3にサーバ１０７において受信されたことを示している。
【００２２】
サーバ１０７からプロキシ装置１０５へ送信されるレスポンスメッセージは、処理結果が成功であることを示している。また、このレスポンスメッセージは、レスポンスメッセージ自身が「ＨＴＴＰ／１．１」に準拠していることを示している。この図ではレスポンスメッセージのボディが、省略されている。レスポンスメッセージのボディには、「ｉｎｄｅｘ．ｈｔｍｌ」のデータが含まれている。
【００２３】
この図は、このレスポンスメッセージが、時刻Ｔ4にサーバ１０７から送信され、時刻Ｔ5にプロキシ装置１０５において受信されたことを示している。
【００２４】
プロキシ装置１０５から無線端末１０１へ送信されるレスポンスメッセージは、プロキシ装置１０５においてリクエストメッセージを転送した時点からレスポンスメッセージを転送するまでの待ち時間を示すヘッダが付加されている。ヘッダ名「Ｘ−Ｒｅｍｏｔｅ−Ｔｉｍｅ」は、プロキシ装置１０５における待ち時間のヘッダであることを示している。このヘッダは、拡張ヘッダである。この例におけるヘッダは、時刻Ｔ2から時刻Ｔ5までの間隔が、「１００」ｍｓｅｃであったことを意味する。
【００２５】
更に、この図は、レスポンスメッセージが、時刻Ｔ6に無線端末１０１において受信されたことを示している。
【００２６】
本実施の形態では、アプリケーション層におけるメッセージの転送率（以下、アプリケーション層の転送率という。）によって、通信品質を評価する。アプリケーション層の転送率は、（アプリケーション層におけるメッセージのデータ量／着目区間においてそのメッセージのデータを転送することに要した時間）の式で表される比率である。
【００２７】
尚、アプリケーション層の転送率は、下位に相当するトランスポート層、ネットワーク層及びデータリンク層における処理性能に依存する面がある。しかし、アプリケーション層の転送率は、トランスポート層、ネットワーク層及びデータリンク層における処理性能と一致するものではない。下位に相当するトランスポート層、ネットワーク層及びデータリンク層における処理は、従来の技術と同様であるので、説明を省略する。
【００２８】
図４に、メッセージ転送における時間経過の例を示す。図示した矢印の横方向は、メッセージの流れを示し、図示した矢印の縦方向は、下向きに時間経過を示している。
【００２９】
図１及び図２に示したように、無線端末１０１とアクセスポイント１０３ｂとの間は、無線区間である。アクセスポイント１０３ｂとプロキシ装置１０５との間及びプロキシ装置１０５とサーバ１０７との間は、有線区間である。
【００３０】
枠４０１内の矢印は、アクセスポイント１０３ｂを介して無線端末１０１からプロキシ装置１０５へ送られるリクエストメッセージの転送処理に係る時間経過を概念的に示している。
【００３１】
アクセスポイント１０３ｂとプロキシ装置１０５との有線区間における上りのアプリケーション層の転送率は、無線端末１０１とアクセスポイント１０３ｂとの無線区間における上りのアプリケーション層の転送率よりも大きく、安定していると想定される。従って、無線端末１０１とプロキシ装置１０５との間における上りのアプリケーション層の転送率は、実質的に無線端末１０１とアクセスポイント１０３ｂとの無線区間における上りのアプリケーション層の転送率に相当すると考えられる。つまり、無線端末１０１がリクエストメッセージを送信した時刻Ｔ1からプロキシ装置１０５がリクエストメッセージを転送した時刻Ｔ2までの時間は、無線端末１０１とアクセスポイント１０３ｂとの無線区間における上りのアプリケーション層の転送率に依存している。
【００３２】
枠４０３内の矢印は、プロキシ装置１０５からサーバ１０７へ送られるリクエストメッセージの転送処理と、サーバ１０７におけるメッセージ要求に関する処理及びサーバ１０７からプロキシ装置１０５へ送られるレスポンスメッセージの転送処理に係る時間経過を概念的に示している。
【００３３】
これらの処理は、無線区間におけるアプリケーション層の転送率による影響を受けない。従って、プロキシ装置１０５がリクエストメッセージを転送した時刻Ｔ2から、プロキシ装置１０５がレスポンスメッセージを転送した時刻Ｔ5までの時間は、無線端末１０１とアクセスポイント１０３ｂとの無線区間における上りのアプリケーション層の転送率に依存していない。
【００３４】
枠４０５内の矢印は、アクセスポイント１０３ｂを介してプロキシ装置１０５から無線端末１０１へ送られるレスポンスメッセージの転送処理に係る時間経過を概念的に示している。
【００３５】
アクセスポイント１０３ｂとプロキシ装置１０５との有線区間における下りのアプリケーション層の転送率は、無線端末１０１とアクセスポイント１０３ｂとの無線区間における下りのアプリケーション層の転送率よりも大きく、安定していると想定される。従って、無線端末１０１とプロキシ装置１０５との間の下りのアプリケーション層の転送率は、実質的に無線端末１０１とアクセスポイント１０３ｂとの無線区間における下りのアプリケーション層の転送率に相当すると考えられる。つまり、プロキシ装置１０５がレスポンスメッセージを転送した時刻Ｔ5までの時間から、無線端末１０１がレスポンスメッセージを受信した時刻Ｔ6までの時間は、無線端末１０１とアクセスポイント１０３ｂとの無線区間における下りのアプリケーション層の転送率に依存している。
【００３６】
無線端末１０１は、無線端末１０１からリクエストメッセージが送信された時刻Ｔ1から、無線端末１０１においてレスポンスメッセージが受信された時刻Ｔ6までの応答時間を計測する。
【００３７】
また、プロキシ装置１０５は、プロキシ装置１０５からリクエストメッセージが転送された時刻Ｔ2から、プロキシ装置１０５においてレスポンスメッセージが転送される時刻Ｔ5までの待ち時間を計測する。
【００３８】
そして、無線端末１０１は、応答時間から待ち時間を引いた差分時間を算出する。この図の例において算出される差分時間は、（時刻Ｔ6−時刻Ｔ1）−（時刻Ｔ5−時刻Ｔ2）に相当する。
【００３９】
無線端末１０１は、更に、枠４０１内で転送されたリクエストメッセージのデータ量と枠４０５内で転送されたレスポンスメッセージのデータ量の合計を、上述した差分時間で除することによって、アプリケーション層の転送率を具体的に算出する。このようにして算出されるアプリケーション層の転送率は、無線端末１０１とアクセスポイント１０３ｂと間の無線区間における通信品質を示している。
【００４０】
算出されたアプリケーション層の転送率が所定の閾値を下回った場合には、無線端末１０１において無線リンク先のアクセスポイント１０３が切り替えられる。図４の下段は、無線端末１０１が、算出されたアプリケーション層の転送率が所定の閾値を下回ったと判定し、無線リンク先をアクセスポイント１０３ｂからアクセスポイント１０３ａへ切り替えたという想定に基づいている。
【００４１】
枠４０７内の矢印は、切り替え後のアクセスポイント１０３ａを介して無線端末１０１からプロキシ装置１０５へ送られるリクエストメッセージの転送処理に係る時間経過を概念的に示している。アクセスポイント１０３の切り替え後においても、アクセスポイント１０３の切り替え前と同じデータ量のリクエストメッセージが送られるものとする。
【００４２】
アクセスポイント１０３の切り替え後においても、アクセスポイント１０３ａとプロキシ装置１０５との有線区間における上りのアプリケーション層の転送率は、無線端末１０１とアクセスポイント１０３ａとの無線区間における上りのアプリケーション層の転送率よりも大きく、安定していると想定される。従って、無線端末１０１とプロキシ装置１０５との間の上りのアプリケーション層の転送率は、実質的に無線端末１０１とアクセスポイント１０３ａとの無線区間における上りのアプリケーション層の転送率に相当すると考えられる。つまり、無線端末１０１がリクエストメッセージを送信した時刻Ｔ7からプロキシ装置１０５がリクエストメッセージを転送した時刻Ｔ8までの時間は、無線端末１０１とアクセスポイント１０３ａとの無線区間における上りのアプリケーション層の転送率に依存している。
【００４３】
無線端末１０１とアクセスポイント１０３ａとの無線区間における上りのアプリケーション層の転送率は、上述した無線端末１０１とアクセスポイント１０３ｂとの無線区間における上りのアプリケーション層の転送率よりも大きいものとする。このように想定すると、無線端末１０１とプロキシ装置１０５との間における上りのアプリケーション層の転送率は、アクセスポイント１０３の切り替えによって改善されたことになる。
【００４４】
枠４０９内の矢印は、枠４０３内の矢印と同様に、プロキシ装置１０５からサーバ１０７へ送られるリクエストメッセージの転送処理と、サーバ１０７における処理及びサーバ１０７からプロキシ装置１０５へ送られるレスポンスメッセージの転送処理に係る時間経過を概念的に示している。アクセスポイント１０３の切り替え後においても、アクセスポイント１０３の切り替え前と同じデータ量のレスポンスメッセージが送られるものとする。
【００４５】
図示したように、プロキシ装置１０５がリクエストメッセージを転送した時刻Ｔ8から、プロキシ装置１０５がレスポンスメッセージを転送した時刻Ｔ11までの時間は、アクセスポイント１０３の切り替え前の時間（時刻Ｔ2から時刻Ｔ5まで）と同じになる。
【００４６】
枠４１１内の矢印は、アクセスポイント１０３ａを介してプロキシ装置１０５から無線端末１０１へ送られるレスポンスメッセージの転送処理に係る時間経過を概念的に示している。
【００４７】
アクセスポイント１０３ａとプロキシ装置１０５との有線区間における下りのアプリケーション層の転送率は、無線端末１０１とアクセスポイント１０３ａとの無線区間における下りのアプリケーション層の転送率よりも大きく、安定していると想定される。従って、無線端末１０１とプロキシ装置１０５との間の下りのアプリケーション層の転送率は、実質的に無線端末１０１とアクセスポイント１０３ａとの無線区間における下りのアプリケーション層の転送率に相当すると考えられる。
【００４８】
無線端末１０１とアクセスポイント１０３ａとの無線区間における下りのアプリケーション層の転送率は、上述した無線端末１０１とアクセスポイント１０３ｂとの無線区間における下りのアプリケーション層の転送率よりも大きい。従って、無線リンク先の切り替え前に比べて無線端末１０１とプロキシ装置１０５との間の下りのアプリケーション層の転送率は大きくなっている。つまり、無線端末１０１とプロキシ装置１０５との間における下りのアプリケーション層の転送率は、アクセスポイント１０３の切り替えによって改善されたことになる。
【００４９】
このように、無線区間における転送率が小さい場合には、アクセスポイント１０３を切り替えることによって、無線区間におけるアプリケーション層の転送率を高めて、全体の応答時間を短くすることができる。
【００５０】
図５に、無線区間における転送率が大きい場合の例を示す。図５の見方は、図４の場合と同様である。リクエストメッセージのデータ量及びレスポンスメッセージのデータ量も、図４の場合と同様である。
【００５１】
枠５０１内の矢印は、枠４０１内の矢印の場合と同様に、アクセスポイント１０３ｂを介して無線端末１０１からプロキシ装置１０５へ送られるリクエストメッセージの転送処理に係る時間経過を概念的に示している。但し、無線端末１０１とアクセスポイント１０３ｂとの無線区間における上りのアプリケーション層の転送率は、図４の場合に比べて大きいと想定する。従って、無線端末１０１とプロキシ装置１０５との間の上りのアプリケーション層の転送率も、図４の場合に比べて大きい。
【００５２】
従って、無線端末１０１がリクエストメッセージを送信した時刻Ｔ13からプロキシ装置１０５がリクエストメッセージを転送した時刻Ｔ14までの時間は、図４の枠４０１内に示した時間（時刻Ｔ1から時刻Ｔ2まで）に比べて短い。
【００５３】
枠５０３内の矢印は、枠４０３内の矢印の場合と同様に、プロキシ装置１０５からサーバ１０７へ送られるリクエストメッセージの転送処理と、サーバ１０７における処理及びサーバ１０７からプロキシ装置１０５へ送られるレスポンスメッセージの転送処理に係る時間経過を概念的に示している。但し、プロキシ装置１０５とサーバ１０７との有線区間における上りのアプリケーション層の転送率は、枠４０３の場合と比べて小さいと想定する。また、サーバ１０７におけるメッセージ要求に関する処理は、枠４０３の場合と比べて遅いものと想定する。更に、プロキシ装置１０５とサーバ１０７との有線区間における下りのアプリケーション層の転送率も、枠４０３の場合と比べて小さいと想定する。
【００５４】
従って、プロキシ装置１０５がリクエストメッセージを転送した時刻Ｔ14からプロキシ装置１０５がレスポンスメッセージを転送した時刻Ｔ17までの時間は、図４の枠４０３内に示した時間（時刻Ｔ2から時刻Ｔ5まで）に比べて長い。
【００５５】
枠５０５内の矢印は、枠４０５内の矢印の場合と同様に、アクセスポイント１０３ｂを介してプロキシ装置１０５から無線端末１０１へ送られるレスポンスメッセージの転送処理に係る時間経過を概念的に示している。但し、無線端末１０１とアクセスポイント１０３ｂとの無線区間における下りのアプリケーション層の転送率は、図４の上段の場合に比べて大きくなっている。従って、無線端末１０１とプロキシ装置１０５との間の下りのアプリケーション層の転送率も、図４の上段の場合に比べて大きい。
【００５６】
従って、プロキシ装置１０５がレスポンスメッセージを転送した時刻Ｔ17から無線端末１０１がレスポンスメッセージを受信した時刻Ｔ18までの時間は、図４の枠４０５内に示した時間（時刻Ｔ5から時刻Ｔ6まで）に比べて短い。
【００５７】
このように想定した図５の例で、無線端末１０１は、無線端末１０１からリクエストメッセージが送信される時刻Ｔ13から、無線端末１０１においてレスポンスメッセージが受信される時刻Ｔ18までの応答時間を計測する。この応答時間は、図４の上段の例における応答時間（時刻Ｔ1から時刻Ｔ6まで）と同程度である。
【００５８】
しかし、図５の例では、枠５０１内の矢印に示した経過時間と枠５０５内の矢印に示した経過時間との合計が、図４の上段の例における枠４０１内の矢印に示した経過時間と枠４０５内の矢印に示した経過時間との合計よりも短い。つまり、図５の例における無線区間における通信品質は、図４の上段の例における無線区間における通信品質に比べて優れている。図５の例において算出されるアプリケーション層の転送率は、図４の上段の例において算出されるアプリケーション層の転送率よりも大きくなる。その結果、図５の例では、算出されたアプリケーション層の転送率が所定の閾値を下回らないので、無線リンク先のアクセスポイント１０３は切り替えられない。
【００５９】
図５に示したように無線区間におけるアプリケーション層の転送率が所定の閾値よりも大きい場合は、無線リンク先のアクセスポイント１０３を切り替えても、全体の時間は短縮され難いと考えられるので、本実施の形態においては、図５に示したような場合に無線リンク先のアクセスポイント１０３を切り替えない。
【００６０】
次に、無線端末１０１のモジュール構成について説明する。図６に、無線端末１０１のモジュール構成例を示す。無線端末１０１は、通信アプリケーション部６０１とＯＳ（Operating System）６０３とを有している。
【００６１】
通信アプリケーション部６０１は、サーバ１０７とのデータ通信を行うアプリケーション部である。例えばＷＥＢブラウザは、通信アプリケーション部６０１に該当する。
【００６２】
ＯＳ６０３は、無線ＬＡＮを介した通信制御を行う無線通信ドライバ部６０５を有している。無線通信ドライバ部６０５に含まれるＴＣＰ（Transmission Control Protocol）層及びＩＰ（Internet Protocol ）層の制御部６０７は、ＴＣＰ層の制御とＩＰ層の制御を行う。尚、ＴＣＰ層は、図３に示したトランスポート層の例である。ＩＰ層は、図３に示したネットワーク層の例である。無線通信ドライバ部６０５に含まれる無線ＬＡＮ制御部６０９は、無線ＬＡＮにおける物理層の制御とデータリンク層の制御を行う。
【００６３】
ＯＳ６０３は、更にＡＰＩ（Application Programming Interface）部６１１を有している。ＡＰＩ部６１１は、ＯＳ６０３の一部の機能を外部から利用するためのインターフェースである。この例では、ＯＳ６０３以外のモジュールは、ＡＰＩ部６１１を介して無線通信ドライバ部６０５の機能を利用する。
【００６４】
無線端末１０１は、下位のプロキシに相当するローカルプロキシ部６２１を有している。ローカルプロキシ部６２１は、透過型であってもよい。ローカルプロキシ部６２１が透過型であれば、通信アプリケーション部６０１においてローカルプロキシ部６２１を用いる場合に、通信アプリケーション部６０１において特段の設定をしないで済む。
【００６５】
ローカルプロキシ部６２１は、通信アプリケーション部６０１から受け付けたリクエストメッセージをプロキシ装置１０５へ送信し、更にプロキシ装置１０５から受信したレスポンスメッセージを通信アプリケーション部６０１へ引き渡す。
【００６６】
そのため、ローカルプロキシ部６２１は、受付部６２３、リクエスト記憶部６２５、送信部６２７、受信部６２９、レスポンス記憶部６３１及び引渡部６３３を有している。
【００６７】
受付部６２３は、通信アプリケーション部６０１からリクエストメッセージを受け付ける。リクエスト記憶部６２５は、リクエストメッセージを一時的に記憶する。送信部６２７は、プロキシ装置１０５へリクエストメッセージを送信する。受信部６２９は、送信したリクエストメッセージに対するレスポンスメッセージをプロキシ装置１０５から受信する。レスポンス記憶部６３１は、受信したレスポンスメッセージを一時的に記憶する。引渡部６３３は、通信アプリケーション部６０１にレスポンスメッセージを引き渡す。
【００６８】
本実施の形態におけるローカルプロキシ部６２１は、従来のローカルプロキシ部の構成に加えて、データ量算出部６３５、取得部６３７及び変数記憶部６３９を有している。データ量算出部６３５は、リクエストメッセージのデータ量とレスポンスメッセージのデータ量との合計を算出する。取得部６３７は、レスポンスメッセージのヘッダからプロキシ装置１０５側の待ち時間を取得する。変数記憶部６３９は、データ量算出部６３５によって算出されたデータ量の合計と、取得部６３７によって取得された待ち時間などの変数を記憶する
【００６９】
但し、データ量算出部６３５、取得部６３７及び変数記憶部６３９は、ローカルプロキシ部６２１の外に設けるようにしてもよい。
【００７０】
無線端末１０１は、更に指示部６５１及び切替部６５３を有している。指示部６５１は、切替部６５３に無線リンク先のアクセスポイント１０３を切り替えるように指示する。指示部６５１については、図１０を用いて後で詳述する。切替部６５３は、ＡＰＩ部６１１を介して無線通信ドライバ部６０５の機能を利用して、無線リンク先のアクセスポイント１０３を切り替える。
【００７１】
尚、上述した通信アプリケーション部６０１、ＯＳ６０３、無線通信ドライバ部６０５、ＴＣＰ層及びＩＰ層の制御部６０７、無線ＬＡＮ制御部６０９、ＡＰＩ部６１１、ローカルプロキシ部６２１、受付部６２３、送信部６２７、受信部６２９、引渡部６３３、データ量算出部６３５、取得部６３７、指示部６５１及び切替部６５３は、ハードウエア資源（例えば、図５７）と、以下で述べる処理をプロセッサに実行させるプログラムとを用いて実現される。上述したリクエスト記憶部６２５、レスポンス記憶部６３１及び変数記憶部６３９は、ハードウエア資源（例えば、図５７）を用いて実現される。
【００７２】
図７に、無線端末１０１におけるシーケンス例を示す。ローカルプロキシ部６２１は、通信アプリケーション部６０１からリクエストメッセージを受け付ける（Ｓ７０１）。ローカルプロキシ部６２１は、指示部６５１に応答時間の計測開始を命令する（Ｓ７０３）。ローカルプロキシ部６２１は、送信処理において、リクエストメッセージをプロキシ装置１０５へ送信する（Ｓ７０５）。
【００７３】
その後、ローカルプロキシ部６２１は、受信処理において、プロキシ装置１０５からレスポンスメッセージを受信する。（Ｓ７０７）。ローカルプロキシ部６２１は、指示部６５１に応答時間の計測終了を命令する（Ｓ７０９）。ローカルプロキシ部６２１は、読取処理において、レスポンスメッセージからプロキシ装置１０５における待ち時間を読み取る（Ｓ７１１）。指示部６５１は、ローカルプロキシ部６２１によって読み取られた待ち時間を取得する（Ｓ７１３）。
【００７４】
ローカルプロキシ部６２１は、通信アプリケーション部６０１へレスポンスメッセージを引き渡す（Ｓ７１５）。ローカルプロキシ部６２１は、データ量算出処理において、リクエストメッセージのデータ量とレスポンスメッセージのデータ量との合計を算出する（Ｓ７１７）。指示部６５１は、ローカルプロキシ部６２１で算出されたデータ量の合計を取得する（Ｓ７１９）。指示部６５１は、生成処理において、アプリケーション層の転送率を算出する（Ｓ７２１）。具体的は、応答時間と待ち時間の差分時間を求めて、その差分時間で上述したデータの合計を除することによって、アプリケーション層の転送率を算出する。
【００７５】
指示部６５１は、判定処理において、アプリケーション層の転送率が所定の閾値を下回ったか否かを判定する（Ｓ７２３）。アプリケーション層の転送率が所定の閾値を下回ったと判定した場合には、指示部６５１は、切替部６５３に、アクセスポイント１０３の切り替えを指示する（Ｓ７２５）。アクセスポイント１０３の切り替えの指示を受けると、切替部６５３は、切り替え処理において、最も受信電波強度が大きいアクセスポイント１０３へ無線リンク先を切り替える（Ｓ７２７）。
【００７６】
次に、ローカルプロキシ部６２１による中継処理について説明する。図８及び図９に、中継処理フローの例を示す。受付部６２３は、待機して、通信アプリケーション部６０１からリクエストメッセージを受け付ける（Ｓ８０１）。受付部６２３は、受け付けたリクエストメッセージをリクエスト記憶部６２５に記憶させる（Ｓ８０３）。受付部６２３は、指示部６５１に応答時間の計測開始を命令する（Ｓ８０５）。データ量算出部６３５は、リクエスト記憶部６２５に記憶させたリクエストメッセージのデータ量を特定する（Ｓ８０７）。送信部６２７は、リクエスト記憶部６２５に記憶させたリクエストメッセージを、プロキシ装置１０５へ送信する（Ｓ８０９）。端子Ａを介して、図９に示したＳ９０１へ移る。
【００７７】
受信部６２９は、待機して、プロキシ装置１０５から上述したリクエストメッセージに対するレスポンスメッセージを受信する（Ｓ９０１）。受信部６２９は、受信したレスポンスメッセージをレスポンス記憶部６３１に記憶させる（Ｓ９０３）。受信部６２９は、指示部６５１に応答時間の計測終了を命令する（Ｓ９０５）。データ量算出部６３５は、レスポンス記憶部６３１に記憶させたレスポンスメッセージのデータ量を特定する（Ｓ９０７）。取得部６３７は、レスポンス記憶部６３１に記憶させたレスポンスメッセージのヘッダから、プロキシ装置１０５における待ち時間を読み取る（Ｓ９０９）。取得部６３７は、読み取った待ち時間を変数記憶部６３９に記憶させる。引渡部６３３は、レスポンス記憶部６３１に記憶させたレスポンスメッセージを通信アプリケーション部６０１へ引き渡す（Ｓ９１１）。データ量算出部６３５は、Ｓ８０７で特定されたリクエストメッセージのデータ量と、Ｓ９０７で特定されたレスポンスメッセージのデータ量とを合計する（Ｓ９１３）。データ量算出部６３５は、データ量の合計を変数記憶部６３９に記憶させる。そして、端子Ｂを介して図８に示したＳ８０１へ戻る。
【００７８】
次に、指示部６５１の構成について説明する。図１０に、指示部６５１の構成例を示す。指示部６５１は、計測部１００１、時間算出部１００３、生成部１００５及び判定部１００７を有している。計測部１００１は、リクエストメッセージに対するレスポンスメッセージの応答時間を計測する。時間算出部１００３は、応答時間からプロキシ装置１０５における待ち時間を引いた差分時間を算出する。生成部１００５は、プロキシ装置１０５において転送されるメッセージの転送状況を示す転送情報に基づいて、無線端末１０１とアクセスポイント１０３との間の無線リンクにおけるメッセージの疎通状況を示す無線区間情報を生成する。本実施の形態では、生成部１００５は、アクセスポイント１０３との無線区間におけるリクエストメッセージとレスポンスメッセージとの転送率を算出する。算出された転送率は、無線区間情報の例である。判定部１００７は、無線リンク先のアクセスポイント１０３を切り替えるか否かを判定する。
【００７９】
尚、上述した計測部１００１、時間算出部１００３、生成部１００５及び判定部１００７は、ハードウエア資源（例えば、図５７）と、以下で述べる処理をプロセッサに実行させるプログラムとを用いて実現される。
【００８０】
次に、指示部６５１による指示処理について説明する。図１１及び図１２に、指示処理フローの例を示す。指示部６５１が、待機して、ローカルプロキシ部６２１から計測開始の命令を受けると（Ｓ１１０１）、計測部１００１は、応答時間の計測を開始する（Ｓ１１０３）。
【００８１】
その後、指示部６５１が、待機して、ローカルプロキシ部６２１から計測終了の命令を受けると（Ｓ１１０５）、計測部１００１は、応答時間の計測を終了し、応答時間を特定する（Ｓ１１０７）。
【００８２】
時間算出部１００３は、プロキシ装置１０５における待ち時間を変数記憶部６３９から取得する（Ｓ１１０９）。時間算出部１００３は、応答時間から待ち時間を引いて、差分時間を算出する（Ｓ１１１１）。生成部１００５は、変数記憶部６３９からリクエストメッセージのデータ量とレスポンスメッセージのデータ量との合計を取得する（Ｓ１１１３）。生成部１００５は、取得したデータ量の合計をＳ１１１１で算出した差分時間で除して、転送率を算出する（Ｓ１１１５）。端子Ｃを介して、図１２に示したＳ１２０１に移る。
【００８３】
判定部１００７は、算出された転送率が所定基準を下回っているか否かを判定する（Ｓ１２０１）。算出された転送率が所定基準を下回っていると判定した場合には、判定部１００７は、切り替え先を指定せずに、切替部６５３へアクセスポイント１０３の切り替えを指示する（Ｓ１２０３）。そして、端子Ｄを介して、図１１に示したＳ１１０１に戻る。
【００８４】
一方、算出された転送率が所定基準を下回っていないと判定した場合には、端子Ｄを介して、図１１に示したＳ１１０１に戻る。
【００８５】
次に、切替部６５３による切り替え処理について説明する。切替部６５３は、アクセスポイント１０３の切り替えを指示されると、切り替え処理を起動する。図１３に、切り替え処理フローの例を示す。切替部６５３は、現在接続しているアクセスポイント１０３との接続を切断する（Ｓ１３０１）。このとき、切替部６５３は、ＡＰＩ部６１１を介して無線通信ドライバ部６０５へ無線リンクを解消させる。
【００８６】
切替部６５３は、アクセスポイント１０３をサーチする（Ｓ１３０３）。このとき、切替部６５３は、ＡＰＩ部６１１を介して無線通信ドライバ部６０５にアクセスポイント１０３を検出させる。無線ＬＡＮ制御部６０９は、検出したアクセスポイント１０３から受信した電波の強度を、ＡＰＩ部６１１を介して切替部６５３へ返す。
【００８７】
切替部６５３は、検出されたアクセスポイント１０３のうち、最も受信電波強度が高いアクセスポイント１０３を選定する（Ｓ１３０５）。そして、切替部６５３は、選定されたアクセスポイント１０３に接続する（Ｓ１３０７）。このとき、切替部６５３は、ＡＰＩ部６１１を介して無線通信ドライバ部６０５に、当該アクセスポイント１０３との無線リンクを形成させる。
【００８８】
次に、プロキシ装置１０５のモジュール構成について説明する。図１４に、プロキシ装置１０５のモジュール構成例を示す。プロキシ装置１０５は、メッセージを中継するための転送部１４０１を有している。転送部１４０１は、無線端末１０１から受信したリクエストメッセージをサーバ１０７へ転送するリクエスト転送部１４０３と、サーバ１０７から受信したレスポンスメッセージを無線端末１０１へ転送するレスポンス転送部１４１１とを有している。
【００８９】
リクエスト転送部１４０３は、リクエスト受信部１４０５、リクエスト記憶部１４０７及びリクエスト送信部１４０９を有している。リクエスト受信部１４０５は、無線端末１０１からリクエストメッセージを受信する。リクエスト記憶部１４０７は、受信したリクエストメッセージを一時的に記憶する。リクエスト送信部１４０９は、リクエストメッセージの宛先へ当該リクエストメッセージを送信する。
【００９０】
レスポンス転送部１４１１は、レスポンス受信部１４１３、レスポンス記憶部１４１５及びレスポンス送信部１４１７を有している。レスポンス受信部１４１３は、リクエストメッセージの宛先から当該リクエストメッセージに対するレスポンスメッセージを受信する。レスポンス記憶部１４１５は、受信したレスポンスメッセージを一時的に記憶する。レスポンス送信部１４１７は、レスポンスメッセージをリクエストメッセージの送信元である無線端末１０１へ送信する。
【００９１】
プロキシ装置１０５は、更に、生成部１４２１及び付加部１４２３を有している。生成部１４２１は、転送部１４０１において転送されるメッセージの転送状況を示す転送情報を生成する。本実施の形態では、生成部１４２１は、リクエストメッセージを転送した時点からレスポンスメッセージを転送する時点までの待ち時間を計測する。計測された待ち時間は、転送情報の例である。尚、レスポンスメッセージを受信する処理とレスポンスメッセージを送信する処理は間を置かずに行われるので、レスポンスメッセージを受信した時点はレスポンスメッセージを転送する時点に相当する。付加部１４２３は、待ち時間を示すヘッダを、レスポンスメッセージに付加する。
【００９２】
尚、上述した転送部１４０１、リクエスト転送部１４０３、リクエスト受信部１４０５、リクエスト送信部１４０９、レスポンス転送部１４１１、レスポンス受信部１４１３、レスポンス送信部１４１７、生成部１４２１及び付加部１４２３は、ハードウエア資源（例えば、図５８又は図５９）と、以下で述べる処理をプロセッサに実行させるプログラムとを用いて実現される。上述したリクエスト記憶部１４０７及びレスポンス記憶部１４１５は、ハードウエア資源（例えば、図５８又は図５９）を用いて実現される。
【００９３】
次に、プロキシ装置１０５のシーケンスについて説明する。図１５に、プロキシ装置１０５のシーケンス例を示す。転送部１４０１は、リクエスト受信処理において、リクエストメッセージを受信する（Ｓ１５０１）。転送部１４０１は、生成部１４２１に待ち時間の計測開始を命令する（Ｓ１５０３）。転送部１４０１は、リクエスト送信処理において、Ｓ１５０１において受信したリクエストメッセージをリクエストメッセージの宛先へ送信する（Ｓ１５０５）。
【００９４】
その後、転送部１４０１は、レスポンス受信処理において、上述したリクエストメッセージに対するレスポンスメッセージを受信する（Ｓ１５０７）。転送部１４０１は、生成部１４２１に待ち時間の計測終了を命令する（Ｓ１５０９）。
【００９５】
次に、付加部１４２３は、生成部１４２１において計測された待ち時間を取得する（Ｓ１５１１）。付加部１４２３は、付加処理において、レスポンスメッセージに待ち時間を示すヘッダを付加する（Ｓ１５１３）。転送部１４０１は、レスポンス送信処理において、待ち時間を示すヘッダが付加されたレスポンスメッセージを送信する（Ｓ１５１５）。
【００９６】
続いて、プロキシ装置１０５のメイン処理について説明する。図１６に、プロキシ装置１０５のメイン処理フローの例を示す。リクエスト受信部１４０５は、待機して、無線端末１０１から送信されたリクエストメッセージを受信する（Ｓ１６０１）。このとき、リクエスト受信部１４０５は、受信したリクエストメッセージをリクエスト記憶部１４０７に記憶させる。リクエスト受信部１４０５は、生成部１４２１に待ち時間の計測開始を命令する（Ｓ１６０３）。リクエスト送信部１４０９は、リクエスト記憶部１４０７に記憶されたリクエストメッセージを、当該リクエストメッセージの宛先に送信する（Ｓ１６０５）。この例では、リクエスト送信部１４０９は、サーバ１０７にリクエストメッセージを送信する。
【００９７】
レスポンス受信部１４１３は、待機して、サーバ１０７から上述したリクエストメッセージに対するレスポンスメッセージを受信する（Ｓ１６０７）。このとき、レスポンス受信部１４１３は、受信したレスポンスメッセージをレスポンス記憶部１４１５に記憶させる。そして、レスポンス受信部１４１３は、生成部１４２１に待ち時間の計測終了を命令する（Ｓ１６０９）。
【００９８】
付加部１４２３は、生成部１４２１から待ち時間を取得し（Ｓ１６１１）、レスポンスメッセージに待ち時間を示すヘッダ（ヘッダ名：「Ｘ−Ｒｅｍｏｔｅ−Ｔｉｍｅ）を付加する（Ｓ１６１３）。そして、レスポンス送信部１４１７は、待ち時間を示すヘッダが付加されたレスポンスメッセージを、リクエストメッセージの送信元である無線端末１０１のローカルプロキシ部６２１へ送信する（Ｓ１６１５）。そして、Ｓ１６０１に示した処理に戻る。
【００９９】
次に、生成部１４２１による生成処理について説明する。図１７に、生成処理フローの例を示す。生成部１４２１は、待機して、リクエスト受信部１４０５から計測開始の命令を受けると（Ｓ１７０１）、待ち時間の計測を開始する（Ｓ１７０３）。
【０１００】
その後、生成部１４２１は、待機して、レスポンス受信部１４１３から計測終了の命令を受けると（Ｓ１７０５）、待ち時間の計測を終了し、待ち時間を特定する（Ｓ１７０７）。生成部１４２１は、特定した待ち時間を付加部１４２３へ渡す（Ｓ１７０９）。そして、Ｓ１７０１の処理に戻って、上述した処理を繰り返す。
【０１０１】
本実施の形態によれば、適切なタイミングで無線リンク先のアクセスポイント１０３を切り替えて、無線区間におけるアプリケーション層のメッセージを疎通させ、データ通信を行うアプリケーション部の動作を安定させることができる。具体的には、リクエストメッセージとレスポンスメッセージとを疎通させ、データ通信を行うアプリケーション部の動作を安定させることができる。
【０１０２】
また、ローカルプロキシ部６２１を設けたので、アプリケーションプログラムの処理において、リクエストメッセージを送信した時点及びレスポンスメッセージを受信した時点を特定しなくて済む。
【０１０３】
また、プロキシ装置１０５から、待ち時間を示すデータが付加されたレスポンスメッセージを無線端末１０１へ転送するので、プロキシ装置１０５側における待ち時間（リクエストメッセージを転送した時点からレスポンスメッセージを転送する時点までの間隔）を無線端末１０１へ通知することができる。
【０１０４】
［実施の形態２］
上述した実施の形態では、切り替え先の候補が複数ある場合に、受信電波強度が大きい方のアクセスポイント１０３を切り替え先に選定する例について説明した。本実施の形態では、同様に切り替え先の候補が複数ある場合に、そのアクセスポイント１０３との無線リンクを介してリクエストメッセージを送信した無線端末１０１の数が少ない方のアクセスポイント１０３を切り替え先に選定する例について説明する。
【０１０５】
図１８に、実施の形態２において転送されるメッセージの例を示す。図１８の見方は、図３の場合と同様である。
【０１０６】
プロキシ装置１０５が無線端末１０１から受信したリクエストメッセージには、無線端末１０１のＭＡＣアドレスを示すヘッダとアクセスポイント１０３ｂのＭＡＣアドレスを示すヘッダとが付加されている。
【０１０７】
ヘッダ名「Ｘ−Ｔｅｒｍｉｎａｌ−ＩＤ」は、送信元の無線端末１０１のＭＡＣアドレスのヘッダであることを示している。無線端末１０１のＭＡＣアドレスを、説明の便宜上「ｔｅｒｍ−ｍａｃ＃１」と示している。「ｔｅｒｍ−ｍａｃ＃１」で示されている部分には、実際にはアクセスポイント１０３ｂの具体的なＭＡＣアドレスが設定される。このヘッダは、拡張ヘッダである。
【０１０８】
ヘッダ名「Ｘ−Ｃｏｎｎｅｃｔｅｄ−ＡＰ」は、送信元の無線端末１０１が接続しているアクセスポイント１０３のＭＡＣアドレスのヘッダであることを示している。アクセスポイント１０３ｂのＭＡＣアドレスを、説明の便宜上「ａｐ−ｍａｃ＃２」と示している。「ａｐ−ｍａｃ＃２」で示されている部分には、実際にはアクセスポイント１０３ｂの具体的なＭＡＣアドレスが設定される。このヘッダも、拡張ヘッダである。
【０１０９】
プロキシ装置１０５は、これらのヘッダによって、このリクエストメッセージを送信した無線端末１０１のＭＡＣアドレスと、当該無線端末１０１が無線リンクしているアクセスポイント１０３のＭＡＣアドレスとを得る。
【０１１０】
プロキシ装置１０５からサーバ１０７へ送られるリクエストメッセージは、図３の場合と同様である。サーバ１０７からプロキシ装置１０５へ送られるレスポンスメッセージも、図３の場合と同様である。
【０１１１】
プロキシ装置１０５から無線端末１０１へ送られるレスポンスメッセージには、各アクセスポイント１０３を介してリクエストメッセージを送信した無線端末１０１の数を示すヘッダが含まれている。ヘッダ名「Ｘ−ＡＰ−Ｔｅｒｍｉｎａｌｓ」は、アクセスポイント１０３を介してリクエストメッセージを送信した無線端末１０１の数を表すヘッダであることを示している。この例では、アクセスポイント１０３のＭＡＣに無線端末１０１の数が対応付けられている。「ａｐ−ｍａｃ＃１」で示されている部分には、実際にはアクセスポイント１０３ａの具体的なＭＡＣアドレスが設定される。このヘッダは、「ａｐ−ｍａｃ＃１」に相当するＭＡＣアドレスで特定されるアクセスポイント１０３ａに接続した「１０」台の無線端末１０１がリクエストメッセージを送信したことを示している。同様に、「ａｐ−ｍａｃ＃２」で示されている部分には、実際にはアクセスポイント１０３ｂの具体的なＭＡＣアドレスが設定される。このヘッダは、「ａｐ−ｍａｃ＃２」に相当するＭＡＣアドレスで特定されるアクセスポイント１０３ｂに接続した「２０」台の無線端末１０１がリクエストメッセージを送信したことを示している。同様に、「ａｐ−ｍａｃ＃３」で示されている部分には、実際にはアクセスポイント１０３ｃの具体的なＭＡＣアドレスが設定される。このヘッダは、「ａｐ−ｍａｃ＃３」に相当するＭＡＣアドレスで特定されるアクセスポイント１０３ｃに接続した「５」台の無線端末１０１がリクエストメッセージを送信したことを示している。このヘッダも、拡張ヘッダである。
【０１１２】
本実施の形態における無線端末１０１は、各アクセスポイント１０３を介してリクエストメッセージを送信した無線端末１０１の数を得て、当該無線端末１０１の数が少ない方のアクセスポイント１０３に接続するようにする。接続した無線端末１０１の数が少なければ、そのアクセスポイント１０３における処理負荷が低いと想定される。
【０１１３】
次に、本実施の形態における無線端末１０１のモジュール構成について説明する。図１９に、実施の形態２に係る無線端末１０１のモジュール構成例を示す。実施の形態２に係る無線端末１０１は、図６に示したモジュール構成に加えて、取得部１９０１及び付加部１９０３を有する。取得部１９０１は、ＡＰＩ部６１１を介して無線通信ドライバ部６０５から無線端末１０１自身のＭＡＣアドレスと、無線リンク先のアクセスポイント１０３のＭＡＣアドレスとを取得する。付加部１９０３は、無線端末１０１のＭＡＣアドレスを示すヘッダと無線リンク先のアクセスポイント１０３のＭＡＣアドレスを示すヘッダとをリクエストメッセージに付加する。
【０１１４】
次に、実施の形態２に係る無線端末１０１におけるシーケンスについて説明する。図２０に、実施の形態２に係る無線端末１０１におけるシーケンス例を示す。図７に示したＳ７０１と同様にプロキシ装置１０５からレスポンスメッセージを受信すると（Ｓ７０１）、ローカルプロキシ部６２１は、取得処理において、無線通信ドライバ部６０５から無線端末１０１自身のＭＡＣアドレス及びアクセスポイント１０３のＭＡＣアドレスを取得する（Ｓ２００１）。ローカルプロキシ部６２１は、付加処理において、リクエストメッセージに無線端末１０１自身のＭＡＣアドレスを示すヘッダ及びアクセスポイント１０３のＭＡＣアドレスを示すヘッダを付加する（Ｓ２００３）。
【０１１５】
Ｓ７０３乃至Ｓ７２３のステップは、図７の場合と同様である。上述したように、Ｓ７０７で受信されたレスポンスメッセージのヘッダには、アクセスポイント１０３毎に当該アクセスポイント１０３を介してリクエストメッセージを送信した無線端末１０１の数が付加されている。アプリケーション層の転送率が所定の閾値を下回ったと判定した場合には、指示部６５１は、ローカルプロキシ部６２１より、アクセスポイント１０３毎に当該アクセスポイント１０３を介してリクエストメッセージを送信した無線端末１０１の数を取得する（Ｓ２００５）。指示部６５１は、切替部６５３に上述した無線端末１０１の数を渡して、アクセスポイント１０３の切り替えを指示する（Ｓ２００７）。アクセスポイント１０３の切り替えの指示を受けると、切替部６５３は、切り替え処理において、受信電波強度が基準を超えるアクセスポイント１０３のうち、上述した無線端末１０１の数が最も少ないアクセスポイント１０３へ切り替える（Ｓ２００９）。
【０１１６】
次に、実施の形態２に係る中継処理について説明する。図２１及び図２２に、実施の形態２に係る中継処理フローの例を示す。Ｓ８０１乃至Ｓ８０７における処理は、図８の場合と同様である。取得部１９０１は、ＡＰＩ部６１１を介して無線通信ドライバ部６０５から無線端末１０１自身のＭＡＣアドレスとアクセスポイント１０３のＭＡＣアドレスとを取得する（Ｓ２１０１）。付加部１９０３は、リクエストメッセージに、無線端末１０１自身のＭＡＣアドレスを示すヘッダ（ヘッダ名：「Ｘ−Ｔｅｒｍｉｎａｌ−ＩＤ」）とアクセスポイント１０３のＭＡＣアドレスを示すヘッダ（ヘッダ名：「Ｘ−Ｃｏｎｎｅｃｔｅｄ−ＡＰ」）とを付加する（Ｓ２１０３）。Ｓ８０９における処理は、図８の場合と同様である。端子Ｅを介して、図２２に示したＳ９０１へ移る。
【０１１７】
Ｓ９０１乃至Ｓ９０９における処理は、図９の場合と同様である。取得部６３７は、レスポンスメッセージのヘッダから、各アクセスポイント１０３について無線端末１０１の数を読み取る（Ｓ２２０１）。取得部６３７は、読み取ったアクセスポイント１０３毎の無線端末数を変数記憶部６３９に記憶させる。Ｓ９１１及びＳ９１３における処理は、図９の場合と同様である。Ｓ９１３の処理を終えると、端子Ｆを介して図２１に示したＳ８０１へ戻る。
【０１１８】
次に、実施の形態２に係る指示処理について説明する。実施の形態２に係る指示処理では、図１１に示したＳ１１０１乃至Ｓ１１１５に示した処理を行う。Ｓ１１１５に示した処理を終えると、端子Ｃを介して図２３に示したＳ１２０１の処理に移る。Ｓ１２０１における処理は、図１２の場合と同様である。
【０１１９】
指示部６５１は、変数記憶部６３９からアクセスポイント１０３毎の無線端末数を取得する（Ｓ２３０１）。指示部６５１は、切替部６５３にアクセスポイント１０３毎の無線端末数を渡して、アクセスポイント１０３の切り替えを指示する（Ｓ２３０３）。Ｓ２３０３の処理を終えると、端子Ｄを介して図１１に示したＳ１１０１へ戻る。
【０１２０】
次に、実施の形態２に係る切り替え処理について説明する。図２４に、実施の形態２に係る切り替え処理フローの例を示す。Ｓ１３０１及びＳ１３０３における処理は、図１３の場合と同様である。
【０１２１】
切替部６５３は、Ｓ１３０３において検出されたアクセスポイント１０３のうち、受信電波強度が所定の閾値を超えるアクセスポイント１０３を選び出す（Ｓ２４０１）。切替部６５３は、選び出されたアクセスポイント１０３のうち、指示部６５１から受けた無線端末数のうち最も少ない無線端末数に対応するアクセスポイント１０３を選定する（Ｓ２４０３）。切替部６５３は、選定されたアクセスポイント１０３に接続する（Ｓ２４０５）。そして、切り替え処理を終える。
【０１２２】
次に、実施の形態２におけるプロキシ装置１０５のモジュール構成について説明する。図２５に、実施の形態２に係るプロキシ装置１０５のモジュール構成例を示す。実施の形態２に係るプロキシ装置１０５は、図１４に示したモジュール構成に加えて、登録部２５２１、履歴記憶部２５２３、計数部２５２５及びアクセスポイント管理部２５２７を有する。登録部２５２１は、リクエスト記憶部１４０７に記憶されているリクエストメッセージから、当該リクエストメッセージを送信した無線端末１０１のＭＡＣアドレスと当該無線端末１０１が接続していたアクセスポイント１０３のＭＡＣアドレスとを読み出し、登録日時を付して履歴テーブルに登録する。履歴記憶部２５２３は、履歴テーブルを記憶する。計数部２５２５は、履歴テーブルに基づいて、ＬＡＮを介してプロキシ装置１０５に接続しているアクセスポイント１０３の各々について、所定の期間内に当該アクセスポイント１０３を介してリクエストメッセージを送信した無線端末１０１の数を計数する。アクセスポイント管理部２５２７は、ＬＡＮを介してプロキシ装置１０５に接続しているアクセスポイント１０３に関するデータ（例えば、アクセスポイント１０３のＭＡＣアドレス）を管理する。
【０１２３】
次に、履歴テーブルについて説明する。図２６に、履歴テーブルの例を示す。レコードは、無線端末１０１のＭＡＣアドレスを設定するためのフィールドと、アクセスポイント１０３のＭＡＣアドレスを設定するためのフィールドと、登録日時を設定するためのフィールドとを有している。
【０１２４】
この例における第１レコードは、２０１３年１２月１日の１０時０分０秒の時点で、「ｔｅｒｍ−ｍａｃ＃１」に相当するＭＡＣアドレスで特定される無線端末１０１が、「ａｐ−ｍａｃ＃１」に相当するＭＡＣアドレスで特定されるアクセスポイント１０３ａを介してリクエストメッセージを送信したことを示している。
【０１２５】
同様に、第２レコードは、２０１３年１２月１日の１０時１分０秒の時点で、「ｔｅｒｍ−ｍａｃ＃２」に相当するＭＡＣアドレスで特定される無線端末１０１が、「ａｐ−ｍａｃ＃１」に相当するＭＡＣアドレスで特定されるアクセスポイント１０３ａを介してリクエストメッセージを送信したことを示している。
【０１２６】
同様に、第３レコードは、２０１３年１２月１日の１０時２分０秒の時点で、「ｔｅｒｍ−ｍａｃ＃３」に相当するＭＡＣアドレスで特定される無線端末１０１が、「ａｐ−ｍａｃ＃２」に相当するＭＡＣアドレスで特定されるアクセスポイント１０３ｂを介してリクエストメッセージを送信したことを示している。
【０１２７】
図２７に、実施の形態２に係るプロキシ装置１０５のシーケンス例を示す。Ｓ１５０１及びＳ１５０３のステップは、図１５の場合と同様である。
【０１２８】
上述したように、Ｓ１５０１で受信されたリクエストメッセージには、無線端末１０１のＭＡＣアドレスを示すヘッダ及びアクセスポイント１０３のＭＡＣアドレスを示すヘッダが付加されている。登録部２５２１は、リクエストメッセージから読み取った無線端末１０１のＭＡＣアドレスとアクセスポイント１０３のＭＡＣアドレスとを取得する（Ｓ２７０１）。登録部２５２１は、登録処理によって、無線端末１０１のＭＡＣアドレスとアクセスポイント１０３のＭＡＣアドレスとに、登録日時を付して履歴記憶部２５２３における履歴テーブルに登録する（Ｓ２７０３）。
【０１２９】
Ｓ１５０５乃至Ｓ１５０９のステップは、図１５の場合と同様である。計数部２５２５は、計数処理において、アクセスポイント１０３毎に、当該アクセスポイント１０３を介してリクエストメッセージを送信した無線端末１０１の数を計数する（Ｓ２７０５）。付加部１４２３は、計数部２５２５から上述した無線端末数を取得し（Ｓ２７０７）、更に、生成部１４２１から待ち時間を取得する（Ｓ２７０９）。そして、付加部１４２３は、付加処理において、レスポンスメッセージに待ち時間を示すヘッダ及び無線端末数を示すヘッダを付加する（Ｓ２７１１）。Ｓ１５１５のステップは、図１５の場合と同様である。
【０１３０】
次に、実施の形態２に係るプロキシ装置１０５のメイン処理について説明する。図２８及び図２９に、実施の形態２に係るプロキシ装置１０５のメイン処理フローの例を示す。Ｓ１６０１及びＳ１６０３における処理は、図１６の場合と同様である。
【０１３１】
登録部２５２１は、リクエストメッセージから無線端末１０１のＭＡＣアドレスとアクセスポイント１０３のＭＡＣアドレスとを読み取る（Ｓ２８０１）。登録部２５２１は、無線端末１０１のＭＡＣアドレスとアクセスポイント１０３のＭＡＣアドレスとに、登録日時を付して履歴記憶部２５２３に記憶されている履歴テーブルに登録する（Ｓ２８０３）。
【０１３２】
Ｓ１６０５における処理は、図１６の場合と同様である。端子Ｇを介して、図２９に示したＳ１６０７に移る。
【０１３３】
Ｓ１６０７及びＳ１６０９における処理は、図１６の場合と同様である。計数部２５２５は、計数処理を実行する（Ｓ２９０１）。計数処理によって、アクセスポイント１０３毎に、所定期間内に当該アクセスポイント１０３を介してリクエストメッセージを送信した無線端末１０１の数がカウントされる。
【０１３４】
次に、計数処理について説明する。図３０に、計数処理フローの例を示す。計数部２５２５は、アクセスポイント管理部２５２７で管理されているアクセスポイント１０３のＭＡＣアドレスの中から、アクセスポイント１０３のＭＡＣアドレスを１つ特定する（Ｓ３００１）。
【０１３５】
計数部２５２５は、履歴記憶部２５２３に記憶されている履歴テーブルに含まれるレコードのうち、レコードを１つ特定する（Ｓ３００３）。計数部２５２５は、当該レコードにおける登録日時が所定期間内に含まれるか否かを判定する（Ｓ３００５）。当該レコードにおける登録日時が所定期間内に含まれると判定した場合には、計数部２５２５は、当該レコードにおけるアクセスポイント１０３のＭＡＣアドレスが、Ｓ３００１において特定されたアクセスポイント１０３のＭＡＣアドレスと一致するか否かを判定する（Ｓ３００７）。当該レコードにおけるアクセスポイント１０３のＭＡＣアドレスが、Ｓ３００１において特定されたアクセスポイント１０３のＭＡＣアドレスと一致すると判定した場合には、計数部２５２５は、当該アクセスポイント１０３を介してリクエストメッセージを送信した無線端末１０１の数をインクリメント（１加算）する（Ｓ３００９）。当該無線端末１０１の数は、計数処理における内部変数である。そして、Ｓ３０１１の処理に移る。
【０１３６】
一方、Ｓ３００５において、当該レコードにおける登録日時が所定期間内に含まれないと判定した場合には、無線端末１０１の数をインクリメントせずに、Ｓ３０１１の処理に移る。
【０１３７】
また、当該レコードにおけるアクセスポイント１０３のＭＡＣアドレスが、Ｓ３００１において特定されたアクセスポイント１０３のＭＡＣアドレスと一致しないと判定した場合には、無線端末１０１の数をインクリメントせずに、Ｓ３０１１の処理に移る。
【０１３８】
計数部２５２５は、Ｓ３００３において未特定のレコードがあるか否かを判定する（Ｓ３０１１）。未特定のレコードがあると判定した場合には、Ｓ３００３に示した処理に戻って、上述した処理を繰り返す。
【０１３９】
一方、未特定のレコードがないと判定した場合には、計数部２５２５は、Ｓ３００１において未特定のアクセスポイント１０３のＭＡＣアドレスがあるか否かを判定する（Ｓ３０１３）。未特定のアクセスポイント１０３のＭＡＣアドレスがあると判定した場合には、Ｓ３００１に示した処理に戻って、上述した処理を繰り返す。
【０１４０】
未特定のアクセスポイント１０３のＭＡＣアドレスがないと判定した場合には、計数処理を終えて、図２９に示したＳ１６１１の処理に移る。
【０１４１】
図２９の説明に戻る。Ｓ１６１１における処理は、図１６の場合と同様である。付加部１４２３は、レスポンスメッセージに待ち時間を示すヘッダ（ヘッダ名：「Ｘ−Ｒｅｍｏｔｅ−Ｔｉｍｅ）とアクセスポイント１０３毎の無線端末数を示すヘッダ（ヘッダ名：「Ｘ−ＡＰ−Ｔｅｒｍｉｎａｌｓ」）とを付加する（Ｓ２９０３）。
【０１４２】
レスポンス送信部１４１７は、上述したヘッダが付加されたレスポンスメッセージを、リクエストメッセージの送信元である無線端末１０１のローカルプロキシ部６２１へ送信する（Ｓ１６１５）。そして、端子Ｈを介して、図２８のＳ１６０１に示した処理に戻る。
【０１４３】
本実施の形態によれば、無線端末１０１における受信強度が所定基準を超えた電波を送出している２つ以上のアクセスポイント１０３について、夫々のアクセスポイント１０３との無線リンクを介してリクエストメッセージを送信した無線端末１０１の数を比較し、無線端末１０１の数が少ない方のアクセスポイント１０３を次の無線リンク先に選定する。これによって、切り替え後に処理能力に余裕があると想定されるアクセスポイント１０３によって円滑にデータ通信が行われると期待できる。
【０１４４】
［実施の形態３］
本実施の形態では、切り替え先の候補が複数ある場合に、複数のアクセスポイント１０３のうち、所定時間内に転送されたメッセージのデータ量の総計が小さい方のアクセスポイント１０３を切り替え先に選定する例について説明する。
【０１４５】
図３１に、実施の形態３において転送されるメッセージの例を示す。図３１の見方は、図３の場合及び図１８の場合と同様である。
【０１４６】
無線端末１０１からプロキシ装置１０５へ送られるリクエストメッセージは、図１８と同様である。プロキシ装置１０５からサーバ１０７へ送られるリクエストメッセージも、図１８と同様である。サーバ１０７からプロキシ装置１０５へ送られるレスポンスメッセージも、図１８と同様である。
【０１４７】
プロキシ装置１０５から無線端末１０１へ送られるレスポンスメッセージには、アクセスポイント１０３毎に当該アクセスポイント１０３を介して転送されたアプリケーション層のメッセージについてのデータ量の総計（以下、メッセージのデータ量の総計という。）を示すヘッダが含まれている。ヘッダ名「Ｘ−ＡＰ−Ｔｏｔａｌ」は、アクセスポイント１０３におけるメッセージのデータ量の総計のヘッダであることを示している。この例では、アクセスポイント１０３のＭＡＣアドレスにメッセージのデータ量の総計が対応付けられている。「ａｐ−ｍａｃ＃１」に相当するＭＡＣアドレスで特定されるアクセスポイント１０３ａにおけるメッセージのデータ量の総計は、９０ＧＢであることを示している。同様に、「ａｐ−ｍａｃ＃２」に相当するＭＡＣアドレスで特定されるアクセスポイント１０３ｂにおけるメッセージのデータ量の総計は、１３０ＧＢであることを示している。同様に、「ａｐ−ｍａｃ＃３」に相当するＭＡＣアドレスで特定されるアクセスポイント１０３ｃにおけるメッセージのデータ量の総計は、１００ＧＢであることを示している。このヘッダは、拡張ヘッダである。
【０１４８】
無線端末１０１は、各アクセスポイント１０３におけるメッセージのデータ量の総計を得て、メッセージのデータ量の総計が小さい方のアクセスポイント１０３を無線リンク先に選定する。メッセージのデータ量の総計が小さければ、そのアクセスポイント１０３における処理負荷が低いと想定される。
【０１４９】
実施の形態３に係る無線端末１０１のモジュール構成例は、図１９に示した通りである。
【０１５０】
次に、実施の形態３に係る無線端末１０１におけるシーケンスについて説明する。図３２に、実施の形態３に係る無線端末１０１におけるシーケンス例を示す。Ｓ７０１乃至Ｓ７２３に示したステップは、図２０の場合と同様である。
【０１５１】
上述したように、Ｓ７０７で受信されたレスポンスメッセージには、各アクセスポイント１０３におけるメッセージのデータ量の総計を示すヘッダが付加されている。アプリケーション層の転送率が所定の閾値を下回ったと判定した場合には、指示部６５１は、ローカルプロキシ部６２１より、各アクセスポイント１０３におけるメッセージのデータ量の総計を取得する（Ｓ３２０１）。
【０１５２】
指示部６５１は、切替部６５３に上述したメッセージのデータ量の総計を渡して、アクセスポイント１０３の切り替えを指示する（Ｓ３２０３）。アクセスポイント１０３の切り替えの指示を受けると、切替部６５３は、切り替え処理において、受信電波強度が基準を超えるアクセスポイント１０３のうち、メッセージのデータ量の総計が最も小さいアクセスポイント１０３へ切り替える（Ｓ３２０５）。
【０１５３】
図３３に、実施の形態３に係る中継処理フローの例を示す。本実施の形態に係る中継処理では、実施の形態２と同様に、図２１に示したＳ８０１乃至Ｓ８０９に示した処理を実行する。そして、本実施の形態に係る中継処理では、実施の形態２で説明した図２２に示した処理に代えて、図３３に示した処理を実行する。つまり、図２１に示した端子Ｅを介して、図３３に示したＳ９０１の処理に移る。
【０１５４】
Ｓ９０１乃至Ｓ９０９に示した処理は、図９の場合及び図２２の場合と同様である。
【０１５５】
取得部６３７は、レスポンスメッセージから各アクセスポイント１０３におけるメッセージのデータ量の総計を読み取る（Ｓ３３０１）。取得部６３７は、読み取ったアクセスポイント１０３毎にメッセージのデータ量の総計を変数記憶部６３９に記憶させる。
【０１５６】
Ｓ９１１及びＳ９１３における処理は、図９及び図２２の場合と同様である。Ｓ９１３の処理を終えると、端子Ｆを介して図２１に示したＳ８０１へ戻る。
【０１５７】
図３４に、実施の形態３に係る指示処理フローの例を示す。本実施の形態に係る指示処理では、実施の形態２と同様に、図１１に示したＳ１１０１乃至Ｓ１１１５に示した処理を実行する。そして、本実施の形態に係る指示処理では、実施の形態２で説明した図２３に示した処理に代えて、図３４に示した処理を実行する。つまり、図１１に示した端子Ｃを介して、図３４に示したＳ１２０１の処理に移る。
【０１５８】
Ｓ１２０１に示した処理は、図１２の場合及び図２３の場合と同様である。指示部６５１は、変数記憶部６３９から、各アクセスポイント１０３についてメッセージのデータ量の総計を取得する（Ｓ３４０１）。指示部６５１は、切替部６５３に、各アクセスポイント１０３におけるメッセージのデータ量の総計を渡して、アクセスポイント１０３の切り替えを指示する（Ｓ３４０３）。Ｓ３４０３の処理を終えると、端子Ｄを介して図１１に示したＳ１１０１へ戻る。
【０１５９】
図３５に、実施の形態３に係る切り替え処理フローの例を示す。Ｓ１３０１及びＳ１３０３における処理は、図１３の場合及び図２４の場合と同様である。また、Ｓ２４０１における処理は、図２４の場合と同様である。
【０１６０】
切替部６５３は、Ｓ２４０１において選び出されたアクセスポイント１０３のうち、メッセージのデータ量の総計が最も小さいアクセスポイント１０３を選定する（Ｓ３５０１）。そして、切替部６５３は、選定されたアクセスポイント１０３に接続する（Ｓ３５０３）。そして、切り替え処理を終える。
【０１６１】
本実施の形態におけるプロキシ装置１０５のモジュール構成について説明する。図３６に、実施の形態３に係るプロキシ装置１０５のモジュール構成例を示す。実施の形態３に係るプロキシ装置１０５は、図２５に示したモジュール構成に加えて、データ量特定部３６０１を有する。また、図２５に示した計数部２５２５に代えて、総計部３６０３を有する。データ量特定部３６０１は、リクエストメッセージのデータ量とレスポンスメッセージのデータ量との合計を特定する。総計部３６０３は、ＬＡＮを介してプロキシ装置１０５に接続しているアクセスポイント１０３を介して、所定期間に転送されたメッセージのデータ量の総計を算出する。
【０１６２】
次に、実施の形態３に係る履歴テーブルについて説明する。図３７に、実施の形態３に係る履歴テーブルの例を示す。レコードは、無線端末１０１のＭＡＣアドレスを設定するためのフィールドと、アクセスポイント１０３のＭＡＣアドレスを設定するためのフィールドと、アクセスポイント１０３のデータ量の合計を設定するためのフィールドと、登録日時を設定するためのフィールドとを有している。
【０１６３】
データ量の合計を設定するためのフィールドには、リクエストメッセージのデータ量とそれに対するレスポンスメッセージのデータ量との合計が設定される。
【０１６４】
この例における第１レコードは、２０１３年１２月１日の１０時０分０秒の時点で、「ｔｅｒｍ−ｍａｃ＃１」に相当するＭＡＣアドレスで特定される無線端末１０１が、「ａｐ−ｍａｃ＃１」に相当するＭＡＣアドレスで特定されるアクセスポイント１０３ａを介してリクエストメッセージとレスポンスメッセージとを交わし、リクエストメッセージとレスポンスメッセージとのデータ量の合計が「１００ＫＢ」であったことを示している。
【０１６５】
同様に、第２レコードは、２０１３年１２月１日の１０時１分０秒の時点で、「ｔｅｒｍ−ｍａｃ＃２」に相当するＭＡＣアドレスで特定される無線端末１０１が、「ａｐ−ｍａｃ＃１」に相当するＭＡＣアドレスで特定されるアクセスポイント１０３ａを介してリクエストメッセージとレスポンスメッセージとを交わし、リクエストメッセージとレスポンスメッセージとのデータ量の合計が「２００ＫＢ」であったことを示している。
【０１６６】
同様に、第３レコードは、２０１３年１２月１日の１０時２分０秒の時点で、「ｔｅｒｍ−ｍａｃ＃３」に相当するＭＡＣアドレスで特定される無線端末１０１が、「ａｐ−ｍａｃ＃２」に相当するＭＡＣアドレスで特定されるアクセスポイント１０３ｂを介してリクエストメッセージとレスポンスメッセージとを交わし、リクエストメッセージとレスポンスメッセージとのデータ量の合計が「３００ＫＢ」であったことを示している。
【０１６７】
図３８及び図３９に、実施の形態３に係るプロキシ装置１０５のシーケンス例を示す。Ｓ１５０１及びＳ１５０３のステップは、図１５の場合と同様である。
【０１６８】
データ量特定部３６０１は、第１データ量特定処理において、リクエストメッセージのデータ量を特定する（Ｓ３８０１）。
【０１６９】
Ｓ２７０１乃至Ｓ１５０９のステップは、図２７の場合と同様である。データ量特定部３６０１は、第２データ量特定処理において、レスポンスメッセージのデータ量を特定する（Ｓ３８０３）。データ量特定部３６０１は、データ量算出処理において、リクエストメッセージのデータ量とレスポンスメッセージのデータ量とを合計する（Ｓ３８０５）。登録部２５２１は、データ量の合計を取得し（Ｓ３８０７）、登録処理において、無線端末１０１のＭＡＣアドレス、アクセスポイント１０３のＭＡＣアドレス及びデータ量の合計に、登録日時を付して履歴記憶部２５２３に記憶されている履歴テーブルに登録する（Ｓ３８０９）。シーケンスは、端子Ｉ及び端子Ｊを介して図３９へ続く。
【０１７０】
図３９に示すように、総計部３６０３は、総計処理において、各アクセスポイント１０３におけるメッセージのデータ量の総計を算出する（Ｓ３９０１）。付加部１４２３は、総計部３６０３から上述したメッセージのデータ量の総計を取得し（Ｓ３９０３）、生成部１４２１から待ち時間を取得する（Ｓ３９０５）。そして、付加部１４２３は、付加処理において、待ち時間を示すヘッダ及びメッセージのデータ量の総計を示すヘッダをレスポンスメッセージに付加する（Ｓ３９０７）。
【０１７１】
次に、実施の形態３に係るプロキシ装置１０５のメイン処理について説明する。図４０及び図４１に、実施の形態３に係るプロキシ装置１０５のメイン処理フローの例を示す。本実施の形態に係るメイン処理では、実施の形態２と同様に、図１６に示したＳ１６０１及びＳ１６０３に示した処理を実行する。
【０１７２】
データ量特定部３６０１は、Ｓ１６０１においてリクエスト記憶部１４０７に記憶させたリクエストメッセージのデータ量を特定する（Ｓ４００１）。
【０１７３】
Ｓ２８０１における処理は、図２８の場合と同様である。また、Ｓ１６０５における処理は、図１６の場合及び図２８の場合と同様である。そして、端子Ｋを介して、図４１に示したＳ１６０７へ移る。
【０１７４】
Ｓ１６０７及びＳ１６０９における処理は、図１６の場合及び図２９の場合と同様である。データ量特定部３６０１は、Ｓ１６０７においてレスポンス記憶部１４１５に記憶させたレスポンスメッセージのデータ量を特定する（Ｓ４１０１）。データ量特定部３６０１は、Ｓ４００１において特定されたリクエストメッセージのデータ量と、Ｓ４１０１において特定されたレスポンスメッセージのデータ量とを合計する（Ｓ４１０３）。登録部２５２１は、無線端末１０１のＭＡＣアドレスとアクセスポイント１０３のＭＡＣアドレスと合計されたデータ量とに、登録日時を付して履歴記憶部２５２３における履歴テーブルに登録する（Ｓ４１０５）。
【０１７５】
次に、総計部３６０３は、総計処理を実行する（Ｓ４１０７）。総計処理によって、アクセスポイント１０３毎に所定期間におけるメッセージのデータ量の総計が算出される。
【０１７６】
図４２に、総計処理フローの例を示す。総計部３６０３は、アクセスポイント管理部２５２７で管理されているアクセスポイント１０３のＭＡＣアドレスの中から、アクセスポイント１０３のＭＡＣアドレスを１つ特定する（Ｓ４２０１）。
【０１７７】
総計部３６０３は、履歴記憶部２５２３に記憶されている履歴テーブルに含まれるレコードのうち、レコードを１つ特定する（Ｓ４２０３）。例えば、レコードが順次特定される。総計部３６０３は、当該レコードにおける登録日時が所定期間内に含まれるか否かを判定する（Ｓ４２０５）。当該レコードにおける登録日時が所定期間内に含まれると判定した場合には、当該レコードにおけるアクセスポイント１０３のＭＡＣアドレスが、Ｓ４２０１において特定されたアクセスポイント１０３のＭＡＣアドレスと一致するか否かを判定する（Ｓ４２０７）。当該レコードにおけるアクセスポイント１０３のＭＡＣアドレスが、Ｓ４２０１において特定されたアクセスポイント１０３のＭＡＣアドレスと一致すると判定した場合には、総計部３６０３は、当該アクセスポイント１０３におけるデータ量の合計を、当該アクセスポイント１０３におけるメッセージのデータ量の総計に加算する（Ｓ４２０９）。当該メッセージのデータ量の総計は、総計処理における内部変数である。そして、Ｓ４２１１の処理に移る。
【０１７８】
一方、Ｓ４２０５において、当該レコードにおける登録日時が所定期間内に含まれないと判定した場合には、Ｓ４２１１の処理に移る。
【０１７９】
また、当該レコードにおけるアクセスポイント１０３のＭＡＣアドレスが、Ｓ４２０１において特定されたアクセスポイント１０３のＭＡＣアドレスと一致しないと判定した場合には、Ｓ４２１１の処理に移る。
【０１８０】
総計部３６０３は、Ｓ４２０３において未特定のレコードがあるか否かを判定する（Ｓ４２１１）。未特定のレコードがあると判定した場合には、Ｓ４２０３に示した処理に戻って、上述した処理を繰り返す。
【０１８１】
一方、未特定のレコードがないと判定した場合には、総計部３６０３は、Ｓ４２０１において未特定のアクセスポイント１０３のＭＡＣアドレスがあるか否かを判定する（Ｓ４２１３）。未特定のアクセスポイント１０３のＭＡＣアドレスがあると判定した場合には、Ｓ４２０１に示した処理に戻って、上述した処理を繰り返す。
【０１８２】
未特定のアクセスポイント１０３のＭＡＣアドレスがないと判定した場合には、総計処理を終えて、図４１に示したＳ１６１１の処理に移る。
【０１８３】
図４１の説明に戻る。Ｓ１６１１に示した処理は、図１６の場合及び図２９の場合と同様である。付加部１４２３は、レスポンスメッセージに待ち時間を示すヘッダ（ヘッダ名：「Ｘ−Ｒｅｍｏｔｅ−Ｔｉｍｅ）とアクセスポイント１０３毎のメッセージのデータ量の総計を示すヘッダ（ヘッダ名：「Ｘ−ＡＰ−Ｔｏｔａｌ」）とを付加する（Ｓ４１０９）。
【０１８４】
レスポンス送信部１４１７は、上述したヘッダが付加されたレスポンスメッセージを、リクエストメッセージの送信元である無線端末１０１のローカルプロキシ部６２１へ送信する（Ｓ１６１５）。そして、端子Ｌを介して、図４０のＳ１６０１に示した処理に戻る。
【０１８５】
本実施の形態によれば、無線端末１０１における受信強度が所定基準を超えた電波を送出している２つ以上のアクセスポイント１０３についての総計を比較し、総計が小さい方のアクセスポイント１０３を次の無線リンク先に選定する。これによって、切り替え後に処理能力に余裕があると想定されるアクセスポイント１０３によって円滑にデータ通信が行われると期待できる。
【０１８６】
［実施の形態４］
実施の形態１では、転送されるメッセージの転送状況を示す転送情報の例として、リクエストメッセージを転送した時点からレスポンスメッセージを転送する時点までの待ち時間を用い、無線リンクにおけるメッセージの疎通状況を示す無線区間情報の例として、無線区間におけるリクエストメッセージとレスポンスメッセージとの転送率を用いた。本実施の形態では、転送されるメッセージの転送状況を示す転送情報の例として、リクエストメッセージを転送した時点（時刻）を用い、無線リンクにおけるメッセージの疎通状況を示す無線区間情報の例として、無線区間におけるリクエストメッセージの転送率を用いる。
【０１８７】
本実施の形態において転送されるメッセージについて説明する。図４３に、実施の形態４において転送されるメッセージの例を示す。本実施の形態では、プロキシ装置１０５から無線端末１０１へ送信されるレスポンスメッセージには、プロキシ装置１０５においてリクエストメッセージを転送した時点を示すヘッダが付加されている。ヘッダ名「Ｘ−Ｒｅｑｕｅｓｔ−Ｐｏｉｎｔ」は、プロキシ装置１０５におけるリクエストメッセージの転送時点のヘッダであることを示している。このヘッダは、拡張ヘッダである。この例におけるヘッダは、時刻Ｔ2が、０時１分２．００秒であったことを意味する。
【０１８８】
無線端末のモジュール構成例は、図６に示した通りである。
【０１８９】
次に、無線端末１０１におけるシーケンスについて説明する。図４４に、実施の形態４に係る無線端末１０１におけるシーケンス例を示す。ローカルプロキシ部６２１は、通信アプリケーション部６０１からリクエストメッセージを受け付ける（Ｓ７０１）。ローカルプロキシ部６２１は、指示部６５１にリクエストメッセージの送信時点の計測を命令する（Ｓ４４０１）。ローカルプロキシ部６２１は、送信処理において、リクエストメッセージをプロキシ装置１０５へ送信する（Ｓ７０５）。
【０１９０】
その後、ローカルプロキシ部６２１は、受信処理において、プロキシ装置１０５からレスポンスメッセージを受信する（Ｓ７０７）。ローカルプロキシ部６２１は、読取処理において、レスポンスメッセージからプロキシ装置１０５におけるリクエストメッセージの転送時点を読み取る（Ｓ７１１）。指示部６５１は、ローカルプロキシ部６２１からリクエストメッセージの転送時点を取得する（Ｓ４４０３）。
【０１９１】
ローカルプロキシ部６２１は、通信アプリケーション部６０１へレスポンスメッセージを引き渡す（Ｓ７１５）。指示部６５１は、ローカルプロキシ部６２１からリクエストメッセージのデータ量を取得する（Ｓ４４０５）。指示部６５１は、生成処理において、アプリケーション層の転送率を算出する（Ｓ７２１）。具体的は、無線端末１０１におけるリクエストメッセージの送信時点からプロキシ装置１０５におけるリクエストメッセージの転送時点までの時間で、リクエストメッセージのデータ量を除することによって、アプリケーション層の転送率を算出する。
【０１９２】
指示部６５１は、判定処理において、アプリケーション層の転送率が所定の閾値を下回ったか否かを判定する（Ｓ７２３）。アプリケーション層の転送率が所定の閾値を下回ったと判定した場合には、指示部６５１は、切替部６５３に、アクセスポイント１０３の切り替えを指示する（Ｓ７２５）。アクセスポイント１０３の切り替えの指示を受けると、切替部６５３は、切り替え処理において、最も受信電波強度が大きいアクセスポイント１０３へ無線リンク先を切り替える（Ｓ７２７）。
【０１９３】
次に、ローカルプロキシ部６２１による中継処理について説明する。図４５に、実施の形態４に係る中継処理フローの例を示す。受付部６２３は、待機して、通信アプリケーション部６０１からリクエストメッセージを受け付ける（Ｓ８０１）。受付部６２３は、受け付けたリクエストメッセージをリクエスト記憶部６２５に記憶させる（Ｓ８０３）。受付部６２３は、指示部６５１にリクエストメッセージの送信時点の計測を命令する（Ｓ４５０１）。データ量算出部６３５は、リクエスト記憶部６２５に記憶させたリクエストメッセージのデータ量を特定する（Ｓ８０７）。送信部６２７は、リクエスト記憶部６２５に記憶させたリクエストメッセージを、プロキシ装置１０５へ送信する（Ｓ８０９）。
【０１９４】
受信部６２９は、待機して、プロキシ装置１０５から上述したリクエストメッセージに対するレスポンスメッセージを受信する（Ｓ９０１）。受信部６２９は、受信したレスポンスメッセージをレスポンス記憶部６３１に記憶させる（Ｓ９０３）。取得部６３７は、レスポンス記憶部６３１に記憶させたレスポンスメッセージのヘッダから、プロキシ装置１０５におけるリクエストメッセージの転送時点を読み取る（Ｓ４５０３）。取得部６３７は、リクエストメッセージの転送時点を変数記憶部６３９に記憶させる。引渡部６３３は、レスポンス記憶部６３１に記憶させたレスポンスメッセージを通信アプリケーション部６０１へ引き渡す（Ｓ９１１）。データ量算出部６３５は、リクエストメッセージのデータ量を変数記憶部６３９を介して指示部６５１へ渡す。そして、Ｓ８０１へ戻る。
【０１９５】
指示部６５１の構成例は、図１０に示した通りである。本実施の形態における生成部１００５は、アクセスポイント１０３との無線区間におけるリクエストメッセージの転送率を算出する。算出された転送率は、無線リンクにおけるメッセージの疎通状況を示す無線区間情報の例である。
【０１９６】
次に、指示部６５１による指示処理について説明する。図４６に、実施の形態４に係る指示処理フローの例を示す。指示部６５１が、待機して、ローカルプロキシ部６２１から、リクエストメッセージの送信時点についての計測命令を受けると（Ｓ４６０１）、計測部１００１は、リクエストメッセージの送信時点（送信時刻）を計測する（Ｓ４６０３）。
【０１９７】
時間算出部１００３は、プロキシ装置１０５におけるリクエストメッセージの転送時点を変数記憶部６３９から取得する（Ｓ４６０５）。時間算出部１００３は、リクエストメッセージの送信時点からリクエストメッセージの転送時点までの時間を算出する（Ｓ４６０７）。生成部１００５は、変数記憶部６３９からリクエストメッセージのデータ量を取得する（Ｓ４６０９）。生成部１００５は、取得したデータ量をＳ４６０７で算出した時間で除して、転送率を算出する（Ｓ４６１１）。端子Ｃを介して、図１２に示したＳ１２０１に移る。
【０１９８】
図１２に示した指示処理フローについては、実施の形態１の場合と同様である。
【０１９９】
切り替え処理フローは、図１３を用いて説明した実施の形態１の場合と同様である。
【０２００】
プロキシ装置のモジュール構成例は、図１４に示した通りである。本実施の形態における生成部１４２１は、リクエストメッセージを転送した時点（時刻）を計測する。計測されたリクエストメッセージを転送した時点は、転送されるメッセージの転送状況を示す転送情報の例である。
【０２０１】
次に、プロキシ装置１０５のシーケンスについて説明する。図４７に、実施の形態４に係るプロキシ装置のシーケンス例を示す。転送部１４０１は、リクエスト受信処理において、リクエストメッセージを受信する（Ｓ１５０１）。転送部１４０１は、生成部１４２１にリクエストメッセージの転送時点の計測を命令する（Ｓ４７０１）。転送部１４０１は、リクエスト送信処理において、Ｓ１５０１において受信したリクエストメッセージをリクエストメッセージの宛先へ送信する（Ｓ１５０５）。
【０２０２】
その後、転送部１４０１は、レスポンス受信処理において、上述したリクエストメッセージに対するレスポンスメッセージを受信する（Ｓ１５０７）。転送部１４０１は、生成部１４２１にリクエストメッセージの転送時点を問い合わせる（Ｓ４７０３）。
【０２０３】
次に、付加部１４２３は、生成部１４２１からリクエストメッセージの転送時点を取得する（Ｓ４７０５）。付加部１４２３は、付加処理において、レスポンスメッセージにリクエストメッセージの転送時点を示すヘッダを付加する（Ｓ１５１３）。転送部１４０１は、レスポンス送信処理において、リクエストメッセージの転送時点を示すヘッダが付加されたレスポンスメッセージを送信する（Ｓ１５１５）。
【０２０４】
続いて、プロキシ装置１０５のメイン処理について説明する。図４８に、実施の形態４に係るプロキシ装置のメイン処理フローの例を示す。リクエスト受信部１４０５は、待機して、無線端末１０１から送信されたリクエストメッセージを受信する（Ｓ１６０１）。このとき、リクエスト受信部１４０５は、受信したリクエストメッセージをリクエスト記憶部１４０７に記憶させる。リクエスト受信部１４０５は、生成部１４２１にリクエストメッセージの転送時点の計測を命令する（Ｓ４８０１）。リクエスト送信部１４０９は、リクエスト記憶部１４０７に記憶されたリクエストメッセージを、当該リクエストメッセージの宛先に送信する（Ｓ１６０５）。この例では、リクエスト送信部１４０９は、サーバ１０７にリクエストメッセージを送信する。
【０２０５】
レスポンス受信部１４１３は、待機して、サーバ１０７から上述したリクエストメッセージに対するレスポンスメッセージを受信する（Ｓ１６０７）。このとき、レスポンス受信部１４１３は、受信したレスポンスメッセージをレスポンス記憶部１４１５に記憶させる。そして、レスポンス受信部１４１３は、生成部１４２１にリクエストメッセージの転送時点を問い合わせる（Ｓ４８０３）。
【０２０６】
付加部１４２３は、生成部１４２１からリクエストメッセージの転送時点を取得し（Ｓ４８０５）、レスポンスメッセージにリクエストメッセージの転送時点を示すヘッダ（ヘッダ名：「Ｘ−Ｒｅｑｕｅｓｔ−Ｐｏｉｎｔ）を付加する（Ｓ４８０７）。そして、レスポンス送信部１４１７は、リクエストメッセージの転送時点を示すヘッダが付加されたレスポンスメッセージを、リクエストメッセージの送信元である無線端末１０１のローカルプロキシ部６２１へ送信する（Ｓ１６１５）。そして、Ｓ１６０１に示した処理に戻る。
【０２０７】
次に、生成部１４２１による生成処理について説明する。図４９に、実施の形態４に係る生成処理フローの例を示す。生成部１４２１は、待機して、リクエスト受信部１４０５からリクエストメッセージの転送時点の計測命令を受けると（Ｓ４９０１）、リクエストメッセージの転送時点（転送時刻）を計測する（Ｓ４９０３）。
【０２０８】
その後、生成部１４２１は、待機して、問い合わせを受けると（Ｓ４９０５）、リクエストメッセージの転送時点を付加部１４２３へ渡す（Ｓ４９０７）。そして、Ｓ４９０１の処理に戻って、上述した処理を繰り返す。
【０２０９】
以上、実施の形態１を基礎とする例について説明したが、実施の形態２又は３を基礎とするようにしてもよい。
【０２１０】
本実施の形態によれば、リクエストメッセージを疎通させ、データ通信を行うアプリケーション部の動作を安定させることができる。
【０２１１】
［実施の形態５］
実施の形態１では、転送されるメッセージの転送状況を示す転送情報の例として、リクエストメッセージを転送した時点からレスポンスメッセージを転送する時点までの待ち時間を用い、無線リンクにおけるメッセージの疎通状況を示す無線区間情報の例として、無線区間におけるリクエストメッセージとレスポンスメッセージとの転送率を用いた。本実施の形態では、転送されるメッセージの転送状況を示す転送情報の例として、レスポンスメッセージを転送した時点（時刻）を用い、無線リンクにおけるメッセージの疎通状況を示す無線区間情報の例として、無線区間におけるレスポンスメッセージの転送率を用いる。
【０２１２】
本実施の形態において転送されるメッセージについて説明する。図５０に、実施の形態５において転送されるメッセージの例を示す。本実施の形態では、プロキシ装置１０５から無線端末１０１へ送信されるレスポンスメッセージには、プロキシ装置１０５においてレスポンスメッセージを転送した時点を示すヘッダが付加されている。ヘッダ名「Ｘ−Ｒｅｓｐｏｎｓｅ−Ｐｏｉｎｔ」は、プロキシ装置１０５におけるレスポンスメッセージの転送時点のヘッダであることを示している。このヘッダは、拡張ヘッダである。この例におけるヘッダは、時刻Ｔ5が、０時１分５．００秒であったことを意味する。
【０２１３】
無線端末のモジュール構成例は、図６に示した通りである。
【０２１４】
次に、無線端末１０１におけるシーケンスについて説明する。図５１に、実施の形態５に係る無線端末１０１におけるシーケンス例を示す。ローカルプロキシ部６２１は、通信アプリケーション部６０１からリクエストメッセージを受け付ける（Ｓ７０１）。ローカルプロキシ部６２１は、送信処理において、リクエストメッセージをプロキシ装置１０５へ送信する（Ｓ７０５）。
【０２１５】
その後、ローカルプロキシ部６２１は、受信処理において、プロキシ装置１０５からレスポンスメッセージを受信する（Ｓ７０７）。ローカルプロキシ部６２１は、指示部６５１にレスポンスメッセージの送信時点の計測を命令する（Ｓ５１０１）。ローカルプロキシ部６２１は、読取処理において、レスポンスメッセージからプロキシ装置１０５におけるレスポンスメッセージの転送時点を読み取る（Ｓ７１１）。指示部６５１は、ローカルプロキシ部６２１からレスポンスメッセージの転送時点を取得する（Ｓ５１０３）。
【０２１６】
ローカルプロキシ部６２１は、通信アプリケーション部６０１へレスポンスメッセージを引き渡す（Ｓ７１５）。指示部６５１は、ローカルプロキシ部６２１からレスポンスメッセージのデータ量を取得する（Ｓ５１０５）。指示部６５１は、生成処理において、アプリケーション層の転送率を算出する（Ｓ７２１）。具体的は、プロキシ装置１０５におけるレスポンスメッセージの転送時点から無線端末１０１におけるレスポンスメッセージの受信時点までの時間で、リクエストメッセージのデータ量を除することによって、アプリケーション層の転送率を算出する。
【０２１７】
指示部６５１は、判定処理において、アプリケーション層の転送率が所定の閾値を下回ったか否かを判定する（Ｓ７２３）。アプリケーション層の転送率が所定の閾値を下回ったと判定した場合には、指示部６５１は、切替部６５３に、アクセスポイント１０３の切り替えを指示する（Ｓ７２５）。アクセスポイント１０３の切り替えの指示を受けると、切替部６５３は、切り替え処理において、最も受信電波強度が大きいアクセスポイント１０３へ無線リンク先を切り替える（Ｓ７２７）。
【０２１８】
次に、ローカルプロキシ部６２１による中継処理について説明する。図５２に、実施の形態５に係る中継処理フローの例を示す。受付部６２３は、待機して、通信アプリケーション部６０１からリクエストメッセージを受け付ける（Ｓ８０１）。受付部６２３は、受け付けたリクエストメッセージをリクエスト記憶部６２５に記憶させる（Ｓ８０３）。送信部６２７は、リクエスト記憶部６２５に記憶させたリクエストメッセージを、プロキシ装置１０５へ送信する（Ｓ８０９）。
【０２１９】
受信部６２９は、待機して、プロキシ装置１０５から上述したリクエストメッセージに対するレスポンスメッセージを受信する（Ｓ９０１）。受信部６２９は、受信したレスポンスメッセージをレスポンス記憶部６３１に記憶させる（Ｓ９０３）。受信部６２９は、指示部６５１にレスポンスメッセージの受信時間の計測を命令する（Ｓ５２０１）。データ量算出部６３５は、レスポンス記憶部６３１に記憶させたレスポンスメッセージのデータ量を特定する（Ｓ９０７）。取得部６３７は、レスポンス記憶部６３１に記憶させたレスポンスメッセージのヘッダから、プロキシ装置１０５におけるレスポンスメッセージの転送時点を読み取る（Ｓ５２０３）。取得部６３７は、レスポンスメッセージの転送時点を変数記憶部６３９に記憶させる。引渡部６３３は、レスポンス記憶部６３１に記憶させたレスポンスメッセージを通信アプリケーション部６０１へ引き渡す（Ｓ９１１）。データ量算出部６３５は、レスポンスメッセージのデータ量を変数記憶部６３９を介して指示部６５１へ渡す（Ｓ５２０５）。そして、Ｓ８０１へ戻る。
【０２２０】
指示部６５１の構成例は、図１０に示した通りである。本実施の形態における生成部１００５は、アクセスポイント１０３との無線区間におけるレスポンスメッセージの転送率を算出する。算出された転送率は、無線リンクにおけるメッセージの疎通状況を示す無線区間情報の例である。
【０２２１】
次に、指示部６５１による指示処理について説明する。図５３に、実施の形態５に係る指示処理フローの例を示す。指示部６５１が、待機して、ローカルプロキシ部６２１から、レスポンスメッセージの受信時点についての計測命令を受けると（Ｓ５３０１）、計測部１００１は、レスポンスメッセージの受信時点（受信時刻）を計測する（Ｓ５３０３）。
【０２２２】
時間算出部１００３は、プロキシ装置１０５におけるレスポンスメッセージの転送時点を変数記憶部６３９から取得する（Ｓ５３０５）。時間算出部１００３は、レスポンスメッセージの転送時点からレスポンスメッセージの受信時点までの時間を算出する（Ｓ５３０７）。生成部１００５は、変数記憶部６３９からリクエストメッセージのデータ量を取得する（Ｓ５３０９）。生成部１００５は、取得したデータ量をＳ５３０７で算出した時間で除して、転送率を算出する（Ｓ５３１１）。端子Ｃを介して、図１２に示したＳ１２０１に移る。
【０２２３】
図１２に示した指示処理フローについては、実施の形態１の場合と同様である。
【０２２４】
切り替え処理フローは、図１３を用いて説明した実施の形態１の場合と同様である。
【０２２５】
プロキシ装置のモジュール構成例は、図１４に示した通りである。本実施の形態における生成部１４２１は、レスポンスメッセージを転送した時点（時刻）を計測する。計測されたレスポンスメッセージを転送した時点は、転送されるメッセージの転送状況を示す転送情報の例である。
【０２２６】
次に、プロキシ装置１０５のシーケンスについて説明する。図５４に、実施の形態５に係るプロキシ装置のシーケンス例を示す。転送部１４０１は、リクエスト受信処理において、リクエストメッセージを受信する（Ｓ１５０１）。転送部１４０１は、リクエスト送信処理において、Ｓ１５０１において受信したリクエストメッセージをリクエストメッセージの宛先へ送信する（Ｓ１５０５）。
【０２２７】
その後、転送部１４０１は、レスポンス受信処理において、上述したリクエストメッセージに対するレスポンスメッセージを受信する（Ｓ１５０７）。転送部１４０１は、生成部１４２１にレスポンスメッセージの転送時点の計測を命令する（Ｓ５４０１）。
【０２２８】
次に、付加部１４２３は、生成部１４２１からレスポンスメッセージの転送時点を取得する（Ｓ５４０３）。付加部１４２３は、付加処理において、レスポンスメッセージにレスポンスメッセージの転送時点を示すヘッダを付加する（Ｓ１５１３）。転送部１４０１は、レスポンス送信処理において、レスポンスメッセージの転送時点を示すヘッダが付加されたレスポンスメッセージを送信する（Ｓ１５１５）。
【０２２９】
続いて、プロキシ装置１０５のメイン処理について説明する。図５５に、実施の形態５に係るプロキシ装置のメイン処理フローの例を示す。リクエスト受信部１４０５は、待機して、無線端末１０１から送信されたリクエストメッセージを受信する（Ｓ１６０１）。このとき、リクエスト受信部１４０５は、受信したリクエストメッセージをリクエスト記憶部１４０７に記憶させる。リクエスト送信部１４０９は、リクエスト記憶部１４０７に記憶されたリクエストメッセージを、当該リクエストメッセージの宛先に送信する（Ｓ１６０５）。この例では、リクエスト送信部１４０９は、サーバ１０７にリクエストメッセージを送信する。
【０２３０】
レスポンス受信部１４１３は、待機して、サーバ１０７から上述したリクエストメッセージに対するレスポンスメッセージを受信する（Ｓ１６０７）。このとき、レスポンス受信部１４１３は、受信したレスポンスメッセージをレスポンス記憶部１４１５に記憶させる。そして、レスポンス受信部１４１３は、生成部１４２１にレスポンスメッセージの転送時点の計測を命令する（Ｓ５５０１）。
【０２３１】
付加部１４２３は、生成部１４２１からレスポンスメッセージの転送時点を取得し（Ｓ５５０３）、レスポンスメッセージにレスポンスメッセージの転送時点を示すヘッダ（ヘッダ名：「Ｘ−Ｒｅｓｐｏｎｓｅ−Ｐｏｉｎｔ）を付加する（Ｓ５５０５）。そして、レスポンス送信部１４１７は、レスポンスメッセージの転送時点を示すヘッダが付加されたレスポンスメッセージを、リクエストメッセージの送信元である無線端末１０１のローカルプロキシ部６２１へ送信する（Ｓ１６１５）。そして、Ｓ１６０１に示した処理に戻る。
【０２３２】
次に、生成部１４２１による生成処理について説明する。図５６に、実施の形態５に係る生成処理フローの例を示す。生成部１４２１は、待機して、レスポンス受信部１４１３からレスポンスメッセージの転送時点の計測命令を受けると（Ｓ５６０１）、レスポンスメッセージの転送時点（転送時刻）を計測する（Ｓ５６０３）。
【０２３３】
生成部１４２１は、レスポンスメッセージの転送時点を付加部１４２３へ渡す（Ｓ５６０５）。そして、Ｓ５６０１の処理に戻って、上述した処理を繰り返す。
【０２３４】
以上、実施の形態１を基礎とする例について説明したが、実施の形態２乃至４を基礎とするようにしてもよい。
【０２３５】
本実施の形態によれば、レスポンスメッセージを疎通させ、データ通信を行うアプリケーション部の動作を安定させることができる。
【０２３６】
無線端末１０１のハードウエア構成について説明する。図５７は、無線端末１０１のハードウエア構成例を示す図である。無線端末１０１は、ＣＰＵ５７０１、記憶回路５７０３、無線通信用アンテナ５７１１、無線通信制御回路５７１３、スピーカ制御回路５７１５、スピーカ５７１７、マイク制御回路５７１９、マイク５７２１、ＬＣＤ制御回路５７２３、ＬＣＤ５７２５、タッチパッド５７２７及びキー群５７２９を有している。
【０２３７】
ＣＰＵ５７０１は、モデムＣＰＵ（Central Processing Unit）とアプリケーションＣＰＵからなることもある。記憶回路５７０３は、例えば、ＲＯＭ（Read Only Memory）５７０５とＲＡＭ（Random Access Memory）５７０７とフラッシュメモリ５７０９とを有している。ＲＯＭ５７０５は、例えば、オペレーティングシステムなどのプログラムや予め設定されているデータを格納している。ＲＡＭ５７０７は、例えば、通信アプリケーションなどのプログラムを展開する領域を含んでいる。ＲＡＭ５７０７は、一時的なデータを格納する領域も含んでいる。フラッシュメモリ５７０９は、例えば、通信アプリケーションなどのプログラムや保持すべきデータを格納している。
【０２３８】
ＬＣＤ制御回路５７２３は、ＬＣＤ５７２５を駆動させる。ＬＣＤ５７２５は、例えば通信アプリケーションにおける操作画面を表示する。タッチパッド５７２７は、例えば、ＬＣＤ５７２５の表示画面上に配置されたパネル状のセンサであり、タッチ操作による指示を受け付ける。具体的には、ＬＣＤ５７２５とタッチパッド５７２７とを一体としたタッチパネルとして用いられる。キー群５７２９の各ハードキーは、筐体の一部に設けられている。
【０２３９】
無線通信用アンテナ５７１１は、無線ＬＡＮ方式による無線電波を受信する。無線通信制御回路５７１３は、無線ＬＡＮ方式における使用周波数に応じて無線通信の制御を行う。
【０２４０】
スピーカ制御回路５７１５は、音データに関するデジタル／アナログ変換を行う。スピーカ５７１７は、アナログデータを音として出力する。スピーカ５７１７は、音を出力する。マイク制御回路５７１９は、音データに関するアナログ／デジタル変換を行う。マイク５７２１は、音をアナログデータに変換する。
【０２４１】
なお、上で述べた図２のプロキシ装置１０５は、コンピュータ装置であって、図５８に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【０２４２】
また、上で述べた図１のプロキシ装置１０５も、コンピュータ装置（例えば図５９）である。図５９に示したコンピュータ装置は、通信制御部２５１７を２つ有している。通信制御部２５１７ａは、図１に示したＬＡＮに接続するために用いられる。通信制御部２５１７ｂは、図１に示したインターネットに接続するために用いられる。図５９に示した機能ブロックのうち、メモリ２５０１、ＣＰＵ２５０３、ハードディスク・ドライブ２５０５、表示制御部２５０７、表示装置２５０９、リムーバブル・ディスク２５１１、ドライブ装置２５１３、入力装置２５１５及びバス２５１９については、図５８の場合と同様である。
【０２４３】
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上述の機能ブロック構成はプログラムモジュール構成に一致しない場合もある。
【０２４４】
また、上で説明した各記憶領域の構成は一例であって、上記のような構成でない場合もある。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えても良く、並列に実行させるようにしても良い。
【０２４５】
以上述べた実施の形態をまとめると、以下のようになる。
【０２４６】
一態様のシステムは、プロキシ装置と無線端末とを含む。そして、上記プロキシ装置は、ネットワークを介して複数のアクセスポイント、およびサーバと接続され、複数のアクセスポイントのうちいずれかのアクセスポイントとの無線リンクを介して無線端末とサーバとの間で通信されるアプリケーション層のプロトコルによるメッセージを転送する転送部と、上記転送部において転送されるメッセージの転送状況を示す転送情報を生成する第１生成部と有する。更に、上記無線端末は、転送情報を取得する取得部と、転送情報に基づいて無線端末とアクセスポイントとの間の無線リンクにおけるメッセージの疎通状況を示す無線区間情報を生成する第２生成部と、無線区間情報に基づいて、無線リンク先のアクセスポイントを切り替える切替部とを有する。
【０２４７】
このようにすれば、適切なタイミングで無線リンク先のアクセスポイントを切り替えて、無線区間におけるアプリケーション層のメッセージを疎通させ、データ通信を行うアプリケーション部の動作を安定させることができる。
【０２４８】
上記第１生成部は、上記無線端末から送信されたプロトコルによるリクエストメッセージを転送した時点から、当該リクエストメッセージに対するレスポンスメッセージを転送する時点までの待ち時間を計測するようにしてもよい。上記取得部は、待ち時間を取得するようにしてもよい。上記無線端末は、更に、リクエストメッセージを送信した時点から、無線リンクを介してレスポンスメッセージを受信した時点までの応答時間を計測する計測部を有するようにしてもよい。上記第２生成部は、リクエストメッセージのデータ量とレスポンスメッセージのデータ量との合計を、応答時間から上記プロキシ装置から取得した待ち時間を引いた差分時間で除して、転送率を算出するようにしてもよい。上記切替部は、転送率が閾値を下回った場合に、無線リンク先のアクセスポイントを切り替えるようにしてもよい。
【０２４９】
このようにすれば、リクエストメッセージとレスポンスメッセージとを疎通させ、データ通信を行うアプリケーション部の動作を安定させることができる。
【０２５０】
上記無線端末は、更に、プロトコルによるリクエストメッセージを送信した第１時点を計測する計測部を有するようにしてもよい。上記第１生成部は、リクエストメッセージを転送した第２時点を計測するようにしてもよい。上記取得部は、第２時点を取得するようにしてもよい。上記第２生成部は、リクエストメッセージのデータ量を、第１時点から第２時点までの時間で除して、転送率を算出するようにしてもよい。上記切替部は、転送率が閾値を下回った場合に、無線リンク先のアクセスポイントを切り替えるようにしてもよい。
【０２５１】
このようにすれば、リクエストメッセージを疎通させ、データ通信を行うアプリケーション部の動作を安定させることができる。
【０２５２】
上記第１生成部は、上記サーバから返信された、プロトコルによるレスポンスメッセージを転送する第１時点を計測するようにしてもよい。上記無線端末は、更に、レスポンスメッセージを受信した第２時点を計測する計測部を有するようにしてもよい。上記取得部は、第１時点を取得するようにしてもよい。上記第２生成部は、レスポンスメッセージのデータ量を、第１時点から第２時点までの時間で除して、転送率を算出するようにしてもよい。上記切替部は、転送率が閾値を下回った場合に、無線リンク先のアクセスポイントを切り替えるようにしてもよい。
【０２５３】
このようにすれば、レスポンスメッセージを疎通させ、データ通信を行うアプリケーション部の動作を安定させることができる。
【０２５４】
上記プロキシ装置は、更に、複数のアクセスポイントの各々について、所定時間内に当該アクセスポイントとの無線リンクを介してリクエストメッセージを送信した無線端末の数を計数する計数部を有するようにしてもよい。上記切替部は、無線端末における受信強度が所定基準を超えた電波を送出している２つ以上のアクセスポイントについての無線端末の数を比較し、無線端末の数が少ない方のアクセスポイントを次の無線リンク先に選定するようにしてもよい。
【０２５５】
このようにすれば、切り替え後に処理能力に余裕があると想定されるアクセスポイントによって円滑にデータ通信が行われると期待できる。
【０２５６】
上記プロキシ装置は、更に、複数のアクセスポイントの各々について、所定時間内に当該アクセスポイントを介して転送されたプロトコルによるメッセージのデータ量の総計を算出する算出部を有するようにしてもよい。上記切替部は、無線端末における受信強度が所定基準を超えた電波を送出している２つ以上のアクセスポイントについての上記総計を比較し、上記総計が小さい方のアクセスポイントを次の無線リンク先に選定するようにしてもよい。
【０２５７】
このようにすれば、切り替え後に処理能力に余裕があると想定されるアクセスポイントによって円滑にデータ通信が行われると期待できる。
【０２５８】
上記無線端末は、更に、アプリケーションプログラムの処理部から受け付けたプロトコルによるリクエストメッセージを上記プロキシ装置に送信し、上記プロキシ装置から受信したレスポンスメッセージを当該処理部へ引き渡すプロキシ部を有するようにしてもよい。
【０２５９】
このようにすれば、アプリケーションプログラムの処理において、リクエストメッセージを送信した時点及びレスポンスメッセージを受信した時点を特定しなくて済む。
【０２６０】
上記プロキシ装置は、更に、転送情報をサーバから返信されたレスポンスメッセージに付加する付加部を有するようにしてもよい。上記転送部は、上記レスポンスメッセージを無線端末へ転送するようにしてもよい。
【０２６１】
このようにすれば、プロキシ装置が転送情報を無線端末へ通知することができる。
【０２６２】
なお、上で述べた無線端末及びプロキシ装置における処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納されるようにしてもよい。尚、中間的な処理結果は、一般的にメインメモリ等の記憶装置に一時保管される。
【０２６３】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０２６４】
（付記１）
プロキシ装置と無線端末とを含むシステムであって、
前記プロキシ装置は、
ネットワークを介して複数のアクセスポイント、およびサーバと接続され、
前記複数のアクセスポイントのうちいずれかのアクセスポイントとの無線リンクを介して前記無線端末と前記サーバとの間で通信されるアプリケーション層のプロトコルによるメッセージを転送する転送部と、
前記転送部において転送される前記メッセージの転送状況を示す転送情報を生成する
第１生成部と
を有し、
前記無線端末は、
前記転送情報を取得する取得部と、
前記転送情報に基づいて前記無線端末と前記アクセスポイントとの間の無線リンクにおけるメッセージの疎通状況を示す無線区間情報を生成する第２生成部と、
前記無線区間情報に基づいて、無線リンク先のアクセスポイントを切り替える切替部と
を有するシステム。
【０２６５】
（付記２）
前記第１生成部は、前記無線端末から送信された前記プロトコルによるリクエストメッセージを転送した時点から、当該リクエストメッセージに対するレスポンスメッセージを転送する時点までの待ち時間を計測し、
前記取得部は、前記待ち時間を取得し、
前記無線端末は、更に、
前記リクエストメッセージを送信した時点から、前記無線リンクを介して前記レスポンスメッセージを受信した時点までの応答時間を計測する計測部
を有し、
前記第２生成部は、前記リクエストメッセージのデータ量と前記レスポンスメッセージのデータ量との合計を、前記応答時間から前記プロキシ装置から取得した前記待ち時間を引いた差分時間で除して、転送率を算出し、
前記切替部は、前記転送率が閾値を下回った場合に、無線リンク先のアクセスポイントを切り替える
付記１記載のシステム。
【０２６６】
（付記３）
前記無線端末は、更に、
前記プロトコルによるリクエストメッセージを送信した第１時点を計測する計測部
を有し、
前記第１生成部は、前記リクエストメッセージを転送した第２時点を計測し、
前記取得部は、前記第２時点を取得し、
前記第２生成部は、前記リクエストメッセージのデータ量を、前記第１時点から前記第２時点までの時間で除して、転送率を算出し、
前記切替部は、前記転送率が閾値を下回った場合に、無線リンク先のアクセスポイントを切り替える
付記１記載のシステム。
【０２６７】
（付記４）
前記第１生成部は、前記サーバから返信された、前記プロトコルによるレスポンスメッセージを転送する第１時点を計測し、
前記無線端末は、更に、
前記レスポンスメッセージを受信した第２時点を計測する計測部
を有し、
前記取得部は、前記第１時点を取得し、
前記第２生成部は、前記レスポンスメッセージのデータ量を、前記第１時点から前記第２時点までの時間で除して、転送率を算出し、
前記切替部は、前記転送率が閾値を下回った場合に、無線リンク先のアクセスポイントを切り替える
付記１記載のシステム。
【０２６８】
（付記５）
前記プロキシ装置は、更に、
前記複数のアクセスポイントの各々について、所定時間内に当該アクセスポイントとの無線リンクを介してリクエストメッセージを送信した無線端末の数を計数する計数部
を有し、
前記切替部は、前記無線端末における受信強度が所定基準を超えた電波を送出している２つ以上のアクセスポイントについての前記無線端末の数を比較し、前記無線端末の数が少ない方のアクセスポイントを次の無線リンク先に選定する
付記１乃至４のいずれか１つ記載のシステム。
【０２６９】
（付記６）
前記プロキシ装置は、更に、
前記複数のアクセスポイントの各々について、所定時間内に当該アクセスポイントを介して転送された前記プロトコルによるメッセージのデータ量の総計を算出する算出部
を有し、
前記切替部は、前記無線端末における受信強度が所定基準を超えた電波を送出している２つ以上のアクセスポイントについての前記総計を比較し、前記総計が小さい方のアクセスポイントを次の無線リンク先に選定する
付記１乃至４のいずれか１つ記載のシステム。
【０２７０】
（付記７）
前記無線端末は、更に、
アプリケーションプログラムの処理部から受け付けた前記プロトコルによるリクエストメッセージを前記プロキシ装置に送信し、前記プロキシ装置から受信した前記レスポンスメッセージを当該処理部へ引き渡すプロキシ部
を有する付記１乃至６のいずれか１つ記載のシステム。
【０２７１】
（付記８）
ネットワークを介して複数のアクセスポイントおよびサーバと接続しているプロキシ装置と、無線端末とによる通信方法であって、
前記プロキシ装置において、前記複数のアクセスポイントのうちいずれかのアクセスポイントとの無線リンクを介して前記無線端末と前記サーバとの間で通信されるアプリケーション層のプロトコルによるメッセージを転送する処理と、
前記プロキシ装置において、転送される前記メッセージの転送状況を示す転送情報を生成する処理と、
前記無線端末において、前記転送情報を取得する処理と、
前記無線端末において、前記転送情報に基づいて前記無線端末と前記アクセスポイントとの間の無線リンクにおけるメッセージの疎通状況を示す無線区間情報を生成する処理と、
前記無線端末において、前記無線区間情報に基づいて、無線リンク先のアクセスポイントを切り替える処理と
を含む通信方法。
【０２７２】
（付記９）
アクセスポイントとネットワークを介して接続しているプロキシ装置から、無線端末自身とサーバとの間で通信されるアプリケーション層のプロトコルによるメッセージの転送状況を示す転送情報を取得する取得部と、
前記転送情報に基づいて前記無線端末自身と前記アクセスポイントとの間の無線リンクにおけるメッセージの疎通状況を示す無線区間情報を生成する生成部と、
前記無線区間情報に基づいて、無線リンク先のアクセスポイントを切り替える切替部と
を有する無線端末。
【０２７３】
（付記１０）
無線端末に、
アクセスポイントとネットワークを介して接続しているプロキシ装置から、当該無線端末とサーバとの間で通信されるアプリケーション層のプロトコルによるメッセージの転送状況を示す転送情報を取得する処理と、
前記転送情報に基づいて当該無線端末と前記アクセスポイントとの間の無線リンクにおけるメッセージの疎通状況を示す無線区間情報を生成する処理と、
前記無線区間情報に基づいて、無線リンク先のアクセスポイントを切り替える処理と
を実行させるためのプログラム。
【０２７４】
（付記１１）
ネットワークを介して複数のアクセスポイント、およびサーバと接続され、
前記複数のアクセスポイントのうちいずれかのアクセスポイントとの無線リンクを介して無線端末とサーバとの間で通信されるアプリケーション層のプロトコルによるメッセージを転送する転送部と、
前記転送部において転送される前記メッセージの転送状況を示す転送情報を生成する
生成部と
を有するプロキシ装置。
【０２７５】
（付記１２）
前記プロキシ装置は、更に、
前記転送情報を前記サーバから返信されたレスポンスメッセージに付加する付加部
を有し、
前記転送部は、前記レスポンスメッセージを前記無線端末へ転送する
付記１１記載のプロキシ装置。
【０２７６】
（付記１３）
ネットワークを介して複数のアクセスポイント、およびサーバと接続されるプロキシ装置に、
前記複数のアクセスポイントのうちいずれかのアクセスポイントとの無線リンクを介して無線端末とサーバとの間で通信されるアプリケーション層のプロトコルによるメッセージを転送する転送処理と、
前記転送処理において転送される前記メッセージの転送状況を示す転送情報を生成する処理と
を実行させるためのプログラム。
【０２７７】
（付記１４）
前記プログラムは、更に、
前記転送情報を前記サーバから返信されたレスポンスメッセージに付加する処理
を前記プロキシ装置に実行させ、
前記転送処理において、前記レスポンスメッセージを前記無線端末へ転送する
付記１３記載のプログラム。
【符号の説明】
【０２７８】
１０１  無線端末    １０３  アクセスポイント
１０５  プロキシ装置    １０７  サーバ
６０１  通信アプリケーション部    ６０３  ＯＳ
６０５  無線通信ドライバ部    ６０７  ＴＣＰ層及びＩＰ層の制御部
６０９  無線ＬＡＮ制御部    ６１１  ＡＰＩ部
６２１  ローカルプロキシ部    ６２３  受付部
６２５  リクエスト記憶部    ６２７  送信部
６２９  受信部    ６３１  レスポンス記憶部
６３３  引渡部    ６３５  データ量算出部
６３７  取得部    ６３９  変数記憶部
６５１  指示部    ６５３  切替部
１００１  計測部    １００３  時間算出部
１００５  生成部    １００７  判定部
１４０１  転送部    １４０３  リクエスト転送部
１４０５  リクエスト受信部    １４０７  リクエスト記憶部
１４０９  リクエスト送信部    １４１１  レスポンス転送部
１４１３  レスポンス受信部    １４１５  レスポンス記憶部
１４１７  レスポンス送信部    １４２１  生成部
１４２３  付加部    １９０１  取得部
１９０３  付加部    ２５２１  登録部
２５２３  履歴記憶部    ２５２５  計数部
２５２７  アクセスポイント管理部    ３６０１  データ量特定部
３６０３  総計部
【図１】
2015195529.tif 000003
【図２】
2015195529.tif 000004
【図３】
2015195529.tif 000005
【図４】
2015195529.tif 000006
【図５】
2015195529.tif 000007
【図６】
2015195529.tif 000008
【図７】
2015195529.tif 000009
【図８】
2015195529.tif 000010
【図９】
2015195529.tif 000011
【図１０】
2015195529.tif 000012
【図１１】
2015195529.tif 000013
【図１２】
2015195529.tif 000014
【図１３】
2015195529.tif 000015
【図１４】
2015195529.tif 000016
【図１５】
2015195529.tif 000017
【図１６】
2015195529.tif 000018
【図１７】
2015195529.tif 000019
【図１８】
2015195529.tif 000020
【図１９】
2015195529.tif 000021
【図２０】
2015195529.tif 000022
【図２１】
2015195529.tif 000023
【図２２】
2015195529.tif 000024
【図２３】
2015195529.tif 000025
【図２４】
2015195529.tif 000026
【図２５】
2015195529.tif 000027
【図２６】
2015195529.tif 000028
【図２７】
2015195529.tif 000029
【図２８】
2015195529.tif 000030
【図２９】
2015195529.tif 000031
【図３０】
2015195529.tif 000032
【図３１】
2015195529.tif 000033
【図３２】
2015195529.tif 000034
【図３３】
2015195529.tif 000035
【図３４】
2015195529.tif 000036
【図３５】
2015195529.tif 000037
【図３６】
2015195529.tif 000038
【図３７】
2015195529.tif 000039
【図３８】
2015195529.tif 000040
【図３９】
2015195529.tif 000041
【図４０】
2015195529.tif 000042
【図４１】
2015195529.tif 000043
【図４２】
2015195529.tif 000044
【図４３】
2015195529.tif 000045
【図４４】
2015195529.tif 000046
【図４５】
2015195529.tif 000047
【図４６】
2015195529.tif 000048
【図４７】
2015195529.tif 000049
【図４８】
2015195529.tif 000050
【図４９】
2015195529.tif 000051
【図５０】
2015195529.tif 000052
【図５１】
2015195529.tif 000053
【図５２】
2015195529.tif 000054
【図５３】
2015195529.tif 000055
【図５４】
2015195529.tif 000056
【図５５】
2015195529.tif 000057
【図５６】
2015195529.tif 000058
【図５７】
2015195529.tif 000059
【図５８】
2015195529.tif 000060
【図５９】
2015195529.tif 000061