MPLS基础

news2024/11/26 3:38:47

1. MPLS原理与配置

MPLS基础

(1)MPLS概念

MPLS位于TCP/IP协议栈中的数据链路层和网络层之间,可以向所有网络层提供服务。
通过在数据链路层和网络层之间增加额外的MPLS头部,基于MPLS头部实现数据快速转发。
本课程仅介绍MPLS在IP网络中的应用。

MPLS术语

1)LSR与MPLS域
MPLS域(MPLS Domain):一系列连续的运行MPLS的网络设备构成了一个MPLS域。
LSR(Label Switching Router,标签交换路由器):支持MPLS的路由器(实际上也指支持MPLS的交换机或其他网络设备)。位于MPLS域边缘、连接其它网络的LSR称为边沿路由器LER(Label Edge Router),区域内部的LSR称为核心LSR(Core LSR)。
LSR分类
除了根据LSR在MPLS域中的位置进行分类之外,还可以根据对数据处理方式的不同进行分类:
入站LSR(Ingress LSR):通常是向IP报文中压入MPLS头部并生成MPLS报文的LSR。
中转LSR(Transit LSR):通常是将MPLS报文进行例如标签置换操作,并将报文继续在MPLS域中转发的LSR。
出站LSR(Egress LSR):通常是将MPLS报文中MPLS头部移除,还原为IP报文的LSR。
2)FEC
FEC(Forwarding Equivalence Class,转发等价类)是一组具有某些共性的数据流的集合,这些数据流在转发过程中被网络节点以相同方式处理。
在MPLS网络中,FEC可以通过多种方式划分,例如基于目的IP地址及网络掩码、DSCP等特征来划分。
数据属于哪一个LSP,由数据进入MPLS域时的Ingress LSR决定。
MPLS标签通常是与FEC相对应的,必须有某种机制使得网络中的LSR获得关于某FEC的标签信息。
3)LSP
LSP(Label Switched Path,标签交换路径)是标签报文穿越MPLS网络到达目的地所走的路径。
同一个FEC的报文通常采用相同的LSP穿越MPLS域,所以对同一个FEC,LSR总是用相同的标签转发。

MPLS标签

IP报文进入MPLS域之前,会被入站LSR压入MPLS头部(又叫MPLS标签),形成一个MPLS标签报文。一个标签报文可以包含一个或多个MPLS标签。
在这里插入图片描述
标签(Label):用于携带标签值,长度20bit。
EXP(Experimental Use):主要用于CoS(Class of Service),长度3bit。
S(Bottom of Stack):栈底位,用于指示该标签头部是否为最后一层标签,长度1bit。如果该字段为1,则表示当前标签头部为栈底;如果该字段为0,则表示当前标签头部之后依然还有其他标签头部。
TTL(Time To Live):用于当网络出现环路时,防止标签报文被无限制转发,与IP报文头部中的TTL具有相同的意义,长度8bit。

MPLS标签栈

MPLS支持一层或多层标签头部,这些标签头部的有序集合被称为标签栈(Label Stack)。
当标签栈中存在多个标签时,这些标签的顺序是非常讲究的:
最靠近二层头部的标签是栈顶标签,标签中的S字段为0。
最靠近IP头部的标签是栈底标签,标签中的S字段为1。
在这里插入图片描述

标签空间

标签是一个短而定长的、只具有本地意义的标识符。标签空间就是指标签的取值范围。标签值的范围及规划如下:
在这里插入图片描述

MPLS标签的处理

LSR对标签的操作类型包括标签压入(Push)、标签交换(Swap)和标签弹出(Pop)。
①Push:IP报文进入MPLS域时,MPLS边界设备在报文二层头部和IP头部之间插入一个新标签;MPLS中间设备也可根据需要,在标签栈顶增加一个新的标签。
②Swap:当报文在MPLS域内转发时,根据标签转发表,用下一跳分配的标签,替换MPLS报文的栈顶标签。
③Pop:当报文离开MPLS域时,将MPLS报文的标签去掉。

(2)MPLS转发

MPLS转发概述

MPLS转发的本质就是将数据归到对应的FEC并按照提前建立好的LSP进行转发。
对于整个MPLS域,LSP是某一给定的FEC进入域和离开域的路径,可以看成是LSR的有序集合。
对于单台LSR,需要建立标签转发表,用标签来标识FEC,并绑定相应的标签处理和转发等行为。

