4.9.1MPLS的工作原理
一、MPLS基本工作原理
MPLS(Multiprotocol Label Switching)是一种介于数据链路层和网络层之间的转发技术,通过固定长度的标签进行高速数据转发。其核心特点是通过预建立的标签交换路径(Label Switching Path, LSP)实现优化路由。
关键角色:
- LER(标签边缘路由器)
- 入口LER(Ingress LER):压入(Push)初始标签
- 出口LER(Egress LER):弹出(Pop)标签
- LSR(标签交换路由器):根据标签转发表进行标签交换
二、工作流程
控制面:

数据面:

三、核心处理机制
-
标签压入(Push)
- 入口LER收到IP包后:
- 入口LER收到IP包后:
-
标签交换(Swap)
-
中间LSR根据标签转发表:
输入标签20 → 输出标签30,接口Gi0/1
-
-
标签弹出(Pop)
- 出口LER移除标签恢复原始IP包
四、标签格式

五、MPLS关键特性
-
转发优势:
- 基于固定长度标签的硬件转发(对比IP的最长前缀匹配)
- 典型转发速度:100ns级 vs 传统路由器1μs级
-
服务支持:
- 流量工程(避免网络拥塞)
- QoS服务等级保障
- VPN跨域互连
六、典型应用场景

七、与传统IP转发对比
特性 | 传统IP转发 | MPLS转发 |
---|---|---|
转发依据 | 目标IP地址 | 固定长度标签 |
转发方式 | 逐跳路由 | 预建立LSP路径 |
流量控制 | 基本路由选择 | 支持流量工程 |
包头解析层次 | 网络层(IP头) | 数据链路层与网络层之间 |
这种基于标签的交换机制使得MPLS在大型运营商网络和企业骨干网中广泛应用,特别适合需要服务质量保障和流量优化的场景。通过预建立的LSP路径,可以有效避免网络拥塞并实现快速故障恢复。
4.9.2MPLS首部的位置与格式
一、MPLS首部的位置
MPLS首部位于数据链路层(如以太网)首部和网络层(如IPv4/IPv6)首部之间,它用于标签交换,是MPLS网络中数据包转发的核心标识。
1. 数据包封装结构:
在MPLS网络中,数据包的封装顺序如下(以以太网为例):
[ 以太网头 | MPLS标签头 | IP头 | 数据 ]
- 数据链路层首部(如以太网帧头):标识链路层信息(MAC地址等)。
- MPLS标签头:添加的标签,用于标识转发路径。
- 网络层首部(如IPv4/IPv6):原始IP头。
2. 典型场景示意图:

二、MPLS首部的格式
MPLS首部长度固定为 32位(4字节),由以下字段组成:
字段名 | 长度(位) | 描述 |
---|---|---|
Label | 20 | 标签值,标识转发路径(范围:0-1048575)。 |
TC | 3 | 流量类别(Traffic Class),用于服务质量(QoS)优先级控制。 |
S(Bottom of Stack) | 1 | 栈底标志:1表示当前是最后一个标签,0表示后续还有更多标签(多层标签栈)。 |
TTL | 8 | 生存时间,与IP头的TTL类似,每经过一个路由器减1,防止环路。 |
1. 首部结构示意图:

2. 关键字段说明:
- Label(标签值) :
- 标签的取值范围为
0
到2^20-1
(即 0-1048575)。 - 特殊标签(如隐式空标签
3
、显式空标签0
)有特定用途。
- 标签的取值范围为
- TC(流量类别) :
- 用于标记流量优先级,常见的应用是区分服务(DiffServ)模型。
- S(栈底标志) :
- 当多层标签栈存在时(如VPN或流量工程),此标志指明是否为最后一层标签。
- TTL(生存时间) :
- 初始值为IP头TTL的一部分,或直接赋值。每经一跳减1,防止环路。
三、MPLS标签栈(多层标签)
在实际场景中(如VPN或跨域流量),数据包可能携带多层MPLS标签,形成 标签栈 。
示例结构:
[ 以太网头 | 外层MPLS标签头 | 内层MPLS标签头 | IP头 | 数据 ]
- 外层标签(S=0)标识转发路径,交换机根据外层标签转发。
- 内层标签(S=1)标识应用场景(如VPN实例)。
流程示意图:

四、MPLS网络中的操作
- 压入(Push):入口路由器为数据包添加标签。
- 交换(Swap):核心路由器根据标签转发表修改标签值。
- 弹出(Pop):出口路由器删除标签,还原原始IP包。
五、MPLS vs 传统IP路由对比
特性 | MPLS标签交换 | 传统IP路由 |
---|---|---|
转发依据 | 标签值 | 目的IP + 路由表 |
效率 | 硬件快速匹配固定长度标签 | 逐跳匹配IP地址(较慢) |
功能扩展 | 支持流量工程、VPN、QoS | 功能有限 |
4.9.3新一代的MPLS
新一代MPLS的核心改进方向
现代MPLS演进的主要方向:
- SR-MPLS(Segment Routing MPLS)
通过引入段路由技术,简化传统MPLS的标签分配流程,原生支持流量工程和快速故障恢复。 - SDN与MPLS的结合
通过SDN控制器集中化管理标签路径,提高网络灵活性。 - 服务增强
支持更细粒度的QoS、低延迟转发(如5G承载网中的uFRR)。 - 虚拟化支持
以MPLS为基础构建灵活叠加的网络架构(如EVPN over MPLS)。
新一代MPLS的关键技术细节
1. SR-MPLS的工作原理
SR通过"路径分段"代替传统的LDP/RSVP协议,标签由控制器或头节点统一分配:
- Segment(段):分为前缀段(Node/Adjacency Segments)、绑定段(Binding Segments)。
- 标签生成:由入口节点(Ingress)直接指定路径的段列表(Label Stack)。
- 优势:避免分布式协议的开销,支持短路径和显式路径。
流程图示例(SR-MPLS标签分配与转发):

2. MPLS与SDN的融合架构
通过集中控制取代传统分布式信令协议(如LDP)的标签分配:
- SDN控制器:计算最优路径,下发Flow Rule到LSR(标签交换路由器)。
- 转发表简化:仅需按控制器指示匹配标签,无需维护复杂的路由协议状态。
架构图示例(SDN+MPLS):

3. 流量工程(MPLS-TE)的优化
新一代MPLS在流量工程中的改进:
- 动态带宽调整:根据实时流量需求重优化路径。
- 低延迟路径:通过显式路径配置。
流程示意图(动态流量调整):

4. MPLS在虚拟化网络中的应用(如EVPN)
通过MPLS构建叠加网络,支持多租户虚拟化(如云计算数据中心互联):
- EVPN over MPLS:BGP协议分发MAC地址+MPLS标签。
- 标签代表VXLAN VNI,实现跨数据中心的二层互通。
转发逻辑图(EVPN over MPLS):
与传统MPLS的核心对比
特性 | 传统MPLS | 新一代MPLS |
---|---|---|
标签分发协议 | LDP/RSVP-TE | Segment Routing/SDN |
控制平面 | 分布式协议 | 集中式SDN控制器 |
故障恢复速度 | 秒级(依赖协议收敛) | 毫秒级(快速重路由) |
流量工程能力 | 静态路径配置 | 动态实时优化 |
编程灵活性 | 仅支持预定义策略 | 可编程路径(P4/OpenFlow) |