JPH10154075A - Address management method of moving agent and moving agent device - Google Patents

Address management method of moving agent and moving agent device

Info

Publication number
JPH10154075A
JPH10154075A JP8329133A JP32913396A JPH10154075A JP H10154075 A JPH10154075 A JP H10154075A JP 8329133 A JP8329133 A JP 8329133A JP 32913396 A JP32913396 A JP 32913396A JP H10154075 A JPH10154075 A JP H10154075A
Authority
JP
Japan
Prior art keywords
agent
name
identifier
communication
path
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.)
Granted
Application number
JP8329133A
Other languages
Japanese (ja)
Other versions
JP2970564B2 (en
Inventor
Kazuya Koyama
和也 小山
Satoru Fujita
悟 藤田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP8329133A priority Critical patent/JP2970564B2/en
Publication of JPH10154075A publication Critical patent/JPH10154075A/en
Application granted granted Critical
Publication of JP2970564B2 publication Critical patent/JP2970564B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

PROBLEM TO BE SOLVED: To make each moving agent cooperate and manage the latest address (identifier and an environmental name) of a moving agent which freely moves among environments on a computer network. SOLUTION: Moving agents 105 to 108 have a fixed agent which does not move for their ancestor and have an absolute path name which consists of the address of a fixed agent and a label string which tracks only labels of a parentage from the fixed agent and reaches their own moving agents the themselves. A name server function 114 manages absolute paths and addresses 118 to 120 of agents which become its own direct parent and child with a label named attached to them. When it moves between environments, a communication function 113 notifies agents which become its direct parent and child of a new address which is acquired in an environment after movement. When a communication which uses a certain address fails, an identifier and an environmental name which corresponding to the label name are successively inquired of other agents along the absolute path name of the communication object, the latest address is acquired and communication of performed again.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、電子メール,ワー
クフロー管理,電子ショッピング,旅行予約など、ネッ
トワークサービスを移動エージェントで実装する分野に
属し、特に移動エージェントのアドレス管理方法および
移動エージェント装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention belongs to the field of implementing network services such as e-mail, workflow management, electronic shopping, and travel reservation with a mobile agent, and particularly relates to a mobile agent address management method and a mobile agent device.

【0002】[0002]

【従来の技術】複数の計算機が接続されたコンピュータ
ネットワークにおけるリモートプログラミングの実施方
法として、異なる計算機間を、プログラムが実行中にそ
の実行状態を保存したまま移動する、移動エージェント
という装置が特開平7−182174号公報(以下、文
献1と記す)などにより、従来から提案されている。
2. Description of the Related Art As a method of performing remote programming in a computer network to which a plurality of computers are connected, an apparatus called a mobile agent which moves between different computers while executing a program while executing the program is disclosed in Japanese Patent Application Laid-Open No. Hei 7 (1995) -107. It has been conventionally proposed in, for example, JP-A-182174 (hereinafter referred to as Document 1).

【0003】移動エージェント装置(単に、移動エージ
ェントと記すこともある)では、コンピュータプロセス
を稼働中にその動作を停止させ、全ての手続き並びに状
態を他の計算機上に転送した後に、その計算機上で転送
前と等価なプロセスを再構築し実行を再開させること
で、コンピュータプロセスの計算機間での移動を実現し
ている。この移動するコンピュータプロセスを移動エー
ジェントと呼ぶ。移動エージェントは必要に応じてネッ
トワーク上を自由に動き回り、ネットワーク上の様々な
資源を利用するとともに、他の移動エージェントと通信
を行いながら、与えられた様々な処理を実行していく。
移動エージェントを用いることで、その間の多量の通信
を必要とする2つの分散モジュールによって構成される
装置などで、一方が他方と同じ計算機へ移動し通信を行
うことによって、ネットワーク上の通信量を削減すると
ともに、無線回線などの不安定かつ低速な回線を介して
装置でも安定で高速な通信を行うことが可能となる。ま
た、1つのプロセスで様々な場所に存在する資源にアク
セスすることが可能となるため、ネットワーク上の資源
の分散配置に縛られない自由な装置設計を行うことが可
能となる。
In a mobile agent device (sometimes simply referred to as a mobile agent), the operation of a computer process is stopped while the computer process is running, and all procedures and states are transferred to another computer. By reconstructing the process equivalent to that before the transfer and restarting the execution, the computer process can be moved between computers. This moving computer process is called a mobile agent. The mobile agent freely moves around on the network as needed, uses various resources on the network, and executes various processes given while communicating with other mobile agents.
By using a mobile agent, a device composed of two distributed modules that require a large amount of communication between them, etc., one of which moves to the same computer as the other and performs communication, thereby reducing the amount of communication on the network At the same time, stable and high-speed communication can be performed by the device via an unstable and low-speed line such as a wireless line. In addition, since it is possible to access resources existing in various places by one process, it is possible to freely design a device without being restricted by the distributed arrangement of resources on a network.

【0004】ユーザや移動エージェントが或る移動エー
ジェントと通信を行うには、何らかの方法で通信対象を
指定する必要がある。通信対象を指定するには、通信対
象を探し出し特定するための情報が必要である。前記文
献1記載の移動エージェント装置では、このような情報
として対象のいる場所情報のみを指定し、通信は同一環
境内のエージェント同士でのみ発生するとしており、異
なった環境上のエージェント同士による通信は行えな
い。一般的なコンピュータシステムでは、このような情
報として名前を用い、名前管理装置を用いて通信対象と
なる実体との関連付けを行っている。名前は、通信対象
をユニークに決定する情報として1つの名前が常に1つ
のエージェントを決定するように作られる、1つないし
それ以上の文字のシーケンスである。
[0004] In order for a user or a mobile agent to communicate with a certain mobile agent, it is necessary to specify a communication target by some method. In order to specify a communication target, information for searching for and specifying a communication target is required. In the mobile agent device described in Document 1, only the location information of the target is specified as such information, and communication occurs only between agents in the same environment. I can't. In a general computer system, a name is used as such information, and a name management device is used to associate the information with an entity to be communicated. A name is a sequence of one or more characters that is created so that one name always determines one agent as information that uniquely determines the communication object.

【0005】多数の計算機が接続される大規模コンピュ
ータネットワーク上に多数の移動エージェントが存在
し、それらがネットワーク上を自由に動き回る状況で
は、名前はこの大規模コンピュータネットワーク上でエ
ージェントをユニークに決定する必要がある。このよう
な場合、ネットワーク全体をただ1つの名前管理装置で
管理し、名前と移動エージェントの実体の1対1の対応
関係を維持することは極めて困難である。このような問
題への解決法として、従来より複数の命名システムによ
って名前管理装置を構成し、個々の命名システムによっ
て決定された名前を組み合わせた複合名をユニークな名
前として用いる方法が用いられている。特開平5−27
4274号公報(以下、文献2と記す)では、オブジェ
クトベース分散システムにおける名前管理法として、任
意の数の異種命名システムによって名前管理装置を構成
するための装置と方法を提供している。これにより多数
の異種命名システムによって複合名を構成し、またそれ
を容易に分解することが可能となっている。
In a situation where there are a large number of mobile agents on a large computer network to which a large number of computers are connected and they move freely around the network, the name uniquely determines the agent on this large computer network. There is a need. In such a case, it is extremely difficult to manage the entire network with only one name management device and maintain a one-to-one correspondence between names and entities of mobile agents. As a solution to such a problem, a method has conventionally been used in which a name management device is configured by a plurality of naming systems, and a compound name obtained by combining the names determined by the individual naming systems is used as a unique name. . JP-A-5-27
Japanese Patent No. 4274 (hereinafter referred to as Document 2) provides an apparatus and a method for configuring a name management apparatus using an arbitrary number of different naming systems as a name management method in an object-based distributed system. This allows a compound name to be constructed by a number of heterogeneous naming systems and to be easily decomposed.

【0006】複数の移動エージェントが互いに関連を持
ち通信しあう装置を定義する場合、定義中に対象を特定
するために必要な情報を埋め込む必要がある。前記文献
1記載の移動エージェント装置では、対象の定義は対象
の居場所の情報によって行う。居場所の情報はネットワ
ーク上でユニークであるため、対象に関する同一の定義
を持つ異なるエージェントは必ず同じ対象と通信を行う
ことになる。また、一般的に行われているネットワーク
上ユニークな名前を用いて対象を特定する場合も、同様
に、対象に関する定義として同一情報を持つ異なるエー
ジェントは必ず同じ対象と通信を行う。
When defining a device in which a plurality of mobile agents are associated with each other and communicate with each other, it is necessary to embed information necessary for specifying an object in the definition. In the mobile agent device described in Document 1, the target is defined based on information on the location of the target. Since the location information is unique on the network, different agents having the same definition of the target will always communicate with the same target. Also, in the case where a target is specified using a unique name on a network that is generally performed, similarly, different agents having the same information as the definition of the target always communicate with the same target.

【0007】[0007]

【発明が解決しようとする課題】移動エージェント同士
で通信を行う場合、通信対象は常に移動する可能性を持
っているため、そのアドレスによってのみ対象を特定す
る方法では対象の特定の成功を保証することができな
い。図22は、環境名で対象を特定した場合、通信対象
が異なる環境に移動すると、通信が失敗する様子を示
す。
When communication is performed between mobile agents, since a communication target always has the possibility of moving, the method of specifying the target only by its address guarantees the success of specifying the target. Can not do. FIG. 22 shows a state in which, when the target is specified by the environment name, the communication fails when the communication target moves to a different environment.

【0008】そこで本発明の目的は、通信対象が移動し
たことによりそのアドレスが変化した場合であっても、
その最新のアドレスを確実に取得できるようにすること
にある。
[0008] Therefore, an object of the present invention is to provide a communication system in which even if the address changes due to movement of a communication target,
The purpose is to ensure that the latest address can be obtained.

【0009】このような目的を達成する一方法として、
名前から実体のアドレスを得るためのネームサーバを用
意するのが一般的であるが、単一のネームサーバを用い
てこのような情報を管理しようとすると、ネットワーク
上でユニークな名前を付けねばならず、名前の重複など
の矛盾回避が困難になる。また、ネームサーバに負荷が
集中してしまう。
One way to achieve such an object is to
It is common to provide a name server to obtain the address of the entity from the name, but if you want to manage such information using a single name server, you must assign a unique name on the network. And it is difficult to avoid contradictions such as duplication of names. In addition, the load is concentrated on the name server.

【0010】そこで本発明の別の目的は、個々の移動エ
ージェント自体に部分的なネームサーバ機能を持たせ、
各移動エージェントが協調し合って全体として一つのネ
ームサーバを実現することより、負荷の分散を図ること
にある。
It is another object of the present invention to provide each mobile agent with a partial name server function,
Each mobile agent cooperates with each other to realize one name server as a whole, thereby distributing the load.

【0011】また、前記文献2記載の名前管理装置で
は、ネットワーク上でユニークな名前を複数の異種命名
システムの複合名で構成し、分解する手段を提供してい
るが、この装置を移動エージェント装置のアドレス管理
に適用した場合、対象と通信する時に常にネームサーバ
に問い合わせが行われてしまう。移動エージェントのア
ドレス管理では、移動が発生した後のみ問い合わせれば
よく、毎回問い合わせるのでは無駄が生じてしまう。ま
た、前記文献1記載の移動エージェント装置では、そも
そも居場所の異なる移動エージェント同士は通信を行う
ことができない。
In the name management device described in the above document 2, a unique name on the network is constituted by a compound name of a plurality of different naming systems, and means for decomposing the name is provided. If it is applied to the address management, the name server will always be queried when communicating with the target. In the address management of the mobile agent, it is sufficient to make an inquiry only after the movement has occurred, and it is wasteful to inquire every time. Further, in the mobile agent device described in Document 1, communication between mobile agents having different locations cannot be performed in the first place.

【0012】そこで本発明の他の目的は、移動対象のア
ドレスを毎回問い合わせる無駄を防止することにある。
Therefore, another object of the present invention is to prevent wasteful inquiring of the address to be moved every time.

【0013】更に、従来の方法ではエージェントを特定
する情報は、その解釈者によらず常に同一の対象を示す
ため、エージェントの相対関係に基づいた通信対象の指
定ということを実現することができない。例えば、「親
に電話をしなさい」という記述が定義中に含まれている
場合、本来ならば通信対象である親は定義の解釈者であ
るエージェントによって異なるべきであるが、従来の方
法ではこのような解釈者によって異なる通信対象の指定
を行うことができず、このような定義を持つ全てのエー
ジェントがネームサーバ上で“親”というユニークな名
前を持つエージェントに対して通信を行うことになって
しまった。
Further, in the conventional method, the information for specifying the agent always indicates the same object regardless of the interpreter, so that it is impossible to specify the communication object based on the relative relationship between the agents. For example, if the definition "call the parent" is included in the definition, the parent to be communicated with should originally be different depending on the agent who is the interpreter of the definition. Such an interpreter cannot specify a different communication target, and all agents having such a definition communicate with an agent having a unique name of “parent” on a name server. I have.

【0014】そこで本発明のまた更に別の目的は、自分
との相対関係に基づいたエージェントを指定可能にする
ことにある。
Therefore, still another object of the present invention is to allow an agent to be specified based on a relative relationship with the user.

【0015】[0015]

【課題を解決するための手段】本発明の移動エージェン
トのアドレス管理方法は、複数の環境から構成されるコ
ンピュータネットワーク上の任意の環境間を移動するこ
とができる移動エージェントのアドレス管理方法におい
て、(a)移動エージェントの生成条件として、移動機
能を持たない固定エージェントを必ず祖先に持つという
条件を与え、該条件の下で生成された移動エージェント
に対して、該祖先の固定エージェントの識別子および環
境名と、該祖先の固定エージェントから親子関係のラベ
ルのみを辿って自エージェントへ辿り着くまでのラベル
列とから構成される絶対パス名を付与し、(b)各移動
エージェントごとに、直接の親,子となるエージェント
の絶対パス,識別子および環境名から構成される情報
を、ラベル名を付けて管理させ、(c)自ら環境間を移
動した移動エージェントに対しては、移動後の環境で得
た新たな識別子および環境名を、直接の親,子となるエ
ージェントに通知させて、これら直接の親,子となるエ
ージェント側で前記移動した移動エージェントの最新の
識別子および環境名を常に管理できるようにしておき、
(d)移動エージェントが、識別子および環境名を用い
た通信対象との通信に失敗した場合、その通信対象の絶
対パス名中の識別子および環境名で定まる固定エージェ
ントから順番に、問い合わせ先エージェントの直接の子
エージェントにかかるラベル名を指定してその識別子お
よび環境名を問い合わせていって、最終的に前記通信の
失敗した通信対象の現在の最新の識別子および環境名を
得るようにしたことを特徴とする。
A mobile agent address management method according to the present invention is a mobile agent address management method capable of moving between arbitrary environments on a computer network composed of a plurality of environments. a) As a condition for generating a mobile agent, a condition that an ancestor always has a fixed agent having no mobile function is given, and an identifier and an environment name of the fixed agent of the ancestor are given to the mobile agent generated under the condition. And an absolute path name consisting of a label sequence from the fixed agent of the ancestor to the parent agent by tracing only the label of the parent-child relationship, and (b) for each mobile agent, the direct parent, Label the information consisting of the absolute path, identifier, and environment name of the child agent (C) For the mobile agent that has moved between environments by itself, the new agent and environment name obtained in the environment after the movement are notified to the direct parent and child agents, and these direct agents are notified. The parent and child agents should always be able to manage the latest identifier and environment name of the moved mobile agent,
(D) If the mobile agent fails to communicate with the communication target using the identifier and the environment name, the mobile agent directly contacts the inquiry destination agent in order from the fixed agent determined by the identifier and the environment name in the absolute path name of the communication target. And specifying the label name of the child agent and inquiring about its identifier and environment name, and finally obtaining the current latest identifier and environment name of the communication target whose communication failed. I do.