MPLS体系结构

MPLS的体系结构由控制平面 (Control Plane)和转发平面 (Forwarding Plane)组成。
控制平面:
负责产生和维护路由信息以及标签信息。
控制平面包括IP路由协议和路由信息表,标签分发协议和标签信息表。
转发平面:
也称数据平面(Data Plane),负责普通IP报文的转发以及带MPLS标签报文的转发。
转发平面包括IP转发信息表和标签转发信息表。
在这里插入图片描述

LSP建立原则

当网络层协议为IP协议时,FEC所对应的路由必须存在于LSR的IP路由表中,否则该FEC的标签转发表项不生效。
LSR用标签标识指定FEC,所以该FEC的数据被发送至LSR时,必须携带正确的标签,才能被LSR正确的处理。

LSP建立方式

MPLS需要为报文事先分配好标签,建立一条LSP,才能进行报文转发。LSP分为静态LSP和动态LSP两种。
1)静态LSP
基本概念:
静态LSP是用户通过手工为各个FEC分配标签而建立的。
静态LSP不使用标签发布协议,不需要交互控制报文,因此消耗资源比较小。
通过静态方式建立的LSP不能根据网络拓扑变化动态调整,需要管理员干预。
应用场景:
适用于拓扑结构简单并且稳定的小型网络。
标签分配原则:
前一节点出标签的值等于下一个节点入标签的值。
2)动态路由
基本概念:
动态LSP通过标签发布协议动态建立。
标签发布协议是MPLS的控制协议(也可称为信令协议),负责FEC的分类、标签的分发以及LSP的建立和维护等一系列操作。
常用标签发布协议:标签分发协议 (LDP)
全称:Label Distribution Protocol。
定义:LDP是多协议标签交换MPLS的一种控制协议,负责转发等价类FEC的分类、标签的分配以及标签交换路径LSP的建立和维护等操作。LDP规定了标签分发过程中的各种消息以及相关处理过程。
应用场景:LDP广泛地应用在VPN服务上,具有组网、配置简单、支持基于路由动态建立LSP、支持大容量LSP等优点。

MPLS标签转发

LSR处理报文时主要根据FTN、NHLFE和ILM。
1)FTN
FTN(FEC-to-NHLFE):当LSR收到IP报文并需要进行MPLS转发时使用,FTN只在Ingress存在。
FTN包括:Tunnel ID、FEC到NHLFE的映射信息。
2)NHLFE
下一跳标签转发表项(Next Hop Label Forwarding Entry):LSR对报文(MPLS或IP报文)进行MPLS转发时使用,NHLFE在Ingress和Transit存在
NHLFE包括:Tunnel ID、出接口、下一跳、出标签、标签操作类型等信息。
3)ILM
入标签映射(ILM,Incoming Label Map):用于指导MPLS报文的转发(MPLS或IP转发),ILM只在Transit和Egress存在。
ILM包括:Tunnel ID、入标签、入接口、标签操作类型等信息。

Ingress LSR的处理

当IP报文进入MPLS域时:
①Ingress LSR查看FIB表,检查目的IP地址对应的Tunnel ID值是否为0x0(如果Tunnel ID值为0x0,则进入正常的IP转发流程)。
②如果Tunnel ID值不为0x0,根据FIB表的Tunnel ID找到对应的NHLFE表项,将FIB表项和NHLFE表项关联起来。
③查看NHLFE表项,可以得到出接口、下一跳、出标签和标签操作类型。
④在IP报文中压入出标签,同时处理TTL,然后将封装好的MPLS报文发送给下一跳。
当MPLS报文在MPLS域转发时:
⑤Transit LSR根据MPLS的标签值查看对应的ILM表,得到Tunnel ID。
⑥根据ILM表的Tunnel ID找到对应的NHLFE表项。
⑦查看NHLFE表项,得到出接口、下一跳、出标签和标签操作类型,标签操作类型为Swap,则交换标签。
当MPLS报文需要离开MPLS域时:
⑧Egress根据ILM查询到该标签对应的操作为Pop,说明需要剥离该标签
⑨根据当前标签头部的下一层报文头部进行下一步处理

2. MPLS LDP基础

(1)LDP(标签分发协议)概念

