(57)【要約】【課題】様々な通信プロトコルに対応したモバイルエージェントの転送が可能と成るモバイルエージェント・システムを得る。【解決手段】インターネットＮ０３とローカルネットワークＮ０１とにより接続された複数のサーバ装置Ｓ０１〜Ｓ０４間にて、サーバ装置Ｓ０１にて作成されたモバイルエージェントＭＡを旅程表ＭＡ０２に基づいてサーバ装置Ｓ０２に転送を行うモバイルエージェント・システムにおいて、サーバ装置Ｓ０１はモバイルエージェントＭＡの転送プロトコルとして複数の通信プロトコルを支援するモバイルエージェント・サーバＭＳを備え、モバイルエージェント・サーバＭＳはモバイルエージェントＭＡの転送におけるサーバ装置Ｓ０１およびサーバ装置Ｓ０２間のネットワークの構成に応じて適切な通信プロトコルを抽出してモバイルエージェントＭＡを転送するものである。【選択図】        図１
2004303106.tif 000002
【特許請求の範囲】
【請求項１】
広域ネットワークおよび／またはローカルネットワークにより接続された複数のサーバ装置間にて、上記任意のサーバ装置にて作成されたモバイルエージェントを旅程表に基づいて上記任意のサーバ装置以外のサーバ装置に転送を行うモバイルエージェント・システムにおいて、上記各サーバ装置は上記モバイルエージェントの転送プロトコルとして複数の通信プロトコルを支援するモバイルエージェント・サーバを備え、上記モバイルエージェント・サーバは上記モバイルエージェントの転送における上記各サーバ装置間の上記ネットワークの構成に応じて適切な通信プロトコルを抽出して上記モバイルエージェントを転送することを特徴とするモバイルエージェント・システム。
【請求項２】
上記サーバ装置は上記モバイルエージェントの転送プロトコルを上記旅程表に設定し、上記モバイルエージェント・サーバは上記旅程表に基づいて上記適切な通信プロトコルを抽出することを特徴とする請求項１に記載のモバイルエージェント・システム。
【請求項３】
上記サーバ装置は上記旅程表の上記モバイルエージェントの転送先を上記サーバ装置名のＵＲＬにて指定し、上記モバイルエージェント・サーバは上記ＵＲＬに基づいて上記適切な通信プロトコルを抽出することを特徴とする請求項２に記載のモバイルエージェント・システム。
【請求項４】
上記サーバ装置において、当該サーバ装置と上記他のサーバ装置間の通信プロトコルをそのサーバ装置間の接続ネットワークに応じてあらかじめ設定して記憶する記憶部をそれぞれ備え、上記モバイルエージェント・サーバは上記モバイルエージェントの転送プロトコルを、上記記憶部から検索して決定することを特徴とする請求項１に記載のモバイルエージェント・システム。
【請求項５】
上記複数の通信プロトコルとして暗号化通信プロトコルを備え、上記各サーバ装置間の通信において暗号化が必要か否かをあらかじめ設定する設定部を備え、上記モバイルエージェント・サーバは上記モバイルエージェントを転送する上記サーバ装置が上記設定部にて暗号化が必要であると設定されていると上記暗号化通信プロトコルを指定することを特徴とする請求項１ないし請求項４のいずれかに記載のモバイルエージェント・システム。
【請求項６】
上記複数の通信プロトコルとして暗号化通信プロトコルを備え、上記モバイルエージェントがアクセスする内容に暗号化が必要なデータが含まれるか否かを判断し、上記モバイルエージェント・サーバは上記モバイルエージェントにて暗号化が必要と判断されると、上記暗号化転送プロトコルを指定することを特徴とする請求項１ないし請求項４のいずれかに記載のモバイルエージェント・システム。
【請求項７】
上記モバイルエージェントが複数存在する場合、上記サーバ装置は何れのモバイルエージェントを優先的に実行するかの実行優先度を上記旅程表に指定することを特徴とする請求項１ないし請求項６のいずれかに記載のモバイルエージェント・システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、広域ネットワークおよび／またはローカルネットワークにより接続されたサーバ装置間のモバイルエージェントの転送を行うモバイルエージェント・システムにおいて、ネットワークの構成に応じて適切な通信プロトコルを用いてモバイルエージェントの転送を行うことができるものである。
【０００２】
【従来の技術】
従来のモバイルエージェントを適用したシステムは、モバイルエージェン、システムのメンテナンスをスケジュールするアプリケーション、スケジューラを接続するネットワークを備える。ネットワークを介してモバイルエージェントと通信するための通信手段と、アプリケーション機能としての電力系統設備作業停止計画を実現するための対象知識格納手段、対象知識管理手段、問題解決知識格納手段、問題解決知識管理手段を有している。
【０００３】
またモバイルエージェントは、アプリケーションと通信するための通信手段、複数のスケジューラ間での問題を解決するアルゴリズムを格納する協調問題解決知識格納手段、通信手段を介してスケジューラにアクセスする協調問題解決知識管理手段と、ネットワーク上でモバイルエージェントの移動で使用されるネットワーク移動手段を備えている。
【０００４】
次に上記のように構成された従来のモバイルエージェントを適用したシステムの動作について説明する。各スケジューラが問題解決の実行を行っているとき、他のスケジューラとの協調が必要になるとシステムにリクエストを送ってモバイルエージェントを生成させる。このように生成されたモバイルエージェントは、スケジューラ間を巡回しスケジューラ間の協調を仲介し、協調処理（尚、特許文献１においては、この「協調処理」は「協調プロトコル」と記されているが、後述にて説明する通信プロトコルと区別するため、ここでは「協調処理」と記述する）実行が済むと例えば自動的に自己消滅する。
【０００５】
次に、モバイルエージェントの作用を中心に具体的に説明する。個々のスケジューラは、各々幾つかの変数を有しており、各変数の値を管理している。各々のスケジューラが有する変数には、そのスケジューラにとってローカルな制約条件と、他のスケジューラとの間をまたがるような制約条件とが存在する。そのため各スケジューラは変数の値を決定するために他のスケジューラと協調し、変数間の制約条件を満足するように変数の具体的な値を決めていかなければならない。
【０００６】
このようにスケジューラは他のスケジューラとの協調を必要とした際、スケジューラ間を仲介するためのモバイルエージェントを生成する。スケジューラは自分のシステム上の場所、すなわちアドレスなどをシステムに登録し、生成されたモバイルエージェントはこの登録情報を参照することで移動先を決定する。このように生成されたモバイルエージェントは、スケジューラの持っている制約条件を取得し、巡回リスト（旅程表）に従って各スケジューラ間を巡回しながら協調処理を実行し制約の解消することでスケジューラ間の協調を仲介するものである（例えば、特許文献１参照）。
【０００７】
【特許文献１】
特開平１１−３１６６８２号公報（図１）
【０００８】
【発明が解決しようとする課題】
従来のモバイルエージェント・システムは、スケジューラすなわちアプリケーションが自分のシステム上の場所を登録すると記述されているのみで、具体的な通信プロトコルの決定方法については記述されていない。すなわち、従来のモバイルエージェント・システムは、モバイルエージェントの移動に使用される通信プロトコルについては、予めシステム内で１つに決められていたものと考えられる。
【０００９】
しかしながら、最近のネットワーク技術の発達によりネットワーク構成はインターネットやイントラネット等を組み合わせた複雑なものとなっており、モバイルエージェントの移動においてもネットワーク構成に応じた適切な通信プロトコルを選択する必要がある。またインターネット上では通信するデータの内容に応じて暗号化等のセキュリティ通信を適用するのが一般的であり、モバイルエージェントの移動においても処理内容やモバイルエージェントにより持ち運ぶデータの内容に応じて適切にセキュリティの確保された通信プロトコルを使用する必要がある。
【００１０】
言い換えれば、従来のモバイルエージェント・システムにおいては、モバイルエージェントの移動に使用される通信プロトコルを指定できないため、ネットワーク構成に適した通信プロトコルを選択できずアプリケーションが実行されるサーバの場所によってはモバイルエージェントの転送ができなかったり、適切な通信プロトコルが使用できなかったりし、システムパフォーマンスを向上させることができないという問題があった。
【００１１】
また必要に応じてセキュリティの確保された通信プロトコルの指定が行えないため、インターネット等のセキュリティが確保されていないネットワークとＬＡＮ等のセキュリティが確保されたネットワークとが組み合わされたネットワーク上でモバイルエージェント・システムを適用する場合には、常に暗号化通信を行う必要が発生し、セキュリティが確保されたネットワーク上でモバイルエージェントのための暗号アルゴリズムや暗号鍵を設定するといった無駄な作業やコストが発生するという問題もあった。
【００１２】
この発明は上記のような問題点を解消するためになされたもので、モバイルエージェント・システムにおいてモバイルエージェントの移動に使用する通信プロトコルの指定を可能とすることにより、複数のネットワークにより構成されるシステムにおいても安全にかつ確実かつ安価にエージェントを移動させるモバイルエージェント・システムの実現を目的とする。
【００１３】
【課題を解決するための手段】
この発明に係るモバイルエージェント・システムは、広域ネットワークおよび／またはローカルネットワークにより接続された複数のサーバ装置間にて、任意のサーバ装置にて作成されたモバイルエージェントを旅程表に基づいて任意のサーバ装置以外のサーバ装置に転送を行うモバイルエージェント・システムにおいて、各サーバ装置はモバイルエージェントの転送プロトコルとして複数の通信プロトコルを支援するモバイルエージェント・サーバを備え、モバイルエージェント・サーバはモバイルエージェントの転送における各サーバ装置間のネットワークの構成に応じて適切な通信プロトコルを抽出してモバイルエージェントを転送するものである。
【００１４】
【発明の実施の形態】
実施の形態１．
図１はこの発明の実施の形態１のモバイルエージェント・システムの構成を示す図である。図において、サーバ装置Ｓ０１〜Ｓ０４は、自律的にサーバ装置Ｓ０１〜Ｓ０４間を移動し、移動先で指定されたプログラムを実行する機能をもつモバイルエージェントＭＡ（必要時に作成、転送される）と、モバイルエージェントＭＡに実行環境を提供するモバイルエージェント・サーバＭＳと、システムとしての機能を提供するアプリケーションＡ０１とを備える。
【００１５】
アプリケーションＡ０１にはアプリケーションＡ０１の機能の一部としてモバイルエージェントＭＡの旅程表ＭＡ０２を生成する旅程表生成機能Ａ０２を備えている。尚、ここでは説明の便宜上のため、サーバ装置Ｓ０１にてモバイルエージェントＭＡを生成することとし、旅程表生成機能Ａ０２はサーバ装置Ｓ０１にのみに記述している。しかしながら、モバイルエージェントＭＡはいずれのサーバ装置にて生成されてもよく、よって旅程表生成機能Ａ０２もいずれのサーバ装置にあってもよい。
【００１６】
そしてモバイルエージェント・サーバＭＳには、モバイルエージェント移動時に使用される複数の通信プロトコルを支援する通信プロトコル群にて成るエージェント転送プロトコルＭＳ０１と、モバイルエージェントＭＡの送信機能ＭＳ０２、および、受信機能ＭＳ０３とを備える。
【００１７】
モバイルエージェントＭＡにはモバイルエージェントＭＡが各サーバ装置Ｓ０１〜Ｓ０４上で実行するアプリケーションロジックの集まりアプリケーションロジックＭＡ０１を備えており、これはモバイルエージェントＭＡとともに移動する。そして、アプリケーションロジックＭＡ０１は必要に応じて各サーバ装置Ｓ０１〜Ｓ０４上のアプリケーションＡ０１と連携し、システム機能実現に必要なサービスや情報の提供を行う。また、モバイルエージェントＭＡの移動先サーバ装置と他の各サーバ装置上で実行するアプリケーションロジックＭＡ０１をリストにした旅程表ＭＡ０２を備えている。
【００１８】
また、サーバ装置Ｓ０１とサーバ装置Ｓ０２、および、サーバ装置Ｓ０３とサーバ装置Ｓ０４はローカルエリアネットワークＮ０１、Ｎ０２によりそれぞれ接続されている。そして、ローカルエリアネットワークＮ０１とローカルエリアネットワークＮ０２とはインターネットＮ０３にて接続されている。尚、この実施の形態１においては説明の便宜上、サーバ装置やローカルエリアネットワークの数をそれぞれ４、２としているが、これに限られることはなく、実際の適用において様々な組み合わせが適用可能である。そして、ローカルエリアネットワークＮ０１、Ｎ０２へのインターネットＮ０３からのアクセスを制限し、セキュリティを確保するファイアウォール等のセキュリティ装置Ｓ０５、Ｓ０６を備える。
【００１９】
次に上記のように構成された実施の形態１のモバイルエージェント・システムの動作について図２および図３を交えて説明する。まず、サーバ装置Ｓ０１上のアプリケーションＡ０１は他サーバ装置Ｓ０２〜Ｓ０４のアプリケーションＡ０１との連携が必要になったときにモバイルエージェントＭＡを生成する（図３のＳＴＥＰ０１、ＳＴＥＰ０２）。さらに連携が必要な他サーバ装置Ｓ０２〜Ｓ０４のネットワーク上の位置、例えばアドレスと、必要な連携に応じた実行ロジックとを指定した旅程表ＭＡ０２を旅程表生成機能Ａ０２により生成し、モバイルエージェントＭＡに設定する（図３のＳＴＥＰ０３）。
【００２０】
図２に具体的な旅程表の例を示す。図には、モバイルエージェントＭＡの移動するサーバ装置名Ｉ０１でホスト名やＩＰアドレス等ネットワーク上で一意なものを示す。また、モバイルエージェントＭＡがサーバ装置名Ｉ０１で指定されたサーバ装置上で実行する実行アプリケーションロジックＩ０２で例えばプログラム上のメソッド等の指定を示す。
【００２１】
モバイルエージェントＭＡは旅程表ＭＡ０２の上から順に指定されたサーバ装置に移動し、指定された実行ロジックを実行する。なお、図２に示すとおりここでは、旅程表ＭＡ０２のサーバ装置名Ｉ０１にモバイルエージェントＭＡが移動するサーバ装置のアドレスのみではなく、モバイルエージェントＭＡの転送の際に使用される通信プロトコルまでをＵＲＬ（Ｕｎｉｆｏｒｍ  ＲｅｓｏｕｒｃｅＬｏｃａｔｏｒ）をアプリケーションＡ０１の旅程表生成機能Ａ０２にて設定する。
【００２２】
次に、生成されたモバイルエージェントＭＡは、通常、生成されたサーバ装置Ｓ０１のモバイルエージェント・サーバＭＳに移動し、実行される。次に、アプリケーションロジックＭＡ０１を実行したモバイルエージェントＭＡは、旅程表ＭＡ０２を参照し、次の移動先のサーバ装置が指定されているかどうかを判断する（図３のＳＴＥＰ０４）。
【００２３】
そして、指定されていなければ終了する。指定されていれば、移動に指定されている通信プロトコルを取り出し、モバイルエージェント・サーバＭＳで必要なエージェント転送プロトコルＭＳ０１を抽出して起動する（図３のＳＴＥＰ０５）。例えば、図１の例で、サーバ装置Ｓ０１からサーバ装置Ｓ０２に移動する場合にはローカルエリアネットワークＮ０１を使用するため、特に通信プロトコルの制約がない。このため、比較的転送効率が高くプロトコルとして機能の制限が少ないＴＣＰ／ＩＰを使用しモバイルエージェントＭＡを転送する（図３のＳＴＥＰ０６）。次に、サーバ装置Ｓ０２に移動が完了したモバイルエージェントＭＡは、旅程表ＭＡ０２からサーバ装置Ｓ０２（移動先）での実行が指定されたアプリケーションロジックＭＡ０１を実行する（図３のＳＴＥＰ０７）。
【００２４】
次に、モバイルエージェントＭＡがインターネットＮ０３を経由して接続されたサーバ装置Ｓ０３に移動すると仮定する。通常ローカルエリアネットワークＮ０１とインターネットＮ０３とを接続する場合には、ローカルエリアネットワークＮ０１への外部からの侵入を防ぐためにファイアウォールやＤＭＺ（Ｄｅｍｉｌｉｔａｒｉｚｅｄ  Ｚｏｎｅ）等のセキュリティ装置Ｓ０５が配置されており、通常ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）やＳＭＴＰ（Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）等の一部の機能が限定された通信プロトコルでしか通信できない。
【００２５】
従って、モバイルエージェントＭＡの転送にもこれらのインターネットに対応した通信プロトコルを指定する必要がある。仮に旅程表ＭＡ０２において転送プロトコルとしてＨＴＴＰが指定されていた場合には、サーバ装置Ｓ０２のモバイルエージェント・サーバＭＳ０２はＨＴＴＰ通信プロトコルを行うエージェント転送プロトコルＭＳ０１を抽出して起動し（図３のＳＴＥＰ０５）、モバイルエージェントＭＡをＨＴＴＰを使用しサーバ装置Ｓ０３に転信する（図３のＳＴＥＰ０６）。
【００２６】
次に、モバイルエージェントを受信する側であるサーバ装置Ｓ０３は、サーバ装置Ｓ０２からのモバイルエージェントの送信要求を受け取る。例えばＨＴＴＰ通信プロトコルの場合であれば、サーバ装置Ｓ０３のモバイルエージェント・サーバＭＳが対応するエージェント転送プロトコルＭＳ０１を抽出して起動し、ＨＴＴＰで転送されたモバイルエージェントＭＡを受信、実行する。
【００２７】
上記のように構成された実施の形態１のモバイルエージェント・システムによれば、モバイルエージェントＭＡの使用する旅程表ＭＡ０２において、モバイルエージェントを転送する通信プロトコルを指定する機能をもたせ、かつ、モバイルエージェント・サーバＭＳにおいて複数のエージェント転送プロトコルＭＳ０１をサポートする。
【００２８】
さらに、モバイルエージェントを転送する通信プロトコルを指定する旅程表ＭＡ０２を生成するアプリケーションＡ０１により、複数のネットワークで構成されるシステムにおいても、モバイルエージェントＭＡがネットワーク中の全てのサーバ装置対象に移動することが可能となり、モバイルエージェントＭＡを用いてシステムを構築することが可能となる。
【００２９】
また、各サーバ装置Ｓ０１〜Ｓ０４上のモバイルエージェント・サーバＭＳは基本的に同じものである。但し、エージェント転送プロトコルＭＳ０１については、モジュール化が可能であり、使用しない通信プロトコルについては、故意にインストールしないことも可能である。例えばユーザの権限等によりインターネット経由での通信をさせたくないサーバ装置においては、インターネット用の通信プロトコルをインストールしないことにより、外部からまたは外部へのエージェント移動を制限することが容易に実現できるため、システムのセキュリティを向上させることができる。
【００３０】
なお、上記実施の形態１では、モバイルエージェントの転送のための通信プロトコルの指定において、旅程表のサーバ装置名にＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を指定する方式を用いたが、これに限られることは無く、例えば、図４に示すように旅程表ＭＡ０２を拡張し、転送プロトコルを指定する項目を設けるようにしてもよく、上記実施の形態１と同様の効果を得ることができる。
【００３１】
実施の形態２．
上記実施の形態１では、モバイルエージェント・サーバＭＳの内部機能としてモバイルエージェントの転送において複数の通信プロトコルを適用する例を記述したが、本実施の形態２では、例えば通信プロトコルの一部（ここではＨＴＴＰ通信プロトコル）の受信機能がモバイルエージェント・サーバＭＳで対応していない場合について説明する。
【００３２】
図５はこの発明の実施の形態２のモバイルエージェント・システムの構成を示す図である。図において、上記実施の形態１と同様の部分は同一符号を付して説明を省略する。但し、本実施の形態２のモバイルエージェント・サーバＭＳではＨＴＴＰの受信プロトコルをサポートしていないものとする。
【００３３】
図において、各サーバ装置Ｓ０１〜Ｓ０４に市販またはフリーソフト等既成のＷｅｂのアプリケーションサーバＡＳを設ける。そして、アプリケーションサーバＡＳには、その機能として標準でＨＴＴＰの通信プロトコルに対して受け付け可能なＷｅｂサーバＡＳ０１と、ＷｅｂアプリケーションサーバＡＳ上で実行されるサーブレット等でＨＴＴＰ受信機能ＡＳ０２とを設ける。このＨＴＴＰ受信機能ＡＳ０２は、モバイルエージェント・サーバＭＳと通信を行える機能を有する。
【００３４】
次に上記のように構成された実施の形態２のモバイルエージェント・システムの動作について説明する。まず、上記実施の形態１と同様にサーバ装置Ｓ０１上のアプリケーションＡ０１は他サーバ装置のアプリケーションとの連携が必要になったときにモバイルエージェントＭＡを生成し、旅程表ＭＡ０２を生成し、モバイルエージェントＭＡに設定する。この生成される旅程表ＭＡ０２は上記実施の形態１と同様である。生成されたモバイルエージェントＭＡは、旅程表ＭＡ０２を参照し、次の移動先のサーバ装置が指定されているかどうかを判断し、指定されている場合には、送信機能ＭＳ０２を通じて旅程表ＭＡ０２で移動に指定されているエージェント転送プロトコルＭＳ０１を起動する。
【００３５】
例えば、図５の例で、サーバ装置Ｓ０１からサーバ装置Ｓ０２に移動する場合には上記実施の形態１と同様ＴＣＰ／ＩＰを使用しモバイルエージェントＭＡを転送する。このときサーバ装置Ｓ０２においては、モバイルエージェント・サーバＭＳのエージェント受信機能ＭＳ０３が起動され、送信側と一致したエージェント転送プロトコルＭＳ０１を抽出して起動し、モバイルエージェントＭＡを受信する。サーバ装置Ｓ０２に移動が完了したモバイルエージェントＭＡは、旅程表ＭＡ０２からサーバ装置Ｓ０２での実行が指定されたアプリケーションロジックＭＡ０１を実行する。
【００３６】
次に、モバイルエージェントＭＡがインターネットＮ０３を経由して接続されたサーバ装置Ｓ０３にＨＴＴＰ通信プロトコルを使用して移動すると仮定する。サーバ装置Ｓ０２のモバイルエージェント・サーバＭＳはＨＴＴＰ通信プロトコルを行うエージェント転送プロトコルＭＳ０１を抽出して起動し、モバイルエージェントＭＡをＨＴＴＰ通信プロトコルでサーバ装置Ｓ０３に送信する。
【００３７】
モバイルエージェントＭＡを受信する側であるサーバ装置Ｓ０３は、サーバ装置Ｓ０２からのＨＴＴＰをＷｅｂサーバＡＳ０１にて受け取る。ＨＴＴＰのＵＲＬは予めアプリケーションサーバＡＳ内のＨＴＴＰ受信機能ＡＳ０２に割り当てられているため、ＷｅｂサーバＡＳ０１は受信したＨＴＴＰをＨＴＴＰ受信機能ＡＳ０２に引き渡す。
【００３８】
ＨＴＴＰ受信機能ＡＳ０２は、引き渡されたＨＴＴＰの内容からモバイルエージェントＭＡを取り出し同一装置上におかれたモバイルエージェント・サーバＭＳに引き渡す。モバイルエージェント・サーバＭＳは受け取ったモバイルエージェントＭＡを実行する。以降、旅程表ＭＡ０２に指定されている移動先と実行ロジックがなくなるまで同様の動作を繰り返す。
【００３９】
尚、上記実施の形態２においては、ＨＴＴＰを例に示したが、ＳＭＴＰ等のプロトコルについて既成のソフトウエアを利用することが可能である。このように、特定のプロトコルをサポートする既存の製品をモバイルエージェント・サーバと組み合わせて機能を向上させることが可能である。
【００４０】
上記のように構成された実施の形態２のモバイルエージェント・システムは、モバイルエージェント・システムにおいて指定した通信プロトコルによりモバイルエージェントを転送することが可能であり、上記実施の形態１と同様の効果を得ることができる。さらに既成のソフトウエアを利用することが可能であるため、モバイルエージェント・サーバについての改造量が少なくできるため、システム開発コストを大幅に低減することができる。
【００４１】
実施の形態３．
上記実施の形態１では、モバイルエージェントＭＡの旅程表ＭＡ０２においてモバイルエージェントの転送プロトコルを設定したが、サーバ装置間のネットワーク構成によりモバイルエージェントの転送プロトコルを決定できる場合においては、モバイルエージェント・サーバＭＳによりモバイルエージェント転送プロトコルを予め決定する方式も可能である。本実施の形態３ではこの場合について以下に説明する。
【００４２】
図６はこの発明の実施の形態３のモバイルエージェント・システムの構成を示す図である。図において、上記各実施の形態と同様の部分は同一符号を付して説明を省略する。モバイルエージェント・サーバＭＳに、あるサーバ装置から他のサーバ装置へ適用可能な転送プロトコルをリストにしたサーバ装置／転送プロトコルデータベースＭＳ０４と、プロトコル検索機能ＭＳ０５とを備える。
【００４３】
そして、サーバ装置／転送プロトコルデータベースＭＳ０４には、各サーバ装置Ｓ０１〜Ｓ０４間を接続するネットワークの種類、例えばローカルなネットワークで接続されているのか、インターネットにより接続されているのかにより、ＴＣＰ／ＩＰやＨＴＴＰ等の適したエージェントの通信プロトコルを予め設定しておく。また、プロトコル検索機能ＭＳ０５は、送信機能ＭＳ０２からの要求を受けてモバイルエージェントＭＡの旅程表ＭＡ０２の移動先に指定されたサーバ装置により、実行中のサーバ装置にあるサーバ装置／転送プロトコルデータベースＭＳ０４を検索し、検索した結果に一致するエージェント転送プロトコルＭＳ０１を抽出して起動し、モバイルエージェントの転送を行う。
【００４４】
次に上記のように構成された実施の形態３のモバイルエージェント・システムの動作について図７を交えて説明する。まず、上記各実施の形態と同様にサーバ装置Ｓ０１上のアプリケーションＡ０１は他サーバ装置のアプリケーションとの連携が必要になったときにモバイルエージェントＭＡを生成する（図７のＳＴＥＰ０１、ＳＴＥＰ０２）。さらに連携が必要な他サーバ装置Ｓ０２〜Ｓ０４のネットワーク上の位置、例えばアドレスと、必要な連携に応じた実行ロジックとを指定した旅程表ＭＡ０２を生成し、モバイルエージェントＭＡに設定する（図７のＳＴＥＰ０３）。
【００４５】
図８に具体的な旅程表の例を示す。図に示すように、上記各実施の形態と異なり本実施の形態３においては、旅程表にてモバイルエージェントの転送プロトコルを設定する指定は含まれない。次に、旅程表に次の移動先と実行ロジックの指定があるか否かを判断する（図７のＳＴＥＰ０４）。ないと判断されると処理は終了する。あると判断されると、生成されたモバイルエージェントＭＡは、旅程表ＭＡ０２で指定されたサーバ装置、例えば、サーバ装置Ｓ０２に送信される。
【００４６】
このとき、送信機能ＭＳ０２は、プロトコル検索機能ＭＳ０５を呼び出し、旅程表ＭＡ０２で指定されたサーバ装置の情報をもとに、転送に適切な通信プロトコルをサーバ装置／転送プロトコルデータベースＭＳ０４から検索し、送信機能ＭＳ０２に知らせる（図７のＳＴＥＰ１０）。そして、送信機能ＭＳ０２は、エージェント転送プロトコルＭＳ０１から検索されたエージェント転送プロトコルＭＳ０１を抽出して起動し、サーバ装置Ｓ０２へのエージェントの転送要求を発行する。
【００４７】
そして、サーバ装置Ｓ０２では、モバイルエージェント・サーバＭＳの受信機能ＭＳ０３でモバイルエージェントＭＡの転送要求を受け取り、エージェント転送プロトコルＭＳ０１から対応する通信プロトコルを抽出して起動し（図７のＳＴＥＰ０５）、モバイルエージェントＭＡを受信し（図７のＳＴＥＰ０６）、旅程表ＭＡ０２で指定されたアプリケーションロジックＭＡ０１を実行する（図７のＳＴＥＰ０７）。以後、旅程表ＭＡ０２で指定されたリストにて全ての移動先サーバ装置名と実行ロジックの処理が完了するまでＳＴＥＰ１０〜ＳＴＥＰ０７を繰り返す。全ての移動先サーバ装置名と実行ロジックの処理が完了した場合には、図７のＳＴＥＰ０４にてＮＯとなりモバイルエージェントＭＡの実行が終了する。
【００４８】
上記のように構成された実施の形態３のモバイルエージェント・システムは、あるサーバ装置から他のサーバ装置へ適用可能な転送プロトコルをリストにしたサーバ装置／転送プロトコルデータベースとサーバ装置名からこのデータベースを検索する機能を設けることにより、適切な通信プロトコルを設定することができ、上記各実施の形態と同様の効果を得ることができる。
【００４９】
また、モバイルエージェントを生成するサーバ装置（例えばサーバ装置Ｓ０１）において、他サーバ装置間のプロトコル（例えば、サーバ装置Ｓ０２とサーバ装置Ｓ０３とのプロトコル）を管理する必要がないため、複数のサーバ装置においてエージェントを生成し、かつネットワーク構成やサーバ装置構成の変更が多いシステムの場合には、システムの保守コストを大幅に削減することが可能である。
【００５０】
実施の形態４．
上記各実施の形態では暗号化について特に示さなかったが、暗号化を行う場合、一部または全てのサーバ装置間のエージェント転送通信を暗号化する必要がある場合においても、本方式が有効である。本実施の形態４は暗号化を含む場合について説明する。
【００５１】
例えば、インターネット上では通常はＨＴＴＰ等の平文（暗号文以外のものを指す）による通信を行うが、ユーザのプライベート情報送受信等、必要な場合にのみＨＴＴＰＳ（ＨＴＴＰ  Ｓｅｃｕｒｉｔｙ）を指定して通信を行うことがある。ＨＴＴＰＳ等の暗号化通信は暗号鍵の交換や暗号処理等が含まれるためＣＰＵやメモリ等の使用が大きく通信のオーバーヘッドも多くなる等、非暗号通信にくらべ高コストである。よって本来、モバイルエージェント・システムにおいては必要な場合のみ暗号化を行う等の制御が必要となる。
【００５２】
図９はこの発明の実施の形態４のモバイルエージェント・システムの構成を示す図である。図において、上記各実施の形態と同様の部分は同一符号を付して説明を省略する。本実施の形態４では図９に示すようにモバイルエージェント・サーバＭＳにＨＴＴＰＳ等の暗号通信プロトコル機能ＭＳ０６を備える。そして、旅程表ＭＡ０２において必要な部分のみ暗号通信プロトコルを指定することにより、一部のサーバ装置間のエージェント転送通信を暗号化することを可能とする。なお、図において暗号通信プロトコル機能ＭＳ０６は、説明上モバイルエージェント・サーバＭＳ内に記述したが、サーバ装置内に別プログラムとして存在してもよいことは言うまでもない。
【００５３】
次に上記のように構成された実施の形態４のモバイルエージェント・システムの動作について図１０を交えて説明する。まず、上記各実施の形態と同様に例えばサーバ装置Ｓ０１においてモバイルエージェントＭＡを生成し、旅程表ＭＡ０２を生成し、サーバ装置Ｓ０１でのアプリケーションロジックＭＡ０１を実行する（図１０のＳＴＥＰ０１〜ＳＴＥＰ０３）。
【００５４】
次に、次のモバイルエージェントの移動先と実行ロジックの指定があるか否かを判断する（図１０のＳＴＥＰ０４）。無い場合には処理終了と成る。そして、移動先としてサーバ装置Ｓ０２があった場合、ここではサーバ装置Ｓ０１とサーバ装置Ｓ０２とはローカルエリアネットワークＮ０１により接続されているためネットワークの安全性が確保されているため、暗号化を行う必要が無く、上記各実施の形態と同様にＴＣＰ／ＩＰによるモバイルエージェントの転送が指定される。
【００５５】
よって、移動先への転送プロトコルで暗号通信プロトコルが指定されているか否かの判断（図１０のＳＴＥＰ２０）でＮＯが選択される。次に、旅程表に指定された通信プロトコルを抽出して起動し（図１０のＳＴＥＰ０５）、指定された通信プロトコルでサーバ装置Ｓ０２にモバイルエージェントＭＡが転送される（図１０のＳＴＥＰ０６）。そして、サーバ装置Ｓ０２に転送されたモバイルエージェントＭＡはサーバ装置Ｓ０２で指定されたアプリケーションロジックＭＡ０１を実行する（図１０のＳＴＥＰ０７）。
【００５６】
次に、次の移動先で指定されたサーバ装置Ｓ０３へと移動を行おうとする（図１０のＳＴＥＰ０４）。この際、サーバ装置Ｓ０２とサーバ装置Ｓ０３とはインターネットＮ０３を介して接続されているため、暗号通信プロトコルが指定されるとする（図１０のＳＴＥＰ２０においてＹＥＳが選択される）。次に、送信元のサーバ装置Ｓ０２において暗号通信プロトコル機能ＭＳ０６が抽出され起動される（図１０のＳＴＥＰ２１）。
【００５７】
そして、エージェント転送プロトコルＭＳ０１とあわせてモバイルエージェントＭＡはＨＴＴＰＳ等の暗号化通信により転送される（図１０のＳＴＥＰ０５、ＳＴＥＰ０６）。次に、送信先であるサーバ装置Ｓ０３においても送信元サーバ装置Ｓ０２のエージェント転送要求により暗号通信プロトコル機能ＭＳ０６とエージェント転送プロトコルＭＳ０１とが起動され転送されたモバイルエージェントＭＡを受け取り、旅程表ＭＡ０２で指定されたアプリケーションロジックＭＡ０１を実行する（図１０のＳＴＥＰ０７）。以下同様に旅程表ＭＡ０２で指定された移動先のサーバ装置がなくなるまでエージェントの移動とアプリケーションロジックＭＡ０１の実行が繰り返される。
【００５８】
上記のように構成された実施の形態４のモバイルエージェント・システムは、通常のモバイルエージェントＭＡの転送においては、通常の通信にはＨＴＴＰ等非暗号化（平文）のプロトコルを指定する。そして、モバイルエージェントＭＡのアプリケーションロジックやデータで秘匿が必要な場合にのみ、転送プロトコルにＨＴＴＰＳ等暗号通信プロトコルを指定することより、モバイルエージェント・システムにおいて、必要時のみセキュアな通信を実現することが可能となる。
【００５９】
よって、無駄な暗号化処理が不要となり、システムの開発コストを低減できるとともに無駄な暗号通信を減らすことが可能となり通信コストの削減やシステム全体のパフォーマンスを向上させることができる。
【００６０】
実施の形態５．
上記各実施の形態においては、複数サーバ装置を単一のモバイルエージェントにより巡回する例について示したが、複数のサーバ装置を複数のモバイルエージェントにより並行して実行するような場合においても本発明は有効である。本実施の形態５では複数のモバイルエージェントを並行して実行する場合について説明する。
【００６１】
図１１はこの発明の実施の形態５のモバイルエージェント・システムの構成を示す図である。図において、上記各実施の形態と同様の部分は同一符号を付して説明を省略する。図に示すように複数のサーバ装置Ｓ０１〜Ｓ０４がインターネットＮ０３を介して接続されている場合を想定する。なお、本実施の形態５ではセキュリティ装置は説明上必要がないため省略している。また、ここではモバイルエージェントＭＡはデータ収集のために実行される場合について説明する。
【００６２】
上記のように構成された実施の形態５のモバイルエージェント・システムの動作について図１２を交えて説明する。あるサーバ装置、例えばサーバ装置Ｓ０１において、インターネットＮ０３を経由してネットワーク接続される複数のサーバ装置から情報を収集するような場合、まずサーバ装置Ｓ０１において各サーバ装置Ｓ０２〜Ｓ０４への複数のモバイルエージェントＭＡを生成する（図１２のＳＴＥＰ３０、ＳＴＥＰ３１）。
【００６３】
次に、各サーバ装置Ｓ０２〜Ｓ０４に対して、旅程表生成機能Ａ０２によりそれぞれの旅程表ＭＡ０２を生成し、上記各実施の形態と同様に各旅程表にて、移動先として各サーバ装置Ｓ０２〜Ｓ０４名称、エージェント転送通信プロトコル、アプリケーションから情報を収集するときに使用されるアプリケーションロジックＭＡ０１を指定する（図１２のＳＴＥＰ３２）。
【００６４】
この時、サーバ装置Ｓ０１から各サーバ装置Ｓ０２〜Ｓ０４へのエージェント転送プロトコルには平文の通信プロトコル例えばＨＴＴＰを指定し、各サーバ装置Ｓ０２〜Ｓ０４からサーバ装置Ｓ０１へのエージェント転送通信プロトコルには暗号化通信プロトコル例えばＨＴＴＰＳを指定する。この旅程表ＭＡ０２の具体例を図１３に示す。
【００６５】
生成されたモバイルエージェントＭＡは、モバイルエージェント・サーバＭＳにより指定されたエージェント転送プロトコルＭＳ０１によりそれぞれサーバ装置Ｓ０２〜Ｓ０４へ転送される（図１２のＳＴＥＰ３３、ＳＴＥＰ３４）。この時点においては、モバイルエージェントＭＡはまだデータを保有していないため暗号化なしの通信プロトコルが選択される。
【００６６】
次に、各サーバ装置Ｓ０２〜Ｓ０４に移動した各モバイルエージェントＭＡは、アプリケーションロジックＭＡ０１を実行することにより各サーバ装置Ｓ０２〜Ｓ０４のアプリケーションＡ０１と連携して必要なデータを収集する（図１２のＳＴＥＰ３５）。次に、各サーバ装置Ｓ０２〜Ｓ０４でデータを収集した各モバイルエージェントＭＡはデータを保存するためサーバ装置Ｓ０１に戻る。そしてこの時、各サーバ装置Ｓ０２〜Ｓ０４のモバイルエージェント・サーバＭＳは、使用するエージェント転送プロトコルを旅程表ＭＡ０２の帰路用のエージェント転送プロトコルにより切り替える。
【００６７】
すなわち収集したデータに機密情報が含まれる場合には、図１２のＳＴＥＰ３２で暗号化された通信プロトコルを旅程表ＭＡ０２に予め指定しておくことにより、図１２のＳＴＥＰ３６でＹＥＳに分岐し暗号通信プロトコル機能ＭＳ０６を起動する（図１２のＳＴＥＰ３７ａ）。また、データに機密情報が含まれていない場合には、旅程表ＭＡ０２に暗号化しない通信プロトコルを予め指定しておくことにより、図１２のＳＴＥＰ３６でＮＯに分岐し非暗号化の通信プロトコルを起動する（図１２のＳＴＥＰ３７ｂ）。
【００６８】
各サーバ装置Ｓ０２〜Ｓ０４のモバイルエージェント・サーバＭＳは送信機能ＭＳ０２により、モバイルエージェントＭＡをサーバ装置Ｓ０１に転送する（図１２のＳＴＥＰ３８）。そして、サーバ装置Ｓ０１に戻った各モバイルエージェントＭＡは、収集したデータを格納するためのアプリケーションロジックＭＡ０１を実行し終了する（図１２のＳＴＥＰ３９、ＳＴＥＰ４０）。
【００６９】
上記のように構成された実施の形態５のモバイルエージェント・システムは、例えば複数のサーバ装置からあるサーバ装置に対して秘匿する必要のあるデータ集約を行うようなモバイルエージェントの転送において、データを集約するサーバ装置から各サーバ装置Ｓ０１〜Ｓ０４の移動においてはＨＴＴＰ等平文の通信プロトコルを指定し、データ収集後の各サーバ装置Ｓ０１〜Ｓ０４からデータを集約するサーバ装置へのモバイルエージェントの転送においては暗号化された通信プロトコルを指定する機能を実現することができる。
【００７０】
よって、サーバ装置上の暗号化処理に必要なリソースやコストを低減することが可能となる。通常、暗号化処理はＣＰＵパワーやメモリ等大きなリソースやコストが必要とされるため、システム規模が大きいほど、データを集約するサーバ装置への負荷が大きくなり、サーバ装置を導入コストの増大やシステムのスループットへの影響が大きくなる。したがって、本実施の形態５のように不必要な暗号化処理を削減することはシステムコストの低減やスループットの向上において大いに効果的である。
【００７１】
また、暗号転送プロトコルとして標準的に使用されているＨＴＴＰＳすなわちＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ）を適用した場合には、その仕様上、公開鍵方式をもちいた鍵交換が行われることになる。すなわちＳＳＬでは、クライアント側はサーバ側から公開鍵を入手し、一時的な共通鍵生成し、この公開鍵で生成した共通鍵を暗号化しサーバ側に返送する。サーバ側では、公開鍵に対応する秘密鍵を使用して共通鍵を復号化し、これによりクライアント側とサーバ側で共通鍵を使用した通信を行うという手順をとる。
【００７２】
このことを従来のモバイルエージェント転送の方式のように、全てのエージェントの転送を暗号化して行う例を考える場合、データを集約するサーバ装置から各サーバ装置へのモバイルエージェントの転送をＨＴＴＰＳにより行うとすると、各データ装置がサーバ側、データを集約するサーバ装置がクライアント側となるため、各サーバ装置に対して個別に秘密鍵をインストールする必要が発生する。また秘密鍵はセキュリティ上定期的に更新する必要がある。このためシステムの開発、維持に多くのコストが発生することになる。
【００７３】
しかしながら、本実施の形態５のモバイルエージェント・システムを適用する場合には、データを集約するサーバ装置Ｓ０１から各サーバ装置Ｓ０２〜Ｓ０４への移動においては平文によりエージェントの転送を行い、データが移動する各サーバ装置Ｓ０２〜Ｓ０４からデータを集約するサーバ装置Ｓ０１への転送のみ暗号化を行うため、データを集約するサーバ装置Ｓ０１がサーバ側となり各サーバ装置Ｓ０２〜Ｓ０４はクライアント側になるのみである。従って、データを集約するサーバ装置にのみ秘密鍵をインストールするためのシステムの開発コストや維持コストを大幅に低減できることができる。
【００７４】
実施の形態６．
上記実施の形態５では旅程表ＭＡ０２において予め暗号化、非暗号化を含めたエージェント転送プロトコルを指定する例を示したが、これに限られることは無く、モバイルエージェントＭＡが収集したデータ内容により、モバイルエージェントＭＡ自身により秘匿する必要の有無を判断し、必要な場合には暗号化通信プロトコルを指定した旅程表ＭＡ０２を自ら生成し、暗号化された通信プロトコルにより転送する方式も可能である。本実施の形態６はこの場合について説明する。
【００７５】
図１４はこの発明の実施の形態６のモバイルエージェント・システムの構成を示す図である。図において、上記各実施の形態と同様の部分は同一符号を付して説明を省略する。図に示すように、ここではモバイルエージェント・サーバＭＳにおいてアクセス制御機能ＭＳ０７を追加する。これは、サーバ装置に転送されてきたモバイルエージェントＭＡに対して、エージェントがアクセスするデータやアプリケーションがサーバ装置で秘匿されるべき情報が含まれているか否かを判断し、秘匿される情報が含まれている場合には、モバイルエージェントＭＡに対して秘匿されるデータが含まれることを通知する機能である。
【００７６】
次に上記のように構成された実施の形態６のモバイルエージェント・システムの動作について図１５を交えて説明する。まず、上記実施の形態５と同様にサーバ装置Ｓ０１において各サーバ装置Ｓ０２〜Ｓ０４への複数のモバイルエージェントＭＡ、旅程表ＭＡ０２を生成する（図１５のＳＴＥＰ３０〜ＳＴＥＰ３２）。この時、モバイルエージェントＭＡの各サーバ装置Ｓ０１〜Ｓ０４間のエージェント転送プロトコルとしては、非暗号化通信プロトコルを指定しておく。
【００７７】
生成された各モバイルエージェントＭＡは各サーバ装置Ｓ０２〜Ｓ０４に転送されアプリケーションロジックＭＡ０１を実行する（図１５のＳＴＥＰ３３〜ＳＴＥＰ３５）。この時各サーバ装置Ｓ０２〜Ｓ０４ではモバイルエージェントＭＡのアクセスしたデータやアプリケーションがサーバ装置内の秘匿データを含むかどうかを監視し、含んでいる場合には、各サーバ装置Ｓ０２〜Ｓ０４内のモバイルエージェントＭＡに通知する。なお、各サーバ装置Ｓ０２〜Ｓ０４内のデータで秘匿すべきデータであるかどうかについては、各サーバ装置Ｓ０２〜Ｓ０４の設置される環境や状況により異なるため各サーバ装置Ｓ０２〜Ｓ０４設定時に予め設定しておく。
【００７８】
各モバイルエージェントＭＡはアプリケーションロジックＭＡ０１の実行中または実行完了後にアクセスしたデータに秘匿データが含まれるかどうかを判断する（図１５のＳＴＥＰ４１）。秘匿するデータが含まれていない場合には、ＮＯに分岐し旅程表ＭＡ０２に予め指定されているエージェント転送プロトコルを起動しサーバ装置Ｓ０１に転送される（図１５のＳＴＥＰ３６、ＳＴＥＰ３７ｂ、ＳＴＥＰ３８）。
【００７９】
秘匿するデータが含まれていなる場合には、ＹＥＳに分岐し各モバイルエージェントＭＡにより自らに設定された旅程表ＭＡ０２を変更し、暗号化通信プロトコルを設定する（図１５のＳＴＥＰ４２）。この旅程表ＭＡ０２によりモバイルエージェントＭＡは暗号化通信プロトコルによりサーバ装置Ｓ０１に転送される（図１５のＳＴＥＰ３６、ＳＴＥＰ３７ａ、ＳＴＥＰ３８）。転送された各モバイルエージェントＭＡは、収集したデータを格納するためのアプリケーションロジックＭＡ０１を実行し終了する（図１５のＳＴＥＰ３９、ＳＴＥＰ４０）。
【００８０】
上記のように構成された実施の形態６のモバイルエージェント・システムは、モバイルエージェント自身により、旅程表を実行するアプリケーションロジックの内容に応じて、モバイルエージェントのアクセスしたデータに秘匿されるべきデータが含まれるかどうかを自動的に判断し旅程表を書き換えることにより、上記実施の形態５と同様の効果を得ることができる。
【００８１】
このように、各サーバ装置Ｓ０１〜Ｓ０４が設置される場所やネットワーク環境や状況等によりモバイルエージェントがアクセスするデータやアプリケーションの内容が秘匿する必要があるか否かは異なることもありうる。例えば一部のサーバ装置が全て同じローカルエリアネットワークで接続される場合には、アクセス内容については秘匿を行う必要がないが、インターネットを経由して接続されるような場合には類似の内容でも秘匿する必要がある。
【００８２】
このような場合において、本実施の形態６では、モバイルエージェントを生成するサーバ装置側がモバイルエージェントを転送する先のサーバ装置のアクセスする内容が秘匿する必要があるかどうかを判断する必要がなく、各サーバ装置Ｓ０１〜Ｓ０４で個々に設定を行えるため、システム構成を柔軟に変更することができるという利点がある。
【００８３】
実施の形態７．
上記各実施の形態においては、モバイルエージェントの複数の転送プロトコルをサポートする例を示したが、本実施の形態７ではこの機能を利用して、複数のモバイルエージェントが並行して実行されるシステムにおいて、モバイルエージェントの転送におけるプライオリティ制御を実現する場合について説明する。
【００８４】
図１６はこの発明の実施の形態７のモバイルエージェント・システムの構成を示す図である。図において、上記各実施の形態と同様の部分は同一符号を付して説明を省略する。図に示すように、ＨＴＴＰ受信機能ＡＳ０３において予め設定された異なるプライオリティで動作する複数の受信スレッドＡＳ０４を備える。
図１７、図１８は実施の形態７にて使用される旅程表ＭＡ０２の例を示す。
【００８５】
次に上記のように構成された実施の形態７のモバイルエージェント・システムの動作について説明する。まず、サーバ装置Ｓ０１上のアプリケーションＡ０１は、緊急性の低い処理、例えば定期的な各サーバ装置Ｓ０１〜Ｓ０４の定常的なデータ収集処理を行うとする。サーバ装置Ｓ０１のアプリケーションＡ０１は上記各実施の形態と同様にモバイルエージェントＭＡを生成し、図１７に示すような旅程表ＭＡ０２を生成し、モバイルエージェントＭＡに旅程表ＭＡ０２を設定する。
【００８６】
この時、旅程表ＭＡ０２の移動先サーバ装置名（使用プロトコル）のＵＲＬをもちいてＨＴＴＰ受信機能ＡＳ０３として実行プライオリティの低い受信スレッドＡＳ０４を指定する（具体的には、図１７の移動先サーバ装置名（使用プロトコル）を“・・・・・Ｐｒｉｏ１０”と作成する。Ｐｒｉｏの後の数値が大きいほど緊急性を有しないものを示している。ここでは１０の度合いとなる）。生成されたモバイルエージェントＭＡは、モバイルエージェント・サーバＭＳにより旅程表ＭＡ０２で指定されたサーバ装置、例えばサーバ装置Ｓ０２に、指定された転送プロトコルＨＴＴＰで転送される。
【００８７】
サーバ装置Ｓ０２では、サーバ装置Ｓ０１からのＨＴＴＰをＷｅｂサーバＡＳ０１で受信し、指定されたＵＲＬを参照することにより指定された受信スレッドＡＳ０４へ処理を引き渡す。引き渡された受信スレッドＡＳ０４は予め低い実行プライオリティで起動されるように設定されており、その実行プライオリティにて受信処理を実行するため、他のアプリケーションＡ０１の実行を妨げることなく、モバイルエージェント・サーバＭＳへのモバイルエージェントＭＡの引渡しを行う。このように、モバイルエージェントＭＡの実行プライオリティは、モバイルエージェントＭＡ自体により制御されるため、必要であれば低い実行プライオリティを設定しアプリケーションロジックＭＡ０１の実行を行うことができる。
【００８８】
次に、サーバ装置Ｓ０１上のアプリケーションＡ０１において、緊急性の高い処理、例えば急な各サーバ装置Ｓ０１〜Ｓ０４の制御処理が発生した場合には、実行優先度の高い受信スレッドＡＳ０４を指定した図１８に示すような旅程表ＭＡ０２を作成し（具体的には、図１８の移動先サーバ装置名（使用プロトコル）の“・・・・・Ｐｒｉｏ１”と作成する。Ｐｒｉｏの後の数値を小さくし緊急性を有することを設定している。）、モバイルエージェントＭＡの生成を行い、転送を行う。
【００８９】
この時、受信側のサーバ装置、例えばサーバ装置Ｓ０２においては、先ほどと同様にＷｅｂサーバＡＳ０１によりＨＴＴＰの受信が行われるが、実際の受信処理はＵＲＬで指定された実行優先度の高い受信スレッドＡＳ０４により受信処理が行われ、モバイルエージェント・サーバＭＳへのモバイルエージェントＭＡ引き渡しが行われる。
【００９０】
この時、もし実行優先度の低い受信スレッドＡＳ０４で受信処理中である場合には、実行優先度の低い受信処理が中断される。また、他のアプリケーションＡ０１でも実行優先度の低いものはその処理が中断されることになる。すなわち緊急度の高い受信処理を優先し実行することが可能となる。
【００９１】
従来のモバイルエージェント・システムにおいては、モバイルエージェントの転送処理は送信側サーバ装置のリクエストにより発行されるため受信側のサーバ装置の状態に無関係に送信されてくるという問題があった。例えば、モバイルエージェントの受信機能を受信側サーバ装置のアプリケーションと同じもしくはアプリケーションより高い実行優先度に設定した場合には、受信側サーバ装置においてリアルタイム性の要求されるアプリケーションが実行を行っている間でもエージェントの転送要求が行われた場合に処理が中断されることとなる。逆にモバイルエージェントの受信機能の実行優先度をリアルタイム性のあるアプリケーションよりも低く設定した場合には、逆にモバイルエージェントによる制御情報等のリアルタイム性要求される実行優先度の高いロジックが実行優先度の低いアプリケーションにより実行遅延を引き起こすという問題が起こる。
【００９２】
しかしながら本実施の形態７のモバイルエージェント・システムによれば、モバイルエージェントの受信スレッドにおいて実行優先度を設定し、エージェントの実行するロジック内容に応じて受信スレッドを使い分ける。このことにより、ＨＴＴＰヘッダ処理等のエージェント受信処理における初期部分のやり取りを除いて、エージェントの受信処理自体を受信側のサーバ装置側の状態により制御することが可能となる。
【００９３】
例えば緊急性の高いリアルタイム性の要求されるモバイルエージェントの受信処理は高プライオリティで実行され、データ収集等の比較的リアルタイム性の高くないモバイルエージェントの受信処理は、他のリアルタイム性の要求されるアプリケーションよりも低いプライオリティで実行することが実現できるようになる。よって、リアルタイムシステムにおけるモバイルエージェントを適用することが可能となりモバイルエージェントの特徴を生かしたリアルタイムシステムを構築することができる。
【００９４】
【発明の効果】
以上のようにこの発明によれば、広域ネットワークおよび／またはローカルネットワークにより接続された複数のサーバ装置間にて、任意のサーバ装置にて作成されたモバイルエージェントを旅程表に基づいて任意のサーバ装置以外のサーバ装置に転送を行うモバイルエージェント・システムにおいて、各サーバ装置はモバイルエージェントの転送プロトコルとして複数の通信プロトコルを支援するモバイルエージェント・サーバを備え、モバイルエージェント・サーバはモバイルエージェントの転送における各サーバ装置間のネットワークの構成に応じて適切な通信プロトコルを抽出してモバイルエージェントを転送するので、様々な通信プロトコルに対応したモバイルエージェントの転送が可能と成るモバイルエージェント・システムを提供することができる。
【図面の簡単な説明】
【図１】この発明の実施の形態１によるモバイルエージェント・システムの構成を示す図である。
【図２】図１に示したモバイルエージェント・システムでの旅程表の例を示す図である。
【図３】図１に示したモバイルエージェント・システムの動作を説明するためのフローチャートを示す図である。
【図４】図１に示したモバイルエージェント・システムでの他の例の旅程表を示す図である。
【図５】この発明の実施の形態２のモバイルエージェント・システムの構成を示す。
【図６】この発明の実施の形態３のモバイルエージェント・システムの構成を示す。
【図７】図６に示したモバイルエージェント・システムの動作を説明するためのフローチャートを示す図である。
【図８】図６に示したモバイルエージェント・システムでの旅程表の例を示す図である。
【図９】この発明の実施の形態４のモバイルエージェント・システムの構成を示す。
【図１０】図９に示したモバイルエージェント・システムの動作を説明するためのフローチャートを示す図である。
【図１１】この発明の実施の形態５のモバイルエージェント・システムの構成を示す。
【図１２】図１１に示したモバイルエージェント・システムの動作を説明するためのフローチャートを示す図である。
【図１３】図１１に示したモバイルエージェント・システムでの旅程表の例を示す図である。
【図１４】この発明の実施の形態６のモバイルエージェント・システムの構成を示す。
【図１５】図１４に示したモバイルエージェント・システムの動作を説明するためのフローチャートを示す図である。
【図１６】この発明の実施の形態７のモバイルエージェント・システムの構成を示す。
【図１７】図１６に示したモバイルエージェント・システムでの旅程表の例を示す図である。
【図１８】図１６に示したモバイルエージェント・システムでの旅程表の例を示す図である。
【符号の説明】
Ａ０１  旅程表生成機能、ＡＳ０４  受信スレッド、
ＭＡ  モバイルエージェント、ＭＡ０２  旅程表、
ＭＳ  モバイルエージェント・サーバ、
ＭＳ０１  エージェント転送プロトコル、
ＭＳ０４  サーバ装置／送信プロトコルデータベース、
ＭＳ０５  プロトコル検索機能、ＭＳ０６  暗号通信プロトコル機能、
ＭＳ０７  アクセス制御機能、Ｎ０１  ローカルネットワーク、
Ｎ０３  インターネット、Ｓ０１，Ｓ０２，Ｓ０３，Ｓ０４  サーバ装置、
Ｓ０５，Ｓ０６  セキュリティ装置。
【図１】
2004303106.tif 000003
【図２】
2004303106.tif 000004
【図３】
2004303106.tif 000005
【図４】
2004303106.tif 000006
【図５】
2004303106.tif 000007
【図６】
2004303106.tif 000008
【図７】
2004303106.tif 000009
【図８】
2004303106.tif 000010
【図９】
2004303106.tif 000011
【図１０】
2004303106.tif 000012
【図１１】
2004303106.tif 000013
【図１２】
2004303106.tif 000014
【図１３】
2004303106.tif 000015
【図１４】
2004303106.tif 000016
【図１５】
2004303106.tif 000017
【図１６】
2004303106.tif 000018
【図１７】
2004303106.tif 000019
【図１８】
2004303106.tif 000020