Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
在此页面上
 

示例:配置在特定于源的多播模式下运行的数据 MDT 和提供程序隧道

此示例说明如何为在源特定组播 (SSM) 模式下运行的 draft-rosen 第 3 层组播 VPN 中连接到 VPN 路由和转发 (VRF) 实例的提供商边缘 (PE) 路由器配置数据组播分布树 (MDT)。该示例基于 RFC 4364 的 Junos OS 实施、 BGP/MPLS IP 虚拟专用网络 (VPN) 以及 IETF 互联网草案draft-rosen-vpn-mcast-07.txt的第 7 节: MPLS/BGP IP VPN 中的组播

要求

准备工作:

  • 确保路由设备支持组播隧道 (mt) 接口。

    支持隧道的 PIC 最多支持 512 个组播隧道接口。默认和数据 MDT 都会计入此总数。默认 MDT 使用两个多播隧道接口(一个用于封装,一个用于解封装)。要使 M 系列或 T 系列路由器支持超过 512 个组播隧道接口,需要另一个支持隧道的 PIC。请参阅《组播协议用户指南》中的“隧道服务 PIC 和组播”和“在可用 PIC 之间平衡组播隧道接口的负载”。

  • 确保 PE 路由器已配置为在提供商核心中以 SSM 模式运行的草稿 Rosen 第 3 层组播 VPN。

    在这种类型的组播 VPN 中,PE 路由器通过发送 MDT 后续地址族标识符 (MDT-SAFI) BGP 网络层可达性信息 (NLRI) 通告来发现彼此。 表 1 中突出显示了主实例的关键配置语句。 表 2 中突出显示了 PE 路由器所连接的 VRF 实例的关键配置语句。有关完整的配置详细信息,请参阅《组播协议用户指南》中的“示例:为 Draft-Rosen 组播 VPN 配置特定于源的组播”。

概述

通过在 3 层 VPN 中使用数据 MDT,可以防止组播数据包不必要地泛洪到 VPN 组中的指定提供商边缘 (PE) 路由器。此选项主要用于第 3 层 VPN 组播网络中没有接收来自特定源的组播流量的 PE 路由器。

  • 当直接连接到组播源(也称为 源 PE)的 PE 路由器收到超过配置阈值的第 3 层 VPN 组播流量时,将在连接到源站点的 PE 路由器与其远程 PE 路由器邻居之间建立新的数据 MDT 隧道。

  • 只要源 PE 处于活动状态,源 PE 就会播发新数据 MDT 组。定期公告通过 VRF 的默认 MDT 发送。由于数据 MDT 公告是通过默认隧道发送的,因此所有 PE 路由器都会收到通知。

  • 没有组播流量接收器的邻居缓存新数据 MDT 组的播发,但忽略新隧道。具有组播流量接收器的邻居缓存新数据 MDT 组的播发,并为新组发送 PIM 联接消息。

  • 源 PE 使用新的数据 MDT 组封装 VRF 组播流量,并停止通过默认组播树的数据包流。如果组播流量级别回落到阈值以下,则数据 MDT 将自动拆除,流量流回默认组播树。

  • 如果尚未加入新数据 MDT 组的 PE 路由器收到新接收方的 PIM 联接消息,其 (S,G) 流量已流经提供程序核心中的数据 MDT,则该 PE 路由器可以从其缓存中获取新的组地址,并可以立即加入数据 MDT,而无需等待最多 59 秒的下一个数据 MDT 播发。

默认情况下,自动创建数据 MDT 处于禁用状态。

