JP2006523905A - パブリッシュ/サブスクライブ・メッセージングのためのシステム及び方法 - Google Patents

パブリッシュ/サブスクライブ・メッセージングのためのシステム及び方法 Download PDF

Info

Publication number
JP2006523905A
JP2006523905A JP2006515392A JP2006515392A JP2006523905A JP 2006523905 A JP2006523905 A JP 2006523905A JP 2006515392 A JP2006515392 A JP 2006515392A JP 2006515392 A JP2006515392 A JP 2006515392A JP 2006523905 A JP2006523905 A JP 2006523905A
Authority
JP
Japan
Prior art keywords
broker
client
message
remote
meta
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006515392A
Other languages
English (en)
Other versions
JP4452274B2 (ja
Inventor
レイノルズ、アンドリュー、デビッド
シャープ、クリストファー、エドワード
スタンフォード−クラーク、アンドリュー、ジェームズ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2006523905A publication Critical patent/JP2006523905A/ja
Application granted granted Critical
Publication of JP4452274B2 publication Critical patent/JP4452274B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • 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
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/547Messaging middleware

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Non-Reversible Transmitting Devices (AREA)
  • Amplifiers (AREA)
  • Burglar Alarm Systems (AREA)

Abstract

【課題】 パブリッシュ/サブスクライブ・メッセージング・システムを構築すること。
【解決手段】 本発明は、ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるクライアントを遠隔メッセージ・ブローカーに接続するためのメッセージ・ブローカリング・システムに関する。このシステムは、ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるメッセージ・ブローカーと、遠隔メッセージ・ブローカーを代理するメタブローカー・アプリケーション手段とを含む。ローカル・メッセージ・ブローカーは、クライアントとメタブローカー・アプリケーション手段との間でメッセージをプロキシ処理するためのパブリッシュ/サブスクライブ手段を含む。メタブローカー・アプリケーション手段は、ローカル・ブローカーと遠隔ブローカーとの間でメッセージをプロキシ処理するためのパブリッシュ/サブスクライブ手段を含む。

Description

本発明は、パブリッシュ/サブスクライブ(パブ/サブ)メッセージング・システムに関する。
パブリッシュ及びサブスクライブは、情報を複数のユーザに配布するための有効な方法である。パブリッシュ/サブスクライブ(パブ/サブ)・アプリケーションは、広域の動的で潜在的に多数の対象者に対して、タイミングよく、ビジネスのメッセージ及びトランザクションを取得する作業を非常に単純化するのに役立てることができる。
本発明の分野においては、パブ/サブ・アプリケーションは、典型的には、共通の目的をもつクライアントの「コミュニティ」のすべてが、特定のブローカーに接続して、クライアントが彼らの中でメッセージを送信及び受信することを可能にするように書かれることが知られている。明らかな例は、一方の組のクライアントがデータを作成し、別の組がそのデータを使用するプロデューサ/コンシューマ・アプリケーションである。別の例は、個々のクライアントが中央「ハブ」に接続して、請求、ゲームの更新、ハイスコアのような共通サービスにアクセスするオンライン・ゲーミングである。
しかし、この構成の問題は、パブ/サブ・アーキテクチャは「静的」なものであることである。クライアントの一人が、例えば、世界のどこかの異なるブローカーにパブリッシュされている何らかのデータにアクセスする必要がある場合、何らかのデータ・テーブル(例えば、或る市の一年間の平均降雨量)を更新する必要が滅多にない場合、又は、例えば、オンライン・ゲーミングのクライアントがゲーム製造業者にバグを報告する必要があったり、又は、新記録の「ハイスコア」を世界に認識させるためにパブリッシュする場合には、物事が困難になる。
ワールド・ワイド・ウェブ上では、ユーザは、ハイパーリンクを辿るだけで、容易に、「現在の」ウェブ・サーバから「飛び降り」て、別のウェブ・サーバに行くことができる。ウェブ・サービスにより、ユーザは、利用することを望むサービスに関する接続情報を検索することができる。しかし、これまで、このような代替的な情報の入手は、パブ/サブに可能ではなかった。
クライアントがその「現在の」ブローカーから切断し、異なるブローカーに再接続することは可能ではあるが、このことは、すべてのクライアントが、遠隔ブローカーに到達することを可能にする「外部」接続性を有することを前提とし、(例えば)オンライン・ゲーミング・システムの閉鎖的な世界においては、多くの場合、これは当て嵌まらない(さらに、なぜクライアントがこのような「汎用」アクセスを与えられるべきではないかといったセキュリティ上の理由がある)。そのため、解決されるべき問題は、閉鎖的なコミュニティのパブ/サブ・システムの制限された環境が与えられている場合に、パブ/サブが遠隔ブローカーにアクセスできるようにすることである。
米国特許第6405255号明細書は、エンティティが同じプロセスにあるか、異なるプロセスにあるかには関係のない、エンティティ間でのメッセージのパブリッシュを取り扱う。
WO 02/05507明細書は、任意の無線ネットワーク上で、データを、モバイル・コンピュータ又は非モバイル・コンピュータ上で稼動しているプロデューサから、中間のプロキシ・コンピュータ・プログラムを通して、モバイル・コンピュータ又は非モバイル・コンピュータ上で稼動している1以上の受信者に送ることによって、携帯型のメッセージ・フォーマット形態でデータを配信するためのメッセージング・プロキシ・システムを開示する。
したがって、中央ブローカー機能に接続された閉鎖的なパブ/サブ・コミュニティのユーザが、他の遠隔ブローカーと直接接続を取得することなく、パブ/サブ・メッセージをそれらの遠隔ブローカーと交換できるようにする必要性があり、これにより上述の欠点を緩和する。
本発明の第1の態様によれば、ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるクライアントを遠隔メッセージ・ブローカーに接続するためのメッセージ・ブローカリング・システムが提供され、このシステムは、前記遠隔ブローカーを代理するメタブローカー・アプリケーション手段を備え、前記メタブローカー・アプリケーション手段は、前記クライアントと前記遠隔ブローカーとの間でメッセージをプロキシ処理するためのパブリッシュ/サブスクライブ手段を含む。
クライアントと前記遠隔ブローカーとの間でメッセージをプロキシ処理するための手段は、クライアントから遠隔ブローカーに宛てられたメッセージを受信するための手段と、前記メッセージを遠隔ブローカーに転送するための手段とを含むことが好ましい。
受信するための手段は、遠隔ブローカーに宛てられたメッセージを受信するようにサブスクライブするための手段を含むことが好ましい。
クライアントと前記遠隔ブローカーとの間でメッセージをプロキシ処理するための手段は、遠隔ブローカーから、前記クライアントに宛てられたメッセージを受信するための手段を含み、メッセージ・ブローカリング・システムは、さらに、前記メッセージをクライアントに転送するための手段を含むことが好ましい。
メッセージ・ブローカリング・システムは、さらに、サブスクリプション要求を前記クライアントから受信するための手段を含むことが好ましい。サブスクリプション要求は、クライアントが、遠隔ブローカーから受信することを望む情報を示すことがましい。メタブローカー・アプリケーション手段は、このような情報を遠隔ブローカーから受信するようにサブスクライブするための手段を含むことが好ましい。
メッセージ・ブローカリング・システムは、さらに、クライアントのサブスクリプション要求により、メッセージを遠隔ブローカーからクライアントに転送するための手段を含むことが好ましい。
サブスクリプション要求は、クライアントが受信することを望む情報について少なくとも1つのトピックを示すことが好ましい。
別の態様によれば、ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるクライアントを遠隔メッセージ・ブローカーに接続する方法が提供され、ここでは、メタブローカー・アプリケーション手段が、前記遠隔ブローカーを代理しており、かつ、該方法は、パブリッシュ/サブスクライブを用いてメタブローカー・アプリケーション手段において受信されたメッセージを、前記クライアントと前記遠隔ブローカーとの間でプロキシ処理することを含む。
別の態様によれば、ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるクライアントを遠隔メッセージ・ブローカーに接続するメタブローカー・アプリケーションが提供され、前記メタブローカー・アプリケーションは、遠隔ブローカーを代理し、メタブローカー・アプリケーションは、メタブローカー・アプリケーション手段において受信されたメッセージを、前記クライアントと前記遠隔ブローカーとの間でプロキシ処理するパブリッシュ/サブスクライブを用いてステップを実行するようにされたプログラム・コード手段を含む。
メタブローカー・アプリケーションは、ローカル・パブリッシュ・サブスクライブ・メッセージング・システムのローカル・ブローカーに存在できることに注目されたい。或いは、これを、ローカル・ブローカーと関連させてもよい。
別の態様によれば、ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるクライアントを遠隔メッセージ・ブローカーに接続するメッセージ・ブローカリング・システムが提供され、このシステムは、ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるメッセージ・ブローカーと、前記遠隔メッセージ・ブローカーを代理するメタブローカー・アプリケーション手段とを備え、前記ローカル・メッセージ・ブローカーが、クライアントとメタブローカー・アプリケーション手段との間でメッセージをプロキシ処理するためのパブリッシュ/サブスクライブ手段を含み、前記メタブローカー・アプリケーションが、ローカル・ブローカーと遠隔ブローカーとの間でメッセージをプロキシ処理するためのパブリッシュ/サブスクライブ手段を含む。
別の態様によれば、ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおいて遠隔メッセージ・ブローカーに接続するためのクライアントが提供され、該クライアントは、遠隔ブローカーに対する接続を要求するための手段を含むクライアント・アプリケーションと、前記接続要求に応答して、前記要求を前記ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるローカル・メッセージ・ブローカーにパブリッシュするための接続手段とを含み、前記要求はメタブローカー・アプリケーション手段により受信され、前記メタブローカー・アプリケーション手段は遠隔ブローカーを代理する。
クライアントからの接続要求は、メッセージを遠隔ブローカーにパブリッシュする要求を含むことができる。或いは、クライアントからの接続要求は、特定の情報を遠隔ブローカーから受信するサブスクリプション要求を含むことができる。
一実施形態によれば、少なくとも1つのクライアント、1次ブローカー、及び2次ブローカー手段を備えたパブリッシュ/サブスクライブ・メッセージング・システムが提供され、ここでは、1次ブローカーは、2次ブローカー手段とパブリッシュ/サブスクライブ通信するように構成され、少なくとも1つのクライアントは、第1のブローカーとのパブリッシュ/サブスクライブにより、2次ブローカー手段から情報を取得するように構成される。
一実施形態においては、2次ブローカー手段は、メタブローカーとさらに別のブローカーとを含み、メタブローカーは、このさらに別のブローカーのプロキシとして作用するように構成される。
一実施形態においては、クライアントは、2次ブローカー手段に接続するためのJMSサービス手段を含む。
一実施形態においては、JMSサービスは、UDDI手段を含む。
一実施形態においては、少なくとも1つのクライアント、1次ブローカー、及び2次ブローカー手段を有するシステムにおいて、パブリッシュ/サブスクライブ・メッセージングをする方法が提供され、この方法は、パブリッシュ/サブスクライブ・メッセージングにより1次ブローカーと2次ブローカー手段との間で通信するステップと、少なくとも1つのクライアントにおいて、第1のブローカーとのパブリッシュ/サブスクライブにより、2次ブローカー手段から情報を取得するステップとを含む。
本発明は、さらに、ソフトウェアによっても実施できることに注目されたい。
簡単に述べると、本発明の好ましい形態においては、ユーザがすでに接続されているパブ/サブ「コミュニティ」ブローカーと、該「コミュニティ」ブローカーと1以上の遠隔ブローカーとの間のゲートウェイとして作用する新しい「プロキシ」アプリケーション(ここでは「メタブローカー」と呼ばれる)とを使用することにより、ユーザが「通常」接続されているブローカー以外のブローカー上にデータをパブリッシュし、またそのブローカー上のデータにサブサブスクライブする能力を一時的に取得するための機構を提供する。
この機構の重要な利点は、「コミュニティ」ブローカーに接続された幾つかのクライアントが、「メタブローカー」から遠隔ブローカーへの単一の接続を使用できることであり、このことは、すべてのクライアントの代わりに、メタブローカーが処理することができる、拡張性、接続性、又はファイアウォールの問題がある場合に有益である。
遠隔ブローカーのサービスは、ウェブ・サービス・ディスクリプション・ランゲージ(WSDL)、ユニバーサル・ディスクリプション・ディスカバリー・アンド・インテグレーション(UDDI)のようなウェブ・サービス機構を通して記述及び宣伝することができ、遠隔ブローカーに対する接続をどのように配置し、確立するかを見出すのに利便性のある方法を与える。
既存のパブ/サブ接続により、メッセージを遠隔ブローカーに「プロキシ処理する」このようなシステムは、接続の詳細がウェブ・サービス形式の検索を用いて取得され、「メッセージ・ブローカー・ウェブ・サービスを持ち、異種の多数のブローカーがプロキシ処理するオンデマンド・システム」と考えることができる。
ここで、添付図面を参照して、単なる一例に過ぎないものとして、本発明の好ましい実施形態を含む、メッセージ・ブローカー・ウェブ・サービスを持ち、異種の多数のブローカーがプロキシ処理するオンデマンド・システムを説明する。
図1を参照すると、パブ/サブ・メッセージング・システム100は、多数のパブ/サブ・クライアント(その中の3つである110、120、及び130が示される)を有しており、これらの各々は、ローカルの「コミュニティ」ブローカー140に接続されている。「メタブローカー」アプリケーション150もまた「コミュニティ」ブローカー140のクライアントであり、これは永続的に接続されているもので、ワイルドカード・トピック「メタブローカー/#」(「#」はトピックのワイルドカード記号である)にサブスクライブして、「metabroker」の名前が前に付いたトピック、例えば、:metabroker/a/b、を有するすべてのメッセージを受け取るようになっている。
クライアント・アプリケーションが遠隔ブローカー160にアクセスすることを望む場合には、「メタブローカー」Java(商標) Message Service(JMS)サービスに対して接続を要求する(Java及びすべてのJava関連の商標は、Sun Microsystems,Inc.の米国及びその他の国における商標又は登録商標)。
このJMSサービスは、実際には、クライアント上で稼動している(JMS API−アプリケーション・プログラミング・インターフェース−114、メタブローカー JMS TopicConnectionFactory(TCF)116、及びコミュニティJMS TCF118で構成された)ソフトウェア・ライブラリ112であり、クライアント・アプリケーションには、遠隔ブローカーと接続しているという印象を与えるが、実際は、メタブローカー150がサブスクライバとして受信するメッセージを、コミュニティ・ブローカー140にパブリッシュすることにより、コミュニティ・ブローカー140に対する「通常の」(既存の)接続を使用して、特別なメッセージをメタブローカー150に送信する。メタブローカー150は、要求される遠隔ブローカー160に接続し、クライアント・アプリケーション110への及びクライアント・アプリケーション110からのメッセージをプロキシ処理し、これらはすべて、コミュニティ・ブローカー140を通るパブ/サブにより行われる。事実上、これは「パブ/サブ上のパブ/サブ」と考えることができる。
JMS接続オブジェクトを作成する場合には、クライアント・アプリケーションは、ユーザが使用することを望む遠隔ブローカーのサービスに関する識別子をパラメータとして送る。これは、IPアドレス及びポート、又はドメイン名及びポートのように明示的なものであってもよいし、ウェブ・サービスのサービス名として処理される「サービス名」であってもよく、UDDI検索は、そのブローカーのサービスに関する接続情報を解決するように実行される。「サービス名」から物理的な接続の詳細をマッピングするには多数の方法があり、UDDIは一例に過ぎないことが理解される。
メタブローカー・サービスのためのJMSの実装は、クライアントが、通常、メッセージをメタブローカーに、及びメタブローカーから流すように接続されているコミュニティ・ブローカー140に対する既存の接続を使用する。このことは、JMSインターフェースによって行ってもよいし、パブリッシュ/サブスクライブ・メッセージング・モデルをサポートする他のメッセージング機能によって行ってもよい。
以下では、パブ/サブ・メッセージング・システムにおけるメタブローカー・アプリケーションにより、パブ/サブ・メッセージング・モデルを実装するのに用いることができるトピック及びメッセージ構造の1つの可能性のある実装が述べられる。以下の説明においては、メッセージ本体は、例えば、XML又は名前/値の対のような好適に構造化されたデータ表現を用いることを前提とする。クライアントの動作が述べられる場合には、これは、典型的には、クライアント・アプリケーションがアクセスするライブラリとして実装される、メタブローカーのJMSサービスのクライアント側の実装であることが理解される。メタブローカー・アプリケーションの動作は、明確にすることが必要である場合に説明される。クライアント・アプリケーションは、単に、通常のJMS APIを呼び出して、JMSライブラリ層(すなわち、図の112)において起こっているコミュニティ・ブローカーによるプロキシ処理に気付くことなく、論理的に接続された遠隔ブローカー上にデータをパブリッシュし、また遠隔ブローカー上のデータにサブスクライブする。
換言すると、クライアント・アプリケーションは、すでに、どのようにコミュニティ・ブローカーに到達するかを知っている(又は、どのように接続するかについての命令をどのディレクトリに要求するかを知っている。例えば、Javaネーミング及びディレクトリ・インターフェース検索)。コミュニティ・ブローカーは、パブリッシュ/サブスクライブを用いてメタブローカー・アプリケーションと通信し、メタブローカー・アプリケーションが遠隔ブローカーに接続する。
接続
アプリケーションからの「接続」要求に応答して、クライアントは:
トピック:metabroker/request/connect
メッセージ:
−このクライアントの代わりにメタブローカーが接続する遠隔ブローカーの識別情報(IPアドレス及びポート、又はメタブローカーがUDDIディレクトリ照会を用いてIPアドレス及びポートに解決することになるウェブ・サービスのサービス名とすることができる)
−可能な認証情報(例えば、ユーザID、パスワード)
−(一時的に用いるための)クライアント独自の識別子(クライアントUID)
を送信する。
クライアントは、
トピック:metabroker/response/{client UID}connack
にサブスクライブする。
アドレス解決及び遠隔ブローカーへの接続が成功すると、メタブローカー・アプリケーションは、メッセージをコミュニティ・ブローカーにパブリッシュする:
トピック:metabroker/response/{client UID}connack
メッセージ:
−メタブローカー・アプリケーションによる遠隔ブローカーへの接続が成功したかどうかを示す結果コード
−セッション識別子(セッションID)
接続が成功したと仮定して(戻りコードにより示される)、クライアントは、コミュニティ・ブローカーにおいて:
metabroker/response/{client UID}connack
からアンサブスクライブし、コミュニティ・ブローカーにおいて:
metabroker/response/{session ID}#
(すなわち、metabroker/response/{session ID}で始まるいずれかのトピック)
にサブスクライブする。
クライアントは、応答メッセージをメタブローカーから受信し(サブスクリプションにより)、適当なJMS戻りコードを通して、要求の結果をアプリケーションに通知できるようになる。
パブリッシュ
アプリケーションからの「パブリッシュ」要求に応答して、クライアントは:
トピック:metabroker/request/{session ID}/publish
メッセージ:
−アプリケーションから渡されたトピック
−アプリケーションから渡されたメッセージ本体
−サービスの質/永続性配信命令フラグ
−クライアント・メッセージ識別子(メッセージID)
を送信する。
メッセージが、メタブローカー・アプリケーションにより遠隔ブローカーに首尾よくパブリッシュされた場合には、メタブローカーは、メッセージをコミュニティ・ブローカーにパブリッシュする:
トピック:metabroker/response/{session ID}/puback
メッセージ:
−メッセージID
−場合によっては結果コード
クライアントは、このメッセージを受信し(サブスクリプションにより)、適当なJMS戻りコードを通して、要求の結果をアプリケーションに通知できるようになる。
サブスクライブ
アプリケーションからの「サブスクライブ」要求に応答して、クライアントは、
トピック:metabroker/request/{session ID}/subscribe
メッセージ:
−アプリケーションにより要求されたトピック
−他のサブスクリプション・フラグ(例えば、サービスの質、耐久性)
−クライアント・メッセージID(メッセージID)
を送信する。
メタブローカーは、このメッセージを受信し、クライアントの代わりに要求されたトピックにサブスクライブする。
遠隔サブスクリプションが確認された場合には、メタブローカーは、メッセージをコミュニティ・ブローカーにパブリッシュする:
トピック:metabroker/response/{session ID}/suback
メッセージ:
−メッセージID
−サブスクリプション確認結果コード
クライアントは、このメッセージを受信し(サブスクリプションにより)、適当なJMS戻りコードを通して、要求の結果をアプリケーションに通知できるようになる。
アンサブスクライブ
アンサブスクライブは、サブスクライブと同様な方法により実装され、さらに詳細に述べる必要はない。
着信パブリケーション
メタブローカーが遠隔ブローカーから、メタブローカー・アプリケーションを通して遠隔ブローカーのセッションを有するコミュニティ・ブローカーのクライアントの1つに宛てられたメッセージを受け取った場合には、該メタブローカーは、このメッセージがどのクライアント宛てであるかを判断し(ルックアップ表、及び、場合によっては、図示されていないパブリケーション「マッチング・エンジン」を用いて)、メッセージをコミュニティ・ブローカーにパブリッシュする:
トピック:metabroker/response/{session ID}/publish
メッセージ:
−トピック
−メッセージ本体
クライアント・アプリケーションは、メッセージを受信し、適当な機構を起動させて、先に配置されたサブスクリプションと適合する着信メッセージを受信したことをアプリケーションに通知する。
遠隔ブローカーは、インタレストを登録した(サブスクライブした)各々のクライアントにパブリケーション・メッセージのコピーを送信することに注目されたい。メタブローカー・アプリケーションは、1つのこのようなサブスクライバであり、コミュニティ・ブローカーによる「サブスクライブ」要求に基づいて、そのクライアントの代わりにサブスクライブしている。
幾つかのブローカー(又は、幾つかの接続プロトコル)は、その時点で実際には接続されていなかったとしても、メッセージをサブスクライバに対して保持することを可能にする。すなわち、メタブローカーは(このようなプロトコルを使用していた場合には)、そのクライアントの1つの代わりに幾つかのトピックにサブスクライブし、次いで切断され、後でブローカーに戻り、そのサブスクリプションと適合するメッセージを収集し、次いで、これらをそのクライアントに転送することができる。IBMのWebSphere MQは1つのこのようなプロトコルである。このようなサブスクリプションは、「永続サブスクリプション」として知られており、すなわち、これらは、クライアントが切断した場合でも「続き」、要求されなくなったときには、明示的にキャンセル(アンサブスクライブ)されねばならない。
切断
クライアントが、遠隔ブローカーからの切断を要求した場合には、クライアントのライブラリは、メッセージをパブリッシュする:
トピック:metabroker/request/{session ID}/disconnect
遠隔ブローカーから切断した後、メタブローカーは、メッセージをコミュニティ・ブローカーにパブリッシュする:
トピック:metabroker/response/{session ID}/discack
クライアントは、このメッセージを受信し(サブスクリプションにより)、適当なJMS戻りコードを通して、要求の結果をアプリケーションに通知できるようになる。
クライアントは、次いで、コミュニティ・ブローカーにおいて、:
metabroker/response/{session ID}#
からアンサブスクライブする。
上述の、メッセージ・ブローカー・ウェブ・サービスを持ち、異種の多数のブローカーがプロキシ処理するオンデマンド・システムは、以下の利点を与えることが理解される。
「コミュニティ」ブローカーに接続されたクライアントは、この「コミュニティ」ブローカーに対する単一の既存の接続を使用することにより、直接のネットワーク接続なしで、遠隔パブ/サブ・ブローカーにアクセスすることができる。
「コミュニティ」ブローカーに接続された幾つかのクライアントは、「メタブローカー」から遠隔ブローカーへの単一の接続を使用することができ、このことは、すべてのクライアントの代わりに、メタブローカーが処理することができる、拡張性、接続性、又はファイアウォールの問題がある場合に有益である。
遠隔ブローカーのサービスは、WSDL、UDDIのようなウェブ・サービス機構を通して記述及び宣伝することができ、遠隔ブローカーに対する接続をどのように配置し、確立するかを見出すのに利便性のある方法を与える。
パブリッシュ/サブスクライブ・メッセージングのための上述の方法は、プロセッサ(図示せず)上で稼動しているソフトウェアで実行することができ、このソフトウェアは、磁気又は光学コンピュータ・ディスクのような任意の好適なデータ・キャリア(図示せず)で配布されるコンピュータ・プログラム要素として提供することができることが理解される。
要約すると、上述の、メッセージ・ブローカー・ウェブ・サービスを持ち、異種の多数のブローカーがプロキシ処理するオンデマンド・システムは、「コミュニティ」ブローカーに接続されたクライアントが、この「コミュニティ」ブローカーに対する単一の既存の接続を使用することにより、直接のネットワーク接続なしで、遠隔パブ/サブ・ブローカーにアクセスすることができるという利点を与えることが理解される。さらに、「コミュニティ」ブローカーに接続された幾つかのクライアントは、「メタブローカー」から遠隔ブローカーへの単一の接続を使用することができ、このことは、すべてのクライアントの代わりに、メタブローカーが処理することができる拡張性、接続性、又はファイアウォールの問題がある場合に有益である。遠隔ブローカーのサービスは、WSDL、UDDI、のようなウェブ・サービス機構を通して記述及び宣伝することができ、遠隔ブローカーに対する接続をどのように配置し、確立するかを見出すのに利便性のある方法を与える。
本発明の好ましい実施形態を含むパブリッシュ・システムのブロック概略図を示す。

Claims (19)

  1. ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるクライアントを遠隔メッセージ・ブローカーに接続するためのメッセージ・ブローカリング・システムであって、
    前記遠隔ブローカーを代理するメタブローカー・アプリケーション手段を備え、
    前記メタブローカー・アプリケーション手段が、前記クライアントと前記遠隔ブローカーとの間でメッセージをプロキシ処理するためのパブリッシュ/サブスクライブ手段を含む、
    メッセージ・ブローカリング・システム。
  2. クライアントと前記遠隔ブローカーとの間でメッセージをプロキシ処理するための手段が、
    クライアントから遠隔ブローカーに宛てられたメッセージを受信するための手段と、
    前記メッセージを遠隔ブローカーに転送するための手段と、
    を備えた請求項1に記載のメッセージ・ブローカリング・システム。
  3. 前記受信するための手段が、
    遠隔ブローカーに宛てられたメッセージを受信するようにサブスクライブするための手段、
    を備えた請求項2に記載のメッセージ・ブローカリング・システム。
  4. クライアントと前記遠隔ブローカーとの間でメッセージをプロキシ処理するための手段が、
    遠隔ブローカーから、前記クライアントに宛てられたメッセージを受信するための手段を備え、
    メッセージ・ブローカリング・システムがさらに、
    前記メッセージをクライアントに転送するための手段、
    を備えた請求項1、請求項2、又は請求項3に記載のメッセージ・ブローカリング・システム。
  5. 前記クライアントが遠隔ブローカーから受信することを望む情報を示すサブスクリプション要求を前記クライアントから受信するための手段を備え、
    メタブローカー・アプリケーション手段が、この情報を前記遠隔ブローカーから受信するようにサブスクライブするための手段を含む、
    前記請求項のいずれか1項に記載のメッセージ・ブローカリング・システム。
  6. クライアントのサブスクリプション要求により、メッセージを遠隔ブローカーからクライアントに転送するための手段、
    を備えた請求項5に記載のメッセージ・ブローカリング・システム。
  7. サブスクリプション要求が、クライアントが受信することを望む情報について少なくとも1つのトピックを示す、請求項5又は請求項6に記載のメッセージ・ブローカリング・システム。
  8. ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるクライアントを遠隔メッセージ・ブローカーに接続する方法であって、メタブローカー・アプリケーション手段が前記遠隔ブローカーを代理しており、
    パブリッシュ/サブスクライブを用いて、メタブローカー・アプリケーション手段で受信されたメッセージを前記クライアントと前記遠隔ブローカーとの間でプロキシ処理するステップ、
    を含む方法。
  9. クライアントと前記遠隔ブローカーとの間でメッセージをプロキシ処理するステップが、
    メタブローカー・アプリケーション手段において、クライアントから遠隔ブローカーに宛てられたメッセージを受信するステップと、
    前記メッセージを遠隔ブローカーに転送するステップと、
    を含む請求項8に記載の方法。
  10. 遠隔ブローカーに宛てられたメッセージを受信するようにサブスクライブするステップ、
    を含む請求項9に記載の方法。
  11. クライアントと前記遠隔ブローカーとの間でメッセージをプロキシ処理するステップが、
    メタブローカー・アプリケーション手段において、遠隔ブローカーからの、クライアントに宛てられたメッセージを受信するステップを含み、
    方法がさらに、
    前記メッセージをクライアントに転送するステップ、
    を含む請求項8、請求項9又は請求項10に記載の方法。
  12. 前記クライアントが遠隔ブローカーから受信することを望む情報を示すサブスクリプション要求を前記クライアントから受信するステップを含み、
    メタブローカー・アプリケーション手段が、この情報を前記遠隔ブローカーから受信するようにサブスクライブする、
    請求項8から請求項11までのいずれか1項に記載の方法。
  13. クライアントのサブスクリプション要求により、遠隔ブローカーからクライアントにメッセージを転送するステップ、
    を含む請求項12に記載の方法。
  14. サブスクリプション要求が、クライアントが受信することを望む情報について少なくとも1つのトピックを示す請求項12又は請求項13に記載の方法。
  15. ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるクライアントを遠隔メッセージ・ブローカーに接続するためのメタブローカー・アプリケーションであって、前記メタブローカー・アプリケーションが遠隔ブローカーを代理し、メタブローカー・アプリケーションが、
    パブリッシュ/サブスクライブを用いてメタブローカー・アプリケーション手段において受信されたメッセージを、前記クライアントと前記遠隔ブローカーとの間でプロキシ処理するステップ、
    を実行するようにされたプログラム・コード手段を含むメタブローカー・アプリケーション。
  16. ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるクライアントを遠隔メッセージ・ブローカーに接続するためのメッセージ・ブローカリング・システムであって、
    前記ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるメッセージ・ブローカーと、
    前記遠隔メッセージ・ブローカーを代理するメタブローカー・アプリケーション手段とを備え、
    前記ローカル・メッセージ・ブローカーが、クライアントとメタブローカー・アプリケーション手段との間でメッセージをプロキシ処理するためのパブリッシュ/サブスクライブ手段を含み、
    前記メタブローカー・アプリケーション手段が、ローカル・ブローカーと遠隔ブローカーとの間でメッセージをプロキシ処理するためのパブリッシュ/サブスクライブ手段を含む、
    メッセージ・ブローカリング・システム。
  17. ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおいて遠隔メッセージ・ブローカーに接続するためのクライアントであって、
    遠隔ブローカーに対する接続を要求するための手段を含むクライアント・アプリケーションと、
    前記接続要求に応答して、前記要求を前記ローカル・パブリッシュ/サブスクライブ・メッセージング・システムにおけるローカル・メッセージ・ブローカーにパブリッシュするための接続手段とを備え、
    前記要求はメタブローカー・アプリケーション手段により受信され、前記メタブローカー・アプリケーション手段は遠隔ブローカーを代理するものである、
    クライアント。
  18. クライアントからの接続要求が、メッセージを遠隔ブローカーにパブリッシュする要求を含む請求項17に記載のクライアント。
  19. クライアントからの接続要求が、特定の情報を遠隔ブローカーから受信するサブスクリプション要求を含む請求項17に記載のクライアント。
JP2006515392A 2003-03-06 2004-02-17 パブリッシュ/サブスクライブ・メッセージングのためのシステム及び方法 Expired - Fee Related JP4452274B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB0305066.3A GB0305066D0 (en) 2003-03-06 2003-03-06 System and method for publish/subscribe messaging
PCT/GB2004/000611 WO2004080030A1 (en) 2003-03-06 2004-02-17 System and method for publish/subscribe messaging

Publications (2)

Publication Number Publication Date
JP2006523905A true JP2006523905A (ja) 2006-10-19
JP4452274B2 JP4452274B2 (ja) 2010-04-21

Family

ID=9954184

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006515392A Expired - Fee Related JP4452274B2 (ja) 2003-03-06 2004-02-17 パブリッシュ/サブスクライブ・メッセージングのためのシステム及び方法

Country Status (9)

Country Link
US (2) US7437417B2 (ja)
EP (1) EP1606917B1 (ja)
JP (1) JP4452274B2 (ja)
KR (1) KR100800351B1 (ja)
CN (1) CN100568873C (ja)
AT (1) ATE406029T1 (ja)
DE (1) DE602004015952D1 (ja)
GB (1) GB0305066D0 (ja)
WO (1) WO2004080030A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008527538A (ja) * 2005-01-06 2008-07-24 テーベラ・インコーポレーテッド メッセージング・システム内のキャッシング・エンジン
JP2014209341A (ja) * 2013-04-12 2014-11-06 エフエムアール エルエルシー アンサンブルコンピューティング
JP2016522946A (ja) * 2013-05-20 2016-08-04 パックサイズ,エルエルシー ローカルまたは分散型コンピュータ・システムにおける柔軟なノード構成方法およびシステム
JP2017523519A (ja) * 2014-07-21 2017-08-17 コンヴィーダ ワイヤレス, エルエルシー Mqttプロトコルを使用するサービス層インターワーキング
JP2017531389A (ja) * 2014-09-17 2017-10-19 コンヴィーダ ワイヤレス, エルエルシー サービス層を介する第三者サービスへのアクセスを可能にするシステムおよび方法
JP2017224032A (ja) * 2016-06-13 2017-12-21 日本電信電話株式会社 分散連携プロキシおよびそれを用いた非同期メッセージングシステム
JP2020510919A (ja) * 2017-02-17 2020-04-09 ホーム ボックス オフィス, インコーポレイテッド サービス間通信のエンドポイント抽象化

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040225717A1 (en) * 2003-05-09 2004-11-11 Alcatel Network architecture for message based policy distribution
US7831698B2 (en) * 2004-09-13 2010-11-09 The Boeing Company Systems and methods enabling interoperability between Network Centric Operation (NCO) environments
US20060123116A1 (en) * 2004-12-02 2006-06-08 Matsushita Electric Industrial Co., Ltd. Service discovery using session initiating protocol (SIP)
EP1849092A4 (en) * 2005-01-06 2010-01-27 Tervela Inc END-TO-END-PUBLISH / SUBSCRIBE MIDDLEWARE ARCHITECTURE
US8200563B2 (en) * 2005-09-23 2012-06-12 Chicago Mercantile Exchange Inc. Publish and subscribe system including buffer
GB0521355D0 (en) * 2005-10-19 2005-11-30 Ibm Publish/subscribe system and method for managing subscriptions
WO2007126272A1 (en) * 2006-04-28 2007-11-08 Samsung Electronics Co., Ltd. System and method for performing a delegation operation
US20100299680A1 (en) * 2007-01-26 2010-11-25 Macgaffey Andrew Novel JMS API for Standardized Access to Financial Market Data System
US7865553B1 (en) * 2007-03-22 2011-01-04 Google Inc. Chat system without topic-specific rooms
US7899869B1 (en) 2007-03-22 2011-03-01 Google Inc. Broadcasting in chat system without topic-specific rooms
WO2009080096A1 (en) * 2007-12-19 2009-07-02 Telefonaktiebolaget Lm Ericsson (Publ) Publish/subscribe networks
US20100113158A1 (en) * 2008-11-06 2010-05-06 International Business Machines Corporation Method and apparatus for hosting a distributed virtual world system
US20100113159A1 (en) * 2008-11-06 2010-05-06 International Business Machines Corporation Method and apparatus for partitioning virtual worlds using prioritized topic spaces in virtual world systems
US9569753B2 (en) 2009-10-30 2017-02-14 Verisign, Inc. Hierarchical publish/subscribe system performed by multiple central relays
US8982882B2 (en) 2009-11-09 2015-03-17 Verisign, Inc. Method and system for application level load balancing in a publish/subscribe message architecture
US9235829B2 (en) * 2009-10-30 2016-01-12 Verisign, Inc. Hierarchical publish/subscribe system
US9269080B2 (en) 2009-10-30 2016-02-23 Verisign, Inc. Hierarchical publish/subscribe system
US9762405B2 (en) 2009-10-30 2017-09-12 Verisign, Inc. Hierarchical publish/subscribe system
US9047589B2 (en) 2009-10-30 2015-06-02 Verisign, Inc. Hierarchical publish and subscribe system
US8489722B2 (en) * 2009-11-24 2013-07-16 International Business Machines Corporation System and method for providing quality of service in wide area messaging fabric
US8505033B2 (en) * 2010-08-26 2013-08-06 Verizon Patent And Licensing Inc. Universal registration in broker-based messaging systems and methods
US8800055B2 (en) * 2010-10-20 2014-08-05 International Business Machines Corporation Node controller for an endpoint in a cloud computing environment
US8874666B2 (en) 2011-02-23 2014-10-28 International Business Machines Corporation Publisher-assisted, broker-based caching in a publish-subscription environment
US8959162B2 (en) 2011-02-23 2015-02-17 International Business Machines Corporation Publisher-based message data cashing in a publish-subscription environment
US8990301B2 (en) 2012-08-22 2015-03-24 International Business Machines Corporation Broker designation and selection in a publish-subscription environment
US9667671B2 (en) * 2013-05-13 2017-05-30 Xerox Corporation Method and system for facilitating communication between message consumers and message producers
GB2520246A (en) 2013-11-12 2015-05-20 Ibm Method for accessing business object resources and machine-to-machine communication environment
US10645181B2 (en) 2016-12-12 2020-05-05 Sap Se Meta broker for publish-subscribe-based messaging
EP3419250B1 (en) * 2017-06-23 2020-03-04 Vestel Elektronik Sanayi ve Ticaret A.S. Methods and apparatus for distributing publish-subscribe messages
CN111639936B (zh) * 2020-05-24 2023-08-25 中信银行股份有限公司 交易信息的获取方法、装置、电子设备及可读存储介质
US11354161B2 (en) 2020-08-10 2022-06-07 Bank Of America Corporation Controlling memory utilization by a topic in a publish-subscribe environment
US11340828B2 (en) 2020-08-10 2022-05-24 Bank Of America Corporation Restoring messages to a memory utilized by a topic in a publish-subscribe environment
KR102422229B1 (ko) 2020-12-18 2022-07-18 주식회사 비카누스 메시지 브로커 기반 데이터 처리 시스템

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4508729A (en) * 1979-12-07 1985-04-02 Adir Substituted iminodiacids, their preparation and pharmaceutical compositions containing them
FR2620709B1 (fr) * 1987-09-17 1990-09-07 Adir Procede de synthese industrielle du perindopril et de ses principaux intermediaires de synthese
FR2620699B1 (fr) * 1987-09-17 1990-06-01 Adir Procede de synthese d'alpha amino acides n alkyles et de leurs esters. application a la synthese de carboxyalkyl dipeptides
US5870605A (en) * 1996-01-18 1999-02-09 Sun Microsystems, Inc. Middleware for enterprise information distribution
EP0906703A4 (en) * 1996-06-18 2000-03-15 Compuserve Inc INTEGRATED MESSAGING SYSTEM BY EMAIL, FAX AND VOICE BOX
US6549956B1 (en) 1998-11-30 2003-04-15 Hewlett Packard Company Mechanism for connecting disparate publication and subscribe domains via the internet
US6405266B1 (en) * 1998-11-30 2002-06-11 Hewlett-Packard Company Unified publish and subscribe paradigm for local and remote publishing destinations
GB2348025A (en) 1999-03-19 2000-09-20 Ibm Message broker providing a publish/subscribe service and method of processing messages in a publish/subscribe environment
US6877023B1 (en) 2000-01-28 2005-04-05 Softwired, Inc. Messaging system for delivering data in the form of portable message formats between message clients
EP1130845A3 (en) 2000-02-18 2001-09-12 Agilent Technologies Inc. a Delaware Corporation Publish/subscribe system
AU2001237561A1 (en) * 2000-03-22 2001-10-03 British Telecommunications Public Limited Company Data access
US6801936B1 (en) * 2000-04-07 2004-10-05 Arif Diwan Systems and methods for generating customized bundles of information
US6721779B1 (en) 2000-07-07 2004-04-13 Softwired Ag Messaging proxy system
US7603415B1 (en) * 2000-08-15 2009-10-13 ART Technology Group Classification of electronic messages using a hierarchy of rule sets
US6883014B1 (en) * 2000-10-19 2005-04-19 Amacis Limited Electronic message distribution
US7152094B1 (en) * 2001-07-31 2006-12-19 Sprint Communications Company L.P. Middleware brokering system adapter
CN100438398C (zh) 2001-08-15 2008-11-26 普里凯许公司 在发布-订单网络中通过有效载荷检查和订单处理的包路由
US20030135556A1 (en) 2001-12-14 2003-07-17 International Business Machines Corporation Selection of communication strategies for message brokers or publish/subscribe communications

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7970918B2 (en) 2005-01-06 2011-06-28 Tervela, Inc. End-to-end publish/subscribe middleware architecture
US8321578B2 (en) 2005-01-06 2012-11-27 Tervela, Inc. Systems and methods for network virtualization
US9253243B2 (en) 2005-01-06 2016-02-02 Tervela, Inc. Systems and methods for network virtualization
JP2008527538A (ja) * 2005-01-06 2008-07-24 テーベラ・インコーポレーテッド メッセージング・システム内のキャッシング・エンジン
JP2014209341A (ja) * 2013-04-12 2014-11-06 エフエムアール エルエルシー アンサンブルコンピューティング
JP2016522946A (ja) * 2013-05-20 2016-08-04 パックサイズ,エルエルシー ローカルまたは分散型コンピュータ・システムにおける柔軟なノード構成方法およびシステム
US10491687B2 (en) 2013-05-20 2019-11-26 Packsize Llc Method and system for flexible node composition on local or distributed computer systems
US10313858B2 (en) 2014-07-21 2019-06-04 Convida Wireless, Llc Service layer interworking using MQTT protocol
JP2017523519A (ja) * 2014-07-21 2017-08-17 コンヴィーダ ワイヤレス, エルエルシー Mqttプロトコルを使用するサービス層インターワーキング
US10931762B2 (en) 2014-09-17 2021-02-23 Convida Wireless, Llc Systems and methods for enabling access to third party services via a service layer
JP2017531389A (ja) * 2014-09-17 2017-10-19 コンヴィーダ ワイヤレス, エルエルシー サービス層を介する第三者サービスへのアクセスを可能にするシステムおよび方法
US11240321B2 (en) 2014-09-17 2022-02-01 Convida Wireless, Llc Systems and methods for enabling access to third party services via a service layer
US11616851B2 (en) 2014-09-17 2023-03-28 Convida Wireless, Llc Systems and methods for enabling access to third party services via a service layer
US11882195B2 (en) 2014-09-17 2024-01-23 Convida Wireless, Llc Systems and methods for enabling access to third party services via a service layer
JP2017224032A (ja) * 2016-06-13 2017-12-21 日本電信電話株式会社 分散連携プロキシおよびそれを用いた非同期メッセージングシステム
JP2020510919A (ja) * 2017-02-17 2020-04-09 ホーム ボックス オフィス, インコーポレイテッド サービス間通信のエンドポイント抽象化
JP7030829B2 (ja) 2017-02-17 2022-03-07 ホーム ボックス オフィス, インコーポレイテッド サービス間通信のエンドポイント抽象化

Also Published As

Publication number Publication date
CN1757218A (zh) 2006-04-05
EP1606917B1 (en) 2008-08-20
US8065372B2 (en) 2011-11-22
ATE406029T1 (de) 2008-09-15
DE602004015952D1 (de) 2008-10-02
GB0305066D0 (en) 2003-04-09
JP4452274B2 (ja) 2010-04-21
US20090019124A1 (en) 2009-01-15
CN100568873C (zh) 2009-12-09
EP1606917A1 (en) 2005-12-21
WO2004080030A1 (en) 2004-09-16
KR100800351B1 (ko) 2008-02-04
US20060167968A1 (en) 2006-07-27
KR20050121670A (ko) 2005-12-27
US7437417B2 (en) 2008-10-14

Similar Documents

Publication Publication Date Title
JP4452274B2 (ja) パブリッシュ/サブスクライブ・メッセージングのためのシステム及び方法
JP3956365B2 (ja) 分散コンピュータ・ネットワーク内の資源要求に応答するシステムおよび方法
US7634564B2 (en) Systems and methods for invoking a service from a plurality of event servers in a network
EP1397923B1 (en) Mobile instant messaging and presence service
Guttman Service location protocol: Automatic discovery of IP network services
JP5303536B2 (ja) プレゼンス技術を用いたアプリケーション情報およびコマンドの送信
JP3851275B2 (ja) 分散コンピュータ・ネットワークのスケーラブルなリソース・ディスカバリおよび再構成
EP2127295B1 (en) Peer to peer network
WO2005096592A1 (en) Method, web service gateway (wsg) for presence, and presence server for presence information filtering and retrieval
US20060123116A1 (en) Service discovery using session initiating protocol (SIP)
US20040205175A1 (en) Communications system for monitoring user interactivity
US20040128344A1 (en) Content and service registration, query and subscription, and notification in networks
JP2006094488A (ja) 経路情報に関するストレージ要件の軽減
JP2004220549A (ja) 拡張可能通信コントロール
EP2223501B1 (en) Publish/subscribe networks
CN101677302B (zh) 给多设备环境中的用户提供信息的方法和装置
WO2000078002A2 (en) Multi-dimensional authoritative names registry in pervasive computing
KR101921120B1 (ko) UPnP 텔레포니를 이용한 메모 공유 방법 및 장치
Mazuryk et al. Analysis and improvements of the eventing protocol for universal plug and play.
Häber Service Discovery

Legal Events

Date Code Title Description
A529 Written submission of copy of amendment under article 34 pct

Free format text: JAPANESE INTERMEDIATE CODE: A529

Effective date: 20051101

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090819

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090925

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090925

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20090925

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090925

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20091130

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100121

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20100121

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100129

R150 Certificate of patent or registration of utility model

Ref document number: 4452274

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130205

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130205

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140205

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees