计算机网络-MPLS基础概念

news2025/2/15 14:51:53

早期传统IP报文依赖路由器查询路由表转发,但由于硬件技术存在限制导致转发性能低,路由器的查表转发成为了网络数据转发的瓶颈。因此旨在提高路由器转发速度的MPLS(Multi-Protocol Label Switching,多协议标签交换) 被提出。

随着设备硬件性能不断提升,MPLS在提高数据转发速度上的优势逐渐弱化,但其支持多层标签嵌套和设备内转控分离的特点,使其在VPN(Virtual Private Network,虚拟私有网络)QoS(Quality of Service,服务质量) 等新兴应用中得到广泛应用。

一、MPLS概述

1.1 传统IP路由转发的痛点

在传统IP路由中,数据报文经过每一台路由器时,都需要逐跳解封装并查找路由表,这一过程不仅重复且效率低下。具体特点如下:

  • 全网路由依赖:所有路由器必须知道全网路由信息。
  • IP头部处理效率低:IP头部不定长,处理效率低下。
  • 无连接性:传统IP转发面向无连接,无法提供良好的端到端QoS保证。

传统IP路由转发

依赖路由表

正是由于IP路由转发的这些特点,因此出现了MPLS多协议标签交换协议。

1.2 MPLS基本概念

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

MPLS以标签交换替代IP转发。标签是一个短而定长的、只具有本地意义的标识符。

MPLS起源于IPv4(Internet Protocol version 4),其核心技术可扩展到多种网络协议,包括IPv6(Internet Protocol version 6)、IPX(Internet Packet Exchange)、Appletalk、DECnet、CLNP(Connectionless Network Protocol)等。MPLS中的"Multiprotocol"指的就是支持多种网络协议。

MPLS标签转发

1.3 MPLS基础术语概念

1.3.1 MPLS域与LSR

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

LSR(标签交换路由器):支持MPLS的路由器或交换机等网络设备。

  • LER(边沿路由器):位于MPLS域边缘,连接其他网络。
  • Core LSR(核心LSR):位于MPLS域内部。

就是支持MPLS的网络设备称为LSR,然后又类似OSPF区分了那些是在MPLS的边缘,那些是在MPLS内部分为LER边缘路由器和核心LSR,所有这些设备组成MPLS域。

MPLS域与LSR

1.3.2 LSR分类

除了安装设备的位置还可以安装对标签的处理方式进行划分,根据LSR在MPLS域中的位置和数据处理方式,可分为:

  • 入站LSR(Ingress LSR):负责向IP报文中压入MPLS头部。
  • 中转LSR(Transit LSR):负责标签置换操作,继续转发报文。
  • 出站LSR(Egress LSR):负责移除MPLS头部,还原为IP报文。

LSR分类

1.3.3 FEC(转发等价类)

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

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

FEC示意图

在传统的采用最长匹配算法的IP转发中,匹配到同一条路由的所有报文就是一个转发等价类。在MPLS中,关于FEC最常见的例子是:目的IP地址匹配同一条IP路由的报文被认为属于同一个FEC。

关于FEC如果单看概念是不容易理解,可以理解为FEC简单的就是到达某个相同目的路由的一类数据包。在IP路由中通过静态路由ip route-static 192.168.1.0 24 10.0.0.1表示到达192.168.1.0/24网段的数据依据下一跳10.0.0.1进行转发,而在MPLS中也是类似的,匹配到目的地址192.168.1.0/24就分为一类FEC,这是最简单的表示,也可以进行细分。

1.3.4 LSP(标签交换路径)

LSP(Label Switched Path,标签交换路径) 是标签报文穿越MPLS网络到达目的地所走的路径。与上面的FEC进行相关联。同一个FEC的报文通常采用相同的LSP穿越MPLS域,所以对同一个FEC,LSR总是用相同的标签转发。

LSP示意图

  • 一条LSP包含一台入站LSR一台出站LSR以及数量可变的中转LSR,因此LSP也可以看做是这些LSR的有序集合。
  • LSP需要在数据转发开始前建立完成,只有这样报文才能顺利穿越MPLS域。
  • LSP可通过静态动态两种方式建立。
  • 需要注意的是,LSP是一个从"起点"到"终点"的单向路径,若需要双向数据互通,则需要在双方之间建立双向的LSP。

缺省情况下MPLS的每个LSR路由器都对标签进行处理也就是每个路由器都验证标签,LSP就是每一个LSR路由器处理过程的路径,而且标签是没有方向的,也就是来回数据都需要LSP。

小结:从上面我们可以知道运行MPLS的网络设备组成MPLS域,而这些MPLS的设备称为LSR,根据对标签的处理分为入站LSR、出站LSR和中转LSR。到达同一目的网络的LSR路径的有序集合称为LSP(标签转发路径),LSP关联到FEC转发等价类进行分类,而且LSP是单向的,如果需要互相通信需要双向建立LSP。

