「MPLS/LDP」- 标签分发

  CREATED BY JENKINSBOT

在 MPLS Network 中,Downstream-LSR 决定 Label 和 FEC 的绑定关系,并将这种绑定关系发布给 Upstream LSR;
然后,通过 LDP 发送 标签请求标签映射 消息,在 LDP Peer 间通告 FEC 和 Label 的绑定关系来建立 LSP 路径;

补充说明:
1)标签分配:LSR 从本地 Lable-Space 中取出一个标签与 FEC 绑定;
2)标签分发:LSR 将标签与FEC的绑定关系通知给上游 LSR;

标签的发布和管理

由三方面共同决定:标签发布方式、标签分配控制方式、标签保持方式;

标签发布方式(Label Advertisement Mode)

华为设备,默认 DU 模式;

下游自主方式(Downstream Unsolicited,DU)

对于一个特定的 FEC,LSR 无需从上游获得标签请求消息即进行标签分配与分发。简单说,LSR 会主动将自己为 FEC 捆绑的标签通告给 Upstream-LSR 邻居,无需邻居先发起请求再通告。

当 DU 时,系统默认支持 LDP 为所有对等体分标签,即每个节点都可以向所有的 LDP-Peer 发布标签映射关系,不再区分上下游关系。因为在只给上游对等体分标签情况下,发送标签映射消息的时候,要根据路由信息对会话的上下游关系进行确认(数据是双向的,自己既能是上游,又能是下游)。

下游按需方式(Downstream on Demand,DoD)

对于一个特定的FEC,LSR 获得标签请求消息之后才进行标签分配与分发。即只有上游邻居向自己请求标签映射时,LSR才会通告标签映射给该邻居

一般情况下,对特定 FEC 的访问需求会触发标签请求消息。(那么也就是说这里的 LSP 并非提前建立?)

标签分配控制方式(Label Distribution Control Mode)

华为设备,默认 Ordered 模式;

独立方式(Independent)

本地LSR可以自主地分配一个标签绑定到某个FEC,并通告给上游LSR,而无需等待下游的标签。

DU + Independent 行为:简单说就是,随意的通告,邻居之间互相通告;

DoD + Independent 行为:简单说就是,互相通告,但需要等待上游来询问;

有序方式(Ordered)

对于LSR上某个FEC的标签映射,只有当该LSR已经具有此FEC下一跳的标签映射消息、或者该LSR就是此FEC的出节点时,该LSR才可以向上游发送此FEC的标签映射。

DU + Ordered 行为:简单说就是,从 Egress-LSR 开始,不断向上游传递;

DoD + Ordered 行为,简单说就是,一级一级的向下游请求,然后从 Egress-LSR 开始,逐级向上游响应;

标签保留方式(Label Retention Mode)

华为设备,默认 Liberal 模式;

当基于 IP Network 部署 MPLS 网络时,LSR 根据 IP RIB 判断接收到的标签映射是否来自下一跳。

自由方式(Liberal)

对于从邻居LSR收到的标签映射,无论邻居LSR是不是自己的下一跳都保留。

优点:鉴于该方式保留所有标签,在于路由发生变化时,LSR可以直接利用原来非下一跳邻居发来的标签,迅速重建LSP,能够快速建立新的LSP进行数据转发;
缺点:是需要分发和维护不必要的标签映射,需要更多的内存和标签空间。

DoD + Liberal:LSR会向所有LDP邻居请求标签。但通常来说,DoD + Conservative 是常用的搭配方式,用于标签空间有限的LSR。

保守方式(Conservative)

对于从邻居LSR收到的标签映射,只有当邻居LSR是自己的下一跳时才保留。

优点:在于只需保留和维护用于转发数据的标签,以达到节约标签的目的。
缺点:LSR只保留来自下一跳邻居的标签,当网络拓扑变化引起下一跳邻居改变时,LSP的重建会比较慢。

DU + Conservative 方式:则只保留下一跳发来的标签,丢弃非下一跳发来的标签。
DoD + Conservative 方式:LSR 根据路由信息只向它的下一跳请求标签(DoD 依旧是存在访问需求时才触发。那么如果没有路由则丢弃报文?)