(58)【調査した分野】(Int.Cl.,DB名)
【背景技術】
【0001】
(関連出願に対する相互参照)
本願は、2014年3月11日に出願された米国仮特許出願第61/951,141号の利益を主張するものであり、該仮特許出願の開示は、その全体が参照により本明細書中に援用される。
【0002】
リソース制約ノードおよびネットワークは、マシンツーマシン(M2M)およびモノのインターネット(IoT)システムの重要な部分を構成する。Internet Engineering Task Force(IETF) Constrained RESTful Environments(CoRE) Working Group(IETF CoRE)は、CoREリソースディレクトリ(RD)を開発している。
図1は、CoREリソースディレクトリアーキテクチャの実施例を示し、CoREリソースディレクトリは、ウェブサーバがリソースディレクトリを発見することができるように、リソースディレクトリがサポートする、ウェブインターフェースを規定する。さらに、ウェブインターフェースは、ウェブサーバが、リソース記述を登録、維持、ルックアップ、および除去することを可能にする。IETFはまた、リソースディレクトリと併用され得る、リンク属性を定義している。
【0003】
図1を参照すると、CoRE RDアーキテクチャ内のリソースディレクトリ100が、描写されている。リソースディレクトリ100は、概して、エンドポイント、例えば、エンドポイント102と称され得る、他のウェブサーバ上にホストされるリソースと関連付けられたウェブリンクのためのリポジトリであることができる。エンドポイントは、ポートと関連付けられたウェブサーバを指し得、したがって、物理的ノードは、1つまたはそれを上回るエンドポイントをホストし得る。エンドポイントは、種々のM2M/IoTデバイス内にホストされることができる。リソースディレクトリ100は、エンドポイント102が、ウェブリンクのセット(リソースディレクトリエントリと呼ばれる)を登録および維持するためのRESTful(表現可能な状態の転送)インターフェースのセットを実装する。インターフェースはまた、リソースディレクトリが、エントリを検証することを可能にし、クライアント(例えば、クライアント104)が、リソースディレクトリ100からリソースをルックアップすることを可能にする。リソースは、概して、RESTfulアーキテクチャ内の一意のアドレス指定可能なエンティティを指す。エンドポイントはまた、クライアントとして作用することができ、したがって、クライアントもまた、M2M/IoTデバイス内にホストされることができる。
【0004】
依然として、概して、
図1を参照すると、エンドポイント102は、リソースディレクトリエントリをリソースディレクトリ100上に先を見越して登録および維持する。エントリは、ソフトステートであって、周期的にリフレッシュされる必要があり得る。エンドポイント102は、インターフェースを装備し、所与のリソースディレクトリエントリを登録、更新、および除去する。さらに、リソースディレクトリは、CoREリンクフォーマットを使用して発見されることができる。リソースディレクトリ、例えば、リソースディレクトリ100は、ウェブリンクをエンドポイント100から先を見越して発見し、それらをリソースディレクトリエントリとして追加してもよい。リソースディレクトリ100はまた、ウェブリンクを先を見越して発見し、既存のリソースディレクトリエントリを検証してもよい。リソースディレクトリ100内に保持されるウェブリンクを発見するためのルックアップインターフェースは、CoREリンクフォーマットを使用して提供される。
【0005】
図2は、CoREリソースディレクトリアーキテクチャにおけるリソース登録の現在の技法を図示する。
図1および2を参照すると、エンドポイント102は、登録インターフェース106を使用して、そのリソースを登録する。202では、登録インターフェース106は、POSTをエンドポイント102から受け取る。POSTは、CoREリンクフォーマットに従ってメッセージペイロード内のディレクトリに追加されるべきリソースのリストを含有してもよい。POSTはまた、エンドポイント102の名前、エンドポイント102と関連付けられたドメイン、および登録の有効期間を示す、クエリストリングパラメータを含有してもよい。実施例では、エンドポイント名以外の全てのパラメータは、随意である。リソースディレクトリ100は、次いで、新しいリソースを作成する、またはリソースディレクトリ内の既存のリソースを更新し、その場所を返す(204)。実施例によると、エンドポイント100は、登録インターフェース106を使用して登録をリフレッシュするときにそれが受信する場所を使用する。リソースディレクトリ100内のエンドポイントリソースは、有効期間パラメータによって示される周期の間、アクティブに保たれる。エンドポイント102は、登録インターフェース106または更新インターフェースのいずれかを使用して、本周期内におけるエントリのリフレッシュに関与する。
【0006】
図1から3を参照して、背景実施例を継続すると、リソースディレクトリ100が、それに登録されるリソースを発見するために使用されるようにするために、ルックアップインターフェース108が、提供されることができる。例示的ルックアップインターフェース108は、クライアント104が、RD100と相互作用し、例えば、「GET」方法を実装するために規定される。例示的URIテンプレートは、/{+rd−lookup−base}/{lookup−type}{?d,ep,gp,et,rt,page,count,resource−param}である。例示的パラメータとして、以下が挙げられる。
・rd−lookup−base:=RDルックアップ関数セットパス(必須)。これは、RDルックアップ関数セットのパスである。ある場合には、RDは、可能である場合、本変数に対して値「rd−lookup」を使用する。
・lookup−type:=(「d」、「ep」、「res」、「gp」)(必須)。本変数は、行うべきルックアップの種類を選択するために使用される(例えば、ドメイン、エンドポイント、またはリソース)。
・ep:=エンドポイント(随意)。エンドポイント、グループ、およびリソースルックアップのために使用される。
・d:=ドメイン(随意)。ドメイン、グループ、エンドポイント、およびリソースルックアップのために使用される。
・page:=ページ(随意)。パラメータは、カウントパラメータを伴わずに使用されることができない。結果は、インデックス(page*count)から開始する「count」結果を含有する、ページ内の結果セットから返される。
・count:=カウント(随意)。結果の数は、本パラメータ値に限定されてもよい。ある場合には、パラメータが存在しない場合、RD実装特有デフォルト値が、使用される。
・rt:=リソースタイプ(随意)。グループ、エンドポイント、およびリソースルックアップのために使用される。
・et:=エンドポイントタイプ(随意)。グループ、エンドポイント、およびリソースルックアップのために使用される。
・resource−param:=リンク属性パラメータ(随意)。本パラメータは、RFC6690「Core Link Format」の第4.1節に定義されるような任意のリンク属性を示してもよい。リソースルックアップのために使用される。
【0007】
図3は、CoREリソースディレクトリアーキテクチャにおけるリソースルックアップのための現在の技法を図示する。示されるように、302では、クライアント104は、リソースタイプ(rt)パラメータをルックアップする。実施例では、クライアント104は、温度リソースタイプ(例えば、温度センサ)を伴うリソースの発見を試みている。したがって、リソースタイプは、温度に設定される。304では、示されるように、RD100は、「coap://node1/temp」のURIを伴うリソースを返す。
【0008】
リソースディレクトリ100は、CoREリソースディレクトリアーキテクチャにおいて規定されるように、集中化される。集中型リソースディレクトリは、インターネットを横断するスケーラビリティに欠ける。例えば、あるクライアントは、そのローカルドメイン内のリソースにのみアクセスすることを所望し得る。集中型リソースディレクトリは、他のクライアントに影響を及ぼさずに、そのような局在型リソース管理を良好にサポートしない。その結果、分散リソースディレクトリが、提案されている。
【0009】
図4は、例示的DRDアーキテクチャにおける例示的分散リソースディレクトリDRD400を図示する。提案される分散リソースディレクトリアーキテクチャは、分散ハッシュテーブルへのインターフェースを規定し、分散ハッシュテーブル能力を使用して、分散リソースディレクトリをイネーブルにする方法を規定する。関与リソースディレクトリは、分散リソースディレクトリオーバーレイを形成する。提案される分散リソースディレクトリ(DRD)アーキテクチャは、集中型リソースディレクトリと同一のRESTインターフェースを提供する。エンドポイントは、1つまたはそれを上回る制約アプリケーションプロトコル(CoAP)サーバを起動させ得る、物理的ノードであってもよく、DRDにおいてREST動作(例えば、POST、GET)を使用することができる。エンドポイントはまた、クライアントとして作用することができる。したがって、エンドポイントは、CoAPクライアントと称され得る。従来または旧来のHTTPクライアントはまた、DRD内に記憶されるリソースにアクセスする必要があり得る。示されるように、DRDアーキテクチャ内の種々のノードは、エンドポイント(EP)402、ピア(P)404、HTTPプロキシ(HP)406、HTTPクライアント408、およびCoAPクライアント410を含む。示されるように、エンドポイント402は、「ノード」上に常駐し、CoAPプロトコルを使用して通信する、エンティティであって、したがって、CoAPエンドポイントと称され得る。CoAPエンドポイントは、CoAPメッセージのソースまたは宛先であることができる。ピア404は、宛先へのオーバーレイを通るパスを辿ってメッセージを自動転送可能なフルオーバーレイメンバーノードである。いくつかのピアはまた、HTTPプロキシ406として作用することができる。言い換えると、ピアとして作用することに加え、ノードはまた、プロトコル変換のためのプロキシとしても作用する。HTTPプロキシ406は、HTTPおよびCoAPプロトコルの両方を起動し、その2つの間の変換を行うことが可能である。HTTPクライアント408は、HTTPメッセージを使用して要求を所与のリソースディレクトリに送信する、クライアントである。CoAPクライアント410は、CoAPメッセージを使用して要求を所与のリソースディレクトリに送信する、CoAPエンティティである。
【0010】
図5は、分散リソースディレクトリ400におけるリソース登録の現在の技法を図示する。例えば、リソース登録では、502において、EP402aは、そのリソースを分散リソースディレクトリ400の中に登録するために、リソースのリストを(メッセージのペイロード内に)含有する、CoAP POSTメッセージを送信する。EP402は、そのリソースが発見可能であり得るように、これを行う。ピア、例えば、第1のピア404a(分散リソースディレクトリオーバーレイに関与する分散ハッシュテーブルアルゴリズムを起動させる)が、登録メッセージを受信すると、分散ハッシュテーブル内のリソースのCoAP URIのハッシュ下にCoAP登録構造を記憶する(504)。CoAP登録のペイロードは、オーバーレイの中に値として記憶される。506において、分散ハッシュテーブルACKメッセージを第2のピア404bから得た後、第1のピア404aは、CoAP ACKメッセージをEP402aに送信し(508)、リソースが分散リソースディレクトリ400の中に登録されたことを示す。
【0011】
502におけるPOST要求は、エンドポイント402aを一意に識別するために使用される、エンドポイント402a名を示すためのクエリストリングパラメータを含む。エンドポイント名設定は、異なる代替を有する。1つの方法は、デバイスのMACアドレスをハッシュし、エンドポイント名を生成することである。別の方法は、共通名を使用することである。
【0012】
実施例として、依然として、
図4および5を参照すると、名前「9996172」を伴うエンドポイントが、1つの温度リソースおよび1つの光リソース記述を分散リソースディレクトリ400の中に登録することを所望する場合、エンドポイントは、URI「coap://overlay−1.com/proxy−1/.well−known/core?ep=9996172」を伴うPOST要求を送信する。リソース記述は、メッセージのペイロード内に含まれる。登録メッセージの実施例は、以下に与えられる。
Req:POST coap://overlay−1.com/proxy−1/.well−known/core?ep=9996172
Payload:
</temperature-1>;lt=41;rt="Temperature";if="sensor",
</light−2>;lt=41;rt="LightLux";if="sensor"
【0013】
その結果、ハッシュ関数に適用されるキーは、第2のピア404b(P2)が値を記憶するためのピアであることを判定する、coap://overlay−1.com/proxy−1/.well−known/core?ep=9996172となる。第2のピア404b上に記憶される値は、ペイロードである。
【0014】
また、
図6を参照すると、
図6は、分散リソースディレクトリ400におけるリソース発見の現在の技法を図示する。分散リソースディレクトリ400は、CoAP URIとNode−IDとの間のマッピング情報をフェッチし、リソースのアドレス情報を得ることによって、ランデブーをサポートする。具体的には、602において、エンドポイント(
図6におけるクライアント410a)は、要求されるリソースのURI情報を含む、CoAP GET要求を分散リソースディレクトリ400に送信する。本要求をハンドリングする分散リソースディレクトリピア(
図6におけるピア404c)は、604において、CoAP URIのハッシュのために、分散ハッシュテーブルルックアップを行う。分散ハッシュテーブルは、次いで、リソースの値に関与するピア(
図6におけるピア404b)を見出す。606では、宛先ピア404bは、記憶された値をピア404cに返す。608では、ピア404cは、コンテンツ(例えば、記憶された値)を、エンドポイント410aとも称され得る、クライアント410に返信する。
【0015】
例えば、クライアント410aが、本明細書に規定されるように、URI:coap://overlay−1.com/proxy−1/.well−known/core?ep=9996172を伴うリソースを発見することを所望する場合、ピア404cは、GET要求を受信し、ピア404bにマップするURIにハッシュ関数を使用する。その結果、ピア404cは、要求をピア404bに自動転送する。ピア404bは、リソースのペイロードをピア404cに返し、順に、ペイロードをクライアント410aに返す。
【発明を実施するための形態】
【0045】
続く発明を実施するための形態は、例示的実施形態を例証するために提供され、本発明の範囲、可用性、または構成を限定することを意図するものではない。種々の変更が、本発明の精神および範囲から逸脱することなく、要素およびステップの機能および配列において行われ得る。
【0046】
用語「オーバーレイネットワーク」は、本明細書で使用されるように、別のネットワーク上に構築される、ネットワークを指す。オーバーレイネットワーク内のノードは、それぞれ、下層ネットワーク内のパスに対応する、仮想または論理リンクによって接続されると考えることができる。例えば、ピアツーピア(P2P)ネットワーク等の分散システムは、そのノードがインターネット上で起動するため、オーバーレイネットワークと見なされることができる。「ホームリソースディレクトリ(RD)」である、ノードは、本明細書で使用されるように、EPがそのリソースを登録することを所望するときのエンドポイント(EP)の第1のコンタクトポイントを指す。ホームRDはまた、クライアントがリソースを発見することを所望するときのクライアントのための第1のコンタクトポイントを指す。本明細書で使用されるように、「記憶RD」である、ノードは、リソース登録エントリを記憶し、ホームRDがクライアントの発見要求を自動転送する、ピアを指し得る。本明細書で使用されるように、別様に規定されない限り、「関与RD」である、ノードは、リソース登録メッセージ内のあらゆる可能性として考えられるキーにハッシュ関数を使用することから生じる、ピアのRDを指し得る。本明細書で使用されるように、別様に規定されない限り、「CoRE関与RD」である、ノードは、ホームRDがリソース発見要求を自動転送する第1のコンタクトポイントである、関与RDのうちの1つを指す。
【0047】
例示的実施形態によると、拡張分散リソースディレクトリは、本明細書に説明されるように、リソースの統一資源識別子(URI)を把握せずに、リソースルックアップをサポートすることができる。一実施例では、リソース記述の複数のコピーが、本明細書では、ピアRDと称される、複数のリソースディレクトリ(RD)内に記憶される。参照支援(RE)実装と称される、本明細書に説明される別の例示的実装では、ホームピアは、登録メッセージを1つのみのピアRDに送信し、他のピアRDに、リソースおよびそれと関連付けられた情報が記憶される場所を通知する。
【0048】
概して、
図4に描写される分散リソースディレクトリアーキテクチャを参照すると、本明細書に説明される実施形態は、高度分散リソースルックアップを可能にする。一実施例では、クライアントは、リソースの発見および読み出しに先立って、リソースURIを把握する必要はない。例えば、クライアントは、その個別のホームRDへのリンクパラメータベースのクエリを規定する、リソースを要求およびルックアップしてもよい。言い換えると、分散リソースディレクトリは、クライアントへのリンクパラメータベースのクエリを満たす、リソースを返すことができる。
【0049】
記憶補助(SA)実装と称され得る、例示的実施形態では、リソース登録の冗長コピーが、複数のピア内に提供される。本明細書では、データ記憶容量が増加するにつれて、そのようなデータ記憶と関連付けられたコストが減少すると認識され、したがって、ピアは、データ記憶能力を効率的に具備することができる。以下に詳細に説明されるように、ピアは、リソースの値内の可能性として考えられるキーワード/パラメータにハッシュ関数を使用することによって、データ記憶のために選定されてもよい。選定されるピアは、その記憶能力を使用して、リソース登録を記憶してもよい。ある場合には、H()として示される、1つのハッシュ関数が、適用され、全リソースディレクトリピア間に統合および分散ハッシュ空間を生成すると仮定される。
【0050】
便宜上、本明細書で使用されるように、別様に規定されない限り、ピアRDは、単に、ピアと称され得る。クライアントは、一例として、限定ではないが、以下の提示されるもの等の種々のルックアップキーワード/パラメータを指定することができる。
・d:ドメイン
・ep:エンドポイント
・gp:グループ名
・et:エンドポイントタイプ
・rt:リソースタイプ
・lt:リソース有効期間
・if:インターフェース
【0051】
さらに例証するために、以下は、限定として提示されるわけではないが、1つまたはそれを上回るRDピアに登録され得る、リソースおよびそのペイロードの実施例である。
1. ep=9996172
payload:</temperature−1>;lt=41;rt=”Temperature”;if=”sensor”,
</temperature−2>;lt=41;rt=”LightLux”;if=”sensor”
2. ep=9234571
payload:</Temp−1>;rt=”Temperature”;if=”gateway”
3. gp=lights
payload:<coap://host1:port1>;ep=”node1”;d=”domain1”
<coap://host1:port1>;ep=”node2”;d=”domain1”
4. gp=pressure
Payload<coap://host2:port2>;ep=”node2”;d=”domain1”
【0052】
例示的実施形態では、所与のエンドポイントは、種々の方法において候補IPアドレスを得ることによって、ディレクトリサーバを見出すことができる。例えば、ある場合には、各ピアRDは、少なくとも以下のベースRDリソース:</rd>;rt=”core.rd”;</rd−lookup>;rt=”core.rd−lookup”および</rd−group>;rt=”core.rd−group”を有する。本明細書に説明されるように、エンドポイントは、リソースインターフェースを使用して、そのリソースをそのホームRDに登録してもよい。本インターフェースは、POSTをエンドポイントから受け取ってもよい。POSTは、CoREリンクフォーマット内にメッセージペイロードとしてディレクトリに追加されるべきリソースのリストを含有してもよい。POSTはまた、クエリストリングパラメータを含有してもよい。ある場合には、エンドポイントまたはグループ名のみをハッシュする代わりに、ピアRDは、ハッシュ関数をリソースのペイロード(例えば、リソースリンクフォーマット記述)内に含有される全パラメータおよびその値に適用してもよい。ハッシュ関数が適用された後、ホームRDは、同一パラメータを有するリソースを記憶することに関与する、ピアのアドレスを得てもよい。したがって、ピアの大記憶容量およびそれと関連付けられた低コストを活用することによって、ホームRDは、リソースペイロードをハッシュされたピアに送信してもよい。前述のように、例示的SA実装をさらに説明するために本明細書に説明される、4つの例示的リソースおよびペイロードが、存在する。
図4にEP702として図示されるEP9996172のリソース登録を含む、実施例が、最初に説明される。
【0053】
図7−21(本明細書に後述される)は、リソースを管理および読み出すための方法および装置の種々の実施形態を図示する。これらの図では、種々のステップまたは動作は、1つまたはそれを上回るエンドポイント、クライアント、および/またはピアによって行われるように示される。これらの図に図示されるエンドポイント、クライアント、および/またはピアは、通信ネットワーク内の論理エンティティを表してもよく、以下に説明される
図22Cまたは22Dに図示される一般的アーキテクチャの1つを備え得る、そのようなネットワークのノードのメモリ内に記憶され、そのプロセッサ上で実行される、ソフトウェア(例えば、コンピュータ実行可能命令)の形態で実装されてもよいことを理解されたい。すなわち、
図7−21に図示される方法は、例えば、
図22Cまたは22Dに図示されるノードまたはコンピュータシステム等のネットワークノードのメモリ内に記憶されるソフトウェア(例えば、コンピュータ実行可能命令)の形態で実装されてもよく、そのコンピュータ実行可能命令は、ノードのプロセッサによって実行されると、図に図示されるステップを行う。また、これらの図に図示される任意の伝送および受信ステップは、ノードのプロセッサおよびそれを実行するコンピュータ実行可能命令(例えば、ソフトウェア)の制御下、ノードの通信回路(例えば、それぞれ、
図22Cおよび22Dの回路34または97)によって行われてもよいことを理解されたい。
【0054】
ここで
図7を参照すると、例示的ネットワーク700は、EP702と、ピア1、3、5、および11(P1、P3、P5、およびP11)とを含む。例示的ネットワーク700は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク400等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。さらに、参照番号は、図中の同一または類似特徴を示すために、種々の図で繰り返され得ることを理解されたい。
【0055】
示されるように、図示される実施例によると、エンドポイント702は、9996172という名前を有し、704において、そのホームRDである、P1にそのリソースを登録する。706において、P1は、ペイロード内に含有されるリンクフォーマットを解釈し、本登録と関連付けられたキーワード/パラメータが、以下であることを判定してもよい。
・ep=9996172
・lt=41
・rt=”Temperature”
・rt=”LightLux”
・if=”sensor”
【0056】
前述のキーワード/パラメータは、ハッシュ関数に適用されるためのキーとして使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、P3、P5、およびP11を含む。したがって、708a、708b、および708cにおいて、P1は、それぞれ、登録メッセージをP3、P5、およびP7に自動転送する。ピアP3、P5、およびP7はそれぞれ、ペイロードを記憶し、確認をP1に返す(710a−c)。712において、P1は、確認応答を組み合わせてもよい。714において、確認に応答して、P1は、EP702に返信する。ある場合には、異なるキーは、登録メッセージが同一ピアRDに自動転送される結果をもたらす。例えば、lt=41またはif=“sensor”をハッシュするとき、両ハッシュの結果は、P5がピアリソースディレクトリであるべきことを示し得る。同様に、rt=‘Temperature”およびrt=“LightLux”をハッシュするとき、両ハッシュの結果は、P11がピアリソースディレクトリであるべきことを示し得る。
【0057】
ここで
図8を参照すると、例示的ネットワーク800は、EP802として図示されるEP9234571と、ピア3、2、11、および6(P3、P2、P11、およびP6)とを含む。例示的ネットワーク800は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク800等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
【0058】
示されるように、図示される実施例によると、エンドポイント802は、9234571という名前を有し、804において、そのホームRDである、P3にそのリソースを登録する。806において、P3は、ペイロード内に含有されるリンクフォーマットを解釈し、本登録と関連付けられたキーワード/パラメータが、以下であることを判定してもよい。
・ep=9234571
・rt=”Temperature”
・if=”gateway”
【0059】
前述のキーワード/パラメータは、ハッシュ関数の入力として使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、P2、P11、およびP5を含む。したがって、808a、808b、および808cにおいて、P3は、それぞれ、登録メッセージをP2、P11、およびP5に自動転送する。ピアP2、P11、およびP5はそれぞれ、ペイロードを記憶し、確認をP3に返す(810a−c)。812において、P3は、確認応答を組み合わせてもよい。814において、確認に応答して、P3は、EP802に返信する。
【0060】
ここで
図9を参照すると、例示的実施形態による、「光」グループ登録実施例が、提示される。示されるように、例示的ネットワーク900は、以下に説明されるように、管理ノードでもある、EP902と、ピア1、3、6、および2(P1、P3、P6、およびP2)とを含む。例示的ネットワーク900は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク900等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
【0061】
示されるように、図示される実施例によると、管理ノード(EP902)は、グループを構成するために使用される。904において、EP902は、そのホームRD(P1)に要求を行う。要求は、作成するためのグループ名と、グループが属する随意のドメインとを示す。登録メッセージはまた、そのグループが属するエンドポイントのリストを含んでもよい。906において、P1は、ペイロード内に含有されるリンクフォーマットを解釈し、本登録と関連付けられたキーワード/パラメータが、以下であることを判定してもよい。
・gp=lights
・ep=”node1”
・d=”domain1”
・ep=”node2”
【0062】
前述のキーワード/パラメータは、ハッシュ関数の入力として使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、P1、P3、P6、およびP2を含む。したがって、908a、908b、および908cにおいて、P1は、それぞれ、登録メッセージをP3、P6、およびP2に自動転送する。ピアP3、P6、およびP2はそれぞれ、ペイロードを記憶し、確認をP1に返す(910a−c)。P1は、ハッシュされたピアの1つであるため、また、907において、登録メッセージを記憶してもよい。912において、P3は、確認応答を組み合わせてもよい。914において、確認に応答して、P3は、EP902に返信する。
【0063】
ここで
図10を参照すると、例示的実施形態による、「圧力」グループ登録実施例が、提示される。示されるように、例示的ネットワーク1000は、以下に説明されるように、管理ノードでもある、EP1002と、ピア1、3、6、および2(P1、P3、P6、およびP2)とを含む。例示的ネットワーク1000は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1000等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
【0064】
示されるように、図示される実施例によると、管理ノード(EP902)は、グループを構成するために使用される。1004では、EP1002は、そのホームRD(P1)に要求を行う。要求は、作成するためのグループ名と、グループが属する随意のドメインとを示す。登録メッセージはまた、そのグループが属するエンドポイントのリストを含んでもよい。1006において、P1は、ペイロード内に含有されるリンクフォーマットを解釈し、本登録と関連付けられたキーワード/パラメータが、以下であることを判定してもよい。
・gp=pressure
・d=”domain1”
・ep=”node2”
【0065】
前述のキーワード/パラメータは、ハッシュ関数の入力として使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、P1、P3、P6、およびP2を含む。したがって、1008a、1008b、および1008cにおいて、P1は、それぞれ、登録メッセージをP3、P6、およびP2に自動転送する。ピアP3、P6、およびP2はそれぞれ、ペイロードを記憶し、確認をP1に返す(1010a−c)。P1は、ハッシュされたピアの1つであるため、また、1007において、登録メッセージを記憶してもよい。1012において、P3は、確認応答を組み合わせてもよい。914において、確認に応答して、P3は、EP1002に返信する。
【0066】
一例として、分散リソースおよびグループ登録が、
図7−10を参照して説明されるように行われた後、ピアRDは、一例として提示され限定するものではないが、表1(以下)に示される情報を記憶してもよい。
【表1】
【0067】
ある場合には、前述のリソースおよびグループ登録方法は、リソースおよびグループが、前述の既存のルックアップ(発見)インターフェースを介して、ルックアップ(発見)されることを可能にする。ここで、背景として、リソースおよびグループルックアップに目を向けると、クライアントは、リソースルックアップ要求をそのホームRDに送信する。リソースルックアップ要求は、クライアントが発見することを所望するルックアップタイプおよびパラメータを指定することができる。ホームRDは、要求を分析し、クライアントが規定するキーを抽出してもよい。例示的実施形態では、ホームRDは、それらのキーにハッシュ関数を適用し、リソース登録を記憶するピアRDを算出する。キーは、AND/ORによって接続されてもよい。例えば、キーは、得られたRD(ハッシュ関数が適用された後に示されるRDS)のそれぞれが、同一リソース登録を記憶するため、ANDによって接続されてもよく、要求は、それらのうちの1つに自動転送されてもよい。ホームRDは、ランダムに、または、例えば、宛先RDの負荷もしくはホームRDと宛先RDとの間の帯域幅等のあるコンテキスト情報に基づいて、宛先RDをピックアップしてもよい。キーは、規定された要求を満たすリソースが、得られたRDを横断して分散され得る可能性があるとき、ORによって接続されてもよい。その結果、ホームRDは、要求を全ての得られたRDに自動転送し、リソースの結合セットを受信する必要があり得る。
【0068】
ホームRDは、要求が自動転送されるべきピアRDを判定してもよい。ホームRDが応答をピアRDから受信した後、例えば、重複なく、リソースの完全リストを含有する、ルックアップ結果を生成してもよく、リストを要求側クライアントに返してもよい。
【0069】
種々の例示的実施形態による、リソースおよびグループルックアップを例証するための実施例が、以下に提示される。
図11を参照すると、GET/rd−lookup/res?rt=”Temperature”AND it=”gateway”ルックアップ要求を含む、実施例が、図示される。
図11は、クライアント1102と、ホームRD1104と、ピア11(P11)とを含む、例示的ネットワーク1100を示す。例示的ネットワーク1100は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1100等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
【0070】
示されるように、1106において、クライアント1102は、リソースルックアップ要求をそのホームRD1104に送信する。クライアント1102は、同時に、rt=”Temperature”およびit=”gateway”を満たすリソースを得ることを所望する。1108において、ホームRDは、ハッシュ関数を要求内に示される2つのキーに適用する。ハッシュ関数が、実施例に従って適用されると、結果は、P11およびP6を含む。例示的側面では、ホームRD1104は、完全リソースルックアップ結果を得るために、示されるRD(P11およびP6)のうちのいずれか一方を選定してもよい。図示される実施例では、ホームRDは、1110において、P11を選定し、ルックアップ要求をP11に送信する。1112において、P11は、要求と関連付けられた応答をホームRD1104に返す。ホームRD1104は、1114において、応答をクライアント1102に自動転送する。
【0071】
図12を参照すると、GET/rd−lookup/res?rt=”LightLux”OR it=”gateway”要求を含む、実施例が、図示される。
図12は、クライアント1202と、ホームRD1204と、ピア11(P11)および6(P6)とを含む、例示的ネットワーク1200を示す。例示的ネットワーク1200は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1200等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
【0072】
示されるように、1206において、クライアント1202は、リソースルックアップ要求をそのホームRD1204に送信する。クライアント1202は、rt=”LightLux”またはit=”gateway”を満たすリソースを得ることを所望する。1208において、ホームRDは、ハッシュ関数を要求内に示される2つのキーに適用する。ハッシュ関数が、実施例に従って適用されると、結果は、P11およびP6を含む。例示的側面では、ORは、キーを接続しているので、ホームRD1104は、完全リソースルックアップ結果を得るために、示されるRD(P11およびP6)の両方に要求を自動転送することを必要とする。したがって、図示される実施例では、ホームRDは、ルックアップ要求をP11(1210a)およびP6(1210b)に送信する。1212aおよび1212bにおいて、P11およびP6は、それぞれ、要求と関連付けられた応答をホームRD1204に返す。1214において、ホームRDは、受信された応答を組み合わせてもよい。さらに、1214において、ホームRD1204は、重複応答が排除されるように結果を組み合わせてもよい。1216において、ホームRDは、完全ルックアップ結果である、組み合わせられた応答を、クライアント1202に送信し、それによって、ルックアップ要求を満たす。
【0073】
ここで
図13を参照すると、GET/rd−lookup/gp?d=”domain1”ルックアップ要求を含む、グループルックアップ要求の実施例が、図示される。
図13は、クライアント1302と、ホームRD1304と、ピア1(P1)とを含む、例示的ネットワーク1300を示す。例示的ネットワーク1300は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1300等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
【0074】
示されるように、1306において、クライアント1302は、リソースルックアップ要求をそのホームRD1304に送信する。クライアント1302は、d=“domain1”を満たすグループを得ることを所望する。1308において、ホームRDは、ハッシュ関数を要求(d=“domain1”)内に示されるキーに適用する。ハッシュ関数が、実施例に従って適用されると、結果は、P1を含む。図示される実施例では、ホームRD1304は、1310において、ルックアップ要求をP1に送信する。1312において、P11は、要求と関連付けられた応答をホームRD1304に返す。ホームRD1304は、1314において、応答をクライアント1302に自動転送する。
【0075】
ここで
図14を参照すると、GET/rd−lookup/gp?ep=”node2”ルックアップ要求を含む、グループルックアップ要求の実施例が、図示される。
図14は、クライアント1402と、ホームRD1404と、ピア2(P2)とを含む、例示的ネットワーク1400を示す。例示的ネットワーク1400は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1400等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
【0076】
示されるように、1406において、クライアント1402は、リソースルックアップ要求をそのホームRD1404に送信する。クライアント1402は、その中にエンドポイント(node2)を伴うグループを得ることを所望する。1408において、ホームRDは、ハッシュ関数を要求(ep=“node2”)内に示されるキーに適用する。ハッシュ関数が、実施例に従って適用されると、結果は、node2である、P2を含む。図示される実施例では、ホームRD1404は、1410において、ルックアップ要求をP2に送信する。1412において、P1は、要求と関連付けられた応答をホームRD1404に返す。ホームRD1404は、1414において、応答をクライアント1402に自動転送する。
【0077】
参照支援(RE)実装と称され得る、別の例示的実施形態では、ピアRDは、例えば、リソース自体を記憶するのではなく、記憶RDの参照を保つ。
【0078】
ここで
図15を参照すると、EP702と、ピア1、3、5、および11(P1、P3、P5、およびP11)とを含む、例示的ネットワーク700が、示される。示されるように、図示される実施例によると、エンドポイント702は、9996172という名前を有し、1504において、そのホームRDである、P1にそのリソースを登録する。1506において、P1は、ペイロード内に含有されるリンクフォーマットを解釈し、本登録と関連付けられたキーワード/パラメータが、以下であることを判定してもよい。
・ep=9996172
・lt=41
・rt=”Temperature”
・rt=”LightLux”
・if=”sensor”
【0079】
前述のキーワード/パラメータは、ハッシュ関数に適用されるためのキーとして使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、P3、P5、およびP11を含む。さらに、図示される実施例によると、1506において、P1は、登録メッセージが自動転送される、3つの結果として生じるRD(P3、P5、またはP11)のうちの1つを選定してもよい。1508において、P1は、登録メッセージを選定されるピア(P3)に自動転送する。1510において、P3は、ペイロードを記憶し、確認をP1に返す。1514aおよび1514bにおいて、P1は、それぞれ、P5およびP11に、登録メッセージがP3に記憶されていることを通知する。1516aおよび1516bにおいて、P5およびP11は、それぞれ、将来的リソースルックアップのために、P3のアドレスを適切な参照下に記憶する。1512において、P1は、EP702に返信し、それによって、リソース要求を満たす。
【0080】
ここで
図16を参照すると、EP802と、ピア1、3、5、および11(P3、P2、P11、およびP6)とを含む、例示的ネットワーク800が、示される。示されるように、図示される実施例によると、エンドポイント802は、1604において、そのホームRDである、P3にそのリソースを登録する。1606において、P3は、ペイロード内に含有されるリンクフォーマットを解釈し、本登録と関連付けられたキーワード/パラメータが、以下であることを判定してもよい。
・ep=9234571
・rt=”Temperature”
・if=”gateway”
【0081】
前述のキーワード/パラメータは、ハッシュ関数に適用されるためのキーとして使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、P2、P11、およびP6を含む。さらに、図示される実施例によると、1606において、P3は、登録メッセージが自動転送される、3つの結果として生じるRD(P2、P11、またはP6)のうちの1つを選定してもよい。1608において、P3は、登録メッセージを選定されたピア(P2)に自動転送する。1610において、P2は、ペイロードを記憶し、確認をP3に返す。1614aおよび1614bにおいて、P3は、それぞれ、P11およびP6に、登録メッセージがP2に記憶されていることを通知する。1616aおよび1616bにおいて、P11およびP6は、それぞれ、将来的リソースルックアップのために、P2のアドレスを適切な参照下に記憶する。1612において、P1は、EP802に返信し、それによって、リソース要求を満たす。
【0082】
ここで
図17を参照すると、例示的実施形態による、「光」グループ登録実施例が、提示される。示されるように、例示的ネットワーク900は、以下に説明されるように、管理ノードでもある、EP902と、ピア1、3、6、および2(P1、P3、P6、およびP2)とを含む。1704において、EP902は、そのホームRD(P1)に要求を行う。要求は、作成するためのグループ名と、グループが属する随意のドメインとを示す。登録メッセージはまた、そのグループが属するエンドポイントのリストを含んでもよい。1706において、P1は、ペイロード内に含有されるリンクフォーマットを解釈し、本登録と関連付けられたキーワード/パラメータが、以下であることを判定してもよい。
・gp=lights
・ep=”node1”
・d=”domain1”
・ep=”node2”
【0083】
前述のキーワード/パラメータは、ハッシュ関数の入力として使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、P1、P3、P6、およびP2を含む。示されるように、1708において、P1は、登録をそれ自体に記憶し、例えば、登録メッセージを自動転送する際に使用されるネットワーク帯域幅を保存する。1712a−cにおいて、P1は、P3、P6、およびP2に、ピアがそれぞれ関与するパラメータを含む、リソース登録がP1内に記憶されていることを通知してもよい。1714a−cにおいて、P3、P6、およびP2は、将来的リソースルックアップのために、P1のアドレスを適切な参照下に記憶してもよい。1710において、結果は、EP902に送信される。
【0084】
ここで
図18を参照すると、例示的実施形態による、「圧力」グループ登録実施例が、提示される。示されるように、例示的ネットワーク1800は、EP1802と、ピア1および11とを含む。例示的ネットワーク1800は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1800等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
【0085】
1804において、ピアP1は、グループ登録要求を受信してもよい。1806において、ハッシュ関数は、グループリソースをピアRD P11、P1、およびP2にマップしてもよい。1808において、P1は、登録をそれ自体に記憶し、登録メッセージを自動転送する際のネットワーク帯域幅使用を保存してもよい。1810において、P1は、P11に、リソース登録がP1内に記憶されていることを通知してもよい。示されるように、P1のアドレスは、P2にすでに通知されているため(1804)、P2は、1810において通知される必要はない。1812において、P11は、将来的リソースルックアップのために、P1のアドレスを適切な参照下に記憶してもよい。
【0086】
例示的実施形態では、前述の実施例に説明される分散リソースおよびグループ登録が生じた後、ピアRDは、表2(以下)に示される情報を記憶してもよい。
【表2】
【0087】
ここで、リソースおよびグループルックアップ実装に目を向けると、別の例示的実施形態では、クライアントは、リソースおよびグループルックアップ要求をそのホームRDに送信してもよい。ホームRDは、ハッシュ関数をパラメータに使用することによって、要求内に規定されたパラメータに対応する関与ピアRDを判定してもよい。一実施例では、1つのみのパラメータが、要求内に含有され、ホームRDは、要求を関与RDに自動転送してもよい。関与RDは、要求内で規定されたルックアップタイプに基づいて、rdまたはrd−groupディレクトリを検索してもよい。関与RDはまた、要求をその参照カテゴリ内にリスト化されたRDに自動転送してもよい。ホームRDは、関与RDおよび参照カテゴリ内のRDからの全応答を収集してもよく、結果をクライアントに返してもよい。別の例示的シナリオでは、要求内に複数のパラメータが含有され、パラメータは、ANDによって接続される。そのようなシナリオでは、ホームRDは、要求を関与RD(CoRE関与RD)のうちの1つに自動転送してもよい。CoRE関与RDは、ハッシュ関数を他のパラメータに適用してもよく、他の関与RDが存在することを判定してもよい。CoRE関与RDは、参照カテゴリ内のリストのための要求もまた添付される、要求を他の関与RDに自動転送してもよい。CoRE関与RDは、全関与RDの参照カテゴリ内のRDの結合セットを見出すことが可能である。CoRE関与RDは、次いで、要求をRDの結合セットに自動転送してもよい。CoRE関与RDは、全応答を収集してもよく、それらをホームRDに返してもよく、これは、順に、応答をクライアントに返す。
【0088】
別の例示的シナリオでは、要求内に複数のパラメータが含有され、パラメータは、ORによって接続される。そのようなシナリオでは、ホームRDは、要求を関与RD(CoRE関与RD)のうちの1つに自動転送してもよい。CoRE関与RDは、ハッシュ関数を他のパラメータに適用してもよく、他の関与RDが存在することを判定してもよい。CoRE関与RDは、参照カテゴリ内のリストのための要求もまた添付される、要求を他の関与RDに自動転送してもよい。CoRE関与RDは、全関与RDの参照カテゴリ内のRDの上位セットを発見することが可能である。CoRE関与RDは、次いで、要求をRDの上位セットに自動転送してもよい。これは、全応答を収集してもよく、ホームRDに返してもよく、これは、順に、応答をクライアントに返す。
【0089】
ここで
図19を参照すると、GET/rd−lookup/res?rt=”Temperature”AND it=”gateway”ルックアップ要求を含む、実施例が、図示される。
図19は、クライアント1902と、ホームRD1904と、ピア11、6、1、および2とを含む、例示的ネットワーク1900を示す。例示的ネットワーク1900は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1900等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
【0090】
示されるように、1906において、クライアント1902は、リソースルックアップ要求をそのホームRD1904に送信する。クライアント1902は、同時にrt=”Temperature”およびit=”gateway”を満たすリソースを得ることを所望する。1908において、ホームRD1904は、2つのキーをハッシュ関数に適用し、図示される実施例によると、P11およびP6である、関与RDを得てもよい。ホームRD1904は、それらのうちのいずれか1つをCoRE関与RDとして選定してもよい。図示される実施例では、ホームRD1904は、P11を選定し、要求を適宜自動転送する(1910)。示されるように、P11は、ハッシュ関数を他のパラメータに使用してもよく、P6もまた関与RDであることを判定してもよい。1912において、P11は、要求をP6に送信してもよく、参照リスト要求は、要求内に含まれてもよい(添付される)。実施例では、P6が、いかなる一致リソースも見出さない場合、1914において、P2およびP1のアドレスをP11に返してもよい。1916において、P11は、P1およびP2が結合セットを(両参照リスト内に)備えることを判定する。1918aおよび1918bにおいて、P11は、次いで、それぞれ、P1およびP2の両方に要求を自動転送してもよい。示されるように、図示される実施例によると、P1が、いかなる一致リソースも見出さない場合、1920aにおいて、「該当なし」応答を返してもよい。図示される実施例によると、P2は、一致リソースを見出し、それをP11に返す(1920b)。1922において、P11は、次いで、リソースをホームRD1904に返してもよく、これは、順に、応答をクライアント1902に送信する(1924)。
【0091】
ここで
図20を参照すると、GET/rd−lookup/res?rt=”LightLux”OR it=”gateway”ルックアップ要求を含む、実施例が、図示される。
図20は、クライアント2002と、ホームRD2004と、ピア11、6、1、2、および3とを含む、例示的ネットワーク2000を示す。例示的ネットワーク2000は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク2000等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
【0092】
示されるように、2006において、クライアント2002は、リソースルックアップ要求をそのホームRD2004に送信する。クライアント2002は、rt=”LightLux”またはit=”gateway”を満たすリソースを得ることを所望する。2008において、ホームRD2004は、2つのキーをハッシュ関数に適用し、図示される実施例では、P11およびP6である、対応するRDを得てもよい。ホームRD2004は、それらのうちのいずれか1つ(図示される実施例ではP11)をCoRE関与RDとして選定してもよい。P11は、ハッシュ関数を他のパラメータに適用してもよく、P6もまた関与RDであることを判定してもよい。2012において、P11は、要求をP6に送信してもよく、参照リストもまた、添付されてもよい。2014において、P6が、いかなる一致リソースも見出さない場合、P2およびP1のアドレスをP11に返してもよい。2016において、図示される実施例によると、P11は、P1、P2、およびP3が両参照リストの上位セットであることを判定することが可能である。2018a−cにおいて、P11は、次いで、それぞれ、要求をP1、P2、およびP3に自動転送してもよい。2018aにおいて、P1が、いかなる一致リソースも見出さない場合、「該当なし」応答を返してもよい。2018bおよび2018cにおいて、P2およびP3は、一致リソースを見出し得、それをP11に返してもよい。P11は、全一致リソースを連結してもよく、それらをホームRD2004に返してもよく(2020)、これは、順に、応答をクライアント2002に送信する(2022)。
【0093】
図21は、例示的実施形態による、別の例示的リソースルックアップ実施例4を図示する。本例示的実施形態では、クライアント2102は、グループルックアップを行ってもよい。2106において、クライアント2102は、GET/rd−lookup/gp?ep=“node2”要求をそのホームRD2104に送信する。示されるように、クライアント2102は、その中にエンドポイント(node2)を伴うグループを得ることを所望する。2108において、ホームRD2104は、キー(ep=“node2”)をハッシュ関数に適用し、図示される実施例ではP2である、対応するRDを得てもよい。ホームRD2104は、2110において、要求をP2に自動転送してもよい。P2は、P1を参照カテゴリ内に記憶させてもよい。その結果、P2は、2112において、要求をP1に自動転送してもよい。2114において、図示される実施例によると、P1は、一致リソースを見出し、それらをP2に返す。2116において、P2は、応答をホームRD2104に返してもよく、これは、順に、応答をクライアント2102に送信する(2116)。
【0094】
したがって、前述の開示全体を通して説明されるように、ノードは、エンドポイントから受信されたメッセージペイロードと関連付けられた1つまたはそれを上回るキーを判定することができる。エンドポイントは、ウェブサーバ、M2Mデバイス、またはゲートウェイとして動作するように構成されてもよい。ノードは、プロセッサと、メモリと、通信回路とを含んでもよい。ノードは、その通信回路を介して通信ネットワークに接続されてもよく、ノードは、ノードのプロセッサによって実行されると、ノードに種々の動作を行わせる、ノードのメモリ内に記憶されるコンピュータ実行可能命令を含んでもよい。一実施例では、メッセージペイロードは、登録要求を含む。ノードは、1つまたはそれを上回るキーをハッシュ関数に適用し、マッピング情報を生成してもよい。前述のように、マッピング情報は、ピアリソースディレクトリサーバの少なくとも1つの識別を含んでもよい。ノードは、マッピング情報に基づいて、メッセージペイロードを1つまたはそれを上回るピアリソースディレクトリサーバに伝送してもよい。ノードは、少なくとも1つの応答を1つまたはそれを上回るピアリソースディレクトリサーバから受信してもよい。少なくとも1つの応答は、リソースの場所を示してもよい。また、前述でも詳細に説明されるように、受信された少なくとも1つの応答に基づいて、ノード(例えば、リソースディレクトリサーバ)は、結果として生じる応答をエンドポイントに伝送してもよい。メッセージペイロードと関連付けられた1つまたはそれを上回るキーは、少なくとも1つのパラメータおよび少なくとも1つのパラメータと関連付けられた少なくとも1つの値を含んでもよい。少なくとも1つのパラメータは、ドメイン、エンドポイント、グループ名、エンドポイントタイプ、リソースタイプ、リソース有効期間、またはインターフェースを含んでもよい。前述で詳細に説明された一実施例では、少なくとも1つのパラメータは、複数のパラメータであり、少なくとも1つの値は、複数の値であり、ハッシュ関数は、登録要求内のパラメータおよび値のそれぞれに適用される。さらに、メッセージペイロードが伝送される、1つまたはそれを上回るピアリソースディレクトリサーバは、それぞれ、メッセージペイロードを記憶する、複数のピアリソースディレクトリサーバであってもよく、ノードは、メッセージペイロード内にあるパラメータの数に基づいて、複数のピアリソースディレクトリサーバ内のピアリソースディレクトリサーバの数を判定してもよい。代替として、また、前述に詳細に説明されるように、メッセージペイロードが伝送される、1つまたはそれを上回るピアリソースディレクトリサーバは、メッセージペイロードを記憶する、選択された1つのピアリソースディレクトリサーバであってもよく、ノードは、複数のピアリソースディレクトリサーバに、複数のピアリソースディレクトリが、メッセージペイロードを記憶する選択された1つのピアリソースディレクトリへの参照を記憶するように、選択された1つのピアリソースディレクトリへの参照を伝送してもよい。登録要求は、エンドポイント名およびそのリソース記述を含んでもよいことを理解されたい。
【0095】
別の実施例では、メッセージペイロードは、リソースルックアップ要求を含み、メッセージペイロードと関連付けられた1つまたはそれを上回るキーは、1つまたはそれを上回るパラメータを含む。リソースルックアップ要求は、ルックアップタイプおよび1つまたはそれを上回るパラメータを含んでもよい。一実施例では、パラメータが、第1の論理連結語(例えば、AND)を使用して相互に接続される場合、ノードは、メッセージペイロードを複数のピアリソースディレクトリサーバに伝送する。複数とは、メッセージペイロード内のパラメータの数に基づいてもよい。別の実施例では、前述に詳細に説明されるように、パラメータが、第2の論理連結語(例えば、OR)を使用して相互に接続される場合、ノードは、メッセージペイロードを1つのみのピアリソースディレクトリサーバに伝送する。したがって、メッセージペイロードが伝送される、1つまたはそれを上回るピアリソースディレクトリサーバは、リソースルックアップ要求をマッピング情報によって示される他のピアリソースディレクトリサーバに伝搬する、選択された1つのピアリソースディレクトリサーバであってもよい。
【0096】
図22Aは、1つまたはそれを上回る開示された実施形態が実装され得る、例示的マシンツーマシン(M2M)、モノのインターネット(IoT)、またはモノのウェブ(WoT)通信システム10の略図である。概して、M2M技術は、IoT/WoTのための構成要素を提供し、任意のM2Mデバイス、M2Mゲートウェイ、またはM2Mサービスプラットフォームは、IoT/WoTの構成要素ならびにIoT/WoTサービス層等であってもよい。
図7−21のいずれかに図示される、クライアント、エンドポイント、ピア、またはリソースディレクトリのいずれかは、
図22A−Dに図示されるもの等の通信システムのノードを備えてもよい。
【0097】
図22Aに示されるように、M2M/IoT/WoT通信システム10は、通信ネットワーク12を含む。通信ネットワーク12は、固定ネットワーク(例えば、イーサネット(登録商標)、ファイバ、ISDN、PLC、または同等物)、または無線ネットワーク(例えば、WLAN、セルラー、または同等物)、もしくは異種ネットワークのネットワークであってもよい。例えば、通信ネットワーク12は、音声、データ、ビデオ、メッセージング、ブロードキャスト、または同等物等のコンテンツを複数のユーザに提供する、複数のアクセスネットワークを含んでいてもよい。例えば、通信ネットワーク12は、符号分割多重アクセス(CDMA)、時分割多重アクセス(TDMA)、周波数分割多重アクセス(FDMA)、直交FDMA(OFDMA)、単一キャリアFDMA(SC−FDMA)、および同等物等の1つまたはそれを上回るチャネルアクセス方法を採用してもよい。さらに、通信ネットワーク12は、例えば、コアネットワーク、インターネット、センサネットワーク、工業制御ネットワーク、パーソナルエリアネットワーク、融合個人ネットワーク、衛星ネットワーク、ホームネットワーク、または企業ネットワーク等の他のネットワークを備えてもよい。
【0098】
図22Aに示されるように、M2M/IoT/WoT通信システム10は、インフラストラクチャドメインおよびフィールドドメインを含んでもよい。インフラストラクチャドメインは、エンドツーエンドM2M展開のネットワーク側を指し、フィールドドメインは、通常はM2Mゲートウェイの背後にある、エリアネットワークを指す。フィールドドメインおよびインフラストラクチャドメインは両方とも、種々の異なるノード(例えば、ネットワークのサーバ、ゲートウェイ、デバイス)を備えてもよい。例えば、フィールドドメインは、M2Mゲートウェイ14と、端末デバイス18とを含んでもよい。任意の数のM2Mゲートウェイデバイス14およびM2M端末デバイス18が、所望に応じてM2M/IoT/WoT通信システム10に含まれ得ることが理解されるであろう。M2Mゲートウェイデバイス14およびM2M端末デバイス18のそれぞれは、通信ネットワーク12または直接無線リンクを介して、信号を伝送および受信するように構成される。M2Mゲートウェイデバイス14は、無線M2Mデバイス(例えば、セルラーおよび非セルラー)ならびに固定ネットワークM2Mデバイス(例えば、PLC)が、通信ネットワーク12等のオペレータネットワークを通して、または直接無線リンクを通してのいずれかで、通信することを可能にする。例えば、M2Mデバイス18は、データを収集し、通信ネットワーク12または直接無線リンクを介して、データをM2Mアプリケーション20またはM2Mデバイス18に送信してもよい。M2Mデバイス18はまた、M2Mアプリケーション20またはM2Mデバイス18からデータを受信してもよい。さらに、データおよび信号は、以下で説明されるように、M2Mサービス層22を介して、M2Mアプリケーション20に送信され、そこから受信されてもよい。M2Mデバイス18およびゲートウェイ14は、例えば、セルラー、WLAN、WPAN(例えば、Zigbee(登録商標)、6LoWPAN、Bluetooth(登録商標))、直接無線リンク、および有線を含む、種々のネットワークを介して通信してもよい。例示的M2Mデバイスとして、限定ではないが、タブレット、スマートフォン、医療デバイス、温度および天候モニタ、コネクテッドカー、スマートメータ、ゲームコンソール、携帯情報端末、健康およびフィットネスモニタ、照明、サーモスタット、電気器具、車庫のドアおよび他のアクチュエータベースのデバイス、セキュリティデバイス、ならびにスマートコンセントが挙げられる。
【0099】
図22Bを参照すると、フィールドドメイン内の図示したM2Mサービス層22は、M2Mアプリケーション20、M2Mゲートウェイデバイス14、M2M端末デバイス18、および通信ネットワーク12のためのサービスを提供する。M2Mサービス層22は、所望に応じて、任意の数のM2Mアプリケーション、M2Mゲートウェイデバイス14、M2M端末デバイス18、および通信ネットワーク12と通信し得ることが理解されるであろう。M2Mサービス層22は、1つまたはそれを上回るサーバ、コンピュータ、または同等物によって実装されてもよい。M2Mサービス層22は、M2M端末デバイス18、M2Mゲートウェイデバイス14、およびM2Mアプリケーション20に適用される、サービス能力を提供する。M2Mサービス層22の機能は、例えば、ウェブサーバとして、セルラーコアネットワークで、クラウドで等、種々の方法で実装されてもよい。
【0100】
図示したM2Mサービス層22と同様に、インフラストラクチャドメイン内にM2Mサービス層22’が存在する。M2Mサービス層22’は、インフラストラクチャドメイン内のM2Mアプリケーション20’および下層通信ネットワーク12’のためのサービスを提供する。M2Mサービス層22’はまた、フィールドドメイン内のM2Mゲートウェイデバイス14およびM2M端末デバイス18のためのサービスも提供する。M2Mサービス層22’は、任意の数のM2Mアプリケーション、M2Mゲートウェイデバイス、およびM2M端末デバイスと通信し得ることが理解されるであろう。M2Mサービス層22’は、異なるサービスプロバイダによるサービス層と相互作用してもよい。M2Mサービス層22’は、1つまたはそれを上回るサーバ、コンピュータ、仮想マシン(例えば、クラウド/計算/記憶ファーム等)、または同等物によって実装されてもよい。
【0101】
依然として、
図22Bを参照すると、M2Mサービス層22および22’は、多様なアプリケーションおよびバーティカルが活用することができる、サービス配布能力のコアセットを提供する。これらのサービス能力は、M2Mアプリケーション20および20’がデバイスと相互作用し、データ収集、データ分析、デバイス管理、セキュリティ、課金、サービス/デバイス発見等の機能を果たすことを可能にする。本質的に、これらのサービス能力は、これらの機能性を実装する負担をアプリケーションから取り除き、したがって、アプリケーション開発を単純化し、市場に出す費用および時間を削減する。サービス層22および22’はまた、M2Mアプリケーション20および20’が、サービス層22および22’が提供するサービスと関連して、種々のネットワーク12および12’を通して通信することも可能にする。
【0102】
M2Mアプリケーション20および20’は、限定ではないが、輸送、健康およびウェルネス、コネクテッドホーム、エネルギー管理、資産追跡、ならびにセキュリティおよび監視等、種々の産業におけるアプリケーションを含み得る。前述のように、デバイス、ゲートウェイ、および他のシステムのサーバを横断して起動するM2Mサービス層は、例えば、データ収集、デバイス管理、セキュリティ、課金、場所追跡/ジオフェンシング、デバイス/サービスの発見、および従来のシステムの統合等の機能をサポートし、サービスとしてのこれらの機能をM2Mアプリケーション20および20’に提供する。
【0103】
概して、
図22Aおよび22Bに図示されるサービス層22および22’等のサービス層(SL)は、アプリケーションプログラミングインターフェース(API)および下層ネットワーキングインターフェースのセットを通して付加価値サービス能力をサポートする、ソフトウェアミドルウェア層を定義する。ETSI M2MおよびoneM2Mアーキテクチャは両方とも、サービス層を定義する。ETSI M2Mのサービス層は、サービス能力層(SCL)と称される。SCLは、ETSI M2Mアーキテクチャの種々の異なるノード内に実装されてもよい。例えば、サービス層のインスタンスは、M2Mデバイス(デバイスSCL(DSCL)と称される)、ゲートウェイ(ゲートウェイSCL(GSCL)と称される)、および/またはネットワークノード(ネットワークSCL(NSCL)と称される)内に実装されてもよい。oneM2Mサービス層は、共通サービス機能(CSF)(すなわち、サービス能力)のセットをサポートする。1つまたはそれを上回る特定のタイプのCSFのセットのインスタンス化は、共通サービスエンティティ(CSE)と称され、異なるタイプのネットワークノード(例えば、インフラストラクチャノード、ミドルノード、特定用途向けノード)上にホストされ得る。第3世代パートナーシッププロジェクト(3GPP)はまた、マシン型通信(MTC)のためのアーキテクチャを定義している。そのようなアーキテクチャでは、サービス層およびそれを提供するサービス能力は、サービス能力サーバ(SCS)の一部として実装される。ETSI M2MアーキテクチャのDSCL、GSCL、またはNSCL内、3GPP MTCアーキテクチャのサービス能力サーバ(SCS)内、oneM2MアーキテクチャのCSFもしくはCSE内、またはネットワークのある他のノード内に具現化されるかどうかにかかわらず、サービス層のインスタンスは、サーバ、コンピュータ、および他のコンピューティングデバイスもしくはノードを含む、ネットワーク内の1つまたはそれを上回る独立型ノード上で、または1つまたはそれを上回る既存のノードの一部としてのいずれかで実行される、論理エンティティ(例えば、ソフトウェア、コンピュータ実行可能命令、および同等物)内に実装されてもよい。実施例として、サービス層またはその構成要素(例えば、AS/SCS100)のインスタンスは、以下に説明される
図22Cまたは22Dに図示される一般的アーキテクチャを有する、ネットワークノード(例えば、サーバ、コンピュータ、ゲートウェイ、デバイス、または同等物)上で起動されるソフトウェアの形態で実装されてもよい。
【0104】
さらに、本明細書に説明される方法および機能性は、例えば、前述のネットワークおよびアプリケーション管理サービス等、サービスにアクセスするためにサービス指向アーキテクチャ(SOA)および/またはリソース指向アーキテクチャ(ROA)を使用する、M2Mネットワークの一部として実装されてもよい。
【0105】
図22Cは、
図22Aおよび22Bに図示されるもの等のM2Mネットワーク内でM2Mサーバ、ゲートウェイ、デバイス、または他のノードとして動作し得る、
図7−21に図示されるクライアント、エンドポイント、ピア、またはリソースディレクトリのうちの1つ等のネットワークのノードの例示的ハードウェア/ソフトウェアアーキテクチャのブロック図である。
図22Cに示されるように、ノード30は、プロセッサ32と、送受信機34と、伝送/受信要素36と、スピーカ/マイクロホン38と、キーパッド40と、ディスプレイ/タッチパッド42と、非可撤性メモリ44と、可撤性メモリ46と、電源48と、全地球測位システム(GPS)チップセット50と、他の周辺機器52とを含んでもよい。ノード30はまた、送受信機34および伝送/受信要素36等の通信回路を含んでもよい。ノード30は、実施形態との整合を維持しながら、先述の要素の任意の副次的組み合わせを含み得ることを理解されたい。本ノードは、本明細書に説明されるリソースディレクトリ機能性を実装する、ノードであってもよい。
【0106】
プロセッサ32は、汎用プロセッサ、特殊用途プロセッサ、従来のプロセッサ、デジタル信号プロセッサ(DSP)、複数のマイクロプロセッサ、DSPコアと関連する1つまたはそれを上回るマイクロプロセッサ、コントローラ、マイクロコントローラ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)回路、任意の他のタイプの集積回路(IC)、状態マシン、および同等物であってもよい。プロセッサ32は、信号符号化、データ処理、電力制御、入出力処理、および/またはノード30が無線環境で動作することを可能にする任意の他の機能性を果たしてもよい。プロセッサ32は、伝送/受信要素36に連結され得る、送受信機34に連結されてもよい。
図22Cは、プロセッサ32および送受信機34を別個の構成要素として描写するが、プロセッサ32および送受信機34は、電子パッケージまたはチップにともに組み込まれ得ることが理解されるであろう。プロセッサ32は、アプリケーション層プログラム(例えば、ブラウザ)および/または無線アクセス層(RAN)プログラムならびに/もしくは通信を行ってもよい。プロセッサ32は、例えば、アクセス層および/またはアプリケーション層等で、認証、セキュリティキー一致、および/または暗号化動作等のセキュリティ動作を行ってもよい。
【0107】
図22Cに示されるように、プロセッサ32は、その通信回路(例えば、送受信機34および伝送/受信要素36)に結合される。プロセッサ32は、ノード30に、それが接続されるネットワークを介して、他のノードと通信させるために、コンピュータ実行可能命令の実行を通して、通信回路を制御してもよい。特に、プロセッサ32は、本明細書(例えば、
図7−21)および請求項に説明される伝送および受信ステップを行うために、通信回路を制御してもよい。
図22Cは、プロセッサ32および送受信機34を別個の構成要素として描写するが、プロセッサ32および送受信機34は、電子パッケージまたはチップにともに組み込まれ得ることを理解されたい。
【0108】
伝送/受信要素36は、M2Mサーバ、ゲートウェイ、デバイス、および同等物を含む、他のノードに信号を伝送する、または他のノードから信号を受信するように構成されてもよい。例えば、実施形態では、伝送/受信要素36は、RF信号を伝送および/または受信するように構成されるアンテナであってもよい。伝送/受信要素36は、WLAN、WPAN、セルラー、および同等物等の種々のネットワークおよびエアインターフェースをサポートしてもよい。実施形態では、伝送/受信要素36は、例えば、IR、UV、または可視光信号を伝送および/または受信するように構成されるエミッタ/検出器であってもよい。さらに別の実施形態では、伝送/受信要素36は、RFおよび光信号の両方を伝送および受信するように構成されてもよい。伝送/受信要素36は、無線または有線信号の任意の組み合わせを伝送および/または受信するように構成され得ることが理解されるであろう。
【0109】
加えて、伝送/受信要素36は、単一の要素として
図22Cで描写されているが、ノード30は、任意の数の伝送/受信要素36を含んでもよい。より具体的には、ノード30は、MIMO技術を採用してもよい。したがって、実施形態では、ノード30は、無線信号を伝送および受信するための2つまたはそれを上回る伝送/受信要素36(例えば、複数のアンテナ)を含んでもよい。
【0110】
送受信機34は、伝送/受信要素36によって伝送される信号を変調するように、および伝送/受信要素36によって受信される信号を復調するように構成されてもよい。上記のように、ノード30は、マルチモード能力を有してもよい。したがって、送受信機34は、ノード30が、例えば、UTRAおよびIEEE802.11等の複数のRATを介して通信することを可能にするための複数の送受信機を含んでもよい。
【0111】
プロセッサ32は、非可撤性メモリ44および/または可撤性メモリ46等の任意のタイプの好適なメモリから情報にアクセスし、そこにデータを記憶してもよい。非可撤性メモリ44は、ランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)、ハードディスク、または任意の他のタイプのメモリ記憶デバイスを含んでもよい。可撤性メモリ46は、加入者識別モジュール(SIM)カード、メモリスティック、セキュアデジタル(SD)メモリカード、および同等物を含んでもよい。他の実施形態では、プロセッサ32は、サーバまたはホームコンピュータ上等のノード30上に物理的に位置しないメモリから情報にアクセスし、そこにデータを記憶してもよい。プロセッサ32は、ディスプレイまたはインジケータ42上の照明パターン、画像、または色を制御し、UE(例えば、GUI1400参照)と、特に、UEと通信する下層ネットワーク、アプリケーション、または他のサービスのステータスを反映させるように構成されてもよい。プロセッサ32は、電源48から電力を受け取ってもよく、ノード30内の他の構成要素への電力の配信および/または制御のために構成されてもよい。電源48は、ノード30に電力供給するための任意の好適なデバイスであってもよい。例えば、電源48は、1つまたはそれを上回る乾電池バッテリ(例えば、ニッケルカドミウム(NiCd)、ニッケル亜鉛(NiZn)、ニッケル水素(NiMH)、リチウムイオン(Li−ion)等)、太陽電池、燃料電池、および同等物を含んでもよい。
【0112】
プロセッサ32はまた、ノード30の現在の場所に関する場所情報(例えば、経度および緯度)を提供するように構成される、GPSチップセット50に連結されてもよい。ノード30は、実施形態との整合を維持しながら、任意の好適な場所判定方法を介して場所情報を獲得し得ることが理解されるであろう。
【0113】
プロセッサ32はさらに、付加的な特徴、機能性、および/または有線もしくは無線接続を提供する、1つまたはそれを上回るソフトウェアおよび/またはハードウェアモジュールを含み得る、他の周辺機器52に連結されてもよい。例えば、周辺機器52は、加速度計、e−コンパス、衛星送受信機、センサ、デジタルカメラ(写真またはビデオ用)、ユニバーサルシリアルバス(USB)ポート、振動デバイス、テレビ送受信機、ハンズフリーヘッドセット、Bluetooth(登録商標)モジュール、周波数変調(FM)ラジオユニット、デジタル音楽プレーヤ、メディアプレーヤ、ビデオゲームプレーヤモジュール、インターネットブラウザ、および同等物を含んでもよい。
【0114】
図22Dは、
図22Aおよび22Bに図示されるもの等のM2Mネットワーク内のM2Mサーバ、ゲートウェイ、デバイス、または他のノードとして動作し得る、
図7−21に図示されるクライアント、ピア、およびリソースディレクトリ等のネットワークの1つまたはそれを上回るノードを実装するためにもまた使用され得る、例示的コンピュータシステム90のブロック図である。コンピュータシステム90は、コンピュータまたはサーバを備えてもよく、主に、ソフトウェアの形態であり得るコンピュータ可読命令によって制御されてもよく、どこでも、またはどのような手段を用いても、そのようなソフトウェアが記憶もしくはアクセスされる。そのようなコンピュータ可読命令は、コンピュータシステム90を起動させるように、中央処理装置(CPU)91内で実行されてもよい。多くの既知のワークステーション、サーバ、および周辺コンピュータでは、中央処理装置91は、マイクロプロセッサと呼ばれる単一チップCPUによって実装される。他のマシンでは、中央処理装置91は、複数のプロセッサを備えてもよい。コプロセッサ81は、付加的な機能を果たすか、またはCPU91を支援する、主要CPU91とは明確に異なる、随意的なプロセッサである。CPU91および/またはコプロセッサ81は、セッション証明書の受信またはセッション証明書に基づく認証等、E2E M2Mサービス層セッションのための開示されるシステムおよび方法に関連するデータを受信、生成、および処理してもよい。
【0115】
動作時、CPU91は、命令をフェッチ、復号、および実行し、コンピュータの主要データ転送パスであるシステムバス80を介して、情報を他のリソースへ、およびそこから転送する。そのようなシステムバスは、コンピュータシステム90内の構成要素を接続し、データ交換のための媒体を定義する。システムバス80は、典型的には、データを送信するためのデータライン、アドレスを送信するためのアドレスライン、ならびに割り込みを送信するため、およびシステムバスを動作するための制御ラインを含む。そのようなシステムバス80の実施例は、PCI(周辺構成要素相互接続)バスである。
【0116】
システムバス80に連結されるメモリデバイスは、ランダムアクセスメモリ(RAM)82および読取専用メモリ(ROM)93を含む。そのようなメモリは、情報が記憶されて取り出されることを可能にする回路を含む。ROM93は、概して、容易に修正することができない、記憶されたデータを含有する。RAM82に記憶されたデータは、CPU91または他のハードウェアデバイスによって読み取られ、または変化されてもよい。RAM82および/またはROM93へのアクセスは、メモリコントローラ92によって制御されてもよい。メモリコントローラ92は、命令が実行されると、仮想アドレスを物理的アドレスに変換する、アドレス変換機能を提供してもよい。メモリコントローラ92はまた、システム内のプロセスを単離し、ユーザプロセスからシステムプロセスを単離する、メモリ保護機能を提供してもよい。したがって、第1のモードで作動するプログラムは、独自のプロセス仮想アドレス空間によってマップされるメモリのみにアクセスすることができ、プロセス間のメモリ共有が設定されていない限り、別のプロセスの仮想アドレス空間内のメモリにアクセスすることができない。
【0117】
加えて、コンピュータシステム90は、CPU91からプリンタ94、キーボード84、マウス95、およびディスクドライブ85等の周辺機器に命令を伝達する責任がある、周辺機器コントローラ83を含有してもよい。
【0118】
ディスプレイコントローラ96によって制御されるディスプレイ86は、コンピュータシステム90によって生成される視覚出力を表示するために使用される。そのような視覚出力は、テキスト、グラフィックス、動画グラフィックス、およびビデオを含んでもよい。ディスプレイ86は、CRTベースのビデオディスプレイ、LCDベースのフラットパネルディスプレイ、ガスプラズマベースのフラットパネルディスプレイ、またはタッチパネルを伴って実装されてもよい。ディスプレイコントローラ96は、ディスプレイ86に送信されるビデオ信号を生成するために必要とされる、電子構成要素を含む。
【0119】
さらに、コンピュータシステム90は、例えば、
図22Aおよび22Bのネットワーク12等の外部通信ネットワークにコンピュータシステム90を接続するために使用され得る、ネットワークアダプタ97等の通信回路を含有し、コンピューティングシステム90が、ネットワークの他のノードと通信することを可能にしてもよい。通信回路は、単独で、またはCPU91と組み合わせて、本明細書(例えば、
図7−21)および請求項に説明される伝送および受信ステップを行うために使用されてもよい。
【0120】
本明細書で説明される方法およびプロセスのうちのいずれかは、命令が、コンピュータ、サーバ、M2M端末デバイス、M2Mゲートウェイデバイス、または同等物等のマシンによって実行されたときに、本明細書で説明されるシステム、方法、およびプロセスを実行および/または実装する、コンピュータ可読記憶媒体上に記憶されたコンピュータ実行可能命令(すなわち、プログラムコード)の形態で具現化され得ることを理解されたい。具体的には、上記で説明されるステップ、動作、または機能のうちのいずれかは、そのようなコンピュータ実行可能命令の形態で実装されてもよい。コンピュータ可読記憶媒体は、情報の記憶のための任意の方法または技術で実装される、揮発性および不揮発性、可撤性および非可撤性媒体の両方を含むが、そのようなコンピュータ可読記憶媒体は、信号を含まない。コンピュータ可読記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)または他の光学ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶デバイス、あるいは所望の情報を記憶するために使用することができ、コンピュータによってアクセスすることができる任意の他の物理的媒体を含むが、それらに限定されない。
【0121】
図で図示されるような本開示の主題の好ましい実施形態を説明する際に、明確にするために、特定の用語が採用される。しかしながら、請求された主題は、そのように選択された特定の用語に限定されることを目的としておらず、各特定の要素は、類似目的を達成するように同様に動作する、全ての技術的均等物を含むことを理解されたい。
【0122】
以下は、前述の説明において表出し得る、サービスレベル技術に関連する頭字語のリストである。別様に規定されない限り、本明細書で使用される頭字語は、以下にリスト化される対応する用語を指す。
CoAP 制約アプリケーションプロトコル
CoRE 制約RESTful環境
DHT 分散ハッシュテーブル
DRD 分散リソースディレクトリ
EP エンドポイント
HTTP ハイパーテキスト転送プロトコル
IETF インターネット技術タスクフォース
IoT モノのインターネット
M2M マシンツーマシン
MAC 媒体アクセス制御
RD リソースディレクトリ
RE 参照支援機構
SA 記憶補助機構
URI 統一資源識別子
【0123】
本明細書は、最良の様態を含む、本発明を開示するために、また、当業者が、任意のデバイスまたはシステムを作製して使用すること、および任意の組み込まれた方法を行うことを含む、本発明を実践することを可能にするために、実施例を使用する。本発明の特許性のある範囲は、請求項によって定義され、当業者に想起される他の実施例を含んでもよい。そのような他の実施例は、請求項の文字通りの言葉とは異ならない構造要素を有する場合に、または請求項の文字通りの言葉とのごくわずかな差異を伴う同等の構造要素を含む場合に、請求項の範囲内であることを目的としている。