当前位置: 首页 > news >正文

ESNP LAB 笔记:配置MPLS(Part2)

5.4 LDP LSP的建立

5.4.1 MPLS基本概念

——1. 转发等价类(FEC)

在 MPLS 中,具有相同转发特征的报文会被划分为同一类,称为 转发等价类 FEC(Forwarding Equivalence Class)
在传统 IP 转发中,到同一条路由的所有报文就是一个 FEC(也可以简单理解为“一条路由就是一个 FEC”)。

——2. 标签(Label)

标签是一个 短而定长、仅在本地有效的标识符,用于唯一标识某个报文所属的 FEC。

——3. 标签交换路径(LSP)

  • 定义:LSP 是 IP 报文在 MPLS 网络中转发时所经过的路径。

  • 组成:可以理解为沿报文传输方向,各节点为该 FEC 分配的 入标签 串联起来的路径。

  • 标签映射关系:每台设备为本地的某个 FEC 分配入标签,并通过下游设备分配的出标签建立映射。这样,入标签一旦确定,即可唯一确定报文的转发路径。

ENSP 中查看 LDP LSP 的两条命令

1. display mpls ldp lsp

  • 作用:查看 LIB(Label Information Base) 中的内容。

  • 属性

    • 属于 控制平面 信息。

    • 显示所有 LSP,包括:

      • 有效的(会写入 LFIB,真正转发用)

      • 保留的(不满足出标签/下一跳条件,或者备用的)

  • 用途

    • 验证 LDP 是否为某个 FEC 分配了标签。

    • 查看控制平面学习到的标签映射关系。


2. display mpls lsp

  • 作用:查看 LFIB(Label Forwarding Information Base) 的内容。

  • 属性

    • 属于 转发平面 信息

    • 显示的 LSP 都是 有效的 LSP(即入标签、出标签、下一跳三要素满足条件的)。

    • 这些表项会真正用于数据包转发

  • 用途

    • 验证某条业务流量是否能通过 LSP 转发。

    • 对应 MPLS 报文转发时的实际路径。


3. 对比总结

  • dis mpls ldp lsp“控制平面”,LIB,全量标签信息(含保留)。

  • dis mpls lsp“转发平面”,LFIB,有效标签信息(实际生效)。


🔑 一句话记忆:

LIB(全量学习)看 ldp lsp,LFIB(实际转发)看 mpls lsp

——4. LSP 的分段建立

LSP 并不是一次性由起点生成,而是 由沿途各节点分段建立的
在每个节点上,LSP 由以下三要素确定:

  • 入标签

  • 对应的出标签

  • 下一跳

出标签有效性的判定逻辑

1. 必要条件

  • 出标签由下游设备分配,且 下游设备必须是该 FEC 在路由表中的下一跳

  • 满足这个条件时,入标签 + 出标签 + 下一跳 组合才能构成一条有效的 LSP,并被安装进 LFIB,承担 MPLS 转发。


2. 如何确认“下游设备确实是下一跳”

判断标准主要依赖 路由表和 LDP 会话

  1. 路由表检查

    • 在本地路由表中查找该 FEC(例如 3.3.3.3/32)的下一跳。

  2. LDP 会话和地址信息验证

    • 本设备和下游设备必须建立了 LDP Session

    • 在下游设备发布的 LDP 的 Address message 中,如果包含了该 FEC 下一跳的地址,则说明这个下游设备就是 FEC 的有效下一跳(可以通过display mpls ldp session verbose命令查看下一跳地址)。

多个节点上的分段 LSP 串联起来,便形成完整的 FEC 对应的 LSP。

——5. 节点角色

  • Ingress(入节点):报文进入某个LSP的第一个 LSR,负责为报文打标签。

  • Transit(中间节点):位于 LSP 中间的 LSR,负责根据入标签查找、交换成出标签并转发。

  • Egress(出节点):LSP 的出口 LSR,负责移除标签,还原为普通 IP 报文。

需要注意:

  • 节点角色是 针对某条 LSP 而言 的。同一台设备,在不同的 LSP 中角色可能不同。

  • LSP 是 单向的,其方向与数据流一致。如果需要双向通信,需要建立两条相反方向的 LSP,此时 Ingress 与 Egress 的角色互换。

