非ブロッキング マルチキャスト サービス リフレクション

マルチキャストからマルチキャスト入力 NAT

入力 NAT では、着信(S、G)を別の送信元、グループ、またはその両方に変換できます。ドメイン内のすべての受信者は、変換後のフローに参加できます。この機能は、マルチキャスト トラフィックが次の場合に役立ちます。

  • アドレスが重複している可能性がある別のドメインからネットワークに入る

  • ネットワーク内のアプリケーションによって認識されないアドレスが付属しています

事前変換されたルートでの動的 IGMP 参加または PIM 参加は、入力 NAT ではサポートされていません。

マルチキャストからマルチキャストへの入力 NAT は、PIM アクティブ モードでのみ機能します。PIM パッシブ モードはサポートされていません。

マルチキャストからマルチキャスト出力 NAT

出力 NAT では、既存のフロー(S、G)を、発信インターフェイスごとに異なる送信元またはグループ アドレスに変換できます。この機能は、特定のソースまたはグループ アドレスのみを受け入れる可能性のある外部エンティティへのマルチキャスト配信に役立ちます。また、フローが外部エンティティに公開されるときに、内部アドレス空間を非表示にするパスとして機能することもできます。

変換後のルートでの動的 IGMP 参加または PIM 参加は、出力 NAT ではサポートされていません。

変換前と変換後のフローの帯域幅に不一致がある場合、障害 MO が生成されます。

PIM パッシブ モードでは、フローの帯域幅管理は外部コントローラによって実行され、変換前と変換後の両方のフローがプロビジョニングされます。フローの作成は、API を介して利用できます。

ENAT PIM パッシブの例

サービス インターフェイス loopback1 の設定


URL:
{{ip}}/api/mo/sys/mrib/inst/dom-default/sr.json
Payload:
{ "mribServiceReflect": {
"attributes": {"status": "" },
"children": [
{
"mribSrcIntf": {
"attributes": {
"srcIntf": "lo1",
"status": ""
}
}
}
]
}
}

NAT モードを出力に設定する

URL:
{{ip}}/api/mo/sys/mrib/inst/dom-default/sr.json
Payload:
{"mribEgressMode": {"attributes": {"grpList": "225.0.0.0/8"}}}

マッピング インターフェイスの設定

URL:
{{ip}}/api/mo/sys/mca/config/natsr/mappings.json
Payload:
{"mcaNatMapDefaultSif": {"attributes": {"domName": "default", "maxEnatReplications": "40", "siIfName": "eth1/2", "status": "" }}}

SR ルールの設定:

URL:
{{ip}}/api/mo/sys/mrib/inst/dom-default/sr/rule.json
Payload:
{"mribSrRule": {"attributes": {"status": ""},
"children": [{"mribRule": {"attributes": {"postTransGrp": "226.1.1.1", "postTransSrc": "57.1.1.2", "preTransGrp": "225.1.1.1", "preTransSrc": "47.1.1.2", "grpMasklen": 32, "srcMasklen": 32, "udpsrcPort": "10003", "udpDestPort": "20003", "staticOif": "eth1/29/1"}}} ]
} }

NAT 前のフロー

URL:
{{ip}}/api/mo/sys/nbm/conf/flows.json
Payload:
{"nbmFlows": {"children": [{"nbmConfFlowsDom": {"attributes": {"name": "default", "status": ""},
"children": [ {"nbmConfFlow": { "attributes": {"group": "225.1.1.1", "source": "47.1.1.2", "ingressIf": "eth1/3" "policer": "ENABLED","bwKbps": "1000" "status": ""} } },
] }} ] } }

NAT 後のフロー

URL:
{{ip}}/api/mo/sys/nbm/conf/flows.json
Payload:
{"nbmFlows": {"children": [{"nbmConfFlowsDom": {"attributes": {"name": "default"},
"children": [ {"nbmConfFlow": {"attributes": {"group": "226.1.1.1", "source": "57.1.1.1", "ingressIf": "loopback1", "bwKbps": 10000, "policer": "ENABLED", "status": "" },
"children": [{"nbmConfFlowIf": {"attributes": {"id": "eth1/29/1", "isLhr": "YES", "status": "" }}}]}}] }} ] } }

マルチキャストからユニキャスト NAT

マルチキャストからユニキャストへの NAT は、コンテンツをパブリック クラウドにホストするために使用されます。クラウドがマルチキャストをサポートしていない可能性があるため、変換が必要です。変換後、ユニキャスト パケットはユニキャスト転送ロジックに従ってルーティングされます。

異なるサイトに接続する場合も同様の使用例が見られます。コアがエンド ツー エンドのマルチキャストをサポートしていない場合、コンテンツはさまざまなサイトにユニキャストとして配信されます。境界ボックスは、マルチキャストをユニキャストに変換し、消費のためにさまざまなサイトに配信します。

MU NAT の場合、PMN は、事前に変換されたマルチキャスト フローの帯域幅管理を引き続き実行します。変換されたユニキャスト フローの場合、変換されたユニキャスト トラフィックが中断することなく送信されるように、発信インターフェイスはユニキャスト帯域幅を予約する必要があります。PMN は、NAT 関係を示すためにフロー操作 MO も発行します。ユニキャスト変換ごとに内部で 3 つの再循環が発生するため、再循環ポート帯域幅の 3 分の 1 だけが想定されていることを確認する必要があります。再循環に使用されるサービス リフレクト マップ インターフェイスで輻輳が発生した場合、PMN は障害 MO を公開しません。

PIM パッシブ モードでは、コントローラは帯域幅管理を実行し、Rest API を呼び出して事前変換されたフローをプロビジョニングします。PMN は、NAT 関係を示すために、フロー操作 MO を公開します。

MU NAT PIM パッシブの例

以下は、MUNAT Rest API 呼び出しとペイロード情報です。

Re-circ インターフェイスの設定

url: 172.28.249.173/api/mo/sys/mca/config/natsr/mappings.json?rsp-subtree=full
Payload:
{
"mcaNatMapDestPrefixSif": {
"attributes": {
"destPrefix": "112.10.3.0/24",
"domName": "default",
"maxEnatReplications": "40",
"siIfName": "eth1/15",
"status": ""
}
}
}

サービス リフレクト ルール

url: <ip_switch>/api/mo/sys/mrib/inst/dom-default/sr/rule.json?rsp-subtree=full
Payload:
{
"mribRule": {
"attributes": {
"grpMasklen": "32",
"postTransGrp": "112.3.3.51",
"postTransSrc": "11.1.1.3",
"preTransGrp": "225.10.1.50",
"preTransSrc": "112.3.1.2",
"srcMasklen": "32",
"staticOif": "unspecified",
"status": "",
"udpDestPort": "0",
"udpsrcPort": "0"
}
}
}

NBM フロー

url: <ip_switch>/api/mo/sys/nbm/show/flows/dom-default.json?rsp-subtree=full
Payload:
{
"nbmConfFlow": {
"attributes": {
"bwKbps": "50000",
"group": "225.1.1.1",
"ingressIf": "eth1/2",
"policer": "ENABLED",
"source": "112.3.1.2",
"status": ""
}
}
}