二、MPLS标签

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

MPLS标签结构

2.1 标签结构

MPLS标签位于二层帧头部和IP头部之间,包含以下字段:

  • Label(标签值):20bit,用于标识FEC。
  • EXP(实验用途):3bit,主要用于CoS(服务质量)。
  • S(栈底位):1bit,栈底位,用于指示该标签头部是否为最后一层标签,长度1bit。如果该字段为1,则表示当前标签头部为栈底;如果该字段为0,则表示当前标签头部之后依然还有其他标签头部。
  • TTL(生存时间):8bit,防止报文在网络中无限循环。

2.2 标签栈

MPLS标签栈

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

通过前面标签结构中的S栈底为确定是否为栈顶或者栈底。当上层为MPLS标签栈时,以太网头部中的Type字段为0x8847,PPP头部中的Protocol字段为0x8281。

2.3 标签空间

前面我们讲了那么多的标签,那么标签究竟是怎样的呢?标签是一个短而定长的、只具有本地意义的标识符。标签空间就是指标签的取值范围,简单说标签就是一个数字,具有本地意义的数字。标签值的范围及规划如下:

MPLS标签空间

2.4 MPLS标签的处理

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

  • LSR对标签的操作类型包括:
    • Push(标签压入):在报文进入MPLS域时,压入新的标签。
    • Swap(标签交换):在MPLS域内转发时,替换标签。
    • Pop(标签弹出):在报文离开MPLS域时,移除标签。

标签操作示意图

结合前面的入站LSR和出站LSR和转发LSR可以理解各个标签路由器对于标签的压入、转发、弹出,然后在最后一跳转换为平台的IP数据包。

总结:

  • MPLS通过标签转发显著提升了数据转发速度。
  • MPLS术语(如MPLS域、LSR、FEC、LSP)是理解MPLS的关键。
  • MPLS标签的结构和操作机制是实现高效转发的核心。

通过本章的学习,我们对MPLS的基本概念、术语和标签有了全面的了解,可以知道传统IP转发路由器需要每次进行查找路由表匹配到数据包然后进行转发,而MPLS只要规划好LSP和FEC只对标签进行处理即可,是执行压入标签、转发标签还是弹出标签就行相对来说效率更高。

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

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

相关文章

NO.18十六届蓝桥杯备战|循环嵌套|乘法表|斐波那契|质数|水仙花数|(C++)

循环嵌套 循环嵌套的使⽤ while , do while , for ,这三种循环往往会嵌套在⼀起才能更好的解决问题,就是我们所说的:循环嵌套。这三种循环都可以任意嵌套使⽤ ⽐如: 写⼀个代码,打印⼀个乘法⼝…

支持向量机原理

支持向量机(简称SVM)虽然诞生只有短短的二十多年,但是自一诞生便由于它良好的分类性能席卷了机器学习领域。如果不考虑集成学习的算法,不考虑特定的训练数据集,尤其在分类任务中表现突出。在分类算法中的表现SVM说是排…

