(57)【特許請求の範囲】
【請求項１】
ネットワーク上を移動するエージェントに活動空間を与えるエージェントプラットフォーム（ＡＰ）が実装された移動エージェント対応のネットワーク端末において、
自身のＡＰへのエージェントの転入および自身のＡＰからのエージェントの転出を管理する手段と、
転入してきたエージェントを管理するホームＡＰへ、当該エージェントに固有のエージェントＩＤおよび自身のＡＰのアドレスを通知する手段と、
自身のＡＰから他のＡＰへ移動したエージェントのＩＤおよび移動先ＡＰのアドレスを対応付けて記憶する手段と、
宛先となるエージェントのＩＤを含むメッセージを受信する手段と、
前記宛先となるエージェントのＩＤに基づいて前記記憶手段を検索し、その移動先ＡＰを検索する手段と、
前記受信メッセージを前記移動先ＡＰへ転送する手段と、
前記記憶手段の登録内容を更新する手段とを含み、
前記記憶手段には、自身のＡＰに存在しているエージェントのＩＤ、自身のＡＰをホームＡＰとするエージェントのＩＤおよびその移動先である現ＡＰのアドレス、ならびに自身のＡＰに存在していたエージェントのＩＤおよびその転出先である次ＡＰのアドレスが記憶され、
前記受信メッセージが、その宛先となるエージェントのＩＤと予め対応付けられた、自身のＡＰ、現ＡＰおよび次ＡＰのいずれかへ転送され、
前記記憶手段にはさらに、自身のＡＰに存在していたエージェントが他のＡＰに存在していた他のエージェントと通信を行った際の通信履歴として、通信先エージェントのＩＤおよび通信先ＡＰのアドレスが対応付けられて記憶され、
前記宛先となるエージェントのＩＤが前記通信先エージェントのＩＤとして既登録であれば、前記受信メッセージが前記通信先ＡＰへ転送されることを特徴とする移動エージェント対応のネットワーク端末。
【請求項２】
前記記憶手段には、前記自身のＡＰに存在していたエージェントのＩＤおよびその次ＡＰのアドレスと共に、当該エージェントの転入元である前ＡＰのアドレスが記憶され、さらに、
前記次ＡＰおよび前ＡＰへ、経路変更依頼メッセージを送信する手段と、
受信した経路変更依頼メッセージに応答して次ＡＰのアドレスを変更する手段と、
受信した経路変更依頼メッセージに応答して前ＡＰのアドレスを変更する手段とを含むことを特徴とする請求項１に記載の移動エージェント対応のネットワーク端末。
【請求項３】
ネットワーク端末に実装されたエージェントプラットフォーム（ＡＰ）上を移動するエージェント宛にメッセージを送信する移動エージェントへのメッセージ送信方法において、
メッセージの送信元が、その宛先となるエージェントのホームＡＰへ、当該宛先となるエージェントに固有のエージェントＩＤを含むメッセージを送信する第１手順と、
前記メッセージを受信したホームＡＰが、そのエージェントＩＤに基づいて宛先となるエージェントの有無を判定し、宛先となるエージェントが既に存在しなければ、前記エージェントＩＤと予め対応付けられた移動先ＡＰへ前記メッセージを転送する第２手順と、
前記転送されたメッセージを受信した移動先ＡＰが、そのエージェントＩＤに基づいて宛先となるエージェントの有無を判定し、宛先となるエージェントが存在すれば、当該宛先となるエージェントに前記メッセージを転送し、宛先となるエージェントが既に存在しなければ、前記エージェントＩＤと予め対応付けられた他の移動先ＡＰへ前記メッセージを転送する第３手順とを含み、
前記他の移動先ＡＰに宛先となるエージェントが存在しなければ、前記第３手順が繰り返され、
前記各ＡＰには、自身のＡＰに存在しているエージェントのＩＤ、自身をホームＡＰとするエージェントのＩＤおよびその移動先である現ＡＰのアドレス、ならびに自身のＡＰに存在していたエージェントのＩＤおよびその転出先である次ＡＰのアドレスが記憶され、
前記受信メッセージが、その宛先となるエージェントのエージェントＩＤと予め対応付けられた、自身のＡＰ、現ＡＰおよび次ＡＰのいずれかへ転送され、
前記各ＡＰにはさらに、自身のＡＰに存在していたエージェントが他のＡＰに存在していた他のエージェントと通信を行った際の通信履歴として、通信先エージェントのＩＤおよび通信先ＡＰのアドレスが対応付けられて記憶され、
前記宛先となるエージェントのＩＤが前記通信先エージェントのＩＤとして既登録であれば、前記受信メッセージが前記通信先ＡＰへ転送されることを特徴とする移動エージェントへのメッセージ送信方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークに接続された複数のネットワーク端末間を移動しながらプログラムを実行する移動エージェントの技術に係り、特に、移動エージェント間でのメッセージ通信をリアルタイムかつ通信遅延を生じさせることなく実行できる移動エージェント対応のネットワーク端末および移動エージェントへのメッセージ送信方法に関する。
【０００２】
【従来の技術】
移動エージェントは、ネットワーク上のホスト・コンピュータ間を移動あるいは巡回して要求内容（例えば情報検索・収集）を実行する自律的なソフトウェアであり、ネットワーク上に点在する情報や計算リソースなどを有機的に利用するための基盤技術として期待されている。
【０００３】
図１５は、移動エージェントが適用されるネットワークの構成を模式的に示した図である。各ネットワーク端末T（T1，T2，T3）は、パーソナルコンピュータ、携帯電話あるいはPDA等であり、各ネットワーク端末Tには、移動エージェントに対して実行空間を提供するエージェントプラットフォーム（AP）が実装されている。ネットワーク端末T1のAP1がエージェントAへメッセージを送信する場合、AP1はエージェントAが存在すると予測されるAP2に宛てて、前記エージェントAに固有のエージェントIDを指定してメッセージを送信する。このとき、エージェントAが宛先AP2に存在していれば、当該エージェントAにメッセージが届くことになる。しかしながら、エージェントAが既にAP3へ移動してしまっていると、メッセージが宛先となるエージェント（以下、宛先エージェントと表現する場合もある）Aに届かなくなる。したがって、宛先エージェントAが何処に移動しても、これを追跡してメッセージを届けられるようにする技術が必要となる。
(1)モバイルIP
【０００４】
モバイルIPでは、移動端末が移動して新たなドメインに入ったときに、ホームエージェントに対して現在位置(宛先)を通知する。送信者が移動端末にメッセージを送信する場合は、その移動端末のホームエージェントに対してメッセージを送信することで、送信者が移動端末の移動を意識することなく、フォーリンエージェントを介して移動端末に届く仕組みを提供している。また、拡張機能として、送信者が移動端末の宛先を取得すると、ホームエージェントを介さない通常のIP通信と同様の直接通信が可能となる仕組みも提案されている。
(2)IBM MQシリーズ
【０００５】
IBM MQシリーズは、複数のアプリケーションを一定のルールに基づいて統合するためのメッセージブローカー製品であり、メッセージのルーティングやメッセージ・フォーマットの動的な変換が可能である。送信キューおよび受信キューを実装し、アプリケーションと通信機能とが完全に分離されている。そのため、送信側はローカルの送信キューに送信するメッセージを入れるだけで送信完了とみなすことができ、受信側はローカルの受信キューをポーリングすることで受信確認をする。送信キューと受信キューとの間でネットワークを介した通信が行われる。よって、非同期通信によるアプリケーション間のメッセージ通信を容易に実現可能としている。さらに、キューを端末から分離したシステムとして、E-mailやJMS(Java（登録商標） Message Service)等がある。
(3)JADE
【０００６】
JADEは、モバイルエージェントをサポートするFIPA準拠のエージェントプラットフォームであり、エージェントが移動すると「Transit」という状態になる。移動シーケンスが完了するまでに届いたメッセージはバッファして、移動が完了すると転送する仕組みを持っている。
(4)特開平１０−１３４６１号公報
【０００７】
受信者の行動予定を反映させて適切な伝送媒体と宛先にメッセージの自動配送を行い、更に、メッセージの配送が完了しないうちに受信者が所在を移動した場合でも、自動的に適切な伝送媒体と宛先を再選択し受信者を追跡してメッセージの自動配送を行うことにより、システムの操作性を向上させたメッセージ配送支援システム及びメッセージ配送支援方法である。
【０００８】
【発明が解決しようとする課題】
上記した従来技術は、それぞれ以下のような技術課題を抱えていた。
(1)「モバイルIP 」は、最初にホームエージェント経由で通信すれば、送信先の現在の宛先を知ることができるため、2回目以降はホームエージェントを介さないで送信先を直接指定して送信可能である。しかしながら、送信先が移動した場合には、そのエラー処理に加えて必ずホームエージェントを介する通信が必要なため、この仕組みをそのままアプリケーションレベルでのメッセージ送信にマッピングすると大きな遅延が発生する原因となる。
(2)「IBM MQシリーズ」では、受信側がキューに対して常にポーリングする必要であり、原理的にリアルタイムな通信が不可能なので通信遅延が必ず生じる。
(3)「JADE」では、移動が完了すると移動元では「GONE」という状態が保持され、送信元にエラーを返す。送信側はそのエラーに対する専用の処理を実装しなければならないため、送信側はJADEの実装規定に沿った実装が必要であり、柔軟性がない。
(4)特開平１０−１３４６１号公報では、受信者の行動履歴が全て管理サーバに登録されているので、受信者が当所の居所から移動してしまうと、その都度、管理サーバにアクセスして受信者の所在地を確認しなければならなかった。
【０００９】
本発明の目的は、上記した従来技術の課題を解決し、ネットワーク端末間を頻繁に移動するエージェントに対してメッセージを送信する場合に、宛先検索などの送信側の処理を軽減し、かつ通信遅延の少ないメッセージ送信を可能にした移動エージェント対応のネットワーク端末および移動エージェントへのメッセージ送信方法を提供することにある。
【００１０】
【課題を解決するための手段】
上記した目的を達成するために、本発明は、以下のような手段を講じた点に特徴がある。
【００１１】
(1)ネットワーク上を移動するエージェントに活動空間を与えるエージェントプラットフォーム（AP）が実装された移動エージェント対応のネットワーク端末において、自身のAPへのエージェントの転入および自身のAPからのエージェントの転出を管理する手段と、転入したエージェントのホームAPへ、当該エージェントのIDおよび自身のAPのアドレスを通知する手段と、自身のAPから他のAPへ移動したエージェントのIDおよび移動先APのアドレスを対応付けて記憶する手段と、宛先となるエージェントのIDを含むメッセージを受信する手段と、前記宛先となるエージェントのIDに基づいて前記記憶手段を検索し、その移動先APを検索する手段と、前記受信メッセージを前記移動先APへ転送する手段と、前記記憶手段の登録内容を更新する手段とを含むことを特徴とする。
【００１２】
(2)前記記憶手段に、自身のAPに存在しているエージェントのID、自身のAPをホームAPとするエージェントのIDおよびその移動先である現APのアドレス、ならびに自身のAPに存在していたエージェントのIDおよびその転出先である次APのアドレスが記憶され、前記受信メッセージが、その宛先となるエージェントのエージェントIDと予め対応付けられた、自身のAP、現APおよび次APのいずれかへ転送されることを特徴とする。
【００１３】
(3)前記記憶手段にはさらに、自身のAPに存在していたエージェントが他のAPに存在していた他のエージェントと通信を行った際の通信履歴として、通信先エージェントのIDおよび通信先APのアドレスが対応付けられて記憶され、前記宛先となるエージェントのIDが前記通信先エージェントのIDとして既登録であれば、前記受信メッセージが前記通信先APへ転送されることを特徴とする。
【００１４】
(4)前記記憶手段には、前記自身のAPに存在していたエージェントのIDおよびその次APのアドレスと共に、当該エージェントの転入元である前APのアドレスが記憶され、さらに、前記次APおよび前APへ、経路変更依頼メッセージを送信する手段と、受信した経路変更依頼メッセージに応答して次APのアドレスを変更する手段と、受信した経路変更依頼メッセージに応答して前APのアドレスを変更する手段とを含むことを特徴とする。
【００１５】
上記した特徴(1)によれば、メッセージを受信したAPに宛先となるエージェントが存在しないと、当該宛先となるエージェントの移動先へ前記メッセージがバケツリレー的に転送されるので、メッセージの送信元では、宛先APから宛先となるエージェントが既に移動してしまった場合でも、改めてHAP等の管理サーバへ問い合わせることなく、メッセージを宛先となるエージェントへ送信できる。
【００１６】
上記した特徴(2)によれば、自身のAPに存在している、あるいは存在していたエージェント、および自身のAPをホームAPとするエージェントに宛てたメッセージであれば、このメッセージを宛先となるエージェントへ転送できる。
【００１７】
上記した特徴(3)によれば、自身のAPに存在している、あるいは存在していたエージェント、および自身のAPをホームAPとするエージェント以外を宛先とするメッセージであっても、過去に自身のAPに存在していたエージェントが当該宛先となるエージェントと通信していれば、その通信履歴に基づいてメッセージを宛先となるエージェントへ転送できる。
【００１８】
上記した特徴(4)によれば、自APが移動端末に実装されていると、メッセージの転送ルートから自APが外れて前APから次APへメッセージが直接転送されるので、メッセージのより確実な転送が可能になる。
【００１９】
【発明の実施の形態】
以下、図面を参照して本発明の好ましい実施の形態について詳細に説明する。図１は、本発明が適用されるモバイル・エージェント・システムにおいて、各ネットワーク端末に実装されるエージェントプラットフォーム（AP）の構成を示したブロック図であり、入力Ｉ／Ｆ１１、出力Ｉ／Ｆ１２、メッセージルータ１３およびエージェント活動部１４を主要な構成とする。前記メッセージルータ１３はさらに、ルーティング制御部１３１およびエージェント情報蓄積部１３２を含む。
【００２０】
前記入力Ｉ／Ｆ１１は、以下の機能を実現する。
(1)他のAPから自AP宛に送信されたメッセージを受信してメッセージルータ１３へ転送する。
(2)エージェントの、他のAPから自APへの転入要求を受け付けてメッセージルータ１３へ転送する。
【００２１】
前記出力Ｉ／Ｆ１２は、以下の機能を実現する。
(1)メッセージルータ１３が他のAP宛に送信するメッセージを、当該他のAPへ送信する。
(2)エージェントの、自APから他のAPへの転出要求を受け付けて、当該エージェントを当該他のAPへ送信する。
【００２２】
前記エージェント活動部１４は、一般的なエージェントプラットフォーム(代表例：JADE、FIPA-OSなど)であり、以下の機能を実現する。
(1)エージェント１４１、１４２，１４３…が自AP上で活動するためのAPIやリソースを提供すると共に、エージェントの生成、削除、転入、転出などを管理する。
(2)メッセージルータ１３からメッセージを受信して該当するいずれかのエージェントへ転送する。
(3)各エージェントから他のAP上のエージェントへ送信されたメッセージをメッセージルータ１３へ転送する。
【００２３】
前記ルーティング制御部１３１は、以下の機能を実現する。
(1)受信したメッセージの宛先を解析してエージェント情報蓄積部１３２を検索し、自APに存在するエージェント宛のメッセージであれば、これをエージェント活動部１４へ転送する。
(2)自AP以外を宛先とするメッセージの転送先をエージェント情報蓄積部１３２から抽出し、この宛先に向けてメッセージを転送する。
(3)エージェントの移動履歴に基づいてエージェント情報蓄積部１３２の情報を変更し、メッセージのルーティング経路を変更する。
(4)自APを生成元あるいは管理元のAP（以下、HAP:home AP）とするエージェントであって、今現在は他のAPへ移動しているエージェントがHAP宛に送信するメッセージを解析して当該エージェントの現在位置を認識し、エージェント情報蓄積部１３２に既登録の情報を更新する。
(5)エージェントの転入要求をエージェント活動部１４へ転送する。
【００２４】
前記エージェント情報蓄積部１３２は、図２に示したように、以下の機能ブロックを有する。
(1)第１属性値テーブル１３２ａには、現時点でエージェント活動部１４に存在するエージェントの属性値(エージェントID、状態(起動中、停止中等)など)のリストが登録される。
(2)第２属性値テーブル１３２ｂには、自APをHAPとするエージェントの属性値(エージェントID、現AP名)のリストが登録される。
(3)第３属性値テーブル１３２ｃには、過去にエージェント活動部１４に存在したエージェントの属性値(エージェントID、前AP名、次AP名など)のリストが登録される。
(4)第４属性値テーブル１３２ｄには、過去にエージェント活動部１４に存在していたエージェントが他のAPに存在している他のエージェントと通信を行った際の通信履歴として、通信先エージェントのIDおよび通信先APのアドレスが対応付けられて記憶される。
(5)検索・制御部１３２ｅは、ルーティング制御部１３１からの検索要求を受け、該当する情報を当該ルーティング制御部１３１に返答する。
【００２５】
次いで、図３に示したように、AP1からAP2へ移動したエージェントAが、さらにAP3へ移動する場合を例にして、本実施形態の動作を説明する。なお、本実施形態では各エージェントにエージェントIDとして、図４に示したように、そのHAPを識別するHAP情報およびエージェント名が登録されている。各エージェントの宛先は、図５に示したように、宛先APのアドレスと前記エージェントIDとを組み合わせて構成される。
【００２６】
エージェントAがAP2からAP3へ移動すると、移動先のAP3では「エージェント転入処理」が実行され、移動元のAP2では「エージェント転出処理」が実行される。
【００２７】
図６は、エージェントが転入するAP3のメッセージルータ１３で実行される「エージェント転入処理」の動作を示したフローチャートである。
【００２８】
ステップＳ１０では、前記第１属性値テーブル１３２ａに当該転入エージェントAのエントリとして、そのエージェントIDが新規登録される。ステップＳ１１では、転入したエージェントのHAP情報が参照され、このエージェントAのHAPが自身（AP3）であるか否かが判定される。HAPが自APであればステップＳ１２へ進み、エージェント情報蓄積部１３２の第２属性値テーブル１３２ｂに当該エージェントAの属性値として登録されている「現AP」が[AP3]に書き換えられる。
【００２９】
これに対して、転入したエージェントAのHAPが自APでなければ、前記ステップＳ１１からＳ１３へ進む。ステップＳ１３では、エージェントAのエントリが前記第３属性値テーブル１３２ｃに登録されているか否かが判定される。既登録であればステップＳ１４へ進み、当該エントリの「前AP名」が当該エージェントの転出元である[AP2]に書き換えられる。エージェントAのエントリが前記第３属性値テーブル１３２ｃに未登録であれば、前記ステップＳ１３からＳ１５へ進み、当該エージェントAのエントリが新規登録される。この際、「前AP」には[AP2]が登録される。ステップＳ１６では、当該エージェントAのHAPへ、自APのアドレス情報[AP3]が通知される。HAPでは、そのエージェント情報蓄積部１３２の第２属性値テーブル１３２ｂに当該エージェントAの属性値として登録されている「現AP」が[AP3]に書き換えられる。
【００３０】
図７は、前記エージェントAが転出したAP2のメッセージルータ１３で実行される「転出処理」の動作を示したフローチャートである。
【００３１】
ステップＳ２０では、前記第１属性値テーブル１３２ａから当該エージェントAのエントリが削除される。ステップＳ２１では、転出したエージェントAのHAPが自身（AP2）であるか否かが判定される。HAPが自APであればステップＳ２２へ進み、エージェント情報蓄積部１３２の第２属性値テーブル１３２ｂに当該エージェントAの属性値として登録されている「現AP」が[AP3]に書き換えられる。
【００３２】
これに対して、転出したエージェントAのHAPが自APでなければ、前記ステップＳ２１からＳ２３へ進む。ステップＳ２３では、第３属性値テーブル１３２ｃに登録されて当該転出エージェントAのエントリに関して、その「次AP」が[AP3]に書き換えられる。ステップＳ２４では、自端末が携帯電話あるいはPDA等の移動端末であるか否かが判定される。移動端末であればステップＳ２５へ進み、以下に詳述する「経路変更依頼処理」が実行される。
【００３３】
本実施形態では、上記したように各ネットワーク端末に実装されるAPに各エージェントの移動履歴（「次AP」）を登録しておくことにより、既に他のAPへ移動してしまったエージェント宛のメッセージを受信した際に、これを「次AP」へバケツリレー的に転送することにより、メッセージが本来のエージェントへ転送されるようにしている。しかしながら、AP2が移動端末に実装されていると、AP2が移動してAP1やAP3から離れてしまい、その結果、AP1からAP2へのメッセージ転送、あるいはAP2からAP3へのメッセージ転送が行えなくなる場合がある。
【００３４】
そこで、本実施形態では、AP2が移動端末である場合には、図８に示したように、移動端末に実装されているAP2からAP1およびAP3のそれぞれに経路変更を依頼し、前記エージェントAに関して登録されている「次AP」および「前AP」を変更するようにしている。これにより、AP1が受信したメッセージMはAP2を経由することなくAP3へ直接転送されるようになるので、AP2の実装された移動端末が移動したりバッテリ不足で通信不能状態に陥るようなことがあっても、メッセージの確実な転送が可能になる。
【００３５】
図９は、前記ステップＳ２５で実行される「経路変更依頼処理」の手順を示したフローチャートである。
【００３６】
ステップＳ２５１では、自APが転出エージェントのHAPであるか否かが判定される。自APが転出エージェントのHAPでなければステップＳ２５２へ進み、前AP（AP1）に対して、今回転出したエージェントAに関して、その「次AP」を現在の[AP2]から[AP3]へ書き換えさせる経路変更依頼メッセージが送信される。ステップＳ２５３では、次AP（AP3）に対して、今回転出したエージェントAに関して、その「前AP」を[AP2]から[AP1]へ書き換えさせる経路変更依頼メッセージが送信される。
【００３７】
図１０は、前記経路変更依頼メッセージを受信した前AP（ここでは、AP1）において実行される「経路変更処理」の手順を示したフローチャートである。
【００３８】
ステップＳ５１では、自APが前記転出したメッセージAのHAPであるか否かが判定される。自APがHAPでなければステップＳ５２へ進み、第３属性値テーブル１３２ｃにおいて当該転出エージェントAに関して登録されている「次AP」が[AP2]から[AP3]に書き換えられる。
【００３９】
図１１は、前記経路変更依頼メッセージを受信した次AP（ここでは、AP3）において実行される「経路変更処理」の手順を示したフローチャートである。
【００４０】
ステップＳ６１では、自APが前記転入したメッセージAのHAPであるか否かが判定される。HAPでなければステップＳ６２へ進み、第３属性値テーブル１３２ｃにおいて当該転入エージェントAに関して登録されている「前AP」が[AP2]から[AP1]に書き換えられる。
【００４１】
次いで、本発明に係る移動エージェントの送信方法について説明する。図１２は、各APがメッセージを受信した際に実行するメッセージルーティング処理の手順を示したフローチャートである。
【００４２】
ステップＳ３１では、メッセージ受信の有無を監視し、メッセージを受信するとステップＳ３２へ進む。ステップＳ３２では、受信したメッセージが前記「経路変更依頼メッセージ」であるか否かが判定され、「経路変更依頼メッセージ」であればステップＳ３９へ進み、前記図１０，１１に関して説明した「経路変更処理」が実行される。
【００４３】
受信メッセージが前記「経路変更依頼メッセージ」以外であればステップＳ３３へ進む。ステップＳ３３ではメッセージの宛先が解析され、この宛先APのアドレスと共に登録されている宛先エージェントのIDが抽出される。ステップＳ３４では、このエージェントIDに基づいて前記エージェント情報蓄積部１３２の第１属性値テーブル１３２ａが参照され、宛先のエージェントが登録されているか否かが判定される。宛先エージェントが既登録すなわち宛先エージェントがエージェント活動部１４に存在していれば、ステップＳ４０において、受信メッセージがエージェント活動部１４へ転送され、ここで実行される。
【００４４】
これに対して、宛先エージェントが第１属性値テーブル１３２ａに未登録であればステップＳ３５へ進む。ステップＳ３５では、前記エージェントIDに基づいて第２属性値テーブル１３２ｂが参照され、宛先エージェントが登録されているか否かが判定される。宛先エージェントが既登録すなわち宛先が自APをHAPとするエージェントであればステップＳ４１へ進み、その「現AP」を宛先として前記メッセージが転送される。
【００４５】
宛先エージェントが第２属性値テーブル１３２ｂにも未登録であればステップＳ３６へ進み、前記エージェントIDに基づいて前記第３属性値テーブル１３２ｃが参照され、宛先のエージェントが登録されているか否かが判定される。宛先エージェントが既登録すなわち過去にエージェント活動部１４に存在したエージェントであればステップＳ４２へ進む。ステップＳ４２では、このエージェントIDと対応付けられた「次AP」を宛先として前記メッセージが転送される。
【００４６】
宛先エージェントが第３属性値テーブル１３２ｃにも未登録であればステップＳ３７へ進み、前記エージェントIDに基づいて前記第４属性値テーブル１３２ｄが参照される。このエージェントIDが送信履歴に登録されていればステップＳ４３へ進み、当該エージェントIDと対応付けられた「通信先AP」へメッセージが転送される。
【００４７】
宛先エージェントが第４属性値テーブル１３２ｄにも未登録であれば、ステップＳ３８において、メッセージの送信元に宛ててエラーメッセージが送信される。
【００４８】
図１３，１４は、本実施形態によるメッセージの転送経路と従来技術によるメッセージの転送経路とを比較して示した図である。
【００４９】
従来技術では、図１３に示したように、メッセージMは送信元のAP4からHAPへ送信され、HAPに「現AP」として登録されているAP1へ転送（経路R1）される。ここで、宛先エージェントがAP1からAP2へ移動した直後であれば、AP1からAP4へエラーメッセージが転送（R2）される。一方、メッセージMを受信したAP2はHAPに対して自APのアドレスを通知（経路R3）するので、これ以後にAP4からHAPへメッセージMが再び送信されれば、当該メッセージはHAPからAP2へ転送（R4）される。メッセージMがAP2へ転送されれば、AP2からAP4へ送信（R5）でき、その結果、AP4ではAP2のアドレスを知ることができるので、それ以後はAP4からAP2への直接送信（R6）が可能になる。
【００５０】
一方、本実施形態では、図１４に示したように、メッセージMは送信元のAP4からHAPへ送信され、HAPに移動先APとして登録されているAP1へ転送される（経路R1）。宛先エージェントがAP1からAP2へ移動した直後であっても、本実施形態ではAP1からAP2へメッセージMが転送（R4'）される。メッセージMがAP2へ転送されれば、AP2からAP4へ送信（R5）でき、その結果、AP4ではAP2のアドレスを知ることができるので、それ以後はAP4からAP2への直接送信（R6）が可能になる。
【００５１】
図１３，１４を比較すれば明らかなように、本実施形態によれば、宛先エージェントがAP1からAP2へ既に移動してしまっている場合に、従来技術では実施された経路R2，R4が不要となる。
【００５２】
【発明の効果】
本発明によれば、以下のような効果が達成される。
(1)メッセージを受信したAPに宛先エージェントが存在しないと、当該宛先エージェントの移動先へ前記メッセージがバケツリレー的に転送されるので、メッセージの送信元では、宛先APから宛先エージェントが既に移動してしまった場合でも、改めて管理サーバ等へ問い合わせることなく、メッセージを宛先エージェントへ送信することができる。
(2)各APに、自身のAPに存在していたエージェントが他のAPに存在していた他のエージェントと通信を行った際の通信履歴として、通信先エージェントのIDおよび通信先APのアドレスを対応付けて記憶するようにしたので、自身のAPに存在したことのないエージェント宛のメッセージを受信した場合でも、過去に存在したエージェントが当該宛先エージェントと通信していれば、その通信履歴に基づいてメッセージを宛先エージェントへ転送できる。
(3)自APが移動端末に実装されていると、メッセージの転送ルートから自APが外れて前APから次APへメッセージが直接転送されるようにしたので、メッセージのより確実な転送が可能になる。
【図面の簡単な説明】
【図１】  各ネットワーク端末に実装されるエージェントプラットフォーム（AP）の構成を示したブロック図である。
【図２】  エージェント情報蓄積部（１３２）の構成を示したブロック図である。
【図３】  移動エージェントがAP間を移動する様子を示したブロック図である。
【図４】  エージェントIDの構成を示した図である。
【図５】  エージェントの宛先情報の構成を示した図である。
【図６】  エージェント転入処理のフローチャートである。
【図７】  エージェント転出処理のフローチャートである。
【図８】  経路変更依頼処理の内容を模式的に示した図である。
【図９】  経路変更依頼処理のフローチャートである。
【図１０】  前APで実行される経路変更処理のフローチャートである。
【図１１】  次APで実行される経路変更処理のフローチャートである。
【図１２】  メッセージルーティング処理のフローチャートである
【図１３】  従来技術のメッセージ転送経路を示した図である。
【図１４】  本発明のメッセージ転送経路を示した図である。
【図１５】  移動エージェントが適用されるネットワークの構成を模式的に示した図である。
【符号の説明】
１１…入力Ｉ／Ｆ，１２…出力Ｉ／Ｆ，１３…メッセージルータ，１４…エージェント活動部，１３１…ルーティング制御部，１３２…エージェント情報蓄積部
【図１】
0004187157.tif 000002
【図２】
0004187157.tif 000003
【図３】
0004187157.tif 000004
【図４】
0004187157.tif 000005
【図５】
0004187157.tif 000006
【図６】
0004187157.tif 000007
【図７】
0004187157.tif 000008
【図８】
0004187157.tif 000009
【図９】
0004187157.tif 000010
【図１０】
0004187157.tif 000011
【図１１】
0004187157.tif 000012
【図１２】
0004187157.tif 000013
【図１３】
0004187157.tif 000014
【図１４】
0004187157.tif 000015
【図１５】
0004187157.tif 000016