JP2000500940A - レジストリ通信ミドルウェア - Google Patents

レジストリ通信ミドルウェア

Info

Publication number
JP2000500940A
JP2000500940A JP9519783A JP51978397A JP2000500940A JP 2000500940 A JP2000500940 A JP 2000500940A JP 9519783 A JP9519783 A JP 9519783A JP 51978397 A JP51978397 A JP 51978397A JP 2000500940 A JP2000500940 A JP 2000500940A
Authority
JP
Japan
Prior art keywords
registry
message
client
server
application
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
Application number
JP9519783A
Other languages
English (en)
Inventor
ホルムズ ラルフ
Original Assignee
エムシーアイ コミュニケーションズ コーポレーション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by エムシーアイ コミュニケーションズ コーポレーション filed Critical エムシーアイ コミュニケーションズ コーポレーション
Publication of JP2000500940A publication Critical patent/JP2000500940A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/24Negotiation of communication capabilities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
  • Preparation Of Compounds By Using Micro-Organisms (AREA)

Abstract

(57)【要約】 コンピュータ・システムは、選択的にネットワーク(108)上で相互接続された複数の互換性のないクライアント(102)およびサーバ(110)を有しており、各クライアントは関連する互換性のあるサーバを伴うアプリケーション(124)を開始することができる。クライアントとサーバとの間の通信は、予め選択されたサーバへの宛てられた、クライアントからのアプリケーションの特定のメッセージの受容、およびこれらを標準的なレジストリの特定のメッセージ(128)内にカプセル化することを含む第1のレジストリ・プロセス(104、126)を必然的に伴う。メッセージの経路選択は、経路選択データを提供するために、特定のクライアントからのバーブ・コマンドに応答するデータベースにより決定される。次いで、レジストリの特定のメッセージを予め選択されたプロトコル(106、130)への翻訳がある。第2のレジストリ・プロセス(104、126)は、ネットワークの通過後に、メッセージを復元するために遠端において発生する。第2のレジストリは翻訳されたメッセージを受容し、またこれらを、予め選択された互換性のあるサーバによる使用のために、プロトコルのフォーマットから元のアプリケーションの特定のフォーマットに変換する。

Description

【発明の詳細な説明】 レジストリ通信ミドルウェア 関連出願 本出願は、1995年12月2日に出願され、「EXITS:拡張された情報 転送サービス」と題された、共願の米国特許出願第08/580,950号に関 連するものである。 発明の分野 本発明は分散型コンピューティング・ネットワーク、より詳しくは、クライア ント/サーバのアプリケーションとネットワークのメッセージ通信用製品との間 で標準化された通信層を提供するシステムに関するものである。 分散型コンピューティングは、いくつかのコンピューティング・リソースの間 でアプリケーションのデータ処理を割り振る方法である。この技術は、共通のア プリケーションのためにいくつかの異なるプロセッサを利用することによる効率 性のために、急速に成長している分野である。 分散型コンピューティングのプラットフォームはまた、各コンピューティング ・リソースがクライアントあるいはサーバのいずれかに表れることから、クライ アント/サーバのプラットフォームとしても知られている。クライアントのリソ ースはアプリケーション・サービスのカスタマである。これは、サーバに対して 要求メッセージを送信するという基本的なプロセスを実行する。クライアントは 、一般的には、ワークステーションのアプリケーションを実行する人のような、 システムのユーザを表している。 サーバのリソースはアプリケーション・サービスのプロバイダである。これは 、クライアントからのメッセージを受信するプロセス、およびクライアントへの 応答メッセージを送信する基本的なプロセスを実行する。サーバは、一般的には 、企業のデータ・リソースを保守し業務戦略を実行する要素を表している。 分散型コンピューティングのプラットフォームを実行するための基本的な要件 は、種々のタイプのコンピューティング・リソースおよびネットワーク・リソー スを単一で、企業規模のネットワーク内に統合することである。これを行うため に利用可能な多くの製品、規格、および通信プロトコルがあり、多くの企業では これらのいくつかを使用している。これによって、相互運用性に関して著しい問 題が生じる。種々のオペレーティング・システムおよびハードウェア上で実行さ れるいくつかの異なるアプリケーションは多数のメッセージ通信およびネットワ ーク通信プロトコルとインターフェースしなければならない。アプリケーション のプログラマーは、そのアプリケーションを分散型コンピューティング・プラッ トフォーム上で動作させるために、これらのプロトコルのすべての複雑性および 錯綜性を処理しなければならない。 さらに、プログラマーは、そのアプリケーションに対してメッセージの最適な 転送機構を決定するための手段を提供しなければならない。これはクライアント ・リソースおよびサーバ・リソース上の両方で必要となる。 明らかなように、分散型コンピューティングのリソースおよびネットワークを 利用するビジネスのために、これらのリソースを使用するアプリケーションに対 して標準的なインターフェースを提供する必要性がある。現在の市場ではこれを 行うための製品はない。 本発明の簡単な説明 レジストリとして識別される、本発明は、分散型コンピューティングのプラッ トフォームの各アプリケーションのリソース(クライアントおよびサーバの両方 )上に存在するシステムである。 一連の通信のためのメッセージ通信用製品とネットワークのプロトコルとをサ ポートするのは、通信エージェントである。これは、アプリケーションとネット ワークのトランスポート機構との間の通信の論理的な層として機能する。このよ うに機能することで、レジストリは、アプリケーションのプログラマーを、所有 するメッセージ通信およびトランスポート・プロトコルの潜在する全ての複雑性 から保護することができる。 レジストリは、クライアントからのアプリケーション特定のメッセージを受容 し、これらを標準的なレジストリ特定のメッセージ内にカプセル化し、また次い でこれらを、使用されるトランスポートおよびメッセージ通信機構のために必要 なプロトコルに翻訳する。他方、レジストリは、クライアントが送信したメッセ ージを受取り、これを使用されるトランスポート・プロトコルからサーバにより 使用されるアプリケーション特定のメッセージに翻訳する。 よって、このレジストリによれば、オペレーティング・システム、ハードウェ アのプラットフォーム、メッセージ通信用製品およびネットワーク・プロトコル の広範囲のアレイを介して企業規模のアプリケーションの接続性を提供できると いう特長がある。 また、レジストリは、アプリケーションへの単一で、標準的なインターフェー スを提供する一方、いくつかの異なるメッセージ通信およびネットワーク通信用 製品のそれぞれの製品特定のインターフェースを提供できる特長がある。 また、アプリケーションのプログラマーがそのアプリケーションに低水準のメ ッセージ通信およびトランスポートのセマンテックス(semantics)をプログラ ミングする必要性を回避でき、プログラマーはビジネス向きのセマンテックスに 焦点を絞ることができることも、レジストリの他の特長である。この特長により 、アプリケーションの融通性が増大し、また複雑性が低減される。 また、各アプリケーションが使用される種々のメッセージ通信およびトランス ポートプロトコルに対する特定のインターフェースを有する必要性を省くことが できることも、レジストリの他の特長である。 また、各トランザクションのための最適なトランスポート機構を決定する手段 をアプリケーションに提供できることも、レジストリの他の特長である。 また、アプリケーションがプラットフォームやプロトコルに依存しないように できることもレジストリの他の特長である。つまり、アプリケーションのプログ ラマーは、アプリケーションのクライアントおよびサーバによってどんなオペレ ーティング・システム、ハードウェアのプラットフォーム、および通信プロトコ ルが使用されるのかを知る必要がなくなり、レジストリへの標準的なインターフ ェース内でプログラムするだけで良い。同様に、クライアントおよびサーバを、 1つのプラットフォーム/プロトコルから他のものへ、各アプリケーション内に 対応する変更をプログラムすることなく、出力(port)することができる。 さらに、論理的なネットワークの経路選択デイレクトリを使用する場合でも、 物理的なリソースのアドレスにおける変更は、各アプリケーション上ではなく、 レジストリのデイレクトリ更新要求のみとなることも、レジストリの他の特長で ある。 図面の簡単な説明 本発明の上記した目的および特長は、添付図面とともに考察した場合において より明確に理解される。 図1は、レジストリを使用する、一例の分散型コンピューティング・プラット フォームにおける高水準のシステム・アーキテクチャを示したブロック図である 。 図1aは、クライアント/サーバの通信の論理層およびレジストリが適合され る場所を示した図表である。 図2は、レジストリの内部アーキテクチャ、およびそれが利用する分散型コン ピューティングのプラットフォームの単一スレッドを例示したブロック図である 。 図2aは、図2において識別された汎用IPCインターフェースの詳細を示し たデータ流れの図表である。 図2bは、レジストリ・プロセス・モニタをより詳細に示したブロック図であ る。 図3aは、レジストリの動作を例示したプロセスの流れ図である。 図3bは、図3aにおけるプロセスの続きである。 発明の詳細な説明 図1を参照して、レジストリは、クライアントおよびサーバのアプリケーショ ンの両方に対して、単一で、標準的なインターフェースとして図示されている。 レジストリは、実際には、それぞれの個々のクライアントおよびサーバのリソー ス上に存在するシステムである。これは、各クライアントおよびサーバのアプリ ケーションに対して、これらのアプリケーションが種々の所有するメッセージ通 信用製品およびネットワーク・プロトコルの複雑性から保護するために、単一で 、 標準的なインターフェースを提供する。図示したオペレーティング・システム、 メッセージ通信用製品、およびネットワークプロトコルはレジストリによりサポ ートされる一例である。 レジストリ104は、対話の一部としてクライアント・アプリケーション10 2から要求メッセージを受容する。アプリケーション102は、示したような、 種々の運用システム下で動作する。これらの要求メッセージは、プロセスを実行 するために応答および/または命令のための請求を表している。これらは、サー バ・アプリケーションに配信されることを意図してクライアント・アプリケーシ ョンにより生成される。アプリケーション110はまた、図示したような種々の オペレーティング・システム下で実行される。レジストリのソフトウェアはアプ リケーションとして同一ハードウェア要素上に存在することから、レジストリ1 04とクライアント・アプリケーション102との間のリンクはソフトウェアの プロセスを表している。4つのオペレーティング・システムおよび端末エミュレ ータの例を例示したが、レジストリはさらに多くのものをサポートすることがで きる。 レジストリ104は次いで、クライアントの要求メッセージをレジストリ−規 定のメッセージ内にカプセル化するプロセスを実行する。このプロセスは図2お よび図4を参照してより詳細に示されている。レジストリは適切なメッセージ通 信用製品106を決定し、メッセージをこのメッセージ通信用製品の所有のプロ トコルに変換する。場合によっては、レジストリは実際にはメッセージ通信用製 品として機能し、この場合、レジストリはネットワークのトランスポート108 (つまり、SNA LU6.2、TCP/IPなど)の所有のプロトコルにメッ セージを変換する。 メッセージ通信用製品106は、利用可能なネットワーク108上でメッセー ジを移送するための適切なネットワークのプロトコルを使用する。遠端において 、メッセージ通信用製品106はメッセージを受信し、またこれをレジストリ1 04に進める。レジストリはメッセージをメッセージ通信用製品106の所有の プロトコルからサーバのアプリケーションに認識可能なメッセージに変換する。 サーバのアプリケーション110からの応答が要求された場合、応答メッセージ を クライアントのアプリケーション102に戻して送信するために先のプロセスが 繰り返される。 図1aを参照して、クライアント/サーバの通信の論理層内にレジストリ10 4が果たす役割が例示されている。この図表において、リソースは各層の前で識 別され、それが提供するインターフェースは各層の上部で識別され、またインタ ーフェースにおいて使用されるセマンテックスは各層の右側で識別される。 最上層122はアプリケーションのユーザを表している。これは、アプリケー ションとビジネス用情報を交換する、アプリケーション規定のユーザ/リソース のインターフェースを経てアプリケーションとインターフェースする。 次に下の層124はアプリケーションを表している。これは、標準的なバーブ ・セット(SVS)を使用してレジストリとインターフェースする。使用される セマンテックスは「バーブ(verb)」として知られている、ビジネス用のクライ アント/サーバのトランザクションであり、アプリケーションのプログラマーが 取り扱う必要のあるプロトコルだけを表している。 次に下の層126はレジストリを表している。これは、製品−特定のインター フェースを経てメッセージ通信用製品(別名、通信用ミドルウェア)とインター フェースする。使用されるセマンテックスはメッセージ通信用製品に特定のもの である。 次に下の層128は通信用ミドルウェア、つまりメッセージ通信用製品である 。これは、データ転送用セマンテックスを使用し、ネットワークのプロトコルの インターフェースを経てネットワークとインターフェースする。底の層130は 、ネットワークのプロトコルを表し、SNA LU6.2あるいはTCP/IP のようなタイプのものから構成されている。 場合によっては、レジストリ126は通信用ミドルウェア層128を横切って 実際に広がっている。例えば、レジストリは、クライアントの要求メッセージを 実際のTCP/IPメッセージに翻訳し、またTCP/IPネットワーク上に直 接的に送信する。 図2を参照して、レジストリを利用した一般的なクライアント/サーバの会話 を例示するために、レジストリの内部論理構造を示した。 クライアントのアプリケーション202は、遠くのサーバのアプリケーション 222に送信される必要がある要求メッセージを発生する。要求メッセージの典 型的な例は、遠くのサーバ上に位置した会社のカスタマ課金用データベースから のカスタマの月毎の課金収入である。クライアントとサーバは企業のデータ・ネ ットワーク218により接続されており、またネットワーク218上でそれらの メッセージを移送するために利用可能ないくつかのメッセージ通信用製品216 を有している。これらは、全てのメッセージ通信用製品216およびネットワー ク218のプロトコルへのインターフェースとしてレジストリ204を使用する 。 クライアントのアプリケーション202はレジストリのアプリケーション・プ ログラミング・インターフェース(API)206を経てレジストリ204と通 信する。APIは、以下のように規定され、標準的なバーブ・セット(SVS) として知られているコマンドのセットを含んでいる。 標準的なバーブ・セット レジストリの標準的なバーブ・セット(SVS)は、レジストリがクライアン トおよびサーバのアプリケーションと通信するために使用する、コマンドのセッ トである。このコマンドの限定されたセットは、クライアント/サーバのアプリ ケーションのプログラマーがそれらのアプリケーションをレジストリ、および企 業のネットワークと通信させるために使用するのに必要な全ての通信プロトコル を表している。 1つはクライアントのアプリケーションにより使用され、また1つはサーバの アプリケーションにより使用される、2つのバーブのセットがある。アプリケー ションはクライアントあるいはサーバのいずれかとして潜在的に機能することが できるので、両方のバーブのセットはあらゆるアプリケーションのためのSVS 内に含まれている。上記したように、SVSは各クライアントおよびサーバのア プリケーションと同様に、レジストリのAPI206内で保守されている。 クライアントのバーブおよびそれらのパラメータは次のように規定される。 REGISTER− 呼び出し側アプリケーションとレジストリとの間 でセッションを設立する。このセッションは、呼び出し側のアプリケーションと レジストリとの間でだけであり、アプリケーション間ではない。このセッション は、レジストリ内でREGISTERバーブにより割り当てられたメモリである 、登録制御領域(Registration Control Area)から構成され、呼び出し側のア プリケーションに戻って渡される。RCAは登録プロセスの単一のインスタンス を表し、またクライアントによるREGISTERの発行に対して新しいRCA が必要とされる。REGISTERのパラメータは、 FEEDBACK− 呼び出し側アプリケーションに戻るために使用される フィールドであり、レジストリが要求された機能を完了することができるかどう かの表示。 REG−OPTIONS− これは、多くは任意である、いくつかのフィー ルドを含み、クライアントのアプリケーションを識別するために使用される情報 を提供する。このパラメータの1つの必要とされるフィールドは、呼び出し側の アプリケーションがクライアントあるいはサーバであるかを表す1つのキャラク タの指定の表示である。 RCA−PTR− RCAへのポインタとして機能することによりRCAを 単一的に識別するために使用されるフィールドである。これは、REGISTE Rバーブにより設立された特定のセッションを指定し、また特定のセッションの 一部としてレジストリへの続く呼び出しを識別する。REGISTERの各発行 は異なるセッションを指定しなければならず、よってこのフィールドに対して異 なる値を有する(例えば、RCA−PTR1、RCA−PTR2など)。 DEREGISTER− クライアント/サーバのアプリケーションの活動 を終了し、また関連するレジストリ−管理されたリソースを解放する。パラメー タはREGISTERの場合と同じである。 SENDREQUEST− クライアントの要求をサーバに送るために使用 される。REGISTERと同じおよび次のパラメータを含む。 WS−TEST−MSG− このフィールドはクライアントからサーバ に実際に送られたメッセージのアドレスである。 WS−MSG−LEN− このフィールドはクライアントのメッセージ の長さを表す。 RECEIVEREPLY− 先の要求に対する応答を受信するために使用 される。RCAはSENDREQUESTバーブに対して使用されたものと同じ でなければならない。REGISTERと同じおよび以下のパラメータを含んで いる。 WE−OUT−MSG−PTR− このフィールドは応答メッセージへ のポインタである。 WE−OUT−MSG−LEN− このフィールドは応答メッセージの 長さを表している。 CONVERSE− 同期的な要求/応答トランザクションを行うために使 用される。SENDREQUESTおよびRECEIVEREPLYを組み合わ せたのと同じパラメータを含む。 サーバのバーブおよびそれらのパラメータは次のように規定される。 REGISTER− バーブのクライアント版と同じ定義である。サーバは レジストリのそれを行う要求に応答してREGISTERバーブを発行する。 DEREGISTER− バーブのクライアント版と同じ定義である。 RECEIVEREQUEST− クライアントにより送られた要求メッセ ージを受信するために使用される。メッセージはそれ自体で変更されてないでレ ジストリにより受信され、次いでサーバにより処理される。REGISTERと 同じおよび以下のパラメータを含む。 WE−REQUESTED−MSG− このフィールドはクライアント によりサーバに対して送られたメッセージのアドレスである。 WE−REQUEST−LEN− このフィールドはメッセージの長さ を表す。 SENDREPLY− サーバの応答をクライアントのメッセージに送るた めに使用される。REGISTERおよび以下のパラメータを含む。 WE−SENDREPLY−MSG このフィールドはサーバによりク ライアントに送られた応答のアドレスである。 WE−SENDREPLY−LEN− このフィールドは応答の長さを 表す。 図2を再び参照して、クライアントのアプリケーション202は、それ自体を レジストリ204を備えたクライアントとして登録することによりセッションを 開始する。これは、API206により読み出される、REGISTERバーブ を発行する。バーブ実行部208として識別されるレジストリ要素はパラメータ を有効性検査するとともに各バーブを処理する役目がある。REGISTERバ ーブがAPI206により受信されたとき、バーブ実行部208は登録制御エリ ア(RCA)を生成しRCAのアドレスをAPI206を経てクライアント20 2に戻す。このRCAはクライアントとレジストリとの間の通信を記憶し処理す るために使用される。 クライアントのアプリケーション202は次いでSENDREQUESTバー ブをレジストリに発行する。このバーブは、先にクライアントにより生成された クライアントの要求メッセージを、サーバ222に送信することをレジストリに 指令する。実際の要求メッセージはまたSENDREQUESTのパラメータと してレジストリに送信される。このメッセージは、それを生成した特定のクライ アントのアプリケーション202により規定されるフォーマットであり、またレ ジストリにより変更されないまま維持される。レジストリは単にこれをサーバ2 22に配信する。 代わりに、クライアント202は、双方向の、サーバ222と会話型のダイロ グを設立するCONVERSEバーブを発行しても良い。これは、SENDRE QUESTとRECEIVEREPLYバーブを組み合わせて発行することと等 価である。SENDREQUESTバーブを単に発行することにより、バーブの パラメータに応じて、クライアント202は対話型あるいは一方向のいずれかの ダイアログをサーバ222と設立する。 図2をさらに参照して、SENDREQUESTバーブはAPI206により 受信され認識される。レジストリは次いでバーブ実行部208のプロセスを開始 する。 バーブ実行部208はバーブのパラメータを有効性検査する。これはまた、宛 先アドレスを分析する。これは、クライアントのアプリケーションのメッセージ から、クライアントの要求が意図されるサーバのアプリケーション222の名前 を読み出す。次いで、サーバのアプリケーション222に対する物理的なネット ワーク宛先を決定するためにデイレクトリ・サービス・データベース210に照 会する。デイレクトリ・サービス210は、ネットワーク上の各クライアント/ サーバのアプリケーションに対する物理的なネットワーク経路選択コードを含ん でいる。ネットワーク上で特定のアプリケーションを配信するために要求あるい は応答メッセージがレジストリに与えられたとき、レジストリはデイレクトリ・ サービスを経て物理的なネットワーク・ノードにその名前を翻訳することにより そのアプリケーションがどこに存在するのかを決定する。この方法においては、 アプリケーションがネットワーク上の他のノードに移行したときには、各クライ アント/サーバのアプリケーションを更新するのではなく、デイレクトリ・サー ビスの更新だけが必要となる。 好ましい実施の形態において、アプリケーションのネットワークの宛先は、ド メイン、サービス名、およびサービス修飾子から構成される、3つの部分の名前 により表される。ドメインは企業規模のネットワークの別個のサブ−ネットワー クを参照する。サービス名は、宛先ノードの、物理的なロケーションではなく、 機能を参照し、またこれは宛先の基本的な識別名である。サービス修飾子は、2 つ以上のインスタンスがある場合において、サービス名機能の特定のインスタン スを参照する。一例として、地理的なカスタマ・データのサービス名機能はサー ビス修飾子において「東」あるいは「西」で特定される。 図2をさらに参照して、バーブ実行部208は、汎用IPC要求を汎用IPC インターフェース212に発行することによりSENDREQUESTバーブの 実行を始める。IPC(プロセス間通信)は全ての要素を参照し、またクライア ント端におけるレジストリとサーバ端におけるレジストリの間で処理を行う。こ れは、メッセージ通信用製品216、データ・ネットワーク218、およびクラ イアント・プロセスとサーバ・プロセスの間の通信をサポートするものを含んで いる。 汎用IPCインターフェース212は、クライアントのメッセージをサーバに 移送するための適切なIPC製品を選択する役目のある要素である。汎用IPC インターフェース212は、利用可能なメッセージ通信用製品216およびネッ トワーク製品218の全ての汎用化されたビューを含んでおり、また現在のセッ ションにおいて使用するための1つを選択する。また、メッセージ・エンベロー プ(メッセージ自体は変更されない)を選択されたIPC製品の適切なフォーマ ットに翻訳する役目がある。汎用IPC要求は、バーブ実行部208により汎用 IPCインターフェース212に発行されるコマンドである。これには、クライ アントのメッセージ、サーバのネットワーク・アドレス、およびメッセージを送 信するための要求が含まれる。 汎用IPCインターフェース212は、インターフェース212の動作を例示 したデータ流れの図表である図2aにより詳細に示されている。図2aを参照し て、汎用IPCインターフェースは、破線内で識別される。これは、3つの主要 な要素、つまり汎用IPCインターフェース要求プロセッサ230、IPC製品 修飾部232、IPCメッセージ通信用インターフェース234などから構成さ れる。これはまた、デイレクトリ・サービス210の区分されたデータベース、 あるいは別個のデータベースである、利用可能なサービス情報236のデータベ ースを含んでいる。 汎用IPCインターフェース要求プロセッサ230はバーブ実行部208への 形式的および最初のインターフェースを提供する。また、汎用IPC要求240 を受信し、要求を処理するために必要なサービスを決定する。次いで、これらの サービスを要求されたサービスのリスト242内にコンパイルし、これはIPC 製品修飾部232に送られる。要求されたサービスのリスト242はデータ項目 のセットであり、各項目は要求を処理するために必要なレジストリ−規定のサー ビスを識別している。このようなサービスの例は持続的なキューイング、メッセ ージ回復、およびタイムアウトである。 IPC製品修飾要素232は、データ・ネットワーク218上でクライアント のメッセージを移送するためにどのメッセージ通信用製品216を使用するのか を決定する。この決定は、要求プロセッサ230からの要求されたサービスのリ スト242、および利用可能なサービス情報データベース236からの利用可能 なIPC製品244のリストの、2つの入力に基づくものである。レジストリの 好ましい実施の形態においてはデレクトリ・サービス210とともに存在してい る利用可能なサービス情報データベース236は、全ての利用可能なIPC製品 (メッセージ通信用製品216およびデータネットワーク218のプロトコルを 含む)のプログラムされたリストおよびそれらの要件を含んでいる。特定の要求 に対する要求されたサービス242、および利用可能なIPC製品244に基づ いて、IPC製品修飾要素232は使用する適切なIPC製品216を選択する 。次いで、この選択されたIPC製品246の識別をIPCメッセージ通信イン ターフェース234に送信する。 IPCメッセージ通信インターフェース234は、選択されたメッセージ通信 用製品216を含めて、レジストリのインターフェースに選択されたIPC製品 を提供する。上記したように、IPCはクライアントのレジストリからサーバの レジストリにメッセージを移送するために必要とされる全ての要素について参照 している。これには、主として産業分野で標準的なメッセージ通信用製品216 およびデータ・ネットワーク製品218が含まれる。IPCは、汎用IPC要求 240を選択されたメッセージ通信用製品216によって規定され要求されるフ ォーマットに翻訳する。また、メッセージ通信用製品216とダイアログを開始 する。汎用IPC要求240(クライアントのネイテブな要求メッセージを含む )は、適切なメッセージ通信用製品216のフォーマットに翻訳されたときに、 データ・ネットワーク218上で遠隔のサーバ222に移送するためにメッセー ジ製品216に進む。 図2を参照して、サーバ端において、メッセージ通信用製品216はネットワ ーク218からメッセージを受信し、またメッセージ224を汎用IPCインタ ーフェース212を経てレジストリ204に配信する。このレジストリ204へ のメッセージ224配信は、サーバ端においてレジストリにより行われる全体の プロセスとともに、レジストリ・プロセス・モニタ220として識別されるレジ ストリ要素により制御される、レジストリ・プロセス・モニタ220は、サーバ 222のメッセージの受信および処理を制御する。この目的は、メッセージのサ ーバのスループットを最大にし、作業負荷を処理するためにサーバのタスクの所 望の数を管理し、作業負荷の要求変更としてのサーバのタスクの終了/再起動す ることによりサーバの容量および利用度を制御し、またサーバのリソースの割り 当ての制御のためのアプリケーション−規定の機構を提供することである。 図2bを参照して、レジストリ・プロセス・モニタ(RPM)220がその動 作を例示するために詳細に示されている。RPMは、キュー・モニタ(QM)2 60、プロセス・モニタ(PM)262、および制御モニタ(CM)などの、3 つの主要な要素から構成される。 サーバ−バウンド(server-bound)のメッセージは、メッセージ通信用製品2 16によりネットワーク218から検索され、レジストリ204により検索待ち のキュー内に保持される。各キューにはその優先度を示すためにサービスのクラ スが割り当てられている。各QM260にはキューあるいはキューの範囲、つま りサービスのクラスあるいはクラスの範囲が割り当てられている。QM260は 、メッセージ通信用製品216からキュー・ステータス・データ226を受信す ることにより、これらのキューをモニタする。サーバの処理に対して解放された メッセージを追跡することにより、QM260はサーバにおける現在の利用度の レベルおよび別のメッセージの処理のためのその容量を知る。QM260が、サ ーバが別のメッセージを処理するための十分なリソースの容量を有することを決 定したとき、QM260は続く処理のための特定のキューからのメッセージを選 択する。次いで、PM262に、メッセージを検索するために必要とされるサー バのスレッドに対する要求270を送信する。このサーバのスレッド276は、 サーバ222のオペレーティング・システムとレジストリ204の間の処理リン クを表している。これは、クライアントのメッセージを要求および受信するため にサーバのアプリケーション222により使用される。 PM262は、それ自体をレジストリに登録することによりスレッドをセット アップするために、要求272をサーバ222に送る。サーバ222は次いで、 レジストリにREGISTERバーブを発行する。これにより、クライアント2 02が行ったのと同じ方法で、サーバ222とレジストリ204との間でセッシ ョンが設立される。サーバ222は次いで、サーバのスレッド276を経てクラ イアントの要求メッセージを受信することを許容する、RECEIVEREQU ESTバーブを発行する。 RECEIVEREQUESTバーブはAPI206により受信され、また処 理のためにバーブ実行部208に進む。バーブ実行部208はパラメータを有効 性検査する。WS−REQUEST−MSGパラメータから、レジストリはメッ セージがどこにあるのか、およびそれを汎用IPCインターフェース212を経 て検索できるのかを知る。IPCパラメータ212はメッセージ224を検索し 、これからクライアントのネイテブ要求メッセージを抽出する。このクライアン トの要求メッセージは次いでアプリケーション−特定の処理のためにサーバ22 2に進む。 CM264は、レジストリに対するシステム管理および構成を提供する、ユー ティリティ機能を行う。これは、オペレータがシステムの管理機能を行うことが できるように、システムのオペレータにグラフィカル・ユーザ・インターフェー ス(GUI)266を提供する。また、オペレータに各QM260により管理さ れるキューのドメインを変更することを許容する。 図2に戻って、クライアントの要求メッセージの処理後、および応答が必要で ある場合、サーバはSENDREPLYバーブを発行する。このバーブは、WS −SENDREPLY−MSGとして識別される、サーバの応答メッセージをパ ラメータとして含んでいる。このバーブはSENDREQUESTバーブが先に 処理された方法と同様に処理される。 図3に戻って、サーバのアプリケーションにメッセージを送信するためにクラ イアントのアプリケーションがSENDREQUESTバーブを発行したときに おけるレジストリの動作を例示したプロセスの流れ図が例示されている。CON VERSEバーブが発行された場合には同様な動作が行われる。 ステップ302において、クライアントのアプリケーション202は処理する ためにサーバのアプリケーション222に対して要求を開始する。この要求は、 遠隔の装置上に存在する、サーバのアプリケーション222に配信されなければ ならない。ステップ302において、要求はよって、クライアントのアプリケー ション202内で遠くに含まれる。 ステップ304において、クライアント202はレジストリ204にREGI STERバーブを発行する。REGISTERバーブは、クライアント202と レジストリ204との間で通信セッションを設立するコマンドである。ステップ 306において、レジストリ204のバーブ実行要素208はREGISTER バーブのパラメータを有効性検査する。次いで、ステップ308において、バー ブ実行部208は、クライアント202とレジストリ204の間にバーブ・パラ メータ(クライアントのメッセージを含む)を進めるために使用されるメモリ割 り当てである、登録制御領域(RCA)を組み込む。 ステップ310において、クライアント202はSENDREQUESTバー ブをレジストリ204に発行する。クライアント202はこの要求メッセージを SENDREQUESTバーブのパラメータとして送信する。ステップ312に おいて、レジストリ204のバーブ実行要素208はSENDREQUESTバ ーブのパラメータを有効性検査する。次いで、ステップ314において、バーブ 実行部208は意図したサーバのアプリケーション222の物理的なネットワー ク経路選択アドレスを決定する。これは、クライアントのメッセージからサーバ のアプリケーションの名前を抽出し、この名前をデイレクトリ・サービス210 への照会を経てネットワーク宛先に翻訳することにより行われる。デイレクトリ ・サービス210は、先に図2を参照して特定したように、ドメイン、サービス 名、およびサービス修飾子の形式でネットワーク宛先を戻す。 ステップ316において、バーブ実行要素208は、汎用IPCインターフェ ース212に汎用IPC要求を発行することにより、SENDREQESTに関 するその最終的な機能を実行する。汎用IPC要求は、IPCインターフェース 212にクライアントのメッセージを配信するために必要な一定の機能を実行す ることを指示するコマンドである。これらの機能はステップ318から324に おいて特定されている。汎用IPC要求はまた、クライアントのメッセージおよ びサーバのネットワーク・アドレスを含んでいる。汎用IPC要求の発行は図2 aにおいて項目240で示されている。 次いで図3aを参照して、ステップ318において、汎用IPCインターフェ ース要求・プロセッサ230は、汎用IPC要求を処理するために必要とされる サービスのリストをコンパイルする。これらの必要とされるサービスは、メッセ ージ通信製品216において行われる。生成され必要とされたサービス・リスト 242は、IPC製品244を選択するためにステップ320においてIPC製 品修飾要素232により使用される。IPC製品修飾部232はまた、利用可能 なサービス情報データベース236から利用可能なIPC製品244のリストを 受信する。 ステップ320において、IPC製品周力部232は要求されたサービス・リ スト242からの要求されたサービスを利用可能なIPC製品リスト244内で 識別された一定のIPC製品から提供されるものと突き合わせる、また適当なI PC製品を選択する。選択されたIPC製品はメッセージ通信製品216および /またはデータ・ネットワーク218のトランスポート・プロトコルである。選 択されたIPC製品の識別は、次いでIPCメッセージ通信インターフェース要 素234に送られる。 ステップ322において、IPCメッセージ通信インターフェース要素234 は汎用IPC要求(図2aで示したようにバーブ実行部208から受信した)を 選択されたIPC製品の所有のメッセージにフォーマットする。このフォーマッ トの翻訳のための手順はIPCメッセージ通信インターフェース要素234内に プログラムされている。次いで、ステップ324において、インターフェース2 34は、メッセージ通信製品のために標準的な方法で選択されたメッセージ通信 製品216と通信セッションを設立する。セッションが設立されると、メッセー ジは、データ・ネットワーク218上でメッセージを配信するための処理をする 、メッセージ通信製品に進む。ここで、「メッセージ」は、レジストリが選択さ れたIPC製品に対して特別にフォーマットしたエンベロープ内にパッケージさ れたクライアントのネイテイブな要求メッセージから構成される。 ステップ326は、使用される特定のネットワーク・プロトコルに対して標準 的な方法でネットワーク218上でメッセージを移送することを表している。 ステップ328において、サーバのサイトにおけるレジストリは、メッセージ を受信するために準備されている。レジストリ・プロセス・モニタ220のキュ ー・モニタ(QM)要素260は一定のキューのメッセージをモニタする。これ は、接続されたメッセージ通信製品216のそれぞれからキューのステータス・ データ226を受信することにより行われる。QM260はまた、最初のサーバ 容量でプログラムされることによりサーバのリソース容量を追跡し、またサーバ に送られた各メッセージをトラッキングする。この方法において、QM260は 現在のサーバの利用度および別の処理をするためのその容量を知る。ステップ3 28の一部として、QM260はサーバの現在の容量を評価するとともに次のメ ッセージが何時検索されるのかを決定する。 ステップ330において、QM260は検索される次のメッセージを決定し、 またサーバのスレッド276に対する要求を発行する。先に説明したように、こ のサーバのスレッド276はサーバ222のオペレーティング・システムとレジ ストリ204の間の処理リンクを表している。これは、メッセージを要求および 受信するためにサーバのアプリケーション222により使用される。サーバのス レッドの要求はQM260によりプロセス・モニタ(PM)262に対して発行 される。 ステップ332において、PM262はサーバのオペレーティング・システム にサーバのスレッドに対する要求を発行する。これは、レジストリ204とセッ ションを設立するためにサーバのアプリケーション222に対するトリガとして 機能する。これは、クライアント202により先に行われたように、REGIS TERバーブを発行することにより行われる。 ステップ334において、サーバ222は、レジストリのAPI206により 読み出されバーブ実行部208に進む、REGISTERバーブを発行する。こ れにより、サーバのレジストリとのセッションが設立される。処理は図3bのペ ージ外の接続部Aに続く。 次に図3bを参照して、ステップ336において、バーブ実行部208は、ク ライアントについて行ったのと同様にサーバのREGISTERバーブを処理す る。またこれは、現在のセッションに特定のRCAを組み立てる。次いで、ステ ップ338において、サーバ222はレジストリにRECEIVEREQUES Tバーブを発行する。RECEIVEREQUESTバーブはクライアントのメ ッセージをサーバ222に送るためにレジストリに指示する。 ステップ340において、バーブ実行部208はRECEIVEREQUES Tバーブのパラメータを有効性検査する。パラメータの1つはクライアントの要 求メッセージのメモリ内にアドレスに集団化(populate)される。ステップ34 2において、バーブ実行部208は、ネットワーク218上で配信されパッケー ジ化されたメッセージからクライアントのネイテイブな要求メッセージを抽出し 、またこの要求メッセージをサーバ222に進める。 ステップ344において、サーバ222は、アプリケーションに特定でレジス トリに無関係な方法でクライアントの要求メッセージを処理する。サーバは、ス テップ346において決定された、必要あるいは不必要の選択に対応して、サー バの要求に応答する。応答が必要とされる場合、サーバ222はSENDREP LYバーブをステップ348において発行し、これはステップ310において開 始される、クライアントのSENDREQUESTバーブと同じ方法で処理され る。サーバの応答は次いで、ステップ350に示したように、クライアントに配 信される。サーバ222は次いで、ステップ352において他のRECEIVE REQUESTを発行するための処理をする。 ステップ346において決定されたように、応答が必要ない場合、サーバ22 2はステップ352において他のRECEIVEREQUESTバーブを発行す る。サーバに対するキュー内に要求メッセージがない場合、ステップ354に示 したように、「もうメッセージがなし」を述べたメッセージがレジストリ204 からサーバ222に戻される。次いで、プロセスはステップ356で終了し、こ こでサーバ222はDEREGISTERバーブを発行する。DEREGIST ERバーブはレジストリにセッションの終りを指示する。 ステップ354において、「もうメッセージがなし」のメッセージが戻らなか った場合、要求メッセージがキュー内にあるという仮定がなされる。プロセスは ステップ340に戻り、ここでバーブ実行部208はパラメータを有効性検査す ることによりRECEIVEREQUESTバーブの処理を進める。 上記の説明は本発明の範囲を制限するものではなく、好ましい実施の形態を説 明したものに過ぎない。当業者には他の自明な変更および修正が可能である。 当業者には自明な変更は適宜行うことができるので、本発明は図示し説明した 詳細に限定されるものではない。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,DE, DK,ES,FI,FR,GB,GR,IE,IT,L U,MC,NL,PT,SE),OA(BF,BJ,CF ,CG,CI,CM,GA,GN,ML,MR,NE, SN,TD,TG),AP(KE,LS,MW,SD,S Z,UG),UA(AM,AZ,BY,KG,KZ,MD ,RU,TJ,TM),AL,AM,AT,AU,AZ ,BB,BG,BR,BY,CA,CH,CN,CZ, DE,DK,EE,ES,FI,GB,GE,HU,I L,IS,JP,KE,KG,KP,KR,KZ,LK ,LR,LS,LT,LU,LV,MD,MG,MK, MN,MW,MX,NO,NZ,PL,PT,RO,R U,SD,SE,SG,SI,SK,TJ,TM,TR ,TT,UA,UG,US,UZ,VN 【要約の続き】 択された互換性のあるサーバによる使用のために、プロ トコルのフォーマットから元のアプリケーションの特定 のフォーマットに変換する。

