マシン対マシン通信(M2M)において、2つのデバイス間の通信は自動的にトリガされる。すなわち、人間ユーザが積極的に参加することはない。例えばM2M通信は、時間的境界において開始する場合がある。例えば週1回、または特定イベント発生時(例:雨の後にマシンが記録した降雨測定)である。M2M通信に参加するデバイスは、長期間(例:数時間から数か月)パワーダウンまたはスリープモード(他デバイスと通信しない)になる場合がある。M2Mデバイスによる長時間のスリープサイクルの結果、通信エンドポイントにおけるリソースなどの動作パラメータは、2つのデバイス起動サイクル間で変化する場合がある。さらにM2Mデバイスはバッテリ動作する場合があり、バッテリ寿命を節約してこれらデバイスがバッテリ交換しなくて済むようにすることは有用である。
M2Mデバイスは、特定のリソースを搭載する場合がある。リソースの例としては、メモリ、演算パワー、センサ、別ネットワークへの接続、エネルギー貯蔵能力、ディスプレイリソース、などが挙げられる。各リソースは、当該リソースを記述するために用いる、対応する属性セットを有する。通信メッセージの観点において、リソースはM2Mデバイスを記述するために用いるデータ構造を表す。データ構造の各要素は、属性とみなすことができる。M2Mデバイスにとってローカルで利用可能なリソースは、経時変化する場合がある。例えばM2Mデバイスがスリープモードであって他のM2Mデバイスと通信していない間である。例えばオフライン中にストレージ機能をビデオ監視カメラに対して追加することができる。他例として、on/offタイプの光バルブは、薄暗くなるタイプの光バルブと交換することにより、証明を調整するリソースを提供することができる。同様にM2Mデバイスからリソースを剥奪または削除することができる。
他のM2Mデバイスに対して利用可能リソースの最新スナップショットを提供することは、M2Mデバイスによっては厄介なことである場合がある。リソース管理はバッテリパワーを消費するからである(例:計算および/または通信のため)。さらにM2Mデバイスのなかには、人間が到達することが困難なものがあり、あるいはローカルユーザインターフェースを備えておらず遠隔管理するものがある。アプリケーションサーバは、M2Mデバイス上で利用可能なリソースの属性を知ることを望む場合がある。現在通信していないM2Mデバイスにとって、この情報は以下によって収集することができる:(1)アプリケーションサーバがM2Mデバイスを起動してその属性を照会する、または(2)ネットワークにおいて他デバイス(例:ゲートウェイデバイス)が保持しているM2Mデバイスの属性のシャドーコピーまたはクローンコピーを読み取る。このデバイスは通信可能なものである。
後者の方法は、M2M通信に対してある種の利点を提供する。アプリケーションサーバからのクエリは、複数のサービスプロバイダの制御下におくことができ、個々のM2Mデバイスを起動する必要はなく、したがってバッテリパワーとネットワークの通信帯域幅を節約できるからである。個々のM2Mデバイスの属性の総数は、数百エントリに達する場合があり、したがって数キロバイトまたは数メガバイト(例:8Kbyteから4Mbyte)の帯域幅と、全属性のクローンコピーまたはシャドーコピーを保存する記憶領域とを使用する。アプリケーションサーバは、M2Mデバイスの全属性値を必要としない場合もある。したがって、M2Mデバイスの属性をそのシャドーコピーと同期することは、通信時間、パワー、帯域幅を不必要に消費する場合がある。
現在のM2M通信システムおよびプロトコルは、M2M通信システムにおいて生じる動作状況に対して適切に対処することができていない。本文書が開示する技術を用いて、M2M通信システムにおけるリソースの属性の効率的な生成、広告、および削除を提供することができる。これは複数のサービスプロバイダにとって有用である。
M2Mエコシステムをエンドトゥエンド(E2E)の観点から見ると、M2Mアプリケーションサーバ(AS)がホストするM2Mアプリケーションと、M2Mデバイス/ゲートウェイとが存在する。このE2Eビューにおいて、M2Mサービスプラットフォームは、データ管理、デバイス管理、サービス有効化機能、などを提供する。基盤送信ネットワークは、M2Mデバイス/ゲートウェイがホストするM2Mアプリケーションとアプリケーションサーバとの間のデータフローの送受信サービスを提供する。
以下の定義セットは、oneM2Mが開発している仕様からのものである。
アプリケーション機能(AF):エンドトゥエンドM2Mソリューションのアプリケーションロジックを提供する。アプリケーション機能の例は、艦隊トラッキングアプリケーション、遠隔血糖監視アプリケーション、遠隔パワー計測制御アプリケーションである。
アプリケーションレイヤ:M2Mアプリケーションと関連するビジネスおよび動作ロジックを備える。
共通サービスエンティティ(CSE):共通サービスエンティティは、共通サービス機能の集合である。M2Mノードにおける共通サービスエンティティは、当該M2MノードにおけるM2Mアプリケーションが使用するサービスセット、または他のM2Mノードがアクセスするサービスを提供する。共通サービスエンティティは、基盤ネットワーク機能を利用し、相互通信してサービスを充足することができる。
共通サービス機能(CSF):M2MノードがM2Mシステムにおける他のエンティティに対して提供するサービス/機能のセットである。このサービス/機能は、oneM2M規格に基づき、M2Mシステムにおける参照ポイントXおよびYを通じて、他の共通サービス機能(CSF)に対して公開される。共通サービス機能は、参照ポイントZを使用して基盤ネットワークサービスにアクセスする。CSFの例は以下の通りである:データ管理&リポジトリ、デバイス管理、M2Mセッション管理、など。
共通サービスレイヤ:M2Mアプリケーションを有効化するM2Mサービス機能を備える(例えば管理、ディスカバリ、およびポリシ監視を通じて)。
ネットワークサービスレイヤ:送信、接続、およびサービス機能を提供する。
M2Mアプリケーション:サービスロジックを実施し、oneM2M規格のオープンインターフェースセットを介してアクセスできるM2M共通サービスを使用する、アプリケーションである。
M2Mアプリケーションサービスプロバイダ:ユーザに対してM2Mアプリケーションサービスを提供するエンティティ(例:企業)である。
M2Mデバイス:検出および/または起動サービスを提供する機器である。M2Mデバイスは、1以上のM2Mアプリケーションをホストし、1以上のCSEを収容する。M2Mデバイスは、検出&起動機器と同じ場所に配置できるが、必ずしもそうしなくともよい。
M2Mゲートウェイ:1以上のCSEを収容し、M2Mアプリケーションを収容する場合もある機器である。M2Mゲートウェイは、M2Mサービスインフラおよび1以上のM2Mデバイスと通信する。
M2Mノード:CSEおよび/またはM2Mアプリケーションを備え、M2Mデバイス、M2Mゲートウェイ、M2MサービスインフラなどのM2M物理エンティティを表す、論理エンティティである。
M2Mサービスインフラ:M2Mサービスプロバイダのデータ管理と協調機能を提供し、M2Mデバイスおよび/またはM2Mゲートウェイと通信する機器である。M2Mサービスインフラは、1以上のCSEを収容する。
M2Mサービスプロバイダ:M2Mアプリケーションサービスプロバイダに対してまたはユーザに対してM2Mサービスを提供するエンティティ(例:企業)である。
基盤ネットワークサービス機能(NSF):基盤ネットワークサービス機能は、CSEに対してM2Mノード外のエンティティからのサービスを提供する。このサービスの例は、デバイス管理、位置サービス、デバイス到達可能性状態、デバイストリガリング、などである。
検出および起動(S&A)機器:1以上のM2Mアプリケーションサービスと通信することにより物理環境の検出および/または有効化機能を提供する機器である。検出および起動機器は、M2Mシステムと通信するが、M2Mアプリケーションをホストしない。S&A機器は、M2Mデバイスと同じ位置に配置できるが、必ずしもそうでなくともよい。
X参照ポイント
M2MアプリケーションとCSEとの間の参照ポイントである。X参照ポイントにより、M2MアプリケーションはCSEが提供するサービスを使用することができ、CSEはM2Mアプリケーションと通信することができる。
Y参照ポイント
2つのCSE間の参照ポイントである。Y参照ポイントにより、CSEは他のCSEのサービスを使用して、必要な機能を充足することができる。
Z参照ポイント
CSEと基盤ネットワークとの間の参照ポイントである。Z参照ポイントにより、CSEは基盤ネットワークが提供するサービス(送信および接続サービスを除く)を用いて、必要な機能を充足することができる。
M2MサービスのE2Eビューによれば、M2Mアプリケーションサーバ、M2Mデバイス/ゲートウェイ、M2Mサービスプラットフォーム、および送信ネットワークは、E2E M2Mサービスフレームワークにおける別のエンティティとみなすことができる。これらエンティティそれぞれは、異なるビジネスエンティティを表しているとみなすこともできる。例えばM2Mアプリケーションサービスプロバイダは、M2Mアプリケーションサービスをエンドユーザに対して提供するビジネスエンティティ(例:企業)である。M2Mサービスプロバイダ(SP)は、M2Mアプリケーションサービスプロバイダが使用してM2Mデバイス/ゲートウェイからのサービスを実現するM2Mサービスプラットフォームを提供する他のビジネスエンティティ(例:企業)である。これは検出および起動(S&A)機器と統合することができる。基盤ネットワークサービスプロバイダは、有線および/無線技術に基づく基盤送信ネットワークを提供する。例えばIEEE、IETF、3GPP、3GPP2、BBFなどが規定するものである。
M2Mサービスフレームワーク内において、M2Mデバイス/ゲートウェイは、異なるM2Mサービスプロバイダ(SP)固有のアプリケーションをホストすることができる。例えば、エネルギー管理、ホームセキュリティ、健康監視などのサービスをサポートするS&A機器を有するスマートホームの場合を考える。これらサービス(エネルギー管理、ホームセキュリティ、健康監視など)は、異なるM2Mサービスプロバイダによって提供される。これら全てのサービスは、単一のホームゲートウェイ上でスマートホーム内においてホストされる。これは、異なるサービスについてS&A機器を用いることによる。このサービスシナリオにおいて、ホームゲートウェイは通常、家屋所有者が所有しており、S&A機器はサービス固有である(S&A機器を誰が所有しているかはこの文書の主題ではない)。例えばエネルギー管理サービスと健康監視サービスのためのS&A機器は、提供されるサービス固有のものであり、それぞれのM2Mサービスプロバイダが管理する必要がある(この場合はエネルギー管理サービスプロバイダと健康監視サービスプロバイダ)。同様にM2Mサービスプロバイダは、他のM2Mサービスプロバイダから独立したホームゲートウェイ上のそれぞれの動作環境セットを管理したい場合がある。例えばエネルギー管理サービスプロバイダは、ホームゲートウェイにインストールされているエネルギー監視ソフトウェア/ファームウェアを更新したい場合がある。ただしこの更新は、健康監視サービスプロバイダが提供するサービスに対して影響を与えるべきではない。このような様々なサービスセットを提供していると、ホームゲートウェイは、異なるM2Mサービスプロバイダが提供するサービスを分離するセキュア環境を提供する必要があることになりがちである。
図1は、無線通信ネットワークまたはシステムの例を示す。この無線通信ネットワークは、1以上のベースステーション(BS)105と107、1以上の無線デバイス110を含む。ベースステーション105と107は、1以上の無線デバイス110に対して、フォワードリンク(FL)上でシグナル(ダウンリンク(DL)シグナルとして知られている)を送信することができる。無線デバイス110は、1以上のベースステーション105と107に対して、リバースリンク(RL)上でシグナル(アップリンク(UL)シグナルとして知られている)を送信することができる。無線通信システムは、1以上のネットワーク125を備え、1以上のベースステーション105と107を制御することができる。1以上のベースステーションは、無線アクセスネットワークを形成する。ベースステーションは、単独でまたは他のベースステーションとの組み合わせにより無線デバイスに無線アクセスを提供するという性質上、アクセスポイント(AP)、アクセスネットワーク(AN)、またはeNodeBと呼ばれる場合がある。本技術とシステムを実装することができる無線通信システムの例としては、CDMA2000 1xなどのCode division Multiple Access(CDMA)、High Rate Packet Data(HRPD)、Long−Term Evolution(LTE)、 Universal Terrestrial Radio Access Network(UTRAN)、Worldwide Interoperability for Microwave Access(WiMAX)などに基づく無線通信システムが挙げられる。
図2は、無線デバイス、ベースステーション、その他無線通信モジュールを実装する無線トランシーバステーションの例を示す。無線ステーションの例として、図1のベースステーションや無線デバイスが挙げられる。ベースステーションや無線デバイスなどの無線ステーション205は、プロセッサ電子部品210を備える。プロセッサ電子部品210は、例えば本文書が提示する技術のうち1以上の方法を実装するマイクロプロセッサである。無線ステーション205は、トランシーバ電子部品215を備え、例えば1以上のアンテナ220などの1以上の通信インターフェースを介して無線シグナルを送受信することができる。無線ステーション205は、データを送受信するためのその他通信インターフェースを備えることもできる。実装例において無線ステーション205は、1以上の有線通信インターフェースを備え、有線ネットワークと通信することができる。無線ステーション205は、データおよび/または命令などの情報を格納するように構成された1以上のメモリ225を備える。実装例においてプロセッサ電子部品210は、トランシーバ電子部品215とメモリ225のうち少なくとも一部を備えることができる。
実装例において無線ステーション205は、CDMAまたはGSM(登録商標)ベース無線インターフェースに基づき相互通信することができる。実装例において無線ステーション205は、直交周波数分割多重(OFDM)インターフェースに基づき相互通信することができる。このインターフェースは、例えば直交周波数分割多重アクセス(OFDMA)インターフェースを含む。実装例において無線ステーション205は、1以上の無線技術を用いて通信することができる。例えばCDMA2000 1x、HRPD、WiMAX、GSM、LTE、Universal Mobile Telecommunications System(UMTS)である。
実装例において無線ステーション205は、例えば802.11(a/b/g/n)インターフェースなどのローカルエリアネットワーク接続を用いて構成することができる。このようなインターフェースを利用することにより、ローカルエリア接続を介してインターネットに対して無線ステーション205を接続することができる。例えばユーザは、ケーブルモデムネットワークやDSLネットワークなどの固定ブロードバンドネットワーク経由で無線ローカルエリアネットワーク接続(例えばホームWi−Fiアクセス)を通じてサービスに接続することにより、自身の装置(UE)を介してサービスにアクセスすることができる。上記無線ステーション205を用いて、本文書が開示する技術を実装することができる。同様に、アクセスネットワーク125(例:コアまたはバックボーンネットワークまたはこれに接続されたアプリケーションサーバ)と接続された他のエンティティまたはモジュールは、本技術を実装することができる。
oneM2Mシステムに対する配置の第1実施形態
本文書が記載する技術は、oneM2M規格に準拠したデバイスと共同するように配置された実装において実施することができる。その現行バージョンを1例として以下に説明する。
本文書において以下の略語を用いる。
AND:アプリケーション専用ノード
ADN−AE:アプリケーション専用ノード上のAE
AE:アプリケーションエンティティ
App:アプリケーション
ASN:アプリケーションサービスノード
ASE−AE:アプリケーションサービスノードにおいてCSEとともに登録されたアプリケーションエンティティ
ASN−CSE:アプリケーションサービスノード上のCSE
BBF:ブロードバンドフォーラム
CSE:共通サービスエンティティ
CSF:共通サービス機能
EF:イネーブラ機能
IEEE:Institute of Electrical and Electronics Engineers
IETF:Internet Engineering Task Force
IN:インフラノード
IN−AE:インフラノードにおいてCSEとともに登録されたアプリケーションエンティティ
IN−CSE:インフラノード上のCSE
JNI:Java(登録商標) Native Interface
LTE:Long Term Evolution
MAC:Medium Access Control
M2M:マシンツーマシン
MN:ミドルノード
MN−CSE:ミドルノード上のCSE
NSE:ネットワークサービスエンティティ
SDO:規格開発団体
SP:サービスプロバイダ
UNet:基盤ネットワーク(M2Mデバイスが存在するネットワーク)
マシンツーマシン(M2M)通信において、2つのデバイス(例えばアプリケーションサーバとM2Mデバイス)は、人間のユーザが明示的に通信を開始することなく、互いに通信することができる。M2M通信において、通信が発生する2つのエンドポイントは、異なるネットワーク上に存在する場合がある。一般的なアプリケーションシナリオにおいて、1つのエンドポイントはある期間オフラインになるセンサまたはユーティリティボックスであり、他のエンドポイントはユーティリティ請求サーバやM2Mサーバなどのような管理ネットワーク上に配置されるアプリケーションサーバである。これら2つのエンドポイント間を行き交うデータパケットは、様々なルーティングオプションによってルーティングすることができる。例えば1つのエンドポイントは、ライセンスされたスペクトル上で(例えばLong Term Evolution)またはライセンスされていないスペクトル上で(例えばWi−Fi)、通信することができる。1つのエンドポイントがある期間オフラインになると(例えば数日あるいは数週間)、最後の通信セッションの間においてパケットがそのエンドポイントへルーティングされた方法は、パケットを現在の通信セッションにおいてルーティングすることができる方法とは、必ずしも一致しない。さらに様々なルーティングオプションを用いると、様々なコストが生じる(例えば帯域幅チャージや通信中のパワー散逸)。
電力その他リソースを節約するため、M2Mデバイスやこれらデバイス上で動作するアプリケーションエンティティのなかには、時間経過にともなって“オフライン”になるものがある。アプリケーションレイヤ通信を再確立するため、これらM2Mエンティティを通信の前に起動する必要がある。トリガリングを実施する態様や起動されるモジュールもしくはエンティティは、個々のM2Mデバイスの設定や性能に依拠する。
oneM2M、ETSI TC M2M、TIA TR−50などの団体(M2M SDO)が開発しているサービスレイヤ仕様は、広範な市場(垂直)組織によるM2Mソリューションの効率的な配置をサポートする必要がある。サービスレイヤにフォーカスすると、これら組織は送信ネットワークから独立してエンドツーエンドサービスを把握している。ただし、異なるタイプの送信ネットワークとインターフェースをとるため、サービスレイヤ仕様が確実に効率的に使われるようにする必要がある。送信ネットワークの例としては、3GPP、3GPP2、IEEE、IETF、BBFが規定する無線および有線ネットワークが挙げられるが、これに限らない。
サービスレイヤ仕様において、現在、共通サービスリソースを保持するエンティティに関連付けられた特定のM2Mデバイスをサービスリクエストが識別してM2Mリクエストを充足する手段はない。さらに、スリープ中のM2Mデバイスをトリガリング起動してM2M通信リクエストを充足する必要がある場合、リクエストをルーティングすべきトリガリングデバイスを現行システムが特定する方法は、限られている。本文書が提示する技術は、これらおよびその他課題を解決する。
図3は、oneM2Mシステムがサポートする構成300の例を示す。図3は、oneM2Mが開発している機能アーキテクチャ仕様の抜粋である。
この例300において、ADN(ADN−AE)上のアプリケーションエンティティ(AE)は、IN−CSEに登録する。同様に非ノードAEも、IN−CSEに登録する。ADN−AEは、MN−CSEにも登録する。これら登録は、リモートエンティティ/ノードにおけるAEとCSEとの間の登録である。
CSEは、1以上のCSFのインスタンスである。CSEは、M2Mアプリケーションが使用し共有することができるCSFのサブセットを提供する。CSEは、UNet機能を利用することができ、他のCSEと通信してサービスを充足することができる。CSEは、M2M環境において共通の“サービス機能”セットを備える。このサービス機能は、oneM2Mが規定するMca参照ポイントやMcc参照ポイントなどの参照ポイント(図3参照)を介して、他のエンティティに対して公開される。Mcc参照ポイントは、CSE間の通信フローを定義する。参照ポイントMcnは、基盤ネットワークサービスエンティティにアクセスするために用いられる。CSEが提供するサービス機能の例は以下である:データ管理、デバイス管理、M2Mサブスクリプション管理、位置サービス、など。CSEが提供するこれら“サブ機能”は、論理的に共通サービス機能(CSF)として把握することができる。共通サービスエンティティ(CSE)内部において、CSFのうちいくつかは固定であり、その他はオプションである。CSF内部において、サブ機能のうちいくつかは固定またはオプションである(例えば“デバイス管理”CSF内部において、“アプリケーションソフトウェアインストール”、“ファームウェアアップデート”、“ログ”、“監視”などのサブ機能のうちいくつかは、固定またはオプションである)。
CSFは、M2M環境において共通のサービス機能セットであり、oneM2Mなどの相互仕様によって規定される。
図3において、以下の略語を用いる:
非ノードAE:このエンティティは、IN−AEがアプリケーションサービスプロバイダによってホストされていることを示す。
ノード:少なくとも1つの共通サービスエンティティ(CSE)および/またはアプリケーションエンティティ(AE)を保持する機能エンティティ。ノードは、例えばM2Mデバイス、ゲートウェイ、サーバ設備などの物理装置内に保持することができる。異なるノード上のCSEは一般に同一ではなく、当該ノードのCSEがサポートするサービスに依拠する。実施形態において、2つのタイプのノードが定義される。1つのノードタイプは、少なくとも1つの共通サービスエンティティおよび/または1以上のoneM2Mアプリケーションエンティティを保持する機能エンティティである。このノードをCSE機能ノードと呼ぶ。もう1つのノードタイプは、1以上のアプリケーションエンティティを保持し共通サービスエンティティを保持しない機能エンティティである。このノードを非CSE機能ノードと呼ぶ。oneM2Mアーキテクチャにおいて、CSE機能oneM2Mノードは、物理オブジェクト内に保持することができる。例えばM2Mデバイス、ゲートウェイ、サーバ設備である。非CSE機能oneM2Mノードは、例えばセンサ、アクチュエータなどの物理オブジェクト内に保持することができる。CSE機能ノードと非CSE機能ノードは、Mca参照ポイントを介して通信する。
Mcc’参照ポイントは、可能な限りMcc参照ポイントと同様のものであることを意図している。ただしM2M間サービスプロバイダ通信の性質により、いくつかの違いが存在する。
構成200において、様々なタイプのノードが存在し得る。ノードは実際の物理オブジェクトにマッピングされる場合があるが、必ずしも単一の実際の物理オブジェクトに対してマッピングされる必要はない。以下のノードが存在する:
アプリケーションサービスノード(ASN):アプリケーションサービスノードは、1つの共通サービスエンティティと少なくとも1つのアプリケーションエンティティを保持するノードである。アプリケーションサービスノードは、Mcc参照ポイントを介して、1つのミドルノードまたは1つのインフラノードと通信することができる。物理マッピングの例としては、アプリケーションサービスノードがM2Mデバイス上に配置される場合が挙げられる。
アプリケーション専用ノード(ADN):アプリケーション専用ノードは、少なくとも1つのアプリケーションエンティティを保持し、共通サービスエンティティを保持しない。アプリケーション専用ノードは、Mca参照ポイントを通じてミドルノードまたはインフラノードと通信する。物理マッピングの例としては、アプリケーション専用ノードが制約M2Mデバイス上に配置される場合が挙げられる。
ミドルノード(MN):ミドルノードは、1つの共通サービスエンティティとゼロ以上のアプリケーションエンティティを保持するノードである。ミドルノードは、Mccを介してINまたは他のMNと通信し、さらにMccを介してIN/MN/ASNの少なくともいずれかと通信し、またはMcaを介してADNと通信する。物理マッピングの例としては、ミドルノードがM2Mゲートウェイ上に配置される場合が挙げられる。
インフラノード(IN):インフラノードは、共通サービスエンティティとゼロ以上のアプリケーションエンティティを保持するノードである。インフラノードは、Mcc参照ポイントを介して1以上のミドルノードと通信し、および/または1以上のアプリケーションサービスノードと通信する。インフラノードは、Mca参照ポイントを介して1以上のアプリケーション専用ノードと通信する。物理マッピングの例としては、インフラノードがM2Mサーバ設備上に配置される場合が挙げられる。
M2M外部ID(M2M−Ext−ID)
M2M−Ext−IDは、CSE−IDによって識別されるCSE向けのサービスが基盤ネットワークからリクエストされたとき、M2M SPによって用いられる。
M2M外部IDにより、基盤ネットワークはサービスリクエストについてCSE−IDと関連付けられたM2Mデバイスを識別することができる。その意味において、基盤ネットワークはM2M−Ext−IDをターゲットM2Mデバイスに割り当てられたUNet固有IDにマッピングする。M2M SPは、CSE−ID、M2M−Ext−ID、およびUNet IDの間の対応関係を維持することができる。
様々な実施形態において、CSE−IDとM2M−Ext−IDとの間の事前準備した対応関係と動的対応関係をともに実装することができる。
各CSE−IDについて、特定の基盤ネットワークIDまたはUNetwork−IDについてM2M−Ext−IDが1つのみ存在すべきである。したがって、複数の基盤ネットワークと相互作用するM2M SPは、同一のCSE−IDに対応付けられた異なるM2M−Ext−IDを基盤ネットワークごとに有し、基盤ネットワークに対して発するサービスリクエストに対して適切なM2M−Ext−IDを選択する。
一般に、M2M−Ext−IDとM2MデバイスのUNetによるマッピングは、UNet固有のものである。
構成例において、UNetプロバイダとM2Mサービスプロバイダは、CSE−IDによって識別される各CSEに対してM2M−Ext−IDを割り当てるに際して、協調することができる。同時にUNetプロバイダは、CSEをホストするM2Mデバイスに対して割り当てられた、M2M−Ext−IDとUNet固有IDとの間の対応関係を維持する。
事前準備M2M−Ext−IDについて、対応付けられたCSE−IDとM2M−Ext−IDは、インフラノードにおいて準備することができる。M2MデバイスにおけるCSEは、割り当てられたM2M−Ext−IDを知っておく必要はない。動的M2M−Ext−IDについて、基盤ネットワーク固有のM2M−Ext−IDは、フィールドドメイン内の各M2Mデバイスにおいて準備することができる。このM2M−Ext−IDは、CSE登録プロセスにおいてIN−CSEに対して搬送される。
トリガ受信者ID(Trigger−Recipient−ID)
Trigger−Recipient−IDは、UNetからデバイストリガリングサービスがリクエストされたとき、実行環境上のトリガをルーティングすべきASN/MN−CSEインスタンスを識別するために用いられる。例えば3GPPデバイストリガリングを用いる場合、Trigger−Recipient−IDはApplication−Port−Identifierにマッピングされる。例えば3GPP 23.682規格で規定されているものである。
事前準備M2M−Ext−IDについて、Trigger−Recipient−IDは、M2M−Ext−IDおよび関連するCSE−IDとともにインフラノードにおいて準備される。動的M2M−Ext−IDについて、基盤ネットワーク固有のTrigger−Recipient−IDは、フィールドドメイン内の各M2Mデバイスにおいて準備される。Trigger−Recipient−IDは、CSE登録プロセスにおいてIN−CSEに対して搬送される。
表1は、M2M IDとその使用属性を例示するリストである。具体的には、表1にリストするように、外部IDはUNetプロバイダとM2M SPとの間で連結して割り当てられ、UNetサービスを利用することを望むCSEに属するM2Mノードに対して割り当てられ、2つの準備モードを有する。すなわち事前準備モードと動的モードであり、外部IDは対応するCSEの登録プロセスにおいて搬送される。
リソースタイプCSEBase
<CSEBase>リソースを用いて、CSEを表すことができる。この<CSEBase>リソースは、CSE上の全てのリソースのルートである。
図4Aは、CSEBaseリソースに含まれる属性を例示するリストを示す。
<CSEBase>リソースは、表2に示す子リソースを含む。
<CSEBase>リソースは、表3に示す属性を含む。
リソースタイプremoteCSE
<remoteCSE>リソースは、登録CSEに登録されたリモートCSEを表す。<remoteCSE>リソースは、<CSEBase>の下に直接配置される。反対に登録された各CSEは、登録CSEの<CSEBase>における<remoteCSE>リソースのサブセットとして表すことができる。例えば、CSE1がCSE2を登録するとき、2つの<remoteCSE>リソースが生成される:1つはCSE1における<CSEBase1>/<remoteCSE2>であり、もう1つはCSE2における<CSEBase2>/<remoteCSE1>である。2つのリソースの生成は、必ずしも相互登録を示すものではない。<CSEBase1>/<remoteCSE2>は、上記例においてCSE2がCSE1に登録されることを自動的に意味するものではない。
<remoteCSE>リソースは、例えば表4に示すような子リソースを含む。
図4Bは、<remoteCSE>リソースに含まれる子リソースを例示するリストである。
実施形態において、<remoteCSE>リソースは表5にリストする属性を含む。
実施形態において、<remoteCSE>とアナウンスされた<remoteCSE>は、2つのリソース間で識別できるようにするため、異なるresourceTypeコードを有する。
oneM2Mシステムにおける実施形態
変形例を提供して、現行のoneM2M仕様を実施形態においてどのように変更して本文書の技術を実装できるかを説明する。本例は、アプリケーションエンティティまたは共通サービスエンティティ(CSE)からのアナウンスされた属性を生成または削除するためoneM2Mが既定する現行手順に対する変更を開示する。さらに、元リソースをホストするCSEが属性をアナウンスまたはアナウンス失効させるための新たな技術を開示する。
変形例は、属性をアナウンスまたはアナウンス失効させることをサポートする方法を提案する。属性アナウンス/アナウンス失効は、UPDATE動作とDELETE動作を用いることによりサポートされる。
例1
10.2.18.6 AEとCSEがアナウンス属性を生成開始する手順
本節は、AEとCSEがアナウンスする属性を生成(属性アナウンス)する手順を記載している。
オリジネータ:リクエストのオリジネータは、属性アナウンスを開始し、これはAEでもCSEでもよい。オリジネータは、元リソースにおけるannouncedAttribute属性を更新することにより、属性アナウンスをリクエストする:
オリジネータは、UPDATEリクエストを用いることによってアナウンスする必要がある属性を追加することにより、元リソースにおけるannouncedAttribute属性を更新することができる。OAとマークされた属性のみが、遠隔アナウンスリソースに対してアナウンスすることができる。
レシーバ:オリジネータが認証されると、レシーバ(例えば元リソースをホストしているCSE)はリクエストを検証した後にリクエストを許可する。
リクエストにおいて受信した属性は、OAとマークされていなければ、不正である。
リクエストにおいて受信した属性は、元リソース構造において存在しなければ、不正である。
リクエストにおいて受信した属性がannouncedAttribute属性において既に存在している場合、レシーバはannounceTo属性にリストされている全てのアナウンス先リソースに対してその属性をアナウンスすることができる。これは10.2.18.8節の手順にしたがったものである。
10.2.18.8節の手順にしたがって属性のアナウンスが成功すると、レシーバは以下を実施することができる:
レシーバは、10.1.3節が規定するように、リクエストを発行したAE/CSEに対してUPDATE応答で応答することができる。アナウンスされた属性の名称は、その応答で提供することができる。
例2
10.2.18.7 AEとCSEがアナウンスする属性を削除開始する手順
本節は、AEとCSEがアナウンスする属性を削除(属性アナウンス失効)する手順を記載している。
オリジネータ:リクエストのオリジネータは、属性アナウンス失効を開始し、これはAEでもCSEでもよい。オリジネータは、以下のように元リソースにおけるannouncedAttribute属性を更新することにより、属性アナウンス失効をリクエストする:
オリジネータは、UPDATEリクエストを用いることによってアナウンス失効する必要がある属性を削除することにより、元リソースにおけるannouncedAttribute属性を更新することができる。OAとマークされた属性のみが、遠隔アナウンスリソースに対してアナウンス失効させることができる。
レシーバ:オリジネータが認証されると、レシーバ(例えば元リソースをホストしているCSE)はリクエストを検証した後にリクエストを許可する。
リクエストにおいて受信した属性は、OAとマークされていなければ、不正である。
announcedAttribute属性において既に存在している属性がリクエストにおいて受信されなかった場合、レシーバはannounceTo属性にリストされている全てのアナウンス先リソースに対してその属性をアナウンス失効させることができる。これは10.2.18.9節の手順にしたがったものである。
10.2.18.9節の手順にしたがって全属性のアナウンス失効が成功すると、レシーバは以下を実施することができる:
レシーバは、10.1.3節が規定するように、リクエストを発行したAE/CSEに対してUPDATE応答で応答することができる。アナウンス失効する属性の名称は、その応答で提供することができる。
例3
10.2.18.8 元リソースをホストするCSEが属性をアナウンスする手順
本節は、元リソースをホストするCSEが遠隔アナウンスリソース(すなわち属性アナウンス)においてアナウンスする属性を生成する手順を記載している。
オリジネータ:このリクエストのオリジネータは、元リソースをホストしているCSEである。オリジネータは、10.1.3節が規定するように、UPDATEリクエストを用いることにより、アナウンスリソースにおいてアナウンスする属性を生成するようリクエストすることができる。
レシーバ:オリジネータが認証されると、レシーバ(アナウンスするリソースをホストするCSE)は、リクエストを検証した後、リクエストを許可することができる。レシーバは以下を実施することができる:
10.1.3節の部分アドレシング手順にしたがって、アナウンスリソースにおいてアナウンスする属性を生成する。
10.1.3節にしたがって、UPDATE応答でオリジネータに対して応答する。
オリジネータは、レシーバから応答を受け取った後、以下のステップを実施することができる:アナウンスされた属性が生成された場合、announcedAttribute属性が更新され、アナウンスされた属性の属性名が含まれるようになる。
announcedAttribute属性において新たにアナウンスする属性について、オリジネータはその値がアナウンスリソースにおいて同期されることにつき責任を有する。これは、10.1.3節のUPDATE動作を用いることによる。
例4
10.2.18.9 元リソースホストCSEが属性をアナウンス失効する手順
本節は、元リソースをホストしているCSEが遠隔アナウンスリソースにおいてアナウンスされた属性を削除する手順を記載している(すなわち属性アナウンス失効)。
オリジネータ:このリクエストのオリジネータは、元リソースをホストしているCSEである。オリジネータは、10.1.4節が規定するDELETEリクエストを用いることにより、アナウンスされた属性を削除することを要求できる。
レシーバ:オリジネータが認証されると、レシーバ(アナウンスされたリソースをホストしているCSE)はリクエストを検証した後、リクエストを許可することができる。レシーバは以下を実施することができる:
10.1.4節の部分アドレシング手順にしたがってアナウンス失効された属性を削除する。
10.1.4節の適切なDELETE応答でオリジネータに対して応答する。
オリジネータはレシーバから応答を受け取った後、以下のステップを実施することができる:アナウンス失効された属性が削除された場合、announcedAttribute属性を更新して、アナウンス失効した属性の属性名を削除することができる。
現行oneM2M規格に対する変形
oneM2Mにおける部分アドレシングのサポートを提案する。部分アドレシングを提案して、UPDATEおよびDELETE動作を用いることによりサポートする。
例5
8.1.1 説明
図5は、手順内の情報交換をカバーする通信の一般的フローを示す図である。これはリクエストと応答の方式を用いることに基づいている。この方式は以下のような通信に適用される:
AEとCSEとの間(Mca参照ポイント);および
CSE間(Mcc参照ポイント)
通信は、リクエストメッセージの動作にしたがって、AEまたはCSEいずれかによって開始される。
8.1.2 応答
オリジネータからのリクエストは、以下の情報を含む:
to:動作のターゲットリソースまたはターゲット属性のURI。to情報は9.3.1節に合致する。
toターゲットリソースまたはターゲット属性は、オリジネータが知る必要がある。これは事前準備によってまたはディスカバリによって知ることができる。
用語ターゲットリソースは、特定の動作が対処するリソースのことを指す。例えばリソース“example”に対するCreate動作のパラメータは、“/m2m.provider.com/exampleBase”となる。同じリソース“example”に対するRetrieve動作のパラメータは、“/m2m.provider.com/exampleBase/example”となる。RETRIEVE動作で特定の属性を対処する際に用いるとき、上述の例における“container”属性のパラメータは、“/m2m.provider.com/exampleBase/example/container”となる。
fr:オリジネータを表すID
レシーバはfr情報を用いて、オリジネータIDが特権アクセスできるかチェックすることができる。
cn:送信するリソースコンテンツ
op:実行すべき動作:Create(C)、Retrieve(R)、Update(U)、Delete(D)。
op情報は、レシーバにおいて実行すべき動作を示すことができる。
Create(C):toパラメータで処理できる新しいリソースが生成される。
Retrieve(R):既存のto処理可能リソースが読み取られ、オリジネータに対して提供される。
Update(U):既存のto処理可能リソースのコンテンツがcnパラメータの新たなコンテンツで置き換えられる。cnパラメータの属性がターゲットリソースにおいて存在しない場合、その属性は割り当てられた属性で生成される。
Delete(D):既存のto処理可能リソースとその全てのサブリソースが、リソースストレージから削除される。特定の属性を処理するtoパラメータについて、その属性はリソースストレージから削除される。
Notify(N):レシーバに対する情報、レシーバにおける処理はオリジネータによって示されない。
以下の動作について、ty情報をリクエスト内に含めることができる:
Create:tyは生成するリソースのタイプである。
cn:送信するリソースコンテンツ。
以下の動作について、cn情報をリクエスト内に含めることができる:
Create:cnは新しいリソースのコンテンツである。リソースタイプタグは表9.2−1のものである。
Update:cnは既存リソースにおいて置き換えるコンテンツである。cnは、toパラメータが指定するリソースにおいて生成する属性について、対応する値とともに新たな属性を含むこともできる。
Retrieve:cnは、ディスカバリ目的で適用されるフィルタである。
Notify:cnは通知情報である。
cn情報は空であってもよい。
その他用いることができる情報は以下の通りである:
nm:生成するリソースのオプション名。
名称の使用例としては、新たに生成するリソースのIDとしてCreateリソースのオリジネータが使用希望する名称が挙げられる。名称“myContainer”を有するcontainerを生成する際に、リクエストはパラメータnmの値を“myContainer”とし、生成されるリソースは:/<SCEBase>/myContainerである。
ot:メッセージが構築されたときのオプション送信元タイムスタンプ。
送信元タイムスタンプの使用例としては以下が挙げられる:動作を測定および有効化する(例:メッセージログ、相関、メッセージ優先順位付け/スケジューリング、パフォーマンス受諾リクエスト、変更、など)、パフォーマンスを測定する(配信および処理レイテンシ、閉ループレイテンシ、SLA、分析、など)。
rqet:オプションリクエストメッセージ期限タイムスタンプ。
リクエスト期限タイムスタンプの使用例は以下を含む:リクエストが古くなって値の意味をなさず期限切れになるとき(遅延耐性を含む)を示す、メッセージスケジューリング/優先順位付けを通知する。リクエストが特定時刻にリクエスト期限タイムスタンプをセットし、リクエストを現在処理しているCSEではないホストCSEにおける動作をリクエストが要求する場合、現在のCSEはリクエスト期限タイムスタンプまでリクエストをホストCSEに対して配信し続けようとする。これは準備したポリシにしたがってなされる。
rset:オプション結果メッセージ期限タイムスタンプ。
結果期限タイムスタンプの使用例は以下を含む:結果が古くなって値の意味をなさず結果メッセージが期限切れになるとき(遅延耐性を含む)を示す、メッセージスケジューリング/優先順位付けを通知する。最大許可総リクエスト/結果メッセージシーケンスラウンドトリップ期限をセットするために用いることができる。
rt:オプション応答メッセージタイプ:発行したリクエストに対する応答内容と、いつ応答をオリジネータに対して送信したかを示す。
Acknowledgement:ローカルCSEが応答を受け取った場合、ローカルCSEはAcknowledgementで受け取った後に応答する。これは、ローカルCSEがさらにリクエストを処理することを確認するものである。
Result:ローカルCSEが応答を受け取った場合、ローカルCSEは要求された動作が完了すると要求された動作の結果を応答する。
Acknowledgementにセットする応答タイプの使用例:通信時間とエネルギー消費を最小化するように最適化されたオリジネータは、ローカルCSEに対して応答を通知しようとし、リクエストが受け取られたか否かの確認応答を取得する。その後、オリジネータは低パワー消費モードへスイッチし、後時刻において要求した動作の結果を取得する。
rd:オプション結果メッセージ宛先。
ローカルCSE:ローカルCSEは、受け取ったリクエストに対する応答において、リクエストのステータスと要求した動作の結果にアクセスするために後時刻において用いることができる参照情報を含む。
オリジネータ:要求した動作の結果は、オリジネータに対する通知として送信する必要がある。
ローカルCSEに対してセットする結果宛先の使用例は以下を含む:結果コンテンツが非常に大きい場合、または結果が非同期で集約されたターゲットグループからの複数のコンテンツ部分を含む場合。
rc:オプション結果メッセージコンテンツ:要求した動作の結果の期待されるコンポーネントを示す。リクエストのオリジネータは、動作の結果を全く必要としない場合がある。これはrc情報に示すことができる。rcを正確にセットすることができるかは、opが指定する要求動作に依拠する。rcの値として取り得るものは以下である:
“resource”:要求したリソース表現のみがコンテンツとして戻される。要求したリソースの他リソースに対するリンクは言及されない。これはデフォルト値である。
“resource;links”:他リソースに対する全てのリンクとともに(取得したリンクの最大数によって制限され得る)、要求したリソースの表現が、コンテンツとして戻される。
“links”:要求されたリソースの他リソースに対するリンクのみが(取得したリンクの最大数によって制限され得る)、要求したリソースの実物なしで、コンテンツとして戻される。
“nothing”:応答のコンテンツとして何も戻されない。
“result−notification”:動作が完了すると通知が戻される。
注:rcについてどのような設定が可能かについての詳細は、後に要求可能な特定の動作が定義されたとき、追加することができる(例:AEを登録する、containerのコンテンツを変更する、など)。
rp:オプション応答持続性:応答を含むアドレスが持続する期間を示す。
応答持続の使用例は以下を含む:非同期で集約した応答コンテンツを分析処理するのに十分な持続期間を要求する。結果期限タイムスタンプが指定された場合、応答持続は応答期限を超えて存続すべきである。
ri:リクエストID
リクエストIDの使用例は、リクエストと多数の受信した応答との間の相関を可能にすることを含む。
oet:オプション動作実行時間:ターゲットCSEによって特定の動作opが実行される時間を示す。ターゲットCSEは、動作実行時間から開始する動作実行時間がセットされたリクエストの特定の動作を実行する。実行時間が既に過ぎるかまたはセットされていない場合、指定された動作は、セットされたリクエスト期限に達していない限り、即時実行される。
動作実行時間の使用例は、フローの非同期分散を含む。これは動作実行時刻において同期実行される。
NOTE4:時刻ベースフローは、CSEにおいて利用可能な時刻サービスによってはサポートできない場合がある。
ec:オプションイベントカテゴリ:このリクエストを取り扱うために用いるべきイベントカテゴリを示す。イベントカテゴリは、遠隔ホストされているリソースに対してアクセスするリクエストがCMDH CSFにおいてどのように処理されるかに影響する。CMDHを介する接続の選択とスケジューリングは、イベントカテゴリを区別するポリシによって制御される。
特定値Xにセットされた“イベントカテゴリ”の使用例は以下を含む:リクエストがローカルCSEとは異なるホストCSE上で実行する動作を要求しているとき、リクエストはホストCSEへの途中で現在リクエストを処理しているCSEに格納される。これは、そのイベントカテゴリXについて準備したポリシによって通信リンクを使用してホストCSEに至る過程の次のCSEに到達することが許可されるまで、またはリクエスト期限タイムスタンプが超過するまでである。
da:オプション配信集約on/off:<delivery>リソースのCRUD動作を用いて、1以上の元リクエストを同じターゲットCSEへ転送することを表す。
daはオプションであるので、リクエスト内に存在しない場合のデフォルト値が存在する。このパラメータは、Mcaを介してAEに公開されない場合がある。
配信集約をonにセットする使用例は以下を含む:リクエストを処理するCSEは、ターゲットCSEへの途中の次のCSE上で<delivery>リソースのCREATEを要求することにより、同じターゲットCSEに対するリクエストの集約を用いることができる。
gid:オプショングループリクエストID:グループメンバそれぞれに対して広がるグループリクエストに対して追加されるIDである。
fc:オプションフィルタ条件:フィルタリングした取得動作の条件を表8.1.2−1に示す。
HTTPクエリにおけるフィルタ条件の使用例は以下を含む:HTTP GET動作をリクエストし、リクエスト自身のクエリ部分のフィルタを適用することができる:
GET /root?label=one&label=two&createdBefore=2014-01-01T00:00:00&limit=128
例えば以下の論理条件に合致する最大128個のリソースを発見できる:createdBefore<2014−01−01T00:00:00 AND (label=one OR label=two)
リクエストが配信されると、レシーバはリクエストを分析してターゲットリソースを判定する。
ターゲットリソースが他のM2Mモジュールによって処理されている場合、レシーバはリクエストを適切にルーティングする。
ターゲットリソースがレシーバによって処理されている場合、以下を実施できる:
toアドレスリソースの存在をチェックする。
表9.2−1のタグ値でリソースタイプを識別する。
frオリジネータが要求された動作を実施する権限をチェックする。
上述のように提供されたリクエストパラメータにしたがって要求された動作(cnコンテンツが提供される場合はこれを用いて)を実施する。
リクエスト結果コンテンツに応じて、動作結果が成功または失敗したことを示して、オリジネータに対して応答する。特定の場合において(例:バインディングプロトコルの制約またはアプリケーション指示に基づき)、応答を回避できる。
オリジネータリクエストから開始したメッセージフロー手順は、以下の場合に完了したとみなすことができる:
rqet(リクエスト期限タイムスタンプ)にしたがってリクエストメッセージが期限切れになった。
応答メッセージがオリジネータに配信された。
8.1.2.1 リクエストメッセージパラメータの概要
表8.1.2.1−1は、8.1.2節のリクエストメッセージのパラメータの概要である。C、R、U、D、N動作の違いを示す。“M”は固定を示す。“O”はオプションであることを示す。“N/A”は“適用しない”を示す。
例6
8.1.3 成功動作
要求した動作が成功した場合、そのリクエストのレシーバからオリジネータに対する応答は以下の情報を含む:
to:オプション。オリジネータのID。非ブロックリクエストによりトリガされた動作の結果を応答する場合、“rd”情報を用いることができる。
fr:オプション。レシーバのID。
rs:動作結果:例:Okay、Okay and Done;Okay and Scheduled;Okay and In Progress、など。
cn:送信または生成するオプションリソースコンテンツ(オプション)。
メタ情報は以下を含む:
ot:メッセージが構築されたときのオプション元タイムスタンプ。
rset:オプション結果期限タイムスタンプ。レシーバは、リクエストメッセージにセットされている場合は結果期限タイムスタンプを繰り返し、あるいは結果期限タイムスタンプそのものをセットする。
レシーバが結果期限タイムスタンプをセットする例:配信時刻の値が変化するレシーバコンテキストに依拠する場合。例:速度に基づく航空機位置の結果メッセージデッドライン。
ri:リクエストID
レスポンスのriは、対応するリクエストのriと合致する。
cs:オプション、状態コード(例:認証タイムアウトなど)。
ra:オプション、エンドノード応答の一時ストレージのアドレス。
cn情報は、以下の場合において応答内に含まれる:
Create:cnは、生成したリソースのアドレスおよび/またはコンテンツである。
Update:cnは、既存リソースにおいて置き換えるコンテンツである。cnは、新たに生成した属性とその値である。
Delete:cnは、実際に削除するコンテンツである。
cn情報は、以下の場合において応答内に含まれる:
Retrieve:cnは、取得したリソースコンテンツまたは発見したリソースの集約したコンテンツである。
8.1.4 失敗動作
リクエストのレシーバからリクエストのリジネータに対する応答は、要求した動作が失敗した場合、以下の情報を含む:
to:オプション。オリジネータのID。非ブロックリクエストによりトリガされた動作の結果を応答する場合、“rd”情報を用いることができる。
fr:オプション。レシーバのID。
rs:動作結果:例:Not Okay。
cn:オプション、状態コード(例:認証、タイムアウト、など)。
メタ情報は以下を含む:
ot:メッセージが構築されたときのオプション元タイムスタンプ。
rset:オプション結果期限タイムスタンプ。
ri:リクエストID
レスポンスのriは、対応するリクエストのriと合致する。
cs:オプション、状態コード(例:認証タイムアウトなど)。
8.1.5 応答メッセージパラメータの概要
表8.1.5−1は、応答メッセージについての8.1.1節と8.1.3節が規定するパラメータの概要である。成功したC、R、U、D、N動作、および失敗動作の違いを示す。“M”は固定を示す。“O”はオプションであることを示す。“N/A”は“適用しない”を示す。
例7
10.1.3 UPDATE(U)
UPDATE動作は、ターゲットリソースにおいて格納している任意の属性の情報を更新するために用いることができる。更新はタイミングよく実施する必要がある。例えば“ExpirationTime”情報更新に失敗すると、リソースを削除することになる。オリジネータCSEまたはAEは、リクエストメッセージ内に属性とその値を含めることにより、ターゲットリソースにおいて特定の属性の更新または生成をリクエストすることができる。
オリジネータは、UPDATEリクエストメッセージを用いることにより、ターゲットリソースにおける任意属性の更新をリクエストする。オリジネータは、更新する必要がある属性の新たな(提案する)値を送信する。UPDATE動作により、特定のリソースタイプについて、“RW”(Read Write)指定されている属性(9.6節に規定)を変更することができる。
オリジネータは、UPDATEリクエストメッセージを用いることにより、ターゲットリソースにおいて属性を生成するようリクエストする。オリジネータは、特定のリソースタイプについて、“RW”(Read Write)指定されている生成すべき属性(9.6節に規定)の名称および関連する値を、リクエストメッセージで送信することができる。
リクエストメッセージに含まれる情報について8.1.2節 参照
レシーバは、オリジネータが認証されると、アドレスリソースの存在を検証し(提供される属性とこれを変更する権限の妥当性)、提供される属性を更新し、8.1.3節にしたがってオリジネータに対して動作結果の応答メッセージを返信する。提供された属性が存在しない場合、アドレスリソースの存在を検証した後、レシーバは提供された属性とこれを生成する権限を検証する。検証成功した場合、レシーバは提供された属性を関連する値とともに生成し、8.1.3節にしたがって動作結果をオリジネータに対して応答メッセージを返信する。
図6は、リソースを取得する手順の例を示す。ステップ001において、オリジネータはリソースの取得をリクエストする。ステップ002において、レシーバはリクエストを処理する。ステップ003において、レシーバは取得リクエストに対して応答メッセージで応答する。
図7は、リソースを更新する手順の例である。ステップ001において、オリジネータはUPDATEリクエストメッセージ内で以下の情報を送信する。
op:U(Update)
to:ターゲットリソースのURI
fr:オリジネータのID(AEまたはCSE)
cn:ターゲットリソースにおいて更新または生成する属性に関する情報。cnパラメータにおける属性の名称と関連する更新値または割当値。
ステップ002において、レシーバはオリジネータがターゲットリソースを変更する適切な権限を有しているかを検証する。検証成功すると、レシーバはリソースを要求されたように更新する。提供された属性が存在しない場合、レシーバはオリジネータがターゲットリソースにおいて属性を生成する適切な権限を有しているかを検証する。検証成功した場合、レシーバは当該リソースにおいて関連する値で属性を生成する。
ステップ003において、レシーバは以下の情報を含む応答メッセージを返信する:
to:オプション。オリジネータのID。非ブロックリクエストによってトリガされた動作の結果を応答する場合、rd情報を用いることができる。
fr:オプション。レシーバのID。
rs:動作結果
cn:オプション。置換または生成するコンテンツ。
一般例外:
to情報におけるターゲットリソースが存在しない。レシーバはエラーを応答する。
オリジネータは、レシーバにおいてリソースを変更しまたは属性を生成する権限を有していない。レシーバはエラーを応答する。
cnにおいて提供された情報がレシーバによって受け取られなかった。レシーバはエラーを応答する。
例8
10.1.4 DELETE(D)
オリジネータCSEまたはAEは、DELETE動作を用いて、レシーバCSEにおけるリソースを削除することができる。
オリジネータCSEまたはAEは、DELETE動作を用いて、レシーバCSEにおけるターゲットリソースから特定の属性を削除することができる。
DELETE手順は、ターゲットリソースの関連する全情報を削除することを含む。
オリジネータは、DELETEリクエストメッセージを用いることにより、リソースまたは属性を削除するようリクエストする。
レシーバは、オリジネータが認証されると、要求されたリソースまたは属性の存在と、そのリソースまたは属性を削除する権限を、検証する。
図8は、リソースまたは属性を削除する手順の例を示す。ステップ001において:オリジネータはレシーバに対してDELETEリクエストメッセージを送信する。
op:D(Delete)
to: ターゲットリソースまたは属性のURI
fr:オリジネータのID(AEまたはCSE)
ステップ002において、レシーバは要求されたリソースまたは属性の存在、およびオリジネータがリソース/属性を削除する適切な権限を有しているかを、検証する。リソースの削除について、検証成功すると、レシーバは子リソースをチェックし、全ての子リソースと親リソースの関連する関連する参照を削除し、リソース自身を削除する。属性の削除について、検証成功すると、レシーバはアドレス属性を削除する。
ステップ003において、レシーバは以下の情報を含む応答メッセージを返信する:
to:オプション。オリジネータのID。非ブロックリクエストによってトリガされた動作の結果を応答する場合、rd情報を用いることができる。
fr:オプション。レシーバのID。
rs:動作結果
一般例外:
to情報のターゲットリソース/属性が存在しない。レシーバはエラーを応答する。
オリジネータは、レシーバにおけるリソース/属性を削除する権限を有していない。レシーバはエラーを応答する。
上述の変形例は、現行のoneM2M規格の特定セクションをどのように変更できるかの例を提供した。実施形態において、本文書が開示する技術の実装を示した。上述の変形例は、oneM2Mが既定するリソースまたは属性メッセージを交換する現行手順に対する変更を開示している。これはRequest、Retrieve、Response、Delete、Updateメッセージを含む。上述の変形例は、デバイスに対して送信しこれを受信したデバイスが解釈実行することにより、メッセージパラメータおよびパラメータを使用する方法に対する変更を提供している。
上記において参照するoneM2M規格は、実施形態を説明するための例として用いたものであり、本技術の範囲を限定するものではない。
図9に示すように、実施形態において、M2M通信システムにおけるアナウンスされたリソースから情報を取得する方法600は、アナウンスするリソースのアドレスを指定するとともにアナウンスするリソースのIDを含めることにより、情報取得リクエストを発行するステップ(602);前記情報取得リクエストに応じて情報応答を受信するステップ(604);前記受信した情報応答をローカルで処理するかまたは他M2Mデバイスに処理させるため転送するかを選択するステップ(606);を有する。
図10に示すように、実施形態において、M2M通信システムにおけるアナウンスされたリソースから情報を取得する装置700は、アナウンスするリソースのアドレスを指定するとともにアナウンスするリソースのIDを含めることにより、情報取得リクエストを発行するモジュール702;前記情報取得リクエストに応じて情報応答を受信するモジュール704;前記受信した情報応答をローカルで処理するかまたは他M2Mデバイスに処理させるため転送するかを選択するモジュール706;を備える。
図11に示すように、実施形態において、M2M通信システムにおけるアナウンスされたリソースを削除する方法800は、削除する属性が省略されたリソースの属性のリストを生成するステップ(802);前記削除する属性をホストするM2Mノードに対して前記リストを送信するステップ(804);を有する。方法800は、図1〜図10で説明した技術を用いることができる。
図12に示すように、実施形態において、M2M通信システムにおけるアナウンスされたリソースを削除する装置900は、削除する属性が省略されたリソースの属性のリストを生成するモジュール902;前記削除する属性をホストするM2Mノードに対して前記リストを送信するモジュール904;を備える。
図13に示すように、実施形態において、M2M通信システムにおけるアナウンスされたリソースを生成する方法1000は、元M2Mノードが生成した属性がリストされた生成リクエストを発行するステップ(1002);前記発行された生成リクエストに対する許可応答を受信するステップ(1004);を有する。方法1000は、図1〜図10で説明した技術を用いることができる。
図14に示すように、実施形態において、M2M通信システムにおけるアナウンスされたリソースを生成するシステム1100は、元M2Mノードが生成した属性がリストされた生成リクエストを発行するモジュール1102;前記発行された生成リクエストに対する許可応答を受信するモジュール1104;を備える。
M2M通信システムにおけるリソースを管理する技術を開示したことを理解されたい。
本文書が開示したものその他の実施形態、モジュール、および機能動作は、デジタル電子回路内、またはコンピュータソフトウェア、ファームウェア、ハードウェア内に実装することができる。これらは本文書が開示する構造およびその等価構造、さらにはこれらの1以上の組み合わせを含む。開示する実施形態およびその他の実施形態は、1以上のコンピュータプログラム製品として実装することができる。すなわち、コンピュータ読取可能媒体に記録され、データ処理装置が実行しまたはその動作を制御する、1以上のコンピュータプログラム命令のモジュールである。コンピュータ読取可能媒体は、機械読取可能記憶装置、機械読取可能記憶基板、メモリデバイス、機械読取可能伝搬信号を生成する合成物、またはこれらの1以上の組み合わせである。データ処理装置という用語は、全ての装置、デバイス、データ処理機械を包含する。これらは例えばプログラム可能プロセッサ、コンピュータ、マルチプロセッサまたはコンピュータを含む。装置は、ハードウェアに加えて、コンピュータプログラムの命令環境を生成するコードを含む。例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはこれらの1以上の組み合わせを構成するコードである。伝搬信号は、人工生成された信号である。例えば、適当な受信装置に対して送信するために情報をコード化するように生成された、機械生成による電気的、光学的、または電磁的信号である。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られている)は、任意形態のプログラム言語で記述することができる。これはコンパイル言語またはインタプリタ言語を含み、任意形態で配布することができる。これはスタンドアロンプログラムまたはモジュール、コンポーネント、サブルーチン、その他のコンピュータ環境において使用するのに適したユニットを含む。コンピュータプログラムは、ファイルシステムに対応している必要はない。プログラムは、他のプログラムまたはデータ(例えば、マークアップ言語文書内に格納された1以上のスクリプト)を保持する、当該プログラム専用の単一ファイル内または複数協調ファイル(例えば、1以上のモジュール、サブプログラム、またはコードの一部を格納するファイル)内におけるファイルの一部に格納することができる。コンピュータプログラムを配布して、1サイトに配置されまたは複数サイトをまたがって通信ネットワークによって相互接続配置された1以上のコンピュータによって実行することができる。
本文書において開示するプロセスとロジックフローは、1以上のコンピュータプログラムを実行する1以上のプログラム可能プロセッサによって実施して、入力データ上で動作し出力を生成することにより機能を実施することができる。プロセスとロジックフローは例えばFPGA(field programmable gate array)やASIC(application specific integrated circuit)のような特定用途論理回路によって実施することもできる。装置はこれら回路として実装することもできる。
コンピュータプログラムを実行するのに適したプロセッサは、例えば汎用および特定用途マイクロプロセッサ、または任意タイプのデジタルコンピュータの1以上のプロセッサを含む。一般にプロセッサは、読取専用メモリまたはランダムアクセスメモリまたはこれら双方から命令とデータを受信する。コンピュータの必須要素は、命令を実施するプロセッサと、命令およびデータを格納する1以上のメモリデバイスである。一般にコンピュータはさらに、データを格納する1以上の大規模記憶デバイスを備え、またはこれらと動作可能に連結されデータを受信または送信する。例えば磁気ディスク、光磁気ディスク、または光ディスクである。しかしコンピュータはこれらデバイスを必ずしも備えなくともよい。コンピュータプログラム命令とデータを格納するのに適したコンピュータ読取可能媒体は、不揮発性メモリ、媒体、およびメモリデバイスの全ての形態を含む。これは例えば、EPROMやEEPROMのような半導体メモリデバイス、フラッシュメモリデバイス、例えば内部ハードディスクやリムーバブルディスクのような磁気ディスク、光磁気ディスク、CDROMおよびDVD−ROMディスクを含む。プロセッサとメモリは、特定用途論理回路内によって補充され、またはその内部に設けることができる。
本文書は詳細記述を含むが、これらは特許請求しまたはする可能性のある本発明の範囲に対する制約として解釈すべきではない。むしろ特定実施形態に固有の構成の記述として解釈すべきである。個々の実施形態の文脈において本文書が開示する特定要素は、単一実施形態の組み合わせにおいて実装することができる。これとは反対に、単一実施形態の文脈において開示する様々な要素は、複数の実施形態またはその任意の組み合わせにおいて個別に実装することができる。さらに、要素は特定の組み合わせにおいて動作することを説明し、そのように特許請求しているが、特許請求する組み合わせからの1以上の要素は場合によっては組み合わせから除去することができる。特許請求する組み合わせは、サブ組み合わせまたはサブ組み合わせの変形物とすることができる。同様に、図面内の動作は特定順序で示したが、所望結果を実現するために、そのような動作を図示する特定順序で実施することが必要であり、また全動作を実施することが必要であると解釈すべきではない。
数個の例と実装のみを開示した。開示内容に基づき、説明した例および実装に対する変形、修正、拡張、その他の実装をすることも可能である。