JP2005521950A - 発行−購読ネットワークにおける、信頼性が高く効率的なコンテンツに基づくルーティング、クエリ及び応答のための方法及び装置 - Google Patents
発行−購読ネットワークにおける、信頼性が高く効率的なコンテンツに基づくルーティング、クエリ及び応答のための方法及び装置 Download PDFInfo
- Publication number
- JP2005521950A JP2005521950A JP2003581058A JP2003581058A JP2005521950A JP 2005521950 A JP2005521950 A JP 2005521950A JP 2003581058 A JP2003581058 A JP 2003581058A JP 2003581058 A JP2003581058 A JP 2003581058A JP 2005521950 A JP2005521950 A JP 2005521950A
- Authority
- JP
- Japan
- Prior art keywords
- communication method
- filter
- network
- filters
- notification
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
- H04L67/5651—Reducing the amount or size of exchanged application data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/566—Grouping or aggregating service requests, e.g. for unified processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/561—Adding application-functional data or data for application control, e.g. adding metadata
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Abstract
本発明は、信頼性の低いネットワーク上で発行−購読処理を実行するための通信方法及び装置を提供する(10)。また、発行−購読ネットワークにおいて、フィルタを伝播するための通信方法及び通信装置を提供する(118、140)。また、発行−購読ネットワークにおいて、パケットのコンテンツベースのルーティングを行う通信方法及び通信装置を提供する(118、140)。また、発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信方法及び通信装置を提供する(118、140)。発行−購読ネットワークを介して提供されるメッセージの持続的なキャッシングを実現する通信方法及び通信装置を提供する(118、140)。
Description
インターネット規模又は他の分散型ネットワーク規模のイベント通知システムにより、アプリケーションにおいて、強力で柔軟な発行−購読ネットワーキング(publish-subscribe networking)が実現される。このシステムでは、アプリケーションプログラムは、イベント通知アプリケーションプログラムインタフェース(application program interface:以下、APIという。)を用いて、ネットワーク内部で発生するイベントに関する通知を発行し及び/又は通知を購読又は受信する。
図2は、発行者及び購読者のためのインテリジェントルータを示すネットワーク図である。例えば、サービスをチャンネルに供給するルーティングエンティティ30は、後述するように、インテリジェントルータ間でメッセージをルーティングするために、ネットワークインフラストラクチャ内に効果的に階層化される。例えば、発行者32は、概念的に、発行されたコンテンツの指示情報、例えばコンテンツを検索するためのポインタを受け取るためのアプリケーション34と、チャンネルサービス30を介したネットワーク伝送のためにコンテンツを符号化するためのエージェント36とを含む。論理的に相互接続された一群のインテリジェントルータ38、40、42、44、46、48は、購読予約のためのサブジェクトフィルタ及び属性フィルタから生成されたルーティング規則を用いて、発行者からのコンテンツをルーティングする。複数のリンク39、41、43、45は、インテリジェントルータ38、40、42、44、46、48間を論理的に接続する。他のリンク37、47は、それぞれ、発行者32とインテリジェントルータ38の間及び購読者54とインテリジェントルータ46の間を論理的に接続する。購読者54は、購読されたコンテンツを検出し、受け取るためのエージェント50と、コンテンツを表現するためのアプリケーション52とを備えている。
図10は、発行者によって、チャンネルをセットアップし、コンテンツを発行するための例示的な発行処理250のフローチャートである。処理250は、例えば、発行者装置100におけるプロセッサ114によって実行されるエージェント106を含むソフトウェアモジュールによって実現することができる。処理250において、発行者装置のエージェント106は、発行者が作成したチャンネルのプロキシを受け取る(ステップ252)。プロキシは、ネットワークとの通信に用いられる。エージェント106は、インタフェースを介してチャンネルにおいて用いるメッセージフォーマットを判定する(ステップ253)。フォーマット情報は、例えば、チャンネルマネージャ又はネットワークにおける他のエンティティから得ることができる。エージェント106は、受け取ったチャンネル情報を用いてチャンネルのプロキシをセットアップし(ステップ254)、この処理は、チャンネルの属性を受け取るステップ(ステップ256)と、チャンネルへの通知を作成するステップ(ステップ258)とを含む。この通知は、チャンネル上でコンテンツを「待機(listening)」している機器にコンテンツを提供する。属性は、通知のパラメータ及び特性を定義する。
図13は、コンテンツベースのルーティングのためのペイロード検査処理300のフローチャートである。処理300は、例えば、フィルタリングデーモン212として表される、インテリジェントルータ92におけるプロセッサ93によって実行されるソフトウェアモジュールにおいて実現される。これに代えて、この処理をASICで実現してもよく、或いはハードウェアとソフトウェアの組合せによって実現してもよい。処理300として示すコンテンツベースのルーティングは、例えば、ネットワークコアやエッジルータ等ネットワーク内の任意の部分におけるインテリジェントルータにおいて実行できる。
図16は、送信される購読予約メッセージのためのエージェント処理350のフローチャートである。処理350は、例えば、ユーザ(購読者)装置122におけるプロセッサ134によって実行されるエージェント128を含むソフトウェアモジュールによって実現することができる。処理350において、エージェント128は、例えば、図11及び図12を用いて上述した処理(ステップ352)によって生成された購読予約を受け取る。エージェント128は、購読予約のための論理式を特定するストリングを作成し(ステップ354)、ストリングを解析して、購読予約におけるエラーを検出する(ステップ356)。エラーが存在している場合、エージェント128は、ユーザにエラーメッセージを示し(ステップ360)、ユーザがエラーを修正し、購読予約を再入力するように促す。購読予約がエラーを全く含んでいない場合(ステップ358)、エージェント128は、後述するように、データ構造内の表現を保存する(ステップ362)。エージェント128は、データ構造に含まれる不等価演算子を正の形式に変換し(ステップ364)、更にデータ構造を対応する選言標準形(disjunctive normal form:以下、DNFという。)に変換する(ステップ366)。また、エージェント128は、範囲フィルタ及びメンバーシップ検査のみが含まれるように、DNF構造のAND式を簡約する(ステップ368)。
図20は、ワイルドカード処理410のフローチャートである。処理410は、フィルタのルーティング規則の組を用いて、ワイルドカードを購読予約のための表現に変換する処理の一例である。処理410は、例えば、ユーザ装置122内のプロセッサ134によって実行されるエージェント128によって表されるソフトウェアモジュールとして実現してもよい。これに代えて、ネットワークにおいて、ソフトウェア制御の下で、インテリジェントルータ92又は対応する機能を有するASIC91内のプロセッサ93によりワイルドカードを処理してもよい。ワイルドカードは、開かれたフィールド又は可変長フィールドを含んでおり、表21はこのようなフィールドの具体例を示している。
ここに説明する発行−購読ネットワーク(例えば、図1〜図3に示す。)等の発行−購読ネットワークの主な目的は、購読者に対し効率的且つタイムリーに、購読予約に一致する通知を配信することである。発行−購読ネットワークを実現するためには、ネットワークパケットの形式で発行者から購読者に通知を伝送する必要がある。信頼性の低いネットワークとは、例えば、これらの幾つかのネットワークパケットが伝送中に失われる可能性があるネットワークを含んでいる。この実施例において克服すべき主要な技術的課題は、通知(すなわち,ネットワークパケット)が伝送エラーのために失われたのか、アップストリームのルータにおけるフィルタリングメカニズムによって除外されたのかを判定することである。
コンテンツベースのルーティング(Content-based routing:CBR)は、制約に基づくルーティング(constraint-driven routing)の一種である。上述した発行−購読ネットワーク等CBRの機能によって性能が向上された発行−購読ネットワーク(例えば、図1〜図3参)では、望ましくは、特定のコンテンツ(すなわち、購読予約)の発行における購読者の興味は、フィルタと呼ばれるエンティティ内にカプセル化される。ネットワークにおけるルータは、好ましくは、フィルタを用いてによって用いられて、経路決定を行う。エッジ又はユーザ端末においてのみ実行できる従来のフィルタリング法とは異なり、ネットワークコアで動作できるこのCBR法は、これらのフィルタの伝播を伴う。購読者が受け取るパケットのコンテンツに関して制約条件を課す能力を購読者に与える場合、及びこれらのコンテンツ制約条件がパケットをルーティングするためにネットワークのコアで用いられる場合、効率とネットワークの機能性の両方がCBRの恩恵を受ける。
発行−購読システムは、マルチキャスト、同報通信又はモバイル発行−購読ストラテジでによって実現することができる。フィルタ伝播は、ネットワークトポロジに埋め込んでもよく、又は発行者及び購読者をリンクするために選択されているストラテジによって強制されるネットワークトポロジの「上位に」又はネットワークトポロジに加えて実行してもよい。また、これに代えて、フィルタ伝播ストラテジは、フィルタが埋め込まれた購読予約を広告のデスティネーションに直接配信できる発行の広告を含む発行−購読スキーム等の発行者と購読者とをリンクするためのストラテジそのものであってもよい。
フィルタ伝播処理にかかわるソースとデスティネーションを接続する手法としては様々な手法がある。例えば、フィルタ伝播処理に関わるソースとデスティネーションは、1)ホップバイホップ方式で(例えば、ルータからルータへ)、2)エンドツーエンド方式で(例えば、オフラインデータ検索においてユーザ装置からキャッシュへ)、3)トンネルを用いて、4)伝送制御プロトコル(TCP)を用いて、5)ユーザデータグラムプロトコル(UDP)(例えば、信頼できるデータ回復メカニズムに代わる)を用いて、6)セキュリティプロトコルを用いて、7)他のプロトコルを用いて、8)ルータ及び/又はユーザ装置のカーネル内のみにおいて、9)ルータ及び/又はユーザ装置において、ユーザレベルの処理だけに関して、10)ルータ及び/又はユーザ装置においてカーネルとユーザレベル処理の両方の全ての可能な組合せに関して(例えば、カーネルからアプリケーションへ、アプリケーションからカーネルを経てアプリケーションへ、等)、及び/又は11)上述の任意の組合せによって接続することができる。
以下に示すように、フィルタは、発行−購読ネットワーク内のどこに挿入してもよく、1)発行者と購読者の間でエンドツーエンド接続を形成する全てのルータとユーザ装置、2)エッジルータを含むネットワークにおけるあらゆるルータ、3)コアルータのみ、4)エッジルータのみ、5)購読者装置、6)発行者装置、7)管理者装置、キャッシュ、9)バックアップルータ、10)パケットを取り扱う任意のルータ、11)ネットワーク修復又は障害回復に関わる新しいルータ、及び/又は12)これらの如何なる組合せのうちのいずれに挿入してもよい。フィルタは、好ましくは、概算、併合処理及び他の処理で変更される。上述したデスティネーションの各カテゴリについて、伝播されるフィルタの形式を異ならせてもよい。
フィルタ伝播のソースは、発行−購読ネットワーク内のどの部分であってもよい。
また、フィルタ伝播は、潜在的受信者の振る舞いとニーズによっても異なるものとすることができる。例えば、1)永久的又は半永久的な位置に位置する発行者は、その位置にフィルタが伝播されることを望み、2)移動する発行者は、現在の位置からすぐに離れてしまうので、その位置にフィルタが伝播されることを望まず、3)ログオフする前に僅かなコンテンツのみ発行する予定の小規模な発行者は、フィルタを必要とせず、4)大規模の発行者は、ネットワーク帯域幅を節約するために最初のコンテンツの組を発行する前にフィルタが伝播されることを望む場合があり、5)アクセス許可を制限している発行者は、そのアプリケーションにおいて購読者のプライバシーと機密性を保護するために、フィルタの伝播を拒否することがあり、6)フィルタタイムアウトストラテジを実装するコアルータは、ダウンストリームのルータから周期的更新を必要とし、及び/又は7)購読者装置に常時接続されないエッジルータは、購読予約又は興味のフィルタが定期的に更新されることを望む場合がある。これらの全ての振る舞いの性質と他の性質は、例えば、発行者広告を用いること、第1の発行における発行者の振る舞いを符号化すること、フィルタ更新を周期的に送信すること、及びフィルタ受信者のニーズを伝える他の技術によって弁別することができる。
また、同様に、フィルタ伝播は、例えば以下のように、フィルタ送信者の振る舞いとニーズによって異なるものとすることもできる。1)購読者は、発行されたコンテンツのサンプリングを希望する場合、(システムにより定義された、又はユーザにより定義された)制限時間を有する一時的なフィルタのみを使用することを望む場合がある。2)購読者が移動可能であり、購読者が移動した後にフィルタを期限切れにする。3)エッジルータに常時接続されていない購読者は、CBRシステムにおいて、自動フィルタタイムアウトをサポートする定期的なフィルタ更新の送信を望む場合がある。4)幾つかのポリシでは、購読者は、フィルタを伝播する前に認証されることが必要であると定めることができる。5)自動フィルタタイムアウトをサポートするCBRシステムのルータは、定期的にフィルタ更新を送信する必要がある。6)所定の組のデータのみのための特定のクエリは、フィルタを含み又はフィルタによって実現することができる(例えば、クエリ又は購読予約に応答してキャッシュから読み出されたデータ、持続的なバックアップデータ、障害回復時に復元されたデータ等)。7)伝播のためにフィルタを変更したルータは、送信者のニーズに基づいき、伝播されたフィルタがどう変更されているかをアップストリームのルータに示すことができる。これらの全ての振る舞いの性質及び他の性質は、例えば、フィルタ伝播メッセージの振る舞いを符号化することによって又は特別なプロトコル(例えば、認証のためのプロトコル)を用いることによってサポートすることができる。
フィルタの処理は、フィルタのコンテンツ又は表現及び/又は単にフィルタを組織化する管理機能を変更する変換処理を含んでいてもよい。購読予約における元のフィルタ表現は、データ配信通路の異なる部分における、異なる処理手順の組を引き継ぐことができ、受けることができ、これらには、次のような経路セクションが含まれる。1)購読者装置からエッジルータまで。2)エッジルータからコアルータまで。3)2つのコアルータの間。4)コアルータから発行者側のエッジルータまで。5)エッジルータから発行者装置まで。これらの変換処理の幾つかの具体例は、上述した通りである(例えば、エージェント処理及びワイルドカード処理参照)。これらの処理は、購読者装置、発行者装置、エッジルータ又はコアルータ等、発行−購読ネットワーク中のどこで実行してもよい。エージェント(購読者装置及び発行者装置上のエージェント)及びデーモン(ルータ上のデーモン)等のコンポーネントによってこれらの処理を実行してもよい。
(例えば、概算に基づく)。14)2個以上の別個のフィルタのグループ化(例えば、異なるアップリンクへの伝播のための)。15)フィルタの購読停止又は除去。16)フィルタの期限終了。17)フィルタの差分更新(例えば、古いフィルタの組を何らかの表現でブックキーピングし、これから新しいフィルタの組を減算して、フィルタ構成における変更を得る、すなわち、差分更新する)。18)フィルタパターンの構成(例えば、フィルタ1が一致した場合、フィルタ2も一致するといったパターン)。上述した又は上述していないフィルタ伝播に関する如何なる処理もここに説明するフィルタ伝搬法において利用できる。
フィルタの送信又は伝播のためにメッセージを用いることができる。伝播されるフィルタを含んでいるメッセージのコンテンツとフォーマットは、フィルタに施される変換処理及び、伝播の間に、フィルタ伝播をトリガする状況の影響を受けることがある。フォーマットの具体例を以下に示す。1)装置又はユーザレベルにおけるあらゆるメッセージレイアウト。2)フィルタは、固定された又はランダムの位置に属性を含むことがある(例えば、発行された情報の任意の部分に一致するストリング)。3)フィルタは、固定サイズ(例えば、整数、ブール等)を有していてもよく、又は可変サイズ属性(例えば、アレー、ストリング、c構造等)を有していてもよい。4)フィルタのデータ種類は、単純(例えば、整数、ブール等)であってもよく、又は複雑(例えば、アレー、ストリング、範囲変数等)であってもよい。5)フィルタは、単純な検査(例えば>、==、<=等)又は複雑な検査、又は演算子(例えばメンバシップ検査検査、正規表現、ストリング照合、インターセクションクエリ、エンクロージャクエリ、コンテインメントクエリ等の範囲演算子を含んでいてもよい。6)分解されたDNFフォーマット。7)フィルタの簡約された又は元の表現。8)コンパクトな又は拡張されたフォーマット(例えば、一方向のフィルタを2つの極限を用いて表現することができ、又は双方向のフィルタを2つの一方向のフィルタに書き換えることもできる)。9)フィルタの部分的な表現(例えば、ストリング述語の切捨て、データタイプ分解能の低減、属性数の低減)。10)フィルタの表現の変換(ポーランド記法、括弧、ツリー、トライ等)。11)サブジェクトフィールドの包含/除外(例えば、サブジェクトフィルタリングは、フィルタが伝播されるマルチキャストバックボーンによって既に実現されていてもよい)。12)ワイルドカードサブジェクト又は属性述語の拡張。13)コンテンツ又は表現の変換。14)符号化情報(例えば、エラー訂正チェックサム等)。15)暗号化。16)フィルタの完全な組(例えば、障害回復の間、システム内のフィルタ制限時間によって更新情報をリフレッシュする)。17)フィルタの部分的な組(例えば、包摂されたフィルタの組に新たなフィルタのみが挿入され、又は古いフィルタが除外される)。18)フィルタの変更された組(併合されたフィルタ、概算されたフィルタ)。19)フィルタに類さないフィルタ表現における差分の変更(例えば、フィルタの挿入及び削除の間の基数ツリーにおける変化)。20)座標に代わるフィルタの識別ラベル(例えば、購読停止の間)。21)フィルタの期限切れパラメータ。22)フィルタパターン化情報。23)セクションFに示したような、フィルタ送信側の振る舞いと要求を符号化する情報。これらは、ここに説明する処理において用いることができる、伝播されたフィルタの可能なコンテンツ及びフォーマットを例示的に示しているに過ぎない。
システムレベルにおいて、フィルタ伝播の側面の一部又は全てを支配するポリシ及び手続きを確立してもよい。これらの側面には、例えば、以下のような側面が含まれる。1)管理(例えば、全体的なシャットダウン及び再起動リスタート)。2)メインテナンス(例えば、障害回復)。3)フィルタ持続性(例えば、期限切れ、キャッシングされたデータに対する一回のフィルタリング)。4)性能向上ポリシ(例えば、平均化、エッジ選択、積極的伝播対消極的伝播等)。5)監視(例えば、故障報告)。6)会計(例えば、統計的なブックキーピング)。7)課金。8)規制(例えば、フィルタを伝播させるための認証、ネットワークにおいて許可されたフィルタの種類等)。9)ユーザ認証。10)ユーザ支援(例えば、サブジェクトフィルタリングためのディレクトリサービス)。10)購読者プライバシ(例えば、他の購読者からフィルタを隠す)。11)同期(例えばエッジルータでフィルタを受け取った際の購読者への承認、フィルタ伝播が終了した際の購読者への承認、回復等の間、ルータを修理することへの承認等)。12)優先順位付け。13)自動的なフィルタ挿入を決定及び規制する任意のポリシ(例えば消費者自身が挿入したフィルタの組において示されたで示された興味に基づき、この消費者の興味合ったフィルタを自動的に挿入する消費者に関連する管理)。
$1>10and$1<20and$2<4and$3==5and・・・
フィルタ概算の結果、これまで説明してきたCBR処理480では、パケット漏れのエラーが発生する虞がある(ステップ492参照)。元のフィルタ境界に代えてグリッドセルの境界を用いてパケットを照合するため、照合に用いられる実際の領域(例えば、2次元における面積と3次元における体積)は、拡大し、緩和領域とも呼ばれる実際のフィルタ境界とグリッドセル境界との間の領域に存在する属性値を有するパケットが誤ってフィルタを通過することがある。上述のように、フィルタ分解能の削減は、処理の高速性能とスケーラビリティが実現又は向上し、受信パケットの総数に比べて、漏れエラーが小さい場合に許容できる犠牲であると考えられる。
a.上述のように、漏れ削減のないCBR照合ステップ508を行う(一致が全くなければ、パケットを削除する)。
b.一致するパケットについて(ステップ508が上であることを見る)、1つの属性次元を選択し、何らかの一次元の正確な照合法及び対応するデータ構造を用いて、パケットのその属性値をその属性軸上の全てのフィルタ境界の射影に照合する。これにより、一致したフィルタが検出された全ての転送ノードのリストを得る。
c.一次元一致が全くなければ、その全ての属性検査において、そのパケットに一致するフィルタがないことが保証されるので、そのパケットを除外できる。
d.一致があった場合、他の次元を選択し、次のいずれかの条件が満たされるまで、ステップbを繰り返す。(1)いずれかの次元で不一致が検出された場合。(2)先に実行された全ての一次元探索によって生成された転送ノードのリストが共通のインタフェースを含んでいない場合(すなわち、一次元の一致が異なるインタフェースからのフィルタから生成された場合)。又は、(3)正確な照合検査がCBRについてディスエーブルにされた属性次元を含む全ての属性次元について実行された場合。
e.ステップdで説明した除外の条件がいずれも成立せず、及び全ての属性の検査において不一致が検出されない場合、パケットを除外しないという決定を下すことができる。
f.2つ以上のインタフェースが含まれている場合、パケットが除外されていないインタフェースのリストと、ステップaから得られたインタフェースのリストとを比較する必要がある。パケットは、これらの2つのリストにおいて重複するインタフェースにのみルーティングされる。
1.CBRマップより高い分解能を必要とする属性検査は、CBRの第1のグリッド照合ステップからフィルタバケツが導出された後に行うことができる(ステップ508)。
2.より複雑な性質の述語を有する属性(例えば、ストリング照合、正規表現、非ストリング、非アレー、範囲演算子等)は、フィルタバケツ法(filter bucketing method)
によって処理することができる。
3.多くの属性検査を含むフィルタについては、属性を2つのグループに分け、一方のグループをCBRマップに含め、他方のグループをフィルタバケツに含めてもよい。
a.上述のように、何らかの一次元の正確な照合法を用いて、一次元の正確な照合を行う。この代替的のステップの主な特徴は、転送ノードのリストではなく、フィルタラベルのリストが作成されるという点である。
b.リストが空であるなら(すなわち一致がない)場合、パケットは、除外されている。
c.少なくとも1つの一致があれば、探索処理は、他の属性に進む。以下の短絡条件(short-circuiting conditions)のいずれかが満たされるまで、ステップa〜cを繰り返す。(1)いずれかの次元において、不一致が検出される。(2)先の一次元検査によって生成された全てのフィルタラベルリスト内において、共通のフィルタラベルが全くない。(3)全ての次元が検査された。
d.ステップcに示した除外条件のいずれも成立せず、及び全ての属性の検査において不一致がなかった場合、パケットを受け入れる決定が下される。
1.完全なセットのサブセット順列に対応している属性のサブセットを含む複数のグリッド表を作成する(例えば、($1、$2、$3)を一方の組とし、($2、$4、$5)を他方の組として選択する)。述語に関する長いリストを有するフィルタは、少なくとも1個のこのようなグリッドテーブルによってカバーされる。
2.全ての属性について、外積検査を実行する多くの述語を有するフィルタは、本質的に選択的であり、ステップcに概説したパケット除外する条件(例えば、フィルタラベルリスト論理積)のいずれも、全ての属性が検査される前に生じる可能性があるので、短絡の確率(probability of short-circuiting)は、非常に高い。
上述のように、グリッドは、属性空間を空間的に量子化することによって、形成される。属性空間は、通常は、均一に量子化される。ここで、属性空間に対し、例えば、過去のパケット分布に基づいて、適応的な空間量子化を行えば、グリッドの分解能と、したがって、CBR処理480の効率を高めることができる。適応型の量子化では、一致するパケットが最も多く受け取られると予想される属性空間の領域を判定する。例えば、適応型の量子化では、過去のパケット分布が最も集中している属性空間の領域を判定できる。そして、判定された1又は複数の領域は、属性空間内の他の量子化領域より高い精度で量子化される。換言すれば、判定された領域では、属性空間の他の量子化領域に比べて、グリッドセルの数がより大きくなり、グリッドセルのサイズがより小さくなる。これを以下の適応グリッドの2つの図に示す。
ここでは、クエリ応答型のインタラクションをサポートする発行−購読ネットワークを用いた一連の手法を説明する。この処理は、発行−購読スタイル、すなわち、発行(通知とも呼ばれる)及び購読予約の基本的な抽象概念とは異なるクエリ応答スタイル、すなわち、広告(オファーとも呼ばれる)、クエリ及び応答のマッピングを含む。更なる変更点として、ここでは、広告とクエリの単集合(単一のコンテンツアイテムを特徴付ける)と広告とクエリの集合(複数のコンテンツアイテムを特徴付ける)とを区別する。
以下、発行−購読ネットワークにおける、ネットワーク、リンク及び/又はノード故障に関連するメッセージの持続的な保存と再生、メッセージフローの再開及び/又は継続のための装置及び方法について説明する。メッセージの持続性とは、メッセージを保存し、後にこの保存されたメッセージを読み出すことができる性質を指す。例えば電子メールを始めとする多くの特定の用途では、通常、ネットワークを介して通信されるメッセージについて、長いメッセージ持続性が必要とされる。ネットワーク障害が発生しない理想的な条件では、常時接続された購読者は、これらの特定の用途において必要とされる以上の如何なる持続も求めない。しかしながら、現実には、メッセージは、ネットワークを介して伝送されている間に様々な理由のために「失われる」ことがある。この理由としては、例えば、(1)ネットワーク又はユーザ側における故障又はバッファオーバフローや(2)ユーザが自らネットワーク接続を切断した後、所定の期間経過後に再び接続する場合等がある。
時限式の持続(タイムフレームTによる)は、発行−購読ネットワークから、直前のタイムフレームTにおけるデータを検索する能力である。例えば、購読者がネットワーク接続を切断した場合、購読者が不在の間に受け取られる、持続的なチャンネルに関する如何なるデータも(データの受信から)タイムフレームTが経過するまでの間、ネットワークで保持される。ユーザがタイムフレームT内に戻れば、如何なるデータも失われない。
本発明に基づくインフラストラクチャは、チャンネルマネージャと、イベントエージェントと、ルーティングノード及びキャッシュ、又はこれらと同等の構成要素を含んでいる。障害が発生している条件の間にメッセージが失われてしまうことを防ぐためには。これらの各構成要素を保護する必要がある。
チャンネルマネージャについては、図6を用いて上述した。チャンネルマネージャは、複製によって障害から保護される。チャンネルマネージャは、1つのプライマリモジュールと他のバックアップモジュールを含むプライマリバックアップグループ内で動作する。プライマリモジュールは、データに関する全ての更新を行い、及びクエリに応答する機能を担っている。バックアップモジュールは、クエリに応答するのみで、更新を実行する機能は有していない、すなわち、バックアップモジュールは、全ての更新をプライマリに送る。
ルーティングインフラストラクチャコンポーネントのための回復には、幾つかのレベル(レベル0、レベル1〜レベル3)がある。レベル0は、障害の影響をローカルに(すなわち、障害が発生したルータ内部で)制御し、回復は、障害が発生したルーティングノードに制限される。レベル0回復は、ハードウェア冗長性に依存して、ハードウェア障害からの回復を行う。すなわち、ルータのハードウェア資源は、複製される。レベルの0回復の主な利点は、短い回復時間とトランスペアレント性である。レベル1は、LAN内の障害の影響を制御する。レベル1回復は、クラスタ技術を用いたIP障害迂回によって実現される。しかしながら、障害が発生したルータから、これに隣接するルータへのトンネルは、回復の後に再構築する必要がある。したがって、レベル1回復は、レベル0回復に比べてトランスペアレント性が低く、実行に時間がかかる。
ネットワークに障害が発生している間、メッセージの損失を防ぐために、ルーティングノード間のトラヒックを伝送する信頼できるトンネルを用いる。トンネルは、図3を用いて上述した通りである。伝送期間中の如何なるメッセージ損失も受信端末によって検出され、受信端末は、失われたメッセージを再送処理するように送信側に依頼する。
Claims (193)
- 信頼性の低いネットワーク上で発行−購読処理を実行するための通信方法において、
上記ネットワークを介して、コンテンツの購読予約を受信するステップと、
上記コンテンツの購読予約に基づいて、上記ネットワークを介して上記コンテンツを発行するステップと、
上記ネットワークにおけるノードにおいて、上記コンテンツに関する通知を受信するステップと、
上記通知を隣接しているノードに転送すべきか否かを判定するステップと、
上記判定に基づいて、信頼できる伝送プロトコルを用いて、上記隣接しているノードに通知を選択的に転送するステップとを有する通信方法。 - 上記通知を選択的に転送するステップは、該通知の転送の失敗を示す情報を示す指示情報を受け取り、該指示情報に応じて上記通知を再転送するステップを有することを特徴とする請求項1記載の通信方法。
- 上記転送するステップは、通知をカプセル化したパケットを転送するステップを有することを特徴とする請求項1記載の通信方法。
- 上記転送するステップは、通知の転送にインターネットプロトコルを用いることを特徴とする請求項1記載の通信方法。
- 上記転送するステップは、単一のノード毎に通知を転送するステップを有することを特徴とする請求項1記載の通信方法。
- 上記判定するステップは、コンテンツが上記コンテンツの購読予約における1つ以上の条件を満たすか否かを判定するステップを有することを特徴とする請求項1記載の通信方法。
- 上記転送するステップは、ルータを用いて、上記隣接しているノードに通知を転送するステップを有することを特徴とする請求項1記載の通信方法。
- 上記購読予約に対応している1又は複数の購読者に通知が配信されるまで、ネットワーク内のノード毎に上記発行ステップを繰り返すステップを更に有する請求項1記載の通信方法。
- 上記通知を選択的に転送するステップは、伝送制御プロトコルを用いることを特徴とする請求項1記載の通信方法。
- 信頼性の低いネットワーク上で発行−購読処理を実行するルータにおいて、請求項1記載の通信方法を実現するモジュールを備えるルータ。
- 発行−購読処理を実行するため広域ネットワークにおいて、
1つ以上の購読者装置と、
複数のルータとを備え、
上記複数のルータのそれぞれは、
上記広域ネットワークを介して、上記購読者装置の1つ以上に対応しているコンテンツの購読予約を受信する購読予約受信モジュールと、上記ネットワーク内のノードにおいて、コンテンツに関する通知を受信する通知受信モジュールと、上記通知を隣接しているノードに転送するべきか否かを判定するコンテンツベースルーティングモジュールと、上記判定に基づいて、信頼できる伝送プロトコルを用いて、上記隣接しているノードに通知を選択的に転送する高信頼性転送モジュールとを有する発行モジュールとを備え、
上記複数のルータは、上記購読予約に対応している1又は複数の購読者に通知が配信されるまで、上記通知を高い信頼性で選択的に転送することを特徴とする広域ネットワーク。 - 信頼性の低いネットワーク上で発行−購読処理を実行するための通信方法において、
上記ネットワーク内の第1のノードにおいて、上記ネットワークを介して、コンテンツの購読予約を受信するステップと、
上記ネットワーク内の上記第1のノードにおいて、上記コンテンツに関する通知を受信するステップと、
コンテンツベースのルーティング(content-based routing:CBR)に基づいて、上記コンテンツの購読予約を用いて、上記通知を隣接している第2のノードに転送するべきか否かを判定するステップと、
上記判定に基づいて、信頼できる伝送プロトコルを用いて、上記隣接しているノードに通知を選択的に転送するステップとを有する通信方法。 - 上記第1のノードと上記第2のノードとの間の転送に失敗したとき、転送エラーを示す指示情報を受信するステップと、
上記指示情報に応じて、上記第2のノードに上記通知を再転送するステップを有することを特徴とする請求項12記載の通信方法。 - 上記選択的な転送を行う前に、上記通知をバッファにバッファリングするステップを有する請求項12記載の通信方法。
- 所定の期間経過後に、上記バッファリングされた通知を補助記憶装置に移すステップを有する請求項14記載の通信方法。
- 上記バッファリングされた通知を先入れ先出し方式で削除するステップを有する請求項14記載の通信方法。
- 上記バッファリングされた通知をサービス品質基づいて削除するステップを有する請求項14記載の通信方法。
- 上記通知を上記第1のノードのキャッシュにキャッシングするステップを有する請求項12記載の通信方法。
- 上記高い信頼性で転送するステップは、伝送制御プロトコルを用いることを特徴とする請求項12記載の通信方法。
- 信頼性の低いネットワーク上で発行−購読処理を実行するルータにおいて、請求項12記載の通信方法を実現するモジュールを備えるルータ。
- 発行−購読処理を実行するため広域ネットワーク(WAN)において、
1つ以上の購読者装置と、
複数のルータとを備え、
上記複数のルータのそれぞれは、
上記WAN内の第1のノードにおいて、上記WANを介して、上記購読者装置の1つ以上に対応しているコンテンツの購読予約を受信する購読予約受信モジュールと、上記WAN内の第1のノードにおいて、コンテンツに関する通知を受信する通知受信モジュールと、上記通知を上記WAN内の第2のノードに転送するべきか否かを判定するコンテンツベースルーティングモジュールと、上記判定に基づいて、信頼できる伝送プロトコルを用いて、上記第2のノードに通知を選択的に転送する高信頼性転送モジュールとを有する発行モジュールとを備え、
上記複数のルータは、上記購読予約に対応している1又は複数の購読者に通知が配信されるまで、上記通知を高い信頼性で選択的に転送することを特徴とする広域ネットワーク。 - 上記高信頼性転送モジュールは、伝送制御プロトコルを用いることを特徴とする請求項21記載の広域ネットワーク。
- 信頼性の低いネットワーク上で発行−購読処理を実行するための通信方法において、
信頼できる伝送プロトコルを用いて、2つの隣接しているノード間に信頼できるトンネルを確立するステップと、
上記隣接するノードのうちの第1のノードにおいて、上記ネットワークを介して、コンテンツの購読予約を受信するステップと、
上記ネットワーク内の上記第1のノードにおいて、上記コンテンツに関する通知を受信するステップと、
コンテンツベースのルーティング(content-based routing:CBR)に基づいて、上記コンテンツの購読予約を用いて、上記通知を隣接している第2のノードに転送するべきか否かを判定するステップと、
上記判定に基づいて、上記信頼できるトンネルを用いて、上記隣接している第2のノードに通知を転送するステップとを有する通信方法。 - 信頼性の低いネットワーク上で発行−購読処理を実行するルータにおいて、請求項23記載の通信方法を実現するモジュールを備えるルータ。
- 請求項24記載のルータを複数備え、発行−購読処理を実現するネットワーク。
- 発行−購読ネットワークにおいて、フィルタを伝播するための通信方法において、
ネットワークにおけるコンテンツの購読予約に関連する複数のフィルタを受信するステップと、
特定の基準に基づいて、上記フィルタの数を減少させるステップと、
上記ネットワークにおいて、上記コンテンツの購読予約を照合するために上記数が削減されたフィルタを伝播するステップとを有する通信方法。 - 上記削減するステップは、
上記複数のフィルタの1つ以上に対する概算処理を実行するステップと、
上記複数のフィルタの1つ以上に対する併合処理を実行するステップとのうちの少なくとも1つ以上を含んでいることを特徴とする請求項26記載の通信方法。 - 上記併合処理を実行するステップは、併合されたフィルタがパケット漏れ閾値を超えるか否かを決定するステップを有することを特徴とする請求項27記載の通信方法。
- 上記受信するステップは、コンテンツベースのルーティングネットワークを介して複数個のフィルタを受信するステップを有することを特徴とする請求項26記載の通信方法。
- 上記伝播するステップは、積極的伝播スキーム、消極的伝播スキーム、同報通信広告への応答スキーム、アフターネットワークトポロジ演算スキーム、定期的伝播スキーム、障害回復時にフィルタを再伝播するスキーム、ネットワーク再構成の間にフィルタを再伝播するスキームを含む複数の特定の手続きの1つ以上を用いることでフィルタを伝播するステップを有することを特徴とする請求項26記載の通信方法。
- 上記フィルタを伝播するためのソースノード及びデスティネーションノードは、ホップバイホップ方式、エンドツーエンド方式、トンネルを用いた方式、伝送制御プロトコルを用いた方式を含む複数の特定のメカニズムの1つ以上を用いて接続されている請求項26記載の通信方法。
- 上記ネットワーク内の複数の特定の位置のうちの1つ以上の位置にネットワークでフィルタを挿入するステップを有する請求項26記載の通信方法。
- 上記フィルタを伝播するステップは、移動する、持続的な及び一時的な振る舞いから選択される、意図する受信者の特定の振る舞いのうちの少なくとも1つに基づいてフィルタを伝播するステップを有することを特徴とする請求項26記載の通信方法。
- 上記フィルタを伝播するステップは、移動する、持続的な及び一時的な振る舞いから選択される、上記1以上のフィルタの送信者の特定の振る舞いのうちの少なくとも1つに基づいてフィルタを伝播するステップを有することを特徴とする請求項26記載の通信方法。
- 属性コンテンツの変換、表現の拡張、表現の変換、表示の変形、符号化/復号、暗号化/平文化を含む複数の特定の処理ステップのうちの1つ以上を実行するステップを有する請求項26記載の通信方法。
- 複数の特定のフォーマットのうちの1つ以上に基づいて、上記1つ以上のフィルタを含むメッセージをフォーマットするステップを有する請求項26記載の通信方法。
- 上記フィルタを伝播するステップは、管理、メインテナンス、フィルタ持続、ポリシを強調する性能、監視、課金を含む複数の特定のポリシ又は手続きのうちの1つ以上に従ってフィルタを伝播するステップを有することを特徴とする請求項26記載の通信方法。
- 上記フィルタを伝播ステップは、
フィルタを伝播するために満たされなければならないフィルタ伝播のための複数の要求のうちの1つ以上を含む、フィルタ伝播ストラテジの基礎となるネットワークトポロジを判定するステップと、
上記判定されたフィルタ伝播ストラテジの要求の満足に基づいて、フィルタの数を削減するステップとを有する請求項26記載の通信方法。 - 上記判定されるフィルタ伝播ストラテジは、積極的伝播スキーム、消極的伝播スキーム、同報通信広告への応答スキーム、アフターネットワークトポロジ演算スキーム、定期的伝播スキーム、障害回復時にフィルタを再伝播するスキーム、ネットワーク再構成の間にフィルタを再伝播するスキームのうちの1つであることを特徴とする請求項38記載の通信方法。
- 上記受信するステップは、ネットワーク内のコアルータにおいて、複数個のフィルタを受信するステップを有することを特徴とする請求項26記載の通信方法。
- 上記受信するステップは、ネットワーク内のエッジルータにおいて、複数個のフィルタを受信するステップを有することを特徴とする請求項26記載の通信方法。
- 上記受信するステップは、ネットワーク内の発行者装置において、複数個のフィルタを受信するステップを有することを特徴とする請求項26記載の通信方法。
- 発行−購読ネットワークに置いて、フィルタを伝播するルータにおいて、請求項26記載の通信方法を実現するモジュールを備えるルータ。
- 請求項26記載の通信方法を実現するモジュールを備える複数個のルータを備える発行−購読ネットワーク。
- 請求項26記載の通信方法を実現するモジュールを備えるユーザ装置を備える発行−購読ネットワーク。
- 発行−購読ネットワークにおいて、フィルタを伝播するための通信装置において、
ネットワークにおけるコンテンツの購読予約に関連する複数のフィルタを受信するフィルタ受信モジュールと、
特定の基準に基づいて、上記フィルタの数を減少させるフィルタ削減モジュールと、
上記ネットワークにおいて、上記コンテンツの購読予約を照合するために上記数が削減されたフィルタを伝播するフィルタ伝播モジュールとを備える通信装置。 - 上記複数のフィルタの1つ以上に対する概算処理を実行するフィルタ概算モジュールと、
上記複数のフィルタの1つ以上に対する併合処理を実行するフィルタ併合モジュールとを備える請求項46記載の通信装置。 - 上記1つ以上のフィルタを変形するフィルタ処理モジュールと、
上記フィルタの相互の類似性に基づいて、フィルタをグループ化するフィルタグループ化モジュールとを備える請求項46記載の通信装置。 - 発行−購読ネットワークにおいて、フィルタを伝播するための通信方法において、
(a)ネットワークのノードにおいて、複数のフィルタを受信するステップと、
(b)上記受け取った1つ以上のフィルタを処理し、フィルタの数を削減するステップと、
(c)受信者の振る舞いの規則に基づいて、フィルタを伝播するか否かを決定するステップと、
(d)ネットワーク内の次のノードに、上記処理されたフィルタを伝播するステップとを有する通信方法。 - 送信者の振る舞いの規則に基づいて、フィルタを伝播するか否かを決定するステップを有する請求項49記載の通信方法。
- ネットワークにおいて、次のノードの後段に更なるノードがあるか否かを判定するステップを有する請求項49記載の通信方法。
- 上記次のノードの後段に更なるノードがあると判定された場合、上記ステップ(b)〜(d)を繰り返すステップを有する請求項49記載の通信方法。
- 上記ネットワークにおける次のノードに、受信すべき更なるフィルタがあるか否かを判定するステップを更に有する請求項49記載の通信方法。
- 上記ネットワークにおける次のノードに、受信すべき更なるフィルタがあると判定された場合、新たなノードにおいて、上記ステップ(a)〜(d)を繰り返すステップを更に有する請求項53記載の通信方法。
- 上記フィルタを処理するステップは、冗長な述語表現を取り除いてフィルタを簡約するステップ、フィルタを概算するステップ、フィルタをクラスタ化するステップ、フィルタを包摂するステップ、2個以上のフィルタを併合するステップのうちの1つ以上を含むことを特徴とする請求項49記載の通信方法。
- 上記フィルタを処理するステップは、フィルタをグループ化するステップを含み、
上記フィルタを概算するステップは、上記グループ内のフィルタを概算し、上記フィルタをクラスタ化するステップは、フィルタの類似性に基づいて、上記グループ内のフィルタを特定及び収集し、上記フィルタを包摂するステップは、上記グループ内のフィルタを包摂し、上記フィルタを併合するステップは、上記グループ内のフィルタを併合することを特徴とする請求項55記載の通信方法。 - 上記フィルタをグループ化するステップは、サブジェクトに関連しているダウンリンクからのフィルタのみをグループ化するステップを有することを特徴とする請求項56記載の通信方法。
- 上記フィルタを併合するステップは、併合されたフィルタがパケット漏れ閾値を超えるか否かを判定するステップを有することを特徴とする請求項55記載の通信方法。
- 上記フィルタを処理するステップは、フィルタを概算するステップと、該概算されたフィルタを包摂及び併合するステップとを有することを特徴とする請求項49記載の通信方法。
- 上記ネットワーク内のノードは、保存されたフィルタを有し、上記フィルタを処理するステップは、受信したフィルタと保存されているフィルタとを処理して、これらのフィルタの数を削減することを特徴とする請求項49記載の通信方法。
- 上記保存されたフィルタは、以前に受け取られ、処理されたフィルタであることを特徴とする請求項60記載の通信方法。
- 上記受信ステップ(a)は、ネットワークのコア内のノードにおいて複数個のフィルタを受信することを特徴とする請求項49記載の通信方法。
- 発行−購読ネットワークにおいてフィルタを伝播するためのルータにおいて、請求項49記載通信方法を実現するモジュールを備えるルータ。
- 請求項49記載の通信方法を実現するモジュールを備える複数のルータを備える発行−購読ネットワーク。
- 請求項49記載の通信方法を実現するユーザ装置を備える複数のルータを備える発行−購読ネットワーク。
- 発行−購読ネットワークにおいて、フィルタを伝播するための通信装置において、
ネットワーク内ノードにおいて、複数のフィルタを受信するフィルタ受信モジュールと、
上記フィルタの数を減少させるフィルタ削減モジュールと、
受信者の振る舞いの規則に基づいて、フィルタを伝播するか否かを決定し、フィルタを伝播すると決定した場合、数が削減されたフィルタを上記ネットワークにおける次のノードに伝播するフィルタ伝播モジュールとを備える通信装置。 - 冗長な述語表現を取り除くようフィルタを簡約する簡約モジュールを備える請求項66記載の通信装置。
- 上記フィルタ処理モジュールは、ダウンリンクの選択に基づいてフィルタをグループ化するグループ化モジュールを備えることを特徴とする請求項66記載の通信装置。
- 上記フィルタ処理モジュールは、フィルタを概算する概算モジュールを備えることを特徴とする請求項66記載の通信装置。
- 上記フィルタ処理モジュールは、フィルタを包摂する包摂モジュールを備えることを特徴とする請求項66記載の通信装置。
- 上記フィルタ処理モジュールは、フィルタの相互の類似性に基づき、フィルタを互いにクラスタ化するクラスタ化モジュールを備えることを特徴とする請求項66記載の通信装置。
- 上記フィルタ処理モジュールは、フィルタを併合する併合処理モジュールを備えることを特徴とする請求項66記載の通信装置。
- 発行−購読ネットワークにおいてフィルタを伝播させる通信方法において、
ルータからフィルタを要求する通知を送信するステップと、
1つ以上のダウンストリームのルータによって通知を受信するステップと
上記フィルタ要求を更にダウンストリーム側に伝播するステップと、
上記フィルタ要求が伝播されたダウンストリームのルータからの応答を待機するステップと、
上記フィルタ要求が伝播されたダウンストリームのルータからフィルタを収集するステップと、
上記伝播されたフィルタを処理し、上記フィルタの数を削減するステップと、
上記数が削減されたフィルタを上記フィルタを要求したアップストリーム側のルータに送信するステップとを有する通信方法。 - 各ダウンストリームのルータにおいて、上記フィルタ要求がルータから受け取られたことを反映するようにブックキーピングデータベースを更新するステップと、
上記フィルタ要求が受け取られたルータが動作していたか否かを判定するステップとを有する請求項73記載の通信方法。 - 複数のルータと、請求項73記載の通信方法を実現するモジュールを備える発行者装置とを備える発行−購読ネットワーク。
- 発行−購読ネットワークにおいて、パケットのコンテンツベースのルーティングを行う通信方法において、
上記ネットワークにおいてパケットを受信するステップと、
属性空間におけるフィルタ適用範囲を指定するマップにアクセスするステップと、
上記パケットの経路決定のために、該パケットのコンテンツを検査するステップと、
上記マップを用いて、上記パケットの経路決定を補助するステップと、
上記検査されたパケットのコンテンツ及びマップに基づいて、経路決定を行うステップと、
上記経路決定に基づいて、パケットをルーティングするステップとを有する通信方法。 - 上記経路決定を行うステップは、対応する購読予約にコンテンツを照合するステップを更に有することを特徴とする請求項76記載の通信方法。
- 上記照合するステップは、複数の連言フィルタを用いて、一致を特定するステップを有することを特徴とする請求項77記載の通信方法。
- 上記照合するステップは、属性検査を実行するステップを有することを特徴とする請求項77記載の通信方法。
- 上記経路決定を行うステップは、上記マップをオンラインで利用するステップを有することを特徴とする請求項76記載の通信方法。
- オフライン又はバックグラウンド処理で、上記フィルタ適用範囲を予め算出するステップを有する請求項76記載の通信方法。
- フィルタ適用範囲を予め算出するステップを有し、該予め算出するステップは、フィルタ表現を概算し、削減するステップを有することを特徴とする請求項76記載の通信方法。
- フィルタ適用範囲を予め算出するステップを有し、該予め算出するステップは、属性空間をグリッドセルを含むグリッドに空間的に量子化するステップを有することを特徴とする請求項76記載の通信方法。
- 上記フィルタ適用範囲を予め算出するステップは、
フィルタ適用範囲情報とグリッドとを結合するステップと、
それぞれのグリッドセル内においてフィルタ適用範囲情報によって記述された処理の統合に基づくマップを生成するステップとを有するステップとを有することを特徴とする請求項83記載の通信方法。 - 発行−購読ネットワークにおいて、パケットのコンテンツベースのルーティングを行うルータにおいて、請求項76記載の通信方法を実現するモジュールを備えるルータ。
- 請求項85記載の複数のルータを備えるネットワーク。
- 請求項76記載の通信方法を実現する命令を有するコンピュータにより読取可能な媒体。
- パケットのコンテンツベースのルーティングを行う通信方法において、
(a)属性空間を空間量子化するステップと、
(b)それぞれが少なくとも1つの記述された属性を有する複数のフィルタで覆われたグリッドセルを特定するステップと、
(c)ステップ(b)において特定されたグリッドセルをカバーする複数個のフィルタによって記述される処理規則によって、コンテンツベースのルーティング(CBR)テーブルを更新するステップとを有する通信方法。 - 1つ以上の新たなフィルタがノードに挿入され又はノードから削除されたか否かを判定するステップと、
1つ以上の新たなフィルタがノードに挿入され又はノードから削除されたと判定された場合に、上記ノードにおいてステップ(b)及び(c)を実行するステップとを有する請求項88記載の通信方法。 - 発行されたパケットを受信するステップと、
上記受信したパケットを上記グリッドにプロットするステップとを有する請求項88記載の通信方法。 - 上記算出されたフィルタ適用範囲情報によって完全にカバーされているグリッドセルにプロットされたパケットついて、CBRテーブルを検査し、上記完全にカバーされているグリッドセルにプロットされたパケットに対する処理を判定するステップを有する請求項90記載の通信方法。
- ネットワークトラヒックが設定された閾値を超えているか否かを判定するステップと、
上記ネットワークトラヒックが設定された閾値を超えている場合、上記発行されたパケットをルーティングするステップとを有する請求項91記載の通信方法。 - 上記ネットワークトラヒックが設定された閾値以下である場合、漏れ削減処理を実行するステップを有する請求項92記載の通信方法。
- 上記漏れ削減処理を実行するステップは、一次元の正確な照合を行うステップを有することを特徴とする請求項93記載の通信方法。
- 上記漏れ削減処理を実行するステップは、外積を算出する処理を含むことを特徴とする請求項93記載の通信方法。
- 上記漏れ削減処理を実行するステップは、制限された数の及び様々な属性の順列のサブセットの完全な組に基づく複数のグリッドとCBRテーブルの構成を含むことを特徴とする請求項93記載の通信方法。
- ネットワークトラヒックが設定された閾値以下である場合、部分的にカバーされたグリッドセルにプロットされた削減されたフィルタ述語又はパケットがあるか否かを判定するステップと、
上記部分的にカバーされたグリッドセルにプロットされた削減されたフィルタ述語又はパケットがある場合、述語毎のフィルタ照合を実行し、部分的にカバーされたグリッドセルにプロットされたあらゆる削減されたフィルタ述語及びあらゆるパケットに関するルーティング処理を決定するステップと、
上記決定されたルーティング処理に基づいて上記パケットをルーティングするステップとを有する請求項92記載の通信方法。 - フィルタ表現を削減するステップを有する請求項88記載の通信方法。
- 上記ステップ(a)は、属性空間を適応量子化するステップを有することを特徴とする請求項88記載の通信方法。
- 上記適応量子化するステップは、パケット分布情報に基づいて、上記属性空間を適応的に量子化するステップを有することを特徴とする請求項99記載の通信方法。
- 上記空間量子化するステップは、パケット分布情報に基づいて、上記属性空間を空間的に量子化するステップを有することを特徴とする請求項88記載の通信方法。
- 上記空間量子化するステップは、パケット分布情報に基づいて、グリッドを更新するステップを有することを特徴とする請求項88記載の通信方法。
- 上記ステップ(c)は、上記算出されたフィルタ適用範囲情報によってカバーされているグリッドセルについて、操作ビットマスクを生成又は更新するステップを有することを特徴とする請求項88記載の通信方法。
- 上記ステップ(c)は、上記算出されたフィルタ適用範囲情報によってカバーされているグリッドセルについて、リンクされた処理のリストを生成又は更新するステップを有することを特徴とする請求項88記載の通信方法。
- 上記CBRテーブルにおいてカバーされたセルの、フィルタ分布に関する統計情報を含んでいるパラメータを更新するステップを有する請求項88記載の通信方法。
- 上記ステップ(a)において用いられるパケット分布に関する統計情報を集めるステップを有する請求項88記載の通信方法。
- 上記ステップ(a)〜(c)は、オフラインで実行されることを特徴とする請求項88記載の通信方法。
- CBRテーブルと、CBRテーブルにおける規則のみを用いて、コンテンツベースのルーティング(CBR)を実行するステップを有する請求項88記載の通信方法。
- 発行−購読ネットワークにおいて、パケットのコンテンツベースのルーティングを行う通信装置において、請求項88記載の通信方法を実現するモジュールを備える通信装置。
- 当該通信装置は、ルータであることを特徴とする請求項109記載の通信装置。
- 請求項88記載の通信方法を実現するモジュールを備える複数のルータを備えるネットワーク。
- 請求項88記載の通信方法を実現する命令を有するコンピュータにより読取可能な媒体。
- 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信方法において、
データセットに関連する広告を受信するステップと、
論理式を表すクエリを受信するステップと、
上記広告を対応する購読予約にマッピングするステップと、
上記クエリを対応する通知にマッピングするステップと、
上記対応する購読予約を用いて、広告を実現するステップと、
上記対応する通知を用いて、ネットワークにおける、クエリを実現するステップとを有する通信方法。 - 上記広告をマッピングするステップは、該広告に対し、一般的マッピングを実行するステップを有することを特徴とする請求項113記載の通信方法。
- 上記クエリをマッピングするステップは、クエリに対し、選言的クエリマッピングを実行するステップを有することを特徴とする請求項113記載の通信方法。
- 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信方法において、
広告を登録するための購読予約を作成するステップと、
通知を発行し、クエリを配信するステップと、
購読予約を用いてコンテンツベースのルーティング(CBR)を実行し、広告主に通知をプッシュするステップと、
要求者に応答データを返すステップとを有する通信方法。 - 上記応答データを返すステップは、上記広告主と上記要求者の間のユニキャスト接続を用いて行われることを特徴とする請求項116記載の通信方法。
- 上記応答データを返すステップは、上記要求者により、上記応答データのための新たな購読予約を作成し、該新たな購読予約を用いてCBRを実行し、該応答データを該要求者にプッシュするステップを有することを特徴とする請求項116記載の通信方法。
- 上記作成するステップは、1組のデータに関する広告を登録するための購読予約を作成するステップを有することを特徴とする請求項116記載の通信方法。
- クエリ−応答インタラクションを実現する発行−購読ネットワークにおいて、請求項116記載の通信方法を実現するモジュールを備えるルータと、発行者装置と、購読者装置を備える発行−購読ネットワーク。
- 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信方法において、
広告を登録する購読予約を受信するステップと、
クエリを配信する通知を受信するステップと、
購読予約を用いて、コンテンツベースのルーティングを実行し、隣接しているノードに通知を転送するか否かを判定するステップと、
するステップと、
上記判定に基づいて、通知を選択的に転送するステップとを有する通信方法。 - 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信装置において、請求項121記載通信方法を実現するモジュールを備える通信装置。
- 上記通信装置は、ルータを含むことを特徴とする請求項122記載の通信装置。
- 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信方法において、
初期サブジェクトを含む通知を発行するステップと、
以前に発行された広告に関する過去サブジェクトを含む通知を発行するステップと、
以前に発行された広告へのクエリである過去サブジェクトに対する購読予約を提出するステップと、
過去サブジェクトに購読予約を用いてコンテンツベースのルーティングを実行し、以前に発行された広告を消費者にプッシュするステップとを有する通信方法。 - 過去サブジェクトに対する購読停止を提出するステップを有する請求項124記載の通信方法。
- 初期サブジェクトの購読予約を提出するステップを有する請求項124記載の通信方法。
- クエリ−応答インタラクションを実現する発行−購読ネットワークにおいて、請求項124記載の通信方法を実現するモジュールを備えるルータと、発行者装置と、購読者装置とを備える発行−購読ネットワーク。
- 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信方法において、
初期サブジェクトを含む通知と、以前に発行された広告に関する過去サブジェクトを含む通知とを受信するステップと、
初期サブジェクトに関する購読予約と、以前に発行された広告へのクエリである過去サブジェクトに関する購読予約とを受信するステップと、
上記過去サブジェクトに購読予約を用いて、コンテンツベースのルーティングを実行し、上記以前に発行された広告を隣接しているノードに転送するか否か決定するステップと、
上記判定に基づいて、上記以前に発行された広告を選択的に転送するステップとを有する通信方法。 - 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信装置において、請求項128記載の通信方法を実現するモジュールを備える通信装置。
- 上記通信装置は、ルータを備えることを特徴とする請求項129記載の通信装置。
- 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信方法において、
発行された通知をキャッシングするステップと、
上記キャッシングされた、発行された通知内のコンテンツを広告する通知を発行するステップと、
上記発行された通知へのクエリである購読予約を提出するステップと、
上記キャッシュから、上記キャッシングされた、発行された通知を再生するステップと、
上記購読予約に基づいて、コンテンツベースのルーティング(CBR)を実行し、上記再生された、発行された通知を消費者にプッシュするステップとを有する通信方法。 - クエリ−応答インタラクションを実現する発行−購読ネットワークにおいて、請求項131記載の通信方法を実現するモジュールを備えるルータと、発行者装置と、購読者装置を備える発行−購読ネットワーク。
- 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信方法において、
発行された通知をキャッシングするステップと、
上記発行された通知を要求する購読予約を受信するステップと、
上記キャッシュから、上記キャッシングされた、発行された通知を再生するステップと、
上記発行された通知へのクエリである購読予約を用いてコンテンツベースのルーティング(CBR)を実行し、上記キャッシングされた、発行された通知を隣接しているノードに転送するか否かを判定するステップと、
上記判定に基づいて、信頼できる伝送プロトコルを用いて、上記隣接しているノードに通知を選択的に転送するステップとを有する通信方法。 - 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信装置において、請求項133記載の通信方法を実現するモジュールを備える通信装置。
- 上記通信装置は、ルータを備えることを特徴とする請求項134記載の通信装置。
- 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信方法において、
データ広告を受信するステップと、
上記データ広告を購読予約に変換するステップと、
クエリを受信するステップと、
上記クエリを通知に変換するステップと、
上記購読予約に基づいてコンテンツベースのルーティング(CBR)を実行し、広告主に通知をプッシュするステップと、
上記通知に基づいて、要求者に応答データを返すステップとを有する通信方法。 - 変換するステップは、存在論的変換を実行するステップを有することを特徴とする請求項136記載の通信方法。
- 上記応答データを返すステップは、上記広告主と上記要求者の間のユニキャスト接続を用いて行われることを特徴とする請求項136記載の通信方法。
- 上記応答データを返すステップは、上記要求者により、上記応答データのための新たな購読予約を作成し、該新たな購読予約を用いてCBRを実行し、該応答データを該要求者にプッシュするステップを有することを特徴とする請求項136記載の通信方法。
- 上記クエリを受信するステップは、データの組に関するクエリを受信することを特徴とする請求項136記載の通信方法。
- 上記データ広告を受信するステップは、データの組に関するデータ広告を受信することを特徴とする請求項136記載の通信方法。
- 上記データ広告を変換するステップは、該広告に対し、一般的マッピングを実行するステップを有することを特徴とする請求項136記載の通信方法。
- 上記データ広告を変換するステップは、該広告に対し、選言的クエリマッピングを実行するステップを有することを特徴とする請求項136記載の通信方法。
- 上記データ広告を変換するステップは、上記購読予約において、上記データ広告における属性と表現演算子の組合せを表す属性を定義するステップを有することを特徴とする請求項136記載の通信方法。
- 上記クエリを変換するステップは、上記クエリにおける属性及び表現演算子の組合せを表す通知において、属性を定義するステップを有することを特徴とする請求項136記載の通信方法。
- クエリ−応答インタラクションを実現する発行−購読ネットワークにおいて、請求項136記載の通信方法を実現するモジュールを備えるルータと、発行者装置と、購読者装置を備える発行−購読ネットワーク。
- 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信方法において、
クエリを受信するステップと、
上記クエリを通知に変換するステップと、
上記通知及び購読予約に変換されたデータ広告に対して実行されるコンテンツベースのルーティングに基づいて、応答データを受信するステップとを有する通信方法。 - 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信装置において、請求項147記載の通信方法を実現するモジュールを備える通信装置。
- 上記通信装置は、購読者装置を含むことを特徴とする請求項148記載の通信装置。
- 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信方法において、
データ広告を受信するステップと、
上記データ広告を購読予約に変換するステップと、
購読予約と通知に実行されたコンテンツベースのルーティングに基づいて通知に変形されたクエリを受信するステップと、
上記通知に基づいて、応答データを要求者に転送するステップとを有する通信方法。 - 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信装置において、請求項150記載の通信方法を実現するモジュールを備える通信装置。
- 上記通信装置は、発行者装置を含むことを特徴とする請求項151記載の通信装置。
- 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信方法において、
クエリから変化されてた通知を受信するステップと、
コンテンツベースのルーティング(CBR)し、隣接しているノードに通知を転送するか否かを判定するステップと、
上記判定に基づいて、上記通知を選択的に転送するステップとを有する通信方法。 - データ広告から変換された購読予約を受信するステップを有し、
上記CBRを実行するステップは、上記購読予約に基づいてCBRを実行することを特徴とする請求項153記載の通信方法。 - 発行−購読ネットワークにおいて、クエリ−応答インタラクションを実現する通信装置において、請求項153記載の通信方法を実現するモジュールを備える通信装置。
- 上記通信装置は、ルータを含むことを特徴とする請求項155記載の通信装置。
- 発行−購読ネットワークを介して提供されるメッセージの持続的なキャッシングを実現する通信方法において、
(a)第1のノードにおいて、ネットワークを介して、データを含むメッセージを受信するステップと、
(b)上記データに時刻を示すをマークを付与するステップと、
(c)第1のノードのキャッシュメモリに、上記データをキャッシングするステップと、
(d)コンテンツベースのルーティングを用いて、第2のノードに上記メッセージをルーティングするステップとを有する通信方法。 - (e)上記第2のノードのキャッシュメモリにデータをキャッシングする点を除いて、上記第2のノードでステップ(a)〜(d)を繰り返すステップを更に有する請求項157記載の通信方法。
- 上記データをキャッシングするステップ(c)からタイムグレイン期間Gが経過したか否かを判定するステップと、
上記タイムグレイン期間Gが経過したと判定した場合、上記キャッシングしたデータをキャッシュメモリからディスクに移管するステップとを有する請求項157記載の通信方法。 - 上記キャッシングされたデータの最後のブロックについて、上記データをキャッシングするステップ(c)から持続タイムフレーム期間Tが経過した否かを判定するステップと、
上記持続タイムフレーム期間Tが経過したと判定した場合、上記キャッシングされたデータを消去するステップとを有する請求項157記載の通信方法。 - 上記持続タイムフレーム期間Tは、データに関連するチャンネルに基づいて決定されることを特徴とする請求項160記載の通信方法。
- 上記第1のノードは、インテリジェントルータを含み上記受信するステップ(a)は、上記インテリジェントルータにおいてメッセージを受信するステップを有することを特徴とする請求項157記載の通信方法。
- 上記インテリジェントルータは、キャッシュマネージャを備え、上記キャッシュマネージャは、ステップ(b)及び(c)を実行することを特徴とする請求項162記載の通信方法。
- 上記第2のノードは、購読者装置を含むことを特徴とする請求項157記載の通信方法。
- 発行−購読ネットワークを介して配信されたメッセージの持続的なキャッシングを実現するルータにおいて、請求項157記載の通信方法を実現するモジュールを備えるルータ。
- メッセージの持続的なキャッシングを実現する発行−購読ネットワークにおいて、請求項158記載の通信方法を実現するモジュールを備えるノードを備える発行−購読ネットワーク。
- 請求項157記載の通信方法を実現する命令を有するコンピュータにより読取可能な媒体。
- 発行−購読ネットワークを介して配信されたメッセージの持続的なキャッシングを実現する通信方法において、
発行−購読ネットワークを介して、データを含むメッセージを受信するステップと、
上記データに時刻を示すをマークを付与するステップと、
キャッシュメモリに、上記データをキャッシングするステップと、
上記データをキャッシングするステップからタイムグレイン期間Gが経過したか否かを判定するステップと、
上記タイムグレイン期間Gが経過したと判定した場合、上記キャッシングしたデータをキャッシュメモリからディスクに移管するステップと、
上記キャッシングされたデータの最後のブロックについて、上記データをキャッシングするステップから持続タイムフレーム期間Tが経過した否かを判定するステップと、
上記持続タイムフレーム期間Tが経過したと判定した場合、上記キャッシングされたデータを消去するステップとを有する通信方法。 - 上記キャッシングされたデータに関する要求が受信されたか否かを判定するステップを有する請求項168記載の通信方法。
- 上記キャッシングされたデータに関する要求は、ユーザ装置から受信されることを特徴とする請求項169記載の通信方法。
- 上記キャッシングされたデータに関する要求が受信された場合、上記キャッシングされたデータを読み出すステップを有する請求項169記載の通信方法。
- 上記キャッシングされたデータを読み出すステップは、アップストリームのキャッシュを呼び出すステップと、上記アップストリームのキャッシュから、上記キャッシングされたデータを読み出すステップとを有することを特徴とする請求項171記載の通信方法。
- 上記アップストリームのキャッシュから読み出されたキャッシングされたデータに対し、重複抑制処理を実行するステップを有する請求項172記載の通信方法。
- 上記キャッシングされたデータを読み出すステップは、ユーザ装置のエージェントからアップストリームのキャッシュのリストを取得するステップを有することを特徴とする請求項172記載の通信方法。
- ユーザ装置へのルーティングのために、上記キャッシングされたデータをバックボーンルータに転送するステップを有する請求項171記載の通信方法。
- 上記キャッシングされたデータにインデクスを付すステップを有する請求項168記載の通信方法。
- 上記キャッシングされたデータにインデクスを付すステップは、ID、サブジェクト及び/又はタイムスタンプによってデータにインデクスを付すステップを有することを特徴とする請求項176記載の通信方法。
- 上記受信、時刻情報の付与及びキャッシングのステップは、アップストリームのルーティングノードにおいて実行されることを特徴とする請求項168記載の通信方法。
- 上記受信のステップを繰り返すことを特徴とする請求項168記載の通信方法。
- 発行−購読ネットワークを介して配信されたメッセージの持続的なキャッシングを実現するルータにおいて、請求項168記載の通信方法を実現するモジュールを備えるルータ。
- メッセージの持続的なキャッシングを実現する発行−購読ネットワークにおいて、それぞれ、請求項168記載の通信方法を実行するモジュールを備える第1のノード及び該第1のノードのダウンストリーム側の第2のノードを備える発行−購読ネットワーク。
- 請求項168記載の通信方法を実現する命令を有するコンピュータにより読取可能な媒体。
- 発行−購読ネットワークを介して配信されたメッセージの持続的なキャッシングを実現する通信方法において、
(a)
複数のアップストリームノードにおいて、ネットワークを介して、データを有する複数のメッセージを受け取るステップと、
(b)上記データに時刻情報を付与するステップと、
(c)上記複数のアップストリームノードのうちの1つのアップストリームノードにおいて、キャッシュに上記データをキャッシングするステップと、
(d)コンテンツベースのルーティングを用いて、エッジノードにメッセージをルーティングするステップと、
(e)上記エッジノードのキャッシュメモリにデータをキャッシングする点を除いて、上記エッジノードにおいてステップ(a)〜(c)を繰り返すステップとを有するデータ通信方法。 - コンテンツベースのルーティングを用いて、エッジノードから購読者装置に上記メッセージの少なくとも1つをルーティングするステップを有する請求項183記載の通信方法。
- 上記エッジノードにおいて、上記購読者装置から、上記キャッシングされたデータの要求を受信するステップを有する請求項184記載の通信方法。
- 上記要求に応じて、上記キャッシングされたデータの時間量を判定するステップと、
上記キャッシングされたデータに付された時刻情報に基づいて、上記判定された時間量に対応する上記キャッシングされたデータを読み出すステップとを有する請求項185記載の通信方法。 - 上記時間量は、読み出すべきキャッシングされたデータの時間量を含む要求に基づいて判定されることを特徴とする請求項186記載の通信方法。
- 上記時間量は、上記購読者装置が発行−購読ネットワークから切断ている時間である購読者装置の切断時間に基づいて判定されることを特徴とする請求項186記載の通信方法。
- 上記要求されたデータの少なくとも幾つかが上記複数アップストリームノードのうちの1つ以上のアップストリームに保存されていることを判定するステップを有する請求項185記載の通信方法。
- 上記エッジノードにおいて、上記購読者装置からアップストリームノードのリストを受け取るステップを有する請求項189記載の通信方法。
- 上記複数のアップストリームノードのうちの1つ以上のアップストリームノードに、上記キャッシングされたデータに関する要求を送信するステップと、
上記複数のアップストリームノードのうちの1つ以上のアップストリームノードから、上記要求された、キャッシングされたデータを読み出すステップと、
上記読み出したデータを上記購読者装置にルーティングするステップとを有する請求項189記載の通信方法。 - 上記読み出されたキャッシングされたデータに対し、重複抑制処理を実行するステップを有する請求項191記載の通信方法。
- メッセージの持続的なキャッシングを実現する発行−購読ネットワークにおいて、請求項183記載の通信方法を実現するモジュールを備える複数のアップストリームノード及びエッジノードを備える発行−購読ネットワーク。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US36910502P | 2002-03-28 | 2002-03-28 | |
US36887002P | 2002-03-28 | 2002-03-28 | |
US36883302P | 2002-03-28 | 2002-03-28 | |
US36883102P | 2002-03-28 | 2002-03-28 | |
US36983202P | 2002-04-03 | 2002-04-03 | |
US44778203P | 2003-02-19 | 2003-02-19 | |
PCT/US2003/009624 WO2003083703A1 (en) | 2002-03-28 | 2003-03-28 | Method and apparatus for reliable and efficient content-based routing and query and response in a publish-subscribe network |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009031766A Division JP2009163753A (ja) | 2002-03-28 | 2009-02-13 | 発行−購読ネットワークにおける、信頼性が高く効率的なコンテンツに基づくルーティング、クエリ及び応答のための方法及び装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005521950A true JP2005521950A (ja) | 2005-07-21 |
Family
ID=28679208
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003581058A Pending JP2005521950A (ja) | 2002-03-28 | 2003-03-28 | 発行−購読ネットワークにおける、信頼性が高く効率的なコンテンツに基づくルーティング、クエリ及び応答のための方法及び装置 |
JP2009031766A Pending JP2009163753A (ja) | 2002-03-28 | 2009-02-13 | 発行−購読ネットワークにおける、信頼性が高く効率的なコンテンツに基づくルーティング、クエリ及び応答のための方法及び装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009031766A Pending JP2009163753A (ja) | 2002-03-28 | 2009-02-13 | 発行−購読ネットワークにおける、信頼性が高く効率的なコンテンツに基づくルーティング、クエリ及び応答のための方法及び装置 |
Country Status (6)
Country | Link |
---|---|
EP (1) | EP1969480A4 (ja) |
JP (2) | JP2005521950A (ja) |
KR (1) | KR100971506B1 (ja) |
CN (1) | CN100458767C (ja) |
AU (1) | AU2003218455A1 (ja) |
WO (1) | WO2003083703A1 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4814374B2 (ja) * | 2006-05-05 | 2011-11-16 | マイクロソフト コーポレーション | 発行者連合 |
JP2012511190A (ja) * | 2008-09-02 | 2012-05-17 | アリババ・グループ・ホールディング・リミテッド | メッセージ処理のための方法及びシステム |
JP2013500657A (ja) * | 2009-08-25 | 2013-01-07 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 通信システムにおけるユーザデータの変更の購読を処理するための方法及び装置 |
JP2018525760A (ja) * | 2015-08-07 | 2018-09-06 | サトリ ワールドワイド リミテッド ライアビリティ カンパニー | スケーラブルなリアルタイムメッセージングシステム |
JPWO2017141807A1 (ja) * | 2016-02-18 | 2018-11-22 | 日本電気株式会社 | 通信システム、エッジサーバ、方法およびプログラム |
US10771940B2 (en) | 2018-06-07 | 2020-09-08 | Toyota Jidosha Kabushiki Kaisha | In-vehicle device, information processing method and computer-readable medium |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110307603A1 (en) * | 2009-02-05 | 2011-12-15 | Nec Corporation | Broker node and event topic control method in distributed event distribution system |
US9720681B2 (en) * | 2011-07-20 | 2017-08-01 | Data I/O Corporation | Device programming system with data broadcast and method of operation thereof |
US8750309B2 (en) * | 2012-02-29 | 2014-06-10 | Telefonaktiebolaget L M Ericsson (Publ) | Compound masking and entropy for data packet classification using tree-based binary pattern matching |
US9886210B2 (en) * | 2015-06-09 | 2018-02-06 | Ultrata, Llc | Infinite memory fabric hardware implementation with router |
JP6547580B2 (ja) | 2015-10-20 | 2019-07-24 | 富士通株式会社 | 分散制御方法、分散制御システム、および分散制御プログラム |
US10129360B2 (en) * | 2016-03-28 | 2018-11-13 | The Boeing Company | Unified data networking across heterogeneous networks |
JP6665697B2 (ja) | 2016-06-09 | 2020-03-13 | 富士通株式会社 | 過去情報提供プログラム、過去情報提供方法及び過去情報提供装置 |
US9608928B1 (en) * | 2016-07-06 | 2017-03-28 | Machine Zone, Inc. | Multiple-speed message channel of messaging system |
KR102031726B1 (ko) * | 2017-11-16 | 2019-10-14 | 경북대학교 산학협력단 | 분산된 게시-구독 기법을 이용한 CoAP 기반 사물 인터넷 시스템의 작동 방법 |
KR102033500B1 (ko) * | 2017-12-26 | 2019-11-08 | 경희대학교 산학협력단 | 분산 클라우드 시스템에서 에지 클라우드에 의한 패킷 라우팅 방법 |
KR102279601B1 (ko) * | 2018-09-28 | 2021-07-19 | (주)구름네트웍스 | Dds를 위한 게이트웨이 구동 방법 |
KR102339661B1 (ko) * | 2018-09-28 | 2021-12-14 | (주)구름네트웍스 | Dds를 위한 게이트웨이 장치 |
US11429669B2 (en) * | 2019-08-06 | 2022-08-30 | Twitter, Inc. | Managing query subscription renewals in a messaging platform |
US11714694B2 (en) * | 2019-11-08 | 2023-08-01 | Salesforce, Inc. | Error notification mechanism for streaming events |
KR102527601B1 (ko) | 2021-04-02 | 2023-05-02 | 이상규 | 서버 및 사용자 단말에서의 구독 채널 참조 기반의 주제별 메시지 채팅 방법 |
CN113783838B (zh) * | 2021-08-05 | 2024-02-06 | 山东有人物联网股份有限公司 | 一种订阅方法、订阅控制装置及计算机可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11328064A (ja) * | 1998-05-08 | 1999-11-30 | Nec Corp | ミドルウェア蓄積データの更新方法と該方法を実行するサーバシステム |
WO2001049817A2 (de) * | 2000-01-05 | 2001-07-12 | Basf Aktiengesellschaft | Mikrokapselzubereitungen und mikrokapseln enthaltende wasch- und reinigungsmittel |
JP2001285287A (ja) * | 2000-02-18 | 2001-10-12 | Agilent Technol Inc | プレフィルタリング及びポストフィルタリングを利用したパブリッシュ/サブスクライブ装置及び方法 |
JP2001291044A (ja) * | 2000-03-08 | 2001-10-19 | Internatl Business Mach Corp <Ibm> | ビジネス・コンセプトの変化に基づく、サブスクリプションを用いるパブリッシュ/サブスクライブ・データ処理 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08153054A (ja) * | 1994-11-28 | 1996-06-11 | Mitsubishi Electric Corp | ファイル転送方式 |
US6065058A (en) * | 1997-05-09 | 2000-05-16 | International Business Machines Corp. | Dynamic push filtering based on information exchanged among nodes in a proxy hierarchy |
US20010052015A1 (en) * | 1998-06-24 | 2001-12-13 | Chueng-Hsien Lin | Push-pull sevices for the internet |
US6415027B1 (en) * | 1998-08-12 | 2002-07-02 | Bellsouth Intellectual Property Corporation | Networks, systems and methods for intelligently routing traffic within a telephone network |
US6262976B1 (en) * | 1998-09-17 | 2001-07-17 | Ordered Networks, Inc. | System and method for network flow optimization using traffic classes |
FI108195B (fi) * | 1998-10-19 | 2001-11-30 | Nokia Networks Oy | Mekanismi verkon aloittamaa informaation siirtoa varten |
US6252862B1 (en) * | 1999-05-20 | 2001-06-26 | Motorola, Inc. | Method and apparatus for routing packet data in a communications system |
JP4374094B2 (ja) * | 1999-06-14 | 2009-12-02 | 株式会社ジャストシステム | 情報処理装置、情報処理方法、およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 |
US6539396B1 (en) * | 1999-08-31 | 2003-03-25 | Accenture Llp | Multi-object identifier system and method for information service pattern environment |
JP3679289B2 (ja) * | 1999-12-06 | 2005-08-03 | 株式会社日立製作所 | ゲートウェイ装置によるデータ中継方法 |
JP2001256098A (ja) * | 2000-03-09 | 2001-09-21 | Hitachi Ltd | プロキシサーバにおけるキャッシの制御方法 |
KR20010107151A (ko) * | 2000-05-25 | 2001-12-07 | 반창모 | 컴퓨터 네트워크를 이용한 다목적 멀티미디어 가판대서비스 제공 방법 및 장치 |
US7216179B2 (en) * | 2000-08-16 | 2007-05-08 | Semandex Networks Inc. | High-performance addressing and routing of data packets with semantically descriptive labels in a computer network |
-
2003
- 2003-03-28 CN CNB038121808A patent/CN100458767C/zh not_active Expired - Lifetime
- 2003-03-28 KR KR1020047015458A patent/KR100971506B1/ko active IP Right Grant
- 2003-03-28 EP EP03714457A patent/EP1969480A4/en not_active Withdrawn
- 2003-03-28 JP JP2003581058A patent/JP2005521950A/ja active Pending
- 2003-03-28 AU AU2003218455A patent/AU2003218455A1/en not_active Abandoned
- 2003-03-28 WO PCT/US2003/009624 patent/WO2003083703A1/en active Application Filing
-
2009
- 2009-02-13 JP JP2009031766A patent/JP2009163753A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11328064A (ja) * | 1998-05-08 | 1999-11-30 | Nec Corp | ミドルウェア蓄積データの更新方法と該方法を実行するサーバシステム |
WO2001049817A2 (de) * | 2000-01-05 | 2001-07-12 | Basf Aktiengesellschaft | Mikrokapselzubereitungen und mikrokapseln enthaltende wasch- und reinigungsmittel |
JP2001285287A (ja) * | 2000-02-18 | 2001-10-12 | Agilent Technol Inc | プレフィルタリング及びポストフィルタリングを利用したパブリッシュ/サブスクライブ装置及び方法 |
JP2001291044A (ja) * | 2000-03-08 | 2001-10-19 | Internatl Business Mach Corp <Ibm> | ビジネス・コンセプトの変化に基づく、サブスクリプションを用いるパブリッシュ/サブスクライブ・データ処理 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4814374B2 (ja) * | 2006-05-05 | 2011-11-16 | マイクロソフト コーポレーション | 発行者連合 |
JP2012511190A (ja) * | 2008-09-02 | 2012-05-17 | アリババ・グループ・ホールディング・リミテッド | メッセージ処理のための方法及びシステム |
US8838703B2 (en) | 2008-09-02 | 2014-09-16 | Alibaba Group Holding Limited | Method and system for message processing |
JP2013500657A (ja) * | 2009-08-25 | 2013-01-07 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 通信システムにおけるユーザデータの変更の購読を処理するための方法及び装置 |
US8516066B2 (en) | 2009-08-25 | 2013-08-20 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for handling subscriptions to changes in user data in a telecommunications system |
JP2018525760A (ja) * | 2015-08-07 | 2018-09-06 | サトリ ワールドワイド リミテッド ライアビリティ カンパニー | スケーラブルなリアルタイムメッセージングシステム |
JPWO2017141807A1 (ja) * | 2016-02-18 | 2018-11-22 | 日本電気株式会社 | 通信システム、エッジサーバ、方法およびプログラム |
US10771940B2 (en) | 2018-06-07 | 2020-09-08 | Toyota Jidosha Kabushiki Kaisha | In-vehicle device, information processing method and computer-readable medium |
Also Published As
Publication number | Publication date |
---|---|
JP2009163753A (ja) | 2009-07-23 |
KR20040102061A (ko) | 2004-12-03 |
KR100971506B1 (ko) | 2010-07-21 |
CN100458767C (zh) | 2009-02-04 |
AU2003218455A1 (en) | 2003-10-13 |
EP1969480A1 (en) | 2008-09-17 |
EP1969480A4 (en) | 2008-12-03 |
CN1656474A (zh) | 2005-08-17 |
WO2003083703A1 (en) | 2003-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009163753A (ja) | 発行−購読ネットワークにおける、信頼性が高く効率的なコンテンツに基づくルーティング、クエリ及び応答のための方法及び装置 | |
US7551629B2 (en) | Method and apparatus for propagating content filters for a publish-subscribe network | |
Carzaniga et al. | Achieving scalability and expressiveness in an internet-scale event notification service | |
US20030189946A1 (en) | Method and apparatus for implementing persistent and reliable message delivery | |
US7653753B2 (en) | Method and apparatus for content-based packet routing using compact filter storage and off-line pre-computation | |
US20040076155A1 (en) | Caching with selective multicasting in a publish-subscribe network | |
US7676601B2 (en) | Method and system for processing financial data objects carried on broadcast data streams and delivering information to subscribing clients | |
US8069264B2 (en) | System for processing raw financial data streams to produce and distribute structured and validated product offering data to subscribing clients | |
US7958025B2 (en) | Method and system for processing raw financial data streams to produce and distribute structured and validated product offering objects | |
US7545805B2 (en) | Method and apparatus for content-based routing and filtering at routers using channels | |
KR100985237B1 (ko) | 패킷 라우팅을 위한 방법, 장치 및 시스템, 메시지 라우팅을 위한 방법 및 장치, 디지탈 컨텐트 분배를 위한 네트워크 및 방법, 및 라우팅 및 캐싱을 위한 방법, 네트워크 및 장치 | |
US20030195946A1 (en) | Method and apparatus for reliable publishing and subscribing in an unreliable network | |
US6910033B2 (en) | Method for storing Boolean functions to enable evaluation, modification, reuse, and delivery over a network | |
TW200425692A (en) | Methods, apparatus and computer programs for processing alerts and auditing in a publish/subscribe system | |
JP2008211835A (ja) | ペイロード検査を介したパケット・ルーティング、及びパブリッシュ/サブスクライブ型ネットワークにおけるサブスクリプション処理 | |
US20040083305A1 (en) | Packet routing via payload inspection for alert services | |
CN101312457A (zh) | 在发行-预订网络中使用的方法、路由器、设备和该网络 | |
US20030165139A1 (en) | Packet routing via payload inspection | |
JP2004506272A (ja) | 未加工金融データを処理して、妥当性検査した商品案内情報を加入者に対して生成するシステム | |
US7117270B2 (en) | Method for sending and receiving a Boolean function over a network | |
Tarkoma et al. | Filter merging for efficient information dissemination |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060309 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081118 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090213 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090324 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090722 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090817 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20090820 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20091211 |