JP6397044B2 - 拡張分散リソースディレクトリ - Google Patents

拡張分散リソースディレクトリ Download PDF

Info

Publication number
JP6397044B2
JP6397044B2 JP2016556292A JP2016556292A JP6397044B2 JP 6397044 B2 JP6397044 B2 JP 6397044B2 JP 2016556292 A JP2016556292 A JP 2016556292A JP 2016556292 A JP2016556292 A JP 2016556292A JP 6397044 B2 JP6397044 B2 JP 6397044B2
Authority
JP
Japan
Prior art keywords
resource
node
peer
endpoint
resource directory
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.)
Expired - Fee Related
Application number
JP2016556292A
Other languages
English (en)
Other versions
JP2017517046A (ja
Inventor
リジュン ドン,
リジュン ドン,
チョンガン ワン,
チョンガン ワン,
デール エヌ. シード,
デール エヌ. シード,
チュアン リー,
チュアン リー,
Original Assignee
コンヴィーダ ワイヤレス, エルエルシー
コンヴィーダ ワイヤレス, エルエルシー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by コンヴィーダ ワイヤレス, エルエルシー, コンヴィーダ ワイヤレス, エルエルシー filed Critical コンヴィーダ ワイヤレス, エルエルシー
Publication of JP2017517046A publication Critical patent/JP2017517046A/ja
Application granted granted Critical
Publication of JP6397044B2 publication Critical patent/JP6397044B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1065Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT] 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4541Directories for service discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)

Description

