如果出口路由器知道如何访问一组不同且独立的网络(例如,其路由表中的两个或多个不重叠的 IP 前缀),它是否应该为其 MPLS 域中的每个网络宣布一个单一的 FEC 或为每个目的地宣布一个标签?从我的角度来看(这很可能是错误的),这些解决方案中的每一个似乎都是正确的,但第一个似乎更有效。
LDP:出口路由器在使用有序控制时必须通告哪个 FEC?
使用有序控制时,出口路由器必须通告哪个 FEC?... 是为其 MPLS 域中的每一个宣布一个单一的 FEC,还是为每个目的地宣布一个标签?
RFC3037,第 3 页:
使用独立控制模式的 LSR 在其认为合适时向对等方通告 FEC 标签绑定,而使用有序控制的 LSR仅在其先前从 FEC 下一跳接收到 FEC 标签或它是 FEC 的 MPLS 出口时才通告绑定。
具有保守标签保留和有序控制的下游按需分发适用于标签是必须保存的相对稀缺资源的情况,并且下游
具有自由标签保留和独立控制的主动分发适用于标签丰富且无需仔细保存的情况。
附加参考:
- Junos OS 文档 -解聚合命令:
描述
控制路由器上的转发等效类 (FEC) 分解。在 LDP 中使用 deaggregate 语句是我们推荐用于 LDP 部署的标准做法。
我们的类似问题:什么是 MPLS 域中的 FEC?
思科 - “初学者 MPLS 常见问题解答”
维基百科的“多协议标签交换”
还有:
- 请参阅:“配置 FEC 解聚”:
当 LDP 出口路由器通告多个前缀时,这些前缀绑定到单个标签并聚合到单个转发等效类 (FEC) 中。默认情况下,LDP 在广告穿越网络时维护此聚合。
通常,由于 LSP 没有跨多个下一跳拆分,并且前缀绑定到单个 LSP,因此不会发生跨等成本路径的负载平衡。但是,如果您配置负载平衡策略并分解 FEC,则可以跨等成本路径进行负载平衡。
分解 FEC 会导致每个前缀绑定到单独的标签并成为单独的 LSP。
要配置分解的 FEC,请包含 deaggregate 语句 ...
对于所有 LDP 会话,您只能在全局范围内配置解聚 FEC。
解聚 FEC 允许将生成的多个 LSP 分布在多个等价路径上,并将 LSP 分布在出口段上的多个下一个跃点上,但每个 LSP 仅安装一个下一个跃点。
要聚合 FEC,请包含 no-deaggregate 语句...
对于所有 LDP 会话,您只能全局配置聚合 FEC。
- 请参阅:“配置 LDP FEC 解聚”:
FEC聚合是指当一个LDP出口路由器发布多个前缀时,所有的前缀都是同一个FEC的成员。此 FEC 仅发布一个标签。如果可能,当广告穿越网络时,LDP 会维护这种聚合。
要配置 MPLS LDP FEC 解聚以将当前虚拟路由器上的每个前缀绑定到单独的标签:
发出 mpls ldp deaggregate 命令:
host1(config)#mpls ldp deaggregate
如果您配置 MPLS LDP FEC 解聚以将单独的标签绑定到虚拟路由器上的每个前缀,则默认行为是 LDP 出口路由器在其发送给上游邻居的标签映射消息中通告隐式空标签。
如果为 LDP 出口路由器配置了多个标签并配置了 FEC 聚合,则当您将标签通告方式修改为 FEC 解聚时,出口路由器通告隐式空标签,并且不使用每个前缀单独的标签。配置 FEC 解聚后,出口路由器的上游邻居执行倒数第二跳弹出 (PHP),并且隐式空标签永远不会出现在封装中。
如果配置 MPLS LDP FEC 解聚,则默认通告标签为标签 3(隐式空标签)。在这种情况下,倒数第二跳路由器删除标签并将数据包发送到出口路由器。
来自 Packet Pushers 博客:“回归基础:标签分发和分配模式”:
标签控制模式:
这是关于 LSR 在响应标签请求之前是否等待其上游/下游邻居的消息。
有序控制:在这种方法中,LSR 不会通告 FEC,除非它是该 FEC 的出口 LSR,或者直到它从其下游对等方收到 FEC 的标签。对于每个 LSR 不是出口且不存在映射的 FEC,LSR 必须等到收到来自下游 LSR 的标签后,才能映射 FEC 并将相应的标签传递给上游 LSR。这由 RSVP、LDP (JunOS) 和 BGP-LU 使用。
独立控制:这意味着发送标签的 LSR 独立于其下游对等方进行操作。它在将标签发送给其对等方之前不会等待来自下游 LSR 的标签。这种模式有可能使流量黑洞化。例如,当在独立的按需下游模式下运行时,LSR 可以立即响应标签映射请求,而无需等待来自下一跳的标签映射。此模式由 LDP (IOS/IOS-XR) 使用