(57)【特許請求の範囲】
【請求項１】
メンバーリソースにアクセスするための方法であって、
メンバーリソースにアクセスするリクエストを受信するステップであって、メンバーリソースにアクセスする前記リクエストは、前記メンバーリソースが属しているグループリソースのグループリソース識別子を運ぶ、ステップと、
前記グループリソース識別子に従って、前記グループリソース内の前記メンバーリソースに対応するファンアウトユニバーサルリソース識別子(URI)および前記ファンアウトURIに対応するマルチキャストアドレスを取得するステップであって、前記ファンアウトURIが、メンバーデバイス上の前記メンバーリソースのアクセス経路を示すために使用される、ステップと、
前記マルチキャストアドレスに従って、メンバーリソースアクセスリクエストを前記メンバーリソースを有する前記メンバーデバイスに送信するステップであって、前記メンバーリソースアクセスリクエストの送信先URIが、前記メンバーリソースに対応する前記ファンアウトURIを含み、これにより、前記メンバーリソースを有する前記メンバーデバイスが、前記ファンアウトURIによって指示される前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従って、前記メンバーリソースアクセスリクエストによって指示されたオペレーションを実行する、ステップと
を含み、
メンバーリソースにアクセスする前記リクエストを受信する前記ステップの前に、前記方法は、マルチキャストアドレスを前記メンバーリソースに、前記メンバーリソースを有する前記メンバーデバイスおよび前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従って割り当て、前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従って前記マルチキャストアドレスと前記ファンアウトURIとの間のマッピング関係を確立するステップと
をさらに含み、
マルチキャストアドレスを前記メンバーリソースに、前記メンバーリソースを有する前記メンバーデバイスおよび前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従って割り当て、前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従って前記マルチキャストアドレスと前記ファンアウトURIとの間のマッピング関係を確立する前記ステップは、
仮想識別子をメンバーデバイス上の異なるアクセス経路を有する少なくとも1つのメンバーリソースに割り当て、マルチキャストアドレスを前記少なくとも1つのメンバーリソースに割り当て、前記マルチキャストアドレスと前記仮想識別子との間のマッピング関係、および前記仮想識別子と前記メンバーリソースとの間のマッピング関係を確立し、前記仮想識別子を前記ファンアウトURIに設定するステップである方法。
【請求項２】
前記マルチキャストアドレスと前記ファンアウトURIとの間の前記マッピング関係に従って、マルチキャストグループに参加するためのグループアドバタイズメントを、前記メンバーリソースを有する前記メンバーデバイスに送信するステップをさらに含み、前記マルチキャストグループに参加するための前記グループアドバタイズメントは、前記マルチキャストアドレスを運び、これにより、前記メンバーリソースを有する前記メンバーデバイスが、前記マルチキャストグループに参加するための前記グループアドバタイズメントに従って、前記マルチキャストアドレスに対応する前記マルチキャストグループに参加する、
請求項1に記載の方法。
【請求項３】
前記マルチキャストグループに参加するための前記グループアドバタイズメントは、前記ファンアウトURIと前記メンバーリソースとの間のマッピング関係を運び、これにより、前記メンバーリソースを有する前記メンバーデバイスは、前記ファンアウトURIと前記マルチキャストアドレスとの間の前記マッピング関係、および前記メンバーリソースと前記マルチキャストアドレスとの間のマッピング関係を格納し、
前記メンバーリソースを有する前記メンバーデバイスによって、前記ファンアウトURIによって指示される前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従って、前記メンバーリソースアクセスリクエストによって指示されたオペレーションを実行する前記ステップは、特に、前記ファンアウトURIを運ぶ前記メンバーリソースアクセスリクエストを受信した後、前記メンバーリソースを有する前記メンバーデバイスによって、前記受信されたファンアウトURIおよび前記ファンアウトURIと前記メンバーリソースとの間の前記マッピング関係に従って、前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路を判定し、前記メンバーデバイス上の前記メンバーリソースの前記判定されたアクセス経路に従って、前記メンバーリソースアクセスリクエストによって指示されたオペレーションを実行するステップを行う、
請求項2に記載の方法。
【請求項４】
前記グループリソース識別子に従って、前記グループリソース内の前記メンバーリソースに対応する前記ファンアウトURIおよび前記ファンアウトURIに対応する前記マルチキャストアドレスを取得する前記ステップの後に、
メンバーリソースにアクセスする前記リクエストの送信先アドレスを、前記ファンアウトURIに対応する前記マルチキャストアドレスに設定し、メンバーリソースにアクセスする前記リクエストの送信先URIを前記メンバーリソースに対応する前記ファンアウトURIに設定して、メンバーリソースアクセスリクエストを生成するステップと、
前記マルチキャストアドレスを使用して、前記メンバーリソースに対応する前記ファンアウトURIを運ぶ前記メンバーリソースアクセスリクエストを送信するステップと
をさらに含む請求項1から3のいずれか一項に記載の方法。
【請求項５】
前記グループリソース識別子に従って、前記グループリソース内の前記メンバーリソースに対応する前記ファンアウトURIおよび前記ファンアウトURIに対応する前記マルチキャストアドレスを取得する前記ステップの後に、
メンバーリソースにアクセスする前記リクエスト内の送信先URIがサフィックスをさらに含むことを判定するステップと、
メンバーリソースにアクセスする前記リクエストの送信先アドレスを、前記ファンアウトURIに対応する前記マルチキャストアドレスに設定し、前記送信先URIを前記メンバーリソースに対応する前記ファンアウトURIに設定し、前記送信先URIに含まれる前記サフィックスを前記ファンアウトURIに追加して、メンバーリソースアクセスリクエストを生成するステップと
をさらに含む請求項1から3のいずれか一項に記載の方法。
【請求項６】
メンバーリソースを追加するグループリソース更新リクエストを受信するステップであって、メンバーリソースを追加するための前記グループリソース更新リクエストは、前記グループリソース識別子および前記グループリソースに参加する必要があるメンバーリソースを運び、前記グループリソースに参加する必要がある前記メンバーリソースは、前記メンバーリソースを有するメンバーデバイスおよび前記メンバーデバイス上の前記メンバーリソースのアクセス経路を含む、ステップ、ならびに
前記グループリソース識別子に従って、前記メンバーデバイス上の前記グループリソースに参加する必要がある前記メンバーリソースの前記アクセス経路が前記グループリソース識別子に対応する前記グループリソース内の前記マルチキャストアドレスと前記ファンアウトURIとの間の前記マッピング関係における前記ファンアウトURIと同じであることを判定し、マルチキャストグループに参加するためのグループアドバタイズメントを、前記グループリソースに参加する必要がある前記メンバーリソースを有する前記メンバーデバイスに送信するステップであって、前記マルチキャストグループに参加するための前記グループアドバタイズメントは、前記マルチキャストアドレスと前記ファンアウトURIとの間の前記マッピング関係における前記マルチキャストアドレスを運び、これにより、前記グループリソースに参加する必要がある前記メンバーリソースを有する前記メンバーデバイスは、前記マルチキャストアドレスに従って前記マルチキャストグループに参加し、前記マルチキャストアドレスに従って送信されたメンバーリソースアクセスリクエストを受信する、ステップ、または
前記グループリソース識別子に従って、前記メンバーデバイス上の前記グループリソースに参加する必要がある前記メンバーリソースの前記アクセス経路が前記グループリソース識別子に対応する前記グループリソース内の前記マルチキャストアドレスと前記ファンアウトURIとの間の前記マッピング関係における前記ファンアウトURIと異なることを判定するステップと、前記グループリソースに参加する必要がある前記メンバーリソースを、前記グループリソース識別子に対応する前記グループリソース内の前記ファンアウトURIと前記メンバーリソースとの間の前記マッピング関係に追加し、前記マルチキャストグループに参加するためのグループアドバタイズメントを、前記グループリソースに参加する必要がある前記メンバーリソースを有する前記メンバーデバイスに送信するステップであって、前記マルチキャストグループに参加するための前記グループアドバタイズメントは、前記グループリソース識別子に対応する前記グループリソース内の前記マルチキャストアドレスと前記ファンアウトURIとの間の前記マッピング関係および前記グループリソース識別子に対応する前記グループリソース内の前記ファンアウトURIと前記メンバーリソースとの間の前記マッピング関係を運び、これにより、前記ファンアウトURIを運ぶアクセスリクエストを受信した後、前記メンバーデバイスは、前記ファンアウトURIと前記メンバーリソースとの間の前記受信されたマッピング関係に従って、前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路を判定し、前記メンバーデバイス上の前記メンバーリソースの前記判定されたアクセス経路に従って対応するメンバーリソースアクセスリクエストを実行する、ステップと
をさらに含む請求項2から5のいずれか一項に記載の方法。
【請求項７】
メンバーリソースにアクセスするための方法であって、
グループサーバによって送信されたメンバーリソースアクセスリクエストを受信するステップであって、前記メンバーリソースアクセスリクエストは、マルチキャストメンバーリソースアクセスリクエストであり、前記メンバーリソースアクセスリクエストは、メンバーリソースに対応するファンアウトユニバーサルリソース識別子(URI)を含み、前記ファンアウトURIは、メンバーデバイス上の前記メンバーリソースのアクセス経路を示すために使用され、仮想識別子は、前記ファンアウトURIとして設定される、ステップと、
前記ファンアウトURIに従って、前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路を判定し、前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従って、前記メンバーリソースアクセスリクエストによって指示されたオペレーションを実行するステップと
を含み、
前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従ってアクセスリクエストのオペレーションを実行する前記ステップは、特に、
前記メンバーリソースアクセスリクエスト内の送信先URIに含まれる前記ファンアウトURIを、前記メンバーデバイス上の前記メンバーリソースの前記判定されたアクセス経路と置き換え、かつ前記メンバーデバイス上の前記メンバーリソースの前記判定されたアクセス経路に対応する前記メンバーリソースに対するアクセスリクエストのオペレーションを実行するステップを含む方法。
【請求項８】
マルチキャストグループに参加するためのグループアドバタイズメントを受信するステップであって、前記マルチキャストグループに参加するための前記グループアドバタイズメントがマルチキャストアドレスを運ぶ、ステップと、前記マルチキャストグループに参加するための前記グループアドバタイズメントに従って、前記マルチキャストアドレスに対応する前記マルチキャストグループに参加するステップと
をさらに含む請求項7に記載の方法。
【請求項９】
前記マルチキャストグループに参加するための前記グループアドバタイズメントは、前記ファンアウトURIと前記メンバーリソースとの間のマッピング関係を運び、前記方法は、
前記マルチキャストアドレスと前記ファンアウトURIとの間のマッピング関係、および前記メンバーリソースと前記マルチキャストアドレスとの間のマッピング関係を格納するステップをさらに含む請求項8に記載の方法。
【請求項１０】
マルチキャストグループから脱退するためのグループアドバタイズメントを受信するステップであって、前記マルチキャストグループから脱退するための前記グループアドバタイズメントは、前記メンバーリソースが取り消す必要がある参加先の前記マルチキャストグループに対応するマルチキャストアドレス、およびグループリソースから脱退する必要がある前記メンバーリソースを運び、脱退する必要がある前記メンバーリソースは、前記グループリソースから脱退する必要がある前記メンバーリソースを有する前記メンバーデバイスおよび前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路を含む、ステップと、
前記マルチキャストグループから脱退するための前記グループアドバタイズメントにおける前記マルチキャストアドレスと同じ前記マルチキャストアドレスに対応するマルチキャストグループ情報において前記グループリソースから脱退する必要がある格納されているメンバーリソースを削除するステップと、
前記マルチキャストグループから脱退するための前記グループアドバタイズメントにおける前記マルチキャストアドレスと同じ前記マルチキャストアドレスに対応する前記格納されているマルチキャストグループ情報を削除し、前記マルチキャストグループから脱退するための前記グループアドバタイズメントにおける前記マルチキャストアドレスに対応する前記マルチキャストグループから脱退するステップと
をさらに含む請求項7から9のいずれか一項に記載の方法。
【請求項１１】
グループサーバであって、
メンバーリソースにアクセスするリクエストを受信するように構成された受信モジュールであって、メンバーリソースにアクセスする前記リクエストは、前記メンバーリソースが属しているグループリソースのグループリソース識別子を運ぶ、受信モジュールと、
前記グループリソース識別子に従って、前記グループリソース内の前記メンバーリソースに対応するファンアウトユニバーサルリソース識別子(URI)および前記ファンアウトURIに対応するマルチキャストアドレスを取得するように構成された取得モジュールであって、前記ファンアウトURIが、メンバーデバイス上の前記メンバーリソースのアクセス経路を示すために使用される、取得モジュールと、
前記マルチキャストアドレスに従って、メンバーリソースアクセスリクエストを前記メンバーリソースを有する前記メンバーデバイスに送信するように構成された送信モジュールであって、前記メンバーリソースアクセスリクエストの送信先URIが、前記メンバーリソースに対応する前記ファンアウトURIを含み、これにより、前記メンバーリソースを有する前記メンバーデバイスが、前記ファンアウトURIによって指示される前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従って、前記メンバーリソースアクセスリクエストによって指示されたオペレーションを実行する、送信モジュールと
を備えるグループサーバであって、
前記グループサーバは、マルチキャストアドレスを前記メンバーリソースに、前記メンバーリソースを有する前記メンバーデバイスおよび前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従って割り当て、前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従って前記マルチキャストアドレスと前記ファンアウトURIとの間のマッピング関係を確立するように構成された処理モジュールをさらに備え、
前記処理モジュールは、特に、仮想識別子をメンバーデバイス上の異なるアクセス経路を有する少なくとも1つのメンバーリソースに割り当て、マルチキャストアドレスを前記少なくとも1つのメンバーリソースに割り当て、前記マルチキャストアドレスと前記仮想識別子との間のマッピング関係、および前記仮想識別子と前記メンバーリソースとの間のマッピング関係を確立し、前記仮想識別子を前記ファンアウトURIに設定するように構成されている、グループサーバ。
【請求項１２】
前記送信モジュールは、前記マルチキャストアドレスと前記ファンアウトURIとの間の前記マッピング関係に従って、マルチキャストグループに参加するためのグループアドバタイズメントを、前記メンバーリソースを有する前記メンバーデバイスに送信するようにさらに構成され、前記マルチキャストグループに参加するための前記グループアドバタイズメントは、前記マルチキャストアドレスを運び、これにより、前記メンバーリソースを有する前記メンバーデバイスが、前記マルチキャストグループに参加するための前記グループアドバタイズメントに従って、前記マルチキャストアドレスに対応する前記マルチキャストグループに参加する、
請求項11に記載のグループサーバ。
【請求項１３】
前記処理モジュールは、メンバーリソースにアクセスする前記リクエスト内の送信先URIがサフィックスをさらに含むと判定することと、メンバーリソースにアクセスする前記リクエストの送信先アドレスを、前記ファンアウトURIに対応する前記マルチキャストアドレスに設定し、メンバーリソースにアクセスする前記リクエスト内の前記送信先URIを、前記メンバーリソースに対応する前記ファンアウトURIに設定し、前記送信先URIに含まれる前記サフィックスを前記ファンアウトURIに追加して、メンバーリソースアクセスリクエストを生成することとを行うようにさらに構成されている請求項11又は12に記載のグループサーバ。
【請求項１４】
メンバーデバイスであって、
グループサーバによって送信されたメンバーリソースにアクセスするメンバーリソースアクセスリクエストを受信するように構成された受信モジュールであって、前記メンバーリソースアクセスリクエストは、マルチキャストメンバーリソースアクセスリクエストであり、前記メンバーリソースアクセスリクエストは、前記メンバーリソースに対応するファンアウトユニバーサルリソース識別子(URI)を含み、前記ファンアウトURIは、前記メンバーデバイス上の前記メンバーリソースのアクセス経路を示すために使用され、仮想識別子は、前記ファンアウトURIとして設定される、受信モジュールと、
前記ファンアウトURIに従って、前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路を判定し、前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従ってアクセスリクエストのオペレーションを実行するように構成されたオペレーティングモジュールと
を備え、
前記オペレーティングモジュールが前記メンバーデバイス上の前記メンバーリソースの前記アクセス経路に従ってアクセスリクエストのオペレーションを実行することは、
前記メンバーリソースアクセスリクエスト内の送信先URIに含まれる前記ファンアウトURIを、前記メンバーデバイス上の前記メンバーリソースの前記判定されたアクセス経路と置き換え、かつ前記メンバーデバイス上の前記メンバーリソースの前記判定されたアクセス経路に対応する前記メンバーリソースに対するアクセスリクエストのオペレーションを実行することを含むメンバーデバイス。
【請求項１５】
前記受信モジュールは、マルチキャストグループに参加するためのグループアドバタイズメントを受信することであって、前記マルチキャストグループに参加するための前記グループアドバタイズメントがマルチキャストアドレスを運ぶ、受信することと、前記マルチキャストグループに参加するための前記グループアドバタイズメントに従って、前記マルチキャストアドレスに対応する前記マルチキャストグループに参加することとを行うようにさらに構成されている請求項14に記載のメンバーデバイス。
【請求項１６】
前記マルチキャストグループに参加するための前記グループアドバタイズメントは、前記ファンアウトURIと前記メンバーリソースとの間のマッピング関係を運び、前記メンバーデバイスは、
前記ファンアウトURIと前記マルチキャストアドレスとの間のマッピング関係、および前記メンバーリソースと前記マルチキャストアドレスとの間のマッピング関係を格納するように構成された格納モジュールをさらに備える請求項15に記載のメンバーデバイス。
【請求項１７】
請求項1から6のいずれか一項に記載の方法を実装するプログラムを備えたコンピュータ可読コードを格納するコンピュータ可読記憶媒体。
【請求項１８】
請求項7から10のいずれか一項に記載の方法を実装するプログラムを備えたコンピュータ可読コードを格納するコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
〔関連出願〕
本出願は、参照によりその全体が本明細書に組み込まれている、2012年1月6日に中国特許庁に出願した中国特許出願第201210004135.6号、名称「METHOD, GROUP SERVER, AND MEMBER DEVICE FOR ACCESSING MEMBER RESOURCES」の優先権を主張するものである。
【０００２】
本発明は、マシンツーマシン通信(Machine to Machine Communications、M2M)技術の分野、詳細には、メンバーリソースにアクセスするための方法、グループサーバ、およびメンバーデバイスに関する。
【背景技術】
【０００３】
マシンツーマシン通信(Machine-to-Machine Communications、M2M)は、インテリジェントなマシンツーマシンインタラクションを重視したネットワークベースのアプリケーションおよびサービスである。M2M技術は、データの収集および測定の監視、指令、およびスケジューリングに関するユーザーの情報化要件、および同様の要件を満たすために、ワイヤレスまたは有線の通信モジュールおよびアプリケーション処理ロジックをマシン内に埋め込むことによって、手動介入なしのデータ通信を実装するものである。M2Mシステムアーキテクチャにおいて、(センサーおよびマイクロコントローラなどの)さまざまなM2M端末がM2Mサービスプラットフォームに直接的に、またはM2Mゲートウェイを通じてリモートからアクセスし、その一方で、(電力量計の読取りおよびインテリジェントトラフィックなどの)さまざまなM2Mアプリケーションサーバが、M2Mサービスプラットフォームが備えるサービス機能を用いて、M2M端末によって収集されたデータを取得するか、またはM2M端末に対するリモート制御および管理を実行する。
【０００４】
しかし、いくつかの共通のM2Mサービスでは、通常、大量のM2M端末/ゲートウェイに対して同じサービスオペレーションを同時に実行する必要があり、例えば、エリア内のすべての家庭内の電力量計を同時に読み取ったり、またはビル内のすべての照明および空調設備の電源オンおよび電源オフを同時に制御したりする。この場合、グループ通信は、M2Mアプリケーションが同じサービスオペレーションリクエストをさまざまなM2M端末/ゲートウェイに繰り返し送信するのを防ぎ、大量の通信オーバーヘッドを軽減することができるため、特に重要なものとなっている。
【０００５】
従来技術では、リソース指向のグループ通信方法を提供している。この方法では、M2Mアプリケーションサーバ、M2Mプラットフォーム、M2M端末、M2Mゲートウェイ、およびM2M端末とM2Mゲートウェイの上で動作するすべてのデータオブジェクトおよびローカルアプリケーションは、すべて、RESTful(Representational State Transfer、表現状態転送)リソースとしてみなされ、URI(Universal Resource Identifier、ユニバーサルリソース識別子)によって一意的に識別される。前記のさまざまなリソースをメンバーリソースとして使用するグループリソースを作成することによって、複数のメンバーリソースについてグループオペレーションを実装することができる。つまり、グループリソースを作成することによって、複数のメンバーリソースについてグループオペレーションが実装されるが、ただし、グループリソースは、メンバーリソースに関係する情報、例えば、メンバーリソースのアクセス経路、メンバーリソースを有するデバイスの名前、およびアクセスアドレスを含む。例えば、すべてのターゲット電力量計(M2Mデバイス)上の計器読取りリソースが、グループのメンバーリソースとして使用される場合、M2Mアプリケーションサーバは、グループリソースに関する読取りリクエストを、グループリソースを維持するエンティティ(これ以降、グループサーバと称され、これはM2Mプラットフォーム、M2Mゲートウェイ、およびM2M端末のうちの1つとすることができる)に送信することができ、グループサーバは、リクエストをターゲット電力量計に1つずつ転送し、読取り結果を、M2Mアプリケーションサーバに返される1つの応答メッセージにまとめる役割を果たす。したがって、M2Mアプリケーションサーバは、グループリソースを一度に読み取ることによってすべてのメンバーリソース(つまり、電力量計の読取り内容)を取得することができる。この方法によって使用される特定の通信プロトコルは、HTTP(HyperText Transfer Protocol、ハイパーテキスト転送プロトコル)であっても、またはCoAP(Constrained Application Protocol、制約付きアプリケーションプロトコル)であってもよい。
【０００６】
しかし、M2Mグループ通信に適用される既存の方法は、M2Mアプリケーションサーバとグループサーバとの間の通信を軽減するだけであるが、グループサーバは、依然として、リクエストを各M2Mデバイスに別々に送信する必要がある。グループサーバが、限られた能力を有する(例えば、M2Mゲートウェイ)か、またはグループサーバとM2Mデバイスとの間のネットワークが、比較的小さな帯域幅もしくは比較的高い通信コストを有する場合には、この方法におけるグループサーバとM2Mデバイスとの間の通信は、経済的ではない。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の実施形態は、メンバーリソースにアクセスするための方法、グループサーバ、およびメンバーデバイスを提供し、これにより、各メンバーデバイスにアクセスリクエストをユニキャストする必要がない。
【課題を解決するための手段】
【０００８】
一態様では、本発明は、メンバーリソースにアクセスするための方法を提供し、この方法は、
メンバーリソースにアクセスするリクエストを受信するステップであって、メンバーリソースにアクセスするリクエストは、メンバーリソースが属しているグループリソースのグループリソース識別子を運ぶ、ステップと、グループリソース識別子に従って、グループリソース内のメンバーリソースに対応するファンアウトユニバーサルリソース識別子URIおよびファンアウトURIに対応するマルチキャストアドレスを取得するステップであって、ファンアウトURIが、メンバーデバイス上のメンバーリソースのアクセス経路を示すために使用される、ステップと、マルチキャストアドレスに従って、メンバーリソースアクセスリクエストをメンバーリソースを有するメンバーデバイスに送信するステップであって、メンバーリソースアクセスリクエストの送信先URIが、メンバーリソースに対応するファンアウトURIを含み、これにより、メンバーリソースを有するメンバーデバイスが、ファンアウトURIによって指示されるメンバーデバイス上のメンバーリソースのアクセス経路に従って、メンバーリソースアクセスリクエストによって指示されたオペレーションを実行する、ステップとを含む。
【０００９】
任意選択として、この方法は、グループリソース作成リクエストを受信するステップであって、グループリソース作成リクエストは、各メンバーリソースを運び、メンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含む、ステップと、マルチキャストアドレスをメンバーリソースに、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って割り当て、メンバーデバイス上のメンバーリソースのアクセス経路に従ってマルチキャストアドレスとファンアウトURIとの間のマッピング関係を確立するステップをさらに含む。
【００１０】
任意選択として、マルチキャストアドレスをメンバーリソースに、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って割り当て、メンバーデバイス上のメンバーリソースのアクセス経路に従ってマルチキャストアドレスとファンアウトURIとの間のマッピング関係を確立するステップは、特に、マルチキャストアドレスをメンバーデバイス上の同じアクセス経路を有するメンバーリソースに割り当て、マルチキャストアドレスとファンアウトURIとの間のマッピング関係を確立するステップであって、ファンアウトURIが、メンバーデバイス上のメンバーリソースのアクセス経路である、ステップを行い、かつ/または仮想識別子をメンバーデバイス上の異なるアクセス経路を有する少なくとも1つのメンバーリソースに割り当てるステップと、マルチキャストアドレスを少なくとも1つのメンバーリソースに割り当て、マルチキャストアドレスと仮想識別子との間のマッピング関係、および仮想識別子とメンバーリソースとの間のマッピング関係を確立し、仮想識別子をファンアウトURIに設定するステップを行う。
【００１１】
任意選択として、この方法は、マルチキャストアドレスとファンアウトURIとの間のマッピング関係に従って、マルチキャストグループに参加するためのグループアドバタイズメントを、メンバーリソースを有するメンバーデバイスに送信するステップであって、マルチキャストグループに参加するためのグループアドバタイズメントは、マルチキャストアドレスを運び、これにより、メンバーリソースを有するメンバーデバイスは、マルチキャストグループに参加するためのグループアドバタイズメントに従って、マルチキャストアドレスに対応するマルチキャストグループに参加する、ステップをさらに含む。
【００１２】
任意選択として、マルチキャストグループに参加するためのグループアドバタイズメントは、ファンアウトURIとメンバーリソースとの間のマッピング関係を運び、これにより、メンバーリソースを有するメンバーデバイスは、ファンアウトURIとマルチキャストアドレスとの間のマッピング関係、およびメンバーリソースとマルチキャストアドレスとの間のマッピング関係を格納し、メンバーリソースを有するメンバーデバイスによって、ファンアウトURIによって指示されるメンバーデバイス上のメンバーリソースのアクセス経路に従って、メンバーリソースアクセスリクエストによって指示されたオペレーションを実行するステップは、特に、ファンアウトURIを運ぶアクセスリクエストを受信した後、メンバーリソースを有するメンバーデバイスによって、受信されたファンアウトURIおよびファンアウトURIとメンバーリソースとの間のマッピング関係に従って、メンバーデバイス上のメンバーリソースのアクセス経路を判定し、メンバーデバイス上のメンバーリソースの判定されたアクセス経路に従って、メンバーリソースアクセスリクエストによって指示されたオペレーションを実行するステップを行う。
【００１３】
任意選択として、マルチキャストアドレスをメンバーリソースに、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って割り当てるステップは、特に、メンバーリソースを有するメンバーデバイスに従って、メンバーリソースを有するメンバーデバイスが第1のグループサーバに属すことを判定し、ローカルマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するメンバーデバイスに割り当てるステップ、またはメンバーリソースを有するメンバーデバイスに従って、グループリソースのメンバーリソースを有するメンバーデバイスすべてが第1のグループサーバに属しているとは限らないことを判定し、グローバルマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するメンバーデバイスに割り当てるか、もしくはリモートマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するが第1のグループサーバに属していないメンバーデバイスに割り当てるよう求めるステップを行う。
【００１４】
任意選択として、グローバルマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するメンバーデバイスに割り当てるステップは、特に、グローバルマルチキャストドメインのマルチキャストアドレスを有するグループサーバに、グローバルマルチキャストドメインのマルチキャストアドレスをリクエストし、グローバルマルチキャストドメインのリクエストされたマルチキャストアドレスをメンバーリソースを有するメンバーデバイスに割り当てるステップを行い、リモートマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するが第1のグループサーバに属していないメンバーデバイスに割り当てるよう求めるステップは、特に、メンバーリソースを有するが第1のグループサーバに属していないメンバーデバイスが、第2のグループサーバに属していることを判定し、第2のグループリソース作成リクエストを第2のグループサーバに送信するステップを行い、第2のグループリソース作成リクエストは、第1のグループリソース識別子およびメンバーリソースを運び、メンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、これにより、第2のグループサーバは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って第2のグループリソースを作成し、マルチキャストアドレスをメンバーリソースに割り当てる。
【００１５】
任意選択として、マルチキャストアドレスをメンバーリソースに、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って割り当てるステップは、特に、メンバーリソースを有するメンバーデバイスに従って、メンバーリソースを有するメンバーデバイスおよびメンバーデバイスが属すネットワークがマルチキャストをサポートしていることを判定し、マルチキャストアドレスをメンバーリソースに割り当てるステップを行い、この方法は、マルチキャスト機能を有しないメンバーデバイスに対応するメンバーリソースを格納するステップであって、これにより、グループサーバは、メンバーリソースにアクセスするリクエストをマルチキャスト機能を有しないメンバーデバイスにユニキャストする、ステップをさらに含む。
【００１６】
任意選択として、グループリソース識別子に従って、グループリソース内のメンバーリソースに対応するファンアウトURIおよびファンアウトURIに対応するマルチキャストアドレスを取得するステップの後に、この方法は、メンバーリソースにアクセスするリクエストの送信先アドレスを、ファンアウトURIに対応するマルチキャストアドレスに設定し、メンバーリソースにアクセスするリクエストの送信先URIをメンバーリソースに対応するファンアウトURIに設定して、メンバーリソースアクセスリクエストを生成するステップと、そのマルチキャストアドレスを使用して、メンバーリソースに対応するファンアウトURIを運ぶメンバーリソースアクセスリクエストを送信するステップとをさらに含む。
【００１７】
任意選択として、グループリソース識別子に従って、グループリソース内のメンバーリソースに対応するファンアウトURIおよびファンアウトURIに対応するマルチキャストアドレスを取得するステップの後に、この方法は、メンバーリソースにアクセスするリクエスト内の送信先URIがサフィックスをさらに含むことを判定するステップと、メンバーリソースにアクセスするリクエストの送信先アドレスを、ファンアウトURIに対応するマルチキャストアドレスに設定し、送信先URIをメンバーリソースに対応するファンアウトURIに設定し、送信先URIに含まれるサフィックスをファンアウトURIに追加して、メンバーリソースアクセスリクエストを生成するステップとをさらに含む。
【００１８】
任意選択として、この方法は、
メンバーリソースを追加するためのグループリソース更新リクエストを受信するステップであって、メンバーリソースを追加するためのグループリソース更新リクエストは、グループリソース識別子およびグループリソースに参加する必要があるメンバーリソースを運び、グループリソースに参加する必要があるメンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含む、ステップと、
グループリソース識別子に従って、メンバーデバイス上のグループリソースに参加する必要があるメンバーリソースのアクセス経路がグループリソース識別子に対応するグループリソース内のマルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるファンアウトURIと同じであることを判定し、マルチキャストグループに参加するためのグループアドバタイズメントを、グループリソースに参加する必要があるメンバーリソースを有するメンバーデバイスに送信するステップであって、マルチキャストグループに参加するためのグループアドバタイズメントは、マルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるマルチキャストアドレスを運び、これにより、グループリソースに参加する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスに従ってマルチキャストグループに参加し、マルチキャストアドレスに従って送信されたメンバーリソースアクセスリクエストを受信する、ステップ、または
グループリソース識別子に従って、メンバーデバイス上のグループリソースに参加する必要があるメンバーリソースのアクセス経路がグループリソース識別子に対応するグループリソース内のマルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるファンアウトURIと異なることを判定するステップ、ならびにグループリソースに参加する必要があるメンバーリソースを、グループリソース識別子に対応するグループリソース内のファンアウトURIとメンバーリソースとの間のマッピング関係に追加し、マルチキャストグループに参加するためのグループアドバタイズメントを、グループリソースに参加する必要があるメンバーリソースを有するメンバーデバイスに送信するステップであって、マルチキャストグループに参加するためのグループアドバタイズメントは、グループリソース識別子に対応するグループリソース内のマルチキャストアドレスとファンアウトURIとの間のマッピング関係およびグループリソース識別子に対応するグループリソース内のファンアウトURIとメンバーリソースとの間のマッピング関係を運び、これにより、ファンアウトURIを運ぶアクセスリクエストを受信した後、メンバーデバイスは、ファンアウトURIとメンバーリソースとの間の受信されたマッピング関係に従って、メンバーデバイス上のメンバーリソースのアクセス経路を判定し、メンバーデバイス上のメンバーリソースの判定されたアクセス経路に従って対応するメンバーリソースアクセスリクエストを実行する、ステップをさらに含む。
【００１９】
任意選択として、この方法は、メンバーリソースを削除するためのグループリソース更新リクエストを受信するステップを含み、
メンバーリソースを削除するためのグループリソース更新リクエストは、グループリソースから脱退する必要があるメンバーリソースとグループリソース識別子とを運び、グループリソースから脱退する必要があるメンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、この方法はさらに、グループリソース識別子に従って、グループリソースから脱退する必要があるメンバーリソースに対応するファンアウトURI、およびグループリソースから脱退する必要があるメンバーリソースに対応するマルチキャストアドレスとファンアウトURIとの間のマッピング関係を判定し、グループリソースから脱退する必要があるメンバーリソースを、グループリソースから脱退する必要があるメンバーリソースに対応するマルチキャストアドレスとファンアウトURIとの間のマッピング関係から削除し、マルチキャストグループから脱退するためのグループアドバタイズメントを、脱退する必要があるメンバーリソースを有するメンバーデバイスに送信するステップを含み、マルチキャストグループから脱退するためのグループアドバタイズメントは、マルチキャストアドレスとグループリソースから脱退する必要があるメンバーリソースに対応するファンアウトURIとの間のマッピング関係におけるマルチキャストアドレスを運び、これにより、脱退する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスによって指示されたマルチキャストグループから脱退し、または
メンバーリソースを削除するためのグループリソース更新リクエストは、グループリソースで予約済みである必要があるメンバーリソースとグループリソース識別子とを運び、グループリソースで予約済みである必要があるメンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、この方法はさらに、グループリソース識別子に従って、ファンアウトURIとグループリソースから脱退する必要があるメンバーリソースとの間のマッピング関係を判定し、グループリソースで予約済みである必要があるメンバーリソースを使用して、ファンアウトURIとグループリソースから脱退する必要があるメンバーリソースとの間のマッピング関係におけるメンバーリソースを更新し、マルチキャストグループから脱退するためのグループアドバタイズメントを、脱退する必要があるメンバーリソースを有するメンバーデバイスに送信するステップを含み、マルチキャストグループから脱退するためのグループアドバタイズメントは、マッピング関係におけるマルチキャストアドレスを運び、これにより、脱退する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスによって指示されたマルチキャストグループから脱退する。
【００２０】
任意選択として、この方法は、メンバーリソースを削除するためのグループリソース更新リクエスト内のグループリソース識別子に従って、メンバーデバイス上のグループリソースから脱退する必要があるメンバーリソースのアクセス経路が、脱退する必要があるメンバーリソースに対応するファンアウトURIと異なることを判定するステップを含み、マルチキャストグループから脱退するためのグループアドバタイズメントは、グループリソースから脱退する必要があるメンバーリソースに対応するファンアウトURIをさらに含み、これにより、グループリソースから脱退する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスによって指示されたマルチキャストグループから脱退し、グループリソースから脱退する必要があるメンバーリソースおよびマルチキャストグループから脱退するためのグループアドバタイズメントにおけるファンアウトURIに従って、メンバーリソースを削除するためのグループリソース更新リクエスト内のグループリソース識別子に対応するマルチキャストグループ情報内のメンバーリソースを削除する。
【００２１】
それに加えて、別の態様では、本発明は、メンバーリソースにアクセスするための方法をさらに提供し、この方法は、グループサーバによって送信されたメンバーリソースアクセスリクエストを受信するステップであって、メンバーリソースアクセスリクエストは、マルチキャストメンバーリソースアクセスリクエストであり、メンバーリソースアクセスリクエストは、メンバーリソースに対応するファンアウトURIを含み、ファンアウトURIは、メンバーデバイス上のメンバーリソースのアクセス経路を示すために使用される、ステップと、ファンアウトURIに従って、メンバーデバイス上のメンバーリソースのアクセス経路を判定し、メンバーデバイス上のメンバーリソースのアクセス経路に従ってアクセスリクエストのオペレーションを実行するステップとを含む。
【００２２】
任意選択として、この方法は、マルチキャストグループに参加するためのグループアドバタイズメントを受信するステップであって、マルチキャストグループに参加するためのグループアドバタイズメントは、マルチキャストアドレスを運ぶ、ステップと、マルチキャストグループに参加するためのグループアドバタイズメントに従って、マルチキャストアドレスに対応するマルチキャストグループに参加するステップとをさらに含む。
【００２３】
任意選択として、マルチキャストグループに参加するためのグループアドバタイズメントは、ファンアウトURIとメンバーリソースとの間のマッピング関係を運び、この方法は、マルチキャストアドレスとファンアウトURIとの間のマッピング関係、およびメンバーリソースとマルチキャストアドレスとの間のマッピング関係を格納するステップをさらに含む。
【００２４】
任意選択として、この方法は、メンバーリソースアクセスリクエストの送信先アドレスがマルチキャストアドレスであることを判定するステップをさらに含む。
【００２５】
任意選択として、ファンアウトURIに従って、メンバーデバイス上のメンバーリソースのアクセス経路を判定するステップは、特に、
メンバーリソースアクセスリクエスト内の送信先アドレスと同じマルチキャストアドレスを含むマルチキャストグループ情報を判定し、メンバーリソースアクセスリクエスト内の送信先アドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報が、メンバーリソースアクセスリクエスト内の送信先URIと同じファンアウトURIを含むことを判定し、メンバーデバイス上のマルチキャストグループ情報内のファンアウトURIに対応するメンバーリソースのアクセス経路を判定するステップを行う。
【００２６】
任意選択として、メンバーデバイス上のメンバーリソースのアクセス経路に従ってアクセスリクエストのオペレーションを実行するステップは、特に、メンバーリソースアクセスリクエスト内の送信先URIに含まれるファンアウトURIをメンバーデバイス上のメンバーリソースの判定されたアクセス経路で置き換え、メンバーデバイス上のメンバーリソースの判定されたアクセス経路に対応するメンバーリソースに対するアクセスリクエストのオペレーションを実行するステップを行う。
【００２７】
任意選択として、この方法は、マルチキャストグループから脱退するためのグループアドバタイズメントを受信するステップであって、マルチキャストグループから脱退するためのグループアドバタイズメントは、マルチキャストアドレスを運ぶ、ステップと、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応する格納されているマルチキャストグループ情報を削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスに対応するマルチキャストグループから脱退するステップとをさらに含む。
【００２８】
任意選択として、この方法は、マルチキャストグループから脱退するためのグループアドバタイズメントを受信するステップであって、マルチキャストグループから脱退するためのグループアドバタイズメントは、メンバーリソースが取り消す必要がある参加先のマルチキャストグループに対応するマルチキャストアドレス、およびグループリソースから脱退する必要があるメンバーリソースを運び、脱退する必要があるメンバーリソースは、グループリソースから脱退する必要があるメンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含む、ステップと、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報においてグループリソースから脱退する必要がある格納されているメンバーリソースを削除するステップと、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応する格納されているマルチキャストグループ情報を削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスに対応するマルチキャストグループから脱退するステップとをさらに含む。
【００２９】
任意選択として、この方法は、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報においてファンアウトURIに対応していない格納されているメンバーリソースを判定するステップをさらに含む。
【００３０】
それに加えて、別の態様では、本発明は、グループサーバをさらに提供し、このグループサーバは、メンバーリソースにアクセスするリクエストを受信するように構成された受信モジュールであって、メンバーリソースにアクセスするリクエストは、メンバーリソースが属しているグループリソースのグループリソース識別子を運ぶ、受信モジュールと、グループリソース識別子に従って、グループリソース内のメンバーリソースに対応するファンアウトURIおよびファンアウトURIに対応するマルチキャストアドレスを取得するように構成された取得モジュールであって、ファンアウトURIが、メンバーデバイス上のメンバーリソースのアクセス経路を示すために使用される、取得モジュールと、マルチキャストアドレスに従って、メンバーリソースアクセスリクエストをメンバーリソースを有するメンバーデバイスに送信するように構成された送信モジュールであって、メンバーリソースアクセスリクエストの送信先URIが、メンバーリソースに対応するファンアウトURIを含み、これにより、メンバーリソースを有するメンバーデバイスが、ファンアウトURIによって指示されるメンバーデバイス上のメンバーリソースのアクセス経路に従って、メンバーリソースアクセスリクエストによって指示されたオペレーションを実行する、送信モジュールとを備える。
【００３１】
任意選択として、受信モジュールは、グループリソース作成リクエストを受信するようにさらに構成され、グループリソース作成リクエストは、各メンバーリソースを運び、メンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、グループサーバは、マルチキャストアドレスをメンバーリソースに、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って割り当て、メンバーデバイス上のメンバーリソースのアクセス経路に従ってマルチキャストアドレスとファンアウトURIとの間のマッピング関係を確立するように構成された処理モジュールをさらに備える。
【００３２】
任意選択として、処理モジュールは、特に、マルチキャストアドレスをメンバーデバイス上の同じアクセス経路を有するメンバーリソースに割り当て、マルチキャストアドレスとファンアウトURIとの間のマッピング関係を確立するように構成され、ファンアウトURIがメンバーデバイス上のメンバーリソースのアクセス経路であり、かつ/または処理モジュールは、仮想識別子をメンバーデバイス上の異なるアクセス経路を有する少なくとも1つのメンバーリソースに割り当て、マルチキャストアドレスを少なくとも1つのメンバーリソースに割り当て、マルチキャストアドレスと仮想識別子との間のマッピング関係、および仮想識別子とメンバーリソースとの間のマッピング関係を確立し、仮想識別子をファンアウトURIに設定するように構成されている。
【００３３】
任意選択として、送信モジュールは、マルチキャストアドレスとファンアウトURIとの間のマッピング関係に従って、マルチキャストグループに参加するためのグループアドバタイズメントを、メンバーリソースを有するメンバーデバイスに送信するようにさらに構成され、マルチキャストグループに参加するためのグループアドバタイズメントがマルチキャストアドレスを運び、これにより、メンバーリソースを有するメンバーデバイスが、マルチキャストグループに参加するためのグループアドバタイズメントに従って、マルチキャストアドレスに対応するマルチキャストグループに参加する。
【００３４】
任意選択として、処理モジュールによって、マルチキャストアドレスをメンバーリソースに、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って割り当てることは、特に、メンバーリソースを有するメンバーデバイスに従って、メンバーリソースを有するメンバーデバイスが第1のグループサーバに属すことを判定し、ローカルマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するメンバーデバイスに割り当てること、またはメンバーリソースを有するメンバーデバイスに従って、グループリソースのメンバーリソースを有するメンバーデバイスすべてが第1のグループサーバに属しているとは限らないことを判定し、グローバルマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するメンバーデバイスに割り当てるか、もしくはリモートマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するが第1のグループサーバに属していないメンバーデバイスに割り当てるよう求めることを行う。
【００３５】
任意選択として、処理モジュールによって、グローバルマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するメンバーデバイスに割り当てることは、特に、グローバルマルチキャストドメインのマルチキャストアドレスを有するグループサーバに、グローバルマルチキャストドメインのマルチキャストアドレスをリクエストし、グローバルマルチキャストドメインのリクエストされたマルチキャストアドレスをメンバーリソースを有するメンバーデバイスに割り当てることを行い、リモートマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するが第1のグループサーバに属していないメンバーデバイスに割り当てるよう求めることは、特に、メンバーリソースを有するが第1のグループサーバに属していないメンバーデバイスが、第2のグループサーバに属していることを判定し、第2のグループリソース作成リクエストを第2のグループサーバに送信することを行い、第2のグループリソース作成リクエストは、第1のグループリソース識別子およびメンバーリソースを運び、メンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、これにより、第2のグループサーバは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って第2のグループリソースを作成し、マルチキャストアドレスをメンバーリソースに割り当てる。
【００３６】
任意選択として、処理モジュールによって、メンバーリソースを有するメンバーデバイスに従ってマルチキャストアドレスをメンバーリソースに割り当てることは、特に、メンバーリソースを有するメンバーデバイスに従って、メンバーリソースを有するメンバーデバイスおよびメンバーデバイスが属すネットワークがマルチキャストをサポートしていることを判定し、マルチキャストアドレスをメンバーリソースに割り当てることを行い、処理モジュールは、マルチキャスト機能を有しないメンバーデバイスに対応するメンバーリソースを格納するようにさらに構成され、これにより、グループサーバは、メンバーリソースにアクセスするリクエストをマルチキャスト機能を有しないメンバーデバイスにユニキャストする。
【００３７】
任意選択として、処理モジュールは、メンバーリソースにアクセスするリクエストの送信先アドレスを、ファンアウトURIに対応するマルチキャストアドレスに設定し、メンバーリソースにアクセスするリクエストの送信先URIをメンバーリソースに対応するファンアウトURIに設定して、メンバーリソースアクセスリクエストを生成するようにさらに構成され、処理モジュールは、そのマルチキャストアドレスを使用して、メンバーリソースに対応するファンアウトURIを運ぶメンバーリソースアクセスリクエストを送信するようにさらに構成されている。
【００３８】
任意選択として、処理モジュールは、メンバーリソースにアクセスするリクエスト内の送信先URIがサフィックスをさらに含むことを判定することと、メンバーリソースにアクセスするリクエストの送信先アドレスを、ファンアウトURIに対応するマルチキャストアドレスに設定し、メンバーリソースにアクセスするリクエスト内の送信先URIを、メンバーリソースに対応するファンアウトURIに設定し、送信先URIに含まれるサフィックスをファンアウトURIに追加して、メンバーリソースアクセスリクエストを生成することとを行うようにさらに構成され、
任意選択として、受信モジュールは、メンバーリソースを追加するためのグループリソース更新リクエストを受信するようにさらに構成され、メンバーリソースを追加するためのグループリソース更新リクエストは、グループリソース識別子およびグループリソースに参加する必要があるメンバーリソースを運び、グループリソースに参加する必要があるメンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、
処理モジュールは、グループリソース識別子に従って、メンバーデバイス上のグループリソースに参加する必要があるメンバーリソースのアクセス経路がグループリソース識別子に対応するグループリソース内のマルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるファンアウトURIと同じであることを判定し、マルチキャストグループに参加するためのグループアドバタイズメントを、グループリソースに参加する必要があるメンバーリソースを有するメンバーデバイスに送信するようにさらに構成され、マルチキャストグループに参加するためのグループアドバタイズメントは、マルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるマルチキャストアドレスを運び、これにより、グループリソースに参加する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスに従ってマルチキャストグループに参加し、マルチキャストアドレスに従って送信されたメンバーリソースアクセスリクエストを受信し、または
処理モジュールは、グループリソース識別子に従って、メンバーデバイス上のグループリソースに参加する必要があるメンバーリソースのアクセス経路がグループリソース識別子に対応するグループリソース内のマルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるファンアウトURIと異なることを判定することと、グループリソースに参加する必要があるメンバーリソースを、グループリソース識別子に対応するグループリソース内のファンアウトURIとメンバーリソースとの間のマッピング関係に追加し、マルチキャストグループに参加するためのグループアドバタイズメントを、グループリソースに参加する必要があるメンバーリソースを有するメンバーデバイスに送信することとを行うようにさらに構成され、マルチキャストグループに参加するためのグループアドバタイズメントは、グループリソース識別子に対応するグループリソース内のマルチキャストアドレスとファンアウトURIとの間のマッピング関係およびファンアウトURIとメンバーリソースとの間のマッピング関係を運び、これにより、ファンアウトURIを運ぶアクセスリクエストを受信した後、メンバーデバイスは、ファンアウトURIとメンバーリソースとの間の受信されたマッピング関係に従って、メンバーデバイス上のメンバーリソースのアクセス経路を判定し、メンバーデバイス上のメンバーリソースの判定されたアクセス経路に従って対応するメンバーリソースアクセスリクエストを実行する。
【００３９】
任意選択として、受信モジュールは、メンバーリソースを削除するためのグループリソース更新リクエストを受信するようにさらに構成され、メンバーリソースを削除するためのグループリソース更新リクエストは、グループリソースから脱退する必要があるメンバーリソースとグループリソース識別子とを運び、グループリソースから脱退する必要があるメンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、処理モジュールは、グループリソース識別子に従って、グループリソースから脱退する必要があるメンバーリソースに対応するファンアウトURI、およびグループリソースから脱退する必要があるメンバーリソースに対応するマルチキャストアドレスとファンアウトURIとの間のマッピング関係を判定し、グループリソースから脱退する必要があるメンバーリソースをマッピング関係から削除し、マルチキャストグループから脱退するためのグループアドバタイズメントを、脱退する必要があるメンバーリソースを有するメンバーデバイスに送信するようにさらに構成され、マルチキャストグループから脱退するためのグループアドバタイズメントは、マルチキャストアドレスとグループリソースから脱退する必要があるメンバーリソースに対応するファンアウトURIとの間のマッピング関係におけるマルチキャストアドレスを運び、これにより、脱退する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスによって指示されたマルチキャストグループから脱退し、または
受信モジュールは、メンバーリソースを削除するためのグループリソース更新リクエストを受信するようにさらに構成され、メンバーリソースを削除するためのグループリソース更新リクエストは、グループリソースで予約済みである必要があるメンバーリソースとグループリソース識別子とを運び、グループリソースで予約済みである必要があるメンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、処理モジュールは、グループリソース識別子に従って、ファンアウトURIとグループリソースから脱退する必要があるメンバーリソースとの間のマッピング関係を判定し、グループリソースで予約済みである必要があるメンバーリソースを使用して、ファンアウトURIとグループリソースから脱退する必要があるメンバーリソースとの間のマッピング関係におけるメンバーリソースを更新し、マルチキャストグループから脱退するためのグループアドバタイズメントを、脱退する必要があるメンバーリソースを有するメンバーデバイスに送信するようにさらに構成され、マルチキャストグループから脱退するためのグループアドバタイズメントは、マッピング関係におけるマルチキャストアドレスを運び、これにより、脱退する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスによって指示されたマルチキャストグループから脱退する。
【００４０】
任意選択として、処理モジュールは、メンバーリソースを削除するためのグループリソース更新リクエスト内のグループリソース識別子に従って、メンバーデバイス上のグループリソースから脱退する必要があるメンバーリソースのアクセス経路が脱退する必要があるメンバーリソースに対応するファンアウトURIと異なることを判定するようにさらに構成され、マルチキャストグループから脱退するためのグループアドバタイズメントは、グループリソースから脱退する必要があるメンバーリソースに対応するファンアウトURIをさらに含み、これにより、グループリソースから脱退する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスによって指示されたマルチキャストグループから脱退し、グループリソースから脱退する必要があるメンバーリソースおよびマルチキャストグループから脱退するためのグループアドバタイズメントにおけるファンアウトURIに従って、メンバーリソースを削除するためのグループリソース更新リクエスト内のグループリソース識別子に対応するマルチキャストグループ情報内のメンバーリソースを削除する。
【００４１】
それに加えて、別の態様では、本発明は、メンバーデバイスをさらに提供し、このメンバーデバイスはグループサーバによって送信されたメンバーリソースアクセスリクエストを受信するように構成された受信モジュールであって、メンバーリソースアクセスリクエストは、マルチキャストメンバーリソースアクセスリクエストであり、メンバーリソースアクセスリクエストは、メンバーリソースに対応するファンアウトURIを含み、ファンアウトURIは、メンバーデバイス上のメンバーリソースのアクセス経路を示すために使用される、受信モジュールと、オペレーティングモジュールであって、ファンアウトURIに従って、メンバーデバイス上のメンバーリソースのアクセス経路を判定し、メンバーデバイス上のメンバーリソースのアクセス経路に従ってアクセスリクエストのオペレーションを実行するように構成されたオペレーティングモジュールとを備える。
【００４２】
任意選択として、メンバーデバイスの受信モジュールは、マルチキャストグループに参加するためのグループアドバタイズメントを受信することであって、マルチキャストグループに参加するためのグループアドバタイズメントがマルチキャストアドレスを運ぶ、受信することと、マルチキャストグループに参加するためのグループアドバタイズメントに従って、マルチキャストアドレスに対応するマルチキャストグループに参加することとを行うようにさらに構成されている。
【００４３】
任意選択として、マルチキャストグループに参加するためのグループアドバタイズメントは、ファンアウトURIとメンバーリソースとの間のマッピング関係を運び、メンバーデバイスは、ファンアウトURIとマルチキャストアドレスとの間のマッピング関係、およびメンバーリソースとマルチキャストアドレスとの間のマッピング関係を格納するように構成された格納モジュールをさらに備える。
【００４４】
任意選択として、メンバーデバイスは、メンバーリソースアクセスリクエストの送信先アドレスがマルチキャストアドレスであることを判定するように構成された判定モジュールをさらに備える。
【００４５】
任意選択として、メンバーデバイスのオペレーティングモジュールによって、ファンアウトURIに従って、メンバーデバイス上のメンバーリソースのアクセス経路を判定することは、特に、メンバーリソースアクセスリクエスト内の送信先アドレスと同じマルチキャストアドレスを含むマルチキャストグループ情報を判定し、メンバーリソースアクセスリクエスト内の送信先アドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報が、メンバーリソースアクセスリクエスト内の送信先URIと同じファンアウトURIを含むことを判定し、メンバーデバイス上のマルチキャストグループ情報内のファンアウトURIに対応するメンバーリソースのアクセス経路を判定することを行う。
【００４６】
任意選択として、メンバーデバイスのオペレーティングモジュールによって、メンバーデバイス上のメンバーリソースのアクセス経路に基づくアクセスリクエストのオペレーションを実行することは、特に、メンバーリソースアクセスリクエスト内の送信先URIに含まれるファンアウトURIをメンバーデバイス上のメンバーリソースの判定されたアクセス経路で置き換え、メンバーデバイス上のメンバーリソースの判定されたアクセス経路に対応するメンバーリソースに対するアクセスリクエストのオペレーションを実行することを行う。
【００４７】
任意選択として、メンバーデバイスの受信モジュールは、マルチキャストグループから脱退するためのグループアドバタイズメントを受信するようにさらに構成され、マルチキャストグループから脱退するためのグループアドバタイズメントはマルチキャストアドレスを運び、メンバーデバイスの格納モジュールは、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応する格納されているマルチキャストグループ情報を削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスに対応するマルチキャストグループから脱退するようにさらに構成されている。
【００４８】
任意選択として、メンバーデバイスの受信モジュールは、マルチキャストグループから脱退するためのグループアドバタイズメントを受信するようにさらに構成され、マルチキャストグループから脱退するためのグループアドバタイズメントは、マルチキャストアドレスおよび脱退する必要があるメンバーリソースを運び、脱退する必要があるメンバーリソースは、グループリソースから脱退する必要があるメンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、メンバーデバイスの格納モジュールは、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報においてグループリソースから脱退する必要がある格納されているメンバーリソースを削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応する格納されているマルチキャストグループ情報を削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスに対応するマルチキャストグループから脱退するようにさらに構成されている。
【００４９】
任意選択として、メンバーデバイスの格納モジュールは、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報においてファンアウトURIに対応していない格納されているメンバーリソースを判定するようにさらに構成されている。
【００５０】
本発明の実施形態において提供される技術的解決法からわかるように、グループリソースにおいてマルチキャストアドレスとファンアウトURIとの間に確立されているマッピング関係に従って、メンバーリソースアクセスリクエストは、マルチキャストによって、グループリソース内のメンバーリソースを有するメンバーデバイスに送信され得、ファンアウトURIは、メンバーリソースアクセスリクエストに含められ、これにより、メンバーリソースを有するメンバーデバイスが、ファンアウトURIによって指示されるメンバーデバイス上のメンバーリソースのアクセス経路に従って、メンバーリソースアクセスリクエストによって指示されたオペレーションを実行する。したがって、グループサーバは、アクセスリクエストを各メンバーデバイスにユニキャストする必要がなく、ネットワークのオーバーヘッドが軽減される。
【００５１】
本発明の実施形態における技術的解決策をより明確に説明するために、以下において、実施形態の説明に必要な添付図面を簡単に紹介する。明らかに、以下の説明の添付図面は、本発明のいくつかの実施形態を示しているにすぎず、当業者であれば、創造的労力を費やすことなくこれらの添付図面から他の図面を導き出すことができる。
【図面の簡単な説明】
【００５２】
【図１】本発明の一実施形態によるメンバーリソースにアクセスするための方法の流れ図である。
【図２】本発明の一実施形態によるグループリソースを作成するための方法の流れ図である。
【図２Ａ】本発明の一実施形態によるマルチキャストグループを作成するステップの流れ図である。
【図２Ｂ】本発明の一実施形態によるM2Mネットワーク接続関係を示すアーキテクチャの略図である。
【図２Ｃ】本発明の一実施形態によりマルチキャストアドレスをメンバーデバイスに割り当て、マッピング関係を確立するステップの流れ図である。
【図２Ｄ】本発明の一実施形態によるM2Mネットワーク接続関係を示すアーキテクチャの略図である。
【図２Ｅ】本発明の一実施形態によるM2Mネットワーク接続関係を示すアーキテクチャの略図である。
【図２Ｆ】本発明の一実施形態によるグループリソース表現に含まれるRESTfulリソースの略図である。
【図２Ｇ】本発明の一実施形態によりメンバーデバイスによって格納されるマルチキャストグループリソースの略図である。
【図３】本発明の一実施形態によるメンバーリソースにアクセスするための方法の流れ図である。
【図３Ａ】本発明の一実施形態によるメンバーデバイスによって受信されたメンバーリソースアクセスリクエストを処理するための方法の流れ図である。
【図４】本発明の一実施形態により直接割り当てられたマルチキャストアドレスを使用することによってメンバーリソースにアクセスするための方法の流れ図である。
【図５】本発明の一実施形態によりリクエストされたグローバルマルチキャストアドレスを使用することによってメンバーリソースにアクセスするための方法の流れ図である。
【図６Ａ】本発明の一実施形態によりリモートから割り当てられたマルチキャストアドレスを使用することによってメンバーリソースにアクセスするための方法の流れ図である。
【図６Ｂ】本発明の一実施形態によりリモートから割り当てられたマルチキャストアドレスを使用することによってメンバーリソースにアクセスするための方法の流れ図である。
【図７】本発明の一実施形態によるグループサーバの概図である。
【図８】本発明の一実施形態によるメンバーデバイスの概図である。
【発明を実施するための形態】
【００５３】
以下では、本発明の実施形態の添付図面を参照しつつ本発明の実施形態の技術的解決方法について明確に説明する。明らかに、説明されている実施形態は、本発明の実施形態のすべてではなくむしろ一部にすぎない。創造的労力を費やすことなく本発明の実施形態に基づいて当業者が得る他のすべての実施形態は、本発明の保護の範囲内に収まるものとする。
【００５４】
図1に示されているように、本発明の一実施形態によるメンバーリソースにアクセスするための方法は、以下のステップを含む。
【００５５】
ステップ101:メンバーリソースにアクセスするリクエストを受信し、メンバーリソースにアクセスするリクエストは、メンバーリソースが属しているグループリソースのグループリソース識別子を運ぶ。
【００５６】
特に、第1のグループサーバは、メンバーリソースにアクセスするリクエストを受信する。例えば、第1のグループサーバは、グループリソース識別子がGrp4であるメンバーリソースにアクセスするリクエストを次のように受信する。GET http://g1.example.org/groups/grp4/membersContent/data HTTP/1.1.Grp4は、グループリソース識別子であり、「membersContent」部分は、そのリクエストがGrp4に対応するグループリソース内のすべてのメンバーリソースに対するオペレーションであることを示し、「data」は、サフィックスのインスタンスであり、そのリクエストが特に各メンバーリソースの「data」データにアクセスすべきであることを示すために使用される。
【００５７】
ステップ102:グループリソース識別子に従って、グループリソース内のメンバーリソースに対応するファンアウトURIおよびファンアウトURIに対応するマルチキャストアドレスを取得し、ファンアウトURIが、メンバーデバイス上のメンバーリソースのアクセス経路を示すために使用される。
【００５８】
特に、第1のグループサーバが、メンバーリソースにアクセスするリクエストを受信したときに、第1のグループサーバは、最初に、メンバーリソースにアクセスするリクエストにおけるグループリソース識別子に従って、マルチキャストアドレスとファンアウトURIとの間のマッピング関係がグループリソースについて確立されているかどうか、およびファンアウトURIとメンバーリソースとの間のマッピング関係がさらに確立されているかをチェックする。マルチキャストアドレスとファンアウトURIとの間のマッピング関係が確立されている場合、第1のグループサーバは、マルチキャストアドレスとファンアウトURIとの間のマッピング関係に従ってメンバーリソースアクセスリクエストを各メンバーデバイスに送信し、確立されていない場合に、第1のグループサーバは、従来技術の方法に従って、ユニキャストモードでメンバーリソースにアクセスするリクエストを1つずつ送信する。
【００５９】
マルチキャストアドレスとファンアウトURIとの間のマッピング関係が確立されている場合、第1のグループサーバは、マッピング関係に従ってメンバーリソースアクセスリクエストを各メンバーデバイスに送信したときに、メンバーリソースにアクセスするリクエストの送信先アドレスは、マルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるマルチキャストアドレス(つまり、グループサーバによってメンバーリソースに割り当てられたマルチキャストアドレス)に設定されるべきであり、送信先URIは、ファンアウトURIに設定されるべきである。グループリソースが、マルチキャストアドレスとファンアウトURIとの間のマッピング関係の複数のグループを含む場合、メンバーリソースアクセスリクエストは、前記の方法に従って、マルチキャストアドレスとファンアウトURIとの間のマッピング関係の各グループに関して送信されるべきである。第1のグループサーバによって受信される、メンバーリソースにアクセスするリクエスト内の送信先URIが、サフィックス(子リソース、属性、およびメンバーリソースにアクセスするために使用されるパラメータなどの内部情報)をさらに含む場合、対応するサフィックスも、第1のグループサーバによって送信されるメンバーリソースアクセスリクエスト内の送信先URIに従ってファンアウトURIに追加されるべきである。特に、第1のグループサーバは、メンバーリソースにアクセスするリクエスト内の送信先URIがサフィックスをさらに含むことを判定する必要がある。したがって、第1のグループサーバは、送信先URIをメンバーリソースに対応するファンアウトURIに設定し、送信先URIに含まれるサフィックスをファンアウトURIに追加してメンバーリソースアクセスリクエストを生成する必要がさらにある。
【００６０】
特に、各グループリソースについて第1のグループサーバまたは他のグループサーバによって格納されている、マルチキャストアドレスとファンアウトURIとの間のマッピング関係およびファンアウトURIとメンバーリソースとの間のマッピング関係は、Table 1(表1)に示されている通りである。
【００６１】
【表１】
0005891551.tif 000002
【００６２】
Grp4は、グループリソース識別子であり、m41およびm42は、メンバーリソースであり、マルチキャストアドレス[FF32:30:3FFE:FFFF:1::1231]は、グループリソースGrp4内のメンバーリソースm41およびm42に割り当てられたマルチキャストアドレスであり、ファンアウトURI /xxx/temp1は、メンバーリソースを有するメンバーデバイス上のメンバーリソースm41およびm42のアクセス経路である。概して、Table 1(表1)に示されているように、少なくとも2つのメンバーリソースが1つのマルチキャストアドレスおよび1つのファンアウトURIに対応している。
【００６３】
Table 1(表1)で説明されている実施形態において、グループリソースGrp4が、別の例として使用されており、この実施形態におけるTable 1(表1)のマッピング関係によるメンバーリソースm41およびm42のみを含む場合、Table 1(表1)のメンバーリソースの列は、m41およびm42を含まないものとしてよい。この場合、ファンアウトURIとマルチキャストアドレスとの間のマッピング関係のみがTable 1(表1)に含まれている。
【００６４】
ステップ103:マルチキャストアドレスに従って、メンバーリソースアクセスリクエストをメンバーリソースを有するメンバーデバイスに送信し、メンバーリソースアクセスリクエストの送信先URIが、メンバーリソースに対応するファンアウトURIを含み、これにより、メンバーリソースを有するメンバーデバイスが、ファンアウトURIによって指示されるメンバーデバイス上のメンバーリソースのアクセス経路に従って、メンバーリソースアクセスリクエストによって指示されたオペレーションを実行する。
【００６５】
特に、第1のグループサーバは、Table 1(表1)に示されているファンアウトURIとマルチキャストアドレスとの間のマッピング関係に従って以下のメンバーリソースアクセスリクエストをメンバーデバイスに送信する。
GET /xxx/temp1/data HTTP/1.1
Host:[FF32:30:3FFE:FFFF:1::1231]
【００６６】
GETコマンドで運ばれるURIは、サフィックス「data」が追加されたファンアウトURI「/xxx/temp1/data」であり、Hostヘッダフィールドは、マルチキャストアドレス(つまり、第1のグループサーバによってグループリソースGrp4内のメンバーリソースm41およびm42に割り当てられたIPv6マルチキャストアドレス)を運ぶために送信先アドレスとして使用される。
【００６７】
したがって、マルチキャストアドレス[FF32:30:3FFE:FFFF:1::1231]によるGET /xxx/temp1/data HTTP/1.1リクエストを受信した後、メンバーリソースm41およびm42を有するメンバーデバイス(D1およびD2と仮定される)は、データを、サフィックス「data」をメンバーデバイスD1およびD2上の/xxx/temp1経路に付けて第1のグループサーバに送信することができる。したがって、第1のグループサーバは、ユニキャストモードでメンバーリソースアクセスリクエストをメンバーデバイスD1およびD2に送信する必要がなく、ネットワークトラフィックが軽減される。
【００６８】
それに加えて、第1のグループサーバが、メンバーリソースにアクセスするリクエストを受信する前に、第1のグループサーバは、グループリソース作成リクエストをさらに受信し、グループリソース作成リクエストは、各メンバーリソースを運び、メンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、第1のグループサーバはさらに、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って、少なくとも1つのマルチキャストアドレスを、メンバーリソースを有するメンバーデバイスに割り当て、メンバーデバイス上のメンバーリソースのアクセス経路に従ってマルチキャストアドレスとファンアウトURIとの間のマッピング関係を確立し、ファンアウトURIが、メンバーデバイス上のメンバーリソースのアクセス経路を示すために使用され。特に、第1のグループサーバによって、グループリソースを作成し、マルチキャストアドレスとファンアウトURIとの間のマッピング関係を確立することについては、図2の説明を参照することができる。以下のステップが含まれる。
【００６９】
ステップ201:第1のグループサーバは、グループリソース作成リクエストを受信し、グループリソース作成リクエストが、各メンバーリソースを運び、メンバーリソースが、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含む。
【００７０】
ステップ202:第1のグループサーバは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従ってメンバーリソースの特性を取得し、メンバーリソースの特性に従って、マルチキャストグループを作成する必要があるかどうかを決定する。特に、第1のグループサーバによって、マルチキャストグループを作成する必要があるかどうかを決定することについては、図2Aの説明を参照することができる。以下のステップが含まれる。
【００７１】
ステップ202-1:第1のグループサーバは、グループリソース作成リクエストを解析して、グループリソースの特性の記述およびそのメンバーリソースの特性の記述を取得するが、ただし、これは、限定はしないが、グループリソースの型属性(静的、動的、または一時的グループであるかないか)、グループリソースの目的(リクエストに対する信頼できる応答を必要とするかしないか)、メンバーデバイス上のメンバーリソースのアクセス経路、メンバーリソースのアクセスインターフェース、メンバーリソースを有するメンバーデバイス、およびそのネットワーク特徴(マルチキャストをサポートするかしないか)などの特性を含む。
【００７２】
例えば、グループリソースの特性の記述は、グループリソース作成リクエストで運ばれたグループリソースの記述内容から取得され得る。グループリソースの記述内容は、グループリソースの型属性および目的を含む。メンバーリソースの特性の記述は、グループリソース記述に含まれるメンバーリソースのURI情報に従って取得され、メンバーリソースのURI構造体、メンバーリソースのアクセスインターフェース、および同様のものを含むことができる。メンバーリソースを有するメンバーデバイスは、メンバーリソースのURIに従ってさらにアクセスされ得るが、これにより、メンバーリソースを有するメンバーデバイスおよびメンバーデバイスのネットワーク特徴などの特性がさらに取得される。
【００７３】
ステップ202-2:グループリソース作成リクエストのグループ記述に従って、作成されるべきグループリソースが比較的静的であるグループであるか、または頻繁に変更される動的グループであるかを判定し、作成されるべきグループリソースが比較的静的であるグループである場合、その後の判定プロセスを実行し、作成されるべきグループリソースが動的グループである場合、グループリソースに対するマルチキャストグループを作成せずにプロセスを終了し、それによって、頻繁なグループ変更によって引き起こされるマルチキャストグループ作成およびメンテナンスのオーバーヘッドを回避する。比較的静的であるグループは、グループ記述が特定のメンバーリソースリストを含むとともに、メンバー変更がグループ管理コマンド(例えば、メンバーの追加/削除)に従って第1のグループによって制御されるグループとすることができる。動的グループは、限定はしないが、特定の条件に合致するリソースセットであるメンバーリソース、例えば、特定の地理的範囲内のメンバーリソースまたは他の同じ特性を有するメンバーリソースを含むグループを含み、グループメンバーの変更は、メンバーリソースの特性の変更(例えば、メンバーが地理的範囲を出入りするか、またはグループがチャネルを選択する)に従って自動的にトリガーされ得る。
【００７４】
ステップ202-3:グループリソース作成リクエストで運ばれるメンバーリソースのアクセスインターフェースに従って、メンバーリソースのアクセスインターフェースが整合しているかどうかを判定し、メンバーリソースのアクセスインターフェースが整合している場合、その後の判定プロセスを実行し、整合していない場合、グループリソースに対するマルチキャストグループを作成せずにプロセスを終了する。メンバーリソースのアクセスインターフェースが整合しているかどうかは、特に、アクセスに同じマルチキャストデータパケット(例えば、IPv4またはIPv6データパケット)が使用できるかどうかである。例えば、複数のメンバーリソースにアクセスするためのURIが、同じプロトコルおよびアクセスポート番号に適合し、複数のメンバーリソースのURIにおけるアクセス経路が、異なるメンバーデバイス上で同じである場合、複数のメンバーリソースが同じリソースアクセスインターフェースを有するとみなせる。実際のシステムでは、URIは、URL(Uniform Resource Locator、ユニフォームリソースロケータ)によって表されるものとしてよく、URLの基本構造は、以下の通りである。
<scheme>://<authority>:<port>/<path>?<query>#<fragment>
【００７５】
<scheme>部は、そのURLに対応するリソースにアクセスするために使用されるプロトコル(例えば、HTTPまたはCoAP)を決定し、<authority>部は、メンバーリソースを有するメンバーデバイスのアドレス(例えば、IPアドレスまたはドメイン名)を決定し、<port>は、プロトコルアクセスポート番号を指示する、任意選択の項目であり、<path>?<query>#<fragment>は、メンバーデバイス上のリソースにアクセス経路を指示する。
【００７６】
例えば、M2MプラットフォームN1、M2MデバイスD1、およびM2MゲートウェイG1のドメイン名は、それぞれ、n1.example.com、d1.example.com、およびg1.example.comであると仮定し、N1上のグループリソースGrp1のURLは、
Grp1=http://n1.example.com/groups/grp1
である。
その中に含まれるメンバーリソースm11、m12、m13、およびm14のURLは、それぞれ、以下の通りである。
m11=coap://d1.example.com/xxx/temp1
m12=coap://d1.example.com/yyy/temp2
m13=coap://g1.example.com/xxx/temp1
m14=http://n1.example.com/xxx/temp1
【００７７】
同じCoAPがその<scheme>で使用され、メンバーデバイス(ここではd1およびg1)の両方のアクセス経路が/xxx/temp1であるため、4つのメンバーリソースのうち、m11およびm13は、同じリソースアクセスインターフェースを有しており、逆に、メンバーデバイスd1上のm12のアクセス経路が/yyy/temp2であり、m14の<scheme>がHTTPであるため、m12およびm14は、他のメンバーリソースと異なるリソースアクセスインターフェースを有する。この例では、マルチキャストグループは、m11およびm13について作成され得るが、m12およびm14は、含まれない。
【００７８】
ステップ202-4:第1のグループサーバは、メンバーリソース、メンバーリソースを有するメンバーデバイス、およびメンバーデバイスが属するネットワークがマルチキャストをサポートしているかどうかを判定し、マルチキャストがサポートされている場合、その後の判定プロセスを実行し、サポートされていない場合、グループリソースに対するマルチキャストグループを作成せずにプロセスを終了する。メンバーリソースがマルチキャストをサポートしているかどうかは、メンバーリソースに対応するURLがマルチキャストプロトコルアクセスをサポートしているかどうかに従って判定され得る(例えば、HTTPによってサポートされていないが、CoAPによってサポートされている)。第1のグループサーバは、メンバーリソースおよびメンバーリソースを有するメンバーデバイスの、登録情報などの、関係するリソース表現情報を取得し、登録情報などのリソース表現情報に従って、メンバーリソースを有するメンバーデバイスおよびメンバーデバイスが属するネットワークがマルチキャストをサポートしているかどうかを判定する必要がさらにある場合がある。
【００７９】
例えば、M2MプラットフォームN1上で、メンバーリソースm11を有するメンバーデバイスD1の登録情報は、URL:http://n1.example.com/scls/d1に従ってアクセスされ得る。
【００８０】
第1のグループサーバは、HTTP GETリクエストをN1に送信して、URLに対応するリソース表現内容を取得することができる。ソース表現内容において、D1がマルチキャストをサポートしているかどうかは、特別な属性(例えば、「multicastEnabled」)によって指示され得る。属性の値がTRUEである場合、これはマルチキャストがサポートされていることを示す。属性の値がFALSEである場合、これはマルチキャストがサポートされていないことを示す。
【００８１】
任意選択として、メンバーリソースを有するメンバーデバイスがマルチキャストをサポートしていないとしても、メンバーリソースがマルチキャストをサポートしている別のデバイスを通じてアクセスされる必要があるときに、メンバーリソースを有するメンバーデバイスがマルチキャストをサポートしていることも判定され得る。図2Bに示されているように、第1のグループサーバは、M2MデバイスD1であり、グループリソースGrp2は、M2Mプラットフォーム上のメンバーリソースm21を含むが、D1は、M2MゲートウェイG1を通じてm21にアクセスする。
【００８２】
D1とG1との間の通信リンクがマルチキャストをサポートしている場合(例えば、CoAP)、D1は、マルチキャストモードで、リクエストをG1に送信することができ、次いで、G1は、そのリクエストをユニキャストモードに変換し(例えば、HTTP)、N1上のm21にアクセスする。この場合、メンバーリソースm21にアクセスするためにマルチキャストがサポートされているとみなせる。
【００８３】
ステップ202-5:第1のグループサーバは、前記の条件に合致するメンバーリソースを有するメンバーデバイスの数量が特定の数量に達したかどうかを判定し、前記の条件に合致するメンバーリソースを有するメンバーデバイスの数量がその特定の数量に達した場合に、その後のステップを実行し、合致していない場合、グループリソースに対するマルチキャストグループを作成せずにプロセスを終了する。ここで、事前構成されたポリシーまたはパラメータに従って決定された数量は、マルチキャストグループを作成するための閾値として使用され得る。閾値に達していない場合、前記のメンバーリソースについてマルチキャストグループを作成する必要はなく、したがって、マルチキャストグループの管理のオーバーヘッドが軽減される。
【００８４】
ステップ202-2から202-5の時系列は、厳密に制限されていないこと、および本発明の実施形態によって本明細書において制限されていない、構成されたポリシーまたは能力に応じて第1のグループサーバが202-2から202-5の1つまたは複数のステップのみを実行し得ることに留意されたい。それに加えて、第1のグループサーバは、グループリソースのメンバーリソースにアクセスするリクエストが信頼できる応答を必要としているかどうかをさらに判定することができ、グループリソースに対するメンバーアクセスが信頼できる応答を必要としている場合、グループリソースに対するマルチキャストグループを作成せずにプロセスを終了し、必要としている場合、その後の判定プロセスを実行する。
【００８５】
信頼できる応答を必要とするということは、メンバーリソースを有するメンバーデバイスがメンバーリソースアクセスリクエストを受け取った後にオペレーションの成功または失敗を示す応答メッセージが返されなければならないことを意味する。特に、CoAPにおけるConfirmable(CON)タイプのリクエストメッセージは、信頼できる応答を必要とするメンバーリソースアクセスリクエストであり、メンバーリソースアクセスリクエストの受信側は、Acknowledgement(ACK)またはReset(RST)タイプの応答メッセージを返さなければならず、Non-Confirmable(NON)タイプのリクエストメッセージは、メッセージ受信側が応答メッセージを返すことを必要としない。
【００８６】
ステップ203:マルチキャストアドレスをメンバーリソースに、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って割り当て、メンバーデバイス上のメンバーリソースのアクセス経路に従ってマルチキャストアドレスとファンアウトURIとの間のマッピング関係を確立する。特に、図2Cの説明を参照することができる。以下のステップが含まれる。
【００８７】
ステップ203-1:第1のグループサーバは、ステップ202においてさまざまな条件に合致するメンバーリソースを有するメンバーデバイスが属しているマルチキャストドメインの状態、およびすべてのメンバーデバイスがローカルマルチキャストドメインに属しているかどうかを分析し、すべてのメンバーデバイスがローカルマルチキャストドメインに属している場合、ステップ203-4を実行し、属していない場合、ステップ203-2を実行する。
【００８８】
特に、本発明の実施形態において、マルチキャストドメインは、ローカルマルチキャストドメイン、リモートマルチキャストドメイン、およびグローバルマルチキャストドメインに分類され得る。ローカルマルチキャストドメインは、第1のグループサーバによって管理されるネットワークアドレスのエリアである。第1のグループサーバは、ローカルマルチキャストドメインのマルチキャストアドレス(ローカルマルチキャストアドレス)をエリア内のメンバーデバイスに割り当てる能力を有する。エリア内のデバイスがローカルマルチキャストアドレスによって指示されたマルチキャストグループに参加した後、ローカルマルチキャストアドレス宛てのデータパケットが、ローカルマルチキャストグループに参加しているすべてのメンバーデバイスによって受信され得る。リモートマルチキャストドメインは、第1のグループサーバによって管理されるネットワークアドレスのエリア以外のエリアである。グループサーバは、ローカルマルチキャストアドレスをリモートマルチキャストドメインに割り当てる能力を有せず、ローカルマルチキャストドメイン内のメンバーデバイスは、リモートマルチキャストドメインのマルチキャストアドレス(リモートマルチキャストアドレス)宛てのデータパケットを受信することができず(ローカルマルチキャストアドレスとリモートマルチキャストアドレスとが同じであっても、異なるマルチキャストドメインによって同じアドレス空間が繰り返し使用され得るため)、またその逆もある。グローバルマルチキャストドメインは、ローカルマルチキャストドメインおよびリモートマルチキャストドメインを含むネットワークエリア全体を指す。したがって、ローカルネットワークデバイスおよびリモートネットワークデバイスは、グローバルマルチキャストドメイン内のマルチキャストアドレス(グローバルマルチキャストアドレス)によって指示されたマルチキャストグループに参加している限りにおいてグローバルマルチキャストアドレス宛てのデータパケットを受信することができる。グローバルマルチキャストアドレスは、グローバルネットワークエンティティによって統一された様式で管理され、割り当てられ、また、特定のアドレスプランニングに従って予めいくつかのグループサーバに割り当てることもできる。IPv4およびIPv6マルチキャストアドレス空間の割り当て方式のガイドについては、[RFC 3171]および[RFC 4291]などの標準文書を参照することができる。どのマルチキャストドメインにメンバーデバイスが特に属しているかは、メンバーデバイスとグループサーバとの間の接続関係に従って決定され得る。例えば、メンバーデバイス(例えば、M2Mデバイス)が第1のグループサーバ(例えば、M2Mゲートウェイ)に登録されている場合、メンバーデバイスは、グループサーバのローカルマルチキャストドメインに属していると考えることができる。メンバーデバイスが、第1のグループサーバと同じレベルにある別のエンティティ(例えば、別のM2Mゲートウェイ)、または第1のグループサーバより高いレベルにある別のエンティティ(つまり、メンバーデバイスは、第2のグループサーバに属している)に登録される場合、メンバーデバイスは、リモートマルチキャストドメインに属していると考えることができる。つまり、第1のグループサーバは、グループリソース作成リクエストにおけるメンバーアドレスに従って各メンバーデバイスの登録情報を取得し、次いで、登録情報に従って、メンバーデバイスがローカルマルチキャストドメインに属しているかどうかを判定する。
【００８９】
ステップ203-2:第1のグループサーバは、グローバルマルチキャストアドレスがグループリソースのメンバーデバイスに割り当てられ得るかどうかを判定し、グローバルマルチキャストアドレスがグループリソースのメンバーデバイスに割り当てられ得る場合、ステップ203-5を実行し、割り当てることができない場合、ステップ203-3を実行する。
【００９０】
特にステップ203-1で説明されているように、グローバルマルチキャストアドレスは、アドレスプランニングポリシーに従って予めいくつかのグループサーバに割り当てられ得る。したがって、第1のグループサーバが、グループリソースのメンバーデバイスのすべてが第1のグループサーバによって管理されるローカルマルチキャストドメインに属しているとは限らないと判定した場合、第1のグループサーバは自己探索して、未割り当てのグローバルマルチキャストアドレスが、予め割り当てられているグローバルマルチキャストアドレス空間内に存在しているかどうかを調べるか、または第1のグループサーバは、グローバルマルチキャストアドレス割り当てを管理する役割を有するグローバルエンティティにアドレス割り当てリクエストを送信する。第1のグループサーバによって、グローバルマルチキャストアドレスを管理する役割を有するグローバルマルチキャストアドレス管理エンティティにアドレス割り当てリクエストを送信する特定の実装様式は以下の通りである。
【００９１】
グローバルマルチキャストアドレス管理エンティティがM2MプラットフォームN1であり、N1上でグローバルマルチキャストアドレスを割り当てるためのリソースURLは、http://n1.example.com/mcAddrPoolであると仮定すると、第1のグループサーバは、HTTP GETリクエストに従ってリソースhttp://n1.example.com/mcAddrPoolにアクセスすることができる。N1が成功応答を返した場合、第1のグループサーバによってリクエストされたグローバルマルチキャストアドレスは、応答メッセージのメッセージ本文から取得され得る。N1が失敗応答を介した場合、これは、M2MプラットフォームN1がグローバルマルチキャストアドレスをメンバーデバイスに割り当てることができないことを意味する。
【００９２】
実際、第1のグループサーバは、ローカルまたはリモートマルチキャストアドレスの割り当てを管理する役割を有する別のエンティティ(例えば、別のグループサーバ)によって割り当てられるべきリモートまたはグローバルマルチキャストアドレスをリクエストするために類似の方法を使用することもできる。実装様式は、M2MプラットフォームN1にグローバルマルチキャストアドレスをリクエストする様式に類似しており、本発明では詳しく説明しない。
【００９３】
ステップ203-3:第1のグループサーバは、ローカルマルチキャストドメインに属していないメンバーデバイス(非ローカルメンバーデバイス)が、第2のグループサーバを通じてアクセスされ得るかどうかを判定し、ローカルマルチキャストドメインに属していないメンバーデバイスが、第2のグループサーバを通じてアクセスされ得る場合、ステップ203-6を実行し、アクセスされ得ない場合、ステップ203-7を実行する。例えば、第1のグループサーバが第1のM2MゲートウェイG1であること、およびグループリソースGrp3が、以下の非ローカルメンバーリソースm31、m32、m33、およびm34を含むことを仮定する。
m31=http://d2.example.com/xxx/temp1
m32=http://d2.example.com/xxx/temp2
m33=coap://d3.example.com/xxx/temp1
m34=coap://d4.example.com/xxx/temp1
【００９４】
そのとき、m31およびm32を有するメンバーデバイスは、M2MデバイスD2であり、その一方で、m33およびm34を有するメンバーデバイスは、それぞれ、M2MデバイスD3およびD4であり、D2、D3、およびD4のどれも、G1のローカルマルチキャストドメインに属しない。D3およびD4が第2のM2MゲートウェイG2を通じてアクセスできること、およびその接続関係が図2に示されていることを仮定する。したがって、メンバーリソース(m31、m32)は、第2のグループサーバ(図2DのM2MデバイスD2)を通じてアクセスできるが、メンバーリソース(m33、m34)は、第3のグループサーバ(図2DのM2MゲートウェイG2)を通じてアクセスできると考えられ得る。しかし、D2またはG2が、デバイスの能力などの理由からグループサーバとして動作できない場合、メンバーリソース(m31、m32)または(m33、m34)は、別のグループサーバを通じて、特に本発明の第1のグループサーバ(図2DのM2MゲートウェイG1)を通じてアクセスできないと考えられ得る。
【００９５】
ただ1つのメンバーリソース(例えば、m31のみが存在し、m32が存在していない)が別のグループサーバを通じてアクセスされ得るとしても、ステップ203-6は、そのまま、メンバーリソースm31に対するグループリソースを作成するために実行され得ることに留意されたい。効率を改善する観点から、第1のグループサーバは、事前構成されたポリシーまたはパラメータに従ってメンバー数量閾値を決定することができる。閾値に達しない場合、前記の判定条件は満たされていないと考えられる。したがって、ステップ203-6以外のステップ203-7が実行され、グループ管理のオーバーヘッドが軽減される。
【００９６】
ステップ203-4:第1のグループサーバは、ローカルマルチキャストアドレスをマルチキャストをサポートするローカルメンバーデバイスに割り当てる。
【００９７】
ステップ203-5:第1のグループサーバは、グローバルマルチキャストアドレスをマルチキャストをサポートするすべてのメンバーデバイスに割り当てる。
【００９８】
ステップ203-6:第1のグループサーバは、ステップ203-3の判定結果に従って、第2のグループサーバ上で第2のグループリソースを作成するように第2のグループサーバにリクエストし、第2のグループリソースは、第1のグループサーバによって管理されず、第2のグループサーバを通じてアクセスされ得るメンバーリソースを含む。後で、第2のグループサーバは、本発明で開示されている方法に従って図2のステップ201からの関係するプロセスの実行を開始するが、これについては、本発明の実施形態においてさらに説明することはしない。
【００９９】
ステップ203-7:第1のグループサーバは、第2のグループサーバを通じてアクセスできない非ローカルメンバーリソースのリストを記録しておき、後からユニキャストモードでそれらのメンバーリソースにアクセスする。
【０１００】
ステップ203-8:第2のグループサーバ(例えば、図2DのG2)がローカルマルチキャストドメインデバイスであるかどうか(つまり、第1のグループサーバを通じてアクセスが実行されるかどうか)を判定し、第2のグループサーバがローカルマルチキャストドメインデバイスである場合、ステップ203-9を実行する。第1のグループサーバは、ローカルマルチキャストアドレスを第2のグループサーバにさらに割り当てて、ステップ203-10を実行することができる。そうでない場合、メンバーリソースと第2のグループサーバとの間のマッピング関係を確立し、デフォルトのユニキャストモードで第2のグループサーバにアクセスする。図2Dに示されている例では、第2のグループサーバD2またはG2は、第1のグループサーバG1のローカルマルチキャストデバイスでない。
【０１０１】
ステップ203-10:ステップ203-4、203-5、もしくは203-9におけるマルチキャストアドレス割り当て結果、または203-8における第2のグループサーバのアクセスアドレス、または203-7におけるメンバーデバイスのアドレスに従って第1のグループサーバ内のグループリソースに対するマッピング関係を確立する。
【０１０２】
特に、同じマルチキャストドメイン内のメンバーリソースは、1つのマルチキャストアドレスを共有することができるが、さまざまな種類のマッピング関係が、メンバーリソースのアクセスインターフェースが整合しているかどうかに従ってグループリソースに対して確立され得る。特に、メンバーリソースのアクセスインターフェースが同じであるかどうかに関係なく、グループリソース識別子を割り当てられたマルチキャストアドレスに関連付け、マルチキャストアドレスと「ファンアウトURI」との間のマッピング関係を確立する必要がある。ファンアウトURIは、グループリソースのメンバーリソースにアクセスするリクエストを受信したときに第1のグループサーバによってメンバーデバイスに送信されるメンバーリソースアクセスリクエストの送信先URIである。特に、メンバーリソースのURIが、同じプロトコルおよびアクセスポート番号に適合している場合、メンバーデバイス上のメンバーリソースのアクセス経路は、同じであり、ファンアウトURIは、メンバーデバイス上のメンバーリソースのアクセス経路である。URIが、同じプロトコルおよびアクセスポート番号に適合しているが、メンバーデバイス上のアクセス経路が異なる場合、ファンアウトURIは、仮想リソース識別子(グループリソース識別子であっても、または別の形態のリソース識別子であってもよい)に設定される。マルチキャストアドレスとファンアウトURIとの間のマッピング関係を確立するステップについては、以下の事例を参照することができる。
【０１０３】
第1の事例:メンバーデバイス上のグループリソースのメンバーリソースのアクセス経路は、同じである。
【０１０４】
例えば、M2MゲートウェイG1上のグループリソースGrp4は、Grp4=http://g1.example.org/groups/grp4である。
【０１０５】
その中に含まれるメンバーリソースは、M2MデバイスD1上のm41およびM2MデバイスD5上のM42である。
m41=coap://d1.example.org/xxx/temp1
m42=coap://d5.example.org/xxx/temp1
【０１０６】
第1のグループサーバ(この例ではM2MゲートウェイG1)によってグループリソースGrp4内のメンバーリソースm41およびm42に割り当てられるIPv6マルチキャストアドレスは、[FF32:30:3FFE:FFFF:1::1231]であり、デバイス間のネットワーク接続関係は、図2Eに示されている(つまり、メンバーリソースm41およびm42を有するメンバーデバイスD1およびD2は両方ともM2MゲートウェイG1に属す)。ファンアウトURI(/xxx/temp1)とグループリソースGrp4のマルチキャストアドレス([FF32:30:3FFE:FFFF:1::1231])との間のマッピング関係およびファンアウトURI(/xxx/temp1)とグループリソースGrp4のメンバーリソース(m41およびm42)との間のマッピング関係は、Table 1(表1)に示されている通りである。確かに、この場合、メンバーデバイス上のグループリソースを有するすべてのメンバーリソースのアクセス経路は、同じであるため、すべてのメンバーリソースは、1つのマルチキャストアドレスをおよび1つのファンアウトURIに対応する。したがって、さらに、このマッピング関係は、ファンアウトURIとグループリソースGrp4のマルチキャストアドレスとの間の唯一のマッピング関係であってよく、ファンアウトURIとグループリソースのメンバーリソースとの間のマッピング関係を記録することは不要である。しかし、同じグループサーバは、概して、複数のグループリソースを含むが、各グループリソースのメンバーリソースの特徴は、整合しない。したがって、記録の整合性のために、ファンアウトURIとメンバーリソースとの間のマッピング関係を記録することが不要であっても、メンバーリソースがリスト内のマッピング関係に記録され得るか、または関係する属性が予約されるものとしてよく、これにより、記録の整合性が保証される。
【０１０７】
第2の事例:グループリソースのメンバーリソースは、メンバーリソースを有するメンバーデバイスを表す。
【０１０８】
例えば、M2MゲートウェイG1上のグループリソースGrp5は、Grp5=http://g1.example.org/groups/grp5であり、含まれるメンバーリソースは、それぞれ、M2MデバイスD1、D5、およびD6上のm51、m52、およびm53であり、以下の通りであると仮定する。
m51=coap://d1.example.org/
m52=coap://d5.example.org/
m53=coap://d6.example.org/
【０１０９】
割り当てられたIPv6マルチキャストアドレスは、[FF32:30:3FFE:FFFF:1::1232]であり、デバイス間のネットワーク接続関係は、そのまま図2Eに示されている通りである(つまり、メンバーリソースm51、m52、およびm53をそれぞれ有するすべてのメンバーデバイスD1、D5、およびD6は、M2MゲートウェイG1に属す)。したがって、メンバーリソースm51、m52、およびm53に対応するファンアウトURIは、ルート記号「/」であり、ファンアウトURI(/)とグループリソースGrp5のマルチキャストアドレス([FF32:30:3FFE:FFFF:1::1232])との間のマッピング関係およびファンアウトURI(/)とメンバーリソース(m51、m52、およびm53)との間のマッピング関係はTable 2(表2)に示されている通りである。この場合、ファンアウトURI情報も、簡単のため省くことができる。それに加えて、この場合、このマッピング関係は、マルチキャストアドレス([FF32:30:3FFE:FFFF:1::1232])、ファンアウトURI(/)、およびグループリソースのメンバーリソース(m51、m52、およびm53)の間のマッピング関係とも称することができる。本発明の実施形態において特に断りのない限り、このマッピング関係は、マルチキャストアドレス、メンバーリソース、およびファンアウトURIの間のマッピング関係を指す。
【０１１０】
第3の事例:各メンバーデバイス上のグループリソースのメンバーリソースのアクセス経路は異なる。
【０１１１】
例えば、M2MゲートウェイG1上のグループリソースGrp6は、Grp6=http://g1.example.org/groups/grp6であり、グループリソースGrp6のメンバーリソースは、それぞれ、M2MデバイスD5上のm61およびM2MデバイスD6上の(m62、m63)であり、以下の通りであると仮定する。
m61=coap://d5.example.org/xx
m62=coap://d6.example.org/yy
m63=coap://d6.example.org/zz
【０１１２】
第1のグループサーバ(この例では図2EのM2MゲートウェイG1)によってGrp6に割り当てられるIPv6マルチキャストアドレスは、[FF32:30:3FFE:FFFF:1::1233]であり、デバイス間のネットワーク接続関係は、図2Eに示されている(メンバーリソースm61を有するメンバーデバイスD5およびメンバーリソースm62およびm63を有するメンバーデバイスD6は両方ともM2MゲートウェイG1に属す)。したがって、第1のグループサーバは、仮想ファンアウトURIをグループリソースGrp6の各メンバーリソースに割り当てる必要があり(特定の割り当て方法が、第1のグループサーバによって決定されるものとしてよく、本発明の実施形態においてここで制限されない)、例えば、「/well-know/grp6」である。仮想ファンアウトURI(/well-know/grp6)は、メンバーデバイス上のメンバーリソースに直接対応しないが、各メンバーデバイスは、仮想ファンアウトURIを、仮想ファンアウトURIに対応し、グループリソース内のメンバーデバイスに属すメンバーリソースに関連付ける必要がある。特定の関連付け方法については、図2Gのこの後の関係する説明を参照することができる。それに加えて、同じメンバーデバイス上で発生し得る、異なるグループサーバによって割り当てられた仮想ファンアウトURIの名前の衝突を回避するために、異なるグループサーバ間で、適切な名前空間の分割が採用され得るか、または一意的なグループURI(例えば、/g1.example.org/groups/grp6)が、仮想ファンアウトURI全体の一部として直接使用される。ファンアウトURI(/well-know/grp6)とグループリソースGrp6のメンバーリソース(m61、m62、およびm63)との間のマッピング関係およびファンアウトURI(/well-know/grp6)とマルチキャストアドレス([FF32:30:3FFE:FFFF:1::1233])との間の確立されたマッピング関係については、Table 2(表2)を参照することができる。
【０１１３】
第4の事例:メンバーリソースの一部のアクセスインターフェースは同じである。
【０１１４】
例えば、メンバーリソースの一部のアクセスインターフェースが同じであるが、他のメンバーリソースのアクセスインターフェースは異なる場合、前記の方法を使用することは別として、同じアクセスインターフェースを有するメンバーリソースは、第1のグループに入れることができ(複数のグループがあり得る)、異なるアクセスインターフェースを有するメンバーリソースは、第2のグループに入れられ、次いで、メンバーリソース、マルチキャストアドレス、およびファンアウトURIの各グループは、前記の方法に従ってマッピングされ、マッピング関係の複数のグループを形成する。メンバーリソースの各グループについて、グループサーバは、異なるマルチキャストアドレスを別々に割り当てるか、または同じマルチキャストアドレスを割り当てることができる。後者の場合、各グループの「ファンアウトURI」が異なっている必要がある。
【０１１５】
例えば、M2MゲートウェイG1上のグループリソースGrp7は、Grp7=http://g1.example.org/groups/grp7であり、グループリソースGrp7に含まれるメンバーリソースは、それぞれ、M2MデバイスD1上のm71、D5上のm72、D6上のm73、D7上のm74、D8上のm75、D9上のm76、N1上のm77であり、以下の通りであると仮定する。
m71=coap://d1.example.org/xx/aa
m72=coap://d5.example.org/xx/aa
m73=coap://d6.example.org/yy/bb
m74=coap://d7.example.org/yy/bb
m75=coap://d8.example.org/cc
m76=coap://d9.example.org/dd
【０１１６】
第1のグループサーバ(この例では図2EのM2MゲートウェイG1)によってグループリソースGrp7に割り当てられるIPv6マルチキャストアドレスは、[FF32:30:3FFE:FFFF:1::1234]であり、デバイス間のネットワーク接続関係は、図2Eに示されている(つまり、メンバーリソースm71、m72、m73、m74、m75、およびm76を有するすべてのメンバーデバイスD1、D5、D6、D7、D8、およびD9はM2MゲートウェイG1に属す)。したがって、メンバーリソース(m71、m72)は、同じファンアウトURI「/xx/aa/」に対応し、メンバーリソース(m73、m74)は、同じファンアウトURI「/yy/bb/」に対応するが、仮想ファンアウトURI、例えば、「/well-known/grp7/」は、(m75、m76)に割り当てられる必要がある。したがって、グループリソースGrp7の各メンバーリソースについて確立されているマッピング関係はTable 2(表2)に示されている、つまり、メンバーリソース(m71、m72)とファンアウトURI(/xx/aa)との間のマッピング関係さらにはマルチキャストアドレス([FF32:30:3FFE:FFFF:1::1234])とファンアウトURI(/xx/aa)との間のマッピング関係、メンバーリソース(m73、m74)とファンアウトURI(/yy/bb)との間のマッピング関係さらにはマルチキャストアドレス([FF32:30:3FFE:FFFF:1::1234])とファンアウトURI(/yy/bb)との間のマッピング関係、メンバーリソース(m75、m76)とファンアウトURI(/well-known/grp7)との間のマッピング関係さらにはマルチキャストアドレス([FF32:30:3FFE:FFFF:1::1234])とファンアウトURI(/well-known/grp7)との間のマッピング関係、およびメンバーリソース(m77)と、ユニキャストアドレス([3FFE:2A00:100:7031::1])と、ファンアウトURI(/abc)との間のマッピング関係である。
【０１１７】
メンバーリソースの一部がマルチキャストをサポートしていないとき、グループリソースがマルチキャストをサポートしていないメンバーリソースをさらに含む場合、マルチキャストをサポートしていないメンバーリソースは、従来技術に従ってユニキャストモードで1つずつアクセスされ、メンバーアドレスマッピングテーブルに追加される必要はない。確かに、グループサーバによる統一された処理を円滑にするため、これらのメンバーリソースのユニキャストアドレスおよびファーストURIも、メンバーアドレスマッピングテーブル内にリストされ得る。この場合、マルチキャストアドレス列は、ユニキャストアドレスを書き込まれ、ファンアウトURI列は、メンバーデバイス上のそれらのメンバーリソースのアクセス経路を書き込まれる。例えば、前記のGrp7は、メンバーm77をさらに含み、以下の通りであることが仮定される。
m77=http://n1.example.org/abc
【０１１８】
m77は、HTTPを通じてでないとアクセスされ得ず、マルチキャストをサポートしていないため、そのマッピング関係は、表2に示されている。
【０１１９】
第5の事例:グループリソースのメンバーリソースは、非ローカルメンバーリソースを含み、グローバルマルチキャストアドレスを割り当てることはできない。
【０１２０】
ステップ203-3で説明されているグループリソースGrp3が非ローカルメンバーを含む場合、第1のグループサーバ(この例では図2EにおけるM2MゲートウェイG1)は、それぞれ、D2およびG2上に2つのグループを作成することができる。(m31、m32)を含むGrp8および(m33、m34)を含むGrp9は、例えば、以下の通りである。
Grp8=http://d2.example.com/groups/grp8
Grp9=http://g2.example.com/groups/grp9
【０１２１】
第1のグループサーバは、グローバルマルチキャストアドレスをD2およびG2に割り当てることができないため、処理は、マルチキャストをサポートしていない前記の様式でしか実行できず、マルチキャストアドレス列は、それぞれ、D2およびG2のユニキャストアドレスを書き込まれ、ファンアウトURI列は、Table 2(表2)に示されているように、それぞれ、Grp8およびGrp9のグループリソースURI(またはメンバーデバイス上のそのアクセス経路)を書き込まれる。
【０１２２】
【表２】
0005891551.tif 000003
【０１２３】
特定の実装において、前記のグループリソースマッピングテーブル1および2は、第1のグループサーバの内部一般データベースを通じて維持され、操作され得るか、またはDNS(Domain Name System、ドメインネームシステム)サーバに登録されるか、またはRESTfulリソースとして表すことができる。RESTfulリソースは、図2Fに示されているように、グループリソースプレゼンテーションの一部であってもよい。
【０１２４】
図2Fにおいて、<group>は、従来技術のETSI M2M仕様書TS 102 690で定義されているグループリソース表現であり、これは、もっぱら、各メンバーリソースのURIを記述するために使用されるメンバー属性、すべてのメンバーリソースを表すために使用されるmembersContent子リソース、ならびに他の属性および子リソース(本発明ではここで詳細に説明しない)を含む。記号「<>」は、同じ型の属性または子リソースが複数のインスタンスを有することができることを示し、各インスタンスの文字列名は、任意に設定できる。リクエスタは、メンバー属性を追加する、削除する、修正する、または表示するなどのオペレーションを実行することによってグループメンバーリストを修正することができ、メンバー属性を表示するオペレーションを実行することによってメンバーリソースリストを表示することもでき、membersContent子リソースを追加/削除/修正/表示するなどのオペレーションを実行することによってグループリソース内のすべてのメンバーリソースを修正または表示することもできる。
【０１２５】
本発明の実施形態において、ファンアウトセット<fanoutSet>リソースが既存のグループリソースに追加され、メンバーリソース、ファンアウトURI、およびグループリソース内のマルチキャスト管理に対するマルチキャストアドレスの間のマッピングを記述する。各<fanoutSet>は、ファンアウトURIとTable 1(表1)またはTable 2(表2)内のマルチキャストアドレスとの間のマッピング関係およびメンバーリソースとファンアウトURIとの間のマッピング関係を記述することができる。1つの<group>リソースそれ自体は、Table 1(表1)またはTable 2(表2)内の1つのグループリソースに対応し、複数の<fanoutSet>子リソースに対して0を含めることができる。各<fanoutSet>リソースは、以下の属性を備えることができる。
fanoutAddress:Table 1(表1)またはTable 2(表2)内のマルチキャストアドレスに対応する。
fanoutURI:Table 1(表1)またはTable 2(表2)内のファンアウトURIに対応する。この属性は、いくつかの場合において任意選択である。例えば、1つの<group>リソースが、ただ1つの<fanoutSet>リソースを含み、それらのメンバーデバイス上のすべてのメンバーリソースのアクセス経路は、同じである場合、ファンアウトURIは、メンバー属性においてメンバーリソースのURIから間違いなく直接的に得られる。この場合、この属性は、省くことができる。または一意的に決定されたグループURIがファンアウトURIとして使用される場合、この属性も省くことができる。
addressTypeは、任意選択の情報であり、fanoutAddress内のアドレス型がマルチキャストであるかまたはユニキャストであるか、IPv4またはIPv6、および他の情報を記述するために使用される。
memberListは、任意選択の情報であり、グループマッピング関係に伴うメンバーリソースリスト、つまり、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路、つまり、Table 1(表1)内のメンバーリソースを記述するために使用される。特に、メンバーデバイス上のグループリソースのすべてのメンバーリソースのアクセス経路が、同じである場合、すべてのメンバーリソースは、1つのマルチキャストアドレスをおよび1つのファンアウトURIに対応する。メンバー属性はすでにグループリソース内のすべてのメンバーリソースの情報を含んでいるので、memberList属性は、各メンバーリソースの情報を再度記録しなくてもよい。
【０１２６】
図2Cのステップの実行シーケンスに対する厳密な要件はないことに留意されたい。図2Cで与えられているプロセスは、比較的例となり得る実装様式にすぎない。実際、ステップ203-2は、ステップ203-1の前に実行することができ、したがって、ローカルマルチキャストアドレス以外のグローバルマルチキャストアドレスは優先的に割り当てられ、ステップ203-10でマルチキャストアドレスとファンアウトURIとの間のマッピング関係およびメンバーリソースとファンアウトURIとの間のマッピング関係を確立するステップは、ステップ203-4から203-9におけるマルチキャストまたはユニキャストアドレスの割り当てとともに完了し得る。それに加えて、グループリソースが更新されるたび毎に、メンバーリソースの構成が変わる(例えば、元のメンバーが削除されるか、または新しいメンバーが追加される)場合、第1のグループサーバは、前記の方法に従って処理を進め、要件に従ってマルチキャストアドレスを再割り当てするか、または対応するマッピング関係を更新することもすべきである。
【０１２７】
ステップ204:第1のグループサーバは、マルチキャストアドレスとファンアウトURIとの間のマッピング関係に従って、マルチキャストグループに参加するためのグループアドバタイズメントを、メンバーリソースを有するメンバーデバイスに送信し、マルチキャストグループに参加するためのグループアドバタイズメントがマルチキャストアドレスを運び、これにより、メンバーリソースを有するメンバーデバイスが、マルチキャストグループに参加するためのグループアドバタイズメントに従って、マルチキャストアドレスに対応するマルチキャストグループに参加する。
【０１２８】
特に、第1のグループサーバは、マルチキャストアドレスとファンアウトURIとの間の確立されたマッピング関係に従って、マルチキャストグループに参加するためのグループアドバタイズメントを、マルチキャストをサポートするメンバーデバイスに送信する。マルチキャストグループに参加するためのグループアドバタイズメントは、マルチキャストアドレスに対応するマルチキャストグループに参加するようマルチキャストをサポートするメンバーデバイスに指令するために割り当てられたマルチキャストを運ぶ。マルチキャストをサポートしていないメンバーデバイスについては、マルチキャストグループに参加するためのグループアドバタイズメントを送信する必要はない。例えばマルチキャストアドレスとファンアウトURIとの間の複数のマッピング関係を含むグループリソース(例えば、Grp7)を使用することで、第1のグループサーバは、マルチキャストグループに参加するためのグループアドバタイズメントを、それぞれ、ファンアウトURIを有する各マッピング関係におけるメンバーリソースに対応するメンバーデバイスに送信する必要がある。さらに、マルチキャストグループに参加するためのグループアドバタイズメントは、メンバーデバイスが参加すべきマルチキャストグループに対応するマルチキャストアドレスを含むだけでなく、ファンアウトURIとメンバーリソースとの間のマッピング関係をも含むものとしてよい。
【０１２９】
特に、メンバーデバイス上のグループリソースのメンバーリソースのアクセス経路が、完全に同じである場合(例えば、Table 1(表1)またはTable 2(表2)内のGrp4およびGrp5)、マルチキャストグループに参加するためのグループアドバタイズメントは、マルチキャストアドレス情報を含むだけでよく、メンバーデバイス上のグループリソースのメンバーリソースのアクセス経路が、完全に同じではない場合(例えば、Table 2(表2)内のGrp6およびGrp7)、マルチキャストグループに参加するためのグループアドバタイズメントは、ファンアウトURIとメンバーリソースとの間のマッピング関係をさらに含むべきであり、これにより、メンバーリソースを有するメンバーデバイスは、ファンアウトURIとマルチキャストアドレスとの間のマッピング関係、およびメンバーリソースとマルチキャストアドレスとの間のマッピング関係を格納する。
【０１３０】
マルチキャストグループに参加するためのグループアドバタイズメントは、複数のモード、例えば、事前構成されたユニキャスト、マルチキャスト、またはブロードキャストモードでメンバーデバイスに送信され得る。特に、ユニキャストモードが使用される場合、第1のグループサーバは、ユニキャストメッセージを使用することによって、マルチキャストグループに参加するためのグループアドバタイズメントを1つずつ、メンバーリソースを有するメンバーデバイスのユニキャストアドレス(例えば、IPv4またはIPv6ユニキャストアドレス)に送信し、マルチキャストまたはブロードキャストモードが使用される場合、グループサーバは、マルチキャストまたはブロードキャストメッセージを使用することによって、マルチキャストグループに参加するためのグループアドバタイズメントメッセージを事前同意されているマルチキャストまたはブロードキャストアドレス(例えば、IPv4またはIPv6マルチキャストアドレス)に送信し、この場合、対応するメンバーデバイスが、特定のマルチキャストまたはブロードキャストアドレス(例えば、IGMPまたはMLDなどのIPマルチキャスト管理プロトコルをすることによって実装される)に対応するマルチキャスト/ブロードキャストグループに参加していること、およびマルチキャストグループに参加するためのグループアドバタイズメントが、メンバーデバイスの識別子(URI)またはメンバーリソースのURIをさらに備え、メンバーデバイスの識別子(URI)またはメンバーリソースのURIに対応するメンバーデバイスに、マルチキャストグループに参加するためのグループアドバタイズメントを受け取って処理するように指令し、その一方で他のメンバーデバイスはマルチキャストグループに参加するためのグループアドバタイズメントを無視することが必要である。
【０１３１】
本発明の実施形態は、ユニキャスト、マルチキャスト、またはブロードキャストモードでマルチキャストグループに参加するためのグループアドバタイズメントを送信するのに使用される伝送プロトコル(例えば、HTTP、CoAP、またはSIP)を制限せず、メッセージ形式それ自体も、異なるカプセル化モード(例えば、XMLまたは2進符号化)を使用することができる。以下では、RESTfulリクエストを使用することによってマルチキャストグループに参加するためのグループアドバタイズメントを送信する例示的な実装様式のみを取りあげる。
【０１３２】
本発明を実装するために、メンバーデバイスは、0を複数のマルチキャストグループリソース<mcGroup>に格納するために、メンバーリソースがマルチキャストグループに参加するmcGroupsリソースを格納するが、各<mcGroup>リソースは、メンバーデバイスが参加するマルチキャストグループの情報を記述する。図2Gに示されているように、<mcGroup>は、以下の属性を含む。
mcAddress:メンバーデバイスが参加するマルチキャストグループのマルチキャストアドレス。
fanoutURI:メンバーデバイスが参加するマルチキャストグループに対応するファンアウトURI。
memberList:ファンアウトURIに対応するローカルメンバーリソースリスト。これは、メンバーリソースの完全なURIであるか、またはメンバーデバイス上のメンバーリソースのアクセス経路のみを格納し得る。
【０１３３】
第1のグループサーバは、ユニキャスト、マルチキャスト、またはブロードキャストRESTfulリクエストを使用することによって前記のマルチキャストグループリソース<mcGroup>を追加、削除、または修正するリクエストを、対応するメンバーデバイスに送信し、これにより、マルチタスクグループに参加するためのグループアドバタイズメントの送信を実行することができる。
【０１３４】
特に、マルチキャストグループに参加するためのグループアドバタイズメントを使用してマルチキャストグループに参加するようメンバーデバイスに指令するときに、第1のグループサーバは、以下の処理を実行する。
【０１３５】
第1のグループサーバが、マルチキャストグループに参加するためのグループアドバタイズメントを使用することによってメンバーデバイスD1をマルチキャストグループに追加する必要がある場合、第1のグループサーバは、HTTP POSTリクエストをD1に送信して、D1内のmcGroupsリソース内の1つの<mcGroup>リソースを追加し、POSTリクエストのメッセージ本文でmcGroupリソース表現を運ぶが、これは以下の通りである。
POST /xxx/mcGroups HTTP/1.1
Host:d1.example.com
{<mcGroup>リソース表現}
「/xxx/mcGroups」は、D1上のmcGroupsリソースのアクセス経路を示し、「HTTP/1.1」は、プロトコルバージョン番号を示し、Hostヘッダフィールドは、D1のドメイン名またはIPアドレスを運ぶ。マルチキャストをサポートしているCoAPが、マルチキャストグループに参加するためのグループアドバタイズメントを送信するために使用される場合、Hostヘッダフィールドは、予めD1が参加するマルチキャストグループのアドレスを運ぶことができ、Hostヘッダフィールドおよびリクエストメッセージの各部分は、従来技術の方法に従ってCoAPの対応するフィールドに変換される。本発明に無関係のPOSTメッセージの他のメッセージヘッダフィールドまたはメッセージ本文内容が網羅的に列挙されてはいない。
【０１３６】
POSTリクエストを受信し、<mcGroup>リソースをローカルで追加することの成功した後、メンバーデバイスD1は、HTTP成功応答を以下のように第1のグループサーバに返す。
HTTP/1.1 201 Created
【０１３７】
Location:http://d1.example.com/xxx/mcGroups/mcGrp1
「201 Created」は、リクエストされたリソース<mcGroup>が正常に追加されたことを示し、Locationヘッダフィールドは、D1上の追加されたリソースのURIを運び、「mcGrp1」は、リソースのインスタンス名である。
【０１３８】
任意選択の様式において、グループサーバは、HTTP PUTリクエストを送信することによって、mcGrp1という名前の<mcGroup>リソースをメンバーデバイスD1に直接さらに書き込むことができ、例えば、以下の通りである。
PUT /xxx/mcGroups/mcGrp1 HTTP/1.1
Host:d1.example.com
{<mcGroup>リソース表現}
【０１３９】
メンバーデバイスD1は、成功応答、HTTP/1.1 200 OKを直接返す。
【０１４０】
マルチキャストグループから脱退するためのグループアドバタイズメントを使用してマルチキャストグループから脱退するようメンバーデバイスに指令するときに、第1のグループサーバは、マルチキャストグループに参加するためのグループアドバタイズメントを送信するステップに類似の方法を使用することによってマルチキャストグループから脱退するためのグループアドバタイズメント送信し以下の処理を実行することができる。
【０１４１】
第1のグループサーバが、マルチキャストグループから脱退するためのグループアドバタイズメントを使用してマルチキャストグループから脱退するようメンバーデバイスD1に指令するときに、第1のグループサーバは、以下のようなHTTP DELETEリクエストをD1に送信して、D1内のmcGroupsリソースから<mcGroup>リソースを削除する。
DELETE /xxx/mcGroups/mcGrp1 HTTP/1.1
Host:d1.example.com
【０１４２】
マルチキャストグループに参加するか、またはマルチキャストグループから脱退するためのグループアドバタイズメントを送信する他の実装様式。
【０１４３】
第1のグループサーバは、他のRESTfulメソッドまたは他のプロトコル(例えば、CoAP)をさらに使用して、マルチキャストグループに参加するか、またはマルチキャストグループから脱退するための前記のグループアドバタイズメントを送信することができる。例えば、PUT、POST、またはDELETEメソッドが、メンバーデバイス上の既存の<mcGroup>リソースリスト(またはその中の属性の一部)を直接修正してマルチキャストグループに参加するか、またはマルチキャストグループから脱退するようメンバーデバイスに指令するためのアドバタイズメントを指示するために使用される。特に、元のマルチキャストグループから脱退すること、および新しいマルチキャストグループに参加することは、<mcGroup>リソース全体を置き換えることによって指示され、マルチキャストグループアドレスは、<mcGroup>リソース内のmcAddress属性を変更することによって変更され、マルチキャストグループに対応するファンアウトURIは、<mcGroup>リソース内のfanoutURI属性を変更することによって変更され、またはメンバーデバイス上のいくつかのメンバーリソースは、memberListのメンバーリソースリストを追加、削除、または修正することによって、マルチキャストグループに参加するか、またはマルチキャストグループから脱退するよう指令される。
【０１４４】
マルチキャストグループに参加するか、またはマルチキャストグループから脱退するためのグループアドバタイズメントを受信した後、メンバーデバイスは、マルチキャストグループに参加するか、またはマルチキャストグループから脱退するためのグループアドバタイズメントにおける命令に従ってIGMPまたはMLDなどのマルチキャスト管理プロトコルを使用することによって対応するマルチキャストグループに参加するか、または脱退するべきであり、その一方で、メンバーデバイス上に格納されているマルチキャストグループリソース<mcGroup>を維持し、それにより、グループサーバから送られてくるその後のメンバーリソースアクセスリクエストが処理される。
【０１４５】
それに加えて、第2のグループサーバがステップ203-9でマルチキャストアドレスを割り当てる場合、第2のグループサーバは、メンバーデバイスとしてみなされる必要があり、マルチキャストグループに参加するか、またはマルチキャストグループから脱退するためのグループアドバタイズメントを送信する同じ処理が実行され、これについては、本明細書でさらに説明しない。
【０１４６】
それに加えて、第1のグループサーバがグループリソースを作成した後、第1のグループサーバは、アプリケーションサーバによって送信されるグループリソース更新リクエスト、例えば、メンバーリソースを追加するグループリソース更新リクエスト、メンバーリソースを削除するグループリソース更新リクエスト、またはグループリソース記述上方修正するリクエストをさらに受信することができる。
【０１４７】
特に、メンバーリソースを追加するためのグループリソース更新リクエストは、グループリソース識別子およびグループリソースに参加する必要があるメンバーリソースを運び、グループリソースに参加する必要があるメンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含む。メンバーリソースを追加するためのグループリソース更新リクエストを受信した後、第1のグループサーバは、グループリソース識別子に従って、メンバーデバイス上のグループリソースに参加する必要があるメンバーリソースのアクセス経路がグループリソース識別子に対応するグループリソース内のマルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるファンアウトURIと同じであることを判定し、マルチキャストグループに参加するためのグループアドバタイズメントを、グループリソースに参加する必要があるメンバーリソースを有するメンバーデバイスに送信し、マルチキャストグループに参加するためのグループアドバタイズメントは、マルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるマルチキャストアドレスを運び、これにより、グループリソースに参加する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスに従ってマルチキャストグループに参加し、マルチキャストアドレスに従って送信されたメンバーリソースアクセスリクエストを受信するか、またはメンバーリソースを追加するためのグループリソース更新リクエストを受信した後、第1のグループサーバは、グループリソース識別子に従って、メンバーデバイス上のグループリソースに参加する必要があるメンバーリソースのアクセス経路がグループリソース識別子に対応するグループリソース内のマルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるファンアウトURIと異なることを判定し、グループリソースに参加する必要があるメンバーリソースを、グループリソース識別子に対応するグループリソース内のファンアウトURIとメンバーリソースとの間のマッピング関係に追加し、マルチキャストグループに参加するためのグループアドバタイズメントを、グループリソースに参加する必要があるメンバーリソースを有するメンバーデバイスに送信し、マルチキャストグループに参加するためのグループアドバタイズメントは、グループリソース識別子に対応するグループリソース内のマルチキャストアドレスとファンアウトURIとの間のマッピング関係およびグループリソース識別子に対応するグループリソース内のファンアウトURIとメンバーリソースとの間のマッピング関係を運び、これにより、ファンアウトURIを運ぶアクセスリクエストを受信した後、メンバーデバイスは、ファンアウトURIとメンバーリソースとの間の受信されたマッピング関係に従って、メンバーデバイス上のメンバーリソースのアクセス経路を判定し、メンバーデバイス上のメンバーリソースの判定されたアクセス経路に従って対応するメンバーリソースアクセスリクエストを実行する。
【０１４８】
第1のグループサーバが、グループリソース記述情報を修正するリクエストを受信した場合、第1のグループサーバは、グループリソース記述情報を修正するリクエスト内のグループ記述に従って格納されているグループリソース記述情報を置き換え、更新されたグループリソース記述情報に従って作成されたグループリソースを更新する必要がある。
【０１４９】
それに加えて、メンバーリソースを削除するためのグループリソース更新リクエストは、グループリソースから脱退する必要があるメンバーリソースとグループリソース識別子とを運び、グループリソースから脱退する必要があるメンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含む。メンバーリソースを削除するためのグループリソース更新リクエストを受信した後、第1のグループサーバは、グループリソース識別子に従って、グループリソースから脱退する必要があるメンバーリソースに対応するファンアウトURI、およびグループリソースから脱退する必要があるメンバーリソースに対応するマルチキャストアドレスとファンアウトURIとの間のマッピング関係を判定し、グループリソースから脱退する必要があるメンバーリソースを、グループリソースから脱退する必要があるメンバーリソースに対応するマルチキャストアドレスとファンアウトURIとの間のマッピング関係から削除し、マルチキャストグループから脱退するためのグループアドバタイズメントを、脱退する必要があるメンバーリソースを有するメンバーデバイスに送信し、マルチキャストグループから脱退するためのグループアドバタイズメントは、マルチキャストアドレスとグループリソースから脱退する必要があるメンバーリソースに対応するファンアウトURIとの間のマッピング関係におけるマルチキャストアドレスを運び、これにより、脱退する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスによって指示されたマルチキャストグループから脱退するか、またはメンバーリソースを削除するためのグループリソース更新リクエストは、グループリソースで予約済みである必要があるメンバーリソースとグループリソース識別子とを運び、グループリソースで予約済みである必要があるメンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、第1のグループサーバは、グループリソース識別子に従って、ファンアウトURIとグループリソースから脱退する必要があるメンバーリソースとの間のマッピング関係を判定し、グループリソースで予約済みである必要があるメンバーリソースを使用して、ファンアウトURIとグループリソースから脱退する必要があるメンバーリソースとの間のマッピング関係におけるメンバーリソースを更新し、マルチキャストグループから脱退するためのグループアドバタイズメントを、脱退する必要があるメンバーリソースを有するメンバーデバイスに送信し、マルチキャストグループから脱退するためのグループアドバタイズメントは、マッピング関係におけるマルチキャストアドレスを運び、これにより、脱退する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスによって指示されたマルチキャストグループから脱退する。
【０１５０】
さらに、第1のグループサーバは、メンバーリソースを削除するためのグループリソース更新リクエスト内のグループリソース識別子に従って、メンバーデバイス上のグループリソースから脱退する必要があるメンバーリソースのアクセス経路が、脱退する必要があるメンバーリソースに対応するファンアウトURIと異なることを判定し、マルチキャストグループから脱退するためのグループアドバタイズメントは、グループリソースから脱退する必要があるメンバーリソースに対応するファンアウトURIをさらに含み、これにより、グループリソースから脱退する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスによって指示されたマルチキャストグループから脱退し、グループリソースから脱退する必要があるメンバーリソースおよびマルチキャストグループから脱退するためのグループアドバタイズメントにおけるファンアウトURIに従って、メンバーデバイス上のメンバーリソースを削除するためのグループリソース更新リクエスト内のグループリソース識別子に対応するマルチキャストグループ情報内のメンバーリソースを削除する。
【０１５１】
図3に示されているように、本発明の一実施形態によるメンバーリソースにアクセスするための方法は、以下のステップを含む。
【０１５２】
ステップ301:グループサーバによって送信されたメンバーリソースアクセスリクエストを受信し、メンバーリソースアクセスリクエストは、マルチキャストメンバーリソースアクセスリクエストであり、メンバーリソースアクセスリクエストは、メンバーリソースに対応するファンアウトURIを含む。
【０１５３】
特に、マルチキャストグループに参加した後、メンバーデバイスは、マルチキャストグループを通じて第1でグループサーバによって送信されるメンバーリソースアクセスリクエストを受信する。メンバーリソースアクセスリクエストで運ばれる情報について、ステップ103の説明を参照することができ、本発明の実施形態では、さらに詳しくここで説明することはしない。
【０１５４】
それに加えて、このステップを実行する前に、メンバーデバイスは、マルチキャストグループに参加するためのグループアドバタイズメントをさらに受信することができ、マルチキャストグループに参加するためのグループアドバタイズメントがマルチキャストアドレスを運び、マルチキャストアドレスに従って、マルチキャストアドレスに対応するマルチキャストグループに参加する。特に、メンバーデバイスは、マルチキャストグループに参加するために、第1グループサーバによって送信されたグループアドバタイズメントを受信する。マルチキャストグループに参加するために、第1グループサーバによってグループアドバタイズメントを送信することについては、ステップ204の説明を参照することができ、本発明の実施形態では、さらに詳しくここで説明することはしない。
【０１５５】
ステップ302:ファンアウトURIに従って、メンバーデバイス上のメンバーリソースのアクセス経路を判定し、メンバーデバイス上のメンバーリソースのアクセス経路に従ってメンバーリソースアクセスリクエストのオペレーションを実行する。
【０１５６】
特に、マルチキャストグループを通じて第1グループサーバによって送信されたメンバーリソースアクセスリクエストを受信した後、メンバーデバイスは、メンバーリソースアクセスリクエストで運ばれるファンアウトURIに従って、メンバーデバイスがステップ204でマルチキャストグループに参加するためのグループアドバタイズメントを受信した後にファンアウトURIに対応し、メンバーデバイスによって格納されているメンバーリソースを取得し、メンバーリソースアクセスリクエストのオペレーションを実行する。
【０１５７】
それに加えて、前記の実施形態において、マルチキャストグループに参加した後、メンバーリソースを有するメンバーデバイスは、マルチキャストグループから脱退するためのグループアドバタイズメントをさらに受信することができ、マルチキャストグループから脱退するためのグループアドバタイズメントはマルチキャストアドレスを運び、マルチキャストグループから脱退するためのグループアドバタイズメントを受信した後、メンバーデバイスは、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応する格納されているマルチキャストグループ情報を削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスに対応するマルチキャストグループから脱退する。
【０１５８】
任意選択として、マルチキャストグループから脱退するためのグループアドバタイズメントは、グループリソースから脱退する必要があるメンバーデバイスをさらに運ぶことができ、脱退する必要があるメンバーリソースは、グループリソースから脱退する必要があるメンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含む。マルチキャストグループから脱退するためのグループアドバタイズメントを受信した後、メンバーデバイスは、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報においてグループリソースから脱退する必要がある格納されているメンバーリソースを削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応する格納されているマルチキャストグループ情報を削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスに対応するマルチキャストグループから脱退する。
【０１５９】
それに加えて、任意選択の一実施形態において、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応する格納されているマルチキャストグループ情報を削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスに対応するマルチキャストグループから脱退する前に、メンバーデバイスは、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報においてファンアウトURIに対応していない格納されているメンバーリソースを判定する必要がさらにある。
【０１６０】
図3に示されている実施形態からわかるように、メンバーデバイスは、マルチキャストグループを通じて第1グループサーバによって送信されたメンバーリソースアクセスリクエストを受信することができ、したがって、第1のグループサーバは、メンバーリソースアクセスリクエストをマルチキャストグループの各メンバーデバイスに別々に送信する必要はなく、したがってネットワークトラフィックを軽減する。
【０１６１】
図3Aは、本発明の一実施形態によるメンバーデバイスによって受信されたメンバーリソースアクセスリクエストを処理するための方法の流れ図であり、この方法は以下のステップを含む。
【０１６２】
ステップ302-1:メンバーリソースアクセスリクエストを受信する。
【０１６３】
特に、メンバーデバイスがメンバーリソースアクセスリクエストを受信し、メンバーリソースアクセスリクエストは、ユニキャストメンバーリソースアクセスリクエストであり、またマルチキャストメンバーリソースアクセスリクエストであってもよい。
【０１６４】
ステップ302-2:メンバーデバイスは、メンバーリソースアクセスリクエストがマルチキャストリクエストかどうかを判定し、メンバーリソースアクセスリクエストがマルチキャストリクエストである場合、ステップ302-4を実行し、そうでない場合、ステップ302-3を実行する。
【０１６５】
特に、メンバーデバイスは、メンバーリソースアクセスリクエストを解析する。メンバーリソースアクセスリクエストの送信先アドレスがマルチキャストアドレスである場合、メンバーリソースアクセスリクエストは、マルチキャストモードで取得される、つまり、マルチキャストリクエストである。そうでなく、メンバーリソースアクセスリクエストの送信先アドレスがメンバーデバイスのユニキャストアドレスである場合、メンバーリソースアクセスリクエストは、マルチキャストモードで取得されない、つまり、メンバーリソースアクセスリクエストは、マルチキャストリクエストでない。
【０１６６】
ステップ302-3:メンバーデバイスは、特定の種類のリクエストメソッドに従って、リクエスト内の送信先URIに対応するローカルメンバーリソースのオペレーションの結果を直接返す。このステップの処理は、従来技術に基づく。
【０１６７】
メンバーリソースのオペレーションは、いくつかのRESTfulオペレーションタイプ、作成(Create、HTTPまたはCoAPにおけるPOSTリクエストに対応する)、取得(Retrieve、HTTPまたはCoAPにおけるGETリクエストに対応する)、更新(Update、HTTPまたはCoAPにおけるPUTリクエストに対応する)、および削除(Delete、HTTPまたはCoAPにおけるDELETEリクエストに対応する)のうちの少なくとも1つを含む。したがって、対応するオペレーションの結果は、前記オペレーションが成功したかどうかを示すステータス応答コードであり、それぞれ、作成された子リソースの内容記述、取得されたリソースの内容記述、更新されたリソースの内容記述、および削除オペレーションが成功したかどうかに関する情報などの情報を含む。
【０１６８】
ステップ302-4:メンバーデバイスは、ローカルマルチキャストグループ情報がメンバーデバイス上のメンバーリソースアクセスリクエスト内の送信先URIに含まれるファンアウトURIによって示されるメンバーリソースのアクセス経路を含むかどうかを判定し、ローカルマルチキャストグループ情報が、メンバーデバイス上のメンバーリソースアクセスリクエスト内の送信先URIに含まれるファンアウトURIによって示されるメンバーリソースのアクセス経路を含む場合、ステップ302-8を実行し、含まない場合、ステップ302-5を実行する。
【０１６９】
ステップ302-5:メンバーデバイスは、メンバーリソースアクセスリクエスト内の送信先アドレスと同じマルチキャストアドレスのマルチキャストグループ情報を判定する。図2Gに示されているマルチキャストグループリソース<mcGroup>を参照することができる。
【０１７０】
ステップ302-6:メンバーデバイスは、メンバーリソースアクセスリクエスト内の送信先アドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報が、送信先URIに関係するファンアウトURIを含むかどうかを判定し、メンバーリソースアクセスリクエスト内の送信先アドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報が、送信先URIに関係するファンアウトURIを含む場合、ステップ302-7を実行し、含まない場合、ステップ302-9を実行する。送信先URIに関係するファンアウトURIは、特に以下の通りである。送信先URIは、マルチキャストグループ情報内のファンアウトURIと同じであるか、または送信先URIは、マルチキャストグループ情報内のファンアウトURIを含む。
【０１７１】
ステップ302-7:メンバーデバイスは、メンバーデバイス上のマルチキャストグループ情報内のファンアウトURIに対応するメンバーリソースのアクセス経路に従って、送信先URIにおけるファンアウトURI部をメンバーデバイス上のマルチキャストグループ情報内のファンアウトURIに対応するメンバーリソースのアクセス経路で置き換え、ファンアウトURI以外の送信先URI内の残り部分をサフィックスとしてメンバーデバイス上のメンバーリソースのアクセス経路に追加し、それにより、ローカルメンバーリソースにアクセスするリクエストを構築する。ファンアウトURIに対応するメンバーリソースの複数のアクセス経路がメンバーデバイス上に存在する場合、ローカルメンバーリソースにアクセスするリクエストが、各メンバーリソースについて構築される必要がある。
【０１７２】
ステップ302-8:メンバーデバイスは、メンバーリソースアクセスリクエストにおける方法(例えば、HTTP GET/PUT/POST/DELETE)に従ってメンバーリソースを操作して、オペレーションの結果を返す。メンバーデバイスは、複数のローカルメンバーリソースのオペレーションの結果を1つに組み合わせて、それを、グループサーバに返し、また複数のオペレーションの結果をそれぞれ返すこともできる。
【０１７３】
ステップ302-9:メンバーデバイスは、メンバーリソースアクセスリクエストを破棄するか、または無視する。
【０１７４】
特に、図3Aの説明によれば、第1のグループサーバが、Table 1(表1)のグループリソースGrp4のメンバーリソースにアクセスするリクエストを送信することを仮定すると、メンバーデバイスD1およびD5は、以下のように同じアクセスリクエストを受信するが、それは、2つのデバイスがマルチキャストアドレス[FF32:30:3FFE:FFFF:1::1231]に対応するマルチキャストグループに参加していたからである。
GET /xxx/temp1/data HTTP/1.1
Host:[FF32:30:3FFE:FFFF:1::1231]
【０１７５】
メンバーデバイスD1およびD5は、送信先URI「/xxx/temp1/data」に従って、URIによって示されたローカルメンバーリソースを探索し、GETリクエストメソッドに従って対応するリソースの内容を返す。
【０１７６】
別の例では、第1のグループサーバが、この実施形態のTable 2(表2)内のマッピング関係に従って、Table 2(表2)のグループリソースGrp7のメンバーリソースにアクセスするリクエストを送信することを仮定すると、メンバーデバイスD8およびD9は、以下のように同じメンバーリソースのアクセスリクエストを受信するが、それは、2つのデバイスがマルチキャストアドレス[FF32:30:3FFE:FFFF:1::1234]に対応するマルチキャストグループに参加していたからである。
GET /well-known/grp7/data HTTP/1.1
Host:[FF32:30:3FFE:FFFF:1::1234]
【０１７７】
送信先URI「/well-known/grp7」に従って、D8およびD9は、アクセス経路がメンバーデバイス上の「/well-known/grp7」であるメンバーリソースを見つけることができないが、Table 3(表3)に示されているように、ローカルに格納されているマルチキャストグループリソース情報内のファンアウトURI「/well-known/grp7」を含むレコードを見つけることができる。確かに、ファンアウトURI「/well-known/grp7」を含むレコードは、図2Gに示されている通りであってもよく、本発明の実施形態において、ここで制限されない。
【０１７８】
【表１】
0005891551.tif 000004
【０１７９】
したがって、D8およびD9は、それぞれ、送信先URI内のファンアウトURI部をローカルメンバーリソースリストmemberList内の対応するレコードで置き換え、これにより、それぞれ「/cc/data」および「/dd/data」である、ローカルメンバーリソースの対応するアクセスURIを構築し、次いで、GETリクエストメソッドに従って対応するリソースの内容を返す。
【０１８０】
図4は、以下のステップを含む、本発明の一実施形態により直接割り当てられたマルチキャストアドレスを使用することによってメンバーリソースにアクセスするための方法の流れ図である。
【０１８１】
ステップ401:ネットワークアプリケーションサーバNA1は、M2MプラットフォームN1(つまり、本発明の実施形態における第1のグループサーバ)上にグループリソースGrp10を作成することをリクエストし、グループリソース作成リクエストをN1に送信する。グループリソース作成リクエストは、メンバーリソースm101およびm102を含む。メンバーリソースm101およびm102は、M2MゲートウェイG1の下で2つのM2MデバイスD1およびD2上にそれぞれ配置される。
【０１８２】
ステップ402:N1が、グループリソースGrp10をローカルに作成する。
【０１８３】
ステップ403:N1は、グループリソースGrp10ならびにそのメンバーリソースm101およびm102を分析し、マルチキャストグループがメンバーリソースm101およびm102について作成され得ることを判定する。特に、N1によって、グループリソースGrp10ならびにそのメンバーリソースm101およびm102を分析することについて、図2Aならびに前記の実施形態および図2Aの対応する説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０１８４】
それに加えて、N1は、同じローカルまたはグローバルマルチキャストアドレスをD1およびD2に割り当て、ローカルまたはグローバルマルチキャストアドレスに関係するマッピング関係を確立する。特に、図2Cならびに前記の実施形態および図2Cの対応する説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０１８５】
ステップ404および404-a:N1は、マルチキャストグループに参加するためのグループアドバタイズメントをメンバーデバイスD1およびD2に送信して、マルチキャストアドレスに対応するマルチキャストグループに参加するようにD1およびD2に指令する。マルチキャストグループに参加するためのグループアドバタイズメントは、ユニキャストアドレスモードでそれぞれD1およびD2に送信されるか、またはマルチキャストモードでメンバーデバイスD1およびD2が予め参加しているマルチキャストグループに一度に送信され得る。特に、ステップ204の関係する説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０１８６】
ステップ405およびステップ405-a:メンバーデバイスD1およびD2では、従来技術の方法に従ってMLDまたはIGMPなどのマルチキャスト管理プロトコルを使用して、マルチキャストグループアドバタイズメントで指示されているマルチキャストアドレスに対応するマルチキャストグループに参加する。この実施形態では、G1が、D1およびD2によって共有されるローカルマルチキャストルーターであると仮定すると、D1およびD2は、それぞれ、MLD/IGMPレポートコマンドをG1に送信して、対応するマルチキャストグループに参加する。
【０１８７】
ステップ406:NA1は、メンバーリソースにアクセスするリクエストをN1に送信して、グループリソースGrp10内の両方のメンバーリソースm101およびm102にアクセスすることを要求する。メンバーリソースにアクセスするリクエストで運ばれる情報について、ステップ101の説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０１８８】
ステップ407:N1は、グループリソース識別子Grp10に従って、マッピング関係がグループリソースGrp10について確立されていることを判定し、メンバーリソースアクセスリクエストを構築し、マルチキャストモードでメンバーリソースアクセスリクエストをマッピング関係におけるマルチキャストアドレス(つまり、マルチキャストアドレス)に送信する。特に、このステップの実行について、ステップ102の説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０１８９】
G1は、ステップ405および405-aにおいて、メンバーデバイスD1およびD2がマルチキャストアドレスに対応するマルチキャストグループに参加していることを知っているので、マルチキャストアドレスリクエストは、ローカルリンクに転送される。
【０１９０】
ステップ408および408-a:メンバーデバイスD1およびD2は、マルチキャストアクセスリクエストを受信し、リクエストで指示されているローカルメンバーリソースm101およびm102にアクセスし、次いで、アクセス結果をN1に返す。特に、このステップについて、図3Aならびに前記の実施形態および図3Aの対応する説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０１９１】
ステップ409:N1は、D1およびD2から受信されたグループメンバーリソースアクセスの結果を組み合わせる。
【０１９２】
ステップ410:N1は、組み合わされたグループメンバーリソースアクセスの結果をNA1に返す。
【０１９３】
図5は、以下のステップを含む、本発明の一実施形態によりリクエストされたグローバルマルチキャストアドレスを使用することによってメンバーリソースにアクセスするための方法の流れ図である。
【０１９４】
ステップ501:ネットワークアプリケーションサーバNA1は、M2MゲートウェイG1(つまり、本発明の実施形態における第1のグループサーバ)上にグループリソースGrp11を作成することをリクエストし、グループリソース作成リクエストをG1に送信する。グループリソース作成リクエストは、メンバーリソースm111およびm112を含む。メンバーリソースm111およびm112は、M2MプラットフォームN1の下で2つのM2MデバイスD1およびD2上にそれぞれ配置される。
【０１９５】
ステップ502:M2MゲートウェイG1は、従来技術に従ってグループリソースGrp11をローカルに作成する。
【０１９６】
ステップ503:M2MゲートウェイG1は、グループリソースGrp11ならびにそのメンバーリソースm111およびm112を分析し、マルチキャストグループがメンバーリソースm111およびm112について作成され得ることを判定する。特に、M2MゲートウェイG1によって、グループリソースGrp11ならびにそのメンバーリソースm111およびm112を分析することについて、図2Aならびに前記の実施形態および図2Aの対応する説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０１９７】
それに加えて、M2MゲートウェイG1は、メンバーデバイスD1およびD2がM2MゲートウェイG1のローカルマルチキャストドメインに属していないと判定し、その一方で、M2MゲートウェイG1は、グローバルマルチキャストアドレスを直接的に割り当てることはできないため、M2MゲートウェイG1は、グローバルマルチキャストアドレスを割り当てることができるM2MプラットフォームN1(第2のグループサーバ)に、グローバルマルチキャストアドレスをD1およびD2に割り当てるようリクエストする。特に、図2Cのステップ203-2の対応する説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０１９８】
ステップ504:M2MプラットフォームN1は、G1のリクエストに従って割り当てられたグローバルマルチキャストアドレスを返す。
【０１９９】
ステップ505:M2MゲートウェイG1は、N1からリクエストされたグローバルマルチキャストアドレスをD1およびD2に割り当て、グローバルマルチキャストアドレスに関係するマッピング関係を確立する。特に、図2Cならびに前記の実施形態および図2Cの対応する説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０２００】
ステップ506および506-a:M2MゲートウェイG1は、マルチキャストグループに参加するためのグループアドバタイズメントをメンバーデバイスD1およびD2に送信して、マルチキャストアドレスに対応するマルチキャストグループに参加するようにD1およびD2に指令する。マルチキャストグループに参加するためのグループアドバタイズメントは、ユニキャストアドレスモードでそれぞれD1およびD2に送信されるか、またはマルチキャストモードでメンバーデバイスD1およびD2が予め参加しているマルチキャストグループに一度に送信され得る。特に、ステップ204の関係する説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０２０１】
ステップ507およびステップ507-a:メンバーデバイスD1およびD2では、従来技術の方法に従ってMLDまたはIGMPなどのマルチキャスト管理プロトコルを使用して、マルチキャストグループアドバタイズメントで指示されているマルチキャストアドレスに対応するマルチキャストグループに参加する。この実施形態では、M2MゲートウェイG1が、D1およびD2によって共有されるローカルマルチキャストルーターであると仮定すると、D1およびD2は、それぞれ、MLD/IGMPレポートコマンドをM2MゲートウェイG1に送信して、対応するマルチキャストグループに参加する。
【０２０２】
ステップ508:ステップ406〜410におけるグループリソース識別子をGrp11に変更し、メンバーリソースをm111およびm112に変更するが、他は同じである。
【０２０３】
図6Aおよび図6Bは、以下のステップを含む、本発明の一実施形態によりリモートから割り当てられたマルチキャストアドレスを使用することによってメンバーリソースにアクセスするための方法の流れ図である。
【０２０４】
ステップ601および602は、ステップ501および502と同じであり、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０２０５】
ステップ603:M2MゲートウェイG1は、グループリソースGrp11ならびにそのメンバーリソースm111およびm112を分析し、マルチキャストグループがメンバーリソースm111およびm112について作成され得ることを判定する。特に、M2MゲートウェイG1によって、グループリソースGrp11ならびにそのメンバーリソースm111およびm112を分析することについて、図2Aならびに前記の実施形態および図2Aの対応する説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０２０６】
それに加えて、M2MゲートウェイG1は、メンバーリソースm111およびm112を有するメンバーデバイスD1およびD2がM2MプラットフォームN1に属している(つまり、D1およびD2がN1に登録されている)と判定し、第2のグループリソースGrp12をM2MプラットフォームN1(第2のグループサーバ)上に作成するようリクエストするが、第2のグループリソースGrp12は、メンバーデバイスD1およびD2上のメンバーリソースm111およびm112を含む。この場合、N1は、リモートグループサーバ(第2のグループサーバ)として動作する。
【０２０７】
ステップ604:M2MプラットフォームN1は、従来技術に従ってグループリソースGrp12をローカルに作成する。
【０２０８】
ステップ605:M2MプラットフォームN1は、グループリソースGrp12が正常に作成されたことを示す応答をM2MゲートウェイG1に返し、応答は、Grp12のアクセス識別子URIを含む。
【０２０９】
ステップ606:M2MゲートウェイG1は、メンバーリソースに対するマッピング関係を確立し、Grp12のURIをGrp11におけるメンバーリソースm111およびm112のファンアウトURIとして使用し、N1のネットワークアドレス(ユニキャストまたはマルチキャストアドレスとすることができる)をメンバーリソースm111およびm112のマルチキャストアドレスとして使用する。任意選択として、G1がローカルマルチキャストアドレスをN1に割り当てることができる場合、マッピング関係におけるマルチキャストアドレスは、割り当てられたローカルマルチキャストアドレスに設定され得る。特に、ステップ203-10の関係する説明を参照することができ、本発明の実施形態では、さらに詳しく取りあげることはしない。
【０２１０】
ステップ607:M2MプラットフォームN1は、同じローカルまたはグローバルマルチキャストアドレスをメンバーデバイスD1およびD2に割り当て、ローカルまたはグローバルマルチキャストアドレスに関係するマッピング関係を確立する。特に、図2Cの関係する説明を参照することができる。
【０２１１】
それに加えて、同じローカルまたはグローバルマルチキャストアドレスをメンバーデバイスD1およびD2に割り当てる前に、M2MプラットフォームN1は、作成されたグループリソースGrp12ならびにそのメンバーリソースm111およびm112の特性を分析し、マルチキャストグループがそのメンバーリソースについて作成され得ることを判定する必要がさらにある。特に、図2Aならびに前記の実施形態および図2Aの対応する説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０２１２】
ステップ607およびステップ605の時系列は、制限されない、つまり、ステップ607は、ステップ605の後に実行されるか、またはステップ605の前に実行されてよく、また2つのステップは同時に実行されてもよいことに留意されたい。本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０２１３】
ステップ608および608-a:M2MプラットフォームN1は、マルチキャストグループに参加するためのグループアドバタイズメントをメンバーデバイスD1およびD2に送信して、マルチキャストアドレスに対応するマルチキャストグループに参加するようにD1およびD2に指令する。マルチキャストグループに参加するためのグループアドバタイズメントは、ユニキャストアドレスモードでそれぞれD1およびD2に送信されるか、またはマルチキャストモードでメンバーデバイスD1およびD2が予め参加しているマルチキャストグループに一度に送信され得る。特に、ステップ204の関係する説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０２１４】
ステップ609およびステップ609-aは、ステップ507およびステップ507-aと同じであり、本発明では、さらに詳しくここで取りあげることはしない。
【０２１５】
ステップ610:ネットワークアプリケーションサーバNA1は、メンバーリソースにアクセスするリクエストをM2MゲートウェイG1に送信して、グループリソースGrp11内の両方のメンバーリソースm111およびm112にアクセスすることを要求する。メンバーリソースにアクセスするリクエストで運ばれる情報について、ステップ101の説明を参照することができ、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０２１６】
ステップ611:M2MゲートウェイG1は、グループリソース識別子Grp11に従って、マッピング関係がグループリソースGrp11について確立されていることを判定し、第1のメンバーリソースアクセスリクエストを構築し、マルチキャストモードでメンバーリソースアクセスリクエストをマッピング関係におけるマルチキャストアドレス(M2MプラットフォームN1のネットワークアドレス)に送信する。それに加えて、第1のメンバーリソースアクセスリクエストのファンアウトURIは、Grp11のURIである。Grp11が、他のローカルメンバーリソースをさらに含む場合、M2MゲートウェイG1は、ユニキャストまたはマルチキャストアクセスリクエストを他のローカルメンバーデバイスに送信することができるが、これについてはここでさらに説明することはしない。
【０２１７】
ステップ612:M2MプラットフォームN1は、第1のメンバーリソースアクセスリクエストのファンアウトURI(Grp11のURI)に従って、マッピング関係がGrp11のメンバーリソースについて確立されていることを判定し、確立されたマッピング関係に従って第2のメンバーリソースアクセスリクエストを構築し、次いで、マルチキャストモードで第2のメンバーリソースアクセスリクエストをGrp11に対応するマルチキャストアドレスに送信する。特に、このステップの実行は、ステップ407の実行と同じであり、本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０２１８】
ステップ613〜615の説明は、特定のメンバーリソースおよびメッセージを送受信するメンバーデバイスが異なることを除き、ステップ408〜410の説明と同じである。本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０２１９】
ステップ615〜617の説明は、ステップ409〜410の説明と同じである。本発明の実施形態では、さらに詳しくここで取りあげることはしない。
【０２２０】
図7は、本発明の一実施形態によるグループサーバを示している。前述のように、M2Mにおけるグループサーバは、M2MプラットフォームまたはM2Mゲートウェイであってよく、またM2Mデバイスであってもよい。つまり、M2Mネットワークにおいて、サービスミドルウェアが存在している限り、グループリソースを格納し、維持することができるデバイス、ゲートウェイ、またはプラットフォームはどれも、グループサーバとして動作することができる。
【０２２１】
図7に示されているグループサーバは、受信モジュール701、取得モジュール702、送信モジュール70を備える。特に、受信モジュール701は、メンバーリソースにアクセスするリクエストを受信するように構成され、メンバーリソースにアクセスするリクエストは、メンバーリソースが属しているグループリソースのグループリソース識別子を運び、取得モジュール702は、グループリソース識別子に従って、グループリソース内のメンバーリソースに対応するファンアウトURIとファンアウトURIに対応するマルチキャストアドレスとを取得するように構成され、ファンアウトURIが、メンバーデバイス上のメンバーリソースのアクセス経路を示すために使用され、送信モジュール703は、マルチキャストアドレスに従って、メンバーリソースアクセスリクエストをメンバーリソースを有するメンバーデバイスに送信するように構成され、メンバーリソースアクセスリクエストの送信先URIが、メンバーリソースに対応するファンアウトURIを含み、これにより、メンバーリソースを有するメンバーデバイスが、ファンアウトURIによって指示されるメンバーデバイス上のメンバーリソースのアクセス経路に従って、メンバーリソースアクセスリクエストによって指示されたオペレーションを実行する。
【０２２２】
任意選択として、受信モジュール701は、グループリソース作成リクエストを受信するようにさらに構成され、グループリソース作成リクエストは、各メンバーリソースを運び、メンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、グループサーバは、処理モジュール704をさらに備え、このモジュールはマルチキャストアドレスをメンバーリソースに、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って割り当て、メンバーデバイス上のメンバーリソースのアクセス経路に従ってマルチキャストアドレスとファンアウトURIとの間のマッピング関係を確立するように構成されている。
【０２２３】
任意選択として、処理モジュール704は、マルチキャストアドレスをメンバーデバイス上の同じアクセス経路を有するメンバーリソースに割り当て、マルチキャストアドレスとファンアウトURIとの間のマッピング関係を確立するように特に構成され、ファンアウトURIがメンバーデバイス上のメンバーリソースのアクセス経路であり、かつ/または処理モジュール704は、仮想識別子をメンバーデバイス上の異なるアクセス経路を有する少なくとも1つのメンバーリソースに割り当て、マルチキャストアドレスを少なくとも1つのメンバーリソースに割り当て、マルチキャストアドレスと仮想識別子との間のマッピング関係、および仮想識別子とメンバーリソースとの間のマッピング関係を確立し、仮想識別子をファンアウトURIに設定するように構成されている。
【０２２４】
任意選択として、送信モジュール703は、マルチキャストアドレスとファンアウトURIとの間のマッピング関係に従って、マルチキャストグループに参加するためのグループアドバタイズメントを、メンバーリソースを有するメンバーデバイスに送信するようにさらに構成され、マルチキャストグループに参加するためのグループアドバタイズメントがマルチキャストアドレスを運び、これにより、メンバーリソースを有するメンバーデバイスが、マルチキャストグループに参加するためのグループアドバタイズメントに従って、マルチキャストアドレスに対応するマルチキャストグループに参加する。
【０２２５】
任意選択として、処理モジュール704によって、マルチキャストアドレスをメンバーリソースに、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って割り当てることは、特に、メンバーリソースを有するメンバーデバイスに従って、メンバーリソースを有するメンバーデバイスが第1のグループサーバに属すことを判定し、ローカルマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するメンバーデバイスに割り当てること、またはメンバーリソースを有するメンバーデバイスに従って、メンバーリソースを有するすべてのメンバーデバイスが第1のグループサーバに属すとは限らないことを判定し、グローバルマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するメンバーデバイスに割り当てるか、もしくはリモートマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するが第1のグループサーバに属していないメンバーデバイスに割り当てるよう求めることを行う。
【０２２６】
任意選択として、処理モジュール704によって、グローバルマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するメンバーデバイスに割り当てることは、特に、グローバルマルチキャストドメインのマルチキャストアドレスを有するグループサーバに、グローバルマルチキャストドメインのマルチキャストアドレスをリクエストし、グローバルマルチキャストドメインのリクエストされたマルチキャストアドレスをメンバーリソースを有するメンバーデバイスに割り当てることを行い、リモートマルチキャストドメインのマルチキャストアドレスをメンバーリソースを有するが第1のグループサーバに属していないメンバーデバイスに割り当てるよう求めることは、特に、メンバーリソースを有するが第1のグループサーバに属していないメンバーデバイスが、第2のグループサーバに属していることを判定し、第2のグループリソース作成リクエストを第2のグループサーバに送信することを行い、第2のグループリソース作成リクエストは、第1のグループリソース識別子およびメンバーリソースを運び、メンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、これにより、第2のグループサーバは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路に従って第2のグループリソースを作成し、マルチキャストアドレスをメンバーリソースに割り当てる。
【０２２７】
任意選択として、処理モジュール704によって、メンバーリソースを有するメンバーデバイスに従ってマルチキャストアドレスをメンバーリソースに割り当てることは、特に、メンバーリソースを有するメンバーデバイスに従って、メンバーリソースを有するメンバーデバイスおよびメンバーデバイスが属すネットワークがマルチキャストをサポートしていることを判定し、マルチキャストアドレスをメンバーリソースに割り当てることを行い、処理モジュール704は、マルチキャスト機能を有しないメンバーデバイスに対応するメンバーリソースを格納するようにさらに構成され、これにより、グループサーバは、メンバーリソースにアクセスするリクエストをマルチキャスト機能を有しないメンバーデバイスにユニキャストする。
【０２２８】
任意選択として、処理モジュール704は、メンバーリソースにアクセスするリクエストの送信先アドレスを、ファンアウトURIに対応するマルチキャストアドレスに設定し、メンバーリソースにアクセスするリクエストの送信先URIをメンバーリソースに対応するファンアウトURIに設定して、メンバーリソースアクセスリクエストを生成するようにさらに構成され、また、そのマルチキャストアドレスを使用して、メンバーリソースに対応するファンアウトURIを運ぶメンバーリソースアクセスリクエストを送信するようにさらに構成されている。
【０２２９】
任意選択として、処理モジュール704は、メンバーリソースにアクセスするリクエスト内の送信先URIがサフィックスをさらに含むと判定し、メンバーリソースにアクセスするリクエストの送信先アドレスを、ファンアウトURIに対応するマルチキャストアドレスに設定し、メンバーリソースにアクセスするリクエスト内の送信先URIを、メンバーリソースに対応するファンアウトURIに設定し、送信先URIに含まれるサフィックスをファンアウトURIに追加して、メンバーリソースアクセスリクエストを生成するようにさらに構成されている。
【０２３０】
任意選択として、受信モジュール701は、メンバーリソースを追加するためのグループリソース更新リクエストを受信するようにさらに構成され、メンバーリソースを追加するためのグループリソース更新リクエストは、グループリソース識別子およびグループリソースに参加する必要があるメンバーリソースを運び、グループリソースに参加する必要があるメンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、処理モジュール704は、グループリソース識別子に従って、メンバーデバイス上のグループリソースに参加する必要があるメンバーリソースのアクセス経路がグループリソース識別子に対応するグループリソース内のマルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるファンアウトURIと同じであることを判定し、マルチキャストグループに参加するためのグループアドバタイズメントを、グループリソースに参加する必要があるメンバーリソースを有するメンバーデバイスに送信するようにさらに構成され、マルチキャストグループに参加するためのグループアドバタイズメントは、マルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるマルチキャストアドレスを運び、これにより、グループリソースに参加する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスに従ってマルチキャストグループに参加し、マルチキャストアドレスに従って送信されたメンバーリソースアクセスリクエストを受信する。
【０２３１】
任意選択として、処理モジュール704は、グループリソース識別子に従って、メンバーデバイス上のグループリソースに参加する必要があるメンバーリソースのアクセス経路がグループリソース識別子に対応するグループリソース内のマルチキャストアドレスとファンアウトURIとの間のマッピング関係におけるファンアウトURIと異なることを判定し、グループリソースに参加する必要があるメンバーリソースを、グループリソース識別子に対応するグループリソース内のファンアウトURIとメンバーリソースとの間のマッピング関係に追加し、マルチキャストグループに参加するためのグループアドバタイズメントを、グループリソースに参加する必要があるメンバーリソースを有するメンバーデバイスに送信するようにさらに構成され、マルチキャストグループに参加するためのグループアドバタイズメントは、グループリソース識別子に対応するグループリソース内のマルチキャストアドレスとファンアウトURIとの間のマッピング関係およびファンアウトURIとメンバーリソースとの間のマッピング関係を運び、これにより、ファンアウトURIを運ぶアクセスリクエストを受信した後、メンバーデバイスは、ファンアウトURIとメンバーリソースとの間の受信されたマッピング関係に従って、メンバーデバイス上のメンバーリソースのアクセス経路を判定し、メンバーデバイス上のメンバーリソースの判定されたアクセス経路に従って対応するメンバーリソースアクセスリクエストを実行する。
【０２３２】
任意選択として、受信モジュール701は、メンバーリソースを削除するためのグループリソース更新リクエストを受信するようにさらに構成され、メンバーリソースを削除するためのグループリソース更新リクエストは、グループリソースから脱退する必要があるメンバーリソースとグループリソース識別子とを運び、グループリソースから脱退する必要があるメンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、処理モジュール704は、グループリソース識別子に従って、グループリソースから脱退する必要があるメンバーリソースに対応するファンアウトURI、およびグループリソースから脱退する必要があるメンバーリソースに対応するマルチキャストアドレスとファンアウトURIとの間のマッピング関係を判定し、グループリソースから脱退する必要があるメンバーリソースをマッピング関係から削除し、マルチキャストグループから脱退するためのグループアドバタイズメントを、脱退する必要があるメンバーリソースを有するメンバーデバイスに送信するようにさらに構成され、マルチキャストグループから脱退するためのグループアドバタイズメントは、マルチキャストアドレスとグループリソースから脱退する必要があるメンバーリソースに対応するファンアウトURIとの間のマッピング関係におけるマルチキャストアドレスを運び、これにより、脱退する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスによって指示されたマルチキャストグループから脱退する。
【０２３３】
任意選択として、受信モジュール701は、メンバーリソースを削除するためのグループリソース更新リクエストを受信するようにさらに構成され、メンバーリソースを削除するためのグループリソース更新リクエストは、グループリソースで予約済みである必要があるメンバーリソースとグループリソース識別子とを運び、グループリソースで予約済みである必要があるメンバーリソースは、メンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、処理モジュール704は、グループリソース識別子に従って、ファンアウトURIとグループリソースから脱退する必要があるメンバーリソースとの間のマッピング関係を判定し、グループリソースで予約済みである必要があるメンバーリソースを使用して、ファンアウトURIとグループリソースから脱退する必要があるメンバーリソースとの間のマッピング関係におけるメンバーリソースを更新し、マルチキャストグループから脱退するためのグループアドバタイズメントを、脱退する必要があるメンバーリソースを有するメンバーデバイスに送信するようにさらに構成され、マルチキャストグループから脱退するためのグループアドバタイズメントは、マッピング関係におけるマルチキャストアドレスを運び、これにより、脱退する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスによって指示されたマルチキャストグループから脱退する。
【０２３４】
任意選択として、処理モジュール704は、メンバーリソースを削除するためのグループリソース更新リクエスト内のグループリソース識別子に従って、メンバーデバイス上のグループリソースから脱退する必要があるメンバーリソースのアクセス経路が、脱退する必要があるメンバーリソースに対応するファンアウトURIと異なることを判定することであって、マルチキャストグループから脱退するためのグループアドバタイズメントは、グループリソースから脱退する必要があるメンバーリソースに対応するファンアウトURIをさらに含み、これにより、グループリソースから脱退する必要があるメンバーリソースを有するメンバーデバイスは、マルチキャストアドレスによって指示されたマルチキャストグループから脱退する、判定することと、グループリソースから脱退する必要があるメンバーリソースおよびマルチキャストグループから脱退するためのグループアドバタイズメントにおけるファンアウトURIに従って、メンバーリソースを削除するためのグループリソース更新リクエスト内のグループリソース識別子に対応するマルチキャストグループ情報内のメンバーリソースを削除することとを行うようにさらに構成されている。
【０２３５】
図8は、本発明の一実施形態によるメンバーデバイスを示している。メンバーデバイスは、M2MプラットフォームまたはM2Mゲートウェイであってよく、またM2Mデバイスであってもよい。つまり、M2Mネットワークにおいて、リソースを格納し、維持するデバイス、ゲートウェイ、またはプラットフォームはどれも、メンバーデバイスとして動作することができる。特に、メンバーデバイスは、受信モジュール801およびオペレーティングモジュール802を備える。
【０２３６】
特に、受信モジュール801は、グループサーバによって送信されたメンバーリソースアクセスリクエストを受信するように構成され、メンバーリソースアクセスリクエストは、マルチキャストメンバーリソースアクセスリクエストであり、メンバーリソースアクセスリクエストは、メンバーリソースに対応するファンアウトURIを含み、ファンアウトURIは、メンバーデバイス上のメンバーリソースのアクセス経路を示すために使用され、処理モジュール802は、ファンアウトURIに従って、メンバーデバイス上のメンバーリソースのアクセス経路を判定し、メンバーデバイス上のメンバーリソースのアクセス経路に従ってアクセスリクエストのオペレーションを実行するように構成されている。
【０２３７】
任意選択として、受信モジュール801は、マルチキャストグループに参加するためのグループアドバタイズメントを受信し、マルチキャストグループに参加するためのグループアドバタイズメントがマルチキャストアドレスを運び、マルチキャストグループに参加するためのグループアドバタイズメントに従って、マルチキャストアドレスに対応するマルチキャストグループに参加するようにさらに構成されている。
【０２３８】
任意選択として、マルチキャストグループに参加するためのグループアドバタイズメントは、ファンアウトURIとメンバーデバイス上のメンバーリソースのアクセス経路との間のマッピング関係を運び、メンバーデバイスは、ファンアウトURIとマルチキャストアドレスとの間のマッピング関係、およびメンバーリソースとマルチキャストアドレスとの間のマッピング関係を格納するように構成された格納モジュール803をさらに備える。
【０２３９】
任意選択として、メンバーデバイスは、メンバーリソースアクセスリクエストの送信先アドレスがマルチキャストアドレスであることを判定するように構成された判定モジュール804をさらに備える。
【０２４０】
任意選択として、ファンアウトURIに従って、オペレーティングモジュール802によって、メンバーデバイス上のメンバーリソースのアクセス経路を判定することは、特に、メンバーリソースアクセスリクエスト内の送信先アドレスと同じマルチキャストアドレスを含むマルチキャストグループ情報を判定し、メンバーリソースアクセスリクエスト内の送信先アドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報が、メンバーリソースアクセスリクエスト内の送信先URIと同じファンアウトURIを含むことを判定し、メンバーデバイス上のマルチキャストグループ情報内のファンアウトURIに対応するメンバーリソースのアクセス経路を判定することを行う。
【０２４１】
任意選択として、オペレーティングモジュール802によって、メンバーデバイス上のメンバーリソースのアクセス経路に従ってアクセスリクエストのオペレーションを実行することは、特に、メンバーリソースアクセスリクエスト内の送信先URIに含まれるファンアウトURIをメンバーデバイス上のメンバーリソースの判定されたアクセス経路で置き換え、メンバーデバイス上のメンバーリソースの判定されたアクセス経路に対応するメンバーリソースに対するアクセスリクエストのオペレーションを実行することを行う。
【０２４２】
任意選択として、受信モジュール801は、マルチキャストグループから脱退するためのグループアドバタイズメントを受信するようにさらに構成され、マルチキャストグループから脱退するためのグループアドバタイズメントはマルチキャストアドレスを運び、格納モジュール803は、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応する格納されているマルチキャストグループ情報を削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスに対応するマルチキャストグループから脱退するようにさらに構成されている。
【０２４３】
任意選択として、受信モジュール801は、マルチキャストグループから脱退するためのグループアドバタイズメントを受信するようにさらに構成され、マルチキャストグループから脱退するためのグループアドバタイズメントは、マルチキャストアドレスおよび脱退する必要があるメンバーリソースを運び、脱退する必要があるメンバーリソースは、グループリソースから脱退する必要があるメンバーリソースを有するメンバーデバイスおよびメンバーデバイス上のメンバーリソースのアクセス経路を含み、格納モジュール803は、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報においてグループリソースから脱退する必要がある格納されているメンバーリソースを削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応する格納されているマルチキャストグループ情報を削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスに対応するマルチキャストグループから脱退するようにさらに構成されている。
【０２４４】
さらに、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応する格納されているマルチキャストグループ情報を削除し、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスに対応するマルチキャストグループから脱退する前に、格納モジュール803は、マルチキャストグループから脱退するためのグループアドバタイズメントにおけるマルチキャストアドレスと同じマルチキャストアドレスに対応するマルチキャストグループ情報においてファンアウトURIに対応していない格納されているメンバーリソースを判定する必要がさらにある。
【０２４５】
グループサーバまたはメンバーデバイスに備えられているこれらのモジュールの機能を処理する実装様式は、方法実施形態のはじめの方で説明されており、したがってここでは繰り返さない。それに加えて、M2Mネットワークでは、M2Mプラットフォームは、コンピュータ、またはプロセッサを有するデバイスであってもよい。M2MゲートウェイおよびM2M端末は、デバイスに関して厳密には区別されない。例えば、ゲートウェイデバイスは、端末としても動作し得る。それに加えて、携帯電話、コンピュータ、PDA、ノートブックコンピュータ、リモートコントローラ、家庭電化製品、さまざまな装置およびメーター、ならびにセンサーなどのさまざまな端末デバイスは、すべて、M2Mネットワーク内のゲートウェイもしくは端末として動作することができる。前記の実施形態において、備えられているさまざまなモジュールの分割は、機能ロジックにのみ基づくが、本発明は、対応する機能が実装できる限り、先行する分割に限定されない。それに加えて、機能モジュールの特定の名前は、機能単位を区別するためにのみ使用され、本発明の保護範囲を制限するためには使用されない。メンバーデバイスによって実行される方法、およびメンバーデバイスのさまざまな機能モジュールの機能の実装は、メンバーデバイスのプロセッサによって達成され、グループサーバによって実行される方法、およびグループサーバのさまざまな機能モジュールの機能の実装は、グループサーバのプロセッサによって達成され得る。
【０２４６】
本発明の実施形態において提供される技術的解決法からわかるように、メンバーデバイス上のメンバーリソースのアクセス経路とファンアウトURIとの間のマッピング関係が確立され、またファンアウトURIは、メンバーリソースアクセスリクエストに含められ、これにより、メンバーリソースを有するメンバーデバイスは、ファンアウトURIによって指示されるメンバーデバイス上のメンバーリソースのアクセス経路に従って、メンバーリソースアクセスリクエストによって指示されたオペレーションを実行する。したがって、マルチキャスト技術およびファンアウトURIにより、異なるメンバーデバイスが、メンバーリソースにアクセスするマルチキャストリクエストを解析し、アクセスリクエストに対するその後のオペレーションを実行することができる。したがって、グループサーバは、アクセスリクエストを各メンバーデバイスにユニキャストする必要がなく、ネットワークのオーバーヘッドが軽減される。
【０２４７】
前記の説明は、本発明の単に例示的な特定の実施形態にすぎず、本発明の保護範囲を限定することを意図されていない。本発明において開示されている技術の範囲内で当業者が容易に考え付く変更形態または代替的形態は、本発明の保護範囲内にあるものとする。したがって、本発明の保護範囲は、請求項の保護範囲に従うものとする。
【符号の説明】
【０２４８】
D1、D2  メンバーデバイス
D3、D4  M2Mデバイス
D5、D6、D7、D8、D9  M2Mデバイス
G1  M2Mゲートウェイ
Grp1  グループリソース
Grp2  グループリソース
Grp3  グループリソース
Grp4  グループリソース
Grp5  グループリソース
Grp6  グループリソース
Grp7  グループリソース
Grp8  グループリソース
Grp9  グループリソース
Grp10  グループリソース
Grp11  グループリソース
Grp12  第2のグループリソース
m11、m12、m13、m14  メンバーリソース
m21  メンバーリソース
m31、m32、m33、m34  非ローカルメンバーリソース
m51、m52、m53  メンバーリソース
m61、m62、m63  メンバーリソース
m71、m72、m73、m74、m75、m76  メンバーリソース
m101、m102  メンバーリソース
m111、m112  メンバーリソース
N1  M2Mプラットフォーム
NA1  ネットワークアプリケーションサーバ
70  送信モジュール
701  受信モジュール
702  取得モジュール
703  送信モジュール
704  処理モジュール
801  受信モジュール
802  オペレーティングモジュール
803  格納モジュール
804  判定モジュール
【図１】
0005891551.tif 000005
【図２】
0005891551.tif 000006
【図２Ａ】
0005891551.tif 000007
【図２Ｂ】
0005891551.tif 000008
【図２Ｃ】
0005891551.tif 000009
【図２Ｄ】
0005891551.tif 000010
【図２Ｅ】
0005891551.tif 000011
【図２Ｆ】
0005891551.tif 000012
【図２Ｇ】
0005891551.tif 000013
【図３】
0005891551.tif 000014
【図３Ａ】
0005891551.tif 000015
【図４】
0005891551.tif 000016
【図５】
0005891551.tif 000017
【図６Ａ】
0005891551.tif 000018
【図６Ｂ】
0005891551.tif 000019
【図７】
0005891551.tif 000020
【図８】
0005891551.tif 000021