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

MPLS基础---通俗易懂

目录

前言

一、基本概述

1.什么是MPLS

2.相关概念

二、工作原理

1.LDP

2.会话建立工程

三、转发过程

四、MPLS扩展内容


 

前言

为什么出现MPLS?

    ①硬件限制
    ②传统IP转发:每一跳都要去分析IP报文,效率低, 需要经过CPU进行处理,进行转发的时候需要匹配路由,并且需要查找最长掩码的路由, 所有路由器都需要知道整个网络的路由

    ③ATM昂贵

一、基本概述

1.什么是MPLS

MPLS(Multiprotocol Label Switching)是一种利用标签来指导数据报文高速转发的协议,是多协议标签交换MPLS的一种控制协议,负责转发等价类FEC(Forwarding Equivalence Class)的分类、标签的分配以及标签交换路径LSP(Label Switched Path)的建立和维护等操作。

MPLS协议运行于数据链路层与网络层之间,也就是常说的2.5层

MPLS的网络架构

MPLS的体系结构

分为控制平面与转发平面

控制平面:负责标签的分配、LSP的建立等工作

转发平面:负责数据包的转发(依据标签表)

流程:

2.相关概念

角色

MPLS网络的基本组成单元是标签交换路由器LSR(Label Switching Router):

LER: 位于MPLS域边缘、连接其它网络的LSR称为边沿路由器LER(Label Edge Router),在MPLS域边缘负责标签入栈或标签出栈

LSR: 区域内部的LSR称为核心LSR(Core LSR),在MPLS域内进行标签交换

标签动作

Push(压入)位于MPLS域的边缘当外部路由需要进入MPLS域为此路由压入标签

Swap(交换)位于MPLS域内进行转发时经过每台核心LSR进行交换标签

Pop(弹出)位于MPLS域的边缘当要离开MPLS域需要弹出标签,在倒数第二跳弹出标签

在最后一跳节点,标签已经没有使用价值。这种情况下,可以利用倒数第二跳弹出特性PHP(Penultimate Hop Popping),在倒数第二跳节点处将标签弹出,最后一台设备直接根据IP转发

FEC

MPLS将具有相同特征的报头归为一类,叫做一个FEC,并且将属于用一个FEC打上相同的MPLS标签

LSP

启用了MPLS协议的路由器从源到目标转发的途径

MPLS标签

MPLS标签长度为4个字节,封装结构如下图所示:

  • Label:20bit,标签值域。其中0-15是系统保留

  • TC:3bit,流量等级(Traffic Class),又名Exp。通常用做CoS(Class of Service,服务分类)

  • S:1bit,栈底标识(Bottom of Stack)---IP报头之前的最后一个标签。MPLS支持多层标签,即标签嵌套。BoS值为1时表明为最底层标签,为0时表示不为最低层标签

  • TTL:8bit,生存时间用于防环

MPLS标签封装在链路层和网络层之间,它在报文分组中的封装位置如下图所示。

MPLS多层标签:靠近二层(数据链路层)的为栈顶标签,靠近网络层的为栈底标签。采用后进先出的标签处理形式,在报文分组中的封装位置如下图所示

上游与下游

  • 上游:以指定的LSR为视角,根据数据传送的方向,所有往本LSR发送MPLS报文的LSR都可以称为上游LSR。

  • 下游:以指定的LSR为视角,根据数据传送的方向,本LSR将MPLS报文发送到的所有下一跳LSR都可以称为下游LSR。

按照数据和标签转发方向,看设备C往设备A发送标签,设备C的所处方向为下游,而设备A往设备C发送数据包,设备A的所处方向为上游

二、工作原理

1.LDP

LDP是MPLS体系中非常重要的一种标签发布控制协议,负责FEC的分类、MPLS标签分配以及LSP的动态建立和维护等操作,规定了标签分发过程中的各种消息以及相关处理过程。通过LDP协议,LSR可以把网络层的信息直接映射到数据链路层的LSP交换路径上,实现在网络层动态建立LSP。

四种会话类型

  • 发现(Discovery)消息:用于通告和维护网络中LSR的存在;
  • 会话(Session)消息:用于建立、维护和终止LDP对等体之间的会话,包括Initialization消息、Keepalive消息等;
  • 通告(Advertisement)消息:用于创建、改变和删除FEC的标签映射;
  • 通知(Notification)消息:用于提供建议性的消息和差错通知。

为保证LDP消息的可靠发送,除了发现消息使用UDP外,LDP的会话消息、通告消息和通知消息都使用TCP传输。

2.会话建立工程

①LSRA、B互相发送hello消息(携带传输地址),双方使用传输地址建立LDP会话,传输地址大的作为主动方 ,等待TCP连接