(関連出願に対する相互参照)
本願は、2014年3月11日に出願された米国仮特許出願第61/951,141号の利益を主張するものであり、該仮特許出願の開示は、その全体が参照により本明細書中に援用される。
リソース制約ノードおよびネットワークは、マシンツーマシン(M2M)およびモノのインターネット(IoT)システムの重要な部分を構成する。Internet Engineering Task Force(IETF) Constrained RESTful Environments(CoRE) Working Group(IETF CoRE)は、CoREリソースディレクトリ(RD)を開発している。図1は、CoREリソースディレクトリアーキテクチャの実施例を示し、CoREリソースディレクトリは、ウェブサーバがリソースディレクトリを発見することができるように、リソースディレクトリがサポートする、ウェブインターフェースを規定する。さらに、ウェブインターフェースは、ウェブサーバが、リソース記述を登録、維持、ルックアップ、および除去することを可能にする。IETFはまた、リソースディレクトリと併用され得る、リンク属性を定義している。
図1を参照すると、CoRE RDアーキテクチャ内のリソースディレクトリ100が、描写されている。リソースディレクトリ100は、概して、エンドポイント、例えば、エンドポイント102と称され得る、他のウェブサーバ上にホストされるリソースと関連付けられたウェブリンクのためのリポジトリであることができる。エンドポイントは、ポートと関連付けられたウェブサーバを指し得、したがって、物理的ノードは、1つまたはそれを上回るエンドポイントをホストし得る。エンドポイントは、種々のM2M/IoTデバイス内にホストされることができる。リソースディレクトリ100は、エンドポイント102が、ウェブリンクのセット(リソースディレクトリエントリと呼ばれる)を登録および維持するためのRESTful(表現可能な状態の転送)インターフェースのセットを実装する。インターフェースはまた、リソースディレクトリが、エントリを検証することを可能にし、クライアント(例えば、クライアント104)が、リソースディレクトリ100からリソースをルックアップすることを可能にする。リソースは、概して、RESTfulアーキテクチャ内の一意のアドレス指定可能なエンティティを指す。エンドポイントはまた、クライアントとして作用することができ、したがって、クライアントもまた、M2M/IoTデバイス内にホストされることができる。
依然として、概して、図1を参照すると、エンドポイント102は、リソースディレクトリエントリをリソースディレクトリ100上に先を見越して登録および維持する。エントリは、ソフトステートであって、周期的にリフレッシュされる必要があり得る。エンドポイント102は、インターフェースを装備し、所与のリソースディレクトリエントリを登録、更新、および除去する。さらに、リソースディレクトリは、CoREリンクフォーマットを使用して発見されることができる。リソースディレクトリ、例えば、リソースディレクトリ100は、ウェブリンクをエンドポイント100から先を見越して発見し、それらをリソースディレクトリエントリとして追加してもよい。リソースディレクトリ100はまた、ウェブリンクを先を見越して発見し、既存のリソースディレクトリエントリを検証してもよい。リソースディレクトリ100内に保持されるウェブリンクを発見するためのルックアップインターフェースは、CoREリンクフォーマットを使用して提供される。
図2は、CoREリソースディレクトリアーキテクチャにおけるリソース登録の現在の技法を図示する。図1および2を参照すると、エンドポイント102は、登録インターフェース106を使用して、そのリソースを登録する。202では、登録インターフェース106は、POSTをエンドポイント102から受け取る。POSTは、CoREリンクフォーマットに従ってメッセージペイロード内のディレクトリに追加されるべきリソースのリストを含有してもよい。POSTはまた、エンドポイント102の名前、エンドポイント102と関連付けられたドメイン、および登録の有効期間を示す、クエリストリングパラメータを含有してもよい。実施例では、エンドポイント名以外の全てのパラメータは、随意である。リソースディレクトリ100は、次いで、新しいリソースを作成する、またはリソースディレクトリ内の既存のリソースを更新し、その場所を返す(204)。実施例によると、エンドポイント100は、登録インターフェース106を使用して登録をリフレッシュするときにそれが受信する場所を使用する。リソースディレクトリ100内のエンドポイントリソースは、有効期間パラメータによって示される周期の間、アクティブに保たれる。エンドポイント102は、登録インターフェース106または更新インターフェースのいずれかを使用して、本周期内におけるエントリのリフレッシュに関与する。
図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節に定義されるような任意のリンク属性を示してもよい。リソースルックアップのために使用される。
図3は、CoREリソースディレクトリアーキテクチャにおけるリソースルックアップのための現在の技法を図示する。示されるように、302では、クライアント104は、リソースタイプ(rt)パラメータをルックアップする。実施例では、クライアント104は、温度リソースタイプ(例えば、温度センサ)を伴うリソースの発見を試みている。したがって、リソースタイプは、温度に設定される。304では、示されるように、RD100は、「coap://node1/temp」のURIを伴うリソースを返す。
リソースディレクトリ100は、CoREリソースディレクトリアーキテクチャにおいて規定されるように、集中化される。集中型リソースディレクトリは、インターネットを横断するスケーラビリティに欠ける。例えば、あるクライアントは、そのローカルドメイン内のリソースにのみアクセスすることを所望し得る。集中型リソースディレクトリは、他のクライアントに影響を及ぼさずに、そのような局在型リソース管理を良好にサポートしない。その結果、分散リソースディレクトリが、提案されている。
図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エンティティである。
図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の中に登録されたことを示す。
502におけるPOST要求は、エンドポイント402aを一意に識別するために使用される、エンドポイント402a名を示すためのクエリストリングパラメータを含む。エンドポイント名設定は、異なる代替を有する。1つの方法は、デバイスのMACアドレスをハッシュし、エンドポイント名を生成することである。別の方法は、共通名を使用することである。
実施例として、依然として、図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"
その結果、ハッシュ関数に適用されるキーは、第2のピア404b(P2)が値を記憶するためのピアであることを判定する、coap://overlay−1.com/proxy−1/.well−known/core?ep=9996172となる。第2のピア404b上に記憶される値は、ペイロードである。
また、図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に返信する。
例えば、クライアント410aが、本明細書に規定されるように、URI:coap://overlay−1.com/proxy−1/.well−known/core?ep=9996172を伴うリソースを発見することを所望する場合、ピア404cは、GET要求を受信し、ピア404bにマップするURIにハッシュ関数を使用する。その結果、ピア404cは、要求をピア404bに自動転送する。ピア404bは、リソースのペイロードをピア404cに返し、順に、ペイロードをクライアント410aに返す。
前述のように、CoREリソースディレクトリは、CoREリソースディレクトリが集中化されるように、集中型リソースディレクトリを含む。本明細書では、集中型ディレクトリは、クライアントによって同時に効率的にアクセスされず、IoTシステムまたはM2Mネットワークのために効率的にスケーリングされないと認識される。さらに、本明細書では、前述の分散リソースディレクトリは、他の欠点の中でもとりわけ、限定された登録能力およびルックアップ能力を有すると認識される。
本明細書に説明されるのは、拡張分散リソースディレクトリ(DRD)のための方法、デバイス、およびシステムである。例示的実施形態では、分散リソースディレクトリネットワーク内のノード、例えば、リソースディレクトリノードは、メッセージペイロードをエンドポイントから受信する。メッセージペイロードは、登録要求またはリソースルックアップ要求を含んでもよい。メッセージペイロードの受信に応じて、リソースディレクトリサーバは、メッセージペイロードと関連付けられたキーを判定してもよい。キーは、パラメータおよびパラメータと関連付けられた値を有してもよい。キーの判定に応じて、キーは、ハッシュ関数に適用され、ピアリソースディレクトリと関連付けられたマッピング情報を生成する。マッピング情報に基づいて、リソースディレクトリサーバは、メッセージペイロードをピアリソースディレクトリに伝送してもよい。メッセージペイロードの伝送に応じて、リソースディレクトリノードは、応答をピアリソースディレクトリから受信してもよい。応答は、ピアリソースディレクトリに記憶されるリソースの場所またはコンテンツを示してもよい。応答の受信に応じて、リソースディレクトリノードは、応答を組み合わせることによって、結果として生じる応答を生成してもよい。リソースディレクトリノードは、結果として生じる応答を、ウェブサーバであり得る、要求側エンドポイントに伝送してもよい。結果として生じる応答は、ハッシュパラメータを含んでもよい。
本概要は、発明を実施するための形態において以下でさらに説明される、簡略化形態の概念の選択を導入するように提供される。本概要は、請求された主題の主要な特徴または不可欠な特徴を識別することを目的としておらず、また、請求された主題の範囲を限定するために使用されることも目的としていない。さらに、請求された主題は、本開示の任意の部分で記述されるいずれかまたは全ての不利点を解決する制限に限定されない。
例えば、本願は以下の項目を提供する。
(項目1)
プロセッサと、メモリと、通信回路とを備える、ノードであって、前記ノードは、その通信回路を介して通信ネットワークに接続され、前記ノードは、前記ノードのメモリ内に記憶されるコンピュータ実行可能命令をさらに備え、前記コンピュータ実行可能命令は、前記ノードのプロセッサによって実行されると、前記ノードに、
エンドポイントから受信されたメッセージペイロードと関連付けられた1つまたはそれを上回るキーを判定することであって、前記メッセージペイロードは、登録要求を備える、ことと、
前記1つまたはそれを上回るキーをハッシュ関数に適用し、マッピング情報を生成することであって、前記マッピング情報は、ピアリソースディレクトリサーバの少なくとも1つの識別を備える、ことと、
前記マッピング情報に基づいて、前記メッセージペイロードを1つまたはそれを上回るピアリソースディレクトリサーバに伝送することと、
少なくとも1つの応答を前記1つまたはそれを上回るピアリソースディレクトリサーバから受信することであって、前記少なくとも1つの応答は、前記リソースの場所を示す、ことと、
前記受信された少なくとも1つの応答に基づいて、結果として生じる応答を前記エンドポイントに伝送することと
を行わせる、ノード。
(項目2)
前記メッセージペイロードと関連付けられた1つまたはそれを上回るキーは、少なくとも1つのパラメータおよび前記少なくとも1つのパラメータと関連付けられた少なくとも1つの値を備える、項目1に記載のノード。
(項目3)
前記少なくとも1つのパラメータは、ドメイン、エンドポイント、グループ名、エンドポイントタイプ、リソースタイプ、リソース有効期間、またはインターフェースを示す、項目2に記載のノード。
(項目4)
前記少なくとも1つのパラメータは、複数のパラメータであり、前記少なくとも1つの値は、複数の値であり、前記ハッシュ関数は、前記登録要求内のパラメータおよび値のそれぞれに適用される、項目2に記載のノード。
(項目5)
前記メッセージペイロードが伝送される、前記1つまたはそれを上回るピアリソースディレクトリサーバは、それぞれ、前記メッセージペイロードを記憶する、複数のピアリソースディレクトリサーバであり、前記コンピュータ実行可能命令はさらに、前記ノードに、
前記メッセージペイロード内にあるパラメータの数に基づいて、前記複数のピアリソースディレクトリサーバ内のピアリソースディレクトリサーバの数を判定すること
を行わせる、項目4に記載のノード。
(項目6)
前記メッセージペイロードが伝送される、前記1つまたはそれを上回るピアリソースディレクトリサーバは、前記メッセージペイロードを記憶する、選択された1つのピアリソースディレクトリサーバであり、前記コンピュータ実行可能命令はさらに、前記ノードに、
前記複数のピアリソースディレクトリが、前記メッセージペイロードを記憶する選択された1つのピアリソースディレクトリへの参照を記憶するように、複数のピアリソースディレクトリサーバに、前記選択された1つのピアリソースディレクトリへの参照を伝送すること
を行わせる、項目4に記載のノード。
(項目7)
前記登録要求は、前記エンドポイントの名前およびそのリソース記述を備える、項目1に記載のノード。
(項目8)
前記エンドポイントは、ウェブサーバ、マシンツーマシンデバイス、またはゲートウェイとして動作するように構成される、項目1に記載のノード。
(項目9)
プロセッサと、メモリと、通信回路とを備える、ノードであって、前記ノードは、その通信回路を介して通信ネットワークに接続され、前記ノードは、前記ノードのメモリ内に記憶されるコンピュータ実行可能命令をさらに備え、前記コンピュータ実行可能命令は、前記ノードのプロセッサによって実行されると、前記ノードに、
エンドポイントから受信されたメッセージペイロードと関連付けられた1つまたはそれを上回るキーを判定することであって、前記メッセージペイロードは、リソースルックアップ要求を備える、ことと、
前記1つまたはそれを上回るキーをハッシュ関数に適用し、マッピング情報を生成することであって、前記マッピング情報は、ピアリソースディレクトリサーバの少なくとも1つの識別を備える、ことと、
前記マッピング情報に基づいて、前記メッセージペイロードを1つまたはそれを上回るピアリソースディレクトリサーバに伝送することと、
少なくとも1つの応答を前記1つまたはそれを上回るピアリソースディレクトリサーバから受信することであって、前記少なくとも1つの応答は、前記1つまたはそれを上回るピアリソースディレクトリサーバ上に記憶されるリソースのコンテンツを示す、ことと、
前記受信された少なくとも1つの応答に基づいて、結果として生じる応答を前記エンドポイントに伝送することと
を行わせる、ノード。
(項目10)
前記メッセージペイロードと関連付けられた1つまたはそれを上回るキーは、1つまたはそれを上回るパラメータを備える、項目9に記載のノード。
(項目11)
前記1つまたはそれを上回るパラメータは、ドメイン、エンドポイント、グループ名、エンドポイントタイプ、リソースタイプ、リソース有効期間、またはインターフェースを示す、項目10に記載のノード。
(項目12)
前記リソースルックアップ要求は、ルックアップタイプおよび1つまたはそれを上回るパラメータを備える、項目9に記載のノード。
(項目13)
前記1つまたはそれを上回るパラメータは、複数のパラメータであり、前記コンピュータ実行可能命令はさらに、前記ノードに、
前記パラメータが、第1の論理連結語を使用して相互に接続される場合、前記メッセージペイロードを複数のピアリソースディレクトリサーバに伝送することであって、前記複数とは、前記メッセージペイロード内のパラメータの数に基づく、ことと、
前記パラメータが、第2の論理連結語を使用して相互に接続される場合、前記メッセージペイロードを1つのみのピアリソースディレクトリサーバに伝送することと
を行わせる、項目10に記載のノード。
(項目14)
前記メッセージペイロードが伝送される、前記1つまたはそれを上回るピアリソースディレクトリサーバは、前記リソースルックアップ要求を前記マッピング情報によって示される他のピアリソースディレクトリサーバに伝搬する、選択された1つのピアリソースディレクトリサーバである、項目10に記載のノード。
(項目15)
前記エンドポイントは、ウェブサーバ、マシンツーマシンデバイス、またはゲートウェイとして動作するように構成される、項目9に記載のノード。
(項目16)
方法であって、
リソースディレクトリサーバによって、エンドポイントから受信されたメッセージペイロードと関連付けられた1つまたはそれを上回るキーを判定することであって、前記メッセージペイロードは、登録要求またはリソースルックアップ要求のうちの少なくとも1つを備える、ことと、
前記1つまたはそれを上回るキーをハッシュ関数に適用し、マッピング情報を生成することであって、前記マッピング情報は、ピアリソースディレクトリサーバの少なくとも1つの識別を備える、ことと、
前記マッピング情報に基づいて、前記メッセージペイロードを1つまたはそれを上回るピアリソースディレクトリサーバに伝送することと、
前記リソースディレクトリサーバにおいて、少なくとも1つの応答を前記1つまたはそれを上回るピアリソースディレクトリサーバから受信することであって、前記少なくとも1つの応答は、リソースの場所または前記1つまたはそれを上回るピアリソースディレクトリサーバ上に記憶されるリソースのコンテンツを示す、ことと、
前記受信された少なくとも1つの応答に基づいて、結果として生じる応答を前記エンドポイントに伝送することと、
を含む、方法。
(項目17)
前記メッセージペイロードと関連付けられた1つまたはそれを上回るキーは、少なくとも1つのパラメータおよび前記少なくとも1つのパラメータと関連付けられた少なくとも1つの値を備える、項目16に記載の方法。
(項目18)
前記少なくとも1つのパラメータは、ドメイン、エンドポイント、グループ名、エンドポイントタイプ、リソースタイプ、リソース有効期間、またはインターフェースを示す、項目17に記載の方法。
(項目19)
前記登録要求は、前記エンドポイントの名前およびそのリソース記述を備える、項目17に記載の方法。
(項目20)
前記リソースルックアップ要求は、ルックアップタイプおよび1つまたはそれを上回るパラメータを備える、項目17に記載の方法。
より詳細な理解は、付随の図面と併せて、一例として与えられる、以下の説明から得られ得る。
図1は、制約RESTful環境(CoRE)リソースディレクトリアーキテクチャを図示する、システム図である。
図2は、CoREリソースディレクトリアーキテクチャにおけるリソース登録の実施例を図示する、流れ図である。
図3は、CoREリソースディレクトリアーキテクチャにおけるリソースルックアップの実施例を図示する、流れ図である。
図4は、例示的分散リソースディレクトリアーキテクチャを図示する、システム図である。
図5は、図4に描写される分散リソースディレクトリにおけるリソース登録の実施例を図示する、流れ図である。
図6は、図4に描写される分散リソースディレクトリにおけるリソース発見の実施例を図示する、流れ図である。
図7は、例示的実施形態による、記憶補助機構を使用したエンドポイントからのリソース登録を図示する、流れ図である。
図8は、例示的実施形態による、記憶補助機構における別のエンドポイントからのリソース登録を図示する、流れ図である。
図9は、例示的実施形態による、記憶補助機構における光グループ登録を図示する、流れ図である。
図10は、例示的実施形態による、記憶補助機構における圧力グループ登録を図示する、流れ図である。
図11は、例示的実施形態による、記憶補助実装におけるリソースルックアップを図示する、流れ図である。
図12は、例示的実施形態による、記憶補助実装における別のリソースルックアップを図示する、流れ図である。
図13は、例示的実施形態による、記憶補助実装におけるさらに別のリソースルックアップを図示する、流れ図である。
図14は、例示的実施形態による、記憶補助実装におけるさらに別のリソースルックアップを図示する、流れ図である。
図15は、例示的実施形態による、リソース登録の実施例を図示する、流れ図である。
図16は、別の例示的実施形態による、リソース登録の別の実施例を図示する、流れ図である。
図17は、例示的実施形態による、光グループ登録を図示する、流れ図である。
図18は、例示的実施形態による、圧力グループ登録を図示する、流れ図である。
図19は、例示的実施形態による、参照支援実装におけるリソースルックアップ実施例を図示する、流れ図である。
図20は、例示的実施形態による、参照支援実装における別のリソースルックアップ実施例を図示する、流れ図である。
図21は、例示的実施形態による、参照支援実装におけるさらに別のリソースルックアップを図示する、流れ図である。
図22Aは、1つまたはそれを上回る開示される実施形態が実装され得る、例示的マシンツーマシン(M2M)またはモノのインターネット(IoT)通信システムのシステム図である。
図22Bは、図22Aに例証されるM2M/IoT通信システム内で使用され得る、例示的アーキテクスチャのシステム図である。
図22Cは、図22Aに例証される通信システム内で使用され得る、例示的M2M/IoT端末またはゲートウェイデバイスのシステム図である。
図22Dは、図22Aの通信システムの側面が具現化され得る、例示的コンピューティングシステムのブロック図である。
続く発明を実施するための形態は、例示的実施形態を例証するために提供され、本発明の範囲、可用性、または構成を限定することを意図するものではない。種々の変更が、本発明の精神および範囲から逸脱することなく、要素およびステップの機能および配列において行われ得る。
用語「オーバーレイネットワーク」は、本明細書で使用されるように、別のネットワーク上に構築される、ネットワークを指す。オーバーレイネットワーク内のノードは、それぞれ、下層ネットワーク内のパスに対応する、仮想または論理リンクによって接続されると考えることができる。例えば、ピアツーピア(P2P)ネットワーク等の分散システムは、そのノードがインターネット上で起動するため、オーバーレイネットワークと見なされることができる。「ホームリソースディレクトリ(RD)」である、ノードは、本明細書で使用されるように、EPがそのリソースを登録することを所望するときのエンドポイント(EP)の第1のコンタクトポイントを指す。ホームRDはまた、クライアントがリソースを発見することを所望するときのクライアントのための第1のコンタクトポイントを指す。本明細書で使用されるように、「記憶RD」である、ノードは、リソース登録エントリを記憶し、ホームRDがクライアントの発見要求を自動転送する、ピアを指し得る。本明細書で使用されるように、別様に規定されない限り、「関与RD」である、ノードは、リソース登録メッセージ内のあらゆる可能性として考えられるキーにハッシュ関数を使用することから生じる、ピアのRDを指し得る。本明細書で使用されるように、別様に規定されない限り、「CoRE関与RD」である、ノードは、ホームRDがリソース発見要求を自動転送する第1のコンタクトポイントである、関与RDのうちの1つを指す。
例示的実施形態によると、拡張分散リソースディレクトリは、本明細書に説明されるように、リソースの統一資源識別子(URI)を把握せずに、リソースルックアップをサポートすることができる。一実施例では、リソース記述の複数のコピーが、本明細書では、ピアRDと称される、複数のリソースディレクトリ(RD)内に記憶される。参照支援(RE)実装と称される、本明細書に説明される別の例示的実装では、ホームピアは、登録メッセージを1つのみのピアRDに送信し、他のピアRDに、リソースおよびそれと関連付けられた情報が記憶される場所を通知する。
概して、図4に描写される分散リソースディレクトリアーキテクチャを参照すると、本明細書に説明される実施形態は、高度分散リソースルックアップを可能にする。一実施例では、クライアントは、リソースの発見および読み出しに先立って、リソースURIを把握する必要はない。例えば、クライアントは、その個別のホームRDへのリンクパラメータベースのクエリを規定する、リソースを要求およびルックアップしてもよい。言い換えると、分散リソースディレクトリは、クライアントへのリンクパラメータベースのクエリを満たす、リソースを返すことができる。
記憶補助(SA)実装と称され得る、例示的実施形態では、リソース登録の冗長コピーが、複数のピア内に提供される。本明細書では、データ記憶容量が増加するにつれて、そのようなデータ記憶と関連付けられたコストが減少すると認識され、したがって、ピアは、データ記憶能力を効率的に具備することができる。以下に詳細に説明されるように、ピアは、リソースの値内の可能性として考えられるキーワード/パラメータにハッシュ関数を使用することによって、データ記憶のために選定されてもよい。選定されるピアは、その記憶能力を使用して、リソース登録を記憶してもよい。ある場合には、H()として示される、1つのハッシュ関数が、適用され、全リソースディレクトリピア間に統合および分散ハッシュ空間を生成すると仮定される。
便宜上、本明細書で使用されるように、別様に規定されない限り、ピアRDは、単に、ピアと称され得る。クライアントは、一例として、限定ではないが、以下の提示されるもの等の種々のルックアップキーワード/パラメータを指定することができる。
・d:ドメイン
・ep:エンドポイント
・gp:グループ名
・et:エンドポイントタイプ
・rt:リソースタイプ
・lt:リソース有効期間
・if:インターフェース
さらに例証するために、以下は、限定として提示されるわけではないが、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”
例示的実施形態では、所与のエンドポイントは、種々の方法において候補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のリソース登録を含む、実施例が、最初に説明される。
図7−21(本明細書に後述される)は、リソースを管理および読み出すための方法および装置の種々の実施形態を図示する。これらの図では、種々のステップまたは動作は、1つまたはそれを上回るエンドポイント、クライアント、および/またはピアによって行われるように示される。これらの図に図示されるエンドポイント、クライアント、および/またはピアは、通信ネットワーク内の論理エンティティを表してもよく、以下に説明される図22Cまたは22Dに図示される一般的アーキテクチャの1つを備え得る、そのようなネットワークのノードのメモリ内に記憶され、そのプロセッサ上で実行される、ソフトウェア(例えば、コンピュータ実行可能命令)の形態で実装されてもよいことを理解されたい。すなわち、図7−21に図示される方法は、例えば、図22Cまたは22Dに図示されるノードまたはコンピュータシステム等のネットワークノードのメモリ内に記憶されるソフトウェア(例えば、コンピュータ実行可能命令)の形態で実装されてもよく、そのコンピュータ実行可能命令は、ノードのプロセッサによって実行されると、図に図示されるステップを行う。また、これらの図に図示される任意の伝送および受信ステップは、ノードのプロセッサおよびそれを実行するコンピュータ実行可能命令(例えば、ソフトウェア)の制御下、ノードの通信回路(例えば、それぞれ、図22Cおよび22Dの回路34または97)によって行われてもよいことを理解されたい。
ここで図7を参照すると、例示的ネットワーク700は、EP702と、ピア1、3、5、および11(P1、P3、P5、およびP11)とを含む。例示的ネットワーク700は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク400等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。さらに、参照番号は、図中の同一または類似特徴を示すために、種々の図で繰り返され得ることを理解されたい。
示されるように、図示される実施例によると、エンドポイント702は、9996172という名前を有し、704において、そのホームRDである、P1にそのリソースを登録する。706において、P1は、ペイロード内に含有されるリンクフォーマットを解釈し、本登録と関連付けられたキーワード/パラメータが、以下であることを判定してもよい。
・ep=9996172
・lt=41
・rt=”Temperature”
・rt=”LightLux”
・if=”sensor”
前述のキーワード/パラメータは、ハッシュ関数に適用されるためのキーとして使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、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がピアリソースディレクトリであるべきことを示し得る。
ここで図8を参照すると、例示的ネットワーク800は、EP802として図示されるEP9234571と、ピア3、2、11、および6(P3、P2、P11、およびP6)とを含む。例示的ネットワーク800は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク800等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
示されるように、図示される実施例によると、エンドポイント802は、9234571という名前を有し、804において、そのホームRDである、P3にそのリソースを登録する。806において、P3は、ペイロード内に含有されるリンクフォーマットを解釈し、本登録と関連付けられたキーワード/パラメータが、以下であることを判定してもよい。
・ep=9234571
・rt=”Temperature”
・if=”gateway”
前述のキーワード/パラメータは、ハッシュ関数の入力として使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、P2、P11、およびP5を含む。したがって、808a、808b、および808cにおいて、P3は、それぞれ、登録メッセージをP2、P11、およびP5に自動転送する。ピアP2、P11、およびP5はそれぞれ、ペイロードを記憶し、確認をP3に返す(810a−c)。812において、P3は、確認応答を組み合わせてもよい。814において、確認に応答して、P3は、EP802に返信する。
ここで図9を参照すると、例示的実施形態による、「光」グループ登録実施例が、提示される。示されるように、例示的ネットワーク900は、以下に説明されるように、管理ノードでもある、EP902と、ピア1、3、6、および2(P1、P3、P6、およびP2)とを含む。例示的ネットワーク900は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク900等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
示されるように、図示される実施例によると、管理ノード(EP902)は、グループを構成するために使用される。904において、EP902は、そのホームRD(P1)に要求を行う。要求は、作成するためのグループ名と、グループが属する随意のドメインとを示す。登録メッセージはまた、そのグループが属するエンドポイントのリストを含んでもよい。906において、P1は、ペイロード内に含有されるリンクフォーマットを解釈し、本登録と関連付けられたキーワード/パラメータが、以下であることを判定してもよい。
・gp=lights
・ep=”node1”
・d=”domain1”
・ep=”node2”
前述のキーワード/パラメータは、ハッシュ関数の入力として使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、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に返信する。
ここで図10を参照すると、例示的実施形態による、「圧力」グループ登録実施例が、提示される。示されるように、例示的ネットワーク1000は、以下に説明されるように、管理ノードでもある、EP1002と、ピア1、3、6、および2(P1、P3、P6、およびP2)とを含む。例示的ネットワーク1000は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1000等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
示されるように、図示される実施例によると、管理ノード(EP902)は、グループを構成するために使用される。1004では、EP1002は、そのホームRD(P1)に要求を行う。要求は、作成するためのグループ名と、グループが属する随意のドメインとを示す。登録メッセージはまた、そのグループが属するエンドポイントのリストを含んでもよい。1006において、P1は、ペイロード内に含有されるリンクフォーマットを解釈し、本登録と関連付けられたキーワード/パラメータが、以下であることを判定してもよい。
・gp=pressure
・d=”domain1”
・ep=”node2”
前述のキーワード/パラメータは、ハッシュ関数の入力として使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、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に返信する。
一例として、分散リソースおよびグループ登録が、図7−10を参照して説明されるように行われた後、ピアRDは、一例として提示され限定するものではないが、表1(以下)に示される情報を記憶してもよい。
ある場合には、前述のリソースおよびグループ登録方法は、リソースおよびグループが、前述の既存のルックアップ(発見)インターフェースを介して、ルックアップ(発見)されることを可能にする。ここで、背景として、リソースおよびグループルックアップに目を向けると、クライアントは、リソースルックアップ要求をそのホームRDに送信する。リソースルックアップ要求は、クライアントが発見することを所望するルックアップタイプおよびパラメータを指定することができる。ホームRDは、要求を分析し、クライアントが規定するキーを抽出してもよい。例示的実施形態では、ホームRDは、それらのキーにハッシュ関数を適用し、リソース登録を記憶するピアRDを算出する。キーは、AND/ORによって接続されてもよい。例えば、キーは、得られたRD(ハッシュ関数が適用された後に示されるRDS)のそれぞれが、同一リソース登録を記憶するため、ANDによって接続されてもよく、要求は、それらのうちの1つに自動転送されてもよい。ホームRDは、ランダムに、または、例えば、宛先RDの負荷もしくはホームRDと宛先RDとの間の帯域幅等のあるコンテキスト情報に基づいて、宛先RDをピックアップしてもよい。キーは、規定された要求を満たすリソースが、得られたRDを横断して分散され得る可能性があるとき、ORによって接続されてもよい。その結果、ホームRDは、要求を全ての得られたRDに自動転送し、リソースの結合セットを受信する必要があり得る。
ホームRDは、要求が自動転送されるべきピアRDを判定してもよい。ホームRDが応答をピアRDから受信した後、例えば、重複なく、リソースの完全リストを含有する、ルックアップ結果を生成してもよく、リストを要求側クライアントに返してもよい。
種々の例示的実施形態による、リソースおよびグループルックアップを例証するための実施例が、以下に提示される。図11を参照すると、GET/rd−lookup/res?rt=”Temperature”AND it=”gateway”ルックアップ要求を含む、実施例が、図示される。図11は、クライアント1102と、ホームRD1104と、ピア11(P11)とを含む、例示的ネットワーク1100を示す。例示的ネットワーク1100は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1100等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
示されるように、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に自動転送する。
図12を参照すると、GET/rd−lookup/res?rt=”LightLux”OR it=”gateway”要求を含む、実施例が、図示される。図12は、クライアント1202と、ホームRD1204と、ピア11(P11)および6(P6)とを含む、例示的ネットワーク1200を示す。例示的ネットワーク1200は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1200等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
示されるように、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に送信し、それによって、ルックアップ要求を満たす。
ここで図13を参照すると、GET/rd−lookup/gp?d=”domain1”ルックアップ要求を含む、グループルックアップ要求の実施例が、図示される。図13は、クライアント1302と、ホームRD1304と、ピア1(P1)とを含む、例示的ネットワーク1300を示す。例示的ネットワーク1300は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1300等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
示されるように、1306において、クライアント1302は、リソースルックアップ要求をそのホームRD1304に送信する。クライアント1302は、d=“domain1”を満たすグループを得ることを所望する。1308において、ホームRDは、ハッシュ関数を要求(d=“domain1”)内に示されるキーに適用する。ハッシュ関数が、実施例に従って適用されると、結果は、P1を含む。図示される実施例では、ホームRD1304は、1310において、ルックアップ要求をP1に送信する。1312において、P11は、要求と関連付けられた応答をホームRD1304に返す。ホームRD1304は、1314において、応答をクライアント1302に自動転送する。
ここで図14を参照すると、GET/rd−lookup/gp?ep=”node2”ルックアップ要求を含む、グループルックアップ要求の実施例が、図示される。図14は、クライアント1402と、ホームRD1404と、ピア2(P2)とを含む、例示的ネットワーク1400を示す。例示的ネットワーク1400は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1400等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
示されるように、1406において、クライアント1402は、リソースルックアップ要求をそのホームRD1404に送信する。クライアント1402は、その中にエンドポイント(node2)を伴うグループを得ることを所望する。1408において、ホームRDは、ハッシュ関数を要求(ep=“node2”)内に示されるキーに適用する。ハッシュ関数が、実施例に従って適用されると、結果は、node2である、P2を含む。図示される実施例では、ホームRD1404は、1410において、ルックアップ要求をP2に送信する。1412において、P1は、要求と関連付けられた応答をホームRD1404に返す。ホームRD1404は、1414において、応答をクライアント1402に自動転送する。
参照支援(RE)実装と称され得る、別の例示的実施形態では、ピアRDは、例えば、リソース自体を記憶するのではなく、記憶RDの参照を保つ。
ここで図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”
前述のキーワード/パラメータは、ハッシュ関数に適用されるためのキーとして使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、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に返信し、それによって、リソース要求を満たす。
ここで図16を参照すると、EP802と、ピア1、3、5、および11(P3、P2、P11、およびP6)とを含む、例示的ネットワーク800が、示される。示されるように、図示される実施例によると、エンドポイント802は、1604において、そのホームRDである、P3にそのリソースを登録する。1606において、P3は、ペイロード内に含有されるリンクフォーマットを解釈し、本登録と関連付けられたキーワード/パラメータが、以下であることを判定してもよい。
・ep=9234571
・rt=”Temperature”
・if=”gateway”
前述のキーワード/パラメータは、ハッシュ関数に適用されるためのキーとして使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、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に返信し、それによって、リソース要求を満たす。
ここで図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”
前述のキーワード/パラメータは、ハッシュ関数の入力として使用されてもよい。ハッシュ関数が、実施例に従って適用されると、結果は、P1、P3、P6、およびP2を含む。示されるように、1708において、P1は、登録をそれ自体に記憶し、例えば、登録メッセージを自動転送する際に使用されるネットワーク帯域幅を保存する。1712a−cにおいて、P1は、P3、P6、およびP2に、ピアがそれぞれ関与するパラメータを含む、リソース登録がP1内に記憶されていることを通知してもよい。1714a−cにおいて、P3、P6、およびP2は、将来的リソースルックアップのために、P1のアドレスを適切な参照下に記憶してもよい。1710において、結果は、EP902に送信される。
ここで図18を参照すると、例示的実施形態による、「圧力」グループ登録実施例が、提示される。示されるように、例示的ネットワーク1800は、EP1802と、ピア1および11とを含む。例示的ネットワーク1800は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1800等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
1804において、ピアP1は、グループ登録要求を受信してもよい。1806において、ハッシュ関数は、グループリソースをピアRD P11、P1、およびP2にマップしてもよい。1808において、P1は、登録をそれ自体に記憶し、登録メッセージを自動転送する際のネットワーク帯域幅使用を保存してもよい。1810において、P1は、P11に、リソース登録がP1内に記憶されていることを通知してもよい。示されるように、P1のアドレスは、P2にすでに通知されているため(1804)、P2は、1810において通知される必要はない。1812において、P11は、将来的リソースルックアップのために、P1のアドレスを適切な参照下に記憶してもよい。
例示的実施形態では、前述の実施例に説明される分散リソースおよびグループ登録が生じた後、ピアRDは、表2(以下)に示される情報を記憶してもよい。
ここで、リソースおよびグループルックアップ実装に目を向けると、別の例示的実施形態では、クライアントは、リソースおよびグループルックアップ要求をそのホーム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に返してもよく、これは、順に、応答をクライアントに返す。
別の例示的シナリオでは、要求内に複数のパラメータが含有され、パラメータは、ORによって接続される。そのようなシナリオでは、ホームRDは、要求を関与RD(CoRE関与RD)のうちの1つに自動転送してもよい。CoRE関与RDは、ハッシュ関数を他のパラメータに適用してもよく、他の関与RDが存在することを判定してもよい。CoRE関与RDは、参照カテゴリ内のリストのための要求もまた添付される、要求を他の関与RDに自動転送してもよい。CoRE関与RDは、全関与RDの参照カテゴリ内のRDの上位セットを発見することが可能である。CoRE関与RDは、次いで、要求をRDの上位セットに自動転送してもよい。これは、全応答を収集してもよく、ホームRDに返してもよく、これは、順に、応答をクライアントに返す。
ここで図19を参照すると、GET/rd−lookup/res?rt=”Temperature”AND it=”gateway”ルックアップ要求を含む、実施例が、図示される。図19は、クライアント1902と、ホームRD1904と、ピア11、6、1、および2とを含む、例示的ネットワーク1900を示す。例示的ネットワーク1900は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク1900等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
示されるように、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)。
ここで図20を参照すると、GET/rd−lookup/res?rt=”LightLux”OR it=”gateway”ルックアップ要求を含む、実施例が、図示される。図20は、クライアント2002と、ホームRD2004と、ピア11、6、1、2、および3とを含む、例示的ネットワーク2000を示す。例示的ネットワーク2000は、開示される主題の説明を促進するために簡略化され、本開示の範囲を限定することを意図するものではないことを理解されたい。他のデバイス、システム、および構成も、ネットワーク2000等のネットワークに加え、またはその代わりに、本明細書に開示される実施形態を実装するために使用されてもよく、そのような実施形態は全て、本開示の範囲内と見なされる。
示されるように、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)。
図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)。
したがって、前述の開示全体を通して説明されるように、ノードは、エンドポイントから受信されたメッセージペイロードと関連付けられた1つまたはそれを上回るキーを判定することができる。エンドポイントは、ウェブサーバ、M2Mデバイス、またはゲートウェイとして動作するように構成されてもよい。ノードは、プロセッサと、メモリと、通信回路とを含んでもよい。ノードは、その通信回路を介して通信ネットワークに接続されてもよく、ノードは、ノードのプロセッサによって実行されると、ノードに種々の動作を行わせる、ノードのメモリ内に記憶されるコンピュータ実行可能命令を含んでもよい。一実施例では、メッセージペイロードは、登録要求を含む。ノードは、1つまたはそれを上回るキーをハッシュ関数に適用し、マッピング情報を生成してもよい。前述のように、マッピング情報は、ピアリソースディレクトリサーバの少なくとも1つの識別を含んでもよい。ノードは、マッピング情報に基づいて、メッセージペイロードを1つまたはそれを上回るピアリソースディレクトリサーバに伝送してもよい。ノードは、少なくとも1つの応答を1つまたはそれを上回るピアリソースディレクトリサーバから受信してもよい。少なくとも1つの応答は、リソースの場所を示してもよい。また、前述でも詳細に説明されるように、受信された少なくとも1つの応答に基づいて、ノード(例えば、リソースディレクトリサーバ)は、結果として生じる応答をエンドポイントに伝送してもよい。メッセージペイロードと関連付けられた1つまたはそれを上回るキーは、少なくとも1つのパラメータおよび少なくとも1つのパラメータと関連付けられた少なくとも1つの値を含んでもよい。少なくとも1つのパラメータは、ドメイン、エンドポイント、グループ名、エンドポイントタイプ、リソースタイプ、リソース有効期間、またはインターフェースを含んでもよい。前述で詳細に説明された一実施例では、少なくとも1つのパラメータは、複数のパラメータであり、少なくとも1つの値は、複数の値であり、ハッシュ関数は、登録要求内のパラメータおよび値のそれぞれに適用される。さらに、メッセージペイロードが伝送される、1つまたはそれを上回るピアリソースディレクトリサーバは、それぞれ、メッセージペイロードを記憶する、複数のピアリソースディレクトリサーバであってもよく、ノードは、メッセージペイロード内にあるパラメータの数に基づいて、複数のピアリソースディレクトリサーバ内のピアリソースディレクトリサーバの数を判定してもよい。代替として、また、前述に詳細に説明されるように、メッセージペイロードが伝送される、1つまたはそれを上回るピアリソースディレクトリサーバは、メッセージペイロードを記憶する、選択された1つのピアリソースディレクトリサーバであってもよく、ノードは、複数のピアリソースディレクトリサーバに、複数のピアリソースディレクトリが、メッセージペイロードを記憶する選択された1つのピアリソースディレクトリへの参照を記憶するように、選択された1つのピアリソースディレクトリへの参照を伝送してもよい。登録要求は、エンドポイント名およびそのリソース記述を含んでもよいことを理解されたい。
別の実施例では、メッセージペイロードは、リソースルックアップ要求を含み、メッセージペイロードと関連付けられた1つまたはそれを上回るキーは、1つまたはそれを上回るパラメータを含む。リソースルックアップ要求は、ルックアップタイプおよび1つまたはそれを上回るパラメータを含んでもよい。一実施例では、パラメータが、第1の論理連結語(例えば、AND)を使用して相互に接続される場合、ノードは、メッセージペイロードを複数のピアリソースディレクトリサーバに伝送する。複数とは、メッセージペイロード内のパラメータの数に基づいてもよい。別の実施例では、前述に詳細に説明されるように、パラメータが、第2の論理連結語(例えば、OR)を使用して相互に接続される場合、ノードは、メッセージペイロードを1つのみのピアリソースディレクトリサーバに伝送する。したがって、メッセージペイロードが伝送される、1つまたはそれを上回るピアリソースディレクトリサーバは、リソースルックアップ要求をマッピング情報によって示される他のピアリソースディレクトリサーバに伝搬する、選択された1つのピアリソースディレクトリサーバであってもよい。
図22Aは、1つまたはそれを上回る開示された実施形態が実装され得る、例示的マシンツーマシン(M2M)、モノのインターネット(IoT)、またはモノのウェブ(WoT)通信システム10の略図である。概して、M2M技術は、IoT/WoTのための構成要素を提供し、任意のM2Mデバイス、M2Mゲートウェイ、またはM2Mサービスプラットフォームは、IoT/WoTの構成要素ならびにIoT/WoTサービス層等であってもよい。図7−21のいずれかに図示される、クライアント、エンドポイント、ピア、またはリソースディレクトリのいずれかは、図22A−Dに図示されるもの等の通信システムのノードを備えてもよい。
図22Aに示されるように、M2M/IoT/WoT通信システム10は、通信ネットワーク12を含む。通信ネットワーク12は、固定ネットワーク(例えば、イーサネット(登録商標)、ファイバ、ISDN、PLC、または同等物)、または無線ネットワーク(例えば、WLAN、セルラー、または同等物)、もしくは異種ネットワークのネットワークであってもよい。例えば、通信ネットワーク12は、音声、データ、ビデオ、メッセージング、ブロードキャスト、または同等物等のコンテンツを複数のユーザに提供する、複数のアクセスネットワークを含んでいてもよい。例えば、通信ネットワーク12は、符号分割多重アクセス(CDMA)、時分割多重アクセス(TDMA)、周波数分割多重アクセス(FDMA)、直交FDMA(OFDMA)、単一キャリアFDMA(SC−FDMA)、および同等物等の1つまたはそれを上回るチャネルアクセス方法を採用してもよい。さらに、通信ネットワーク12は、例えば、コアネットワーク、インターネット、センサネットワーク、工業制御ネットワーク、パーソナルエリアネットワーク、融合個人ネットワーク、衛星ネットワーク、ホームネットワーク、または企業ネットワーク等の他のネットワークを備えてもよい。
図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デバイスとして、限定ではないが、タブレット、スマートフォン、医療デバイス、温度および天候モニタ、コネクテッドカー、スマートメータ、ゲームコンソール、携帯情報端末、健康およびフィットネスモニタ、照明、サーモスタット、電気器具、車庫のドアおよび他のアクチュエータベースのデバイス、セキュリティデバイス、ならびにスマートコンセントが挙げられる。
図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の機能は、例えば、ウェブサーバとして、セルラーコアネットワークで、クラウドで等、種々の方法で実装されてもよい。
図示した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つまたはそれを上回るサーバ、コンピュータ、仮想マシン(例えば、クラウド/計算/記憶ファーム等)、または同等物によって実装されてもよい。
依然として、図22Bを参照すると、M2Mサービス層22および22’は、多様なアプリケーションおよびバーティカルが活用することができる、サービス配布能力のコアセットを提供する。これらのサービス能力は、M2Mアプリケーション20および20’がデバイスと相互作用し、データ収集、データ分析、デバイス管理、セキュリティ、課金、サービス/デバイス発見等の機能を果たすことを可能にする。本質的に、これらのサービス能力は、これらの機能性を実装する負担をアプリケーションから取り除き、したがって、アプリケーション開発を単純化し、市場に出す費用および時間を削減する。サービス層22および22’はまた、M2Mアプリケーション20および20’が、サービス層22および22’が提供するサービスと関連して、種々のネットワーク12および12’を通して通信することも可能にする。
M2Mアプリケーション20および20’は、限定ではないが、輸送、健康およびウェルネス、コネクテッドホーム、エネルギー管理、資産追跡、ならびにセキュリティおよび監視等、種々の産業におけるアプリケーションを含み得る。前述のように、デバイス、ゲートウェイ、および他のシステムのサーバを横断して起動するM2Mサービス層は、例えば、データ収集、デバイス管理、セキュリティ、課金、場所追跡/ジオフェンシング、デバイス/サービスの発見、および従来のシステムの統合等の機能をサポートし、サービスとしてのこれらの機能をM2Mアプリケーション20および20’に提供する。
概して、図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に図示される一般的アーキテクチャを有する、ネットワークノード(例えば、サーバ、コンピュータ、ゲートウェイ、デバイス、または同等物)上で起動されるソフトウェアの形態で実装されてもよい。
さらに、本明細書に説明される方法および機能性は、例えば、前述のネットワークおよびアプリケーション管理サービス等、サービスにアクセスするためにサービス指向アーキテクチャ(SOA)および/またはリソース指向アーキテクチャ(ROA)を使用する、M2Mネットワークの一部として実装されてもよい。
図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は、実施形態との整合を維持しながら、先述の要素の任意の副次的組み合わせを含み得ることを理解されたい。本ノードは、本明細書に説明されるリソースディレクトリ機能性を実装する、ノードであってもよい。
プロセッサ32は、汎用プロセッサ、特殊用途プロセッサ、従来のプロセッサ、デジタル信号プロセッサ(DSP)、複数のマイクロプロセッサ、DSPコアと関連する1つまたはそれを上回るマイクロプロセッサ、コントローラ、マイクロコントローラ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)回路、任意の他のタイプの集積回路(IC)、状態マシン、および同等物であってもよい。プロセッサ32は、信号符号化、データ処理、電力制御、入出力処理、および/またはノード30が無線環境で動作することを可能にする任意の他の機能性を果たしてもよい。プロセッサ32は、伝送/受信要素36に連結され得る、送受信機34に連結されてもよい。図22Cは、プロセッサ32および送受信機34を別個の構成要素として描写するが、プロセッサ32および送受信機34は、電子パッケージまたはチップにともに組み込まれ得ることが理解されるであろう。プロセッサ32は、アプリケーション層プログラム(例えば、ブラウザ)および/または無線アクセス層(RAN)プログラムならびに/もしくは通信を行ってもよい。プロセッサ32は、例えば、アクセス層および/またはアプリケーション層等で、認証、セキュリティキー一致、および/または暗号化動作等のセキュリティ動作を行ってもよい。
図22Cに示されるように、プロセッサ32は、その通信回路(例えば、送受信機34および伝送/受信要素36)に結合される。プロセッサ32は、ノード30に、それが接続されるネットワークを介して、他のノードと通信させるために、コンピュータ実行可能命令の実行を通して、通信回路を制御してもよい。特に、プロセッサ32は、本明細書(例えば、図7−21)および請求項に説明される伝送および受信ステップを行うために、通信回路を制御してもよい。図22Cは、プロセッサ32および送受信機34を別個の構成要素として描写するが、プロセッサ32および送受信機34は、電子パッケージまたはチップにともに組み込まれ得ることを理解されたい。
伝送/受信要素36は、M2Mサーバ、ゲートウェイ、デバイス、および同等物を含む、他のノードに信号を伝送する、または他のノードから信号を受信するように構成されてもよい。例えば、実施形態では、伝送/受信要素36は、RF信号を伝送および/または受信するように構成されるアンテナであってもよい。伝送/受信要素36は、WLAN、WPAN、セルラー、および同等物等の種々のネットワークおよびエアインターフェースをサポートしてもよい。実施形態では、伝送/受信要素36は、例えば、IR、UV、または可視光信号を伝送および/または受信するように構成されるエミッタ/検出器であってもよい。さらに別の実施形態では、伝送/受信要素36は、RFおよび光信号の両方を伝送および受信するように構成されてもよい。伝送/受信要素36は、無線または有線信号の任意の組み合わせを伝送および/または受信するように構成され得ることが理解されるであろう。
加えて、伝送/受信要素36は、単一の要素として図22Cで描写されているが、ノード30は、任意の数の伝送/受信要素36を含んでもよい。より具体的には、ノード30は、MIMO技術を採用してもよい。したがって、実施形態では、ノード30は、無線信号を伝送および受信するための2つまたはそれを上回る伝送/受信要素36(例えば、複数のアンテナ)を含んでもよい。
送受信機34は、伝送/受信要素36によって伝送される信号を変調するように、および伝送/受信要素36によって受信される信号を復調するように構成されてもよい。上記のように、ノード30は、マルチモード能力を有してもよい。したがって、送受信機34は、ノード30が、例えば、UTRAおよびIEEE802.11等の複数のRATを介して通信することを可能にするための複数の送受信機を含んでもよい。
プロセッサ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)等)、太陽電池、燃料電池、および同等物を含んでもよい。
プロセッサ32はまた、ノード30の現在の場所に関する場所情報(例えば、経度および緯度)を提供するように構成される、GPSチップセット50に連結されてもよい。ノード30は、実施形態との整合を維持しながら、任意の好適な場所判定方法を介して場所情報を獲得し得ることが理解されるであろう。
プロセッサ32はさらに、付加的な特徴、機能性、および/または有線もしくは無線接続を提供する、1つまたはそれを上回るソフトウェアおよび/またはハードウェアモジュールを含み得る、他の周辺機器52に連結されてもよい。例えば、周辺機器52は、加速度計、e−コンパス、衛星送受信機、センサ、デジタルカメラ(写真またはビデオ用)、ユニバーサルシリアルバス(USB)ポート、振動デバイス、テレビ送受信機、ハンズフリーヘッドセット、Bluetooth(登録商標)モジュール、周波数変調(FM)ラジオユニット、デジタル音楽プレーヤ、メディアプレーヤ、ビデオゲームプレーヤモジュール、インターネットブラウザ、および同等物を含んでもよい。
図22Dは、図22Aおよび22Bに図示されるもの等のM2Mネットワーク内のM2Mサーバ、ゲートウェイ、デバイス、または他のノードとして動作し得る、図7−21に図示されるクライアント、ピア、およびリソースディレクトリ等のネットワークの1つまたはそれを上回るノードを実装するためにもまた使用され得る、例示的コンピュータシステム90のブロック図である。コンピュータシステム90は、コンピュータまたはサーバを備えてもよく、主に、ソフトウェアの形態であり得るコンピュータ可読命令によって制御されてもよく、どこでも、またはどのような手段を用いても、そのようなソフトウェアが記憶もしくはアクセスされる。そのようなコンピュータ可読命令は、コンピュータシステム90を起動させるように、中央処理装置(CPU)91内で実行されてもよい。多くの既知のワークステーション、サーバ、および周辺コンピュータでは、中央処理装置91は、マイクロプロセッサと呼ばれる単一チップCPUによって実装される。他のマシンでは、中央処理装置91は、複数のプロセッサを備えてもよい。コプロセッサ81は、付加的な機能を果たすか、またはCPU91を支援する、主要CPU91とは明確に異なる、随意的なプロセッサである。CPU91および/またはコプロセッサ81は、セッション証明書の受信またはセッション証明書に基づく認証等、E2E M2Mサービス層セッションのための開示されるシステムおよび方法に関連するデータを受信、生成、および処理してもよい。
動作時、CPU91は、命令をフェッチ、復号、および実行し、コンピュータの主要データ転送パスであるシステムバス80を介して、情報を他のリソースへ、およびそこから転送する。そのようなシステムバスは、コンピュータシステム90内の構成要素を接続し、データ交換のための媒体を定義する。システムバス80は、典型的には、データを送信するためのデータライン、アドレスを送信するためのアドレスライン、ならびに割り込みを送信するため、およびシステムバスを動作するための制御ラインを含む。そのようなシステムバス80の実施例は、PCI(周辺構成要素相互接続)バスである。
システムバス80に連結されるメモリデバイスは、ランダムアクセスメモリ(RAM)82および読取専用メモリ(ROM)93を含む。そのようなメモリは、情報が記憶されて取り出されることを可能にする回路を含む。ROM93は、概して、容易に修正することができない、記憶されたデータを含有する。RAM82に記憶されたデータは、CPU91または他のハードウェアデバイスによって読み取られ、または変化されてもよい。RAM82および/またはROM93へのアクセスは、メモリコントローラ92によって制御されてもよい。メモリコントローラ92は、命令が実行されると、仮想アドレスを物理的アドレスに変換する、アドレス変換機能を提供してもよい。メモリコントローラ92はまた、システム内のプロセスを単離し、ユーザプロセスからシステムプロセスを単離する、メモリ保護機能を提供してもよい。したがって、第1のモードで作動するプログラムは、独自のプロセス仮想アドレス空間によってマップされるメモリのみにアクセスすることができ、プロセス間のメモリ共有が設定されていない限り、別のプロセスの仮想アドレス空間内のメモリにアクセスすることができない。
加えて、コンピュータシステム90は、CPU91からプリンタ94、キーボード84、マウス95、およびディスクドライブ85等の周辺機器に命令を伝達する責任がある、周辺機器コントローラ83を含有してもよい。
ディスプレイコントローラ96によって制御されるディスプレイ86は、コンピュータシステム90によって生成される視覚出力を表示するために使用される。そのような視覚出力は、テキスト、グラフィックス、動画グラフィックス、およびビデオを含んでもよい。ディスプレイ86は、CRTベースのビデオディスプレイ、LCDベースのフラットパネルディスプレイ、ガスプラズマベースのフラットパネルディスプレイ、またはタッチパネルを伴って実装されてもよい。ディスプレイコントローラ96は、ディスプレイ86に送信されるビデオ信号を生成するために必要とされる、電子構成要素を含む。
さらに、コンピュータシステム90は、例えば、図22Aおよび22Bのネットワーク12等の外部通信ネットワークにコンピュータシステム90を接続するために使用され得る、ネットワークアダプタ97等の通信回路を含有し、コンピューティングシステム90が、ネットワークの他のノードと通信することを可能にしてもよい。通信回路は、単独で、またはCPU91と組み合わせて、本明細書(例えば、図7−21)および請求項に説明される伝送および受信ステップを行うために使用されてもよい。
本明細書で説明される方法およびプロセスのうちのいずれかは、命令が、コンピュータ、サーバ、M2M端末デバイス、M2Mゲートウェイデバイス、または同等物等のマシンによって実行されたときに、本明細書で説明されるシステム、方法、およびプロセスを実行および/または実装する、コンピュータ可読記憶媒体上に記憶されたコンピュータ実行可能命令(すなわち、プログラムコード)の形態で具現化され得ることを理解されたい。具体的には、上記で説明されるステップ、動作、または機能のうちのいずれかは、そのようなコンピュータ実行可能命令の形態で実装されてもよい。コンピュータ可読記憶媒体は、情報の記憶のための任意の方法または技術で実装される、揮発性および不揮発性、可撤性および非可撤性媒体の両方を含むが、そのようなコンピュータ可読記憶媒体は、信号を含まない。コンピュータ可読記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)または他の光学ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶デバイス、あるいは所望の情報を記憶するために使用することができ、コンピュータによってアクセスすることができる任意の他の物理的媒体を含むが、それらに限定されない。
図で図示されるような本開示の主題の好ましい実施形態を説明する際に、明確にするために、特定の用語が採用される。しかしながら、請求された主題は、そのように選択された特定の用語に限定されることを目的としておらず、各特定の要素は、類似目的を達成するように同様に動作する、全ての技術的均等物を含むことを理解されたい。
以下は、前述の説明において表出し得る、サービスレベル技術に関連する頭字語のリストである。別様に規定されない限り、本明細書で使用される頭字語は、以下にリスト化される対応する用語を指す。
CoAP 制約アプリケーションプロトコル
CoRE 制約RESTful環境
DHT 分散ハッシュテーブル
DRD 分散リソースディレクトリ
EP エンドポイント
HTTP ハイパーテキスト転送プロトコル
IETF インターネット技術タスクフォース
IoT モノのインターネット
M2M マシンツーマシン
MAC 媒体アクセス制御
RD リソースディレクトリ
RE 参照支援機構
SA 記憶補助機構
URI 統一資源識別子
本明細書は、最良の様態を含む、本発明を開示するために、また、当業者が、任意のデバイスまたはシステムを作製して使用すること、および任意の組み込まれた方法を行うことを含む、本発明を実践することを可能にするために、実施例を使用する。本発明の特許性のある範囲は、請求項によって定義され、当業者に想起される他の実施例を含んでもよい。そのような他の実施例は、請求項の文字通りの言葉とは異ならない構造要素を有する場合に、または請求項の文字通りの言葉とのごくわずかな差異を伴う同等の構造要素を含む場合に、請求項の範囲内であることを目的としている。

