(57)【要約】【課題】無線通信が不安定な状況を解消可能とすること。【解決手段】情報処理装置が、当該情報処理装置に無線通信を介して接続された端末が検出した、無線通信網ごとの識別情報を受信し、受信された識別情報に対応付く他の情報処理装置を、当該情報処理装置と前記端末との無線通信が切断された場合における前記端末の接続先に決定し、前記接続先に決定された他の情報処理装置に接続するための接続先情報を前記端末に通知し、前記端末が、前記接続先情報に基づいて他の情報処理装置に接続した場合に、前記端末と接続されたことを通知する通知情報を当該他の情報処理装置から受信し、前記通知情報に基づいて、当該情報処理装置に接続されている端末との無線通信の切断の要否を判定する。【選択図】図３
2016208175.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置が、
当該情報処理装置に無線通信を介して接続された端末が検出した、無線通信網ごとの識別情報を受信し、
受信された識別情報に対応付く他の情報処理装置を、当該情報処理装置と前記端末との無線通信が切断された場合における前記端末の接続先に決定し、
前記接続先に決定された他の情報処理装置に接続するための接続先情報を前記端末に通知し、
前記端末が、前記接続先情報に基づいて他の情報処理装置に接続した場合に、前記端末と接続されたことを通知する通知情報を当該他の情報処理装置から受信し、
前記通知情報に基づいて、当該情報処理装置に接続されている端末との無線通信の切断の要否を判定する、
処理を実行することを特徴とする通信方法。
【請求項２】
前記情報処理装置が、
前記接続先情報に基づいて前記他の情報処理装置に接続した端末が、当該他の情報処理装置に対して、当該情報処理装置が提供可能なサービスの利用要求を送信した場合に、当該他の情報処理装置によって中継されるサービスの利用要求に応じて当該サービスを提供する、
処理を実行することを特徴とする請求項１記載の通信方法。
【請求項３】
前記情報処理装置が、
当該情報処理装置において提供可能なサービスのうち、当該情報処理装置に無線通信を介して接続された端末から利用対象として指定されたサービスを利用できない場合に、他の情報処理装置に前記サービスの提供を代替させて代替先のサービスの宛先情報を特定し、
前記接続先に決定された他の情報処理装置に、前記代替先の宛先情報を通知する、
処理を実行することを特徴とする請求項１又は２記載の通信方法。
【請求項４】
複数の情報処理装置と、いずれかの前記情報処理装置に無線通信網を介して接続される端末とを含む通信システムであって、
第１の情報処理装置は、
当該第１の情報処理装置に無線通信を介して接続された端末が検出した、無線通信網ごとの識別情報を受信する第１の受信部と、
受信された識別情報に対応付く第２の情報処理装置を、当該第１の情報処理装置と前記端末との無線通信が切断された場合における前記端末の接続先に決定する決定部と、
前記接続先に決定された前記第２の情報処理装置に接続するための接続先情報を前記端末に通知する通知部と、
前記端末が、前記接続先情報に基づいて前記第２の情報処理装置に接続した場合に、前記端末と接続されたことを通知する通知情報を当該第２の情報処理装置から受信する第２の受信部と、
前記通知情報に基づいて、当該情報処理装置に接続されている端末との無線通信の切断の要否を判定する判定部と、
を有することを特徴とする通信システム。
【請求項５】
情報処理装置であって、
当該情報処理装置に無線通信を介して接続された端末が検出した、無線通信網ごとの識別情報を受信する第１の受信部と、
受信された識別情報に対応付く他の情報処理装置を、当該情報処理装置と前記端末との無線通信が切断された場合における前記端末の接続先に決定する決定部と、
前記接続先に決定された他の情報処理装置に接続するための接続先情報を前記端末に通知する通知部と、
前記端末が、前記接続先情報に基づいて他の情報処理装置に接続した場合に、前記端末と接続されたことを通知する通知情報を当該他の情報処理装置から受信する第２の受信部と、
前記通知情報に基づいて、当該情報処理装置に接続されている端末との無線通信の切断の要否を判定する判定部と、
有することを特徴とする情報処理装置。
【請求項６】
情報処理装置に、
当該情報処理装置に無線通信を介して接続された端末が検出した、無線通信網ごとの識別情報を受信し、
受信された識別情報に対応付く他の情報処理装置を、当該情報処理装置と前記端末との無線通信が切断された場合における前記端末の接続先に決定し、
前記接続先に決定された他の情報処理装置に接続するための接続先情報を前記端末に通知し、
前記端末が、前記接続先情報に基づいて他の情報処理装置に接続した場合に、前記端末と接続されたことを通知する通知情報を当該他の情報処理装置から受信し、
前記通知情報に基づいて、当該情報処理装置に接続されている端末との無線通信の切断の要否を判定する、
処理を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信方法、通信システム、情報処理装置、及びプログラムに関する。
【背景技術】
【０００２】
無線通信網のアクセスポイントが付加されたＰＣ（Personal Computer）等の小型のサーバが、複数の端末に対してサービスを提供する場合、予めローミングなどを駆使して無線環境を良好に保つような形で無線環境を用意するのは困難である。このような無線環境では、サーバのサービスを利用する端末の増加により、無線通信の接続が不安定になる可能性がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−９９４３５号公報
【特許文献２】特開平８−１８６６１８号公報
【特許文献３】特開２００１−２９０７１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
サーバとの無線通信の接続が不安定になり、端末からサーバへのアクセスに失敗した場合には、接続先のサーバを切り替えることが考えられる。
【０００５】
しかしながら、端末からサーバへのアクセスに失敗した時点で接続先のサーバを切り替えるといった方法では、既に無線接続が限界に達している場合には、接続先に接続できない端末はいつまでたっても接続ができない状態となってしまう。これを解消するには、接続中の端末の接続先を切り替えることが必要になるが、斯かる切り替えは、当該端末がサーバへのアクセスに失敗した時点に行われる。従って、この方法では、当該サーバに対する無線通信について、負荷の高い状況が継続してしまう可能性が高い。
【０００６】
そこで、一側面では、無線通信が不安定な状況を解消可能とすることを目的とする。
【課題を解決するための手段】
【０００７】
一つの案では、情報処理装置が、当該情報処理装置に無線通信を介して接続された端末が検出した、無線通信網ごとの識別情報を受信し、受信された識別情報に対応付く他の情報処理装置を、当該情報処理装置と前記端末との無線通信が切断された場合における前記端末の接続先に決定し、前記接続先に決定された他の情報処理装置に接続するための接続先情報を前記端末に通知し、前記端末が、前記接続先情報に基づいて他の情報処理装置に接続した場合に、前記端末と接続されたことを通知する通知情報を当該他の情報処理装置から受信し、前記通知情報に基づいて、当該情報処理装置に接続されている端末との無線通信の切断の要否を判定する。
【発明の効果】
【０００８】
一側面によれば、無線通信が不安定な状況を解消可能とすることができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態におけるシステム構成例を示す図である。
【図２】本発明の実施の形態におけるサーバのハードウェア構成例を示す図である。
【図３】本発明の実施の形態における端末及びサーバの機能構成例を示す図である。
【図４】各端末が元サーバに対して正常に接続されている場合に実行される処理を説明するための図である。
【図５】無線通信が切断された端末が切替接続を行った場合に実行される処理を説明するための図である。
【図６】接続管理部がサーバへの接続時に実行する処理手順の一例を説明するためのフローチャートである。
【図７】接続先情報記憶部の構成例を示す図である。
【図８】接続管理部がサーバとの接続後に実行する処理手順の一例を説明するためのフローチャートである。
【図９】切断時接続先情報の構成例を示す図である。
【図１０】端末プロキシ部が実行する処理手順の一例を説明するためのフローチャートである。
【図１１】端末接続管理部が実行する処理手順の一例を説明するためのフローチャートである。
【図１２】端末接続情報の構成例を示す図である。
【図１３】ＳＳＩＤ／サーバ対応記憶部の構成例を示す図である。
【図１４】接続状況同期部が実行する処理手順の一例を説明するためのフローチャートである。
【図１５】端末接続状況情報の構成例を示す図である。
【図１６】接続先決定部が実行する処理手順の一例を説明するためのフローチャートである。
【図１７】サーバプロキシ部が実行する処理手順の一例を説明するためのフローチャートである。
【図１８】サービス先情報記憶部の構成例を示す図である。
【図１９】サーバプロキシ部がサービスの復旧に伴って実行する処理手順の一例を説明するためのフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態におけるシステム構成例を示す図である。図１において、サーバ１０ａ、サーバ１０ｂ、及びサーバ１０ｃ等の複数のサーバ１０は、一定区画ごとに配置されるＰＣ（Personal Computer）等のコンピュータである。但し、各サーバ１０の間隔は、一定間隔でなくてもよい。各サーバ１０は、それぞれに専用の無線通信用のアクセスポイントＡＰに接続されている。すなわち、各サーバ１０と、アクセスポイントＡＰとは対になっている。例えば、各アクセスポイントＡＰは、各サーバ１０に内蔵されていてもよい。各サーバ１０は、自らのアクセスポイントＡＰの電波の範囲内に含まれる端末２０に対して、所定のサービスを提供可能である。各サーバ１０が提供するサービスは同じであってもよいし、異なっていてもよい。各サーバ１０は、ＬＡＮ（Local Area Network）等のネットワークＮ１を介して通信可能に接続されている。
【００１１】
例えば、本システムが、学校で運用される場合には、教室ごとにサーバ１０が配置されてもよい。この場合、各サーバ１０は、学習用のサービスを提供してもよい。各端末２０は、各生徒によって利用されてもよい。端末２０の一例として、スマートフォン、タブレット端末、又はＰＣ（Personal Computer）等が挙げられる。なお、各サーバ１０は、学校以外において利用されてもよい。例えば、店舗やイベント会場等の一定区画ごとにサーバ１０が配置されてもよい。この場合、各サーバ１０は、当該サーバ１０（自サーバ１０）が配置された区画において扱われている商品又はイベントに関する情報を端末２０に対して提供してもよい。
【００１２】
図２は、本発明の実施の形態におけるサーバのハードウェア構成例を示す図である。図２のサーバ１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、及びインタフェース装置１０５等を有する。
【００１３】
サーバ１０での処理を実現するプログラムは、記録媒体１０１によって提供される。プログラムを記録した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００１４】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従ってサーバ１０に係る機能を実行する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。
【００１５】
なお、記録媒体１０１の一例としては、ＣＤ−ＲＯＭ、ＤＶＤディスク、又はＵＳＢメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置１０２の一例としては、ＨＤＤ（Hard Disk Drive）又はフラッシュメモリ等が挙げられる。記録媒体１０１及び補助記憶装置１０２のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。
【００１６】
なお、端末２０も、図２に示されるようなハードウェアを有している。但し、端末２０は、液晶パネル等の表示装置や、タッチパネル、キーボード、又はマウス等の入力装置を備えているのが望ましい。
【００１７】
図３は、本発明の実施の形態における端末及びサーバの機能構成例を示す図である。図３において、端末２０は、端末プロキシ部２２及び接続管理部２３等を有する。これら各部は、端末２０にインストールされたプログラムが、端末２０のＣＰＵに実行させる処理により実現される。端末２０は、また、プロキシ接続先情報記憶部２１１、切断時接続先情報記憶部２１２、及び接続先情報記憶部２１３等を有する。これら各記憶部は、例えば、端末２０のメモリ又は端末２０の補助記憶装置等を用いて実現可能である。また、端末２０では、１以上のアプリ２１が起動される。
【００１８】
アプリ２１は、アプリケーションプログラムである。アプリ２１は、サーバ１０において起動されているサービス１１の利用を、端末２０に実行させる。
【００１９】
端末プロキシ部２２は、アプリ２１からのサービス１１のアクセス要求（利用要求）を、いずれかのサーバ１０のサーバプロキシ部１４に中継する。中継先のサーバプロキシ部１４の宛先情報（以下、「プロキシ接続先」）は、プロキシ接続先情報記憶部２１１に記憶されている。プロキシ接続先情報記憶部２１１に記憶されるプロキシ接続先は、サーバ１０の無線通信網の状態に応じて書き換えられる。なお、プロキシ接続先は、例えば、ＵＲＬ（Uniform Resource Locator）である。
【００２０】
接続管理部２３は、サーバ１０との無線通信を介した接続を管理する。接続先情報記憶部２１３は、当該端末２０が、最初に接続先とすべきサーバ１０（以下、「元サーバ１０」という。）の宛先情報（アドレス情報）が、予め記憶されている。したがって、接続管理部２３は、最初の接続時には、接続先情報記憶部２１３に記憶されている宛先情報に係るサーバ１０に接続する。切断時接続先情報記憶部２１２には、接続先のサーバ１０との無線接続が切断された場合の無線接続の切替先（以下、「切断時接続先」という。）のサーバ１０を示す情報が記憶される。当該情報は、元サーバ１０から通知される。
【００２１】
一方、サーバ１０は、端末接続管理部１２、接続先決定部１３、サーバプロキシ部１４、及び接続状況同期部１５等を有する。これら各部は、サーバ１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。サーバ１０は、また、端末接続情報記憶部１２１、ＳＳＩＤ／サーバ対応記憶部１２２、サービス先情報記憶部１２３、及び端末接続状況記憶部１２４等を利用する。これら各記憶部は、サーバ１０が有するメモリ装置１０３若しくは補助記憶装置１０２、又はサーバ１０にネットワークを介して接続可能な記憶装置等を用いて実現可能である。また、サーバ１０では、１以上のサービス１１が起動されている。
【００２２】
サービス１１は、端末２０に対して提供されるサービス１１である。端末接続管理部１２は、自サーバ１０のサービス１１を利用する端末２０との無線通信を介した接続を管理する。端末接続情報記憶部１２１には、自サーバ１０に接続されている端末２０ごとに、当該端末２０の接続先や、切断時接続先のサーバ１０を示す情報等が記憶される。ＳＳＩＤ／サーバ対応記憶部１２２には、ＳＳＩＤとサーバ１０との対応情報等が記憶されている。
【００２３】
接続先決定部１３は、端末接続状況記憶部１２４に記憶されている情報に基づいて、自サーバ１０に接続されている各端末２０の切断時接続先のサーバ１０の決定や、当該各端末２０との無線通信の切断の要否の判定等を行う。例えば、端末接続状況記憶部１２４に記憶されている情報に基づいて、自サーバ１０との無線通信が切断された端末２０の数が閾値αを超えたことが検知された場合には、接続先決定部１３は、自サーバ１０に接続中の端末２０の一部又は全部の端末２０について、自サーバ１０との無線通信を切断することを決定する。端末接続状況記憶部１２４には、切断時接続先として指定されたサーバ１０に接続（以下「切替接続」という。）し、切断時接続先のサーバ１０を経由して元サーバ１０のサービス１１にアクセスしている端末２０ごとに、元サーバ１０に対応するＳＳＩＤ、切替接続先のサーバ１０に対応するＳＳＩＤ、及び当該端末２０の端末ＩＤ等を含む端末接続状況情報を記憶する。端末ＩＤとは、端末２０ごとの識別情報である。切断時接続先のサーバ１０を経由して元サーバ１０のサービス１１にアクセスしている端末２０は、元サーバ１０との無線接続が切断された端末２０である。したがって、端末接続状況記憶部１２４を参照することにより、元サーバ１０との無線接続が切断された端末２０の数を知ることができる。
【００２４】
サーバプロキシ部１４は、端末２０の端末プロキシ部２２から送信される、サービス１１へのアクセス要求（サービス１１の利用要求）を、当該アクセス先のサービス１１（利用対象のサービス１１）に中継する。サーバプロキシ部１４は、当該アクセス先のサービス１１が利用できない場合には、当該サービス１１を他のサーバ１０に冗長化し、冗長化先のサービス１１へアクセス要求を中継する。サービス先情報記憶部１２３には、各サービス１１へのアクセス要求の中継先を示す情報が記憶されている。
【００２５】
接続状況同期部１５は、自サーバ１０に対して端末２０が切替接続された場合に、切替接続してきた端末２０の端末ＩＤと、自サーバ１０に対応するＳＳＩＤと、切替接続前に当該端末２０の接続先であった元サーバ１０に対応するＳＳＩＤとを含む通知する情報を、他の各サーバ１０に対して送信する。また、当該他の各サーバ１０における接続状況同期部１５は、当該情報を受信すると、当該情報に対応する端末接続状況情報を生成し、生成された端末接続状況情報を端末接続状況記憶部１２４に記憶する。接続状況同期部１５は、また、自サーバ１０に対する無線通信が不安定であると判定された場合に、自サーバ１０を切断時接続先として利用しないことの要求を、他のサーバ１０の接続状況同期部１５に送信する。
【００２６】
続いて、図１に示したシステムにおいて実行される処理概要について説明する。図４は、各端末が元サーバに対して正常に接続されている場合に実行される処理を説明するための図である。図４において、各サーバ１０の配置関係は、便宜上、図１と異なっている。すなわち、サーバ１０ａが中央に配置されている。また、各サーバ１０におけるサービス１１ａ、１１ｂ、及び１１ｃの宛先情報は、相互に異なる。
【００２７】
図４では、端末２０ａ、２０ｂ、及び２０ｃ等の各端末２０（の接続管理部２３）が、各端末２０にとっての元サーバ１０であるサーバ１０ａの端末接続管理部１２に無線接続されている状態が示されている（ｃ１〜ｃ３）。各端末２０のアプリ２１ａは、サーバ１０ａのサーバプロキシ部１４に対してサービス１１ａに対するアクセス要求を送信する（ｒ１〜ｒ３）。なお、厳密には、サービス１１ａのアクセス要求は、端末プロキシ部２２を介してサーバプロキシ部１４に送信される。サーバ１０ａのサーバプロキシ部１４は、各アプリ２１ａからのアクセス要求を、サービス１１ａに中継する（ｒ４）。
【００２８】
なお、各端末２０は、サーバ１０ａへの接続後、定期的に、自らが検出している無線電波のＳＳＩＤのリストをサーバ１０ａに対して送信している。サーバ１０ａの接続先決定部１３（図４では非図示）は、端末２０ごとに、当該端末２０から通知されたＳＳＩＤのリスト等に基づいて、当該端末２０に対する切断時接続先のサーバ１０を決定し、決定されたサーバ１０に関する切断時接続先情報を、各端末２０に通知する（ｎ１〜ｎ３）。図４では、端末２０ａ及び端末２０ｂに対して「サーバｂ」が通知され、端末２０ｃに対して「サーバｃ」が通知された例が示されている。「サーバｂ」は、サーバ１０ｂに対する接続先情報であるとする。「サーバｃ」は、サーバ１０ｃに対する切断時接続先情報であるとする。すなわち、端末２０ａ及び２０ｂに関しては、サーバ１０ｂが切断時接続先として決定され、端末２０ｃに関しては、サーバ１０ｃが切断時接続先として決定された例が示されている。
【００２９】
また、サーバ１０ａのサーバプロキシ部１４は、接続先決定部１３による決定に応じ、切断時接続先として決定されたサーバ１０ｂ及び１０ｃのそれぞれのサーバプロキシ部１４に対して、サービス１１ａに対する宛先情報（例えば、ＵＲＬ等）のを通知する（ｎ４、ｎ５）。なお、本実施の形態では、各サーバ１０のサーバプロキシ部１４は、初期状態において、自サーバ１０において起動されているサービス１１をアクセス先とするアクセス要求のみについて中継を担当する。したがって、図４においては、サーバ１０ｂのサーバプロキシ部１４は、サービス１１ｂをアクセス先とするアクセス要求のみについて中継を担当し、サーバ１０ｃのサーバプロキシ部１４は、サービス１１ｃをアクセス先とするアクセス要求のみについて中継を担当する。但し、通知ｎ４及び通知ｎ５に応じ、サーバ１０ｂ及び１０ｃのそれぞれのサーバプロキシ部１４は、サービス１１ａを宛先とするアクセス要求について中継を担当すべきことを認識する。なお、サーバ１０ｂ及び１０ｃのサーバプロキシ部１４は、通知ｎ４又は通知ｎ５を受信しなければ、サービス１１ａに対してアクセス要求を中継することができないわけではない。アプリ２１ａからのサービス１１ａへのアクセス要求には、アクセス先として、ＵＲＬのように、ネットワークＮ１上において一意な宛先情報が指定される。したがって、各サーバ１０のサーバプロキシ部１４は、他のサーバ１０のサービス１１に対するアクセス要求を受信したとしても、アクセス先のサービス１１に対して当該アクセス要求を中継することはできる。したがって、各サーバ１０のサーバプロキシ部１４について、中継を担当するアクセス先が決められているというルールが必要でない場合、通知ｎ４及び通知ｎ５は、実行されなくてもよい。
【００３０】
続いて、図５は、無線通信が切断された端末が切替接続を行った場合に実行される処理を説明するための図である。
【００３１】
図５では、サーバ１０ａの無線通信網が混雑等により不安定となった結果、接続ｃ１と接続ｃ３とが切断されてしまった状態が示されている。この場合、端末２０ｂ及び２０ｃのそれぞれの接続管理部２３は、通知ｎ１又はｎ３において通知されている切断時接続先であるサーバ１０の端末接続管理部１２に切替接続する（ｃ４、ｃ５）。この際、端末２０ｂ及び２０ｃのそれぞれの接続管理部２３は、サーバ１０ｂ又は１０ｃの端末接続管理部１２に対し、切替接続であることを通知する。
【００３２】
切替接続されたサーバ１０ｂ及び１０ｃのそれぞれの接続状況同期部１５（図５で非図示）は、端末２０ｂ又は２０ｃが切替接続されたことを、端末２０ｂ及び２０ｃの元サーバ１０であるサーバ１０ａに通知する（ｎ６、ｎ７）。この通知を受けて、サーバ１０ａは、自らの無線通信網が不安定な状況になっていることを知ることができる。そこで、このような通知が頻発した場合、サーバ１０ａの端末接続管理部１２は、現在接続中の端末２０ａに対して切断要求を送信する（ｒ１０）。無線通信網の混雑を解消して、無線通信網を安定した状態に戻すためである。端末２０ａは、当該切断要求に応じ、端末２０ｂと同様に、サーバ１０ｂ経由でサービス１１ａを利用することになる。なお、図５では、この段階において、サーバ１０ａに接続されている端末２０が１台も無い状態に見えるが、実際には、他の端末２０がサーバ１０ａに接続されていてもよい。
【００３３】
一方、端末２０ｂ及び２０ｃのそれぞれのアプリ２１ａは、切断時接続先であるサーバ１０ｂ又はサーバ１０ｃのサーバプロキシ部１４に対して、サービス１１ａに対するアクセス要求を送信する（ｒ５、ｒ６）。なお、アプリ２１ａは、端末２０の接続先が変更されたことの影響は受けない。すなわち、図５の状態において、端末２０ｂ及び２０ｃのそれぞれのアプリ２１ａは、アクセス要求のアクセス先を変更する必要はない。
【００３４】
サーバ１０ｂ及び１０ｃのそれぞれのサーバプロキシ部１４は、図４の通知ｎ４又はｎ５に応じて、サービス１１ａをアクセス先とするアクセス要求についても中継を担当することを認識している。したがって、これらのサーバプロキシ部１４は、アプリ２１ａからのサービス１１ａへのアクセス要求を、当該アクセス要求に指定されているアクセス先に中継する（ｒ７、ｒ８）。その結果、端末２０ｂ及び２０ｃのそれぞれのアプリ２１ａは、継続してサービス１１ａを利用することができる。
【００３５】
上記のような処理により、本実施の形態では、無線通信が不安定な状況を解消可能とすることができる。
【００３６】
以下、端末２０及びサーバ１０のそれぞれが実行する処理手順について詳細に説明する。まず、端末２０が実行する処理について説明する。
【００３７】
図６は、接続管理部がサーバへの接続時に実行する処理手順の一例を説明するためのフローチャートである。図６の処理は、元サーバ１０への接続時において１回実行されればよい。
【００３８】
例えば、ユーザによる、サーバ１０への接続指示の入力に応じ、接続管理部２３は、接続先情報記憶部２１３から接続先情報を取得する（Ｓ１０１）。
【００３９】
図７は、接続先情報記憶部の構成例を示す図である。図７に示されるように、接続先情報記憶部２１３には、ＳＳＩＤ、パスフレーズ、サーバ接続先、及びプロキシ接続先等を含む接続先情報が記憶されている。ＳＳＩＤは、元サーバ１０のアクセスポイントＡＰのＳＳＩＤである。パスフレーズは、当該ＳＳＩＤに対応する無線通信網への接続時の認証に利用されるパスフレーズである。サーバ接続先は、元サーバ１０の端末接続管理部１２の宛先情報である。プロキシ接続先は、元サーバ１０のサーバプロキシ部１４の宛先情報である。サーバ接続先及びプロキシ接続先のそれぞれの値は、例えば、ＵＲＬである。なお、接続先情報記憶部２１３に記憶されているサーバ接続先及びプロキシ接続先のそれぞれは、相互に同一のサーバ１０の端末接続管理部１２又はサーバプロキシ部１４を示す。すなわち、サーバ接続先及びプロキシ接続先がＵＲＬである場合、それぞれのＩＰアドレスは共通する。
【００４０】
なお、接続先情報は、予め設定されて接続先情報記憶部２１３に記憶されている。すなわち、各端末２０には、当初の接続先のサーバ１０が予め設定されている。例えば、学校において、或るクラスに属する生徒の端末２０には、当該クラスに設置されているサーバ１０が、当初の接続先として設定されていてもよい。
【００４１】
続いて、接続管理部２３は、取得された接続先情報のＳＳＩＤのアクセスポイントＡＰに無線接続し、当該接続先情報のサーバ接続先によって特定されるサーバ１０の端末接続管理部１２に接続する（Ｓ１０２）。続いて、接続管理部２３は、接続先のサーバ１０の端末接続管理部１２に対し、当該端末２０の端末ＩＤを含む接続要求を送信する（Ｓ１０３）。端末ＩＤは、予め端末２０に記憶されていてもよいし、端末２０ごとに固有の情報に基づいて自動的に生成されてもよい。続いて、接続管理部２３は、接続先情報に含まれているプロキシ接続先を、端末プロキシ部２２に通知する（Ｓ１０４）。
【００４２】
続いて、接続管理部２３が、図６の処理の後に実行する処理について説明する。図８は、接続管理部がサーバとの接続後に実行する処理手順の一例を説明するためのフローチャートである。
【００４３】
接続管理部２３は、接続先のサーバ１０の端末接続管理部１２からの要求（Ｓ２０１）、端末プロキシ部２２からの切断要求（Ｓ２１１）又は無線接続状況の変化（Ｓ２２１）等を契機に処理を実行する。また、接続管理部２３は、定期的に（Ｓ２２１でＮＯ）、無線通信用の電波をスキャンし、端末２０から検出できる電波のＳＳＩＤのリストを取得する（Ｓ２３１）。
【００４４】
定期的にＳＳＩＤのリストを取得した場合、接続管理部２３は、当該端末２０の端末ＩＤと当該ＳＳＩＤのリストとを含む、ＳＳＩＤリストの更新要求を、図６において接続したサーバ１０の端末接続管理部１２に送信する（Ｓ２３２）。
【００４５】
また、サーバ１０の端末接続管理部１２からの通知（Ｓ２０１）とは、ステップＳ２３２におけるＳＳＩＤのリストの送信等に応じて端末接続管理部１２から送信される、切断時接続先のサーバ１０を示す切断時接続先情報の通知（Ｓ２０２でＮＯ）、又は無線通信の切断要求（Ｓ２０２でＹＥＳ）である。
【００４６】
端末接続管理部１２から切断時接続先情報の通知が受信された場合（Ｓ２０２でＮＯ）、接続管理部２３は、当該通知に含まれている切断時接続先情報を取得する（Ｓ２０３）。
【００４７】
図９は、切断時接続先情報の構成例を示す図である。図９において、切断時接続先情報は、ＳＳＩＤ及びパスフレーズ、サーバ接続先、並びにプロキシ接続先等を含む。すなわち、切断時接続先情報は、図７に示した接続先情報と同様の構成を有する。但し、接続先情報は、元サーバ１０に関する情報であるのに対し、切断時接続先情報は、切断時接続先のサーバ１０に関する情報である。具体的には、切断時接続先情報のＳＳＩＤは、切断時接続先のサーバ１０のアクセスポイントＡＰのＳＳＩＤである。切断時接続先情報のサーバ接続先は、切断時接続先のサーバ１０の端末接続管理部１２の宛先情報である。切断時接続先情報のプロキシ接続先は、切断時接続先のサーバ１０のサーバプロキシ部１４の宛先情報である。例えば、或る端末２０の元サーバ１０が、サーバ１０ａである場合、接続先情報のＳＳＩＤ、サービス接続先、プロキシ接続先は、サーバ１０ａのアクセスポイントＡＰ、端末接続管理部１２、サーバプロキシ部１４に対応する値である。また、当該端末２０に関して決定された切断時接続先のサーバ１０が、サーバ１０ｂである場合、切断時接続先情報のＳＳＩＤ、サービス接続先、プロキシ接続先は、サーバ１０ｂのアクセスポイントＡＰ、端末接続管理部１２、サーバプロキシ部１４に対応する値である。なお、各端末２０の切断時接続先は、接続先決定部１３によって決定される。
【００４８】
続いて、接続管理部２３は、取得された切断時接続先情報によって、切断時接続先情報記憶部２１２の記憶内容を更新する（Ｓ２０４）。すなわち、切断時接続先情報が既に切断時接続先情報記憶部２１２記憶されている場合には、既存の切断時接続先情報が、新たな切断時接続先情報によって上書きされる。
【００４９】
一方、端末接続管理部１２からの通知が、無線通信の切断要求である場合（Ｓ２０２でＹＥＳ）、接続管理部２３は、切断時接続先情報記憶部２１２から切断時接続先情報を取得する（Ｓ２２２）。なお、基本的に、ステップＳ２２２は、ステップＳ２０４が少なくとも１回実行された後に実行される。したがって、ステップＳ２２２の実行時において、切断時接続先情報記憶部２１２には切断時接続先情報が記憶されている。
【００５０】
続いて、接続管理部２３は、切断時接続先情報のＳＳＩＤに係るアクセスポイントＡＰに無線接続し、当該切断時接続先情報のサーバ接続先によって特定されるサーバ１０の端末接続管理部１２に切替接続する（Ｓ２２３）。例えば、サーバ１０ａが元サーバ１０であり、サーバ１０ｂが、切断時接続先のサーバ１０である場合、サーバ１０ａとの接続が切断され、サーバ１０ｂのアクセスポイントＡＰに接続されて、サーバ１０ｂの端末接続管理部１２に接続（切替接続）される。なお、切替接続時における、接続管理部２３から切断時接続先のサーバ１０への接続要求（切替接続要求）には、端末２０の端末ＩＤと、元サーバ１０のＳＳＩＤと、切替接続であることを示す情報とが含まれている。
【００５１】
続いて、接続管理部２３は、当該切断時接続先情報のプロキシ接続先を端末プロキシ部２２へ通知する（Ｓ２２４）。アプリ２１から端末プロキシ部２２に通知されるサービス１１のアクセス要求が、切断時接続先のサーバ１０のサーバプロキシ部１４に中継されるようにするためである。
【００５２】
また、端末プロキシ部２２からの切断要求（Ｓ２１１）とは、サービス１１へのアクセス要求の中継を行った端末プロキシ部２２が、サービス１１へのアクセスに失敗したことを検知した場合に、端末プロキシ部２２から通知される、無線通信の切断要求である。接続管理部２３は、斯かる切断要求を受信すると（Ｓ２１１でＹＥＳ）、ステップＳ２２２〜Ｓ２２４を実行する。その結果、元サーバ１０から切断時接続先のサーバ１０へ接続先が切り替わる。
【００５３】
また、無線が切断される（Ｓ２２１）のは、例えば、無線通信の混雑により、アクセスポイントＡＰとの無線通信の切断が検知されることである。接続管理部２３は、無線通信の切断を検知すると（Ｓ２２１でＹＥＳ）、ステップＳ２２２〜Ｓ２２４を実行する。その結果、元サーバ１０から切断時接続先のサーバ１０へ接続先が切り替わる。
【００５４】
続いて、端末２０の端末プロキシ部２２が実行する処理について説明する。図１０は、端末プロキシ部が実行する処理手順の一例を説明するためのフローチャートである。
【００５５】
端末プロキシ部２２は、アプリ２１からのサービス１１へのアクセス要求又は接続管理部２３からのプロキシ接続先の通知を待機している（Ｓ３０１）。
【００５６】
接続管理部２３からプロキシ接続先が通知されると（Ｓ３０１でＮＯ）、端末プロキシ部２２は、当該プロキシ接続先によって、プロキシ接続先記憶部２１１に記憶されているプロキシ接続先を更新する（Ｓ３０２）。すなわち、当該プロキシ接続先が、接続先とすべきサーバプロキシ部１４の宛先情報としてプロキシ接続先記憶部２１１に記憶される。なお、ステップＳ３０２は、図６のステップＳ１０４又は図８のステップＳ２２４に応じて実行される。すなわち、ステップＳ３０２は、元サーバ１０に接続した際、又は接続先のサーバ１０が切り替わった際に実行される。
【００５７】
一方、端末プロキシ部２２は、アプリ２１からのサービス１１へのアクセス要求を受信すると（Ｓ３０１でＹＥＳ）、プロキシ接続先記憶部２１１に記憶されているプロキシ接続先に係るサーバプロキシ部１４へ、当該アクセス要求を送信する（Ｓ３０３）。当該アクセス要求には、アクセスの内容（アクセス先のサービス１１の宛先情報や当該サービス１１に対する要求の内容等）が含まれている。なお、アクセス先のサービス１１の宛先情報は、例えば、ＵＲＬである。
【００５８】
当該アクセス要求に応じたサービス１１へのアクセス（サービス１１の利用）が成功すると（Ｓ３０４でＹＥＳ）、端末プロキシ部２２は、アクセス結果をアプリ２１に返却する（Ｓ３０５）。アクセス結果とは、アクセス先のサービス１１から返信される応答である。また、アクセスの成功とは、アクセス先のサービス１１からの応答が正常に受信されることである。
【００５９】
一方、当該アクセス要求に応じたアクセスに失敗すると（Ｓ３０４でＮＯ）、端末プロキシ部２２は、現在接続中のサーバ１０との切断を接続管理部２３に要求する（Ｓ３０６）。例えば、端末プロキシ部２２が、プロキシ接続先に係るサーバプロキシ部１４にアクセスできない場合、又は端末プロキシ部２２からサーバプロキシ部１４へのアクセスには成功したが、サーバプロキシ部１４からアクセス先のサービス１１へのアクセスに失敗した場合等に、ステップＳ３０６が実行される。ステップＳ３０６における要求に応じて、図８のステップＳ２１１でＹＥＳの場合の処理（Ｓ２２２〜Ｓ２２４）が実行される。
【００６０】
なお、アプリ２１は、端末２０の接続先がいずれであるかに関わらず、アプリ２１が利用したいサービス１１をアクセス先とする。例えば、端末２０と元サーバ１０（ここでは、サーバ１０ａとする。）との接続が切断され、端末２０が切断時接続先のサーバ１０（ここでは、サーバ１０ｂとする）に接続された後であっても、アプリ２１は、サーバ１０ａのサービス１１をアクセス先とするアクセス要求を端末プロキシ部２２へ送信する。この場合、プロキシ接続先記憶部２１１に記憶されているプロキシ接続先は、サーバ１０ｂのサーバプロキシ部１４であるため、端末プロキシ部２２は、当該アクセス要求をサーバ１０ｂのサーバプロキシ部１４に送信する。サーバ１０ｂのサーバプロキシ部１４は、当該アクセス要求に含まれているアクセス先に基づいて、サーバ１０ａのサービス１１にアクセスする。すなわち、無線が切断されたとしても、サーバ１０ａのサービス１１が正常に稼動している限り、サーバ１０ａのサービス１１がアクセス対象とされる。したがって、サーバ１０ａの無線通信網が不安定な場合であっても、端末２０は、サーバ１０ａのサービス１１を安定的に利用することができる。
【００６１】
続いて、サーバ１０が実行する処理について説明する。図１１は、端末接続管理部が実行する処理手順の一例を説明するためのフローチャートである。端末接続管理部１２は、端末２０の接続管理部２３からの要求又は接続状況同期部１５からの要求を契機に動作する。接続管理部２３からの要求とは、図６のステップＳ１０３において送信される接続要求若しくは図８のステップＳ２２３において送信される切替接続要求、切断要求、及び図８のステップＳ２３２において送信されるＳＳＩＤリストの更新要求である。なお、切断要求とは、サービス１１の利用を終了したユーザによる端末２０に対する切断指示に応じて、端末２０の接続管理部２３から送信される切断要求である。すなわち、ここでの切断要求は、異常に応じた切断要求ではなく、正常系における切断要求である。
【００６２】
端末接続管理部１２は、図６のステップＳ１０３において端末２０の接続管理部２３から送信される接続要求又は図８のステップＳ２２３において端末２０の接続管理部２３から送信される切替接続要求を受信すると（Ｓ４０１でＹＥＳ）、新たな端末接続情報を生成し、当該接続要求に含まれている端末ＩＤ等を当該端末接続情報に設定する（Ｓ４０２）。
【００６３】
図１２は、端末接続情報の構成例を示す図である。端末接続情報は、サーバ１０に接続されている端末２０ごとに生成される情報であり、端末ＩＤ、ＳＳＩＤリスト、接続先情報、切断時接続先情報、及び切断指示等の項目を含む。端末ＩＤは、当該端末接続情報に対応する端末２０の端末ＩＤである。ＳＳＩＤリストは、端末ＩＤに係る端末２０によって検出されているＳＳＩＤのリストである。
【００６４】
接続先情報は、端末ＩＤに係る端末２０の現在の接続先に関する情報であり、ＳＳＩＤ、サーバ接続先、プロキシ接続先等を含む。ＳＳＩＤは、端末ＩＤに係る端末２０の現在の接続先のアクセスポイントＡＰのＳＳＩＤである。サーバ接続先は、端末ＩＤに係る端末２０の現在の接続先のサーバ１０の端末接続管理部１２の宛先情報である。プロキシ接続先は、端末ＩＤに係る端末２０の現在の接続先のサーバ１０のサーバプロキシ部１４の宛先情報である。
【００６５】
切断時接続先情報は、切断時接続先のサーバ１０に関する情報であり、その構成は、基本的に、図９と同じである。但し、端末接続情報に属する切断時接続先情報は、更新フラグを含む。更新フラグは、後述される接続先決定部１３が実行する処理において当該切断時接続先情報が更新されたか否かを判定するためのフラグである。接続先決定部１３によって当該切断時接続先情報が更新された場合には、更新フラグの値が「真」に変更される。
【００６６】
切断指示は、当該端末接続情報に係る端末２０に対して自サーバ１０との接続の切断を指示するか否かを示す情報であり、その値は、「真」又は「偽」である。「真」は、切断を指示することを示し、「偽」は、切断を指示しないことを示す。元サーバ１０と接続されていた端末２０のうち、無線通信の異常によって他のサーバ１０へ切替接続された端末２０の数が閾値αを超える場合に、元サーバ１０に接続されている一部又は全部の端末２０の端末接続情報の切断指示の値が「真」に更新される。
【００６７】
ステップＳ４０２では、新たに生成された端末接続情報の端末ＩＤに値が設定される。また、当該端末接続情報の接続先情報のＳＳＩＤ、サーバ接続先、及びプロキシ接続先のそれぞれに、自サーバ１０に対応するＳＳＩＤ、自サーバ１０の端末接続管理部１２の宛先情報、自サーバ１０のサーバプロキシ部１４の宛先情報が設定される。当該端末接続情報の他の項目の値は、後述の処理で設定される。
【００６８】
続いて、端末接続管理部１２は、生成された端末接続情報を、端末接続情報記憶部１２１に記憶する（Ｓ４０３）。したがって、端末接続情報記憶部１２１には、サーバ１０に接続されている端末２０ごとに、端末接続情報が記憶される。
【００６９】
続いて、端末接続管理部１２は、処理対象とされている接続要求が、切替接続要求であるか否かを判定する（Ｓ４０４）。すなわち、当該接続要求が、図８のステップＳ２２３において端末２０から送信される切替接続要求であるか否かが判定される。当該判定は、切替接続要求であることを示す情報が当該接続要求に含まれているか否かに基づいて行うことができる。切替接続要求でない場合（Ｓ４０４でＮＯ）、図１１の処理は終了する。
【００７０】
切替接続要求である場合（Ｓ４０４でＹＥＳ）、端末接続管理部１２は、自サーバ１０の接続状況同期部１５に、切替接続が行われたことを通知する（Ｓ４０５）。当該通知には、切替接続要求に含まれている端末ＩＤ及び元サーバ１０のＳＳＩＤが含まれる。この場合、後述されるように、或る端末２０が自サーバ１０に対して切替接続されたことが、接続状況同期部１５によって他のサーバ１０に通知される。例えば、切断時接続先がサーバ１０ｂであれば、或る端末２０が、サーバ１０ｂに切替接続されたことが、サーバ１０ａ及びサーバ１０ｃに対して通知される。当該通知には、当該或る端末２０の端末ＩＤが含まれる。したがって、サーバ１０ａ及びサーバ１０ｃのそれぞれは、当該通知に含まれている端末ＩＤと、自サーバ１０の端末接続情報記憶部１２１に記憶されている端末接続情報とに基づいて、当該或る端末２０が、自らに接続されていた端末２０であるか否かを判定することができる。すなわち、サーバ１０ａ及びサーバ１０ｃのうちの当該或る端末２０の元サーバ１０は、自らに接続していた端末２０が、自らとの無線通信の異常によって、他のサーバ１０に切替接続されたことを知ることができる。
【００７１】
また、端末接続管理部１２は、端末２０の接続管理部２３から送信された、正常系での切断要求を受信すると（Ｓ４２１でＹＥＳ）、当該切断要求に含まれている端末ＩＤに係る端末接続情報（図１２）を、端末接続情報記憶部１２１から削除する（Ｓ４２２）。
【００７２】
続いて、端末接続管理部１２は、接続先決定部１３に対し処理の実行を要求する（Ｓ４４１）。接続先決定部１３は、端末接続情報記憶部１２１に記憶されている端末接続情報の一覧に基づいて、各端末２０の切断時接続先を決定する。また、接続先決定部１３は、自サーバ１０から他のサーバ１０へ切替接続した端末２０の数に基づいて、自サーバ１０に接続中の各端末２０について、切断指示の要否を判定する。したがって、接続先決定部１３によって、端末接続情報記憶部１２１に記憶されている端末接続情報の一覧のうち、いずれかの端末接続情報の切断時接続先情報又は切断指示が更新されうる。切断時接続先情報が更新された場合、当該切断時接続先情報の更新フラグが「真」に変更される。
【００７３】
接続先決定部１３による処理が終了すると、端末接続管理部１２は、端末接続情報記憶部１２１に記憶されている端末接続情報のうち、切断時接続先情報の更新フラグが「真」である端末接続情報を特定し、特定された端末接続情報の端末ＩＤに係る端末２０に対し、当該端末接続情報の切断時接続先情報を送信する（Ｓ４４２）。端末接続管理部１２は、送信された切断時接続先情報の更新フラグを「偽」に変更する。なお、ここで送信された切断時接続先情は、図８のステップＳ２０１において受信される。すなわち、この場合、切断時接続先情報の送信先の端末２０においては、ステップＳ２０３及びＳ２０４が実行される。
【００７４】
続いて、端末接続管理部１２は、端末接続情報記憶部１２１に記憶されている端末接続情報のうち、切断フラグが「真」である端末接続情報を特定し、特定された端末接続情報の端末ＩＤに係る端末２０に対し、切断要求を送信する（Ｓ４４３）。端末接続管理部１２は、切断要求が送信された端末２０に対応する端末接続情報の切断フラグを「偽」に変更する。なお、ここで送信された切断要求は、図８のステップＳ２０１において受信される。すなわち、この場合、接続要求の送信先の端末２０においては、ステップＳ２２２〜Ｓ２２４が実行される。その結果、当該端末２０は、当該端末２０に対して設定されている切断時接続先情報が示すサーバ１０に切替接続する。なお、ステップＳ４４３において、端末接続管理部１２は、切断要求を端末２０に送信するのではなく、当該端末２０の無線通信を強制的に切断してしまってもよい。この場合、当該端末２０は、図８のステップＳ２２１でＹＥＳの場合の処理を実行することになり、切断要求が送信される場合と同様の効果を得ることができる。
【００７５】
また、端末接続管理部１２は、図８のステップＳ２３２において送信されるＳＳＩＤリストの更新要求を受信すると（Ｓ４２１でＮＯ）、ＳＳＩＤ／サーバ対応記憶部１２２を参照して、受信したＳＳＩＤのリストから、いずれのサーバ１０にも対応しないＳＳＩＤを除去する（Ｓ４３１）。
【００７６】
図１３は、ＳＳＩＤ／サーバ対応記憶部の構成例を示す図である。図１３に示されるように、ＳＳＩＤ／サーバ対応記憶部１２２には、サーバ１０ごとに、自サーバ１０に対応するＳＳＩＤと、パスフレーズ、サーバ接続先、プロキシ接続先、代替利用可能フラグ、及び更新フラグとが記憶されている。
【００７７】
パスフレーズは、端末２０が切替接続する際に、ＳＳＩＤのアクセスポイントに接続する際に利用する情報である。ここでは、ＳＳＩＤとパスフレーズにより無線接続する例を挙げたが、ＳＳＩＤ、ＢＳＳＩＤ、ＭＡＣアドレスなど、無線接続に必要な情報を含む構成にすることも可能である。サーバ接続先は、自サーバ１０の端末接続管理部１２の宛先情報である。図１３における「サーバａ」、「サーバｂ」、「サーバｃ」は、実際には、サーバ１０ａ、サーバ１０ｂ、サーバ１０ｃのそれぞれの端末接続管理部１２の宛先情報を示す。
【００７８】
プロキシ接続先は、自サーバ１０のサーバプロキシ部１４の宛先情報である。図１３における「プロキシａ」、「プロキシｂ」、「プロキシｃ」は、実際には、プロキシ１０ａ、サーバ１０ｂ、サーバ１０ｃのそれぞれのサーバプロキシ部１４の宛先情報（ＵＲＬ等）を示す。
【００７９】
代替利用可能フラグは、自サーバ１０を、他のサーバ１０に対する切断時接続先として利用可能であるか否かを示す情報である。初期値は、利用可能であることを示す「真」である。
【００８０】
更新フラグは、代替利用可能フラグの値が更新されたか否かを示す情報である。「真」は、更新されたことを示し、「偽」は、更新されていないことを示す。すなわち、代替利用可能フラグは、各サーバ１０に対する無線接続の状況に応じて変更されうる。
【００８１】
ＳＳＩＤ／サーバ対応記憶部１２２に記憶されていないＳＳＩＤは、サーバ１０のＳＳＩＤではないということになる。したがって、ステップＳ４３１では、受信されたＳＳＩＤのリストから、サーバ１０には対応しないＳＳＩＤが除去される。なお、この際、自サーバ１０に対応するＳＳＩＤも、受信されたＳＳＩＤのリストから除去される。
【００８２】
続いて、端末接続管理部１２は、端末接続情報記憶部１２１において、受信された更新要求に含まれている端末ＩＤに係る端末接続情報のＳＳＩＤリストを、ステップＳ４３１の実行後のＳＳＩＤのリストによって更新する（Ｓ４３２）。続いて、端末接続管理部１２は、ステップＳ４４１〜Ｓ４４３を実行する。
【００８３】
また、端末接続管理部１２は、接続状況同期部１５からの要求を受信した場合も（Ｓ４１１でＹＥＳ）、ステップＳ４４１〜Ｓ４４３を実行する。なお、接続状況同期部１５からの要求（Ｓ４１１）については後述される。
【００８４】
続いて、接続状況同期部１５が実行する処理について説明する。図１４は、接続状況同期部が実行する処理手順の一例を説明するためのフローチャートである。接続状況同期部１５は、図１１のステップＳ４０５における、端末接続管理部１２からの切替接続の通知、又は他のサーバ１０の接続状況同期部１５からの同期要求に応じて動作する。
【００８５】
図１１のステップＳ４０５において、端末２０が自サーバ１０に切替接続されたことが端末接続管理部１２から通知されると（Ｓ５０１でＮＯ、かつ、Ｓ５０２でＹＥＳ）、端末接続管理部１２は、切替接続された端末２０の端末ＩＤと、元サーバ１０のＳＳＩＤと、自サーバ１０（切替接続されたサーバ１０）に対応するＳＳＩＤとを含む同期要求を、他の各サーバ１０の接続状況同期部１５に配信する（Ｓ５０３）。すなわち、当該端末２０が、元サーバ１０から自サーバ１０に対して切替接続されたことが、各サーバ１０に通知される。但し、当該同期要求は、元サーバ１０に対してのみ送信されてもよい。なお、当該同期要求は、図５の通知ｎ６及びｎ７に対応する。
【００８６】
他の各サーバ１０の接続状況同期部１５は、当該同期要求を受信すると（Ｓ５０１でＹＥＳ、かつ、Ｓ５１１でＹＥＳ）、当該同期要求に含まれている端末ＩＤに対応する端末接続状況情報を生成し、生成された端末接続状況情報を端末接続状況記憶部１２４に記憶する（Ｓ５１２）。
【００８７】
図１５は、端末接続状況情報の構成例を示す図である。図１５に示されるように、端末接続状況情報は、端末ＩＤ及びＳＳＩＤ情報等の項目を含む。端末ＩＤは、当該端末接続状況情報に対応する端末２０の端末ＩＤである。ＳＳＩＤ情報は、元ＳＳＩＤ及び接続中ＳＳＩＤを含む。元ＳＳＩＤは、当該端末２０にとっての元サーバ１０のＳＳＩＤである。接続中ＳＳＩＤは、当該端末２０が現在接続しているサーバ１０に対応するＳＳＩＤである。すなわち、接続中ＳＳＩＤは、当該端末２０から切替接続されたサーバ１０のＳＳＩＤである。なお、当該同期要求に含まれている端末ＩＤに対応する端末接続状況情報が、既に末接続状況情報記憶部に記憶されている場合には、当該端末接続情報のＳＳＩＤ情報が、当該同期要求に含まれているＳＳＩＤによって更新される。
【００８８】
このように、端末接続状況記憶部１２４には、切替接続された端末２０ごとに、端末接続状況情報が記憶される。
【００８９】
続いて、接続状況同期部１５は、当該同期要求に含まれている端末ＩＤに対応する端末接続情報の削除を端末接続管理部１２に要求する（Ｓ５１３）。端末接続管理部１２は、当該要求に応じ、当該端末ＩＤを含む端末接続情報が端末接続情報記憶部１２１に記憶されていれば、当該端末接続情報を削除する。すなわち、当該同期情報を受信したサーバ１０が、当該同期情報に含まれている端末ＩＤに係る端末２０に対する元サーバ１０である場合、当該端末２０と当該サーバ１０との接続が切断されたにも拘わらず、当該端末２０に対応する端末接続情報が端末接続情報記憶部１２１に記憶されたままになっている可能性が有る。そこで、ステップＳ５１３では、当該サーバ１０からの切断要求に応じて他のサーバ１０へ切替接続した端末２０、又は当該サーバ１０との無線通信の切断を検知して他のサーバ１０へ切替接続した端末２０に対応する端末接続情報が、端末接続情報記憶部１２１から削除される。
【００９０】
続いて、接続状況同期部１５は、自サーバ１０の端末接続管理部１２に処理の実行を要求する（Ｓ５３１）。当該要求が、図１１のステップＳ４１１における、接続状況同期部１５からの要求に相当する。したがって、ステップＳ５３１において、図１１のＳ４４１〜Ｓ４４３が実行される。その結果、自サーバ１０のＳＳＩＤ／サーバ対応記憶部１２２（図１３）における、自サーバ１０のＳＳＩＤに対応するレコードの代替フラグが「偽」に更新され、それに伴って、当該レコードの更新フラグが「真」に更新される可能性が有る。
【００９１】
端末接続管理部１２による処理が終了すると、接続状況同期部１５は、ＳＳＩＤ／サーバ対応記憶部１２２において自サーバ１０に対するレコードの更新フラグが「真」であれば、当該レコードの代替利用可能フラグの値の同期要求を他の各サーバ１０に配信する（Ｓ５３２）。当該同期要求には、自サーバ１０に対応するＳＳＩＤ及び当該代替利用可能フラグの値が含まれる。
【００９２】
他の各サーバ１０の接続状況同期部１５は、当該同期要求を受信すると（Ｓ５０１でＹＥＳ、かつ、Ｓ５１１でＮＯ）、受信された同期要求に従って、自サーバ１０のＳＳＩＤ／サーバ対応記憶部１２２の内容を更新する（Ｓ５２２）。すなわち、ＳＳＩＤ／サーバ対応記憶部１２２において、当該同期要求に含まれているＳＳＩＤに対応するレコードの代替利用可能フラグの値が、当該同期要求に含まれている値に更新される。続いて、ステップＳ５３１及びＳ５３２が実行される。
【００９３】
続いて、接続先決定部１３が実行する処理について説明する。図１６は、接続先決定部が実行する処理手順の一例を説明するためのフローチャートである。接続先決定部１３は、図１１のステップＳ４４１における端末接続管理部１２からの要求を契機に動作する。すなわち、他のサーバ１０から同期要求を受けたり、端末２０から切断要求を受けたり、自サーバ１０に接続している端末２０によって検出されるＳＳＩＤに変化が有ったりといったように、端末２０の環境やサーバ１０に接続される端末２０の構成等に何らかの変化が発生した場合に、図１６の処理が実行される。
【００９４】
ステップＳ６０１において、接続先決定部１３は、端末接続情報記憶部１２１から全ての端末接続情報を取得する。続いて、接続先決定部１３は、ＳＳＩＤ／サーバ対応記憶部１２２に記憶されている全てのレコードを取得する（Ｓ６０２）。続いて、接続先決定部１３は、取得されたレコードの中から、代替利用可能フラグの値が「真」であるレコードのみを抽出する（Ｓ６０３）。すなわち、切断時接続先の候補が、代替利用可能フラグの値が「真」であるサーバ１０に絞り込まれる。
【００９５】
続いて、接続先決定部１３は、各端末接続情報のＳＳＩＤリストの値に基づいて、端末接続情報ごと（すなわち、端末２０ごと）に、切断時接続先に係るＳＳＩＤ、サーバ接続先、及びプロキシ接続先を決定する（Ｓ６０４）。或る端末２０にとっての切断時接続先のＳＳＩＤとしては、当該端末２０に係る端末接続情報のＳＳＩＤリストに含まれているＳＳＩＤであれば、いずれのＳＳＩＤが選択されてもよい。選択されたＳＳＩＤに対応するサーバ１０の端末接続管理部１２の宛先情報及び当該サーバ１０のサーバプロキシ部１４の宛先情報が、切断時接続先のサーバ接続先又は切断時接続先のプロキシ接続先とされてもよい。
【００９６】
または、所定の規則に基づいて、ＳＳＩＤ、サーバ接続先、及びプロキシ接続先が決定されてもよい。例えば、各端末接続情報のＳＳＩＤリストに含まれているＳＳＩＤの内訳に基づいて、切断時接続先のＳＳＩＤが決定されてもよい。一例として、最も多くの端末２０によって検出されているＳＳＩＤが優先して選択されるようにしてもよい。これは、多くの端末２０に近いサーバ１０で無線接続を代替することがネットワークの効率がいいと判断する例である。この場合、当該ＳＳＩＤに対応するサーバ１０の端末接続管理部１２の宛先情報及び当該サーバ１０のサーバプロキシ部１４の宛先情報が、切断時接続先のサーバ接続先又は切断時接続先のプロキシ接続先として決定される。但し、当該ＳＳＩＤを検出できていない端末２０については、当該端末２０において検出されているＳＳＩＤの中で最も多くの端末２０によって検出されているＳＳＩＤが選択される。この場合、当該ＳＳＩＤに対応するサーバ１０の端末接続管理部１２の宛先情報及び当該サーバ１０のサーバプロキシ部１４の宛先情報が、切断時接続先のサーバ接続先又は切断時接続先のプロキシ接続先として決定される。
【００９７】
他の例として、各サーバ１０の利用状況（負荷状況）や、無線の混み具合などから、切断時接続先が決定されてもよい。各サーバ１０の利用状況に基づいて、切断時接続先が決定される場合、サーバ１０間において、それぞれの利用状況を示す情報（例えば、それぞれに記憶されている端末接続情報）が交換されてもよい。この場合、それぞれの端末接続情報の数に基づいて、それぞれのサーバ１０の利用状況（負荷状況）が判定されてもよい。又は、各サーバ１０のＣＰＵ１０４の負荷等が、サーバ１０間で交換されてもよい。なお、各端末２０によって検出されているＳＳＩＤは、各端末２０に対応する端末接続情報のＳＳＩＤリストに基づいて特定可能である。
【００９８】
なお、ステップＳ６０４において端末接続情報ごとに決定されたＳＳＩＤ、サーバ接続先、及びプロキシ接続先は、各端末接続情報の切断時接続先情報に設定される。但し、設定される値が、当該切断時接続先情報に既に設定されているＳＳＩＤ、サーバ接続先、及びプロキシ接続先と同じである場合、当該切断時接続先情報の更新は行われなくてもよい。
【００９９】
続いて、接続先決定部１３は、更新された切断時接続先情報の更新フラグを「真」に変更する（Ｓ６０５）。続いて、接続先決定部１３は、更新フラグが「真」である切断時接続先情報をサーバプロキシ部１４に通知する（Ｓ６０６）。
【０１００】
続いて、接続先決定部１３は、端末接続状況記憶部１２４に記憶されている端末接続状況情報（図１５）に基づいて、自サーバ１０から他のサーバ１０へ接続を切り替えた端末２０の数（以下、「切替数」という。）を特定する（Ｓ６０７）。切替数は、端末接続状況記憶部１２４に記憶されている端末接続状況情報の中で、ＳＳＩＤ情報の元ＳＳＩＤの値が、自サーバ１０に対応するＳＳＩＤに一致する端末接続状況情報の数である。
【０１０１】
続いて、接続先決定部１３は、切替数が閾値αを超えるか否かを判定する（Ｓ６０８）。切替数が閾値α以下である場合（Ｓ６０８でＮＯ）、図１６の処理は終了する。
【０１０２】
切替数が閾値αを超える場合（Ｓ６０８でＹＥＳ）、接続先決定部１３は、端末接続情報記憶部１２１に記憶されている端末接続情報（図１２）のうちの一部又は全部の端末接続情報の切断指示の値を「真」にする（Ｓ６０９）。すなわち、自サーバ１０に接続中の一部又は全部の端末２０に対する切断要求が生成される。切替数が閾値αを超える場合、自サーバ１０への無線接続が切断されてしまう端末２０が多発していることになる。したがって、自サーバ１０のアクセスポイントＡＰに係る無線通信網が不安定な状態（例えば、混雑等が発生している状態）であることが推定される。そこで、該無線通信網を使用する端末２０を減少させて、当該無線通信網を安定させるためにステップＳ６０９が実行される。なお、切断指示が「真」にされる端末接続情報の数（すなわち、切断要求の対象となる端末２０の数）は、そうでない端末接続情報の数が閾値α以下となるように決定されてもよい。例えば、（切替数−閾値α）分の数の端末接続情報について、切断指示が「真」にされてもよい。
【０１０３】
続いて、接続先決定部１３は、ＳＳＩＤ／サーバ対応記憶部１２２において、自サーバ１０に対応するレコードの代替利用可能フラグに「偽」を設定し、当該レコードの更新フラグに「真」を設定する（Ｓ６１０）。自サーバ１０の無線通信網が不安定であるため、自サーバ１０が他のサーバ１０に対する切断時接続先として選択されないようにするためである。すなわち、ステップＳ６０３より明らかなように、代替利用可能フラグが「偽」であるサーバ１０は、切断時接続先には選択されない。
【０１０４】
なお、図１６の処理の結果は、図１１のステップＳ４４２及びＳ４４３において端末２０に反映される。
【０１０５】
続いて、サーバプロキシ部１４が実行する処理について説明する。図１７は、サーバプロキシ部が実行する処理手順の一例を説明するためのフローチャートである。サーバプロキシ部１４は、図１０のステップＳ３０３の端末プロキシ部２２からのサービス１１へのアクセス要求、図１６のステップＳ６０６における、接続先決定部１３からの通知等を契機に動作する。
【０１０６】
サーバプロキシ部１４は、端末プロキシ部２２からのサービス１１へのアクセス要求を受信すると（Ｓ７０１でＹＥＳ）、サービス先情報記憶部１２３に記憶されているサービス先情報を参照して、当該アクセス要求の中継先を決定する（Ｓ７０２）。
【０１０７】
図１８は、サービス先情報記憶部の構成例を示す図である。図１８に示されるように、サービス先情報記憶部１２３には、自サーバ１０のサーバプロキシ部１４がアクセス要求の中継を担当するサービス１１ごとに、サービス接続先、冗長化先、及び代替フラグ等が記憶されている。
【０１０８】
サービス接続先は、自サーバ１０のサーバプロキシ部１４がアクセス要求の中継を担当するサービス１１の宛先情報（例えば、ＵＲＬ等）である。サービス接続先は、ネットワーク上で一意な値である。冗長化先は、サービス接続先に係るサービス１１が他のサーバ１０に冗長化された場合に有効な項目であり、その値は、冗長化先の宛先情報（例えば、ＵＲＬ等）を示す。サービス１１の冗長化は、当該サービス１１を利用できない場合に実行される。例えば、サービス１１が高負荷である場合や、サービス１１に異常又は障害が発生している場合に、当該サービス１１の利用ができなくなり、当該サービス１１の冗長化が実行される。したがって、冗長化が行われていないサービス１１について、冗長化先の値は、空白である。代替フラグは、サービス接続先に係るサービス１１が、本来、自サーバ１０のサーバプロキシ部１４が中継を担当していないサービス１１であるか否かを示す情報である。基本的に、各サーバ１０のサーバプロキシ部１４は、自サーバ１０のサービス１１に対するアクセス要求のみを中継する。したがって、初期状態において、サービス先情報記憶部１２３には、自サーバ１０において起動されているサービス１１に関するレコードのみが記憶されている。但し、或る端末２０から切替接続されたサーバ１０のサーバプロキシ部１４は、当該切替接続に係る元サーバ１０のサービス１１に対するアクセス要求を担当することになる。この場合に、代替フラグが「真」であるレコードであって、自サーバ１０以外で起動されているサービス１１の宛先情報をサービス接続先とするレコードが、サービス先情報記憶部１２３に追加される。したがって、代替フラグの初期値は「偽」である。なお、斯かるレコードの追加処理については後述される。
【０１０９】
ステップＳ７０２において、サーバプロキシ部１４は、サービス接続先の値が、アクセス要求に指定されているアクセス先に一致するレコード（以下、「対象レコード」という。）をサービス先情報記憶部１２３から検索する。対象レコードの冗長化先が空白であれば、アクセス要求に指定されているアクセス先（すなわち、対象レコードのサービス接続先）が、中継先として決定される。対象レコードに冗長化先が記憶されていれば、冗長化先が中継先として決定される。なお、対象レコードが検索されない場合、サーバプロキシ部１４は、アクセス要求を破棄してもよいし、ステップＳ７０４以降が実行されてもよい。ステップＳ７０４以降が実行される場合、ステップＳ７０６において、代替フラグは「真」であるとして扱われればよい。
【０１１０】
続いて、サーバプロキシ部１４は、対象レコードの冗長化先が中継先として決定されたか否かによって処理を分岐させる（Ｓ７０３）。冗長化先が中継先でない場合（Ｓ７０３でＮＯ）、サーバプロキシ部１４は、中継先にアクセス要求を中継する（Ｓ７０４）。アクセス要求の中継処理の具体的な内容は、対象レコードの代替フラグに応じて異なる。代替フラグが「偽」である場合、アクセス要求におけるアクセス先のサービス１１は、自サーバ１０において起動されているサービス１１である。したがって、この場合の中継処理は、当該サービス１１に対するアクセス要求の通知となる。一方、代替フラグが「真」である場合、アクセス要求におけるアクセス先のサービス１１は、他のサーバ１０において起動されているサービス１１である。したがって、この場合の中継処理は、アクセス要求をネットワークＮ１上に送出することになる。ネットワークＮ１上に送出されたアクセス要求は、アクセス先に係るサービス１１に通知される。
【０１１１】
中継先のサービス１１へのアクセス（サービス１１の利用）に成功した場合（Ｓ７０５でＮＯ）、サーバプロキシ部１４は、アクセス要求の送信元の端末プロキシ部２２に、当該サービス１１からの応答を、アクセス結果として返信する（Ｓ７１１）。
【０１１２】
一方、中継先のサービス１１へのアクセス（サービス１１の利用）に失敗した場合（Ｓ７０５でＹＥＳ）、対象レコードの代替フラグが「真」であれば（Ｓ７０６でＮＯ）、サーバプロキシ部１４は、アクセスの失敗を示す情報をアクセス結果として、アクセス要求の送信元の端末プロキシ部２２に返信する（Ｓ７１１）。
【０１１３】
対象レコードの代替フラグが「偽」であれば（Ｓ７０６でＹＥＳ）、サーバプロキシ部１４は、アクセス先のサービス１１を、他のサーバ１０に冗長化する（Ｓ７０７）。冗長化によって、冗長化先のサービス１１の宛先情報（ＵＲＬ等）が特定される。そこで、サーバプロキシ部１４は、対象レコードの冗長化先に、冗長化先のサービス１１の宛先情報を設定する。なお、冗長化は、公知の技術を用いて行われればよい。続いて、サーバプロキシ部１４は、対象レコードの代替フラグに「真」を設定する（Ｓ７０８）。続いて、サーバプロキシ部１４は、他のサーバ１０のサーバプロキシ部１４に対して、対象レコードのサービス接続先及び冗長化先を含む同期情報を送信することで、対象レコードの内容を他のサーバ１０のサービス先情報記憶部１２３と同期する（Ｓ７０９）。
【０１１４】
続いて、サーバプロキシ部１４は、アクセス要求のアクセス先を、対象レコードの冗長化先に書き換えて、当該アクセス要求を中継する（Ｓ７１０）。すなわち、当該アクセス要求が、冗長化先のサービス１１宛に送信される（Ｓ７２０）。続いて、サーバプロキシ部１４は、冗長化先のサービス１１に対するアクセス結果を返信する（Ｓ７１１）。
【０１１５】
なお、冗長化先が中継先である場合（Ｓ７０３でＹＥＳ）、ステップＳ７１０及びＳ７１１が実行される。
【０１１６】
また、図１６のステップＳ６０６において、接続先決定部１３から切断時接続先情報が通知された場合には（Ｓ７２３でＹＥＳ）、サーバプロキシ部１４は、通知された切断時接続先情報のプロキシ接続先に係る、切断時接続先のサーバ１０のサーバプロキシ部１４に対し、自サーバ１０のサービス先情報記憶部１２３に記憶されている全てのレコードのそれぞれのサービス接続先及び冗長化先を含む同期情報を送信する（Ｓ７２４）。
【０１１７】
ステップＳ７０９において送信された同期情報又はステップＳ７２４において送信された同期情報を受信した、他のサーバ１０のサーバプロキシ部１４は（Ｓ７２１でＹＥＳ）、受信された同期情報に対応するレコードを、自サーバ１０のサービス先情報記憶部１２３に記憶する（Ｓ７２２）。すなわち、受信された同期情報のサービス接続先に一致するサービス接続先を含むレコードがサービス先情報記憶部１２３に記憶されていない場合には、新たなレコードが追加され、当該レコードに同期情報のサービス接続先及び冗長化先が記憶される。この際、当該レコードの代替フラグには「真」が設定される。一方、受信された同期情報のサービス接続先に一致するサービス接続先を含むレコードがサービス先情報記憶部１２３に記憶されている場合には、当該レコードの冗長化先が、同期情報の冗長化先によって上書きされる。
【０１１８】
続いて、冗長化が行われたサービス１１が復旧し、冗長化が解除された場合に、当該サービス１１が復旧されたサーバ１０のサーバプロキシ部１４が実行する処理について説明する。
【０１１９】
図１９は、サーバプロキシ部がサービスの復旧に伴って実行する処理手順の一例を説明するためのフローチャートである。
【０１２０】
利用が不可能な状態になっていたサービス１１が復旧し、当該サービス１１の冗長化が解除されると（Ｓ８０１でＹＥＳ）、当該サービス１１が復旧されたサーバ１０のサーバプロキシ部１４は、サービス先情報記憶部１２３に記憶されている、当該サービス１１に対応するレコードを更新する（Ｓ８０２）。具体的には、当該レコードの冗長化先に空白が設定され、当該レコードの代替フラグに偽が設定される。続いて、サーバプロキシ部１４は、他のサーバ１０のサーバプロキシ部１４に対して、当該レコードのサービス接続先及び冗長化先を含む同期情報を送信することで、対象レコードの内容を他のサーバ１０のサービス先情報記憶部１２３と同期する（Ｓ８０３）。ステップＳ８０３に応じて、他のサーバ１０では、図１７のステップＳ７２２が実行される。
【０１２１】
続いて、上記において説明した処理手順によって実現される状況について、具体的なケースの一例を説明する。
【０１２２】
第１のケースは、サーバ１０ａへの端末２０の接続台数が多くなり、サーバ１０ａの無線は不安定だが、サーバ１０ａにおけるサービス１１ａの提供には問題がないケースである。この場合、サーバ１０ａとの無線通信が切断された端末２０は、切断時接続先の別サーバ１０へ接続を切り替える。別サーバ１０に端末２０が接続したことは、元のサーバ１０ａに通知される。別サーバ１０のサーバプロキシ部１４は、端末２０の端末プロキシ部２２からの、サービス１１ａへのアクセス要求をサービス１１に中継する。サーバ１０ａに対する端末２０の接続の集中が継続すると、サーバ１０ａとの無線通信が切断される端末２０が増加し、別サーバ１０へ接続が切り替えられる端末２０も増えていく。各端末２０の接続が切り替えられたことが元のサーバ１０ａに伝わることで、サーバ１０ａは、無線通信に支障が出ていることを把握できる。サーバ１０ａは、例えば、切替数が閾値αを超えたら無線通信に支障が出ていると判断し、現在接続中の端末２０の一部又は全部に対して切り替えの指示（切断要求）を送信する。これにより、不安定になっている無線通信網が安定化していく。切り替え指示後に、更に端末２０の接続の切り替えが継続するのであれば、不安定な状況が継続しているので、更に接続の切り替えが指示される。
【０１２３】
第２のケースは、サーバ１０ａの無線通信は安定しているが、サーバ１０ａが高負荷となり、サービス１１ａの提供が不可能になったケースである。例えば、サーバ１０ａのサーバプロキシ部１４によるサービス１１ａへのアクセスに失敗することを契機に、サービス１１ａが他のサーバ１０に冗長化され、各サーバ１０のサーバプロキシ部１４において、サービス１１ａのアクセス要求の中継先が変更される。これにより、端末２０は、サービス１１ａを継続して利用することが可能となる。サーバ１０ａの高負荷状態が解消したら、サービス１１ａを稼働させ、各サーバ１０のサーバプロキシ部１４にサービス１１ａのアクセス要求の中継先の変更が通知され、サーバ１０ａのサービス１１ａへ中継先が戻される。
【０１２４】
なお、上記では、端末接続状況情報が、各サーバ１０において管理される例について説明したが、端末接続状況情報は、一つの管理サーバによって一元的に管理されてもよい。この場合、各サーバ１０は、図１４のステップＳ５０３における同期要求を、管理サーバに送信する。また、各サーバ１０は管理サーバに接続することで、管理サーバからの指示を受信できるようにしておく。管理サーバは、端末接続状況情報に基づいて、切替数が閾値αを超えたサーバ１０を検出すると、当該サーバ１０に対して、端末２０の切断指示を送信する。管理サーバを用意することで、各サーバ１０が、他のサーバ１０の存在を意識する必要がなくなり、他のサーバ１０の情報を予め保持しておく必要がなくなる。
【０１２５】
また、アクセスポイントＡＰとサーバ１０とは、必ずしも１対１に対応していなくてもよい。例えば、５台のアクセスポイントＡＰに対してサーバ１０が３台であってもよいし、２台のアクセスポイントＡＰに対してサーバ１０が４台であってもよい。また、サーバ１０とアクセスポイントＡＰとが分離されており、それぞれの台数が自由に決められてもよい。端末２０が接続するためのＳＳＩＤとサーバ１０は、固定で用意される。例えば、アクセスポイントＡＰが５台でサーバ１０が３台の場合には、ＳＳＩＤ１とサーバ１０ａ、ＳＳＩＤ２とサーバ１０ｂ、ＳＳＩＤ３とサーバ１０ｃとが対にされ、ＳＳＩＤ４とＳＳＩＤ５とは、最初の接続先としては使用されず、切断時の接続先として使用されてもよい。
【０１２６】
また、本実施の形態では、端末２０によって検出される、無線通信網ごとの識別情報がＳＳＩＤである例を説明したが、当該識別情報は、無線通信の方式に応じて適宜変更されてもよい。例えば、ＢＳＳＩＤやＭＡＣアドレスが当該識別情報として利用されてよい。また、無線通信の方式としても、無線ＬＡＮに限定されない。Ｂｌｕｅｔｏｏｔｈ（登録商標）等、他の通信方式が利用されてもよい。
【０１２７】
上述したように、本実施の形態によれば、或るサーバ１０は、自らの無線通信網が不安定であることを検知すると、現在接続中の端末２０の接続先を切り替えさせる。その結果、無線通信が不安定な状況を解消可能とすることができる。また、接続先の切り替えが指示された各端末２０は、切断時接続先のサーバ１０を経由して、元のサービス１１を継続して利用することができる。
【０１２８】
また、本実施の形態では、無線通信網が安定している状態で、サービス１１の利用が不可能になると、サービス１１の冗長化が行われ、サービス１１へのアクセス要求のアクセス先が冗長化先へ切り替えられる。すなわち、他のサーバ１０によって当該サービス１１の提供が代替される。したがって、この場合においても、端末２０は、代替先のサーバ１０を介して、実質的に、元のサービス１１を継続して利用することができる。
【０１２９】
なお、本実施の形態において、サーバ１０は、情報処理装置の一例である。切断時接続先情報は、接続先情報の一例である。図４の通知ｎ６及びｎ７、並びに図１４の同期要求は、通知情報の一例である。端末接続管理部１２は、第１の受信部及び通知部の一例である。接続先決定部１３は、決定部及び判定部の一例である。接続状況同期部１５は、第２の受信部の一例である。
【０１３０】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【０１３１】
以上の説明に関し、更に以下の項を開示する。
（付記１）
情報処理装置が、
当該情報処理装置に無線通信を介して接続された端末が検出した、無線通信網ごとの識別情報を受信し、
受信された識別情報に対応付く他の情報処理装置を、当該情報処理装置と前記端末との無線通信が切断された場合における前記端末の接続先に決定し、
前記接続先に決定された他の情報処理装置に接続するための接続先情報を前記端末に通知し、
前記端末が、前記接続先情報に基づいて他の情報処理装置に接続した場合に、前記端末と接続されたことを通知する通知情報を当該他の情報処理装置から受信し、
前記通知情報に基づいて、当該情報処理装置に接続されている端末との無線通信の切断の要否を判定する、
処理を実行することを特徴とする通信方法。
（付記２）
前記情報処理装置が、
前記接続先情報に基づいて前記他の情報処理装置に接続した端末が、当該他の情報処理装置に対して、当該情報処理装置が提供可能なサービスの利用要求を送信した場合に、当該他の情報処理装置によって中継されるサービスの利用要求に応じて当該サービスを提供する、
処理を実行することを特徴とする付記１記載の通信方法。
（付記３）
前記情報処理装置が、
当該情報処理装置において提供可能なサービスのうち、当該情報処理装置に無線通信を介して接続された端末から利用対象として指定されたサービスを利用できない場合に、他の情報処理装置に前記サービスの提供を代替させて代替先のサービスの宛先情報を特定し、
前記接続先に決定された他の情報処理装置に、前記代替先の宛先情報を通知する、
処理を実行することを特徴とする付記１又は２記載の通信方法。
（付記４）
複数の情報処理装置と、いずれかの前記情報処理装置に無線通信網を介して接続される端末とを含む通信システムであって、
第１の情報処理装置は、
当該第１の情報処理装置に無線通信を介して接続された端末が検出した、無線通信網ごとの識別情報を受信する第１の受信部と、
受信された識別情報に対応付く第２の情報処理装置を、当該第１の情報処理装置と前記端末との無線通信が切断された場合における前記端末の接続先に決定する決定部と、
前記接続先に決定された前記第２の情報処理装置に接続するための接続先情報を前記端末に通知する通知部と、
前記端末が、前記接続先情報に基づいて前記第２の情報処理装置に接続した場合に、前記端末と接続されたことを通知する通知情報を当該第２の情報処理装置から受信する第２の受信部と、
前記通知情報に基づいて、当該情報処理装置に接続されている端末との無線通信の切断の要否を判定する判定部と、
を有することを特徴とする通信システム。
（付記５）
情報処理装置であって、
当該情報処理装置に無線通信を介して接続された端末が検出した、無線通信網ごとの識別情報を受信する第１の受信部と、
受信された識別情報に対応付く他の情報処理装置を、当該情報処理装置と前記端末との無線通信が切断された場合における前記端末の接続先に決定する決定部と、
前記接続先に決定された他の情報処理装置に接続するための接続先情報を前記端末に通知する通知部と、
前記端末が、前記接続先情報に基づいて他の情報処理装置に接続した場合に、前記端末と接続されたことを通知する通知情報を当該他の情報処理装置から受信する第２の受信部と、
前記通知情報に基づいて、当該情報処理装置に接続されている端末との無線通信の切断の要否を判定する判定部と、
有することを特徴とする情報処理装置。
（付記６）
前記情報処理装置は、
前記接続先情報に基づいて前記他の情報処理装置に接続した端末が、当該他の情報処理装置に対して、当該情報処理装置が提供可能なサービスの利用要求を送信した場合に、当該他の情報処理装置によって中継されるサービスの利用要求に応じて当該サービスを提供する、
ことを特徴とする付記５記載の情報処理装置。
（付記７）
前記情報処理装置は、
当該情報処理装置において提供可能なサービスのうち、当該情報処理装置に無線通信を介して接続された端末から利用対象として指定されたサービスを利用できない場合に、他の情報処理装置に前記サービスの提供を代替させて代替先のサービスの宛先情報を特定する特定部と、
前記接続先に決定された他の情報処理装置に、前記代替先の宛先情報を通知する第２の通知部と、
を有することを特徴とする付記５又は６記載の情報処理装置。
（付記８）
情報処理装置に、
当該情報処理装置に無線通信を介して接続された端末が検出した、無線通信網ごとの識別情報を受信し、
受信された識別情報に対応付く他の情報処理装置を、当該情報処理装置と前記端末との無線通信が切断された場合における前記端末の接続先に決定し、
前記接続先に決定された他の情報処理装置に接続するための接続先情報を前記端末に通知し、
前記端末が、前記接続先情報に基づいて他の情報処理装置に接続した場合に、前記端末と接続されたことを通知する通知情報を当該他の情報処理装置から受信し、
前記通知情報に基づいて、当該情報処理装置に接続されている端末との無線通信の切断の要否を判定する、
処理を実行させることを特徴とするプログラム。
（付記９）
前記情報処理装置に、
前記接続先情報に基づいて前記他の情報処理装置に接続した端末が、当該他の情報処理装置に対して、当該情報処理装置が提供可能なサービスの利用要求を送信した場合に、当該他の情報処理装置によって中継されるサービスの利用要求に応じて当該サービスを提供する、
処理を実行させることを特徴とする付記８記載のプログラム。
（付記１０）
前記情報処理装置に、
当該情報処理装置において提供可能なサービスのうち、当該情報処理装置に無線通信を介して接続された端末から利用対象として指定されたサービスを利用できない場合に、他の情報処理装置に前記サービスの提供を代替させて代替先のサービスの宛先情報を特定し、
前記接続先に決定された他の情報処理装置に、前記代替先の宛先情報を通知する、
処理を実行させることを特徴とする付記８又は９記載のプログラム。
【符号の説明】
【０１３２】
１０、１０ａ、１０ｂ、１０ｃ    サーバ
１１          サービス
１２          端末接続管理部
１３          接続先決定部
１４          サーバプロキシ部
１５          接続状況同期部
２０、２０ａ、２０ｂ、２０ｃ    端末
２１          アプリ
２２          端末プロキシ部２２
２３          接続管理部２３
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
１２１        端末接続情報記憶部
１２２        ＳＳＩＤ／サーバ対応記憶部
１２３        サービス先情報記憶部
１２４        端末接続状況記憶部
２１１        プロキシ接続先記憶部
２１２        切断時接続先情報記憶部
２１３        接続先情報記憶部
Ｂ            バス
【図１】
2016208175.tif 000003
【図２】
2016208175.tif 000004
【図３】
2016208175.tif 000005
【図４】
2016208175.tif 000006
【図５】
2016208175.tif 000007
【図６】
2016208175.tif 000008
【図７】
2016208175.tif 000009
【図８】
2016208175.tif 000010
【図９】
2016208175.tif 000011
【図１０】
2016208175.tif 000012
【図１１】
2016208175.tif 000013
【図１２】
2016208175.tif 000014
【図１３】
2016208175.tif 000015
【図１４】
2016208175.tif 000016
【図１５】
2016208175.tif 000017
【図１６】
2016208175.tif 000018
【図１７】
2016208175.tif 000019
【図１８】
2016208175.tif 000020
【図１９】
2016208175.tif 000021