(57)【要約】  本発明の実施形態は、パケット交換ネットワークでユニキャストトンネルを介して到達可能な送信元へのＰＩＭツリーを確立することを目的とする。有利には、ネットワークのコアに送信元への到達性がない場合には、逆行経路転送（ＲＰＦ）ベクトルＴＬＶを使用してＰＩＭツリーを確立してもよい。
2016511964.tif 000002
【特許請求の範囲】
【請求項１】
パケット交換ネットワーク内にプロトコル非依存マルチキャストツリーを確立する方法であって、
ネットワーク内の第１のノードにおいて、
マルチキャストグループの送信元ノードを示すｊｏｉｎメッセージを受信するステップと、
送信元ノードへの経路を検索するステップと、
第１のノードが経路沿いの第１のネクストホップノードとの隣接性をもつか決定するステップと、
第１のノードが第１のネクストホップノードとの隣接性をもつことに応じて第１のネクストホップノードにｊｏｉｎメッセージを転送するステップとを含む、方法。
【請求項２】
第１のノードが第１のネクストホップノードとの隣接性をもたないことに応じて、
第１のネクストホップノードを通る送信元ノードへの代替経路上に第２のネクストホップを見つけるために、第１のネクストホップノードの再帰的ネクストホップ解決を実行するステップと、
代替経路を見つけたことおよび第２のネクストホップとの隣接性をもつことに応じて、第２のネクストホップノードにｊｏｉｎメッセージを転送するステップとをさらに含む、請求項１に記載の方法。
【請求項３】
第１のノードコンフィギュレーションに基づいて、かつ／または再帰的ネクストホップ解決を実行する動作に応じて、
第１のネクストホップノードを示す逆行経路転送ベクトルを含むようにｊｏｉｎメッセージを修正するステップと、
第１のネクストホップノードの再帰的ネクストホップ解決の実行時に見つかった第２のネクストホップノードに、修正されたｊｏｉｎメッセージを転送するステップとをさらに含む、請求項２に記載の方法。
【請求項４】
決定するステップが、経路がユニキャストトンネルを使用するか決定するステップをさらに含む、請求項１から３のいずれか一項に記載の方法。
【請求項５】
実行するステップが、トンネルを使用しない代替経路を見つけるステップをさらに含む、請求項４に記載の方法。
【請求項６】
ｊｏｉｎメッセージを受信するステップが、送信元特定マルチキャストｊｏｉｎメッセージを受信するステップをさらに含む、請求項１から５のいずれか一項に記載の方法。
【請求項７】
送信元ノードにおいて、
ｊｏｉｎメッセージを受信して、ｊｏｉｎメッセージの発信元ノードをマルチキャストグループに追加するステップをさらに含む、請求項１から６のいずれか一項に記載の方法。
【請求項８】
第２のネクストホップノードにおいて、
修正されたｊｏｉｎメッセージを受信するステップと、
逆行経路転送ベクトルのネクストホップ解決を実行するステップと、
ネクストホップ解決の実行時に見つかった第３のネクストホップノードに、修正されたｊｏｉｎメッセージを転送するステップとをさらに含む、請求項３に記載の方法。
【請求項９】
パケット交換ネットワーク内にプロトコル非依存マルチキャストツリーを確立する方法であって、
ネットワーク内のノードにおいて、
マルチキャストグループの送信元ノードを示し、逆行経路転送ベクトルを含むｊｏｉｎメッセージを受信するステップと、
逆行経路転送ベクトルが前記ノードのアドレスを指定しているか決定するステップと、
ｊｏｉｎメッセージから逆行経路転送ベクトルを削除するステップと、
送信元ノードへの経路を検索するステップと、
送信元ノードへの経路沿いのネクストホップノードにｊｏｉｎメッセージを転送するステップとを含む、方法。
【請求項１０】
データパケットトラフィックを受信および送信するためのインタフェースと、
インタフェースに結合されたプロセッサと、
プロセッサに結合され、ルーティング情報を含むメモリと、
メモリに記憶されたコンピュータ読み取り可能な命令のプログラムとを含むネットワークノードであって、
プログラムがプロセッサによって実行されたときに、ネットワークノードが、
マルチキャストグループの送信元ノードを示すｊｏｉｎメッセージをインタフェースを介して受信し、
メモリ内で送信元ノードへの経路を検索し、
第１のノードが経路沿いの第１のネクストホップノードとの隣接性をもつか決定し、
第１のノードが第１のネクストホップノードとの隣接性をもつことに応じて、第１のネクストホップノードにｊｏｉｎメッセージを転送するよう動作可能になる、ネットワークノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トンネリングされたネットワーク内のマルチキャスティングを対象とする。
【背景技術】
【０００２】
プロトコル非依存マルチキャスト（ＰＩＭ）は、マルチキャストルーティングプロトコルの集合である。主要なＰＩＭプロトコルの１つは、ＰＩＭスパースモード（ＰＩＭ−ＳＭ）である。ＰＩＭ−ＳＭは、ネットワーク全体に疎に分布するマルチキャストグループに適する。ＰＩＭ−ＳＭを使用してマルチキャストデータを受信するには、ルータが、特定のグループおよび送信元に参加するための要求を上流のネイバールータに送信する必要がある。ルータは、ＰＩＭ  ｊｏｉｎメッセージを使用してマルチキャスト配布ツリーに参加し、ＰＩＭ  Ｐｒｕｎｅメッセージを使用してツリーから離脱する。
【０００３】
ＰＩＭ−ＳＭは送信元ベースのツリーの使用に対応しており、送信元ベースのツリーでは、マルチキャストグループにデータを送信する送信元のそれぞれについて、個別のマルチキャスト配布ツリーが構築される。送信元ベースのツリーのそれぞれは送信元に隣接するルータを起源とし、このルータはツリーのルートにデータを直接送信する。送信元ベースのツリーでは、送信元特定マルチキャスト（ＳＳＭ）の使用が可能になる。ＳＳＭでは、ホストは、送信元（Ｓ）とグループ（Ｇ）のアドレスペア（Ｓ、Ｇ）によってｊｏｉｎメッセージ内のマルチキャストデータストリームを識別する。
【０００４】
マルチキャストツリーの送信元に到達するためのネクストホップが単方向トンネルを介して到達可能である場合は、送信元ベースのツリーの設定時に問題が発生することがある。この問題は、ＳＳＭ  ｊｏｉｎを要求しているホストとｊｏｉｎメッセージ内で指定される送信元との間の経路の一部が、内部ゲートウェイプロトコル（ＩＧＰ）ショートカットに重なる場合に発生することがある。例えば、ネクストホップが単方向トンネルの遠端にあるルータである可能性がある。この場合、ＰＩＭはネクストホップアドレスにあるルータとネイバー関係を設定できないので、ＰＩＭはツリーを確立することができない。その理由は、ＰＩＭがそのルータとネイバー関係を設定するためには双方向トンネルを必要とするからである。
【０００５】
前述の問題の１つの解決策は、開放型最短経路優先（ＯＳＰＦ）および中間システム−中間システム（ＩＳＩＳ）などのＩＧＰプロトコルにＩＧＰショートカット経路を完全に解決させ、直近のネクストホップを提供させることである。しかし、ネットワークのコアがマルチキャストツリーの送信元に到達する経路をもたない場合には、この解決策は機能しない。そのような経路が存在する場合には、この解決策は機能するはずだが、すでにＩＧＰプロトコルのための経路計算を実行するなどの重要な需要がある資源を利用するので不利になり得る。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
したがって、送信元ベースのマルチキャストツリーを確立するための効率的で信頼性の高い方法が望まれる。
【課題を解決するための手段】
【０００７】
本発明の実施形態では、単方向トンネルの端点ノードを通じたＰＩＭマルチキャストツリーの確立が可能になる。マルチキャストツリーのノードは、単方向トンネルのノードと重なり合ってもよいし、重なり合わなくてもよい。
【０００８】
本発明の一態様によれば、トンネリングされたネットワーク内にＰＩＭマルチキャストツリーを確立する方法が提供される。方法は、ネットワーク内の第１のノードにおいて、マルチキャストグループの送信元ノードを示すｊｏｉｎメッセージを受信するステップと、送信元ノードへの経路を検索するステップと、第１のノードが経路沿いの第１のネクストホップノードとの隣接性をもつか決定するステップと、第１のノードが第１のネクストホップノードとの隣接性をもつことに応じて第１のネクストホップノードにｊｏｉｎメッセージを転送するステップとを含む。第１のノードが経路沿いの第１のネクストホップノードとの隣接性をもつか決定するステップは、経路がユニキャストトンネルを使用するか決定するステップを含んでもよい。
【０００９】
さらに、方法は、第１のノードが単方向トンネル経路を使用することおよび第１のネクストホップノードとの隣接性をもたないことに応じて、第１のネクストホップノードを通る送信元ノードへの代替経路上に第２のネクストホップを見つけるために、第１のネクストホップノードの再帰的ネクストホップ解決を実行するステップと、代替経路を見つけたことおよび第２のネクストホップとの隣接性をもつことに応じて、第２のネクストホップノードにｊｏｉｎメッセージを転送するステップとを含んでもよい。さらに、この方法は、ノードコンフィギュレーションに基づいて、かつ／または再帰的ネクストホップ解決を実行する動作に応じて、第１のネクストホップノードを示す逆行経路転送ベクトルを含むようにｊｏｉｎメッセージを修正するステップと、第１のネクストホップノードの再帰的ネクストホップ解決の実行時に見つかった第２のネクストホップノードに、修正されたｊｏｉｎメッセージを転送するステップとを含んでもよい。再帰的ネクストホップ解決を実行するステップは、トンネルを使用しない代替経路を見つけるステップを含んでもよい。
【００１０】
本発明の別の態様によれば、ネットワークノードが提供される。ネットワークノードは：データパケットトラフィックを受信および送信するためのインタフェースと、インタフェースに結合されたプロセッサと、プロセッサに結合され、ルーティング情報を含むメモリと、メモリに記憶されたコンピュータ読み取り可能な命令のプログラムとを含む。プログラムがプロセッサによって実行されたときに、ネットワークノードが：マルチキャストグループの送信元ノードを示すｊｏｉｎメッセージをインタフェースを介して受信し、メモリ内で送信元ノードへの経路を検索し、第１のノードが経路沿いの第１のネクストホップノードとの隣接性をもつか決定し、第１のノードが第１のネクストホップノードとの隣接性をもつことに応じて、第１のネクストホップノードにｊｏｉｎメッセージを転送するよう動作可能になる。第１のノードが経路に沿った第１のネクストホップとの隣接性をもつか決定する機能は、経路が単方向トンネルを使用するかの決定を含んでもよい。
【００１１】
さらに、プログラムがプロセッサによって実行されたときに、ネットワークノードがさらに、第１のノードが単方向トンネル経路を使用することおよび第１のネクストホップノードとの隣接性をもたないことに応じて、第１のネクストホップの再帰的ネクストホップ解決を実行して第１のネクストホップノードを通る送信元ノードへの間接的な代替経路上に第２のネクストホップを見つけ、代替経路を見つけたことおよび第２のネクストホップへの隣接性をもつことに応じて、第２のネクストホップにｊｏｉｎメッセージを転送するよう動作可能になってもよい。さらに、プログラムがプロセッサによって実行されたときに、ネットワークノードがさらに、ノードコンフィギュレーションに依存して、かつ／または再帰的ネクストホップ解決を実行する動作に応じて、第１のネクストホップノードを示す逆行経路転送ベクトルを含むようにｊｏｉｎメッセージを修正し、第１のネクストホップノードの再帰的ネクストホップ解決の実行時に見つかった第２のネクストホップノードに、修正されたｊｏｉｎメッセージを転送するよう動作可能になってもよい。再帰的ネクストホップ解決を実行する機能は、トンネルを使用しない代替経路を見つけることを含んでもよい。
【００１２】
本発明のさらに別の態様によれば、ネットワークが提供される。ネットワークは、第１のネットワークノード、第２のネットワークノードおよび第３のネットワークノードを含む。第１のネットワークノードは、マルチキャストグループの送信元ノードを示すｊｏｉｎメッセージを受信し、送信元ノードへの経路を検索し、第１のネットワークノードが経路沿いの第１のネクストホップとの隣接性をもつか決定し、それ以外の場合は、第１のネクストホップノードの再帰的ネクストホップ解決を実行して、送信元ノードへの間接的な代替経路を見つけ、第１のネクストホップノードを示す逆行経路転送ベクトルを含むようにｊｏｉｎメッセージを修正し、修正されたｊｏｉｎメッセージを送信元ノードに転送するように構成される。第２のネットワークノードは、逆行経路転送ベクトルを含む修正されたｊｏｉｎメッセージを受信し、送信元ではなく逆行経路転送ベクトルのネクストホップ解決を実行し、ネクストホップ解決の実行時に見つかった第３のネクストホップに向けてｊｏｉｎメッセージを転送するように構成される。第３のネットワークノードは、逆行経路転送ベクトルを含む修正されたｊｏｉｎメッセージを受信し、そのベクトルが自身であるか決定し、逆行経路転送ベクトルを削除することによってｊｏｉｎメッセージを更新し、更新したｊｏｉｎメッセージを送信元ノードに向けて転送するように構成される。
【００１３】
有利には、本発明の実施形態では、ＩＧＰショートカットが有効になっているネットワークに存在する場合のある単方向トンネルをもつネットワーク経路を介するようＰＩＭマルチキャストツリーを設定することが可能になる。
【００１４】
前述および他の、本発明の目的、特徴および利点は、添付の図面に示されるように、下記の、好ましい実施形態のより詳細な説明によって明らかになるであろう。これらの図面で、同様の特徴は同様の参照文字によって示される。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施形態によるネットワークを示す図である。
【図２】本発明の第２の実施形態による、ＰＩＭツリーを確立する方法を示す図である。
【図３】本発明の第３の実施形態による、図１の第１のプロバイダエッジルータのアーキテクチャを示す図である。
【図４】本発明の第４の実施形態による、ＰＩＭツリーを確立する方法を示す図である。
【発明を実施するための形態】
【００１６】
ネットワーク内の単方向トンネルを介して到達可能な送信元へのＰＩＭツリーを確立するために使用することのできる機構について説明する。ユニキャストトンネルによって使用されるようなユニキャスト伝送は、１つのネットワークノードから別の単一ネットワークノードへのメッセージまたはデータグラムの伝送、つまり１対１の伝送であり、以下では、単方向であると理解されるものとする。ネットワークのコアに送信元への到達性がない場合のために、逆行経路転送（ＲＰＦ）ベクトルのタイプ、長さ、値（ＴＬＶ）パラメータを使用したＰＩＭツリーの確立についても説明する。ＲＰＦベクトルＴＬＶは、ＲＦＣ５４９６に定められている。
【００１７】
図１は、本発明の第１の実施形態によるネットワーク１０を示す。ネットワーク１０はホストノード１２を含み、ホストノード１２は本明細書でレシーバ（Ｒ）とも称し、送信元ノード１４から送信を受けるマルチキャストグループ（Ｇ）に参加する予定である。ホストノード１２は、第１のプロバイダエッジ（ＰＥ）ルータ（ＰＥ１）１６に接続されている。第２のＰＥルータ（ＰＥ２）１８は、ユニキャストトンネル２０を介して第１のＰＥルータから到達可能である。第２のＰＥルータ１８は、送信元ノード（Ｓ）１４に接続されている。第３のルータ（Ｐ）２２は、第１および第２のＰＥルータ１６、１８の間のトンネル２０沿いの中間地点にあるように、第１および第２のＰＥルータ１６、１８の両方に接続されている。
【００１８】
本明細書で、「接続されている」という用語は、当該のネットワークに物理的通信リンクによって直接結合されており、そのように接続されていると記述される２つのネットワーク間でデータパケットが双方向に伝えられるということを意味するために使用される。本明細書で、「到達性」という用語は、一般に、現在のネットワークノードから指定された別のネットワークノードへデータパケットを転送するための経路または経路に関する情報を指すために使用される。
【００１９】
いくつかのネットワークトポロジでは、マルチキャスト送信元への到達性は、ＩＧＰショートカットまたはＢＧＰトンネルなどのユニキャストトンネルを介する。例えば、ソースノード１４はユニキャストトンネル２０を介して第１のＰＥルータ１６から到達可能である。そのような経路では、トンネルの近端にあるルータから送信元に到達するためのネクストホップはトンネルの遠端のトンネル端点であろう。例えば、第２のＰＥルータ１８は第１のＰＥルータ１６からのトンネル２０を使用したネクストホップであろう。しかし、トンネルによって搬送される通信は単方向なので、ネクストホップ１８とのＰＩＭ隣接性はトンネルを介して確立できない。その結果、トンネルを使用したＰＩＭツリー設定の試みは失敗するであろう。例えば、第１のＰＥルータ１６による、トンネル２０を使用したＰＩＭツリー設定の試みは、第１のＰＥルータ１６には第２のＰＥルータ１８との隣接性がないので、失敗するであろう。
【００２０】
本発明の実施形態は、ユニキャストトンネルを介して到達可能な送信元へのＰＩＭツリーを構築するための機構を提供する。この機構は、マルチキャスト送信元ノードに向かう方向のネクストホップネットワックノードに到達するために、再帰的ネクストホップ検索に依存する。ネクストホップネットワークノードが所望のマルチキャスト送信元ノードへの到達性をもたない場合は、結果として、ネクストホップノードがＰＩＭ  ｊｏｉｎメッセージをマルチキャスト送信元ノードに伝播させられないと考えられ、この場合のために、ＲＰＦベクトルＴＬＶを使用してＰＩＭツリーの構築を支援する追加メカニズムを記載する。
【００２１】
図１を参照すると、ＰＩＭは第１および第２のＰＥルータ１６、１８ならびに第３のルータ２２において有効化される。第１および第２のＰＥルータ１６、１８はそれぞれ、第３のルータ２２とのＰＩＭ隣接性をもつ。第３のルータ２２もまた、第１および第２のＰＥルータ１６、１８とのＰＩＭ隣接性をもつ。しかし、第１および第２のＰＥルータ１６、１８は相互のＰＩＭ隣接性をもたない。ホストノード１２で、送信元ノード１４に到達するためのネクストホップは第１のＰＥルータ１６である。第１のＰＥルータ１６で、送信元ノード１４に到達するためのネクストホップは、ユニキャストトンネル２０によって提供される経路を使用して、第２のＰＥルータ１８である。
【００２２】
マルチキャスト配布ツリーを構築するために、ＰＩＭ  ｊｏｉｎメッセージが、ツリーの経路内のルータによって、マルチキャストグループの送信元に向けてホップバイホップで転送される。各ホップのルータは転送状態を作成し、送信元に向けてｊｏｉｎメッセージを伝播させる。例えば、図１を参照すると、ホストノード１２は（Ｓ、Ｇ）ｊｏｉｎメッセージ２４を第１のＰＥルータ１６に送信する。第１のＰＥルータ１６はネクストホップルータ、つまり、第２のＰＥルータ１８に（Ｓ、Ｇ）ｊｏｉｎメッセージ２４を転送する。しかし、この場合は、第１のＰＥルータ１６はネクストホップルータ（つまり第２のＰＥルータ１８）との隣接性をもたないので、ネクストホップルータはｊｏｉｎメッセージ２４を送信元ノード１４に向けて伝播させない。
【００２３】
前述した問題の既存の解決策は、ＯＳＰＦおよびＩＳＩＳなどのＩＧＰプロトコルにＩＧＰショートカット経路を完全に解決させて、直近のネクストホップを提供することである。しかし、この解決策には少なくとも２つの問題がある：まず、ＩＧＰプロトコルによって行われる最短経路優先（ＳＰＦ）計算に使用されるような重要な資源にオーバヘッドが追加される、また、ネットワークのコアがマルチキャストツリーの送信元に到達する経路をもたない場合には、この解決策は機能しない。
【００２４】
本発明の実施形態では、ＰＩＭがネクストホップで再帰し、隣接性をもつ別の直近ネクストホップを決定する。つまり、（Ｓ、Ｇ）ｊｏｉｎメッセージを転送しようとするルータは、ネクストホップルータのＩＰアドレスに再帰的ネクストホップ解決を行って、隣接性をもち、そのネクストホップルータへの経路内にある別のルータを見つける。よって、図１を参照すると、第１のＰＥルータ１６は、送信元ノード１４に到達するためには、ネクストホップを越えて再帰する必要があり、そのネクストホップは第２のＰＥルータ１８であることを決定する。この再帰は、第３のルータ２２を第１のＰＥルータ１６との隣接性をもつ最後のネクストホップとしてもたらす。よって、第１のＰＥルータ１６は、（Ｓ、Ｇ）ｊｏｉｎメッセージ２４を第３のルータ２２に伝播させ、第３のルータ２２がｊｏｉｎメッセージ２４を送信元ノード１４に向けてさらに上流に伝播させることを期待できる。
【００２５】
第３のルータ２２が送信元ノード１４への到達性をもたない場合には、別の問題が明らかになる。この場合、第３のルータ２２は（Ｓ、Ｇ）ｊｏｉｎメッセージ２４を送信元ノード１４に向けて伝播させず、単にドロップする。この問題に対処するために、本明細書では別の機構を提供する。特に、第１のＰＥルータ１６が第２のＰＥルータ１８で再帰的ネクストホップ解決を行うので、第１のＰＥルータ１６は、第２のＰＥルータ１８のアドレスで符号化されたＲＰＦベクトル属性を含むＰＩＭ（Ｓ、Ｇ）ｊｏｉｎメッセージ２６を発信することができる。したがってＲＰＦベクトル属性は、ｊｏｉｎメッセージ２６をどこに伝播させるべきかについて第３のルータ２２に指示を与える。ＲＰＦベクトル属性は、好ましくはＲＦＣ５４９６およびＲＦＣ５３８４の規則に準拠する。
【００２６】
例として、ホストノード１２が（Ｓ、Ｇ）ｊｏｉｎメッセージ２４を第１のＰＥルータ１６に送信すると考える。ｊｏｉｎを受信した後、第１のＰＥルータ１６はルーティングテーブルを検索して、送信元ノード１４に向かう経路を見つける。ルーティングテーブルが提供する経路は、ユニキャストトンネル２０を介して第２のＰＥルータ１８のネクストホップがあるトンネル経路である。そのネクストホップは第２のＰＥルータ１８との隣接性をもたないので、ＰＩＭはそのネクストホップを妥当とすることはできない。トンネル２０は単方向トンネルであることに留意されたい。隣接性が設定されるためには、双方向トンネルが必要である。経路がトンネリングされていることを前提とすると、第１のＰＥルータ１６上のＰＩＭはネクストホップで再帰して、ネクストホップ（第２のＰＥルータ１８）に到達する経路を検索する。第２のＰＥルータ１８に到達するための新しい経路は第３のルータ２２のネクストホップをもつことになる。これは直接接続されたネクストホップであり、ＰＩＭは直近ネクストホップ（第３のルータ２２）との隣接性を見つける。第１のＰＥルータ１６は、次に第３のルータ２２にｊｏｉｎメッセージ２６を発信する。コアネットワーク（この場合は、３つのルータ１６、１８および２２）が送信元ノード１４への経路を含まないようなトポロジの場合は、第１のＰＥルータ１６は、次に、（Ｓ、Ｇ）ｊｏｉｎメッセージ２６にＲＰＦベクトルを符号化して発信元（Ｓ）およびグループ（Ｇ）に発信する。ＲＰＦベクトルの中には第２のＰＥルータ１８のＩＰアドレスが符号化されて含まれる。ＲＰＦベクトルは、第３のルータ２２に、発信元ノード１４に到達するために第２のＰＥルータ１８に向けてｊｏｉｎメッセージを送信せよとの指示を与える。ＰＩＭ  ｊｏｉｎメッセージ２６は、送信元ノード１４に向かってホップバイホップで移動し、マルチキャストトラフィックが送信元ノード１４からホストノード１２へ流れ始める。
【００２７】
要約すると、ＰＩＭツリーの送信元Ｓに現在のルータから到達するための経路がユニキャストトンネルを介しており、トンネルを介さなければネクストホップに到達できないような場合は、ＰＩＭはネクストホップアドレスを再帰して、トンネルを使用しないでネクストホップに到達する経路を取得する。その経路の新しいネクストホップが現在のルータによって決定され、その新しいホップが現在のルータ上のＰＩＭがネイバー関係をもつ直近ホップとなる。現在のルータは次に、送信元ＳへのＰＩＭ  ｊｏｉｎメッセージを発信して、新しいネクストホップに送信する。さらに、新しいネクストホップがコアルータであり、コアルータが送信元Ｓへの経路をもたないようなネットワークトポロジの場合は、ネクストホップのアドレスで符号化されたＲＰＦベクトル属性がＰＩＭ  ｊｏｉｎメッセージに含まれてもよい。ＲＰＦベクトル属性は、ｊｏｉｎメッセージをどこに伝播させるべきかについての指示またはヒントをコアルータに与える。ＰＩＭ  ｊｏｉｎメッセージは送信元Ｓに向かってホップバイホップで移動し、送信元Ｓはｊｏｉｎメッセージを受信すると、送信元ＳからレシーバＲへマルチキャストトラフィックを流し始める。
【００２８】
図２は、本発明の第２の実施形態による、ＰＩＭツリーを確立する方法２００を示す。方法２００は、図１に示されるルータ１６、１８、２２などの、パケット交換ネットワーク内の１つまたは複数のルータ上で実行される。方法２００によれば、開始（２０２）後の次のステップで、図１に示されるメッセージ２４、２６のどちらかなどの（Ｓ、Ｇ）ｊｏｉｎメッセージを受信（２０４）する。方法２００を実行しているルータは次に、受信した（Ｓ、Ｇ）ｊｏｉｎメッセージで指示される送信元Ｓへの経路を検索（２０６）する。通常、ルータは送信元ＳのＩＰアドレスを使用して、そのルータのルーティングテーブル内で送信元Ｓへの経路を検索する。方法２００は次のステップで、検索で見つかった経路がユニキャストトンネルを通るか、または、ルータが経路沿いのネクストホップとネイバー関係をもたない他の経路なのかを決定（２０８）する。経路がユニキャストトンネルを通らず、ネクストホップとの隣接性をルータがもつ経路に沿っているとルータが決定した場合は、方法２００は次のステップで、経路沿いのネクストホップに（Ｓ、Ｇ）ｊｏｉｎメッセージを転送（２１４）し、その後、ルータによって実行されている方法２００は終了（２１６）する。
【００２９】
ただし、経路がユニキャストトンネルを通るか、ルータにネクストホップとの隣接性がない経路に沿っているとルータが決定（２０８）した場合は、方法２００は次のステップで、トンネル端点または、場合によってはネクストホップを再帰（２１０）する。トンネル端点（またはネクストホップ）を再帰すること（２１０）は、トンネル端点（またはネクストホップ）のＩＰアドレスの再帰的ネクストホップ解決を行って、トンネルを使用せずにトンネル端点を通る送信元Ｓへの間接的な代替経路を見つけることを意味する。代替経路は、トンネルが横断するものと同じルータまたはネットワークノードのいくつかまたはすべてを横断してもよいことに留意されたい。ただし、ｊｏｉｎメッセージを搬送するものを含むデータパケットの、代替経路を介するルーティングは、トンネルを介したデータパケットのルーティングがすでに行われているのと同様には、行われない。
【００３０】
そのような代替経路が見つかったとルータが決定（２１２）した場合は、方法２００は次のステップで、ノードコンフィギュレーションに基づいて、かつ／または再帰的ネクストホップ解決を実行する動作に応じて、ＲＰＦベクトルを送信するか決定（２１５）する。ネットワークのコアが送信元ノードへの到達性をもたないコンフィギュレーションの場合は、ネットワーク管理者は、ＰＩＭ  ＲＰＦベクトルを有効化するようノードのコンフィギュレーションを行うべきである。ＲＰＦベクトルを使用しない場合は、方法は、ネクストホップへの（Ｓ、Ｇ）ｊｏｉｎメッセージの転送（２１４）へ進む。その他の場合は、次のステップで、トンネル端点のＩＰアドレスを示すＲＰＦベクトルを含む（Ｓ、Ｇ）ｊｏｉｎメッセージを、再帰操作で見つかった新しいネクストホップネットワークノードに転送（２１８）し、その後、方法２００は終了する（２１６）。代替経路が見つからなかったとルータが決定（２１２）した場合は、（Ｓ、Ｇ）ｊｏｉｎメッセージはドロップされ（２１７）、その後、ルータによって実行されている方法２００は終了（２１６）する。
【００３１】
ルータがＲＰＦベクトルを含む（Ｓ、Ｇ）ｊｏｉｎメッセージ２６を転送（２１８）した後、メッセージ２６を受信する別のルータもまた、ＲＰＦベクトルによって示されるネットワークノード（例えば、トンネル端点）の再帰的経路検索を行ってもよいことに留意されたい。さらに、その別のルータは、別のネットワークを示す第２のＲＰＦベクトルを含む第２の（Ｓ、Ｇ）ｊｏｉｎメッセージを作成して、その第２の（Ｓ、Ｇ）ｊｏｉｎメッセージを送信元Ｓに向けて転送してもよい。
【００３２】
また、再帰操作（２１０）によって経路が見つかったか決定する（２１２）ステップおよび、ＲＰＦベクトルを含まない（Ｓ、Ｇ）ｊｏｉｎメッセージ２４を転送する（２１４）ステップは、任意選択で省略することが可能であり、その代わりに、（説明したように）ＲＰＦベクトルを含む（Ｓ、Ｇ）ｊｏｉｎメッセージ２６を転送するステップ（２１６）をすべての場合で実行することが可能であることにも留意されたい。
【００３３】
図３は、本発明の第３の実施形態による、図１の第１のＰＥルータ１６のアーキテクチャ３００を示す。第１のＰＥルータ１６のアーキテクチャ３００では、第１のＰＥルータ１６がソフトウェアプログラムをロードするか、ソフトウェアプログラムに適応することができ、そのソフトウェアプログラムは、実行されたときに、図２に関して先に説明した方法２００などのＰＩＭツリーを確立する方法を第１のＰＩルータ１６に遂行させる機械実行可能な命令を含む。
【００３４】
図３を参照すると、第１のＰＥルータ１６は、メモリ３０８と通信可能に結合されたプロセッサ３０４を備え、プロセッサ３０４がメモリ３０８からデータを読み出し、メモリ３０８にデータを書き込むことができるようになっている。データは、プログラム命令３１０、ルーティング情報３１２、および、とりわけデータパケットの形をとることができる。プログラム３１０はコンピュータ読み取り可能な命令を含み、この命令は、プロセッサ３０４によってアクセスおよび実行されたときに、第１のＰＥルータ１６に、図２に関して先に説明した方法２００などのＰＩＭツリーを確立する方法を遂行させる。また、第１のＰＥルータ１６は、前述したＰＩＭ  ｊｏｉｎメッセージ２４、２６を含むものなどのデータパケットトラフィック、ならびに、ＰＩＭツリーを介して伝えられるマルチキャストデータおよび他のタイプのデータを受信および送信するためのインタフェース３０６を含む。インタフェース３０６はプロセッサ３０４と通信可能に結合され、プロセッサ３０４がデータパケットトラフィックまたは、そこに含まれる情報をインタフェース３０６から受信し、トラフィックまたは、そこに含まれる情報をインタフェース３０６に送信できるようになっている。前述の例に関しては、ホストノード１２および第３のルータ２２は、インタフェース３０６および、場合によっては他のルータまたはネットワークノードに接続される。
【００３５】
図４は、本発明の第４の実施形態による、ＰＩＭツリーを確立する方法４００を示す。方法４００は、図１に示されるルータ１８および２２などの、パケット交換ネットワーク内の１つまたは複数のルータ上で実行される。方法４００によれば、開始（４０２）後の次のステップで、図１に示される修正されたｊｏｉｎメッセージ２６などのＲＰＦベクトルを含む（Ｓ、Ｇ）ｊｏｉｎメッセージを受信（４０４）する。方法４００を実行しているルータは次に、ＲＰＦベクトルがそのルータ自身に宛てられているか決定（４０６）する。例えば、ＲＰＦベクトルがそのルータのＩＰアドレスを指定している場合は、ルータはＲＰＦベクトルが自身に宛てられていると決定し、この場合、ルータは（Ｓ、Ｇ）ｊｏｉｎメッセージ２６からＲＰＦベクトルを削除（４０８）する。ルータは次に、送信元Ｓへの経路を検索（４１０）し、（Ｓ、Ｇ）ｊｏｉｎメッセージ（すでにＲＰＦベクトルが削除されている）を送信元Ｓへの経路沿いのネクストホップノードに転送（４１２）する。その後、方法４００は終了する（４１４）。ただし、ＲＰＦベクトルがそのルータ自身に宛てられていないとルータが決定した場合は、ルータは次に、ＲＰＦベクトルによってアドレスが指定されるノードへのルートの検索（４１６）に進む。ルータは次に、（Ｓ、Ｇ）ｊｏｉｎメッセージ２６（ＲＰＦベクトルが含まれる）を、検索（４１６）結果の経路沿いのネクストホップノードに転送（４１８）し、その後、方法４００は終了する（４１４）。
【００３６】
有利には、本発明の実施形態では、ＰＩＭマルチキャストツリーの設定を試みるルータからマルチキャスト送信元への到達性が、ＩＧＰショートカットまたはＢＧＰトンネルなどのユニキャストトンネルを介するものである場合に、そのツリーをマルチキャスト送信元に対して確立することができる。
【００３７】
特許請求の範囲に定められる本発明の範囲から逸脱することなく、上記の本発明の実施形態に、多数の修正、変更および改変を行ってもよい。
【図１】
2016511964.tif 000003
【図２】
2016511964.tif 000004
【図３】
2016511964.tif 000005
【図４】
2016511964.tif 000006
【国際調査報告】
2016511964.tif 000007
2016511964.tif 000008
2016511964.tif 000009