LLM - 理解 DeepSeek 的 GPRO (分组相对策略优化) 公式与源码 教程(2)

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/145640762 GPRO,即 Group Relative Policy Optimization,分组相对的策略优化,是 PPO(Proximal Policy Optimiz…

基于springboot 以及vue前后端分离架构的求职招聘系统设计与实现

基于springboot 以及vue前后端分离架构的求职招聘系统设计与实现 随着互联网技术的飞速发展,求职招聘行业也在不断发生变革。传统的求职招聘方式往往存在着信息不对称、效率低下、交易成本高等问题,导致企业的招聘成本增加,求职者的体验下降…

Spring Boot整合协同过滤算法,实现个性化推荐

1. 引言 在这篇文章中,我们将展示如何使用 Spring Boot 框架与 协同过滤算法 相结合来构建一个简单的推荐系统。推荐系统广泛应用于电商、电影推荐、社交平台等领域。协同过滤算法通过分析用户行为,找出相似的用户或者物品,从而实现个性化推荐…

自己部署 DeepSeek 助力 Vue 开发:打造丝滑的时间线(Timeline )

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 自己…

光谱相机在天文学领域的应用

天体成分分析 恒星成分研究:恒星的光谱包含了其大气中各种元素的吸收和发射线特征。通过光谱相机精确测量这些谱线,天文学家能确定恒星大气中氢、氦、碳、氮、氧等元素的含量。如对太阳的光谱分析发现,太阳大气中氢元素占比约 71%&#xff0…

深度卷积神经网络实战海洋动物图像识别

本文采用深度卷积神经网络作为核心算法框架,结合PyQt5构建用户界面,使用Python3进行开发。YOLOv11以其高效的特征提取能力,在多个图像分类任务中展现出卓越性能。本研究针对5种海洋动物数据集进行训练和优化,该数据集包含丰富的海…

MySQL-mysql zip安装包配置教程

网上的教程有很多,基本上大同小异。但是安装软件有时就可能因为一个细节安装失败。我也是综合了很多个教程才安装好的,所以本教程可能也不是普遍适合的。 安装环境:win11 1、下载zip安装包: MySQL8.0 For Windows zip包下载地址…

ECP在Successfactors中paylisp越南语乱码问题

导读 pyalisp:ECP中显示工资单有两种方式,一种是PE51,一种是hrform,PE51就是划线的那种, 海外使用的比较多,国内基本没人使用,hrform就是pdf,可以编辑pdf,这个国内相对使用的人 比…

PDF另存为图片的一个方法

说明 有时需要把PDF的每一页另存为图片。用Devexpress可以很方便的完成这个功能。 窗体上放置一个PdfViewer。 然后循环每一页 for (int i 1; i < pdfViewer1.PageCount; i) 调用 chg_pdf_to_bmp函数获得图片并保存 chg_pdf_to_bmp中调用了PdfViewer的CreateBitmap函数…

本地部署DeepSeek集成VSCode创建自己的AI助手

文章目录 安装Ollama和CodeGPT安装Ollama安装CodeGPT 下载并配置DeepSeek模型下载聊天模型&#xff08;deepseek-r1:1.5b&#xff09;下载自动补全模型&#xff08;deepseek-coder:1.3b&#xff09; 使用DeepSeek进行编程辅助配置CodeGPT使用DeepSeek模型开始使用AI助手 ✍️相…

无人机雨季应急救灾技术详解

无人机在雨季应急救灾中发挥着至关重要的作用&#xff0c;其凭借机动灵活、反应迅速、高效安全等特点&#xff0c;为救灾工作提供了强有力的技术支撑。以下是对无人机雨季应急救灾技术的详细解析&#xff1a; 一、无人机在雨季应急救灾中的应用场景 1. 灾情侦查与监测 无人机…

DeepSeek本地化部署【window下安装】【linux下安装】

一、window 本地安装指导 1.1、下载window安装包 https://ollama.com/download/OllamaSetup.exe 1.2、点击下载好的安装包进行安装 检测安装是否成功&#xff1a; C:\Users\admin>ollama -v ollama version is 0.5.7有上面的输出&#xff0c;则证明已经安装成功。 配置…

Ae:常见的光照控件和材质控件

在 After Effects中&#xff0c;几种模拟效果都有类似的光照控件和材质控件&#xff0c;比如&#xff0c;焦散、卡片动画、碎片等。 光照控件和材质控件允许用户模拟不同光源、阴影和高光效果&#xff0c;控制表面反射特性&#xff0c;从而实现真实的光照和反射模拟。适用于材质…

【鸿蒙开发】第三十章 应用稳定性-检测、分析、优化、运维汇总

目录​​​​​​​ 1 概述 2 使用Asan检测内存错误 2.1 背景 2.2 原理概述 2.3 使用约束 2.4 配置参数 2.4.1 在app.json5中配置环境变量 2.4.2 在Run/Debug Configurations中配置环境变量 2.5 Asan使能 方式一 方式二 运行ASan 2.6 ASan异常检测类型 heap-buf…

Linux软件编程:IO编程

IO&#xff08;linux输入输出&#xff09; 1. IO概念&#xff1a; I&#xff1a;输入 O&#xff1a;输出 Linux 一切皆是文件 屏幕 -> /dev/tty 磁盘 -> /dev/sda 网卡 键盘 -> /dev/event 鼠标-> /dev/mice 都是一个文件 2. IO操作的对象&#xff1a; 文件 3. 文…

javaEE2

maven 搭建 前后端交互 HTML servlet 后台和数据库交互 servlet jdbc 未来 servlet-->springmvc jdbc-->mybatis-->mybatisplus/jpa javaee-->spring-->springboot SERVLET tomcat ~Apache 服务 Apache(音译为阿帕奇)是世界上使用排名第一的Web服务器…

2025最新深度学习pytorch完整配置:conda/jupyter/vscode

从今天开始&#xff0c;开始一个新的专栏&#xff0c;更新深度学习相关的内容&#xff0c;从入门到精通&#xff0c;首先的首先是关于环境的配置指南&#xff1a;工欲善其事必先利其器&#xff01; PyTorch 是由 Facebook&#xff08;现 Meta&#xff09;开发的 开源深度学习框…

华为小艺助手接入DeepSeek,升级鸿蒙HarmonyOS NEXT即可体验

小艺助手接入DeepSeek的背景与意义 随着人工智能技术的不断发展&#xff0c;大模型成为推动智能交互升级的关键力量。DeepSeek在自然语言处理等领域具有出色的表现&#xff0c;其模型在语言理解、生成等方面展现出强大的能力。华为小艺助手接入DeepSeek&#xff0c;旨在借助其先…