——6. 上下游关系

  • 从报文转发方向来看,Ingress 是 Transit 的上游节点,Transit 是 Ingress 的下游节点;同理,Transit 是 Egress 的上游节点。上下游关系也是相对的概念,是针对某条LSP而言的。

  • 在标签分配过程中,设备从下游节点接收标签,并将其作为本地的出标签使用

换句话说:

  • 入标签 是本设备本地分配的;

  • 出标签 是下游设备分配的。

LDP 中的 DS/US 概念

  • US(Upstream LSR):去往某个 FEC 的流量路径上,位于上游的 LSR。

  • DS(Downstream LSR):负责为该 FEC 分配出标签的下游 LSR。

👉 举例:

  • 对于 FEC = 1.1.1.1/32

    • 从 PE1 的角度,它从 P1 收到一个出标签(1026),它认为P1是 Downstream LSR (DS)

    • 对应地,PE1 就成了该 FEC 的 Upstream LSR (US)


在 DU 模式下出现的“看似下游”问题

  • DU 模式:每个节点会无条件给所有 LDP 邻居发布标签,不管对方是不是自己的上游。

  • 所以 P1 会把 1.1.1.1/32 的标签(1026)发给 PE1。

  • dis mpls ldp lsp 里,PE1 就会显示为:

    • 接收到来自 DS/2.2.2.2 的标签 1026

    • “DS/2.2.2.2” 表示 这个标签是 2.2.2.2 节点作为下游分配的


为什么这不是有效标签

  • 虽然显示了 DS/2.2.2.2(表示标签由 P1 发布),但根据 PE1 的路由表:

    • 1.1.1.1/32 是本地直连网段,根本不需要通过 P1转发。

  • 因此:

    • P1给的标签 不是有效出标签,不会进入 LFIB。

    • 但由于 Liberal 保留模式,这个标签映射仍会保留在 LIB。


完整总结(结合 DS/2.2.2.2)

DU + Liberal 模式下,PE1 会从邻居 2.2.2.2 收到 1.1.1.1/32 的标签 1026,并显示为 DS/2.2.2.2(表示该标签由下游 2.2.2.2 分配)。但根据路由表,2.2.2.2 并不是 1.1.1.1/32 的实际下一跳,所以该标签不是有效出标签,只保留在 LIB,而不会进入 LFIB。

——7. 有效 LSP 

  • 与 IP 网络中可能存在多条到某目的网段的路由一样,在 MPLS 中,从当前节点到某 FEC 也可能建立多条转发路径(不同的出标签、出接口、下一跳)。

  • 但在同一时刻,只有一条最优路径会被选中并写入 LFIB(Label Forwarding Information Base),成为 有效 LSP

5.4.2 MPLS体系结构

MPLS的体系结构如图所示,它由控制平面(Control Plane)和转发平面(Forwarding Plane)组成。

  • 控制平面:负责产生和维护路由信息以及标签信息。

    • 路由信息表RIB(Routing Information Base):由IP路由协议(IP Routing Protocol)生成,用于选择路由。

    • 标签分发协议LDP(Label Distribution Protocol):负责标签的分配、标签转发信息表的建立、标签交换路径的建立、拆除等工作。

    • 标签信息表LIB(Label Information Base):由标签分发协议生成,用于管理标签信息。

  • 转发平面:即数据平面(Data Plane),负责普通IP报文的转发以及带MPLS标签报文的转发。

    • 转发信息表FIB(Forwarding Information Base):从RIB提取必要的路由信息生成,负责普通IP报文的转发。

    • 标签转发信息表LFIB(Label Forwarding Information Base):简称标签转发表,由标签分发协议在LSR上建立LFIB,负责带MPLS标签报文的转发。

标签信息表LIB,属于控制平面,可通过display mpls ldp lsp查看,类似cisco mpls命令:show mpls ip binding

标签转发信息表LFIB,属于转发平面,也就是数据平面,可通过display mpls lsp查看,类似cisco mpls命令:show mpls forwarding-table

只有进入LFIB中的LSP,才是有效的LSP。

5.4.3 标签的发布和管理

LDP通过发送标签请求和标签映射消息,在LDP对等体之间通告FEC和标签的绑定关系来建立LSP,而标签的发布和管理由标签发布方式、标签分配控制方式和标签保持方式来决定

——1、标签发布方式(Label Advertisement Mode)