LDP协议概述

LDP是MPLS的一种控制协议,相当于传统网络中的信令协议,负责FEC的分类、标签的分配以及LSP的建立和维护等操作。LDP规定了标签分发过程中的各种消息以及相关处理过程。
LDP的工作过程主要分为两部分:
①LSR之间建立LDP会话。
②LSR之间基于LDP会话动态交换标签与FEC的映射信息,并根据标签信息建立LSP。

LDP会话、LDP邻接体、LDP对等体

LSR之间交互标签绑定消息之前必须建立LDP会话。LDP会话可以分为:
①本地LDP会话(Local LDP Session):建立会话的两个LSR之间是直连的;
②远程LDP会话(Remote LDP Session):建立会话的两个LSR之间可以是直连的,也可以是非直连的。
两台LSR之间交互Hello消息之后,即建立起邻接体(Adjacency)关系;
在建立邻接体关系的基础上,两台LSR之间交互LDP会话消息,建立起LDP会话,两台设备之间形成LDP对等体关系;

LSR ID 与LDP ID

每一台运行了LDP的LSR除了必须配置LSR ID,还必须拥有LDP ID。
①LDP ID的长度为48bit,由32bit的LSR ID与16bit的标签空间标识符(Label Space ID)构成。
②LDP ID以“LSR ID : 标签空间标识”的形式呈现。例如2.2.2.2:0。
标签空间标识一般存在两种形态:
①值为0:表示基于设备(或基于平台)的标签空间;
②值非0:表示基于接口的标签空间。

LDP消息

运行LDP协议的LSR之间通过交换LDP消息来实现邻居发现、会话建立与维护以及标签管理等功能。
在这里插入图片描述

LDP报文封装

LDP协议报文包括了LDP头部和LDP消息两部分。
LDP头部中携带了LDP版本、报文长度等信息;
LDP消息中携带了消息类型、消息长度等信息。
在这里插入图片描述

(2)LDP工作原理

LDP会话状态机

LDP使用5种状态描述LDP会话状态机
在这里插入图片描述

LDP会话建立

1)发现阶段与TCP建立阶段
①发现阶段
设备通过周期性地发送LDP链路Hello报文(LDP Link Hello),实现LDP基本发现机制。
LDP链路Hello报文使用UDP报文,目的地址是组播地址224.0.0.2。如果LSR在特定接口接收到LDP链路Hello报文,表明该接口存在LDP邻接体。
②TCP建立阶段
Hello报文中携带传输地址,双方后续将使用传输地址建立LDP会话。
传输地址较大的一方作为主动方,主动发起建立TCP连接。
经过TCP三次握手之后,两者建立起TCP连接。
2)会话建立与保持
TCP连接建立成功后,主动方R2(传输地址大的一方)发送LDP初始化报文,协商建立LDP会话的相关参数。
LDP会话的相关参数包括LDP协议版本、标签分发方式、KeepAlive保持定时器的值、最大PDU长度和标签空间等。
被动方R1收到初始化报文后,若接受R2的相关参数,则回应KeepAlive报文作为确认,为了提高发送效率同时发送自己的初始化报文。
R2收到R1的初始化报文后,若接受相关参数,则回复KeepAlive报文给R1。
双方都收到对端的KeepAlive报文后,会话建立成功。后续通过周期性发送的KeepAlive报文
在这里插入图片描述

LDP邻居状态

PeerID:LDP邻居的LDP ID;
2.2.2.2代表的是邻居节点的LSR ID;
0代表的是标签空间是基于平台的;
TransportAddress:LDP邻居的传输地址;
2.2.2.2代表邻居用来建立TCP连接的IP地址。
LDP会话状态
Status:LDP会话的状态;
Operational表示LDP会话建立成功;
LAM:标签发布模式:
标签发布模式有DU和DoD两种模式(后文介绍);
此例中采用的是DU(下游自主)模式;
SsnRole:LSR在LDP会话中的角色;
Active表示建立LDP会话的主动方;Passive表示建立LDP会话的被动方;

(3)LDP标签分发

标签的发布和管理

在MPLS网络中,下游LSR决定标签和FEC的绑定关系,并将这种绑定关系发布给上游LSR。
LDP通过发送标签请求和标签映射消息,在LDP对等体之间通告FEC和标签的绑定关系来建立LSP
标签的发布和管理由标签发布方式、标签分配控制方式和标签保持方式来决定。
在这里插入图片描述