【0016】固定エージェントの識別子と環境名は不変
であるため、固定エージェントへの通信は常に成功す
る。また、各移動エージェントは、直接の親,子のエー
ジェントに関する最新の識別子と環境名を管理してい
る。従って、或る識別子および環境名による通信が失敗
した場合でも、その絶対パス名によるその通信対象の最
新の識別子と環境名の検索は必ず成功する。このため、
通信対象が移動したことによりそのアドレスが変化した
場合であっても、その最新のアドレスを確実に取得する
ことができる。
Since the identifier of the fixed agent and the environment name are not changed, communication to the fixed agent always succeeds. Also, each mobile agent manages the latest identifiers and environment names for direct parent and child agents. Therefore, even when communication using a certain identifier and environment name fails, the search for the latest identifier and environment name of the communication target using the absolute path name always succeeds. For this reason,
Even when the address changes due to the movement of the communication target, the latest address can be reliably obtained.

【0017】また本発明は、通信対象との通信に成功し
た場合、その通信対象から識別名,環境名および絶対パ
スを取得して、自エージェントに保存するようにしたこ
とを特徴とする。これにより、移動対象のアドレスを毎
回問い合わせる無駄が防止される。
Further, the present invention is characterized in that, when communication with a communication target is successful, an identification name, an environment name and an absolute path are obtained from the communication target and stored in the own agent. This prevents waste of inquiring the address of the movement target every time.

【0018】更に本発明は、前記(d)の処理におい
て、自エージェントと、通信に失敗した通信対象とに共
通の祖先があり、且つ、通信に失敗した通信対象の絶対
パスのパス長よりも、自エージェントから前記共通の祖
先まで辿りそれ以降を通信対象の絶対パスの途中から辿
る代替パスのパス長の方が短い場合には、該代替パスの
経路に沿って順番にラベル名を指定して識別子および環
境名を問い合わせていって、最終的に前記通信の失敗し
た通信対象の現在の最新の識別子および環境名を得るよ
うにしたこと特徴とする。これにより、通信対象の識別
子および環境名を検索する処理をより効率良く行うこと
ができる。
Further, according to the present invention, in the processing of the above (d), the own agent and the communication target that has failed to communicate have a common ancestor, and the path length of the absolute path of the communication target that failed communication is greater than the path length of the communication target that failed communication. If the path length of the alternative path that traces from the own agent to the common ancestor and traces the subsequent path from the middle of the absolute path to be communicated is shorter, label names are sequentially specified along the path of the alternative path. And inquiring about the identifier and the environment name, and finally obtains the current latest identifier and environment name of the communication target in which the communication has failed. Thereby, the process of searching for the identifier and the environment name of the communication target can be performed more efficiently.

【0019】また更に本発明は、自エージェントから通
信対象のエージェントへ辿り着くための道筋を示すラベ
ル列である相対パスによって通信対象が指定された場
合、該相対パスの経路に沿って順番にラベル名を指定し
て識別子および環境名を問い合わせていって、最終的に
通信対象の識別子および環境名を得て、これを用いて通
信対象との通信を行うことを特徴とする。これによっ
て、自分との相対関係に基づいたエージェントの指定が
可能となる。
Still further, according to the present invention, when a communication target is designated by a relative path which is a label string indicating a route from the own agent to the communication target agent, the labels are sequentially arranged along the path of the relative path. The system is characterized in that an identifier and an environment name are inquired by designating a name, and finally an identifier and an environment name of a communication target are obtained, and communication with the communication target is performed using the obtained identifier and environment name. As a result, it is possible to specify an agent based on a relative relationship with the user.

【0020】また本発明の移動エージェント装置は、情
報検索,電子ショッピング,予約などエージェント本来
の動作を司るエージェント主機能と、他の移動エージェ
ントを生成するエージェント生成機能と、他の環境へ移
動する移動機能と、他のエージェントとインタラクショ
ンを行う通信機能と、他のエージェントに関する情報を
保持するネームサーバ機能とを備え、移動機能を持たな
い固定エージェントを祖先に持つように固定エージェン
トまたは他の移動エージェントから生成された移動エー
ジェント装置であって、祖先の固定エージェントの識別
子および環境名と、該祖先の固定エージェントから親子
関係のラベルのみを辿って自エージェントへ辿り着くま
でのラベル列とから構成される絶対パス名を有し、か
つ、前記ネームサーバ機能は、直接の親,子となるエー
ジェントの絶対パス,識別子および環境名から構成され
る情報を、ラベル名を付けて管理するデータベースと、
他エージェントからのラベル名を指定した問い合わせに
対して前記データベース中の当該ラベル名に対応する情
報中の識別子および環境名を問い合わせ元に通知する制
御機能とを有し、前記通信機能は、前記移動機能によっ
て自エージェントが環境間を移動した際に、移動後の環
境で得た新たな識別子および環境名を、前記データベー
スで管理されている直接の親,子となるエージェントに
通知し、他方、これら直接の親,子となるエージェント
から最新の識別子および環境名の通知を受けたときはそ
れらを前記制御機能を通じて前記データベースに反映す
る制御部と、識別子および環境名を用いて通信対象との
通信を行う直接通信機能と、この直接通信機能による通
信が失敗した場合、その通信対象の絶対パス名中の識別
子および環境名で定まる固定エージェントから順番に、
問い合わせ先エージェントの直接の子エージェントにか
かるラベル名を指定してその識別子および環境名を問い
合わせていって、最終的に前記通信の失敗した通信対象
の現在の最新の識別子および環境名を得る検索パス展開
機能とを有することを特徴とする。
Further, the mobile agent device of the present invention has an agent main function for controlling the original operation of the agent such as information search, electronic shopping, reservation, an agent generating function for generating another mobile agent, and a mobile device for moving to another environment. Function, a communication function that interacts with other agents, and a name server function that retains information about other agents. From a fixed agent or another mobile agent, the ancestor has a fixed agent that does not have a mobile function. An absolute mobile agent device that is generated and includes an identifier and an environment name of an ancestor fixed agent, and a label sequence from the ancestor fixed agent to only the parent-child relationship label and arriving at its own agent. Has a path name and the name server Function is immediate parent, the full path of the agent that is a child, the information consists of the identifier and the environment name, a database for managing with a label,
A control function of notifying an inquiry source of an identifier and an environment name in information corresponding to the label name in the database in response to an inquiry specifying a label name from another agent, wherein the communication function is When the own agent moves between the environments by the function, the new identifier and the environment name obtained in the environment after the movement are notified to the direct parent and child agents managed in the database. When receiving the latest identifiers and environment names from the direct parent and child agents, the control unit reflects them to the database through the control function, and communicates with the communication target using the identifiers and environment names. If the direct communication function to perform and the communication by this direct communication function fails, the identifier and environment name in the absolute path name of the communication target are used. In order from the circle fixed agent,
A search path that specifies the label name of the direct child agent of the inquiry destination agent and inquires about its identifier and environment name, and finally obtains the current latest identifier and environment name of the communication target whose communication failed. It has a developing function.

【0021】このような構成の移動エージェント装置に
あっては、環境間を移動した場合、通信機能が、自エー
ジェントの直接の親,子となるエージェントに対して移
動後の環境で得た新たな識別子および環境名を通知し、
それら親,子のエージェントではそれ自身のデータベー
スを更新する。また、識別子および環境名を用いた直接
通信が失敗した場合、検索パス展開機能が、通信が失敗
した通信対象の絶対パス名を用いて最新の識別子および
環境名を他のエージェントから検索する。従って、この
検索された識別子および環境名を用いて再度通信を試み
ることより、通信を行うことができる。
In the mobile agent device having such a configuration, when the mobile agent moves between environments, the communication function becomes new with respect to the agent directly acting as a parent and child of the own agent in the environment after the movement. Notify the identifier and environment name,
The parent and child agents update their own databases. When the direct communication using the identifier and the environment name fails, the search path expanding function searches for the latest identifier and the environment name from another agent using the absolute path name of the communication target for which the communication has failed. Therefore, communication can be performed by attempting communication again using the retrieved identifier and environment name.

【0022】更に、前記ネームサーバ機能は、通信に成
功した通信対象の識別名,環境名および絶対パスが前記
データベースに保存されていない場合には保存する構成
を有することを特徴とする。
Further, the name server function is characterized in that an identification name, an environment name and an absolute path of a communication target which has succeeded in communication are stored if they are not stored in the database.

【0023】また更に、前記通信機能は、自エージェン
トと、通信に失敗した通信対象とに共通の祖先があり、
且つ、通信に失敗した通信対象の絶対パスのパス長より
も、自エージェントから前記共通の祖先まで辿りそれ以
降を通信対象の絶対パスの途中から辿る代替パスのパス
長の方が短いかどうかを調べ、短い場合には該代替パス
を選択する検索パス最短化機能を備え、前記代替パスが
選択された場合には、前記検索パス展開機能は、該代替
パスの経路に沿って順番にラベル名を指定して識別子お
よび環境名を問い合わせていって、最終的に前記通信の
失敗した通信対象の現在の最新の識別子および環境名を
得る構成を有することを特徴とする。
Still further, the communication function has a common ancestor for the own agent and the communication target that has failed to communicate,
In addition, it is determined whether or not the path length of the alternative path that traces from the own agent to the common ancestor and traces the path from the middle of the absolute path of the communication target is shorter than the path length of the absolute path of the communication target that failed to communicate. A search path minimizing function for examining and selecting the alternative path when the path is short is provided, and when the alternative path is selected, the search path expanding function executes the label name in order along the path of the alternative path. And inquiring about the identifier and the environment name, and finally obtaining the current latest identifier and environment name of the communication target in which the communication has failed.

【0024】更に、前記検索パス展開機能は、自エージ
ェントから通信対象のエージェントへ辿り着くための道
筋を示すラベル列である相対パスによって通信対象が指
定された場合、該相対パスの経路に沿って順番にラベル
名を指定して識別子および環境名を問い合わせていっ
て、最終的に通信対象の識別子および環境名を得て、こ
れを用いて前記直接通信機能により通信対象との通信を
行う構成を有することを特徴とする。
Further, when the communication target is specified by a relative path, which is a label string indicating a route from the own agent to the communication target agent, the search path expanding function is performed along the path of the relative path. A configuration in which an identifier and an environment name are queried in order by designating a label name in order, and finally an identifier and an environment name of a communication target are obtained, and communication with the communication target is performed using the direct communication function by using the obtained identifier and environment name. It is characterized by having.