在MPLS体系中,由下游LSR决定将标签分配给特定FEC,再通知上游LSR,即标签由下游指定,标签的分配按从下游到上游的方向分发。

标签发布方式有两种方式。具有标签分发邻接关系的上游LSR和下游LSR必须对使用的标签发布方式达成一致。

标签发布方式

含义

下游自主方式DU(Downstream Unsolicited)

对于一个特定的FEC,LSR无需从上游获得标签请求消息即进行标签分配与分发。

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

对于一个特定的FEC,LSR获得标签请求消息之后才进行标签分配与分发。

标签发布方式为DU时,系统默认支持LDP为所有对等体分标签,即每个节点都可以向所有的对等体发送标签映射消息,不再区分上下游关系。因为在只给上游对等体分标签情况下,发送标签映射消息的时候,要根据路由信息对会话的上下游关系进行确认。如果发生路由变化,上下游关系倒换,新的下游需要重新给上游节点发送标签映射消息,收敛比较慢。

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

标签分配控制方式是指在LSP的建立过程中,LSR分配标签时采用的处理方式。

标签分配控制方式有两种方式。

  • 独立标签分配控制方式(Independent):本地LSR可以自主地分配一个标签绑定到某个FEC,并通告给上游LSR,而无需等待下游的标签。

  • 有序标签分配控制方式(Ordered):对于LSR上某个FEC的标签映射,只有当该LSR已经具有此FEC下一跳的标签映射消息、或者该LSR就是此FEC的出节点时,该LSR才可以向上游发送此FEC的标签映射。

——3、标签保持方式(Label Retention Mode)

标签保持方式是指LSR对收到的、但目前暂时不需要的标签映射的处理方式。

LSR收到的标签映射可能来自下一跳,也可能来自非下一跳。

标签保持方式

含义

描述

自由标签保持方式(Liberal)

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

当网络拓扑变化引起下一跳邻居改变时:

  • 使用自由标签保持方式,LSR可以直接利用原来非下一跳邻居发来的标签,迅速重建LSP,但需要更多的内存和标签空间。

  • 使用保守标签保持方式,LSR只保留来自下一跳邻居的标签,节省了内存和标签空间,但LSP的重建会比较慢。

    保守标签保持方式通常与DoD方式一起,用于标签空间有限的LSR。

保守标签保持方式(Conservative)

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

——4、目前设备支持的组合方式

  • 下游自主方式(DU)+ 有序标签分配控制方式(Ordered)+ 自由标签保持方式(Liberal),该方式为缺省方式。也是本次实验采取的方式。

  • 下游按需方式(DoD)+ 有序标签分配控制方式(Ordered)+ 保守标签保持方式(Conservative)。

5.4.4 LDP LSP 建立规则

——1. LDP LSP 的建立规则

  1. 直连 FEC

    • 在直连某 FEC 网段(缺省仅 /32 主机路由)的节点上:

      • 为该 FEC 创建 仅含入标签的 LSP

      • 这种 LSP 没有出标签、没有入/出接口。

      • 表示本节点自己就是该 FEC 的 Egress。

  2. 非直连 FEC

    • 在其他节点上(Transit 节点或 Ingress 节点):

      • 会同时建立 两类 LSP

        1. 本地到 FEC 的 LSP:仅包含出标签和出接口(指导本地去往该目的主机)。

        2. Transit LSP:包含入标签、出标签和出接口(用于帮助上游设备转发到该 FEC)。

实验拓扑

例子:FEC = 3.3.3.3/32

(1)FEC 3.3.3.3/32是PE2的直连网段,PE2创建了1条LSP,只含入标签3。PE2也是这条LSP的Egress节点(出节点)。

(2)3.3.3.3/32是P1的非直连网段,P1创建了两条LSP,其中:

  • 上面那条可以看成是把P1当成到达3.3.3.3/32的Ingress的LSP,即作为从P1 本地访问 3.3.3.3/32的LSP,它只包括出标签3(无入标签)和出接口GE0/0/1。
  • 下面那条则可以看成是把P1当成到达3.3.3.3/32的Transit的LSP,为其上游设备访问3.3.3.3/32 的 LSP,它同时包括本地为 3.3.3.3/32分配的入标签(1025)和下游PE2为它分配的出标签(3)和出接口 GE0/0/1。