上游与下游

MPLS根据数据的转发方向确定上、下游关系。标签报文从上游LSR发出,被下游LSR接收并处理。

标签发布方式

1)DU模式
对于一个特定的FEC,LSR无需从上游获得标签请求消息即进行标签分配与分发。
LSR会主动将自己为FEC捆绑的标签通告给上游邻居,无需邻居先发起请求再通告。
2)DoD模式
对于一个特定的FEC,LSR获得标签请求消息之后才进行标签分配与分发。
一般情况下,对特定FEC的访问需求会触发标签请求消息。

标签分配控制方式

1)有序(Ordered)模式
对于LSR上某个FEC的标签映射,只有当该LSR已经具有此FEC下一跳的标签映射消息、或者该LSR就是此FEC的出节点时,该LSR才可以向上游发送此FEC的标签映射。
2)独立模式
本地LSR可以自主地分配一个标签绑定到某个FEC,并通告给上游LSR,而无需等待下游的标签。

标签保留

1)自由(Liberal)模式
LSR收到的标签映射可能来自下一跳,也可能来自非下一跳。
对于从邻居LSR收到的标签映射,无论邻居LSR是不是自己的下一跳都保留。
2)保守(Conservative)模式
对于从邻居LSR收到的标签映射,只有当邻居LSR是自己的下一跳时才保留。

PHP特性

PHP(Penultimate Hop Popping,次末跳弹出),如果激活了PHP特性,那么egress节点在为本地路由分配标签的时候,会分配一个特殊标签—3,该标签被称为隐式空标签(Implicit NULL Label)。当LSR转发一个标签报文时,如果发现对应的出标签值为3,则LSR会将栈顶标签弹出,并将里面所封装的数据转发给下游LSR。

隐式空标签与显式空标签

(1)隐式空标签
缺省情况下,Egress节点向倒数第二跳分配隐式空标签(implicit-null),即特殊标签3。
但在部署QoS的场景下,标签被弹出后,其中的优先级也会一并丢失。
(2)显式空标签
显式空标签机制,Egress节点向倒数第二跳分配特殊标签0。
R3在转发标签报文时,若出标签封装为0,则不会将标签头部弹出,标签头部中的QoS信息得以保存。R4在收到带0标签的报文的时候,直接弹出标签,不用去查找ILM表项。
缺省情况下,Egress分配的是隐式空标签,通过label advertise explicit-null使能Egress节点向倒数第二跳分配显式空标签。

(4)LDP工作过程详解

组网介绍

网络中已经部署OSPF路由协议且各设备之间能够正常学习到对方的路由信息。
已在各设备及相应接口上激活MPLS及LDP,且在相邻的设备之间已正常建立本地LDP会话。
所有LSR均采用DU + Independent +Liberal方式。

标签分发

1)Egress LSR
R4直连网段192.168.4.0/24,R4将主动为到达该网段的路由分配标签,如1041,并主动通过LDP协议报文将标签映射通告给LDP对等体R2和R3。
在这里插入图片描述
2)Transit LSR
以R2为例,在其路由表中,192.168.4.0/24路由的下一跳为R4,当它从R4收到关于192.168.4.0/24的标签映射通告时,由于该通告来自下游LDP邻居,因此这将触发它自己为该路由分配标签1021,并将标签映射通告给LDP邻居(如R1)。R3同理。在这里插入图片描述
3)Ingress LSR
R1收到LDP邻居R2及R3通告过来的关于192.168.4.0/24路由的标签映射后,将这两个标签都存储起来,但是由于在自己的路由表中,到达192.168.4.0/24的下一跳是R2,因此当前它只会使用R2所通告的标签1021。
在这里插入图片描述
标签转发
1)Ingress LSR
R1作为Ingress LSR,需要对接收的IP报文执行Push操作压入标签,并进行标签转发。
在这里插入图片描述
2)Transit LSR
R2作为Transit LSR,需要对接收的IP报文执行Swap操作交换标签,并进行标签转发。
在这里插入图片描述
3)Egress LSR
R4作为Egress LSR,需要对接收的IP报文执行Pop操作交换标签,并进行IP转发。
在这里插入图片描述

