在此页面上
了解仅组播快速重新路由
仅组播快速重新路由 (MoFRR) 可在发生链路故障时最大限度地减少组播分配树中流量的数据包丢失,从而增强支持这些功能的设备上的组播路由协议,如协议无关组播 (PIM) 和多点标签分发协议 (多点 LDP)。
在交换机上,不支持具有 MPLS 标签交换路径和多点 LDP 的 MoFRR。
对于 MX 系列路由器,MoFRR 仅在具有 MPC 线卡的 MX 系列路由器上受支持。作为先决条件,您必须将路由器配置为 network-services enhanced-ip
模式,并且路由器中的所有线卡都必须是 MPC。
启用 MoFRR 后,设备会通过主路径和备份上游路径向组播源发送加入消息。设备从主路径和备份路径接收数据包,并根据优先级(分配给主路径和备份路径的权重)丢弃冗余数据包。当设备检测到主路径出现故障时,它会立即开始接受来自辅助接口(备份路径)的数据包。快速切换大大缩短了主路径链路故障时的收敛时间。
MoFRR的一个应用程序是流式传输IPTV。IPTV 流作为 UDP 流组播,因此不会重新传输任何丢失的数据包,从而导致用户体验不尽如人意。MoFRR可以改善这种情况。
经济和财务审查报告概述
通过在单播流上进行快速重新路由时,上游路由设备会预先建立 MPLS 标签交换路径 (LSP) 或预先计算 IP 无环路备用 (LFA) 快速重新路由备份路径,以处理下游路径中分段的故障。
在组播路由中,接收端通常发起流量分布图。这与单播路由不同,单播路由通常建立从源到接收方的路径。PIM(用于 IP)、多点 LDP(用于 MPLS)和 RSVP-TE(用于 MPLS)是能够建立组播分布图的协议。其中,PIM 和多点 LDP 接收器启动分布图设置,因此 MoFRR 可以在支持这两种组播协议的情况下使用它们。
在组播树中,如果设备检测到网络组件故障,则需要一些时间才能执行反应性修复,从而导致在设置备用路径时出现显著的流量丢失。MoFRR 可减少网络组件发生故障时组播分配树中的流量损失。借助 MoFRR,其中一个下游路由设备会设置通向源的备用路径,以接收相同组播流量的备份实时流。当主流发生故障时,MoFRR 路由设备可以快速切换到备份流。
启用 MoFRR 后,对于每个 (S,G) 条目,设备使用两个可用的上游接口发送加入消息和接收组播流量。如果有两个这样的路径可用,协议会尝试选择两个不相交的路径。如果不相交路径不可用,协议将选择两条非脱节路径。如果两个不相交的路径不可用,则仅选择一个主路径,而不进行备份。MoFRR 优先考虑脱节备份,以支持对可用路径进行负载平衡。
IPv4 和 IPv6 协议家族都支持 MoFRR。
图 1 显示了从组播接收方路由设备(也称为出口提供商边缘 (PE) 设备)到组播源路由设备(也称为入口 PE 设备)的两条路径。