(3)3.3.3.3是PE1的非直连网段,PE1创建了两条LSP,其中:

  • 上面那条可以看成是把PE1当成到达3.3.3.3/32的Ingress的LSP,即作为从PE1 本地访问 3.3.3.3/32的LSP,它只包括出标签1025(无入标签)和出接口GE0/0/0。
  • 下面那条则可以看成是把PE1当成到达3.3.3.3/32的Transit的LSP,为其上游设备访问3.3.3.3/32 的 LSP,它同时包括本地为 3.3.3.3/32分配的入标签(1029)和下游P1为它分配的出标签(1025)和出接口 GE0/0/0。在本次实验环境中,PE1是到达3.3.3.3/32目的主机的Ingress,没有上游设备了,所以基于这个FEC建立的、同时带有入标签的这条LSP没有实际意义。

——2. PHP(Penultimate Hop Popping)机制

  • 默认支持:华为设备默认支持 PHP。

  • 标签值 3:Egress 节点(LSP 出口)会分配标签值 3 给倒数第二跳。

  • 倒数第二跳处理

    • 如果发现出标签 = 3,则将该标签弹出(pop)。

    • 然后直接把报文以 IP 报文或下一个 MPLS 标签的形式转发给 Egress。

  • Egress 节点处理

    • 收到的报文已经没有顶层 MPLS 标签,直接进行 IP 转发下一层标签转发

例子:FEC = 3.3.3.3/32

(1)PE2 —— Egress 节点

  • 身份:FEC 3.3.3.3/32 的 Egress。

  • 动作

    • 分配标签值 3(Implicit Null Label,代表 PHP)。

    • 下发给上游节点(如 P1)。

    • 含义:告诉 P1 → 到我这里时请先把标签弹掉,不要带标签进来。

(2)P1 —— 倒数第二跳(Penultimate Hop)

  • 身份:Transit 节点,PE2 的上游。

  • P1控制平面

    • 为 FEC 3.3.3.3/32 建立 LFIB 表项:

      • 入标签 = (例如 1025,自己分配的)

      • 出标签 = 3(从下游 PE2 收到的)

      • 出接口 = 指向 PE2 的接口

  • P1数据平面转发时

    1. 收到报文,入标签 = 1025。

    2. 查 LFIB,找到对应表项:出标签 = 3,出接口 = to PE2。

    3. 按规则:先把入标签换成出标签 → 出标签 = 3。

    4. 发现标签值 3 = Implicit Null Label → 触发 PHP 操作

    5. 弹出标签(即不再携带 MPLS 标签)。

    6. 报文已变成 纯 IP 报文(或下一层MPLS报文),通过出接口转发给 PE2。

(3)PE2 —— 接收报文

  • 收到来自 P1 的报文时,报文已经不带外层 MPLS 标签。

  • 直接进行 IP 转发(或下一层 MPLS 处理,如果是 VPN/多层 MPLS)。

🔑 总结一句话

Egress 节点分配标签 3 → 倒数第二跳在转发时触发 PHP → 把标签弹掉 → 报文以 IP 或者下一层MPLS报文形式交付 Egress。

——3. LSP 触发策略

  • 默认策略

    • 在华为设备上,使能 MPLS LDP 后,LSP 会自动建立。

    • 为避免过多 LSP 占用资源,系统采用 触发策略(Trigger Policy)。

  • 缺省触发方式

    • host(主机路由)触发 → 即只有 /32 的主机路由会触发建立 LSP。

    • 因此,缺省情况下只显示主机路由对应的 LSP。

默认触发策略,PE1只建立主机路由对应的LSP

5.4.5 LDP LSP的建立过程

——1、关键概念回顾

LSP 的建立过程,就是 FEC 与标签绑定,再由 LDP 将这种绑定逐跳通告邻居的过程。
最终逐跳拼接起来,就形成了一条完整的端到端 LSP。

关键概念:

1、地址消息与标签的关系

  • LDP 地址消息LDP 会话建立时发布,只携带本节点的接口地址信息,与具体的 FEC 无关。

  • 在后续接收标签时,节点会利用收到的地址消息来判断 某个 FEC 的标签发布者是否是该 FEC 的有效下一跳

  • 地址消息可以通过命令 dis mpls ldp session verbose 查看。