Claims (1)

  1. 【特許請求の範囲】 1. アプリケーションとデータ・ネットワークのトランスポート機構との間の 通信の論理層として機能するクライアント−サーバ・システムにおいて、 それぞれ異なるオペレーティング・システムにより制御されるアプリケーショ ンを実行することができる、複数のクライアント手段を含み、 (a)予め選択されたサーバ手段に宛てられた、クライアント手段からのア プリケーションの特定のメッセージを受容し、またこれらを標準的なレジストリ の特定のメッセージ内にカプセル化し、および (b)レジストリの特別なメッセージを予め選択されたプロトコル内に翻訳 する ために各クライアント手段に接続された第1のレジストリ手段を含み、 翻訳されたメッセージを遠端まで通信するためのネットワークを含み、 (a)翻訳されたメッセージを受容し、および (b)メッセージをプロトコルのフォーマットから元のアプリケーションの 特定のメッセージに変換する ために遠端に配置された第2のレジストリ手段を含み、 アプリケーションの特定のメッセージをサーバ手段に通信するためにレジスト リ手段を予め選択されたサーバ手段に接続するための手段を含んでなる、システ ム。 2. 予め選択されたプロトコル内のレジストリの特定のメッセージを、ネット ワークに通信するために、第1のレジストリ手段とネットワークの間に接続され た第1のメッセージ通信手段、および 予め選択されたプロトコル内のレジストリの特定のメッセージを受信しこれら を第2のレジストリに転送するためにネットワークと第2のレジストリ手段の入 力との間に接続された第2のメッセージ通信手段、をさらに含んでなる請求の範 囲第1項記載のシステム。 3. 第1のレジストリ手段が、クライアント手段からバーブ・コマンドを受信 するとともにクライアント手段からの関連するアプリケーションの特定のメッセ ージを対応するレジストリ・フォーマットに翻訳するために、クライアント手段 の出力に接続された、アプリケーション・プログラミング・インターフェース、 をさらに含んでなる請求の範囲第1項記載のシステム。 4. 第1のレジストリ手段が、バーブ・コマンドのパラメータを有効性検査し 続いてクライアント手段からのメッセージに対する宛先アドレスを分解するため の手段、および クライアントのメッセージが意図されるサーバ手段への論理的なネットワーク の宛先を決定するために、有効性検査されたバーブ・コマンドにより照会される デレクトリ・サービス・データベース、をさらに含んでなる請求の範囲第3項記 載のシステム。 5. 第1のレジストリ手段が、デレクトリ・サービス・データベース手段から 導出された宛先情報に応答して、レジストリ・フォーマットであるメッセージを その出力に平行に接続された複数のアダプタの1つにスイッチするためのプロセ ス間通信手段をさらに含んでなり、アダプタは選択された第1のメッセージ通信 手段により要求されるとともにサーバ手段に宛てられた特定のプロトコルのフォ ーマットにレジストリ・メッセージをマッピングする、請求の範囲第2項記載の システム。 6. 第2のレジストリ手段が、 特定のプロトコル内のメッセージをレジストリのフォーマットに翻訳するため に第2のメッセージ通信手段の出力に接続された、複数の平行に接続されたアダ プタ、 アダプタからの翻訳されたメッセージを別の処理のために選択的に受信するた めのプロセス間通信手段、および レジストリのフォーマットである、メッセージをサーバ・アプリケーションに より必要とされるフォーマットに翻訳するとともにこれを指定されたサーバに接 続するためにプロセス間通信手段の出力に接続された、アプリケーション・プロ グラムイング・インターフェース、を含んでなる請求の範囲第2項記載のシステ ム。 7. 指定されたサーバによるスケジューリング処理のための、アプリケーショ ン・プログラミング・インターフェースの入力に接続されたレジストリ・モニタ リング手段をさらに含んでなる請求の範囲第6項記載のシステム。 8. 第2のレジストリ手段が (a)照会に応答して、サーバにより生成されたバーブ・コマンドのパラメー タを有効性検査し続いてクライアント手段からのメッセージに対する宛先アドレ スを分解するための手段、 (b)サーバ手段から最初の照会を生成したクライアント手段への、応答のた めに論理的なネットワーク宛先を決定するために、クライアント手段からのバー ブ有効性検査コマンドにより照会されるデイレクトリ・サービス・データベース 、 (c)選択された第2のメッセージ通信手段の入力へ応答を通信するために第 2のレジストリ手段内のアダプタを選択する第2のレジストリ手段内のプロセス 間通信手段、および メッセージ通信手段をネットワークに接続するために、第2のレジストリ手段 の外側に配置された、アダプタ手段、 をさらに含んでなる請求の範囲第7項記載のシステム。 9. アプリケーションとデータ・ネットワークのトランスポート機構との間の 通信の論理層として機能するクライアントーサーバ・システムにおいて、 それぞれ対応するオペレーティング・システムにより制御されるアプリケーシ ョンを開始することができる、複数のクライアントを含み、 (a)予め選択されたサーバに宛てられた、クライアントからのアプリケー ションの特定のメッセージを受容し、またこれらを標準的なレジストリの特定の メッセージ内にカプセル化し、および (b)レジストリの特別なメッセージを予め選択されたプロトコル内に翻訳 する ために各クライアントに接続された第1のレジストリを含み、 翻訳されたメッセージを遠端に通信するためのネットワークを含み、 予め選択されたプロトコル内のレジストリの特別なメッセージを、ネットワー クに通信するために、第1のレジストリとネットワークとの間に接続された第1 のメッセージ通信装置を含み、 (a)翻訳されたメッセージを受容し、および (b)メッセージをプロトコルのフォーマットから元のアプリケーションの 特定のメッセージに変換する ために遠端に配置された第2のレジストリを含み、 アプリケーションの特定のメッセージをサーバに通信するために第2のレジス トリは予め選択されたサーバに接続されており、 予め選択されたプロトコル内のレジストリの特定のメッセージを受信するとと もにこれらを第2のレジストリに転送するためにネットワークと第2のレジスト リの入力との間に接続された、第2のメッセージ通信装置を含んでなる、システ ム。 10. 第1のレジストリがさらに クライアントからバーブ・コマンドを受信するとともにクライアントからの関 連するアプリケーションの特定のメッセージを対応するレジストリ・フォーマッ トに翻訳するために、クライアントの出力に接続された、アプリケーション・プ ログラミング・インターフェースを含み、 バーブ・コマンドのパラメータを有効性検査し続いてクライアントからのメッ セージに対する宛先アドレスを分解するための有効性検査デバイスを含み、 クライアントのメッセージが意図されるサーバへの論理的なネットワークの宛 先を決定するために有効性検査されたバーブ・コマンドにより照会されるデイレ クトリ・サービス・データベースを含み、 デレクトリ・サービス・データベースから導出された宛先情報に応答して、レ ジストリ・フォーマットであるメッセージをその出力に平行に接続された複数の アダプタの1つにスイッチするためのプロセス間通信機構をさらに含んでなり、 アダプタは選択された第1のメッセージ通信装置により要求されるとともにサー バに宛てられた特定のプロトコルのフォーマットにレジストリ・メッセージをマ ッピングする、請求の範囲第9項記載のシステム。 11. 第2のレジストリが、 特定のプロトコル内のメッセージをレジストリのフォーマットに翻訳するため に第2のメッセージ通信装置の出力に接続された、複数の平行に接続されたアダ プタ、 アダプタからの翻訳されたメッセージを別の処理のために選択的に受信するた めのプロセス間通信機構、および レジストリのフォーマットである、メッセージをサーバ・アプリケーションに より必要とされるフォーマットに翻訳するとともにこれを指定されたサーバに接 続するためにプロセス間通信機構の出力に接続された、アプリケーション・プロ グラムイング・インターフェース、 指定されたサーバによるスケジューリング処理のための、アプリケーション・ プログラミング・インターフェースの入力に接続されたレジストリ・モニタ、 照会に応答して、サーバにより生成されたバーブ・コマンドのパラメータを有 効性検査し続いてクライアントからのメッセージに対する宛先アドレスを分解す るための第2の有効性検査機構、 サーバから最初の照会を生成したクライアントへの、応答のための論理的なネ ットワーク宛先を決定するために、クライアントからのバーブ有効性検査コマン ドにより照会されるデイレクトリ・サービス・データベース、 選択された第2のメッセージ通信手段の入力へ応答を通信するために第2のレ ジストリ内のアダプタを選択する第2のレジストリ内のプロセス間通信機構、お よび メッセージ通信装置をネットワークに接続するために、第2のレジストリの外 側に配置された、アダプタ、を含んでなる請求の範囲第9項記載のシステム。 12. それぞれ異なるオペレーティング・システムにより制御されるアプリケ ーションを実行することができ、ネットワーク上で選択的に相互接続された複数 のクライアント装置およびサーバ装置、これら装置の間の通信の論理層を有する コンピュータ・システムにおいて、 (a)予め選択されたサーバに宛てられた、クライアントからのアプリケー ションの特定のメッセージを受容し、またこれらを標準的なレジストリの特定の メッセージ内にカプセル化するステップ、および (b)レジストリの特別なメッセージを予め選択されたプロトコル内に翻訳 するステップ を含む第1のレジストリ・プロセスを行うステップ、 予め選択されたプロトコル内のレジストリの特定のメッセージを、ネットワー クに、通信するためにレジストリの特定のメッセージをメッセージ通信するステ ップ、 (c)翻訳されたメッセージを受容するステップ、および (d)メッセージをプロトコルのフォーマットから元のアプリケーションの 特定のメッセージに変換するステップ を含む遠端における第2のレジストリ・プロセスを行うステップ、 変換されたアプリケーションの特定のメッセージを予め選択されstあサーバ に接続するステップを含んでなる、方法。 13. 第1のレジストリ・プロセスがさらに クライアントからバーブ・コマンドを受信するとともにクライアントからの関 連するアプリケーションの特定のメッセージを対応するレジストリ・フォーマッ トに翻訳するために、アプリケーション・プログラミングをインターフェースす るステップを含み、 バーブ・コマンドのパラメータを有効性検査し続いてクライアントからのメッ セージに対する宛先アドレスを分解するステップを含み、 クライアントのメッセージが意図されるサーバへの論理的なネットワークの宛 先を決定するために有効性検査されたバーブ・コマンドによりデイレクトリ・サ ービス・データベースを照会するステップを含み、 デレクトリ・サービス・データベースから導出された宛先情報に応答して、レ ジストリ・フォーマットであるメッセージを複数のアダプタの1つにプロセス間 通信スイッチングするステップを含んでなり、アダプタは選択された第1のメッ セージ通信装置により要求されるとともにサーバに宛てられた特定のプロトコル のフォーマットにレジストリ・メッセージをマッピングする、請求の範囲第12 項記載の方法。 14. 第2のレジストリ・プロセスがさらに、 特定のプロトコル内のメッセージを逆に処理してメッセージをレジストリのフ ォーマットに翻訳するステップ、 翻訳され処理されたメッセージを別の処理のために選択的にプロセス間通信ス イッチングするステップ、 レジストリのフォーマットである、メッセージをサーバ・アプリケーションに より必要とされるフォーマットに翻訳するとともにこれを指定されたサーバに接 続するためにアプリケーション・プログラムイングをインターフェース処理する ステップ、 指定されたサーバによるスケジューリング処理のために、アプリケーション・ プログラミングのインターフェース処理をモニタするステップ、 クライアントからの照会に応答して、サーバにより生成されたバーブ・コマン ドのパラメータを有効性検査し続いてクライアントからのメッセージに対する宛 先アドレスを分解するステップ、 サーバから最初の照会を生成したクライアントへの、応答のための論理的なネ ットワーク宛先を決定するために、クライアントからのバーブ有効性検査コマン ドによりデイレクトリ・サービス・データベースを照会するステップ、 アプリケーションを開始したクライアントへの最終的な配信のために応答をク ライアントの方向に通信するステップを含んでなる、請求の範囲第12項記載の 方法。