启用 MoFRR 后,出口(接收方端)路由设备会为每个组播源 (S,G) 设置两个组播树(主路径和备用路径)。换句话说,出口路由设备将相同的 (S,G) 加入消息传播到两个不同的上游邻居,从而创建两个组播树。
其中一个组播树穿过平面 1,另一个穿过平面 2, 如图 1 所示。对于每个 (S,G),出口路由设备转发在主路径上收到的流量,并丢弃在备份路径上收到的流量。
MoFRR 在等价多路径 (ECMP) 路径和非 ECMP 路径上均受支持。设备需要启用单播无环路备用 (LFA) 路由,以支持非 ECMP 路径上的 MoFRR。您可以使用内部网关协议 (IGP) 配置中的语句启用 link-protection
LFA 路由。在 OSPF 或 IS-IS 接口上启用链路保护时,设备会为遍历受保护接口的所有目标路由创建到主下一跃点的备份 LFA 路径。
Junos OS 在 IP 网络中为 IP MoFRR 实施 MoFRR,在 MPLS 标签边缘路由设备 (LER) 中用于多点 LDP MoFRR。
多点 LDP MoFRR 用于 MPLS 网络的出口设备,数据包被转发到 IP 网络。借助多点 LDP MoFRR,设备可建立两条通向上游 PE 路由设备的路径,以在 LER 接收两个 MPLS 数据包流。设备接受其中一个流(主流),另一个流(备份流)在 LER 处丢弃。如果主路径出现故障,设备将改为接受备份流。带内信令支持是具有多点 LDP 的 MoFRR 的先决条件(请参阅 了解点对多点 LSP 的多点 LDP 带内信令)。
PIM 功能
Junos OS 支持 MoFRR 在 PIM 源特定组播 (SSM) 和任意源组播 (ASM) 中的最短路径树 (SPT) 连接。SSM 和 ASM 范围都支持 MoFRR。要为 (*,G) 联接启用 MoFRR,请在层次结构中包含mofrr-asm-starg
[edit routing-options multicast stream-protection]
配置语句。对于每个G组,MoFRR将针对(S,G)或(*,G)运行,但不能同时运行两者。(S,G) 始终优先于 (*,G)。
启用 MoFRR 后,PIM 路由设备会在两个上游反向路径转发 (RPF) 接口上传播加入消息,以便在两个链路上接收同一加入请求的组播流量。MoFRR 优先考虑两条不汇聚到同一直接上游路由设备的路径。PIM 使用上游 RPF 下一跃点安装适当的组播路由,该跃点具有两个接口(用于主路径和备份路径)。
当主路径发生故障时,备份路径将升级到主状态,设备会相应地转发流量。如果有备用路径可用,MoFRR 将计算新的备份路径并更新或安装相应的组播路由。
您可以使用 PIM 联接负载平衡启用 MoFRR(请参阅语句)。 join-load-balance automatic
但是,在这种情况下,链接之间的加入消息分布可能不均匀。添加新的 ECMP 链路时,将重新分发主路径上的联接消息并进行负载平衡。备份路径上的加入消息可能仍遵循相同的路径,并且可能不会均匀地重新分布。
您可以使用层次结构中的[edit routing-options multicast]
配置语句启用 stream-protection
MoFRR。MoFRR 由一组过滤策略管理。
当出口 PIM 路由设备收到加入消息或 IGMP 报告时,它会检查 MoFRR 配置并按以下步骤操作:
如果 MoFRR 配置不存在,PIM 将向上游的一个邻居(例如图 1 中的平面 2)发送加入消息。
如果存在 MoFRR 配置,设备将检查策略配置。
如果策略不存在,设备将检查主路径和备份路径(上游接口),并按以下步骤操作:
如果存在策略,设备将检查策略是否允许 MoFRR 执行此操作 (S,G),并按以下步骤操作:
多点 LDP 功能
为避免 MPLS 流量重复,多点 LDP 通常只选择一条上游路径。(见第2.4.1.1节。在 RFC 6388 中确定一个人的“上游 LSR”, 点对多点和多点对多点标签交换路径的标签分发协议扩展。
对于带 MoFRR 的多点 LDP,多点 LDP 设备选择两个单独的上游对等体,并发送两个单独的标签,每个上游对等体一个。设备使用 RFC 6388 中描述的相同算法来选择上游主路径。该器件使用相同的算法选择备用上游路径,但排除了上游主 LSR 作为候选路径。两个不同的上游对等方将两个 MPLS 流量流发送到出口路由设备。设备仅选择一个上游邻接方路径作为接受 MPLS 流量的主路径。另一条路径成为备份路径,设备丢弃该流量。当上游主路径发生故障时,设备开始接受来自备份路径的流量。多点 LDP 设备根据内部网关协议 (IGP) 根设备下一跃点选择两条上游路径。
转发等效类 (FEC) 是以相同方式、相同路径和相同转发处理方式转发的一组 IP 数据包。通常,放在特定数据包上的标签表示该数据包分配到的 FEC。在 MoFRR 中,每个 FEC 的 mpls.0 表中放置了两个路由 — 一个路由用于主标签,另一个路由用于备份标签。
如果存在指向同一直接上游设备的并行链路,则设备会将两个并行链路视为主链路。在任何时间点,上游设备仅在多个并行链路中的一个上发送流量。
芽节点是出口 LSR,但也具有一个或多个直接连接的下游 LSR。对于 bud 节点,来自上游主路径的流量将转发到下游 LSR。如果主上游路径发生故障,来自备份上游路径的 MPLS 流量将转发到下游 LSR。这意味着下游 LSR 下一跃点将与出口下一跃点一起添加到两个 MPLS 路由中。
与 PIM 一样,您可以使用层次结构中的[edit routing-options multicast]
配置语句为stream-protection
多点 LDP 启用 MoFRR,它由一组筛选器策略管理。
如果为 MoFRR 启用了多点 LDP 点对多点 FEC,则设备在选择上游路径时会考虑以下因素:
如果存在非目标 LDP 会话,则会跳过目标 LDP 会话。如果存在单个目标 LDP 会话,则会选择目标 LDP 会话,但相应的点对多点 FEC 将失去 MoFRR 功能,因为没有与目标 LDP 会话关联的接口。
属于同一上游 LSR 的所有接口都被视为主路径。
对于任何根节点路由更新,上游路径将根据 IGP 的最新下一跃点进行更改。如果有更好的路径可用,多点 LDP 将尝试切换到更好的路径。
数据包转发
对于 PIM 或多点 LDP,设备在入口接口执行组播源流选择。这样可以保留结构带宽并最大限度地提高转发性能,因为它:
避免跨交换矩阵发送重复流
防止多次路由查找(导致丢包)。
对于 PIM,每个 IP 多播流包含相同的目标地址。无论数据包到达哪个接口,数据包都具有相同的路由。设备检查每个数据包到达的接口,并仅转发来自主接口的数据包。如果接口与备份流接口匹配,设备将丢弃数据包。如果接口与主接口或备份流接口不匹配,设备会将数据包作为控制平面中的例外进行处理。
图 2 使用具有 PIM 的路由器的示例主接口和备份接口显示了此过程。 图 3 显示了具有 PIM 的交换机的情况类似。


对于路由器上具有多点 LDP 的 MoFRR,设备使用多个 MPLS 标签来控制 MoFRR 流选择。每个标签代表一个单独的路由,但每个标签引用相同的接口列表检查。设备仅转发主标签,并删除所有其他标签。多个接口可以接收使用相同标签的数据包。
图 4 显示了具有多点 LDP 的路由器的此过程。

限制和注意事项
交换和路由设备的 MoFRR 限制和注意事项
MoFRR 对路由和交换设备有以下限制和注意事项:
支持 MoFRR 故障检测,以便对启用了 MoFRR 的路由设备进行即时链路保护,而不是对组播流量路径中的所有链路(端到端)进行链路保护。
MoFRR 支持在两个选定的不相交路径上快速重新路由到源。选定的两个上游邻接方不能位于同一接口上,换言之,LAN 分段上的两个上游邻接方。如果上游接口恰好是组播隧道接口,则情况也是如此。
不支持检测最大端到端不相交上游路径。接收方端(出口)路由设备仅确保存在不相交的上游设备(紧接的前一跃点)。PIM 和多点 LDP 不支持等效的显式路由对象 (ERO)。因此,不相交上游路径检测仅限于控制前一跳设备。由于此限制,可能会共享被选为主跃点和备份跃点的上一跃点的上游设备的路径。
在以下情况下,您可能会看到一些流量丢失:
更好的上游路径在出口设备上可用。
当有活动流量流流动时,出口设备上的 MoFRR 处于启用或禁用状态。
不支持备份路径的联接消息的 PIM 联接负载平衡。
对于组播组 G,(S,G) 和 (*,G) 联接消息都不允许使用 MoFRR。(S,G) 联接消息优先于 (*,G)。
使用两个不同组播组的组播流量流不支持 MoFRR。每个 (S,G) 组合都被视为一个唯一的组播流量流。
MoFRR 不支持双向 PIM 范围。
MoFRR 不支持 PIM 密集模式。
备份流量流的组播统计信息不由 PIM 维护,因此在命令的操作
show
输出中不可用。不支持速率监控。
使用 PIM 切换设备的 MoFRR 限制
带 PIM 的 MoFRR 对交换设备有以下限制:
当上游接口是集成路由和桥接 (IRB) 接口时,不支持 MoFRR,这会影响其他组播功能,例如互联网组管理协议版本 3 (IGMPv3) 侦听。
转发组播流量时的数据包复制和组播查找可能会导致数据包多次通过 PFE 再循环。因此,命令中显示的
show pfe statistics traffic
组播数据包计数值可能会在输出字段(如Input packets
和Output packets
)中显示高于预期数字。在 MoFRR 方案中,您可能会更频繁地注意到此行为,因为重复的主流和备份流通常会增加流量。
具有多点 LDP 的路由设备的 MoFRR 限制和注意事项
与多点 LDP 一起使用时,MoFRR 对路由器具有以下限制和警告:
MoFRR 不适用于在 RSVP 隧道上接收的多点 LDP 流量,因为 RSVP 隧道未与任何接口关联。
不支持混合上游 MoFRR。这是指 PIM 多点 LDP 带内信令,其中一条上行路径通过多点 LDP,第二条上行路径通过 PIM。
不支持将多点 LDP 标签作为内部标签。
如果可通过多个入口(源端)提供商边缘 (PE) 路由设备访问源,则不支持多点 LDP MoFRR。
不会选择目标 LDP 上游会话作为 MoFRR 的上游设备。
不支持备份路径上的多点 LDP 链路保护,因为不支持 MoFRR 内部标签。