以下各节总结了此示例和此示例的先决条件配置中使用的数据 MDT 配置语句:

  • 在主实例中,PE 路由器的先决条件 draft-rosen PIM-SSM 组播配置包括直接支持您将在此示例中启用的数据 MDT 配置的语句。 表1 突出显示了其中一些陈述

    表 1:数据 MDTS - 主实例中的关键先决条件

    陈述

    描述

    [edit protocols]
    pim {
        interface (Protocols PIM)  interface-name <options>;
    }
    

    在 PE 路由器接口上启用 PIM 协议。

    [edit protocols]
    bgp {
        group name {
            type internal;
            peer-as autonomous-system;
            neighbor address;
            family inet-mdt {
                signaling;
            }
        }
    }
    
    [edit routing-options]
    autonomous-system autonomous-system;
    

    在 VRF 实例中 PE 路由器之间的内部 BGP 全网状网络中,使 BGP 协议能够在第 3 层 VPN 中为 IPv4 流量传输 MDT-SAFI NLRI 信令消息。

    [edit routing-options]
    multicast {
        ssm-groupsip-addresses ];
    }
    

    (可选)除了默认 SSM 组地址范围 232.0.0.0/8 之外,配置一个或多个要在提供商网络内部使用的 SSM 组。

    注意:

    对于此示例,假设您之前指定了额外的 SSM 组地址范围 239.0.0.0/8。

    此表仅包含提供商核心中以 SSM 模式运行的 draft-rosen 组播 VPN 的部分 PE 路由器配置语句列表。有关此先决条件的完整配置信息,请参阅《组播协议用户指南》中的“示例:为 Draft-Rosen 组播 VPN 配置特定于源的组播”。

  • 在 PE 路由器连接到的 VRF 实例(在 [edit routing-instances name] 层次结构级别)中,PE 路由器的先决条件 draft-rosen PIM-SSM 组播配置包括直接支持您将在此示例中启用的数据 MDT 配置的语句。 表2 突出显示了其中一些陈述

    表 2:数据 MDT — VRF 实例中的关键先决条件

    陈述

    描述

    [edit routing-instances name]
    instance-type vrf;
    vrf-target community;
    

    创建一个 VRF 表 (instance-name.mdt.0),其中包含源自第 3 层 VPN 和发往第 3 层 VPN 的路由。

    创建自动接受来自 .mdt.0 路由表的instance-name路由的 VRF 导出策略。 确保使用 inet-mdt 地址族进行正确的 PE 自动发现

    您还必须为此类型的路由实例配置 接口route-distinguisher 语句。

    [edit routing-instances name]
    protocols {
        pim {
            mvpn {
                family {
                    inet | inet6 {
                        autodiscovery {
                            inet-mdt;
                            }
                        }
                    }
            }
        }
    }
    

    将 VPN 中的 PE 路由器配置为使用 MDT-SAFI NLRI 自动发现其他 PE 路由器:

    [edit routing-instances name]
    provider-tunnelfamily inet | inet6{
        pim-ssm {
            group-address (Routing Instances) address;
        }
    }
    

    配置 PIM-SSM 提供程序隧道默认 MDT 组地址。

    注意:

    对于此示例,假定您之前为组地址为 239.1.1.1 的 VPN 实例 ce1 配置 PIM-SSM 提供程序隧道默认 MDT。

    要验证 PE 路由器连接到的 VRF 实例的默认 MDT 隧道的配置,请使用 show pim mvpn 操作模式命令。

    此表仅包含提供商核心中以 SSM 模式运行的 draft-rosen 组播 VPN 的部分 PE 路由器配置语句列表。有关此先决条件的完整配置信息,请参阅《组播协议用户指南》中的“示例:为 Draft-Rosen 组播 VPN 配置特定于源的组播”。

  • 对于 rosen 7 MVPN(具有在 SSM 模式下运行的提供商隧道的草稿 Rosen 组播 VPN),您可以通过在与组播组关联的 VRF 实例的 PIM-SSM 提供程序隧道配置下包含语句,为隧道组播组配置数据 MDT 创建。由于数据 MDT 特定于 VPN 和 VRF 路由实例,因此无法在主路由实例中配置 MDT 语句。 表 3 汇总了 PIM-SSM 提供程序隧道的数据 MDT 配置语句。

    表 3:Draft-Rosen MVPN 中 PIM-SSM 提供程序隧道的数据 MDT

    陈述

    描述

    [edit routing-instances name]
    provider-tunnel family inet | inet6{{
        mdt {
            group-range multicast-prefix;
        }
    }
    

    配置需要在 PE 路由器上的 VRF 实例中创建新数据 MDT 时使用的 IP 组范围。此地址范围不能与路由器上任何其他 VPN 的默认 MDT 地址重叠。如果配置重叠组范围,则配置提交将失败。

    此语句没有默认值。如果未将 设置为 multicast-prefix 有效的非保留组播地址范围,则不会为此 VRF 实例创建任何数据 MDT。

    注意:

    对于此示例,假定您之前将 PE 路由器配置为在需要启动新数据 MDT 时自动从 239.10.10.0/24 范围选择一个地址。

    [edit routing-instances name]
    provider-tunnel family inet | inet6{{
        mdt {
            tunnel-limit limit;
        }
    }
    

    配置可以为 VRF 实例创建的最大数据 MDT 数。

    默认值为 0。如果未将 配置为 limit 非零值,则不会为此 VRF 实例创建任何数据 MDT。

    VRF 实例的有效范围为 0 到 1024。PE 路由器上所有 VRF 实例中的所有数据 MDT 限制为 8000 个隧道。

    如果达到配置的最大数据 MDT 隧道数,则不会为 VRF 实例创建新隧道,并且超过配置阈值的流量将在默认 MDT 上发送。

    注意:

    对于此示例,您将 VRF 实例的数据 MDT 数限制为 10。

    [edit routing-instances name]
    provider-tunnel family inet | inet6{{
        mdt {
            threshold {
                group group-address {
                    source source-address {
                        rate threshold-rate;
                    }
                }
            }
        }
    }
    

    为默认 MDT 的多播源配置数据速率。当 VRF 实例中的源流量超过配置的数据速率时,将创建一个新隧道。

    • group-address— 与 PE 路由器连接到的 VRF 实例对应的默认 MDT 的组播组地址。显式 group-address (指定地址的所有 32 位)或前缀(指定的网络地址和前缀长度)。这通常是特定类型组播流量的已知地址。

    • source-address— 指定默认 MDT 组中一个或多个多组播源的单播 IP 前缀。

    • threshold-rate— 组播源的数据速率,用于触发数据 MDT 的自动创建。数据速率以千比特每秒 (Kbps) 为单位指定。

      默认值 threshold-rate 为每秒 10 千比特 (Kbps)。

    注意:

    对于此示例,您将配置以下数据 MDT 阈值:

    • 应用阈值限制的组播组地址或地址范围 - 224.0.9.0/32

    • 应用阈值限制的组播源地址或地址范围 - 10.1.1.2/32

    • 数据速率 — 10 Kbps

      当流量停止或速率降至阈值以下时,源 PE 路由器将切换回默认 MDT。

拓扑学

图 1 显示了默认的 MDT。

图 1:默认 MDT Default MDT

图 2 显示了一个数据 MDT。

图 2:数据 MDT Data MDT

配置

以下示例要求您在配置层次结构中导航各个级别。有关导航 CLI 的信息,请参阅 Junos OS CLI 用户指南

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改与您的网络配置匹配所需的任何详细信息,将命令复制并粘贴到层次结构级别的 CLI [edit] 中,然后从配置模式进入 commit

在连接到 VRF 的本地 PE 路由器上启用数据 MDT 和 PIM-SSM 提供程序隧道

分步过程

以下示例要求您在配置层次结构中导航各个级别。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器

要在 PIM-SSM 组播 VPN 中配置连接到 VRF 实例 ce1 的本地 PE 路由器,以便为该 VRF 启动新数据 MDT 和提供程序隧道,请执行以下操作:

  1. 启用在 SSM 模式下运行的提供程序隧道的配置。

  2. 为新数据 MDT 配置组播 IP 地址的范围。

  3. 为此 VRF 实例配置数据 MDT 的最大数量。

  4. 为多播组和源配置数据 MDT 创建阈值。

  5. 如果完成设备配置,请提交配置。

结果

通过从配置模式输入 show routing-instances 命令,确认为 PIM-SSM 提供程序隧道配置数据 MDT。如果输出未显示预期的配置,请重复此过程中的说明以更正配置。

注意:

show routing-instances上面的命令输出未显示提供程序核心中以 SSM 模式运行的草稿 Rosen MVPN 中 VRF 实例的完整配置。

(可选)为本地 PE 路由器上的组播隧道接口启用详细跟踪信息的日志记录

分步过程

要为本地 PE 路由器上的所有组播隧道接口启用详细跟踪信息日志记录,请执行以下操作:

  1. 启用 PIM 跟踪选项的配置。

  2. 配置跟踪文件名、跟踪文件的最大数量、每个跟踪文件的最大大小以及文件访问类型。

  3. 指定记录与组播数据隧道操作相关的消息。

  4. 如果完成设备配置,请提交配置。

结果

通过从配置模式输入 show protocols 命令来确认组播隧道日志记录的配置。如果输出未显示预期的配置,请重复此过程中的说明以更正配置。

验证

要验证本地 PE 路由器是否正确管理数据 MDT 和 PIM-SSM 提供程序隧道,请执行以下操作:

监视为多播组启动的数据 MDT

目的

对于 VRF 实例 ce1,请检查本地 PE 路由器建立的默认 MDT 的传入和传出隧道,并监控本地 PE 路由器启动的数据 MDT。

行动

使用 显示 pim mdt 实例 ce1 详细 操作模式命令。

对于默认 MDT,该命令显示有关本地 PE 路由器使用默认 MDT 为组播组中的特定组播源地址建立的传入和传出隧道的详细信息,并将隧道模式标识为 PIM-SSM

对于由本地 PE 路由器启动的数据 MDT,命令使用数据 MDT、为数据 MDT 隧道设置的组播隧道逻辑接口、配置的阈值速率和当前统计信息来标识组播源。

监视组播组中的所有 PE 路由器缓存的数据 MDT 组地址

目的

对于 VRF 实例 ce1,请检查参与 VRF 的所有 PE 路由器缓存的数据 MDT 组地址。

行动

使用 show pim mdt data-mdt-joins 实例 ce1 操作模式命令。命令输出显示从参与指定 VRF 实例的所有 PE 路由器接收的 MDT 联接 TLV 数据包缓存的信息,包括每个条目的当前超时值。

(可选)查看组播隧道接口的跟踪日志

目的

如果为组播隧道接口配置了跟踪信息日志记录,则可以通过日志中与 mt 接口相关的活动跟踪本地路由器上数据 MDT 的创建和拆卸。

行动

要查看跟踪文件,请使用 文件 show /var/log/trace-pim-mdt 操作模式命令。