29、多协议标签交换

MPLS(Multi--Protocol Label Switching,多协议标签交换):提高路由器转发速度。与传统IP路由方式相比,MPLS在数据转发时,只在网络边缘分析P报文头,在网络内部采用更为高效的标(Label)转发,节约了处理时间。

MPLS位于数据链路层和网络层之间,可以向所有网络层提供服务。

通过在数据链路层和网络层之间增加额外的MPLS头部,基于MPLS头部实现数据快速转发。

image-20250328193420848

MPLS概述

MPLS术语

MPLS域(MPLS Domain):一系列连续的运行MPLS的网络设备构成了一个MPLS域。

LSR(Label Switching Router,标签交换路由器):支持MPLS的路由器(实际上也指支持MPLS的交换机或其他网络设备)。

根据位置分类:

  • 边沿路由器LER(Label Edge Router)
  • 核心LSR(Core LSR)

根据对数据处理方式的不同进行分类:

  • 入站LSR(Ingress LSR):通常是向IP报文中压入MPLS头部并生成MPLS报文的LSR。
  • 中转LSR(Transit LSR):通常是将MPLS报文进行例如标签置换操作,并将报文继续在MPLS域中转发的LSR。
  • 出站LSR(Egress LSR):通常是将MPLS报文中MPLS头部移除,还原为IP报文的LSR。

image-20250328194054102

FEC(Forwarding Equivalence Class,转发等价类):是一组具有某些共性的数据流的集合,这些数据流在转发过程中被网络节点以相同方式处理。

  • FEC可以通过多种方式划分,例如基于目的IP地址及网络掩码、DSCP等特征来划分。
  • 数据属于哪一个LSP,由数据进入MPLS域时的Ingress LSR决定。
  • MPLS标签通常是与FEC相对应的,必须有某种机制使得网络中的LSR获得关于某FEC的标签信息。

LSP(Label Switched Path,标签交换路径):是标签报文穿越MPLS网络到达目的地所走的路径。

同一个FEC的报文通常采用相同的LSP穿越MPLS域,所以对同一个FEC,LSR总是用相同的标签转发。

需要注意的是,LSP是一个从“起点”到“终点”的单向路径,若需要双向数据互通,则需要在双方之间建立双向的LSP。

MPLS标签

IP报文进入MPLS域之前,会被入站LSR压入MPLS头部(又叫MPLS标签),形成一个MPLS标签报文。

一个标签报文可以包含一个或多个MPLS标签。

image-20250328194943000

MPLS支持一层或多层标签头部,这些标签头部的有序集合被称为标签栈(Label Stack)

当标签栈中存在多个标签时,这些标签的顺序是非常讲究的:

  • 最靠近二层头部的标签是栈顶标签,标签中的S字段为0
  • 最靠近IP头部的标签是栈底标签,标签中的S字段为1

image-20250328195121943

标签是一个短而定长的、只具有本地意义的标识符。标签空间就是指标签的取值范围。

标签值的范围及规划如下:

image-20250328195232630

LSR对标签的操作类型包括标签压入(Push)、标签交换(Swap)和标签弹出(Pop)。

image-20250328195406661

MPLS转发

MPLS转发的本质就是将数据归到对应的FEC并按照提前建立好的LSP进行转发

  • 对于整个MPLS域,LSP是某一给定的FEC进入域和离开域的路径,可以看成是LSR的有序集合。
  • 对于单台LSR,需要建立标签转发表,用标签来标识FEC,并绑定相应的标签处理和转发等行为。

image-20250328195723356

MPLS体系结构

MPLS的体系结构由控制平面(Control Plane)和转发平面(Forwarding Plane)组成。

控制平面:

  1. 负责产生和维护路由信息以及标签信息。
  2. 控制平面包括IP路由协议和路由信息表,标签分发协议和标签信息表。

转发平面:

  1. 也称数据平面(Data Plane),负责普通IP报文的转发以及带MPLS标签报文的转发。
  2. 转发平面包括IP转发信息表和标签转发信息表。

image-20250328200059568

LSP建立

当网络层协议为IP协议时,FEC所对应的路由必须存在于LSR的IP路由表中,否则该FEC的标签转发表项不生效。