【0025】[0025]

【発明の実施の形態】次に本発明の実施の形態の例につ
いて図面を参照して詳細に説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, embodiments of the present invention will be described in detail with reference to the drawings.

【0026】図1は本発明の実施の形態を示す構成図で
ある。101,102,103,104はコンピュータ
ネットワーク上のエージェントが存在するための環境で
あり、105,106,107,108がそれらの環境
上に存在する移動エージェントである。
FIG. 1 is a block diagram showing an embodiment of the present invention. Reference numerals 101, 102, 103, and 104 denote environments where agents on the computer network exist, and reference numerals 105, 106, 107, and 108 denote mobile agents existing on those environments.

【0027】実施例として、環境101〜104は計算
機システムによって実現される。また、他の実施例とし
ては、複数の計算機からなる仮想計算機である。
As an embodiment, the environments 101 to 104 are realized by a computer system. Another embodiment is a virtual computer including a plurality of computers.

【0028】各移動エージェント105〜108は、移
動エージェント105中に例示するように、情報検索や
ショッピング,予約などエージェント本来の動作を行う
ためのエージェント主機能109の他に、自分自身に関
する情報110として環境内で自らを1つに特定する識
別子,現在の環境名,自分自身の絶対パスを持ち、さら
に他の移動エージェントを生成するエージェント生成機
能111,他の環境へ移動する移動機能112,他の移
動エージェントとインタラクションを行う通信機能11
3,他のエージェントに関する情報を保持するネームサ
ーバ機能114を持つ。
Each of the mobile agents 105 to 108 has, as exemplified in the mobile agent 105, information 110 relating to itself, in addition to an agent main function 109 for performing an agent's original operation such as information search, shopping, and reservation. An agent generation function 111 that has an identifier identifying itself as one in the environment, a current environment name, an absolute path of its own, and generates another mobile agent, a migration function 112 for moving to another environment, another Communication function 11 for interaction with mobile agent
3. It has a name server function 114 that holds information on other agents.

【0029】情報110中の識別子は、環境毎に管理さ
れる、1つの環境内でエージェントをユニークに特定す
る情報である。全てのエージェントはただ1つの識別子
を持つ。識別子は、1つないしそれ以上の文字のシーケ
ンス,シーケンシャルナンバ,ファイルシステムのディ
レクトリ名とファイル名など、環境毎にエージェントの
実体の管理方法にあわせた任意のものを用いる。
The identifier in the information 110 is information that is managed for each environment and uniquely identifies an agent in one environment. Every agent has only one identifier. As the identifier, an arbitrary identifier such as a sequence of one or more characters, a sequential number, a directory name and a file name of a file system, and the like according to the management method of the agent entity for each environment is used.

【0030】全ての移動エージェントは識別子と環境名
によって1つに特定することができる。ただし、識別子
並びに環境名は、エージェントが環境間を移動すると変
化してしまう。即ち、移動エージェントは新しい環境に
移動すると、その環境にかかる環境名と、その環境内で
自エージェントをユニークに特定する識別子を獲得す
る。他方、情報110中の絶対パスは、移動エージェン
トが環境間を移動しても変化しない。この絶対パスにつ
いては後に説明する。
All mobile agents can be uniquely identified by an identifier and an environment name. However, the identifier and the environment name change when the agent moves between environments. That is, when the mobile agent moves to a new environment, the mobile agent acquires an environment name relating to the environment and an identifier that uniquely identifies the agent within the environment. On the other hand, the absolute path in the information 110 does not change even if the mobile agent moves between environments. This absolute path will be described later.

【0031】ネームサーバ機能114は、内部にデータ
ベース117,データベースの制御機能115を持つ。
データベース内の情報118,119,120は、他の
移動エージェントを特定するための情報であり、それぞ
れ対象の識別子,環境名,絶対パスを持ち、ラベルをつ
けて管理されている。ラベルは1つの移動エージェント
内では他の移動エージェントをユニークに特定するもの
でなければならないが、異なる移動エージェント同士で
は、同じラベルを異なる移動エージェントにつけること
も、逆に同じ移動エージェントに異なるラベルをつける
こともできる。ラベルは「或るエージェントがどのよう
に他のエージェントを認識し、管理しているか」という
ことを表現しており、或るエージェントと他のエージェ
ントの関係を表現していると言うことができる。この関
係は片方向である。図1に例示した情報118,11
9,120に対しては、それぞれ「親」,「子1」,
「子2」というラベルが付けられている。
The name server function 114 has a database 117 and a database control function 115 therein.
Information 118, 119, and 120 in the database are information for specifying other mobile agents, each having a target identifier, an environment name, and an absolute path, and managed by attaching a label. Labels must uniquely identify other mobile agents within one mobile agent, but different mobile agents can assign the same label to different mobile agents, or conversely, assign different labels to the same mobile agent. You can also attach. The label expresses "how an agent recognizes and manages another agent" and can be said to express the relationship between an agent and another agent. This relationship is one-way. Information 118, 11 exemplified in FIG.
For 9 and 120, "parent", "child 1",
Labeled "Child 2".

【0032】移動機能112は、リモートへのプロセス
の複写とその実行の継続、自身のプロセスの消滅によっ
て、自エージェントの環境間の移動を実現する。
The transfer function 112 realizes transfer of its own agent between environments by copying a process to a remote location, continuing its execution, and extinguishing its own process.

【0033】通信機能113は、図2の通り、制御部1
21,直接通信機能122,検索パス展開機能123,
検索パス最短化機能124,受信部125を持つ。制御
部121は、通信送信時に通信対象を特定するために与
えられた情報に応じて、直接通信機能122と検索パス
展開機能123を呼び出す。また、検索パス展開機能1
23は検索パス最短化機能124を呼び出し、可能な場
合検索の効率化を図る。間接通信機能は、上記制御部1
21,直接通信機能122,検索パス展開機能123,
検索パス最短化機能124によって実現される。
The communication function 113, as shown in FIG.
21, direct communication function 122, search path expansion function 123,
It has a search path minimizing function 124 and a receiving unit 125. The control unit 121 calls the direct communication function 122 and the search path development function 123 according to the information provided for specifying the communication target at the time of communication transmission. Search path expansion function 1
23 calls a search path minimizing function 124 to improve the efficiency of the search when possible. The indirect communication function is provided by the control unit 1
21, direct communication function 122, search path expansion function 123,
This is realized by the search path minimizing function 124.

【0034】エージェント主機能109は、エージェン
ト毎にエージェント設計者によって作成される部分であ
り、情報検索,ワークフロー管理,電子ショッピングな
ど、エージェントの動作全体を規定する。エージェント
主機能は必要に応じて、定められた形式でエージェント
生成機能111,移動機能112,通信機能113を呼
び出し、エージェントの動作を制御する。
The agent main function 109 is a part created by an agent designer for each agent, and defines the entire operation of the agent, such as information search, workflow management, and electronic shopping. The agent main function calls the agent generation function 111, the movement function 112, and the communication function 113 in a predetermined format as necessary, and controls the operation of the agent.

【0035】図1において、全ての移動エージェント
は、自分を生成した移動エージェント(以下、親エージ
ェントと記す)と、自分が生成した移動エージェント
(以下、子エージェントと記す)に関する情報をネーム
サーバに保持する。まず移動エージェント105が移動
エージェント106によって生成されると、移動エージ
ェント105のネームサーバ機能114のデータベース
117に親エージェント106に関する情報118が適
当なラベルを付けられてネームサーバの制御機能115
によって登録される。また、移動エージェント105 のエ
ージェント主機能109がエージェント生成機能111
を呼び出して自分の子エージェントとして移動エージェ
ント107および108を生成すると、エージェント生
成機能111は制御機能115を通してデータベース1
17に子エージェント107,108に関する情報11
9,120を適当なラベルをつけて登録する。同様に、
移動エージェント106は子エージェントである移動エ
ージェント105に関する情報を、移動エージェント1
07と移動エージェント108は親エージェントである
移動エージェント105に関する情報を自分の持つネー
ムサーバに適当なラベルを付けて登録する。
In FIG. 1, all the mobile agents hold their own mobile agent (hereinafter referred to as parent agent) and information regarding the mobile agent (child agent) generated by themselves in a name server. I do. First, when the mobile agent 105 is generated by the mobile agent 106, information 118 about the parent agent 106 is appropriately labeled in the database 117 of the name server function 114 of the mobile agent 105, and the name server control function 115
Registered by. Also, the agent main function 109 of the mobile agent 105 is
Is called to generate the mobile agents 107 and 108 as their own child agents, the agent generating function 111
17 shows information 11 about child agents 107 and 108
9 and 120 are registered with appropriate labels. Similarly,
The mobile agent 106 stores information about the mobile agent 105 as a child agent.
07 and the mobile agent 108 register information on the mobile agent 105 as a parent agent with an appropriate label in its own name server.

【0036】また、親子関係以外でも、移動エージェン
トは任意の他の移動エージェントの識別子,環境名,絶
対パスを、適当なラベルをつけてネームサーバで管理す
ることができる。このようなエージェントは、エージェ
ント基本機能からラベルを指定するだけで他のエージェ
ントを指定することが可能となる。また、このラベルを
他のエージェントに対して公開すれば、他のエージェン
トもこのエージェントに対してラベルを指定して問い合
わせることで、対象となるエージェントの情報を得るこ
とができる。
In addition to the parent-child relationship, the mobile agent can manage an identifier, an environment name, and an absolute path of any other mobile agent with a proper label and manage it by the name server. Such an agent can specify another agent only by specifying a label from the agent basic function. Also, if this label is made public to other agents, other agents can obtain information on the target agent by inquiring this agent by designating the label.

【0037】エージェントの移動が発生した場合、移動
するエージェントは移動先の環境で新しい識別子と環境
名を得て、移動と同時に親子関係のある他の移動エージ
ェントに新しい識別子と環境名を通知する。移動エージ
ェント105のエージェント主機能109が移動機能1
12を呼び出すと、移動機能112は新しい識別子と環
境名を得て、通信機能113を通して全ての親ならびに
子エージェント106,107,108に新しい情報を
通知する。移動エージェント106,107,108は
この通知を受けて、制御機能を通してそれぞれのネーム
サーバのデータベースを更新する。これによって、全て
の移動エージェントは直接の親子関係のある他の移動エ
ージェントの正確な識別子と環境名を保持することが可
能になる。
When an agent moves, the moving agent obtains a new identifier and environment name in the destination environment, and notifies the other mobile agents having a parent-child relationship of the new identifier and environment name at the same time as the movement. Agent main function 109 of mobile agent 105 is mobile function 1
Upon invocation of 12, the mobility function 112 gets the new identifier and environment name and notifies all parent and child agents 106, 107, 108 of the new information via the communication function 113. Upon receiving the notification, the mobile agents 106, 107, and 108 update the database of each name server through the control function. This allows all mobile agents to retain the exact identifiers and environment names of other mobile agents that have a direct parent-child relationship.

【0038】このように、全ての移動エージェントは直
接の親子関係のある他の移動エージェントの正確な識別
子と環境名を常に保持しているため、それらに対する通
信は常に成功する。しかし、直接の親子関係以外の移動
エージェントの正確な識別子と環境名は管理していない
ため、直接の親子関係以外の移動エージェントに対する
識別子と環境名による通信は常に成功するとは限らな
い。その通信対象が環境間を移動しており、識別子と環
境名が変わっているかも知れないからである。このた
め、直接の親子関係以外の移動エージェントの最新の識
別子と環境名を得るための特別な機構が必要となる。以
下、この点について説明する。
As described above, since all mobile agents always hold the correct identifiers and environment names of other mobile agents having a direct parent-child relationship, communication with them is always successful. However, since the exact identifier and environment name of the mobile agent other than the direct parent-child relationship are not managed, the communication using the identifier and the environment name for the mobile agent other than the direct parent-child relationship is not always successful. This is because the communication target is moving between environments, and the identifier and the environment name may have changed. For this reason, a special mechanism for obtaining the latest identifier and environment name of the mobile agent other than the direct parent-child relationship is required. Hereinafter, this point will be described.

【0039】本発明では、移動機能を持たない特殊な移
動エージェントとして、固定エージェントと呼ぶエージ
ェントを設ける。固定エージェントは自ら移動しない以
外は、移動エージェントと同じ機能を持つ。そして、全
ての移動エージェントは必ず固定エージェントを祖先に
持つように生成されなければならないという制約を設け
る。なお、固定エージェントはこの制約は適用されな
い。
In the present invention, an agent called a fixed agent is provided as a special mobile agent having no mobile function. The fixed agent has the same function as the mobile agent, except that the fixed agent does not move. Then, there is a constraint that all mobile agents must be generated so as to always have fixed agents as ancestors. This restriction does not apply to fixed agents.