Claims (20)

  1. プロセッサメモリ通信回路とを備えノードであって、前記ノードは、その通信回路を介して通信ネットワークに接続され、前記ノードは、前記ノードの前記メモリ内に記憶されコンピュータ実行可能命令をさらに備え、前記コンピュータ実行可能命令は、前記ノードの前記プロセッサによって実行されると
    エンドポイントから受信されたメッセージペイロード関連付けられた1つ以上のキーを判定することであって、前記メッセージペイロードは、リソースに関連付けられた登録要求を含む、ことと、
    前記1つ以上のキーをハッシュ関数に適用することにより、マッピング情報を生成することであって、前記マッピング情報は、ピアリソースディレクトリサーバの少なくとも1つの識別を含む、ことと、
    前記マッピング情報に基づいて、前記メッセージペイロードを1つ以上のピアリソースディレクトリサーバに伝送することと、
    少なくとも1つの応答を前記1つ以上のピアリソースディレクトリサーバから受信することであって、前記少なくとも1つの応答は、前記リソースが記憶されている前記1つ以上のピアリソースディレクトリサーバのそれぞれの場所を示す、ことと、
    前記受信された少なくとも1つの応答に基づいて、結果として生じる応答を前記エンドポイントに伝送することと
    前記ノードに行わせる、ノード。
  2. 前記メッセージペイロード関連付けられた前記1つ以上のキーは、少なくとも1つのパラメータと、前記少なくとも1つのパラメータ関連付けられた少なくとも1つの値含む、請求項1に記載のノード。
  3. 前記少なくとも1つのパラメータは、ドメイン、エンドポイント、グループ名、エンドポイントタイプ、リソースタイプ、リソース有効期間、またはインターフェースを示す、請求項2に記載のノード。
  4. 前記少なくとも1つのパラメータは、複数のパラメータであり、前記少なくとも1つの値は、複数の値であり、前記ハッシュ関数は、前記登録要求内の複数のパラメータおよび複数の値のそれぞれに適用される、請求項2に記載のノード。
  5. 前記メッセージペイロードが伝送され前記1つ以上のピアリソースディレクトリサーバは、それぞれ前記メッセージペイロードを記憶す複数のピアリソースディレクトリサーバであり、前記コンピュータ実行可能命令は
    前記メッセージペイロード内にどのくらい多くのパラメータが存在するかに基づいて、前記複数のピアリソースディレクトリサーバ内にどのくらい多くのピアリソースディレクトリサーバが存在するかを判定すること
    前記ノードにさらに行わせる、請求項4に記載のノード。
  6. 前記メッセージペイロードが伝送され前記1つ以上のピアリソースディレクトリサーバは、前記メッセージペイロードを記憶す選択された1つのピアリソースディレクトリサーバであり、前記コンピュータ実行可能命令は
    数のピアリソースディレクトリが、前記メッセージペイロードを記憶する前記選択された1つのピアリソースディレクトリへの参照を記憶するように前記選択された1つのピアリソースディレクトリへの参照を前記複数のピアリソースディレクトリサーバに伝送すること
    前記ノードにさらに行わせる、請求項4に記載のノード。
  7. 前記登録要求は、前記エンドポイントの名前およびそのリソース記述を含む、請求項1に記載のノード。
  8. 前記エンドポイントは、ウェブサーバ、マシンツーマシンデバイス、またはゲートウェイとして動作するように構成されている、請求項1に記載のノード。
  9. プロセッサメモリ通信回路とを備えノードであって、前記ノードは、その通信回路を介して通信ネットワークに接続され、前記ノードは、前記ノードの前記メモリ内に記憶されコンピュータ実行可能命令をさらに備え、前記コンピュータ実行可能命令は、前記ノードのプロセッサによって実行されると
    エンドポイントから受信されたメッセージペイロード関連付けられた1つ以上のキーを判定することであって、前記メッセージペイロードは、リソースに関連付けられたリソースルックアップ要求を含む、ことと、
    前記1つ以上のキーをハッシュ関数に適用することにより、マッピング情報を生成することであって、前記マッピング情報は、ピアリソースディレクトリサーバの少なくとも1つの識別を含む、ことと、
    前記マッピング情報に基づいて、前記メッセージペイロードを1つ以上のピアリソースディレクトリサーバに伝送することと、
    少なくとも1つの応答を前記1つ以上のピアリソースディレクトリサーバから受信することであって、前記少なくとも1つの応答は、前記1つ以上のピアリソースディレクトリサーバ上に記憶されている前記リソースのコンテンツを含む、ことと、
    前記受信された少なくとも1つの応答に基づいて、結果として生じる応答を前記エンドポイントに伝送することと
    前記ノードに行わせる、ノード。
  10. 前記メッセージペイロード関連付けられた前記1つ以上のキーは、1つ以上のパラメータを含む、請求項9に記載のノード。
  11. 前記1つ以上のパラメータは、ドメイン、エンドポイント、グループ名、エンドポイントタイプ、リソースタイプ、リソース有効期間、またはインターフェースを示す、請求項10に記載のノード。
  12. 前記リソースルックアップ要求は、ルックアップタイプと1つ以上のパラメータ含む、請求項9に記載のノード。
  13. 前記1つ以上のパラメータは、複数のパラメータであり、前記コンピュータ実行可能命令は
    前記複数のパラメータが、第1の論理連結語を使用して相互に接続される場合、前記メッセージペイロードを複数のピアリソースディレクトリサーバに伝送することであって、前記複数は、前記メッセージペイロード内にどのくらい多くのパラメータが存在するかに基づく、ことと、
    前記複数のパラメータが、第2の論理連結語を使用して相互に接続される場合、前記メッセージペイロードを1つのみのピアリソースディレクトリサーバに伝送することと
    前記ノードにさらに行わせる、請求項10に記載のノード。
  14. 前記メッセージペイロードが伝送され前記1つ以上のピアリソースディレクトリサーバは、前記リソースルックアップ要求を前記マッピング情報によって示される他のピアリソースディレクトリサーバに伝搬す選択された1つのピアリソースディレクトリサーバである、請求項10に記載のノード。
  15. 前記エンドポイントは、ウェブサーバ、マシンツーマシンデバイス、またはゲートウェイとして動作するように構成されている、請求項9に記載のノード。
  16. 方法であって、
    リソースディレクトリサーバが、エンドポイントから受信されたメッセージペイロード関連付けられた1つ以上のキーを判定することであって、前記メッセージペイロードは、リソースに関連付けられた登録要求またはリソースに関連付けられたリソースルックアップ要求のうちの少なくとも1つを含む、ことと、
    前記1つ以上のキーをハッシュ関数に適用することにより、マッピング情報を生成することであって、前記マッピング情報は、ピアリソースディレクトリサーバの少なくとも1つの識別を含む、ことと、
    前記マッピング情報に基づいて、前記メッセージペイロードを1つ以上のピアリソースディレクトリサーバに伝送することと、
    前記リソースディレクトリサーバにおいて、少なくとも1つの応答を前記1つ以上のピアリソースディレクトリサーバから受信することであって、前記少なくとも1つの応答は、前記リソースが記憶されている前記1つ以上のピアリソースディレクトリサーバのそれぞれの場所を示し、または前記1つ以上のピアリソースディレクトリサーバ上に記憶されているリソースのコンテンツを含む、ことと、
    前記受信された少なくとも1つの応答に基づいて、結果として生じる応答を前記エンドポイントに伝送することと、
    を含む、方法。
  17. 前記メッセージペイロード関連付けられた前記1つ以上のキーは、少なくとも1つのパラメータと、前記少なくとも1つのパラメータ関連付けられた少なくとも1つの値含む、請求項16に記載の方法。
  18. 前記少なくとも1つのパラメータは、ドメイン、エンドポイント、グループ名、エンドポイントタイプ、リソースタイプ、リソース有効期間、またはインターフェースを示す、請求項17に記載の方法。
  19. 前記登録要求は、前記エンドポイントの名前およびそのリソース記述を含む、請求項17に記載の方法。
  20. 前記リソースルックアップ要求は、ルックアップタイプと1つ以上のパラメータ含む、請求項17に記載の方法。
