(57)【要約】【課題】無線端末が他の装置のリソースを用いてアプリケーションプログラムを処理可能にする。【解決手段】基地局システム１は、無線端末装置４００に対するアプリケーションプログラムを実行する仮想マシンの複数の機能の一部がそれぞれ割り当てられ、割り当てられた機能を実行する複数の基地局１００を備える。仮想マシンの複数の機能が、複数の基地局１００のサーバ１１５、１２５、１３５で分散して実行される。【選択図】図１
2019153955.tif 000002
【特許請求の範囲】
【請求項１】
無線端末装置に対するアプリケーションプログラムを実行する仮想マシンの複数の機能の一部がそれぞれ割り当てられ、割り当てられた機能を実行する複数の基地局
を備え、
前記仮想マシンの複数の機能が、前記複数の基地局で分散して実行される基地局システム。
【請求項２】
前記無線端末装置のハンドオーバの履歴を含む、前記複数の基地局間のハンドオーバの履歴情報が記憶されたデータベース
を更に備え、
前記仮想マシンの複数の機能の少なくとも一部は、前記データベースに記憶されたハンドオーバの履歴情報に基づき、前記無線端末装置が接続している第１の基地局と、該第１の基地局からのハンドオーバの実績がある第２の基地局とに少なくとも割り当てられる請求項１に記載の基地局システム。
【請求項３】
前記複数の基地局への前記仮想マシンの機能の割り当てを変更する請求項１又は２に記載の基地局システム。
【請求項４】
前記無線端末装置がハンドオーバすると、前記複数の基地局への前記仮想マシンの機能の割り当てを変更する請求項１乃至３のいずれかに記載の基地局システム。
【請求項５】
前記複数の基地局間の通信の応答時間が記憶されたデータベース
を更に備え、
アプリケーションプログラムが処理遅延を比較的許容できるアプリケーションプログラムの場合、前記基地局間の通信の応答時間が比較的大きい該基地局に少なくとも前記仮想マシンの機能の一部を割り当て、
アプリケーションプログラムが処理遅延を比較的許容できないアプリケーションプログラムの場合、前記基地局間の通信の応答時間が比較的小さい該基地局に少なくとも前記仮想マシンの機能の一部を割り当てる請求項１乃至４のいずれかに記載の基地局システム。
【請求項６】
前記仮想マシンの複数の機能のうち入力機能及び／又は出力機能は、前記複数の基地局のうち、前記無線端末装置が接続している第１の基地局と、該第１の基地局からのハンドオーバの実績がある第２の基地局とに少なくとも割り当てられる請求項２に記載の基地局システム。
【請求項７】
前記無線端末装置のハンドオーバの履歴を含む、前記複数の基地局間のハンドオーバの履歴情報が記憶されたデータベース
を更に備え、
前記仮想マシンの複数の機能のうち演算機能は、前記複数の基地局のうち、前記無線端末装置が接続している第１の基地局からのハンドオーバの実績がない第３の基地局又は基地局以外の装置に少なくとも割り当てられる請求項１乃至６のいずれかに記載の基地局システム。
【請求項８】
無線アクセスネットワークに配置されたノード装置
を更に備え、
前記仮想マシンの複数の機能が、前記複数の基地局及び前記ノード装置で分散して実行される請求項１乃至７のいずれかに記載の基地局システム。
【請求項９】
無線端末装置に対するアプリケーションプログラムを実行する仮想マシンの複数の機能を、複数の基地局に分散して割り当てるサーバ機能部
を備え、
少なくとも前記複数の基地局間のハンドオーバの履歴情報に基づいて、前記仮想マシンの複数の機能を、前記複数の基地局に割り当てるノード装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、基地局システム及びノード装置に関する。
【背景技術】
【０００２】
スマートフォンやＩｏＴ（Internet of Things）の普及により、ネットワークを利用したサービスは多様化・高度化している。例えば、映像監視や自動運転などが実現されている。トラフィック特性が異なるこのようなサービスを一つのネットワークで実現するためには、データ処理を高速化するとともに、有限のネットワークリソースを各サービスに適切に割り当てる必要がある。また、データを処理する装置には高い処理能力や高可用性も求められる。さらに、端末は、低価格で高い性能が得られることが求められる。
【０００３】
低価格な端末で高機能な処理を実現する方法の例としてシンクライアント（シンクライアントアーキテクチャともいう）がある。シンクライアントは、少なくとも必要最小限の機能を有する端末とサーバを接続し、サーバが処理の大部分を集中して実行するアーキテクチャである。
【０００４】
また、データ処理を高速化する方法の他の例として、モバイルエッジコンピューティング（ＭＥＣ：Mobile Edge Computing）がある。ＭＥＣは、データの処理機能の一部をクラウド上で実現するのではなく、無線アクセス網のモバイルエッジにあたる基地局、又は、基地局からの通信の遅延が小さいノードで実現する。
【０００５】
また、仮想マシンを通信端末で動作させる技術が開示されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−１９７６４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
シンクライアントアーキテクチャは、サーバ側に多大なリソースが必要になる。ＭＥＣでは基地局又は基地局からの通信の遅延が小さいノードにサーバを配置するが、無線アクセス網に多数の基地局があるため、端末のアプリケーションプログラムを処理する能力を有するサーバを各基地局内に配置することは経済性が悪い（例えば、費用対効果が悪い）。
【０００８】
また、特許文献１に記載の技術は、通信端末が仮想マシンを備えており、無線端末以外のリソースを用いてアプリケーションプログラムを実行するものではない。
【０００９】
本発明の目的は、無線端末装置が、他の装置のリソースを用いてアプリケーションプログラムを処理可能にすることにある。
【課題を解決するための手段】
【００１０】
本発明の一態様によると、基地局システムは、無線端末装置に対するアプリケーションプログラムを実行する仮想マシンの複数の機能の一部がそれぞれ割り当てられ、割り当てられた機能を実行する複数の基地局を備え、上記仮想マシンの複数の機能が、上記複数の基地局で分散して実行される。
【００１１】
本発明の一態様によると、ノード装置は、無線端末装置に対するアプリケーションプログラムを実行する仮想マシンの複数の機能を、複数の基地局に分散して割り当てるサーバ機能部を備え、少なくとも上記複数の基地局間のハンドオーバの履歴情報に基づいて、上記仮想マシンの複数の機能を、上記複数の基地局に割り当てる。
【発明の効果】
【００１２】
本発明によれば、無線端末装置が、他の装置のリソースを用いてアプリケーションプログラムを処理することができる。なお、本発明により、当該効果の代わりに、又は当該効果とともに、他の効果が奏されてもよい。
【図面の簡単な説明】
【００１３】
【図１】図１は、第１の実施形態に係るシステムの概略的な構成の例を示す説明図である。
【図２】図２は、第１の実施形態に係る基地局の概略的な構成の例を示すブロック図である。
【図３】図３は、第１の実施形態に係るデータベース装置の概略的な構成の例を示すブロック図である。
【図４】図４は、第１の実施形態に係る上位ノードの概略的な構成の例を示すブロック図である。
【図５】図５は、第１の実施形態に係る無線端末の概略的な構成の例を示すブロック図。である。
【図６】図６は、仮想マシンとエレメントの関係を説明する図である。
【図７】図７は、仮想マシンと無線端末の関係を抽象化してレイヤ構造で表した図である。
【図８】図８は、仮想マシンの具体例を示す図である。
【図９】図９は、第１のテーブルの説明図である。
【図１０】図１０は、第２のテーブルの説明図である。
【図１１】図１１は、第３のテーブルの説明図である。
【図１２】図１２は、機能と機能の接続構造の一例を示す図である。
【図１３】図１３は、第１の実施形態に係る無線端末とサーバの動作を説明するためのシーケンス図である。
【図１４】図１４は、第１の実施形態に係る仮想マシンの割り当てを説明するためのフローチャートである。
【図１５】図１５は、第１の実施形態に係る無線端末がデタッチした際の動作を説明するためのフローチャートである。
【図１６】図１６は、第１の実施形態に係る無線端末がハンドオーバした際の動作を説明するためのフローチャートである。
【図１７】図１７は、第２の実施形態に係るシステムの概略的な構成の一例を示す説明図である。
【図１８】図１８は、第３の実施形態に係るシステムの概略的な構成の一例を示す説明図である。
【図１９】図１９は、第３の実施形態に係る上位ノードの概略的な構成の例を示すブロック図である。
【図２０】図２０は、第４のテーブルの説明図である。
【図２１】図２１は、第５のテーブルの説明図である。
【発明を実施するための形態】
【００１４】
以下、添付の図面を参照して本発明の実施形態を詳細に説明する。なお、本明細書及び図面において、同様に説明されることが可能な要素については、同一の符号を付することにより重複説明が省略され得る。
【００１５】
説明は、以下の順序で行われる。
１．本発明の実施形態の概要
２．第１の実施形態
２．１．システムの構成
２．２．基地局の構成
２．３．データベース装置の構成
２．４．上位ノードの構成
２．５．無線端末の構成
２．６．技術的特徴
２．７．まとめ
３．第２の実施形態
３．１．システムの構成
３．２．基地局の構成
３．３．データベース装置の構成
３．４．上位ノードの構成
３．５．無線端末の構成
３．６．技術的特徴
４．第３の実施形態
４．１．システムの構成
４．２．基地局、無線端末の構成
４．３．上位ノードの構成
４．４．技術的特徴
５．変形例
【００１６】
＜＜１．本発明の実施形態の概要＞＞
（１）技術的課題
シンクライアントアーキテクチャは、サーバ側に多大なリソースが必要になる。ＭＥＣでは基地局又は基地局からの通信の遅延が小さいノードにサーバを配置するが、無線アクセス網に多数の基地局があるため、端末のアプリケーションプログラムを処理する能力を有するサーバを各基地局内に配置することは経済性が悪い（例えば、費用対効果が悪い）。
【００１７】
また、無線ネットワークにおいては、無線端末が移動してハンドオーバするため、無線端末がハンドオーバした際にも無線端末のアプリケーションプログラムを継続的に実現可能にすることが望まれる。
【００１８】
本発明の実施形態の目的は、無線端末が、他の装置のリソースを用いて高度なアプリケーションプログラムを処理可能にすることにある。
【００１９】
（２）技術的特徴
本発明の実施形態によれば、基地局システムは、無線端末装置に対するアプリケーションプログラムを実行する仮想マシンの複数の機能の一部がそれぞれ割り当てられ、割り当てられた機能を実行する複数の基地局を備え、上記仮想マシンの複数の機能が、上記複数の基地局で分散して実行される。
【００２０】
また、本発明の実施形態によれば、ノード装置は、無線端末装置に対するアプリケーションプログラムを実行する仮想マシンの複数の機能を、複数の基地局に分散して割り当てるサーバ機能部を備え、少なくとも上記複数の基地局間のハンドオーバの履歴情報に基づいて、上記仮想マシンの複数の機能を、上記複数の基地局に割り当てる。
【００２１】
これにより、無線端末は、他の装置のリソースを用いてアプリケーションプログラムを処理することができる。
【００２２】
なお、上述した技術的特徴は本発明の実施形態の具体的な一例であり、当然ながら、本実施形態は上述した技術的特徴に限定されない。
【００２３】
＜＜２．第１の実施形態＞＞
＜２．１．システムの構成＞
続いて、図１〜図１６を参照して、本発明の第１の実施形態を説明する。
【００２４】
図１を参照して、本実施形態に係るシステム１の構成の例を説明する。図１は、本発明の第１の実施形態に係るシステム１の概略的な構成の例を示す説明図である。
【００２５】
システム１は、例えば、複数の基地局１００と、データベース装置２００と、上位ノード（コアネットワークノード、ノード装置）３００と、ルータ５００を備える。図１の例では、基地局１００は、３つの基地局１００−１、１００−２、１００−３を図示する。基地局１００は、３つに限らず、４つ以上の基地局１００があってもよいし、２つの基地局１００でも本実施の形態を説明できる。以下の説明において、特に各基地局を区別する必要が無い場合は、まとめて基地局１００と記載する場合もある。システム１を基地局システムと称する場合もある。また、複数の基地局１００で構成されるシステムを基地局システムと称する場合もある。また、基地局１００、上位ノード３００及びサーバをネットワーク装置と称する場合もある。
【００２６】
各基地局１００（例えば、基地局１００−１と基地局１００−２等）は、ルータ５００を介して互いに通信する。また、各基地局１００はルータ５００を介して上位ノード３００と通信する。各基地局１００及び上位ノード３００は、ルータ５００を介してデータベース装置２００と通信する。
【００２７】
例えば、システム１は、３ＧＰＰの規格（standard）に準拠したシステムである。より具体的には、システム１は、ＬＴＥ／ＬＴＥ−Ａｄｖａｎｃｅｄ及び／又はＳＡＥ（System Architecture Evolution）に準拠したシステムであってもよい。あるいは、システム１は、第５世代（５Ｇ）の規格に準拠したシステム、又は第３世代（３Ｇ）の規格に準拠したＵＭＴＳ（Universal Mobile Telecommunications System）であってもよい。当然ながら、システム１は、これらの例に限定されない。
【００２８】
（１）基地局１００
基地局１００は、無線端末（無線端末装置）４００との無線通信を行うノードであり、換言すると無線アクセスネットワーク（Radio Access Network：ＲＡＮ）のノードである。例えば、基地局１００は、ｅＮＢであってもよく、５ＧにおけるｇＮＢ（generation Node B）であってもよく、３ＧにおけるＮｏｄｅ  Ｂ及び／又はＲＮＣ（Radio Network Controller）であってもよい。基地局１００は、複数のユニット（又は複数のノード）を含んでもよい。当該複数のユニット（又は複数のノード）は、上位のプロトコルレイヤの処理を行う第１ユニット（又は第１ノード）と、下位のプロトコルレイヤの処理を行う第２ユニット（又は第２ノード）とを含んでもよい。一例として、上記第１ユニットは、中央ユニット（Center/Central Unit：ＣＵ）と呼ばれてもよく、上記第２のユニットは、分散ユニット（Distributed Unit：ＤＵ）又はアクセスユニット（Access Unit：ＡＵ）と呼ばれてもよい。別の例として、上記第１ユニットは、デジタルユニット（Digital Unit：ＤＵ）と呼ばれてもよく、上記第２ユニットは、無線ユニット（Radio Unit：ＲＵ）又はリモートユニット（Remote Unit：ＲＵ）と呼ばれてもよい。上記ＤＵ（Digital Unit）は、ＢＢＵ（Base Band Unit）であってもよく、上記ＲＵは、ＲＲＨ（Remote Radio Head）又はＲＲＵ（Remote Radio Unit）であってもよい。当然ながら、上記第１ユニット（又は第１のノード）及び上記第２ユニット（又は第２のノード）の呼称は、この例に限定されない。あるいは、基地局１００は、単一のユニット（又は単一のノード）であってもよい。この場合に、基地局１００は、上記複数のユニットのうちの１つ（例えば、上記第１ユニット及び上記第２ユニットの一方）であってもよく、上記複数のユニットのうちの他のユニット（例えば、上記第１ユニット及び上記第２ユニットの他方）と接続されていてもよい。
【００２９】
とりわけ、本実施形態では、基地局１００は、サーバの機能を有する。例えば、基地局１００−１は、サーバ１１５の機能を有し、基地局１００−２はサーバ１２５の機能を有し、基地局１００−３はサーバ１３５の機能を有する。なお、システム１は、サーバを有さない基地局を備えてもよい。
【００３０】
（２）データベース装置２００
データベース装置２００は、例えば、ルータ５００を介して基地局１００及び上位ノード３００からアクセスされることができる。データベース装置２００は、図示の例に限らず、適宜の位置に配置することができる。
【００３１】
（３）上位ノード３００
上位ノード３００は、例えば、ＬＴＥ無線アクセス網を収容するＥＰＣ（Evolved Packet Core）である。また、上位ノード３００は、例えば５Ｇ無線アクセス網を収容するコアネットワーク装置である。上位ノード３００は、サーバ１７５の機能を有する。無線端末４００に対するアプリケーションプログラムを実行する仮想マシンの複数の機能が、基地局１００と上位ノード３００に設けられた各サーバで分散して実行される。例えば、仮想マシンの各機能を構成するエレメントが、所定の基準に従って各サーバに割り当てられる。仮想マシン及びエレメントについては後に詳述する。
【００３２】
（４）無線端末４００
無線端末４００は、基地局１００と通信可能である。例えば、無線端末４００が基地局１００−１のセル内（カバレッジエリア内）に位置する場合に、無線端末４００は基地局１００−１と無線で接続され、無線端末４００は基地局１００−１と無線通信可能である。無線端末４００が基地局１００−２のセルへ移動すると、無線端末４００は基地局１００−２と接続される。基地局１００−３のセルへ移動した場合も同様である。例えば、無線端末４００は、ＵＥ（User Equipment）である。
【００３３】
（５）ルータ５００
ルータ５００は、基地局１００、データベース装置２００及び上位ノード３００間のデータを転送する。ルータ５００は、スイッチやハブでもよい。
【００３４】
＜２．２．基地局の構成＞
まず、図２を参照して、第１の実施形態に係る基地局１００の構成の例を説明する。図２は、第１の実施形態に係る基地局１００の概略的な構成の例を示すブロック図である。基地局１００は、無線通信部１１０、ネットワーク通信部１２０、記憶部１３０及び処理部１４０を備える。
【００３５】
（１）無線通信部１１０
無線通信部１１０は、信号を無線で送受信する。例えば、無線通信部１１０は、無線端末４００からの信号を受信し、無線端末４００への信号を送信する。
【００３６】
（２）ネットワーク通信部１２０
ネットワーク通信部１２０は、ネットワーク（例えば、ルータ５００）から信号を受信し、ネットワーク（例えば、ルータ５００）へ信号を送信する。
【００３７】
（３）記憶部１３０
記憶部１３０は、基地局１００の動作のためのプログラム及びパラメータ、並びに様々なデータを、一時的に又は恒久的に記憶する。
【００３８】
（４）処理部１４０
処理部１４０は、基地局１００の様々な機能を提供する。処理部１４０は、第１通信処理部１４１、第２通信処理部１４３及びサーバ機能部１４５を含む。なお、処理部１４０は、これらの構成要素以外の他の構成要素をさらに含み得る。すなわち、処理部１４０は、これらの構成要素の動作以外の動作も行い得る。第１通信処理部１４１、第２通信処理部１４３及びサーバ機能部１４５の具体的な動作は、後に詳細に説明する。
【００３９】
例えば、処理部１４０（第１通信処理部１４１）は、ネットワーク通信部１２０を介して、データベース装置２００及び上位ノード３００と通信する。例えば、処理部１４０（第２通信処理部１４３）は、無線通信部１１０を介して無線端末４００と通信する。例えば、処理部１４０（サーバ機能部１４５）は、無線端末４００に対するアプリケーションプログラムを実行する仮想マシンの機能の一部を実行する。
【００４０】
（５）実装例
無線通信部１１０は、アンテナ及び高周波（Radio Frequency：ＲＦ）回路等により実装されてもよい。ネットワーク通信部１２０は、ネットワークアダプタ又はネットワークインタフェースカード等により実装されてもよい。記憶部１３０は、メモリ（例えば、不揮発性メモリ及び／若しくは揮発性メモリ）並びに／又はハードディスク等により実装されてもよい。処理部１４０は、ベースバンド（Baseband：ＢＢ）プロセッサ及び／又は他のプロセッサ等により実装されてもよい。第１通信処理部１４１、第２通信処理部１４３及びサーバ機能部１４５は、同一のプロセッサにより実装されてもよく、別々に異なるプロセッサにより実装されてもよい。上記メモリ（記憶部１３０）は、このようなプロセッサ（チップ）内に含まれてもよい。
【００４１】
基地局１００は、プログラムを記憶するメモリと、当該プログラムを実行可能な１つ以上のプロセッサとを含んでもよく、当該１つ以上のプロセッサは、処理部１４０の動作（第１通信処理部１４１、第２通信処理部１４３及びサーバ機能部１４５の動作）を行ってもよい。上記プログラムは、処理部１４０の動作（第１通信処理部１４１、第２通信処理部１４３及びサーバ機能部１４５の動作）をプロセッサに実行させるためのプログラムであってもよい。
【００４２】
＜２．３．データベース装置の構成＞
次に、図３を参照して、第１の実施形態に係るデータベース装置２００の構成の例を説明する。図３は、第１の実施形態に係るデータベース装置２００の概略的な構成の例を示すブロック図である。データベース装置２００は、ネットワーク通信部３１０、記憶部３２０及び処理部３３０を備える。
【００４３】
（１）ネットワーク通信部２１０
ネットワーク通信部２１０は、ネットワークから信号を受信し、ネットワークへ信号を送信する。
【００４４】
（２）記憶部２２０
記憶部２２０は、データベース装置２００の動作のためのプログラム及びパラメータ、並びに様々なデータを、一時的に又は恒久的に記憶する。また、記憶部２２０は、第１のテーブル２２１、第２のテーブル２２２及び第３のテーブル２２３を含むデータベースでもある。各テーブルは後に詳述する。
【００４５】
（３）処理部２３０
処理部２３０は、データベース装置２００の様々な機能を提供する。処理部２３０は、通信処理部２３１及びデータベース管理部２３３を含む。なお、処理部２３０は、これらの構成要素以外の他の構成要素をさらに含み得る。すなわち、処理部２３０は、これらの構成要素の動作以外の動作も行い得る。通信処理部２３１及びデータベース管理部２３３の具体的な動作は、後に詳細に説明する。
【００４６】
例えば、処理部２３０（通信処理部２３１）は、ネットワーク通信部２１０を介して他のノードと通信する。具体的には、例えば、処理部２３０（通信処理部２３１）は、ネットワーク通信部２１０を介して基地局１００及び上位ノード３００と通信する。処理部２３０（データベース管理部２３３）は、例えば、基地局１００又は上位ノード３００からの要求に応じてデータベースから所望の情報を抽出し、基地局１００又は上位ノード３００へ返信する。また、処理部２３０（データベース管理部２３３）は、例えば、基地局１００又は上位ノード３００からの要求に応じてデータベースの情報を更新する。処理部２３０（データベース管理部２３３）は、例えば初期設定の場合など、基地局１００又は上位ノード３００以外にも、他の外部装置からの情報をデータベースに記憶することもできる。
【００４７】
（４）実装例
ネットワーク通信部２１０は、ネットワークアダプタ又はネットワークインタフェースカード等により実装されてもよい。記憶部２２０は、メモリ（例えば、不揮発性メモリ及び／若しくは揮発性メモリ）並びに／又はハードディスク等により実装されてもよい。処理部２３０は、プロセッサ等により実装されてもよい。通信処理部２３１及びデータベース管理部２３３は、同一のプロセッサにより実装されてもよく、別々に異なるプロセッサにより実装されてもよい。上記メモリ（記憶部２２０）は、このようなプロセッサ（チップ）内に含まれてもよい。
【００４８】
データベース装置２００は、プログラムを記憶するメモリと、当該プログラムを実行可能な１つ以上のプロセッサとを含んでもよく、当該１つ以上のプロセッサは、処理部２３０の動作（通信処理部２３１及びデータベース管理部２３３の動作）を行ってもよい。上記プログラムは、処理部２３０の動作（通信処理部２３１及びデータベース管理部２３３の動作）をプロセッサに実行させるためのプログラムであってもよい。
【００４９】
＜２．４．上位ノードの構成＞
次に、図４を参照して、第１の実施形態に係る上位ノード３００の構成の例を説明する。図４は、第１の実施形態に係る上位ノード３００の概略的な構成の例を示すブロック図である。図４を参照すると、上位ノード３００は、ネットワーク通信部３１０、記憶部３２０及び処理部３３０を備える。
【００５０】
（１）ネットワーク通信部３１０
ネットワーク通信部３１０は、ネットワークから信号を受信し、ネットワークへ信号を送信する。
【００５１】
（２）記憶部３２０
記憶部３２０は、上位ノード３００の動作のためのプログラム及びパラメータ、並びに様々なデータを、一時的に又は恒久的に記憶する。
【００５２】
（３）処理部３３０
処理部３３０は、上位ノード３００の様々な機能を提供する。処理部３３０は、通信処理部３３１及びサーバ機能部３３３を含む。なお、処理部３３０は、これらの構成要素以外の他の構成要素をさらに含み得る。すなわち、処理部３３０は、これらの構成要素の動作以外の動作も行い得る。通信処理部３３１及びサーバ機能部３３３の具体的な動作は、後に詳細に説明する。
【００５３】
例えば、処理部３３０（通信処理部３３１）は、ネットワーク通信部３１０を介して他のノードと通信する。具体的には、例えば、処理部３３０（通信処理部３３１）は、ネットワーク通信部３１０を介して基地局１００及びデータベース装置２００と通信する。処理部３３０（サーバ機能部３３３）は、無線端末４００に対するアプリケーションプログラムを実行する仮想マシンの機能の一部を実行する。また、処理部３３０（サーバ機能部３３３）は、無線端末４００に対するアプリケーションプログラムを実行する仮想マシンの機能を、システム１内の各サーバに割り当てる。
【００５４】
（４）実装例
ネットワーク通信部３１０は、ネットワークアダプタ又はネットワークインタフェースカード等により実装されてもよい。記憶部３２０は、メモリ（例えば、不揮発性メモリ及び／若しくは揮発性メモリ）並びに／又はハードディスク等により実装されてもよい。処理部３３０は、プロセッサ等により実装されてもよい。通信処理部３３１及びサーバ機能部３３３は、同一のプロセッサにより実装されてもよく、別々に異なるプロセッサにより実装されてもよい。上記メモリ（記憶部３２０）は、このようなプロセッサ（チップ）内に含まれてもよい。
【００５５】
上位ノード３００は、プログラムを記憶するメモリと、当該プログラムを実行可能な１つ以上のプロセッサとを含んでもよく、当該１つ以上のプロセッサは、処理部３３０の動作（通信処理部３３１及びサーバ機能部３３３の動作）を行ってもよい。上記プログラムは、処理部３３０の動作（通信処理部３３１及びサーバ機能部３３３の動作）をプロセッサに実行させるためのプログラムであってもよい。
【００５６】
＜２．５．無線端末の構成＞
次に、図５を参照して、第１の実施形態に係る無線端末４００の構成の例を説明する。図５は、第１の実施形態に係る無線端末４００の概略的な構成の例を示すブロック図である。図５を参照すると、無線端末４００は、無線通信部４１０、記憶部４３０及び処理部４４０を備える。
【００５７】
（１）無線通信部４１０
無線通信部４１０は、信号を無線で送受信する。例えば、無線通信部４１０は、基地局１００からの信号を受信し、基地局１００への信号を送信する。
【００５８】
（２）記憶部４３０
記憶部４３０は、無線端末４００の動作のためのプログラム及びパラメータ、並びに様々なデータを、一時的に又は恒久的に記憶する。
【００５９】
（３）処理部４４０
処理部４４０は、無線端末４００の様々な機能を提供する。処理部４４０は、通信処理部４４１及びアプリケーションプログラム処理部４４３を含む。なお、処理部４４０は、これらの構成要素以外の他の構成要素をさらに含み得る。すなわち、処理部４４０は、これらの構成要素の動作以外の動作も行い得る。通信処理部４４１及びアプリケーションプログラム処理部４４３の具体的な動作は、後に詳細に説明する。
【００６０】
例えば、処理部４４０（通信処理部４４１）は、基地局１００と通信する。例えば、処理部４４０（アプリケーションプログラム処理部４４３）は、仮想マシンと協働してアプリケーションプログラムを実行する。例えば、処理部４４０（アプリケーションプログラム処理部４４３）は、上位ノード３００に対して仮想マシンを用いてアプリケーションプログラムを実行することを要求する。また、例えば、処理部４４０（アプリケーションプログラム処理部４４３）は、無線端末４００が保持する情報を仮想マシンへ送信し、仮想マシンから実行結果を受け取ってもよい。例えば、処理部４４０（アプリケーションプログラム処理部４４３）は、アプリケーションプログラムの実行結果を無線端末４００の表示部等に表示してもよい。
【００６１】
（４）実装例
無線通信部４１０は、アンテナ及び高周波（ＲＦ）回路等により実装されてもよい。記憶部４３０は、メモリ（例えば、不揮発性メモリ及び／若しくは揮発性メモリ）並びに／又はハードディスク等により実装されてもよい。処理部４４０は、ベースバンド（ＢＢ）プロセッサ及び／又は他のプロセッサ等により実装されてもよい。通信処理部４４１及びアプリケーションプログラム処理部４４３は、同一のプロセッサにより実装されてもよく、別々に異なるプロセッサにより実装されてもよい。上記メモリ（記憶部４３０）は、このようなプロセッサ（チップ）内に含まれてもよい。
【００６２】
無線端末４００は、プログラムを記憶するメモリと、当該プログラムを実行可能な１つ以上のプロセッサとを含んでもよく、当該１つ以上のプロセッサは、処理部４４０の動作（通信処理部４４１及びアプリケーションプログラム処理部４４３の動作）を行ってもよい。上記プログラムは、処理部４４０の動作（通信処理部４４１及びアプリケーションプログラム処理部４４３の動作）をプロセッサに実行させるためのプログラムであってもよい。
【００６３】
＜２．６．技術的特徴＞
次に、図６〜図１６を参照して、第１の実施形態の技術的特徴を説明する。
【００６４】
（１）プログラム
基地局１００内のサーバ（例えば、サーバ１１５、サーバ１２５、サーバ１３５）が処理するプログラムについて説明する。以下は、説明の便宜上サーバ１１５について説明するが、サーバ１２５及びサーバ１３５も同様である。
【００６５】
サーバ１１５はエレメントを生成するプログラムを実行する。ここで、エレメントは、例えば、仮想的な小型コンピュータをエミュレートするエミュレータである。１つのサーバで複数のエレメントを生成できる。エレメントは、仮想マシンを構成するのに必要な機能の一部分を処理する。
【００６６】
（２）仮想マシン
次に、仮想マシンについて説明する。図６は、仮想マシンとエレメントの関係を説明する図である。
【００６７】
仮想マシン６００は、コンピュータの動作をエミュレートしたものである。図６に示すように、仮想マシン６００は、複数のエレメントで構成される。言い換えると、仮想マシン６００は、小型コンピュータ（エレメント）を組み合わせたり、同期処理及び／又は並列処理をさせたりして高性能化した仮想的なコンピュータ（エミュレータ）である。この仮想的なコンピュータを構成する複数の小型コンピュータ（エレメント）もまた、仮想的なコンピュータ（エミュレータ）である。それぞれのエレメントは、例えば、複数のサーバで生成されたエレメントである。つまり、それぞれのエレメントの処理は、異なるサーバで実行され得る。また、いくつかのエレメントは同じサーバで実行されることもある。
【００６８】
次に、仮想マシン６００と無線端末４００の関係について説明する。１台の無線端末４００に対し、１つの仮想マシン６００が割り当てられる。仮想マシン６００は、無線端末４００のアプリケーションプログラムを処理する。これによって、無線端末４００は、自身が有するＣＰＵ（Central Processing Unit）性能やメモリ容量よりも高い性能と多くのメモリが利用でき、高度なアプリケーションプログラムを実行できる。
【００６９】
図７は、仮想マシン６００と無線端末４００の関係を抽象化してレイヤ構造で表した図である。物理資源７１０は、無線端末４００自身が有する処理部（ＣＰＵ）４４０、記憶部（ＲＯＭ：Read Only Memory、ＲＡＭ：Random Access Memory）４３０、無線通信部４１０、及び適宜の入出力装置と、それら各部の制御に相当する。物理資源７１０として、無線端末４００はさらに、センサ装置、駆動装置及び通信装置などの装置を有する場合もある。
【００７０】
ホストＯＳ７２０は、無線端末４００自身で実行するＯＳ（Operating System）に相当する。なお、このレイヤはハイパーバイザでもよい。
【００７１】
仮想マシン６００は、ホストＯＳ７２０上で（レイヤ７２０を介して）動作するコンピュータのエミュレータに相当する。仮想マシン６００は、下位のレイヤから順に、仮想物理資源７３１、ゲストＯＳ７３２及びアプリケーション７３３の各レイヤで抽象化できる。
【００７２】
図８は、仮想マシン６００の具体例を示す図である。
仮想マシン６００は、例えば、入力機能８０１、分散機能８０２、演算機能８０３、集計機能８０４、出力機能８０５、実行制御機能８０６、及び共有メモリ機能８０７を含む。図８に示す構成や各機能の接続は、仮想マシン６００の一例である。
【００７３】
入力機能８０１は、コンピュータアーキテクチャにおける入力装置に相当する。分散機能８０２は、並列コンピュータや並列分散処理のための仕組みで、入力機能８０１から得たデータを分割して演算機能８０３に渡す機能である。演算機能８０３は、コンピュータアーキテクチャにおけるＣＰＵの演算器に相当する。演算機能８０３は、ＣＰＵのアキュムレータやレジスタを含んでもよい。集計機能８０４は、並列コンピュータや並列分散処理のための仕組みで、演算機能８０３から得た複数のデータを同期して集計し、出力機能８０５に渡す機能である。出力機能８０５は、コンピュータアーキテクチャにおける出力装置に相当する。実行制御機能８０６は、コンピュータアーキテクチャにおけるＣＰＵの制御機構（コントロールユニット）に相当する。実行制御機能８０６は、ＣＰＵの命令カウンタ（プログラムカウンタ）やレジスタを含んでもよい。共有メモリ機能８０７は、コンピュータアーキテクチャにおけるメモリやキャッシュに相当する。共有メモリ機能８０７は、ＣＰＵのレジスタを含んでもよい。
【００７４】
各機能は、１つのエレメントで構成されることができる。任意のサーバと他のサーバは接続されている（又は通信可能である）。したがって、エレメントがどのサーバで実現されたとしても所定の処理の前後に他の処理を実行でき、また、所定の処理において共有メモリにアクセスできる。所定の機能と他の機能が同じサーバのエレメントの場合も、同一サーバ内のプログラム処理であるから両機能を実行できる。同様に、所定の機能と共有メモリが同じサーバのエレメントの場合も所定の処理において共有メモリにアクセスできる。
【００７５】
また、各機能は、複数のエレメントで構成してもよい。図８の例は、演算機能８０３を４つのエレメントで構成した例である。
【００７６】
なお、共有メモリ機能８０７は、エレメントにかぎらず、基地局１００のサーバ１１５のメモリ（例えば記憶部１３０）で構成したり、他のサーバや装置のメモリ（例えば、記憶部３２０）で構成したりしてもよい。
【００７７】
（３）データベース装置２００に記憶される情報
次に、データベース装置２００に記憶される情報について説明する。
【００７８】
データベース装置２００の記憶部（データベース）５２０は、例えば３種類のテーブルを有する。各テーブルは、複数のテーブルにわけて構成されてもよい。言い換えると、各テーブルは、リレーショナルテーブルで構成してもよい。なお、テーブル形式以外にも以下に説明する各情報要素が関連付けられた適宜の形態を用いてもよい。
【００７９】
データベース装置２００は、ハンドオーバ履歴情報を記憶する。例えば、ハンドオーバ履歴情報は、以下の第１のテーブル２２１に記憶される。
【００８０】
−第１のテーブル
図９は、第１のテーブル２２１の説明図である。第１のテーブル２２１は、無線端末４００が基地局１００に接続された履歴を示すテーブルである。第１のテーブル２２１は、例えば、以下の情報要素（列、フィールド）を有する。
・アタッチ、デタッチ、及びハンドオーバのいずれかを示す情報。換言すると、無線端末４００と基地局１００の接続処理種別。
・アタッチ、デタッチ、及びハンドオーバのいずれかをした無線端末４００の固有の識別番号。例えば、ＩＭＥＩ（International Mobile Equipment Identifier、国際移動体装置識別番号）を用いることができる。
・アタッチ、デタッチ、及びハンドオーバのいずれかが発生した日時。
・アタッチ及びデタッチのいずれかが発生した基地局１００の固有の識別番号。
・ハンドオーバが発生したハンドオーバ元の基地局１００の固有の識別番号。
・ハンドオーバが発生したハンドオーバ先の基地局１００の固有の識別番号。
【００８１】
なお、本明細書において、上述の情報要素のうちハンドオーバに関連する情報をまとめてハンドオーバ履歴情報と称する。例えば、ハンドオーバ履歴情報は、接続処理種別、無線端末４００の固有の番号、ハンドオーバが発生した日時、ハンドオーバ元の基地局１００の固有の識別番号、及びハンドオーバ先の基地局１００の固有の識別番号を含む。なお、ハンドオーバ履歴情報はこれら情報要素の一部（例えば、無線端末４００の固有の番号、ハンドオーバが発生した日時）を省略してもよい。ハンドオーバ履歴情報は、例えば各基地局１００により第１のテーブル２２１に記憶される。また、第１のテーブル２２１には、特定の無線端末４００のハンドオーバの履歴の他、無線アクセス網１内の各無線端末４００のハンドオーバの履歴についてハンドオーバ履歴情報が記憶される。ハンドオーバ元の基地局（例えば、基地局１００−１）の固有の識別番号と、ハンドオーバ先の基地局(例えば、基地局１００−２)の固有の識別番号とにより、ハンドオーバの実績がある２つの基地局を特定できる。同様に上述の情報要素のうちアタッチに関連する情報をまとめてアタッチ履歴情報と称し、デタッチに関連する情報をまとめてデタッチ履歴情報と称することもできる。なお、上述の識別番号は、番号に限らず適宜の識別情報又は識別子でもよい。他のテーブルに記憶される識別番号についても同様である。
【００８２】
−第２のテーブル
図１０は、第２のテーブル２２２の説明図である。第２のテーブル２２２は、基地局１００及びサーバの情報を含むテーブルである。第２のテーブル２２２は、例えば、以下の情報要素（列、フィールド）を有する。
・サーバの固有の識別番号（例えば、サーバを有する基地局１００の固有の識別番号）。
・サーバの処理能力。
・サーバの処理遅延時間。
・サーバのリソースの総量。
・サーバのリソースの使用量。
・基地局又はサーバのＩＰアドレス。
・基地局又はサーバから接続できる他の基地局やサーバの固有の識別番号（複数可）。
から接続できる他の基地局やサーバとの通信の応答時間（複数可）。
・エレメント間の入出力時間（複数可）
・エレメントの処理速度（複数可）
なお、これらの情報要素のほかにもサーバに関する適宜の情報を含むことができる。例えば、サーバの故障回数及び累積の動作時間などを含んでもよい。上述の各情報要素は、予め記憶され、適宜更新されることができる。
【００８３】
−第３のテーブル
図１１は、第３のテーブル２２３の説明図である。第３のテーブル２２３は、無線端末４００固有の識別番号に対応して、無線端末４００に割り当てる仮想マシン６００の情報を示すテーブルである。第３のテーブル２２３は、例えば、以下の情報要素（列、フィールド）を有する。
・仮想マシン６００を割り当てる無線端末４００の固有の識別番号。
・無線端末４００に割り当てる仮想マシン６００の情報。割り当てる仮想マシン６００の情報としては、以下の情報要素（列、フィールド）を含む。
・エレメントの数の最大値及び最小値。
・共有メモリの容量の最大値及び最小値。
・仮想マシンの処理遅延の最大値及び最小値。
・並列処理のパラメータ。各並列処理のパラメータは、例えば、仮想マシン６００を構成する機能毎に、並列処理する数を示してもよい。
・冗長化のパラメータ。各冗長化のパラメータは、例えば、仮想マシン６００を構成する機能毎に冗長化処理を行うか否かを示してもよい。また、各冗長化のパラメータは、冗長化する数（２重化、３重化など）を示してもよい。
【００８４】
上記最大値と最小値の値には、「制限なし」も設定できる。第３のテーブル２２３の各情報、予め設定される。また、第３のテーブル２２３の各情報は、システムの運用に応じて適宜設定変更できる。
【００８５】
（４）処理の流れ
図１２〜図１６を参照して、第１の実施形態に係る処理の例を説明する。
【００８６】
まず、無線端末４００とサーバ１７５の動作を説明する。図１３は、第１の実施形態に係る無線端末４００とサーバ１７５の動作を説明するためのシーケンス図である。無線端末４００はＲＯＭの中のＢＩＯＳプログラムを起動する（Ｓ１０１）。無線端末４００（ＢＩＯＳプログラム）は、基地局１００−１へ接続要求（アタッチリクエスト）を送信する（Ｓ１０３）。無線アクセス網の各装置は予め定められた接続処理を実行し（Ｓ１０５）、無線端末４００が無線アクセス網と接続される。これにより、上位ノード３００及び上位ノード３００のサーバ１７５は、無線端末４００と通信可能になる。
【００８７】
次に、上位ノード３００のサーバ１７５は仮想マシン６００を構築し、無線端末４００に割り当てる（Ｓ１０７）。この動作の詳細は後述する。サーバ１７５はホストＯＳ７２０のプログラムを、無線端末４００の記憶部４３０（例えばＲＡＭ）に書き込む（Ｓ１０９）。なお、別の実施例として、ホストＯＳ７２０のプログラムを無線端末４００に書き込む動作は、無線端末４００と接続された基地局１００−１のサーバ１１５が処理してもよい。若しくは、当該書き込む動作は、無線端末４００と接続された基地局１００−１以外の基地局のサーバ（サーバ１２５又はサーバ１３５）が処理してもよい。若しくは、当該書き込む動作は、無線アクセス網に配置された別のサーバが処理してもよい。例えば後述する第２の実施形態におけるサーバ９５０が処理してもよい。また、別の実施例では、ホストＯＳ７２０のプログラムは、予め記憶部４３０（例えばＲＯＭ）に書き込まれていてもよい。
【００８８】
次に、無線端末４００は、ホストＯＳ７２０を起動する（Ｓ１１１）。ホストＯＳ７２０は仮想マシン６００を起動する。そして、無線端末４００は、仮想マシン６００を使ってアプリケーションプログラムを実行する（Ｓ１１３）。
【００８９】
ここで、基地局１００−１（第２通信処理部１４３）が第１のテーブル２２１に情報を記憶する動作を説明する。
【００９０】
基地局１００−１は、データベース装置２００と通信する。基地局１００−１は、例えば、無線端末４００が基地局１００−１にアッタッチした際に、アタッチを示す種別情報と、アタッチした日時と、無線端末４００の固有の識別番号と、基地局１００−１の固有の識別番号を第１のテーブル２２１に記憶する。
【００９１】
基地局１００−１は、例えば、無線端末４００が基地局１００−１からデタッチした際に、デタッチを示す種別情報と、デタッチした日時と、無線端末４００の固有の識別番号と、基地局１００−１の固有の識別番号を第１のテーブル２２１に記憶する。
【００９２】
基地局１００−１は、例えば、無線端末４００がハンドオーバした際に、ハンドオーバを示す種別情報と、ハンドオーバした日時と、無線端末４００の固有の識別番号と、ハンドオーバ元の基地局１００−１の固有の識別番号と、ハンドオーバ先の基地局(例えば、基地局１００−２)の固有の識別番号を第１のテーブル２２１に記憶する。このようにして、無線端末４００のアタッチ、デタッチ及びハンドオーバの履歴が第１のテーブル２２１に蓄積される。
【００９３】
ここで、別の実施例として、ハンドオーバ先の基地局１００−２の固有の識別番号を第１のテーブル２２１に記憶する動作は、ハンドオーバ先の基地局１００−２が行ってもよい。また、さらに別の実施例として、アタッチ、デタッチ及びハンドオーバの際に無線アクセス網の他の装置もそれらの処理を行うため、基地局１００−１及び１００−２以外の装置が第１のテーブル２２１に上記情報を記憶してもよい。例えば、サーバ１７５が上記情報を第１のテーブル２２１に記憶してもよい。
【００９４】
基地局１００−１が第１のテーブル２２１に情報を記憶する動作を説明したが、他の基地局１００（基地局１００−２、１００−３）も同様に動作する。
【００９５】
次に、基地局１００−１のサーバ１１５（サーバ機能部１４５）が第２のテーブル２２２に情報を記憶する動作を説明する。基地局１００のサーバ１１５は他のサーバ（例えば、サーバ１２５、サーバ１３５、サーバ１７５、及び後述するサーバ９５０）と通信し、その応答に要した時間（通信の応答時間）を第２のテーブル２２２に記憶する。例えば、サーバ１１５は、自身の識別番号に対応して、基地局又はサーバの識別番号と、通信の応答に要した時間を第２のテーブル２２２に記憶する。サーバ１１５は、接続可能な基地局のサーバ全てに対して、同様に、通信の応答に要した時間を記憶する。
【００９６】
基地局１１０−１のサーバ１１５は、自身のエレメントとエレメントとの間での入出力に要した時間を第２のテーブル２２２に記憶する。例えば、サーバ１１５は、自身の識別番号に対応して、自身のエレメント間で入出力に要した時間を第２のテーブル２２２に記憶する。
【００９７】
基地局のサーバ１１５は、自身のエレメントの処理速度を計測して、第２のテーブル２２２に記憶する。例えば、サーバ１１５は、自身の識別番号に対応して、計測したエレメントの処理速度を第２のテーブル２２２に記憶する。
【００９８】
なお、基地局１００−１のサーバ１１５は、通信の応答の要した時間、エレメント間で入出力に要した時間、及びエレメントの処理速度を例えば一定時間ごとに更新することができる。システム１における全ての基地局１００のサーバが、同様に、第２のテーブル２２２に上述の情報を記憶する。上位ノード３００のサーバ１７５も同様に第２のテーブル２２２に上述の情報を記憶してもよい。また、後述する無線アクセス網にあるサーバ９５０も同様に第２のテーブル２２２に上述の情報を記憶してもよい。
【００９９】
次に、データベース装置２００の動作を説明する。
データベース装置２００（データベース管理部２３３）は、例えば定期的に第１のテーブル２２１に記憶された日時情報（アタッチ、デタッチ及びハンドオーバの発生日時）を参照して、現在時刻までの経過時間が予め定められたしきい値を超えるレコード（つまり、古いレコード）を削除する。なお、サーバ１７５がデータベース装置２００の第１のテーブル２２１の上記レコードを削除してもよい。別の実施例として、無線端末４００が接続した基地局１００−１のサーバ１１５が、第１のテーブル２２１の上記レコードを削除してもよい。若しくは、基地局１００−１以外の基地局のサーバ（例えば、サーバ１２５、サーバ１３５）が第１のテーブル２２１の上記レコードを削除してもよい。若しくは、無線アクセス網にある後述するサーバ９５０が第１のテーブル２２１の上記レコードを削除してもよい。
【０１００】
次に、上位ノード３００のサーバ１７５の動作を説明する。以下に説明するサーバ１７５の動作は、無線端末４００が接続した基地局１００−１のサーバ１１５が行ってもよいし、基地局１００−１以外の基地局のサーバ（例えば、サーバ１２５、サーバ１３５）が行ってもよい。若しくは、以下に説明するサーバ１７５の動作は、無線アクセス網に設けられた後述するサーバ９５０が行ってもよい。
【０１０１】
まず、サーバ１７５が、データベース装置２００の第１のテーブル２２１を参照して所定の無線端末４００が基地局１００に接続した履歴を統計処理する動作を説明する。サーバ１７５は、データベース装置２００の履歴を統計処理して、各無線端末がどの基地局と何回接続したのかについての統計を算出する（第１の算出結果）。例えば、第１のテーブル２２１に記憶された無線端末の識別番号毎に、各基地局に接続した回数をカウントする。基地局に接続した回数は、例えばアタッチの回数及びハンドオーバの回数を参照して求めることができる。
【０１０２】
サーバ１７５は、データベース装置２００の第１のテーブル２２１の履歴を統計処理して、どの基地局からどの基地局に所定の無線端末が移動したのかについての統計を算出する（第２の算出結果）。例えば、第１のテーブル２２１のハンドオーバ元基地局の識別番号及びハンドオーバ先基地局の識別番号を参照してどの基地局からどの基地局に無線端末が移動したかを求めることができる。
【０１０３】
サーバ１７５は、データベース装置２００の第１のテーブル２２１の履歴を統計処理して、上記所定の無線端末以外の無線端末がどの基地局からどの基地局に移動したのか算出する（第３の算出結果）。
【０１０４】
上述の統計は、第１のテーブル２２１の日時情報に基づいて、月別、日別、曜日や祝休日別、又は時間帯別の統計をとってもよい。また、別の例として、複数の基地局のカバレッジエリアを含む所定のエリアに対して統計をとってもよい。
【０１０５】
サーバ１７５は、無線端末４００が基地局（例えば、基地局１００−１）にアタッチすると、その無線端末４００用の仮想マシン６００を割り当てる。以下に、無線端末４００に対して仮想マシン６００を割り当てる動作を詳細に説明する。図１４は、第１の実施形態に係る仮想マシンの割り当てを説明するためのフローチャートである。
【０１０６】
まず、ステップ１として、サーバ１７５は、仮想マシン６００の構成を判断する（Ｓ２０１）。例えば、サーバ１７５は、第３のテーブル２２３を参照し、無線端末４００の端末固有の識別番号に対応するレコード（行）を参照し、割り当てる仮想マシンの情報（エレメント数の最大値と最小値、及び、共有メモリの容量の最大値と最小値など）を得る。
【０１０７】
次に、ステップ２として、サーバ１７５は、基地局１００と基地局１００内のサーバを分類する（Ｓ２０３）。分類わけについて以下説明する。
【０１０８】
サーバ１７５は、無線端末４００が接続している第１の基地局（例えば、基地局１００−１、基地局１００−１内のサーバ１１５）を第１分類（Category 1）にする。例えば、サーバ１７５は、第１のテーブル２２１を参照して無線端末４００が接続している基地局１００−１（サーバ１１５）を識別してもよい。
【０１０９】
サーバ１７５は、上述の第３の算出結果から、無線端末４００にとって第１分類の基地局１００−１からの移動先（ハンドオーバ先）になりうる第２の基地局（例えば、基地局１００−２。基地局１００−２内のサーバ１２５を第２分類（Category 2）にする。例えば、サーバ１７５は、第１のテーブル２２１を参照して基地局１００−１からの移動先（ハンドオーバ先）になりうる基地局（サーバ）を識別してもよい。ここで、第２の分類には、例えば、無線端末４００が接続している基地局からハンドオーバの実績がある（例えば、ある無線端末が過去にハンドオーバしたことがある）基地局が属する。
【０１１０】
サーバ１７５は、上述の第１の算出結果から、無線端末４００が接続したことがある基地局１００（サーバ）を第３分類（Category 3）にする。例えば、サーバ１７５は、第１のテーブル２２１を参照して無線端末４００が接続したことがある基地局１００（サーバ）を識別してもよい。
【０１１１】
サーバ１７５は、上述の第２の算出結果と第３の算出結果を比較する。そして、サーバ１７５は、無線端末４００にとっては第１分類の基地局からの移動先にならなかったが、他の無線端末にとっては第１分類の基地局からの移動先になりうる基地局（サーバ）を第４分類（Category 4）にする。なお、第１分類〜第４分類は、無線端末４００の移動又はハンドオーバに関係するものであり、第１分類〜第４分類に属するサーバは、例えば、基地局１００内にあるサーバ（例えば、サーバ１１５、１２５、１３５）である。一方、以下に示す第５分類〜第９分類に属するサーバは、基地局１００内のサーバだけでなく、上位ノード３００内のサーバ１７５を含んでもよい。
【０１１２】
サーバ１７５は、第２のテーブル２２２を参照して、第１分類の基地局１００−１から、応答時間が時間しきい値未満のサーバ（基地局）を第５分類（Category 5）にする。時間しきい値は、予め定められることができる。また、時間しきい値は適宜のテーブルに予め記憶され、例えば上述のステップ１においてテーブルから取得してもよい。
【０１１３】
サーバ１７５は、第５分類のサーバ（基地局）のうち、第２分類に該当しないサーバ（基地局）を第６分類（Category 6）にする。第６分類のサーバ（基地局）は、無線端末４００のハンドオーバ先になる可能性が低い。そのため、第６分類のサーバ（基地局）は無線端末４００のハンドオーバの影響を受けにくい特徴をもつ。さらに、第６分類のサーバ（基地局）は、無線端末４００が接続する基地局１００−１からの通信の応答時間がしきい値未満であり、通信遅延の影響も受けにくい。
【０１１４】
サーバ１７５は、第６分類のサーバ（基地局）のうち第３分類に該当しないサーバ（基地局）を第７分類（Category 7）にする。第７分類の基地局は、無線端末４００が接続する可能性が低い。そのため、第７分類のサーバ（基地局）は無線端末４００の影響を受けにくい特徴をもつ。さらに、第６分類のサーバ（基地局）は、無線端末４００が接続する基地局１００−１からの通信の応答時間がしきい値未満であり、通信遅延の影響も受けにくい。
【０１１５】
サーバ１７５は、第７分類のサーバ（基地局）のうち第４分類に該当しないサーバ（基地局）を第８分類（Category 8）にする。第８分類のサーバ（基地局）は、基地局１００−１と接続されるあらゆる端末のハンドオーバ先になる可能性が低い。そのため、第８分類のサーバ（基地局）は基地局１００−１やサーバ１１５の動作からの影響を受けにくい特徴をもつ。
【０１１６】
サーバ１７５は、第１分類から第８分類のいずれにも該当しないサーバ（基地局）を第９分類（Category 9）にする。
【０１１７】
なお、上述の分類わけは一例である。上述の分類わけ以外にも、より荒く分類わけしてよいし、より細かく分類わけしてもよい。第１〜第３のテーブルに基づいて適宜の統計処理計算をして、統計処理の結果から適宜分類わけしてもよい。例えば、第１のテーブル２２１の情報に基づく統計処理によって、無線端末４００が接続した頻度や割合を求めて、この結果を基にさらに細かい分類わけをしてもよい。
【０１１８】
次に、ステップ３として、無線端末４００のサーバ１７５と基地局１００の各サーバが、図８の仮想マシン６００を構成する処理（Ｓ２０５）を説明する。
【０１１９】
サーバ１７５は、仮想マシン６００の機能に応じて、割り当てるサーバを選ぶ分類、又は割り当てるサーバを選ぶ分類の優先順位を決めることができる。以下の説明は、入力機能８０１に対する割り当て処理の一例である。
【０１２０】
サーバ１７５は、まず、入力機能８０１を処理するエレメントの割り当て対象を第１分類のサーバから選択する。サーバ１７５は、第２のテーブル２２２を参照して、割り当て対象のサーバに使用可能なリソースがあることを確認する。使用可能なリソースが足りない場合（例えば、リソースが予め定められた閾値より少ない場合）、エレメントの割り当て対象を第２分類のサーバから選択し、同様にリソースを確認する。第２分類のリソースが足りない場合、同様にして、他の分類のサーバを選択し、リソースを確認する。なお、同じ分類に他のサーバがある場合は、次に分類に移る前に当該分類のサーバを選択してもよい。第２のテーブル２２２を参照して使用可能なリソースがある場合（例えば、リソースが予め定められた閾値より多い場合）、サーバ１７５は、選択した割り当て対象のサーバに、入力機能の割り当てを指示する。
【０１２１】
指示を受けたサーバは、未使用のエレメント（エミュレータ）を使って、入力機能８０１を処理するプログラムを実行する。
【０１２２】
同様にして、サーバ１７５は、分散機能８０２、演算機能８０３、集計機能８０４、出力機能８０５、実行制御機能８０６、及び共有メモリ機能８０７のエレメントを割り当てる。
【０１２３】
なお、サーバ１７５は、上述の複数の機能のエレメントが少なくとも複数のサーバで分散処理されるようにエレメントを割り当てる。
【０１２４】
サーバ１７５は、例えば、ステップ１とステップ２で得られる情報に応じて、エレメントを割り当てるサーバをどの分類から選ぶか、又はどの分類から優先するか（すなわち優先順位）を決めることができる。例えば、第５分類のサーバは基地局１００−１からの通信遅延がしきい値未満であるため、第５分類のサーバからエレメントを選べば、第３のテーブル２２３に設定した処理遅延の範囲を満たす仮想マシン６００を構築することができる。
【０１２５】
なお、サーバ１７５は、例えば、ステップ１で得られる情報に応じて、割り当てるエレメントの数を決め、仮想マシン６００の機能の数を決め、機能と機能の接続構造を決めることができる。図１２は、機能と機能の接続構造の一例を示す図である。ただし、説明を簡略にするために、図１２では実行制御機能８０６及び共有メモリ機能８０７の各々と、他の機能との接続の表記を省略している。
【０１２６】
サーバ１７５は、例えば、ステップ１において第３のテーブル２２３から得られたエレメント数の最大値及び最小値、並列処理のパラメータ、並びに冗長化のパラメータに基づいて、割り当てるエレメントの数を決定する。
【０１２７】
例えば、サーバ１７５は、入力機能８５１と出力機能８５５の各々に、第１分類から１つずつのエレメントを割り当て、第２分類から２つずつのエレメントを割り当てる。このように、仮想マシン６００の複数の機能の少なくとも一部（この例はでは入力機能８５１と出力機能８５５）は、無線端末装置（例えば無線端末４００）が接続している第１の基地局（例えば基地局１００−１）と、第１の基地局からのハンドオーバの実績がある第２の基地局（例えば基地局１００−２）とに割り当てられてもよい。これによって、無線端末４００が第１分類の基地局から第２分類の基地局にハンドオーバしても処理遅延の増大を防ぐ効果を得ることができる。
【０１２８】
実行制御機能８０６、共有メモリ機能８０７、及び演算機能８０３も、複数のエレメントで構成し、同期して並列処理して、同様の効果を得ることができる。分散機能８０２及び集計機能８０４も同様に複数のエレメントで構成し、少なくとも一部を同期して並列処理してもよい。
【０１２９】
別の例では、サーバ１７５は、演算機能８０３を割り当てるエレメント数を増減する。これにより、演算処理能力を増減する効果を得る。別の例では、サーバ１７５は、共有メモリ機能８０７を割り当てるエレメント数を増減する。これにより、記憶容量を増減する効果を得ることができる。さらに別の例では、それぞれの機能は二重化又はクラスタリングなどの冗長構成にできる。これにより可用性の向上の効果を得ることができる。
【０１３０】
次に、ステップ４として、サーバ１７５は、構築した仮想マシン６００へイメージファイル（ディスクイメージ）を展開する（Ｓ２０７）。イメージファイルの形式としては、国際標準化機構（ＩＳＯ）によって策定されたＩＳＯイメージなどの形式を用いることができる。イメージファイルには、無線端末４００が使用するゲストＯＳ７３２を含む。イメージファイルは、例えば、サーバ１７５が有している。若しくは、イメージファイルは、サーバ１７５がアクセス可能な、後述するファイルサーバ９６０が有している。イメージファイルは、サーバ１１５、サーバ１２５、サーバ１３５及びサーバ９５０など、サーバ１７５以外のサーバが分散して有してもよい。
【０１３１】
また、サーバ１７５は、ゲストＯＳ７３２の種類に応じた複数のイメージファイルを有する。別の実施例では、サーバ１７５は、無線端末毎にゲストＯＳ７３２を有する。複数のイメージファイルのいずれを展開するかについては、ステップ１で得られた適宜の情報に基づき判断してもよい。
【０１３２】
ステップ５として、サーバ１７５は、仮想マシン６００にアプリケーションプログラムのファイルをコピーする（Ｓ２０９）。別の実施例では、イメージファイルはアプリケーションプログラムのファイルを含み、ステップ４とステップ５が１つのステップで実現してもよい。アプリケーションプログラムのファイルは、サーバ１７５が有する。若しくは、サーバ１７５がアクセス可能な、後述するファイルサーバ９６０がアプリケーションプログラムのファイルを有する。若しくは、サーバ１１５、サーバ１２５、サーバ１３５、及びサーバ９５０など、サーバ１７５以外のサーバがアプリケーションプログラムのファイルを分散して有してよい。
【０１３３】
サーバ１７５は、アプリケーションプログラムの種類に応じて、複数のファイルを有する。別の実施例では、サーバ１７５は、無線端末毎にファイルを有してもよい。無線端末ごとにファイルを有する例として、例えば、アプリケーションの実行に必要な設定データのファイルなどが挙げられる。複数のファイルのいずれを展開するかについては、ステップ１で得られた適宜の情報に基づき判断してもよい。
【０１３４】
無線端末４００がデタッチした際の処理について説明する。図１５は、第１の実施形態に係る無線端末４００がデタッチした際の動作を説明するためのフローチャートである。無線端末４００がデタッチすると、サーバ１７５は仮想マシン６００を構成するサーバと通信し、各エレメントの動作を停止させる（Ｓ３０１）。また、サーバ１７５は、エレメントの動作を停止させることで未使用エレメントにし、リソースを解放する（Ｓ３０３）。なお、サーバ１７５は、無線端末４００がデタッチしてから所定時間を経過後に、リソースを解放してもよい。仮に、所定時間内に無線端末４００が再びアタッチしたなら、構成された仮想マシン６００を再利用してもよい。
【０１３５】
次に、無線端末４００がハンドオーバした際の処理について説明する。より詳細には、無線端末４００がハンドオーバしたときに、サーバ１７５が仮想マシンの構成を変更する動作について説明する。
【０１３６】
図１６は、第１の実施形態に係る無線端末４００がハンドオーバした際の動作を説明するためのフローチャートである。サーバ１７５は、無線端末４００のハンドオーバが発生すると、仮想マシン６００の処理遅延を再計算する（Ｓ４０１）。処理遅延の計算は、上述と同様である、処理遅延の時間が第３のテーブル２２３の設定（例えば、処理遅延の最大値及び最小値）を満足する場合、サーバ１７５は仮想マシン６００の構成を変更しないでもよい。一方、処理遅延の時間が第３のテーブル２２３の設定（例えば、処理遅延の最大値及び最小値）を満足しない場合、サーバ１７５は無線端末４００に対する基地局とそのサーバの分類わけ処理を行う（Ｓ４０３）。つまり、ステップ２を再度実行する。
【０１３７】
次に、サーバ１７５は、新たな分類わけに従い、既に割り当てられているエレメントの分類を検査し、仮想マシン６００を構成する処理（前述のステップ３）で説明した選択（割り当て）のルールから外れているエレメントを検出する。サーバ１７５は、ルールから外れたエレメントの機能に対し、追加でひとつ又は複数のエレメントを割り当てる（Ｓ４０５）。このようにして、仮想マシン６００が当該機能（追加したエレメント）を同期して並列処理できるようにする。サーバ１７５は、ルールから外れたエレメントを仮想マシン６００から切りはなし、使用していないエレメントとしてリソース解放する（Ｓ４０７）。なお、別の実施例として、これらの動作を無線端末４００がハンドオーバしたときにかぎらず、定期的に行ってもよい。
【０１３８】
＜２．７．まとめ＞
以上、第１の実施形態を説明した。第１の実施形態によれば、無線端末よりも性能の高いＣＰＵと、無線端末よりも容量の大きいメモリを有する基地局及び／又は無線アクセスネットワーク装置（ノード装置）のサーバを使ってアプリケーションプログラムを処理することができる。これにより、廉価な無線端末でも、高度なアプリケーションプログラムを処理することができる。
【０１３９】
また、無線端末のハンドオーバに応じて、処理遅延が小さくなるように、仮想マシンを構成するサーバを替えることができる。これにより、無線端末がハンドオーバしてもアプリケーションの処理や通信の遅延の増大を削減できる。
【０１４０】
また、端末固有の識別番号をキーにデータベースを参照し、要求される仮想マシンの性能、ゲストＯＳの種類及びアプリケーションの種類を得ることができ、これらの情報に基づいて仮想マシンを構築して無線端末に割り当てることができる。これにより、無線端末のアプリケーションプログラムを処理する仮想マシンの性能、そのゲストＯＳの種類、アプリケーションの種類を、無線端末に応じて変えることができる。
【０１４１】
また、仮想マシンの機能を複数のサーバの複数のプログラムで実現しており、仮想マシンの構成を自由に変えることができる。これにより、無線端末のアプリケーションプログラムを処理する仮想マシンの性能、メモリ容量、及び可用性を柔軟に変えることができる。
【０１４２】
また、無線端末がアタッチした基地局の情報をデータベースが記憶し、この情報に基づいて利用するサーバを割り当てることができる。そして、無線アクセスネットワークの有限のリソースを各サービスに適切に割り当てることができる。さらに、第１の実施形態のシステムは、経済性がよい。
【０１４３】
＜＜３．第２の実施形態＞＞
＜３．１．システムの構成＞
続いて、図１７を参照して、本発明の第２の実施形態を説明する。図１７は、第２の実施形態に係るシステム２の概略的な構成の一例を示す説明図である。
【０１４４】
第２の実施形態に係るシステム２は、例えば、複数の基地局９００と、複数のサーバ（サーバ９１５、９２５、９３５、９５０）と、複数のデータベース装置（データベース装置９１６、９２６、９３６、２００）と、上位ノード（コアネットワークノード）９４０と、ファイルサーバ９６０と、ルータ５００を備える。
【０１４５】
本実施の形態においては、図１７に示すように、基地局１００とサーバは別の装置で構成されてもよい。各基地局と各サーバは接続され、互いに通信可能である。また、上位ノード９４０及びファイルサーバ９６０は、ルータ５００を介して各サーバと接続され、各サーバと通信可能である。なお、基地局９００−１とサーバ９１５は予め関連付けられ、基地局９００−２とサーバ９２５は予め関連付けられ、基地局９００−３とサーバ９３５は予め関連付けられてもよい。例えば、サーバ９１５、９２５、９３５は、基地局９００と別の装置で構成されるが、第１の実施形態における基地局内のサーバのように動作してもよい。
【０１４６】
図１７に示すように、データベース９１６、９２６、９３６は基地局１００毎に備えてもよい。これらの複数のデータベースの第１〜第３テーブルが同じになるように同期動作するようにしてもよい。若しくは、これらの複数のデータベースにテーブルを分けてもち、テーブル間に関連性（リレーション）をもたせて、各装置が参照できるようにしてもよい。
【０１４７】
＜３．２．基地局の構成＞
基地局９００（基地局９００−１、９００−２、９００−３）の構成は、サーバ機能部１４５を省略する点を除き、図２を参照して説明した第１の実施形態の基地局１００と同様であり、重複する説明を省略する。
【０１４８】
＜３．３．データベース装置の構成＞
データベース装置２００の構成は、図３を参照して説明した第１の実施形態のデータベース装置２００と同様であり、重複する説明を省略する。なお、上述のように、第１の実施形態においてデータベース装置２００に記憶されていた情報は、第２の実施の形態の各データベース装置９１６、９２６、９３６、２００のいずれかに記憶されてもよい。
【０１４９】
＜３．４．上位ノードの構成＞
上位ノード９４０の構成は、図４を参照して説明した第１の実施形態の上位ノード３００と同様であり、重複する説明を省略する。
【０１５０】
＜３．５．無線端末の構成＞
無線端末４００の構成は、図５を参照して説明した第１の実施形態の無線端末４００と同様であり、重複する説明を省略する。
【０１５１】
＜３．６．技術的特徴＞
各装置の処理については、上述の第１の実施形態の処理と同様である。
【０１５２】
＜＜４．第３の実施形態＞＞
続いて、図１８及び図１９を参照して、本発明の第３の実施形態を説明する。上述した第１の実施形態は、具体的な実施形態であるが、第３の実施形態は、より一般化された実施形態である。
【０１５３】
＜４．１．システムの構成＞
図１８を参照して、本実施形態に係るシステム３の構成の例を説明する。図１８は、第３の実施形態に係るシステム３の概略的な構成の例を示す説明図である。
【０１５４】
システム３は、複数のネットワーク装置を備える。複数のネットワーク装置として、例えば、ひとつ又は複数の基地局１１００と、ノード装置（上位ノード、コアネットワークノード）１３００を有する。また、システム３はルータ１５００を備えてもよい。また、システム３において、基地局の一方又はノード装置１３００を省略してもよい。以下の説明において、特に各基地局を区別する必要が無い場合は、まとめて基地局１１００と記載する場合もある。システム３を通信システムと称する場合もある。また、複数の基地局１１００で構成されるシステムを通信システム又は基地局システムと称する場合もある。また、基地局１１００、上位ノード１３００及びサーバをネットワーク装置と称する場合もある。
【０１５５】
各基地局１１００（例えば、基地局１１００−１と基地局１１００−２等）は、ルータ１５００を介して互いに通信する。また、各基地局１１００はルータ１５００を介して上位ノード１３００と通信する。
【０１５６】
例えば、システム３は、３ＧＰＰの規格（standard）に準拠したシステムである。より具体的には、システム３は、ＬＴＥ／ＬＴＥ−Ａｄｖａｎｃｅｄ及び／又はＳＡＥ（System Architecture Evolution）に準拠したシステムであってもよい。あるいは、システム３は、第５世代（５Ｇ）の規格に準拠したシステム、又は第３世代（３Ｇ）の規格に準拠したＵＭＴＳ（Universal Mobile Telecommunications System）であってもよい。当然ながら、システム３は、これらの例に限定されない。
【０１５７】
＜４．２．基地局、無線端末の構成＞
基地局１１００及び無線端末１４００の構成は、第１の実施の形態と同様であり、説明を省略する。
【０１５８】
＜４．３．上位ノードの構成＞
図１９は、第３の実施形態に係る上位ノード１３００の概略的な構成の例を示すブロック図である。図１９を参照すると、上位ノード１３００は、サーバ機能部１３３３を有する。サーバ機能部１３３３は、無線端末１４００に対するアプリケーションプログラムを実行する仮想マシンの機能の一部を実行する。また、サーバ機能部１３３３は、無線端末１４００に対するアプリケーションプログラムを実行する仮想マシンの機能を、システム３内の各サーバに割り当てる。
【０１５９】
サーバ機能部１３３３は、プロセッサ等により実装されてもよい。上位ノード３００は、プログラムを記憶するメモリと、当該プログラムを実行可能な１つ以上のプロセッサとを含んでもよく、当該１つ以上のプロセッサは、サーバ機能部１３３３の動作を行ってもよい。上記プログラムは、サーバ機能部１３３３の動作をプロセッサに実行させるためのプログラムであってもよい。
【０１６０】
＜４．４．技術的特徴＞
次に、第３の実施形態の技術的特徴を説明する。
第３の実施形態では、基地局１１００は、無線端末１４００に対するアプリケーションプログラムを実行する仮想マシンの複数の機能の一部がそれぞれ割り当てられ、割り当てられた機能を実行する。ここで、仮想マシンの複数の機能が、複数の基地局で分散して実行される。
【０１６１】
ノード装置１３００のサーバ機能部１３３３は、無線端末１４００に対するアプリケーションプログラムを実行する仮想マシンの複数の機能を、複数の基地局１１００に分散して割り当てる。ここで、サーバ機能部１３３３は、少なくとも複数の基地局１１００間のハンドオーバの履歴情報に基づいて、仮想マシンの複数の機能を、複数の基地局１１００に割り当てる。基地局１１００及び上位ノード１３００のその他の動作は第１の実施の形態と同様である。なお、第１の実施形態においてデータベース装置２００が記憶していた情報は、基地局１１００及び上位ノード１３００に記憶され、参照されることができる。
【０１６２】
以上、第３の実施形態を説明した。第３の実施形態によれば、例えば、無線端末が、他の装置のリソースを用いてアプリケーションプログラムを処理することができる。
【０１６３】
＜＜５．変形例＞＞
上述の各実施形態の変形例を説明する。以下の説明では、第１の実施形態の符号を付して説明するが、各変形例は第２及び第３の実施形態についても同様に適用できる。
【０１６４】
サーバは、機能に応じたエレメントを生成してもよい。このようなエレメントの例として、データ入出力の性能に特化したインターフェース用エレメント、演算処理の性能に特化した演算用エレメント、メモリ機能の性能に特化したメモリエレメントなどが挙げられる。
【０１６５】
上位ノード３００のサーバ１７５も、基地局１００−１のサーバ１１５等がエレメントを生成するのと同様に、エレメントを生成してもよい。
【０１６６】
１つのエレメントで複数の機能を処理してもよい。例えば、入力機能８０１と出力機能８０５を１つのエレメントで構成してもよい。また、入力機能８０１と分散機能８０２を１つのエレメントで構成してもよい。
【０１６７】
第１のテーブル２２１にアタッチ、デタッチ及びハンドオーバが発生した理由（要因、契機）を示す情報を記憶してもよい。記憶される理由を示す情報は、例えば、人の手による操作によるもの、人の手による移動によるもの、端末のプログラム処理によるもの、無線端末の障害によるもの、電波の送受信状況の変化によるもの、ネットワークの障害によるもの、及び、無線端末の電源が切れたことによるもの等である。
【０１６８】
第１のテーブル２２１は、無線端末が在圏したセルが特定できる（セル固有の識別番号を示す列がある）情報を含んでもよい。例えば、第１のテーブル２２１は、無線端末が在圏したセルの固有の識別番号を示す列を有してもよい。この変形例は、１つの基地局が複数のセルを形成できる場合に適用してもよい。同一の基地局が生成するあるセルから別のセルへのハンドオーバが実施されたことの情報を第１のテーブル２２１で記憶することができる。
【０１６９】
データベース装置２００のテーブルは、基地局１００の位置情報をさらに含んでもよい。例えば、基地局固有の識別番号と対応して、基地局１００が配置された緯度、経度及び標高、宇宙空間の座標を示す情報、又は、地中若しくは海中の座標を示す情報等を含んでもよい。移動可能な基地局１００を考慮して、これらの情報に加えて当該位置情報が示す位置に基地局１００が位置した日時情報を対応付けてもよい。
【０１７０】
データベース装置２００のテーブルは、無線端末４００の位置情報をさらに含んでもよい。例えば、無線端末固有の識別番号と、無線端末４００が当該位置に位置した日時に対応して、緯度、経度及び標高、宇宙空間の座標を示す情報、又は、地中若しくは海中の座標を示す情報等を含んでもよい。データベース装置２００のテーブルは、セルの範囲を特定できる情報を含んでもよい。例えば、基地局１００からセル境界まで距離、ビームの方向と範囲、緯度と経度、及び／又は出力電力等である。
【０１７１】
データベース装置２００のテーブルは、基地局１００の所有者又は事業者を特定することができる情報を含んでもよい。データベース装置２００のテーブルは、無線端末４００がアタッチ、デタッチ又はハンドオーバをしたセルを特定する情報を含んでもよい。これにより、１つの基地局１００で複数のセルを形成する場合に対応できる。データベース装置２００のテーブルは、無線端末４００の加入者情報、例えば、契約サービスの種類、端末利用者が属するグループ、及び通信の優先制御の対象になる加入者か否か等を含んでもよい。
【０１７２】
なお、上述の情報は、データベース装置２００の第１のテーブル２２１、第２のテーブル２２２、及び第３のテーブル２２３の何れかに記憶されてもよいし、別個のテーブルに記憶されてもよい。
【０１７３】
また、複数の無線端末４００に対し、１つの仮想マシン６００を割り当ててもよい。１つの無線端末４００に対し、複数の仮想マシン６００を割り当ててもよい。
【０１７４】
ステップ２の分類わけの別の実施例として、ある分類の否定論理（ＮＯＴ）を別の分類の種類にしてもよい。また、ある分類と他の分類との論理和（ＯＲ）や他の論理（ＡＮＤ、ＮＯＲ、ＮＡＮＤ、ＸＯＲ等）を、さらに別の分類にしてもよい。
【０１７５】
第１の実施形態では、データベース装置２００は３種類のテーブル２２１、２２２、２２３を有する例を説明したが、データベース装置２００のテーブルは４種類以上でもよい。図２０は、第４のテーブル２２４の説明図である。例えば、データベース装置２００は第４のテーブル２２４を有し、第４のテーブル２２４は、無線端末４００が処理したアプリケーションの履歴を示すテーブルである。第４のテーブル２２４は、例えば、以下の情報要素（列、フィールド）を有する。
・無線端末４００の固有の識別番号。
・処理したアプリケーションの種類。
・アプリケーションの処理を開始した日時。
・アプリケーションの処理を終了した日時。
・無線端末４００の位置情報。
【０１７６】
図２１は、第５のテーブル２２５の説明図である。例えば、データベース装置２００は第５のテーブル２２５を有する。第５のテーブル２２５は、例えば、以下の情報要素（列、フィールド）を有する。
・無線端末４００の固有の識別番号。
・仮想マシン６００を構成した日時。
・仮想マシン６００の処理遅延時間（最大値、最小値、平均値）。
・仮想マシン６００の構成を特定する情報。
【０１７７】
なお、仮想マシン６００の構成を特定する情報は以下の情報要素（列、フィールド）含む。
・サーバ固有の識別番号。
・当該サーバのエレメントが処理する処理機能の部位。
【０１７８】
サーバは、第５のテーブル２２５を参照して、同じ構成の仮想マシンを構成してもよい。
また、データベースの情報を統計処理する対象のテーブルは、第１のテーブル２２１以外でもよい。統計処理は、加入者のグループ別、契約サービスの種類別、及び、実行したアプリケーション別等、区分毎に実行でき、これら区分毎に情報を集計し分析できる。
【０１７９】
サーバは、統計処理にて無線端末４００の移動速度を算出してもよい。例えば、上述のようにデータベース装置のテーブルに記憶された緯度、経度及び高度の２例（２地点の座標）以上から移動速度を計算してもよい。これらの情報は、無線端末４００の識別番号と当該位置情報に位置した日時に対応して記憶されている。また、サーバは、無線端末４００がセルＡからセルＢへハンドオーバした日時と、セルＢからセルＣへハンドオーバした日時と、セルＢのセル範囲（大きさ、セルＢを通過するのに要する距離）を特定できる情報から、無線端末４００の移動速度を計算できる。
【０１８０】
統計処理の例は、例えば、要約統計量、正規性の検定、二項検定、ｔ検定、分散分析、比率の検定、相関分析、回帰分析、多変量解析、又は生存時間分析等を用いることができる。
【０１８１】
さらに、上述のステップ３の変形例として、入力機能８５１及び出力機能８５５を構成するエレメントを、第１分類、第２分類、及び第３分類の基地局１００から選ぶ。無線端末４００が接続する基地局１００のほとんどは第１分類、第２分類、及び第３分類の基地局に属すると想定されるため、入力機能８５１及び出力機能８５５と無線端末４００との通信遅延を小さくすることができる。
【０１８２】
ステップ３の他の変形例として、分散機能８０２、演算機能８０３、及び集計機能８０４を構成するエレメントを、第６分類、第７分類、及び第８分類のサーバから選ぶ。これらの分類には、例えば、第１の基地局（例えば基地局１００−１）からのハンドオーバの実績がない第３の基地局（例えば基地局１００−３）又は基地局以外の装置(例えば、上位ノード３００のサーバ１７５)が属する。したがって、これらの分類の基地局１００は、無線端末４００、及び基地局１００−１に接続する他の無線端末のハンドオーバ先になりにくい。そのため、上述の分類から選択した基地局１００のサーバは、ハンドオーバ処理の影響を受けにくい特徴があり、安定して各処理を実行できる。
【０１８３】
ステップ３のさらに他の変形例として、ある処理機能を構成するエレメントを割り当てるサーバを選択する際に、当該処理機能に隣り合う処理機能（例えば、処理の流れにおいて前後に実行する処理機能）を構成するエレメントを割り当てるサーバとの通信の応答時間も考慮して決定する。例えば、通信の応答時間が短くなるようにサーバを選択する。サーバとサーバとの通信の応答時間は、第２のテーブル２２２から得ることができる。
【０１８４】
サーバは、統計処理の結果をもとに、基地局１００の分類わけと仮想マシン６００を構築するにあたって、予め判断基準を設けて処理することができる。例えば、下記の判断基準で処理することができる。
・無線端末４００がハンドオーバをしても、仮想マシン６００の再構成をできるだけ行わずに済むエレメントの選出と仮想マシンの初期構成（エレメント割り当て）。
・無線端末４００の移動速度が速いほど、早い処理能力をもつ仮想マシンを構成する（又は、その逆に、遅い処理能力をもつ仮想マシンを構成する）。
・他の無線端末の移動やアプリケーションの処理に影響を受けにくい仮想マシンを構成する（エレメント割り当て）。
・あるエリア内の基地局１００のサーバを用いて、サーバの負荷のばらつき及びリソースの使用率のばらつきが小さくなるような仮想マシンを構成する（エレメント割り当て）。
【０１８５】
また、仮想マシン６００の構成を、無線端末４００の処理するアプリケーションプログラムに応じて変更してもよい。例えば、処理遅延が大きくても許容できるアプリケーションプログラムが実行された場合、サーバは仮想マシン６００の構成を変更する動作を行い、リソース使用率の高いサーバのエレメントをリソース使用率の低いサーバのエレメントに替えてもよい。処理遅延が大きくても許容できるアプリケーションプログラムは、予め定められた識別情報等により識別できる。より具体的には、アプリケーションプログラムが処理遅延を比較的許容できるアプリケーションプログラムの場合（他のアプリケーションプログラムよりも許容可能な場合、又は、所定の若しくは予め定められた処理遅延を許容できる場合）、基地局間の通信の応答時間が比較的大きい該基地局１００に少なくとも仮想マシンの機能の一部を割り当てる。例えば、応答時間が所定時間又は予め定められた時間以上の基地局に上記機能の一部を割り当てる。また、アプリケーションプログラムが処理遅延を比較的許容できないアプリケーションプログラムの場合（他のアプリケーションプログラムよりも許容しにくい場合、又は、上記所定の若しくは予め定められた処理遅延を許容できない場合）、基地局間の通信の応答時間が比較的小さい該基地局１００に少なくとも仮想マシンの機能の一部を割り当てる。例えば、応答時間が所定時間又は予め定められた時間未満の基地局に上記機能の一部を割り当てる。
【０１８６】
また、例えば、アプリケーションプログラムによる処理のデータ量が増加したり、処理を終える時間を短縮させたりする必要が生じた際に、サーバは仮想マシン６００にエレメントを追加し及び同期させて、仮想マシン６００の性能を向上させてもよい。
【０１８７】
以上、本発明の実施形態を説明したが、本発明はこれらの実施形態に限定されるものではない。これらの実施形態は例示にすぎないということ、及び、本発明のスコープ及び精神から逸脱することなく様々な変形が可能であるということは、当業者に理解されるであろう。
【０１８８】
また、本明細書において説明した基地局の構成要素（例えば、第１通信処理部、第２通信処理部及び／又はサーバ機能部）を備える装置（例えば、基地局を構成する複数の装置（又はユニット）のうちの１つ以上の装置（又はユニット）、又は上記複数の装置（又はユニット）のうちの１つのためのモジュール）が提供されてもよい。本明細書において説明した無線端末の構成要素（例えば、通信処理部及び／又はアプリケーションプログラム処理部）を備える装置（例えば、無線端末のためのモジュール）が提供されてもよい。本明細書において説明した上位ノードの構成要素（例えば、通信処理部及び／又はサーバ機能部）を備える装置（例えば、上位ノードのためのモジュール）が提供されてもよい。本明細書において説明したデータベース装置の構成要素（例えば、通信処理部及び／又はデータベース管理部）を備える装置（例えば、データベース装置のためのモジュール）が提供されてもよい。また、上記構成要素の処理を含む方法が提供されてもよく、上記構成要素の処理をプロセッサに実行させるためのプログラム（又はプログラム製品）が提供されてもよい。また、当該プログラムを記録したコンピュータに読み取り可能な非一時的記録媒体（Non-transitory computer readable medium）が提供されてもよい。当然ながら、このような装置、方法、プログラム、及びコンピュータに読み取り可能な非一時的記録媒体も本発明に含まれる。
【０１８９】
上記実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
【０１９０】
（付記１）
無線端末装置に対するアプリケーションプログラムを実行する仮想マシンの複数の機能の一部がそれぞれ割り当てられ、割り当てられた機能を実行する複数の基地局
を備え、
前記仮想マシンの複数の機能が、前記複数の基地局で分散して実行される基地局システム。
【０１９１】
（付記２）
前記無線端末装置のハンドオーバの履歴を含む、前記複数の基地局間のハンドオーバの履歴情報が記憶されたデータベース
を更に備え、
前記仮想マシンの複数の機能の少なくとも一部は、前記データベースに記憶されたハンドオーバの履歴情報に基づき、前記無線端末装置が接続している第１の基地局と、該第１の基地局からのハンドオーバの実績がある第２の基地局とに少なくとも割り当てられる付記１に記載の基地局システム。
【０１９２】
（付記３）
前記複数の基地局への前記仮想マシンの機能の割り当てを変更する付記１又は２に記載の基地局システム。
【０１９３】
（付記４）
前記無線端末装置がハンドオーバすると、前記複数の基地局への前記仮想マシンの機能の割り当てを変更する付記１乃至３のいずれかに記載の基地局システム。
【０１９４】
（付記５）
前記複数の基地局間の通信の応答時間が記憶されたデータベース
を更に備え、
アプリケーションプログラムが処理遅延を比較的許容できるアプリケーションプログラムの場合、前記基地局間の通信の応答時間が比較的大きい該基地局に少なくとも前記仮想マシンの機能の一部を割り当て、
アプリケーションプログラムが処理遅延を比較的許容できないアプリケーションプログラムの場合、前記基地局間の通信の応答時間が比較的小さい該基地局に少なくとも前記仮想マシンの機能の一部を割り当てる付記１乃至４のいずれかに記載の基地局システム。
【０１９５】
（付記６）
前記仮想マシンの複数の機能のうち入力機能及び／又は出力機能は、前記複数の基地局のうち、前記無線端末装置が接続している第１の基地局と、該第１の基地局からのハンドオーバの実績がある第２の基地局とに少なくとも割り当てられる付記２に記載の基地局システム。
【０１９６】
（付記７）
前記無線端末装置のハンドオーバの履歴を含む、前記複数の基地局間のハンドオーバの履歴情報が記憶されたデータベース
を更に備え、
前記仮想マシンの複数の機能のうち演算機能は、前記複数の基地局のうち、前記無線端末装置が接続している第１の基地局からのハンドオーバの実績がない第３の基地局又は基地局以外の装置に少なくとも割り当てられる付記１乃至６のいずれかに記載の基地局システム。
【０１９７】
（付記８）
無線アクセスネットワークに配置されたノード装置
を更に備え、
前記仮想マシンの複数の機能が、前記複数の基地局及び前記ノード装置で分散して実行される付記１乃至７のいずれかに記載の基地局システム。
【０１９８】
（付記９）
無線端末装置に対するアプリケーションプログラムを実行する仮想マシンの複数の機能を、複数の基地局に分散して割り当てるサーバ機能部
を備え、
少なくとも前記複数の基地局間のハンドオーバの履歴情報に基づいて、前記仮想マシンの複数の機能を、前記複数の基地局に割り当てるノード装置。
【０１９９】
（付記１０）
無線端末装置に対するアプリケーションプログラムを実行する仮想マシンの複数の機能を複数の基地局で分散して割り当て、
複数の基地局が割り当てられた機能を実行する方法。
【０２００】
（付記１１）
少なくとも前記複数の基地局間のハンドオーバの履歴情報に基づいて、前記仮想マシンの複数の機能を、前記複数の基地局に割り当てる付記１０に記載の方法。
【０２０１】
（付記１２）
無線端末装置に対するアプリケーションプログラムを実行する仮想マシンの複数の機能を複数の基地局に分散して割り当てるステップと、
複数の基地局が割り当てられた機能を実行するステップ
をコンピュータに実行させるプログラム。
【０２０２】
（付記１３）
少なくとも前記複数の基地局間のハンドオーバの履歴情報に基づいて、前記仮想マシンの複数の機能を、前記複数の基地局に割り当てる付記１２に記載のプログラム。
【０２０３】
（付記１４）
無線端末装置に対するアプリケーションプログラムを実行する仮想マシンの複数の機能を複数の基地局に分散して割り当てるステップと、
複数の基地局が割り当てられた機能を実行するステップ
をコンピュータに実行させるプログラムを記憶したコンピュータ読み取り可能な記録媒体。
【０２０４】
（付記１５）
少なくとも前記複数の基地局間のハンドオーバの履歴情報に基づいて、前記仮想マシンの複数の機能を、前記複数の基地局に割り当てるステップ
をコンピュータに実行させるプログラムを記憶した、付記１４に記載のコンピュータ読み取り可能な記録媒体。
【０２０５】
（付記１６）
無線端末装置に対するアプリケーションプログラムを実行する仮想マシンの複数の機能の一部がそれぞれ割り当てられ、割り当てられた機能を実行する複数のネットワーク装置
を備え、
前記仮想マシンの複数の機能が、前記複数のネットワーク装置で分散して実行される通信システム。
【０２０６】
（付記１７）
前記ネットワーク装置は、基地局、又は、基地局に関連づけられたサーバである付記１６に記載の通信システム。
【０２０７】
（付記１８）
前記ネットワーク装置は、基地局の上位ノード装置である付記１６又は１７に記載の通信システム。
【産業上の利用可能性】
【０２０８】
本発明は、無線端末が、他の装置のリソースを用いてアプリケーションプログラムを処理することができる。
【符号の説明】
【０２０９】
１、２、３                      システム
１００、９００、１１００        基地局
１１５、１２５、１３５、１７５  サーバ
１４１            第１通信処理部
１４３            第２通信処理部
１４５            サーバ機能部
２００            データベース装置
２３１            通信処理部
２３３            データベース管理部
３００、１３００  上位ノード（ノード装置）
３３１            通信処理部
３３３、１３３３  サーバ機能部
４００、１４００  無線端末
４４１            通信処理部
４４３            アプリケーションプログラム処理部
５００、１５００  ルータ
６００            仮想マシン
【図１】
2019153955.tif 000003
【図２】
2019153955.tif 000004
【図３】
2019153955.tif 000005
【図４】
2019153955.tif 000006
【図５】
2019153955.tif 000007
【図６】
2019153955.tif 000008
【図７】
2019153955.tif 000009
【図８】
2019153955.tif 000010
【図９】
2019153955.tif 000011
【図１０】
2019153955.tif 000012
【図１１】
2019153955.tif 000013
【図１２】
2019153955.tif 000014
【図１３】
2019153955.tif 000015
【図１４】
2019153955.tif 000016
【図１５】
2019153955.tif 000017
【図１６】
2019153955.tif 000018
【図１７】
2019153955.tif 000019
【図１８】
2019153955.tif 000020
【図１９】
2019153955.tif 000021
【図２０】
2019153955.tif 000022
【図２１】
2019153955.tif 000023