2、控制平面与转发平面

  • 标签信息库(LIB):控制平面信息,通过 dis mpls ldp lsp 查看,里面包括所有标签映射(有效和无效)。

  • 标签转发信息库(LFIB):转发平面信息,通过 dis mpls lsp 查看,里面只保留 有效 LSP,实际用于数据转发。

  • 控制平面能看到“全量标签”,而转发平面只显示“真正能转发的标签”。

——2、建立过程示例(FEC = 3.3.3.3/32)

1、PE2(Egress 节点)

  • FEC 3.3.3.3/32 是 PE2 的直连网段。

  • PE2 分配入标签 3(隐式空标签,用于 PHP),并发布给 LDP 对等体 P1。

  • 控制平面

能看到标签(3)映射关系,由于 PE2 是 这条LSP的Egress,没有下游节点,出标签为NULL。

  • 转发平面

也能看到对应的转发表项,报文在进入 Egress 节点时直接交给 IP 转发(或更高层 MPLS/VPN 处理)。

2、P1(Transit 节点)

  • P1 收到 PE2 发布的出标签 3

  • 在 P1 的路由表中,FEC 3.3.3.3/32 的下一跳是 192.168.23.3,该地址在 PE2 发布的地址消息里,所以 P1 认定 PE2 是有效下一跳。

  • 因此,P1 给该 FEC 分配入标签 1025,并发布给 LDP 对等体 PE1、PE2。

  • 控制平面

能看到 P1 的出标签(3)映射(含上游、下游关系)。
第一条LSP,本地节点作为Ingress,所以入标签 = NULL.

第二条LSP,本节点作为 Transit 节点时的 LSP 表项,负责将上游3.3.3.3的流量(入标签=1025 ),替换为出标签 3,送到下游。本节点分配给上游设备(3.3.3.3)的标签(1025),有分配标签的行为,就会产生这条LSP。

第三条LSP,和第二条类似。

  • 转发平面

  • NULL/3Ingress 场景,P1 作为起点(收到 IP 报文),发往下游时打标签 3(实际执行 PHP)。

  • 1025/3Transit 场景,P1 作为中间节点,收到带标签 1025 的 MPLS 报文,换成标签 3(实际执行 PHP),转发给 PE2。

  • 两个表项共同说明:P1 即可以是 Ingress,也可以是 Transit,都要保证流量能被送到 PE2。

3、PE2 收到 P1 发布的标签

  • PE2 收到 P1 发布的出标签 1025

  • 但对 FEC 3.3.3.3/32 来说,PE2 的下一跳是 127.0.0.1(本地直连)。

  • 该地址不在 P1 发布的地址消息中,所以 PE2 判定 P1 不是有效下一跳。

  • 因此,该标签只保留控制平面(LIB),不会进入 转发平面(LFIB)

  • 控制平面:

*星号

  • 表示这条 LSP 不是有效 LSP(没有进入 LFIB,仅保留在 LIB)。

  • 也就是说,它只在控制平面存在,不会用于真实转发。

Liberal/1025

  • Liberal:说明 LDP 采用 Liberal 保留模式 → 即使标签无效,也会先保留在 LIB 中,以备路由切换时使用。

  • 1025:这是从 P1(2.2.2.2)收到的标签值。

DS/2.2.2.2

  • DS = Downstream LSR,表示标签的发布者是下游 LSR。

  • 2.2.2.2 是 P1 的 LSR ID,说明该标签是 由 P1 分配并发布的

4、PE1(Ingress 节点)

  • PE1 收到 P1 发布的出标签 1025

  • 在 PE1 的路由表中,FEC 3.3.3.3/32 的下一跳是 192.168.12.2,该地址存在于 P1 发布的地址消息中。

  • 所以,PE1 确认 P1 是有效下一跳,并为该 FEC 分配入标签 1029,发布给 P1。

  • 控制平面

  • 转发平面

5、P1 收到 PE1 发布的标签

  • P1 收到 PE1 发布的出标签 1029

  • 但 P1 的路由表显示,FEC 3.3.3.3/32 的下一跳是 192.168.23.3,而不是 PE1 的地址。

  • 因此,P1 认定 PE1 不是有效下一跳,该标签只在 控制平面保留,不进入 转发平面

  • 控制平面:

——3、示例小结