②TCP建立成功之后,由主动方发送initialization消息,协商建立LDP会话的相关参数,包括LDP协议版本、标签分发方式、Keepalive保持定时器的值、最大PDU长度和标签空间等。

③当被动方收到initialization消息之后,若不能接受其消息的参数则发送notification消息终止LDP的会话建立;若能,则发送initialization消息,同时发送keepalive消息

④当主动方收到initialization消息之后,若,若不能接受其消息的参数则发送notification消息终止LDP的会话建立;若能,则发送keepalive消息

⑤双方接收到keepalive消息之后建立LDP会话

三、MPLS报文转发

基本术语:

tunnel ID:运行MPLS系统自动会为各隧道分配一个tunnelID,本地有效

FIB:(Forwarding Information Base,转发信息表)通过IP网络中指导IP报文转发,从RIB(路由信息表)优选出来的路由
LIB:(Label Information Base,标签信息表)每个标签与对应FEC的映射关系

LFIB:(Label Forwarding Information Base,标签转发信息表)用于指导MPLS的报文转发,包括下一跳出接口等
NHLFE:(Next Hop Lable Forwarding Entry,下一跳标签转发表项)用于指导MPLS的报文转发,包括tunnelID等比LFIB更为详细的信息

ILM:(Incomming Lable Map,入标签映射)ILM是入标签与NHLFE的映射,它使得本地设备的入标签和出标签、Tunnel ID建立对应的对应关系。ILM在Transit节点的作用是将标签和NHLFE绑定。通过标签索引ILM表,就相当于使用目的IP地址查询FIB,能够得到所有的标签转发信息。

转发流程:

详细过程:(此情况支持PHP)

当ingress收到目的地址为192.168.1.1/24。

首先查看其tunnel ID值若为0x0,则通过FIB表直接通过IP地址转发;若不为0x0,则通过NHLFE查看相关的信息进行打标签(Y)转发

Transit收到之后,根据标签Y查看ILM中对应的tunnel-ID,在NHLFE找到对应的信息之后进行标签(X)的转发

当到达倒数第二跳设备之后,继续进行上述的动作,egress(最后一跳设备)会为其分配标签3,(需要弹出标签转发到自己),所以进行PHP。弹出标签(X)之后转发

Egress设备收到之后,查看FIB根据路由表直接转发到目的地

四、MPLS扩展内容

类别方式概念描述
标签发布方式下游按需 (DoD)下游标签交换路由器(LSR)仅在收到上游的标签请求消息后,才会分发标签映射。
下游自主 (DU)下游标签交换路由器(LSR)无需等待上游的标签请求消息,主动分发标签映射。
标签分配控制方式独立标签交换路由器(LSR)不依赖下游设备的标签分配,独立向上游分发标签映射。
有序标签交换路由器(LSR)仅在收到下游设备的标签映射后,才会向上游分发标签映射。
标签保持方式自由标签交换路由器(LSR)保留从所有邻居LSR收到的标签映射,无论其是否为下一跳。
保守标签交换路由器(LSR)仅保留从作为下一跳的邻居LSR收到的标签映射,其余丢弃。

 

相关文章:

  • 通过启用Ranger插件的Hive审计日志同步到Doris做分析
  • Android studio无法查看源码
  • 小酌SM2的背景、数字签名
  • 慕慕手记项目日记 首页数据的渲染,使用js 2025-3-16
  • 【Linux内核系列】:动静态库详解
  • 企业数据治理解决方案(46页PPT)(文末有下载方式)
  • CMAC算法原理
  • springboot 打包 failed with MalformedInputException: Input length = 1
  • SaaS系统的销售微服务与权限微服务边界设计
  • 湖仓一体:数据湖与数据仓库的融合模式解析
  • 算法系列——有监督学习——3.逻辑回归
  • 现代时尚标签海报包装网站设计几何风PSAI无衬线英文字体安装包 Matahari Sans Font Family
  • 【linux】统信操作系统修改默认编辑模式从nano改为vim
  • Q2流动式起重机司机考试模拟题库
  • 耘想Android NAS 用户权限设置说明书
  • SQL 中 WHERE 与 HAVING 子句的使用
  • 一些关于瓶装燃气送气工考试的常见考点
  • Spring MVC 参数校验-校验注解
  • Asahi Linux 核心开发者暂停苹果 GPU Linux 驱动开发工作
  • GGUF、Transformer、AWQ 详解与关系梳理
  • 江南考古文脉探寻
  • 穆迪下调美国主权信用评级
  • 朝鲜称将在各领域采取反制措施,应对美国敌对挑衅
  • 从近200件文物文献里,回望光华大学建校百年
  • 俄乌直接谈判结束,乌称“毫无成果”
  • 本周看啥|《歌手》今晚全开麦直播,谁能斩获第一名?