(57)【要約】  方法は、ソース状態情報を要求する効果的な通信によって、マルチキャスト・ルーティングの計算及び／又は帯域要求を低減する。方法は、第１のネットワーク・エレメントにおいてホストからネットワークを介してソース・インタレスト・リストを受信することと、修正ホスト・マネジメント・プロトコルを実行することと、を含み、ソース・インタレスト・リストは、少なくとも１つのマルチキャスト・ソースが、ホストへのルーティングから除外されるべきか、含まれるべきかを示す。修正ホスト・マネジメント・プロトコルは、ソース・インタレスト・リストと第１のネットワーク・エレメントにより保持されるソース状態との間の差異を特定する。修正ホスト・マネジメント・プロトコルは、ソース・インタレスト・リスト全てではなく、ソース・インタレスト・リストとソース状態との間の差異を、ホストにルートされるマルチキャスト・ソースのセットを変更するマルチキャスト・ルーティング・プロトコルに提供する。【選択図】図１
2012533959.tif 000002
【特許請求の範囲】
【請求項１】
ソース状態情報を要求する効果的な通信によって、マルチキャスト・ルーティングの計算及び／又は帯域要求を低減するための第１のネットワーク・エレメントにおける方法であって、
ソース・インタレスト・リストは、少なくとも１つのマルチキャスト・ソースが前記ホストへのルーティングから除外されるソース及び前記ルーティングに含まれるソースのうちのいずれか１つとなることを識別し、前記ソース・インタレスト・リストをホストからネットワークを介して受信するステップと、
ソース状態は、少なくとも１つのマルチキャスト・ソースがホストから除外されることを示すエクスクルード状態と、少なくとも１つのマルチキャスト・ソースがホストに提供されることを示すインクルード状態との少なくともいずれかを含み、修正ホスト・マネジメント・プロトコルによって、前記ソース・インタレスト・リストと、前記第１のネットワーク・エレメントにより保持される前記ソース状態と、の間の差異を特定するステップと、
前記ホスト・マネジメント・プロトコルによって、前記ソース・インタレスト・リストの全てではなく前記ソース・インタレスト・リストと前記ソース状態との間の前記差異を前記ホストにルートされるマルチキャスト・ソースの前記セットを変更するマルチキャストルーティングプロトコルに提供するステップと、
を含む方法。
【請求項２】
前記提供するステップは、
前記修正ホスト・マネジメント・プロトコルによって、前記マルチキャスト・ルーティング・プロトコルのファンクション又はメソッドを呼び出すステップを含む、
請求項１に記載の方法。
【請求項３】
前記提供するステップは、
前記修正ホスト・マネジメント・プロトコルによって、前記ソース・インタレスト・リストと前記ソース状態との間の前記差異を含むメッセージを生成するステップと、
前記修正ホスト・マネジメント・プロトコルによって、前記第１のネットワーク・エレメントから、前記マルチキャスト・ルーティング・プロトコルを実行する第２のネットワーク・エレメントへ前記メッセージを送信するステップと、
をさらに含む、請求項１に記載の方法。
【請求項４】
前記マルチキャスト・ルーティング・プロトコルは、プロトコル・インディペンデント・マルチキャスト・スパース・モードであり、
前記ソース・インタレスト・リストは、インターネット・グループ・マネジメント・プロトコルと、マルチキャスト・リスナー・ディスカバリー・プロトコルとのうちのいずれかに従ってフォーマット済である、
請求項１に記載の方法。
【請求項５】
前記ソース・インタレスト・リストがエクスクルード・リストであるかインクルード・リストであるかを特定するステップ、
をさらに含む、請求項１に記載の方法。
【請求項６】
前記第１のネットワーク・エレメントにより前記ホストから受信される前記ソース・インタレスト・リストは、前記ホストにとって除外すべき及び含むべきマルチキャスト・ソースの全てを特定する、
請求項１に記載の方法。
【請求項７】
ソース状態情報を要求する効果的な通信によって、マルチキャスト・ルーティングの計算及び／又は帯域要求を低減するネットワークであって、
ユーザ入力に基づいてソース・インタレスト・リストを生成するよう適合され、前記ソース・インタレスト・リストをネットワークを介して第１のネットワーク・エレメントに送信するよう適合され、前記ソース・インタレスト・リストは少なくとも１つのマルチキャスト・ソースが前記ホストへのルーティングから除外されるべきか含まれるべきかを特定する、ホストデバイスと、
前記ネットワークを介して前記ホスト・デバイスと通信する前記第１のネットワーク・エレメントと、
を備え、
前記第１のネットワーク・エレメントは、修正ホスト・マネジメント・プロトコルを実行するよう適合され、前記修正ホスト・マネジメント・プロトコルは前記ソース・インタレスト・リストと、前記第１のネットワーク・エレメントにより保持されるソース状態との間の差異を特定するよう適合され、前記ソース状態は、少なくとも１つのマルチキャスト・ソースがホストデバイスから除外されることを示すエクスクルード状態と、少なくとも１つのマルチキャスト・ソースが前記ホストデバイスに提供されることを示すインクルード状態との少なくともいずれかを含み、前記修正ホスト・マネジメント・プロトコルは、前記ソース・インタレスト・リストと前記ソース状態との前記差異のみを提供し、前記ソース・インタレスト・リストの全てを、前記ホストデバイスに提供されるマルチキャスト・ソースの前記セットを変更するマルチキャスト・ルーティング・プロトコルに提供しない、
ネットワーク。
【請求項８】
前記第１のネットワーク・エレメントは、前記マルチキャスト・ルーティング・プロトコルを含み、前記修正ホスト・マネジメント・プロトコルは、前記マルチキャスト・ルーティング・プロトコルのファンクション又はメソッドのうちの１つを呼び出す、
請求項７に記載のネットワーク。
【請求項９】
前記マルチキャスト・ルーティング・プロトコルを含み、前記第１のネットワーク・エレメントと前記ネットワークを介して通信する第２のネットワーク・エレメントをさらに備え、
前記第２のネットワーク・エレメントは、前記ソース・インタレスト・リストの全てでなく前記ソース・インタレスト・リストと前記ソース状態との間の前記差異を前記ホスト・マネジメント・プロトコルから受信するよう適合される、
請求項７に記載のネットワーク。
【請求項１０】
前記マルチキャスト・ルーティング・プロトコルは、プロトコル・インディペンデント・マルチキャスト・スパース・モードであり、前記ソース・インタレスト・リストは、インターネット・グループ・マネジメント・プロトコルとマルチキャスト・リスナー・ディスカバリー・プロトコルとのうちのいずれか１つのしたがってフォーマット済である、
請求項７に記載のネットワーク。
【請求項１１】
前記第１のネットワーク・エレメントは前記ソース・インタレスト・リストがエクスクルード・リストであるか又はインクルード・リストであるかを特定する、
請求項７に記載のネットワーク。
【請求項１２】
前記第１のネットワーク・エレメントにより前記ホストデバイスから受信される前記ソース・インタレスト・リストは、前記ホストデバイスから除外されるべき及び含まれるべき全てのマルチキャスト・ソースを特定する、
請求項７に記載のネットワーク。
【請求項１３】
ソース状態情報を要求する効果的な通信によって、マルチキャスト・ルーティングの計算及び／又は帯域要求を低減するネットワーク・エレメントであって、
ソース・インタレスト・リストをホストからネットワークを介して受信するよう適合される修正ホスト・マネジメント・プロトコル部、
を備え、
前記ソース・インタレスト・リストは、少なくとも１つのマルチキャスト・ソースが、前記ホストへのルーティングにおいて除外されるべき又は含まれるべきであることを特定し、前記修正ホスト・マネジメント・プロトコル部は、前記ソース・インタレスト・リストと、前記修正ホスト・マネジメント・プロトコル部により維持されるソース状態との間の差異を特定するよう適合され、前記ソース状態は、少なくとも１つのマルチキャスト・ソースがホストから除外されることを示すエクスクルード状態と、少なくとも１つのマルチキャスト・ソースが前記ホストに提供されることを示すインクルード状態との少なくともいずれかを特定し、前記修正ホスト・マネジメント・プロトコル部は、前記ソース・インタレスト・リストと前記ソース状態との間の前記差異を、前記ホストにルートされるべきマルチキャスト・ソースの前記セットを変更するマルチキャスト・ルーティング・プロトコルに送信するよう適合される、
ネットワーク・エレメント。
【請求項１４】
前記マルチキャスト・ルーティング・プロトコルをさらに備え、
前記修正ホスト・マネジメント・プロトコル部は、前記マルチキャスト・ルーティング・プロトコルのメソッド又はファンクションのうちのいずれかを呼び出す、
請求項１３に記載のネットワーク・エレメント。
【請求項１５】
前記修正ホスト・マネジメント・プロトコル部は、前記ソース・インタレスト・リストの全てではなく、前記ソース・インタレスト・リストと前記ソース状態との間の前記差異を含むメッセージを生成するよう適合され、
前記ホスト・マネジメント・プロトコル部は、前記メッセージを、前記マルチキャスト・ルーティング・プロトコルを含むルータに送信するよう適合される、
請求項１３に記載のネットワーク・エレメント。
【請求項１６】
前記マルチキャスト・ルーティング・プロトコルは、プロトコル・インディペンデント・マルチキャスト・スパース・モードであり、
前記ソース・インタレスト・リストは、インターネット・グループ・マネジメント・プロトコルと、マルチキャスト・リスナー・ディスカバリー・プロトコルのうちのいずれかに従ってフォーマット済である、
請求項１３に記載のネットワーク・エレメント。
【請求項１７】
前記ネットワーク・エレメントは、前記ソース・インタレスト・リストがエクスクルード・リストであるか又はインクルード・リストであるかを特定する、
請求項１３に記載のネットワーク・エレメント。
【請求項１８】
前記ネットワーク・エレメントによって前記ホストから受信される前記ソース・インタレスト・リストは、前記ホストについて除外されるべき又は含まれるべき全てのマルチキャスト・ソースを特定する、
請求項１３に記載のネットワーク・エレメント。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、本出願と同日に出願された、「マルチキャスト対応ルータにおけるライトなホスト・マネジメント・プロトコル」というタイトルの同時係属中の出願に関連する。
【０００２】
本発明の一実施形態は、マルチキャスト通信を制御するためのシステムに関する。特に、本発明の一実施形態は、マルチキャスト・ネットワーク上のソースデータのためのホストリクエストの効果的な制御に関する。
【背景技術】
【０００３】
マルチキャストプロトコルの利用及びマルチキャストプロトコルを実装するネットワーク管理は、インターネットプロトコルテレビジョン（ＩＰＴＶ）及びオンデマンドビデオのような新たな技術をサポートするように拡大している。これらのネットワークは、ホストとして見なされるセットトップボックス（ＳＴＢｓ）を利用し、ＳＴＢｓにより特定されるソースのリストからデータをリクエストする。ソースは、ＩＰＴＶチャネルのようなマルチキャスト・ネットワーク上で利用可能なデータソースである。これらのソースは、多数のホストに対してマルチキャストを用いてストリーミングされる。
【０００４】
ＳＴＢｓは、ホスト・マネジメント・プロトコル（ＨＭＰ）を用いてマルチキャスト・ネットワークを通って受信することをリクエストしているソースのリストを送信する。ＨＭＰｓは、インターネットグループマネジメントプロトコル（ＩＧＭＰ）及びマルチキャストリスナーディスカバー（ＭＬＤ）を含む又は利用する。そしてそれぞれのホストへの要求されたソースへのルーティングを確立するために、これらのプロトコルは、マルチキャスト・ルーティング・プロトコル（ＭＲＰ）にソースの要求されたリストを伝える。ＭＲＰｓは、プロトコルインディペンデントマルチキャスト（ＰＩＭ）を含む。いくつかの例において、要求されたソースのインタレスト（ｉｎｔｅｒｅｓｔ）リストがＬ２監視（ｓｎｏｏｐｉｎｇ）デバイスを通ってＭＲＰを実行するマルチキャスト・ルータに送信される。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ソース・インタレスト・リストがホストから受信される毎に、ＨＭＰは、リクエストされたソースの全リストをＭＲＰに伝える。これは、ＭＲＰにＨＭＰから以前受信されたソースの再処理をさせる。ＨＭＰからＭＲＰに提供される２つのソースのリストがある。１つ目のソースのリストは、含められるソースのセット（すなわちホストはこれらのソースがそれに送信されることを要求している）であり、他方のソースのリストは、除外されるソースのセットである（すなわちホストはこれらのリソースがそれに送信されないことを要求している）。それぞれのサブネット上のマルチプルホストは、これらのソース・インタレスト・リストを送信し、ＨＭＰは、サブネット上ですべてのホストについて関係するソースをからなるソースステートをサブネットごとに構成し、集計する。これらのホストのうちのいずれかが新たなソース・インタレスト・リストを送信するとき、ＨＭＰにおいて集められた全ステートがＭＲＰに送信される。
【０００６】
Ｌ２監視ネットワーク・エレメントがホストとマルチキャスト・ルータとの間に存在するネットワーク中において、Ｌ２ネットワーク・エレメント上のＨＭＰは、ホストから受信したリソース・インタレスト・リストを処理し、それによって維持されている監視ステートを更新し、ＭＲＰがルーティングを更新することができるように、ソースリスト全体をルータに転送する。ルータ上では、ＭＲＰはローカルＨＭＰによりアシストされて、受信したソース・インタレスト・リストを処理し、受信したソース・インタレストをＭＲＰに伝える。
【課題を解決するための手段】
【０００７】
本発明の一実施形態は、要求されたソース状態情報を効果的に通信することによって、マルチキャスト・ルーティングの計算及び／又は帯域要求を低減するための方法を含む。ソース・インタレスト・リストは、少なくとも１つのマルチキャスト・ソースが、ホストへのルーティングから除外されるべきか又は含まれるべきかを特定し、方法は、修正ホスト・マネジメント・プロトコルを実行する第１のネットワーク・エレメントにおいて、ネットワークを介して上記ホストから上記ソース・インタレスト・リストを受信するステップを含む。上記修正ホスト・マネジメント・プロトコルは、上記ソース・インタレスト・リストと上記第１のネットワーク・エレメントにより保持されるソース状態との間の差異を特定する。上記ソース状態は、少なくとも１つのマルチキャスト・ソースがホストから除外されることを示すエクスクルード状態と、少なくとも１つのマルチキャスト・ソースがホストに提供されることを示すインクルード状態との少なくともいずれかを含む。修正ホスト・マネジメント・プロトコルは、上記ソース・インタレスト・リストの全てではなく上記ソース・インタレスト・リストと上記ソース状態との間の差異をもし存在するとき、上記ホストにルートされるマルチキャスト・ソースのセットを変更するマルチキャスト・ルーティング・プロトコルに通信する。
【０００８】
本発明の一実施形態は、ユーザ入力に基づいてソース・インタレスト・リストを生成し、上記ソース・インタレスト・リストを、ネットワークを介して第１のネットワーク・エレメントに送信するホストデバイスを含む。上記ソース・インタレスト・リストは、上記ホストへのルーティングから除外されるべきか又は上記ルーティングに含まれるべき少なくとも１つのマルチキャスト・ソースを特定する。上記第１のネットワーク・エレメントは、上記ホストデバイスと上記ネットワークを介して通信する。上記第１のネットワーク・エレメントは、修正ホスト・マネジメント・プロトコルを実行する。上記修正ホスト・マネジメント・プロトコルは、上記ソース・インタレスト・リストと、上記第１のネットワーク・エレメントにより保持されるソース状態との間の差異を特定する。上記ソース状態は、少なくとも１つのマルチキャスト・ソースがホストデバイスから除外されることを示すエクスクルード状態と、少なくとも１つのマルチキャスト・ソースが上記ホストデバイスに提供されることを示すインクルード状態との少なくともいずれかを含む。上記修正ホスト・マネジメント・プロトコルは、上記ソース・インタレスト・リストの全てではなく、上記ソース・インタレスト・リストと上記ソース状態との間の差異を、上記ホストにルートされるマルチキャスト・ソースのセットを変更するマルチキャスト・ルーティング・プロトコルに提供する。
【０００９】
本発明の一実施形態は、ソース状態情報を要求する効率的な通信によって、マルチキャスト・ルーティングの計算及び／又は帯域要求を低減するネットワーク・エレメントを含む。上記ネットワーク・エレメントは、ネットワークを介してホストからソース・インタレスト・リストを受信する修正ホスト・マネジメント・プロトコル部を含む。上記ソース・インタレスト・リストは、少なくとも１つのマルチキャスト・ソースが、上記ホストへのルーティングにおいて除外されるべき又は含まれるべきであることを特定する。上記修正ホスト・マネジメント・プロトコル部は、上記ソース・インタレスト・リストと、上記修正ホスト・マネジメント・プロトコル部により維持されるソース状態との間の差異を特定する。上記ソース状態は、少なくとも１つのマルチキャスト・ソースがホストから除外されることを示すエクスクルード状態と、少なくとも１つのマルチキャスト・ソースが前記ホストに提供されることを示すインクルード状態との少なくともいずれかを含む。上記修正ホスト・マネジメント・プロトコル部は、前記ソース・インタレスト・リストと前記ソース状態との間の前記差異を、前記ホストにルートされるべきマルチキャスト・ソースの前記セットを変更するマルチキャスト・ルーティング・プロトコルに送信する。
【図面の簡単な説明】
【００１０】
本発明は、一例として、限定されるものではなく、参照符号が類似の要素を示すような添付の図面の形態において描かれる。本開示において、“ａｎ”または“ｏｎｅ”実施形態についての異なる言及は、必ずしも同じ実施形態にかかるとは限らず、そのような言及は少なくとも１つを意味する。さらに、特定の機能、構造、又は特徴は一実施形態に関連して述べられるとき、それは他の実施形態との関連でこのような機能、構造、又は特徴を達成するのに当業者の知識の範囲内であることが言われているか否かは明示的に記述されていない。
【図１】修正ホスト・マネジメント及びマルチキャスト・ルーティングのためのネットワークの一実施形態を示す図である。
【図２】ソース・インタレスト・リスト処理についての工程の一実施形態を示すフローチャートである。
【発明を実施するための形態】
【００１１】
続く記述において、多くの特定の詳細が示される。しかしながら、本発明の実施形態は、これらの特定の詳細に関わらず実施されうると理解される。他の例において、よく知られた回路、構造、及び技術は、この記述の理解を不明瞭にしないために詳細には示されていない。しかしながら、当業者によって、本発明がそのような特定の詳細に関わらず実施されることは好ましい。当業者は、含まれる記述を用いて、過度な実験なしで適切な機能を実装することができる。
【００１２】
フローダイアグラムの動作は、図１の例示的な実施形態を参照して記述されるだろう。しかしながら、フローダイアグラムの動作は、図１を参照しながら説明した以外の本発明の実施形態で実装することができ、図１を参照して説明した実施形態は、フローダイアグラムを参照して説明された動作以外の動作を実行しうることは理解されるべきである。
【００１３】
図示される技術は、コード及び記憶されたデータを用いて実装され、１又は複数の電子機器（例えばエンド・ステーション、ネットワーク・エレメントなど）上で実行されうる。そのような電子機器は、コンピュータが読取り可能な記憶メディア（例えば磁気ディスク、光学ディスク、ＲＡＭ、ＲＯＭ、フラッシュメモリデバイス、又は相変化メモリ）のようなコンピュータが読取り可能なメディアを用いて、例えばコード及びデータを記憶し（内部的に及び／又はネットワークを介して他の電子機器と）通信する。加えて、そのような電子機器は、典型的には、１又は複数のストレージデバイス、ユーザ入出力デバイス（例えばキーボード、タッチスクリーン、及び／又はディスプレイ）及びネットワークコネクションのような、１又は複数の他のコンポーネントと連結される１又は複数のプロセッサを含む。プロセッサと他のコンポーネントのセットの連結は、典型的には１又は複数のバス及びブリッジ（バスコントローラとも呼ばれる。）を通じて行われる。ストレージデバイス及びネットワークトラフィックを運ぶシグナルは、それぞれ１又は複数のコンピュータに読取り可能なストレージメディア及びコンピュータに読取り可能な通信メディアのそれぞれを示す。かくして、前記電子機器のストレージデバイスは、典型的には、その電気機器の１又は複数のプロセッサのセット上で実行するためのコード及び／又はデータを記憶する。もちろん本発明の一実施形態の１又は複数の部分は、ソフトウェア、ファームウェア、及び／又はハードウェアの異なる組合せを用いて実装されてもよい。
【００１４】
本明細書では、ネットワーク・エレメント（例えばルータ、スイッチ、ブリッジなど）は、ネットワーク上の他の装置（例えば他のネットワーク・エレメント、エンド・ステーションなど）と通信可能に相互接続されたハードウェア及びソフトウェアを含むネットワーク機器の一部である。いくつかのネットワーク・エレメントは、多重ネットワーク機能（例えば、ルーティング、ブリッジング、スイッチング、レイヤ２アグリゲーション、セッション境界制御、及び／又は加入者管理、マルチキャスト・ルーティング、ＩＰＴＶ）のサポートを提供する及び／又は多重アプリケーションサービス（例えばデータ、音声、及び動画）のサポートを提供する“マルチプル・サービス・ネットワーク・エレメント”である。加入者エンド・ステーション（例えばサーバ、ワークステーション、ラップトップ、パームトップ、モバイルフォン、スマートホン、マルチメディアホン、ＶＯＩＰホン、ポータブルメディアプレイや、ＧＰＳユニット、ゲームシステム、セットトップボックス（ＳＴＢｓ）など）は、インターネットを介して提供されるコンテンツ／サービス及び／又はインターネット上にオーバーレイされる仮想プライベートネットワーク（ＶＰＮｓ）上に提供されるコンテンツ／サービスにアクセスする。コンテンツ及び／又はサービスは、典型的にはサービス又はコンテンツプロバイダに属する１又は複数のエンド・ステーション（例えばサーバ・エンド・ステーション）又はピア・トゥー・ピアに参加するエンド・ステーションによって提供され、パブリックウェブページ（フリーコンテンツ、店頭、検索サービスなど）、プライベート・ウェブページ（例えばユーザネーム／パスワードでアクセスされるＥメールサービスを提供するウェブページなど）、ＶＰＮｓ上のコーポレートネットワーク、ＩＰＴＶチャンネル又はソースなどを含む。典型的には、加入者エンド・ステーションは、他のエンド・ステーション（例えばサーバ・エンド・ステーション）と（例えば１又は複数のコアネットワーク・エレメントを通して他のエッジ・ネットワーク・エレメントに）連結されるエッジ・ネットワーク・エレメント（例えばアクセスネットワーク（有線又は無線）に連結される顧客宅内装置）に連結される。
【００１５】
本発明の一実施形態は、従来技術の有する欠点：ホストがすでに受信したソースを含むメッセージを送信するときそれぞれにおける情報処理の重複、ソース情報を送信するときの２つのリスト（すなわちインクルード・リスト及びエクスクルード・リスト）の生成、ソースリストのサイズが大きいことに起因するスケーリング不良、大きなソースリストを繰り返し送信することによる、サービス拒否攻撃に対する脆弱性、システムにおける遅延を誘導する、遅い処理時間、及び長いザッピングタイム（すなわちソース間を変更するために要する時間）を回避するためのシステム、ネットワーク、及び方法を提供する。
【００１６】
本発明の一実施形態は、ホストから受信するソース・インタレスト・リストとネットワーク・エレメントにおけるソース状態との間の差異を特定することにより、これらの欠点を克服する。ソース・インタレスト・リストとソース状態との間の差異だけが、マルチキャスト・ルーティング・プロトコルに提供される。これは、以下の利点：回避処理及び重複情報の送信又は共有のためのより効率的な処理、ただ１つの小さなソース・インタレスト・リストを処理に提供することによる、マルチキャスト・ルーティング・プロトコルのための簡略化された処理、ソース状態とソース・インタレスト・リスト情報の間の差異のみを処理することに起因するスケーラビリティ、冗長なソース・インタレスト・リストを無視することにより可能となった拡張されたセキュリティ、全ネットワークに起因する改善されたザッピングタイム、及びシステム効率化を提供する。
【００１７】
図１は、修正（ｍｏｄｉｆｉｅｄ）ホスト・マネジメント及びマルチキャスト・ルーティングのためのネットワークの一実施形態を示す図である。ネットワークは、ソース１０１のセットと、マルチキャスト・サブ・ネットワーク１１３Ａ−１１３Ｃを含むマルチキャスト・ネットワークと、マルチキャスト・ルータ１０３と、Ｌ２ネットワーク・エレメント１０９と、セットトップボックス１１７と、類似のコンポーネントを含む。ここで用いられる“セット”は、１つのアイテムを含むいかなる正の数のアイテムを示す。システムのコンポーネントをつなぐマルチキャスト・サブ・ネットワーク１１３Ａ−１１３Ｃは、異なるネットワークであってよく、同じネットワークの異なる側面であってもよく、又はこれらの組合せであってもよい。マルチキャスト・サブ・ネットワーク１１３Ａ−１１３Ｃは、ローカル・エリア・ネットワーク（ＬＡＮｓ）、ワイド・エリア・ネットワーク（ＷＡＮｓ）、インターネットのようなネットワーク、又は類するネットワークであってよい。マルチキャスト・サブ・ネットワーク１１３Ａ−１１３Ｃは、有線又は無線のネットワーク・エレメントと、エンド・ステーションと、ネットワーク・エレメント及びエンド・ステーションの間の通信ラインのいかなる組合せをも含みうる。
【００１８】
ＳＴＢｓ１１７は、ユーザへのソースデータの配信を管理するためのいかなる種類のホストデバイスであってもよい。ＳＴＢの一例は、インターネット・プロトコル・テレビジョン（ＩＰＴＶ）をユーザに配信するためのコンソール・デバイスである。ＳＴＢｓ１１７は、コンソール・デバイス、ゲームデバイス、デスクトップ、ワークステーション、デジタル・ビデオ・レコーダ（ＤＶＲｓ）、光学ディスク再生デバイス（例えばＤＶＤプレイヤ）、ハンドヘルド・デバイス、セルラーホン、及び類似のコンピュータ・デバイスを含み得る。これらのデバイスは、ソフトウェアを実行し、又はユーザ体験を管理し、多数のデータソース１０１のための要求を生成するハードウェア・コンポーネントを含む。
【００１９】
これらのＳＴＢｓ１１７又はホストは、ユーザにとって興味のあるソースのリスト又は修正ホスト・マネジメント・プロトコル（ＨＭＰ）を実行するネットワーク・エレメントに送信される“ソース・インタレスト・リスト”を生成する。１つの実施形態において、これらのソース・インタレスト・リストは、ＳＴＢ１１７がインクルード・リスト又はエクスクルード・リストの形で要求する全てのソースのフルセットを含む。他の実施形態において、ＳＴＢ１１７から受信されるソース・インタレスト・リストは、そのソース・インタレストに対する変更を反映するだけでよい。インクルード・リストは、ＳＴＢ１１７がＳＴＢ１１７に送信するように要求しているソースのセットである。エクスクルード・リストは、ＳＴＢ１１７がＳＴＢ１１７に送信しないように要求しているソースのセットである。リストがＳＴＢ１１７によって送信されるたびに、それは、新しいソースのリスト又は全てのユーザ入力又はその時点までに受信した設定を反映した完全なリストであってよい。メッセージのフォーマットは、インターネット・グループ・マネジメント・プロトコル（ＩＧＭＰ）又はマルチキャスト・リスナー・ディスカバー（ＭＬＤ）、又はホスト情報をマルチキャスト・ネットワーク・エレメントに運ぶ類似のいかなるプロトコルのフォーマットであってもよい。これらのメッセージは、マルチキャスト・サブ・ネットワーク１１３Ｃを介して、Ｌ２ネットワーク・エレメント１０９又はマルチキャスト・ルータ１０３に送信されうる。
【００２０】
本発明は、ＳＴＢｓ１１７がマルチキャスト・ルータ１０３又は類似のネットワーク・エレメント上で修正ＨＭＰ１０７と直接通信する実施形態を含む代わりの実施形態をも包含する。他の実施形態において、本発明は、修正ＨＭＰ１１５がＳＴＢｓ１１７から受信したソース・インタレスト・リストを処理する少なくとも１つのＬ２ネットワーク・エレメント１０９を含む。
【００２１】
Ｌ２ネットワーク・エレメント１０９が存在するマルチキャスト・ネットワークの実施形態において、Ｌ２ネットワーク・エレメント１０９上の修正ＨＭＰ１１５は、ホストのそれぞれから受信したそれぞれのメッセージを処理し、それぞれのＳＴＢ１１７についてソース・インタレスト・リストに基づいてソース状態を保持する。ＳＴＢｓ１１７から受信するメッセージの処理は、以下に図２を参照しながらさらに詳細に述べられる。修正ＨＭＰ１１５は、受信したソース・インタレスト・リストと保持される（ｍａｉｎｔａｉｎｅｄ）ソース状態との間の差異を特定する。修正ＨＭＰ１１５は、そしてこの情報を、リモート修正ＨＭＰ１０７を通ってリモートＭＲＰ１０５に送信するメッセージを生成することによって、又はローカルＭＲＰ又はＬ２スヌーパー１１１の（例えば、アプリケーションプログラミングインタフェース（ＡＰＩ）の）ファンクション又はメソッドを呼び出すことによってマルチキャスト・ルーティング・プロトコルに提供する。
【００２２】
メッセージ又はコールは、マルチキャスト・ルーティングをアップデートするための要求されるコンピュータリソースと帯域を最小化するために、ソース・インタレスト・リストの全ての代わりに状態又はソースの差異のみを伝える。ＭＲＰは、受信したソース・インタレスト・リストの変化に従った様々なソース１０１から、マルチキャスト・ルーティングをアップデートする。ＭＲＰは、プロトコル・インディペンデント・マルチキャスト（ＰＩＭ）、ＰＩＭスパース・モード、及び類似するＭＲＰｓを含むいかなるマルチキャスト・ルーティング・プロトコルであってもよい。
【００２３】
修正ＨＭＰ１１５及びＭＲＰ又はＬ２ネットワーク・エレメント１０９上に存在するＬ２スヌーパー１１１は、修正ＨＭＰ１０７及びマルチキャスト・ルータ１０３上に存在するＭＲＰ１０５と同様に、ネットワーク・エレメント１０９、ネットワーク・エレメント１０３それぞれの、ラインカード、コントロールカード、ネットワークプロセッサ、又は類似する処理コンポーネントにより実行される手順の形態のソフトウェア・コンポーネントとして実装されうる。他の実施形態においては、これらのエレメントは、ファームウェア又はハードウェア・コンポーネントとして実装される。
【００２４】
ソース状態情報は、マルチキャスト・サブネット１１３Ｃ上のネットワーク・エレメントと接続される全てのＳＴＢｓ１１７の集合として、それぞれのＳＴＢ又は同様にトラッキングされる情報と別途の情報としてトラッキングされうる。同様に、ソース状態情報は、ソース識別子のセット、ソースアドレス、又は特定のソースをマルチキャスト・ネットワーク中において識別するために十分な類似する情報のセットとしてトラッキングされうる。ソース状態は、それぞれのホストから除外されるソースとそれぞれのホストに含まれるソースとを区別するようにトラッキングするように、又は両方を完全にトラッキングするように実装されうる。ソース状態は、それぞれのＳＴＢｓ１１７と、複数のＳＴＢをまとめてとの両方をトラッキングされうる。１つの実施形態においては、ソース状態は、特定のサブネットワーク１１３Ｃについてまとめてトラッキングされ、複数のサブネットワークがこの方法でサポートされうる。
【００２５】
Ｌ２ネットワーク・エレメント１０９が存在するマルチキャスト・ネットワークにおいて、しかしＭＲＰ１０５は、マルチキャスト・ルータ１０３上においてしか示されず、特定されたソース差異を含むメッセージは、マルチキャスト・サブ・ネットワーク１１３Ｂ上を、マルチキャスト・ルータ１０３上に示される修正ＨＭＰ１０７に送信される。メッセージは、修正ＨＭＰローカルからマルチキャスト・ルータ１０３によって扱われるＩＧＭＰ又はＭＬＤに従った標準的なメッセージフォーマット、又は修正されたメッセージフォーマット中にあるかもしれない。修正ＨＭＰ１０７は、受信したメッセージを処理し、受信したソース・インタレスト・リストを変更するために（例えばＡＰＩのファンクション又はメソッドを通じて）ＭＲＰ１０５を呼び出す。更新されたソース・インタレスト・リストの受領後、ＭＲＰは、要求されたデータをソース１０１からＳＴＢｓ１１７にマルチキャスト・サブ・ネットワーク１１３Ａ上で提供するために、ルーティング・テーブルを更新する。
【００２６】
Ｌ２ネットワーク・エレメント１０９は、修正ＨＭＰと、スヌーパーを実行することのできるいかなる種類のネットワーク・エレメント、提供された修正ＨＭＰ、又はファーウェア又はハードウェア又はこれらの組合せ中に実装されたスヌーパーであってもよい。Ｌ２ネットワーク・エレメント１０９は、多くのＳＴＢｓ１１７又はいかなる種類のネットワーク・プロトコルを用いるホストをサポートしうる。マルチキャスト・ネットワークは、ＳＴＢｓ１１７に平行してサービスするように動作する多くのＬ２ネットワーク・エレメント１０９を含みうる。
【００２７】
マルチキャスト・ルータ１０３は、ＭＲＰを通してマルチキャスト・ルーティングを実装するネットワーク・エレメントである。マルチキャスト・ルータ１０３は、ＭＲＰ１０５と修正ＨＭＰ１０７とを実装することのできるいかなる種類のネットワーク・エレメントであってよい。マルチキャスト・ルータ１０３は、いかなるタイプのネットワーキング・プロトコルを用いて、複数のＳＴＢｓ１１７又はホスト、ソース１０１又はＬ２ネットワーク・エレメント１０９をサポートする。マルチキャスト・システムは、ＳＴＢｓ１１７とソース１０１にサービスするために平行して動作する複数のマルチキャスト・ルータ１０３を含みうる。
【００２８】
ソース１０１は、複数のエンド・ステーション・サーバによって提供されるいかなる種類のデータソースであってもよい。データソース１０１は、ストリーミング又はスタティックなデータソースであってよい。提供されるデータは、ＩＰＴＶデータ又はマルチキャスティングに適した類似のソースであってよい。これらのサービスを提供するサーバは、これらのソースデータをマルチキャスト・サブ・ネットワーク１１３Ａ−１１３Ｃを含むマルチキャスト・ネットワークを介してホストに送信するためにいかなるマルチキャスト・ルーティング・プロトコルをも利用することができる。ソース１０１を提供するサーバは、専用のサーバマシーン、デスクトップ、ワークステーション、又は類似するコンピュータ・デバイスを含む、いかなる種類のコンピュータ・デバイスであってよい。
【００２９】
図２は、ソース・インタレスト・リスト処理のための動作の一実施形態のフローチャートである。この処理は、修正ＨＭＰを実行するネットワーク・エレメント及び／又はＭＲＰを実装するデバイスにおいて主に実装される。処理は、ホスト（例えばＳＴＢｓ）、修正ＨＭＰ、及びＭＲＰを含むそれぞれ初期化されたマルチキャスト・ネットワークのコンポーネントのそれぞれと、Ｌ２ネットワーク・エレメント、マルチキャスト・ルータ、及び関連する装置を含むマルチキャスト・ネットワーク中の関連するネットワーク・エレメントと相互作用しあう。処理は、継続的に実行され、ホストにおけるソース・インタレスト・リストの生成及びこのソース・インタレスト・リストの修正ＨＭＰを実行するネットワーク・エレメントにおける受信により引き起こされる（ブロック２０１）。ソース・インタレスト・リストは、ホストによって定期的に生成されてよく、又は、ユーザが要求する新たなソースを特定するユーザインタラクションに応じて生成されてもよい。
【００３０】
ソース・インタレスト・リストは、Ｌ２ネットワーク・エレメント又はマルチキャスト・ルータの両方に実装される修正ＨＭＰに送信される。修正ＨＭＰは、ソース・インタレスト・リストを分析し、これがインクルード・リスト（すなわち、ホストがホストに送信することを要求するソースそれぞれを示すソース・インタレスト・リスト）であるか否かを特定する（ブロック２０３）。他の実施形態においては、ソース・インタレスト・リスト及びソース状態は、効果的なインクルード・リスト又はエクスクルード・リストとして実装されてもよい。当業者は、これらはここで記述される処理のサブセットであることを理解するだろう。
【００３１】
もしソース・インタレスト・リストがインクルード・リストでないとき、そしてリストはエクスクルード・リスト（すなわち、ホストが受信することを望まないソースそれぞれを示すソース・インタレスト・リスト）であると知ることができる。修正ＨＭＰは、これらに差異があるか否かを特定するために、そして受信したソース・インタレスト・リストを、修正ＨＭＰによって保持されたエクスクルードソース状態と比較する（ブロック２０７）。もし受信したエクスクルード・リストと、保持しているエクスクルード・リストとの間に差異がない場合には、アクションは要求されず、処理は、次にソース・インタレスト・リストが受信されるまで待機する（ブロック２０１）。
【００３２】
しかしながら、もし受信したエクスクルード・リストと修正ＨＭＰにより保持されるエクスクルード状態との比較が差異を明らかにしたとき、修正ＨＭＰが比較を実行している間に、修正ＨＭＰは、同じデバイス上にＭＲＰが存在するか否かを特定する（ブロック２１１）。もし同じデバイス上にＭＲＰが存在したとき、修正ＨＭＰは、受信したエクスクルード・リストと現在のエクスクルード状態との間の差異をファンクション又はメソッドコール又は類似する処理を介して、ＭＲＰに送信する（ブロック２１３）。ファンクション又はメソッドコールは、アプリケーション・プログラミング・インタフェース（ＡＰＩ）又は類似するインタフェースを通じて行われる。ＭＲＰへの変更を提供することは、ブロック２１９の処理においてソース・インタレスト・リストを取り扱うことによって完成し、処理は、次のソース・インタレスト・リストの受信を待つ（ブロック２０１）。
【００３３】
もしＭＲＰが修正ＨＭＰと同じデバイス上に存在しなかったとき、修正ＨＭＰは、マルチキャスト・ルータ又は類似する位置上のＭＲＰに送信するメッセージを準備する（ブロック２１５）。メッセージは、受信したエクスクルード・リストと修正ＨＭＰにより保持されるエクスクルード状態との間の差異を提供する。全てのケースにおいて、修正ＨＭＰは、受信したエクスクルード・リストを反映するように、保持された状態を更新する。ＨＭＰメッセージは、標準的なＨＭＰ又は修正ＨＭＰメッセージであってよい。メッセージが送信されたのち、受信されたソース・インタレスト・リストの処理は完了し（ブロック２１９）、処理は、次のソース・インタレスト・リストの受信を待機する（ブロック２０１）。
【００３４】
もし受信したソース・インタレスト・リストがインクルード・リスト（すなわち、ホストが受信することを望むソースであることを示すソース・インタレスト・リスト）であったとき、修正ＨＭＰは、受信したソース・インタレスト・リストと保持されたインクルード・ソース状態とを比較する（ブロック２０５）。もし受信したソース・インタレスト・リストと修正ＨＭＰにより保持されたインクルード・ソース状態との間に差異がないとき、何のアクションもとられず、処理は、次のソース・インタレスト・リストが受信されるのを待機する（ブロック２０１）。
【００３５】
もし比較が、受信したソース・インタレスト・リストと保持されたインクルード・ソース状態との間の差異を明らかにしたとき、修正ＨＭＰは、現在のネットワーク・エレメント上にＭＲＰが存在するか否かを特定する（ブロック２１７）。もしＭＲＰが現在のネットワーク・エレメント上に存在するとき、修正ＨＭＰは、受信したソース・インタレスト・リストと保持されたインクルード・ソース状態との間の差異を、ファンクション又はメソッドコールを通じて（例えば、ＡＰＩのメソッド又はファンクション）ＭＲＰ又は類似するメカニズムに送信する(ブロック２０９)。もしＭＲＰが修正ＨＭＰと同じネットワーク・エレメント上にないとき、修正ＨＭＰは、標準又は修正ＨＭＰフォーマット中にメッセージを生成する。ＨＭＰメッセージは、そしてマルチキャスト・ルータに送信される（ブロック２１５）。差異がＭＲＰに提供されたのち、受信されたソース・インタレスト・リストの処理は終了する（ブロック２１９）。処理は、そして他のソース・インタレスト・リストの受信を待機する（ブロック２０１）。インクルード・ソース状態は、受信されたソース・インタレスト・リストの変更を反映するように、２つの比較の間に更新される。
【００３６】
かくして、ホストプロトコル・マネジメントのための方法、システム、及び装置が記述された。上記の記述は、説明を意図したものであり、限定的でないことは理解されるだろう。多くの他の実施形態が、当業者によって、上記の記述を読み理解することによって明確である。本発明の範囲は、したがって、権利化されたクレームと同等な全ての範囲とともに、添付の特許請求の範囲によって特定される。
【図１】
2012533959.tif 000003
【図２】
2012533959.tif 000004
【国際調査報告】
2012533959.tif 000005
2012533959.tif 000006
2012533959.tif 000007