JP3763662B2 - ネットワークエージェントシステムおよびエージェント間通信方法 - Google Patents
ネットワークエージェントシステムおよびエージェント間通信方法 Download PDFInfo
- Publication number
- JP3763662B2 JP3763662B2 JP08032998A JP8032998A JP3763662B2 JP 3763662 B2 JP3763662 B2 JP 3763662B2 JP 08032998 A JP08032998 A JP 08032998A JP 8032998 A JP8032998 A JP 8032998A JP 3763662 B2 JP3763662 B2 JP 3763662B2
- Authority
- JP
- Japan
- Prior art keywords
- agent
- terminal
- server
- name
- network
- 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.)
- Expired - Lifetime
Links
Images
Landscapes
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Description
【発明の属する技術分野】
本発明は、コンピュータ上で自律的に動作するエージェントと呼ばれるソフトウェアプログラムが、コンピュータネットワークを介して他のエージェントと協調的に動作するエージェント間通信路確立方法およびエージェント間通信路確立システムに関する。
【0002】
【従来の技術】
従来プロセス間通信には、クライアント/サーバモデルが広く使用されている。クライアント/サーバモデルは、サービスを提供するサーバプロセスと提供されているサービスを利用するクライアントプロセスからなる。
【0003】
サーバプロセスは、クライアントプロセスから要求を受け付ける窓口を用意して、クライアントプロセスからの接続を待つ。サーバプロセスが用意する窓口は、サーバプロセスが動作するコンピュータのIPアドレスとサーバプロセスが使用しているポート番号によって示される。
【0004】
クライアントプロセスは、サーバプロセスのIPアドレスとポート番号を用いて、サーバプロセスとの間に通信路を確立する。例えば、ファイル転送に使用するFile Transfer Protocol(RFC95)では、FTPサーバはポート番号に21番を使用して、クライアントプロセスからの接続に備えている。
【0005】
ネットワークエージェントシステムでは、図11に示す従来のクライアント/サーバモデルのようにサーバプロセスが使用するポート番号を予約しておくことは困難である。例えば、FTPサーバは21番ポートを使用することが予約されており、その番号を他のサーバプロセスが使用しないように設定されている。
【0006】
ネットワークエージェントシステムでは、多種多様なサービスが想定される。例えば、ユーザの代理としてコンピュータネットワーク上で動作するエージェントが考えられる。この場合、ユーザの代理エージェントすべての使用するポート番号を予約することは現実的ではない。また、ユーザの加盟、離脱による変更への対応などを考えると、ポート番号の管理が複雑になると想像される。
【0007】
また、ネットワークエージェントシステムでは、任意のエージェントの追加、削除が自由に行えることが望ましい。例えば、特開平8―77090号公報「マルチエージェントシステム」では自動的にエージェントを追加することによって、高い柔軟性と自己組織能力をもったシステムを実現している。しかし、常時任意のエージェントの追加、削除を可能とするためには、あらかじめそのエージェントの使用するポート番号を予約しておくことはできない。もし予約する方法をとるならば、任意に起動するエージェントの同時に動作する数の上限を設けることになる。
【0008】
また、ネットワークエージェントシステムでは、エージェントがコンピュータネットワーク上を自由に移動できることが望ましい。移動することによりコンピュータ資源の有効活用、ネットワーク負荷の軽減などが考えられる。しかし、サーバエージェントが移動した場合、サーバエージェントが動作するコンピュータのIPアドレスが変わるだけではなく、使用するポート番号も移動前と同じ番号を使えるとは限らない。同じポート番号を使用するためには移動先のコンピュータでポート番号をあらかじめ予約しておく必要がある。
【0009】
ポート番号は有限なコンピュータ資源であるため、多種多様なサービスを提供し、任意のエージェントの追加、削除を可能とし、エージェントのネットワーク上の移動を可能とするネットワークエージェントシステムでは、従来のクライアント/サーバモデルのように使用するポート番号を事前に予約しておく方法では対応できない。
【0010】
【発明が解決しようとする課題】
従来の技術のようにポート番号を予約するシステムでは、ポート番号による制限が多く自由にサービスを増やすことや広くネットワーク上で共有することができないという課題を有していた。
【0011】
本発明は、ポート番号ではなくエージェント名を用いて通信することにより、コンピュータネットワークを介して他のエージェントと協調的に動作し、多種多様なサービスを提供し、任意のエージェントの追加・削除可能としたエージェントシステムを実現することを目的とする。
【0012】
【課題を解決するための手段】
この課題を解決するために本発明では、エージェント間の通信路を確立するためにエージェント名を使用する。
【0013】
サーバエージェントは、自身のエージェント名とともに自身の動作するコンピュータのIPアドレスと使用しているポート番号をエージェント名管理装置に登録し、クライアントエージェントは、サーバエージェントのエージェント名を用いてエージェント名登録装置からサーバエージェントの動作するコンピュータのIPアドレスと使用しているポート番号を獲得し、それらの値を用いてサーバプロセスとの間の通信路を確立する。
【0014】
【発明の実施の形態】
本発明の請求項1記載の発明は、ネットワークを構成する複数の端末の一つであって、サーバエージェントを実行することで自律的に動作し所定のサービスを提供するサーバエージェント端末と、前記複数の端末の一つであって、クライアントエージェントを実行することで自律的に動作し前記サーバエージェント端末と通信を行うことで前記サーバエージェント端末の提供する前記サービスを利用するクライアントエージェント端末と、を具備したネットワークエージェントシステムにおいて、前記サーバエージェント端末が前記クライアントエージェント端末と通信するために使用するIPアドレスおよびポート番号と、前記サーバエージェント端末が前記クライアントエージェント端末と通信するために登録した、前記サーバエージェント端末が実行する前記サーバエージェントの一つ以上のエージェント名と、を関連付けて格納したテーブルを有すると共に、ある前記サーバエージェント端末が前記テーブルに前記エージェント名を登録しようとした際に、前記あるサーバエージェント端末が登録しようとした前記エージェント名と同じエージェント名が前記テーブルに登録されていない場合は登録成功を前記あるサーバエージェント端末に通知し、前記あるサーバエージェント端末が登録しようとした前記エージェント名と同じエージェント名が既に前記テーブルに登録されている場合は登録失敗を前記あるサーバエージェント端末に通知するエージェント名管理装置を前記ネットワーク上に配置し、前記クライアントエージェント端末が前記テーブルの前記エージェント名を参照することで、所望のサービスを提供する前記サーバエージェント端末を探し、前記エージェント名に対応した前記IPアドレスおよびポート番号を取得して、当該サーバエージェント端末と直接通信を行うことを特徴とするネットワークエージェントシステムである。
請求項2に記載の発明は、前記サーバエージェント端末が、前記エージェント名を追加もしくは変更することを特徴とする請求項1記載のネットワークエージェントシステムである。
請求項3に記載の発明は、ある端末で実行される前記サーバエージェントに対して、前記サーバエージェントを前記ネットワーク上で一意に識別するためのエ ージェント識別子を割り振るエージェント登録管理装置を具備し、前記エージェント名管理装置は前記エージェント識別子を前記IPアドレスおよびポート番号と、前記エージェント名と、に関連付けて前記テーブルに格納し、ある端末で実行されている前記サーバエージェントを終了し、他の端末で前記サーバエージェントを起動することで前記他の端末を前記サーバエージェント端末として動作する場合に、前記テーブルに格納された、前記エージェント識別子および前記エージェント名を変更せずに、前記テーブルに格納された前記IPアドレスおよびポート番号を前記他の端末に対応したものに更新することを特徴とする請求項1または請求項2記載のネットワークエージェントシステムである。
請求項4に記載の発明は、前記サーバエージェント端末が、前記テーブルに登録している前記エージェント名を削除することなく前記サーバエージェントを終了した場合に、前記エージェント名管理装置は終了した前記サーバエージェントに対応する前記エージェント名をすべて削除することを特徴とする請求項1または請求項2記載のネットワークエージェントシステムである。
請求項5に記載の発明は、前記クライアントエージェント端末が所望のサービスを利用しようとしたときに前記サービスを提供するサーバエージェント端末が起動していないことが判明した場合に、前記クライアントエージェント端末が前記サービスを提供するサーバエージェントを前記ネットワーク上の端末で起動することで前記端末を前記サービスを提供するサーバエージェント端末として起動し、起動した当該サーバエージェント端末の提供するサービスを利用することを特徴とする請求項1または請求項2記載のネットワークエージェントシステムである。
請求項6に記載の発明は、ネットワークを構成する複数の端末の一つであって、クライアントエージェントを実行することで自律的に動作するクライアントエージェント端末と、前記複数の端末の一つであってサーバエージェントを実行することで自律的に動作し所定のサービスを提供するサーバエージェント端末と、前記サーバエージェント端末が前記クライアントエージェント端末と通信するために使用するIPアドレスおよびポート番号と、前記サーバエージェント端末が前記クライアントエージェント端末と通信するために登録した、前記サーバエー ジェント端末が実行する前記サーバエージェントの一つ以上のエージェント名と、を関連付けて格納したテーブルを有すると共に、ある前記サーバエージェント端末が前記テーブルに前記エージェント名を登録しようとした際に、前記あるサーバエージェント端末が登録しようとした前記エージェント名と同じエージェント名が前記テーブルに登録されていない場合は登録成功を前記あるサーバエージェント端末に通知し、前記あるサーバエージェント端末が登録しようとした前記エージェント名と同じエージェント名が既に前記テーブルに登録されている場合は登録失敗を前記あるサーバエージェント端末に通知するエージェント名管理装置と、を前記ネットワーク上に配置したシステムのエージェント端末間通信方法であって、前記クライアントエージェント端末が前記テーブルの前記エージェント名を参照することで、所望のサービスを提供する前記サーバエージェント端末を探し、前記エージェント名に対応した前記IPアドレスおよびポート番号を取得して、当該サーバエージェント端末との通信を行うことを特徴とするエージェント端末間通信方法である。
また、本発明は、コンピュータ上で自律的に動作するエージェントと呼ばれるソフトウェアプログラムが自ら自分の名前を決め、そのエージェント名を用いて、他のエージェントと通信し、エージェントがコンピュータネットワーク上を移動しても移動前と同じエージェント名を用いて通信することを可能とするエージェント間通信路確立方法であり、有限なコンピュータ資源であるポート番号を有効に活用するという作用を有する。
【0015】
また、本発明は、エージェントをコンピュータネットワーク上で一意に識別し、エージェントがコンピュータネットワーク上のどのコンピュータ上で動作しているか常に把握することを可能とするエージェント登録管理装置と、コンピュータ上にエージェントを起動することを可能とし、エージェントの移動および終了を感知するエージェント起動装置と、エージェントが他のエージェントと通信するためにエージェント名だけを用いて通信することを可能とし、エージェントがネットワーク上で一意なエージェント名を自ら選んで名乗ることを可能とするエージェント名管理装置からなるエージェント間通信路確立システムであり、上述したエージェント間通信路確立方法を実現する作用を有する。
【0016】
また、本発明は、エージェントが登録しているエージェント名を削除することなく終了した場合に、そのエージェントが登録したエージェント名を自動的に削除することを特徴とするエージェント間通信路確立システムであり、使用されていないエージェント名を他のエージェントが使用できないという状態を回避する作用、および通信したいエージェントが動作しているかどうか確認することを可能とする作用を有する。
【0017】
また、本発明は、エージェントが通信しようとした相手先のエージェントが起動していない場合、相手先のエージェントを起動して、その相手先のエージェントと通信することを可能とするエージェント間通信路確立システムであり、ネットワークエージェントシステムに柔軟に新しいサービスを付加することを可能とし、また必要なときにだけサービスを提供するサーバエージェントを起動することにより、コンピュータ資源を有効に活用することを可能とする作用を有する。
【0018】
以下、本発明の実施の形態について、図を用いて説明する。
【0019】
(実施の形態)
本発明の実施の形態におけるエージェント間通信路確立システムのシステム構成図を、図1に示し説明する。図1において、コンピュータネットワーク100、コンピュータネットワーク100に接続するコンピュータ101、コンピュータ101で動作するプログラムからなる。コンピュータ101で動作するプログラムとしては、エージェント起動装置110、エージェント登録管理装置111、エージェント名管理装置112、エージェント120から構成される。
【0020】
上記のように構成されたエージェント間通信路確立システムの動作について以下に説明する。
【0021】
エージェント起動装置110は、コンピュータネットワーク100に接続する複数のコンピュータ101a〜101e上で動作している。ただし一つのコンピュータ101上では一つのエージェント起動装置110だけが動作する。エージェント120は、このエージェント起動装置110が動作しているコンピュータ101上に移動することができる。またユーザまたはエージェント120は、新しくエージェント120をエージェント起動装置110が動作しているコンピュータ101上に起動することができる。
【0022】
エージェント登録管理装置111は、コンピュータネットワーク100に接続する1つのコンピュータ101上で動作している。エージェント登録管理装置111は1つのコンピュータ上で1つだけ動作している。つまりコンピュータネットワーク100上でエージェント登録管理装置111は1つだけ動作している。
【0023】
エージェント名管理装置112は、コンピュータネットワーク100に接続する1つのコンピュータ101上で動作している。エージェント名管理装置112は1つのコンピュータ上で1つだけ動作している。つまりコンピュータネットワーク100上でエージェント名管理装置112は1つだけ動作している。エージェント名管理装置112とエージェント登録管理装置111は同じコンピュータ101上で動作していてもよい。また異なるコンピュータ101上で動作していてもよい。
【0024】
エージェント120は、コンピュータネットワーク100に接続するコンピュータ101上で動作している。1つのコンピュータ101上に0個以上動作してよい。
【0025】
本発明のエージェント間通信路確立システムの構成要素であるエージェント起動装置110、エージェント登録管理装置111、エージェント名登録装置112の機能を説明する。
【0026】
エージェント起動装置110は、ユーザまたはエージェント120の要求に従って、自身が動作しているのと同じコンピュータ101上に、エージェント120を起動する機能を有する。エージェント起動装置110は、自身が起動したエージェント120に起動番号を一意に割り振る。エージェント起動装置110と起動されたエージェント120の関係は親プロセスと子プロセスの関係である。エージェント起動装置110は、図2に示すような自身の子プロセスであるエージェント120のプロセスIDと自身が割り振った起動番号の対応を管理する機能を有する。
【0027】
エージェント起動装置110は、自身が起動したエージェント120が終了するとその終了を感知し、その終了したエージェント120に割り振った起動番号をエージェント登録管理装置111に通知する機能を有する。
【0028】
エージェント登録管理装置111は、エージェント120の登録要求に従って、エージェント登録処理を行う機能を有する。エージェント120はエージェント登録の際に、自身を起動したエージェント起動装置110と自身の起動番号および個別認証番号をエージェント登録管理装置111に通知し、エージェント登録管理装置111からエージェント識別子を割り当てられる。エージェント登録管理装置111は、コンピュータネットワーク100上で一意にエージェント120を識別できるようにエージェント識別子をエージェント120に割り当てる。エージェント登録管理装置111は、図3に示すようなエージェント120のエージェント識別子、エージェント起動装置110、起動番号、個別認証番号の対応を管理する機能を有する。個別認証番号は、エージェント120がエージェント登録管理装置111に登録した内容を変更するときに、エージェントの認証用に使用するもので、エージェント120が自由に決めることができる値である。
【0029】
エージェント登録管理装置111は、エージェント起動装置110からエージェント120の終了が通知される。エージェント起動装置110から通知されたエージェント120の起動番号によって終了したエージェント120を特定し、管理しているエージェントのデータテーブルから削除する機能を有する。終了したエージェントのデータを削除した後、エージェント登録管理装置111は、エージェント名管理装置112にエージェント識別子を通知する機能を有する。終了したエージェント120のエージェント識別子は回収され、後で他のエージェント120に割り振られる。エージェント登録管理装置111は、エージェント起動装置110から通知された起動番号からエージェントを特定できない場合は、特になにもしない。
【0030】
エージェント登録管理装置111は、エージェント120の登録内容変更要求に従って、エージェント登録管理装置111が管理するエージェント登録データの内容を変更する機能を有する。エージェント登録管理装置111は、エージェント120のエージェント識別子、個別認証番号を確認して、正しければ登録内容を変更し、登録内容変更成功をエージェント120に通知する。正しくなければ登録内容変更を行わず、登録内容変更失敗をエージェント120に通知する。
【0031】
エージェント登録管理装置111は、エージェント120の登録内容削除要求に従って、エージェント登録管理装置111が管理するエージェント登録データからエージェント120のデータを削除する機能を有する。エージェント登録管理装置111は、エージェント120のエージェント識別子、個別認証番号を確認してから登録データの削除を行う。登録データを削除した後、エージェント登録管理装置は削除したエージェント120のエージェント識別子をエージェント名管理装置112に通知する。最後に登録内容削除に成功したのか、または失敗したのか結果をエージェント120に通知する。
【0032】
エージェント名管理装置112は、エージェント120のエージェント名登録要求に従ってエージェント名の登録を行う機能を有する。エージェント120は、エージェント名の登録の際、エージェント名管理装置112に登録するエージェント名、自身のエージェント識別子、自身の動作しているコンピュータ101のIPアドレス、自身が使用しているポート番号を通知する。エージェント名管理装置112は、登録要求されたエージェント名と同じエージェント名が既に登録されているエージェント名の中に存在しないことを確認して、登録成功をエージェント120に通知する。既に同じエージェント名が存在する場合は、登録失敗をエージェント120に通知する。エージェント名管理装置が管理するデータは、例えば図4に示すようなエージェント名、エージェント識別子、IPアドレス、ポート番号である。
【0033】
エージェント名管理装置112は、エージェント登録管理装置111からエージェント120の終了を通知される。エージェント登録管理装置111から通知されたエージェント識別子のエージェント120が登録したエージェント名すべてを管理していたデータから削除する機能を有する。
【0034】
エージェント名管理装置112は、エージェント120のエージェント名登録内容変更要求に従ってエージェント名登録内容の変更を行う機能を有する。エージェント名登録内容の変更とは、エージェント名とともに登録されたIPアドレスとポート番号の変更を指す。エージェント名の変更は、新しくエージェント名を登録し、古いエージェント名を削除することによって実現される。
【0035】
エージェント名管理装置112は、エージェント120のエージェント名削除要求に従って、エージェント120が登録したエージェント名を削除する機能を有する。エージェント名管理装置112は、エージェント120のエージェント識別子が登録されているエージェント識別子と一致するとき削除を行う。エージェント名管理装置112は、エージェント名削除の結果をエージェント120に通知する。
【0036】
エージェント120は、エージェント起動装置110、エージェント登録管理装置111、エージェント名管理装置112からなるエージェント間通信路確立システムによって、コンピュータネットワーク100上に起動された他のエージェント120と通信する機能が実現可能である。また同システムによって、コンピュータネットワーク100に接続されエージェント起動装置110が動作するコンピュータ101上に移動する機能が実現可能である。また同システムによって、コンピュータネットワーク100に接続されエージェント起動装置110が動作するコンピュータ101上に新しいエージェント120を起動することが可能である。
【0037】
以下では、(1)エージェントの起動、(2)エージェントの終了、(3)エージェントの移動、(4)エージェント間の通信路の確立方法を順番に説明する。なお、エージェント120は、エージェント起動装置110と通信するためのポート番号、エージェント登録管理装置と通信するためのIPアドレスおよびポート番号、エージェント名管理装置と通信するためのIPアドレスおよびポート番号を知っているものとする。エージェント120がこれらの値を知る方法としては、エージェント起動時に入力する方法、起動後に設定ファイルから読み込む方法などがある。
【0038】
(1)エージェントの起動
図5を用いて、エージェント120b1の起動手順を説明する。エージェント120は、エージェント起動装置110より起動される。エージェントの起動を希望するユーザまたはエージェント120a1は、エージェント起動装置110にプログラム名を指示する。エージェント起動装置110は、ユーザまたはエージェント120a1によって指示されたプログラム名が有効なものかどうか判断してから、そのプログラムを実行する。
【0039】
プログラムの実行により起動されたエージェント120b1は、エージェント起動装置110から起動番号を受け取る。エージェント起動装置110は、自身が起動したエージェント120b1の起動番号を管理する。
【0040】
起動番号を受け取ったエージェント120b1は、自身を起動したエージェント起動装置110と受け取った起動番号をエージェント登録管理装置111に登録し、エージェント識別子を受け取る。このエージェント識別子は、コンピュータネットワーク上で一意になるようにエージェント登録管理装置111が各エージェント120に割り振る値である。エージェント120b1は、コンピュータネットワーク100上を移動しても同じエージェント識別子を使用することができる。
【0041】
このエージェント登録の際に、エージェント120b1は個人識別番号も登録する。この個人識別番号は、エージェント自身しか知らない番号であり、登録後はエージェント120b1とエージェント登録管理装置111のみが知る番号となる。エージェント120b1は、エージェント登録管理装置111に登録している内容の変更を行う際に、この個人識別番号を認証用に使用する。
【0042】
エージェント登録の終了後、必要ならばエージェント120b1は、エージェント名管理装置112にエージェント名の登録を行う。エージェント名管理装置112は、そのエージェント名がすでに登録されているものと同じエージェント名だった場合、登録できないことをエージェント120b1に通知する。登録に成功した場合も、そのことをエージェント120b1に通知する。
【0043】
エージェント120b1はエージェント名の登録の際に、接続要求を受け付けるIPアドレスとポート番号およびエージェント登録管理装置111より割り当てられたエージェント識別子をエージェント名管理装置112に登録する。
【0044】
(2)エージェントの終了
図6を用いて、エージェント120a1の終了からエージェント登録内容の削除、エージェント名登録内容の削除の手順を説明する。ただしここでは、エージェント120a1がエージェント名登録内容の削除、エージェント登録内容の削除をエージェント120a1自ら行わずに終了した場合について説明する。 エージェント120a1とエージェント起動装置110の関係は、子プロセスと親プロセスの関係である。エージェント120a1が終了するとそれは親プロセスであるエージェント起動装置110に感知される。エージェント起動装置110は、終了したエージェントの起動番号をエージェント登録管理装置112に通知し、終了したエージェント120a1を管理対象からはずす。
【0045】
エージェント登録管理装置111は、エージェント起動装置110と起動番号から終了したエージェント120a1を特定し、そのエージェント120a1のエージェント識別子を割り出す。エージェント登録管理装置111は、終了したエージェント120a1の登録内容を削除し、エージェント識別子をエージェント名管理装置112に通知する。
【0046】
エージェント名管理装置112は、終了したエージェント120a1のエージェント名を削除する。複数のサービスを提供するエージェント120a1は複数のエージェント名を登録することが可能で、複数のエージェント名が登録されている場合は、エージェント120a1が登録したすべてのエージェント名が削除される。
【0047】
(3)エージェントの移動
図7から図9を用いてエージェントの移動手順を説明する。エージェント120a1は移動先のコンピュータ101b上で動作するエージェント起動装置110bに実行するプログラム名を指示する。移動先で実行されたプログラムは、移動先エージェント120b1としてエージェント起動装置110bより起動番号を受け取る。移動先エージェント120b1は、移動元エージェント120a1と通信して内部データの移動を行う。この移動の際、図7に示すようにエージェント識別子および使用していたエージェント名が引き渡される。
【0048】
エージェント識別子を受けとった移動先エージェント120b1は、エージェント登録管理装置111に登録されている登録内容の変更を行う。具体的には自身のエージェント起動装置110bと起動番号の変更を通知する。この際、図8に示すようなエージェント登録管理装置111に登録してある個人識別番号が認証用に使用される。
【0049】
図9に示すように移動元エージェント120a1の終了は、エージェント登録管理装置111の登録内容が変更されてから行われる。そうでない場合は、移動元エージェント120a1の終了時点でエージェント登録装置111に登録されていた登録内容が削除されるため移動先エージェント120b1は移動元エージェント120a1と同じエージェント識別子を使用することができない。移動先エージェント120b1は、新しくエージェント識別子をエージェント登録管理装置111から割り当てられることになる。
【0050】
移動先エージェント120b1が登録内容の変更をすませたことを移動元エージェント120a1が知るためには、移動先エージェント120b1より通知を受ける必要がある。
【0051】
エージェント登録管理装置111の登録内容を変更した移動先エージェント120b1は、サービスを提供するための接続待ちの準備を行ってからエージェント名管理装置112にIPアドレスおよびポート番号の変更を通知する。エージェント名管理装置112は、エージェント識別子によってエージェントの認証を行う。
【0052】
(4)エージェント間の通信路の確立方法
図10を用いて、エージェント間の通信路確立方法を説明する。サービスを提供するサーバエージェント120a1は、通信相手として指定するためのエージェント名を自身の動作しているコンピュータのIPアドレスと自身が使用しているポート番号とともにエージェント名管理装置112に登録する。
【0053】
サーバエージェント120a1の提供するサービスを利用するクライアントエージェント120b1は、サービスを提供しているサーバエージェント120a1のエージェント名からエージェント名管理装置112を利用して、サーバエージェント120a1の動作しているコンピュータのIPアドレスと使用しているポート番号を得る。クライアントエージェント120b1は、獲得したIPアドレスとポート番号を使用してサーバエージェント120a1との間で通信を行う。
【0054】
本発明の方法では、ポート番号を予約しないため、エージェントは動作していないが、ポート番号の使用は禁じられるという状態が回避され、有限なコンピュータ資源であるポート番号を有効に使用することが可能となる。もし想定されるサービスの種類が無数にあったとしても、同時間帯に同コンピュータ上で動作するエージェントの数が使用可能なポート番号の数以下であれば、本発明の方法ではネットワークエージェントシステムを実現することができる。
【0055】
また、ポート番号は有限であるが、エージェント名の取り方はポート番号に比べてほぼ無限であるため、エージェントが使用するエージェント名を予約したとしても、ポート番号のようにコンピュータ資源の枯渇を心配する必要はない。
【0056】
本発明の方法では、コンピュータネットワーク上を移動したサーバエージェントは、移動先のコンピュータのIPアドレスおよび移動先で使用するポート番号をエージェント名管理装置に通知し、登録内容を変更するもので、クライアントエージェントはサーバエージェントのコンピュータネットワーク上の移動を意識することなく、移動前も移動後も同じエージェント名を用いて通信路を確立することが可能である。
【0057】
【発明の効果】
以上のように本発明によれば、有限なコンピュータ資源であるポート番号を有効に活用し、エージェント名によるエージェント間の通信路確立が可能となる。そして、必要なエージェントを必要なときに起動すること、最適なコンピュータに移動してサービスを提供するエージェントを実現することが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態によるエージェント通信路確立システムのシステム構成図
【図2】エージェント起動装置が管理するエージェントのデータテーブルを示す図
【図3】エージェント登録管理装置が管理するエージェントのデータテーブルを示す図
【図4】エージェント名管理装置が管理するエージェントのデータテーブルを示す図
【図5】エージェント間通信路確立システムにおけるエージェントの起動からエージェント登録、エージェント名登録の手順を示す図
【図6】エージェント間通信路確立システムにおけるエージェントの終了から、エージェント登録内容の削除、エージェント名登録内容の削除の手順を示す図
【図7】エージェント間通信路確立システムにおけるエージェントの移動を説明する図
【図8】エージェント間通信路確立システムにおけるエージェントの移動を説明する図
【図9】エージェント間通信路確立システムにおけるエージェントの移動を説明する図
【図10】エージェント間の通信路が確立する手順を説明する図
【図11】従来のクライアント/サーバモデルによるプロセス間通信を示す図
【符号の説明】
100 コンピュータネットワーク
101a 〜 101e コンピュータ
110a 〜 110e エージェント起動装置
111 エージェント登録管理装置
112 エージェント名管理装置
120 エージェント
120a1 〜 120a3 エージェント
120b1 エージェント
120c1 〜 120c3 エージェント
120d1 〜 120d2 エージェント
120e1 〜 120e2 エージェント
Claims (6)
- ネットワークを構成する複数の端末の一つであって、サーバエージェントを実行することで自律的に動作し所定のサービスを提供するサーバエージェント端末と、前記複数の端末の一つであって、クライアントエージェントを実行することで自律的に動作し前記サーバエージェント端末と通信を行うことで前記サーバエージェント端末の提供する前記サービスを利用するクライアントエージェント端末と、を具備したネットワークエージェントシステムにおいて、
前記サーバエージェント端末が前記クライアントエージェント端末と通信するために使用するIPアドレスおよびポート番号と、前記サーバエージェント端末が前記クライアントエージェント端末と通信するために登録した、前記サーバエージェント端末が実行する前記サーバエージェントの一つ以上のエージェント名と、を関連付けて格納したテーブルを有すると共に、ある前記サーバエージェント端末が前記テーブルに前記エージェント名を登録しようとした際に、前記あるサーバエージェント端末が登録しようとした前記エージェント名と同じエージェント名が前記テーブルに登録されていない場合は登録成功を前記あるサーバエージェント端末に通知し、前記あるサーバエージェント端末が登録しようとした前記エージェント名と同じエージェント名が既に前記テーブルに登録されている場合は登録失敗を前記あるサーバエージェント端末に通知するエージェント名管理装置を前記ネットワーク上に配置し、
前記クライアントエージェント端末が前記テーブルの前記エージェント名を参照することで、所望のサービスを提供する前記サーバエージェント端末を探し、前記エージェント名に対応した前記IPアドレスおよびポート番号を取得して、当該サーバエージェント端末と直接通信を行うことを特徴とするネットワークエージェントシステム。 - 前記サーバエージェント端末が、前記エージェント名を追加もしくは変更することを特徴とする請求項1記載のネットワークエージェントシステム。
- ある端末で実行される前記サーバエージェントに対して、前 記サーバエージェントを前記ネットワーク上で一意に識別するためのエージェント識別子を割り振るエージェント登録管理装置を具備し、
前記エージェント名管理装置は前記エージェント識別子を前記IPアドレスおよびポート番号と、前記エージェント名と、に関連付けて前記テーブルに格納し、
ある端末で実行されている前記サーバエージェントを終了し、他の端末で前記サーバエージェントを起動することで前記他の端末を前記サーバエージェント端末として動作する場合に、前記テーブルに格納された、前記エージェント識別子および前記エージェント名を変更せずに、前記テーブルに格納された前記IPアドレスおよびポート番号を前記他の端末に対応したものに更新することを特徴とする請求項1または請求項2記載のネットワークエージェントシステム。 - 前記サーバエージェント端末が、前記テーブルに登録している前記エージェント名を削除することなく前記サーバエージェントを終了した場合に、前記エージェント名管理装置は終了した前記サーバエージェントに対応する前記エージェント名をすべて削除することを特徴とする請求項1または請求項2記載のネットワークエージェントシステム。
- 前記クライアントエージェント端末が所望のサービスを利用しようとしたときに前記サービスを提供するサーバエージェント端末が起動していないことが判明した場合に、前記クライアントエージェント端末が前記サービスを提供するサーバエージェントを前記ネットワーク上の端末で起動することで前記端末を前記サービスを提供するサーバエージェント端末として起動し、起動した当該サーバエージェント端末の提供するサービスを利用することを特徴とする請求項1または請求項2記載のネットワークエージェントシステム。
- ネットワークを構成する複数の端末の一つであって、クライアントエージェントを実行することで自律的に動作するクライアントエージェント端末と、前記複数の端末の一つであってサーバエージェントを実行することで自律的に動作し所定のサービスを提供するサーバエージェント端末と、前記サーバエージェント端末が前記クライアントエージェント端末と通信するために使用するIPアドレスおよびポート番号と、前記サーバエージェント端末が前記クラ イアントエージェント端末と通信するために登録した、前記サーバエージェント端末が実行する前記サーバエージェントの一つ以上のエージェント名と、を関連付けて格納したテーブルを有すると共に、ある前記サーバエージェント端末が前記テーブルに前記エージェント名を登録しようとした際に、前記あるサーバエージェント端末が登録しようとした前記エージェント名と同じエージェント名が前記テーブルに登録されていない場合は登録成功を前記あるサーバエージェント端末に通知し、前記あるサーバエージェント端末が登録しようとした前記エージェント名と同じエージェント名が既に前記テーブルに登録されている場合は登録失敗を前記あるサーバエージェント端末に通知するエージェント名管理装置と、を前記ネットワーク上に配置したシステムのエージェント端末間通信方法であって、
前記クライアントエージェント端末が前記テーブルの前記エージェント名を参照することで、所望のサービスを提供する前記サーバエージェント端末を探し、前記エージェント名に対応した前記IPアドレスおよびポート番号を取得して、当該サーバエージェント端末との通信を行うことを特徴とするエージェント端末間通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08032998A JP3763662B2 (ja) | 1998-03-12 | 1998-03-12 | ネットワークエージェントシステムおよびエージェント間通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08032998A JP3763662B2 (ja) | 1998-03-12 | 1998-03-12 | ネットワークエージェントシステムおよびエージェント間通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11259438A JPH11259438A (ja) | 1999-09-24 |
JP3763662B2 true JP3763662B2 (ja) | 2006-04-05 |
Family
ID=13715226
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP08032998A Expired - Lifetime JP3763662B2 (ja) | 1998-03-12 | 1998-03-12 | ネットワークエージェントシステムおよびエージェント間通信方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3763662B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001101146A (ja) * | 1999-09-29 | 2001-04-13 | Omron Corp | エージェントシステム及び通信方法並びに機器及び記録媒体 |
JP5104591B2 (ja) * | 2008-06-27 | 2012-12-19 | 富士通株式会社 | バスシステム |
JP7291247B2 (ja) * | 2019-12-06 | 2023-06-14 | 株式会社ソニー・インタラクティブエンタテインメント | 配送制御装置、配送制御方法及び配送制御プログラム |
-
1998
- 1998-03-12 JP JP08032998A patent/JP3763662B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH11259438A (ja) | 1999-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8166538B2 (en) | Unified architecture for remote network access | |
JP3641128B2 (ja) | 移動計算機装置、移動計算機管理装置、移動計算機管理方法及び通信制御方法 | |
KR100813788B1 (ko) | 무선통신 시스템에서 이용되는 응용소프트웨어의 배포방법 | |
JP3696933B2 (ja) | コンピュータ・ネットワークにおいて、ネットワークアイデンティティと、局部的に定義されたアイデンティティを結び付ける装置と方法 | |
US11856065B2 (en) | Data transmission for service integration between a virtual private cloud and an intranet | |
CN110049504B (zh) | 一种会话管理方法及装置 | |
RU2005111592A (ru) | Способ и система для взаимодействия в сетях типа "клиент-сервер" | |
JP2003101572A (ja) | モバイルインターネットプロトコルネットワークにおける外部エージェント選択を管理するためのシステムおよび方法 | |
JP4233328B2 (ja) | ピアツーピア技術を用いたファイルダウンロード方法及びシステム | |
CN110716787A (zh) | 容器地址设置方法、设备和计算机可读存储介质 | |
US7289471B2 (en) | Mobile router, position management server, mobile network management system, and mobile network management method | |
JPH1070540A (ja) | 無線ネットワークにおける無線端末の認証方法および無線ネットワーク | |
JPH10177548A (ja) | セッション管理システム | |
CN112187532A (zh) | 一种节点管控方法及系统 | |
JP2005167646A (ja) | 接続制御システム、接続制御装置、及び接続管理装置 | |
JP3763662B2 (ja) | ネットワークエージェントシステムおよびエージェント間通信方法 | |
JP2001051948A (ja) | アクセス制御装置及びアクセス制御システム | |
CN115334018A (zh) | 基于Openstack的IaaS云架构的容器控制方法、装置及容器 | |
JP3645844B2 (ja) | 中継接続方式およびネットワークレベル認証サーバおよびゲートウェイ装置および情報サーバおよびプログラム | |
JPH1155321A (ja) | コネクション管理方法及びコンピュータ読み取り可能な記録媒体 | |
US20030182398A1 (en) | Method of establishing a logical association between connections | |
JP2003527769A (ja) | 移動通信システムのためのサブスクライバインタフェースモジュール | |
JP2000099458A (ja) | 個人情報提供システム | |
JP2004240819A (ja) | 認証機能付きパケット通信装置、ネットワーク認証アクセス制御サーバ、アプリケーション認証アクセス制御サーバ、および分散型認証アクセス制御システム | |
JP2000010786A (ja) | サーバ・クライアント通信装置と同装置を用いたプログラムダウンロード方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060117 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090127 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100127 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110127 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110127 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120127 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130127 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130127 Year of fee payment: 7 |
|
EXPY | Cancellation because of completion of term |