3.MPLS VPN

(1)MPLS VPN概述

MPLS VPN定义

BGP/MPLS IP VPN网络一般由运营商搭建,VPN用户购买VPN服务来实现用户网络之间的路由传递、数据互通等。
MPLS VPN使用BGP在运营商骨干网(IP网络)上发布VPN路由,使用MPLS在运营商骨干网上转发VPN报文。BGP/MPLS IP VPN又被简称为MPLS VPN,是一种常见的L3VPN(Layer 3 VPN)技术。

MPLS VPN网络架构

MPLS VPN网络架构由三部分组成:CE(Customer Edge)、PE(Provider Edge)和P(Provider),其中PE和P是运营商设备,CE是MPLS VPN用户设备。
站点(site)就是MPLS VPN的用户,由CE和其他用户设备构成。
在这里插入图片描述

MPLS VPN技术架构

MPLS VPN不是单一的一种VPN技术,是多种技术结合的综合解决方案,主要包含下列技术:
MP-BGP:负责在PE与PE之间传递站点内的路由信息。
LDP:负责PE与PE之间的隧道建立
VRF:负责PE的VPN用户管理。
静态路由、IGP、BGP:负责PE与CE之间的路由信息交换

MPLS VPN优势

对VPN客户而言:
①“感知”不到VPN的存在,不需要部署和维护VPN,降低企业运维难度和成本。
②一般部署在运营商的MPLS VPN专网上,有一定的安全性保障。
对于运营商而言:
①MPLS在无连接的IP网络中增加了面向连接的控制平面,为IP网络增添了管理和运营的手段。
②支持地址空间重叠、支持重叠VPN、组网方式灵活、可扩展性好。
③能够方便地支持MPLS TE合理调控现有网络资源,最大限度的节省运营商成本。

MPLS VPN常见组网

根据VPN用户的需求不同,可采用以下几种常见的组网方案:
Intranet:一个VPN中的所有用户形成闭合用户群,同一VPN站点之间可以互访,不同VPN站点间不能互访。
Extranet:适用于一个VPN用户希望提供部分本VPN的站点资源给其他VPN的用户访问的场景。
Hub&Spoke:如果希望在VPN中设置中心访问控制设备,其它用户的互访都通过中心访问控制设备进行,可采用Hub&Spoke组网方案。

(2)MPLS VPN路由交互

MPLS VPN路由发布概述

若想实现同一个VPN的不同站点之间的通信,首先需要完成不同站点之间的路由交互。在基本MPLS VPN组网中,VPN路由信息的发布涉及CE和PE,P路由器只维护骨干网的路由,不需要了解任何VPN路由信息。VPN路由信息的发布过程包括三部分:本地CE到入口PE、入口PE到出口PE、出口PE到远端CE在这里插入图片描述

CE与PE之间的路由信息交换

如图,客户X和客户Y属于不同的VPN,分别拥有两个站点,现需要实现站点间的路由信息交互。
CE与PE之间可以使用静态路由、OSPF、IS-IS或BGP交换路由信息。无论使用哪种路由协议,CE和PE之间交换的都是标准的IPv4路由。
本地CE到入口PE和出口PE到远端CE的路由信息交换原理完全相同。
在这里插入图片描述

入口PE到出口PE路路由传递(1)

PE在接收到CE传递来的路由之后,需要独立保存不同VPN的路由,且需要解决不同的客户使用重叠IP地址空间的问题。在这里插入图片描述

VRF

VRF(Virtual Routing and Forwarding,虚拟路由转发),又称VPN实例,是MPLS VPN架构中的关键技术,每个VPN实例使用独立的路由转发表项,实现VPN之间的逻辑隔离。
在这里插入图片描述

RD

PE收到不同VPN的CE发来的IPv4地址前缀,本地根据VPN实例配置去区分这些地址前缀。但是VPN实例只是一个本地的概念,PE无法将VPN实例信息传递到对端PE,故有了RD(Route Distinguisher,路由标识符)。
①RD长8字节,用于区分使用相同地址空间的IPv4前缀。
②PE从CE接收到IPv4路由后,在IPv4前缀前加上RD,转换为全局唯一的VPN-IPv4路由。
在这里插入图片描述

VPN-IPv4地址