【0040】上記制約により、全ての移動エージェント
は図4の例のような固定エージェントを祖先とする階層
的な親子関係をなす。図4の例は、固定エージェント2
01と、その子エージェント202、さらにその子エー
ジェント203と204、204の子エージェント20
5と206よりなる階層的親子関係を示している。20
7,208,209,210,211は、それぞれ、エ
ージェント201が202に、202が203に、20
2が204に、204が205に、204が206に対
して付けたラベルである。また、親エージェントを持つ
全てのエージェントは、親エージェントに対して“pa
rent”というラベルを持つとする。
Due to the above restrictions, all mobile agents have a hierarchical parent-child relationship with fixed agents as ancestors as shown in the example of FIG. The example of FIG.
01, its child agent 202, and its child agents 203 and 204, 204
5 shows a hierarchical parent-child relationship composed of Nos. 5 and 206. 20
7, 208, 209, 210, and 211 indicate that the agent 201 is 202, 202 is 203, and 20
2 is a label attached to 204, 204 is assigned to 205, and 204 is a label attached to 206. In addition, all agents having a parent agent are referred to the parent agent as "pa
Suppose that it has a label “rent”.

【0041】任意の移動エージェントについて、その移
動エージェントの親子関係の一番の祖先の固定エージェ
ントから親子関係のラベルのみを辿ってその移動エージ
ェントへ辿り着く最短のパスを、その移動エージェント
の絶対パスと呼ぶ。例えば、移動エージェント206の
絶対パスは、固定エージェント201の識別子並びに環
境名と、途中のラベル207,209,211をあわせ
たものになる。
For an arbitrary mobile agent, the shortest path to the mobile agent by tracing only the label of the parent-child relationship from the fixed agent of the first ancestor of the mobile agent's parent-child relationship is defined as the absolute path of the mobile agent. Call. For example, the absolute path of the mobile agent 206 is the sum of the identifier and environment name of the fixed agent 201 and labels 207, 209, and 211 in the middle.

【0042】この絶対パスは、個々の移動エージェント
が環境間を移動しても不変である。また、固定エージェ
ントの識別子や環境名は不変であり、更に、子エージェ
ントに関する正確な識別子と環境名は親エージェントに
よって保持されている。従って、各移動エージェントは
通信対象の絶対パスの情報を保持していれば、それを利
用して通信対象の最新の識別子および環境名の情報を獲
得することができる。すなわち、例えば図4において、
移動エージェント203が移動エージェント206の絶
対パスに基づき、移動エージェント206の最新の識別
子と環境名とを獲得する動作は以下のようにして行え
る。
This absolute path is invariable even when individual mobile agents move between environments. The identifier and environment name of the fixed agent are not changed, and the correct identifier and environment name of the child agent are held by the parent agent. Therefore, if each mobile agent holds the information on the absolute path of the communication target, it can use the information to acquire the latest identifier and environment name information of the communication target. That is, for example, in FIG.
The operation in which the mobile agent 203 acquires the latest identifier and environment name of the mobile agent 206 based on the absolute path of the mobile agent 206 can be performed as follows.

【0043】移動エージェント203は、絶対パス中
の固定エージェント201の識別子および環境名を使用
して、固定エージェント201に通信し、ラベル207
の展開を要求する。固定エージェント201の識別子と
環境名は不変であるため、この通信は必ず成功する。固
定エージェント201では、子エージェント202に関
する正確な識別子と環境名とを自身のネームサーバにて
管理しているため、ラベル207に対応する情報中の識
別子および環境名を取り出して、移動エージェント20
3に通知する。 移動エージェント203は、固定エージェント201
から通知された識別子および環境名を使用して、移動エ
ージェント202に通信し、ラベル209の展開を要求
する。移動エージェント202では、子エージェント2
04に関する正確な識別子と環境名とを自身のネームサ
ーバにて管理しているため、ラベル209に対応する情
報中の識別子および環境名を取り出して、移動エージェ
ント203に通知する。 移動エージェント203は、移動エージェント202
から通知された識別子および環境名を使用して、移動エ
ージェント204に通信し、ラベル211の展開を要求
する。移動エージェント204では、子エージェント2
06に関する正確な識別子と環境名とを自身のネームサ
ーバにて管理しているため、ラベル211に対応する情
報中の識別子および環境名を取り出して、移動エージェ
ント203に通知する。これによって、移動エージェン
ト203は、移動エージェント206の最新の識別子お
よび環境名を知ることができる。
The mobile agent 203 communicates with the fixed agent 201 using the identifier and environment name of the fixed agent 201 in the absolute path, and
Request expansion of. Since the identifier of the fixed agent 201 and the environment name are unchanged, this communication always succeeds. Since the fixed agent 201 manages the correct identifier and environment name of the child agent 202 in its own name server, the fixed agent 201 extracts the identifier and environment name in the information corresponding to the label 207, and
Notify 3. The mobile agent 203 is a fixed agent 201
The mobile station 202 communicates with the mobile agent 202 using the identifier and the environment name notified from the mobile terminal 202, and requests expansion of the label 209. In the mobile agent 202, the child agent 2
Since the correct identifier and environment name relating to the label 04 are managed by its own name server, the identifier and environment name in the information corresponding to the label 209 are extracted and notified to the mobile agent 203. The mobile agent 203 is a mobile agent 202
The mobile station 204 communicates with the mobile agent 204 using the identifier and the environment name notified from the mobile terminal 204, and requests the expansion of the label 211. In the mobile agent 204, the child agent 2
Since the correct identifier and environment name relating to 06 are managed by its own name server, the identifier and environment name in the information corresponding to the label 211 are extracted and notified to the mobile agent 203. Thereby, the mobile agent 203 can know the latest identifier and environment name of the mobile agent 206.

【0044】一方、親子関係以外の関係(ネームサーバ
で親子以外のラベルを付けて情報を管理しているもの)
は、移動してもその情報(識別子,環境名)は更新され
ない。このため、対象が移動してしまうと誤った情報を
保持することになるが、絶対パスの情報を保持し、これ
を辿ることでいつでも正確な情報を入手することが可能
である。
On the other hand, relations other than parent-child relations (information managed by labeling other than parent-child in the name server)
Does not update its information (identifier, environment name) even if it moves. For this reason, if the target moves, erroneous information will be stored. However, it is possible to always obtain accurate information by storing the absolute path information and following this.

【0045】本実施の形態では、或る移動エージェント
が他の移動エージェントと通信を行う場合、識別子並び
に環境名による指定、上述した絶対パスによる指定以外
に、ラベルによる指定、相対パスによる指定が可能であ
る。つまり、 1.ラベル 2.識別子並びに環境名 3.絶対パス 4.相対パス のいずれかの方法によって通信対象を指定することがで
きる。指定された情報は、通信機能の制御部121によ
って処理され、必要な機能が呼び出される。
In this embodiment, when a certain mobile agent communicates with another mobile agent, in addition to the specification using an identifier and an environment name, the specification using an absolute path, the specification using a label, and the specification using a relative path are possible. It is. That is, 1. Label 2. 2. Identifier and environment name Absolute path 4. The communication target can be specified by one of the relative path methods. The specified information is processed by the control unit 121 of the communication function, and a necessary function is called.

【0046】ここで、絶対パスと相対パスとの両者を総
称して検索パスと呼ぶ。検索パスは、多数のエージェン
ト間の関係を利用して、或るエージェントから目的のエ
ージェントへ辿り付くための道筋を特定する情報であ
る。検索パスの表現の1つの例としては、“((識別子
環境名)ラベル1ラベル2…ラベルN)”と表せる。
検索パスのうちの絶対パスは、前述したように、その移
動エージェントの親子関係の一番の祖先の固定エージェ
ントから親子関係のラベルのみを辿ってその移動エージ
ェントへ辿り着く最短の検索パスのことであり、相対パ
スとは、絶対パスでない検索パスのことである。
Here, both the absolute path and the relative path are collectively called a search path. The search path is information that specifies a route to reach a target agent from a certain agent by using a relationship between many agents. One example of a search path expression is “((identifier environment name) label 1 label 2... Label N)”.
The absolute path in the search path is, as described above, the shortest search path that reaches the mobile agent by tracing only the label of the parent-child relationship from the fixed agent of the first ancestor of the mobile agent's parent-child relationship. Yes, a relative path is a search path that is not an absolute path.

【0047】検索パスを図3を用いて別の観点から定義
する。図3は任意の識別子と環境名とラベル列を入力と
し、識別子と環境名、もしくは失敗を出力するアルゴリ
ズムのフローチャートである。S1ならびにS2が入
力、S9もしくはS10が出力である。以下、アルゴリ
ズムを説明する。まず、S1で初期問い合わせ先として
任意のエージェントの識別子と環境名を指定し、S2で
任意のラベル列を与える。次に、S3において展開すべ
きラベル名をラベル列の先頭に設定し、S4において問
い合わせ先として設定されているエージェントのネーム
サーバ機能に対してS3で設定したラベルの展開を問い
合わせる。問い合わせは、成功すれば展開したエージェ
ントの情報(識別子,環境名)が、失敗すれば失敗が結
果として返される。S5で問い合わせが成功しており、
かつS6でラベル列の先頭を取り除いた後もS7でラベ
ル列が空でなければ、S8で問い合わせで得られた結果
を次の問い合わせ先に設定し、S3へ戻る。これをS5
において問い合わせが失敗するか、S7においてラベル
列が空になるまで繰り返し、途中で問い合わせが失敗し
たらS9で失敗を出力し、ラベル列が空になったら最後
の問い合わせで得られた結果をS10で出力する。この
アルゴリズムを用いて検索パスを以下の通り定義する。
あるコンピュータネットワークにおいて、識別子と環境
名とラベル列からなる1つの情報と、これとは別の識別
子と環境名によって特定される1つのエージェントが存
在したとする。ここで、上記アルゴリズムの入力として
前記情報を与え、結果として前記エージェントを特定す
る識別子と環境名が出力されたとき、前記情報を前記エ
ージェントの検索パスと呼ぶ。なお、検索パスの長さ
を、必要な問い合わせの回数、すなわち検索パスに含ま
れるラベルの数と定義する。
A search path is defined from another viewpoint with reference to FIG. FIG. 3 is a flowchart of an algorithm that receives an arbitrary identifier, an environment name, and a label string and outputs an identifier, an environment name, or failure. S1 and S2 are inputs, and S9 or S10 is an output. Hereinafter, the algorithm will be described. First, an arbitrary agent identifier and environment name are designated as an initial inquiry destination in S1, and an arbitrary label string is given in S2. Next, in S3, the label name to be expanded is set at the head of the label string, and in S4, the name server function of the agent set as the inquiry destination is inquired about the expansion of the label set in S3. If the inquiry succeeds, the information (identifier, environment name) of the deployed agent is returned as a result, and if the inquiry fails, the failure is returned as a result. The inquiry was successful in S5,
If the label string is not empty in S7 even after the head of the label string is removed in S6, the result obtained in the inquiry in S8 is set as the next inquiry destination, and the process returns to S3. This is S5
Is repeated until the query fails or the label string becomes empty in S7. If the query fails in the middle, a failure is output in S9, and if the label string becomes empty, the result obtained in the last query is output in S10. I do. A search path is defined as follows using this algorithm.
It is assumed that in a certain computer network, there is one piece of information including an identifier, an environment name, and a label string, and one agent specified by another identifier and an environment name. Here, when the information is given as an input of the algorithm, and an identifier and an environment name for specifying the agent are output as a result, the information is called a search path of the agent. Note that the length of the search path is defined as the number of necessary inquiries, that is, the number of labels included in the search path.

【0048】さて、図5は、他の移動エージェントと通
信を行う際の制御部121の動作のフローチャートであ
る。S11でまずラベルが指定されていると、S15で
ラベルがネームサーバ機能114によって展開、つまり
そのラベルに対応するデータベース117中の情報が検
索され、そこで得られた環境名と識別子と絶対パスがS
12以降で利用される。誤ったラベルが与えられている
と、S16で展開失敗となり通信は失敗する。S12で
識別子と環境名が与えられていると、S17で直接通信
機能122が呼び出され、これが成功すると通信成功と
なり、S24で結果を出力して終わる。一方、直接通信
が行えないか、もしくは失敗した場合、S13で絶対パ
スのチェックを行い、与えられていれば絶対パスを検索
パスとしてS19で検索パス展開機能123を呼び出
す。絶対パスが与えられておらず、S14で相対パスが
与えられている場合は、相対パスを検索パスとしてS2
0で検索パス展開機能123を呼び出す。S21で検索
パスの展開が成功していれば、その結果を用いてS22
で直接通信を行い、それが成功すればS24で通信成功
を、失敗すればS25で通信失敗を出力して終了する。
絶対パスと相対パスのいずれも与えられていないか、も
しくは展開に失敗した場合、それ以上の検索は不可能に
なり、S25で通信失敗を出力して終了する。
FIG. 5 is a flowchart of the operation of the control unit 121 when communicating with another mobile agent. If a label is first specified in S11, the label is expanded by the name server function 114 in S15, that is, information in the database 117 corresponding to the label is searched, and the obtained environment name, identifier and absolute path are stored in S15.
Used from 12 onwards. If an incorrect label is given, deployment fails in S16 and communication fails. If the identifier and the environment name are given in S12, the direct communication function 122 is called in S17, and if this is successful, the communication is successful. In S24, the result is output and the processing ends. On the other hand, if the direct communication cannot be performed or has failed, the absolute path is checked in S13, and if given, the search path development function 123 is called in S19 with the absolute path as the search path. If the absolute path has not been given and the relative path has been given in S14, the relative path is set as the search path in S2.
When 0, the search path development function 123 is called. If the search path has been successfully expanded in S21, the result is used in S22.
To communicate directly. If the communication is successful, the communication is successful in S24. If the communication is unsuccessful, the communication failure is output in S25.
If neither the absolute path nor the relative path is given, or if the development fails, further search becomes impossible, and a communication failure is output in S25, and the processing ends.