FEC 与标签绑定后,由 LDP 逐跳通告邻居;当且仅当“发布者 = FEC 的下一跳”时,该标签才会被写入转发平面,最终拼接成端到端 LSP。

步骤节点关键动作有效下一跳判定结果
1PE2本地直连,分配入标签 3,通告给 P1控制平面 & 转发平面均安装 3/NULL
2P1收到 PE2 的标签 3;分配入标签 1025,通告给 PE1、PE2192.168.23.3 在 PE2 地址消息中 → PE2 有效控制平面 & 转发平面均安装 1025/3
3PE2收到 P1 的标签 1025下一跳 127.0.0.1 不在 P1 地址消息中 → P1 无效仅控制平面保留 1025,转发平面不安装
4PE1收到 P1 的标签 1025;分配入标签 1029,通告给 P1192.168.12.2 在 P1 地址消息中 → P1 有效控制平面 & 转发平面均安装 1029/1025
5P1收到 PE1 的标签 1029下一跳 192.168.23.3 不在 PE1 地址消息中 → PE1 无效仅控制平面保留 1029,转发平面不安装

——4、标签映射消息抓包

抓包端口为PE1的G0/0/0端口。

这里说明标签映射消息。

1、首先P1(LSR ID:2.2.2.2)向PE1发布FEC 2.2.2.2/32(标签:3)和FEC 3.3.3.3/32(标签:1025)消息:

Frame 142: 132 bytes on wire (1056 bits), 132 bytes captured (1056 bits) on interface -, id 0
Ethernet II, Src: 00:e0:fc:21:6d:78, Dst: 00:e0:fc:7e:3e:d8
Internet Protocol Version 4, Src: 2.2.2.2, Dst: 1.1.1.1
Transmission Control Protocol, Src Port: 50115, Dst Port: 646, Seq: 81, Ack: 77, Len: 78
Label Distribution ProtocolVersion: 1PDU Length: 74LSR ID: 2.2.2.2Label Space ID: 0Label Mapping Message0... .... = U bit: Unknown bit not setMessage Type: Label Mapping Message (0x400)Message Length: 30Message ID: 0x000003bdFEC00.. .... = TLV Unknown bits: Known TLV, do not Forward (0x0)TLV Type: FEC (0x100)TLV Length: 8FEC ElementsFEC Element 1FEC Element Type: Prefix FEC (2)FEC Element Address Type: IPv4 (1)FEC Element Length: 32Prefix: 2.2.2.2Generic Label00.. .... = TLV Unknown bits: Known TLV, do not Forward (0x0)TLV Type: Generic Label (0x200)TLV Length: 4.... .... .... 0000 0000 0000 0000 0011 = Generic Label: 3 (0x00003)Unknown TLV type (0x0900)11.. .... = TLV Unknown bits: Unknown TLV, do Forward (0x3)TLV Type: Unknown TLV type (0x900)TLV Length: 2TLV Value: ffffLabel Mapping Message0... .... = U bit: Unknown bit not setMessage Type: Label Mapping Message (0x400)Message Length: 30Message ID: 0x000003beFEC00.. .... = TLV Unknown bits: Known TLV, do not Forward (0x0)TLV Type: FEC (0x100)TLV Length: 8FEC ElementsFEC Element 1FEC Element Type: Prefix FEC (2)FEC Element Address Type: IPv4 (1)FEC Element Length: 32Prefix: 3.3.3.3Generic Label00.. .... = TLV Unknown bits: Known TLV, do not Forward (0x0)TLV Type: Generic Label (0x200)TLV Length: 4.... .... .... 0000 0000 0100 0000 0001 = Generic Label: 1025 (0x00401)Unknown TLV type (0x0900)11.. .... = TLV Unknown bits: Unknown TLV, do Forward (0x3)TLV Type: Unknown TLV type (0x900)TLV Length: 2TLV Value: 05dc

注意标签映射消息LSR ID信息,接收方就是通过LSR  ID查找对应的地址消息,从而判断发送方是否是该FEC的有效下一跳的。

2、PE1(LSR ID:1.1.1.1)向P1发布了FEC 2.2.2.2/32(标签:1028),FEC 3.3.3.3/32(标签:1029)的标签映射消息:

Frame 143: 132 bytes on wire (1056 bits), 132 bytes captured (1056 bits) on interface -, id 0
Ethernet II, Src: 00:e0:fc:7e:3e:d8, Dst: 00:e0:fc:21:6d:78
Internet Protocol Version 4, Src: 1.1.1.1, Dst: 2.2.2.2
Transmission Control Protocol, Src Port: 646, Dst Port: 50115, Seq: 77, Ack: 159, Len: 78
Label Distribution ProtocolVersion: 1PDU Length: 74LSR ID: 1.1.1.1Label Space ID: 0Label Mapping Message0... .... = U bit: Unknown bit not setMessage Type: Label Mapping Message (0x400)Message Length: 30Message ID: 0x000001e2FEC00.. .... = TLV Unknown bits: Known TLV, do not Forward (0x0)TLV Type: FEC (0x100)TLV Length: 8FEC ElementsFEC Element 1FEC Element Type: Prefix FEC (2)FEC Element Address Type: IPv4 (1)FEC Element Length: 32Prefix: 2.2.2.2Generic Label00.. .... = TLV Unknown bits: Known TLV, do not Forward (0x0)TLV Type: Generic Label (0x200)TLV Length: 4.... .... .... 0000 0000 0100 0000 0100 = Generic Label: 1028 (0x00404)Unknown TLV type (0x0900)11.. .... = TLV Unknown bits: Unknown TLV, do Forward (0x3)TLV Type: Unknown TLV type (0x900)TLV Length: 2TLV Value: 05dcLabel Mapping Message0... .... = U bit: Unknown bit not setMessage Type: Label Mapping Message (0x400)Message Length: 30Message ID: 0x000001e3FEC00.. .... = TLV Unknown bits: Known TLV, do not Forward (0x0)TLV Type: FEC (0x100)TLV Length: 8FEC ElementsFEC Element 1FEC Element Type: Prefix FEC (2)FEC Element Address Type: IPv4 (1)FEC Element Length: 32Prefix: 3.3.3.3Generic Label00.. .... = TLV Unknown bits: Known TLV, do not Forward (0x0)TLV Type: Generic Label (0x200)TLV Length: 4.... .... .... 0000 0000 0100 0000 0101 = Generic Label: 1029 (0x00405)Unknown TLV type (0x0900)11.. .... = TLV Unknown bits: Unknown TLV, do Forward (0x3)TLV Type: Unknown TLV type (0x900)TLV Length: 2TLV Value: 05dc
  • 会话双方1.1.1.1 → 2.2.2.2(LSR ID=1.1.1.1 向对等体 2.2.2.2 发包)

  • 载荷:同一帧里包含 两条 Label Mapping(前缀 FEC)

    • FEC 2.2.2.2/32 分配 标签 1028

    • FEC 3.3.3.3/32 分配 标签 1029

  • 结论:这是 下游(1.1.1.1)→ 上游(2.2.2.2)DU 模式标签通告;2.2.2.2 收到后会把这两个标签放进 LIB,并分别判断是否为有效下一跳,符合条件的才进 LFIB 用于转发。

3、PE1(LSR ID:1.1.1.1)向P1发布了FEC 1.1.1.1/32(标签:3)的标签映射消息:

Frame 146: 98 bytes on wire (784 bits), 98 bytes captured (784 bits) on interface -, id 0
Ethernet II, Src: 00:e0:fc:7e:3e:d8, Dst: 00:e0:fc:21:6d:78
Internet Protocol Version 4, Src: 1.1.1.1, Dst: 2.2.2.2
Transmission Control Protocol, Src Port: 646, Dst Port: 50115, Seq: 155, Ack: 159, Len: 44
Label Distribution ProtocolVersion: 1PDU Length: 40LSR ID: 1.1.1.1Label Space ID: 0Label Mapping Message0... .... = U bit: Unknown bit not setMessage Type: Label Mapping Message (0x400)Message Length: 30Message ID: 0x000001e4FEC00.. .... = TLV Unknown bits: Known TLV, do not Forward (0x0)TLV Type: FEC (0x100)TLV Length: 8FEC ElementsFEC Element 1FEC Element Type: Prefix FEC (2)FEC Element Address Type: IPv4 (1)FEC Element Length: 32Prefix: 1.1.1.1Generic Label00.. .... = TLV Unknown bits: Known TLV, do not Forward (0x0)TLV Type: Generic Label (0x200)TLV Length: 4.... .... .... 0000 0000 0000 0000 0011 = Generic Label: 3 (0x00003)Unknown TLV type (0x0900)11.. .... = TLV Unknown bits: Unknown TLV, do Forward (0x3)TLV Type: Unknown TLV type (0x900)TLV Length: 2TLV Value: ffff