LSR用标签标识指定FEC,所以该FEC的数据被发送至LSR时,必须携带正确的标签,才能被LSR正确的处理。

image-20250328200503202

MPLS需要为报文事先分配好标签,建立一条LSP,才能进行报文转发。LSP分为静态LSP和动态LSP两种。

静态LSP

  • 基本概念:
    • 静态LSP是用户通过手工为各个FEC分配标签而建立的。
    • 静态LSP不使用标签发布协议,不需要交互控制报文,因此消耗资源比较小。
    • 通过静态方式建立的LSP不能根据网络拓扑变化动态调整,需要管理员干预。
  • 应用场景:
    • 适用于拓扑结构简单并且稳定的小型网络。
  • 标签分配原则:
    • 前一节点出标签的值等于下一个节点入标签的值。

动态LSP

  • 基本概念:
    • 动态LSP通过标签发布协议动态建立。
    • 标签发布协议是MPLS的控制协议(也可称为信令协议),负责FEC的分类、标签的分发以LSP的建立和维护等一系列操作。
  • 常用标签发布协议:标签分发协议(LDP)
    • 全称:Label Distribution Protocol
    • 定义:LDP是多协议标签交换MPLS的一种控制协议,负责转发等价类FEC的分类、标签的分配以及标签交换路径LSP的建立和维护等操作。LDP规定了标签分发过程中的各种消息以及相关处理过程。
    • 应用场景:LDP广泛地应用在VPN服务上,具有组网、配置简单、支持基于路由动态建立LSP、支持大容量LSP等优点。

标签转发

LSR处理报文时主要根据FTN、NHLFE和ILM。

image-20250328201427895

Ingress LSR的处理

image-20250328202014838

Transit LSR的处理

image-20250328202037246

Egress LSR的处理

image-20250328202248697

image-20250328202411133

静态LSP配置命令

必须先配置LSR ID才能使能MPLS。MPLS全局和接口都要使能。

image-20250328203004361

静态MPLS的标签取值范围:

  • 入标签:16~1023
  • 出标签:16~1048575
  • 其实如果一整条链路都是静态LSP,入、出标签都只能在16~1023。因为前一个节点的出标签必须等于下一个节点的入标签,以确保 LSP 路径的连续性。

image-20250328203021113

image-20250328203608799

思考题

image-20250328212502043

  1. AC

  2. B(入标签需要与上游设备的出标签相对应,不能随便设置)

实验案例

image-20250329115852991

# 公共配置,配置lsr-id,并使能mpls。以R1为例
mpls lsr-id 1.1.1.1
mpls

目的为3.3.3.3的FEC

# R1作为入站lsr,配置一条名称为1-3的lsp
static-lsp ingress 1-3 destination 3.3.3.3 32 nexthop 12.1.1.2 out-label 200
# R2作为中转lsr,配置一条名称为1-3的lsp
static-lsp transit 1-3 incoming-interface g0/0/0 in-label 200 outgoing-interface g0/0/1 out-label 100 
# R3作为出站lsr,配置一条名称为1-3的lsp
static-lsp egress 1-3 incoming-interface g0/0/0 in-label 100
# R3从g0/0/0接口收到标签为100的包,就将标签剥离

目的为1.1.1.1的FEC

# R3
static-lsp ingress 3-1 destination 1.1.1.1 32 nexthop 23.1.1.2 out-label 100
# R2
static-lsp transit 3-1 incoming-interface g0/0/01 in-label 100 outgoing-interface g0/0/0 out-label 300
# R1
static-lsp egress 3-1 incoming-interface g0/0/0 in-label 300

如果只配置了3.3.3.3的FEC,则在R1上ping 3.3.3.3时,去的包带标签,但回的包不带,使用普通的IP封装进行传送。

按理说,配置了1.1.1.1的 FEC后,回包就应该带上标签了吧,但是抓包发现,回包仍然没有带标签。

但实际情况是,无论是R1pingR3还是反过来,结果都是请求包带标签,回应包不带标签。

可能是我配置的问题,也可能本来就是这样。

posted @ 2025-05-28 12:16  最爱喝开水  阅读(69)  评论(0)    收藏  举报