【0049】識別子並びに環境名による指定が行われる
と、通信機能113の直接通信機能122は直接対象と
なる環境とその上の移動エージェントに接続する。即
ち、直接通信機能122は、指定された環境にアクセス
し、指定された識別子を持つエージェントが存在するか
どうかを調べ、存在すればそのエージェントの通信機能
の受信部に通信内容を渡して成功を、存在しなければ失
敗を結果として返す。識別子並びに環境名による指定で
は、対象の移動エージェントが移動しない限りは検索に
関するコストなしに対象を特定することができる。ただ
し、識別子並びに環境名の情報を得た後に対象が移動し
た場合、通信は失敗する。
When the designation by the identifier and the environment name is performed, the direct communication function 122 of the communication function 113 directly connects to the target environment and the mobile agent thereon. That is, the direct communication function 122 accesses the specified environment, checks whether an agent having the specified identifier exists, and if so, passes the communication content to the receiving unit of the communication function of the agent and succeeds. If not, it returns failure as a result. In the specification by the identifier and the environment name, the target can be specified without the search cost as long as the target mobile agent does not move. However, if the target moves after obtaining the information of the identifier and the environment name, the communication fails.

【0050】絶対パスによる指定では、対象の正確な識
別子と環境名を得るために、対象の祖先の固定エージェ
ントから親子関係を辿って対象の移動エージェントまで
順に問い合わせを行わなければならず、識別子並びに環
境名による直接指定と比較して検索コストがかかる。た
だし、識別子並びに環境名による直接指定と異なり、絶
対パスによる検索は必ず成功し、対象と通信を行うこと
ができる。
In the specification by the absolute path, in order to obtain the correct identifier and environment name of the target, inquiries must be made in order from the fixed agent of the target ancestor to the target mobile agent by following the parent-child relationship. Search cost is higher than direct specification by environment name. However, unlike the direct specification by the identifier and the environment name, the search by the absolute path always succeeds and can communicate with the target.

【0051】相対パスによる指定は、3.の絶対パスに
よる指定と同様の検索を必要とするため、同様の検索コ
ストがかかる。さらに、相対パスによる検索は間に親子
関係以外の関係を含むため、常に対象の特定に成功する
とは限らない。しかし、相対パスによる指定では、自分
や自分の周囲の他のエージェントの知識やエージェント
間関係を利用した幅広い相対関係に基づく対象の指定が
可能となる。
The specification by the relative path is described in 3. Requires the same search as the specification by the absolute path, so the same search cost is required. Furthermore, since a search using a relative path includes a relationship other than a parent-child relationship, it is not always the case that the target is successfully specified. However, in the specification using the relative path, it is possible to specify an object based on a wide range of relative relationships using the knowledge of the agent and other agents around the agent and the relationship between agents.

【0052】図6は検索パス展開機能123の動作を示
すフローチャートである。検索パス展開機能123は、
指定された検索パスを元に通信対象の識別子と環境名
を、以下のようにして検索する。まず、S30で検索パ
スに含まれる環境名と識別子を問い合わせ先エージェン
トとして設定し、S31で問い合わせるラベルを検索パ
スのラベル列の先頭に設定する。その後、S32で問い
合わせ先エージェントのネームサーバ機能にラベルの展
開を問い合わせ、成功したらS35で得られた結果を次
問い合わせ先に設定し、S36で問い合わせるラベルを
ラベル列の次のラベルに設定し、S32から繰り返す。
S34で全てのラベルの展開に成功したら、最後に得ら
れた結果をS37で出力して終了する。最後のラベルに
到達する前にS33で展開に失敗したら、S38で失敗
を出力して終了する。図7は上記検索手順の動作を示す
説明図である。
FIG. 6 is a flowchart showing the operation of the search path expanding function 123. The search path expansion function 123
Based on the specified search path, the communication target identifier and environment name are searched as follows. First, in S30, the environment name and the identifier included in the search path are set as the inquiry destination agent, and in S31, the label to be queried is set at the head of the label string of the search path. Then, in S32, the name server function of the inquiry destination agent is inquired about the label development, and if successful, the result obtained in S35 is set as the next inquiry destination, and the label to be inquired is set in S36 as the next label in the label sequence. Repeat from
If all the labels have been successfully developed in S34, the last obtained result is output in S37, and the process ends. If the development fails in S33 before the last label is reached, a failure is output in S38 and the process ends. FIG. 7 is an explanatory diagram showing the operation of the search procedure.

【0053】ところで、絶対パス検索の際、検索を行う
エージェントと通信対象となるエージェントが共通の祖
先を持つ場合、対象との関係によっては、検索に必要な
問い合わせ回数を減らすことができる。このため本実施
の形態では、検索パス展開機能123は、検索を開始す
る前に検索パス最短化機能124を呼び出し、可能であ
れば最短化を図る。共通の祖先を持つエージェントは、
絶対パス通りに検索する方法と、自分から最初の共通の
祖先まで遡り、それ以降を絶対パスの途中から辿る方法
の2つの方法が可能である。どちらの方法も親子関係の
みを辿るものであるから、検索可能性はどちらも保証さ
れる。
By the way, in the case of the absolute path search, if the agent to be searched and the agent to be communicated have a common ancestor, the number of inquiries required for the search can be reduced depending on the relationship with the object. For this reason, in the present embodiment, the search path expanding function 123 calls the search path minimizing function 124 before starting the search, and attempts to minimize the search path if possible. Agents with a common ancestor
Two methods are possible: a method of searching according to an absolute path, and a method of tracing from oneself to the first common ancestor and tracing thereafter from the middle of the absolute path. Since both methods follow only the parent-child relationship, both search possibilities are guaranteed.

【0054】ここで、検索パスXの長さを|X|で表す
とする。検索を行うエージェント自身の絶対パスをA、
検索対象のエージェントの絶対パスをB、2つのエージ
ェントの共通の祖先のうち、絶対パスの長さが最も長い
ものの絶対パスをCとする。CからBの残りを検索する
のに必要な問い合わせ回数はどちらの方法でも同じであ
るから、Cの正確な情報を問い合わせるのに必要な問い
合わせ回数が問題になる。Cを検索するのに必要な検索
回数は、絶対パス通りに辿る場合|C|、自分自身を検
索開始位置として親エージェントを辿って行く場合|A
|−|C|であるから、図8のような|A|−|C|>
|C|の時、すなわち|A|>2|C|の時は絶対パス
B通りに検索を行い、図9のような|A|−|C|≦|
C|の時、すなわち|A|≦2|C|の時は自分自身を
検索開始位置として親エージェントを辿って検索を行う
ようにすれば、同じエージェントを検索するのに必要な
問い合わせ回数を減らすことができる。
Here, it is assumed that the length of the search path X is represented by | X |. The absolute path of the searching agent itself is A,
Let B be the absolute path of the agent to be searched, and C be the absolute path of the longest absolute path among the common ancestors of the two agents. Since the number of inquiries required to retrieve the remainder of B from C is the same in either method, the number of inquiries required to inquire of C for accurate information becomes a problem. The number of searches required to search C is as follows: when following the absolute path | C |, when following the parent agent with itself as the search start position | A
Since |-| C |, | A |-| C |> as shown in FIG.
When | C |, that is, when | A |> 2 | C |, the search is performed according to the absolute path B, and | A | − | C | ≦ | as shown in FIG.
In the case of C |, that is, when | A | ≦ 2 | C |, if the search is performed by tracing the parent agent with itself as the search start position, the number of inquiries required to search for the same agent is reduced. be able to.

【0055】検索パス最短化機能124は、上記方法に
従い検索パスの最短化を試みる。図10は検索パス最短
化機能124の動作を示すフローチャートである。ま
ず、S51で比較の対象となる2つの絶対パスを、“A
=自分自身の絶対パス”、“B=対象の絶対パス”とし
て設定し、S52で共通の祖先を持つかどうかを調べ
る。共通の祖先を持つ場合、S53で“C=A,B共通
の祖先のうち絶対パス長が最長のもの”とし、S54で
|A|>2|C|をチェックする。|A|≦2|C|の
場合、“自分自身の識別子と環境名”+“|A|−|C
|個の親を示すラベル”+“BからCを取り除いた残り
のラベル列”を検索すべきパスとしてS55で出力す
る。祖先が共通でないか、共通であっても|A|>2|
C|の場合、S56で元の検索パスである対象の絶対パ
スBをそのまま出力する。この検索パス最短化機能の出
力を検索パス展開機能の入力として用いることで、検索
パスの最短化が可能になる。
The search path minimizing function 124 attempts to minimize the search path according to the above method. FIG. 10 is a flowchart showing the operation of the search path minimizing function 124. First, in S51, two absolute paths to be compared are referred to as “A
= Absolute path of own ”and“ B = Absolute path of target ”and check in S52 whether they have a common ancestor.If they have a common ancestor, in S53,“ C = A, common ancestor of B ” Among them, it is assumed that the absolute path length is the longest, and | A |> 2 | C | is checked in S54. In the case of | A | ≦ 2 | C |, “own identifier and environment name” + “| A |-| C
The | labels indicating the parents] + “the remaining label sequence obtained by removing C from B” are output as the path to be searched in S55. | If the ancestors are not common or they are common, | A |> 2 |
In the case of C |, the absolute path B of the target which is the original search path is output as it is in S56. By using the output of the search path minimizing function as an input of the search path expanding function, the search path can be minimized.

【0056】なお、ラベルによって自分のネームサーバ
内で管理されている通信対象では、対象と何らかの方法
で通信に成功したら、その通信対象から識別子,環境名
および絶対パスを取得して、ネームサーバ内の該当する
情報を更新する。ネームサーバでは、対象の識別子,環
境名,絶対パスを保存するため、一度でも通信が成功す
れば、対象が移動しない限りは低コストの識別子と環境
名による対象の特定を、対象が移動してしまったら絶対
パスによる対象の特定を行うという、効率的な対象の検
索を行うことができる。また、対象の特定が必ずしも保
証されない相対パスよる指定が行われた場合、対象と一
度通信に成功すれば、以降はその時得られた識別子,環
境名,絶対パスを保存し、これによる対象の特定を行
う。これにより検索のコストを可能な限り抑えることが
可能になる。
In the communication object managed in the name server by the label, if the communication with the object succeeds in some way, the identifier, the environment name, and the absolute path are obtained from the communication object, and the name is stored in the name server. Update the applicable information in. Since the name server stores the target identifier, environment name, and absolute path, if communication is successful even once, the target is identified by the low-cost identifier and environment name as long as the target does not move. If this is the case, the target can be specified by the absolute path, so that an efficient target search can be performed. If the target is specified by a relative path, which is not always guaranteed, once communication with the target is successful, the identifier, environment name, and absolute path obtained at that time are saved and the target is specified. I do. This makes it possible to minimize the search cost.

【0057】[0057]

【実施例】【Example】

実施例1 図11を用いて本発明の実施例を説明する。図11は或
る瞬間のエージェントの関係図を表している。302,
303,304,305,306,307,309,3
10,311,312が移動エージェントであり、30
1と308が固定エージェントである。図中の実線の矢
印は生成関係を表しており、矢印に付いているラベル3
13から322は親エージェントが子エージェントに対
してつけたラベルを表している。また、全ての子エージ
ェントは親エージェントに対して“parent”とい
うラベルを付けているとする。323はエージェント3
10がエージェント305に対してつけたラベルであ
る。これは親子関係以外の関係である。
Embodiment 1 An embodiment of the present invention will be described with reference to FIG. FIG. 11 shows a relationship diagram of the agent at a certain moment. 302,
303, 304, 305, 306, 307, 309, 3
10, 311 and 312 are mobile agents, and 30
1 and 308 are fixed agents. The solid arrow in the figure represents the generation relationship, and the label 3 attached to the arrow is shown.
Reference numerals 13 to 322 represent labels assigned to the child agent by the parent agent. It is also assumed that all child agents have labeled the parent agent "parent". 323 is Agent 3
Reference numeral 10 denotes a label attached to the agent 305. This is a relationship other than the parent-child relationship.

【0058】また、図11のエージェント群301から
312の或る瞬間の識別子と環境名が、図12の通りに
与えられていたとする。
It is also assumed that the identifiers and environment names of the agents 301 to 312 at a certain moment in FIG. 11 are given as shown in FIG.