4、P1(LSR ID:2.2.2.2)向PE1发布FEC 1.1.1.1/32(标签:1026)标签映射消息:

Frame 147: 98 bytes on wire (784 bits), 98 bytes captured (784 bits) on interface -, id 0
Ethernet II, Src: 00:e0:fc:21:6d:78, Dst: 00:e0:fc:7e:3e:d8
Internet Protocol Version 4, Src: 2.2.2.2, Dst: 1.1.1.1
Transmission Control Protocol, Src Port: 50115, Dst Port: 646, Seq: 159, Ack: 199, Len: 44
Label Distribution ProtocolVersion: 1PDU Length: 40LSR ID: 2.2.2.2Label Space ID: 0Label Mapping Message0... .... = U bit: Unknown bit not setMessage Type: Label Mapping Message (0x400)Message Length: 30Message ID: 0x000003bfFEC00.. .... = TLV Unknown bits: Known TLV, do not Forward (0x0)TLV Type: FEC (0x100)TLV Length: 8FEC ElementsFEC Element 1FEC Element Type: Prefix FEC (2)FEC Element Address Type: IPv4 (1)FEC Element Length: 32Prefix: 1.1.1.1Generic Label00.. .... = TLV Unknown bits: Known TLV, do not Forward (0x0)TLV Type: Generic Label (0x200)TLV Length: 4.... .... .... 0000 0000 0100 0000 0010 = Generic Label: 1026 (0x00402)Unknown TLV type (0x0900)11.. .... = TLV Unknown bits: Unknown TLV, do Forward (0x3)TLV Type: Unknown TLV type (0x900)TLV Length: 2TLV Value: 05dc

收到下游PE1对FEC1.1.1.1/32的标签分配后,自己(P1)也对FEC1.1.1.1/32分配了标签1026,并对外以下游自主方式(DU)方式发布。

http://www.dtcms.com/a/348344.html

相关文章:

  • Java Stream API详解
  • iptables 防火墙核心知识梳理(附实操指南)
  • VS2022的MFC中关联使用控制台并用printf输出调试信息
  • GPT 模型详解:从原理到应用
  • 构建AI智能体:十二、给词语绘制地图:Embedding如何构建机器的认知空间
  • 大白话解析:多证明验证(Merkle Multi-Proof)​
  • 【Python】CSV批量转Excel工具 (Tkinter版)
  • 【Docker基础】Docker-compose多容器协作案例示例:从LNMP到分布式应用集群
  • 复杂姿态误报率↓78%!陌讯多模态算法在跌倒检测的医疗落地
  • 恶劣天气下漏检率↓79%!陌讯多模态时序融合算法在道路事故识别的实战优化
  • 第16届蓝桥杯C++中高级选拔赛(STEMA)2025年1月12日真题
  • 大模型面试题剖析:模型微调和蒸馏核心技术拆解与考点梳理
  • 爆肝三周,我终于上线了自己的第一个小程序
  • 01-鸿蒙系统概览与发展历程
  • 鸿蒙中Frame分析
  • 线段树相关算法题(1)
  • mybatis过渡到mybatis-plus过程中需要注意的地方
  • 自由学习记录(87)
  • 《飞算Java开发实战:从入门安装到项目部署》
  • FPGA 时序分析(一)
  • ubuntu中的nginx.conf和windows中的nginx.conf内容对比
  • LeetCode 101 刷题 - (1) 第一章 最易懂的贪心算法
  • K8S核心知识点
  • Teams Bot机器人实时语音识别的多引擎的处理
  • 【大语言模型 17】高效Transformer架构革命:Reformer、Linformer、Performer性能突破解析
  • 【机器人零件】蜗轮蜗杆减速器
  • Android面试指南(五)
  • 数据挖掘 4.1~4.7 机器学习性能评估参数
  • RandAR训练自己的数据集
  • 多核多线程消息队列传递指针存在可见性问题吗?