JP2016556292A 2014-03-11 2015-03-11 拡張分散リソースディレクトリ Expired - Fee Related JP6397044B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201461951141P 2014-03-11 2014-03-11
US61/951,141 2014-03-11
PCT/US2015/019942 WO2015138596A1 (en) 2014-03-11 2015-03-11 Enhanced distributed resource directory

Publications (2)

Publication Number Publication Date
JP2017517046A JP2017517046A (ja) 2017-06-22
JP6397044B2 true JP6397044B2 (ja) 2018-09-26

Family

ID=52991939

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016556292A Expired - Fee Related JP6397044B2 (ja) 2014-03-11 2015-03-11 拡張分散リソースディレクトリ

Country Status (6)

Country Link
US (1) US20150264134A1 (ja)
EP (1) EP3117587B1 (ja)
JP (1) JP6397044B2 (ja)
KR (1) KR101972932B1 (ja)
CN (1) CN106134159B (ja)
WO (1) WO2015138596A1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016048208A1 (en) * 2014-09-25 2016-03-31 Telefonaktiebolaget L M Ericsson (Publ) Device mobility with coap
US9661080B2 (en) 2014-10-21 2017-05-23 Helium Systems, Inc. Systems and methods for smart device networking with an endpoint and a bridge
CN108886531B (zh) * 2015-03-02 2021-04-20 康维达无线有限责任公司 使用服务层能力进行网络和应用管理
US10069938B1 (en) * 2015-03-30 2018-09-04 EMC IP Holding Company LLC Returning identifiers in default query responses
US20180302290A1 (en) * 2015-10-16 2018-10-18 Convida Wireless, Llc Coap enhancements to enable an autonomic control plane
US20170126542A1 (en) * 2015-10-28 2017-05-04 Futurewei Technologies, Inc. ICN Based Distributed Resource Directory for IoT Resource Discovery and Routing
KR101792399B1 (ko) 2016-03-21 2017-11-01 전자부품연구원 IoT/M2M 리소스 검색 방법 및 시스템
CN107872486B (zh) * 2016-09-28 2020-06-02 华为技术有限公司 通信方法和装置
US10664278B2 (en) * 2017-08-17 2020-05-26 Huawei Technologies Co., Ltd. Method and apparatus for hardware acceleration in heterogeneous distributed computing
EP3698561B1 (en) * 2017-10-20 2024-01-17 Telefonaktiebolaget LM Ericsson (PUBL) Providing and obtaining access to iot resources
WO2019107594A1 (ko) * 2017-11-29 2019-06-06 전자부품연구원 IoT 환경에서 디바이스 데이터 및 서버 리소스 매핑 방법 및 이를 적용한 게이트웨이
US10499189B2 (en) 2017-12-14 2019-12-03 Cisco Technology, Inc. Communication of data relating to endpoint devices
US11381947B2 (en) * 2018-04-06 2022-07-05 Telefonaktiebolaget Lm Ericsson (Publ) Thing description to resource directory mapping
CN109446439B (zh) * 2018-09-30 2022-09-06 青岛海尔科技有限公司 一种资源目录的选择方法、装置、系统及存储介质
WO2020093318A1 (zh) * 2018-11-08 2020-05-14 Oppo广东移动通信有限公司 资源查询处理方法、装置、计算机设备和存储介质
CN115334146A (zh) * 2018-12-11 2022-11-11 Oppo广东移动通信有限公司 物联网的资源发布方法、装置、设备及存储介质
US11363104B2 (en) 2018-12-18 2022-06-14 Hewlett Packard Enterprise Development Lp Subscription based directory services for IOT devices
GB2582737B (en) * 2019-02-01 2021-07-14 Arm Ip Ltd Device registration mechanism

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6898633B1 (en) * 2000-10-04 2005-05-24 Microsoft Corporation Selecting a server to service client requests
JP2005151244A (ja) * 2003-11-17 2005-06-09 Ntt Docomo Inc コンテンツ格納支援システム
US8880664B1 (en) * 2004-07-26 2014-11-04 Cisco Technology, Inc. Method and apparatus for generating a network profile and device profile
US7774380B2 (en) * 2007-12-21 2010-08-10 International Business Machines Corporation Technique for finding rest resources using an n-ary tree structure navigated using a collision free progressive hash
US20100235469A1 (en) * 2009-03-11 2010-09-16 Morris Robert P Method And System For Providing Access To Resources Related To A Locatable Resource
EP2325762A1 (en) * 2009-10-27 2011-05-25 Exalead Method and system for processing information of a stream of information
EP2564306A4 (en) * 2010-04-27 2017-04-26 Cornell University System and methods for mapping and searching objects in multidimensional space
JP5684671B2 (ja) * 2011-08-05 2015-03-18 日本電信電話株式会社 条件検索データ保存方法、条件検索データベースクラスタシステム、ディスパッチャ、およびプログラム
FI125252B (en) * 2011-12-07 2015-08-14 Arm Finland Oy Procedure, device and system for managing web services
WO2013123445A1 (en) * 2012-02-17 2013-08-22 Interdigital Patent Holdings, Inc. Smart internet of things services
US8635373B1 (en) * 2012-09-22 2014-01-21 Nest Labs, Inc. Subscription-Notification mechanisms for synchronization of distributed states