【0059】この時、各移動エージェントの絶対パスは
“((祖先の識別子 祖先の環境名)ラベル1ラベル2
…ラベルn)”という形で表現すると、図13の通り決
定される。
At this time, the absolute path of each mobile agent is “((ancestor identifier ancestor environment name) label 1 label 2
... Label n) ”is determined as shown in FIG.

【0060】ここで、各エージェントは自分と直接親子
関係のあるエージェントの情報を保持する。例えば、移
動エージェント305は、エージェント302,30
6,307に関し、図14のような情報をネームサーバ
内データベースに保持する。
Here, each agent holds information on an agent having a direct parent-child relationship with itself. For example, the mobile agent 305 includes the agents 302 and 30
6, 6307 is stored in the database in the name server.

【0061】また、親子関係以外の関係のあるエージェ
ントの情報も同様に保存される。例えば、移動エージェ
ント310は、親子関係のあるエージェント309,3
11および親子関係以外の関係にあるエージェント30
5に関する図15のような情報をネームサーバ内データ
ベースに保存する。
Information on agents having a relationship other than the parent-child relationship is also stored. For example, the mobile agent 310 includes the agents 309 and 3 having a parent-child relationship.
11 and agent 30 in a relationship other than parent-child relationship
15 is stored in the database in the name server.

【0062】ここで、図16の通り環境“Env1”上
の移動エージェント305が環境“Env4”上へ移動
するとする。この時、移動エージェント305は環境
“Env4”上へ移動し、環境“Env4”上での新た
な識別子“ag4”を獲得し、移動エージェント401
になる。この移動エージェント401は識別子と環境名
以外は移動エージェント305と等価なプロセスであ
る。この後、この移動エージェント401は新たな識別
子と環境名を直接親子関係のあるエージェント302,
306,307に通知し、302,306,307のネ
ームサーバ内の自分に関するデータを更新する。
Here, it is assumed that the mobile agent 305 on the environment “Env1” moves to the environment “Env4” as shown in FIG. At this time, the mobile agent 305 moves to the environment “Env4”, acquires a new identifier “ag4” on the environment “Env4”, and
become. The mobile agent 401 is a process equivalent to the mobile agent 305 except for the identifier and the environment name. Thereafter, the mobile agent 401 stores the new identifier and environment name in the agent 302,
306, 307, and updates the data relating to the user in the name servers 302, 306, 307.

【0063】移動時の通知は直接の親子関係のあるエー
ジェントにしか行われない。例えば、移動エージェント
310は移動エージェント305に関する情報をネーム
サーバに保持しているが、移動エージェント305の新
しい実体である移動エージェント401に関する情報は
移動エージェント310には通知されない。移動エージ
ェント310が移動エージェント305に通信を行う場
合、移動エージェント305が移動するまでは、識別子
“ag1”と環境名“Env1”を指定することで対象
に直接接続することが可能であった。移動エージェント
305が移動して移動エージェント401になった後の
移動エージェント310から移動エージェント305
(401)への最初の通信は、まず古い識別子“ag
2”と環境名“Env1”を指定して接続を試みること
で行われる。この時、既に移動エージェント305は存
在しないため、この最初の接続は失敗する。この時、移
動エージェント310は移動エージェント305(40
1)の絶対パス“((Controler Env1)
Secretary scheduler)”を調べ、
以下の手順で移動エージェント305の正確な情報を獲
得する。
The notification at the time of movement is given only to agents having a direct parent-child relationship. For example, the mobile agent 310 holds information on the mobile agent 305 in the name server, but information on the mobile agent 401 which is a new entity of the mobile agent 305 is not notified to the mobile agent 310. When the mobile agent 310 communicates with the mobile agent 305, it is possible to directly connect to the target by specifying the identifier “ag1” and the environment name “Env1” until the mobile agent 305 moves. From the mobile agent 310 after the mobile agent 305 has moved to become the mobile agent 401, the mobile agent 305
The first communication to (401) begins with the old identifier "ag
The connection is attempted by specifying the environment name “Env1” and the environment name “Env1.” At this time, the first connection fails because the mobile agent 305 does not already exist. (40
1) Absolute path "((Controller Env1)
Secretary scheduler) "
The correct information of the mobile agent 305 is obtained by the following procedure.

【0064】1.識別子“Controler”、環境
名“Env1”である固定エージェント301のネーム
サーバに“Secretary”のラベルで問い合わせ
て移動エージェント302の正確な情報を獲得する。 2.得られた移動エージェント302に関する情報,す
なわち識別子“ag2”、環境名“Env1”を指定し
て、移動エージェント302のネームサーバに“sch
eduler”のラベルで問い合わせて移動エージェン
ト401の正確な情報を獲得する。 3.移動エージェント310自身の持つネームサーバの
移動エージェント305に関する部分を、図17の通り
移動エージェント401の情報に更新する。 4.識別子“ag4”、環境名“Env4”を指定して
移動エージェント401に接続する。
1. The name server of the fixed agent 301 having the identifier "Controller" and the environment name "Env1" is inquired with the label "Secretary" to obtain accurate information of the mobile agent 302. 2. The obtained information on the mobile agent 302, that is, the identifier “ag2” and the environment name “Env1” are designated, and “sch
Inquiry with the label of “eduler” to obtain accurate information of the mobile agent 401. 3. Update the part of the name server of the mobile agent 310 relating to the mobile agent 305 to the information of the mobile agent 401 as shown in FIG. Connect to the mobile agent 401 by specifying the identifier “ag4” and the environment name “Env4”.

【0065】この後、移動エージェント401が移動し
ない限り、新たに獲得した情報識別子“ag4”、環境
名“Env4”を用いて直接移動エージェント401に
接続することが可能になる。
Thereafter, as long as the mobile agent 401 does not move, it is possible to directly connect to the mobile agent 401 using the newly acquired information identifier “ag4” and environment name “Env4”.

【0066】実施例2 図18を用いて、他の実施例を説明する。501,50
2,503,504,505は、或るタスクを実行する
ためのエージェント群のクラス定義である。501は子
エージェントとして502,503を生成し、それぞれ
に“Task1”,“Task2”というラベルを付け
て情報を管理する。生成されたエージェント502と5
03はそれぞれ子エージェントとして504,505を
生成し、それらに“Subtask”というラベルを付
けて情報を管理する。エージェント502,503,5
04,505はそれぞれ独立したエージェントとして動
作するが、動作中にエージェント502とエージェント
503は相互に、エージェント504はエージェント5
03に対して、エージェント505はエージェント50
4に対して通信を行う。
Embodiment 2 Another embodiment will be described with reference to FIG. 501,50
2, 503, 504 and 505 are class definitions of a group of agents for executing a certain task. Reference numeral 501 generates child agents 502 and 503, and manages information by attaching labels to “Task1” and “Task2”, respectively. Generated agents 502 and 5
03 generates 504 and 505 as child agents, respectively, and attaches a label “Subtask” to them to manage information. Agents 502, 503, 5
04 and 505 operate as independent agents, however, during operation, the agent 502 and the agent 503 mutually operate, and the agent 504 operates as the agent 5
03, the agent 505 is the agent 50
4 is communicated.

【0067】このような動作を行うエージェント群を定
義するには、エージェント502,503,504,5
05に対して、それぞれの通信対象を特定する情報を与
える必要がある。この情報として、相対パスを指定する
ことで、相対的な関係を記述する。相対パスは、全て自
分自身を起点として親を辿って探索する形になる。具体
的には、自分自身を“()”で表すと、それぞれの通信
対象は図19の通り表せる。
In order to define an agent group that performs such an operation, the agents 502, 503, 504, 5
05, it is necessary to provide information for specifying each communication target. By specifying a relative path as this information, a relative relationship is described. Relative paths all take the form of a search starting from oneself and following the parent. More specifically, if oneself is represented by "()", each communication target can be represented as shown in FIG.

【0068】同一のクラス群の定義より複数のインスタ
ンスが生成される例として、このエージェント群が特定
のエージェントによって定期的に生成される例を考え
る。このようなエージェントインスタンス群の関係は図
20の通りになる。601は定期的に(例えば月に一
度)エージェント群のインスタンスを生成するエージェ
ントであり、612と613が生成されたインスタンス
群である。602と607が501の、603と608
が502の、604と609が503の、605と61
0が504の、606と611が505の、それぞれイ
ンスタンスとなり、クラス定義で与えられた通信対象に
関する相対パスを持っている。
As an example in which a plurality of instances are generated based on the definition of the same class group, consider an example in which this agent group is periodically generated by a specific agent. The relationship between such agent instance groups is as shown in FIG. An agent 601 periodically (for example, once a month) generates an instance of an agent group, and 612 and 613 are generated instance groups. 602 and 607 are 501, 603 and 608
Is 502, 604 and 609 are 503, 605 and 61
0 is 504, and 606 and 611 are instances of 505, and have relative paths related to the communication target given in the class definition.

【0069】同一クラスのエージェントである603と
608は、通信対象に関する情報として、502で定義
された共通の相対パス“(()parent Task
2)”を持つ。しかしながら、検索開始位置が自分自身
であるため、実際に通信する対象は603は604、6
08は609と異なったものになる。同様に、604,
605,606の持つ相対パスと、609,610,6
11の持つ相対パスはそれぞれ等しいが、実際に通信す
る対象は異なる。このように、エージェントのインスタ
ンス群612と613は全て共通の通信対象に関する情
報を持つが、実際の通信は同じインスタンス群の中で行
われ、全く無関係なエージェント群として振る舞うこと
ができる。
The agents 603 and 608 of the same class use the common relative path “(() parent Task”
However, since the search start position is itself, the communication target 603 is 604, 6
08 is different from 609. Similarly, 604,
Relative paths of 605, 606 and 609, 610, 6
11 have the same relative path, but have different targets for actual communication. As described above, the agent instance groups 612 and 613 all have information on a common communication target, but the actual communication is performed in the same instance group and can act as a completely unrelated agent group.

【0070】逆に、指定すれば異なるインスタンス群に
含まれるエージェントと通信を行うことも可能である。
例えば、インスタンス群613に含まれるエージェント
611が、先月のタスクの情報を調べるためにインスタ
ンス群612に含まれるエージェント605と通信しよ
うとする場合、601がその子エージェントに付けるラ
ベルの規則さえ分かっていれば、対象を特定することが
できる。この実施例では、「601は月の名前をラベル
として用いる」ということが分かっていれば、自分自身
の絶対パスから607に付けられた“July”を得
て、これから602に付けられたラベル“June”を
推論して、結果として605を示す情報として“(()
parent parent parent June
Task1 Subtask)”という相対パスを
得、これを用いて実際に605を特定することが可能で
ある。
Conversely, if specified, it is possible to communicate with agents included in different instances.
For example, if the agent 611 included in the instance group 613 attempts to communicate with the agent 605 included in the instance group 612 in order to check information on the task of the last month, if only the rule of the label that the 601 assigns to its child agent is known. , The target can be specified. In this embodiment, if it is known that "601 uses the name of the month as a label", "Jully" attached to 607 is obtained from its own absolute path, and the label "602""June" and inferring "(()" as information indicating 605 as a result.
parent parent parent June
Task1 Subtask) "is obtained, and this can be used to actually specify 605.

【0071】このようなエージェント群を超えた通信に
際して、その共通の祖先である601は仲介のための特
別な処理を一切必要としない。同様のことは他の全ての
エージェントにも言え、それぞれのエージェントがラベ
ルという形で他のエージェントとの関係を明確にしてい
れば、後は611が通信対象605との相対関係「自分
の親の親の親のJuneという子のTask1という子
のSubtaskという子エージェント」という情報を
知り、それを相対パスと言う形で指定するだけで、対象
を特定して通信を行うことが可能となる。
For communication beyond such a group of agents, the common ancestor 601 does not require any special processing for mediation. The same can be said for all the other agents. If each agent clarifies the relationship with the other agent in the form of a label, then 611 becomes the relative relationship with the communication target 605 "the parent's own It is possible to identify and communicate with the target object only by knowing the information "child agent of child, Task1 of child, Task1 of child of June, parent of the parent, and specifying it in the form of a relative path.

【0072】実施例3 先の実施例では共通の祖先を持つエージェント集団を扱
ったが、共通の祖先を持たないエージェント集団でも同
様の通信対象の特定は可能である。
Embodiment 3 Although the foregoing embodiment deals with an agent group having a common ancestor, a similar communication target can be specified even with an agent group having no common ancestor.

【0073】図21を用いて本発明の実施例を説明す
る。703,704,705,706,707,70
8,709,710は、全て互いに親子関係を持たない
エージェントとする。701と702はそれぞれ、契約
ネットプロトコルによって構築されたタスク処理集団で
ある。703は集団701のマネージャであり、70
4,705,706は703と契約をした契約者であ
る。同様に、707は集団702のマネージャであり、
708,709,710は707と契約をした契約者で
ある。
An embodiment of the present invention will be described with reference to FIG. 703, 704, 705, 706, 707, 70
8, 709 and 710 are all agents having no parent-child relationship with each other. 701 and 702 are task processing groups constructed according to the contract net protocol. 703 is a manager of the group 701;
4,705,706 are contractors who have contracted with 703. Similarly, 707 is the manager of group 702,
708, 709, and 710 are contractors who have contracted with 707.