JP9519783A 1995-11-17 1996-11-15 レジストリ通信ミドルウェア Pending JP2000500940A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/560,550 1995-11-17
US08/560,550 US5790809A (en) 1995-11-17 1995-11-17 Registry communications middleware
PCT/US1996/018184 WO1997019411A1 (en) 1995-11-17 1996-11-15 Registry communications middleware

Publications (1)

Publication Number Publication Date
JP2000500940A true JP2000500940A (ja) 2000-01-25

Family

ID=24238279

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9519783A Pending JP2000500940A (ja) 1995-11-17 1996-11-15 レジストリ通信ミドルウェア

Country Status (5)

Country Link
US (1) US5790809A (ja)
EP (1) EP0861471A1 (ja)
JP (1) JP2000500940A (ja)
AU (1) AU7679396A (ja)
WO (1) WO1997019411A1 (ja)

Families Citing this family (85)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6041365A (en) * 1985-10-29 2000-03-21 Kleinerman; Aurel Apparatus and method for high performance remote application gateway servers
US6515968B1 (en) 1995-03-17 2003-02-04 Worldcom, Inc. Integrated interface for real time web based viewing of telecommunications network call traffic
US5951645A (en) * 1996-09-25 1999-09-14 Nec Corporation Network protocol for transferring data between applications running on different clients in a client-server system
US6208952B1 (en) * 1996-10-24 2001-03-27 Microsoft Corporation Method and system for delayed registration of protocols
US6016307A (en) 1996-10-31 2000-01-18 Connect One, Inc. Multi-protocol telecommunications routing optimization
US6429402B1 (en) 1997-01-24 2002-08-06 The Regents Of The University Of California Controlled laser production of elongated articles from particulates
US5940598A (en) * 1997-01-28 1999-08-17 Bell Atlantic Network Services, Inc. Telecommunications network to internetwork universal server
US6085250A (en) * 1997-03-20 2000-07-04 Efficient Networks, Inc. Method and system for using layered networking application program interfaces (APIs) using a native asynchronous transfer mode (ATM) API
US6157956A (en) * 1997-03-28 2000-12-05 Global Maintech, Inc. Heterogeneous computing interface apparatus and method using a universal character set
JP3731980B2 (ja) * 1997-08-20 2006-01-05 富士通株式会社 コンピュータネットワークシステム及び携帯型コンピュータ
US6473407B1 (en) 1997-09-05 2002-10-29 Worldcom, Inc. Integrated proxy interface for web based alarm management tools
US6088659A (en) 1997-09-11 2000-07-11 Abb Power T&D Company Inc. Automated meter reading system
US6745229B1 (en) 1997-09-26 2004-06-01 Worldcom, Inc. Web based integrated customer interface for invoice reporting
US6615258B1 (en) 1997-09-26 2003-09-02 Worldcom, Inc. Integrated customer interface for web based data management
US6714979B1 (en) 1997-09-26 2004-03-30 Worldcom, Inc. Data warehousing infrastructure for web based reporting tool
US7225249B1 (en) 1997-09-26 2007-05-29 Mci, Llc Integrated systems for providing communications network management services and interactive generating invoice documents
US6763376B1 (en) 1997-09-26 2004-07-13 Mci Communications Corporation Integrated customer interface system for communications network management
US6138146A (en) * 1997-09-29 2000-10-24 Ericsson Inc. Electronic mail forwarding system and method
DE19745994A1 (de) * 1997-10-20 1999-04-22 Cit Alcatel Verfahren zum Austausch von Daten zwischen Applikationsprozessen in einem sicheren Mehrrechnersystem
US6035327A (en) * 1997-12-08 2000-03-07 Microsoft Corporation SMTP extension to preserve per-message and per-recipient properties
US6310888B1 (en) * 1997-12-30 2001-10-30 Iwork Software, Llc System and method for communicating data
US6101555A (en) * 1998-01-12 2000-08-08 Adaptec, Inc. Methods and apparatus for communicating between networked peripheral devices
US6327613B1 (en) 1998-01-12 2001-12-04 Adaptec, Inc. Method and apparatus for sharing peripheral devices over a network
US6272333B1 (en) * 1998-06-12 2001-08-07 Motorola, Inc. Method and apparatus in a wireless communication system for controlling a delivery of data
US6182147B1 (en) * 1998-07-31 2001-01-30 Cisco Technology, Inc. Multicast group routing using unidirectional links
US6088796A (en) * 1998-08-06 2000-07-11 Cianfrocca; Francis Secure middleware and server control system for querying through a network firewall
US6700902B1 (en) 1998-10-19 2004-03-02 Elster Electricity, Llc Method and system for improving wireless data packet delivery
US6536040B1 (en) * 1999-03-29 2003-03-18 International Business Machines Corporation Cross-platform program, system, and method having a system independent registry for use on operating systems irrespective of a registry equivalent
US6615278B1 (en) 1999-03-29 2003-09-02 International Business Machines Corporation Cross-platform program, system, and method having a global registry object for mapping registry equivalent functions in an OS/2 operating system environment
US6578045B1 (en) * 1999-04-20 2003-06-10 Microsoft Corporation System and method for retrieving registry data
US6621895B1 (en) 1999-08-31 2003-09-16 Nortel Networks Limited Enhanced communication services for data networks
US7328233B2 (en) * 2000-01-19 2008-02-05 Corybant, Inc. Method and apparatus for implementing an active information model
WO2001057739A1 (en) * 2000-01-31 2001-08-09 Pharsight Corporation Method and apparatus for research management
US6779179B1 (en) * 2000-03-20 2004-08-17 Exent Technologies, Inc. Registry emulation
WO2001067379A2 (en) * 2000-03-09 2001-09-13 Exent Technologies, Inc. Registry emulation
US6631417B1 (en) 2000-03-29 2003-10-07 Iona Technologies Plc Methods and apparatus for securing access to a computer
US8099501B1 (en) * 2000-06-15 2012-01-17 Unisys Corporation Adapter architecture
EP1178384A1 (en) * 2000-07-31 2002-02-06 Hewlett-Packard Company, A Delaware Corporation Dynamic resource control in a processing system
US6453329B1 (en) * 2000-08-08 2002-09-17 Stephen Dodgen Method for translating distilled filed for handling of large data files and programs by computing devices with limited processing capability
US20020069123A1 (en) * 2000-12-01 2002-06-06 Mats Soderlind Electronic commerce system
US7334031B2 (en) * 2001-01-12 2008-02-19 Siemens Medical Solutions Health Services Corporation System and user interface supporting processing and activity management for concurrently operating applications
US7043752B2 (en) * 2001-01-12 2006-05-09 Siemens Medical Solutions Health Services Corporation System and user interface supporting concurrent application initiation and interoperability
US20020198931A1 (en) * 2001-04-30 2002-12-26 Murren Brian T. Architecture and process for presenting application content to clients
US7346921B2 (en) * 2001-04-30 2008-03-18 Ge Capital Corporation Definition of low-level security rules in terms of high-level security concepts
US20030078949A1 (en) * 2001-04-30 2003-04-24 Scholz Bernhard J. Automatic generation of forms with input validation
US20030009433A1 (en) * 2001-04-30 2003-01-09 Murren Brian T. Automatic identification of computer program attributes
US7519546B2 (en) * 2001-04-30 2009-04-14 General Electric Company Maintaining synchronization of information published to multiple subscribers
US7216181B1 (en) * 2001-07-31 2007-05-08 Sprint Communications Company L.P. Middleware brokering system
US20030188036A1 (en) * 2002-03-22 2003-10-02 Sun Microsystems, Inc. Methods and systems for program migration
US7200674B2 (en) * 2002-07-19 2007-04-03 Open Invention Network, Llc Electronic commerce community networks and intra/inter community secure routing implementation
US7171650B2 (en) * 2002-08-23 2007-01-30 Sbc Properties, L.P. System and method for integrating resources in a network
US7620735B2 (en) * 2002-11-20 2009-11-17 Corybant, Inc. Interactive voice enabled email notification and alert system and method
US7149752B2 (en) * 2002-12-03 2006-12-12 Jp Morgan Chase Bank Method for simplifying databinding in application programs
US7085759B2 (en) 2002-12-06 2006-08-01 Jpmorgan Chase Bank System and method for communicating data to a process
US8032439B2 (en) * 2003-01-07 2011-10-04 Jpmorgan Chase Bank, N.A. System and method for process scheduling
US7401156B2 (en) 2003-02-03 2008-07-15 Jp Morgan Chase Bank Method using control interface to suspend software network environment running on network devices for loading and executing another software network environment
US7379998B2 (en) 2003-03-31 2008-05-27 Jp Morgan Chase Bank System and method for multi-platform queue queries
CA2522429A1 (en) 2003-04-22 2004-11-04 Voice Genesis, Inc. Omnimodal messaging system
US20050266884A1 (en) * 2003-04-22 2005-12-01 Voice Genesis, Inc. Methods and systems for conducting remote communications
US20040230602A1 (en) * 2003-05-14 2004-11-18 Andrew Doddington System and method for decoupling data presentation layer and data gathering and storage layer in a distributed data processing system
US7366722B2 (en) * 2003-05-15 2008-04-29 Jp Morgan Chase Bank System and method for specifying application services and distributing them across multiple processors using XML
US7509641B2 (en) * 2003-05-16 2009-03-24 Jp Morgan Chase Bank Job processing framework
US7363369B2 (en) * 2003-10-16 2008-04-22 International Business Machines Corporation Monitoring thread usage to dynamically control a thread pool
US7792936B2 (en) * 2003-12-01 2010-09-07 International Business Machines Corporation Method and apparatus for virtualizing network resources
US20050131515A1 (en) * 2003-12-16 2005-06-16 Cully Edward H. Removable stent-graft
US20050144174A1 (en) * 2003-12-31 2005-06-30 Leonid Pesenson Framework for providing remote processing of a graphical user interface
US20050222990A1 (en) * 2004-04-06 2005-10-06 Milne Kenneth T Methods and systems for using script files to obtain, format and disseminate database information
US9734222B1 (en) 2004-04-06 2017-08-15 Jpmorgan Chase Bank, N.A. Methods and systems for using script files to obtain, format and transport data
AU2005234798B2 (en) * 2004-04-26 2009-01-08 Jp Morgan Chase Bank System and method for routing messages
US8849892B2 (en) * 2004-06-10 2014-09-30 Verizon Patent And Licensing Inc. Method and system for brokering messages in a distributed system
US7392471B1 (en) 2004-07-28 2008-06-24 Jp Morgan Chase Bank System and method for comparing extensible markup language (XML) documents
US7702594B2 (en) 2004-09-24 2010-04-20 Elster Electricity, Llc System and method for automated configuration of meters
US7742430B2 (en) 2004-09-24 2010-06-22 Elster Electricity, Llc System for automated management of spontaneous node migration in a distributed fixed wireless network
US20060146812A1 (en) * 2004-12-30 2006-07-06 Lexmark International, Inc. Methods and systems for routing data using a destination server
US7499933B1 (en) 2005-11-12 2009-03-03 Jpmorgan Chase Bank, N.A. System and method for managing enterprise application configuration
US7610172B2 (en) * 2006-06-16 2009-10-27 Jpmorgan Chase Bank, N.A. Method and system for monitoring non-occurring events
WO2007147207A1 (en) * 2006-06-21 2007-12-27 Richard Slamkovic Middleware broker
US8073384B2 (en) 2006-12-14 2011-12-06 Elster Electricity, Llc Optimization of redundancy and throughput in an automated meter data collection system using a wireless network
US8320302B2 (en) 2007-04-20 2012-11-27 Elster Electricity, Llc Over the air microcontroller flash memory updates
WO2009082761A1 (en) 2007-12-26 2009-07-02 Elster Electricity, Llc. Optimized data collection in a wireless fixed network metering system
US8525692B2 (en) 2008-06-13 2013-09-03 Elster Solutions, Llc Techniques for limiting demand from an electricity meter with an installed relay
US8001174B2 (en) * 2008-09-17 2011-08-16 Calamp Corp. Application process in communication system using central processor for forwarding request to destination processor based on connection status
US8203463B2 (en) 2009-02-13 2012-06-19 Elster Electricity Llc Wakeup and interrogation of meter-reading devices using licensed narrowband and unlicensed wideband radio communication
CN103384348B (zh) * 2013-05-29 2016-09-14 深圳市艾龙电子有限公司 一种ginga数字电视中间件在嵌入式数字电视平台上的实现方法
US10853091B2 (en) 2017-07-18 2020-12-01 Citrix Systems, Inc. Cloud to on-premises windows registry settings

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1989002129A1 (en) * 1987-09-04 1989-03-09 Digital Equipment Corporation Session control in network for digital data processing system which supports multiple transfer protocols
US5422999A (en) * 1989-06-19 1995-06-06 Digital Equipment Corporation Information object transport system
JPH03504173A (ja) * 1989-08-03 1991-09-12 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン ワークステーシヨンおよびワークステーシヨンを含むデータ処理ネツトワーク
JPH0797782B2 (ja) * 1991-09-18 1995-10-18 インターナショナル・ビジネス・マシーンズ・コーポレイション 異種トランザクションの調整方法
US5590281A (en) * 1991-10-28 1996-12-31 The United States Of Americas As Represented By The Secretary Of The Navy Asynchronous bidirectional application program processes interface for a distributed heterogeneous multiprocessor system
ES2154647T3 (es) * 1992-07-01 2001-04-16 Ericsson Telefon Ab L M Metodo y sistema de especificacion de interfaz independiente de la implementacion.
US5425028A (en) * 1992-07-16 1995-06-13 International Business Machines Corporation Protocol selection and address resolution for programs running in heterogeneous networks
JP3370704B2 (ja) * 1992-10-12 2003-01-27 株式会社日立製作所 通信制御方法
US5339434A (en) * 1992-12-07 1994-08-16 Trw Inc. Heterogeneous data translation system
US5515508A (en) * 1993-12-17 1996-05-07 Taligent, Inc. Client server system and method of operation including a dynamically configurable protocol stack
US5548723A (en) * 1993-12-17 1996-08-20 Taligent, Inc. Object-oriented network protocol configuration system utilizing a dynamically configurable protocol stack
US5546549A (en) * 1994-06-01 1996-08-13 International Business Machines Corporation Multi-path channel (MPC) interface with user transparent, unbalanced, dynamically alterable computer input/output channels
US5485460A (en) * 1994-08-19 1996-01-16 Microsoft Corporation System and method for running multiple incompatible network protocol stacks
US5557748A (en) * 1995-02-03 1996-09-17 Intel Corporation Dynamic network configuration