VPN-IPv4地址又被称为VPNv4地址:VPNv4地址共有12个字节,包括8字节的路由标识符RD(Route Distinguisher)和4字节的IPv4地址前缀。在这里插入图片描述

入口PE到出口PE路由传递(2)

PE之间建立BGP邻居关系,并通过BGP进行路由传递。为什么采用BGP呢?
①BGP使用TCP作为其传输层协议,提高了协议的可靠性。可以跨路由器的两个PE设备之间直接交换路由。
②BGP拓展性强,为PE间传播VPN路由提供了便利。
③PE之间需要传送的路由条目可能较大,BGP只发送更新的路由,提高传递路由数量的同时不占用过多链路带宽。
传统的BGP-4不支持处理VPNv4路由。在这里插入图片描述

MP-BGP

为了正确处理VPN路由,MPLS VPN使用RFC2858(Multiprotocol Extensions for BGP-4)中规定的MP-BGP,即BGP-4的多协议扩展。
MP-BGP采用地址族(Address Family)来区分不同的网络层协议,既可以支持传统的IPv4地址族,又可以支持其它地址族(比如VPN-IPv4地址族、IPv6地址族等)。
MP-BGP新增了两种路径属性:
①MP_REACH_NLRI:Multiprotocol Reachable NLRI,多协议可达NLRI。用于发布可达路由及下一跳信息。
②MP_UNREACH_NLRI:Multiprotocol Unreachable NLRI,多协议不可达NLRI。用于撤销不可达路由。
在这里插入图片描述

入口PE到出口PE路由传递(3)

MP-BGP将VPNv4传递到远端PE之后,远端PE需要将VPNv4路由导入正确的VPN实例。
MPLS VPN使用32位的BGP扩展团体属性-VPN Target(也称为Route Target)来控制VPN路由信息的发布与接收。
本地PE在发布VPNv4路由前附上RT属性,对端RT在接到到VPNv4路由后根据RT将路由导入对应的VPN实例。
RT
在PE上,每一个VPN实例都会与一个或多个VPN Target属性绑定,有两类VPN Target属性:
①Export Target(ERT):本地PE从直接相连站点学到IPv4路由后,转换为VPN IPv4路由,并为这些路由添加Export Target属性。Export Target属性作为BGP的扩展团体属性随路由发布。
②Import Target(IRT):PE收到其它PE发布的VPN-IPv4路由时,检查其Export Target属性。当此属性与PE上某个VPN实例的Import Target匹配时,PE就把路由加入到该VPN实例的路由表。

入口PE到出口PE路由传递(4)

PE根据VPNv4路由所携带的RT将路由导入正确的VPN实例之后,VPNv4路由的RD值剥除,将IPv4路由通告给相应的客户的CE设备。
站点B和站点D的CE设备就能学习到去往各自远端站点的路由。同理,通过一系列的操作,可以实现同一用户(同一VPN)不同站点之间的路由互通。

转发数据时的问题及解决方法

P设备上没有VPN路由,无法根据IP地址进行转发。
IP头部中不携带VPN相关的信息,PE无法区分数据所属的VPN。
解决方法:
通过标签解决问题
外层标签(公网标签)由LDP为VPN路由的NextHop(一般是PE的某个接口地址)分发,P根据外层标签转发数据到PE。
内层标签(私网标签)由PE的MP-BGP为VPN路由分发。PE根据内层标签确定数据所属的VPN。

入口PE到出口PE路由传递(5)

PE和P设备之间运行LDP,交换公网标签,建立PE之间的LSP隧道(公网隧道)。
入口PE在通过MP-BGP传递VPNv4路由时,会携带私网标签,用于区分不同VPN的数据。
出口PE在接收到VPNv4路由后,需要执行私网路由交叉和隧道迭代来选择路由。在这里插入图片描述

MPLS VPN中的路由交互过程

①IGP或者EBGP交换私网IPv4路由
②客户私网路由被学习到VPN路由表中(VPN实例路由表)
③IPv4路由引入到MP-BGP(如果PE-CE之间运行的就是BGP,则无需手工执行路由引入操作)RD被添加到IPv4路由上,构成VPNv4路由;
④VPNv4路由被PE1通过MP-IBGP的Update消息通告给PE2。Update消息携带着MP_REACH_NLRI属性(包含VPNv4路由前缀,下一跳和标签等重要信息)和RT属性。
⑤PE2根据RT将路由导入特定的VRF,同时将VPNv4路由的RD剥除,将IPv4路由通告给相应的客户的CE设备。
⑥客户IPv4路由被通告给CE设备
在这里插入图片描述