【0074】マネージャとその契約者は最初は互いに関
する一切の情報を持たないが、マネージャがタスク提示
と同時に自分の識別子,環境名,絶対パスをブロードキ
ャストし、契約者も入札と同時に自分の識別子,環境
名,絶対パスをマネージャに通知することで、通信にお
いて互いを特定する情報を得て、タスク処理集団を構成
する。このようにして得た情報に対して、マネージャは
各契約者に関する情報を、“contractor
1”,“contractor2”,“contrac
tor3”というラベルをつけて管理する。一方、契約
者はマネージャに関する情報を“manager”とい
うラベルをつけて管理する。また、2つのマネージャ7
03と707は、相手のタスク提示の通信を受けて、互
いを類似したタスクを持ったマネージャとして認識し、
互いに相手を“same- trade”というラベルを
付けてその情報を管理する。
Although the manager and his contractor initially do not have any information about each other, the manager broadcasts his / her identifier, environment name and absolute path at the time of the task presentation, and the contractor also bids his / her own identifier, at the time of bidding. By notifying the manager of the environment name and the absolute path, information for identifying each other in communication is obtained, and a task processing group is configured. In response to the information obtained in this manner, the manager sends information on each contractor to “contractor”.
1 "," contractor2 "," contrac
The contractor manages the information related to the manager by attaching the label “manager”.
03 and 707 receive communication of the other party's task presentation and recognize each other as managers having similar tasks,
Labeling each other with "same - trade" and managing the information.

【0075】このような関係を持ったエージェント集団
において、マネージャが類似タスクを持った他のマネー
ジャを知っていることを契約者704が知っていれば、
704は「自分のマネージャの類似マネージャと契約し
たエージェント」という関係を表す相対パスとして、 (()manager same- trade contractor1) (()manager same- trade contractor2) (()manager same- trade contractor3) (()manager same- trade contractor4) …… という情報を指定することで、自分と似た境遇にあるエ
ージェント708,709,710と通信を行うことが
できる。ただし、“(()manager same- tradecontrac
tor4)”によって示されるエージェントは存在しないた
め、この通信は失敗する。このような通信を行うこと
で、704は自分と類似したサブタスクを請け負ったエ
ージェントを探しだし、それと協力することで容易にタ
スクを実現する、といった行動をとることも可能にな
る。また、この関係は完全に対称であるため、逆側のエ
ージェントである708なども、全く同じ相対パスを指
定することで、704,705,706と通信すること
が可能となる。
In a group of agents having such a relationship, if the contractor 704 knows that the manager knows another manager who has a similar task,
Reference numeral 704 denotes a relative path representing a relationship of “an agent who has contracted with a similar manager of his / her manager”. (() Manager same - trade contractor1) (() manager same - trade contractor2) (() manager same - trade contractor3) ( By specifying information such as () manager same - trade contractor4) ……, it is possible to communicate with agents 708, 709, and 710 in a similar situation to the user. However, “(() manager same - tradecontrac
This communication fails because the agent indicated by tor4) "does not exist. By performing such communication, 704 searches for an agent who has contracted a subtask similar to itself, and easily cooperates with the agent. Also, since this relationship is completely symmetric, the opposite agent 708 and the like can specify 704, 705, 706 can be communicated.

【0076】[0076]

【発明の効果】以上説明したように本発明によれば以下
のような効果を得ることができる。
As described above, according to the present invention, the following effects can be obtained.

【0077】通信対象が移動したことによりそのアドレ
ス(識別子および環境名)が変化した場合であっても、
その最新のアドレスを確実に取得できる。その理由は、
絶対パスによって最新の識別子および環境名を他のエー
ジェントから検索することができるからである。
Even if the address (identifier and environment name) changes due to the movement of the communication target,
The latest address can be reliably obtained. The reason is,
This is because the latest identifier and environment name can be searched from another agent by the absolute path.

【0078】移動エージェントのアドレス管理に関して
特定の装置に負荷が集中することがない。その理由は、
移動エージェントの名前管理にネットワーク上ユニーク
な名前を用いることなく、識別子は環境毎、ラベルはエ
ージェント毎に管理しており、個々の移動エージェント
自体が部分的なネームサーバ機能を持って、各移動エー
ジェントが協調し合って全体として一つのネームサーバ
を実現しているからである。
The load does not concentrate on a specific device with respect to the address management of the mobile agent. The reason is,
Instead of using unique names on the network for name management of mobile agents, identifiers are managed for each environment and labels are managed for each agent, and each mobile agent itself has a partial name server function, and each mobile agent has a name server function. Cooperate with each other to realize one name server as a whole.

【0079】移動対象のアドレスを毎回問い合わせる無
駄がない。その理由は、何らかの方法で通信対象との通
信に成功した場合、その通信対象から識別名,環境名お
よび絶対パスを取得して、自エージェントに保存するか
らである。
There is no waste in inquiring the address of the movement target every time. The reason is that, if the communication with the communication target succeeds by any method, the identification name, the environment name, and the absolute path are acquired from the communication target and stored in the own agent.

【0080】エージェントの相対関係に基づいた通信対
象の指定が可能である。その理由は、ネットワーク上ユ
ニークな名前でなく、エージェント毎に管理されるラベ
ルを組み合わせた、自エージェントから通信対象のエー
ジェントへ辿り着くための道筋を示すラベル列である相
対パスによって通信対象を指定できるからである。これ
によって、同じ相互関係を持ったエージェント集団を、
同一のエージェント定義から作成することが可能とな
る。更に、これと同時に、こうしたエージェント集団を
超えた対象の特定も可能である。
It is possible to specify a communication target based on the relative relationship between agents. The reason is that instead of a unique name on the network, the communication target can be specified by a relative path, which is a label string indicating the route to reach the communication target agent from the own agent, combining labels managed for each agent. Because. As a result, a group of agents with the same interaction
It can be created from the same agent definition. Further, at the same time, it is possible to specify an object beyond such an agent group.

【0081】検索パス最短化を行う構成にあっては、通
信対象のアドレスの検索をより効率良く行うことができ
る。
In the configuration in which the search path is minimized, the search for the address to be communicated can be performed more efficiently.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の実施の形態の構成図である。FIG. 1 is a configuration diagram of an embodiment of the present invention.

【図2】通信機能の構成例を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration example of a communication function.

【図3】検索パスを定義するためのアルゴリズムを示す
フローチャートである。
FIG. 3 is a flowchart illustrating an algorithm for defining a search path.

【図4】全ての移動エージェントが固定エージェントを
祖先として生成されている一例を示す親子関係の階層図
である。
FIG. 4 is a hierarchy diagram of a parent-child relationship showing an example in which all mobile agents are generated with fixed agents as ancestors.

【図5】他の移動エージェントと通信を行う際の通信機
能の制御部の動作例を示すフローチャートである。
FIG. 5 is a flowchart illustrating an operation example of a control unit of a communication function when communicating with another mobile agent.

【図6】検索パス展開機能の動作例を示すフローチャー
トである。
FIG. 6 is a flowchart illustrating an operation example of a search path expanding function.

【図7】指定された検索パスを元に通信対象の識別子と
環境名を検索する手順の動作を示す説明図である。
FIG. 7 is an explanatory diagram showing an operation of a procedure for searching for an identifier and an environment name of a communication target based on a specified search path.

【図8】検索パス最短化機能の説明図である。FIG. 8 is an explanatory diagram of a search path minimizing function.

【図9】検索パス最短化機能の説明図である。FIG. 9 is an explanatory diagram of a search path minimizing function.

【図10】検索パス最短化機能の動作を示すフローチャ
ートである。
FIG. 10 is a flowchart showing an operation of a search path minimizing function.

【図11】実施例1の説明で用いるエージェント群を示
す図である。
FIG. 11 is a diagram illustrating an agent group used in the description of the first embodiment.

【図12】図11のエージェント群の識別子と環境名を
示す図である。
FIG. 12 is a diagram showing an identifier and an environment name of the agent group of FIG. 11;

【図13】図11の各エージェントの絶対パスを示す図
である。
FIG. 13 is a diagram illustrating an absolute path of each agent in FIG. 11;

【図14】図11の移動エージェント305がネームサ
ーバ内データベースに保持する情報の例を示す図であ
る。
14 is a diagram showing an example of information held by a mobile agent 305 in FIG. 11 in a database in a name server.

【図15】図11の移動エージェント310がネームサ
ーバ内データベースに保持する情報の例を示す図であ
る。
FIG. 15 is a diagram showing an example of information held by a mobile agent 310 in FIG. 11 in a database in a name server.

【図16】環境“Env1”上の移動エージェント30
5が環境“Env4”上へ移動する様子を示す図であ
る。
FIG. 16 shows a mobile agent 30 on an environment “Env1”.
FIG. 5 is a diagram showing a state in which the environment No. 5 moves onto an environment “Env4”.

【図17】移動エージェント310自身の持つネームサ
ーバの移動エージェント305に関する部分の更新例を
示す図である。
FIG. 17 is a diagram showing an example of updating a part relating to the mobile agent 305 of the name server of the mobile agent 310 itself.

【図18】実施例2の説明で用いるエージェント群を示
す図である。
FIG. 18 is a diagram illustrating an agent group used in the description of the second embodiment.

【図19】図18中のエージェント502,503,5
04,505に与えられる通信対象の相対パスの例を示
す図である。
FIG. 19 shows agents 502, 503, and 5 in FIG.
It is a figure showing the example of the relative path of the communication object given to 04,505.

【図20】同一のクラス群の定義より生成された複数の
インスタンスを示す図である。
FIG. 20 is a diagram showing a plurality of instances generated from the definition of the same class group.

【図21】実施例3の説明で用いるエージェント群を示
す図である。
FIG. 21 is a diagram illustrating an agent group used in the description of the third embodiment.

【図22】従来技術の説明図である。FIG. 22 is an explanatory diagram of a conventional technique.

【符号の説明】[Explanation of symbols]