Also Published As

Publication number Publication date
US5790809A (en) 1998-08-04
EP0861471A1 (en) 1998-09-02
AU7679396A (en) 1997-06-11
MX9803869A (es) 1998-10-31
WO1997019411A1 (en) 1997-05-29

Similar Documents

Publication Publication Date Title
JP2000500940A (ja) レジストリ通信ミドルウェア
EP0956687B1 (en) Web request broker controlling multiple processes
EP1027796B1 (en) Distributed web application server
CA2308772C (en) Method and system for facilitating distributed software development in a distribution unaware manner
US6976258B1 (en) Providing quality of service guarantees to virtual hosts
EP1027795B9 (en) Method and apparatus for implementing an extensible authentication mechanism in a web application server
US6775700B2 (en) System and method for common information model object manager proxy interface and management
US7426737B2 (en) Method and apparatus for operating an open API network having a proxy
US20050038849A1 (en) Extensible framework for transferring session state
US6748436B1 (en) System, method and program for management of users, groups, servers and resources in a heterogeneous network environment
JPH08502841A (ja) 分散適用業務処理ネットワーク
WO1995017065A1 (en) Object-oriented network protocol configuration system
US6732360B1 (en) System and method for providing connection between client and heterogeneous database management systems
JP2004530194A (ja) 異なるオブジェクト・タイプのサーバとクライアントを結合するための方法およびブリッジ
WO2001035242A1 (en) Highly distributed computer server architecture and operating system
US5680303A (en) Communication device sharing on a local area network
US7502776B2 (en) Dynamic connection establishment using an object link
KR100516046B1 (ko) 효율적인 로드 밸런싱을 통하여 클라이언트 요청을처리하는 미들웨어 시스템
MXPA98003869A (es) Soporte logico personalizado de comunicaciones deregistro
CA2237646A1 (en) Registry communications middleware