Also Published As

Publication number Publication date
EP3117587B1 (en) 2020-11-11
WO2015138596A1 (en) 2015-09-17
CN106134159A (zh) 2016-11-16
US20150264134A1 (en) 2015-09-17
JP2017517046A (ja) 2017-06-22
KR101972932B1 (ko) 2019-04-29
KR20160130483A (ko) 2016-11-11
EP3117587A1 (en) 2017-01-18
CN106134159B (zh) 2019-09-20

Similar Documents

Publication Publication Date Title
JP6397044B2 (ja) 拡張分散リソースディレクトリ
US10404601B2 (en) Load balancing in the internet of things
US11991255B2 (en) Interworking service for the restful internet of things
JP6464298B2 (ja) エンドツーエンドm2mサービス層セッション
US10708376B2 (en) Message bus service directory
KR101877188B1 (ko) Mqtt 프로토콜을 이용한 서비스 층 상호연동
US10979879B2 (en) Mechanisms for resource-directory to resource-directory communications
JP2018010701A (ja) 仮想化ブローカおよびコンテキスト情報を使用するリソースの仮想化のための方法および装置
US10798779B2 (en) Enhanced CoAP group communications with selective responses
WO2018132557A1 (en) Dynamic protocol switching
Flathagen et al. Interoperable service discovery: experiments at Combined Endeavor 2009

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171106

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180404

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180703

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180802

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180830

R150 Certificate of patent or registration of utility model

Ref document number: 6397044

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees