(57)【要約】  ネットワーク要素（NE）が、会議のためのダイジェストログを格納するように構成されたメモリと、NEに関連した複数のうちの第1の参加者からの第1のメッセージを受信するように構成された受信機であって、この第1のメッセージは第1の参加者の署名プロファイルを含む受信機と、受信機とメモリに連結され、第1のメッセージに応じてダイジェストログの第1の更新を実行することによって会議の状態を追跡するように構成されたプロセッサと、プロセッサに連結され、会議にサービスを提供する複数のうちの第1のサービスプロキシに第2のメッセージを送信するように構成された送信機であって、この第2のメッセージは更新されたダイジェストログを示す送信機とを備えている。
2016527589.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク要素（NE）であって、
会議のためのダイジェストログを格納するように構成されたメモリと、
前記NEに関連した複数のうちの第1の参加者からの第1のメッセージを受信するように構成された受信機であって、前記第1のメッセージが前記第1の参加者の署名プロファイルを含む受信機と、
前記受信機と前記メモリに連結され、前記第1のメッセージに応じて前記ダイジェストログの第1の更新を実行することによって前記会議の状態を追跡するように構成されたプロセッサと、
前記プロセッサに連結され、前記会議にサービスを提供する複数のうちの第1のサービスプロキシに前記第1の更新を示すために、第2のメッセージを送信するように構成された送信機と、
を備えている、ネットワーク要素（NE）。
【請求項２】
前記第1の更新を実行することが、
前記ダイジェストログにカレントエントリを生成することと、
前記ダイジェストログの最後のエントリのローカル状態をインクリメントすることによって、前記カレントエントリのローカル状態を計算することと、
前記カレントエントリに前記第1の参加者の署名プロファイルを記録することと
を含み、
前記第2のメッセージが、
前記カレントエントリのローカル状態と、
前記最後のエントリのローカル状態と、
前記第1の参加者の署名プロファイルと
を含む、
請求項1に記載のNE。
【請求項３】
前記受信機が、前記第1のサービスプロキシから第3のメッセージを受信するようにさらに構成され、前記第3のメッセージが、前記第1のサービスプロキシに関連した第2の参加者の署名プロファイルを含み、前記プロセッサが、前記第3のメッセージに応じて前記ダイジェストログの第2の更新を実行するようにさらに構成され、前記送信機が、前記第1の参加者に前記第2の更新を示すために第4のメッセージを送信するようにさらに構成されている、請求項1に記載のNE。
【請求項４】
前記第3のメッセージが、前記第1のサービスプロキシのカレントローカル状態および前記第1のサービスプロキシの最後のローカル状態をさらに含み、
前記第2の更新を実行することが、
前記ダイジェストログに前記第1のサービスプロキシに関連したカレントエントリを生成することと、
前記カレントエントリに前記カレントローカル状態を記録することと、
前記ダイジェストログの最後のエントリのグローバル状態をインクリメントすることによって、前記カレントエントリのグローバル状態を計算することと、
を含み、
前記第4のメッセージが、
前記カレントエントリの前記グローバル状態と、
前記最後のエントリの前記グローバル状態と、
前記第2の参加者の署名プロファイルと
を含む、
請求項3に記載のNE。
【請求項５】
前記第3のメッセージに示された前記最後のローカル状態が前記第1のサービスプロキシに関連した最後のエントリのカレントローカル状態と異なる場合、前記プロセッサは、前記NEが前記第1のサービスプロキシからの1つ以上の更新を見逃したことを判断するようにさらに構成され、前記送信機が、見逃された更新を要求するために、リカバリ要求メッセージを前記第1のサービスプロキシに送信するようにさらに構成され、前記受信機が、前記第1のサービスプロキシから少なくとも1つの前記見逃された更新を含むリカバリデータメッセージを受信するようにさらに構成されている、請求項4に記載のNE。
【請求項６】
前記受信機が、第1状態と第2状態との間で前記ダイジェストログのための要求を含むリカバリ要求メッセージを受信するようにさらに構成され、前記プロセッサが、前記第1状態と前記第2状態との間の状態を含む一部の前記ダイジェストログを抽出するようにさらに構成され、前記送信機が、前記ダイジェストログの前記抽出された部分を含むリカバリデータメッセージを送信するようにさらに構成されている、請求項1に記載のNE。
【請求項７】
前記ダイジェストログが、
前記サービスプロキシおよび特定の時間での前記サービスプロキシに対応するローカル状態の記録、
前記参加者および前記特定の時間での前記参加者に対応する署名プロファイルの記録、および、
前記特定の時間での前記会議のグローバル状態
を含む、請求項1に記載のNE。
【請求項８】
前記プロセッサが、
前記NEと前記第1のサービスプロキシとの間のネットワーク接続状態を示す心拍メッセージを受信し、
前記心拍メッセージがタイムアウトウィンドウの第1のサービスプロキシから受信されない場合、要求メッセージを生成するように
さらに構成され、
前記送信機が、前記リカバリ要求メッセージを前記複数のうちの第2のサービスプロキシに送信するようにさらに構成されている、
請求項1に記載のNE。
【請求項９】
前記NEが、前記会議のための情報中心型ネットワーキング（ICN）対応のサービスプロキシであり、前記第1のメッセージおよび前記第2のメッセージが、ICNプロトコルパケットであり、前記第1のメッセージおよび前記第2のメッセージそれぞれが、ルーティング可能な名前ベースの識別子を含み、前記第1のメッセージが、会議参加要求、会議退出、会議再参加要求、またはこれらの組み合わせをさらに含む、請求項1に記載のNE。
【請求項１０】
情報中心型ネットワーキング（ICN）のネットワーク内のローカルサービスプロキシで会議のサービス制御を同期させるための方法であって、前記方法が、
前記ローカルサービスプロキシに関連した複数のうちの第1の参加者から第1のメッセージを受信するステップであって、前記第1のメッセージが前記第1の参加者の署名プロファイルを含み、前記第1のメッセージがICNコンテンツ名ベースのルーティング方式を採用することによって受信されるステップと、
前記第1のメッセージに応じてダイジェストログのための第1の更新を実行するステップによって前記会議の状態を追跡するステップと、
前記会議にサービスを提供する複数のうちの第1のリモートサービスプロキシに前記第1の更新を示すために第2のメッセージを送信するステップと、
を含む方法。
【請求項１１】
前記第1の更新を実行するステップが、
前記ダイジェストログにカレントエントリを生成するステップ、
前記ダイジェストログの最後のエントリのグローバル状態をインクリメントすることによって、前記カレントエントリのグローバル状態を計算するステップ、および、
前記カレントエントリに前記第1の参加者の署名プロファイルを記録するステップ
を含む、請求項10に記載の方法。
【請求項１２】
前記第1のリモートサービスプロキシのグローバル状態を含む同期インタレストメッセージを受信するステップ、および、
前記カレントエントリの前記グローバル状態が、前記受信した同期インタレストメッセージの前記第1のリモートサービスプロキシのグローバル状態よりも新しい場合に、前記第2のメッセージの前記送信を開始するステップ
をさらに含み、
前記第2のメッセージが、前記ダイジェストログの前記カレントエントリの前記グローバル状態、および前記第1の参加者の署名プロファイルを含む請求項11に記載の方法。
【請求項１３】
前記第1のリモートサービスプロキシから第3のメッセージを受信するステップであって、前記第3のメッセージが、前記第1のリモートサービスプロキシに関連した第2の参加者の署名プロファイルおよび前記第1のリモートサービスプロキシのグローバル状態を含む、ステップと、
前記第3のメッセージに応じて前記ダイジェストログの第2の更新を実行するステップと、
前記第1の参加者に前記第2の更新を示すために第4のメッセージをプッシュするステップと、
をさらに含む、請求項10に記載の方法。
【請求項１４】
前記第2の更新を実行するステップが、
前記ダイジェストログに前記第1のリモートサービスプロキシに関連したカレントエントリを生成するステップ、および、
前記カレントエントリに前記第3のメッセージの前記グローバル状態を記録するステップ、
を含み
前記第4のメッセージが、
前記第3のメッセージに受信した前記グローバル状態と、
前記ダイジェストログの最後のエントリのグローバル状態と、
前記第2の参加者の署名プロファイルと、
を含み、
前記方法が、次の会議の更新のためのインタレストを示すために、同期インタレストメッセージを送信するステップをさらに含み、
前記同期インタレストメッセージが、前記ダイジェストログの前記カレントエントリの前記グローバル状態を含む、
請求項13に記載の方法。
【請求項１５】
前記第1の参加者からリカバリ要求メッセージを受信するステップであって、前記リカバリ要求メッセージが第1のグローバル状態と第2のグローバル状態との間に前記ダイジェストログのための要求を含む、ステップと、
前記リカバリ要求メッセージを受信するステップに応答して、前記第1のグローバル状態と前記第2のグローバル状態との間の状態を含む一部の前記ダイジェストログを抽出するステップと、
前記ダイジェストログの前記抽出された部分を含むリカバリデータメッセージを前記第1の参加者に送信するステップと、
をさらに含む、請求項10に記載の方法。
【請求項１６】
前記ローカルサービスプロキシが第前記1のリモートサービスプロキシからの1つ以上の更新を見逃した場合、待機期間でタイマを開始するステップと、
前記タイマが前記待機期間に達して、前記待機期間中に会議の更新が受信されない場合、リカバリ要求メッセージを送信するステップと、
少なくとも1つの前記見逃された更新を含むリカバリデータメッセージを受信するステップと、
をさらに含む、請求項10に記載の方法。
【請求項１７】
前記ローカルサービスプロキシと前記第1の参加者との間のネットワーク接続状態を示す心拍メッセージを受信するステップと、
前記心拍メッセージがタイムアウトウィンドウの前記第1の参加者から受信されない場合、前記ダイジェストログから前記第1の参加者を除去することによって前記ダイジェストログの第3の更新を実行するステップと、
前記第3の更新を示す第3のメッセージを前記第1のリモートサービスプロキシに送信するステップと、
をさらに含む、請求項10に記載の方法。
【請求項１８】
情報中心型ネットワーキング（ICN）のネットワーク内で会議にサービスを提供するローカルサービスプロキシによる使用のためのコンピュータプログラム製品であって、プロセッサによって実行されると、前記ローカルサービスプロキシが、
前記ローカルサービスプロキシに関連した複数のうちの第1の参加者からの第1のメッセージを受信し、ここで、前記第1のメッセージが前記第1の参加者の署名プロファイルを含み、前記第1のメッセージがICNコンテンツ名ベースのルーティング方式によって受信され、
前記第1のメッセージに応じてダイジェストログの第1の更新を実行することによって前記会議の状態を追跡し、ここで、前記第1の更新を実行することが、前記ダイジェストログに前記第1の参加者の署名プロファイルを記録することを含み、
前記会議にサービスを提供する複数のうちの第1のリモートサービスプロキシに前記第1の更新を示すために第2のメッセージを送信するように、
前記コンピュータプログラム製品が、非一時的なコンピュータ可読媒体に格納されたコンピュータ実行可能命令を含む、コンピュータプログラム製品。
【請求項１９】
前記命令が、前記プロセッサにさらに、
前記第1のリモートサービスプロキシから第3のメッセージを受信させ、ここで、前記第3のメッセージが、前記第1のリモートサービスプロキシに関連した第2の参加者の署名プロファイルを含み、
前記第3のメッセージに応じて前記ダイジェストログの第2の更新を実行させ、
前記第1の参加者に前記第2の更新を示すために第4のメッセージを送信させる、
請求項18に記載のコンピュータプログラム製品。
【請求項２０】
前記第1の更新を実行することが、
前記ダイジェストログのグローバル状態をインクリメントすること、および、
前記ダイジェストログの前記ローカルサービスプロキシのローカル状態をインクリメントすること
をさらに含み、
前記第3のメッセージが、前記第1のリモートサービスプロキシのローカル状態をさらに含み、
前記第2の更新を実行することが、
前記ダイジェストログで前記グローバル状態をインクリメントすること、および、
前記ダイジェストログで前記第3のメッセージの前記ローカル状態を記録することによって、前記第1のリモートサービスプロキシのローカル状態を追跡すること
を含み、
前記ダイジェストログが、
前記リモートサービスプロキシおよび特定の時間での前記リモートサービスプロキシに対応するローカル状態の記録、
前記参加者および特定の時間での前記参加者に対応する署名プロファイルの記録、および、
前記特定の時間での前記グローバル状態
を含む、
請求項19に記載のコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、2013年5月17日にGuoqiang Wangらによって出願された「Multitier “Push” Service Control for Virtual Whiteboard Conference Over Large Scale ICN Architecture」と題する米国仮特許出願第61／824656号明細書、および2014年4月25日にAsit Chakrabortiらによって出願された「Multitier “Push” Service Control for Virtual Whiteboard Conference Over Large Scale ICN Architecture」と題する米国仮特許出願第61／984505号明細書に基づく優先権を主張し、この両方が、参照により本明細書全体に組み込まれる。
連邦政府資金による研究開発の記載
該当なし。
マイクロフィッシュ付属物への言及
該当なし。
【背景技術】
【０００２】
仮想会議は、会議のイベントおよび／またはデータを、地理的に分散したネットワークサイトに位置する複数の参加者と共有および／または同時に交換することを可能にするサービスを参照することができる。このサービスは、参加者がリアルタイムで対話することを可能にし、ポイント・ツー・ポイント（P2P）通信（例えば、1つの受信機に1人の送信者）、ポイント・ツー・マルチポイント（P2MP）通信（例えば、複数の受信機に1人の送信者）、および／またはマルチポイント・ツー・マルチポイント（MP2MP）通信（例えば、複数の受信機に複数の送信者）をサポートすることができる。仮想会議のいくつかの例は、参加者が、インターネットを通じてのオーディオ、ビデオ、および／またはデータを交換することができる、チャットルーム、電子会議、および仮想ホワイトボード（VWB）サービスを含んでもよい。仮想会議のいくつかの技術的な課題は、リアルタイム性能（例えば、多者間でのリアルタイムデータ交換）、スケーラビリティ（例えば、1000から10000（10K）の参加者）、および双方向通信（例えば、参加者間でのMP2MP、サブスクライバおよびパブリッシャとして同時に二重の役割を有する参加者）のサポートを含むことができる。
【発明の概要】
【課題を解決するための手段】
【０００３】
一実施形態において、本開示はネットワーク要素（NE）を含み、このNEは、会議のためのダイジェストログを格納するように構成されたメモリと、NEに関連した複数のうちの第1の参加者からの第1のメッセージを受信するように構成された受信機であって、この第1のメッセージは第1の参加者の署名プロファイルを含む受信機と、受信機とメモリに連結され、第1のメッセージに応じてダイジェストログの第1の更新を実行することによって会議の状態を追跡するように構成されたプロセッサと、プロセッサに連結され、会議にサービスを提供する複数のうちの第1のサービスプロキシに第2のメッセージを送信するように構成された送信機であって、この第2のメッセージは更新されたダイジェストログを示す送信機と、を備える。
【０００４】
一実施形態において、本開示は、情報中心型ネットワーキング（ICN）のネットワーク内のローカルサービスプロキシで会議のサービス制御を同期させるための方法を含み、この方法は、サービスプロキシに関連した複数のうちの第1の参加者から第1のメッセージを受信するステップであって、第1のメッセージは第1の参加者の署名プロファイルを含み、第1のメッセージはICNコンテンツ名ベースのルーティング方式を採用することによって受信されるステップと、第1のメッセージに応じてダイジェストログのための第1の更新を実行するステップによって会議の状態を追跡するステップと、会議にサービスを提供する複数のうちの第1のリモートサービスプロキシに第1の更新を示すために第2のメッセージを送信するステップとを含む。
【０００５】
さらに別の実施形態では、本開示は、ICNネットワーク内で会議にサービスを提供するローカルサービスプロキシによる使用のためのコンピュータプログラム製品を含み、プロセッサによって実行されると、ローカルサービスプロキシが、ローカルサービスプロキシに関連した複数のうちの第1の参加者からの第1のメッセージを受信し、ここで、第1のメッセージは第1の参加者の署名プロファイルを含み、第1のメッセージはICNコンテンツ名ベースのルーティング方式によって受信され、第1のメッセージに応じてダイジェストログのための第1の更新を実行することによって会議の状態を追跡し、ここで、第1の更新を実行することは、ダイジェストログに第1の参加者の署名プロファイルを記録することを含み、会議にサービスを提供する複数のうちの第1のリモートサービスプロキシに第1の更新を示すために第2のメッセージを送信するように、このコンピュータプログラム製品は、非一時的なコンピュータ可読媒体に格納されたコンピュータ実行可能命令を含む。
【０００６】
添付図面および特許請求の範囲と併せて、以下の詳細な説明から、これらのおよび他の特徴がより明確に理解されよう。
【図面の簡単な説明】
【０００７】
本開示のより完全な理解のために、次に、同じ参照符号が同じ部分を表す、添付の図面と詳細な説明に関連した以下の簡単な説明を参照する。
【０００８】
【図１】多層ハイブリッド会議のサービスネットワークの一実施形態の概略図である。
【図２】多層ハイブリッド会議のサービスネットワーク内のノードとして機能できるネットワーク要素（NE）の一実施形態の概略図である。
【図３】情報中心型ネットワーキング（ICN）対応のサービスプロキシの構造ビューの一実施形態の概略図である。
【図４】ICN対応のユーザ機器（UE）の構造ビューの一実施形態の概略図である。
【図５】多層ハイブリッド会議のサービスネットワークの階層ビューの一実施形態の概略図である。
【図６】サービスプロキシでのダイジェストツリーの一実施形態の概略図である。
【図７】会議の構成の一実施形態の概略図である。
【図８】サービスプロキシでのダイジェストツリーログの一実施形態の概略図である。
【図９】サービスクライアントでのダイジェスト履歴ログの一実施形態の表である。
【図１０】会議のブートストラップ方法の一実施形態のプロトコル図である。
【図１１】会議の同期方法の一実施形態のプロトコル図である。
【図１２】会議の同期方法の別の実施形態のプロトコル図である。
【図１３】会議のリカバリ方法の一実施形態のフロー図である。
【図１４】会議のリカバリ方法の別の実施形態のフロー図である。
【図１５】ICNプロトコルのインタレストパケットの一実施形態の概略図である。
【図１６】ICNプロトコルのデータパケットの一実施形態の概略図である。
【発明を実施するための形態】
【０００９】
1つ以上の実施形態の例示的実装が以下に提供されるが、開示されたシステムおよび／または方法は、既知または既存に関わらず、任意の数の技法を使用して実施され得ることを、冒頭で理解すべきである。本開示は、本明細書に例示され説明される例示的な設計および実装を含む、以下に例示される例示的な実装、図面、および技術に限定されるべきではないが、均等物の全範囲を伴う、添付の特許請求の範囲内で変更され得る。
【００１０】
会議アプリケーションおよび／またはシステムは、分散ネットワーク環境に位置する複数の当事者間でのリアルタイムの情報および／またはメディアデータの交換をサポートすることができる。いくつかの会議アプリケーションおよび／またはシステムは、ホスト・ツー・ホストのインターネットプロトコル（IP）通信モデルを通じて実装されてもよいし、広域ネットワーク（WAN）リンクを通じてミーティングトラフィックを複製してもよい。例えば、サーバ中心モデルでは、中央サーバが、会議を制御および管理し、参加者（例えばミーティングのサブスクライバ）からのデータを処理し、その後、再び参加者にデータを再配信することができる。サーバ中心モデルは、制御管理が簡単であるかもしれないが、会議データの複製および／または再配信は、サーバでの高データトラフィックの集中をもたらし得る。例えば、サーバ中心モデルでのデータトラフィックはN2(O(N2))の順であってもよく、ここで、Nは、参加者の数を表すことができる。したがって、サーバ中心モデルは、大規模な会議（例えば、1000から10000の参加者）に適していないかもしれない。
【００１１】
いくつかの会議サービスの技術は、サーバ中心モデルで高データトラフィックを低減するためにコンテンツ配信ネットワーク（CDN）モデルおよび／またはP2Pコンテンツ配信ネットワークモデル（例えば、マルチサーバ構造）を採用することができる。ただし、CDNモデルおよび／またはP2Pコンテンツ配信ネットワークモデルはオーバー・ザ・トップ（OTT）ソリューションであってもよく、ここで、ネットワーク事業者が、コンテンツの管理および／または配信に関与することなく（例えば、コンテンツプロバイダが、ネットワーク事業者から独立して動作）、コンテンツ（例えば、オーディオ、ビデオ、および／またはデータ）を、インターネットを通じてソースからエンドユーザに送達することができる。このように、ネットワークの最適化および／またはクロスレイヤの最適化が、CDNモデルおよび／またはP2Pコンテンツ配信ネットワークモデルで容易に実行されない可能性があり、したがって、非効率的な帯域幅の利用につながる可能性がある。また、CDNモデルおよび／またはP2Pコンテンツ配信ネットワークモデルは、MP2MP通信をサポートしていない可能性があり、リアルタイム双方向通信に適していないかもしれない。
【００１２】
クロノスなどのいくつかの他の会議サービスの技術は、帯域幅の利用を改善するために名前データネットワーク（NDN）モデルを採用することができ、共有可能かつ分散したネット内のストレージや名前ベースのルーティング機構などのNDN機能を活用することによりトラフィック負荷を軽減することができる。NDNは、消費者によって要求されたときにデータがネットワークを介して流れる、受信機主導のデータ中心の通信プロトコルであってもよい。NDNのデータアクセスモデルは、プル型モデルと呼ぶことができる。ただし、会議のイベントおよび／または更新は、会議の参加者が会議中にいつでもミーティングの更新を公開することができるものとして、非決定的であってもよい。プル型モデルで非決定的な会議イベントにアクセスするために、参加者は会議イベントを積極的に問い合わせることができる。例えば、クロノスでのすべての参加者は、他の参加者からのミーティングの更新を要求するために、問い合わせを定期的にブロードキャストすることができる。このため、クロノスでの制御信号伝達のオーバーヘッドが大きくなることがある。また、クロノスでのデータプレーンと制御プレーンのカップリングが、同時のデータ更新および／またはリカバリを複雑にサポートすることにつながる可能性がある。したがって、クロノスは、リアルタイムの双方向の大規模な会議をサポートするために適切ではないかもしれない。
【００１３】
ICN構造は、情報デリバリに焦点を当てたネットワーク構造のタイプである。また、ICN構造は、コンテンツを意識した、コンテンツ中心の、またはデータ指向のネットワーク構造として知られているかもしれない。ICNモデルは、ホスト・ツー・ホストモデルから情報オブジェクト・ツー・オブジェクトモデルへ、IP通信モデルをシフトすることができる。情報オブジェクト・ツー・オブジェクトモデルは、コンテンツベースである位置に基づかないアドレス指定方式を採用することができるのに対し、IPホスト・ツー・ホストモデルは、記憶位置（例えば、ホストのIPアドレス）によりデータをアドレス指定し、識別することができる。情報オブジェクトは、ICN通信モデル内のエンティティのためのファーストクラスの抽象であってもよい。情報オブジェクトのいくつかの例は、コンテンツ、データストリーム、サービス、ユーザエンティティ、および／または装置を含んでもよい。ICN構造では、情報オブジェクトは、情報オブジェクトを位置からデカップリングしながら、情報オブジェクトをアドレス指定するために使用することができる、位置に基づかない名前で割り当てられてもよい。情報オブジェクトへのおよび情報オブジェクトからのルーティングが、割り当てられた名前に基づいていてもよい。ICN構造は、ネットワーク内キャッシングに備えることができ、ここで、任意のネットワーク装置または要素が、コンテンツ転送の性能を向上させることができる一時的なコンテンツサーバとして機能してもよい。情報オブジェクトの位置からのデカップリングおよびICNでの名前ベースのルーティングにより、移動性を効率的に扱うことができる可能性がある。また、ICN構造は、データコンテンツを搬送する通信チャネルを確保する代わりに、データコンテンツにセキュリティ証明書を付加することにより、セキュリティに備えることができる。このように、会議アプリケーションは、リアルタイムの双方向の大規模な会議をサポートするために、名前ベースのルーティング、セキュリティ、マルチキャスト、および／またはマルチパスルーティングなどの、ICN機能を活用することができる。
【００１４】
本明細書に開示されているのは、会議の更新を同期させるためのプッシュおよびプル機構の組み合わせを採用することができる、ハイブリッド会議サービス制御構造である。ハイブリッド会議サービス制御構造は、複数の会議参加者にサービスを提供する複数の分散型サービスプロキシを含んでもよい。各サービスプロキシは、サービスプロキシに関連した参加者のグループにサービスを提供することができる。サービスプロキシは、同じ会議にサービスを提供するリモートサービスプロキシを用いて会議の更新を同期させて統合し、関連する参加者に、統合した会議の更新を配信することができる。会議の更新は、参加者の指紋（FP）を含んでもよく、このFPは、参加者の署名および／または証明書を含んでもよいし、および／またはFPに関連したシーケンス番号を更新してもよい。参加者とサービスプロキシとの間の制御フローの同期は、プッシュ機構を採用することができる。ただし、サービスプロキシ間の制御フローの同期は、プッシュおよび／またはプル機構を採用することができる。一実施形態では、各サービスプロキシと各参加者は、会議の更新を追跡するためにダイジェストログを維持することができる。各ダイジェストログは、（例えば、ダイジェストツリーの形態で）会議のローカライズされたカレントビューのスナップショットおよび参加者のFPの履歴を含んでもよい。例えば、各サービスプロキシは、関連する参加者のスナップショットビューを有するプロキシダイジェストツリー（例えば、ローカルダイジェストツリー）や会議にサービスを提供する他のリモートサービスプロキシ、およびプロキシダイジェストツリーに対応するFP更新の履歴を含んでもよい。各参加者は、プロキシダイジェストツリーのルート（例：グローバルルートダイジェスト）とこのグローバルルートダイジェストに対応するFP更新の歴史を有するダイジェストツリーを含んでもよい。このように、同期は、サービスプロキシと関連する参加者との間の親子関係に従って動作することができる。開示されたハイブリッド会議サービス制御構造は、ネイティブのICNネットワーク内ストレージと名前ベースのルーティングを活用することができる。開示されたハイブリッド会議サービス制御構造は、制御プレーンとデータプレーンの分離を提供することができる。開示されたハイブリッド会議サービス制御構造は、会議の更新の効率的な同期とネットワーク割り込みからの高速リカバリを提供することができる。開示されたハイブリッド会議サービス制御構造は、リアルタイムの双方向の大規模な会議をサポートするのに適切であり得る。
【００１５】
図1は、多層ハイブリッド会議のサービスネットワーク100の一実施形態の概略図である。ネットワーク100は、複数の会議のサービスルータ（SR）120および複数のUE130を含むことができる。複数のSR120は、1つ以上のネットワーク170内に位置することができる。例えば、ネットワーク170は、広範囲に分散した分散サービスおよび／または他のネットワークを提供するために、エッジコンピューティングを用いたエッジクラウドネットワーク170であってもよい。各UE130を、リンク142（例えば、無線および／または有線リンク）を介してネットワーク180に接続することができる。一実施形態において、ネットワーク180は、任意のレイヤ2（L2）アクセスネットワーク（例えば、無線アクセスネットワーク、有線アクセスネットワーク、等）であってもよいし、L2は、開放型システム間相互接続（OSI）モデルのデータリンクレイヤであってもよい。ネットワーク170および180を、インターネットネットワーク150経由でリンク141を介して相互接続することができる。インターネットネットワーク150を、1つ以上の相互接続されたローカルエリアネットワーク（LAN）、メトロポリタンエリアネットワーク（MAN）、ワイドエリアネットワーク（WAN）、等から形成することができる。一実施形態において、インターネットネットワーク150は、インターネットサービスプロバイダ（ISP）ネットワークを含んでもよい。リンク141は、光ファイバリンク、電気リンク、および／または論理接続などの物理的な接続を含んでもよい。各ネットワーク150、170、および／または180は、複数のNE140を含むことができ、このNE140は、ルータ、ゲートウェイ、スイッチ、エッジルータ、エッジゲートウェイ、および／またはルーティングおよび通信パケットに適した任意のネットワーク装置であってもよいことが、当業者には理解されよう。同じ機能を達成するために当業者によって決定されるように、ネットワーク150、170、および／または180は、代替的に構成されてもよいし、SR120およびUE130は、ネットワーク100内に代替的に配置されてもよいことに、留意されたい。
【００１６】
SR120は、互いの間でおよび複数の会議参加者間での、大規模な会議（例えば、約1000〜約10000の参加者とのチャットルーム、ネットワーク会議サービス、仮想ホワイトボード（VWB）サービス、等）のための制御および／または信号伝達を同期させるように構成され得る、ルータ、仮想マシン（VM）、および／または任意のネットワーク装置であってもよく、この参加者は、UE130を介して会議に参加することができる。例えば、各SR120は会議プロキシとして機能することができるため、SR120をサービスプロキシと呼ぶことができる。一実施形態では、SR120は、各VMが異なる会議のためのサービスプロキシとして機能し得る、1つ以上のVMをホストすることができる。各SR120は、会議参加者の異なるグループにサービスを提供することができることに留意されたい。
【００１７】
各UE130は、1つ以上の大規模な会議に参加するように構成された、モバイル装置、デスクトップコンピュータ、モバイル装置、携帯電話、および／または任意のネットワーク装置などの、エンドユーザ装置であってもよい。例えば、会議参加者は、UE130で会議アプリケーションを実行して、会議に参加することができる。会議参加者は、FPおよび会議名を提供することで、特定の会議に参加することを要求することができる。また、会議参加者は、会議用のデータをサブスクライブするおよび／または公開することができる。ネットワーク100において、各UE130をサービスクライアントと呼ぶことができ、各UE130は、会議制御および／またはサービスプロキシとの信号伝達を同期させることができる。
【００１８】
一実施形態において、ネットワーク100は、大規模な会議のアプリケーションをサポートするために、ICNの名前ベースのルーティング、セキュリティ、マルチキャスト、および／またはマルチパスルーティングを使用することができるICN対応のネットワークであってもよい。ネットワーク100は、データプレーンとは別の制御プレーンを含んでもよい。例えば、ネットワーク100は、制御プレーンにおける会議制御および信号伝達のための2層（例えば、プロキシクライアント）構造を採用することができる。2層構造は、プロキシレイヤおよびクライアントレイヤを含んでもよい。プロキシレイヤは、複数のSR120に位置する複数のサービスプロキシの複数を含むことができ、クライアントレイヤは、複数のUE130に位置する複数のサービスクライアントを含むことができる。
【００１９】
一実施形態では、制御パス191および192は、特に会議制御および信号伝達を交換するための論理パスであってもよい。SR120に位置するサービスプロキシは、制御パス191を経由して会議を提供する他のSR120に位置するリモートサービスプロキシを用いて、会議制御および信号伝達を交換することができる。また、各サービスプロキシは、制御パス192経由でUE130に位置する関連するサービスクライアントと、会議制御および信号伝達を交換することができる。サービスプロキシは制御プレーン機能に参加することができるが、データプレーン機能に参加することができないことに留意すべきである。このように、サービスクライアント間でのデータ通信（例えば、オーディオ、ビデオ、リッチテキストの交換）は、会議制御から独立していてもよい。
【００２０】
一実施形態では、プッシュ機構を、サービスプロキシ間と同様に、サービスプロキシとサービスクライアントとの間で会議における制御（例えば、FP、他の署名された情報、イベント、等）を同期させるために採用することができる。関心のある受信者が情報源から情報をプルすることができるICNプロトコルのプル機構とは対照的に、プッシュ機構は、関心のある受信者から要求することなく、送信元が開始した情報の伝送を参照することができる。例えば、サービスクライアントが、サービスクライアントにサービスを提供するサービスプロキシへのFP更新を開始してプッシュすることができる。FP更新を受信すると、サービスプロキシは、第1のプロキシ更新に受信したすべてのFP更新を統合することができ、同じ会議にサービスを提供する他のリモートサービスのプロキシにこの第1のプロキシ更新をプッシュすることができる。また、サービスプロキシは、他のリモートサービスプロキシの1つから第2のプロキシ更新を受信することができ、サービスプロキシによってサービスを提供される参加者にこの第2のプロキシ更新をプッシュすることができる。プッシュ機構は、会議サービスの性能因子であり得る、リアルタイムまたはほぼリアルタイムの通信を可能にすることができる。
【００２１】
別の実施形態では、サービスクライアントとサービスプロキシは、本明細書で上述したのと実質的に同様のプッシュ機構を採用することによって、会議制御を同期させることができる。ただし、サービスプロキシ間の同期は、プル機構を採用してもよい。例えば、第1のサービスプロキシは、第2のサービスプロキシに重要な同期インタレストを送信することができ、この同期インタレストは第1のサービスプロキシでの最も新しいグローバル会議ビューを含むことができる。第2のプロキシが第2のプロキシによりサービスを提供されたクライアントからのFP更新を受信すると、第2のプロキシは、FP更新を統合し、第2のプロキシでグローバル会議ビューを更新することができる。第2のプロキシは、同期インタレストに示される第1のサービスプロキシのグローバル会議ビューが古くなっていることを検出することができ、したがって、更新された最新のグローバル会議ビューを示す第1のサービスプロキシへの同期応答を送信することができる。サービスクライアントが更新されたFPを受信した後、サービスクライアントは、名前ベースのルーティングを用いてネイティブのICNネットワーク内ストレージを通じてデータを取得することができることに留意すべきである。いくつかの実施形態では、ICNプロトコルにおけるプリングモデルを採用することにより、会議データ（例えば、オーディオ、ビデオ、および／またはデータ）を、参加者間で交換することができる。
【００２２】
図2は、NE200の一実施形態の概略図であり、このNE200は、本明細書に記載の方式のいずれかを実装することにより、サービスプロキシ（例えば、SR120に位置する）および／またはサービスクライアント（例えば、UE130に位置する）として機能することができる。NE200が単一のノード内に実装され得るか、またはNE200の機能が複数のノードに実装され得る。NE200は単なる例であり、NEの用語は、広い範囲での装置を包含することが、当業者には理解されよう。NE200は議論を明確にする目的のために含まれるが、特定のNEの実施形態またはNEの実施形態のクラスに、本開示の適用を限定するものではない。本開示で説明する機能／方法の少なくとも一部は、NE200のようなネットワーク機器または構成要素に実装されてもよい。例えば、開示の機能／方法を、ハードウェア、ファームウェア、および／またはハードウェア上で実行するようインストールされたソフトウェアを用いて実装することができる。図2に示すように、NE200は、送信機、受信機、またはこれらの組み合わせであり得る、トランシーバ（Tx／Rx）210を含むことができる。それぞれ、Tx／Rx210を、他のノードからフレームを送信および／または受信するための複数のダウンストリームポート220に連結することができ、Tx／Rx210を、他のノードからフレームを送信および／または受信するための複数のアップストリームポート250に連結することができる。フレームを処理するため、および／またはフレームを送信するノードを決定するために、プロセッサ230をTx／Rx210に連結することができる。プロセッサ230は、データストア、バッファなどとして機能し得る、1つ以上のマルチコアプロセッサおよび／またはメモリ装置232を含むことができる。プロセッサ230は、汎用プロセッサとして実装され得るか、1つ以上の特定用途向け集積回路（ASIC）および／またはデジタル信号プロセッサ（DSP）の一部であってもよい。プロセッサ230は、会議のサービス制御管理モジュール233を含むことができ、このモジュール233は、会議のブートストラップ方法1000、会議の同期方法1100および／または1200、会議のリカバリ方法1300および／または1400、および／または本明細書で議論される任意の他のMP2MP関連の通信機能を実装することができる。代替の実施形態では、会議のサービス制御管理モジュール233は、プロセッサ230によって実行され得るメモリ装置232（例えば、コンピュータプログラム製品）内に格納された命令として実施されてもよい。メモリ装置232は、例えばランダムアクセスメモリ（RAM）である、一時的にコンテンツを格納するためのキャッシュを備えてもよい。また、メモリ装置232は、例えば読み出し専用メモリ（ROM）である、コンテンツを比較的長く格納するための長期保存用ストレージを備えてもよい。例えば、キャッシュおよび長期保存用ストレージは、ダイナミック・ランダム・アクセス・メモリ（DRAM）、ソリッドステートドライブ（SSD）、ハードディスク、またはこれらの組み合わせを含むことができる。
【００２３】
NE200に実行可能な命令をプログラムおよび／またはロードすることによって、本開示により教示された新たな機能性を有する、例えばマルチコア転送構造である、特定のマシンまたは機器にNE200を部分的に変換しながら、少なくとも1つのプロセッサ230および／またはメモリ装置232が変更されることが理解される。実行可能なソフトウェアをコンピュータにロードすることにより実現可能な機能を、周知の設計ルールによるハードウェアの実装に変換することができることは、電気工学とソフトウェア工学の分野の基本である。ハードウェア対ソフトウェアの概念を実現する間の決定は、通常、ソフトウェアのドメインからハードウェアのドメインへの変換に関わる任意の課題ではなく、設計の安定性の検討および生産されるユニットの数によって決まる。一般に、ハードウェア実装を再スピンすることは、ソフトウェア設計を再スピンするよりも高価であるため、頻繁に変更される可能性がある設計は、ソフトウェアに実装されることが好ましいかもしれない。一般に、大量に生産される安定している設計は、大規模な生産を実行するためのハードウェア実装がソフトウェア実装よりも安価であり得るため、例えばASICである、ハードウェアに実装されることが好ましいかもしれない。多くの場合、ソフトウェアの命令を組み込むASICに同等のハードウェアを実装するために、周知の設計ルールによって、設計が、開発され、ソフトウェアの形態でテストされ、後で変換されてもよい。新しいASICにより制御されるマシンが、特定のマシンまたは機器であるのと同様に、実行可能な命令をプログラムおよび／またはロードした同様のコンピュータを、特定のマシンまたは機器とみなすことができる。
【００２４】
図3は、多層ハイブリッド会議のサービスネットワーク（例えば、ネットワーク100）で、SR（例えば、SR120）に配置することができるICN対応のサービスプロキシ300の構造ビューの一実施形態の概略図である。サービスプロキシ300は、アプリケーションレイヤ310、サービス・アプリケーション・プログラミング・インタフェース（API）からアプリケーションへのレイヤ320、サービスレイヤ330、ICNレイヤ340、L2／レイヤ3（L3）350、サービス・ユーザ・ツー・ネットワーク・インタフェース（S-UNI）レイヤ361、およびサービス・ネットワーク・ツー・ネットワーク・インタフェース（S-NNI）レイヤ362を含んでもよい。
【００２５】
アプリケーションレイヤ310は、例えば、チャット、VWB、および／または他のアプリケーションなどの複数のアプリケーションを含むことができるアプリケーションプール311を含むことができる。サービスAPIからアプリケーションへのレイヤ320は、アプリケーションレイヤ310とサービスレイヤ330との間のインタフェースのためのAPIのセットを含むことができる。APIは、明確に定義された関数呼び出しおよび／またはプリミティブであってよく、このプリミティブは、入力パラメータ、出力パラメータ、および／またはリターンパラメータを含む。
【００２６】
サービスレイヤ330は、同期プロキシ336および他のサービスモジュール335を含むことができる。例えば、同期プロキシ336は、複数の他の同期プロキシを用いて会議（例えば、チャット、VWB、等）にサービスを提供することができ、会議の参加者および／またはサービスクライアントのグループ（例えば、UE130に位置する）の制御プロキシとして機能することができる。他のサービスモジュール335は、他のサービスを管理および／または制御することができる。ICNレイヤ340は、ICNプロトコルレイヤのモジュールを含むことができ、このモジュールは、コンテンツストア（CS）（例えば、インタレストおよび／またはデータをキャッシングするための）、転送情報ベース（FIB）（例えば、名前ベースのルーティング探索）、および／またはペンディングインタレストテーブル（PIT）（例えば、転送されたインタレストの記録）を含んでもよい。L2／L3レイヤ350は、ネットワーク・プロトコル・スタック・モジュールを含むことができ、このモジュールは、ネットワーク伝送のためのデータおよび／またはアドレスの符号化および／または復号化を含んでもよい。L2レイヤおよびL3レイヤを、開放型システム間相互接続（OSI）モデルにおけるデータリンクレイヤおよびネットワークレイヤと呼ぶことができる。S-UNIレイヤ361は、ネットワーク内に位置する（例えば、UE130に位置する）1または複数の会議参加者との（例えば、ネットワークとユーザとの間の信号伝達機能を）インタフェースすることができる。S-NNIレイヤ362は、ネットワーク内に位置する1つ以上のSR（例えば、SR120）との（例えば、ネットワーク間の信号伝達機能を）インタフェースすることができる。
【００２７】
同期プロキシ336は、会議参加者のFPを同期させるために他のリモートサービスプロキシと通信することができる。同期プロキシ336は、FPプロセッサ331、心拍信号プロセッサ332、ダイジェストログ333、およびアプリケーションキャッシュ334を含むことができる。FPプロセッサ331は、サービスクライアントおよび／またはリモートサービスプロキシからのFP更新（例えば、参加者のFP）を受信することができる。また、FPプロセッサ331は、サービスクライアントおよび／またはリモートサービスプロキシにFP更新を送信することができる。FPプロセッサ331は、以下でより十分に説明するように、サービスクライアントおよび／またはリモートサービスプロキシから受信したFP更新を追跡および維持することができる。FP更新を、ICNレイヤ340、L2／L3レイヤ350、および／またはS-NNIレイヤ360を介して、通知メッセージおよび／または同期メッセージの形式で送信および／または受信することができる。通知メッセージおよび／または同期メッセージは、ICNプロトコル（例えば、FIBに従って転送されたおよび／またはCSにキャッシュされた）に従って処理することができるICNインタレストパケットおよび／またはICNデータパケットを含んでもよいことに留意すべきである。
【００２８】
心拍信号プロセッサ332は、サービスプロキシ300に接続されているリモートサービスプロキシおよび／またはサービスクライアントの動作（例えば、機能および接続状態）を監視および交換することができる。例えば、心拍信号プロセッサ332が、心拍表示信号を生成して、リモートサービスプロキシおよび／または接続されたサービスクライアントに（例えば、定期的におよび／またはイベント駆動で）送信することができる。また、心拍信号プロセッサ332は、リモートサービスプロキシおよび接続されたサービスクライアントからの心拍表示信号を聞くことができる。いくつかの実施形態では、心拍信号プロセッサ332は、心拍表示信号の受信を確認するために、心拍応答信号を送信することができる。心拍信号プロセッサ332が、所定のタイムアウト間隔を超えた期間にわたり、リモートサービスプロキシおよび／または接続されたサービスクライアントから、欠落している心拍表示信号および／または心拍応答信号を検出すると、心拍信号プロセッサ332は、ネットワークに障害がある不良サービスクライアントおよび／または不良リモートサービスプロキシを取り扱うアプリケーションに通知するために、アプリケーションレイヤ310にネットワーク障害信号を送信することができる。心拍信号を、ICNレイヤ340、L2／L3レイヤ350、およびS-NNIレイヤ360を介して、心拍メッセージの形式で送信および／または受信することができる。心拍メッセージは、ICNプロトコル（例えば、FIBに従って転送されたおよび／またはCSにキャッシュされた）に従って処理することができるICNインタレストパケットおよび／またはICNデータパケットを含んでもよいことに留意すべきである。
【００２９】
ダイジェストログ333は、新しいFP更新を記録するキャッシュまたは任意の一時データのストレージであってもよい。ダイジェストログ333は、特定の時間に接続されているすべての参加者（例えば、FPを含む）およびすべてのリモートプロキシ（例えば、一部のダイジェスト情報）を含む会議サービスのローカルビューのスナップショットを格納することができ、ここで、以下により十分に説明するように、ローカルビューを、ダイジェストツリーの形式で表現することができる。また、ダイジェストログ333は、ダイジェストツリーに対応するFP更新の履歴を格納することができ、ここで、以下により十分に説明するように、各エントリを、<global root digest>:<global digest tree>:<local digest tree>の形式とすることができる。アプリケーションキャッシュ334は、伝送されているFPを格納する一時データのストレージであってもよい（例えば、伝送状態が確認されない場合がある）。FPプロセッサ331は、FP更新を格納および追跡するためのダイジェストログ333および／またはアプリケーションキャッシュ334を管理することができる。一実施形態では、FPプロセッサ331および心拍信号プロセッサ332は、1つ以上の会議（例えば、チャットおよびVWB）にサービスを提供することができる。このような実施形態では、FPプロセッサ331は、異なる会議のために、異なるダイジェストログ333および／または異なるアプリケーションキャッシュ334を採用することができる。
【００３０】
図4は、多層ハイブリッド会議のサービスネットワーク（例えば、ネットワーク100）に配置することができるICN対応のUE400（例えば、UE130）の構造ビューの一実施形態の概略図である。UE400は、サービスプロキシ300と実質的に同様の構造を含むことができる。例えば、UE400は、アプリケーションレイヤ410、アプリケーションプール411、サービスAPIからアプリケーションへのレイヤ420、サービスレイヤ430、他のサービスモジュール435、ICNレイヤ440、およびL2／L3レイヤ450を含むことができ、これらは、アプリケーションレイヤ310、アプリケーションプール311、アプリケーションへのサービスAPIのレイヤ320、サービスレイヤ330、他のサービスモジュール335、ICNレイヤ340、およびL2／L3レイヤ350と実質的に同様であってもよい。ただし、サービスレイヤ430は、サービスプロキシ300にあるような同期プロキシ336の代わりに、同期クライアント436を含むことができる。さらに、サービスクライアント400は、サービスプロキシ300にあるようなS-UNIレイヤ361およびS-NNIレイヤ362の代わりに、S-UNI制御レイヤ461およびS-UNIデータレイヤ462を含むことができる。S-UNIデータレイヤ462は、ネットワーク内の1または複数の会議参加者（例えば、UE130に位置する）と会議データ（例えば、ビデオ、オーディオ、リッチテキスト）を交換することができる。S-UNI制御レイヤ461は、ネットワークで制御信号伝達を交換するためにサービスプロキシとインタフェースすることができる。
【００３１】
同期クライアント436は、会議に参加するように構成されたサービスクライアントであってもよい。同期クライアント436は、会議にサービスを提供するサービスプロキシ（例えば、サービスプロキシ400）、または、より具体的にはネットワーク内の同期プロキシ（例えば、同期プロキシ336）と通信することができる。同期クライアント436は、ICNレイヤ440、L2／L3レイヤ450、およびS-UNI制御レイヤ461を介してサービスプロキシと通信することができる。同期クライアント436は、FPプロセッサ431、心拍信号プロセッサ432、ダイジェストログ433、およびアプリケーションキャッシュ434を含むことができる。
【００３２】
FPプロセッサ431は、FPプロセッサ331と実質的に同様であってもよい。ただし、FPプロセッサ431は、サービスプロキシにFP更新（例えば、会議に参加、会議を退出、会議に再参加）を送信することができ、サービスプロキシから他の参加者のFP更新を受信することができる。
【００３３】
心拍信号プロセッサ432は、心拍プロセッサ332と実質的に同様であってもよい。ただし、心拍信号プロセッサ432は、サービスプロキシを用いて動作（例えば、機能状態）表示を監視および交換することができ、サービスプロキシでネットワーク障害を検出し、アプリケーションレイヤ410に通知するための実質的に同様の機構を採用することができる。
【００３４】
ダイジェストログ433は、ダイジェストログ333と実質的に同様であってもよいが、以下でより十分に説明するように、関連するサービスプロキシから受信した最も新しいグローバルルートダイジェストを有するダイジェストツリー、およびグローバルルートダイジェストに対応するFP更新（例えば、<global root digest>:<user FP>）の履歴を格納することができる。アプリケーションキャッシュ434は、アプリケーションキャッシュ334に実質的に同様であってもよい。一実施形態では、FPプロセッサ431および心拍信号プロセッサ432は、1つ以上の会議（例えば、チャットおよびVWB）にサービスを提供することができる。このような実施形態では、FPプロセッサ431は、異なる会議のために、異なるダイジェストログ433および／または異なるアプリケーションキャッシュ434を採用することができる。
【００３５】
図5は、例えばネットワーク100に実装されるような、多層ハイブリッド会議のサービスネットワーク500の階層ビューの一実施形態の概略図である。ネットワーク500は、第1レベルに複数のサービスプロキシ521、522、および523（例えば、サービスプロキシ300および／またはSR120）、ならびに第2レベルに複数のサービスクライアント531、532、および533（例えば、サービスクライアント400および／またはUE130）を含むことができる。各サービスクライアント531、532、および／または533は、サービスプロキシ521、522、または523のうちの1つに関連していてもよい。例えば、サービスクライアント531、532、および533はそれぞれ、サービスプロキシ521、522、および523と通信するように構成されてもよい。サービスプロキシ521、522、および523は、相互接続されていてもよく、互いにおよび対応するサービスクライアント531、532、および533それぞれと、会議の更新を交換するように構成されてもよい。例えば、サービスプロキシ521（例えば、ローカルサービスプロキシ）は、クライアント531から会議の更新を受信することができ、リモートサービスプロキシ522および523を更新することができ、これにより、関連するクライアント532および533それぞれをさらに更新することができる。また、本開示において、サービスプロキシ521、522、および523、ならびに／またはサービスクライアント531、532、および533を、会議の構成要素と呼ぶことができることに留意すべきである。
【００３６】
図6は、会議の定常状態時のサービスプロキシ（例えば、サービスプロキシ300、521から523、および／またはSR120）でのダイジェストツリー600の一実施形態の概略図である。例えば、ダイジェストツリー600は、サービスプロキシP1でダイジェストツリーに対応することができる。ダイジェストツリー600を、同期プロキシ（例えば、同期プロキシ336）でFPプロセッサ（例えば、FPプロセッサ331）によって生成することができる。ダイジェストツリー600は、プロキシダイジェストログ（例えば、ダイジェストログ333）に格納されることができ、サービスプロキシP1で会議の（例えば、特定の時刻における）ローカライズされたビューのスナップショットを表すことができる。ダイジェストツリー600は、グローバルルートダイジェストG1と呼ぶことができるノード610（例えば、
【００３７】
【数１】
2016527589.tif 000003
【００３８】
として示されている）を含むことができ、グローバルルートダイジェストG1でのグローバル状態dg1(t)を示すことができ、ここで、下付き文字1は、サービスプロキシP1の識別子（ID）を表すことができる。ノード610は、複数のノード620（例えば、
【００３９】
【数２】
2016527589.tif 000004
【００４０】
として示されている）に分岐することができ、このノード620を、プロキシローカルダイジェストルートと呼ぶことができる。各ノード620は、会議にサービスを提供するサービスプロキシに対応することができ、この対応するサービスプロキシでのローカル状態dpn(t)を示すことができる。サービスプロキシP1（例えば、
【００４１】
【数３】
2016527589.tif 000005
【００４２】
）に対応するノード620は、複数のリーフノード630（例えば、
【００４３】
【数４】
2016527589.tif 000006
【００４４】
として示されている）にさらに分岐することができ、ここで、サービスプロキシP1に対応するノード620に該当するツリーの分岐を、ローカルダイジェストツリーと呼ぶことができる。各リーフノード630は、サービスプロキシP1に接続されているサービスクライアントUm（例えば、サービスクライアント400、531から533、および／またはUE130）に対応することができ、このサービスクライアントUmから受信したFP更新fpm(t)（例えば、公開されたコンテンツや関連する更新シーケンス番号）を示すことができ、ここで、下付き文字mはサービスクライアントIDを表すことができる。サービスプロキシP1は、接続されたサービスクライアントのFPおよびリモートサービスプロキシのローカル状態を維持することができることに留意すべきである。
【００４５】
サービスプロキシP1は、会議のリモートサービスプロキシおよび／または接続されたサービスクライアントから受信した更新を追跡することによって、各ノード610、620、および630で状態を追跡および更新することができる。サービスプロキシP1がサービスクライアントmからFP更新（例えば、
【００４６】
【数５】
2016527589.tif 000007
【００４７】
）を受信すると、サービスプロキシP1は、サービスプロキシP1に対応する、ノード610でのグローバル状態dg1(t)やノード620でのローカル状態dp1(t)と同様に、受信したFP更新に応じてサービスクライアントmに対応するノード630を更新することができる。サービスプロキシP1がリモートサービスプロキシPnからFP更新（例えば、グローバル状態dgn(t)および／またはローカル状態dpn(t)を含む）を受信すると、サービスプロキシP1は、リモートサービスプロキシPnに対応する、ノード610でのグローバル状態dg1(t)やノード620でのローカル状態dpn(t)を更新することができる。ノード610、620、および630は、異なる時刻に更新されてもよいことに留意すべきである。また、サービスプロキシP1は、ダイジェストログ内のダイジェストログの履歴に、受信したFP更新のそれぞれを格納することができ、一定時間後に、および／またはダイジェストログ履歴のサイズに基づいて、古いエントリを削除することができる。
【００４８】
以下に示すように、ある時刻のサービスプロキシP1でのグローバル状態dg1(t)とローカル状態dp1(t)を計算することができる：
【００４９】
【数６】
2016527589.tif 000008
ここで、
【００５０】
【数７】
2016527589.tif 000009
【００５１】
は、時間tに接続されているサービスクライアントにより送信されたFP更新の合計数を表すことができ、
【００５２】
【数８】
2016527589.tif 000010
【００５３】
は、会議にサービスを提供するリモートサービスプロキシにより送信されたFP更新の合計数を表すことができる。
【００５４】
一実施形態では、サービスプロキシP1に接続するサービスクライアントは、サービスプロキシP1から受信した更新を追跡するために、ダイジェストログ（例えば、ダイジェストログ433）を維持することができる。例えば、サービスクライアントは、受信したFP更新（例えば、
【００５５】
【数９】
2016527589.tif 000011
【００５６】
を記録するためにダイジェストログのダイジェストログ履歴にエントリを生成することができ、受信したグローバルルートダイジェストを用いてダイジェストツリーを更新することができる。このように、サーバ中心構造および／またはサーバレス構造と比較すると、開示された多層ハイブリッド会議サービス制御構造は、サービスクライアントからの会議制御のメンテナンスおよび追跡をオフロードすることができる。サービスクライアントは、一定時間後に、および／またはダイジェストログ履歴のサイズに基づいて、ダイジェストログ履歴内の古いエントリを削除することができることに留意すべきである。
【００５７】
各ダイジェストツリーは、特定の時間での会議のローカライズされたビューのスナップショットを表すことができる。各ダイジェストツリーは、特定の時刻に異なるツリー構造を含んでもよい。図7から図9は、会議中のサービスプロキシとサービスクライアントでのダイジェストログの一実施形態を示すことができる。図7は、会議700の構成の一実施形態の概略図である。会議700は、会議700を管理する2つのサービスプロキシP1およびP2（例えば、サービスプロキシ300および／またはSR120）と、3つの会議参加者U1、U2、およびU3（例えば、サービスクライアント400および／またはUE130）を含むことができる。例えば、参加者U1は、時刻t1にサービスプロキシP1経由で会議700に参加することができ、参加者U3は、時刻t2にサービスプロキシP2経由で会議700に参加することができ、参加者U2は、時刻t3にサービスプロキシP1経由で会議700に参加することができる。
【００５８】
図8は、会議700の間のサービスプロキシ（例えば、サービスプロキシ300および／またはSR120）でのダイジェストツリーログ800の一実施形態の概略図である。例えば、ダイジェストツリーログ800は、サービスプロキシP1でのダイジェストツリーログを表すことができる。ダイジェストツリーログ800は、会議700の間の4つの異なる時刻でのダイジェストツリー810、820、830、および840を示すことができる。ダイジェストツリー810は、サービスプロキシP1での会議の開始時刻t0における会議ビューを示すことができる。ダイジェストツリー820は、参加者U1がサービスプロキシP1経由で会議に参加する時刻t1における会議ビューを示すことができる。ダイジェストツリー830は、参加者U3がサービスプロキシP2経由で会議に参加する時刻t2における会議ビューを示すことができる。ダイジェストツリー840は、参加者U2がサービスプロキシP1経由で会議に参加する時刻t3における会議ビューを示すことができる。各ダイジェストツリー810、820、830、および840は、本明細書で上述したダイジェストツリー600と実質的に同様の構造を含むことができる。ダイジェストツリーログ800に示すように、参加者がサービスプロキシ経由で会議に参加する場合、
【００５９】
【数１０】
2016527589.tif 000012
【００６０】
での対応するローカル状態dpnも
【００６１】
【数１１】
2016527589.tif 000013
【００６２】
でのグローバル状態dg1も、1ずつインクリメントすることができる。サービスプロキシP1のローカル状態dp1およびdg1を、サービスプロキシP1によって計算することができ、リモートサービスプロキシのローカル状態dpnを、リモートサービスプロキシによって計算し、サービスプロキシP1によって受信することができることに留意すべきである。
【００６３】
図9は、会議700の間のサービスクライアント（例えば、サービスクライアント400および／またはUE130）でのダイジェスト履歴ログ900の一実施形態の表である。例えば、ダイジェスト履歴ログ900を、サービスプロキシP1に接続されているサービスクライアントU1によって記録することができる。ダイジェスト履歴ログ900は、グローバルルートダイジェストおよびサービスクライアントのFPを表すことができ、ダイジェストツリーログ800に記載されているのと実質的に同様の表記を採用することができる。ダイジェスト履歴ログ900を、サービスプロキシP1からFPを受信した後に生成され得るエントリ910、920、930、および940として示すことができる。例えば、エントリ910は、会議700の始まりに対応することができる。サービスクライアントU1がサービスクライアントU1の参加を示すサービスプロキシP1からのFP更新を受信すると、エントリ920を生成することができる。サービスクライアントU1が（例えば、サービスプロキシP2経由で）サービスクライアントU3の参加を示すサービスプロキシP1からのFP更新を受信すると、エントリ930を生成することができる。サービスクライアントU1が（例えば、サービスプロキシP1経由で）サービスクライアントU2の参加を示すサービスプロキシP1からのFP更新を受信すると、エントリ940を生成することができる。
【００６４】
図10は、多層ハイブリッド会議のサービスネットワーク（例えば、ネットワーク100）での会議のブートストラップ方法1000の一実施形態のプロトコル図である。方法1000を、サービスプロキシP1、P2、およびP3（例えば、サービスプロキシ300および／またはSR120）と参加者U1（例えば、サービスクライアント400および／またはUE130）との間で実施することができる。方法1000は、本明細書で上述したのと実質的に同様の表記を採用することにより、グローバルルートダイジェストおよびプロキシローカルダイジェストルートを表すことができる。ただし、方法1000は、明確にするためにUm-FPkの表記を採用することによりサービスクライアントのFPを表すことができ、ここで、Umはサービスクライアントmを表し、FPkはサービスクライアントによって公開されるFPを表すことができる。方法1000は、会議に参加する第1の参加者U1により始まることができる。例えば、ステップ1010で、参加者U1は、会議セッションを要求するためにサービスプロキシP1に接続要求メッセージを送信することができる。ステップ1020で、サービスプロキシP1は、会議のセットアップを完了するために参加者U1に接続返信メッセージを送信することによって応答することができる。
【００６５】
ステップ1030で、参加者U1は、サービスプロキシP1に参加更新メッセージを（例えば、プッシュにより）送信することができ、ここで、参加更新メッセージは、参加者U1の署名プロファイル（例えば、U1-FP0）を含むことができる。ステップ1031で、参加更新メッセージを受信した後に、サービスプロキシP1は、受信した参加更新メッセージに従って、ダイジェストツリーおよびサービスプロキシP1でのプロキシダイジェストログ（例えば、ダイジェストログ333）のFP履歴を更新することができる。例えば、FP履歴は、次のエントリを含むことができる：
【００６６】
【数１２】
2016527589.tif 000014
【００６７】
ここで、サービスプロキシP1でのグローバル状態dg1とローカル状態dp1を、それぞれが1ずつインクリメントすることができる。
【００６８】
ステップ1040で、サービスプロキシP1は、参加者U1に第1のダイジェスト更新メッセージ（例えば、
【００６９】
【数１３】
2016527589.tif 000015
【００７０】
）を送信することができる。参加更新メッセージに応答して、サービスプロキシP1は、ステップ1050で、（例えば、更新された状態
【００７１】
【数１４】
2016527589.tif 000016
【００７２】
を有する）第1の参加更新メッセージをサービスプロキシP2に、および、ステップ1060で、（例えば、更新された状態
【００７３】
【数１５】
2016527589.tif 000017
【００７４】
を有する）第2の参加更新メッセージをサービスプロキシP3に、（例えば、プッシュによって）送信することができる。このとき、サービスプロキシP1、P2、およびP3を、参加者U1の参加更新と同期させることができる。
【００７５】
図11は、会議の同期方法1100の一実施形態のプロトコル図である。方法1100を、通知プロセスの間に、サービスプロキシP1およびP2（例えば、サービスプロキシ400および／またはSR120）と参加者U1およびU3（例えば、サービスクライアント400および／またはUE130）との間で実施することができ、ここで、参加者U1をサービスプロキシP1に接続することができ、参加者U3をサービスプロキシP2に接続することができる。通知プロセスは、参加、ログオフ、再参加、および／または他の会議制御通知を含むことができる。方法1100は、本明細書で上述した方法1000と実質的に同様の表記を採用することにより、グローバルルートダイジェスト、プロキシローカルダイジェストルート、およびサービスクライアントのFPを表すことができる。会議が定常状態にあるときに方法1100を開始することができる。例えば、サービスプロキシP1およびサービスプロキシP2は、同じグローバル状態n（例えば、G1,n，G2,n）を含むことができ、サービスプロキシP1は、ローカル状態m（例えば、P1,m）を含むことができ、サービスプロキシP2は、ローカル状態k（例えば、P2,k）を含むことができる。方法1100は、例えば、参加者U3からの新しい通知メッセージ（例えば、参加、退出、再参加、および／または他の制御更新メッセージ）の追加の際に状態を同期させるために適切であり得る。
【００７６】
ステップ1110で、参加者U3は、サービスプロキシP2に通知メッセージを（例えば、プッシュにより）送信することができ、ここで、通知メッセージは、参加者U3の署名プロファイル（例えば、U3-FPj）を含むことができる。ステップ1111で、通知メッセージに応答して、サービスプロキシP2は、通知メッセージに従って、ダイジェストツリーおよびサービスプロキシP2でのプロキシダイジェストログ（例えば、ダイジェストログ333）のFP履歴を更新することができる。例えば、FP履歴は、次のエントリを含むことができる：
【００７７】
【数１６】
2016527589.tif 000018
【００７８】
ここで、サービスプロキシP2でのグローバル状態dg2とローカル状態dp2を、それぞれ1ずつインクリメントすることができる。
【００７９】
ステップ1120で、サービスプロキシP2でのプロキシダイジェストログを更新した後、サービスプロキシP2は、参加者U3に第1のダイジェスト更新メッセージ（例えば、
【００８０】
【数１７】
2016527589.tif 000019
【００８１】
）を（例えば、プッシュにより）送信することができる。ステップ1130で、受信した通知メッセージに応答して、サービスプロキシP2は、（例えば、更新された状態
【００８２】
【数１８】
2016527589.tif 000020
【００８３】
を有する）通知メッセージをサービスプロキシP1に（例えば、プッシュによって）送信することができる。
【００８４】
ステップ1131で、通知メッセージに応答して、サービスプロキシP1は、受信した通知メッセージに従って、ダイジェストツリーおよびサービスプロキシP1でのプロキシダイジェストログ（例えば、ダイジェストログ333）のFP履歴を更新することができる。例えば、以下に示すように、FP履歴は、次のエントリを含むことができる：
【００８５】
【数１９】
2016527589.tif 000021
【００８６】
ここで、サービスプロキシP1でのグローバル状態dg1を1ずつインクリメントすることができ、サービスプロキシP2のローカル状態dp2を、受信したFP更新に従って更新することができる。ステップ1140で、サービスプロキシP1でのプロキシダイジェストログを更新した後、サービスプロキシP1は、参加者U1に第2のダイジェスト更新メッセージ（例えば、
【００８７】
【数２０】
2016527589.tif 000022
【００８８】
）を（例えば、プッシュにより）送信することができる。サービスプロキシP1およびP2でのグローバル状態を、この時点で同期することができることに留意すべきである。
【００８９】
図12は、会議の同期方法1200の別の実施形態のプロトコル図である。方法1200を、通知プロセスの間に、サービスプロキシP1およびP2（例えば、サービスプロキシ300および／またはSR120）と参加者U1およびU3（例えば、サービスクライアント400および／またはUE130）との間で実施することができ、ここで、参加者U1をサービスプロキシP1に接続することができ、参加者U3をサービスプロキシP2に接続することができる。通知プロセスは、参加、ログオフ、再参加、および／または他の会議制御通知を含むことができる。方法1200は、本明細書で上述した方法1100と実質的に同様の表記を採用することにより、グローバルルートダイジェスト、プロキシローカルダイジェストルート、およびサービスクライアントのFPを表すことができる。方法1200は、参加者とサービスプロキシとの間で同じプッシュ機構を採用することができるが、サービスプロキシ間ではプル機構を採用することができる。会議が定常状態にあるときに方法1200を開始することができる。例えば、サービスプロキシP1およびサービスプロキシP2は、同じグローバル状態n（例えば、G1,n，G2,n）を含むことができ、サービスプロキシP1は、ローカル状態m（例えば、P1,m）を含むことができ、サービスプロキシP2は、ローカル状態k（例えば、P2,k）を含むことができる。方法1200は、例えば、参加者U3からの新しい通知メッセージ（例えば、参加、退出、再参加、および／または他の制御更新メッセージ）の追加の際に状態を同期させるために適切であり得る。
【００９０】
ステップ1210で、サービスプロキシP1は、サービスプロキシP2に同期インタレストメッセージ（例えば、プルプロセスを開始するためのインタレストパケット）を送信することができる。同期インタレストメッセージは、サービスプロキシP1でのカレントグローバル状態（例えば、G1,n）を示すことができる。同期インタレストメッセージは、次の会議の更新のための重要なインタレストとして機能することができる。
【００９１】
ステップ1220で、参加者U3は、サービスプロキシP2に通知メッセージを（例えば、プッシュにより）送信することができ、ここで、通知メッセージは、参加者U3の署名プロファイル（例えば、U3-FPj）を含むことができる。ステップ1221で、通知メッセージに応答して、サービスプロキシP2は、通知メッセージに従って、ダイジェストツリーおよびサービスプロキシP2でのプロキシダイジェストログ（例えば、ダイジェストログ433）のFP履歴を更新することができる。例えば、FP履歴は、次のエントリを含むことができる：
【００９２】
【数２１】
2016527589.tif 000023
【００９３】
ここで、サービスプロキシP2でのグローバル状態dg2とローカル状態dp2を、それぞれ1ずつインクリメントすることができる。
【００９４】
ステップ1230で、サービスプロキシP2でのプロキシダイジェストログを更新した後、サービスプロキシP2は、参加者U3に第1のダイジェスト更新メッセージ（例えば、
【００９５】
【数２２】
2016527589.tif 000024
【００９６】
）を（例えば、プッシュにより）送信することができる。ステップ1240で、サービスプロキシP2は、サービスプロキシP1が古くなったnのグローバル状態を有する同期インタレストメッセージを含むことを検出することができるため、サービスプロキシP1に同期応答メッセージを（例えば、
【００９７】
【数２３】
2016527589.tif 000025
【００９８】
）を送信することにより、同期インタレストメッセージに応答することができる。
【００９９】
ステップ1241で、通知メッセージに応答して、サービスプロキシP1は、受信した通知メッセージに従って、ダイジェストツリーおよびサービスプロキシP1でのプロキシダイジェストログ（例えば、ダイジェストログ333）のFP履歴を更新することができる。例えば、以下に示すように、FP履歴は、次のエントリを含むことができる：
【０１００】
【数２４】
2016527589.tif 000026
【０１０１】
ここで、サービスプロキシP1でのグローバル状態dg1を、1ずつインクリメントすることができる。ステップ1250で、サービスプロキシP1でのプロキシダイジェストログを更新した後、サービスプロキシP1は、参加者U1に第2のダイジェスト更新メッセージ（例えば、
【０１０２】
【数２５】
2016527589.tif 000027
【０１０３】
）を（例えば、プッシュにより）送信することができる。サービスプロキシP1およびP2でのグローバル状態を、この時点で同期することができることに留意すべきである。また、各サービスプロキシP1および／またはP2は、同期応答メッセージ（例えば、リモートサービスプロキシからのFP更新）を受信した後に、次の会議の更新をプルするために別の保留中の同期インタレストメッセージを送信することができる。いくつかの実施形態では、同期インタレストメッセージは、アクセスリンク（例えば、リンク141）ごとの単一のメッセージに集約されてもよい。
【０１０４】
図13は、会議のリカバリ方法1300の一実施形態のフロー図である。方法1300を、サービスプロキシ（例えば、サービスプロキシ300および／またはSR120）および／またはサービスクライアント（例えば、サービスクライアント400および／またはUE130）で実施することができる。方法1300は、プッシュ機構（例えば、方法1100）が会議制御の同期のために採用されるときに、一時的なネットワークの中断から会議の更新をリカバリするのに適切であり得る。サービスプロキシおよび／またはサービスクライアントが、例えば、ネットワーク障害、リンク渋滞、および／またはその他のネットワーク不良の状態に因る、一時的なネットワークの中断（例えば、数分未満）からリカバリすると、方法1300は開始することができる。ステップ1310で、方法1300は、接続構成要素からの通知メッセージを待つことができる。例えば、サービスクライアント用の接続構成要素をサービスプロキシとすることができ、サービスプロキシ用の接続構成要素をサービスクライアントおよび／またはサービスプロキシとすることができる。
【０１０５】
通知メッセージを受信すると、方法1300はステップ1320に進むことができる。ステップ1320で、方法1300は、接続構成要素からの欠落している更新（例えば、一時的な中断中に発生した）があるかどうかを判断することができる。例えば、方法1300は、通知メッセージに示された接続構成要素の最後の状態を、ダイジェストログ（例えば、ダイジェストログ333および／または433）の最新の記録状態に比較することができる。欠落している更新がない場合（例えば、受信した最後の状態と最新の記録状態が同一である）、次に、方法1300はステップ1330に進むことができる。ステップ1330で、方法1300は、ダイジェストログを更新して、ステップ1310に戻ることができる。
【０１０６】
1つ以上の欠落している更新がある場合（例えば、受信した最後の状態と記録された最新の状態が異なる）、次に、方法1300はステップ1340に進むことができる。ステップ1340で、方法1300は、例えば、最新の記録状態および受信したカレント状態（例えば、欠落している更新のギャップ）を示すリカバリ要求メッセージを接続構成要素に送信することができる。ステップ1350で、方法1300は、リカバリデータメッセージを待つことができる。リカバリデータメッセージを受信すると、方法1300は、ダイジェストログを更新するためにステップ1330に進むことができる。方法1300を、会議の期間中に繰り返すことができる。
【０１０７】
図14は、サービスプロキシ（例えば、サービスプロキシ400および／またはSR120）で実施することができる会議のリカバリ方法1400の別の実施形態のフロー図である。方法1400は、サービスプロキシがリモートサービスプロキシを用いて会議更新を同期するためにプル機構（例えば、方法1200）を採用するときに、一時的なネットワークの中断から会議の更新をリカバリするのに適切であり得る。サービスプロキシが、例えば、リンク障害、リンク渋滞、および／またはネットワークでの他の不良状態に因る、一時的なネットワークの中断（例えば、数分未満）からリカバリすると、方法1400は開始することができる。リカバリ後に、サービスプロキシは、一時的なネットワークの中断中に発生した1つ以上の会議更新（例えば、より高度なグローバル状態）を見逃しているかもしれない。ステップ1410で、方法1400は、所定の待機期間（例えば、ランダム化された期間）でタイマを開始することができる。ステップ1420で、方法1400は、タイマが満了した（例えば、待機期間の終わりに達した）かどうかを判断することができる。
【０１０８】
タイマが満了していない場合、方法1400は、ステップ1440でダイジェスト更新メッセージが受信されたかどうかを確認することができる。方法1400がダイジェスト更新メッセージを受信していない場合、方法1400は、ステップ1420に戻り、タイマの満了を待ち続けることができる。方法1400がダイジェスト更新メッセージを受信している場合、方法1400は、ステップ1450に進むことができる。ステップ1450で、方法1400は、受信したダイジェスト更新メッセージに従ってダイジェストログ（例えば、ダイジェストログ333）を更新することができる。例えば、ダイジェスト更新メッセージは、一時的なネットワークの中断中に発生した会議更新を含むことができる。
【０１０９】
ステップ1420でタイマが満了した場合、方法1400は、ステップ1430に進むことができる。ステップ1430で、方法1400は、会議更新のリカバリを要求するために、リカバリ同期メッセージを送信することができる。ステップ1431で、方法1400は、リカバリ更新メッセージを待つことができる。方法1400がリカバリ更新メッセージを受信した場合、方法1400は、ダイジェストログを更新するためにステップ1450に進むことができる。一実施形態では、リカバリ更新メッセージは、一時的なネットワークの中断中に発生した会議更新の一部またはすべてを含むことができる。方法1400の最後に、会議は定常状態（例えば、すべてのサービスのプロキシが同じグローバル状態を含む）に戻ることができることに留意すべきである。さらに、別のネットワークの中断がリカバリプロセス中に発生した場合に、方法1400は繰り返されることができ、（例えば、指数バックオフにより）タイマに異なる待機期間を採用することができる。
【０１１０】
いくつかの実施形態では、ローカルサービスプロキシは、第2のリモートサービスプロキシとのネットワーク接続を維持しながら、（例えば、ローカルサービスプロキシと第1のリモートサービスプロキシとの間の長期的なネットワーク接続障害に因り）第1のリモートサービスプロキシからの欠落している心拍メッセージを検出することができることに留意すべきである。このような実施形態では、ネットワークパーティションが発生する可能性がある。ただし、ローカルサービスプロキシは、第2のリモートサービスプロキシから第1のリモートサービスプロキシで会議更新をリカバリすることを要求するために、方法1300および／または1400を採用することができる。
【０１１１】
一実施形態では、例えば、方法1100および／または1200により、対応する構成要素からの通知メッセージを受信した後に、サービスクライアント（例えば、サービスクライアント400および／またはUE130）および／またはサービスプロキシ（例えば、サービスプロキシ300および／またはSR120）が、会議更新（例えば、FP更新および／または状態）を同期させることができる。通知のいくつかの例には、参加通知、ログオフ通知、再参加通知、および／または任意の他のタイプの通知が含まれ得る。参加通知プロセスは、最初に会議に参加するサービスクライアントによって開始されてもよく、ログインサーバでのログイン権限、ネットワークへのログインメッセージの発行、および／または、ログイン通知の送信などのステップを含んでもよい。サービスクライアントがサービスプロキシに参加メッセージ（例えば、サービスクライアントのFPを含む）を送信すると、サービスプロキシは、サービスクライアントのFPをキャッシュして、サービスプロキシのローカルダイジェストツリー（例えば、ダイジェストツリー600）を更新し、サービスプロキシのルートダイジェストを再計算し、他のリモートサービスプロキシへの参加通知をプッシュすることができる。
【０１１２】
ログオフ通知プロセスは、会議を意図的に退出するサービスクライアントによって開始されてもよく、ログインサーバでのログオフ権限、ネットワークへのログオフメッセージの発行、および／または、ログオフ通知の送信などのステップを含んでもよい。サービスクライアントがサービスプロキシにログオフメッセージを送信すると、サービスプロキシは、サービスプロキシのダイジェストツリー内の対応するリーフノードを削除し、サービスプロキシのルートダイジェストを再計算し、他のリモートサービスプロキシにログオフ通知をプッシュすることができる。会議セッションをログプロセス後にクローズすることができ、例えば、サービスクライアントは、サービスプロキシにクローズ要求メッセージを送信してもよいし、サービスプロキシは、クローズ返信メッセージで応答してもよい。
【０１１３】
再参加通知プロセスを、意図的に会議を退出（例えば、ログオフ通知）した後に、続いて会議に再参加するサービスクライアントよって開始することができる。サービスプロキシがサービスクライアントからのログオフ通知を受信した後、サービスプロキシは、所定期間（例えば、再参加のタイムアウト間隔）に退出するサービスクライアントの一部の情報（例えば、FP更新および／または状態）を保存することができる。サービスクライアントが再参加のタイムアウト間隔内に会議に再参加すると、サービスプロキシは、ログオフプロセスの直前にサービスクライアントの最後の状態を再開することができる。ただし、サービスクライアントが再参加のタイムアウト間隔後に会議に参加すると、参加プロセスは、最初の参加プロセスと実質的に同様であり得る。
【０１１４】
ネットワーク（例えば、ネットワーク100）が一時的な中断および／または切断を経験した後、リカバリプロセスが発生することができる。例えば、会議構成要素（例えば、同期プロキシ336および／または同期クライアント436）は、中断中に心拍信号を送信し続けることができるが、接続構成要素からの心拍信号を受信できない場合がある。中断の期間が所定のタイムアウト間隔（例えば、切断タイムアウト間隔）内にある場合、各会議構成要素は、ダイジェストログの状態（例えば、ダイジェストログ333および／または433）を維持することができ、中断からリカバリした後に最後の状態（例えば、中断の前）で継続することができる。リカバリ後、各構成要素は、接続構成要素から（例えば、中断中に発生した）欠落している更新を検出することができ、（例えば、方法1300および／または1400によって）接続構成要素からダイジェストログ履歴を要求することができる。
【０１１５】
ただし、ネットワークが長期的なネットワーク障害（例えば、切断タイムアウト間隔より長い）を経験すると、切断プロセスがサービスプロキシおよび／またはサービスクライアントで実行され得る。例えば、ネットワークの中断がサービスプロキシとサービスクライアントとの間で発生した場合、サービスプロキシは、障害を検出することができ、ログオフ通知プロセスと実質的に同様の機構を採用することにより、サービスクライアントを切断することができる。ネットワークの中断がサービスプロキシで発生すると、他のリモートサービスプロキシは、ネットワーク障害を検出することができ、各サービスプロキシは、例えば、不良サービスプロキシに対応するノードを削除して、グローバル状態を再計算することによって、サービスプロキシのダイジェストログを更新することができる。
【０１１６】
多層ハイブリッド会議のサービスネットワーク（例えば、ネットワーク100）の一実施形態では、制御プレーン（例えば、制御パス191および192）におけるサービスプロキシ間および／またはサービスクライアント間で交換された会議制御および／または信号伝達が、セッションセットアップおよび／またはクローズメッセージ、サービス関連の同期メッセージ、心拍メッセージ、および／またはリカバリメッセージを含んでもよい。例えば、セッションセットアップおよび／またはクローズメッセージ、サービス関連のメッセージ、および／またはリカバリメッセージは、同期プロキシ（例えば、同期プロキシ336）および／または同期クライアント（例えば、同期クライアント436）におけるFPプロセッサ（例えば、FPプロセッサ331および／または431）によって開始され、および／または生成されてもよい。メッセージは、ICNプロトコルに従って構築されたインタレストパケットおよび／またはデータパケットの形式であってもよい。例えば、インタレストパケットは、通知メッセージを送信するために採用されてもよく、プッシュ機構を採用してもよい。一部のインタレストパケットは、その後にデータパケット（例えば、応答メッセージ）が続いてもよい。
【０１１７】
図15は、ICNプロトコルのインタレストパケット1500の一実施形態の概略図である。パケット1500は、nameフィールド1510およびnonceフィールド1520を含むことができる。nameフィールド1510を、情報オブジェクトを識別する名前ベースの識別子とすることができる。nonceフィールド1520を、セキュリティ、認証、および／または暗号化のために使用される数値とすることができる。例えば、nonceフィールド1520は、乱数を含むことができる。パケット1500を、プッシュ機構および／またはプル機構を介して送信することができる。
【０１１８】
一実施形態では、セッションセットアップおよび／またはクローズメッセージ、サービス関連の通知メッセージ、心拍メッセージ、および／またはリカバリメッセージなどの会議サービス制御メッセージは、ICNプロトコルのインタレストパケット1500として送信されてもよい。各パケット1500のnameフィールド1510を、ルーティングプレフィックス（例えば、<Routing-Prefix>）で始めることができ、このルーティングプレフィックスは、名前ベースであってもよく、インタレストパケット1510の受信者を識別することができる。以下のリストは、ルーティングプレフィックスの例である：
【０１１９】
【表１】
2016527589.tif 000028
【０１２０】
ProxyIDRを、SR（例えば、SR120は、1つ以上の同期プロキシをホストすることができる）に位置する同期プロキシ（例えば、同期プロキシ336）を識別するリモート同期プロキシIDとすることができる。ISPを、会議参加者（例えば、UE130）にインターネットサービスを提供するISPの名前とすることができる。DeviceIDを、会議参加者（例えば、UE130に位置する同期クライアント436）を識別する、UEIDまたは同期クライアントIDとすることができる。
【０１２１】
セッションセットアップおよび／またはクローズプロセスにおいて、同期クライアントは、会議への接続および／または会議からの切断を要求するセッションセットアップおよび／またはクローズメッセージをそれぞれ同期プロキシに送信することができる。例えば、セッションセットアップおよび／またはクローズメッセージのためのインタレストパケットは、以下に示すようなnameフィールド1510を含むことができる：
<Routing-Prefix>:<ServiceID>:<ClientID>:<Msg-Type>
ここで、Routing-Prefixを、本明細書に上記の表1に示すような、同期プロキシのためのルーティングプレフィックスとすることができる。ServiceID、ClientID、およびMsg-Typeは、以下に示すような情報を示すことができる：
【０１２２】
【表２】
2016527589.tif 000029
【０１２３】
通知プロセスにおいて、同期クライアントは、会議に参加、会議を退出、および／または会議に再参加することを要求する通知メッセージ、および／または他の通知情報を同期プロキシに送信することができる。例えば、同期クライアントから同期プロキシへの通知メッセージのためのインタレストパケットは、以下に示すようなnameフィールド1510を含むことができる：
<Routing-Prefix>:<ServiceID>:<Msg-Type>:<dr>:<User-FP>
ここで、Routing-Prefixを、本明細書に上記の表1に示すような、同期プロキシのためのルーティングプレフィックスとすることができる。ServiceID、Msg-Type、dg、およびUser-FPは、以下に示すような情報を示すことができる：
【０１２４】
【表３】
2016527589.tif 000030
【０１２５】
User-FPは、サービスクライアント（例えば、サービスクライアント400）でアプリケーションプール（例えば、アプリケーションプール411）に位置するアプリケーション（例えば、チャットアプリケーション）によって、UE（例えば、UE130）で生成され得ることに留意すべきである。User-FPの例を以下に示す：
<ISP>:<SR-ID>:<ServiceID>:<Service-AccountID>:<msg-Seq>
ここで、ISP、SR-ID、ServiceIDを、本明細書に上述のものとすることができ、Service-AccountIDは、ISPネットワークにおけるUEのアカウントIDに対応することができ、msg-Seqは、参加者の署名情報、証明書情報、セキュリティパラメータ、および／または関連する更新シーケンス番号を含むことができる。例えば、更新シーケンス番号を、User-FPコンテンツを識別するために使用することができる。
【０１２６】
同期クライアントから受信した通知に応答して、ローカル同期プロキシは、同期クライアントの参加、退出、および／または再参加についてリモート同期プロキシ、および／または他の同期クライアントの公開された情報を更新するために、リモート同期プロキシに通知メッセージを送信することができる。例えば、ローカル同期プロキシからリモート同期プロキシへの通知メッセージのためのインタレストパケットは、以下に示すようなnameフィールド1510を含むことができる：
<Routing-Prefix>:<ServiceID>:<Msg-Type>:<ProxyID>:<dp_pre>:<dp_curr>:<User-FP>
ここで、Routing-Prefixを、本明細書に上記の表1に示すような、リモート同期プロキシのためのルーティングプレフィックスとすることができる。ServiceID、Msg-Type、ProxyID、dp_pre、dp_curr、およびUser-FPは、以下に示すような情報を示すことができる：
【０１２７】
【表４】
2016527589.tif 000031
【０１２８】
リモート同期プロキシから受信した通知に応答して、ローカル同期プロキシは、リモート同期プロキシに接続された同期クライアントの参加、退出、および／または再参加について同期クライアントを更新するために、同期クライアント（例えば、ユニキャスト）に通知メッセージを送信することができる。例えば、ローカル同期プロキシから接続された同期クライアントへの通知メッセージのためのインタレストパケットは、以下に示すようなnameフィールド1510を含むことができる：
<Routing-Prefix>:<ServiceID>:<Flag>:<dg_pre><dg_curr>:<User-FP>
ここで、Routing-Prefixを、本明細書に上記の表1に示すような、同期クライアントのためのルーティングプレフィックスとすることができる。ServiceID、Flag、dr_pre、dr_curr、およびUser-FPは、以下に示すような情報を示すことができる：
【０１２９】
【表５】
2016527589.tif 000032
【０１３０】
同期プロセス（例えば、プル機構）では、ローカルサービスプロキシは、ローカルサービスプロキシがリモート同期プロキシから次の会議の更新を受信することができるように、重要な要求として同期インタレストパケットを送信することができる。例えば、同期インタレストメッセージのためのインタレストパケットは、以下に示すようなnameフィールド1510を含むことができる：
<ServiceID>:<dg_curr>
ここで、ServiceIDおよびdg_currは、以下に示すような情報を示すことができる：
【０１３１】
【表６】
2016527589.tif 000033
【０１３２】
動作（例えば、機能インジケータおよび／または接続性）を示すために、同期プロキシおよび／または同期クライアントによって、心拍メッセージを送信することができる。例えば、ローカル同期プロキシは、リモート同期プロキシにも接続された同期クライアントにも心拍メッセージを送信することができ、同期クライアントは、接続された同期プロキシに心拍メッセージを送信することができる。例えば、心拍メッセージのためのインタレストパケットは、以下に示すようなnameフィールド1510を含むことができる：
<Routing-Prefix>:<OriginatorID>:<Flag>:<Sequence_no>
ここで、Routing-Prefixを、本明細書に上記の表1に示すような、対象とする受信者に応じて変化させることができる。OriginiatorID、Flag、およびsequence_noは、以下に示すような情報を示すことができる：
【０１３３】
【表７】
2016527589.tif 000034
【０１３４】
心拍メッセージは、定期的に送信および／または所定のイベントによって駆動されてもよいことに留意すべきである。いくつかの実施形態では、心拍メッセージの受信者は、（例えば、以下でより十分に説明するようにデータパケットとして）確認メッセージを送信することができる。
【０１３５】
リカバリプロセスは、同期クライアントおよび／または同期プロキシでの一時的なネットワークの中断の後で、ネットワークリカバリを参照することができる。中断中に、同期クライアントおよび／または同期プロキシは、対応する接続構成要素からの更新（例えば、通知メッセージ）を見逃す場合がある。リカバリ後に、対応する接続構成要素から通知メッセージを受信すると、同期クライアントおよび／または同期プロキシは、見逃された更新を検出することができる。例えば、ローカルサービスプロキシがリモートサービスプロキシを用いて会議更新の同期のためのプッシュ機構を採用した場合、ローカルサービスのプロキシは、リモート同期プロキシから受信した通知メッセージでのdp_preが、リモートサービスプロキシに関連した最後のエントリにログされたローカル状態と同一（例えば、ギャップなし）であるかどうかを判断することにより、リモート同期プロキシから見逃された通知を検出することができる。同期クライアントは、同期プロキシから受信した通知メッセージでのdg_preが、同期クライアントでログされた最後のグローバル状態と同一（例えば、ギャップなし）であるかどうかを判断することにより、同期プロキシから見逃した通知を検出することができる。例えば、リカバリメッセージのためのインタレストパケットは、以下に示すようなnameフィールド1510を含むことができる：
<Routing-Prefix>:<ServiceID>:<Msg-Type>:<digest_last>:<digest_new>
ここで、Routing-Prefixを、本明細書に上記の表1に示すような、対象とする受信者に応じて変化させることができる。ServiceID、Msg-Type、digest_last、およびdigest_newは、以下に示すような情報を示すことができる：
【０１３６】
【表８】
2016527589.tif 000035
【０１３７】
digest_lastおよびdigest_newは、送信者および／または受信者に応じて変化し得ることに留意すべきである。例えば、同期クライアントが同期プロキシからダイジェストログ履歴を要求すると、digest_lastおよびdigest_newはグローバル状態dgを参照することができる。同期プロキシがリモート同期プロキシからのダイジェストログ履歴を要求すると、digest_lastおよびdigest_newは、リモート同期プロキシのローカル状態dpnを参照することができる。digest_lastおよびdigest_newは、欠落しているダイジェストログ履歴を示すことができる。
【０１３８】
図16は、ICNプロトコルのデータパケット1600の一実施形態の概略図である。パケット1600は、nameフィールド1610およびdataフィールド1620を含むことができる。nameフィールド1610は、nameフィールド1610と実質的に同様であってもよい。dataフィールド1620は、メッセージシーケンスのコンテンツを含むことができ、メッセージのタイプに応じて変化することができ、例えば、一部のメッセージは、追加の署名プロファイルおよび／または証明書情報を含んでもよい。
【０１３９】
一実施形態では、セッションセットアップおよび／またはクローズ応答メッセージおよび／またはリカバリデータメッセージなどの会議サービス制御メッセージは、ICNプロトコルのデータパケット1600として送信されてもよい。セッションセットアップおよび／またはクローズプロセスでは、同期プロキシは、セッションセットアップ応答および／またはセッションクローズ応答を送信することによって、同期クライアントに応答することができる。例えば、セッションセットアップおよび／またはクローズ応答メッセージのためのデータパケットは、本明細書で上述したセッションセットアップおよび／またはクローズインタレストのnameフィールドに実質的に同様のnameフィールド1610を含むことができる。セッションセットアップおよび／またはクローズ応答のためのデータパケット内のdataフィールド1620は、同期プロキシでのグローバル状態（例えば、dg）、および／または要求されたセッションセットアップおよび／またはクローズへの確認を含むことができる。
【０１４０】
リカバリプロセスでは、同期プロキシは、ダイジェストログ履歴を送信することにより、接続構成要素のリカバリ要求メッセージに応答することができる。ダイジェストログの深度（例えば、ログエントリの数）を、本明細書で上述したリカバリインタレストパケットに示されたdigest_lastおよびdigest_new、および／または応答している構成要素により保持されるようなキャッシュ内の深度によって決定することができる。例えば、リカバリ応答メッセージのためのデータパケットは、本明細書で上述したリカバリインタレストのnameフィールドに実質的に同様のnameフィールド1610を含むことができる。リカバリ応答のためのデータパケット内のdataフィールド1620は、nameフィールド1610に示されるdigest_lastとdigest_newとの間で更新されたFPの履歴を含むことができる。
【０１４１】
同期プロセスでは、同期プロキシは、同期データ応答メッセージ（例えば、同期インタレストメッセージでのグローバル状態dg_currが古くなっている）を送信することにより、リモート同期プロキシからの重要な同期インタレストメッセージに応答することができる。同期プロキシは、更新されたグローバル状態（例えば、dg_new）およびdg_currからdg_newへのグローバル状態の遷移に対応するFPを含む同期データ応答メッセージを送信することができる。
【０１４２】
少なくとも1つの実施形態が開示され、当業者によって実施される実施形態（複数可）および／または実施形態（複数可）の特徴の変形、組み合わせ、および／または修正は、本開示の範囲内である。また、実施形態（複数可）の機能の組み合わせ、統合、および／または省略に起因する代替の実施形態も、本開示の範囲内である。数値範囲または限定が明確に記載されている場合、このような明示範囲または制限は、明確に記載された範囲または制限内に入る同様の大きさの反復範囲または制限を含む（例えば、約1から約10は2、3、4、等を含み、0.10より大きいは、0.11、0.12、0.13、等を含む）と理解されるべきである。例えば、下限値Rl、および上限Ruを有する数値範囲が開示されている場合いつでも、この範囲内に入る任意の数が具体的に開示されている。特に、範囲内の以下の数が具体的に開示されている：R＝Rl＋k＊（Ru−Rl）、ここで、kは1パーセントずつのインクリメントによる1パーセントから100パーセントの範囲の変数であり、すなわち、kは、1パーセント、2パーセント、3パーセント、4パーセント、7パーセント、．．．、70パーセント、71パーセント、72パーセント、．．．、97パーセント、96パーセント、97パーセント、98パーセント、99パーセント、または100パーセントである。さらに、上記で定義されたような2つの数Rによって定義された任意の数値範囲も、具体的に開示されている。明記されない限り、「約（about）」という用語は、これに続く数の±10％を意味する。請求項の任意の要素に関する「場合により（optionally）」という用語の使用は、要素が必要とされるか、あるいは、要素が必要とされないことを意味し、どちらも特許請求の範囲内である。「含む（comprises、includes）」および「有する（having）」などの上位の用語の使用は、「構成されている（consisting of）」、「本質的に構成されている（consisting essentially of）」、および「実質的に構成された（comprised substantially of）」などの下位の用語のためのサポートを提供するものとして理解されるべきである。したがって、保護の範囲は、上述した説明によって限定されるものではなく、添付の特許請求の範囲により画定され、この範囲は、請求項の主題のすべての均等物を含んでいる。それぞれのおよびすべての請求項は、明細書中にさらなる開示として組み込まれ、請求項は、本開示の実施形態（複数可）である。本開示における参照の議論は、従来技術であることを認めるものではなく、特に本出願の優先日後の公開日を有する任意の参照を認めるものでもない。本開示において引用されたすべての特許、特許出願、および刊行物の開示は、本開示に例示的な、手順に関する、または他の詳細を補足的に提供する程度まで、本明細書に参照により組み込まれている。
【０１４３】
いくつかの実施形態が本開示において提供されているが、開示されたシステムおよび方法は、本開示の趣旨または範囲から逸脱することなく多くの他の特定の形態で実現されるかもしれないことが理解されるべきである。本発明の例は、例示的であって制限的なものではないと考えられるべきであり、本明細書で与えられた詳細に限定されることを意図するものではない。例えば、さまざまな要素または構成要素が組み合わされ、または別のシステムに統合されてもよく、あるいは特定の機能が省略され、すなわち実施されなくてもよい。
【０１４４】
また、さまざまな実施形態において個別または別々のもとして記載され説明された技術、システム、サブシステム、および方法は、本開示の範囲から逸脱することなく、他のシステム、モジュール、技術、または方法と組み合わされ、統合されてもよい。連結された、直接連結された、または互いに通信しているものとして図示され議論された他のアイテムは、間接的に連結されてもよいし、いくつかのインタフェース装置、または中間の構成要素を介して、電気的、機械的、または他の方法で通信してもよい。変更、置換、および代替の他の例を、当業者は確認可能であり、本明細書に開示される趣旨および範囲から逸脱することなく行うことができる。
【符号の説明】
【０１４５】
100  サービスネットワーク
120  サービスルータ（SR）
130  ユーザ機器（UE）
140  ネットワーク要素（NE）
141  リンク
142  リンク
150  インターネットネットワーク
170  ネットワーク
180  ネットワーク
191  制御パス
192  制御パス
200  ネットワーク要素（NE）
210  トランシーバ（Tx／Rx）
220  ダウンストリームポート
230  プロセッサ
232  メモリ装置
233  会議のサービス制御管理モジュール
250  アップストリームポート
300  サービスプロキシ
310  アプリケーションレイヤ
311  アプリケーションプール
320  サービス・アプリケーション・プログラミング・インタフェース（API）からアプリケーションへのレイヤ
330  サービスレイヤ
331  FPプロセッサ
332  心拍信号プロセッサ
333  ダイジェストログ
334  アプリケーションキャッシュ
335  他のサービスモジュール
336  同期プロキシ
340  ICNレイヤ
350  L2／L3レイヤ
360  サービス・ネットワーク・ツー・ネットワーク・インタフェース（S-NNI）レイヤ
361  サービス・ユーザ・ツー・ネットワーク・インタフェース（S-UNI）レイヤ
362  S-NNIレイヤ
400  サービスクライアント、サービスプロキシ、UE
410  アプリケーションレイヤ
411  アプリケーションプール
420  サービスAPIからアプリケーションへのレイヤ
430  サービスレイヤ
431  FPプロセッサ
432  心拍信号プロセッサ
433  ダイジェストログ
434  アプリケーションキャッシュ
435  他のサービスモジュール
436  同期クライアント
440  ICNレイヤ
450  L2／L3レイヤ
461  S-UNI制御レイヤ
462  S-NNIデータレイヤ
500  サービスネットワーク
521  サービスプロキシ
522  サービスプロキシ
523  サービスプロキシ
531  サービスクライアント
532  サービスクライアント
533  サービスクライアント
600  ダイジェストツリー
610  ノード
620  ノード
630  リーフノード
700  会議
800  ダイジェストツリーログ
810  ダイジェストツリー
820  ダイジェストツリー
830  ダイジェストツリー
840  ダイジェストツリー
900  ダイジェスト履歴ログ
910  エントリ
920  エントリ
930  エントリ
940  エントリ
1000  会議のブートストラップ方法
1010  ステップ
1020  ステップ
1030  ステップ
1031  ステップ
1040  ステップ
1050  ステップ
1060  ステップ
1100  会議の同期方法
1110  ステップ
1111  ステップ
1120  ステップ
1130  ステップ
1131  ステップ
1140  ステップ
1200  会議の同期方法
1210  ステップ
1220  ステップ
1221  ステップ
1230  ステップ
1240  ステップ
1241  ステップ
1250  ステップ
1300  会議のリカバリ方法
1310  ステップ
1320  ステップ
1330  ステップ
1340  ステップ
1350  ステップ
1400  会議のリカバリ方法
1410  ステップ
1420  ステップ
1430  ステップ
1431  ステップ
1440  ステップ
1450  ステップ
1500  ICNプロトコルのインタレストパケット
1510  nameフィールド
1520  nonceフィールド
1600  ICNプロトコルのデータパケット
1610  nameフィールド
1620  dataフィールド
U1  会議参加者、サービスクライアント
U2  会議参加者、サービスクライアント
U3  会議参加者、サービスクライアント
【図１】
2016527589.tif 000036
【図２】
2016527589.tif 000037
【図３】
2016527589.tif 000038
【図４】
2016527589.tif 000039
【図５】
2016527589.tif 000040
【図６】
2016527589.tif 000041
【図７】
2016527589.tif 000042
【図８】
2016527589.tif 000043
【図９】
2016527589.tif 000044
【図１０】
2016527589.tif 000045
【図１１】
2016527589.tif 000046
【図１２】
2016527589.tif 000047
【図１３】
2016527589.tif 000048
【図１４】
2016527589.tif 000049
【図１５】
2016527589.tif 000050
【図１６】
2016527589.tif 000051
【手続補正書】
【提出日】平成27年12月25日(2015.12.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ネットワーク要素（NE）であって、
会議のためのダイジェストログを格納するように構成されたメモリと、
前記NEに関連した複数のうちの第1の参加者からの第1のメッセージを受信するように構成された受信機であって、前記第1のメッセージが前記第1の参加者の署名プロファイルを含む受信機と、
前記受信機と前記メモリに連結され、前記第1のメッセージに応じて前記ダイジェストログの第1の更新を実行することによって前記会議の状態を追跡するように構成されたプロセッサと、
前記プロセッサに連結され、前記会議にサービスを提供する複数のうちの第1のサービスプロキシに前記第1の更新を示すために、第2のメッセージを送信するように構成された送信機と、
を備えている、ネットワーク要素（NE）。
【請求項２】
前記第1の更新を実行することが、
前記ダイジェストログにカレントエントリを生成することと、
前記ダイジェストログの最後のエントリのローカル状態をインクリメントすることによって、前記カレントエントリのローカル状態を計算することと、
前記カレントエントリに前記第1の参加者の署名プロファイルを記録することと
を含み、
前記第2のメッセージが、
前記カレントエントリのローカル状態と、
前記最後のエントリのローカル状態と、
前記第1の参加者の署名プロファイルと
を含む、
請求項1に記載のNE。
【請求項３】
前記受信機が、前記第1のサービスプロキシから第3のメッセージを受信するようにさらに構成され、前記第3のメッセージが、前記第1のサービスプロキシに関連した第2の参加者の署名プロファイルを含み、前記プロセッサが、前記第3のメッセージに応じて前記ダイジェストログの第2の更新を実行するようにさらに構成され、前記送信機が、前記第1の参加者に前記第2の更新を示すために第4のメッセージを送信するようにさらに構成されている、請求項1又は2に記載のNE。
【請求項４】
前記第3のメッセージが、前記第1のサービスプロキシのカレントローカル状態および前記第1のサービスプロキシの最後のローカル状態をさらに含み、
前記第2の更新を実行することが、
前記ダイジェストログに前記第1のサービスプロキシに関連したカレントエントリを生成することと、
前記カレントエントリに前記カレントローカル状態を記録することと、
前記ダイジェストログの最後のエントリのグローバル状態をインクリメントすることによって、前記カレントエントリのグローバル状態を計算することと、
を含み、
前記第4のメッセージが、
前記カレントエントリの前記グローバル状態と、
前記最後のエントリの前記グローバル状態と、
前記第2の参加者の署名プロファイルと
を含む、
請求項3に記載のNE。
【請求項５】
前記第3のメッセージに示された前記最後のローカル状態が前記第1のサービスプロキシに関連した最後のエントリのカレントローカル状態と異なる場合、前記プロセッサは、前記NEが前記第1のサービスプロキシからの1つ以上の更新を見逃したことを判断するようにさらに構成され、前記送信機が、見逃された更新を要求するために、リカバリ要求メッセージを前記第1のサービスプロキシに送信するようにさらに構成され、前記受信機が、前記第1のサービスプロキシから少なくとも1つの前記見逃された更新を含むリカバリデータメッセージを受信するようにさらに構成されている、請求項4に記載のNE。
【請求項６】
前記受信機が、第1状態と第2状態との間で前記ダイジェストログのための要求を含むリカバリ要求メッセージを受信するようにさらに構成され、前記プロセッサが、前記第1状態と前記第2状態との間の状態を含む一部の前記ダイジェストログを抽出するようにさらに構成され、前記送信機が、前記ダイジェストログの前記抽出された部分を含むリカバリデータメッセージを送信するようにさらに構成されている、請求項1〜5のいずれか一項に記載のNE。
【請求項７】
前記ダイジェストログが、
前記サービスプロキシおよび特定の時間での前記サービスプロキシに対応するローカル状態の記録、
前記参加者および前記特定の時間での前記参加者に対応する署名プロファイルの記録、および、
前記特定の時間での前記会議のグローバル状態
を含む、請求項1〜6のいずれか一項に記載のNE。
【請求項８】
前記プロセッサが、
前記NEと前記第1のサービスプロキシとの間のネットワーク接続状態を示す心拍メッセージを受信し、
前記心拍メッセージがタイムアウトウィンドウの第1のサービスプロキシから受信されない場合、要求メッセージを生成するように
さらに構成され、
前記送信機が、前記リカバリ要求メッセージを前記複数のうちの第2のサービスプロキシに送信するようにさらに構成されている、
請求項1〜7のいずれか一項に記載のNE。
【請求項９】
前記NEが、前記会議のための情報中心型ネットワーキング（ICN）対応のサービスプロキシであり、前記第1のメッセージおよび前記第2のメッセージが、ICNプロトコルパケットであり、前記第1のメッセージおよび前記第2のメッセージそれぞれが、ルーティング可能な名前ベースの識別子を含み、前記第1のメッセージが、会議参加要求、会議退出、会議再参加要求、またはこれらの組み合わせをさらに含む、請求項1〜8のいずれか一項に記載のNE。
【請求項１０】
情報中心型ネットワーキング（ICN）のネットワーク内のローカルサービスプロキシで会議のサービス制御を同期させるための方法であって、前記方法が、
前記ローカルサービスプロキシに関連した複数のうちの第1の参加者から第1のメッセージを受信するステップであって、前記第1のメッセージが前記第1の参加者の署名プロファイルを含み、前記第1のメッセージがICNコンテンツ名ベースのルーティング方式を採用することによって受信されるステップと、
前記第1のメッセージに応じてダイジェストログのための第1の更新を実行するステップによって前記会議の状態を追跡するステップと、
前記会議にサービスを提供する複数のうちの第1のリモートサービスプロキシに前記第1の更新を示すために第2のメッセージを送信するステップと、
を含む方法。
【請求項１１】
前記第1の更新を実行するステップが、
前記ダイジェストログにカレントエントリを生成するステップ、
前記ダイジェストログの最後のエントリのグローバル状態をインクリメントすることによって、前記カレントエントリのグローバル状態を計算するステップ、および、
前記カレントエントリに前記第1の参加者の署名プロファイルを記録するステップ
を含む、請求項10に記載の方法。
【請求項１２】
前記第1のリモートサービスプロキシのグローバル状態を含む同期インタレストメッセージを受信するステップ、および、
前記カレントエントリの前記グローバル状態が、前記受信した同期インタレストメッセージの前記第1のリモートサービスプロキシのグローバル状態よりも新しい場合に、前記第2のメッセージの前記送信を開始するステップ
をさらに含み、
前記第2のメッセージが、前記ダイジェストログの前記カレントエントリの前記グローバル状態、および前記第1の参加者の署名プロファイルを含む請求項11に記載の方法。
【請求項１３】
前記第1のリモートサービスプロキシから第3のメッセージを受信するステップであって、前記第3のメッセージが、前記第1のリモートサービスプロキシに関連した第2の参加者の署名プロファイルおよび前記第1のリモートサービスプロキシのグローバル状態を含む、ステップと、
前記第3のメッセージに応じて前記ダイジェストログの第2の更新を実行するステップと、
前記第1の参加者に前記第2の更新を示すために第4のメッセージをプッシュするステップと、
をさらに含む、請求項10〜12のいずれか一項に記載の方法。
【請求項１４】
前記第2の更新を実行するステップが、
前記ダイジェストログに前記第1のリモートサービスプロキシに関連したカレントエントリを生成するステップ、および、
前記カレントエントリに前記第3のメッセージの前記グローバル状態を記録するステップ、
を含み
前記第4のメッセージが、
前記第3のメッセージに受信した前記グローバル状態と、
前記ダイジェストログの最後のエントリのグローバル状態と、
前記第2の参加者の署名プロファイルと、
を含み、
前記方法が、次の会議の更新のためのインタレストを示すために、同期インタレストメッセージを送信するステップをさらに含み、
前記同期インタレストメッセージが、前記ダイジェストログの前記カレントエントリの前記グローバル状態を含む、
請求項13に記載の方法。
【請求項１５】
前記第1の参加者からリカバリ要求メッセージを受信するステップであって、前記リカバリ要求メッセージが第1のグローバル状態と第2のグローバル状態との間に前記ダイジェストログのための要求を含む、ステップと、
前記リカバリ要求メッセージを受信するステップに応答して、前記第1のグローバル状態と前記第2のグローバル状態との間の状態を含む一部の前記ダイジェストログを抽出するステップと、
前記ダイジェストログの前記抽出された部分を含むリカバリデータメッセージを前記第1の参加者に送信するステップと、
をさらに含む、請求項10〜14のいずれか一項に記載の方法。
【請求項１６】
前記ローカルサービスプロキシが第前記1のリモートサービスプロキシからの1つ以上の更新を見逃した場合、待機期間でタイマを開始するステップと、
前記タイマが前記待機期間に達して、前記待機期間中に会議の更新が受信されない場合、リカバリ要求メッセージを送信するステップと、
少なくとも1つの前記見逃された更新を含むリカバリデータメッセージを受信するステップと、
をさらに含む、請求項10〜15のいずれか一項に記載の方法。
【請求項１７】
前記ローカルサービスプロキシと前記第1の参加者との間のネットワーク接続状態を示す心拍メッセージを受信するステップと、
前記心拍メッセージがタイムアウトウィンドウの前記第1の参加者から受信されない場合、前記ダイジェストログから前記第1の参加者を除去することによって前記ダイジェストログの第3の更新を実行するステップと、
前記第3の更新を示す第3のメッセージを前記第1のリモートサービスプロキシに送信するステップと、
をさらに含む、請求項10〜16のいずれか一項に記載の方法。
【請求項１８】
情報中心型ネットワーキング（ICN）のネットワーク内で会議にサービスを提供するローカルサービスプロキシによる使用のためのコンピュータプログラム製品であって、プロセッサによって実行されると、前記ローカルサービスプロキシが、
前記ローカルサービスプロキシに関連した複数のうちの第1の参加者からの第1のメッセージを受信し、ここで、前記第1のメッセージが前記第1の参加者の署名プロファイルを含み、前記第1のメッセージがICNコンテンツ名ベースのルーティング方式によって受信され、
前記第1のメッセージに応じてダイジェストログの第1の更新を実行することによって前記会議の状態を追跡し、ここで、前記第1の更新を実行することが、前記ダイジェストログに前記第1の参加者の署名プロファイルを記録することを含み、
前記会議にサービスを提供する複数のうちの第1のリモートサービスプロキシに前記第1の更新を示すために第2のメッセージを送信するように、
前記コンピュータプログラム製品が、非一時的なコンピュータ可読媒体に格納されたコンピュータ実行可能命令を含む、コンピュータプログラム製品。
【請求項１９】
前記命令が、前記プロセッサにさらに、
前記第1のリモートサービスプロキシから第3のメッセージを受信させ、ここで、前記第3のメッセージが、前記第1のリモートサービスプロキシに関連した第2の参加者の署名プロファイルを含み、
前記第3のメッセージに応じて前記ダイジェストログの第2の更新を実行させ、
前記第1の参加者に前記第2の更新を示すために第4のメッセージを送信させる、
請求項18に記載のコンピュータプログラム製品。
【請求項２０】
前記第1の更新を実行することが、
前記ダイジェストログのグローバル状態をインクリメントすること、および、
前記ダイジェストログの前記ローカルサービスプロキシのローカル状態をインクリメントすること
をさらに含み、
前記第3のメッセージが、前記第1のリモートサービスプロキシのローカル状態をさらに含み、
前記第2の更新を実行することが、
前記ダイジェストログで前記グローバル状態をインクリメントすること、および、
前記ダイジェストログで前記第3のメッセージの前記ローカル状態を記録することによって、前記第1のリモートサービスプロキシのローカル状態を追跡すること
を含み、
前記ダイジェストログが、
前記リモートサービスプロキシおよび特定の時間での前記リモートサービスプロキシに対応するローカル状態の記録、
前記参加者および特定の時間での前記参加者に対応する署名プロファイルの記録、および、
前記特定の時間での前記グローバル状態
を含む、
請求項19に記載のコンピュータプログラム製品。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
関連出願の相互参照
本出願は、2013年5月17日にGuoqiang Wangらによって出願された「Multitier “Push” Service Control for Virtual Whiteboard Conference Over Large Scale ICN Architecture」と題する米国仮特許出願第61／824656号明細書、および2014年4月25日にAsit Chakrabortiらによって出願された「Multitier “Push” Service Control for Virtual Whiteboard Conference Over Large Scale ICN Architecture」と題する米国仮特許出願第61／984505号明細書に基づく優先権を主張し、この両方が、参照により本明細書全体に組み込まれる。
【国際調査報告】
2016527589.tif 000052
2016527589.tif 000053
2016527589.tif 000054