(57)【要約】【課題】  動的に変化するネットワーク環境において、通信が切断されることが予測される場合に対応した、ネットワークの変化に応じたサービスの継続提供を行うことを可能にする技術を提供する。【解決手段】  無線ネットワークを介して通信可能なサーバおよび通信端末装置を含むプログラム移動制御システムであって、前記サーバは、サービスを提供するためのプログラムと、該プログラムを実行するサーバ側実行手段とを備え、前記通信端末装置は、前記プログラムを実行する端末側実行手段と、前記プログラムを実行する際に、前記サーバ側実行手段と前記端末側実行手段のいずれに行わせるかを前記無線ネットワークとの通信状態に応じて判断する移動判断部と、を備える。【選択図】      図１
2010041182.tif 000002
【特許請求の範囲】
【請求項１】
無線ネットワークを介して通信可能なサーバおよび通信端末装置を含むプログラム移動制御システムであって、
前記サーバは、サービスを提供するためのプログラムと、該プログラムを実行するサーバ側実行手段とを備え、
前記通信端末装置は、
前記プログラムを実行する端末側実行手段と、
前記プログラムを実行する際に、前記サーバ側実行手段と前記端末側実行手段のいずれに行わせるかを前記無線ネットワークとの通信状態に応じて判断する移動判断部と、を備えることを特徴とするプログラム移動制御システム。
【請求項２】
請求項１記載のプログラム移動制御システムにおいて、
前記通信端末装置は、
少なくともサービス名、サービスを提供するプログラム量、プログラムが入出力するデータ量、実行中の場合の使用メモリ量を格納するサービス特性データベースと、
少なくとも通信手段名、利用可能な帯域幅、受信電波の電界強度、利用可能半径を含む情報を格納するネットワーク特性データベースと、
前記無線ネットワークとの接続を行うとともに、受信電波の電界強度を検出して前記ネットワーク特性データベースの格納内容を更新する通信手段と、を備え、
前記移動判断部は、前記サービス特性データベースおよびネットワーク特性データベースを参照して前記プログラムの実行を、前記サーバ側実行手段と前記端末側実行手段のいずれに行わせるかを判断することを特徴とするプログラム移動制御システム。
【請求項３】
請求項２記載のプログラム移動制御システムにおいて、
前記通信手段は、電界強度の変化により前記ネットワーク特性データベースの格納内容を動的に更新することを特徴とするプログラム移動制御システム。
【請求項４】
請求項２または請求項３記載のプログラム移動制御システムにおいて、
前記サービス特性データベースは、実行中のプログラムの使用するメモリ量を含むことを特徴とするプログラム移動制御システム。
【請求項５】
請求項２ないし請求項４のいずれかに記載のプログラム移動制御システムにおいて、
前記移動判断部は、前記通信手段の利用半径に応じて、判断する際の閾値を設定することを特徴とするプログラム移動制御システム。
【請求項６】
無線ネットワークを介して通信可能なサーバおよび通信端末装置と、を含むシステムで行われるプログラム移動制御方法であって、
前記サーバは、サービスを提供するためのプログラムと、該プログラムを実行するサーバ側実行手段とを備えるものとし、
前記通信端末装置は、前記プログラムを実行する端末側実行手段を備えるものとし、
前記プログラムを実行する際に、前記サーバ側実行手段と前記端末側実行手段のいずれに行わせるかを前記無線ネットワークとの通信状態に応じて判断することを特徴とするプログラム移動制御方法。
【請求項７】
請求項６記載のプログラム移動制御方法において、
前記通信端末装置に、
少なくともサービス名、サービスを提供するプログラム量、プログラムが入出力するデータ量、実行中の場合の使用メモリ量を格納するサービス特性データベースと、
少なくとも通信手段名、利用可能な帯域幅、受信電波の電界強度、利用可能半径を含む情報を格納するネットワーク特性データベースと、
前記無線ネットワークとの接続を行うとともに、受信電波の電界強度を検出して前記ネットワーク特性データベースの格納内容を更新する通信手段と、を設け、
前記サービス特性データベースおよびネットワーク特性データベースを参照して前記プログラムの実行を、前記サーバ側実行手段と前記端末側実行手段のいずれに行わせるかを判断することを特徴とするプログラム移動制御方法。
【請求項８】
請求項７記載のプログラム移動制御方法において、
前記通信手段は、電界強度の変化により前記ネットワーク特性データベースの格納内容を動的に更新することを特徴とするプログラム移動制御方法。
【請求項９】
請求項７または請求項８記載のプログラム移動制御方法において、
前記サービス特性データベースは、実行中のプログラムの使用するメモリ量を含むことを特徴とするプログラム移動制御方法。
【請求項１０】
請求項６ないし請求項９のいずれかに記載のプログラム移動制御方法において、
前記移動判断部は、前記通信手段の利用半径に応じて、判断する際の閾値を設定することを特徴とするプログラム移動制御方法。
【請求項１１】
サービスを提供するためのプログラムと、該プログラムを実行するサーバ側実行手段とを備える、無線ネットワークを介して通信可能なサーバとともにプログラム移動制御システムを構成する通信端末装置であって、
前記プログラムを実行する端末側実行手段と、
前記プログラムを実行する際に、前記サーバ側実行手段と前記端末側実行手段のいずれに行わせるかを前記無線ネットワークとの通信状態に応じて判断する移動判断部と、を備えることを特徴とする通信端末装置。
【請求項１２】
請求項１１記載の通信端末装置において、
少なくともサービス名、サービスを提供するプログラム量、プログラムが入出力するデータ量、実行中の場合の使用メモリ量を格納するサービス特性データベースと、
少なくとも通信手段名、利用可能な帯域幅、受信電波の電界強度、利用可能半径を含む情報を格納するネットワーク特性データベースと、
前記無線ネットワークとの接続を行うとともに、受信電波の電界強度を検出して前記ネットワーク特性データベースの格納内容を更新する通信手段と、を備え、
前記移動判断部は、前記サービス特性データベースおよびネットワーク特性データベースを参照して前記プログラムの実行を、前記サーバ側実行手段と前記端末側実行手段のいずれに行わせるかを判断することを特徴とする通信端末装置。
【請求項１３】
請求項１２記載の通信端末装置において、
前記通信手段は、電界強度の変化により前記ネットワーク特性データベースの格納内容を動的に更新することを特徴とする通信端末装置。
【請求項１４】
請求項１２または請求項１３記載の通信端末装置において、
前記サービス特性データベースは、実行中のプログラムの使用するメモリ量を含むことを特徴とする通信端末装置。
【請求項１５】
請求項１２ないし請求項１４のいずれかに記載の通信端末装置において、
前記移動判断部は、前記通信手段の利用半径に応じて、判断する際の閾値を設定することを特徴とする通信端末装置。
【請求項１６】
無線ネットワークを介して通信可能な通信端末装置とともにプログラム移動制御システムを構成するサーバであって、
実行中のプログラムを前記通信端末装置との間で任意に移動させることができる実行部を備えることを特徴とするたサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムを処理するプログラム処理装置がネットワークを介して接続されたシステムに関し、プログラム処理を実行するプログラム処理装置にプログラムを移動させるプログラム移動制御システムおよびプログラム移動制御方法に関する。特には、ネットワーク特性が動的に変化する環境におけるプログラム移動制御システムおよびプログラム移動制御方法に関する。
【背景技術】
【０００２】
Ｗｅｂサービスのような、安定してネットワークに接続されることを前提として、ネットワーク上にあるサーバから端末に対してサービスを提供するシステムの形態がある。このようなシステムでは、ネットワークが十分に高速で安価に使用できるならば、端末側に要求されるリソースが少ないといった利点がある。
【０００３】
なお、ここでいうサービスとは、プログラムを実行することにより得られる機能をいう。クライアントサーバモデルのようにサーバでプログラムを実行して結果を端末で表示するだけであっても、端末上でプログラムを実行しても、利用者にとって同等の結果が得られるのであれば、同等のサービスであるといえる。
【０００４】
近年、携帯電話網、無線ＬＡＮ（Local area network）をはじめとする無線ネットワークの普及に伴い、移動中においても移動端末装置を用いてネットワークに接続して、サーバによるサービスの提供を受けることが多くなってきている。
【０００５】
無線ネットワークを介してサービスの提供を受ける場合には、移動端末装置と、ネットワークとの通信環境は動的に変化するため、場合によっては通信が切断されるとサービスの提供を受けることができなくなる。このため、サービスを行うためのプログラムの実行をサーバと移動端末装置で分散して行うことが考えられる。
【０００６】
サービスを行うためのプログラムの実行を、ネットワークで接続された複数の装置で分散して行う際の、実行するプログラムの割り当てについて、特許文献１（特開２００６−３３８２６４号公報）および特許文献２（特開２００６−２９３７４３号公報）に記載される技術がある。
【０００７】
特許文献１では、複数の情報処理装置がネットワークで接続された分散処理システムにおいて、複数の情報処理装置へタスクを割り当てる際に、複数の情報処理装置の、演算能力と、通信オーバーヘッド時間およびデータ転送速度のそれぞれを用いて、タスクの割り当てから処理結果を取得するまでの時間が短くなるように考慮してタスクの割り当てを行う技術が提案されている。
【０００８】
特許文献２（特開２００６−２９３７４３号公報）では、複数の計算機、プログラムと複数の計算器間の伝送処理を行うネットワークからなるシステムにおいて、プログラム機能を実現するための処理時間を短縮するために、サーバ・クライアントシステムにおいて、プログラムをサーバで実行するか、クライアントへ転送して実行するかにより、システム全体での処理時間効率化を行う方法が提案されている。
【０００９】
また、特許文献３（特開２００７−２８２１４２号公報）では、通信内容に応じたルーティングの切替え方法として、通信アプリケーションや接続先の情報などを受けとり、アプリケーション特性データベースと、ネットワーク特性データベースの情報から、実行時点における最適な通信手段を選択するという方法が提案されている。
【特許文献１】特開２００６−３３８２６４号公報
【特許文献２】特開２００６−２９３７４３号公報
【特許文献３】特開２００７−２８２１４２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
動的に変化する通信環境において、ネットワーク上にあるサーバからサービスを提供するシステムを利用しようとするならば、通信が途絶した場合の対策を含め、通信環境が変化した時の対策が必要となる。
【００１１】
特許文献１や特許文献２に開示された方法を用いると、プログラム起動時におけるプログラムの転送時間と実行時間を考慮し、最も所要時間が短くなるようにタスク割り当てをすることが可能になる。しかし、これはプログラム起動時に静的に算出されたものであり、実行中に通信環境が変化した場合には起動時の想定と異なり、結果としてより時間がかかるようになってしまう場合がある。
【００１２】
また、特許文献２に開示された方法では、プログラムがデータベースから入出力するデータ量も指標として利用されており、入出力するデータの量や性質によっては、実行がサーバ側のみに限定されることもある。しかし、実行がサーバ側のみに限定されてしまうと、通信が切断された場合に処理を継続することができなくなってしまう。
【００１３】
特許文献３に開示された方法を用いると、複数の通信手段を通信内容に応じて選択して使用することができるが、常に端末上でプログラムを動かすことを前提としており、ネットワークからサービスを受けることを想定していない。また、通信開始時における静的な通信手段の選択であり、通信開始後の通信環境の変化に合わせて切り替えることはできない。
【００１４】
このため従来技術の組み合わせでは、動的に変化する通信環境において、通信環境の変化に応じたサービスの継続提供を行うことができない。
【００１５】
本発明の目的は、動的に変化するネットワーク環境において、通信が切断されることが予測される場合に対応した、ネットワークの変化に応じたサービスの継続提供を行うことを可能にする技術を提供することにある。
【課題を解決するための手段】
【００１６】
本発明のプログラム移動制御システムは、無線ネットワークを介して通信可能なサーバおよび通信端末装置を含むプログラム移動制御システムであって、
前記サーバは、サービスを提供するためのプログラムと、該プログラムを実行するサーバ側実行手段とを備え、
前記通信端末装置は、
前記プログラムを実行する端末側実行手段と、
前記プログラムを実行する際に、前記サーバ側実行手段と前記端末側実行手段のいずれに行わせるかを前記無線ネットワークとの通信状態に応じて判断する移動判断部と、を備えることを特徴とする。
【００１７】
本発明のプログラム移動制御方法は、無線ネットワークを介して通信可能なサーバおよび通信端末装置と、を含むシステムで行われるプログラム移動制御方法であって、
前記サーバは、サービスを提供するためのプログラムと、該プログラムを実行するサーバ側実行手段とを備えるものとし、
前記通信端末装置は、前記プログラムを実行する端末側実行手段を備えるものとし、
前記プログラムを実行する際に、前記サーバ側実行手段と前記端末側実行手段のいずれに行わせるかを前記無線ネットワークとの通信状態に応じて判断することを特徴とする。
【００１８】
本発明の通信端末装置は、サービスを提供するためのプログラムと、該プログラムを実行するサーバ側実行手段とを備える、無線ネットワークを介して通信可能なサーバとともにプログラム移動制御システムを構成する通信端末装置であって、
前記プログラムを実行する端末側実行手段と、
前記プログラムを実行する際に、前記サーバ側実行手段と前記端末側実行手段のいずれに行わせるかを前記無線ネットワークとの通信状態に応じて判断する移動判断部と、を備えることを特徴とする。
【００１９】
本発明のサーバは、無線ネットワークを介して通信可能な通信端末装置とともにプログラム移動制御システムを構成するサーバであって、
実行中のプログラムを前記通信端末装置との間で任意に移動させることができる実行部を備えることを特徴とする。
【発明の効果】
【００２０】
本発明によれば、ネットワーク特性の変化によってサービスを提供するプログラムを、サーバ側と端末側との間で移動させることができる。これにより、実行開始時における推定条件とネットワーク特性が異なった場合に、より高速ないし安価に実行できる側へとプログラムを移動させることを可能とする。
また通信が切断されることが予測される場合、サーバ側で動作しているプログラムをあらかじめ端末へ移動させることで、通信切断後もサービス継続することを可能とする。
【発明を実施するための最良の形態】
【００２１】
次に、本発明による実施形態について図面を参照して説明する。
【００２２】
図１は本発明によるプログラム移動制御システムの一実施形態の構成を示すブロック図である。本実施形態は、図示されるように、通信端末装置１と、サーバ装置２と、ネットワーク３から構成されている。
【００２３】
通信端末装置１は、通信手段１１と、ネットワーク特性データベース１６と、サービス特性データベース１５と、移動判断部１２と、データキャッシュ１４と、実行部１７と、を備える。
【００２４】
サーバ装置２は、通信端末装置１にサービスを提供するために使用されるプログラム２１を蓄積し、プログラム２１を実行する実行部２３を備え、プログラム２１が入出力するデータが格納されたデータベース２２を蓄える。
【００２５】
ネットワーク３は、通信端末装置１とサーバ装置２が接続するネットワークで、ネットワーク３を介して通信端末装置１とサーバ装置２との間でのプログラム転送やデータ転送が行われる。
【００２６】
ネットワーク３として、具体的には、インターネット、イントラネット、無線ＬＡＮスポット、家庭内ＬＡＮ、店舗内ＬＡＮなど、さまざまなネットワークが想定される。
【００２７】
以下、通信装置１とサーバ装置２を構成する各部について、詳細に説明する。
【００２８】
通信手段１１
通信手段１１は、通信端末装置１がネットワーク３に接続するために使用する。この際、接続を行うための手段としては、例えば、有線ＬＡＮ、無線ＬＡＮ、公衆電話網、携帯電話網、ＰＨＳ（Personal Handy-phone System）、ＩｒＤＡ（Infrared Data Association）、Bluetooth、シリアル通信等の通信手段が想定される。通信に使用するプロトコルは主としてＴＣＰ／ＩＰである。
【００２９】
また、移動端末１が無線通信を行う際の受信電波の電界強度を定期的に測定し、ネットワーク特性データベース１６へ送信する。
【００３０】
移動判断部１２
移動判断部１２は、要求されたサービスを通信端末装置１とサーバ装置２のいずれでプログラムを実行してサービスを提供すべきか、サービス特性データベース１５とネットワーク特性データベース１６を参照して判断する。通信手段１１によりネットワーク特性データベース１６が更新されると、再度、プログラムを実行する装置を判断し、実行中のプログラムを移動させるべきかどうかを判断する。
【００３１】
通信端末装置１でプログラムを実行すると判断した場合は、プログラム２１とデータベース２２に格納されているプログラムを実行する際に必要となる入出力データを、通信端末装置１へコピーして送信させる。入出力データはデータキャッシュ１４に格納され、プログラム２２はプログラム１３として実行部１７で実行される。この実行の際にデータキャッシュ１４に格納された入出力データが用いられる。この移動に際し、プログラム２１が実行中であった場合は、レジスタや使用中のメモリの状態などのコンテキスト情報もコピーされて入出力データとしてプログラムとともに送信される。
【００３２】
プログラム１３
プログラム１３は、要求されたサービスを通信端末装置１で実行すべきであると判断したときに実行部１７で実行されるプログラムである。元々はサーバ装置２の実行部２１に蓄積されているプログラム２１であって、移動判断部１２が要求されたサービスを通信端末装置１で実行すべきであると判断したときにサーバ装置２から転送されて実行される。
【００３３】
データキャッシュ１４
データキャッシュ１４は、プログラム１３を実行する際に必要となる入出力データを蓄積する。入出力データは、サーバ２のデータベース２２に蓄積されているデータをコピーして移出したものである。通信端末装置１上にプログラム１３の入出力データのコピーを持つことで、サーバ装置２上のオリジナルを蓄積するデータベース２２へアクセスしなくてもプログラム１３を実行することができる。プログラム１３の実行終了後、または、サービスの提供をサーバ装置２へ移動させる時に、データキャッシュ１４の差分をデータベース２２へ移す、書き戻しを行うことで、サーバ装置２上のデータベース２２と同期をとる。
【００３４】
サービス特性データベース１５
サービス特性データベース１５は、サービスの特性を格納するデータベースである。このデータベースには少なくともサービス名、サービスを提供するプログラム量、プログラムが入出力するデータ量、実行中の場合の使用メモリ量、を含む情報が保存されている。
【００３５】
図２は、サービス特性データベース１５が保持する情報の一例を示す図である。
【００３６】
サービス特性データベース１５には、各サービスの特性を表す情報が格納される。図示される例では、サービス名、プログラム量、入出力データ量、平均実行時間、使用中メモリ量が格納されている。
【００３７】
サービスＡは入出力データ量が０ＫＢであり、データベース２２への入出力を行わないプログラム単体で動作可能であることを示している。使用中メモリ量は１２８ＫＢであるため、プログラムは実行中であり、このサービスを移動させるためには少なくとも１００＋１２８＝２２８ＫＢの転送が必要となる。一方で、サービスＤは使用中メモリ量が０ＫＢであるためにまだプログラムが実行されていないが、プログラムは５０ＫＢで入出力データは１０２４ＫＢであり、通信端末装置１でこのサービスを実行するためには、少なくとも５０＋１０２４＝１０７４ＫＢの転送をしなければならないことが分かる。
【００３８】
ネットワーク特性データベース１６
ネットワーク特性データベース１６は、ネットワークの特性を格納するデータベースである。このデータベースには少なくとも通信手段名、利用可能な帯域幅、電界強度、利用可能半径を含む情報が格納されている。通信手段選択の参考情報として、セキュリティ情報、通信料金などを持つ場合もある。
【００３９】
図３は、ネットワーク特性データベース１６が保持する情報の一例を示す図である。ネットワーク特性データベース１６には通信端末装置１が接続するネットワーク３の通信特性に関する情報が保存されている。図示の例では、ネットワーク３の種別、最大帯域幅、利用可能帯域幅、電界強度、および利用可能半径が設定されている。
【００４０】
ネットワーク特性データベース１６に保存される電界強度は、移動端末１が無線通信を行う際の受信電波の電界強度であり、通信手段１１により定期的に測定されて通知され、該通知を受けてネットワーク特性データベース１６は格納内容を更新する。また、格納内容の更新を行った場合にはその旨を移動判断部１１へ通知する。
【００４１】
図３に示される例では、Ethernetは利用可能圏外であるため、利用可能帯域幅と電界強度が０となっている。Ethernetは有線通信であり、本来電界強度は意味を持たず、また利用可能半径もケーブルの到達範囲なのだが、無線通信手段と同列に扱うことを可能にするため、便宜的に値を持たせている。
【００４２】
複数の利用可能な通信手段がある場合、ネットワーク特性データベース１６に入っている課金情報や通信速度などから利用しようとするサービスで最適な通信手段を選択する。ここでは、図３の利用可能な通信手段の中で、無線ＬＡＮが最適な通信手段であったとする。
【００４３】
図４に、通信環境が変化した時のネットワーク特性データベース１６の変化の例を示す。この例では電界強度が変化したので、電界強度の項目が５から２へと変化している。
【００４４】
実行部１７
実行部１７は、プログラム実行部であり、動作中のプログラムを移動する機能を備える。これには、ＶＭ（Virtual Machine）を用いる場合もある。
【００４５】
プログラム２１
プログラム２１は通信端末装置１へ転送されるプログラム１３のオリジナルである。また、サーバ装置２の実行部２３で実行されることもある。
【００４６】
データベース２２
データベース２２は、プログラム２１を実行する際に必要となる入出力データを蓄積する。
【００４７】
実行部２３
実行部２３は、プログラム実行部であり、動作中のプログラムを移動する機能を備える。これには、ＶＭ（Virtual Machine）を用いる場合もある。
【００４８】
図５は、本実施形態におけるネットワーク特性変化時のプログラム移動判断の動作を示すフローチャートであり、以下に図５を参照して本実施形態の具体的な動作について説明する。
【００４９】
通信端末装置１の利用者が、通信端末装置１の入力部（不図示）にてサービス名および通信手段を含むサービス利用要求を行うと、移動判断部１２は、サービス利用要求に含まれるサービス名によりサービス特性データベース１５を検索し、サービス名に対応してサービス特性データベース１５に格納されているサービス特性情報を得る（ステップＳ１１）。
【００５０】
次に、ネットワーク特性データベース１６を検索してサービス利用要求に含まれる通信手段の情報を得る（ステップＳ１２）。
【００５１】
次に、要求されたサービスをサーバ装置２で実行するか通信端末装置１で実行するかを判断し（ステップＳ１３）、判断の結果、移動が発生するかを確認する（ステップＳ１４）。
【００５２】
ステップＳ１４での確認の結果、通信端末装置１で実行するとされ、移動が発生する場合には、プログラム２１とデータベース２２内のプログラムを実行するに必要となる入出力データをプログラム１３およびデータキャッシュへ転送する（ステップＳ１６）。
【００５３】
なお、図１では、上記の転送を行わせる動作として、移動判断部１２とプログラム２１、プログラム２１とプログラム１３、およびデータベース２２とデータキャッシュ１４のそれぞれが直接接続されている状態が示されているが、これは理解を容易とするためであり、実際には、すべての信号およびデータはネットワーク３を介して行われる。
【００５４】
ステップＳ１３における判断の判断基準としては、電界強度と利用半径を用いる。利用半径により電界強度に重み付けを行い、通信手段ごとに閾値の設定を行う。端末が一定速度で移動していると仮定するならば、利用半径が小さい通信手段の場合、わずかな電界強度の低下でも通信途絶の可能性が大きいと考えられる。一方、利用半径の大きい通信手段の場合は、電界強度がさらに低下しても、まだ通信は継続される可能性が高いと考えられる。
【００５５】
続いて、ネットワーク特性の変化があったかを確認する（ステップＳ１５）。図４で示されたような通信特性の変化があった場合、ネットワーク特性データベース１６は通信手段１１から通知を受け、その格納内容を更新する。
【００５６】
移動判断部１２は、ステップＳ１２で更新された通信特性を受け取る。続いて、ステップＳ１３でサーバ実行かローカル実行かの再判断を行う。この例では、電界強度の閾値を３とする。電界強度が閾値を下回ったため、通信途絶の可能性が高いと判断する。これにより、サーバ装置２でプログラムが実行されていた場合は、サーバ装置２から通信端末装置１へとサービス移動すべきであると判断する。通信端末装置１でプログラムを実行していた場合には、そのまま実行すればよい。
【００５７】
図４で示されたような通信特性の変化と逆の変化が起きる場合も考えられる。この場合、サーバ装置２でプログラムを実行していた場合は通信環境の改善であるので、そのままサーバ上で実行を継続すればよく、実行終了後に、データキャッシュ１４の内容をデータベース２２へ移す、書き戻しを行う。
【００５８】
なお、プログラムの実行を通信端末装置１からサーバ装置２に移動させることで、より性能面での改善が期待される場合がある。その場合は、サーバ装置２から通信端末装置１へプログラムを移動させる場合とは逆に、少なくともデータ量のうち、変更した差分と、使用中のメモリ量を転送しなければならない。これを、使用中の通信手段からネットワーク特性データベース１６を参照し、転送にかかる所要時間を計算し、サービス特性データベース１５から平均実行時間を参照して、サーバ装置２で実行したほうがよいか、それともそのままで実行を継続したほうがよいかを判断する。
【００５９】
具体的には、サーバ装置２での平均実行時間より既に実行済みである時間を減算し、残実行時間に転送時間を加算したものと、通信端末装置１での平均実行時間より既に実行済みである時間を引いた残実行時間を比較する。一般的にサーバ装置２の方が通信端末装置１より実行性能が優れている場合が多いので、性能差が大きくかつ残実行時間が多く残っている場合は、転送して実行した方が有利であるという判断がなされる場合が多くなる。
【００６０】
次に、本実施の形態の効果について説明する。
【００６１】
本実施形態によれば、動的に変化する通信環境において、ネットワーク上にあるサーバからサービスを提供するシステムを利用する場合における、通信が途絶することが予測される場合に事前にプログラムを端末へ移動させてサービスを継続させることができる。
【産業上の利用可能性】
【００６２】
本発明によれば、ネットワークに断続的に接続される通信端末において、利用者がプログラムがネットワークで実行されているのか端末上で実行されているのかを気にすることなく、継続的なサービスを利用することが可能になる。
【図面の簡単な説明】
【００６３】
【図１】本発明の第１の発明による通信システムの構成を示すブロック図である。
【図２】サービス特性データベース１５に格納されるデータの一例を示す図である。
【図３】ネットワーク特性データベース１６に格納されるデータの一例を示す図である。
【図４】ネットワーク特性データベース１６のデータのうち、電界強度が変化した場合の例を示す図である。
【図５】移動判断部１２における処理の流れを示す図である。
【符号の説明】
【００６４】
１    通信端末装置
２    サーバ装置
３    ネットワーク
１１    通信手段
１２    移動判断部
１３    プログラム
１４    データキャッシュ
１５    サービス特性データベース
１６    ネットワーク特性データベース
１７    実行部
２１    プログラム
２２    データ
２３    実行部
【図１】
2010041182.tif 000003
【図２】
2010041182.tif 000004
【図３】
2010041182.tif 000005
【図４】
2010041182.tif 000006
【図５】
2010041182.tif 000007