JP2004102741A - 制御プログラム配信方法及び装置 - Google Patents
制御プログラム配信方法及び装置 Download PDFInfo
- Publication number
- JP2004102741A JP2004102741A JP2002264895A JP2002264895A JP2004102741A JP 2004102741 A JP2004102741 A JP 2004102741A JP 2002264895 A JP2002264895 A JP 2002264895A JP 2002264895 A JP2002264895 A JP 2002264895A JP 2004102741 A JP2004102741 A JP 2004102741A
- Authority
- JP
- Japan
- Prior art keywords
- service
- control program
- control
- information
- program distribution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
【課題】サービスを提供する装置とサービスを利用する装置とがネットワークを介して接続されたサービスシステムにおいて、サービス利用中にサービス利用装置の位置や通信パス等のサービス利用環境が頻繁に変更される場合でも、各環境に応じて常に適切なサービスレベルを保証したサービスを継続的に利用可能であることを特徴とする、制御プログラム配信方法を提供する。
【解決手段】サービス利用中に、通信ヘッダ情報等からサービス利用者側の利用環境情報を随時取得する。サービス提供装置上にある制御プログラム選択部1040では、概情報の変化に応じてサービス品質を制御する適切な制御プログラム1060を選択する。概制御プログラムを、サービス利用装置上にある制御プログラム受信部1090によってダウンロードした後、制御プログラム実行部1080にて実行する。
【選択図】 図1
【解決手段】サービス利用中に、通信ヘッダ情報等からサービス利用者側の利用環境情報を随時取得する。サービス提供装置上にある制御プログラム選択部1040では、概情報の変化に応じてサービス品質を制御する適切な制御プログラム1060を選択する。概制御プログラムを、サービス利用装置上にある制御プログラム受信部1090によってダウンロードした後、制御プログラム実行部1080にて実行する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、サービス利用装置がサービスの提供を受けるために必要な制御プログラムを、サービス利用装置へ配信するための、制御プログラム配信方法及び装置に係り、特に、ワークステーションやパーソナルコンピュータ、ハンドヘルドコンピュータなどの複数の情報処理装置により実現される制御プログラム配信方法及び装置に関する。
【0002】
【従来の技術】
近年、携帯電話やPDA(Personal Digital Assistants)などの小型かつ高性能な情報処理装置が急速に普及している。これに伴い、例えば携帯電話の画面上から電車の切符を購入してチケットレスで乗車できるサービスや、動画や音楽などのストリーミングコンテンツをダウンロードしてPDA上で再生可能なサービスなど、様々なモバイルサービスが実用化されつつある。
【0003】
これらの情報処理装置は持ち運びが容易なため、出先からPHSデータ通信や無線LANなどのワイヤレス通信を経由してサービスを利用するような使い方が多い。一方、ワイヤレス通信を経由してサービスを利用する場合、ネットワークケーブルを介して接続された従来の環境とは異なり、通信の一時的な切断や、電波傍受による情報漏洩が発生する可能性が高い。そのため、対障害性やセキュリティなどの通信品質を向上するための機能を、サービス利用中の利用環境に合わせて、適宜追加したり、変更したりする手段が重要となる。
【0004】
QoS(Quality of Service)保証した通信パスを設定するためのプログラムを動的にダウンロードして実行する技術としては、特開2000−253053号公報に記載の技術がある。本技術では、ネットワークを構成するルータにおいて、サービス要求と運用ポリシーに基づき、サービス実現手段(ソフトウェア)を動的にダウンロードする。これにより、新サービスを迅速に提供可能となり、サービスレベルを向上することができる。以下、従来技術1という。
【0005】
一方、利用者の要求や属性情報に応じて、適切なサービスを選択して提供する技術としては、特開平11−96099号公報に記載の技術がある。本技術では、利用者が要求サービス内容を明示すると、サービス媒介サーバが利用者の嗜好や利用履歴等の属性情報を評価し、それらにマッチするサービスを選択して提供する。これにより、利用者は各自の要求に合ったサービスを利用することができる。以下、従来技術2という。
【0006】
また、特開平8−263409号公報には、端末が通信ノードを介して相互に接続され、テレビ電話などのディジタル通信を行い、通信サーバが、端末の呼設定などの通信制御を行う通信ソフトウェアを、各種バージョンについて蓄積しており、該通信サーバが、ソフトウェアを端末側にダウンロードするに先立って、端末側に環境探索プログラムを送信し、端末側が自ハードウェア・ソフトウェア環境を調査し、通信サーバに報告し、通信サーバが、端末側からの報告結果を分析して、端末側に送信する最適ソフトウェアを決定し、該ソフトウェアを端末側にダウンロードすることが記載されている。以下、従来技術3という。
【0007】
【特許文献1】
特開2000−253053号公報
【特許文献2】
特開平11−96099号公報
【特許文献3】
特開平8−263409号公報
【0008】
【発明が解決しようとする課題】
しかしながら、従来技術1においては、主に設置場所が固定であるルータに関するものであり、持ち運びが容易な情報処理装置については特に考慮していない。また、主にサービス管理者からの要求をトリガとしてサービス実現手段をダウンロードするものであり、サービス利用中の利用環境が変更された時に、その環境に合わせて適宜サービス実現手段を変更するような手段は備わっていない。したがって、サービス利用中に利用環境が頻繁に変更され易いモバイルサービスに適用する場合には、利用環境が変更されても同一のサービス実現手段を使用し続けるか、変更される度にサービス管理者へ連絡する等の手段を用いて、適切なサービス実現手段の配信を再度要求しなければならない。
【0009】
一方、従来技術2においては、サービス媒介サーバにおいて、利用者の要求サービス内容や嗜好などの属性情報に基づき、適切なサービス提供装置を探索するため、本マッチング処理はサービスの利用開始前に行なう必要がある。したがって、サービス利用中に利用環境が変更された場合には、一旦サービス利用を中止して属性情報等を更新した後、再度マッチング処理を行なってからサービスを利用しなければならない。
【0010】
本発明の目的は、サービス利用中の利用環境の変更に合わせて、サービスの質を制御するための適切なプログラムを配信して実行することにより、モバイルサービスのように頻繁に利用環境が変更される場合でも、サービスの品質を向上できることを特徴とする、制御プログラム配信方法および装置を提供することである。
【0011】
【課題を解決するための手段】
本発明は、サービス利用装置のサービスの利用中に、サービスの利用に対応して変化するサービス利用装置の利用環境情報を取得し、予め保持する複数の制御プログラムの中から、第1の処理ステップにより取得された利用環境情報に基づき、制御プログラムを選択し、サービス利用装置のサービスの利用中に、第2の処理ステップにより選択された制御プログラムを、サービス利用装置へ配信する。
【0012】
【発明の実施の形態】
以下、本発明の実施例を図面により説明する。
【0013】
図1は、本発明のサービスシステムにおける制御プログラム配信方法に係る構成の一実施例を示すブロック図である。1010、1020はワークステーション、パーソナルコンピュータ、ハンドヘルドコンピュータ、携帯電話などの情報処理装置であり、有線、無線、またはそれらの混在により構築されるネットワーク1030を介して複数の情報処理装置が接続される。
【0014】
サービスを提供する情報処理装置1010は、サービスの品質を制御するプログラム1060、サービスを利用する各情報処理装置やネットワークの環境情報を取得して、適切な制御プログラムを選択する制御プログラム選択部1040、選択した制御プログラムを他の情報処理装置へ配信する制御プログラム配信部1050、サービスを提供するアプリケーション1110、サービス利用中の各利用環境条件に応じて、サービス品質を保証する適切なサービス制御レベルを定義するサービス制御レベル定義テーブル1120からなる。
【0015】
サービスを利用する情報処理装置1020は、サービスを利用するアプリケーション1070、情報処理装置1010から制御プログラムをダウンロードする制御プログラム受信部1090、制御プログラム受信部によりダウンロードされた制御プログラム1100を実行する制御プログラム実行部1080からなる。
【0016】
本構成は、例えば制御プログラム配信部1050をWebサーバソフトで、サービス提供アプリケーション1110をWebサーバ上で動作するCGI(Common Gateway Interface)プログラムで、サービス利用アプリケーション1070をWebブラウザソフトで、制御プログラム選択部1040、制御プログラム受信部1090、制御プログラム実行部1080を常駐プログラムで、制御プログラム1060、1100をモバイルエージェントのプログラムコードでそれぞれ構成することにより、既知のソフトウェア開発手法を用いて簡単に実現できる。
【0017】
続いて、図1中の制御プログラム選択部1040の処理例を、図2のフローチャートを用いて説明する。最初に、情報処理装置1010の管理者からのユーザ入力等による、プログラム終了指示が検出されたら(ステップ2010)、制御プログラム選択部の処理を終了する。終了指示が検出されなければ、次にサービス提供アプリケーション1110からの通信データの入出力とログの更新を監視する(ステップ2020)。通信データの入出力の監視方法については、システムコールをフックする等の方法により容易に実現可能である。また、サービス提供アプリケーション1110がWebサーバ上で動作するアプリケーションの場合、Webサーバが出力するログファイルのタイムスタンプを調べることにより、通信データの入出力を監視することも可能である。
【0018】
通信データの入出力が検出されたら(ステップ2030)、受信データ中のヘッダ情報やログファイル中のエントリ情報から、サービス利用環境情報を取得する(ステップ2040)。サービス利用環境情報については、例えばHTTP(Hypertext Transfer Protocol)を介してサービスを利用している場合には、HTTPリクエストヘッダ中のREMOTE_ADDR情報を取得することにより、サービス利用元のIPアドレスを取得可能である。また、位置情報対応の携帯電話の場合には、基地局から位置情報を取得することにより、情報処理装置が存在するエリアコード等の情報を取得可能である。更に、HTTP/1.1ではエンティティヘッダを拡張可能なため、バッテリー残量等のデータを格納するためのヘッダ領域を新たに定義して送信することにより、その他の利用環境情報を取得することも可能である。
【0019】
次に、取得したサービス利用環境情報の値が、以前に取得した値から変更されているか否かを調べる(ステップ2050)。例えばWebベースアプリケーションの場合には、サービス利用装置側のWebブラウザのCookieに以前取得した値を保存しておき、Webサーバ側でその値を取得して最新の値と比較することにより、サービス利用環境情報の値が変更されたか否かを判定可能である。サービス利用環境情報の値が以前と異なる場合は、サービス制御レベル定義テーブルを読み込み、適切なサービス制御レベルを決定する(ステップ2060)。
【0020】
図3にサービス制御レベル定義テーブルの構成例を示す。サービス制御レベル定義テーブル3000は、サービス利用元IPアドレスや位置情報などのサービス利用環境情報3010と、各利用環境に対するセキュリティや対通信障害などのサービス品質レベルを規定するサービス制御レベル3020からなる行のリストである。3010にはサービス利用環境情報が取り得る値の範囲や条件等を、3020にはQoSレベルや制御プログラムに関連付けられた属性情報等を、それぞれ指定する。
【0021】
サービス制御レベルを決定した後に、そのレベルに合わせてサービス品質を制御可能な制御プログラムを選択する(ステップ2070)。サービス制御レベルの値を検索キーとして、各制御プログラムのプロファイル(属性)情報を検索するなどの方法により、適切な制御プログラムを選択可能である。
【0022】
ここで、サービス制御レベルに合わせてサービス品質を制御可能な制御プログラムを選択する方法の一例を、より詳細に説明する。サービス制御レベルを決定した後、サービス対応定義テーブル7000より、サービス制御レベルの値を検索キーとして、そのサービス制御レベルに対応するプロファイル情報を取得する。図7にサービス対応定義テーブルの構成例を示す。サービス対応定義テーブル7000は、各利用環境に対するサービス品質レベルを表すサービス制御レベル7010と、各サービス制御レベルを実現するためのサービス内容を表すプロファイル情報7020からなる行のリストである。例えばサービス制御レベルが「セキュリティ:高」ならば、暗号化方式としてRSAやDSAなどをサポートする制御プログラムを使用するか、もしくは3DESなどの中レベルの暗号化をサポートする制御プログラムを2つ組み合わせて使用する必要があることを本テーブルにより規定する。次に、取得したプロファイル情報を検索キーとして、プロファイル情報定義テーブル8000より、そのプロファイル情報にマッチする制御プログラム名を取得する。図8にプロファイル情報定義テーブルの構成例を示す。プロファイル情報定義テーブル8000は、制御プログラム名(制御プログラムの格納場所を含む)8010と、各制御プログラム毎のプログラム内容を表すプロファイル情報8020からなる行のリストである。例えば制御プログラム「lan1.prg(C:¥service_components¥networkディレクトリに格納)」については、通信時の接続経路がLAN経由で、通信切断時の再送信試行回数が1回であることを示す。これらのプロファイル情報については、テーブル形式でなくXML形式で格納するようにしても良い。
【0023】
次に、送信データのヘッダ情報中に、選択した制御プログラムへのURL(Uniform Resource Locator)のリストを追加して送信する(ステップ2080)。例えばHTTP/1.1を介してサービスを利用している場合には、エンティティヘッダを拡張して定義した新たなヘッダ領域に、制御プログラムへのURLのリストを格納して送信可能である。
【0024】
ステップ2080で制御プログラムへのURLリストを送信した後、またはステップ2030で通信データの入出力やログ更新が検出されない場合、あるいはステップ2050でサービス利用環境情報が変更されていない場合には、再びステップ2010からの処理を繰り返す。
【0025】
続いて、図1中の制御プログラム受信部1090の処理例を、図4のフローチャートを用いて説明する。最初に、情報処理装置1010の管理者からのユーザ入力等による、プログラム終了指示が検出されたら(ステップ4010)、制御プログラム受信部の処理を終了する。終了指示が検出されなければ、次にサービス利用アプリケーション1070からの通信データの入出力を監視する(ステップ4020)。通信データの入出力が検出されたら(ステップ4030)、受信データ中のヘッダ情報中に、前記ステップ2080で追加した制御プログラムへのURLのリスト情報が含まれているか否かを調べる(ステップ4040)。リスト情報が含まれている場合は、順次そのURLにアクセスして情報処理装置1010から制御プログラムをダウンロードした後、制御プログラム実行部1080に出力する(ステップ4050)。ステップ4050の完了後、またはステップ4030で通信データの入出力が検出されない場合、あるいはステップ4040でリスト情報が含まれていない場合には、再び4010からの処理を繰り返す。
【0026】
続いて、図1中の制御プログラム実行部1080の処理例を、図5のフローチャートを用いて説明する。最初に、制御プログラム受信部1090から受け取った制御プログラム1100を、情報処理装置1020上でロードする(ステップ5010)。次に、各々の制御プログラムの初期化処理における、イベント発生時に呼び出す処理の関連付け要求を受け付け、管理テーブルに登録する(ステップ5020)。次に、サービス利用アプリケーション1070からの通信データの入出力を監視する(ステップ5030)。情報処理装置1020の利用者からのユーザ入力等による、プログラム終了指示が検出されたら(ステップ5040)、制御プログラム実行部の処理を終了する。通信データの入出力が検出されたら(ステップ5050)、通信データを取得し、管理テーブルを参照してそのイベントに対応する制御プログラムの処理を呼び出した後(ステップ5060)、再びサービス利用アプリケーションからの通信データの入出力を監視する(ステップ5030)。
【0027】
以上、本実施例ではサービスを提供するアプリケーションと、制御プログラムを配信する処理部とが、同一の情報処理装置上に存在する場合について説明した。しかしながら図6のブロック図に示すように、それぞれが異なる情報処理装置上にあっても良い。
【0028】
また、本実施例では制御プログラム受信部および制御プログラム実行部が、サービスを利用する情報処理装置上にサービスを利用する前から存在し実行されている場合について説明した。しかしながら本方式のみに限定されるものではなく、例えばサービス利用アプリケーションがWebブラウザの場合には、プラグインコンポーネントとして制御プログラム実行部を配信するようにしても良い。
【0029】
また、本実施例では制御プログラムを配信する際に、選択した制御プログラムへのURLのリストを送信し、そのURLにアクセスすることによって制御プログラムをダウンロードする場合について説明した。しかしながら本方式のみに限定されるものではなく、例えばリストではなく制御プログラムのバイナリデータをそのまま送付することも可能である。また、必要に応じて制御プログラム実行時に渡すパラメータや、複数の制御プログラムの処理の優先度を制御するためのルールなどの付加情報を同時に配信しても良い。
【0030】
また、本実施例では制御プログラムを全てダウンロードして実行する場合について説明した。しかしながら必ずしも全ての制御プログラムをダウンロードする必要はなく、例えば同レベル以上のサービス品質を実現可能な制御プログラムが既にサービスを利用する情報処理装置に備わっている場合には、制御プログラムをダウンロードする代わりにその機能を用いるようにしても良い。
【0031】
【発明の効果】
本発明によれば、サービス利用中の利用環境の変化に合わせて、サービス品質を制御するための適切なプログラムを配信して実行することにより、モバイルサービスのように頻繁に利用環境が変更される場合でも、サービス品質を向上することができる。したがって、サービス利用者にとっては高信頼なサービスを利用可能となる。また、サービス開発者やサービス運用者にとっては個々の利用者の利用環境に合わせてカスタマイズしたサービスを容易に提供できる。
【図面の簡単な説明】
【図1】図1は、本発明の実施例に係る制御プログラム配信方法の一つ目の構成例を示す模式図である。
【図2】図2は、図1中の制御プログラム選択部1040の動作例を示すフローチャートである。
【図3】図3は、図1中のサービス制御レベル定義テーブル1120の構成例を示す図である。
【図4】図4は、図1中の制御プログラム受信部1090の動作例を示すフローチャートである。
【図5】図5は、図1中の制御プログラム実行部1080の動作例を示すフローチャートである。
【図6】図6は、本発明の実施例に係る制御プログラム配信方法の二つ目の構成例を示す模式図である。
【図7】図7は、サービス対応定義の構成例を示す図である。
【図8】図8は、プロファイル情報定義テーブルの構成例を示す図である。
【符号の説明】
1010〜1020…情報処理装置、1030…ネットワーク、1040…制御プログラム選択部、1050…制御プログラム配信部、1060…制御プログラム、1070…サービス利用アプリケーション、1080…制御プログラム実行部、1090…制御プログラム受信部、1100…制御プログラム、1110…サービス提供アプリケーション、1120…サービス制御レベル定義テーブル、3000…サービス制御レベル定義テーブル、6000〜6020…情報処理装置、6030…ネットワーク、6040…制御プログラム選択部、6050…制御プログラム配信部、6060…制御プログラム、6070…サービス利用アプリケーション、6080…制御プログラム実行部、6090…制御プログラム受信部、6100…制御プログラム、6110…サービス提供アプリケーション、6120…サービス制御レベル定義テーブル、7000…サービス対応定義テーブル、8000…プロファイル情報定義テーブル。
【発明の属する技術分野】
本発明は、サービス利用装置がサービスの提供を受けるために必要な制御プログラムを、サービス利用装置へ配信するための、制御プログラム配信方法及び装置に係り、特に、ワークステーションやパーソナルコンピュータ、ハンドヘルドコンピュータなどの複数の情報処理装置により実現される制御プログラム配信方法及び装置に関する。
【0002】
【従来の技術】
近年、携帯電話やPDA(Personal Digital Assistants)などの小型かつ高性能な情報処理装置が急速に普及している。これに伴い、例えば携帯電話の画面上から電車の切符を購入してチケットレスで乗車できるサービスや、動画や音楽などのストリーミングコンテンツをダウンロードしてPDA上で再生可能なサービスなど、様々なモバイルサービスが実用化されつつある。
【0003】
これらの情報処理装置は持ち運びが容易なため、出先からPHSデータ通信や無線LANなどのワイヤレス通信を経由してサービスを利用するような使い方が多い。一方、ワイヤレス通信を経由してサービスを利用する場合、ネットワークケーブルを介して接続された従来の環境とは異なり、通信の一時的な切断や、電波傍受による情報漏洩が発生する可能性が高い。そのため、対障害性やセキュリティなどの通信品質を向上するための機能を、サービス利用中の利用環境に合わせて、適宜追加したり、変更したりする手段が重要となる。
【0004】
QoS(Quality of Service)保証した通信パスを設定するためのプログラムを動的にダウンロードして実行する技術としては、特開2000−253053号公報に記載の技術がある。本技術では、ネットワークを構成するルータにおいて、サービス要求と運用ポリシーに基づき、サービス実現手段(ソフトウェア)を動的にダウンロードする。これにより、新サービスを迅速に提供可能となり、サービスレベルを向上することができる。以下、従来技術1という。
【0005】
一方、利用者の要求や属性情報に応じて、適切なサービスを選択して提供する技術としては、特開平11−96099号公報に記載の技術がある。本技術では、利用者が要求サービス内容を明示すると、サービス媒介サーバが利用者の嗜好や利用履歴等の属性情報を評価し、それらにマッチするサービスを選択して提供する。これにより、利用者は各自の要求に合ったサービスを利用することができる。以下、従来技術2という。
【0006】
また、特開平8−263409号公報には、端末が通信ノードを介して相互に接続され、テレビ電話などのディジタル通信を行い、通信サーバが、端末の呼設定などの通信制御を行う通信ソフトウェアを、各種バージョンについて蓄積しており、該通信サーバが、ソフトウェアを端末側にダウンロードするに先立って、端末側に環境探索プログラムを送信し、端末側が自ハードウェア・ソフトウェア環境を調査し、通信サーバに報告し、通信サーバが、端末側からの報告結果を分析して、端末側に送信する最適ソフトウェアを決定し、該ソフトウェアを端末側にダウンロードすることが記載されている。以下、従来技術3という。
【0007】
【特許文献1】
特開2000−253053号公報
【特許文献2】
特開平11−96099号公報
【特許文献3】
特開平8−263409号公報
【0008】
【発明が解決しようとする課題】
しかしながら、従来技術1においては、主に設置場所が固定であるルータに関するものであり、持ち運びが容易な情報処理装置については特に考慮していない。また、主にサービス管理者からの要求をトリガとしてサービス実現手段をダウンロードするものであり、サービス利用中の利用環境が変更された時に、その環境に合わせて適宜サービス実現手段を変更するような手段は備わっていない。したがって、サービス利用中に利用環境が頻繁に変更され易いモバイルサービスに適用する場合には、利用環境が変更されても同一のサービス実現手段を使用し続けるか、変更される度にサービス管理者へ連絡する等の手段を用いて、適切なサービス実現手段の配信を再度要求しなければならない。
【0009】
一方、従来技術2においては、サービス媒介サーバにおいて、利用者の要求サービス内容や嗜好などの属性情報に基づき、適切なサービス提供装置を探索するため、本マッチング処理はサービスの利用開始前に行なう必要がある。したがって、サービス利用中に利用環境が変更された場合には、一旦サービス利用を中止して属性情報等を更新した後、再度マッチング処理を行なってからサービスを利用しなければならない。
【0010】
本発明の目的は、サービス利用中の利用環境の変更に合わせて、サービスの質を制御するための適切なプログラムを配信して実行することにより、モバイルサービスのように頻繁に利用環境が変更される場合でも、サービスの品質を向上できることを特徴とする、制御プログラム配信方法および装置を提供することである。
【0011】
【課題を解決するための手段】
本発明は、サービス利用装置のサービスの利用中に、サービスの利用に対応して変化するサービス利用装置の利用環境情報を取得し、予め保持する複数の制御プログラムの中から、第1の処理ステップにより取得された利用環境情報に基づき、制御プログラムを選択し、サービス利用装置のサービスの利用中に、第2の処理ステップにより選択された制御プログラムを、サービス利用装置へ配信する。
【0012】
【発明の実施の形態】
以下、本発明の実施例を図面により説明する。
【0013】
図1は、本発明のサービスシステムにおける制御プログラム配信方法に係る構成の一実施例を示すブロック図である。1010、1020はワークステーション、パーソナルコンピュータ、ハンドヘルドコンピュータ、携帯電話などの情報処理装置であり、有線、無線、またはそれらの混在により構築されるネットワーク1030を介して複数の情報処理装置が接続される。
【0014】
サービスを提供する情報処理装置1010は、サービスの品質を制御するプログラム1060、サービスを利用する各情報処理装置やネットワークの環境情報を取得して、適切な制御プログラムを選択する制御プログラム選択部1040、選択した制御プログラムを他の情報処理装置へ配信する制御プログラム配信部1050、サービスを提供するアプリケーション1110、サービス利用中の各利用環境条件に応じて、サービス品質を保証する適切なサービス制御レベルを定義するサービス制御レベル定義テーブル1120からなる。
【0015】
サービスを利用する情報処理装置1020は、サービスを利用するアプリケーション1070、情報処理装置1010から制御プログラムをダウンロードする制御プログラム受信部1090、制御プログラム受信部によりダウンロードされた制御プログラム1100を実行する制御プログラム実行部1080からなる。
【0016】
本構成は、例えば制御プログラム配信部1050をWebサーバソフトで、サービス提供アプリケーション1110をWebサーバ上で動作するCGI(Common Gateway Interface)プログラムで、サービス利用アプリケーション1070をWebブラウザソフトで、制御プログラム選択部1040、制御プログラム受信部1090、制御プログラム実行部1080を常駐プログラムで、制御プログラム1060、1100をモバイルエージェントのプログラムコードでそれぞれ構成することにより、既知のソフトウェア開発手法を用いて簡単に実現できる。
【0017】
続いて、図1中の制御プログラム選択部1040の処理例を、図2のフローチャートを用いて説明する。最初に、情報処理装置1010の管理者からのユーザ入力等による、プログラム終了指示が検出されたら(ステップ2010)、制御プログラム選択部の処理を終了する。終了指示が検出されなければ、次にサービス提供アプリケーション1110からの通信データの入出力とログの更新を監視する(ステップ2020)。通信データの入出力の監視方法については、システムコールをフックする等の方法により容易に実現可能である。また、サービス提供アプリケーション1110がWebサーバ上で動作するアプリケーションの場合、Webサーバが出力するログファイルのタイムスタンプを調べることにより、通信データの入出力を監視することも可能である。
【0018】
通信データの入出力が検出されたら(ステップ2030)、受信データ中のヘッダ情報やログファイル中のエントリ情報から、サービス利用環境情報を取得する(ステップ2040)。サービス利用環境情報については、例えばHTTP(Hypertext Transfer Protocol)を介してサービスを利用している場合には、HTTPリクエストヘッダ中のREMOTE_ADDR情報を取得することにより、サービス利用元のIPアドレスを取得可能である。また、位置情報対応の携帯電話の場合には、基地局から位置情報を取得することにより、情報処理装置が存在するエリアコード等の情報を取得可能である。更に、HTTP/1.1ではエンティティヘッダを拡張可能なため、バッテリー残量等のデータを格納するためのヘッダ領域を新たに定義して送信することにより、その他の利用環境情報を取得することも可能である。
【0019】
次に、取得したサービス利用環境情報の値が、以前に取得した値から変更されているか否かを調べる(ステップ2050)。例えばWebベースアプリケーションの場合には、サービス利用装置側のWebブラウザのCookieに以前取得した値を保存しておき、Webサーバ側でその値を取得して最新の値と比較することにより、サービス利用環境情報の値が変更されたか否かを判定可能である。サービス利用環境情報の値が以前と異なる場合は、サービス制御レベル定義テーブルを読み込み、適切なサービス制御レベルを決定する(ステップ2060)。
【0020】
図3にサービス制御レベル定義テーブルの構成例を示す。サービス制御レベル定義テーブル3000は、サービス利用元IPアドレスや位置情報などのサービス利用環境情報3010と、各利用環境に対するセキュリティや対通信障害などのサービス品質レベルを規定するサービス制御レベル3020からなる行のリストである。3010にはサービス利用環境情報が取り得る値の範囲や条件等を、3020にはQoSレベルや制御プログラムに関連付けられた属性情報等を、それぞれ指定する。
【0021】
サービス制御レベルを決定した後に、そのレベルに合わせてサービス品質を制御可能な制御プログラムを選択する(ステップ2070)。サービス制御レベルの値を検索キーとして、各制御プログラムのプロファイル(属性)情報を検索するなどの方法により、適切な制御プログラムを選択可能である。
【0022】
ここで、サービス制御レベルに合わせてサービス品質を制御可能な制御プログラムを選択する方法の一例を、より詳細に説明する。サービス制御レベルを決定した後、サービス対応定義テーブル7000より、サービス制御レベルの値を検索キーとして、そのサービス制御レベルに対応するプロファイル情報を取得する。図7にサービス対応定義テーブルの構成例を示す。サービス対応定義テーブル7000は、各利用環境に対するサービス品質レベルを表すサービス制御レベル7010と、各サービス制御レベルを実現するためのサービス内容を表すプロファイル情報7020からなる行のリストである。例えばサービス制御レベルが「セキュリティ:高」ならば、暗号化方式としてRSAやDSAなどをサポートする制御プログラムを使用するか、もしくは3DESなどの中レベルの暗号化をサポートする制御プログラムを2つ組み合わせて使用する必要があることを本テーブルにより規定する。次に、取得したプロファイル情報を検索キーとして、プロファイル情報定義テーブル8000より、そのプロファイル情報にマッチする制御プログラム名を取得する。図8にプロファイル情報定義テーブルの構成例を示す。プロファイル情報定義テーブル8000は、制御プログラム名(制御プログラムの格納場所を含む)8010と、各制御プログラム毎のプログラム内容を表すプロファイル情報8020からなる行のリストである。例えば制御プログラム「lan1.prg(C:¥service_components¥networkディレクトリに格納)」については、通信時の接続経路がLAN経由で、通信切断時の再送信試行回数が1回であることを示す。これらのプロファイル情報については、テーブル形式でなくXML形式で格納するようにしても良い。
【0023】
次に、送信データのヘッダ情報中に、選択した制御プログラムへのURL(Uniform Resource Locator)のリストを追加して送信する(ステップ2080)。例えばHTTP/1.1を介してサービスを利用している場合には、エンティティヘッダを拡張して定義した新たなヘッダ領域に、制御プログラムへのURLのリストを格納して送信可能である。
【0024】
ステップ2080で制御プログラムへのURLリストを送信した後、またはステップ2030で通信データの入出力やログ更新が検出されない場合、あるいはステップ2050でサービス利用環境情報が変更されていない場合には、再びステップ2010からの処理を繰り返す。
【0025】
続いて、図1中の制御プログラム受信部1090の処理例を、図4のフローチャートを用いて説明する。最初に、情報処理装置1010の管理者からのユーザ入力等による、プログラム終了指示が検出されたら(ステップ4010)、制御プログラム受信部の処理を終了する。終了指示が検出されなければ、次にサービス利用アプリケーション1070からの通信データの入出力を監視する(ステップ4020)。通信データの入出力が検出されたら(ステップ4030)、受信データ中のヘッダ情報中に、前記ステップ2080で追加した制御プログラムへのURLのリスト情報が含まれているか否かを調べる(ステップ4040)。リスト情報が含まれている場合は、順次そのURLにアクセスして情報処理装置1010から制御プログラムをダウンロードした後、制御プログラム実行部1080に出力する(ステップ4050)。ステップ4050の完了後、またはステップ4030で通信データの入出力が検出されない場合、あるいはステップ4040でリスト情報が含まれていない場合には、再び4010からの処理を繰り返す。
【0026】
続いて、図1中の制御プログラム実行部1080の処理例を、図5のフローチャートを用いて説明する。最初に、制御プログラム受信部1090から受け取った制御プログラム1100を、情報処理装置1020上でロードする(ステップ5010)。次に、各々の制御プログラムの初期化処理における、イベント発生時に呼び出す処理の関連付け要求を受け付け、管理テーブルに登録する(ステップ5020)。次に、サービス利用アプリケーション1070からの通信データの入出力を監視する(ステップ5030)。情報処理装置1020の利用者からのユーザ入力等による、プログラム終了指示が検出されたら(ステップ5040)、制御プログラム実行部の処理を終了する。通信データの入出力が検出されたら(ステップ5050)、通信データを取得し、管理テーブルを参照してそのイベントに対応する制御プログラムの処理を呼び出した後(ステップ5060)、再びサービス利用アプリケーションからの通信データの入出力を監視する(ステップ5030)。
【0027】
以上、本実施例ではサービスを提供するアプリケーションと、制御プログラムを配信する処理部とが、同一の情報処理装置上に存在する場合について説明した。しかしながら図6のブロック図に示すように、それぞれが異なる情報処理装置上にあっても良い。
【0028】
また、本実施例では制御プログラム受信部および制御プログラム実行部が、サービスを利用する情報処理装置上にサービスを利用する前から存在し実行されている場合について説明した。しかしながら本方式のみに限定されるものではなく、例えばサービス利用アプリケーションがWebブラウザの場合には、プラグインコンポーネントとして制御プログラム実行部を配信するようにしても良い。
【0029】
また、本実施例では制御プログラムを配信する際に、選択した制御プログラムへのURLのリストを送信し、そのURLにアクセスすることによって制御プログラムをダウンロードする場合について説明した。しかしながら本方式のみに限定されるものではなく、例えばリストではなく制御プログラムのバイナリデータをそのまま送付することも可能である。また、必要に応じて制御プログラム実行時に渡すパラメータや、複数の制御プログラムの処理の優先度を制御するためのルールなどの付加情報を同時に配信しても良い。
【0030】
また、本実施例では制御プログラムを全てダウンロードして実行する場合について説明した。しかしながら必ずしも全ての制御プログラムをダウンロードする必要はなく、例えば同レベル以上のサービス品質を実現可能な制御プログラムが既にサービスを利用する情報処理装置に備わっている場合には、制御プログラムをダウンロードする代わりにその機能を用いるようにしても良い。
【0031】
【発明の効果】
本発明によれば、サービス利用中の利用環境の変化に合わせて、サービス品質を制御するための適切なプログラムを配信して実行することにより、モバイルサービスのように頻繁に利用環境が変更される場合でも、サービス品質を向上することができる。したがって、サービス利用者にとっては高信頼なサービスを利用可能となる。また、サービス開発者やサービス運用者にとっては個々の利用者の利用環境に合わせてカスタマイズしたサービスを容易に提供できる。
【図面の簡単な説明】
【図1】図1は、本発明の実施例に係る制御プログラム配信方法の一つ目の構成例を示す模式図である。
【図2】図2は、図1中の制御プログラム選択部1040の動作例を示すフローチャートである。
【図3】図3は、図1中のサービス制御レベル定義テーブル1120の構成例を示す図である。
【図4】図4は、図1中の制御プログラム受信部1090の動作例を示すフローチャートである。
【図5】図5は、図1中の制御プログラム実行部1080の動作例を示すフローチャートである。
【図6】図6は、本発明の実施例に係る制御プログラム配信方法の二つ目の構成例を示す模式図である。
【図7】図7は、サービス対応定義の構成例を示す図である。
【図8】図8は、プロファイル情報定義テーブルの構成例を示す図である。
【符号の説明】
1010〜1020…情報処理装置、1030…ネットワーク、1040…制御プログラム選択部、1050…制御プログラム配信部、1060…制御プログラム、1070…サービス利用アプリケーション、1080…制御プログラム実行部、1090…制御プログラム受信部、1100…制御プログラム、1110…サービス提供アプリケーション、1120…サービス制御レベル定義テーブル、3000…サービス制御レベル定義テーブル、6000〜6020…情報処理装置、6030…ネットワーク、6040…制御プログラム選択部、6050…制御プログラム配信部、6060…制御プログラム、6070…サービス利用アプリケーション、6080…制御プログラム実行部、6090…制御プログラム受信部、6100…制御プログラム、6110…サービス提供アプリケーション、6120…サービス制御レベル定義テーブル、7000…サービス対応定義テーブル、8000…プロファイル情報定義テーブル。
Claims (7)
- サービス提供装置からサービス利用装置へ、前記サービス利用装置が前記サービス提供装置からサービスの提供を受けるために必要な制御プログラムを配信するための、コンピュータによる制御プログラム配信方法において、
前記サービス利用装置のサービスの利用中に、前記サービスの利用に対応して変化する前記サービス利用装置の利用環境情報を取得するための第1の処理ステップと、
予め保持する複数の制御プログラムの中から、前記第1の処理ステップにより取得された前記利用環境情報に基づき、前記制御プログラムを選択するための第2の処理ステップと、
前記サービス利用装置のサービスの利用中に、第2の処理ステップにより選択された制御プログラムを、前記サービス利用装置へ配信するための第3の処理ステップを備える制御プログラム配信方法。 - 前記サービス利用装置がサービスの提供を受けるために必要な制御プログラムを、サービス利用装置へ配信するための、制御プログラム配信装置において、
複数の前記制御プログラムを格納する記憶手段と、
前記サービス利用装置のサービスの利用中に、前記サービスの利用に対応して変化する前記サービス利用装置の利用環境情報を取得するための第1の処理手段と、
予め格納する複数の制御プログラムの中から、前記第1の処理ステップにより取得された前記利用環境情報に基づき、前記制御プログラムを選択するための第2の処理手段と、
前記サービス利用装置のサービスの利用中に、第2の処理ステップにより選択された制御プログラムを、前記サービス利用装置へ配信するための第3の処理手段を備える制御プログラム配信装置。 - 第1の処理手段は、前記サービス利用装置が、HTTPを用いて当該制御プログラム配信装置と通信する場合に、HTTPのヘッダ情報から前記利用環境情報を取得する請求項2に記載の制御プログラム配信装置。
- 前記制御プログラムは、前記サービスの品質を制御するためのプログラムである請求項2に記載の制御プログラム配信装置。
- 前記利用環境情報は、前記サービス利用装置へ提供するサービスの当該サービス提供装置内の提供元のアドレスと、前記サービス利用装置の位置情報との、少なくとも1つを含む請求項2に記載の制御プログラム配信装置。
- 前記第2の処理手段は、予め保持する複数の制御プログラムの中から、前記サービスの利用に対応して変化する前記サービスの制御レベルに基づき、前記制御プログラムを選択する請求項2に記載の制御プログラム配信装置。
- 前記サービスの制御レベルは、前記サービスのセキュリティレベルと、前記サービス利用装置に対する対通信障害レベルとの、少なくとも1つを含む請求項6に記載の制御プログラム配信装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002264895A JP2004102741A (ja) | 2002-09-11 | 2002-09-11 | 制御プログラム配信方法及び装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002264895A JP2004102741A (ja) | 2002-09-11 | 2002-09-11 | 制御プログラム配信方法及び装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004102741A true JP2004102741A (ja) | 2004-04-02 |
Family
ID=32264183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002264895A Pending JP2004102741A (ja) | 2002-09-11 | 2002-09-11 | 制御プログラム配信方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004102741A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008201093A (ja) * | 2007-02-22 | 2008-09-04 | Canon Inc | 電子文書処理装置、電子文書処理方法、及びコンピュータプログラム |
JPWO2013146047A1 (ja) * | 2012-03-29 | 2015-12-10 | ソニー株式会社 | 情報処理装置、情報処理方法、サーバ装置、検索方法および情報処理システム |
-
2002
- 2002-09-11 JP JP2002264895A patent/JP2004102741A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008201093A (ja) * | 2007-02-22 | 2008-09-04 | Canon Inc | 電子文書処理装置、電子文書処理方法、及びコンピュータプログラム |
JPWO2013146047A1 (ja) * | 2012-03-29 | 2015-12-10 | ソニー株式会社 | 情報処理装置、情報処理方法、サーバ装置、検索方法および情報処理システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100959523B1 (ko) | 사용자를 위한 서비스 품질 관리 방법 및 이를 수행하기위한 시스템 | |
US20060080659A1 (en) | System and method of provisioning software to mobile devices | |
EP2627032B1 (en) | Method, policy server and gateway for determining policies | |
WO2011076146A1 (zh) | 下载应用数据的方法、数字电视接收终端及系统 | |
US7509652B2 (en) | Event related communications | |
CN107181804B (zh) | 资源的下载方法和装置 | |
US7844708B2 (en) | Method and apparatus for load sharing and data distribution in servers | |
CN109302437B (zh) | 一种重定向网站的方法和装置 | |
WO2018059150A1 (zh) | 一种能力开放实现方法和装置 | |
EP3057287A1 (en) | Node allocation method, device and system | |
US20010010061A1 (en) | Communication system, communication method, gateway apparatus, and client | |
US7260602B2 (en) | System and method of network content location for roaming clients | |
RU2618943C2 (ru) | Способ, устройство и система распространения приложений | |
CN111406437A (zh) | 多路径数据通信 | |
JP5610654B2 (ja) | 端末管理パッケージを提供する装置及び前記端末管理パッケージを受信する方法 | |
KR100642998B1 (ko) | 단말의 정책을 업그레이드하기 위한 정책메시지 전송방법 | |
WO2004019208A2 (en) | Method and apparatus for just-in-time provisioning application-related information at a communication device | |
EP1338971B1 (en) | Method and terminal for the secure acquisition of applications | |
CN114080056A (zh) | 一种会话更新方法、终端和网络侧设备 | |
JP2004102741A (ja) | 制御プログラム配信方法及び装置 | |
CN113423078B (zh) | 应用程序网络分片选择方法、应用服务器及pcf | |
CN108509243A (zh) | 一种应用中的页面加载的方法、装置及电子设备 | |
CN110417874B (zh) | 一种获取补丁数据的方法及装置 | |
KR20020059076A (ko) | 무선 통신 기기내 자동 다운로드 예약 방법 및 시스템 | |
WO2014074109A1 (en) | Adaptive leveraging of network information |