(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-07-17
(54)【発明の名称】分散型台帳ネットワークにおけるコンテキスチュアル・メッセージングおよび情報ルーティングのためのシステムおよび方法
(51)【国際特許分類】
H04L 45/44 20220101AFI20240709BHJP
【FI】
H04L45/44
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024500186
(86)(22)【出願日】2022-07-07
(85)【翻訳文提出日】2024-02-28
(86)【国際出願番号】 US2022073518
(87)【国際公開番号】W WO2023283607
(87)【国際公開日】2023-01-12
(32)【優先日】2021-07-07
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】519022104
【氏名又は名称】ジェイピーモルガン・チェース・バンク,ナショナル・アソシエーション
【氏名又は名称原語表記】JPMorgan Chase Bank,N.A.
【住所又は居所原語表記】383 Madison Avenue,New York,NY 10179,United States of America
(74)【代理人】
【識別番号】100118902
【氏名又は名称】山本 修
(74)【代理人】
【識別番号】100106208
【氏名又は名称】宮前 徹
(74)【代理人】
【識別番号】100196508
【氏名又は名称】松尾 淳一
(74)【代理人】
【識別番号】100162846
【氏名又は名称】大牧 綾子
(72)【発明者】
【氏名】モバ,トゥラシ
(72)【発明者】
【氏名】リトルトン,アレクサンダー
(72)【発明者】
【氏名】ドーフマン,ハンナ
(72)【発明者】
【氏名】パテル,パルカ
(72)【発明者】
【氏名】ゴセット,ロバート・フランクリン
【テーマコード(参考)】
5K030
【Fターム(参考)】
5K030GA11
5K030HD03
5K030LB05
5K030LC09
5K030LE01
(57)【要約】
分散型台帳ネットワークでのコンテキスチュアル・メッセージング及び情報ルーティングのシステム及び方法を開示する。一実施形態では、方法は、分散型台帳ネットワークの送信側エンティティ・ノードが実行する分散型アプリケーションを含み、送信側エンティティからメッセージ又は通信文を受け取り、メッセージ又は通信文に関してのコンテキストを特定し、分散型台帳ネットワークの他のノードの能力を検索し、能力に基づいて、メッセージ又は通信文に対しての見込みのある受信側エンティティを特定し、送信側エンティティに関してのルーティング・プリファレンスを検索し、見込みのある受信側エンティティの中から受信側エンティティを特定するために、送信側エンティティに関してのルーティング・プリファレンスを適用し、ルーティング・プリファレンスを用いて受信側エンティティに対しての受信側ノードへメッセージ又は通信文を送るようにし、受信側ノードは、受信側エンティティに関してのルーティング・プリファレンスを用いて、受信側エンティティへメッセージ又は通信文をルーティングするように構成される。
【特許請求の範囲】
【請求項1】
分散型台帳ネットワークにおけるコンテキスチュアル・メッセージングおよび情報ルーティングの方法であって、
分散型台帳ネットワークにおける送信側エンティティ・ノードにより実行される分散型アプリケーションで、送信側エンティティからメッセージまたは通信文を受け取ることと、
前記分散型アプリケーションにより、前記メッセージまたは前記通信文に関してのコンテキストを特定することと、
前記分散型アプリケーションにより、前記分散型台帳ネットワークにおける他のノードの能力を検索することと、
前記分散型アプリケーションにより、前記能力に基づいて、前記メッセージまたは前記通信文に対しての見込みのある受信側エンティティを特定することと、
前記分散型アプリケーションにより、前記送信側エンティティに関してのルーティング・プリファレンスを検索することと、
前記分散型アプリケーションにより、前記見込みのある受信側エンティティから受信側エンティティを特定するために、前記送信側エンティティに関しての前記ルーティング・プリファレンスを適用することと、
前記分散型アプリケーションにより、前記ルーティング・プリファレンスを用いて、前記受信側エンティティに対しての受信側ノードへ、前記メッセージまたは前記通信文を送ることと
を含む方法。
【請求項2】
請求項1に記載の方法であって、前記コンテキストは前記メッセージからのサブジェクトおよび/またはアカウントを含む、方法。
【請求項3】
請求項2に記載の方法であって、前記送信側エンティティに関しての前記ルーティング・プリファレンスは前記メッセージの前記サブジェクトに基づく、方法。
【請求項4】
請求項2に記載の方法であって、前記ルーティング・プリファレンスは前記メッセージにおける前記アカウントに基づく、方法。
【請求項5】
請求項1に記載の方法であって、前記受信側ノードは、前記送信側エンティティ・ノードに関してのルーティング・プリファレンスを前記メッセージへ適用するように構成される、方法。
【請求項6】
請求項1に記載の方法であって、前記メッセージは前記受信側ノードにおける分散型アプリケーションへ送られる、方法。
【請求項7】
請求項1に記載の方法であって、前記メッセージは伝送制御プロトコル(TCP)/リモート・プロシージャ・コール(RCP)を用いて通信される、方法。
【請求項8】
請求項1に記載の方法であって、前記メッセージは許可されたアクセス・ルートを用いて通信される、方法。
【請求項9】
請求項1に記載の方法であって、前記受信側ノードは、前記受信側エンティティに関してのルーティング・プリファレンスを用いて、前記受信側エンティティへ前記メッセージまたは前記通信文をルーティングするように構成される、方法。
【請求項10】
システムであって、
分散型台帳ネットワークと、
前記分散型台帳ネットワークにおける複数のノードであって、各ノードが分散型アプリケーションを実行する複数のノードと
を含み、
送信側ノードの分散型アプリケーションが、送信側エンティティからメッセージまたは通信文を受け取り、
前記送信側ノードの分散型アプリケーションが、前記メッセージまたは前記通信文に関してのコンテキストを特定し、
前記送信側ノードの分散型アプリケーションが、前記分散型台帳ネットワークにおける他のノードの能力を検索し、
前記送信側ノードの分散型アプリケーションが、前記能力に基づいて、前記メッセージまたは前記通信文に対しての見込みのある受信側エンティティを特定し、
前記送信側ノードの分散型アプリケーションが、前記送信側エンティティに関してのルーティング・プリファレンスを検索し、
前記送信側ノードの分散型アプリケーションが、前記見込みのある受信側エンティティから受信側エンティティを特定するために、前記送信側エンティティに関しての前記ルーティング・プリファレンスを適用し、
前記送信側ノードの分散型アプリケーションが、前記ルーティング・プリファレンスを用いて、前記受信側エンティティに対しての受信側ノードへ、前記メッセージまたは前記通信文を送る、
システム。
【請求項11】
請求項10に記載のシステムであって、前記コンテキストは前記メッセージからのサブジェクトおよび/またはアカウントを含む、システム。
【請求項12】
請求項11に記載のシステムであって、前記送信側エンティティに関しての前記ルーティング・プリファレンスは前記メッセージの前記サブジェクトに基づく、システム。
【請求項13】
請求項11に記載のシステムであって、前記送信側エンティティに関しての前記ルーティング・プリファレンスは前記メッセージにおける前記アカウントに基づく、
システム。
【請求項14】
請求項10に記載のシステムであって、前記メッセージは前記受信側ノードにおける分散型アプリケーションへ送られる、システム。
【請求項15】
請求項10に記載のシステムであって、前記メッセージは伝送制御プロトコル(TCP)/リモート・プロシージャ・コール(RCP)を用いて通信される、システム。
【請求項16】
請求項10に記載のシステムであって、前記メッセージは許可されたアクセス・ルートを用いて通信される、システム。
【請求項17】
請求項10に記載のシステムであって、前記受信側ノードは、前記受信側エンティティに関してのルーティング・プリファレンスを用いて、前記受信側エンティティへ前記メッセージまたは前記通信文をルーティングするように構成される、システム。
【請求項18】
格納された命令を含む非一時的コンピュータ読取可能格納媒体であって、前記命令は、1以上のコンピュータ・プロセッサにより読まれて実行されたときに、前記1以上のコンピュータ・プロセッサに、
送信側エンティティからメッセージまたは通信文を受け取るステップと、
前記メッセージまたは前記通信文に関してのコンテキストを特定するステップと、
分散型台帳ネットワークにおける他のノードの能力を検索するステップと、
前記能力に基づいて、前記メッセージまたは前記通信文に対しての見込みのある受信側エンティティを特定するステップと、
前記送信側エンティティに関してのルーティング・プリファレンスを検索するステップと、
前記見込みのある受信側エンティティから受信側エンティティを特定するために、前記送信側エンティティに関しての前記ルーティング・プリファレンスを適用するステップと、
前記ルーティング・プリファレンスを用いて、前記受信側エンティティに対しての受信側ノードへ、前記メッセージまたは前記通信文を送るステップと
を含むステップを行わせるものである、
非一時的コンピュータ読取可能格納媒体。
【請求項19】
請求項18に記載の非一時的コンピュータ読取可能格納媒体であって、前記メッセージは伝送制御プロトコル(TCP)/リモート・プロシージャ・コール(RCP)を用いて通信される、非一時的コンピュータ読取可能格納媒体。
【請求項20】
請求項18に記載の非一時的コンピュータ読取可能格納媒体であって、前記メッセージは許可されたアクセス・ルートを用いて通信される、非一時的コンピュータ読取可能格納媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[0001] 実施形態は、分散型台帳ネットワーク(distributed ledger network)におけるコンテキスチュアル・メッセージング(contextual messaging)および情報ルーティング(information routing)に関する。
【背景技術】
【0002】
[0002] Liink by J.P.Morgan(サービス・マーク)プラットフォームなどのような分散型台帳プラットフォームは、それへの、金融機関、法人、およびフィンテックを含む参加者へ、コラボレーション、新たな能力へのアクセス、メッセージング、および商業化の機会を可能にするエコシステムおよびネットワークを提供する。
【発明の概要】
【0003】
[0003] 分散型台帳ネットワークにおけるコンテキスチュアル・メッセージングおよび情報ルーティングのシステムおよび方法が提供される。1つの実施形態によると、分散型台帳ネットワークにおけるコンテキスチュアル・メッセージングおよび情報ルーティングの方法は、(1)分散型台帳ネットワークにおける送信側エンティティ・ノードにより実行される分散型アプリケーションで、送信側エンティティからメッセージまたは通信文を受け取ることと、(2)前記分散型アプリケーションにより、前記メッセージまたは前記通信文に関してのコンテキストを特定することと、(3)前記分散型アプリケーションにより、前記分散型台帳ネットワークにおける他のノードの能力を検索することと、(4)前記分散型アプリケーションにより、前記能力に基づいて、前記メッセージまたは前記通信文に対しての見込みのある受信側エンティティを特定することと、(5)前記分散型アプリケーションにより、前記送信側エンティティに関してのルーティング・プリファレンスを検索することと、(6)前記分散型アプリケーションにより、前記見込みのある受信側エンティティから受信側エンティティを特定するために、前記送信側エンティティに関しての前記ルーティング・プリファレンスを適用することと、(7)前記分散型アプリケーションにより、前記ルーティング・プリファレンスを用いて、前記受信側エンティティに対しての受信側ノードへ、前記メッセージまたは前記通信文を送ることとを含むことができ、前記受信側ノードは、前記受信側エンティティに関してのルーティング・プリファレンスを用いて、前記受信側エンティティへ前記メッセージまたは前記通信文をルーティングするように構成される。
【0004】
[0004] 実施形態では、見込みのある受信側エンティティを特定するために、コンテキストと能力との双方が用いられる。ルーティング・プリファレンスは、見込みのある受信側エンティティの中から1以上の受信側エンティティを特定するために、用いることができる(例えば、1個より多くの受信機へ送信するユースケースがある場合)。
【0005】
[0005] 1つの実施形態では、コンテキストは、メッセージからのサブジェクトおよび/またはアカウントを含むことができる。送信側エンティティに関してのルーティング・プリファレンスは、メッセージのサブジェクトおよび/またはメッセージにおけるアカウントに基づくことができる。
【0006】
[0006] 1つの実施形態では、受信側ノードは、送信側エンティティ・ノードに関してのルーティング・プリファレンスをメッセージへ適用するように構成することができる。
【0007】
[0007] 1つの実施形態では、メッセージを受信側ノードにおける分散型アプリケーションへ送ることができる。
【0008】
[0008] 1つの実施形態では、メッセージは、伝送制御プロトコル(TCP)/リモート・プロシージャ・コール(RCP)を用いることや、許可されたアクセス・ルートを用いることなどにより、通信することができる。
【0009】
[0009] 別の実施形態によると、システムは、分散型台帳ネットワークと、前記分散型台帳ネットワークにおける複数のノードであって、各ノードが分散型アプリケーションを実行する複数のノードとを、含むことができる。送信側ノードの分散型アプリケーションは、送信側エンティティからメッセージまたは通信文を受け取ることができ、前記メッセージまたは前記通信文に関してのコンテキストを特定することができ、前記分散型台帳ネットワークにおける他のノードの能力を検索することができ、前記能力に基づいて、前記メッセージまたは前記通信文に対しての見込みのある受信側エンティティを特定することができ、前記送信側エンティティに関してのルーティング・プリファレンスを検索することができ、前記見込みのある受信側エンティティの中から受信側エンティティを特定するために、前記送信側エンティティに関しての前記ルーティング・プリファレンスを適用することができ、前記ルーティング・プリファレンスを用いて、前記受信側エンティティに対しての受信側ノードへ、前記メッセージまたは前記通信文を送ることができる。
【0010】
[0010] 1つの実施形態では、コンテキストは、メッセージからのサブジェクトおよび/またはアカウントを含むことができる。送信側エンティティに関してのルーティング・プリファレンスは、メッセージのサブジェクトおよび/またはメッセージにおけるアカウントに基づくことができる。
【0011】
[0011] 1つの実施形態では、メッセージを受信側ノードにおける分散型アプリケーションへ送ることができる。
【0012】
[0012] 1つの実施形態では、メッセージは、伝送制御プロトコル(TCP)/リモート・プロシージャ・コール(RCP)を用いることや、許可されたアクセス・ルートを用いることなどにより、通信することができる。
【0013】
[0013] 別の実施形態によると、非一時的コンピュータ読取可能格納媒体は、それへ格納された命令を含むことができ、前記命令は、1以上のコンピュータ・プロセッサにより読まれて実行されたときに、前記1以上のコンピュータ・プロセッサに、送信側エンティティからメッセージまたは通信文を受け取るステップと、前記メッセージまたは前記通信文に関してのコンテキストを特定するステップと、分散型台帳ネットワークにおける他のノードの能力を検索するステップと、前記能力に基づいて、前記メッセージまたは前記通信文に対しての見込みのある受信側エンティティを特定するステップと、前記送信側エンティティに関してのルーティング・プリファレンスを検索するステップと、前記見込みのある受信側エンティティの中から受信側エンティティを特定するために、前記送信側エンティティに関しての前記ルーティング・プリファレンスを適用するステップと、前記ルーティング・プリファレンスを用いて、前記受信側エンティティに対しての受信側ノードへ、前記メッセージまたは前記通信文を送るステップとを含むステップを行わせる。
【0014】
[0014] 1つの実施形態では、メッセージは、伝送制御プロトコル(TCP)/リモート・プロシージャ・コール(RCP)を用いることや、許可されたアクセス・ルートを用いることなどにより、通信することができる。
【0015】
[0015] 本発明を完全に理解することを容易にするために、ここでは添付の図面を参照する。図面は、本発明を限定するものと解釈すべきではなく、様々な構成および実施形態を例示することのみを意図したものである。
【図面の簡単な説明】
【0016】
【
図1】
図1は、実施形態に従った分散型台帳ネットワークにおけるコンテキスチュアル・メッセージングおよび情報ルーティングのためのシステムを示す。
【
図2】
図2は、実施形態に従った分散型台帳ネットワークにおけるコンテキスチュアル・メッセージングおよび情報ルーティングのための方法を示す。
【
図3】
図3は、本開示の構成をインプリメントするための例としてのコンピューティング・システムを示す。
【発明を実施するための形態】
【0017】
[0019] 分散型台帳ネットワークにおけるコンテキスチュアル・メッセージングおよび情報ルーティングのためのシステムおよび方法が開示される。コンテキスト・ベースのメッセージング・システムは、メッセージ、通信文(communication)などについて、メッセージや通信文のコンテキスト、送信側エンティティ、受信側エンティティのプリファレンス(preference)などに基づいて、メッセージの送信者から受信側エンティティへのルーティングを行うことができる。コンテキストの例は、メッセージのコンテンツ、メッセージのサブジェクト、メッセージにおけるアカウント番号(1以上)などを含む。ルーティングは動的なものとすることができ、ルーティングは、コンテンツ、タイミングなとに応じて変わり得る。
【0018】
[0020] 1つの実施形態では、送信側エンティティ(例えば、組織、個人など)は、メッセージまたは通信文を受信側エンティティへルーティングすることに関して、プリファレンスをコンテキストに基づいて特定することができる。例えば、送信側エンティティは、コンテキスト(例えば、サブジェクト、コンテンツ、アカウント(1以上)など)を特定することができ、メッセージまたは通信文に対しての受信側エンティティを特定することができる。
【0019】
[0021] ルーティングは、送信側ノードおよび/または受信側ノードで決定することができる。1つの実施形態では、送信側ノードは、コンテキストから受信側ノードを特定し、次に、受信側ノードは、送信者および/または宛先により提供され得るルーティング規則を適用することができ、受信側エンティティへのメッセージまたは通信文の更なるルーティングを行うようにする。
【0020】
[0022] 別の実施形態では、受信側ノードは、その宛先のコンテキスト能力を、ネットワークIDセットアップを通して暗黙的に、またはコンテキスト能力の自己特定を通して明示的に、発行することができる。送信側ノードは、具体化コンテキストに基づいて、および受信側ノードのコンテキスト・カバレッジに基づいて、宛先を特定するために規則を適用することができる。ルーティング規則は、宛先コンテキスト・アライメントに基づいて送信者により提供することができる。
【0021】
[0023]
図1を参照すると、1つの実施形態に従ったコンテキスト・ベースのメッセージングのためのシステムが開示されている。システム100は、分散型台帳ネットワーク120を含むことができ、これは、複数のノード110(例えば、ノード110
1、ノード110
2、ノード110
3、ノード110
4、・・・、ノード110
N)を含むことができる。各ノード110は、分散型アプリケーション(dApp)112(例えば、dApp112
1、dApp112
2、dApp112
3、dApp112
4、・・・、dApp112
N)と、設定モジュール114(例えば、設定モジュール114
1、設定モジュール114
2、設定モジュール114
3、設定モジュール114
4、・・・、設定モジュール114
N)と、能力モジュール116(例えば、能力モジュール116
1、能力モジュール116
2、能力モジュール116
3、能力モジュール116
4、・・・、能力モジュール116
N)とを含むことができる。
【0022】
[0024] dApp112は、それぞれのノード110のユーザからメッセージを受信することができ、それを、宛先ノードへルーティングすることができる(例えば、ノード1101からノード1102へ)。dApp112は、メッセージのコンテキスト、例えば、サブジェクト、コンテンツ、アカウント(1以上)などに基づいて、そのメッセージのルーティングを行うことができる。1つの実施形態では、dApp112は、メッセージのルーティングを行うために、設定モジュール114におけるユーザ・プリファレンスを適用することができる。
【0023】
[0025] 能力モジュール116は、そのノード110の能力を格納することができる。能力は、例えば、ノードによりサポートされるシステム(例えば、支払いシステム、処理システムなど)に基づくものであり得る。サポートされるシステムは、取引区分などのような産物と関連し得る。1つの実施形態では、エンティティがノード110においてその能力を自己報告することができ、別の実施形態では、ノード110がエンティティの能力を学習することができる。
【0024】
[0026] dApp112は、能力モジュール116におけるノード110の能力および受信側設定モジュール114に従って、出て行くメッセージ(例えば、第1ノード1101から第2ノード1102へ送られているメッセージ)および/または入ってくるメッセージ(例えば、第1ノード1101で受け取られている第2ノード1102からのメッセージ)のルーティングを行うことができる。1つの実施形態では、dApp112は、出て行くメッセージを受信可能なノード110を特定するために、他のノード110の能力モジュール116から能力を検索することができる。
【0025】
[0027] 実施形態では、ノード110間でのメッセージは許可された(permissioned)ものであり得、これは、ノード110のユーザは、そのユーザが見ることを許可されている情報のみを見ることができる、ということを意味する。これは、ノード110のユーザがパーティーとなっているクエリを含み得る。分散型台帳ネットワーク120のデータも暗号化され得る。
【0026】
[0028] 各ユーザは、分散型台帳ネットワーク120上の何れのネットワーク参加者(例えば、他のノード110、またはノード110のユーザ)を雇うかを決定することができる。暗号化された情報は、分散型台帳ネットワーク120を通じて要求側ユーザと受信側ユーザとの間でのみ共有されることができる。1つの実施形態では、公開情報を伴わないトランザクション・ハッシュは、許可された分散型台帳ネットワーク120へ格納することができ、全ユーザが入手できるようにすることができる。
【0027】
[0029] 実施形態では、コンテキストと能力との双方が、見込みのある受信側エンティティを特定するために用いられる。ルーティング・プリファレンスは、見込みのある受信側エンティティの中から1以上の受信側エンティティを特定するために用いることができる(例えば、1より多くの受信機へ送るユースケースがある場合)。
【0028】
[0030] 制御の例は、データ・リクエストがデータ所有者へシステム的にルーティングされ得ることと、データが経路で及び静止状態で暗号化され得ることと、別個のプライベートおよび許可されたデータベースが提供され得ることと、許可されたノードが、要求者が見ることを許される情報を制限し得ることと、個人的情報データがプライベート・データベースに保持されてハッシュ値のみが分散型台帳で共有され得ることと、データ・リクエストがセキュアに認証され得ることとのうちの幾つか又は全てを含むことができる。
【0029】
[0031] 実施形態では、各参加者のインフラストラクチャは、それ自体のバーチャル・ローカル・エリア・ネットワーク(VLAN)・セットアップにおいて、ウェブのプロダクションおよびディザスタ・リカバリのインスタンス、アプリケーション、DB、2つの別個のハイパー・コンバージ管理される装置に物理的に駐在する仮想マシン(VM)を用いて、構成および配備することができる。ネットワークでの参加者間でのノード間接続は、伝送制御プロトコル(TCP)/リモート・プロシージャ・コール(RCP)を介するものであり得、特定のセキュアなIPと、VLAN間のファイアウォールにおける許可されたアクセス・ルートを介して構成および制御されるポートとを介するものであり得る。トランザクションは、参加者セットアップのプロダクション・ノードに対してのみコミットされ得、別個にされたレプリケーション・プロセスは、フェイルオーバーがある場合の回復/復旧における助けとなるノード・ペア・レプリケーションを保証する。各参加機関のネットワークIPは、承認されたリストに載せられて、アプリケーションへのアクセスを可能とするようにされ得る。ネットワーク参加者のウェブ・インターフェースへのエンド・ユーザ・アクセスは、セキュアなウェブ・サービス(HTTPS)を介するものであり得る。
【0030】
[0032]
図2を参照すると、1つの実施形態に従ったコンテキスト・ベースのメッセージングのための方法が開示されている。ステップ205において、送信側エンティティは、メッセージまたは通信文を、分散型台帳ネットワークにおけるそのノードへ提出することができる。1つの実施形態では、分散型アプリケーションまたは「dApp」は、送信側エンティティからメッセージの提出を受けることができる。
【0031】
[0033] 1つの実施形態では、送信側エンティティは、そのノードと通信すること、または分散型台帳ネットワークにおける1つのノードとして参加することができる。
【0032】
[0034] ステップ210において、送信側エンティティ・ノードのdAppは、メッセージまたは通信文からコンテキスト(例えば、サブジェクト、コンテンツ、アカウント(1以上)など)を特定することができる。
【0033】
[0035] ステップ215において、送信側エンティティ・ノードのdAppは、他のノードの能力に基づいて、見込みのある受信側エンティティを特定することができる。例えば、送信側エンティティ・ノードのdAppは、他のノードの能力を検索することができ、メッセージまたは通信文を処理することができる受信側エンティティを特定することができる。
【0034】
[0036] ステップ220において、送信側エンティティ・ノードのdAppは、送信側エンティティのルーティング・プリファレンスを取り出して適用することができ、メッセージまたは通信文に対して、見込みのある受信側エンティティの中から受信側エンティティを特定することができる。1つの実施形態では、送信側エンティティ(例えば、組織、個人など)は、受信側エンティティへのメッセージまたは通信文のルーティングに関してのプリファレンスを、設定におけるコンテキストに基づいて、特定することができる。例えば、送信側エンティティは、コンテキスト(例えば、サブジェクト、コンテンツ、アカウント(1以上)など)を特定することができ、メッセージまたは通信文についての受信側エンティティを特定することができる。
【0035】
[0037] 実施形態では、コンテキストと能力との双方が、見込みのある受信側エンティティを特定するために用いられる。ルーティング・プリファレンスは、見込みのある受信側エンティティから1以上の受信側エンティティを特定するために用いることができる(例えば、1より多くの受信機へ送るユースケースがある場合)。
【0036】
[0038] 1つの実施形態では、ルーティングは、送信側ノードおよび/または受信側ノードとして決定することができる。例えば、送信側ノードは、コンテキストから受信側ノードを特定することができ、次に、受信側ノードは、送信者および/または宛先により提供され得るルーティング規則を適用することができ、受信側エンティティへのメッセージまたは通信文の更なるルーティングを行うようにする。
【0037】
[0039] 1つの実施形態では、dAppは、受信側エンティティと関連する受信側エンティティ・ノードを特定することができ、その受信側エンティティ・ノードへのメッセージまたは通信文のルーティングを行うことができる。受信側エンティティ・ノードのdAppは、次に、受信側エンティティへのメッセージまたは通信文のルーティングを行うために、受信側エンティティのプリファレンスを適用することができる。
【0038】
[0040] ステップ225において、送信側エンティティ・ノードのdAppは、通信文またはメッセージを受信側エンティティ・ノードへ送ることができる。
【0039】
[0041] ステップ230において、受信側エンティティ・ノードは、通信文またはメッセージを受信することができ、オプションとして、望まれる場合には、その通信文またはメッセージの更なるルーティングを行うために、追加のルーティング・プリファレンスを適用することができる。
【0040】
[0042] ステップ235において、受信側エンティティ・ノードは、受信側エンティティへのメッセージまたは通信文のルーティングを行うことができる。
【0041】
[0043]
図3は、本開示の構成をインプリメントするための例としてのコンピューティング・システムを示す。
図3は、例としてコンピューティング・デバイス300を示す。コンピューティング・デバイス300は、ここで説明するシステム・コンポーネントを表し得る。コンピューティング・デバイス300はプロセッサ305を含むことができ、これはメモリ310へ結合することができる。メモリ310は、揮発性メモリを含むことができる。プロセッサ305は、メモリ310に格納されたソフトウェア・プログラム315などのようなコンピュータ実行可能プログラム・コードを実行することができる。ソフトウェア・プログラム315は、ここで開示した論理ステップの1以上のものを、プロセッサ305により実行され得るプログラム命令として含むことができる。メモリ310はまた、データ・リポジトリ320を含むことができ、これはデータの永続性のために不揮発性メモリとすることができる。プロセッサ305とメモリ310とはバス330により結合することができる。バス330はまた、有線ネットワーク・インターフェース342やワイヤレス・ネットワーク・インターフェース344などのような、1以上のネットワーク・インターフェース・コネクタ340へ結合することができる。コンピューティング・デバイス300はまた、ユーザ・インターフェース・コンポーネントを有することができ、それらは、グラフィカル・ユーザ・インターフェースを表示するため及びユーザから入力を受けるためのスクリーン、マウス、キーボード、および/または他の入力/出力コンポーネント(示さず)などである。
【0042】
[0044] 更なる詳細については、添付の付属書類で見つけることができ、それにおける開示についても、その全体がこの参照によりここに組み込まれる。
【0043】
[0045] 以下において、システムおよび方法のインプリメンテーションの全体的な構成について説明する。
【0044】
[0046] システムまたはシステムの一部の実施形態は、例えば、汎用コンピュータなどのような「処理マシン」の形とすることができる。ここで用いる「処理マシン」という用語は、少なくとも1つのメモリを用いる少なくとも1つのプロセッサを含むものと理解される。少なくとも1つのメモリは、一組の命令を格納する。命令は、処理マシンの1つのメモリまたは複数のメモリへ永久的または一時的に格納することができる。プロセッサは、データを処理するために、1つのメモリまたは複数のメモリに格納された命令を実行する。命令の組は、上述のタスクなどのような特定の1つのタスクまたは複数のタスクを行う様々な命令を含むことができる。特定のタスクを行うためのそのような命令の組は、プログラム、ソフトウェア・プログラム、または単にソフトウェアとして特徴付けすることができる。
【0045】
[0047] 1つの実施形態では、処理マシンは、特殊用途のプロセッサとすることができる。
【0046】
[0048] 1つの実施形態では、処理マシンは、クラウド・ベースの処理マシン、物理的な処理マシン、またはこれらの組み合わせとすることができる。
【0047】
[0049] 上述のように、処理マシンは、データを処理するために、単独または複数のメモリに格納された命令を実行する。このデータの処理は、例えば、処理マシンの単独または複数のユーザのコマンドに応答してのものであり得、また、以前の処理に応答してのものであり得、また、別の処理マシンからのリクエストおよび/または何れかの他の入力に応答してのものであり得る。
【0048】
[0050] 上述のように、実施形態をインプリメントするために用いられる処理マシンは、汎用コンピュータであり得る。しかし、上述の処理マシンはまた、他の多種の技術のうちの任意のものを用いることもでき、それらは特定用途向けコンピュータやコンピュータ・システムを含み、それらは、例えば、マイクロコンピュータ、ミニコンピュータまたはメインフレーム、プログラムされたマイクロプロセッサ、マイクロコントローラ、周辺集積回路エレメント、CSIC(特定顧客向け集積回路)またはASIC(特定用途向け集積回路)または他の集積回路、論理回路、デジタル信号プロセッサ、FPGA(フィールド・プログラマブル・ケート・アレイ)やPLD(プログラマブル・ロジック・デバイス)やPLA(プログラマブル・ロジック・アレイ)やPAL(プログラマブル・アレイ・ロジック)などのようなプログラマブル・ロジック・デバイス、またはここで開示した処理のステップをインプリメントすることができる任意の他のデバイスまたはデバイスの取り合わせを含む。
【0049】
[0051] 実施形態をインプリメントするために用いられる処理マシンは、適切なオペレーティング・システムを用いることができる。
【0050】
[0052] 上記の実施形態の方法を実施するために処理マシンのプロセッサおよび/またはメモリを同じ地理的位置に配する必要はない、ということが理解される。すなわち、処理マシンにより用いられるプロセッサおよびメモリのそれぞれを、地理的に異なる位置に配することができ、任意の適切な様式で通信するように接続することができる。更に、プロセッサおよび/またはメモリのそれぞれは設備の様々な物理的な部分で構成でき得る、ということが理解される。従って、プロセッサが1つの場所にある設備の1つの部分である必要はなく、また、メモリが別の場所にある設備の別の1つの部分である必要はない。すなわち、プロセッサが、2つの異なる物理的位置にある設備の2つの部分であってもよいと考えられている。設備の2つの異なる部分は、任意の適切な形で接続することができる。更に、メモリは、2以上の物理的位置にあるメモリの2以上の部分を含むことができる。
【0051】
[0053] 更に説明すると、上述の処理は、様々なコンポーネントおよび様々なメモリにより行われる。しかし、更なる実施形態に従っての上述の2つの異なるコンポーネントにより行われる処理は、単一のコンポーネントにより行うこともできる、ということが理解される。更に、上述の1つの個別のコンポーネントにより行われる処理は、2つの個別のコンポーネントにより行うこともできる。
【0052】
[0054] 同様に、更なる実施形態に従っての上述の2つの個別のメモリ部分により行われたメモリ格納は、単一のメモリ部分により行うことができる。更に、上述の1つの個別のメモリ部分により行われるメモリ格納は、2つのメモリ部分により行うこともできる。
【0053】
[0055] 更に、様々なプロセッサおよび/またはメモリの間での通信を提供するために、およびプロセッサおよび/またはメモリが任意の他のエンティティと通信することを可能とするために、すなわち、例えば、更なる命令を得るため、またはリモート・メモリ・ストアへアクセスするため及びそれを使用するために、様々な技術を用いることができる。そのような通信を提供するために使用されるそのような技術は、例えば、ネットワーク、インターネット、イントラネット、エクストラネット、LAN、イーサネット(登録商標)、セル・タワーや衛星を介してのワイヤレス通信、または通信を提供する任意のクライアント・サーバ・システムを含み得る。そのような通信技術は、例えば、TCP/IP、UDP、OSIなどのような、任意の適切なプロトコルを用いることができる。
【0054】
[0056] 上述のように、1組の命令を、実施形態の処理において用いることができる。1組の命令は、プログラムまたはソフトウェアの形とすることができる。ソフトウェアは、例えば、システム・ソフトウェアやアプリケーション・ソフトウェアの形とすることができる。また、ソフトウェアは、例えば、別個のプログラムの集合体や、大きいプログラム内のプログラム・モジュールや、プログラム・モジュールの一部といった形とすることができる。また、用いられるソフトウェアは、オブジェクト指向プログラミングの形のモジュール型プログラミングを含むことができる。ソフトウェアは、処理マシンへ、処理中のデータを用いてすべきことを伝える。
【0055】
[0057] 更に、実施形態のインプリメンテーションおよび動作で用いられる命令または1組の命令は、適切な形にして、処理マシンが命令を読むことができるようにする、ということが理解される。例えば、プログラムを形成する命令は、機械語またはオブジェクト・コードへと変換される適切なプログラミング言語の形とすることができ、これは、単一または複数のプロセッサが命令を読み取ることを可能とする。すなわち、特定のプログラミング言語で書かれたプログラミング・コードまたはソース・コードの行が、コンパイラやアセンブラやインタープリタを用いて、機械語へと変換される。機械語は、2進コード化した機械命令であり、特定の型の処理マシンに対しての特定的なものであり、例えば、特定の型のコンピュータに対しての特定的なものである。コンピュータは機械語を理解する。
【0056】
[0058] 様々な実施形態に従って任意の適切なプログラミング言語を用いることができる。また、実施形態を実施する際に用いられる命令および/またはデータは、望まれる場合には、任意の圧縮や暗号化の技術やアルゴリズムを用いることができる。暗号化モジュールは、データを暗号化するために用いることができる。更に、ファイルや他のデータは、例えば、適切な暗号解除モジュールを用いて暗号解除することができる。
【0057】
[0059] 上述のように、実施形態は、例えば、少なくとも1つのメモリを含むコンピュータまたはコンピュータ・システムを含む処理マシンの形で、例示したように実施することができる。1組の命令、即ち、例えば、コンピュータ・オペレーティング・システムが上述の動作を行うことを可能にするソフトウェアは、上述のように、多種の媒体のうちの任意の単一または複数のものに含まれ得ることが、理解される。更に、1組の命令により処理されるデータもまた、多種の媒体のうちの任意の単一または複数のものに含まれ得る。すなわち、特定の媒体、即ち、実施形態で用いられる1組の命令および/またはデータを保持するために用いられる処理マシンのメモリは、例えば、様々な物理的な形態や送信のうちの任意の形であり得る。例として、媒体は、コンパクト・ディスク、DVD、集積回路、ハード・ディスク、フロッピー・ディスク、光ディスク、磁気テープ、RAM、ROM、PROM、EPROM、ワイヤ、ケーブル、ファイバ、通信チャンネル、衛星伝送、メモリ・カード、SIMカード、または他のリモート伝送、また、プロセッサによる読み取りが可能な任意の他の媒体やデータのソースの形とすることができる。
【0058】
[0060] 更に、実施形態をインプリメントする処理マシンで用いられる単一または複数のメモリは、望まれるようにメモリが命令やデータや他の情報を保持することを可能とするように、様々な形のうちの任意のものとすることができる。従って、メモリは、データを保持するためのデータベースの形とすることができる。データベースは、例えば、フラット・ファイル配列や関係データベース配列などのような、ファイルの任意の望ましい配列を用いることができる。
【0059】
[0061] システムおよび方法において、様々な「ユーザ・インターフェース」を用いて、ユーザと、実施形態をインプリメントするために用いられる単一または複数の処理マシンとが相互作用することを、可能とすることができる。ここで用いにれるユーザ・インターフェースは、処理マシンにより用いられてユーザが処理マシンと対話することを可能にする任意のハードウェアやソフトウェアやハードウェアとソフトウェアとの組み合わせを含む。ユーザ・インターフェースは、例えば、ダイアログ・スクリーンの形とすることができる。また、ユーザ・インターフェースは、マウス、タッチスクリーン、キーボード、キーパッド、音声読取装置、音声認識装置、ダイアログ・スクリーン、メニュー・ボックス、リスト、チェック・ボックス、トグル・スイッチ、プッシュ・ボタン、または処理マシンが1組の命令を処理するときにユーザが処理マシンの動作に関する情報を受け取ることを可能にし、且つ/又は処理マシンへ情報を提供する任意の他のデバイスのうちの、任意のものを含むことができる。従って、ユーザ・インターフェースは、ユーザと処理マシンとの間での通信を提供する任意のデバイスである。ユーザがユーザ・インターフェースを介して処理マシンへ提供する情報は、例えば、コマンドや、データの選択や、何らかの他の入力の形とすることができる。
【0060】
[0062] 上述のように、ユーザ・インターフェースは、1組の命令を行う処理マシンにより用いられて、処理マシンがユーザのためにデータを処理するようにする。ユーザ・インターフェースは、典型的には、ユーザからの情報を運ぶため又は情報を受け取るためにユーザとインターフェースするために、処理マシンにより用いられる。しかし、システムおよび方法の幾つかの実施形態に従うと、処理マシンにより用いられるユーザ・インターフェースと人間であるユーザとが実際に対話する必要がないことが、理解される。むしろ、ユーザ・インターフェースは、人間であるユーザではなく別の処理マシンとの対話、即ち、情報の搬送および受け取りを行う、ということも理解される。従って、他の処理マシンをユーザとして特徴付けすることができる。更に、システムおよび方法で用いられるユーザ・インターフェースは、別の単一または複数の処理マシンと部分的に対話し、また、人間であるユーザと部分的に対話する、ということが理解される。
【0061】
[0063] 実施形態は広い実用性があり且つ応用できることが、当業者には容易に理解できる。ここで説明したもの以外の本発明の多くの実施形態および改造物、および多くの変形物、変更物、および等価の構成は、要旨または範囲から外れずに、前記のその説明から明らかとなるか、又はその説明により道理に従って提案される。
【0062】
[0064] 従って、本発明の実施形態を、その例示的な実施形態と関連させてここで詳細に説明したが、この開示は本発明の単なる例証および例示であり、本発明を可能なものとする開示を提供するためになされた、ということが理解される。従って、前記の開示は、本発明を解釈または限定することを意図しておらず、また、任意の他のそのような実施形態、改造物、変形物、変更物、または等価の構成を除外することを意図していない。
【国際調査報告】