(3)MPLS VPN报文转发

转发过程

1)第一阶段
①CE3上存在到192.168.1.0/24网段路由,发送一个普通IP报文。在这里插入图片描述
2)第二阶段
② PE2根据绑定的VPN实例的RD查找对应VPN的转发表。
③匹配目的IPv4前缀,查找对应的Tunnel-ID,
④ 根据Tunnel-ID找到隧道,并打上对应的内层标签(I-L)。
⑤将报文从隧道发送出去,即打上公网(外层)MPLS标签头(O-L1)。
在这里插入图片描述
3)第三阶段
⑥骨干网的所有P设备都对该报文进行外层标签交换,直到到达PE1。
在这里插入图片描述
4)第四阶段
⑦ PE1收到该携带两层标签的报文,交给MPLS处理,MPLS协议将去掉外层标签。
⑧PE1继续处理内层标签:根据内层标签确定对应的下一跳,并将内层标签剥离后,以纯IPv4报文的形式发送给CE1。
在这里插入图片描述
5)第五阶段
⑨CE1收到该IPv4报文后,进行常规的IPv4处理流程。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1101250.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

天软特色因子看板 (2023.10 第05期)

该因子看板跟踪天软特色因子A05005(近一月单笔流涌金额占比(%),该因子为近一个月单笔流通金额占比因,用以刻画股票在收盘时,力资金在总交易金额中所占的比重。。 今日为该因子跟踪第05期,跟踪其在SW801030 (申万化工) 中的表现&am…

危险化工品出口注意事项及法规要求_箱讯科技

随着全球化工品市场的不断发展,危险化工品出口业务逐渐成为国际贸易的重要组成部分。然而,由于危险化工品具有潜在的危险性,出口过程中需严格遵守相关法规和注意事项,以确保运输安全和顺畅。本文将详细介绍危险化工品出口注意事项…

面试算法26:重排链表

问题 给定一个链表,链表中节点的顺序是L0→L1→L2→…→Ln-1→Ln,请问如何重排链表使节点的顺序变成L0→Ln→L1→Ln-1→L2→Ln-2→…? 分析 首先把链表分成前后两半。在示例链表中,前半段链表包含1、2、3这3个节点&#xff0c…

路径规划-learning

参考视频:【全】无人驾驶系列知识入门到提高 本文旨在对视频内容规划控制方面做一些学习记录,希望帮助有需要的人学习提高。不对处,望指正。 文章概要: 1 什么是规划 规划的本质、如何解决规划问题 2 传统的规划方法 机器人学基础…

基于Java的列车票务信息管理系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding) 代码参考数据库参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者&am…

C++入门之引用与内联函数

一、引用 1、初步理解 引用在语法上的理解就是起别名,用法就是在类型后面加&,例子:int a 1; int& b a; 上例所示,执行后,b就是a的别名,它们代表同一块空间,a的改变会影响b&#xff0…

MySQL 迁移完不能快速导数据了?

关于 5.6 升级到 5.7 之后,GTID 的相关功能的注意事项。 作者:秦福朗,爱可生 DBA 团队成员,负责项目日常问题处理及公司平台问题排查。热爱互联网,会摄影、懂厨艺,不会厨艺的 DBA 不是好司机,di…

一文学会使用WebRTC API

WebRTC(Web Real-Time Communication)是一项开放标准和技术集合,由 W3C 和 IETF 等组织共同推动和维护,旨在通过Web浏览器实现实时通信和媒体流传输。WebRTC于2011年6月1日开源并在Google、Mozilla、Opera支持下被纳入万维网联盟的…

【分享】教你加速访问GitHub,进来学!

哈喽,大家好,木易巷来啦! 众所周知,Github是一款程序猿必备的代码托管平台,上面已经存在了无数前辈的心血!经常需要在上面查看大佬写的一些好用的开源项目,无赖国外网站的速度实在让人难以接受。…

【linux】重定向+缓冲区

