JP2000215180A - Data communication device, system and method - Google Patents
Data communication device, system and methodInfo
- Publication number
- JP2000215180A JP2000215180A JP11017393A JP1739399A JP2000215180A JP 2000215180 A JP2000215180 A JP 2000215180A JP 11017393 A JP11017393 A JP 11017393A JP 1739399 A JP1739399 A JP 1739399A JP 2000215180 A JP2000215180 A JP 2000215180A
- Authority
- JP
- Japan
- Prior art keywords
- receiving
- data
- communication
- agent
- data communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000006854 communication Effects 0.000 title claims abstract description 348
- 238000004891 communication Methods 0.000 title claims abstract description 340
- 238000000034 method Methods 0.000 title claims description 130
- 230000005540 biological transmission Effects 0.000 claims description 184
- 238000012546 transfer Methods 0.000 claims description 5
- 238000007634 remodeling Methods 0.000 abstract 1
- 238000012545 processing Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 10
- 230000000694 effects Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 2
- 241000347391 Umbrina cirrosa Species 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000009257 reactivity Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
Landscapes
- Multi Processors (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、データ通信装置、
データ通信システム及びデータ通信方法に係り、詳細に
は、エージェント間でデータ通信を行う手法に関する。The present invention relates to a data communication device,
The present invention relates to a data communication system and a data communication method, and more particularly, to a technique for performing data communication between agents.
【0002】[0002]
【従来の技術】現在の分散型コンピュータシステムの主
流はクライアント/サーバ型システムである。このクラ
イアント/サーバ型システムのソフトウェア上の問題点
として、プログラムの実行手順がプログラム開発時に固
定されてしまうため、当該システムの動作・環境状況に
応じた柔軟かつ動的な処理が行えないという点が指摘さ
れている。そこで、分散システムの分野において、CO
RBA(Common ObjectRequest Broker Architecture)
等の分散オブジェクト指向技術が注目されている。CO
RBAとは、OMG(Object Management Group)とい
う分散オブジェクト指向技術における非営利の標準化団
体が仕様を制定しているORB(ObjectRequest Broke
r)の標準仕様のことである。2. Description of the Related Art The current mainstream distributed computer systems are client / server systems. As a software problem of the client / server type system, a procedure for executing a program is fixed at the time of program development, and therefore, a flexible and dynamic process cannot be performed in accordance with an operation / environmental condition of the system. It is pointed out. Therefore, in the field of distributed systems, CO
RBA (Common Object Request Broker Architecture)
And other distributed object-oriented technologies. CO
RBA stands for Object Request Broke (ORB), an OMG (Object Management Group), a non-profit standardization organization for distributed object-oriented technology, whose specifications have been established.
This is the standard specification of r).
【0003】ORBは、オブジェクト間のクライアント
/サーバ関係を確立し、オブジェクト間通信を行うソフ
トウェア・コンポーネントと呼ばれるものであり、クラ
イアントの要求に基づいて、当該要求に対応するオブジ
ェクトを検索してサーバを決定し、サーバに要求を伝え
る。ORBによって要求が伝えられたサーバは、サービ
ス(該当するプログラム)を実行し、結果をORBに返
す。次いで、ORBが、その結果をクライアントに返
す。したがって、クライアントは要求を発するのみで、
当該要求に対応するオブジェクトが何れのサーバにある
かを意識する必要がない。[0003] The ORB is a software component that establishes a client / server relationship between objects and performs inter-object communication. Based on a client request, the ORB searches for an object corresponding to the request and causes the server to execute a search. Decide and communicate the request to the server. The server to which the request is transmitted by the ORB executes a service (a corresponding program) and returns a result to the ORB. The ORB then returns the result to the client. So the client only makes a request,
There is no need to be aware of which server has the object corresponding to the request.
【0004】また、このORBの標準仕様であるCOR
BAは、プログラミング言語、OS等の動作環境(以
降、この動作環境のことをプラットフォームと呼ぶ)に
依存しない異なるコンピュータ間における相互操作可能
な分散型オブジェクトをどのように設定するかを纏めた
ものである。このため、様々なプログラミング言語でO
RBを用いたシステムが開発可能である。[0004] Also, COR, which is a standard specification of this ORB, is used.
The BA summarizes how to set a distributed object that can be operated between different computers independent of an operating environment (hereinafter, this operating environment is referred to as a platform) such as a programming language and an OS. is there. For this reason, various programming languages use O
A system using RB can be developed.
【0005】さらに、上記分散オブジェクト指向技術が
発展したものとして、エージェント指向技術が注目され
ており、特に、データとプログラムが一体となったオブ
ジェクトとしてネットワーク上を移動して、様々なサー
バ上で処理を行う移動エージェント或いはモバイルエー
ジェントと呼ばれる技術が注目されている。Further, agent-oriented technology has attracted attention as a development of the above-mentioned distributed object-oriented technology. In particular, an agent in which data and programs are integrated on a network and processed on various servers. A technique called a mobile agent or a mobile agent that performs the task has attracted attention.
【0006】このエージェント指向技術におけるエージ
ェントには大別して、自律性、協調性、反応性、自主
性、移動性の5つの性質を持つものが挙げられる。自律
性とは、エージェント自身が単独で動作可能なことであ
り、協調性とは、エージェントが互いにコミニュケーシ
ョンを取り合うことができることであり、反応性とは、
外部の変化に反応して動作が可能なことであり、自主性
とは、エージェント自身が目的を持って自身で目的を遂
行できることであり、移動性とは、エージェントがネッ
トワーク上を移動可能で、更に異動先で実行を継続する
ことが可能なことである。移動エージェントは、上記5
つの性質の内、特に移動性を有するものといえる。Agents in this agent-oriented technology are roughly classified into those having five characteristics of autonomy, coordination, reactivity, autonomy, and mobility. Autonomy is the ability of the agent to operate alone, coordination is the ability of agents to communicate with each other, and responsiveness is
Independence is the ability to act in response to external changes, independence means that the agent itself can carry out the purpose with its own purpose, and mobility means that the agent can move on the network, Further, it is possible to continue the execution at the transfer destination. The mobile agent is the above 5
Among these properties, it can be said that it has mobility in particular.
【0007】図12にこの移動エージェントの簡単な概
要を示した図を示す。図12において、計算機1〜3は
ネットワーク(不図示)によって接続されており、各計
算機には、移動エージェントが動作可能なプラットフォ
ームP(以降このプラットフォームをエージェントプラ
ットフォームと呼ぶ)が構築されている。移動エージェ
ントは、自身のプログラムの実行中に動作を中断し、中
断時のデータを保持したまま、異なる計算機間を移動し
て、さらに実行を再開することができる、一種のコンピ
ュータプログラムである。移動エージェントは、必要に
応じてネットワーク上を自律的に移動し、ネットワーク
上の資源を利用するとともに、他の移動エージェントと
通信を行いながら、様々な処理を実行する。FIG. 12 is a diagram showing a simple outline of this mobile agent. In FIG. 12, computers 1 to 3 are connected by a network (not shown), and a platform P on which a mobile agent can operate (hereinafter, this platform is referred to as an agent platform) is constructed in each computer. A mobile agent is a type of computer program that can suspend its operation during execution of its own program, move between different computers while retaining the data at the time of interruption, and resume execution. The mobile agent autonomously moves on the network as needed, uses various resources on the network, and performs various processes while communicating with other mobile agents.
【0008】例えば、移動エージェントに予め決められ
た行程に基づいて、固定的な順番でサーバ間の移動・処
理を行わせ、移動先のサーバでの処理に応じて次に移動
するサーバを決定するといった処理を行わせることが可
能である。また、ダイアルアップ環境において、クライ
アントから移動エージェントを送り出した後に回線を切
断し、移動先での処理が完了次第、移動エージェントに
電話をかけ直させることによって、不要な通信コストを
削減することもできる。For example, based on a predetermined process, a mobile agent moves and processes between servers in a fixed order, and determines the next server to move according to the processing at the destination server. Such processing can be performed. Also, in a dial-up environment, unnecessary communication costs can be reduced by disconnecting the line after sending out the mobile agent from the client and calling the mobile agent again as soon as the processing at the destination is completed.
【0009】このような移動エージェントを実現するた
めのエージェントプラットフォームは、従来から数多く
提案・発明されている。図13にエージェントプラット
フォームの動作環境の階層モデルの一例を示す。図13
において、エージェントプラットフォームはJava
(Sun Microsystems社が開発したオブジェクト指向のイ
ンタープリタ言語。)というプログラミング言語で作ら
れている。また、JavaVM(Java Virtual Machin
e)は、Javaコンパイラによって生成された中間コード
によるプログラムを解釈・実行する環境のことである。Many agent platforms for realizing such mobile agents have been proposed and invented. FIG. 13 shows an example of a hierarchical model of the operating environment of the agent platform. FIG.
, The agent platform is Java
It is written in a programming language called (Object-oriented interpreted language developed by Sun Microsystems). In addition, JavaVM (Java Virtual Machin
e) is an environment for interpreting and executing a program based on intermediate code generated by a Java compiler.
【0010】次に、従来のエージェントプラットフォー
ムにおける通信プロトコルについて説明する。従来の移
動エージェントの通信は、上記エージェントプラットフ
ォームに応じた独自のプロトコルを用いることによっ
て、計算機間の通信が実現されている。このプロトコル
の例としては、メソッド(オブジェクトが備えるルーチ
ン)や、変数及び定数などのデータの受け渡しが可能な
JavaRMI(RemoteMethod Invocation:遠隔手続
き呼び出し)などがある。JavaRMIとは、ネット
ワーク上の計算機に分散しているJavaオブジェクト
のメソッド呼び出しを、ローカルな計算機上のJava
オブジェクトのメソッド呼び出しであるかのように扱え
る、Javaによる分散オブジェクト通信における通信
方法の一種である。Next, a communication protocol in a conventional agent platform will be described. In the communication of the conventional mobile agent, communication between computers is realized by using a unique protocol corresponding to the agent platform. Examples of this protocol include a method (a routine provided in an object) and a Java RMI (Remote Method Invocation: Remote Procedure Invocation) capable of passing data such as variables and constants. Java RMI is a method for calling a method of a Java object distributed on a computer on a network by calling a Java object on a local computer.
It is a type of communication method in distributed object communication by Java that can be handled as if it were a method call of an object.
【0011】[0011]
【発明が解決しようとする課題】この他にも多種多様な
プロトコルがエージェントプラットフォームに適用され
ているが、移動エージェントが他の移動エージェントと
通信を行う場合には、同種のエージェントプラットフォ
ーム上の移動エージェントとのみ通信を行うことができ
る。即ち、異種エージェントプラットフォームにおける
移動エージェントは、通信のプロトコルが異なるために
互いに通信できないという問題点がある。また、通信プ
ロトコルが同じであっても、エージェントプラットフォ
ームごとにその実装方法、及び移動エージェントの実装
方法が異なるため、異種エージェントプラットフォーム
における移動エージェント同士は、互いに通信すること
ができないのが現状である。Although various other protocols are applied to the agent platform, when a mobile agent communicates with another mobile agent, the mobile agent on the same type of agent platform is used. Can communicate only with That is, there is a problem that mobile agents in different agent platforms cannot communicate with each other due to different communication protocols. Also, even if the communication protocol is the same, the mounting method and the mounting method of the mobile agent differ for each agent platform, so that at present, mobile agents on different agent platforms cannot communicate with each other.
【0012】ただし、エージェントプラットフォーム自
体を改造することにより、異種エージェントプラットフ
ォームにおける移動エージェント間の通信を行わせるこ
とは可能である。しかし、エージェントプラットフォー
ムの実装は複雑である上、そのソースコードを公開して
いないプラットフォームが存在するため、ユーザが改造
することは極めて困難である。However, by modifying the agent platform itself, it is possible to perform communication between mobile agents on different types of agent platforms. However, since the implementation of the agent platform is complicated, and there are platforms that do not disclose the source code, it is extremely difficult for the user to modify the agent platform.
【0013】本発明の課題は、上記問題点を解決するた
め、異種エージェントプラットフォームにおける移動エ
ージェントの相互の通信を可能にすることである。It is an object of the present invention to enable mobile agents to communicate with each other on a heterogeneous agent platform in order to solve the above problems.
【0014】[0014]
【課題を解決するための手段】請求項1記載の発明は、
複数のエージェントを動作させるための異なる複数の動
作環境を有するデータ通信装置において、前記エージェ
ントから送信データを受け取る受取手段と、この受取手
段によって受け取られた送信データを記憶する記憶手段
と、この記憶手段によって記憶された送信データを前記
エージェントに受け渡す受渡手段と、を備えた相互通信
手段を具備し、この相互通信手段を介して前記異なる動
作環境におけるエージェント間の通信を行うことを特徴
としている。According to the first aspect of the present invention,
In a data communication apparatus having a plurality of different operating environments for operating a plurality of agents, receiving means for receiving transmission data from the agent, storage means for storing transmission data received by the receiving means, and storage means And a transfer means for transferring the transmission data stored by the agent to the agent, and communicating between the agents in the different operating environments via the mutual communication means.
【0015】この請求項1記載の発明によれば、複数の
エージェントを動作させるための異なる複数の動作環境
を有するデータ通信装置において、前記データ通信装置
は相互通信手段を具備し、この相互通信手段の受取手段
が前記エージェントから送信データを受け取り、相互通
信手段の記憶手段がこの受取手段によって受け取られた
送信データを記憶し、相互通信手段の受渡手段がこの記
憶手段によって記憶された送信データを前記エージェン
トに受け渡すため、この相互通信手段を介して前記異な
る動作環境におけるエージェント間の通信を行う。According to the first aspect of the present invention, in a data communication apparatus having a plurality of different operating environments for operating a plurality of agents, the data communication apparatus has an intercommunication means, and the intercommunication means is provided. Receiving means for receiving transmission data from the agent, storage means of the intercommunication means storing the transmission data received by the receiving means, and passing means of the intercommunication means storing the transmission data stored by the storage means in the storage means. In order to transfer the data to the agent, communication between the agents in the different operating environments is performed via the mutual communication means.
【0016】また、請求項7記載の発明は、複数のエー
ジェントを動作させるための異なる複数の動作環境を有
するデータ通信装置におけるデータ通信方法であって、
送信データを記憶する記憶手段を備え、前記エージェン
トから送信データを受け取る工程と、前記受け取った送
信データを前記記憶手段に記憶させる工程と、前記記憶
手段に記憶させた送信データを前記エージェントに受け
渡す工程と、を有することを特徴とするデータ通信方
法。According to a seventh aspect of the present invention, there is provided a data communication method in a data communication apparatus having a plurality of different operating environments for operating a plurality of agents,
Storage means for storing transmission data, a step of receiving transmission data from the agent, a step of storing the received transmission data in the storage means, and passing the transmission data stored in the storage means to the agent And a data communication method.
【0017】この請求項7記載の発明によれば、複数の
エージェントを動作させるための異なる複数の動作環境
を有するデータ通信装置におけるデータ通信方法であっ
て、記憶手段は送信データを記憶し、前記エージェント
から送信データを受け取って、この受け取った送信デー
タを前記記憶手段に記憶させた後、この記憶させた送信
データを前記エージェントに受け渡す。According to a seventh aspect of the present invention, there is provided a data communication method in a data communication apparatus having a plurality of different operating environments for operating a plurality of agents, wherein the storage means stores transmission data, The transmission data is received from the agent, and the received transmission data is stored in the storage means, and then the stored transmission data is transferred to the agent.
【0018】したがって、請求項1及び請求項7記載の
発明によって、エージェントを動作させるための異なる
動作環境を有するデータ通信装置であっても、当該動作
環境を改造することなく、当該異なる動作環境において
動作するエージェント間の相互通信を実現することがで
きる。Therefore, according to the first and seventh aspects of the present invention, even in a data communication apparatus having a different operating environment for operating an agent, the data operating apparatus can operate in the different operating environment without modifying the operating environment. Mutual communication between operating agents can be realized.
【0019】請求項2記載の発明は、エージェントを動
作させるための動作環境がそれぞれ異なる送信装置と受
信装置がネットワークに接続されたデータ通信システム
において、前記送信装置は、当該送信装置内の動作環境
上で動作しているエージェントから送信データを受け取
る受取手段と、この受取手段によって受け取られた送信
データを記憶する送信側記憶手段と、所定の通信方法に
従って前記受信装置との間でデータ通信を行って、前記
送信側記憶手段に記憶された送信データを送信する送信
手段と、を備えた送信側相互通信手段を具備し、前記受
信装置は、前記所定の通信方法に従って前記送信装置と
の間でデータ通信を行って、送信データを受信する受信
手段と、この受信手段によって受信された送信データを
記憶する受信側記憶手段と、当該受信装置内の動作環境
上で動作しているエージェントへ、前記受信側記憶手段
に記憶された送信データを受け渡す受渡手段と、を備え
た受信側相互通信手段を具備し、前記送信側相互通信手
段と前記受信側相互通信手段を介して、前記送信装置と
前記受信装置とが有する異なる動作環境におけるエージ
ェント間の通信を行うことを特徴としている。According to a second aspect of the present invention, there is provided a data communication system in which a transmitting device and a receiving device having different operating environments for operating an agent are connected to a network, wherein the transmitting device operates in an operating environment in the transmitting device. Receiving means for receiving transmission data from the agent operating above, transmitting-side storage means for storing transmission data received by the receiving means, and performing data communication with the receiving apparatus according to a predetermined communication method Transmitting means for transmitting transmission data stored in the transmitting-side storage means, and a transmitting-side intercommunication means comprising: Receiving means for receiving transmission data by performing data communication, and receiving side storage for storing the transmission data received by the receiving means. Means for receiving and transmitting means for transferring transmission data stored in the receiving-side storage means to an agent operating on an operating environment in the receiving apparatus, the receiving-side intercommunication means comprising: Communication between agents in different operating environments of the transmitting device and the receiving device is performed via the transmitting-side mutual communication unit and the receiving-side mutual communication unit.
【0020】この請求項2記載の発明によれば、エージ
ェントを動作させるための動作環境がそれぞれ異なる送
信装置と受信装置がネットワークに接続されたデータ通
信システムにおいて、前記送信装置は送信側相互通信手
段を具備し、送信側相互通信手段の受取手段が、当該送
信装置内の動作環境上で動作しているエージェントから
送信データを受け取り、送信側相互通信手段の送信側記
憶手段が、この受取手段によって受け取られた送信デー
タを記憶し、送信側相互通信手段の送信手段が、所定の
通信方法に従って前記受信装置との間でデータ通信を行
って、前記送信側記憶手段に記憶された送信データを送
信し、一方、前記受信装置は受信側相互通信手段を具備
し、受信側相互通信手段の受信手段が、前記所定の通信
方法に従って前記送信装置との間でデータ通信を行っ
て、送信データを受信し、受信側相互通信手段の受信側
記憶手段が、この受信手段によって受信された送信デー
タを記憶し、受信側相互通信手段の受渡手段が、当該受
信装置内の動作環境上で動作しているエージェントへ、
前記受信側記憶手段に記憶された送信データを受け渡す
ことによって、前記送信側相互通信手段と前記受信側相
互通信手段を介して、前記送信装置と前記受信装置とが
有する異なる動作環境におけるエージェント間の通信を
行う。According to the second aspect of the present invention, in a data communication system in which a transmitting device and a receiving device having different operating environments for operating agents are connected to a network, the transmitting device is a transmitting-side intercommunication means. Wherein the receiving means of the transmitting intercommunication means receives transmission data from an agent operating on the operating environment in the transmitting apparatus, and the transmitting storage means of the transmitting intercommunication means stores The received transmission data is stored, and the transmission unit of the transmission side mutual communication unit performs data communication with the receiving device according to a predetermined communication method, and transmits the transmission data stored in the transmission side storage unit. On the other hand, the receiving device includes receiving-side intercommunication means, and the receiving means of the receiving-side intercommunication means performs the communication according to the predetermined communication method The data communication is performed with the receiving device, the transmission data is received, and the receiving storage unit of the receiving mutual communication unit stores the transmission data received by the receiving unit, and is transferred to the receiving mutual communication unit. Means to an agent operating on an operating environment in the receiving device;
By passing the transmission data stored in the receiving side storage means, between the agents in different operating environments of the transmitting device and the receiving device via the transmitting side mutual communication means and the receiving side mutual communication means. Communication.
【0021】また、請求項8記載の発明は、エージェン
トを動作させるための動作環境がそれぞれ異なる送信装
置と受信装置がネットワークに接続されたデータ通信シ
ステムにおけるデータ通信方法であって、前記送信装置
は、送信データを記憶する送信側記憶手段を備え、前記
受信装置は、前記送信装置から受信した送信データを記
憶する受信側記憶手段を備え、前記送信装置が、当該送
信装置内の動作環境上で動作しているエージェントから
送信データを受け取る工程と、前記送信装置が、前記受
け取った送信データを前記送信側記憶手段に記憶させる
工程と、前記送信装置が、所定の通信方法に従って前記
受信装置との間でデータ通信を行って、前記送信側記憶
手段に記憶させた送信データを送信する工程と、前記受
信装置が、前記所定の通信方法に従って前記送信装置と
の間でデータ通信を行って、送信データを受信する工程
と、前記受信装置が、前記受信した送信データを前記受
信側記憶手段に記憶させる工程と、前記受信装置が、当
該受信装置内の動作環境上で動作しているエージェント
へ、前記受信側記憶手段に記憶させた送信データを受け
渡す工程と、を有することを特徴としている。[0021] The invention according to claim 8 is a data communication method in a data communication system in which a transmitting device and a receiving device, which have different operating environments for operating agents, are connected to a network. A transmission side storage unit for storing transmission data, the reception apparatus includes a reception side storage unit for storing transmission data received from the transmission apparatus, and the transmission apparatus operates on an operating environment in the transmission apparatus. A step of receiving transmission data from an operating agent; a step of storing the received transmission data in the transmission-side storage means; and a step of the transmission apparatus communicating with the reception apparatus in accordance with a predetermined communication method. Transmitting the transmission data stored in the transmission-side storage means by performing data communication between the transmission-side storage means; Performing data communication with the transmitting device in accordance with the communication method of (i) and receiving transmission data; (ii) the receiving device storing the received transmission data in the receiving-side storage means; Transferring the transmission data stored in the receiving-side storage means to an agent operating on an operating environment in the receiving device.
【0022】この請求項8記載の発明によれば、エージ
ェントを動作させるための動作環境がそれぞれ異なる送
信装置と受信装置がネットワークに接続されたデータ通
信システムにおけるデータ通信方法であって、前記送信
装置の送信側記憶手段は、送信データを記憶し、前記受
信装置の受信側記憶手段は、前記送信装置から受信した
送信データを記憶し、前記送信装置が、当該送信装置内
の動作環境上で動作しているエージェントから送信デー
タを受け取って、この受け取った送信データを前記送信
側記憶手段に記憶させ、所定の通信方法に従って前記受
信装置との間でデータ通信を行って、前記送信側記憶手
段に記憶させた送信データを送信すると、前記受信装置
が、前記所定の通信方法に従って前記送信装置との間で
データ通信を行って、送信データを受信して、この受信
した送信データを前記受信側記憶手段に記憶させた後、
当該受信装置内の動作環境上で動作しているエージェン
トへ、前記受信側記憶手段に記憶させた送信データを受
け渡す。According to the invention described in claim 8, there is provided a data communication method in a data communication system in which a transmitting device and a receiving device, which have different operating environments for operating agents, are connected to a network. The transmission side storage means stores transmission data, the reception side storage means of the reception device stores transmission data received from the transmission device, and the transmission device operates on an operating environment in the transmission device. The transmission data is received from the agent performing the communication, the received transmission data is stored in the transmission-side storage unit, and data communication is performed with the reception device according to a predetermined communication method. When transmitting the stored transmission data, the receiving device performs data communication with the transmitting device according to the predetermined communication method. Receives the transmission data, after the transmission data the received has been stored on the receiving storage means,
The transmission data stored in the receiving-side storage unit is transferred to an agent operating on an operating environment in the receiving device.
【0023】したがって、請求項2及び請求項8記載の
発明によって、エージェントを動作させるための異なる
動作環境を有する送信装置と受信装置とであっても、当
該動作環境を改造することなく、エージェント間のデー
タ通信を実現することができる。Therefore, according to the second and eighth aspects of the present invention, even if the transmitting device and the receiving device have different operating environments for operating the agent, the transmitting device and the receiving device can communicate with each other without modifying the operating environment. Data communication can be realized.
【0024】請求項3記載の発明は、エージェントを動
作させるための動作環境がそれぞれ異なる複数のデータ
通信装置がネットワークに接続されたデータ通信システ
ムにおいて、前記データ通信装置は、当該データ通信装
置内の動作環境上で動作しているエージェントから送信
データを受け取る受取手段と、この受取手段によって受
け取られた送信データを記憶する送信側記憶手段と、所
定の通信方法に従って他のデータ通信装置との間でデー
タ通信を行って、前記送信側記憶手段に記憶された送信
データを送信する送信手段と、を備えた送信側相互通信
手段と、前記所定の通信方法に従って他のデータ通信装
置との間でデータ通信を行って、送信データを受信する
受信手段と、この受信手段によって受信された送信デー
タを記憶する受信側記憶手段と、前記動作環境上で動作
しているエージェントへ、前記受信側記憶手段に記憶さ
れた送信データを受け渡す受渡手段と、を備えた受信側
相互通信手段と、を具備し、前記送信側相互通信手段と
前記受信側相互通信手段を介して、前記複数のデータ通
信装置の異なる動作環境におけるエージェント間の通信
を行うことを特徴としている。According to a third aspect of the present invention, in a data communication system in which a plurality of data communication devices having different operating environments for operating agents are connected to a network, the data communication device includes: A receiving unit for receiving transmission data from an agent operating on an operating environment, a transmission-side storage unit for storing transmission data received by the receiving unit, and another data communication device according to a predetermined communication method. A transmission means for performing data communication and transmitting transmission data stored in the transmission side storage means; and a data communication between another data communication apparatus according to the predetermined communication method. Receiving means for performing communication and receiving transmission data; and receiving means for storing the transmission data received by the receiving means. Receiving means for transmitting and receiving transmission data stored in the receiving-side storage means to an agent operating on the operating environment; Communication between agents in different operating environments of the plurality of data communication devices is performed via the side mutual communication means and the receiving side mutual communication means.
【0025】この請求項3記載の発明によれば、エージ
ェントを動作させるための動作環境がそれぞれ異なる複
数のデータ通信装置がネットワークに接続されたデータ
通信システムにおいて、前記データ通信装置は送信側相
互通信手段と受信側相互通信手段とを具備し、送信側相
互通信手段の受取手段が、当該データ通信装置内の動作
環境上で動作しているエージェントから送信データを受
け取り、送信側相互通信手段の送信側記憶手段が、この
受取手段によって受け取られた送信データを記憶し、送
信側相互通信手段の送信手段が、所定の通信方法に従っ
て他のデータ通信装置との間でデータ通信を行って、前
記送信側記憶手段に記憶された送信データを送信し、一
方、受信側相互通信手段の受信手段が、前記所定の通信
方法に従って他のデータ通信装置との間でデータ通信を
行って、送信データを受信し、受信側相互通信手段の受
信側記憶手段が、この受信手段によって受信された送信
データを記憶し、受信側相互通信手段の受渡手段が、前
記動作環境上で動作しているエージェントへ、前記受信
側記憶手段に記憶された送信データを受け渡すことによ
って、前記送信側相互通信手段と前記受信側相互通信手
段を介して、前記複数のデータ通信装置の異なる動作環
境におけるエージェント間の通信を行う。According to the third aspect of the present invention, in a data communication system in which a plurality of data communication devices, each having a different operating environment for operating an agent, are connected to a network, the data communication device is a communication device on a transmitting side. Means and receiving-side intercommunication means, the receiving means of the transmitting-side intercommunication means receiving transmission data from an agent operating on an operating environment in the data communication device, and transmitting the transmission data by the transmitting-side intercommunication means. The side storage means stores the transmission data received by the receiving means, and the transmitting means of the transmitting-side intercommunication means performs data communication with another data communication apparatus according to a predetermined communication method, and performs the transmission. The transmission data stored in the side storage means is transmitted, while the reception means of the reception side mutual communication means transmits the other data in accordance with the predetermined communication method. Data communication is performed with the data communication device to receive the transmission data, and the receiving storage means of the receiving mutual communication means stores the transmission data received by the receiving means, and the receiving mutual communication means. Passing the transmission data stored in the receiving side storage means to the agent operating on the operating environment, through the transmitting side intercommunication means and the receiving side intercommunication means. And perform communication between agents in different operating environments of the plurality of data communication devices.
【0026】また、請求項9記載の発明は、エージェン
トを動作させるための動作環境がそれぞれ異なる複数の
データ通信装置がネットワークに接続されたデータ通信
システムにおけるデータ通信方法であって、前記複数の
データ通信装置は、それぞれ、送信データを記憶する送
信側記憶手段と、他のデータ通信装置から受信した送信
データを記憶する受信側記憶手段とを備え、前記複数の
データ通信装置の内の一のデータ通信装置が、当該デー
タ通信装置内の動作環境上で動作しているエージェント
から送信データを受け取る工程と、前記一のデータ通信
装置が、前記受け取った送信データを前記送信側記憶手
段に記憶させる工程と、前記一のデータ通信装置が、所
定の通信方法に従って他のデータ通信装置との間でデー
タ通信を行って、前記送信側記憶手段に記憶させた送信
データを送信する工程と、前記他のデータ通信装置が、
前記所定の通信方法に従って前記一のデータ通信装置と
の間でデータ通信を行って、送信データを受信する工程
と、前記他のデータ通信装置が、前記受信した送信デー
タを前記受信側記憶手段に記憶させる工程と、前記他の
データ通信装置が、前記動作環境上で動作しているエー
ジェントへ、前記受信側記憶手段に記憶させた送信デー
タを受け渡す工程と、を有することを特徴としている。According to a ninth aspect of the present invention, there is provided a data communication method in a data communication system in which a plurality of data communication devices each having a different operating environment for operating an agent are connected to a network. The communication devices each include a transmission-side storage unit that stores transmission data and a reception-side storage unit that stores transmission data received from another data communication device, and one of the plurality of data communication devices. A step in which the communication device receives transmission data from an agent operating on an operating environment in the data communication device; and a step in which the one data communication device stores the received transmission data in the transmission-side storage unit. And, the one data communication device performs data communication with another data communication device according to a predetermined communication method, And transmitting the transmission data stored in the serial transmission side storage unit, the other data communication apparatus,
Performing data communication with the one data communication device according to the predetermined communication method, and receiving transmission data; and the other data communication device stores the received transmission data in the reception side storage unit. And storing the transmission data stored in the reception-side storage unit to the agent operating in the operating environment.
【0027】この請求項9記載の発明によれば、エージ
ェントを動作させるための動作環境がそれぞれ異なる複
数のデータ通信装置がネットワークに接続されたデータ
通信システムにおけるデータ通信方法であって、送信側
記憶手段は、送信データを記憶し、受信側記憶手段は、
他のデータ通信装置から受信した送信データを記憶し、
前記複数のデータ通信装置の内の一のデータ通信装置
が、当該データ通信装置内の動作環境上で動作している
エージェントから送信データを受け取って、前記一のデ
ータ通信装置が、前記受け取った送信データを前記送信
側記憶手段に記憶させ、前記一のデータ通信装置が、所
定の通信方法に従って他のデータ通信装置との間でデー
タ通信を行って、前記送信側記憶手段に記憶させた送信
データを送信すると、前記他のデータ通信装置が、前記
所定の通信方法に従って前記一のデータ通信装置との間
でデータ通信を行って、送信データを受信して、前記他
のデータ通信装置が、前記受信した送信データを前記受
信側記憶手段に記憶させ、前記他のデータ通信装置が、
前記動作環境上で動作しているエージェントへ、前記受
信側記憶手段に記憶させた送信データを受け渡す。According to the ninth aspect of the present invention, there is provided a data communication method in a data communication system in which a plurality of data communication devices each having a different operating environment for operating an agent are connected to a network. The means stores transmission data, and the receiving side storage means comprises:
Storing transmission data received from another data communication device,
One of the plurality of data communication devices receives transmission data from an agent operating on an operating environment in the data communication device, and the one data communication device transmits the received transmission data. Data is stored in the transmission side storage means, and the one data communication apparatus performs data communication with another data communication apparatus according to a predetermined communication method, and stores the transmission data stored in the transmission side storage means. When transmitting, the other data communication device performs data communication with the one data communication device according to the predetermined communication method, receives transmission data, and the other data communication device, The received transmission data is stored in the receiving side storage means, and the other data communication device is
The transmission data stored in the receiving side storage unit is transferred to an agent operating on the operating environment.
【0028】したがって、請求項3及び請求項9記載の
発明によって、エージェントを動作させるための異なる
動作環境を有するデータ通信装置間であっても、当該動
作環境を改造することなく、双方向にエージェント間の
データ通信を実現することができる。Therefore, according to the third and ninth aspects of the present invention, even between data communication apparatuses having different operating environments for operating the agent, the agent can be bidirectionally changed without modifying the operating environment. Data communication between them can be realized.
【0029】また、請求項4記載の発明のように、請求
項2又は3記載のデータ通信システムにおいて、前記所
定の通信方法を、ソケット通信として構成してもよい。In the data communication system according to the second or third aspect, the predetermined communication method may be configured as socket communication.
【0030】この請求項4記載の発明によれば、請求項
2又は3記載の発明の効果に加えて、従来から用いられ
ているソケット通信を用いることによって、容易にデー
タ通信システムを実現することが可能になると共に、従
来から使用されているデータ通信システムに容易に適用
することができる。According to the fourth aspect of the present invention, in addition to the effects of the second or third aspect of the present invention, a data communication system can be easily realized by using the socket communication conventionally used. And the present invention can be easily applied to a data communication system that has been conventionally used.
【0031】また、請求項5記載の発明のように、請求
項2又は3記載のデータ通信システムにおいて、前記所
定の通信方法を、ORBを用いた通信方法としてもよ
い。Further, as in the invention according to claim 5, in the data communication system according to claim 2 or 3, the predetermined communication method may be a communication method using an ORB.
【0032】この請求項5記載の発明によれば、請求項
2又は3記載の発明の効果に加えて、例えば、CORB
A準拠のORB(市販の製品としてはIONA社のOr
bix)を使用することにより、CORBAはプログラ
ミング言語に依存しないため、動作環境やエージェン
ト、相互通信手段を実現するための相互通信用オブジェ
クト等を、Java言語等の一定のプログラミング言語
に限られることなく複数のプログラミング言語で作成す
ることが可能になる。According to the fifth aspect of the invention, in addition to the effects of the second or third aspect, for example, CORB
A-compliant ORB (a commercially available product is Orona of IONA
By using (bix), CORBA does not depend on a programming language, so that an operating environment, an agent, and an object for intercommunication for realizing an intercommunication means are not limited to a certain programming language such as Java language. It can be created in multiple programming languages.
【0033】また、請求項6記載の発明のように、請求
項2又は3記載のデータ通信システムにおいて、前記所
定の通信方法を、分散オブジェクト通信として構成する
こととしてもよい。In the data communication system according to claim 2 or 3, the predetermined communication method may be configured as distributed object communication.
【0034】この請求項6記載の発明によれば、請求項
2又は3記載の発明の効果に加えて、異種エージェント
間で、オブジェクトの受け渡しが直接可能になるため、
動作環境に柔軟に対応した、効率的なデータ通信を実現
することが可能になる。According to the invention described in claim 6, in addition to the effect of the invention described in claim 2 or 3, the object can be directly transferred between different types of agents.
It becomes possible to realize efficient data communication flexibly corresponding to the operating environment.
【0035】[0035]
【発明の実施の形態】以下、図を参照して本発明の実施
の形態を詳細に説明する。なお、移動エージェントやオ
ブジェクトは、実際にはコンピュータプログラムの一種
であり、各実施の形態における計算機内のCPUが実行
するが、各移動エージェント及びオブジェクトはそれぞ
れが独立したプログラムであって、かつ並列に実行され
る上、相互に関連を持って動作する。このため、実際に
はCPUが移動エージェントやオブジェクトを実行する
ことによって行われる動作ではあるが、混乱を避け、理
解を容易にするために、各移動エージェント及びオブジ
ェクトのそれぞれが独立して当該動作の処理を行うこと
とみなして説明する。Embodiments of the present invention will be described below in detail with reference to the drawings. Note that the mobile agent and the object are actually a kind of computer program, and are executed by the CPU in the computer in each embodiment. However, each mobile agent and the object are independent programs and are executed in parallel. It is executed and works in conjunction with each other. Therefore, although the operation is actually performed by the CPU executing the mobile agent or the object, in order to avoid confusion and facilitate understanding, each mobile agent and the object independently perform the operation. A description will be given assuming that processing is performed.
【0036】(第1の実施の形態)図1〜図4は、本発
明を適用した第1の実施の形態における計算機Mを示す
図である。(First Embodiment) FIGS. 1 to 4 show a computer M according to a first embodiment of the present invention.
【0037】まず構成を説明する。計算機Mは、不図示
のCPU(Central Processing Unit)、RAM(Rando
mAccess Memory)、記憶装置、入力装置、表示装置を備
えたコンピュータであり、後述する通信処理に従って、
計算機M内における異種エージェントプラットフォーム
上での移動エージェント間通信を行うものである。First, the configuration will be described. The computer M includes a CPU (Central Processing Unit), a RAM (Rando
mAccess Memory), a storage device, an input device, a computer including a display device, according to a communication process described later,
The communication between mobile agents on a heterogeneous agent platform in the computer M is performed.
【0038】図1は、通信処理に係る機能構成を示すブ
ロック図である。図1において、エージェントプラット
フォームP1、P2及び相互通信用オブジェクトB0
は、図2に示す通信処理に係るソフトウェア動作環境の
階層モデルのように、UNIXなどのOSと、そのOS
上で動作するJavaVM上において動作する。また、
エージェントプラットフォームP1、P2、相互通信用
オブジェクトB0、OS、JavaVMは、エージェン
トA1、A2と共に記憶装置内の記憶媒体(不図示)に
記憶されている。そして、計算機Mの起動と同時にOS
がCPUによって読み出され、次いで、JavaVM、
エージェントプラットフォームP1、P2、相互通信用
オブジェクトB0のそれぞれがCPUによって記憶媒体
から読み出されて実行される。また、さらにエージェン
トA1、A2が読み出されて実行されることによって、
通信処理が行われる。FIG. 1 is a block diagram showing a functional configuration relating to communication processing. In FIG. 1, agent platforms P1 and P2 and an object B0 for mutual communication are provided.
Is an OS such as UNIX and the OS, such as a hierarchical model of a software operating environment related to communication processing shown in FIG.
It runs on JavaVM running on it. Also,
The agent platforms P1 and P2, the object for mutual communication B0, the OS, and the JavaVM are stored together with the agents A1 and A2 in a storage medium (not shown) in a storage device. Then, at the same time when the computer M is started, the OS
Is read by the CPU, and then JavaVM,
Each of the agent platforms P1 and P2 and the mutual communication object B0 is read from the storage medium by the CPU and executed. Further, by further reading and executing the agents A1 and A2,
Communication processing is performed.
【0039】また、図1において、エージェントA1、
A2は、それぞれエージェントプラットフォームP1、
P2上で動作する移動エージェントであり、共にJav
a言語で記述されたプログラムである。相互通信用オブ
ジェクトB0は、エージェントプラットフォームP1、
P2及びエージェントA1、A2と同様にJava言語
で書かれたプログラムである。In FIG. 1, agents A1,
A2 is the agent platform P1,
A mobile agent running on P2, both of which are Java
This is a program written in the a language. The object for intercommunication B0 is an agent platform P1,
It is a program written in Java language like P2 and agents A1 and A2.
【0040】図1において、エージェントA1は相互通
信用オブジェクトB0と、エージェントA2は相互通信
用オブジェクトB0との間で、送信データDn(図1参
照)の送受信を行うことにより、最終的に、エージェン
トA1とA2間の通信を実現する。この処理が通信処理
である。In FIG. 1, an agent A1 transmits and receives transmission data Dn (see FIG. 1) between an intercommunication object B0 and an agent A2, and finally transmits an agent. Communication between A1 and A2 is realized. This process is a communication process.
【0041】ここで、相互通信用オブジェクトB0は、
エージェントA1とエージェントA2間の通信の橋渡し
を行うものであり、図3に示す相互通信用オブジェクト
B0の概略構成図のように、変数D0と、メソッドMe
1と、メソッドMe2とを備える。変数D0は、文字列
やオブジェクトなどの送信データDnを格納する変数で
あり、メソッドMe1は、呼び出したエージェントA1
又はA2から引数として受け取る送信データDnを変数
D0に格納し、戻り値のないメソッドであり、メソッド
Me2は、引数がなく、呼び出されると同時に呼び出し
たエージェントA1又はA2へ変数D0の値を戻り値と
して受け渡すメソッドである。Here, the object B0 for mutual communication is
This bridges the communication between the agent A1 and the agent A2. As shown in the schematic diagram of the mutual communication object B0 shown in FIG. 3, the variable D0 and the method Me
1 and a method Me2. The variable D0 is a variable for storing transmission data Dn such as a character string or an object, and the method Me1 is for the called agent A1.
Alternatively, transmission data Dn received as an argument from A2 is stored in a variable D0, and there is no return value. The method Me2 has no argument, and returns the value of the variable D0 to the called agent A1 or A2 upon being called at the same time as being called. Method passed as
【0042】また、エージェントA1、A2には、予
め、それぞれのプログラム中に相互通信用オブジェクト
B0のメソッドMe1、Me2を呼び出す処理が組み込
まれており、異なるエージェントプラットフォームP
1、P2上で動作しているエージェントA1、A2間
で、直接、データの送受信を含む通信を行うことはな
い。In the agents A1 and A2, processes for calling the methods Me1 and Me2 of the object B0 for mutual communication are incorporated in their respective programs in advance.
1. There is no direct communication including transmission and reception of data between the agents A1 and A2 operating on P2.
【0043】次に動作を説明する。図4は、エージェン
トA1からエージェントA2にデータを送信する場合の
通信処理の動作を示すフローチャートである。Next, the operation will be described. FIG. 4 is a flowchart showing an operation of a communication process when data is transmitted from the agent A1 to the agent A2.
【0044】まず、エージェントA1は、相互通信用オ
ブジェクトB0のメソッドMe1を呼び出し(ステップ
S1)、引数である送信データDnを相互通信用オブジ
ェクトB0へ送る(ステップS2)。そして、相互通信
用オブジェクトB0は、送られた送信データDnを変数
D0に代入する(ステップS3)。First, the agent A1 calls the method Me1 of the intercommunication object B0 (step S1), and sends transmission data Dn as an argument to the intercommunication object B0 (step S2). Then, the mutual communication object B0 substitutes the transmitted transmission data Dn for the variable D0 (step S3).
【0045】次いで、エージェントA2が、相互通信用
オブジェクトB0のメソッドMe2を呼び出し(ステッ
プS4)、相互通信用オブジェクトB0から、変数D0
に格納された送信データDnを受け取る(ステップS
5)。Next, the agent A2 calls the method Me2 of the intercommunication object B0 (step S4), and reads the variable D0 from the intercommunication object B0.
Receive the transmission data Dn stored in the
5).
【0046】以上の通信処理を行うことにより、互いに
異なるエージェントプラットフォームにおけるエージェ
ントA1とエージェントA2との通信が可能になる。ま
た、エージェントA2からエージェントA1にデータを
送信する場合の通信処理は、上記ステップS1〜S5に
おけるエージェントA1とエージェントA2の動作を入
れ替えることにより実現することができる。By performing the above communication processing, communication between the agent A1 and the agent A2 on different agent platforms becomes possible. Further, the communication processing when transmitting data from the agent A2 to the agent A1 can be realized by exchanging the operations of the agent A1 and the agent A2 in steps S1 to S5.
【0047】以上のように、計算機Mは、エージェント
プラットフォームと同一の動作環境で動作する相互通信
用オブジェクトを備え、この相互通信用オブジェクトが
異なるエージェントプラットフォームにおける移動エー
ジェント間の送信データを媒介する。このため、単一の
計算機内において、エージェントプラットフォームを改
造することなく、異種エージェントプラットフォームに
おける移動エージェント間の相互通信を実現することが
できる。As described above, the computer M includes the intercommunication object operating in the same operating environment as the agent platform, and the intercommunication object mediates transmission data between mobile agents on different agent platforms. Therefore, it is possible to realize mutual communication between mobile agents on different types of agent platforms without modifying the agent platform within a single computer.
【0048】(第2の実施の形態)次に、本発明を適用
した第2の実施の形態におけるコンピュータシステム1
00について説明する。(Second Embodiment) Next, a computer system 1 according to a second embodiment to which the present invention is applied.
00 will be described.
【0049】図5〜図9は、本発明を適用した第2の実
施の形態におけるコンピュータシステム100を示す図
である。FIGS. 5 to 9 show a computer system 100 according to a second embodiment of the present invention.
【0050】第2の実施の形態におけるコンピュータシ
ステム100は、第1の実施の形態の計算機Mにおい
て、同一の計算機M内で行われる異種エージェントプラ
ットフォーム上の移動エージェント間のデータ送信を、
従来のソケット通信を用いて、異なる計算機M1、M2
間で実現するシステムである。以下、このデータ送信に
係る通信処理を中心に、コンピュータシステム100の
構成及び動作について説明する。The computer system 100 according to the second embodiment uses the computer M according to the first embodiment to transmit data between mobile agents on heterogeneous agent platforms performed in the same computer M.
Using conventional socket communication, different computers M1, M2
It is a system realized between. Hereinafter, the configuration and operation of the computer system 100 will be described focusing on communication processing related to the data transmission.
【0051】まず構成を説明する。図5は、通信処理に
係るコンピュータシステム100の機能構成を示すブロ
ック図である。コンピュータシステム100は、計算機
M1と、インターネットやイントラネット等のネットワ
ークによって計算機M1に接続された計算機M2によっ
て構成されており、第1の実施の形態の計算機Mの要部
及び機能と同一のものには同一の符号を付して、以下説
明を省略する。First, the configuration will be described. FIG. 5 is a block diagram illustrating a functional configuration of the computer system 100 related to the communication processing. The computer system 100 includes a computer M1 and a computer M2 connected to the computer M1 via a network such as the Internet or an intranet. The same components and functions as those of the computer M according to the first embodiment are the same. The same reference numerals are given and the description is omitted below.
【0052】図5において、エージェントプラットフォ
ームP1、P2、エージェントA1、A2、相互通信用
オブジェクトBc、Bsは、全てJava言語で作られ
たプログラムであり、計算機M1には、エージェントプ
ラットフォームP1と、エージェントA1と、相互通信
用オブジェクトBcとが動作・実行されており、計算機
M2には、エージェントプラットフォームP2と、エー
ジェントA2と、相互通信用オブジェクトBsとが動作
・実行されている。また、エージェントプラットフォー
ムP1、P2及び相互通信用オブジェクトBc、Bs
は、図6に示す通信処理に係るソフトウェア動作環境の
階層モデルのように、それぞれの計算機M1、M2にお
いて、UNIXなどのOSと、そのOS上で動作するJ
avaVM上において動作する。In FIG. 5, the agent platforms P1 and P2, the agents A1 and A2, and the objects for communication Bc and Bs are all programs made in the Java language, and the computer M1 has the agent platform P1 and the agent A1. And an object Bc for mutual communication are operated and executed, and an agent platform P2, an agent A2, and an object Bs for mutual communication are operated and executed in the computer M2. The agent platforms P1 and P2 and the objects Bc and Bs for mutual communication
Is an OS such as UNIX and J running on the OS in each of the computers M1 and M2, like a hierarchical model of a software operating environment related to communication processing shown in FIG.
Operates on avaVM.
【0053】図5において、相互通信用オブジェクトB
c、Bsは、通信処理に係るデータ送受信のクライアン
ト/サーバの関係であり、エージェントA1が、送信デ
ータDnと、送信先のホスト名Hとを相互通信用オブジ
ェクトBcに送ると、相互通信用オブジェクトBcが通
信先の計算機を特定し、当該計算機上の相互通信用オブ
ジェクトBsに送信データDnを送信する。そして、送
信データDnを受信した相互通信用オブジェクトBs
は、エージェントA2に当該送信データDnを受け渡
す。この処理が通信処理である。In FIG. 5, the object B for mutual communication
c and Bs represent a client / server relationship for data transmission / reception related to the communication processing. When the agent A1 sends the transmission data Dn and the destination host name H to the mutual communication object Bc, the mutual communication object Bc specifies the communication destination computer, and transmits the transmission data Dn to the mutual communication object Bs on the computer. Then, the mutual communication object Bs that has received the transmission data Dn
Transfers the transmission data Dn to the agent A2. This process is a communication process.
【0054】図7は、相互通信用オブジェクトBcの概
略構成図である。図7において、相互通信用オブジェク
トBcは、変数D0と、メソッドMe1´と、メソッド
Me3とを備える。変数D0は、文字列やオブジェクト
などの送信データDnを格納する変数であり、メソッド
Me1´は、エージェントA1からデータ送信先のホス
ト名Hと送信データDnを引数として受け取り、送信デ
ータDnを変数D0に代入する、戻り値のないメソッド
であり、メソッドMe3は、相互通信用オブジェクトB
sとソケット通信を行うためのメソッドである。FIG. 7 is a schematic configuration diagram of the mutual communication object Bc. In FIG. 7, the intercommunication object Bc includes a variable D0, a method Me1 ', and a method Me3. The variable D0 is a variable that stores transmission data Dn such as a character string or an object. The method Me1 ′ receives the host name H of the data transmission destination and the transmission data Dn from the agent A1 as arguments, and stores the transmission data Dn in the variable D0. Is a method having no return value, and the method Me3 is an object B for mutual communication.
This is a method for performing socket communication with s.
【0055】図8は、相互通信用オブジェクトBsの概
略構成図である。図8において、相互通信用オブジェク
トBsは、変数D0´と、メソッドMe2と、メソッド
Me4とを備える。変数D0´は、送信データDnを格
納する変数であり、メソッドMe2は、引数なしで呼び
出されると同時に変数D0´の値を戻り値とするメソッ
ドであり、メソッドMe4は、相互通信用オブジェクト
Bcとソケット通信を行うためのメソッドである。FIG. 8 is a schematic configuration diagram of the mutual communication object Bs. In FIG. 8, the mutual communication object Bs includes a variable D0 ', a method Me2, and a method Me4. The variable D0 'is a variable that stores the transmission data Dn, the method Me2 is a method that is called without an argument, and at the same time, uses the value of the variable D0' as a return value. The method Me4 is a method that communicates with the object Bc for mutual communication. This is a method for performing socket communication.
【0056】また、エージェントA1には、予め、プロ
グラム中に相互通信用オブジェクトBc内のメソッドM
e1´と、メソッドMe3とを呼び出す処理が組み込ま
れており、エージェントA2には、同様に、予め、プロ
グラム中に相互通信用オブジェクトBs内のメソッドM
e2と、メソッドMe4とを呼び出す処理が組み込まれ
ている。このため、異なる計算機上の異なるエージェン
トプラットフォームP1、P2上で動作しているエージ
ェントA1、A2間で、直接、データの送受信が行われ
ることはない。The agent A1 has a method M in the intercommunication object Bc in the program in advance.
A process for calling e1 'and the method Me3 is incorporated, and the agent A2 similarly stores the method M in the intercommunication object Bs in the program in advance.
Processing for calling e2 and method Me4 is incorporated. Therefore, data is not directly transmitted and received between agents A1 and A2 operating on different agent platforms P1 and P2 on different computers.
【0057】次に動作を説明する。図9は、コンピュー
タシステム100において、エージェントA1からエー
ジェントA2にデータを送信する際の通信処理の動作を
示すフローチャートである。Next, the operation will be described. FIG. 9 is a flowchart showing an operation of a communication process when data is transmitted from the agent A1 to the agent A2 in the computer system 100.
【0058】まず、エージェントA2が、相互通信用オ
ブジェクトBs内のメソッドMe4を呼び出す(ステッ
プS11)。このことにより、相互通信用オブジェクト
Bsがデータ受信待ちの状態となる。次に、エージェン
トA1が相互通信用オブジェクトBc内のメソッドMe
1´を呼び出して(ステップS12)、相互通信用オブ
ジェクトBcに、引数として、データ送信先である計算
機2のホスト名Hと送信データDnを送る(ステップS
13)。そして、相互通信用オブジェクトBcは、送ら
れた送信データDnを変数D0に代入する(ステップS
14)。First, the agent A2 calls the method Me4 in the object Bs for mutual communication (step S11). As a result, the mutual communication object Bs enters a state of waiting for data reception. Next, the agent A1 executes the method Me in the mutual communication object Bc.
1 'is called (step S12), and the host name H and the transmission data Dn of the computer 2 as the data transmission destination are transmitted to the mutual communication object Bc as arguments (step S12).
13). Then, the mutual communication object Bc substitutes the transmitted transmission data Dn for the variable D0 (Step S).
14).
【0059】次に、エージェントA1が相互通信用オブ
ジェクトBc内のメソッドMe3を呼び出す(ステップ
S15)。このことにより、相互通信用オブジェクトB
cは、ホスト名Hを参照してデータ送信先のホストであ
る計算機2を認識し、ソケット通信を用いて当該計算機
2上で、データ受信待ちの状態である相互通信用オブジ
ェクトBsとの間で通信ができる状態を確立する(ステ
ップS16)。そして、相互通信用オブジェクトBc
は、データ送信先の計算機2上の相互通信用オブジェク
トBsに、変数D0に代入した送信データDnを送信す
る(ステップS17)。Next, the agent A1 calls the method Me3 in the mutual communication object Bc (step S15). As a result, the object B for mutual communication
c, by referring to the host name H, recognizes the computer 2 which is the host of the data transmission destination, and uses the socket communication between the computer 2 and the mutual communication object Bs in a data reception waiting state. A state in which communication is possible is established (step S16). And the object Bc for mutual communication
Transmits the transmission data Dn assigned to the variable D0 to the mutual communication object Bs on the computer 2 of the data transmission destination (step S17).
【0060】次いで、相互通信用オブジェクトBsは、
受信した送信データDnを変数D0´に代入する(ステ
ップS18)。そして、エージェントA2は、相互通信
用オブジェクトBs内のメソッドMe2を呼び出して
(ステップS19)、メソッドMe2から、変数D0´
に代入した送信データDnを受け取る(ステップS2
0)。Next, the object Bs for mutual communication is
The received transmission data Dn is substituted for a variable D0 '(step S18). Then, the agent A2 calls the method Me2 in the mutual communication object Bs (step S19), and from the method Me2, the variable D0 '
Is received (step S2).
0).
【0061】以上の通信処理を行うことにより、異なる
計算機の異なるエージェントプラットフォームにおける
エージェントA1、A2間のデータ送信が可能になる。
また、エージェントA2からエージェントA1へデータ
を送信する場合には、図5の計算機M1の相互通信用オ
ブジェクトBcと、計算機M2の相互通信用オブジェク
トBsとを入れ替えるように構成し、さらに、ステップ
S11〜S20におけるエージェントA1とエージェン
トA2の動作を入れ替えることにより実現することがで
きる。By performing the above communication processing, data transmission between agents A1 and A2 on different agent platforms of different computers becomes possible.
When data is transmitted from the agent A2 to the agent A1, the object Bc for communication between the computer M1 and the object Bs for communication between the computer M2 in FIG. 5 are configured to be exchanged. This can be realized by exchanging the operations of the agent A1 and the agent A2 in S20.
【0062】以上のように、コンピュータシステム10
0の計算機M1と計算機M2は、互いに異なるエージェ
ントプラットフォームと、このエージェントプラットフ
ォーム上で動作する移動エージェントと、相互にソケッ
ト通信を行うためのオブジェクトと、を備えるように構
成されている。また、計算機M1上の移動エージェント
であるエージェントA1は、ソケット通信用のオブジェ
クトである相互通信用オブジェクトBcにデータを送
り、相互通信用オブジェクトBcは、計算機M2のソケ
ット通信用のオブジェクトである相互通信用オブジェク
トBsにデータを送信し、相互通信用オブジェクトBs
は、計算機M2上の移動エージェントであるエージェン
トA2にデータを引き渡す。このため、計算機によって
異なるエージェントプラットフォームであっても、当該
エージェントプラットフォームを改造することなく、異
種エージェントプラットフォームにおける移動エージェ
ント間のデータ送信を実現することができる。As described above, the computer system 10
The 0 computer M1 and the computer M2 are configured to include different agent platforms, a mobile agent operating on the agent platform, and an object for performing socket communication with each other. The agent A1 which is a mobile agent on the computer M1 sends data to an intercommunication object Bc which is an object for socket communication, and the intercommunication object Bc is an intercommunication object which is an object for socket communication of the computer M2. Data to the object for communication Bs and the object for communication Bs
Delivers data to the agent A2 which is a mobile agent on the computer M2. Therefore, even if the agent platform differs depending on the computer, it is possible to realize data transmission between mobile agents on different agent platforms without modifying the agent platform.
【0063】なお、本実施の形態では、計算機1から計
算機2への1対1のデータ送信について説明したが、コ
ンピュータシステム100をメソッドMe1´を有する
複数の計算機によって構成し、ホスト名Hを計算機2と
することにより、多対1のデータ送信を実現することが
可能である。In this embodiment, the one-to-one data transmission from the computer 1 to the computer 2 has been described. However, the computer system 100 is constituted by a plurality of computers having the method Me1 ', and the host name H is used as the computer name. By setting 2, it is possible to realize many-to-one data transmission.
【0064】(第3の実施の形態)次に、本発明を適用
した第3の実施の形態におけるコンピュータシステム1
00について説明する。(Third Embodiment) Next, a computer system 1 according to a third embodiment to which the present invention is applied.
00 will be described.
【0065】図10〜図11は、本発明を適用した第3
の実施の形態におけるコンピュータシステム100を示
す図である。FIGS. 10 to 11 show a third embodiment to which the present invention is applied.
FIG. 9 is a diagram showing a computer system 100 according to the embodiment.
【0066】本第3の実施の形態におけるコンピュータ
システム100は、第2の実施の形態の計算機M1、M
2における相互通信用オブジェクトBc、Bsを、計算
機M1、M2のそれぞれが共に備えた構成であって、第
2の実施の形態におけるデータ送信を、計算機M1、M
2間で相互に同時に行えるようにしたものである。この
際の通信処理を中心に、以下詳細に説明する。The computer system 100 according to the third embodiment includes the computers M1 and M according to the second embodiment.
2 is a configuration in which each of the computers M1 and M2 is provided with the objects Bc and Bs for mutual communication in the second embodiment, and the data transmission in the second embodiment is performed by the computers M1 and Ms
The two can be performed simultaneously. The communication process at this time will be described in detail below.
【0067】まず構成を説明する。図10は、通信処理
に係るコンピュータシステム100の機能構成を示すブ
ロック図である。コンピュータシステム100は、第2
の実施の形態における計算機M1と、インターネットや
イントラネット等のネットワークによって計算機M1に
接続された計算機M2とによって構成されており、第2
の実施の形態のコンピュータシステム100の要部及び
機能と同一のものには同一の符号を付して、以下説明を
省略する。First, the configuration will be described. FIG. 10 is a block diagram illustrating a functional configuration of the computer system 100 related to the communication processing. The computer system 100 has a second
And a computer M2 connected to the computer M1 by a network such as the Internet or an intranet.
The same components as those of the computer system 100 according to the present embodiment have the same reference characters allotted, and description thereof will not be repeated.
【0068】図10において、相互通信用オブジェクト
Bc1、Bc2、Bs1、Bs2はJava言語で作ら
れたプログラムであり、計算機M1には、エージェント
プラットフォームP1と、エージェントA1と、相互通
信用オブジェクトBc1、Bs1とが動作・実行されい
る。また、計算機M2には、エージェントプラットフォ
ームP2と、エージェントA2と、相互通信用オブジェ
クトBC2、Bs2とが動作・実行されている。In FIG. 10, the objects for communication Bc1, Bc2, Bs1, Bs2 are programs made in the Java language, and the computer M1 has an agent platform P1, an agent A1, and objects for communication Bc1, Bs1. Are operated and executed. In the computer M2, an agent platform P2, an agent A2, and objects BC2 and Bs2 for mutual communication are operated and executed.
【0069】また、相互通信用オブジェクトBc1、B
c2は、第2の実施の形態の相互通信用オブジェクトB
cと同様に、変数D0と、メソッドMe1´と、メソッ
ドMe3とを備え、メソッドMe1´は、エージェント
A1又はエージェントA2からデータ送信先のホスト名
Hと送信データDnを引数として受け取り、送信データ
Dnを変数D0に代入する、戻り値のないメソッドであ
り、メソッドMe3は、相互通信用オブジェクトBs1
又は相互通信用オブジェクトBs2とソケット通信を行
うためのメソッドである。The objects Bc1 and Bc for mutual communication
c2 is the object B for mutual communication according to the second embodiment.
Similarly to c, the method includes a variable D0, a method Me1 ', and a method Me3. The method Me1' receives the host name H of the data transmission destination and the transmission data Dn as arguments from the agent A1 or the agent A2, and transmits the transmission data Dn Is assigned to the variable D0, and there is no return value. The method Me3 is an object Bs1 for mutual communication.
Alternatively, it is a method for performing socket communication with the intercommunication object Bs2.
【0070】また、相互通信用オブジェクトBs1、B
s2は、第2の実施の形態の相互通信用オブジェクトB
sと同様に、変数D0´と、メソッドMe2と、メソッ
ドMe4とを備える。変数D0´は、送信データDnを
格納する変数であり、メソッドMe2は、引数なしで呼
び出されると同時に変数D0´の値を戻り値とするメソ
ッドであり、メソッドMe4は、相互通信用オブジェク
トBc1又は相互通信用オブジェクトBc2とソケット
通信を行うためのメソッドである。The objects Bs1, B for mutual communication
s2 is the object B for mutual communication according to the second embodiment.
Similarly to s, it includes a variable D0 ', a method Me2, and a method Me4. The variable D0 'is a variable that stores the transmission data Dn, the method Me2 is a method that is called without an argument and uses the value of the variable D0' as a return value, and the method Me4 is the object Bc1 for mutual communication or This is a method for performing socket communication with the mutual communication object Bc2.
【0071】また、エージェントA1には、予め、プロ
グラム中に相互通信用オブジェクトBc1が備えるメソ
ッドMe1´とメソッドMe3を呼び出す処理と、相互
通信用オブジェクトBs1が備えるメソッドMe2とメ
ソッドMe4を呼び出す処理が組み込まれている。また
同様に、エージェントA2には、予め、プログラム中に
相互通信用オブジェクトBc2が備えるメソッドMe1
´とメソッドMe3を呼び出す処理と、相互通信用オブ
ジェクトBs2が備えるメソッドMe2とメソッドMe
4を呼び出す処理が組み込まれている。このため、異な
る計算機上の異なるエージェントプラットフォームP
1、P2上で動作しているエージェントA1、A2間
で、直接、データ通信が行われることはない。The agent A1 incorporates, in advance, a process of calling a method Me1 'and a method Me3 of the intercommunication object Bc1 in a program and a process of calling a method Me2 and a method Me4 of the intercommunication object Bs1. Have been. Similarly, the agent A2 is provided with a method Me1 included in the mutual communication object Bc2 in the program in advance.
'And the method of calling the method Me3, the method Me2 and the method Me included in the object Bs2 for mutual communication.
4 is incorporated. Therefore, different agent platforms P on different computers
1. There is no direct data communication between the agents A1 and A2 operating on P2.
【0072】次に動作を説明する。図11は、コンピュ
ータシステム100において、エージェントA1とエー
ジェントA2間で行うデータ通信に係る通信処理の動作
を示すフローチャートである。Next, the operation will be described. FIG. 11 is a flowchart illustrating an operation of a communication process related to data communication performed between the agent A1 and the agent A2 in the computer system 100.
【0073】まず、エージェントA1が相互通信用オブ
ジェクトBs1のメソッドMe4を呼び出す(ステップ
S31)。このことにより相互通信オブジェクトBs1
がデータ受信待ちの状態となる。次に、エージェントA
2が相互通信用オブジェクトBs2のメソッドMe4を
呼び出す(ステップS32)。このことにより相互通信
オブジェクトBs2がデータ受信待ちの状態となる。First, the agent A1 calls the method Me4 of the mutual communication object Bs1 (step S31). This allows the mutual communication object Bs1
Are in a state of waiting for data reception. Next, Agent A
2 calls the method Me4 of the mutual communication object Bs2 (step S32). As a result, the mutual communication object Bs2 enters a state of waiting for data reception.
【0074】次に、データの送信がエージェントA1か
らエージェントA2へ行われる場合には(ステップS3
3)、エージェントA1が相互通信用オブジェクトBc
1のメソッドMe1´を呼び出して(ステップS3
4)、相互通信用オブジェクトBc1に、引数として、
データ送信先である計算機2のホスト名Hと送信データ
Dnを送る(ステップS35)。そして、相互通信用オ
ブジェクトBc1は、送られた送信データDnを変数D
0に代入する(ステップS36)。Next, when data transmission is performed from the agent A1 to the agent A2 (step S3).
3), agent A1 is an object Bc for mutual communication
1 (Step S3)
4), as an argument to the mutual communication object Bc1,
The host name H of the computer 2 that is the data transmission destination and the transmission data Dn are sent (step S35). Then, the mutual communication object Bc1 stores the transmitted transmission data Dn in a variable D.
Substituted into 0 (step S36).
【0075】次に、エージェントA1が相互通信用オブ
ジェクトBc1内のメソッドMe3を呼び出す(ステッ
プS37)。このことにより、相互通信用オブジェクト
Bc1は、ホスト名Hを参照してデータ送信先のホスト
である計算機2を認識し、ソケット通信を用いて当該計
算機2上で、データ受信待ちの状態にある相互通信用オ
ブジェクトBs2との間で通信ができる状態を確立する
(ステップS38)。そして、相互通信用オブジェクト
Bc1は、データ送信先の計算機2上の相互通信用オブ
ジェクトBs2に、変数D0に代入した送信データDn
を送信する(ステップS39)。Next, the agent A1 calls the method Me3 in the mutual communication object Bc1 (step S37). As a result, the mutual communication object Bc1 recognizes the computer 2 which is the data transmission destination host with reference to the host name H, and uses the socket communication to communicate with the computer 2 waiting for data reception on the computer 2 concerned. A state in which communication with the communication object Bs2 can be established is established (step S38). Then, the mutual communication object Bc1 is stored in the transmission data Dn substituted for the variable D0 in the mutual communication object Bs2 on the computer 2 of the data transmission destination.
Is transmitted (step S39).
【0076】次いで、相互通信用オブジェクトBs2
は、受信した送信データDnを変数D0´に代入する
(ステップS40)。そして、エージェントA2は、相
互通信用オブジェクトBs2内のメソッドMe2を呼び
出して(ステップS41)、メソッドMe2から、変数
D0´に代入した送信データDnを受け取る(ステップ
S42)。Next, the mutual communication object Bs2
Substitutes the received transmission data Dn for a variable D0 '(step S40). Then, the agent A2 calls the method Me2 in the mutual communication object Bs2 (step S41), and receives the transmission data Dn assigned to the variable D0 'from the method Me2 (step S42).
【0077】また、ステップS33において、データの
送信がエージェントA2からエージェントA1へ行われ
る場合いは(ステップS33)、エージェントA2が相
互通信用オブジェクトBc2のメソッドMe1´を呼び
出して(ステップS43)、相互通信用オブジェクトB
c2に、引数として、データ送信先である計算機1のホ
スト名Hと送信データDnを送る(ステップS44)。
そして、相互通信用オブジェクトBc2は、送られた送
信データDnを変数D0に代入する(ステップS4
5)。If the data is transmitted from the agent A2 to the agent A1 in step S33 (step S33), the agent A2 calls the method Me1 'of the intercommunication object Bc2 (step S43), and Communication object B
The host name H and the transmission data Dn of the computer 1 which is the data transmission destination are sent to c2 as arguments (step S44).
Then, the mutual communication object Bc2 substitutes the transmitted transmission data Dn for the variable D0 (step S4).
5).
【0078】次に、エージェントA2が相互通信用オブ
ジェクトBc2内のメソッドMe3を呼び出す(ステッ
プS46)。このことにより、相互通信用オブジェクト
Bc2は、ホスト名Hを参照してデータ送信先のホスト
である計算機1を認識し、ソケット通信を用いて当該計
算機1上で、データ受信待ちの状態にある相互通信用オ
ブジェクトBs1との間で通信ができる状態を確立する
(ステップS47)。そして、相互通信用オブジェクト
Bc2は、データ送信先の計算機1上の相互通信用オブ
ジェクトBs1に、変数D0に代入した送信データDn
を送信する(ステップS48)。Next, the agent A2 calls the method Me3 in the intercommunication object Bc2 (step S46). As a result, the mutual communication object Bc2 recognizes the computer 1 that is the data transmission destination host with reference to the host name H, and uses the socket communication to communicate with the computer 1 that is waiting for data reception on the computer 1. A state in which communication with the communication object Bs1 can be established is established (step S47). Then, the mutual communication object Bc2 is the transmission data Dn substituted for the variable D0 in the mutual communication object Bs1 on the data transmission destination computer 1.
Is transmitted (step S48).
【0079】次いで、相互通信用オブジェクトBs1
は、受信した送信データDnを変数D0´に代入する
(ステップS49)。そして、エージェントA1は、相
互通信用オブジェクトBs1内のメソッドMe2を呼び
出して(ステップS50)、メソッドMe2から、変数
D0´に代入した送信データDnを受け取る(ステップ
S51)。Next, the mutual communication object Bs1
Substitutes the received transmission data Dn for a variable D0 '(step S49). Then, the agent A1 calls the method Me2 in the intercommunication object Bs1 (step S50), and receives the transmission data Dn assigned to the variable D0 'from the method Me2 (step S51).
【0080】以上のように、コンピュータシステム10
0の計算機M1と計算機M2は、相互にソケット通信を
行うためのオブジェクトとして、相互通信用オブジェク
トBc、Bsを共に備えることとし、エージェントA
1、A2がこの相互通信用オブジェクトBc、Bsを介
してデータ通信を行うこととしたため、異なる計算機の
異なるエージェントプラットフォームであっても、当該
エージェントプラットフォームを改造することなく、エ
ージェントA1とエージェントA2間で、双方向にデー
タ通信を実現することができる。As described above, the computer system 10
The computer M1 and the computer M2 each have objects Bc and Bs for mutual communication as objects for performing socket communication with each other.
1 and A2 perform data communication through the mutual communication objects Bc and Bs. Therefore, even if different agent platforms of different computers are used, the agent platform can be modified between the agent A1 and the agent A2 without modifying the agent platform. , Bidirectional data communication can be realized.
【0081】なお、本実施の形態では、計算機1から計
算機2へ、また計算機2から計算機1への1対1のデー
タ送信について説明したが、コンピュータシステム10
0を、複数の計算機による構成とし、ホスト名Hを同一
のデータ送信先の計算機とすることによって、多対1の
データ送信を実現することが可能である。In the present embodiment, the one-to-one data transmission from the computer 1 to the computer 2 and from the computer 2 to the computer 1 has been described.
It is possible to realize many-to-one data transmission by setting 0 as a configuration of a plurality of computers and using the host name H as the computer of the same data transmission destination.
【0082】また、相互通信用オブジェクトBc1又は
Bc2と、相互通信用オブジェクトBs1又はBs2と
のデータ通信を、ソケット通信でなく、従来技術におい
て説明したORBを用いて実現することとしてもよい。
この場合には、相互通信用オブジェクトBc1、Bc
2、Bs1、Bs2は、使用するORBに準じて作られ
る必要があり、さらに、計算機M1、M2はORBをさ
らに備えるように構成する必要がある。しかし、例えば
CORBA準拠のORB(市販の製品としてはIONA
社のOrbix)を使用することにより、CORBAは
プログラミング言語に依存しないため、エージェントプ
ラットフォーム、移動エージェント、及び相互通信用オ
ブジェクトはJava言語に限られることなく複数のプ
ログラミング言語で作成することができ、かつ上記通信
処理と同一の動作を行わせることが可能になる。Further, the data communication between the mutual communication object Bc1 or Bc2 and the mutual communication object Bs1 or Bs2 may be realized by using the ORB described in the prior art instead of the socket communication.
In this case, the objects for mutual communication Bc1, Bc
2, Bs1 and Bs2 need to be made according to the ORB to be used, and the computers M1 and M2 need to be configured to further include the ORB. However, for example, a CORBA-compliant ORB (a commercially available product such as IONA
By using Orbix, Inc., CORBA is independent of the programming language, so that agent platforms, mobile agents, and intercommunication objects can be created in multiple programming languages without being limited to the Java language, and The same operation as the above communication processing can be performed.
【0083】さらに、ORBではなく、メソッドや変数
及び定数を含むオブジェクトの受け渡しが可能な分散オ
ブジェクト通信(市販の製品としては上記JavaRM
I)を用いて実現することとしてもよい。この場合に
は、相互通信用オブジェクトBc1、Bc2、Bs1、
Bs2は、使用する分散オブジェクト通信に準じて作ら
れる必要がある。しかし、異種の移動エージェント間
で、オブジェクトの受け渡しが直接可能になるため、動
作環境に柔軟に対応し、効率的なデータ通信を実現する
ことが可能になる。Further, instead of the ORB, a distributed object communication capable of passing objects including methods, variables, and constants (a commercially available product is JavaRM
It may be realized by using I). In this case, the objects Bc1, Bc2, Bs1,
Bs2 needs to be created according to the distributed object communication to be used. However, since objects can be directly transferred between different types of mobile agents, it is possible to flexibly cope with an operating environment and realize efficient data communication.
【0084】[0084]
【発明の効果】請求項1及び請求項7記載の発明によれ
ば、エージェントを動作させるための異なる動作環境を
有するデータ通信装置であっても、当該動作環境を改造
することなく、当該異なる動作環境において動作するエ
ージェント間の相互通信を実現することができる。According to the first and seventh aspects of the present invention, even if the data communication device has a different operating environment for operating the agent, the different operation can be performed without modifying the operating environment. Mutual communication between agents operating in the environment can be realized.
【0085】請求項2及び請求項8記載の発明によれ
ば、エージェントを動作させるための異なる動作環境を
有する送信装置と受信装置とであっても、当該動作環境
を改造することなく、エージェント間のデータ通信を実
現することができる。According to the second and eighth aspects of the present invention, even if the transmitting device and the receiving device have different operating environments for operating the agent, the transmitting device and the receiving device can communicate with each other without modifying the operating environment. Data communication can be realized.
【0086】請求項3及び請求項9記載の発明によれ
ば、エージェントを動作させるための異なる動作環境を
有するデータ通信装置間であっても、当該動作環境を改
造することなく、双方向にエージェント間のデータ通信
を実現することができる。According to the third and ninth aspects of the present invention, even between data communication apparatuses having different operating environments for operating the agent, the agent can be bidirectionally changed without modifying the operating environment. Data communication between them can be realized.
【0087】請求項4記載の発明によれば、請求項2又
は3記載の発明の効果に加えて、従来から用いられてい
るソケット通信を用いることによって、容易にデータ通
信システムを実現することが可能になると共に、従来か
ら使用されているデータ通信システムに容易に適用する
ことができる。According to the fourth aspect of the present invention, in addition to the effects of the second or third aspect of the present invention, a data communication system can be easily realized by using a socket communication which has been conventionally used. It becomes possible and can be easily applied to a data communication system that has been conventionally used.
【0088】請求項5記載の発明によれば、請求項2又
は3記載の発明の効果に加えて、例えば、CORBA準
拠のORB(市販の製品としてはIONA社のOrbi
x)を使用することにより、CORBAはプログラミン
グ言語に依存しないため、動作環境やエージェント、相
互通信手段を実現するための相互通信用オブジェクト等
を、Java言語等の一定のプログラミング言語に限ら
れることなく複数のプログラミング言語で作成すること
が可能になる。According to the fifth aspect of the present invention, in addition to the effects of the second or third aspect of the invention, for example, a CORBA-compliant ORB (a commercially available product such as Orbi of IONA)
By using x), since CORBA does not depend on a programming language, the operating environment, agents, and objects for intercommunication for realizing intercommunication means are not limited to a certain programming language such as Java language. It can be created in multiple programming languages.
【0089】請求項6記載の発明によれば、請求項2又
は3記載の発明の効果に加えて、異種エージェント間
で、オブジェクトの受け渡しが直接可能になるため、動
作環境に柔軟に対応した、効率的なデータ通信を実現す
ることが可能になる。According to the invention described in claim 6, in addition to the effects of the invention described in claim 2 or 3, objects can be directly transferred between different types of agents, so that the operation environment can be flexibly supported. It is possible to realize efficient data communication.
【図面の簡単な説明】[Brief description of the drawings]
【図1】第1の実施の形態における計算機Mの通信処理
に係る機能構成を示すブロック図。FIG. 1 is a block diagram showing a functional configuration related to a communication process of a computer M according to a first embodiment.
【図2】第1の実施の形態における計算機Mの通信処理
に係るソフトウェア動作環境の階層モデルを示す図。FIG. 2 is a diagram showing a hierarchical model of a software operating environment relating to communication processing of a computer M according to the first embodiment.
【図3】図1及び図2の相互通信用オブジェクトB0の
概略構成図。FIG. 3 is a schematic configuration diagram of an intercommunication object B0 of FIGS. 1 and 2;
【図4】第1の実施の形態における計算機Mにおいて、
エージェントA1からエージェントA2にデータを送信
する場合の通信処理の動作を示すフローチャート。FIG. 4 shows a computer M according to the first embodiment.
9 is a flowchart showing an operation of a communication process when data is transmitted from the agent A1 to the agent A2.
【図5】第2の実施の形態におけるコンピュータシステ
ム100の通信処理に係る機能構成を示すブロック図。FIG. 5 is a block diagram showing a functional configuration related to communication processing of a computer system 100 according to a second embodiment.
【図6】第2の実施の形態におけるコンピュータシステ
ム100の通信処理に係るソフトウェア動作環境の階層
モデルを示す図。FIG. 6 is a diagram illustrating a hierarchical model of a software operating environment relating to communication processing of a computer system according to a second embodiment.
【図7】図5及び図6の相互通信用オブジェクトBcの
概略構成図。FIG. 7 is a schematic configuration diagram of an intercommunication object Bc of FIGS. 5 and 6;
【図8】図5及び図6の相互通信用オブジェクトBsの
概略構成図。FIG. 8 is a schematic configuration diagram of an intercommunication object Bs in FIGS. 5 and 6;
【図9】第2の実施の形態におけるコンピュータシステ
ム100において、エージェントA1からエージェント
A2にデータを送信する際の通信処理の動作を示すフロ
ーチャート。FIG. 9 is a flowchart illustrating an operation of communication processing when data is transmitted from the agent A1 to the agent A2 in the computer system 100 according to the second embodiment.
【図10】第3の実施の形態におけるコンピュータシス
テム100の通信処理に係る機能構成を示すブロック
図。FIG. 10 is a block diagram showing a functional configuration related to communication processing of a computer system according to a third embodiment.
【図11】第3の実施の形態におけるコンピュータシス
テム100において、エージェントA1とエージェント
A2間で行うデータ通信に係る通信処理の動作を示すフ
ローチャート。FIG. 11 is a flowchart showing an operation of communication processing related to data communication performed between an agent A1 and an agent A2 in the computer system 100 according to the third embodiment.
【図12】従来の移動エージェントの概要を示す図。FIG. 12 is a diagram showing an outline of a conventional mobile agent.
【図13】従来のエージェントプラットフォームにおけ
る動作環境の階層モデルの一例を示す図。FIG. 13 is a diagram showing an example of a hierarchical model of an operating environment in a conventional agent platform.
M、M1、M2 計算機 100 コンピュータシステム P1、P2 エージェントプラットフォーム A1、A2 エージェント B0、Bc、Bs 相互通信用オブジェクト D0、D0´ 変数 Me1、Me1´、Me2、Me3、Me4 メソッ
ド Dn 送信データ H ホスト名M, M1, M2 Computer 100 Computer system P1, P2 Agent platform A1, A2 Agent B0, Bc, Bs Intercommunication object D0, D0 'Variable Me1, Me1', Me2, Me3, Me4 Method Dn Transmission data H Host name
Claims (9)
なる複数の動作環境を有するデータ通信装置において、 前記エージェントから送信データを受け取る受取手段
と、この受取手段によって受け取られた送信データを記
憶する記憶手段と、この記憶手段によって記憶された送
信データを前記エージェントに受け渡す受渡手段と、を
備えた相互通信手段を具備し、 この相互通信手段を介して前記異なる動作環境における
エージェント間の通信を行うことを特徴とするデータ通
信装置。1. A data communication apparatus having a plurality of different operating environments for operating a plurality of agents, receiving means for receiving transmission data from the agent, and storage means for storing the transmission data received by the receiving means. And a transfer means for transferring the transmission data stored by the storage means to the agent, and performing communication between the agents in the different operating environments via the mutual communication means. A data communication device characterized by the above-mentioned.
がそれぞれ異なる送信装置と受信装置がネットワークに
接続されたデータ通信システムにおいて、 前記送信装置は、 当該送信装置内の動作環境上で動作しているエージェン
トから送信データを受け取る受取手段と、この受取手段
によって受け取られた送信データを記憶する送信側記憶
手段と、所定の通信方法に従って前記受信装置との間で
データ通信を行って、前記送信側記憶手段に記憶された
送信データを送信する送信手段と、を備えた送信側相互
通信手段を具備し、 前記受信装置は、 前記所定の通信方法に従って前記送信装置との間でデー
タ通信を行って、送信データを受信する受信手段と、こ
の受信手段によって受信された送信データを記憶する受
信側記憶手段と、当該受信装置内の動作環境上で動作し
ているエージェントへ、前記受信側記憶手段に記憶され
た送信データを受け渡す受渡手段と、を備えた受信側相
互通信手段を具備し、 前記送信側相互通信手段と前記受信側相互通信手段を介
して、前記送信装置と前記受信装置とが有する異なる動
作環境におけるエージェント間の通信を行うことを特徴
とするデータ通信システム。2. In a data communication system in which a transmitting device and a receiving device that are different in operating environments for operating agents are connected to a network, the transmitting device operates on an operating environment in the transmitting device. Receiving means for receiving transmission data from an agent, transmission-side storage means for storing transmission data received by the reception means, and performing data communication with the receiving apparatus in accordance with a predetermined communication method; Transmitting means for transmitting transmission data stored in the means, comprising: a transmitting side intercommunication means, comprising: the receiving apparatus performs data communication with the transmitting apparatus according to the predetermined communication method, Receiving means for receiving transmission data; receiving-side storage means for storing transmission data received by the receiving means; Receiving means for transmitting and receiving the transmission data stored in the receiving-side storage means to an agent operating on an operating environment in the apparatus, A data communication system for performing communication between agents in different operating environments of the transmitting device and the receiving device via the inter-communication means with the receiving side.
がそれぞれ異なる複数のデータ通信装置がネットワーク
に接続されたデータ通信システムにおいて、 前記データ通信装置は、 当該データ通信装置内の動作環境上で動作しているエー
ジェントから送信データを受け取る受取手段と、この受
取手段によって受け取られた送信データを記憶する送信
側記憶手段と、所定の通信方法に従って他のデータ通信
装置との間でデータ通信を行って、前記送信側記憶手段
に記憶された送信データを送信する送信手段と、を備え
た送信側相互通信手段と、 前記所定の通信方法に従って他のデータ通信装置との間
でデータ通信を行って、送信データを受信する受信手段
と、この受信手段によって受信された送信データを記憶
する受信側記憶手段と、前記動作環境上で動作している
エージェントへ、前記受信側記憶手段に記憶された送信
データを受け渡す受渡手段と、を備えた受信側相互通信
手段と、 を具備し、前記送信側相互通信手段と前記受信側相互通
信手段を介して、前記複数のデータ通信装置の異なる動
作環境におけるエージェント間の通信を行うことを特徴
とするデータ通信システム。3. A data communication system in which a plurality of data communication devices each having a different operating environment for operating an agent are connected to a network, wherein the data communication device operates on an operating environment in the data communication device. Receiving means for receiving transmission data from the agent, transmitting-side storage means for storing transmission data received by the receiving means, and performing data communication with another data communication device according to a predetermined communication method, A transmitting unit for transmitting transmission data stored in the transmitting side storage unit; and a transmitting side intercommunicating unit including: a transmitting unit that performs data communication with another data communication apparatus according to the predetermined communication method, and transmits the data. Receiving means for receiving data; receiving-side storage means for storing transmission data received by the receiving means; Receiving means for transmitting and receiving the transmission data stored in the receiving side storage means to an agent operating on the environment; and receiving side intercommunication means comprising: A data communication system, wherein communication between agents in different operating environments of the plurality of data communication devices is performed via a receiving side mutual communication unit.
ることを特徴とする請求項2又は3記載のデータ通信シ
ステム。4. The data communication system according to claim 2, wherein said predetermined communication method is socket communication.
信方法であることを特徴とする請求項2又は3記載のデ
ータ通信システム。5. The data communication system according to claim 2, wherein said predetermined communication method is a communication method using an ORB.
通信であることを特徴とする請求項2又は3記載のデー
タ通信システム。6. The data communication system according to claim 2, wherein said predetermined communication method is distributed object communication.
なる複数の動作環境を有するデータ通信装置におけるデ
ータ通信方法であって、 送信データを記憶する記憶手段を備え、 前記エージェントから送信データを受け取る工程と、 前記受け取った送信データを前記記憶手段に記憶させる
工程と、 前記記憶手段に記憶させた送信データを前記エージェン
トに受け渡す工程と、 を有することを特徴とするデータ通信方法。7. A data communication method in a data communication device having a plurality of different operating environments for operating a plurality of agents, comprising: a storage unit for storing transmission data; and receiving transmission data from the agent. A data communication method, comprising: storing the received transmission data in the storage unit; and transferring the transmission data stored in the storage unit to the agent.
がそれぞれ異なる送信装置と受信装置がネットワークに
接続されたデータ通信システムにおけるデータ通信方法
であって、 前記送信装置は、送信データを記憶する送信側記憶手段
を備え、 前記受信装置は、前記送信装置から受信した送信データ
を記憶する受信側記憶手段を備え、 前記送信装置が、当該送信装置内の動作環境上で動作し
ているエージェントから送信データを受け取る工程と、 前記送信装置が、前記受け取った送信データを前記送信
側記憶手段に記憶させる工程と、 前記送信装置が、所定の通信方法に従って前記受信装置
との間でデータ通信を行って、前記送信側記憶手段に記
憶させた送信データを送信する工程と、 前記受信装置が、前記所定の通信方法に従って前記送信
装置との間でデータ通信を行って、送信データを受信す
る工程と、 前記受信装置が、前記受信した送信データを前記受信側
記憶手段に記憶させる工程と、 前記受信装置が、当該受信装置内の動作環境上で動作し
ているエージェントへ、前記受信側記憶手段に記憶させ
た送信データを受け渡す工程と、 を有することを特徴とするデータ通信方法。8. A data communication method in a data communication system in which a transmitting device and a receiving device, which have different operating environments for operating agents, are connected to a network, wherein the transmitting device stores transmission data. Storage means, the reception apparatus comprises reception-side storage means for storing transmission data received from the transmission apparatus, and the transmission apparatus transmits transmission data from an agent operating on an operating environment in the transmission apparatus. Receiving, and the transmitting device, the step of storing the received transmission data in the transmitting side storage means, the transmitting device performs data communication with the receiving device according to a predetermined communication method, Transmitting the transmission data stored in the transmission-side storage unit; and the receiving device performs the transmission according to the predetermined communication method. Performing data communication with a receiving device to receive transmission data; the receiving device storing the received transmission data in the receiving storage means; and Transferring the transmission data stored in the receiving-side storage means to an agent operating on the operating environment in the data communication method.
がそれぞれ異なる複数のデータ通信装置がネットワーク
に接続されたデータ通信システムにおけるデータ通信方
法であって、 前記複数のデータ通信装置は、それぞれ、送信データを
記憶する送信側記憶手段と、他のデータ通信装置から受
信した送信データを記憶する受信側記憶手段とを備え、 前記複数のデータ通信装置の内の一のデータ通信装置
が、当該データ通信装置内の動作環境上で動作している
エージェントから送信データを受け取る工程と、 前記一のデータ通信装置が、前記受け取った送信データ
を前記送信側記憶手段に記憶させる工程と、 前記一のデータ通信装置が、所定の通信方法に従って他
のデータ通信装置との間でデータ通信を行って、前記送
信側記憶手段に記憶させた送信データを送信する工程
と、 前記他のデータ通信装置が、前記所定の通信方法に従っ
て前記一のデータ通信装置との間でデータ通信を行っ
て、送信データを受信する工程と、 前記他のデータ通信装置が、前記受信した送信データを
前記受信側記憶手段に記憶させる工程と、 前記他のデータ通信装置が、前記動作環境上で動作して
いるエージェントへ、前記受信側記憶手段に記憶させた
送信データを受け渡す工程と、 を有することを特徴とするデータ通信方法。9. A data communication method in a data communication system in which a plurality of data communication devices having different operating environments for operating agents are connected to a network, wherein the plurality of data communication devices each include transmission data. And a receiving-side storage unit for storing transmission data received from another data communication device, wherein one of the plurality of data communication devices is the data communication device. Receiving transmission data from an agent operating on an operating environment in the server; the one data communication device storing the received transmission data in the transmission-side storage unit; and the one data communication device. Performs data communication with another data communication device according to a predetermined communication method, and stores the data in the transmission side storage means. Transmitting the transmitted transmission data, the other data communication device performing data communication with the one data communication device according to the predetermined communication method, and receiving the transmission data; and Storing the received transmission data in the receiving side storage means, and storing the received data in the receiving side storage means in an agent operating on the operating environment. A step of delivering the transmitted transmission data.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11017393A JP2000215180A (en) | 1999-01-26 | 1999-01-26 | Data communication device, system and method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11017393A JP2000215180A (en) | 1999-01-26 | 1999-01-26 | Data communication device, system and method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2000215180A true JP2000215180A (en) | 2000-08-04 |
Family
ID=11942768
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP11017393A Pending JP2000215180A (en) | 1999-01-26 | 1999-01-26 | Data communication device, system and method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2000215180A (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006331126A (en) * | 2005-05-26 | 2006-12-07 | Toshiba Corp | Network distributed mobile agent system and its construction method and construction program |
| US10635454B2 (en) | 2015-02-03 | 2020-04-28 | Alibaba Group Holding Limited | Service management method and the device |
-
1999
- 1999-01-26 JP JP11017393A patent/JP2000215180A/en active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006331126A (en) * | 2005-05-26 | 2006-12-07 | Toshiba Corp | Network distributed mobile agent system and its construction method and construction program |
| US10635454B2 (en) | 2015-02-03 | 2020-04-28 | Alibaba Group Holding Limited | Service management method and the device |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6393497B1 (en) | Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system | |
| AU686105B2 (en) | System for implementation-independent interface specification | |
| US7058954B1 (en) | System and method for facilitating dynamic loading of stub information to enable a program operating in one address space to invoke processing of a remote method or procedure in another space | |
| US6983285B2 (en) | Apparatus and method for dynamically verifying information in a distributed system | |
| JP3339482B2 (en) | Distributed debugging apparatus, debugging method, and recording medium recording control program | |
| JP3055970B2 (en) | Method and apparatus for implementing interface between object-oriented languages | |
| KR20010041293A (en) | Method and apparatus for remote method invocation | |
| EP1027796A2 (en) | Distributed web application server | |
| JP5149258B2 (en) | Robot component management device | |
| US7096249B2 (en) | Method and system for distributing applications | |
| US20020198895A1 (en) | Apparatus and method for dynamically verifying information in a distributed system | |
| CN115827285A (en) | Cross-platform communication method, system, device, equipment and medium | |
| JP2000215180A (en) | Data communication device, system and method | |
| WO1999044123A1 (en) | Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system | |
| CN112351089A (en) | Data transmission method, system and device between virtual machine and accelerator | |
| JP3494545B2 (en) | Distributed computer system, computer and distributed processing method | |
| Liao et al. | OMEI: an open mathematical engine interface | |
| JP3691962B2 (en) | Agent system and information processing method | |
| JP2002505478A (en) | Deferred Restoration and Remote Loading of Objects for Event Notification in Distributed Systems | |
| JP2006127399A (en) | Application platform providing system and method, and program thereof | |
| JP2000293498A (en) | Remote debug system in distributed environment and recording medium | |
| Mason | Networks—Distributed Computing | |
| KR960006472B1 (en) | Fddi firmware driving method for ticom iop environment | |
| JPH03241454A (en) | Load module sharing system between different systems | |
| JP2003143233A (en) | Cooperation service control device between telephone network and IP network |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20041001 |