Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

コントローラベース BGP マルチキャスト シグナリング

ネットワーク トポロジとトポロジ内のイベントを認識するネットワーク コントローラーは、エンドツーエンドの明示的なパスを計算できます。この計算により、送信元と受信側の間で最適なマルチキャスト ツリーが得られます。ネットワーク コントローラーは、PRPD(プログラマブル ルーティング プロトコル デーモン)と BGP シグナリングを使用して、マルチキャスト ツリー上の各ルーターに信号を送信し、マルチキャスト転送状態を設定およびプログラムします。

コントローラは、PRPD API を使用して、BGP マルチキャスト ネットワーク層到達可能性情報(NLRI)をプログラムします。すべてのルーターは、直接またはルートリフレクタを介してプログラムされます。また、ルートリフレクタは、ツリー上のすべてのルーターにNLRIを伝播します。受信した NLRI に基づいて、ルーターは適切な転送状態を設定します。

このトピックの次のセクションでは、 コントローラーネットワーク コントローラーを意味します。

コントローラベースBGPマルチキャストシグナリングのメリット

従来のマルチキャスト展開には、固有の欠点があります。コントローラベースのBGPシグナリングは、次のような欠点を解消します。
  • PIM(プロトコル独立マルチキャスト)などのホップバイホップ マルチキャスト プロトコルでは、他の制限の中でも特に、any-source マルチキャスト モードは定期的な更新が必要で、設定が複雑です。PIM ソース固有マルチキャストと PIM-ポート モードには、同様の欠点があります。

  • 主要なルーティングプロトコルとしてBGPを使用するデータセンターでは、追加のプロトコルが必要となり、それに伴う複雑さが生じるため、マルチキャストの導入を避けます。

PRPDに基づくトランジットルータープログラミング

プロビジョニング サーバーまたはオーケストレータの助けを借りて、コントローラは送信元、グループ、および受信者のマルチキャスト フロー情報を認識できます。コントローラは、送信元トラフィックをグループのすべての対象受信者に転送するための最適なツリーを計算します。

図1: PRPDTransit Router Programming Based on PRPDに基づくトランジットルーターのプログラミング

マルチキャストツリーを計算した後、コントローラはPRPDインターフェイスを使用して、BGPマルチキャストリーフ自動検出(AD)NLRIでツリー上の各トランジットルーターをプログラムします。リーフADルートには、送信元、グループ、アップストリームの情報が含まれています。

リーフAD NLRIは、トラフィックの複製が必要なダウンストリームルーターに関する情報を持つトンネルカプセル化属性(TEA)も伝送します。TEA は、カプセル化プロトコルと、それらのプロトコルを正しく使用するために必要な追加情報を指定する推移的な BGP パス属性です。

この情報を使用して、ルーターはトラフィックを転送するようにマルチキャスト転送状態をプログラムできます。

PRPDに基づくルートリフレクタプログラミングとBGPを用いたトラフィック伝送

場合によっては、コントローラがすべてのトランジットルータへのPRPD接続を持っていない場合があります。しかし、BGPがネットワーク上で実行されている場合、コントローラはルートリフレクタまたは仮想ルートリフレクタ(vRR)への単一のPRPD接続のみを必要とします。送信元、グループ、および受信者に関するマルチキャスト情報を使用して、コントローラはルートリフレクタ上のマルチキャストツリー上のすべてのルータを対象としたBGPマルチキャストNLRIをプログラムします。ルートリフレクタは、BGPシグナリングを介してBGPマルチキャストNLRIをそのすべてのネイバーにさらに伝播し、最終的にマルチキャストツリー上のすべてのルーターに到達します。

図2: PRPDRoute Reflector Programming Based on PRPDに基づくルートリフレクタプログラミング

NLRI に関連付けられたルート ターゲットに目的のルーターのルーター ID がある場合、ルーターはルートを受け入れ、適切な転送状態がルーターにプログラムされます。

手記:

ルート ターゲット解決 RIB は、デフォルトで inet.3 です。BGPマルチキャストを機能させるには、次のコマンドを使用して、設定でrib解像度をinet.0に明示的に設定する必要があります。

set routing-options resolution rib bgp.rtarget.0 resolution-ribs inet.0

また、ルート ターゲット制約を適用して、ルート リフレクタからルートをフィルタリングすることもできます。