重定向缓冲区 1.重定向1.1重定向本质1.2重定向接口1.3重定向分类1.3.1>输出重定向1.3.2>>追加重定向1.3.3<输入重定向 2.理解 >&#xff0c; >>&#xff0c; <3.如何理解linux下一切皆文件4.缓冲区4.1理解缓冲区问题4.1.1为什么要有缓冲区4.1.2缓冲区刷…

php获取10年内的年份并加入下拉列表

要实现的效果 在html中内嵌php循环将数组中的年份加入下拉列表 <div class="form-group"><label>年份:</label><div class="input-group"><div class="input-group-prepend"><span class="input-group-te…

7天狂揽 1.3w star 的 MetaGPT,他们的目标让软件公司为之一惊

在 AI 产品爆炸的今天&#xff0c;拥有各种本领的 AI 产品层出不穷&#xff0c;但 MetaGPT 的出现仍然显的格外耀眼&#xff0c;其可以实现只输入单一 prompt&#xff0c;就可以输出需求分析、需求文档、技术架构、最终代码等等产物&#xff0c;这相当于一个开发团队的输出成果…

012 Spring Boot + Vue 电影购票系统

部分代码地址&#xff1a; https://github.com/XinChennn/xc012-movie Spring Boot Vue 电影购票系统 一、项目结构 网上购票后台管理客服模块 二、环境介绍 后端&#xff1a;SpringBoot SpringSecurity MyBatis-Plus前端&#xff1a;Vue ElementUi数据库&#xff1a;…

mongodb如何多表查询,如同时查询店铺以及里面对应的商品

多表查询场景介绍 一种很常见的场景&#xff0c;比如电商首页中&#xff0c;需要同时展示最近比较火热的店铺&#xff0c;以及直接展示店铺里对应的商品。或者用户下单之后购物车里可以看到所选的商品以及对应的店铺。如果不知道如何用mongodb自带的查询语句快速查询的话&#…

有限差分法

目录 1.原理介绍 1.1 有限差分法介绍 1.2 有限差分法步骤 2.案例分析 2.1 问题重述 2.2 问题求解 1.原理介绍 1.1 有限差分法介绍 有限差分法是一种常用的数值计算方法&#xff0c;用于求解偏微分方程或常微分方程的数值解。它的基本思想是将连续的空间区域离散化为有限…

mac电脑安装雷蛇管理软件,实现调整鼠标dpi,移动速度,灯光等

雷蛇官网只给了win版本驱动 mac版本驱动到这里下载: GitHub - 1kc/razer-macos: Color effects manager for Razer devices for macOS. Supports High Sierra (10.13) to Monterey (12.0). Made by the community, based on openrazer. 安装后会显示开发者不明,请丢弃到垃圾桶.…

Java:SpringBoot整合Spring Batch示例

目录 文档基础概念Tasklet方式示例Chunk方式示例参考文章 文档 https://docs.spring.io/spring-batch/docs/4.3.9/reference/html/index.html 基础概念 JobLauncher&#xff1a;作业启动器&#xff0c;启动作业的入口。对应的实现类为SimpleJobLauncher。Job&#xff1a;作业…

PLC通过Modbus转Profinet网关连接变频器控制电机配置案例

在本案例中&#xff0c;通过使用Modbus转Profinet网关&#xff08;XD-MDPN100&#xff09;&#xff0c;PLC可以通过Profinet协议与变频器进行通信和控制。这样&#xff0c;PLC可以实现对电机的转速调节、启停控制等功能。 同时&#xff0c;通过Modbus转Profinet&#xff08;XD-…

你还在为协同办公烦恼吗?试试视频协同办公吧!

在这个信息化、数字化的时代&#xff0c;协同办公已经成为了企业、团队的必备工具。然而&#xff0c;尽管传统的协同办公工具有诸多优点&#xff0c;但在实际使用中&#xff0c;仍会遇到各种各样的问题。你是否还在为这些问题而烦恼&#xff1f;别担心&#xff0c;让我们一起探…

【C++】函数重载 引用 内联函数

目录 一&#xff0c;函数重载 1&#xff0c;函数重载的概念 2&#xff0c;C支持函数重载的原理 二&#xff0c;引用 1&#xff0c;引用概念 2&#xff0c;引用特性 3&#xff0c;常引用 4&#xff0c;做参数 5&#xff0c;做返回值 6&#xff0c;传值、传引用效率比较…