(57)【要約】【課題】エンドツーエンドＭ２Ｍサービス層セッションの提供。【解決手段】複数のサービス層ホップに及び得るマシンツーマシンサービス層セッションをサポートする機構であって、マシンツーマシンサービス層ホップは、２つのマシンツーマシンサービス層インスタンス間、またはマシンツーマシンサービス層インスタンスとマシンツーマシンアプリケーションとの間の直接マシンツーマシンサービス層通信セッションである、機構。複数のリソースをサポートするｏｎｅＭ２Ｍセッション管理サービスのためのマシンツーマシンセッション確立プロシージャを例証する機構も開示される。【選択図】図１
2018110452.tif 000002
【特許請求の範囲】
【請求項１】
明細書に記載された発明。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の引用）
本願は、米国仮特許出願第６１／８５８，３８７号（２０１３年７月２５日出願、名称「Ｅ２Ｅ−Ｍ２Ｍ  ＳＥＲＶＩＣＥ  ＬＡＹＥＲ  ＳＥＳＳＩＯＮＳ」）および米国仮特許出願第６１／８８６７８７号（２０１３年１０月４日出願、名称「ＥＮＨＡＮＣＥＤ  ＭＥＴＨＯＤＳ  ＡＮＤ  ＰＲＯＣＥＤＵＲＥＳ  ＴＯ  ＳＵＰＰＯＲＴ  ＥＮＤ−ＴＯ−ＥＮＤ  Ｍ２Ｍ  ＳＥＲＶＩＣＥ  ＬＡＹＥＲ  ＳＥＳＳＩＯＮＳ」）の利益を主張し、上記出願の内容は、参照により本明細書に引用される。
【背景技術】
【０００２】
通信セッションは、２つ以上の通信エンティティ（例えば、デバイス、アプリケーション等）間に、持続的双方向情報交換を伴い得る。通信セッションは、ある時点で確立され、種々の状況（例えば、セッションタイムアウト後またはエンティティのうちの１つがセッションを終了することを決定するとき）に基づいて、後の時点で切断される。通信セッションは、エンティティ間に複数のメッセージの交換を伴い得、ステートフルであり得る。ステートフルとは、通信エンティティのうちの少なくとも１つが、通信セッションを維持可能であるために、セッション履歴に関する情報（例えば、証明書、識別子等のセキュリティコンテキスト）を保存することを意味し得る。
【０００３】
従来のアプリケーションセッションは、下層通信プロトコルまたはサービス層によってではなく、アプリケーション自体によって確立および管理される、２つ以上のアプリケーション間の通信セッションである。その結果、アプリケーションセッションは、余分なオーバーヘッドおよび複雑性をアプリケーションに加え得る。
【０００４】
マシンツーマシン（Ｍ２Ｍ）サービス層は、具体的には、Ｍ２Ｍタイプデバイスおよびアプリケーションのための付加価値サービスを提供することを目標としたアプリケーションサービス層のタイプの１つの実施例である。例えば、Ｍ２Ｍサービス層は、アプリケーションプログラミングインターフェース（ＡＰＩ）をサポートし、ＡＰＩは、アプリケーションおよびデバイスアクセスをサービス層によってサポートされるＭ２Ｍ中心能力のコレクションに提供することができる。いくつかの実施例として、セキュリティ、請求、データ管理、デバイス管理、発見、プロビジョニング、および接続管理が挙げられる。これらの能力は、Ｍ２Ｍサービス層によって定義されるメッセージ形式、リソース構造、およびリソース表現を利用するＡＰＩを介して、アプリケーションに利用可能にされる。
【０００５】
マシンツーマシン（Ｍ２Ｍ）サービス層セッションは、Ｍ２Ｍサービス層インスタンスとＭ２Ｍアプリケーションまたは別のＭ２Ｍサービス層インスタンスのいずれかとの間に確立される通信セッションである。Ｍ２Ｍサービス層セッションは、接続、セキュリティ、スケジューリング、データ、コンテキスト等に関連するＭ２Ｍサービス層状態から成ることができる。この状態は、Ｍ２Ｍサービス層、Ｍ２Ｍアプリケーション、または両方によって維持されることができる。
【０００６】
草案ＥＴＳＩ  ＴＳ１０２  ６９０  １．１．１（２０１１−１０）に論じられる欧州電気通信標準化機構（ＥＴＳＩ）Ｍ２Ｍサービス層、草案バージョン１．０（２０１３年３月１４日）に論じられるオープンモバイルアライアンス（ＯＭＡ）軽量Ｍ２Ｍサービス層、およびｏｎｅＭ２Ｍ−ＴＳ−０００１ｏｎｅＭ２Ｍ機能アーキテクチャＶ−０．１．２．Ｍ２Ｍサービス層アーキテクチャ（例えば、ＥＴＳＩ  Ｍ２Ｍ、ＯＭＡ  ＬＷＭ２Ｍ、およびｏｎｅＭ２Ｍ）に論じられるＭ２Ｍサービス層等のサービス層を伴う、複数のマシンツーマシン（Ｍ２Ｍ）アーキテクチャがある。アプリケーションサービス層の別の実施例は、モバイルネットワークデバイスのためのマルチメディアサービスを提供することを具体的に目標とする、ＩＰマルチメディアサブシステム（ＩＭＳ）サービス層ＴＳ２３．２２８、第３世代パートナーシッププロジェクトである。これらのアーキテクチャは、本明細書に論じられるように、エンドツーエンドセキュリティサービス（例えば、エンドツーエンド暗号化および認証）、エンドツーエンドサービスの質機能性（例えば、エンドツーエンド待ち時間または帯域幅保証）、および設定または構成のエンドツーエンドネゴシエーション（例えば、使用される圧縮のタイプをネゴシエートする）のためのサポートを欠き得る。
【０００７】
エンドツーエンド（Ｅ２Ｅ）セッションをサポートする従来の方法は、Ｅ２Ｅセッションを確立および管理するためのアプリケーションおよび／またはエンドユーザに依拠する。これは、アプリケーションへのオーバーヘッドおよび追加の複雑性および／またはユーザがセッション管理に関与する必要性をもたらす過度の方法論である。この過度の方法はまた、データが、アプリケーションによってＥ２Ｅ方式において暗号化され、故に、それが、ネットワーク内のサービスによってセキュアに処理されることが不可能であるため、ネットワークサービスが、データ集約およびデータ分析等の付加価値セッション機能性を提供するのを妨げる。多くのＭ２Ｍ使用例は、Ｅ２Ｅセッションを要求する。例えば、ｅ−ヘルス、銀行取引、および軍等のエンドツーエンドセキュリティおよびプライバシーを使用する使用例、ならびにビデオ監視、患者モニタリング、および緊急サービス等のエンドツーエンドサービスの質を使用する使用例である。加えて、多くのＭ２Ｍデバイスは、無人であり、これもまた、エンドツーエンドセッションを管理するために課題を提示する。例えば、無人デバイスは、セッションが確立される必要がある度に、セキュアなエンドツーエンドセッションを動的に生成するために、ユーザに依拠することができない。
【発明の概要】
【課題を解決するための手段】
【０００８】
既存のＭ２Ｍサービス層アーキテクチャは、エンドツーエンドＭ２Ｍサービス層セッションのためのサポートを欠いている。Ｍ２Ｍサービス層セッションは、Ｍ２Ｍサービス層インスタンスとＭ２Ｍアプリケーションまたは別のＭ２Ｍサービス層インスタンスのいずれかとの間に確立される通信セッションである。Ｍ２Ｍサービス層セッションは、接続、セキュリティ、スケジューリング、データ、コンテキスト等に関連するＭ２Ｍサービス層状態から成ることができる。この状態は、Ｍ２Ｍサービス層、Ｍ２Ｍアプリケーション、または両方によって維持されることができる。
【０００９】
本明細書に開示されるのは、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションをサポートするための方法、デバイス、およびシステムである。複数のサービス層ホップに及び得る、Ｍ２Ｍサービス層セッションをサポートする機構が、開示され、Ｍ２Ｍサービス層ホップは、２つのＭ２Ｍサービス層インスタンス間またはＭ２Ｍサービス層インスタンスとＭ２Ｍアプリケーションとの間の直接Ｍ２Ｍサービス層通信セッションである。セッションエンドポイントおよびセッション管理機能は、信頼された中間セッションマネージャが、データを暗号化／復号化または圧縮／解凍し、データ分析、データ集約、データマッシュアップ等の付加価値データサービスを提供する能力を持つことを可能にする、Ｅ２Ｅセッションエンドポイント間をフローするデータのＥ２Ｅ暗号化および圧縮のための方法をサポートする。
【００１０】
本概要は、発明を実施するための形態において以下でさらに説明される、簡略化形態の概念の選択を導入するように提供される。本概要は、請求された主題の主要な特徴または不可欠な特徴を識別することを目的としておらず、また、請求された主題の範囲を限定するために使用されることも目的としていない。さらに、請求された主題は、本開示の任意の部分で記述されるいずれかまたは全ての不利点を解決する制限に制約されない。
例えば、本願は以下の項目を提供する。
（項目１）
方法であって、
マシンツーマシンゲートウェイのサービス層セッション管理機能によって、通信セッションを作成するためのセッション要求を受信することと、
前記セッション要求に基づいて、前記通信セッションのための第１のアプリケーションおよび第２のアプリケーションを決定することと、
前記セッション要求に基づいて、第１のサービス層インスタンスを決定することであって、前記第１のサービス層インスタンスは、前記通信セッションに関連付けられた中間サービス層インスタンスである、ことと、
セッション証明書に対する要求に基づいて、証明書応答を受信することであって、前記証明書応答は、前記通信セッションのための前記セッション証明書を備えている、ことと、
前記セッション証明書を前記通信セッションの前記第１のアプリケーション、前記第２のアプリケーション、および前記第１のサービス層インスタンスに提供することと
を含む、方法。
（項目２）
前記セッション証明書は、前記第１のサービス層インスタンスが、前記第１のサービス層インスタンスを通してフローする前記通信セッションのアプリケーションデータを圧縮および解凍することを可能にするように適合されている、項目１に記載の方法。
（項目３）
前記通信セッションは、前記第１のアプリケーションと前記第２のアプリケーションとの間の暗号化された通信である、項目１に記載の方法。
（項目４）
前記セッション証明書は、前記セッション証明書の有効期間に基づいて、周期的にリフレッシュされる、項目１に記載の方法。
（項目５）
前記セッション証明書は、前記第１のサービス層インスタンスが、前記第１のサービス層インスタンスを通してフローする前記通信セッションのアプリケーションデータを暗号化および復号化することを可能にするように適合されている、項目４に記載の方法。
（項目６）
前記証明書応答は、前記通信セッションのためのアプリケーションのリストをさらに備えている、項目１に記載の方法。
（項目７）
前記セッション証明書に基づいて、前記第１のアプリケーションを前記第１のサービス層インスタンスを用いて認証することをさらに含む、項目１に記載の方法。
（項目８）
前記通信セッションのセッション状態を記憶することをさらに含む、項目１に記載の方法。
（項目９）
前記セッション状態は、セッションクッキーとして記憶される、項目８に記載の方法。
（項目１０）
マシンツーマシン装置であって、
プロセッサと、
前記プロセッサと結合されているメモリと
を備え、
前記メモリは、実行可能命令を記憶しており、前記命令は、前記プロセッサによって実行されると、
通信セッションを作成するためのセッション要求を受信することと、
前記セッション要求に基づいて、前記通信セッションのための第１のアプリケーションおよび第２のアプリケーションを決定することと、
前記セッション要求に基づいて、第１のサービス層インスタンスを決定することであって、前記第１のサービス層インスタンスは、前記通信セッションに関連付けられた中間サービス層インスタンスである、ことと、
セッション証明書に対する要求に基づいて、証明書応答を受信することであって、前記証明書応答は、前記通信セッションのためのセッション証明書を備えている、ことと、
前記セッション証明書を前記通信セッションの前記第１のアプリケーション、前記第２のアプリケーション、および前記第１のサービス層インスタンスに提供することと
を含む動作を前記プロセッサに達成させる、マシンツーマシン装置。
（項目１１）
前記セッション証明書は、前記第１のサービス層インスタンスが、前記第１のサービス層インスタンスを通してフローする前記通信セッションのアプリケーションデータを圧縮および解凍することを可能にするように適合されている、項目１０に記載のマシンツーマシン装置。
（項目１２）
前記通信セッションは、前記第１のアプリケーションと前記第２のアプリケーションとの間の暗号化された通信である、項目１０に記載のマシンツーマシン装置。
（項目１３）
前記セッション証明書は、前記セッション証明書の有効期間に基づいて、周期的にリフレッシュされる、項目１０に記載のマシンツーマシン装置。
（項目１４）
前記セッション証明書は、前記第１のサービス層インスタンスが、前記第１のサービス層インスタンスを通してフローする前記通信セッションのアプリケーションデータを暗号化および復号化することを可能にするように適合されている、項目１３に記載のマシンツーマシン装置。
（項目１５）
前記証明書応答は、前記通信セッションのためのアプリケーションのリストをさらに備えている、項目１０に記載のマシンツーマシン装置。
（項目１６）
さらなる動作が、前記セッション証明書に基づいて、前記第１のアプリケーションを前記第１のサービス層インスタンスを用いて認証することを含む、項目１０に記載のマシンツーマシン装置。
（項目１７）
さらなる動作が、前記通信セッションのセッション状態を記憶することを含む、項目１０に記載のマシンツーマシン装置。
（項目１８）
前記セッション状態は、セッションクッキーとして記憶される、項目１７に記載のマシンツーマシン装置。
（項目１９）
コンピュータ実行可能命令を備えているコンピュータ読み取り可能な記憶媒体であって、前記命令は、コンピューティングデバイスによって実行されると、
通信セッションを作成するためのセッション要求を受信することと、
前記セッション要求に基づいて、前記通信セッションの複数の参加者を決定することであって、前記通信セッションの前記複数の参加者は、第１のアプリケーション、第２のアプリケーション、およびサービス層インスタンスを含み、前記通信セッションは、前記第１のアプリケーションと前記第２のアプリケーションとの間の暗号化された通信セッションである、ことと、
セッション証明書に対する要求に基づいて、前記通信セッションのためのセッション証明書を備えている証明書応答を受信することと、
前記セッション証明書を前記通信セッションの前記複数の参加者に提供することと
を含む命令を前記コンピューティングデバイスに実行させる、コンピュータ読み取り可能な記憶媒体。
（項目２０）
さらなる動作が、前記サービス層インスタンスによって、セッションクッキーを前記第１のアプリケーションから読み出すことを含み、前記セッションクッキーは、前記第１のアプリケーションの履歴アクティビティを含む、項目１９に記載のコンピュータ読み取り可能な記憶媒体。
【図面の簡単な説明】
【００１１】
より詳細な理解は、付随の図面と併せて、一例として与えられる、以下の説明から得られ得る。
【図１】図１は、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション実施形態を図示する。
【図２】図２は、追加の詳細とともに、図１のＥ２Ｅ  Ｍ２Ｍサービス層セッションを図示する。
【図３】図３は、追加の詳細とともに、図１のＥ２Ｅ  Ｍ２Ｍサービス層セッションを図示する。
【図４】図４は、セッション証明書機能ブートストラッピングの例示的方法を図示する。
【図５】図５は、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションマネージャのための機能アーキテクチャを図示する。
【図６】図６は、例示的Ｅ２Ｅ  Ｍ２Ｍサービス層セッション確立コールフローを図示する
【図７】図７は、複数のルートを伴う、２つのセッションエンドポイント間の例示的サービス層セッションを図示する。
【図８】図８は、セッションエンドポイントのための機能アーキテクチャを図示する。
【図９】図９は、セッションマネージャのｏｎｅＭ２Ｍ実施形態を図示する。
【図１０Ａ】図１０Ａは、ｏｎｅＭ２Ｍセッション管理（ＳＭＧ）サービスのためのＥ２Ｅ  Ｍ２Ｍサービス層セッション確立プロシージャを図示する。
【図１０Ｂ】図１０Ｂは、図１０Ａからの続きのｏｎｅＭ２Ｍセッション管理（ＳＭＧ）サービスのためのＥ２Ｅ  Ｍ２Ｍサービス層セッション確立プロシージャを図示する。
【図１１Ａ】図１１Ａは、ｏｎｅＭ２Ｍ  ＳＭＧサービスのためのセッション使用プロシージャを図示する。
【図１１Ｂ】図１１Ｂは、図１１Ａからの続きのｏｎｅＭ２Ｍ  ＳＭＧサービスのためのセッション使用プロシージャを図示する。
【図１２】図１２は、ｏｎｅＭ２Ｍ  ＳＭＧサービスのための例示的Ｍ２Ｍセッション終了プロシージャを図示する。
【図１３】図１３は、リソース「ｓｅｓｓｉｏｎｓ」を図示する
【図１４】図１４は、ＣＳＥベースＵＲＩ下のセッションリソースインスタンス化を図示する。
【図１５】図１５は、アプリケーションリソース下のセッションリソースインスタンス化を図示する。
【図１６】図１６は、リソース＜ｓｅｓｓｉｏｎ＞を図示する。
【図１７】図１７は、リソースセッションｓｅｓｓｉｏｎＥｎｄｐｏｉｎｔｓを図示する。
【図１８】図１８は、リソース＜ｓｅｓｓｉｏｎＥｎｄｐｏｉｎｔ＞を図示する。
【図１９】図１９は、リソースｎｅｘｔＨｏｐｓを図示する。
【図２０】図２０は、リソース＜ｎｅｘｔＨｏｐ＞を図示する。
【図２１】図２１は、リソースｓｅｓｓｉｏｎＰｏｌｉｃｉｅｓを図示する。
【図２２】図２２は、リソース＜ｓｅｓｓｉｏｎＰｏｌｉｃｙ＞を図示する。
【図２３】図２３は、リソースｓｅｓｓｉｏｎＣｏｎｔｅｘｔを図示する。
【図２４】図２４は、リソース＜ｓｅｓｓｉｏｎＣｏｎｔｅｘｔＩｎｓｔａｎｃｅ＞を図示する。
【図２５Ａ】図２５Ａは、１つ以上の開示される実施形態が実装され得る、例示的マシンツーマシン（Ｍ２Ｍ）またはモノのインターネット（ＩｏＴ）の通信システムの系統図である。
【図２５Ｂ】図２５Ｂは、図２５Ａに例証されるＭ２Ｍ／ＩｏＴ通信システム内で使用され得る、例示的アーキテクチャの系統図である。
【図２５Ｃ】図２５Ｃは、図２５Ａに例証される通信システム内で使用され得る、例示的Ｍ２Ｍ／ＩｏＴ端末またはゲートウェイデバイスの系統図である。
【図２５Ｄ】図２５Ｄは、図２５Ａの通信システムの側面が実施され得る、例示的コンピューティングシステムのブロック図である。
【発明を実施するための形態】
【００１２】
エンドツーエンド（Ｅ２Ｅ）セッションをサポートする従来の方法は、Ｅ２Ｅセッションを確立および管理するために、アプリケーションおよび／またはエンドユーザに依拠する。この過剰な方法は、アプリケーションへのオーバーヘッドおよび追加の複雑性またはユーザがセッション管理に関与する必要性をもたらし得る。マシンツーマシン（Ｍ２Ｍ）実装に関して、追加のオーバーヘッドおよび複雑性は、多くのエンドデバイスが、サーモスタットまたは計量器等のリソース制約デバイスであり得るため、特に、関心事であり得る。従来の方法が使用されるとき、Ｍ２Ｍサービス層を通してフローするＭ２Ｍアプリケーションデータは、典型的には、Ｍ２Ｍサービス層が関係していないＭ２Ｍアプリケーション層セキュリティ認証情報またはアルゴリズムを使用して、暗号化または圧縮される。このシナリオでは、Ｍ２Ｍサービス層は、データを復号化または解凍可能な信頼されたエンティティではないため、Ｍ２Ｍサービス層は、データ集約およびデータ分析等の付加価値セッション機能性を提供することができない。
【００１３】
従来のＭ２Ｍサービス層は、互の単一サービス層ホップ内における２つのＭ２Ｍサービス層インスタンス間またはＭ２Ｍサービス層インスタンスとＭ２Ｍアプリケーションとの間にＭ２Ｍセッションの作成を要求し得、ここでは、サービス層ホップは、直接サービス層通信リンクとして定義され得る。従来のＭ２Ｍ設定のため、エンドポイントＭ２Ｍアプリケーションは、サービス層の上を経由して通信し、エンドツーエンドセッションを設定および管理し得る。例えば、ＥＴＳＩ  Ｍ２Ｍサービス層に対して、Ｍ２Ｍアプリケーションは、ＥＴＳＩ  Ｍ２Ｍコンテナリソースを通してメッセージを互に交換することによって、エンドツーエンドセッションを確立する。これらのメッセージは、不透明様式において、ＥＴＳＩ  Ｍ２Ｍサービス層を通してフローし、サービス層に解析可能または可視ではない。故に、サービス層は、付加価値エンドツーエンドセッション管理サービスをアプリケーションに提供することが不可能であり得る。
【００１４】
本明細書に開示されるのは、複数のＭ２Ｍサービス層ホップに及び得る、Ｍ２Ｍサービス層とのＥ２Ｅセッションをサポートするための機構である。これらのＥ２Ｅ  Ｍ２Ｍサービス層セッション（サービス層セッション）は、データ集約およびデータ分析等の他の付加価値セッション機能性の中でもとりわけ、Ｍ２Ｍサービス層が、エンドツーエンドセキュリティサービス、エンドツーエンドサービスの質機能性、設定または構成のエンドツーエンドネゴシエーションに関与することを可能にするセッションである。全体を通して論じられる（例えば、図４、図５、および全体を通して）方法および機能アーキテクチャは、ソフトウェアおよびハードウェアの組み合わせによって実装され得る。機能アーキテクチャは、単一デバイス上に実装されるか、または複数のデバイス間に分散され得る。デバイスは、図２５Ａから図２５Ｄに関して以下に説明されるようなデバイスのうちの１つ以上のものであり得る。
【００１５】
追加の視点のために、図１は、複数のホップに及ぶ例示的Ｅ２Ｅ  Ｍ２Ｍサービス層セッションを図示する。図１に図示されるように、Ｍ２Ｍデバイス１１０は、Ｍ２Ｍアプリケーション１１１を含み得る。Ｍ２Ｍアプリケーション１１１は、Ｍ２Ｍネットワークアプリケーション１１５（タブレット、サーバ、パーソナルコンピュータ、またはスマートフォン等のデバイス上にあり得る、エンドポイントＭ２Ｍアプリケーション）とのＥ２Ｅ
Ｍ２Ｍサービス層セッションに関与し得る。Ｍ２Ｍアプリケーション１１１のＭ２Ｍサービス層セッションは、複数のホップ（ホップ１３０およびホップ１３１）を含み、Ｍ２Ｍサーバ１１８上に位置するＭ２Ｍサービス層インスタンス１２３によって促進される。
【００１６】
図１はまた、２つのＭ２Ｍサービス層インスタンス（１つは、Ｍ２Ｍサーバ上にホストされ、１つは、Ｍ２Ｍゲートウェイ上にホストされる）によって促進されるサービス層セッションの実施例を示す。図１に示されるように、Ｍ２Ｍデバイス１１２のＭ２Ｍアプリケーション１１３は、Ｍ２Ｍネットワークアプリケーション１１５とのＥ２Ｅ  Ｍ２Ｍサービス層セッションに関与し得る。Ｍ２Ｍアプリケーション１１３のＭ２Ｍサービス層セッションは、複数のホップ（ホップ１３２、１３３、およびホップ１３４）を含み、複数のＭ２Ｍサービス層インスタンス（Ｍ２Ｍゲートウェイ１１４のＭ２Ｍサービス層インスタンス１２１およびＭ２Ｍサーバ１１８のＭ２Ｍサービス層インスタンス１２３）によって促進される。Ｍ２Ｍサービス層インスタンス１２１およびＭ２Ｍサービス層インスタンス１２３は、互に通信し、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションを管理し得る（例えば、セッションを確立するか、またはセッションを切断する）。
【００１７】
図１はまた、２つのＭ２Ｍゲートウェイ間のセッションに関与する、サービス層セッションを示す。図１に示されるように、Ｍ２Ｍゲートウェイ１１６のＭ２Ｍサービス層インスタンス１２５は、Ｍ２Ｍゲートウェイ１１４のＭ２Ｍサービス層インスタンス１２１とのＭ２Ｍサービス層セッション中である。Ｍ２Ｍサービス層インスタンス１２５のＭ２Ｍサービス層セッションは、複数のホップ（ホップ１３６およびホップ１３５）を含み、Ｍ２Ｍサーバ１１８のＭ２Ｍサービス層インスタンス１２３によって促進される。追加の実施例（図示せず）も、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションのために可能である。例えば、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションは、互から複数のサービス層ホップ離れた２つのＭ２Ｍサーバ間のものであり得る。別の実施例は、Ｍ２Ｍサービス層を通してフローしないが、Ｍ２Ｍサービス層によって促進される、２つのエンドポイントアプリケーション間の直接Ｅ２Ｅセッションを伴い得る。言い換えると、サービス層は、アプリケーションが、互に発見し、証明書を動的に提供するために使用し得るアプリケーション発見およびＥ２Ｅセッション証明書確立サービスを提供し得る。
【００１８】
以下により詳細に説明されるように、サービス層セッションをサポートするために、以下のＭ２Ｍサービス層アーキテクチャ要素のうちの１つ以上のものが、存在し得る。すなわち、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションマネージャ機能（セッションマネージャ機能）、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションエンドポイント機能（セッションエンドポイント機能）、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション証明書ブートストラッピング機能（セッション証明書機能）、Ｍ２Ｍサービス層セッション状態（セッション状態）、およびＥ２Ｅ  Ｍ２Ｍサービス層セッションインターフェース（セッションインターフェース）である。図２は、前述のＭ２Ｍサービス層アーキテクチャ要素を含む、図１におけるＭ２Ｍセッションの例証である。セッションエンドポイント機能１４０、セッションエンドポイント機能１４９、およびセッションエンドポイント機能１４８等のＭ２Ｍセッションエンドポイント機能は、それぞれ、Ｍ２Ｍデバイス１１０、Ｍ２Ｍサーバ１１８、およびＭ２Ｍネットワークアプリケーション１４０とともに常駐し得る。本明細書により詳細に論じられるように、セッションエンドポイント機能は、Ｍ２ＭアプリケーションまたはＭ２Ｍサービス層インスタンスが、サービス層セッションに参加することを可能にする。セッションエンドポイント機能は、セッションマネージャと相互作用する。
【００１９】
図２を継続して参照すると、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションマネージャ（例えば、セッションマネージャ１４５）は、Ｍ２Ｍサーバ（例えば、Ｍ２Ｍサーバ１１８）またはＭ２Ｍゲートウェイとともに常駐し得る。以下により詳細に論じられるように、セッションマネージャは、サービス層セッションの確立、切断、および管理をサポートする。セッションマネージャは、セッションアドレスまたは識別子アドレスの変換を行ない得る（例えば、公開セッション識別子とプライベートセッション識別子との間の変換）。加えて、セッションマネージャは、これらのメッセージが、それに直接接続されていないセッションエンドポイントに送達され得るように、サービス層メッセージを他のセッションマネージャにルーティングするための能力をサポートする。
【００２０】
図２をさらに参照すると、Ｍ２Ｍサービス層セッションは、セッション証明書機能１４７等のセッション証明書機能を伴い得る。セッション証明書機能１４７は、サービス層セッション関連証明書および構成情報のプロビジョニングまたはブートストラッピングをサポートし得る。セッションマネージャまたはセッションエンドポイントは、これらのセッション証明書を使用し得る。セッション証明書機能は、ＡＡＡサーバ上に常駐し、ダイアメータプロトコルを使用するＩＣｒｅｄｅｎｔｉａｌインターフェース（例えば、ＩＣｒｅｄｅｎｔｉａｌ１５７）を有し得る。加えて、サービス層セッションは、Ｍ２Ｍデバイス１１０、Ｍ２Ｍサーバ１１８、およびＭ２Ｍネットワーク１１５等のＭ２Ｍデバイスの任意のものを有し得るセッション状態を含み得る。セッション状態は、セッションマネージャまたはセッションエンドポイントによって維持され得、セッション管理目的のために使用され得る情報である。
【００２１】
図３は、前述のＭ２Ｍサービス層アーキテクチャ要素を含む、図１のサービス層セッションの複数の実施例を図示する。図３に示されるように、セッションマネージャ（例えば、ＩＭａｎａｇｅｒ−Ｍａｎａｇｅｒ１５４）間のＩＭａｎａｇｅｒ−Ｍａｎａｇｅｒインターフェースおよびセッションエンドポイントとセッションマネージャ（例えば、ＩＥｎｄｐｏｉｎｔ−Ｍａｎａｇｅｒ１５３、ＩＥｎｄｐｏｉｎｔ−Ｍａｎａｇｅｒ１５５、ＩＥｎｄｐｏｉｎｔ−Ｍａｎａｇｅｒ１５６）との間のＩＥｎｄｐｏｉｎｔ−Ｍａｎａｇｅｒインターフェースが存在し得る。図３に示されるように、セッションマネージャ１４５は、複数のノード間の複数のＭ２Ｍサービス層セッションを管理する。
【００２２】
以下は、とりわけ、セッション証明書機能、セッションマネージャ、およびセッション状態情報等、図３の機能のうちのいくつかに関するより詳細な方法およびシステム説明である。
【００２３】
セッション証明書機能は、個々のセッションエンドポイントと、複数のサービス層ホップに及ぶサービス層セッションを構成するセッションマネージャとへのセッションセキュリティ証明書（「セキュリティ証明書」または「セッション証明書」）のブートストラッピングをサポートし、ここでは、サービス層ホップは、サービス層インスタンスまたはアプリケーションのうちの２つ以上のものの間の直接サービス層通信リンクとして定義され得る。本明細書に論じられるように、セッションをセキュアにするためのセッション証明書およびセキュリティ証明書は、同じ意味で使用される。セッション証明書をプロビジョニングする方法（図示せず）は、セッション証明書機能のマネージャまたは所有者によって行われる事前プロビジョニングステップであり得る。例えば、サービス層インスタンス毎に、セッション証明書のプールが、セッション証明書機能の中に事前プロビジョニングされ得る。その後、セッションマネージャは、要求された場合、セッション証明書を配分するためのセッション証明書機能への要求を行ない得る。
【００２４】
図４は、Ｍ２Ｍデバイス、Ｍ２Ｍサーバ、Ｍ２Ｍゲートウェイ等上に常駐し得る、異なるセッション参加者間にセッション証明書を構成する、セッション証明書機能ブートストラッピングの例示的方法を図示する。図４に対して、セッションエンドポイント１４０は、開始アプリケーションの一部である一方、セッションエンドポイント１４８は、目標アプリケーションの一部であると仮定され得る。
【００２５】
ステップ２０１、ステップ２０２、およびステップ２０３において、セキュアなシングルホップセッションが、確立され得る。ステップ２０１では、セキュアなシングルホップセッションが、セッションマネージャ１４５とセッション証明書機能１４７との間にある。ステップ２０２では、セキュアなシングルホップセッションは、セッションマネージャ１４５とセッションエンドポイント１４０との間にある。ステップ２０３では、セキュアなシングルホップセッションは、セッションマネージャ１４５とセッションエンドポイント１４８との間にある。ステップ２０１、ステップ２０２、およびステップ２０３のセキュアなシングルホップセッションは、ＥＴＳＩ  Ｍ２ＭおよびＯＭＡ  ＬＷＭ２Ｍ等のアーキテクチャにおいてサポートされる従来のサービス層ブートストラップおよび登録プロシージャによって確立され得る。
【００２６】
ステップ２０４において、セッションエンドポイント１４０は、セッションマネージャ１４５にクエリを行い（例えば、セッション証明書ブートストラップ要求を提供し）、利用可能な他のセッションエンドポイントおよびその対応する属性を発見するか、または特定のセッションエンドポイントを要求し得る。他のセッションエンドポイントを明示的に発見することの代替は、セッションエンドポイント１４０が、セッションを確立することを所望するセッションエンドポイントのタイプ等、ステップ２０４のブートストラップ要求内で情報を提供し、セッションマネージャに最良セッションエンドポイントを決定させることである。セッション証明書ブートストラップ要求は、サービス層セッションを確立することを所望する、アプリケーション、ゲートウェイ、サーバ等に関連付けられたセッションエンドポイントによって開始され得る。セッション証明書ブートストラップ要求は、開始セッションエンドポイントがサービス層セッションを確立しようとしている、１つ以上の目標セッションエンドポイント等の情報を含み得る。加えて、セッション証明書ブートストラップ要求は、セッションマネージャが、１つ以上の目標セッションエンドポイントを選択し、サービス層セッション証明書を配布するために使用し得る、セッションエンドポイントの所望のタイプに関する情報を含み得る。セッション証明書ブートストラップ要求はまた、とりわけ、セッションの要求されるＱｏＳ、目標セッションエンドポイントの場所、および開始アプリケーションが支払を所望し得る量等の情報を含み得る。
【００２７】
ステップ２０５において、セッションマネージャ１４５は、ステップ２０４のセッション証明書ブートストラップ要求を解析し、セッション証明書を配布することが許可される目標セッションエンドポイント、または代替として、セッション証明書機能１４７とブートストラップすることを求め得るセッションエンドポイントを決定する。加えて、セッションマネージャ１４５は、サービス層セッションに関与し得る、任意の中間サービス層インスタンス（例えば、サービス層インスタンスを伴うＭ２ＭゲートウェイまたはＭ２Ｍサーバ）を決定する。目標セッションエンドポイントおよび中間サービス層インスタンスの決定は、異なる方法で行われ得る。例えば、セッションマネージャ１４５は、目標セッションエンドポイントのリスト等、ステップ２０４におけるセッション証明書ブートストラップ要求に含まれる情報を使用し得る。代替として、要求側セッションエンドポイント（例えば、セッションエンドポイント１４０）またはセッションポリシーによってセッション状態として維持される履歴またはコンテキスト情報もまた、使用され得る。セッション状態を使用して、セッションマネージャ１４５はさらに、セッション証明書を配布することを選択する目標セッションエンドポイントを絞り込み得る。
【００２８】
図４を継続して参照すると、ステップ２０６において、セッションマネージャ１４５は、Ｅ２Ｅ  Ｍ２Ｍセッション証明書要求をセッション証明書機能１４７に送信し得る。ステップ２０６の証明書要求は、ステップ２０５の決定された目標セッションエンドポイントおよび決定されたサービス層インスタンスのための一組のセッション証明書を配分するための要求を含み得る。ステップ２０７において、セッション証明書機能１４７は、セッションマネージャ１４５、セッションエンドポイント１４８、およびセッションエンドポイント１４０のための一組のセッション証明書を作成する。加えて、ステップ２０７において、証明書機能１４７は、セッション証明書の状態を維持する。証明書状態は、すでに作成されたサービス層セッションのセッション証明書を所望し得る、任意のアプリケーション、インスタンス等に送信され得る。ステップ２０８において、セッション証明書機能１４７は、セッションマネージャ１４５に、Ｅ２Ｅ  Ｍ２Ｍセッション証明書応答を送信する。セッション証明書応答は、任意の数のアプリケーションまたはサービス層インスタンスに配分され得るセッション証明書を含み得る。代替として、証明書応答は、一組のセッション証明書を含み得、一組のセッション証明書内の各セッション証明書は、特に、作成されることが所望されるサービス層セッションに関与するサービス層インスタンスまたはアプリケーションに割り当てられ得る。
【００２９】
ステップ２０９において、ステップ２０８のセッション証明書の受信に応じて、セッションマネージャ１４５は、セッションマネージャ１４５もまた、セッション証明書を使用し得るように、セッション証明書をローカルに記憶し得る。例えば、セッションマネージャ１４５は、サービス層インスタンス（例えば、サービス層インスタンス１２３）を通してフローするアプリケーションデータを暗号化または復号化し、付加価値データサービスを提供し得る。ステップ２１０において、セッションマネージャ１４５は、セッションエンドポイント１４８に、ステップ２０８のセッション証明書を含み得る、Ｅ２Ｅセッション証明書構成要求を送信する。Ｅ２Ｅセッション証明書構成要求はまた、セッションエンドポイント１４８が、セッションエンドポイント１４０とのサービス層セッションに参加する能力に対する要求を含み得る。例えば、セッションエンドポイント１４８は、サービス層セッションがその時間において許可しないこともあるポリシーを有し得る。ステップ２１１において、セッションエンドポイント１４８は、提案されるセッションの間、セッション証明書状態を維持する。ステップ２１２において、セッションエンドポイント１４８は、セッションマネージャ１４５に、送信されたセッション証明書を受信および実装した確認を含み得る、Ｅ２Ｅセッション証明書構成応答を送信する。
【００３０】
図４をさらに参照すると、ステップ２１３において、セッションマネージャ１４５は、セッションエンドポイント１４０に、Ｅ２Ｅセキュリティ証明書ブートストラップ応答を送信し得る。ステップ２１３のＥ２Ｅセキュリティ証明書ブートストラップ応答は、最終的には、ステップ２０４の要求に応答し得、セッション証明書と、サービス層セッションのためのセッション証明書を有する目標セッションエンドポイントのリストとを含み得る。ステップ２１４において、セッション証明書の受信に応じて、セッションエンドポイント１４０は、受信された証明書の状態情報を維持し得る。
【００３１】
図４を継続して参照すると、セッションエンドポイント（例えば、セッションエンドポイント１４０およびセッションエンドポイント１４８）は、セッション証明書をリフレッシュするために、ブートストラッピング動作を周期的に繰り返す必要があり得る。この周期的リフレッシュは、セッション証明書に関連付けられた有効期間に基づき得る。共通セッション証明書を伴うセキュアなブートストラッピングは、開始セッションエンドポイント１４０、ローカルセッションマネージャ１４５（セッションエンドポイント１４０のために直接登録されたセッションマネージャ）、任意の中間サービス層セッションマネージャ（ここには示されないが、随時、適用可能であり得る）、および１つ以上の目標Ｅ２Ｅ  Ｍ２Ｍサービス層セッションエンドポイント（例えば、セッションエンドポイント１４８）間にセキュアな信頼チェーンを確立し得る。このセキュアなＥ２Ｅ信頼チェーンは、保護された下層の従来のシングルホップＭ２Ｍサービス層セッションと、保護された下層トランスポート層および存在し得るアクセスネットワーク接続との上に層化され得る。代替として、前述のセキュアなＥ２Ｅ信頼チェーンは、ホップ毎方式において互にではなく、セッション証明書機能を用いて各セッションエンドポイントおよびセッションマネージャに認証させることによって、確立され得る。
【００３２】
図４に図示されるステップを行うエンティティは、図２５Ｃまたは図２５Ｄに図示されるもの等のデバイス、サーバ、またはコンピュータシステムのメモリ内に記憶され、そのプロセッサ上で実行する、ソフトウェア（すなわち、コンピュータ実行可能命令）の形態で実装され得る論理的エンティティであることを理解されたい。すなわち、図４に図示される方法は、コンピューティングデバイスのプロセッサによって実行されると、図４に図示されるステップを行う、コンピュータ実行可能命令である、図２５Ｃまたは図２５Ｄに図示されるデバイスまたはコンピュータシステム等のコンピューティングデバイスのメモリ内に記憶される、ソフトウェア（すなわち、コンピュータ実行可能命令）の形態で実装され得る。
【００３３】
セッション証明書は、開始Ｍ２Ｍアプリケーション、ならびにそれが登録されるＭ２Ｍサービス層インスタンス、ならびに１つ以上の目標Ｍ２Ｍアプリケーションにブートストラップされ得る。証明書はまた、サービス層ルートポリシー、コンテキスト情報、または履歴情報（例えば、他のＭ２Ｍサービス層インスタンスが、開始Ｍ２Ｍアプリケーションと目標Ｍ２Ｍアプリケーションとの間のマルチホップパス内に存在する場合）に基づいて、他のＭ２Ｍサービス層インスタンスにもブートストラップされ得る。
【００３４】
図５は、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションマネージャ（例えば、セッションマネージャ１４５）のための機能アーキテクチャを図示する。図５に示されるように、セッションマネージャ１４５は、セッション証明書機能１４７と、Ｅ２Ｅ  Ｍ２Ｍセッションコンテキストおよび履歴機能１６１（セッションコンテキスト機能）と、Ｅ２Ｅ  Ｍ２Ｍセッションルート機能１６２（セッションルート機能）と、Ｅ２Ｅ  Ｍ２Ｍセッション確立および切断機能１６３（セッション確立機能）と、Ｅ２Ｅ  Ｍ２Ｍセッションポリシー機能１６４（セッションポリシー機能）と、Ｅ２Ｅ  Ｍ２Ｍセッション構成および発見機能１６５（セッション構成機能）と、Ｅ２Ｅ  Ｍ２Ｍセッションデータ管理機能１６６（セッションデータ管理機能）と、セッション状態１５１とを含み得る。ある実施形態では、セッションマネージャ１４５は、Ｍ２Ｍサービス層インスタンス（例えば、サービス層インスタンス１２３）の能力としてサポートされ得る。別の実施形態では、セッションマネージャ１４５は、Ｍ２Ｍサービス層インスタンスがインターフェースをとり得る、別個のサービス（例えば、独立型ウェブサービス）としてサポートされ得る。本明細書により詳細に論じられるのは、セッションマネージャの機能の各々の説明である。
【００３５】
Ｅ２Ｅ  Ｍ２Ｍセッション確立および切断機能１６３（セッション確立機能）は、サービス層セッションを確立または切断するための要求を処理する。セッションエンドポイントは、要求をセッション確立機能に送信し、１つ以上の目標セッションエンドポイントとサービス層セッションを確立し得る。証明書が正常にブートストラップまたはプロビジョニングされている場合もしくはセキュリティが要求されない場合、セッション確立機能は、要求されると、サービス層セッションの確立または切断を続行し得る。Ｅ２Ｅ  Ｍ２Ｍサービス層セッションは、既存のシングルホップＭ２Ｍサービス層セッションまたはトランスポート層セッションの上にサービス層セッションを層化することによって確立されることができる。これは、各セッションエンドポイントに対して、ならびにサービス層セッションパスに沿う各中間セッションマネージャに対してセッション状態を維持および／または配信することによって達成されることができる。このセッション状態は、セッションセキュリティ証明書、セッションルート情報、セッションコンテキスト、およびセッションポリシー等の情報を含み得る。各セッションエンドポイントおよびセッションマネージャにおけるセッション状態の構成は、指定されたセッションマネージャ（例えば、サービス層セッション確立要求を開始するセッションエンドポイントに最も近いセッションマネージャ）によって管理され得る。
【００３６】
図６は、例示的Ｅ２Ｅ  Ｍ２Ｍサービス層セッション確立コールフローを図示する。本実施例では、セッションエンドポイント１４０は、３サービス層ホップ離れた（すなわち、２つのＭ２Ｍサービス層インスタンスによって分離される）、セッションエンドポイント１４８とのサービス層セッションを開始する。ステップ２２０では、セッションエンドポイント１４０、セッションエンドポイント１４８、およびセッションマネージャ（例えば、セッションマネージャ１４１およびセッションマネージャ１４５）は、本明細書に説明されるように、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション証明書をブートストラップまたはプロビジョニングされている（図４に関する実施例参照）。ステップ２２１において、セッションエンドポイント１４０は、セッションマネージャ１４１に、サービス層セッションを認証および確立するための要求を送信する。ステップ２２１の要求は、ステップ２２０において受信されたセッション証明書を含み得る。ある実施形態では（図示せず）、セッションエンドポイント１４０は、複数の要求を１つ以上のセッションマネージャに送信し、複数の目標セッションエンドポイント（例えば、グループセッション）とＥ２Ｅ  Ｍ２Ｍサービス層セッションを確立し得る。
【００３７】
ステップ２２２において、セッションマネージャ１４１は、セッションエンドポイント１４０のセッション証明書に基づいて、セッションエンドポイント１４０を認証する。加えて、ステップ２２２において、セッションマネージャ１４１は、次のホップを決定し、サービス層セッションを認証および確立するための要求を転送する。セッションマネージャ１４１は、要求内に含まれる情報、ローカルに記憶されたコンテキストおよびポリシーに基づいて、ネットワーク内の他のセッションマネージャと協働することによって、次のホップを決定する。本実施例では、次のホップは、別のセッションマネージャ（例えば、セッションマネージャ１４５）である。図６に示されるように、ステップ２２３において、セッションマネージャ１４１は、セッションマネージャ１４５に、サービス層セッションを認証および確立するための要求を送信する。ステップ２２３の要求は、ステップ２２０において受信されたセッション証明書を含み得る。ステップ２２４において、セッションマネージャ１４５は、セッションマネージャ１４１のセッション証明書に基づいて、セッションマネージャ１４１を認証し、次のホップを決定し、サービス層セッションを認証および確立するための要求を転送する。ステップ２２５において、セッションマネージャ１４５は、ステップ２２１と同様に、セッションエンドポイント１４８に、サービス層セッションを認証および確立するための要求を送信する。ステップ２２６において、セッションエンドポイント１４８は、セッション証明書に基づいて、セッションマネージャ１４５を認証し、セッションエンドポイント１４０がそれと通信することを所望することを決定し、セッション証明書に基づいて、セッションエンドポイント１４０を認証する。さらに、ステップ２２６において、セッションエンドポイント１４８は、以下により詳細に説明される、セッション状態情報を記憶し得る。
【００３８】
ステップ２２７において、セッションエンドポイント１４８は、セッションマネージャ１４５に、Ｅ２Ｅセッション応答を送信する。ステップ２２７のＥ２Ｅセッション応答は、セッションエンドポイント１４０とのサービス層セッションの確立を確認する応答ならびに他のサービス層セッション状態情報を含み得る。ステップ２２７のＥ２Ｅセッション応答は、ステップ２２９およびステップ２３１において、セッションエンドポイント１４０に継続的に転送される。ステップ２２５の応答が、各ホップに対して転送し戻されるにつれて、サービス層セッション状態情報は、ステップ２２８およびステップ２３０において、各セッションマネージャによって、ならびにステップ２３２において、開始セッションエンドポイント（セッションエンドポイント１４０）によって記憶される。このサービス層セッション状態情報は、サービス層セッションが、セッションマネージャを介して、セッションエンドポイント間でメッセージＥ２Ｅを交換するために使用され得るように、サービス層セッションを維持するために使用される。
【００３９】
図６を継続して参照すると、セッションマネージャ（例えば、セッションマネージャ１４１またはセッションマネージャ１４５）は、サービス層セッションメッセージのルートパスを動的に変更し得る。例えば、セッションマネージャ１４１とセッションマネージャ１４５との間のシングルホップセッションが切断する場合、上流セッションマネージャ（この場合、セッションマネージャ１４１）は、目標セッションエンドポイント（例えば、セッションエンドポイント１４８）と確立されたシングルホップセッションを偶然有する、別の近隣セッションマネージャと新しいシングルホップサービス層セッションを確立することによって（利用可能な場合）、回復し得る。Ｅ２Ｅ  Ｍ２Ｍサービス層セッションルートに関するさらなる詳細については、以下を参照されたい。加えて、図６には図示されないが（図３参照）、セッションエンドポイントおよびセッションマネージャが互に認証する代替は、それらが、代わりに、直接、ネットワーク内のセッション証明書機能と認証を行うことである。信頼されたセッション証明書機能は、セッションエンドポイントおよびセッションマネージャが認証することができる、ネットワーク内の中心ノードであり得る。これを行うことによって、それらは、互にではなく、この機能によって認証されることができる。
【００４０】
サービス層セッションの切断は、セッションエンドポイントおよびセッションマネージャにおけるサービス層セッション状態情報を除去することによって、類似方式で作用し得る。サービス層セッションの切断の間、サービス層セッション状態情報は、目標セッションエンドポイントにおいて開始し、開始セッションエンドポイントに向かって削除され得、これはまた、各セッションマネージャにおけるサービス層セッション状態情報も除去する。図６に図示されるステップを行うエンティティは、図２５Ｃまたは図２５Ｄに図示されるもの等のデバイス、サーバ、またはコンピュータシステムのメモリ内に記憶され、そのプロセッサ上で実行する、ソフトウェア（すなわち、コンピュータ実行可能命令）の形態で実装され得る、論理的エンティティであることを理解されたい。すなわち、図６に図示される方法は、コンピューティングデバイスのプロセッサによって実行されると、図６に図示されるステップを行う、コンピュータ実行可能命令である、図２５Ｃまたは図２５Ｄに図示されるデバイスまたはコンピュータシステム等のコンピューティングデバイスのメモリ内に記憶されるソフトウェア（すなわち、コンピュータ実行可能命令）の形態で実装され得る。
【００４１】
ここに論じられるのは、図５の機能アーキテクチャにも示されるようなＥ２Ｅ  Ｍ２Ｍサービス層セッションルート（セッションルート）に関するさらなる詳細である。図７は、サービス層セッションエンドポイント間に複数のサービス層セッションルートを有する、２つのセッションエンドポイント間の例示的単一サービス層セッションを図示する。
【００４２】
各Ｅ２Ｅ  Ｍ２Ｍサービス層セッションルートは、Ｍ２ＭセッションエンドポイントとＭ２Ｍセッションマネージャとを互に相互接続する、異なる一連のシングルホップＭ２Ｍサービス層セッションから成り得る。図７は、ルート２５７（すなわち、実線）またはルート２５９（すなわち、点線）等の複数のルートをとり得る、１つのサービス層セッションを図示する。セッションエンドポイント２５０とセッションエンドポイント２５２との間の複数のサービス層セッションルートは、冗長性、故障保護、およびさらに異なるレベルのサービスの質を提供し得る。セッションマネージャ２５１、セッションマネージャ２５３、およびセッションマネージャ２５５は、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションルート機能（セッションルート機能）をサポートし、指定されたサービス層セッションに関連付けられたメッセージを複数のサポートされるセッションルートのうちの１つにルーティングし得る。セッションルート機能は、コンテキスト認識ならびにポリシーベースのルートをサポートし得る。例えば、セッションマネージャ２５５のセッションルート機能は、これらのメッセージのために選定された過去のメッセージおよびルートの履歴を保つことによって、異なるセッションパスにわたり指定されるサービス層セッションを負荷分散し得る。セッションマネージャ２５５のセッションルート機能は、負荷状態または故障に基づいて、サービス層ルートを適応させ得、これは、より優れた回復力およびＱｏＳを提供し得る。セッションルート機能は、情報がサービス層ルート決定ならびに基礎的アクセスネットワークルート決定に対して考慮され得るように、基礎的アクセスネットワークとインターフェースをとり、情報を共有することをサポートし得る。
【００４３】
サポートされ得る別の形態のセッションルートは、サービス層セッションに関連付けられ得る、複数の下層トランスポートセッションまたはアクセスネットワーク接続間のルートである。これをサポートするために、サービス層セッションマネージャ２５５は、下層トランスポート／アクセスネットワークルート機能とインターフェースを有し得る。例えば、Ｍ２ＭデバイスまたはＭ２Ｍゲートウェイは、複数の無線アクセス技術（例えば、Ｗｉ−Ｆｉ、セルラー等）をサポートし得る。Ｅ２Ｅサービス層セッションは、複数のシングルホップＭ２Ｍサービス層セッションの上に層化され得る。各シングルホップサービス層セッションは、それに関連付けられた複数の下層トランスポートまたはアクセスネットワーク接続を有し得る。サービス層セッションマネージャ２５５は、下層トランスポートまたはアクセスネットワークルート機能と協働し、シングルホップベースによってシングルホップ上で使用するための下層トランスポートまたはアクセスネットワーク接続のルートおよび選択を管理し得る。
【００４４】
図７を継続して参照すると、代替として、サービス層は、基礎的ネットワークルート機能と協働し、Ｅ２Ｅベースで使用するための下層トランスポートまたはアクセスネットワーク接続のルートおよび選択を管理し得る。そうすることによって、セキュリティおよびＱｏＳは、単にホップ毎ベースではなく、Ｅ２Ｅ方式で管理され得る。例えば、このＥ２Ｅ管理は、ルートポリシーを、サービス層セッションの確立の責任があるセッションマネージャ（例えば、セッションマネージャ２５５）から、指定されたサービス層セッションに関連付けられたセッションマネージャの残り（例えば、セッションマネージャ２５１およびセッションマネージャ２５３）に配信することによって行われ得る。Ｅ２Ｅ管理は、シングルホップルートを用いてサポートするのは困難であり得る、ルート最適化を可能にする。例えば、セッションエンドポイント２５０をホストするデバイスが、セッションエンドポイント２５２をホストするデバイスに接近する場合、Ｅ２Ｅルート最適化は、動的に行われ得る。別の実施例では、Ｍ２ＭサーバおよびＭ２Ｍゲートウェイの両方を通した１つのアプリケーションから別のアプリケーションへのルートサービス層セッションメッセージの代わりに、Ｅ２Ｅルート最適化が、両方のアプリケーションに近接した共有Ｍ２Ｍゲートウェイを通してサービス層セッションメッセージをルーティングすることによってＥ２Ｅルートを最適化するか、またはさらに、アプリケーション間に直接ピアツーピアルートを確立することさえ行われ得る。
【００４５】
以下は、図５に示されるような機能アーキテクチャに関するさらなる詳細である。機能アーキテクチャは、単一デバイス上に実装されるか、または複数のデバイスにわたって分散され得る。図５に示される、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションコンテキストおよび履歴機能（セッションコンテキスト機能）１６１は、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションコンテキストおよび履歴情報を収集、解釈、共有、および処理し得る。セッションマネージャおよびセッションエンドポイントは、セッションコンテキスト情報を利用し、サービス層セッションの使用および管理に関するコンテキスト認識決定を行ない得る。加えて、セッションコンテキスト情報は、課金および請求ならびに履歴および追跡等の目的のために利用され得る。セッションコンテキスト機能１６１はまた、セッションマネージャおよび／またはエンドポイント間のセッションコンテキスト情報の共有をサポートする。
【００４６】
いくつかの形態のＥ２Ｅ  Ｍ２Ｍサービス層セッションコンテキスト情報は、以下のうちの１つ以上のものを含み得る。１）過去のサービス層セッションルート決定、２）サービス層セッションに関連する動的に変化するコストまたは価格情報、ならびに利用される下層トランスポートおよびアクセスネットワーク接続、３）サービス層セッションに関連付けられたＭ２Ｍデバイスおよびゲートウェイの場所、４）サービス層セッションに関連付けられたアクセスネットワーク接続のためのアクセスネットワーク輻輳情報および利用可能な帯域幅、および５）指定されたサービス層セッションに関連付けられたＭ２Ｍデバイスおよびゲートウェイの利用可能性（例えば、Ｍ２Ｍデバイスまたはゲートウェイがスリープ状態であるかどうか）。
【００４７】
いくつかのコンテキスト認識サービス層セッション関連決定は、以下のうちの１つ以上のものを含み得る。１）コンテキスト認識セッションルート、２）コンテキスト認識サービス層セッション負荷分散、３）メッセージのコンテキスト認識サービス層セッション記憶し、転送（例えば、セッションエンドポイントが利用不可能である間）、および、４）より効率的アクセスのためのコンテキスト認識サービス層セッションのセッションエンドポイントからのデータの積極的プリフェッチングおよびキャッシュならびにそのサービス層内へのキャッシュ。
【００４８】
図５はまた、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションポリシー機能（セッションポリシー機能）１６４を示す。セッションポリシー機能１６４は、セッションポリシー構成、管理、および共有をサポートする。サービス層セッションポリシーを使用して、セッションマネージャは、セッションエンドポイント間のサービス層セッション通信をより知的に管理し得る。加えて、セッションポリシー機能１６４は、セッションマネージャまたはセッションエンドポイント間のサービス層セッションポリシーの共有をサポートする。いくつかのサービス層セッションポリシーは、以下のうちの１つ以上のものを含み得る。１）セッションルートポリシー、２）Ｅ２Ｅ  Ｍ２Ｍサービス層セッション記憶し、転送するポリシー、３）サービス層セッションプリフェッチングポリシー、４）サービス層セッション確立ポリシー、５）サービス層セッション切断ポリシー、６）収集すべきコンテキスト、コンテキストの解釈方法、意思決定等へのコンテキストの組み入れ方法を決定するセッションコンテキストポリシー、および、７）認証およびセッションに関連付けられた情報へのアクセス制御を制御し得る、サービス層セッションセキュリティポリシー。
【００４９】
図５はまた、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション属性およびパラメータのための構成および発見能力をサポートする、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション構成および発見機能１６５（セッション構成）を示す。サービス層セッション属性およびパラメータの構成は、確立の間ならびに通常サービス層セッション動作の間、サービス層セッションを制御およびカスタマイズするために使用され得る。サービス層セッション状態情報の発見は、所望の組の基準に基づいて、利用可能なサービス層セッションを見つけるために使用され得る。これは、Ｍ２ＭアプリケーションおよびＭ２Ｍサービス層インスタンスが、すでに進行中の既存のサービス層セッションを見つけること、または対応するセッション基準もしくは属性とともに、サービス層セッションをサポートする候補を見つけることを支援し得る。いくつかのタイプのＥ２Ｅ  Ｍ２Ｍサービス層セッション構成および発見は、以下のうちの１つ以上のものを含み得る。１）セッションマネージャによるセッションエンドポイント上にホストされたサービス層セッション状態の構成、およびその逆、２）別のセッションマネージャによるセッションマネージャ上にホストされたサービス層セッション状態の構成、３）セッションエンドポイントによるセッションマネージャ上にホストされたサービス層セッション状態の発見、およびその逆、および、４）別のセッションマネージャによるセッションマネージャ上にホストされたサービス層セッション状態の発見。
【００５０】
図５はまた、サービス層インスタンスによって処理されるサービス層セッションメッセージ内に含まれるデータの管理をサポートし得る、Ｅ２Ｅ  Ｍ２Ｍセッションデータ管理機能１６６（セッションデータ管理機能）を示す。サービス層インスタンスの中にブートストラップされたセッション証明書を利用して、この機能は、受信されたサービス層セッションメッセージ内に含まれるデータの復号化、ならびにサービス層インスタンスおよびアプリケーションに転送されるサービス層セッションメッセージ内に含まれるサービス層セッションデータの暗号化をサポートする。データが復号化されると、この機能は、サービス層インスタンスにおける他の機能（とりわけ、データ分析機能、データ集約機能、またはデータマッシュアップ等）へのこのデータのインターフェースおよびパスをサポートする。中間Ｍ２Ｍサービス層インスタンス上におけるこれらのタイプの機能をサポートすることは、これらのサービス層インスタンスが、ネットワークを通ってフローするメッセージに対する付加価値データサービスをサポートすることを可能にし、これは、ネットワークをより効率的にし、セッションエンドポイントアプリケーションの複雑性を同様に低減させるのにも役立ち得る。
【００５１】
図５はまた、以下のうちの１つ以上のものを含み得る、Ｅ２Ｅ  Ｍ２Ｍセッション状態１５１（セッション状態）を示す：Ｅ２Ｅ  Ｍ２Ｍサービス層セッション識別子（セッション識別子）、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションセキュリティ証明書（セッションセキュリティ証明書）、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション記述子（セッション記述子）、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションルート情報（セッションルート情報）、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションコンテキストまたは履歴（セッションコンテキスト）、およびＥ２Ｅ  Ｍ２Ｍサービス層セッションポリシー（セッションポリシー）。セッション識別子は、セッションマネージャおよびセッションクライアント（例えば、セッションアプリケーションまたはサービス層インスタンス）によって、サービス層セッションを識別するために使用され得る。セッション識別子は、随意に、その対応するセッションマネージャ、セッションエンドポイント、およびセッション証明書機能によってのみ暗号化／復号化され得るように、セッション証明書を使用してハッシュされ得る、任意かつ一意の英数字文字列であり得る。
【００５２】
セッション識別子はまた、セッションに関連付けられた対応するセッションタイプおよび／または機能性を示す、記述的英数字文字列であり得る。この記述的セッション識別子は、セッション発見目的のために使用され、セッション情報の共有を促進し得る（例えば、センサ１２３−測定、照明ＡＢＣ−制御等）。記述的セッション識別子は、グループセッションの動的形成をサポートするのにも同様に役立ち得る。記述的セッション識別子は、随意に、記述的セッション識別子がその対応するセッションマネージャ、セッションエンドポイント、およびセッション証明書機能によってのみ暗号化／復号化され得るように、セッション証明書を使用してハッシュされ得る。
【００５３】
セッション識別子は、他の識別子の一部をリサイクルし得る。セッションエンドポイントは、典型的には、それらに割り当てられた一意の識別子をサポートする。例えば、Ｍ２Ｍアプリケーションは、Ｍ２Ｍサービス層インスタンスに登録するとき、一意のアプリケーション識別子が配分される。同様に、Ｍ２Ｍサービス層インスタンスは、一意の識別子をプロビジョニングされるか、またはブートストラッピングプロシージャの間、一意の識別子で動的に構成されるかのいずれかである。これらの一意の識別子は、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション識別子を作成するために使用され得る。セッションエンドポイントは、セッション確立の間、一意の識別子を互に交換し得、これらの一意の識別子は、２つのセッションエンドポイント間に一意のセッション識別子を形成するために連結され得る。
【００５４】
セッション状態は、サービス層セッションに関連付けられたセキュリティ証明書（例えば、Ｅ２Ｅセキュリティ証明、公開キー等）を含み得る。サービス層セッションは、独立した組の証明書（例えば、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション証明書機能によって確立および配信される）をサポートし得るか、または、随意に、下層セッションまたは接続からのセキュリティ証明書を利用し得る。例えば、下層シングルホップＭ２Ｍサービス層セッション、トランスポート層セッション、および／またはアクセスネットワーク接続からのセキュリティ証明書が、利用され得る。
【００５５】
セッション状態は、既存のサービス層セッションを発見するための、既存のセッション参加者（例えば、セッションエンドポイント、セッションマネージャ、またはセッション証明書機能）によって、または見込みセッション参加者によって使用され得る、セッションを記述する情報である、セッション記述子を含み得る。セッション記述子は、各セッション参加者（例えば、デバイス識別子、参加者のタイプ、参加者がサポートするサービス、参加者のインターフェース要件、使用される圧縮のタイプ等）に対する説明であり得る。セッション記述子は、サービス層セッションを構築するために使用される、各下層シングルホップセッションの説明（例えば、マルチホップＥ２Ｅ  Ｍ２Ｍサービス層セッションを構成する個々のシングルホップＭ２Ｍサービス層セッションに関する情報、下層トランスポートまたはアクセスネットワーク接続に関する情報等）であり得る。
【００５６】
セッション状態は、ルート情報を含み得る。セッションルート情報は、ルート着信セッションメッセージをルーティングすべき次のホップのＥ２Ｅ  Ｍ２Ｍサービス層セッションエンドポイントまたはセッションマネージャを説明し得る。以下は、セッション状態として記憶され得る、ルート情報の形態である：Ｍ２ＭアプリケーションまたはＭ２Ｍサービス層インスタンスのセッション識別子、シングルホップＭ２Ｍサービス層セッション識別子、アプリケーションプロトコル識別子（例えば、ユニフォームリソース識別子（ＵＲＩ）、ユニフォームリソースロケータ（ＵＲＬ）、ユニフォームリソース名（ＵＲＮ）等）、トランスポート層セッション識別子（ＴＬＳセッション識別子）、ネットワーク層アドレス（例えば、ＩＰアドレス）、アクセスネットワーク識別子（例えば、国際モバイル加入者識別（ＩＭＳＩ）、モバイル加入者統合サービスデジタルネットワーク番号（ＭＳＩＳＤＮ）、媒体アクセス制御（ＭＡＣ）アドレス等）、または利用可能な基礎的ネットワークインターフェース、アクセスネットワーク接続／ベアラ、トランスポート層接続等のリスト。
【００５７】
セッション状態は、サービス層セッションを使用して行われる過去のサービス層トランザクションに関連するコンテキスト情報および／またはその履歴であり得る、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションコンテキスト／履歴を含み得る。実施例として、セッションエンドポイントにより目標にされるリソースのタイプ、数、レート、サイズ等を記録すること、またはアプリケーションが確立する異なるサービス層セッションを記録すること（例えば、レート、タイプ等）が挙げられる。
【００５８】
セッション状態はまた、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションマネージャまたはエンドポイントがＥ２Ｅ  Ｍ２Ｍサービス層セッションメッセージを生成または処理する方法に関するルールを定義する、セッションポリシーを含み得る。例えば、ポリシーは、サービス層ＱｏＳポリシールートポリシー、サービス層記憶し、転送するポリシー、サービス層アクセス制御ポリシー等を含み得る。ポリシーはまた、セッションマネージャがメッセージに関連付けられたデータを処理する方法を定義するために使用され得る（例えば、データが読み取り専用である場合、またはデータが他のデータと集約され得る場合等）。ポリシーはまた、セッションマネージャのためのサービス層ルートルールを定義するために使用され得る（例えば、いくつかのセッションは、セッションマネージャが、課金、セキュリティ、追跡／検査等の機能を行うことができるように、規定されたセッションマネージャを通してルーティングされなければならない）。
【００５９】
セッションマネージャ、セッションエンドポイント、またはセッション証明書機能のうちの１つ以上のものは、開示されるセッション状態を維持することができる。セッション状態は、サービス層セッションの設定、管理、および切断のために使用され得る。セッション状態は、動的に作成され得る。例えば、セッション識別子は、メッセージを特定のサービス層セッションと相関させるために、各メッセージ内に含まれ得る。セッションエンドポイントまたはセッションマネージャは、それらが送信または受信するメッセージに基づいて、セッション状態を作成および記憶し、セッション識別子に基づいて、この状態をインデックス付けし得る。例えば、サービス層セッションマネージャは、この状態を記憶し、それを将来的積極的または自律的サービス層決定に組み込み得、セッションルート決定、セッション記憶および転送決定、または以前の履歴、パターン、もしくは傾向に基づいたデータのプリフェッチング等の自律的サービス層アクション等を行う。
【００６０】
セッションエンドポイントは、セッションマネージャとのサービス層セッションを維持するために、セッション状態を記憶し得る。セッション状態はまた、セッションマネージャおよび／またはエンドポイント間で共有され得る。このセッション状態は、セッションエンドポイント自体によって維持されるか、またはウェブクッキーと同様の様式において、セッションマネージャによって維持され得る。例えば、セッション状態は、エンドポイントがサービス層セッションを使用している間、セッションマネージャによって、セッションエンドポイント上で更新／維持され得る。そうすることにおいて、セッションマネージャは、セッションエンドポイント上にセッション状態をＭ２Ｍセッションクッキーとして記憶し得る。セッションエンドポイントが、将来、セッションを使用するとき、この記憶されたＭ２Ｍセッションクッキーは、エンドポイントの以前のアクティビティの認識のために、セッションマネージャに送信されるか、またはセッションマネージャによって読み出され、セッションマネージャによって使用されることができる。Ｍ２Ｍセッションクッキーは、エンドポイントが過去に目標にした具体的リソース、リソースが目標にされたレート等のセッション状態を含むことができる。このＭ２Ｍセッションクッキーを使用して、セッションマネージャは、エンドポイントの以前のセッションアクティビティに基づいて、より効率的かつ積極的に、現在のセッショントランザクションを管理することができる。例えば、セッションマネージャは、それらが起動していることを確実にするために、事前にデバイスを積極的にトリガすること、事前にアクセスネットワークリソースを積極的に確保すること、事前にサービス層内にキャッシュ／バッファされるように、事前に目標リソースのプリフェッチングを行うこと等を行うことができる。開示されるＭ２Ｍセッションクッキー概念はまた、シングルホップＭ２Ｍサービス層セッションならびにＥ２Ｅ  Ｍ２Ｍサービス層セッションにも適用可能であり得ることに留意されたい。
【００６１】
図８は、セッションエンドポイント２６０のための機能アーキテクチャを図示する。図８に示されるように、セッションエンドポイント２６０は、以下のうちの１つ以上のものを含み得る：Ｅ２Ｅ  Ｍ２Ｍセッション証明書ブートストラッピング機能２６１、Ｅ２Ｅ
Ｍ２Ｍセッションコンテキストおよび履歴機能２６２、Ｅ２Ｅ  Ｍ２Ｍセッション確立および切断機能２６４、Ｅ２Ｅ  Ｍ２Ｍセッションポリシー機能２６５、Ｅ２Ｅ  Ｍ２Ｍセッション構成および発見機能２６６、Ｅ２Ｅ  Ｍ２Ｍセッションデータ管理機能２６３、およびＥ２Ｅ  Ｍ２Ｍセッション状態２６７。セッションエンドポイント２６０は、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション通信（サービス層セッション通信）のソースまたはシンクであり得る、論理的エンティティと見なされ得る。一般に、セッションエンドポイント２６０は、図５に示されるサービス層セッションマネージャの同一機能の多くを有する。しかしながら、図８のセッションエンドポイント２６０の場合、これらの機能は、特に、サーモスタット等のリソース制約デバイス上に常駐するセッションエンドポイントのために、効率化され、より限定された組の機能性をサポートし得る。
【００６２】
図８を継続して参照すると、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションエンドポイント証明書ブートストラッピング機能２６１（セッションエンドポイント証明書ブートストラッピング機能）は、セッションマネージャへのＥ２Ｅ  Ｍ２Ｍサービス層セッションブートストラップ要求の開始、およびセッション証明書を含む対応する応答の受信をサポートする。この機能性は、１つ以上の目標セッションエンドポイントとサービス層セッションを確立しようとしているサービス層セッションエンドポイントによって使用される。本開示される機能はまた、セッションエンドポイント２６０が別のエンドポイントによって開始されたセッションの目標であるとき、セッションマネージャからのセッション証明書を含むブートストラップ構成要求の受信をサポートする。
【００６３】
Ｅ２Ｅ  Ｍ２Ｍサービス層セッションエンドポイント確立および切断機能２６４（セッションエンドポイント確立機能）は、セッションマネージャへのセッションエンドポイント確立要求の開始をサポートする。この機能はまた、セッションエンドポイント２６０がセッション確立または切断の目標であるとき、セッションマネージャからのセッション確立要求の受信をサポートする。
【００６４】
Ｅ２Ｅ  Ｍ２Ｍサービス層セッションエンドポイントコンテキストおよび履歴機能２６２（セッションエンドポイントコンテキスト機能）は、前述のように、セッションマネージャによってサポートされる対応する機能と同様に、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションコンテキストおよび履歴情報の収集、解釈、および処理をサポートする。ここでは、セッションエンドポイント２６０は、ルートおよびアクセスネットワーク接続に関するコンテキストをサポートしないこともある。これらのタイプのコンテキストは、セッションマネージャにより好適であり得る。
【００６５】
図８のＥ２Ｅ  Ｍ２Ｍサービス層セッションエンドポイントポリシー機能２６５（セッションエンドポイントポリシー機能）は、本明細書でセッションマネージャに関して説明されるように、セッションマネージャによってサポートされる対応する機能と同様に、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションポリシーの収集、解釈、および処理をサポートする。ここでは、セッションエンドポイント２６０は、ルート、記憶および転送、プリフェッチング、およびアクセスネットワーク接続に関するポリシーをサポートしないこともある。これらのタイプのコンテキストは、セッションマネージャにより好適であり得る。Ｅ２Ｅ
Ｍ２Ｍサービス層セッションエンドポイント構成および発見機能２６６（セッションエンドポイント構成）は、本明細書に説明されるように、セッションマネージャによってサポートされる対応する機能と同様に、サービス層セッション属性およびパラメータのための構成および発見能力をサポートする。Ｅ２Ｅ  Ｍ２Ｍセッションエンドポイントデータ管理機能２６３（セッションエンドポイントデータ管理機能）は、セッションエンドポイント２６０によって処理される、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションメッセージ内に含まれるデータの管理をサポートする。特に、この機能は、セッション証明書を使用して、サービス層セッションデータの暗号化または復号化をサポートし得る。
【００６６】
本明細書に定義されるＥ２Ｅ  Ｍ２Ｍサービス層セッションインターフェースメッセージは、伝送制御プロトコル（ＴＣＰ）および／またはトランスポート層セキュリティ（ＴＬＳ）セッション、ユーザデータグラムプロトコル（ＵＤＰ）／データグラムＴＬＳ（ＤＴＬＳ）、ハイパーテキスト転送プロトコル（ＨＴＴＰ）、制約アプリケーションプロトコル（ＣｏＡＰ）等のいくつかの下層既存プロトコルの上に結合または層化（すなわち、その中にカプセル化）され得る。そうすることにおいて、セッション状態は、異なるセッション間で共有および利用されることができる（例えば、セキュリティ証明書、輻輳情報等）。加えて、サービス層セッションは、サービス層セッションが、より下層のセッションが設定および切断されることから独立して持続し、維持され得るように、より下層のセッションに関する持続性をサポートすることができる。一例示的実施形態として、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション制御メッセージは、ＪＳＯＮまたはＸＭＬ表現としてエンコードされ、ＨＴＴＰまたはＣｏＡＰメッセージのペイロード内で搬送されることができる。これらのＨＴＴＰおよびＣｏＡＰメッセージは、順に、それぞれ、下層ＴＣＰ／ＴＬＳおよびＵＤＰ／ＤＴＬＳメッセージによってカプセル化および搬送されることができる。
【００６７】
以下の図９−図２４は、ｏｎｅＭ２Ｍおよび他のアーキテクチャに適用され得る、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションに関する詳細を提供する。追加のコンテキストのために、ｏｎｅＭ２Ｍ  ＲＥＳＴｆｕｌアーキテクチャに従って、能力サービス機能（ＣＳＦ）は、一組の「リソース」として表される。リソースは、アーキテクチャ内の一意にアドレス指定可能なエンティティである。リソースは、作成、読み出し、更新、および削除等のＲＥＳＴｆｕｌ方法を介して操作され、ユニバーサルリソース識別子（ＵＲＩ）を使用してアドレス指定され得る表現を有する。リソースは、子リソースおよび属性を含み得る。子リソースは、親リソースと包含関係を有するリソースである。親リソース表現は、その子リソースへの参照を含む。子リソースの有効期間は、親のリソース有効期間によって限定される。各リソースは、リソースの情報を記憶する一組の「属性」をサポートする。
【００６８】
図９は、セッションマネージャのｏｎｅＭ２Ｍ実施形態を図示する。ｏｎｅＭ２Ｍは、ｏｎｅＭ２Ｍサービス層によってサポートされる能力の定義を有する。これらの能力は、ＣＳＦ２７０等の能力サービス機能（ＣＳＦ）と称され得る。ｏｎｅＭ２Ｍサービス層は、ＣＳＥ２７１等の能力サービスエンティティ（ＣＳＥ）と称される。ＣＳＥの現在のバージョンは、セッション管理（ＳＭＧ）ＣＳＦのためのプレースホルダを有する。しかしながら、この機能の詳細は、まだ定義されていない。ある実施形態では、セッションマネージャは、ｏｎｅＭ２Ｍ  ＳＭＧ  ＣＳＦ２７２としての役割を果たし得る。ＳＭＧ  ＣＳＦ２７２は、Ｍ２Ｍアプリケーション間、Ｍ２ＭアプリケーションとＣＳＥとの間、またはＣＳＥ間のサービス層セッションを管理し得る。ＡＥは、基準点Ｘを介して、ＣＳＥに接続する一方、ＣＳＥは、基準点Ｙを介して、他のＣＳＥに接続する。
【００６９】
図１０Ａおよび図１０Ｂは、以下により詳細に定義される、リソースをサポートするｏｎｅＭ２Ｍセッション管理（ＳＭＧ）サービスのためのＥ２Ｅ  Ｍ２Ｍサービス層セッション確立プロシージャを図示する。プロシージャは、以下であり得る（必ずしも、順番通り示されない）。図１０Ａに示されるように、ステップ３１０において、ＣＳＥ３０６およびＣＳＥ３０４は、互に登録し、Ｅ２Ｅ  Ｍ２Ｍサービスセッション管理（セッション管理またはＳＭＧ）能力を互に交換する。ステップ３１１において、ＡＥ３０８およびＡＥ３０２は、それぞれ、ＣＳＥ３０６およびＣＳＥ３０４に登録し、Ｅ２Ｅ  Ｍ２Ｍセッションベースの通信（すなわち、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション）をサポートすることを広告する。ｏｎｅＭ２Ｍは、アプリケーションエンティティ（ＡＥ）を、Ｍ２Ｍアプリケーション機能をホストするネットワークノード（例えば、Ｍ２Ｍデバイス）として定義する。ステップ３１２において、ＡＥ３０２は、ＣＳＥ３０４上にホストされるセッションコレクションリソースに加入する。加入要求内に含まれるのは、通知が送信され得る、コールバックユニフォームリソース識別子（ＵＲＩ）であり得る。これは、Ｍ２Ｍサービスセッション確立要求がＣＳＥ３０４によって受信されるとき、ＡＥ３０２が通知を受信するために行なわれ得る。これは、ＣＲＥＡＴＥ（作成）要求を介して行われ得る。
【００７０】
図１０Ａを継続して参照すると、ステップ３１３において、ＣＳＥ３０４は、ＡＥ３０２のためのセッションリソースへの加入を作成する。ステップ３１４において、ＣＳＥ３０４は、加入ＣＲＥＡＴＥ要求への正の応答を返す。ステップ３１５において、ＡＥ３０８は、ＡＥ３０２、およびＥ２Ｅ  Ｍ２Ｍセッションベースの通信（すなわち、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション）をサポートするためのＡＥ３０２の能力を発見する。ステップ３１５は、ＣＳＥ３０６またはＣＳＥ３０４によってサービスを提供されるリソース発見要求に基づき得る。発見結果は、ＡＥ３０８がＡＥ３０２とのＥ２Ｅ  Ｍ２Ｍセッションを確立するために使用し得る、ＡＥ３０２のためのＭ２Ｍ識別子（例えば、アプリケーションＩＤ、ノードＩＤ等）等の情報を含み得る。ステップ３１６において、ＡＥ３０８は、ＡＥ３０２識別子情報ならびにセッションを確立するためにＳＭＧ  ＣＳＦによって使用されるＡＥ３０８情報を含む、＜ｓｅｓｓｉｏｎ＞リソースＣＲＥＡＴＥ要求をＣＳＥ３０６に送信することによって、ＡＥ３０２とＥ２Ｅ  Ｍ２Ｍセッションを確立することを要求する。ステップ３１７において、ＣＳＥ３０６は、一意のＥ２Ｅセッション識別子およびセッション証明書を配分する。セッション識別子は、セッションを識別する一方、セッション証明書は、識別されたセッションを認証し、それに参加するための権限を与えるために使用される。ステップ３１８において、ＣＳＥ３０６は、ステップ３１６のセッション確立要求を次のホップ（本実施例では、ＣＳＥ３０４である）に転送する。セッション識別子およびセッション証明書は、この転送された要求内に含まれ得る。ステップ３１９において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、ＡＥ３０２を目標にするＭ２Ｍサービスセッション確立要求を受信し、処理する。
【００７１】
図１０Ｂにおいて継続されるように、ステップ３２０において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、Ｍ２Ｍサービスセッション確立要求の通知をＡＥ３０２に送信する。ＣＳＥ３０４は、セッション識別子および証明書、ならびに、ＡＥ３０８セッション情報（とりわけ、ＡＥ３０８のＭ２Ｍ識別子等）を通知内に含む。この情報は、ＣＳＥ３０４およびＣＳＥ３０６上のＳＭＧ  ＣＳＦを介して、ＡＥ３０８へまたはそこからセッションベースのメッセージを送信または受信するために、ＡＥ３０２によって後に使用され得る。ステップ３２１において、ＡＥ３０２は、ＡＥ３０８とのＭ２Ｍサービスセッション（すなわち、前述のＥ２Ｅ  Ｍ２Ｍサービス層セッション）に入ることに関心があり、その意向があることを示す通知要求への正の応答を返す。応答内に含まれるのは、ＡＥ３０２によって規定されたセッション確立情報（例えば、ＡＥ３０２のＭ２Ｍ識別子、セッションを介してアクセス可能にすることを所望するリソース等）であり得る。ステップ３２２において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、ＡＥ３０８およびＡＥ３０２の両方のために、セッション情報（例えば、セッションＩＤ、エンドポイント識別子等）を記憶する、Ｍ２Ｍサービス＜ｓｅｓｓｉｏｎ＞リソースおよび＜ｓｅｓｓｉｏｎＥｎｄｐｏｉｎｔｓ＞リソースを作成する。加えて、＜ｎｅｘｔＨｏｐ＞リソースもまた、ＣＳＥ３０６のために作成される。
【００７２】
図１０Ｂを継続して参照すると、ステップ３２３において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、ＣＳＥ３０６上のＳＭＧ  ＣＳＦに、Ｍ２Ｍサービスセッション確立作成要求への正の応答を返す。ステップ３２４において、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、ＡＥ３０８およびＡＥ３０２の両方のために、セッション情報（例えば、セッションＩＤ、エンドポイント識別子等）を記憶する、Ｍ２Ｍ＜ｓｅｓｓｉｏｎ＞リソースおよび＜ｓｅｓｓｉｏｎＥｎｄｐｏｉｎｔ＞リソースを作成する。加えて、＜ｎｅｘｔＨｏｐ＞リソースもまた、ＣＳＥ３０４のために作成される。ステップ３２５において、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、ステップ３１６のＭ２Ｍサービスセッション確立ＣＲＥＡＴＥ要求への正の応答をＡＥ３０８に返す。応答は、とりわけ、セッションＩＤおよび証明書等のセッション情報を含み得る。ステップ３２６において、ＡＥ３０８は、ＡＥ３０８がセッションのために要求する所望のレベルのＱｏＳをサポートするためにセッションポリシーを作成するための要求をＣＳＥ３０６に送信する（例えば、ＱｏＳは、メッセージが記憶され、転送されるべきでないことであり得る）。ステップ３２７において、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、要求をＣＳＥ３０４上の次のホップのＳＭＧ  ＣＳＦに転送する。ステップ３２８において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、＜ｓｅｓｓｉｏｎＰｏｌｉｃｙ＞リソースを作成する。ステップ３２９において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、正の応答をＣＳＥ３０６上のＳＭＧ  ＣＳＦに返す。ステップ３３０において、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、＜ｓｅｓｓｉｏｎＰｏｌｉｃｙ＞リソースを作成する。ステップ３３１において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、正の応答をＡＥ３０８に返す。
【００７３】
図１１Ａおよび図１１Ｂは、以下により詳細に定義される、リソースをサポートするｏｎｅＭ２Ｍ  ＳＭＧサービスのためのセッション使用プロシージャを図示する。ステップ３４０において、ＡＥ３０８は、ＣＳＥ３０４上にホストされるＡＥ３０２コンテナリソースを更新するためのサービスセッションベースの要求をＣＳＥ３０６に送信する。ステップ３４１において、ＣＳＥ３０６は、ステップ３４０の要求がサービスセッションベースであることを検出し、それを処理するためにＳＭＧ  ＣＳＦにパスする。ステップ３４２において、セッションＩＤに基づいて、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、受信されたＵＲＩが有効セッションエンドポイント（ＡＥ３０２のコンテナ１リソース）を目標にしていることを検証する。ステップ３４３において、目標セッションエンドポイント（すなわち、ＡＥ３０２）に基づいて、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、次のホップがＣＳＥ３０４であることを決定する。ステップ３４４において、セッションＩＤおよび目標セッションエンドポイント（すなわち、ＡＥ３０２）に基づいて、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、記憶し、転送するスケジューリングポリシーを定義するセッションポリシーを見つける。ステップ３４５において、ポリシーに基づいて、ＣＳＥ３０６は、オフピーク時間まで要求を記憶し、次いで、オフピーク時間の間にそれをＣＳＥ３０４に転送する。ステップ３４６において、ＣＳＥ３０６は、要求をＣＳＥ３０４に転送する。ステップ３４７において、ＣＳＥ３０４は、要求がセッションベースであることを検出し、処理するためにそれをＳＭＧ  ＣＳＦにパスする。ステップ３４８において、セッションＩＤに基づいて、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、受信されたＵＲＩが有効セッションエンドポイント（ＡＥ３０２のコンテナ１リソース）を目標にしていることを検証する。ステップ３４９において、目標セッションエンドポイントに基づいて、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、要求がローカルＡＥ３０２コンテナリソースを目標にしていることを決定する。ステップ３５０において、セッションＩＤおよび目標セッションエンドポイントに基づいて、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、即時応答を要求するセッションポリシーを見つける。ステップ３５１において、ポリシーに基づいて、ＣＳＥ３０４は、要求にサービスを提供し、応答を返す。ステップ３５２において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、セッションコンテキストを作成し、セッション要求／応答履歴を記録する。
【００７４】
図１１Ｂに継続されるように、ステップ３５３において、ＣＳＥ３０４は、応答をＣＳＥ３０６に送信する。ステップ３５４において、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、セッションコンテキストを作成し、セッション要求／応答履歴を記録する。ステップ３５５において、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、応答をＡＥ３０８に送信する。ステップ３５６において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、コンテナが更新されたことのセッションエンドポイント（ＡＥ３０２）への通知を準備する。ステップ３５７において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、コンテナ１リソースがセッションの一部として更新されたことの通知をＡＥ３０２に送信する。ステップ３５８において、ＡＥ３０２は、通知を受信したことの正の応答で応答する。ステップ３５９において、ＡＥ３０２は、更新されたコンテナリソースを読み出すためのセッションベースの読み出し要求をＣＳＥ３０４に送信する。ステップ３６０において、ＣＳＥ３０４は、ステップ３５９の要求がセッションベースであることを検出し、処理するためにそれをＳＭＧ  ＣＳＦに送信する。ステップ３６１において、セッションＩＤに基づいて、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、ＵＲＩが有効セッションエンドポイント（ＡＥ３０２のコンテナ１リソース）を目標にしていることを検証する。ステップ３６２において、目標セッションエンドポイントに基づいて、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、要求がローカルＡＥ３０２コンテナ１リソースを目標にしていることを決定する。ステップ３６３において、セッションＩＤおよび目標セッションエンドポイントに基づいて、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、即時応答を要求するセッションポリシーを見つける。ステップ３６４において、ポリシーに基づいて、ＣＳＥは、要求にサービスを提供し、即時応答を返す。ステップ３６５において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、セッションコンテキストを作成し、セッション要求または応答履歴を記録する。ステップ３６６において、ＣＳＥ３０４は、応答をＡＥ３０２に返す。
【００７５】
図１２は、以下に定義されるリソースをサポートするｏｎｅＭ２Ｍ  ＳＭＧサービスのための例示的Ｅ２Ｅ  Ｍ２Ｍセッション終了プロシージャを図示する。本実施例では、セッション終了は、セッションイニシエータ（ＡＥ３０８）によって引き起こされる。図１２には図示されないが、セッション終了はまた、他のセッションエンドポイント、ＳＭＧ
ＣＳＦ自体、およびそれを行うための適切な管理権利を有する他のＣＳＦによって引き起こされ得る。ステップ３７０において、ＡＥ３０８は、ＤＥＬＥＴＥ（削除）を使用して、Ｅ２Ｅ  Ｍ２Ｍセッション終了要求をＣＳＥ３０６に送信する。
【００７６】
ステップ３７１において、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、要求を処理し、これらのＣＳＥ上のセッション状態が切断され得るように、セッション終了要求を転送する必要がある他のＣＳＥ上の次のホップＳＭＧ  ＣＳＦを決定する。本実施例では、ＣＳＥ３０４上のＳＭＧ  ＣＳＦが、検出される次のホップである。ステップ３７２において、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、セッション終了要求をＣＳＥ３０４上のＳＭＧ  ＣＳＦに転送する。ステップ３７３において、ＣＳＥ３０４上のＣＳＦは、セッションエンドポイント（すなわち、ＡＥ３０２）にセッションが終了されていることを通知する。ステップ３７４において、ＡＥ３０２は、通知を処理し、ローカルに記憶されたＭ２Ｍセッション状態を削除する。ステップ３７５において、ＡＥ３０２は、正の応答を通知要求に返し、そのローカルＭ２Ｍセッション状態を除去したことを示す。ステップ３７６において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、そのローカルにホストされた＜ｓｅｓｓｉｏｎ＞リソースおよび全ての子リソースを削除する。ＳＭＧ  ＣＳＦはまた、セッションに配分されたセキュリティ証明書および識別子等の任意のローカルセッション状態を削除する。ステップ３７７において、ＣＳＥ３０４上のＳＭＧ  ＣＳＦは、正の応答をＣＳＥ３０６上のＳＭＧ  ＣＳＦへのセッション終了削除要求に返す。ステップ３７８において、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、そのローカルにホストされた＜ｓｅｓｓｉｏｎ＞リソースおよび全ての子リソースを削除する。ＳＭＧ  ＣＳＦはまた、セッションに配分されたセキュリティ証明書および識別子等の任意のローカルセッション状態を削除する。ステップ３７９において、ＣＳＥ３０６上のＳＭＧ  ＣＳＦは、Ｍ２Ｍサービスセッション終了ＤＥＬＥＴＥ要求への正の応答をＡＥ３０８に返す。ステップ３８０において、ＡＥ３０８は、記憶されたＭ２Ｍセッション状態を削除する。
【００７７】
図１０Ａ、図１０Ｂ、図１１Ａ、図１１Ｂ、および図１２に図示されるステップを行うエンティティは、図２５Ｃまたは図２５Ｄに図示されるもの等のデバイス、サーバ、またはコンピュータシステムのメモリ内に記憶され、そのプロセッサ上で実行する、ソフトウェア（すなわち、コンピュータ実行可能命令）の形態で実装され得る、論理的エンティティであることを理解されたい。すなわち、図１０Ａ、図１０Ｂ、図１１Ａ、図１１Ｂ、および図１２に図示される方法は、コンピューティングデバイスのプロセッサによって実行されると、図１０Ａ、図１０Ｂ、図１１Ａ、図１１Ｂ、および図１２に図示されるステップを行う、コンピュータ実行可能命令である、図２５Ｃまたは図２５Ｄに図示されるデバイスまたはコンピュータシステム等のコンピューティングデバイスのメモリ内に記憶される、ソフトウェア（すなわち、コンピュータ実行可能命令）の形態で実装され得る。
【００７８】
以下に開示されるのは、本明細書で論じられるプロシージャにおいて使用され得る、ＳＭＧ  ＣＳＦのためのリソース構造（例えば、図１４）である。本明細書で論じられるリソース図の理解を補助するために、リソース構造を説明するためのｏｎｅＭ２Ｍ定義グラフィカル表現は、以下である。１）正方形ボックスは、リソースおよび子リソースのために使用され得、２）丸角を伴う正方形ボックスは、属性のために使用され得、３）直角を伴わない平行四辺形（例えば、菱形）は、リソースのコレクションのために使用され得、４）各属性および子リソースの多様性が、定義され、５）「＜」および「＞」で範囲を定められるリソース名は、リソースの作成の間に割り当てられる名称を示す。
【００７９】
「セッション」リソースは、図１３に示されるように、１つ以上の＜ｓｅｓｓｉｏｎ＞リソースのコレクションを表すことができる。代替として、＜ｓｅｓｓｉｏｎ＞リソースは、独立して（すなわち、セッションコレクションリソース外で）インスタンス化されることができる。このセッションリソースは、ｏｎｅＭ２Ｍ  ＣＳＥリソースツリー階層における種々のレベルでインスタンス化されることができる。インスタンス化のレベルは、Ｍ２Ｍセッションのタイプを示すことができる。同様に、Ｍ２Ｍアプリケーション間またはＭ２ＭアプリケーションとＣＳＥとの間のＭ２Ｍセッションは、図１４に示されるように、アプリケーションリソース下でインスタンス化されることができる。例えば、複数のＣＳＥ間の、Ｍ２Ｍセッションは、図１５に示されるように、ＣＳＥのベースＵＲＩ下でインスタンス化され得る。セッションリソースは、表１におけるその多様性に従って、子リソースを含み得る。本リソースは、表２におけるその多様性に従って、属性を含むことができる。
【００８０】
【表１】
2018110452.tif 000003
【００８１】
【表２】
2018110452.tif 000004
＜ｓｅｓｓｉｏｎ＞リソースは、図１６に示されるように、特定のＭ２Ｍサービスセッションを管理するために、ＳＭＧ  ＣＳＦによって使用される情報を含むことができる。本リソースは、表３におけるその多様性に従って、子リソースを含むことができる。本リソースは、表４におけるその多様性に従って、属性を含むことができる。
【００８２】
【表３】
2018110452.tif 000005
【００８３】
【表４】
2018110452.tif 000006
セッションエンドポイントリソースは、図１７に示されるように、＜ｓｅｓｓｉｏｎＥｎｄｐｏｉｎｔｓ＞リソースのコレクションを表すことができる。本リソースは、表５におけるその多様性に従って、子リソースを含むことができる。本リソースは、表６におけるその多様性に従って、属性を含むことができる。
【００８４】
【表５】
2018110452.tif 000007
【００８５】
【表６】
2018110452.tif 000008
＜ｓｅｓｓｉｏｎＥｎｄｐｏｉｎｔ＞リソースは、図１８に示されるように、特定のＭ２Ｍサービスセッションエンドポイントに適用可能である属性および子リソースを含むことができる。本リソースは、表７におけるその多様性に従って、子リソースを含むことができる。本リソースは、表８におけるその多様性に従って、属性を含むことができる。
【００８６】
【表７】
2018110452.tif 000009
【００８７】
【表８】
2018110452.tif 000010
ｎｅｘｔＨｏｐｓリソースは、図１９に示されるように、＜ｎｅｘｔＨｏｐ＞リソースのコレクションを表すことができる。本リソースは、表９におけるその多様性に従って、子リソースを含むことができる。本リソースは、表１０におけるその多様性に従って、属性を含むことができる。
【００８８】
【表９】
2018110452.tif 000011
【００８９】
【表１０】
2018110452.tif 000012
＜ｎｅｘｔＨｏｐ＞リソースは、図２０に示されるように、Ｍ２Ｍセッションがセッションエンドポイント間の複数のＣＳＥホップから成るとき、ＳＭＧ  ＣＳＦが特定のセッションエンドポイントのためのメッセージを転送する、次のホップＣＳＥに関する情報を含むことができる。本リソースは、セッションベースの要求が所与のセッションおよび／またはセッションエンドポイントのために転送される次のホップＣＳＥの状態を維持するためにＳＭＧ  ＣＳＦによって使用されることができる。この情報を維持することは、複数のＣＳＥにわたって及ぶマルチホップＭ２Ｍセッションの切断ならびに異なるＣＳＥ上にホストされたＳＭＧ  ＣＳＦ間の協働のような動作のために有用であり得る。本リソースは、表１１におけるその多様性に従って、属性を含むことができる。
【００９０】
【表１１】
2018110452.tif 000013
セッションポリシーリソースは、図２１に示されるように、＜ｓｅｓｓｉｏｎＰｏｌｉｃｙ＞リソースのコレクションを表すことができる。本リソースは、表１２におけるその多様性に従って、子リソースを含むことができる。本リソースは、表１３におけるその多様性に従って、属性を含むことができる。
【００９１】
【表１２】
2018110452.tif 000014
【００９２】
【表１３】
2018110452.tif 000015
＜ｓｅｓｓｉｏｎＰｏｌｉｃｙ＞リソースは、図２２に示されるように、特定のＭ２Ｍサービスセッションポリシーに適用可能である属性を含むことができる。本リソースは、表１４におけるその多様性に従って、属性を含むことができる。
【００９３】
【表１４】
2018110452.tif 000016
セッションコンテキストリソースは、図２３に示されるように、＜ｓｅｓｓｉｏｎＣｏｎｔｅｘｔＩｎｓｔａｎｃｅ＞リソースのコレクションを表すことができる。本リソースは、表１５におけるその多様性に従って、子リソースを含むことができる。本リソースは、表１６におけるその多様性に従って、属性を含むことができる。
【００９４】
【表１５】
2018110452.tif 000017
【００９５】
【表１６】
2018110452.tif 000018
＜ｓｅｓｓｉｏｎＣｏｎｔｅｘｔＩｎｓｔａｎｃｅ＞リソースは、図２４に示されるように、特定のタイプのＭ２Ｍサービスセッションコンテキストに適用可能である属性を含むことができる。本リソースは、表１７におけるその多様性に従って、属性を含むことができる。
【００９６】
【表１７】
2018110452.tif 000019
本明細書に記載される実施形態は、表象状態転送（ＲＥＳＴ）アーキテクチャの観点から説明され、説明される構成要素およびエンティティは、ＲＥＳＴアーキテクチャ（ＲＥＳＴｆｕｌアーキテクチャ）の制約に準拠する。ＲＥＳＴｆｕｌアーキテクチャは、使用される物理的構成要素実装または通信プロトコルの観点からではなく、アーキテクチャにおいて使用される構成要素、エンティティ、コネクタ、およびデータ要素に適用される制約の観点から説明される。したがって、構成要素、エンティティ、コネクタ、およびデータ要素の役割および機能が、説明されるであろう。ＲＥＳＴｆｕｌアーキテクチャでは、一意のアドレス指定可能リソースの表現が、エンティティ間において転送される。ＲＥＳＴｆｕｌアーキテクチャにおいてリソースを取り扱うとき、作成（子リソースを作成する）、読み出し（リソースのコンテンツを読み取る）、更新（リソースのコンテンツを書き込む）、または削除（リソースを削除する）等、リソースに適用され得る基本方法が存在する。当業者は、本実施形態の実装が、本開示の範囲内に留まりながら、変動し得ることを認識するであろう。当業者はまた、開示される実施形態が、例示的実施形態を説明するために本明細書で使用されるｏｎｅＭ２Ｍを使用する実装に限定されないことを認識するであろう。開示される実施形態は、ＥＴＳＩ  Ｍ２Ｍ、およびＯＭＡ  ＬＷＭ２Ｍ、ならびに他の関連Ｍ２Ｍシステムおよびアーキテクチャ等のアーキテクチャおよびシステム内に実装され得る。
【００９７】
図２５Ａは、１つ以上の開示された実施形態が実装され得る、例示的マシンツーマシン（Ｍ２Ｍ）、モノのインターネット（ＩｏＴ）、またはモノのウェブ（ＷｏＴ）通信システム１０の略図である。概して、Ｍ２Ｍ技術は、ＩｏＴ／ＷｏＴのための構成要素を提供し、任意のＭ２Ｍデバイス、Ｍ２Ｍゲートウェイ、またはＭ２Ｍサービスプラットフォームは、ＩｏＴ／ＷｏＴの構成要素ならびにＩｏＴ／ＷｏＴサービス層等であり得る。
【００９８】
図２５Ａに示されるように、Ｍ２Ｍ／ＩｏＴ／ＷｏＴ通信システム１０は、通信ネットワーク１２を含む。通信ネットワーク１２は、固定ネットワーク（例えば、イーサネット（登録商標）、ファイバ、ＩＳＤＮ、ＰＬＣ等）または無線ネットワーク（例えば、ＷＬＡＮ、セルラー等）、あるいは異種ネットワークのネットワークであり得る。例えば、通信ネットワーク１２は、音声、データ、ビデオ、メッセージング、ブロードキャスト等のコンテンツを複数のユーザに提供する、複数のアクセスネットワークから成り得る。例えば、通信ネットワーク１２は、符号分割多重アクセス（ＣＤＭＡ）、時分割多重アクセス（ＴＤＭＡ）、周波数分割多重アクセス（ＦＤＭＡ）、直交ＦＤＭＡ（ＯＦＤＭＡ）、単一キャリアＦＤＭＡ（ＳＣ−ＦＤＭＡ）等の１つ以上のチャネルアクセス方法を採用し得る。さらに、通信ネットワーク１２は、例えば、コアネットワーク、インターネット、センサネットワーク、工業制御ネットワーク、パーソナルエリアネットワーク、融合個人ネットワーク、衛星ネットワーク、ホームネットワーク、または企業ネットワーク等の他のネットワークを備え得る。
【００９９】
図２５Ａに示されるように、Ｍ２Ｍ／ＩｏＴ／ＷｏＴ通信システム１０は、インフラストラクチャドメインおよびフィールドドメインを含み得る。インフラストラクチャドメインは、エンドツーエンドＭ２Ｍ展開のネットワーク側を指し、フィールドドメインは、通常はＭ２Ｍゲートウェイの背後にあるエリアネットワークを指す。フィールドドメインは、Ｍ２Ｍゲートウェイ１４と、端末デバイス１８とを含む。任意の数のＭ２Ｍゲートウェイデバイス１４およびＭ２Ｍ端末デバイス１８が、所望に応じてＭ２Ｍ／ＩｏＴ／ＷｏＴ通信システム１０に含まれ得ることが理解されるであろう。Ｍ２Ｍゲートウェイデバイス１４およびＭ２Ｍ端末デバイス１８の各々は、通信ネットワーク１２または直接無線リンクを介して、信号を伝送および受信するように構成される。Ｍ２Ｍゲートウェイデバイス１４は、無線Ｍ２Ｍデバイス（例えば、セルラーおよび非セルラー）ならびに固定ネットワークＭ２Ｍデバイス（例えば、ＰＬＣ）が、通信ネットワーク１２等のオペレータネットワークを通して、または直接無線リンクを通してのいずれかで、通信することを可能にする。例えば、Ｍ２Ｍデバイス１８は、データを収集し、通信ネットワーク１２または直接無線リンクを介して、データをＭ２Ｍアプリケーション２０またはＭ２Ｍデバイス１８に送信し得る。Ｍ２Ｍデバイス１８はまた、Ｍ２Ｍアプリケーション２０またはＭ２Ｍデバイス１８からデータを受信し得る。さらに、データおよび信号は、以下で説明されるように、Ｍ２Ｍサービス層２２を介して、Ｍ２Ｍアプリケーション２０に送信され、そこから受信され得る。Ｍ２Ｍデバイス１８およびゲートウェイ１４は、例えば、セルラー、ＷＬＡＮ、ＷＰＡＮ（例えば、Ｚｉｇｂｅｅ（登録商標）、６ＬｏＷＰＡＮ、Ｂｌｕｅｔｏｏｔｈ（登録商標））、直接無線リンク、および有線を含む、種々のネットワークを介して通信し得る。
【０１００】
図２５Ｂを参照すると、フィールドドメイン内の図示したＭ２Ｍサービス層２２は、Ｍ２Ｍアプリケーション２０、Ｍ２Ｍゲートウェイデバイス１４、Ｍ２Ｍ端末デバイス１８、および通信ネットワーク１２のためのサービスを提供する。Ｍ２Ｍサービス層２２は、所望に応じて、任意の数のＭ２Ｍアプリケーション、Ｍ２Ｍゲートウェイデバイス１４、Ｍ２Ｍ端末デバイス１８、および通信ネットワーク１２と通信し得ることが理解されるであろう。Ｍ２Ｍサービス層２２は、１つ以上のサーバ、コンピュータ等によって実装され得る。Ｍ２Ｍサービス層２２は、１つ以上のサーバ、コンピュータ等によって実装され得る。Ｍ２Ｍサービス層２２は、Ｍ２Ｍ端末デバイス１８、Ｍ２Ｍゲートウェイデバイス１４、およびＭ２Ｍアプリケーション２０に適用される、サービス能力を提供する。Ｍ２Ｍサービス層２２の機能は、例えば、ウェブサーバとして、セルラーコアネットワークで、クラウドで等、種々の方法で実装され得る。
【０１０１】
図示したＭ２Ｍサービス層２２と同様に、インフラストラクチャドメイン内にＭ２Ｍサービス層２２’が存在する。Ｍ２Ｍサービス層２２’は、インフラストラクチャドメイン内のＭ２Ｍアプリケーション２０’および基礎的通信ネットワーク１２’のためのサービスを提供する。Ｍ２Ｍサービス層２２’はまた、フィールドドメイン内のＭ２Ｍゲートウェイデバイス１４およびＭ２Ｍ端末デバイス１８のためのサービスも提供する。Ｍ２Ｍサービス層２２’は、任意の数のＭ２Ｍアプリケーション、Ｍ２Ｍゲートウェイデバイス、およびＭ２Ｍ端末デバイスと通信し得ることが理解されるであろう。Ｍ２Ｍサービス層２２’は、異なるサービスプロバイダによるサービス層と相互作用し得る。Ｍ２Ｍサービス層２２’は、１つ以上のサーバ、コンピュータ、仮想マシン（例えば、クラウド／計算／記憶ファーム等）等によって実装され得る。
【０１０２】
また、図２５Ｂを参照すると、Ｍ２Ｍサービス層２２および２２’は、多様なアプリケーションおよび垂直線が活用することができる、サービス配布能力のコアセットを提供する。これらのサービス能力は、Ｍ２Ｍアプリケーション２０および２０’がデバイスと相互作用し、データ収集、データ分析、デバイス管理、セキュリティ、課金、サービス／デバイス発見等の機能を果たすことを可能にする。本質的に、これらのサービス能力は、これらの機能性を実装する負担をアプリケーションから取り除き、したがって、アプリケーション開発を単純化し、市場に出す費用および時間を削減する。サービス層２２および２２’はまた、Ｍ２Ｍアプリケーション２０および２０’が、サービス層２２および２２’が提供するサービスと関連して、種々のネットワーク１２および１２’を通して通信することも可能にする。
【０１０３】
いくつかの実施形態では、Ｍ２Ｍアプリケーション２０および２０’は、本明細書に論じられるように、セッション証明書を使用して通信する所望のアプリケーションを含み得る。Ｍ２Ｍアプリケーション２０および２０’は、限定ではないが、輸送、健康およびウェルネス、コネクテッドホーム、エネルギー管理、資産追跡、ならびにセキュリティおよび監視等、種々の産業におけるアプリケーションを含み得る。前述のように、デバイス、ゲートウェイ、および他のシステムのサーバにわたって起動するＭ２Ｍサービス層は、例えば、データ収集、デバイス管理、セキュリティ、課金、場所追跡／ジオフェンシング、デバイス／サービスの発見、および従来のシステムの統合等の機能をサポートし、サービスとしてのこれらの機能に、Ｍ２Ｍアプリケーション２０および２０’を提供する。
【０１０４】
本願のＥ２Ｅ  Ｍ２Ｍサービス層セッションは、サービス層の一部として実装され得る。サービス層は、一式のアプリケーションプログラミングインターフェース（ＡＰＩ）および基礎的ネットワーキングインターフェースを通して付加価値サービス能力をサポートするソフトウェアミドルウェア層である。Ｍ２Ｍエンティティ（例えば、ハードウェアおよびソフトウェアの組み合わせによって実装され得る、デバイス、ゲートウェイ、またはサービス／プラットフォーム等のＭ２Ｍ機能的エンティティ）は、アプリケーションまたはサービスを提供し得る。ＥＴＳＩ  Ｍ２ＭおよびｏｎｅＭ２Ｍは両方とも、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション管理および本発明の他のものを含み得る、サービス層を使用する。ＥＴＳＩ  Ｍ２Ｍのサービス層は、サービス能力層（ＳＣＬ）と称される。ＳＣＬは、Ｍ２Ｍデバイス（デバイスＳＣＬ（ＤＳＣＬ）と称される）、ゲートウェイ（ゲートウェイＳＣＬ（ＧＳＣＬ）と称される）、および／またはネットワークノード（ネットワークＳＣＬ（ＮＳＣＬ）と称される）内に実装され得る。ｏｎｅＭ２Ｍサービス層は、共通サービス機能（ＣＳＦ）（すなわち、サービス能力）のセットをサポートする。１つ以上の特定のタイプのＣＳＦのセットのインスタンス化は、共通サービスエンティティ（ＣＳＥ）と称され、異なるタイプのネットワークノード（例えば、インフラストラクチャノード、ミドルノード、特定用途向けノード）上にホストされ得る。さらに、Ｅ２Ｅ  Ｍ２Ｍサービス層セッション管理および本願の他のものは、本願の中でもとりわけ、セッションエンドポイント、セッションマネージャ、およびセッション証明書機能等、サービスにアクセスするためにサービス指向アーキテクチャ（ＳＯＡ）および／またはリソース指向アーキテクチャ（ＲＯＡ）を使用する、Ｍ２Ｍネットワークの一部として実装されることができる。
【０１０５】
図２５Ｃは、例えば、Ｍ２Ｍ端末デバイス１８またはＭ２Ｍゲートウェイデバイス１４等の例示的Ｍ２Ｍデバイス３０の系統図である。図２５Ｃに示されるように、Ｍ２Ｍデバイス３０は、プロセッサ３２と、送受信機３４と、伝送／受信要素３６と、スピーカ／マイクロホン３８と、キーパッド４０と、ディスプレイ／タッチパッド４２と、非取り外し可能なメモリ４４と、取り外し可能なメモリ４６と、電源４８と、全地球測位システム（ＧＰＳ）チップセット５０と、他の周辺機器５２とを含み得る。Ｍ２Ｍデバイス３０は、実施形態と一致したままで、先述の要素の任意の副次的組み合わせを含み得ることが理解されるであろう。本デバイスは、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションのための開示されるシステムおよび方法を使用するデバイスであり得る。
【０１０６】
プロセッサ３２は、汎用プロセッサ、特殊アプリケーションプロセッサ、従来のプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、複数のマイクロプロセッサ、ＤＳＰコアと関連する１つ以上のマイクロプロセッサ、コントローラ、マイクロコントローラ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）回路、任意の他のタイプの集積回路（ＩＣ）、状態マシン等であり得る。プロセッサ３２は、信号符号化、データ処理、電力制御、入出力処理、および／またはＭ２Ｍデバイス３０が無線環境で動作することを可能にする任意の他の機能性を果たし得る。プロセッサ３２は、伝送／受信要素３６に連結され得る、送受信機３４に連結され得る。図２５Ｃは、プロセッサ３２および送受信機３４を別個の構成要素として描写するが、プロセッサ３２および送受信機３４は、電子パッケージまたはチップにともに組み込まれ得ることが理解されるであろう。プロセッサ３２は、アプリケーション層プログラム（例えば、ブラウザ）および／または無線アクセス層（ＲＡＮ）プログラムおよび／または通信を行い得る。プロセッサ３２は、例えば、アクセス層および／またはアプリケーション層等で、認証、セキュリティキー一致、および／または暗号化動作等のセキュリティ動作を行い得る。
【０１０７】
伝送／受信要素３６は、信号をＭ２Ｍサービスプラットフォーム２２に伝送し、またはＭ２Ｍサービスプラットフォーム２２から信号を受信するように構成され得る。例えば、実施形態では、伝送／受信要素３６は、ＲＦ信号を伝送および／または受信するように構成されるアンテナであり得る。伝送／受信要素３６は、ＷＬＡＮ、ＷＰＡＮ、セルラー等の種々のネットワークおよびエアインターフェースをサポートし得る。実施形態では、伝送／受信要素３６は、例えば、ＩＲ、ＵＶ、または可視光信号を伝送および／または受信するように構成されるエミッタ／検出器であり得る。さらに別の実施形態では、伝送／受信要素３６は、ＲＦおよび光信号の両方を伝送および受信するように構成され得る。伝送／受信要素３６は、無線または有線信号の任意の組み合わせを伝送および／または受信するように構成され得ることが理解されるであろう。
【０１０８】
加えて、伝送／受信要素３６は、単一の要素として図２５Ｃで描写されているが、Ｍ２Ｍデバイス３０は、任意の数の伝送／受信要素３６を含み得る。より具体的には、Ｍ２Ｍデバイス３０は、ＭＩＭＯ技術を採用し得る。したがって、実施形態では、Ｍ２Ｍデバイス３０は、無線信号を伝送および受信するための２つ以上の伝送／受信要素３６（例えば、複数のアンテナ）を含み得る。
【０１０９】
送受信機３４は、伝送／受信要素３６によって伝送される信号を変調するように、および伝送／受信要素３６によって受信される信号を変調するように構成され得る。上記のように、Ｍ２Ｍデバイス３０は、マルチモード能力を有し得る。したがって、送受信機３４は、Ｍ２Ｍデバイス３０が、例えば、ＵＴＲＡおよびＩＥＥＥ８０２．１１等の複数のＲＡＴを介して通信することを可能にするための複数の送受信機を含み得る。
【０１１０】
プロセッサ３２は、非取り外し可能なメモリ４４および／または取り外し可能なメモリ４６等の任意のタイプの好適なメモリから情報にアクセスし、そこにデータを記憶し得る。非取り外し可能なメモリ４４は、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、ハードディスク、または任意の他のタイプのメモリ記憶デバイスを含み得る。取り外し可能なメモリ４６は、加入者識別モジュール（ＳＩＭ）カード、メモリスティック、セキュアデジタル（ＳＤ）メモリカード等を含み得る。他の実施形態では、プロセッサ３２は、サーバまたはホームコンピュータ上等のＭ２Ｍデバイス３０上に物理的に位置しないメモリから情報にアクセスし、そこにデータを記憶し得る。プロセッサ３２は、本明細書に説明される実施形態のうちのいくつかにおけるＥ２Ｅ  Ｍ２Ｍサービス層セッション（例えば、セッション証明またはセッション確立）が成功または不成功であるかに応答して、ディスプレイまたはインジケータ４２上の照明パターン、画像、または色を制御するか、もしくは別様に、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションのステータスを示すように構成され得る。別の実施例では、ディスプレイは、本明細書に説明されるセッション状態に関する情報を示し得る。本開示は、ｏｎｅＭ２Ｍ実施形態におけるＲＥＳＴｆｕｌユーザ／アプリケーションＡＰＩを定義する。ディスプレイ上に示され得る、グラフィカルユーザインターフェースは、ＡＰＩの上に層化され、ユーザが、本明細書の下層サービス層セッション機能性を介して、Ｅ２Ｅセッションを双方向に確立および管理することを可能にし得る。
【０１１１】
プロセッサ３２は、電源４８から電力を受け取り得、Ｍ２Ｍデバイス３０内の他の構成要素への電力を配信および／または制御するように構成され得る。電源４８は、Ｍ２Ｍデバイス３０に電力供給するための任意の好適なデバイスであり得る。例えば、電源４８は、１つ以上の乾電池バッテリ（例えば、ニッケルカドミウム（ＮｉＣｄ）、ニッケル亜鉛（ＮｉＺｎ）、ニッケル水素（ＮｉＭＨ）、リチウムイオン（Ｌｉ−ｉｏｎ）等）、太陽電池、燃料電池等を含み得る。
【０１１２】
プロセッサ３２はまた、Ｍ２Ｍデバイス３０の現在の場所に関する場所情報（例えば、経度および緯度）を提供するように構成される、ＧＰＳチップセット５０に連結され得る。Ｍ２Ｍデバイス３０は、実施形態と一致したままで、任意の公的な場所決定方法を介して場所情報を獲得し得ることが理解されるであろう。
【０１１３】
プロセッサ３２はさらに、追加の特徴、機能性、および／または有線あるいは無線接続を提供する、１つ以上のソフトウェアおよび／またはハードウェアモジュールを含み得る、他の周辺機器５２に連結され得る。例えば、周辺機器５２は、加速度計、ｅ−コンパス、衛星送受信機、センサ、デジタルカメラ（写真またはビデオ用）、ユニバーサルシリアルバス（ＵＳＢ）ポート、振動デバイス、テレビ送受信機、ハンズフリーヘッドセット、Ｂｌｕｅｔｏｏｔｈ（登録商標）モジュール、周波数変調（ＦＭ）ラジオユニット、デジタル音楽プレーヤ、メディアプレーヤ、ビデオゲームプレーヤモジュール、インターネットブラウザ等を含み得る。
【０１１４】
図２５Ｄは、例えば、図２５Ａおよび２５ＢのＭ２Ｍサービスプラットフォーム２２が実装され得る、例示的なコンピュータシステム９０のブロック図である。コンピュータシステム９０は、コンピュータまたはサーバを備え得、主に、ソフトウェアの形態であり得るコンピュータ読み取り可能命令によって制御され得、どこでも、またはどのような手段を用いても、そのようなソフトウェアが記憶あるいはアクセスされる。そのようなコンピュータ読み取り可能命令は、コンピュータシステム９０を起動させるように、中央処理装置（ＣＰＵ）９１内で実行され得る。多くの既知のワークステーション、サーバ、および周辺コンピュータでは、中央処理装置９１は、マイクロプロセッサと呼ばれる単一チップＣＰＵによって実装される。他のマシンでは、中央処理装置９１は、複数のプロセッサを備え得る。コプロセッサ８１は、追加の機能を果たすか、またはＣＰＵ９１を支援する、主要ＣＰＵ９１とは明確に異なる、随意的なプロセッサである。ＣＰＵ９１および／またはコプロセッサ８１は、セッション証明書の受信またはセッション証明書に基づく認証等、Ｅ２Ｅ  Ｍ２Ｍサービス層セッションのための開示されるシステムおよび方法に関連するデータを受信、生成、および処理し得る。
【０１１５】
動作時、ＣＰＵ９１は、命令をフェッチ、復号、および実行し、コンピュータの主要データ転送パスであるシステムバス８０を介して、情報を他のリソースへ、およびそこから転送する。そのようなシステムバスは、コンピュータシステム９０内の構成要素を接続し、データ交換のための媒体を定義する。システムバス８０は、典型的には、データを送信するためのデータライン、アドレスを送信するためのアドレスライン、ならびに割り込みを送信するため、およびシステムバスを動作するための制御ラインを含む。そのようなシステムバス８０の実施例は、ＰＣＩ（周辺構成要素相互接続）バスである。
【０１１６】
システムバス８０に連結されるメモリデバイスは、ランダムアクセスメモリ（ＲＡＭ）８２および読み取り専用メモリ（ＲＯＭ）９３を含む。そのようなメモリは、情報が記憶されて読み出されることを可能にする回路を含む。ＲＯＭ９３は、概して、容易に修正することができない記憶されたデータを含む。ＲＡＭ８２に記憶されたデータは、ＣＰＵ９１または他のハードウェアデバイスによって読み取られ、または変更され得る。ＲＡＭ８２および／またはＲＯＭ９３へのアクセスは、メモリコントローラ９２によって制御され得る。メモリコントローラ９２は、命令が実行されると、仮想アドレスを物理的アドレスに変換するアドレス変換機能を提供し得る。メモリコントローラ９２はまた、システム内のプロセスを分離し、ユーザプロセスからシステムプロセスを分離するメモリ保護機能を提供し得る。したがって、第１のモードで作動するプログラムは、独自のプロセス仮想アドレス空間によってマップされるメモリのみにアクセスすることができ、プロセス間のメモリ共有が設定されていない限り、別のプロセスの仮想アドレス空間内のメモリにアクセスすることができない。
【０１１７】
加えて、コンピュータシステム９０は、ＣＰＵ９１からプリンタ９４、キーボード８４、マウス９５、およびディスクドライブ８５等の周辺機器に命令を伝達する責任がある周辺機器コントローラ８３を含み得る。
【０１１８】
ディスプレイコントローラ９６によって制御されるディスプレイ８６は、コンピュータシステム９０によって生成される視覚出力を表示するために使用される。そのような視覚出力は、テキスト、グラフィックス、動画グラフィックス、およびビデオを含み得る。ディスプレイ８６は、ＣＲＴベースのビデオディスプレイ、ＬＣＤベースのフラットパネルディスプレイ、ガスプラズマベースのフラットパネルディスプレイ、またはタッチパネルを伴って実装され得る。ディスプレイコントローラ９６は、ディスプレイ８６に送信されるビデオ信号を生成するために必要とされる、電子構成要素を含む。
【０１１９】
さらに、コンピュータシステム９０は、図２５Ａおよび２５Ｂのネットワーク１２等の外部通信ネットワークにコンピュータシステム９０を接続するために使用され得るネットワークアダプタ９７を含み得る。
【０１２０】
本明細書で説明されるシステム、方法、およびプロセスのうちのいずれかまたは全ては、命令が、コンピュータ、サーバ、Ｍ２Ｍ端末デバイス、Ｍ２Ｍゲートウェイデバイス等のマシンによって実行されると、本明細書で説明されるシステム、方法、およびプロセスを行うおよび／または実装される、コンピュータ読み取り可能な記憶媒体上に記憶されたコンピュータ実行可能命令（すなわち、プログラムコード）の形態で具現化され得ることが理解される。具体的には、上記で説明されるステップ、動作、または機能のうちのいずれかは、そのようなコンピュータ実行可能命令の形態で実装され得る。コンピュータ読み取り可能な記憶媒体は、情報の記憶のための任意の方法または技術で実装される、揮発性および不揮発性、取り外し可能なおよび非取り外し可能な媒体の両方を含むが、そのようなコンピュータ読み取り可能な記憶媒体は、信号を含まない。コンピュータ読み取り可能な記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）または他の光学ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶デバイス、あるいは所望の情報を記憶するために使用することができ、コンピュータによってアクセスすることができる任意の他の物理的媒体を含むが、それらに限定されない。
【０１２１】
図で図示されるような本開示の主題の好ましい実施形態を説明する際に、明確にするために、特定の用語が採用される。しかしながら、請求された主題は、そのように選択された特定の用語に限定されることを目的としておらず、各特定の要素は、類似目的を達成するように同様に動作する、全ての技術的均等物を含むことを理解されたい。
【０１２２】
本明細書は、最良の様態を含む、本発明を開示するために、また、当業者が、任意のデバイスまたはシステムを作製して使用すること、および任意の組み込まれた方法を行うことを含む、本発明を実践することを可能にするために、実施例を使用する。本発明の特許性のある範囲は、請求項によって定義され、当業者に想起される他の実施例を含み得る。そのような他の実施例は、請求項の文字通りの言葉とは異ならない構造要素を有する場合に、または請求項の文字通りの言葉とのごくわずかな差異を伴う同等の構造要素を含む場合に、請求項の範囲内であることを目的としている。
【図１】
2018110452.tif 000020
【図２】
2018110452.tif 000021
【図３】
2018110452.tif 000022
【図４】
2018110452.tif 000023
【図５】
2018110452.tif 000024
【図６】
2018110452.tif 000025
【図７】
2018110452.tif 000026
【図８】
2018110452.tif 000027
【図９】
2018110452.tif 000028
【図１０Ａ】
2018110452.tif 000029
【図１０Ｂ】
2018110452.tif 000030
【図１１Ａ】
2018110452.tif 000031
【図１１Ｂ】
2018110452.tif 000032
【図１２】
2018110452.tif 000033
【図１３】
2018110452.tif 000034
【図１４】
2018110452.tif 000035
【図１５】
2018110452.tif 000036
【図１６】
2018110452.tif 000037
【図１７】
2018110452.tif 000038
【図１８】
2018110452.tif 000039
【図１９】
2018110452.tif 000040
【図２０】
2018110452.tif 000041
【図２１】
2018110452.tif 000042
【図２２】
2018110452.tif 000043
【図２３】
2018110452.tif 000044
【図２４】
2018110452.tif 000045
【図２５Ａ】
2018110452.tif 000046
【図２５Ｂ】
2018110452.tif 000047
【図２５Ｃ】
2018110452.tif 000048
【図２５Ｄ】
2018110452.tif 000049