JP2009015488A - 分散アプリケーションシステム - Google Patents
分散アプリケーションシステム Download PDFInfo
- Publication number
- JP2009015488A JP2009015488A JP2007175042A JP2007175042A JP2009015488A JP 2009015488 A JP2009015488 A JP 2009015488A JP 2007175042 A JP2007175042 A JP 2007175042A JP 2007175042 A JP2007175042 A JP 2007175042A JP 2009015488 A JP2009015488 A JP 2009015488A
- Authority
- JP
- Japan
- Prior art keywords
- application
- communication
- processing unit
- connection
- protocol
- 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
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
【課題】通信機能を分割することなく接続先が必要な機能のみを利用できる通信効率の優れた分散アプリケーションシステムを提供すること。
【解決手段】ネットワークを介して相互に接続された機器に分散配置されたアプリケーションを連携動作させるように構築された分散アプリケーションシステムにおいて、
接続元は必要な通信機能のみを用いて接続先と情報交換を行うようにした。
【選択図】 図1
【解決手段】ネットワークを介して相互に接続された機器に分散配置されたアプリケーションを連携動作させるように構築された分散アプリケーションシステムにおいて、
接続元は必要な通信機能のみを用いて接続先と情報交換を行うようにした。
【選択図】 図1
Description
本発明は、分散アプリケーションシステムに関し、詳しくは、ネットワークを介して相互に接続された機器に分散配置されたアプリケーションを連携動作させるように構築されたシステムの改良に関するものである。
たとえばプロセス制御システムは、センサ、アクチュエータ、コントローラ、コンピュータなどのフィールド機器がネットワークを介して相互に接続され、制御点や制御用計測点などの主要な箇所にセンサやアクチュエータが配置され、コントローラやコンピュータにより目的とする制御が正確に行われるように構築されている。
このようなプロセス制御の分野においても、リソースを効率的に利用するために、ソフトウェアを機能に応じて分割(部品化)することが行われている。これにより、ソフトウェアの再利用性が高まり、一部を修正しても全体を再構築せずに済むので開発効率が向上する。また、分割したソフトウェアを複数のフィールド機器で役割分担して実行することにより、効率的なリソースの活用が可能となる(特許文献1参照)。
また、分散アプリケーションシステムにおいて、それぞれのアプリケーションがインタフェース定義を公開し、この公開情報に基づいてアプリケーション同士が接続することにより、アプリケーションの初期構築時だけでなく運用開始後であっても動作中のアプリケーションを止めずにその機能を利用するアプリケーションを新たに追加でき、データのやり取りが発生していない間もアプリケーション間の利用関係を把握できるようにすることも提案されている(特許文献2参照)。
ところで、これらネットワークを介して相互に接続された機器に分散配置されたアプリケーション間を接続する通信機能は、図6に示すようにいくつかのプロトコル機能を合わせて実装されている。
図6において、アプリケーションAとアプリケーションBはネットワークを介して相互に接続された図示しない機器に分散配置されたものであり、「データモニタ通信」と「イベント通知通信」の2つのプロトコル機能よりなる通信機能Aを介して接続されている。アプリケーションAは、自分が有する機能を、通信機能Aを介してアプリケーションBに提供する。アプリケーションBは、アプリケーションAが提供する機能を、通信機能Aを介して接続することにより利用する。
このようにアプリケーションAとアプリケーションBが通信機能Aを介して接続されている状態において、図7に示すように図示しない他の機器に分散配置された新たなアプリケーションCがアプリケーションAに接続されることがある。ここで、アプリケーションCの要求仕様がイベント受信機能とすると、アプリケーションAが提供する通信機能Aの2つのプロトコル機能のうち、「イベント通知通信」のみが必要になる。
図7において、アプリケーションCは通信機能Aの「データモニタ通信」の機能が不要であるにも拘らず何らかの処理が必要になり、アプリケーションCの開発工数の増加要因になる。
また、アプリケーションAからアプリケーションCを見た場合、アプリケーションAはアプリケーションCが通信機能Aの「データモニタ通信」を不要としていることは認識できず、通信機能Aのデータモニタ通信に関わる情報が送信されることになり、通信トラフィックが増加することになる。
アプリケーションCに通信機能Aの「データモニタ通信」が不要な場合、アプリケーションCには通信機能Aのデータモニタ通信に関連する機能を不実装にしたり接続しないようにできるが、アプリケーションAはアプリケーションCが通信機能Aの「データモニタ通信」を不要としているのか、なんらかの問題でデータモニタ通信が行えないのかを区別できない。
この問題に対しては、アプリケーションCがアプリケーションAへ必要なプロトコル機能を通知する方法が考えられるが、たとえばネットワーク障害など何らかの問題で通知が行えない場合、アプリケーションAは、アプリケーションCが必要とするプロトコル機能を知ることができない。
さらに他の方法として、図8に示すように、通信機能の粒度を細かくし、プロトコル機能ごとに提供することも考えられる。しかし、この場合、アプリケーション間の接続がプロトコル機能ごとに発生し、それに伴って管理操作や接続設定操作が増えて管理コストが増加することになる。
本発明はこれらの問題を解決するものであり、その目的は、ネットワークを介して相互に接続された機器に分散配置され連携動作するアプリケーションにおいて、通信機能を分割することなく接続先が必要な機能のみを利用できるプロトコル処理部のソフトウェア部品の再利用性を向上させた分散アプリケーションシステムを提供することにある。
他の目的は、接続先処理部を使用するアプリケーションの開発効率を向上させた分散アプリケーションシステムを提供することにある。
さらに他の目的は、アプリケーション同士の接続における設定操作を改善できる分散アプリケーションシステムを提供することにある。
このような課題を達成するために、本発明のうち請求項1記載の発明は、ネットワークを介して相互に接続された機器に分散配置されたアプリケーションを連携動作させるように構築された分散アプリケーションシステムにおいて、
接続元は必要な通信機能のみを用いて接続先と情報交換を行うことを特徴とする。
接続元は必要な通信機能のみを用いて接続先と情報交換を行うことを特徴とする。
請求項2記載の発明は、請求項1記載の分散アプリケーションシステムにおいて、前記接続元の通信処理部は接続先のアプリケーションごとに提供するプロトコルリストを備え、このプロトコルリストに記載されたプロトコル機能のみを用いて接続先と情報交換を行うことを特徴とする。
請求項3記載の発明は、請求項1または請求項2記載の分散アプリケーションシステムにおいて、前記ネットワークを介して相互に接続された機器は、プロセス制御システムを構築するフィールド機器であることを特徴とする。
本発明によれば、通信機能を分割することなく接続先が必要な機能のみを利用できるプロトコル処理部のソフトウェア部品の再利用性が高く、接続先処理部を使用するアプリケーションの開発効率の向上を図ることができ、アプリケーション同士の接続における設定操作を改善できる分散アプリケーションシステムが実現できる。
以下本発明について、図面を用いて詳細に説明する。図1は本発明に係る分散アプリケーションシステムを構成する機器の主要部分の一実施例を示す構成ブロック図であり、アプリケーションを連携動作させるための連携制御部のソフトウェア構成を示している。なお、機器はセンサ、アクチュエータ、コントローラ、通信測定器、計測器、記録装置、サーバなどのフィールド機器とし、図示しない他のフィールド機器とともに図示しないネットワークを介して相互に接続されるものとする。
図1において、連携制御部は、通信処理部10と第1のプロトコル処理部20と第2のプロトコル処理部30とで構成されている。
通信処理部10は、通信機能Aに基づき、接続元のアプリケーションたとえばアプリケーションAが提供する機能を処理する。通信機能Aが使用するデータモニタ通信とイベント通知通信の2つのプロトコル機能は、通信機能定義情報格納部11内に通信機能Aプロトコルリストとして定義されている。
接続元処理部12と接続先処理部13は、それぞれ通信機能Aの2つのプロトコル機能の接続元処理および接続先処理を行うもので、通信処理部10内に実装されているが、接続元および接続先のアプリケーション内でそれぞれ動作する。
接続元処理部12には接続先ごとのアプリケーション情報が格納された接続先情報格納部14が合成集約され、接続先情報格納部14には接続先ごとにプロトコル機能を利用するか否かに関する情報を有する接続先向け提供プロトコルリスト15が合成集約されている。図1の接続先向け提供プロトコルリスト15には、データモニタ通信とイベント通知通信が記載されている。
接続先処理部13には、接続元ごとのアプリケーション情報が格納された接続元情報格納部16が合成集約されている。
第1のプロトコル処理部20はイベント通知通信処理を行うものであり、イベント通知通信接続元処理部21とイベント通知通信接続先処理部22が設けられている。イベント通知通信接続元処理部21は接続元処理部12に集約され、イベント通知通信接続先処理部22は接続先処理部13に集約されている。
第2のプロトコル処理部30はデータモニタ通知通信処理を行うものであり、データモニタ通信接続元処理部31とデータモニタ通信接続先処理部32が設けられている。データモニタ通信接続元処理部31は接続元処理部12に集約され、データモニタ通信接続先処理部32は接続先処理部13に集約されている。
図2は通信機能Aに基づくアプリケーションの接続例を示す説明図である。図2において、アプリケーションAは接続元アプリケーションを表し、アプリケーションB、Cは接続先アプリケーションを表す。ここで、アプリケーションBはアプリケーションAの通信機能Aの全ての機能を使用する。これに対し、アプリケーションCは、アプリケーションAの通信機能Aのイベント通知機能のみを使用する。なお、これらアプリケーションA〜Cは、図示しないネットワークを介して相互に接続された図示しない機器に分散配置されているものとする。
アプリケーションB向け提供プロトコルリストおよびアプリケーションC向け提供プロトコルリストは、接続先向け提供プロトコルリスト15に記載されているものであり、接続元処理部13により接続先ごとのプロトコル機能利用有無の判断に使用される。
アプリケーションB利用プロトコルリストおよびアプリケーションC利用プロトコルリストは、アプリケーションBおよびアプリケーションCそれぞれが必要とする通信機能Aのプロトコル機能を定義した情報である。これらは、アプリケーションBおよびアプリケーションCそれぞれのアプリケーション仕様定義情報として、通信機能Aとは別途定義される。
図3は図2の接続構成における通信処理動作手順の説明図である。
アプリケーションAがデータモニタ情報を接続先アプリケーションに送信するのにあたり、接続元処理部12は、接続先向け提供プロトコルリスト15を参照して、それぞれの接続先アプリケーションに応じた処理を実行する。
アプリケーションAがデータモニタ情報を接続先アプリケーションに送信するのにあたり、接続元処理部12は、接続先向け提供プロトコルリスト15を参照して、それぞれの接続先アプリケーションに応じた処理を実行する。
まず、アプリケーションBに送信する場合、アプリケーションB向け提供プロトコルリストのデータモニタ通信がONであることから、データモニタ通信接続元処理を用いてモニタデータの送信を行う。
次に、アプリケーションCに送信する場合、アプリケーションC向け提供プロトコルリストのデータモニタ通信がOFFであるため、データモニタ通信接続元処理は用いず、モニタデータの送信を省略する。
アプリケーションAがイベント情報を接続先アプリケーションに送信する場合も、接続元処理部12は、接続先向け提供プロトコルリスト15を参照して、それぞれの接続先アプリケーションに応じた処理を実行する。
アプリケーションBに送信する場合、イベント通信がONであるため、イベント通知通信接続元処理を用いてイベント情報の送信を行う。
アプリケーションCに送信する場合も、イベント通信がONであるため、イベント通知通信接続元処理を用いてイベント情報の送信を行う。
接続元処理部12が参照する接続先向け提供プロトコルリスト15の設定操作について説明する。
アプリケーションA、アプリケーションB、アプリケーションCなどを用いたアプリケーションシステムの構築操作には、たとえばアプリケーション構築用ツールを用いる。アプリケーション構築用ツールは、アプリケーションの仕様が定義されているアプリケーション仕様定義情報を、アプリケーションの設定時およびアプリケーション間の接続時に参照し、アプリケーションシステム構成情報を生成する。
アプリケーション仕様定義情報は、アプリケーションA、アプリケーションB、アプリケーションCそれぞれに存在する。接続先アプリケーション(アプリケーションB、アプリケーションC)のアプリケーション仕様定義情報には、図2に示したアプリケーション利用プロトコルリストが定義されているものとする。アプリケーション利用プロトコルリストは、その接続先アプリケーションが接続元のアプリケーションが提供するプロトコル機能のうちどの機能を利用するかが定義されている。ここでは、アプリケーションA、アプリケーションB、およびアプリケーションCを接続する接続設定操作手順内で行われるアプリケーションBおよびアプリケーションC向け提供プロトコルリストの生成について説明する。
アプリケーションAとアプリケーションBの接続設定操作を行う。それぞれのアプリケーション仕様定義情報内で、アプリケーションAは通信機能A接続元処理機能を持ち、アプリケーションBは通信機能A接続先処理機能を持っていると定義されている。アプリケーション構築用ツールは、アプリケーションBの通信機能A接続先処理情報内アプリケーションB利用プロトコルリストに基づき、アプリケーションB向け提供プロトコルリストを生成する。
アプリケーションB利用プロトコルリストには、データモニタ通信とイベント通信が設定されている。よって、アプリケーション構築用ツールは、アプリケーションB向け提供プロトコルリストにおけるデータモニタ通信をON、イベント通信もONとする。
また、同様に、アプリケーションAとアプリケーションCの接続設定にあたり、アプリケーションCの通信機能A接続先処理情報内のアプリケーションC利用プロトコルリストに基づき、アプリケーションC向け提供プロトコルリストを生成する。
アプリケーションC利用プロトコルリストには、イベント通信のみが設定されている。よって、アプリケーション構築用ツールは、アプリケーションC向け提供プロトコルリストにおけるデータモニタ通信をOFF、イベント通信をONとする。
上記設定操作終了後、アプリケーション構築用ツールは、アプリケーションB向け提供プロトコルリスト、アプリケーションC向け提供プロトコルリストを、アプリケーションAの接続元処理部12の設定情報として設定する。
このように構成することにより、接続元のアプリケーションが提供する機能のうちの一部機能のみを必要とするアプリケーションを接続された場合、通信機能のうち限定したプロトコル機能のみを使用して接続先のアプリケーションが必要とする機能だけを提供することができる。
通信機能の機能を分割することなく機能を限定できるため、管理操作や接続設定操作の対象が増えることはなく、管理コストの増加が抑制できる。
接続先アプリケーションは必要な機能のみを開発すればよく、開発工数を削減できる。
接続元アプリケーションから接続先アプリケーションに対して、使用しない機能に関連した不要な通信が発生することはなく、通信トラフィックを削減できる。
また、不要な通信は行わないことから、接続先アプリケーションに本来不要な通信処理機能を実装しなくてもよく、不要な通信処理に伴って発生しうる不具合を完全に排除できる。
これらの設定は、ユーザがプロトコル機能の選択操作など行うことなく、アプリケーションの設定や接続操作の中でたとえばアプリケーション構築用ツールを用いて比較的簡単に行うことができる。
さらに、接続先アプリケーションは、不要な機能のモジュールをメモリ上へロードさせる必要がなく、リソースを節約できる。
図4は本発明の他の実施例を示す構成ブロック図であり、図1と共通する部分には同一符号を付けている。図4において、連携制御部は、通信処理部10と第1のプロトコル処理部20と第3のプロトコル処理部40とで構成されている。
通信処理部10は、通信機能Bに基づき、接続元のアプリケーションが提供する機能を処理する。通信機能Bが使用するログ情報問合せ通信とイベント通知通信の2つのプロトコル機能は、通信機能定義情報格納部11内に通信機能Bプロトコルリストとして定義されている。
接続元処理部12と接続先処理部13は、それぞれ通信機能Bの2つのプロトコル機能の接続元処理および接続先処理を行うもので、通信処理部10内に実装されているが、接続元および接続先のアプリケーション内でそれぞれ動作する。
接続元処理部12には接続先ごとのアプリケーション情報が格納された接続先情報格納部14が合成集約され、接続先情報格納部14には接続先ごとにプロトコル機能を利用するか否かに関する情報を有する接続先向け提供プロトコルリスト15が合成集約されている。図4の接続先向け提供プロトコルリスト15には、ログ情報問合せ通信とイベント通知通信が記載されている。
接続先処理部13には、接続元ごとのアプリケーション情報が格納された接続元情報格納部16が合成集約されている。
第1のプロトコル処理部20はイベント通知通信処理を行うものであり、イベント通知通信接続元処理部21とイベント通知通信接続先処理部22が設けられている。イベント通知通信接続元処理部21は接続元処理部12に集約され、イベント通知通信接続先処理部22は接続先処理部13に集約されている。
第3のプロトコル処理部40はログ情報問合せ通信処理を行うものであり、ログ情報問合せ通信接続元処理部41とログ情報問合せ通信接続先処理部42が設けられている。ログ情報問合せ通信接続元処理部41は接続元処理部12に集約され、ログ情報問合せ通信接続先処理部42は接続先処理部13に集約されている。
ここで、図1に示す通信機能Aに基づく連携制御部の構成のうち、通信機能Bにも共通するイベント通知通信処理を行う第1のプロトコル処理部20はそのまま再利用できるので、たとえばログ情報問い合せ通信に対応するための改めての実装が不要になり、連携制御部を新規に作成する場合に比べて作成工数を削減できる。
図5は図1に示す通信機能Aに基づく連携制御部と図4に示す通信機能Bに基づく連携制御部を用いた複数アプリケーションの接続例説明図である。
図5において、アプリケーションAとアプリケーションBの間では通信機能Aに基づくデータモニタ通信とイベント通知通信よりなる連携制御が行われ、アプリケーションAとアプリケーションCの間では通信機能Aに基づくイベント通知通信のみによる連携制御が行われる。そして、アプリケーションCとアプリケーションDの間では通信機能Bに基づくイベント通知通信のみによる連携制御が行われ、アプリケーションDとアプリケーションEの間では通信機能Bに基づくログ情報問合せ通信とイベント通知通信よりなる連携制御が行われる。なお、これらアプリケーションA〜Eは、図示しないネットワークを介して相互に接続された図示しない機器に分散配置されているものとする。
図5の構成によれば、これらアプリケーションA〜Eは通信機能のうち限定されたプロトコル機能のみを使用して不要な通信処理を伴うことなく互いに連携して動作することになり、通信効率の優れた分散アプリケーションシステムが実現できる。
なお、上記実施例では、センサ、アクチュエータ、コントローラ、コンピュータなどのフィールド機器がネットワークを介して相互に接続され、制御点や制御用計測点などの主要な箇所にセンサやアクチュエータが配置され、コントローラやコンピュータにより目的とする制御が正確に行われるように構築されているプロセス制御システムについて説明したが、これに限るものではなく、各種の分散アプリケーションシステムにも適用できるものである。
10 通信処理部
11 通信機能定義情報格納部
12 接続元処理部
13 接続先処理部
14 接続先情報格納部
15 接続先向け提供プロトコルリスト
16 接続元情報格納部
20 第1のプロトコル処理部
21 イベント通知通信接続元処理部
22 イベント通知通信接続先処理部
30 第2のプロトコル処理部
31 データモニタ通信接続元処理部
32 データモニタ通信接続先処理部
40 第3のプロトコル処理部
41 ログ情報問合せ通信接続元処理部
42 ログ情報問合せ通信接続先処理部
11 通信機能定義情報格納部
12 接続元処理部
13 接続先処理部
14 接続先情報格納部
15 接続先向け提供プロトコルリスト
16 接続元情報格納部
20 第1のプロトコル処理部
21 イベント通知通信接続元処理部
22 イベント通知通信接続先処理部
30 第2のプロトコル処理部
31 データモニタ通信接続元処理部
32 データモニタ通信接続先処理部
40 第3のプロトコル処理部
41 ログ情報問合せ通信接続元処理部
42 ログ情報問合せ通信接続先処理部
Claims (3)
- ネットワークを介して相互に接続された機器に分散配置されたアプリケーションを連携動作させるように構築された分散アプリケーションシステムにおいて、
接続元は必要な通信機能のみを用いて接続先と情報交換を行うことを特徴とする分散アプリケーションシステム。 - 前記接続元の通信処理部は接続先のアプリケーションごとに提供するプロトコルリストを備え、このプロトコルリストに記載されたプロトコル機能のみを用いて接続先と情報交換を行うことを特徴とする請求項1記載の分散アプリケーションシステム。
- 前記ネットワークを介して相互に接続された機器は、プロセス制御システムを構築するフィールド機器であることを特徴とする請求項1または請求項2記載の分散アプリケーションシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007175042A JP2009015488A (ja) | 2007-07-03 | 2007-07-03 | 分散アプリケーションシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007175042A JP2009015488A (ja) | 2007-07-03 | 2007-07-03 | 分散アプリケーションシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009015488A true JP2009015488A (ja) | 2009-01-22 |
Family
ID=40356337
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007175042A Pending JP2009015488A (ja) | 2007-07-03 | 2007-07-03 | 分散アプリケーションシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009015488A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011186607A (ja) * | 2010-03-05 | 2011-09-22 | Mitsubishi Electric Corp | フィールドデバイス、フィールドデバイスの設定方法、フィールドデバイス管理装置及びプログラム |
-
2007
- 2007-07-03 JP JP2007175042A patent/JP2009015488A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011186607A (ja) * | 2010-03-05 | 2011-09-22 | Mitsubishi Electric Corp | フィールドデバイス、フィールドデバイスの設定方法、フィールドデバイス管理装置及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5624655B2 (ja) | 分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージ | |
US9231849B2 (en) | Apparatus and method for controlling virtual switches | |
US8874686B2 (en) | DDS structure with scalability and adaptability and node constituting the same | |
JP4410608B2 (ja) | Webサービス提供方法 | |
CN112673350A (zh) | 用于在具有非受信实体的分布式计算***中实现动作的协调执行的方法和装置 | |
US9032118B2 (en) | Administration device, information processing device, and data transfer method | |
JP4966039B2 (ja) | ネットワーク対応機器及び機能提供方法 | |
JP2009015488A (ja) | 分散アプリケーションシステム | |
JP6787576B2 (ja) | クラウド中継システムおよび中継サーバ | |
WO2009078549A1 (en) | Sca-based system and method of connecting components to each other | |
JP5669179B2 (ja) | 情報処理システム | |
CN117376111A (zh) | 设备调度方法、服务器、设备集群、协同***及存储介质 | |
JP5230545B2 (ja) | 制御装置 | |
JP2006350580A (ja) | 分散アプリケーションシステムにおける装置 | |
JP5428814B2 (ja) | ネットワーク監視装置、ネットワーク監視システム及びネットワーク監視システムにおける監視対象装置の接続確認方法 | |
JP2005073043A (ja) | テスト支援方法及びテスト支援装置 | |
JP2017017587A (ja) | ルータ装置、接続確立方法、通信システム、通信端末 | |
JP6125734B2 (ja) | 内視鏡システム | |
JP5546883B2 (ja) | 監視制御システム | |
CN103561134A (zh) | 一种报文转发方法及*** | |
JP2013152660A (ja) | ファイル版数更新システムおよびファイル版数更新方法 | |
JP2003036180A (ja) | 通信方法及び通信システム | |
JP2006277617A (ja) | ジョブ管理装置、ジョブ管理プログラム、及びジョブ管理方法 | |
JP2010183482A (ja) | 通信システム | |
WO2011121873A1 (ja) | プログラム処理方法、プログラム処理装置、およびコンピュータプログラム |