网站单个页面,青岛海诚互联做网站好吗,婚纱摄影网页制作,wordpress 主题 zuopin在上一篇关于 MPLS 基础的文章中#xff0c;我们了解了 MPLS 的基本概念、术语以及它在网络中的重要性。今天#xff0c;我们将深入探讨 MPLS 转发的原理与流程#xff0c;帮助大家更好地理解 MPLS 是如何在实际网络中工作的。
一、MPLS 转发概述
MPLS 转发的本质是将数据…在上一篇关于 MPLS 基础的文章中我们了解了 MPLS 的基本概念、术语以及它在网络中的重要性。今天我们将深入探讨 MPLS 转发的原理与流程帮助大家更好地理解 MPLS 是如何在实际网络中工作的。
一、MPLS 转发概述
MPLS 转发的本质是将数据归到对应的 FECForwarding Equivalence Class转发等价类并按照提前建立好的 LSPLabel Switched Path标签交换路径进行转发。
对于整个 MPLS 域LSP 是某一给定的 FEC 进入域和离开域的路径可以看作是 LSRLabel Switching Router标签交换路由器的有序集合。对于单台 LSR需要建立标签转发表用标签来标识 FEC并绑定相应的标签处理和转发等行为。 同一个FEC若进入MPLS域的Ingress LSR入站LSR不同转发时的LSP也不相同。同一个FECLSR的处理方式相同不论这个FEC来自哪里进入设备的接口。LSR的转发动作决定了LSP而标签转发表确定转发动作所以建立标签转发表也可以理解为建立LSP。如图所示因为有着相同的目的地所以这三份数据属于同一个转发等价类FEC1。同时由于入站LSR不同这些数据将分别在LSP1、LSP2和LSP3上被转发。因为标签仅具有本地意义所以每台LSR上给同一FEC分配的标签可以相同也可以不同。
简单理解就是对于去往目的网络4.4.4.4MPLS域内的LSR都有明确的路径规划也就是FEC或者说LSP。
二、MPLS 体系结构
MPLS 的体系结构由控制平面Control Plane 和转发平面Forwarding Plane 组成。
控制平面负责产生和维护路由信息以及标签信息。它包括 IP 路由协议和路由信息表标签分发协议和标签信息表。转发平面也称数据平面Data Plane负责普通 IP 报文的转发以及带 MPLS 标签报文的转发。它包括 IP 转发信息表和标签转发信息表。 大致可以理解为高速公路和车辆的关系控制平面负责搭建公路转发依靠车辆运输。控制平面是无连接的主要功能是负责产生和维护路由信息以及标签信息。转发平面也称为数据平面是面向连接的 主要功能是负责普通IP报文的转发以及带MPLS标签报文的转发。
控制平面与转发平面的交互
在 MPLS 网络中控制平面和转发平面通过路由信息和标签信息进行交互。IP 路由协议在 LSR 之间交互路由信息形成路由信息表RIB。标签分发协议LDP在 LSR 之间交互标签信息形成标签信息表LIB。转发平面根据控制平面提供的信息建立转发信息表FIB 和标签转发信息表LFIB从而实现数据的快速转发。 就是进来的报文先交由控制平面进行计算得出路由信息和标签信息然后将结果交给转发平面从哪个接口转发打上标签进行处理。
三、LSP 建立原则
3.1 LSP 建立原则
当网络层协议为 IP 协议时FEC 所对应的路由必须存在于 LSR 的 IP 路由表中否则该 FEC 的标签转发表项不生效。LSR 用标签标识指定 FEC所以该 FEC 的数据被发送至 LSR 时必须携带正确的标签才能被 LSR 正确的处理。 对某一FEC设备上存在进In标签和出Out标签分别表示该FEC的数据接收时和发送时所携带的标签。
以R2转发到4.4.4.0/24的数据为例R1为R2的上游UpstreamLSRR3为R2的下游DownstreamLSR。为确保标签报文能被正确的处理和转发那么R1发给R2的报文所携带的标签与R2上绑定到4.4.4.0/24的相同即R1的出标签等于R2的入标签。 同理R2关于4.4.4.0/24这条FEC的出标签必须等于R3的入标签。
简单来说就是标签必须是相对应有进有出然后在入栈LSR或者出栈LSR是没有进或者出标签弹出标签转换为普通IP报文。
3.2 LSP 建立方式
MPLS 需要为报文事先分配好标签建立一条 LSP才能进行报文转发。LSP 分为静态 LSP 和动态 LSP 两种。
静态 LSP用户通过手工为各个 FEC 分配标签而建立的。静态 LSP 不使用标签发布协议不需要交互控制报文因此消耗资源比较小。但通过静态方式建立的 LSP 不能根据网络拓扑变化动态调整需要管理员干预。适用于拓扑结构简单并且稳定的小型网络。 动态 LSP通过标签发布协议动态建立。常用标签发布协议是 LDPLabel Distribution Protocol它负责 FEC 的分类、标签的分发以及 LSP 的建立和维护等一系列操作。LDP 广泛应用于 VPN 服务上具有组网、配置简单、支持基于路由动态建立 LSP、支持大容量 LSP 等优点。 类似静态路由和动态路由的意思静态需要手工维护动态可以自动生成和动态维护。由于静态LSP各节点上不能相互感知到整个LSP的情况因此静态LSP是一个本地的概念。除了LDP还有其它的一些标签分发协议如RSVP-TE、MP-BGP。
四、MPLS 标签转发流程
LSR 处理报文时主要根据** FTNFEC-to-NHLFE** 、NHLFENext Hop Label Forwarding Entry下一跳标签转发表项和** ILMIncoming Label Map入标签映射**。
FTN当 LSR 收到 IP 报文并需要进行 MPLS 转发时使用FTN 只在 Ingress LSR 存在。FTN 包括 Tunnel ID、FEC 到 NHLFE 的映射信息。NHLFELSR 对报文MPLS 或 IP 报文进行 MPLS 转发时使用NHLFE 在 Ingress 和 Transit LSR 存在。 NHLFE 包括 Tunnel ID、出接口、下一跳、出标签、标签操作类型等信息。ILM用于指导 MPLS 报文的转发MPLS 或 IP 转发ILM 只在 Transit 和 Egress LSR 存在。 ILM 包括 Tunnel ID、入标签、入接口、标签操作类型等信息。 下面再详细说明对应的转发过程概念有点绕口。
4.1 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 报文发送给下一跳。
在Ingress LSR通过查询FIB表得到FTN信息和NHLFE表指导报文的转发。
当IP报文进入MPLS域时首先查看FIB表检查目的IP地址对应的Tunnel ID值是否为0x0。
如果Tunnel ID值为0x0则进入正常的IP转发流程。如果Tunnel ID值不为0x0则进入MPLS转发流程。
至于这里为什么tunnel id不为0x0就要提到我们前面将的FEC必须是预先配置好不管是手动静态LSP还是动态LDP就是说路径已经提前规划好了然后到达目的地址3.3.3.3在FIB转发表的Tunnel ID就是0x11了这是前提。
4.2 Transit LSR 的处理 当 MPLS 报文在 MPLS 域转发时Transit LSR 会进行以下操作
根据 MPLS 的标签值查看对应的 ILM 表得到 Tunnel ID。根据 ILM 表的 Tunnel ID 找到对应的 NHLFE 表项。查看 NHLFE 表项得到出接口、下一跳、出标签和标签操作类型标签操作类型为 Swap则交换标签。
大致就是根据前期定义的FEC手动从入接口的Z标签然后通过Tunnel ID查找标签转发表知道了从出接口转发然后打上Y标签进行转发。
4.3 Egress LSR 的处理 当 MPLS 报文需要离开 MPLS 域时Egress LSR 会进行以下操作
根据 ILM 查询到该标签对应的操作为 Pop说明需要剥离该标签。根据当前标签头部的下一层报文头部进行下一步处理。如果 S1表明该标签是栈底标签直接进行 IP 转发如果 S0表明还有下一层标签根据下一层标签进行处理。
4.4 MPLS 详细转发过程 MPLS 转发过程涉及多个步骤包括 Ingress LSR 的标签压入、Transit LSR 的标签交换和 Egress LSR 的标签弹出。通过这些步骤MPLS 报文能够在 MPLS 域内高效地转发并最终到达目的地。
总结MPLS 转发是 MPLS 技术的核心它通过标签的压入、交换和弹出实现了数据的快速转发。MPLS 的体系结构由控制平面和转发平面组成控制平面负责路由和标签信息的维护转发平面负责数据的转发。通过静态或动态方式建立 LSPMPLS 网络能够高效地处理和转发数据报文。