101〜104…環境 105〜108…移動エージェント装置 109…エージェント主機能 110…エージェント自身の識別子,環境名および絶対
パスからなる情報 111…エージェント生成機能 112…移動機能 113…通信機能 114…ネームサーバ機能 115…ネームサーバの制御機能 117…データベース 118〜120…他のエージェントに関する情報 121…通信機能の制御部 122…通信機能の直接通信機能 123…通信機能の検索パス展開機能 124…通信機能の検索パス最短化機能 125…通信機能の受信部 201…固定エージェント装置 202〜206…エージェント装置 207〜211…ラベル 301…固定エージェント装置 302〜307…エージェント装置 308…固定エージェント装置 309〜312…エージェント装置 313〜323…ラベル 401…移動エージェント装置 501〜505…エージェント装置定義クラス 601〜611…エージェント装置インスタンス 612,613…エージェントインスタンス群 701,702…タスク処理集団 703〜710…エージェント装置
101 to 104 Environment 105 to 108 Mobile agent device 109 Agent main function 110 Information including an agent's own identifier, environment name and absolute path 111 Agent generation function 112 Mobile function 113 Communication function 114 Name server function 115: Name server control function 117: Database 118-120: Information on other agents 121: Communication function control unit 122: Communication function direct communication function 123: Communication function search path expansion function 124: Communication function search path Shortest function 125 ... Receiver of communication function 201 ... Fixed agent device 202-206 ... Agent device 207-211 ... Label 301 ... Fixed agent device 302-307 ... Agent device 308 ... Fixed agent device 309- 312: Agent device 313 to 323 Label: 401: Mobile agent device 501 to 505: Agent device definition class 601 to 611: Agent device instance 612, 613: Agent instance group 701, 702: Task processing group 703 to 710: Agent device

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 FI H04L 12/26 ──────────────────────────────────────────────────続 き Continued on the front page (51) Int.Cl. 6 Identification code FI H04L 12/26

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 複数の環境から構成されるコンピュータ
ネットワーク上の任意の環境間を移動することができる
移動エージェントのアドレス管理方法において、(a)
移動エージェントの生成条件として、移動機能を持たな
い固定エージェントを必ず祖先に持つという条件を与
え、該条件の下で生成された移動エージェントに対し
て、該祖先の固定エージェントの識別子および環境名
と、該祖先の固定エージェントから親子関係のラベルの
みを辿って自エージェントへ辿り着くまでのラベル列と
から構成される絶対パス名を付与し、(b)各移動エー
ジェントごとに、直接の親,子となるエージェントの絶
対パス,識別子および環境名から構成される情報を、ラ
ベル名を付けて管理させ、(c)自ら環境間を移動した
移動エージェントに対しては、移動後の環境で得た新た
な識別子および環境名を、直接の親,子となるエージェ
ントに通知させて、これら直接の親,子となるエージェ
ント側で前記移動した移動エージェントの最新の識別子
および環境名を常に管理できるようにしておき、(d)
移動エージェントが、識別子および環境名を用いた通信
対象との通信に失敗した場合、その通信対象の絶対パス
名中の識別子および環境名で定まる固定エージェントか
ら順番に、問い合わせ先エージェントの直接の子エージ
ェントにかかるラベル名を指定してその識別子および環
境名を問い合わせていって、最終的に前記通信の失敗し
た通信対象の現在の最新の識別子および環境名を得るよ
うにしたことを特徴とする移動エージェントのアドレス
管理方法。
1. An address management method for a mobile agent capable of moving between arbitrary environments on a computer network composed of a plurality of environments.
As a condition for generating a mobile agent, a condition that an ancestor always has a fixed agent that does not have a mobile function is given. For a mobile agent generated under the condition, an identifier and an environment name of the fixed agent of the ancestor and An absolute path name composed of a label sequence from the fixed agent of the ancestor to only the parent-child relationship label and arriving at the own agent is given. (B) For each mobile agent, a direct parent, child and The information composed of the absolute path, identifier, and environment name of the agent is managed by assigning a label name. (C) For a mobile agent that has moved between environments by itself, new information obtained in the moved environment is obtained. The direct parent / child agent is notified of the identifier and the environment name, and the moved parent / child agent side is moved. You should be prepared to always manage the latest of the identifier and the environment name of the agent, (d)
If the mobile agent fails to communicate with the communication target using the identifier and the environment name, the child agent is a direct child agent of the inquiry destination agent in order from the fixed agent determined by the identifier and the environment name in the absolute path name of the communication target. A mobile agent characterized in that the label and the environment name are specified and the identifier and the environment name are queried, and finally the current latest identifier and the environment name of the communication target whose communication has failed are obtained. Address management method.
【請求項2】 通信対象との通信に成功した場合、その
通信対象から識別名,環境名および絶対パスを取得し
て、自エージェントに保存するようにしたことを特徴と
する請求項1記載の移動エージェントのアドレス管理方
法。
2. The communication method according to claim 1, wherein when the communication with the communication target is successful, the identification name, the environment name and the absolute path are obtained from the communication target and stored in the own agent. Mobile agent address management method.
【請求項3】 前記(d)の処理において、自エージェ
ントと、通信に失敗した通信対象とに共通の祖先があ
り、且つ、通信に失敗した通信対象の絶対パスのパス長
よりも、自エージェントから前記共通の祖先まで辿りそ
れ以降を通信対象の絶対パスの途中から辿る代替パスの
パス長の方が短い場合には、該代替パスの経路に沿って
順番にラベル名を指定して識別子および環境名を問い合
わせていって、最終的に前記通信の失敗した通信対象の
現在の最新の識別子および環境名を得るようにしたこと
特徴とする請求項1また2記載の移動エージェントのア
ドレス管理方法。
3. In the processing of (d), the own agent and the communication target that has failed to communicate have a common ancestor, and the own agent has a path length of the absolute path of the communication target that has failed communication. If the path length of the alternative path that traces from the path to the common ancestor and thereafter from the middle of the absolute path to be communicated is shorter, the label name is specified in order along the path of the alternative path, and the identifier and 3. The address management method for a mobile agent according to claim 1, further comprising the step of inquiring about an environment name and finally obtaining a current latest identifier and an environment name of the communication target in which the communication has failed.
【請求項4】 自エージェントから通信対象のエージェ
ントへ辿り着くための道筋を示すラベル列である相対パ
スによって通信対象が指定された場合、該相対パスの経
路に沿って順番にラベル名を指定して識別子および環境
名を問い合わせていって、最終的に通信対象の識別子お
よび環境名を得て、これを用いて通信対象との通信を行
うことを特徴とする請求項1,2または3記載の移動エ
ージェントのアドレス管理方法。
4. When a communication target is specified by a relative path, which is a label string indicating a route from the own agent to the communication target agent, a label name is sequentially specified along the path of the relative path. 4. The method according to claim 1, wherein the identifier and the environment name are inquired to obtain the identifier and the environment name of the communication target, and the communication with the communication target is performed by using the identifier and the environment name. Mobile agent address management method.
【請求項5】 情報検索,電子ショッピング,予約など
エージェント本来の動作を司るエージェント主機能と、
他の移動エージェントを生成するエージェント生成機能
と、他の環境へ移動する移動機能と、他のエージェント
とインタラクションを行う通信機能と、他のエージェン
トに関する情報を保持するネームサーバ機能とを備え、
移動機能を持たない固定エージェントを祖先に持つよう
に固定エージェントまたは他の移動エージェントから生
成された移動エージェント装置であって、祖先の固定エ
ージェントの識別子および環境名と、該祖先の固定エー
ジェントから親子関係のラベルのみを辿って自エージェ
ントへ辿り着くまでのラベル列とから構成される絶対パ
ス名を有し、かつ、 前記ネームサーバ機能は、直接の親,子となるエージェ
ントの絶対パス,識別子および環境名から構成される情
報を、ラベル名を付けて管理するデータベースと、他エ
ージェントからのラベル名を指定した問い合わせに対し
て前記データベース中の当該ラベル名に対応する情報中
の識別子および環境名を問い合わせ元に通知する制御機
能とを有し、 前記通信機能は、前記移動機能によって自エージェント
が環境間を移動した際に、移動後の環境で得た新たな識
別子および環境名を、前記データベースで管理されてい
る直接の親,子となるエージェントに通知し、他方、こ
れら直接の親,子となるエージェントから最新の識別子
および環境名の通知を受けたときはそれらを前記制御機
能を通じて前記データベースに反映する制御部と、識別
子および環境名を用いて通信対象との通信を行う直接通
信機能と、この直接通信機能による通信が失敗した場
合、その通信対象の絶対パス名中の識別子および環境名
で定まる固定エージェントから順番に、問い合わせ先エ
ージェントの直接の子エージェントにかかるラベル名を
指定してその識別子および環境名を問い合わせていっ
て、最終的に前記通信の失敗した通信対象の現在の最新
の識別子および環境名を得る検索パス展開機能とを有す
ることを特徴とする移動エージェント装置。
5. An agent main function which controls the original operation of the agent such as information search, electronic shopping, reservation, etc.
An agent generation function for generating another mobile agent, a movement function for moving to another environment, a communication function for interacting with another agent, and a name server function for holding information on other agents,
A mobile agent device generated from a fixed agent or another mobile agent so as to have a fixed agent without a moving function as an ancestor, wherein an identifier and an environment name of the fixed agent of the ancestor and a parent-child relationship from the fixed agent of the ancestor are provided. And the name server function includes a direct parent and child absolute path, an identifier, and an environment. A database that manages information consisting of names with label names, and inquires of identifiers and environment names in information corresponding to the label names in the database in response to inquiries from other agents that specify label names. A communication function based on the movement function. When the own agent moves between environments, a new identifier and environment name obtained in the environment after the movement are notified to the direct parent / child agent managed in the database. When the latest identifier and environment name are notified from the parent and child agents, the control unit reflects the latest identifier and environment name to the database through the control function, and communicates directly with the communication target using the identifier and environment name. If the communication function and the communication by this direct communication function fail, specify the label name for the direct child agent of the inquiry destination agent in order from the fixed agent determined by the identifier in the absolute path name of the communication target and the environment name To query the identifier and the environment name, and finally the current and latest identification of the communication target in which the communication has failed. A mobile agent device having a search path expanding function for obtaining child and environment names.
【請求項6】 前記ネームサーバ機能は、通信に成功し
た通信対象の識別名,環境名および絶対パスが前記デー
タベースに保存されていない場合には保存する構成を有
することを特徴とする請求項5記載の移動エージェント
装置。
6. The name server function according to claim 5, wherein an identification name, an environment name, and an absolute path of a communication target that has successfully communicated are stored in the database if they are not stored in the database. Mobile agent device as described.
【請求項7】 前記通信機能は、自エージェントと、通
信に失敗した通信対象とに共通の祖先があり、且つ、通
信に失敗した通信対象の絶対パスのパス長よりも、自エ
ージェントから前記共通の祖先まで辿りそれ以降を通信
対象の絶対パスの途中から辿る代替パスのパス長の方が
短いかどうかを調べ、短い場合には該代替パスを選択す
る検索パス最短化機能を備え、前記代替パスが選択され
た場合には、前記検索パス展開機能は、該代替パスの経
路に沿って順番にラベル名を指定して識別子および環境
名を問い合わせていって、最終的に前記通信の失敗した
通信対象の現在の最新の識別子および環境名を得る構成
を有することを特徴とする請求項5または6記載の移動
エージェント装置。
7. The communication function according to claim 1, wherein the own agent and the communication target that has failed to communicate have a common ancestor, and the local agent has a common ancestor that is smaller than the path length of the absolute path of the communication target that has failed communication. A search path minimizing function for checking whether or not the path length of an alternative path following the ancestor of the alternative path from the middle of the absolute path of the communication target is shorter. When a path is selected, the search path expanding function inquires an identifier and an environment name by sequentially specifying a label name along the route of the alternative path, and finally, the communication fails. 7. The mobile agent device according to claim 5, wherein the mobile agent device has a configuration for obtaining a current latest identifier and an environment name of a communication target.
【請求項8】 前記検索パス展開機能は、自エージェン
トから通信対象のエージェントへ辿り着くための道筋を
示すラベル列である相対パスによって通信対象が指定さ
れた場合、該相対パスの経路に沿って順番にラベル名を
指定して識別子および環境名を問い合わせていって、最
終的に通信対象の識別子および環境名を得て、これを用
いて前記直接通信機能により通信対象との通信を行う構
成を有することを特徴とする請求項5,6または7記載
の移動エージェント装置。
8. The search path expanding function is provided, when a communication target is specified by a relative path which is a label string indicating a route from the own agent to the communication target agent, along a path of the relative path. A configuration in which an identifier and an environment name are queried in order by designating a label name in order, and finally an identifier and an environment name of a communication target are obtained, and communication with the communication target is performed using the direct communication function by using the obtained identifier and environment name. 8. The mobile agent device according to claim 5, wherein the mobile agent device has a mobile agent device.
JP8329133A 1996-11-25 1996-11-25 Mobile agent address management method and mobile agent device Expired - Fee Related JP2970564B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8329133A JP2970564B2 (en) 1996-11-25 1996-11-25 Mobile agent address management method and mobile agent device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8329133A JP2970564B2 (en) 1996-11-25 1996-11-25 Mobile agent address management method and mobile agent device

Publications (2)

Publication Number Publication Date
JPH10154075A true JPH10154075A (en) 1998-06-09
JP2970564B2 JP2970564B2 (en) 1999-11-02

Family

ID=18218003

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8329133A Expired - Fee Related JP2970564B2 (en) 1996-11-25 1996-11-25 Mobile agent address management method and mobile agent device

Country Status (1)

Country Link
JP (1) JP2970564B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001101146A (en) * 1999-09-29 2001-04-13 Omron Corp Agent system, communication method, equipment, and recording medium
JP2001292149A (en) * 2000-02-22 2001-10-19 Internatl Business Mach Corp <Ibm> Device and method using naming rule with respect to different types of devices
WO2001099341A1 (en) * 2000-06-21 2001-12-27 Dennis Choo Han Goh Unified addressing system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001101146A (en) * 1999-09-29 2001-04-13 Omron Corp Agent system, communication method, equipment, and recording medium
JP2001292149A (en) * 2000-02-22 2001-10-19 Internatl Business Mach Corp <Ibm> Device and method using naming rule with respect to different types of devices
WO2001099341A1 (en) * 2000-06-21 2001-12-27 Dennis Choo Han Goh Unified addressing system

Also Published As

Publication number Publication date
JP2970564B2 (en) 1999-11-02

Similar Documents

Publication Publication Date Title
US6671746B1 (en) Execution of application process using registry having binding methods
US6173313B1 (en) Methodology for hosting distributed objects at a predetermined node in a distributed system
US5564051A (en) Automatic update of static and dynamic files at a remote network node in response to calls issued by or for application programs
JP3622313B2 (en) Document management system
US6470375B1 (en) System and method for managing the execution of system management tasks
EP0436559B1 (en) Data processing network
JP2002132739A (en) Stab retrieval loading system and method, server device, client device and computer readable recording medium
JPH05181814A (en) Object-oriented computing system
JPS6170654A (en) Resource control system of decentralized processing system
US20030037097A1 (en) Accessing information content
US6269378B1 (en) Method and apparatus for providing a name service with an apparently synchronous interface
JP2000115359A (en) Npa division management in intelligent network environment
JP4040256B2 (en) Server system and recording medium
US7590618B2 (en) System and method for providing location profile data for network nodes
US20020116540A1 (en) Mobile agent transfer system, method and program for portable devices
CN112035122B (en) Interface deployment method, system and storage medium
US6263213B1 (en) Component-based control structure for wireless communication
CN116708266A (en) Cloud service topological graph real-time updating method, device, equipment and medium
JP2970564B2 (en) Mobile agent address management method and mobile agent device
JPH10333925A (en) Autonomous agent architecture
JP2002505474A (en) Method and system for facilitating access to a lookup service
JPH09160847A (en) Client server-type distribution processing system
JP2001337858A (en) Duplication data management system
Adebayo et al. A performance study of client-broker-server systems
JP2003303108A (en) Corba distributed process system, priority map management method for the same, and corba distributed program

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070827

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080827

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080827

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090827

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees