MPLS原理及配置

赶时间可以只看实验部分

由来:90年代中期,互联网流量的快速增长。传统IP报文依赖路由器查询路由表转发,但由于硬件技术存在限制导致转发性能低,查表转发成为了网络数据转发的瓶颈。
因此,旨在提高路由器转发速度的MPLS(Multi-Protocol Label switching,多协议标签交换)被提出。与传统IP路由方式相比,MPLS在数据转发时,只在网络边缘分析IP报文头,在网络内部采用更为高效的标签(Label)转发,节约了处理时间。
随着设备硬件性能不断提升,MPLS在提高数据转发速度上的优势逐渐弱化,但其支持多层标签嵌套和设备内转控分离的特点,使其在VPN(VirtualPrivate Network,虚拟私有网络)、QoS(Quality ofService,服务质量)等新兴应用中得到广泛应用。

一:MPLS基本概念:(俗称为2.5层)

在这里插入图片描述

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

二:MPLS标签:

IP报文进入MPL域之前,会被入站LSR压入MPLS头部(又叫MPLS标签),形成一个MPLS标签报文。一个标签报文可以包含一个或多个MPLS标签。
在这里插入图片描述

标签(Label):用于携带标签值,长度20 bit。
EXP(ExperimentalUse):主要用于CoS(Class of Service),长度3 bit。
S(Bottom of stack):栈底位,用于指示该标签头部是否为最后一层标签,长度1bit。如果该字段为1,则表示当前标签头部为栈底;如果该字段为0,则表示当前标签头部之后依然还有其他标签头部。TTL(TimeTo Live):用于当网络出现环路时,防止标签报文被无限制转发,与IP报文头部中的TTL具有相同的意义 长度8 bit。

三:MPLS标签栈:

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

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

标签处理过程:

在这里插入图片描述
标签是由LDP分发的,LDP 协议即标签分发协议(也有建立邻居关系,默认自动建立完成的)
路径建立:通过邻居发现、会话建立等过程,使标签交换路由器 LSR 之间能够相互通信并交换标签信息,确定每个转发等价类 FEC 对应的标签交换路径 LSP,让数据包能沿着特定路径进行转发。
路径维护:在网络运行过程中,LDP 协议持续监测 LSP 的状态,当网络拓扑发生变化或链路出现故障时,能够及时调整标签映射关系和 LSP,保证数据的正常转发。

四:实验部分

静态部分

[R1]static-lsp ingress lto4 destination 4.4.4.4 32 nexthop 12.1.1.2 out-label 104
[R2]static-lsp transit lto4 incoming-interface g0/0/0 in-label 104 outgoing-interface g0/0/1 nexthop 23.1.1.3 out-label 204
[R3]static-lsp transit lto4 incoming-interface g0/0/0 in-label 204 outgoing-interface g0/0/1 nexthop 34.1.1.4  out-label 304
[R4]static-lsp egress lto4 incoming-interface G0/0/0 in-label 304

动态部分:

LDP先为下游设备添加标签
入栈设备收到IP包后,查FIB(即路由表),压入102号标签;到达中转设备,它查LFIB(标签转发表),进行标签交换(102->103),再到R3,进行LFIB表查询:弹出标签(103),再查FIB表,进行ip地址转发。

如果知道R3是末跳,R2是次末跳,这时候在R2的时候就弹出标签,发IP包给R3,到R3的时候直接查看FIB表(路由表),就不需要进行弹出标签了。
在这里插入图片描述

全局下:
[R1-LoopBack0]mpls lsr-id 1.1.1.1		//用环回口充当mpls的id编号
[R1]mpls
Info: Mpls starting, please wait... OK!
[R1-mpls]mpls ldp
接口下:
[R1-GigabitEthernet0/0/0]mpls
[R1-GigabitEthernet0/0/0]mpls ldp
其他也一样

抓取报文如下:对应上述内容
在这里插入图片描述

[R1]dis mpls ldp peer		//用于显示本地路由器 R1 的标签分发协议 LDP 对等体及会话信息。
[R1]dis cu co ospf			//用于显示 R1 上与 OSPF 协议相关的配置信息。
[R1-GigabitEthernet0/0/1]dis cu | include mpls		//在指定的 GigabitEthernet0/0/1 接口下,显示该接口包含 “mpls” 关键字的配置信息。
[R1]dis mpls lsp			//用于显示 R1 路由器上的 MPLS 标签交换路径 LSP 的相关信息,

假设以到达4.4.4.4的网络为例:
根据 PHP 机制,当数据包到达倒数第二跳 LSR 时,会将数据包的标签替换为一个特殊的标签(例如隐式空标签,值通常为 3)所以:
在R4上的R4的入标签为3,R3这里的出标签也为3(代表次末跳),入标签为1026(路由器根据本地的标签分配策略为其分配了 1026 作为入标签。)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《机器学习》——TF-IDF(关键词提取)

文章目录 TF-IDF简介TF-IDF应用场景TF-IDF模型模型参数主要参数 TF-IDF实例实例步骤导入数据和模块处理数据处理文章开头和分卷处理将各卷内容存储到数据帧jieba分词和去停用词处理 计算 TF-IDF 并找出核心关键词 TF-IDF简介 TF - IDF(Term Frequency - Inverse Do…

【计算机网络】窥探计网全貌:说说计算机网络体系结构?

标签难度考察频率综合题⭐⭐⭐60% 这个问题在计算机网络知识体系中是一个比较重要的问题,只有完整地了解计算机网络的体系结构才能清晰地认识网络的运行原理。 在回答这个问题时,笔者认为有几个比较重要的点: 首先一定要分清楚前置条件&am…

【前端】【CSS3】基础入门知识

目录 如何学习CSS 1.1什么是CSS​编辑 1.2发展史 1.三种导入方式 1.1、行内样式 1.2、外部样式 1.3、嵌入方式 2.选择器 2.1、基本选择器 (1)元素选择器 (2)类选择器 (3)id选择器:必…

【解决】okhttp的java.lang.IllegalStateException: closed错误

问题 Android 使用OKHttp进行后端通信,后端处理结果,反馈给前端的responseBody中其实有值,但是一直报异常,后来才发现主要是OkHttp请求回调中response.body().string()只能有效调用一次,而我使用了两次: 解…

从硬件设备看Linux

一、介绍 DM3730通过各种连接方式连接了各种设备,输入输出设备根据不同的类型大体可 以分为电源管理、用户输人、显示输出、图像采集、存储以及无线设备等。我们可以将DM 3730与这些设备的数据接口分为总线和单一的数据接口总线。总线的显著特点是单个总线上可以连…

【优选算法】DC-Quicksort-Mysteries:分治-快排的算法之迷

文章目录 1.概念解析2.颜色分类3.排序数组4.数组中的第k个最大元素5.库存管理Ⅲ希望读者们多多三连支持小编会继续更新你们的鼓励就是我前进的动力! 本篇是优选算法之分治-快排,快排可以在更短的时间内完成相同规模数据的排序任务,大大提升了…

浅谈云计算09 | 服务器虚拟化

服务器虚拟化基础 一、虚拟化的定义二、系统虚拟化三、服务器虚拟化的核心要义四、典型实现:探索不同路径五、全虚拟化与半虚拟化六、主流服务器虚拟化技术 一、虚拟化的定义 虚拟化是一种将物理资源抽象为逻辑资源的技术,通过在物理硬件与操作系统、应…

解析OVN架构及其在OpenStack中的集成

引言 随着云计算技术的发展,虚拟化网络成为云平台不可或缺的一部分。为了更好地管理和控制虚拟网络,Open Virtual Network (OVN) 应运而生。作为Open vSwitch (OVS) 的扩展,OVN 提供了对虚拟网络抽象的支持,使得大规模部署和管理…

第三十六章 Spring之假如让你来写MVC——拦截器篇

Spring源码阅读目录 第一部分——IOC篇 第一章 Spring之最熟悉的陌生人——IOC 第二章 Spring之假如让你来写IOC容器——加载资源篇 第三章 Spring之假如让你来写IOC容器——解析配置文件篇 第四章 Spring之假如让你来写IOC容器——XML配置文件篇 第五章 Spring之假如让你来写…

CSS 盒模型

盒模型 CSS盒模型是网页布局的核心概念之一,它描述了网页元素的物理结构和元素内容与周围元素之间的关系。根据W3C规范,每个HTML元素都被视为一个矩形盒子,这个盒子由以下四个部分组成: 内容区(Content area&#xff…

JVM:ZGC详解(染色指针,内存管理,算法流程,分代ZGC)

1,ZGC(JDK21之前) ZGC 的核心是一个并发垃圾收集器,所有繁重的工作都在Java 线程继续执行的同时完成。这极大地降低了垃圾收集对应用程序响应时间的影响。 ZGC为了支持太字节(TB)级内存,设计了基…

OpenCV基于均值漂移算法(pyrMeanShiftFiltering)的水彩画特效

1、均值漂移算法原理 pyrMeanShiftFiltering算法结合了均值迁移(Mean Shift)算法和图像金字塔(Image Pyramid)的概念,用于图像分割和平滑处理。以下是该算法的详细原理: 1.1 、均值迁移(Mean …

【数学】概率论与数理统计(五)

文章目录 [toc] 二维随机向量及其分布随机向量离散型随机向量的概率分布律性质示例问题解答 连续型随机向量的概率密度函数随机向量的分布函数性质连续型随机向量均匀分布 边缘分布边缘概率分布律边缘概率密度函数二维正态分布示例问题解答 边缘分布函数 二维随机向量及其分布 …

四 BH1750 光感驱动调试2

之前调通了用户态接口,android 使用还是不方便,要包装jni使用。 这里集成了内核 iio 驱动 ,提供 sys-fs 文件接口 可供固件以及 ANDROID 应用层使用 一 驱动集成 : 1.1 dts 修改 修改文件 : kernel/arch/arm64/boot/dts/rockchip/rp-rk3568.dts 在 i2c5 增加设备,如…

Redis持久化双雄

Redis持久化 Redis 的持久化是指将内存中的数据保存到硬盘,以防止服务器宕机导致数据丢失的机制。 redis 提供了两种持久化的方式,分别是RDB(Redis DataBase)和AOF(Append Only File)。 RDB,简…

工业视觉2-相机选型

工业视觉2-相机选型 一、按芯片类型二、按传感器结构特征三、按扫描方式四、按分辨率大小五、按输出信号六、按输出色彩接口类型 这张图片对工业相机的分类方式进行了总结,具体如下: 一、按芯片类型 CCD相机:采用电荷耦合器件(CC…

数字证书管理服务

阿里云数字证书管理服务(Aliyun Certificate Management Service, ACM)是一种云端服务,专门用于帮助企业管理和颁发数字证书。数字证书是网络安全中的重要组成部分,它可以确保通信的安全性、身份认证以及数据的完整性。通过阿里云…

《跟我学Spring Boot开发》系列文章索引❤(2025.01.09更新)

章节文章名备注第1节Spring Boot(1)基于Eclipse搭建Spring Boot开发环境环境搭建第2节Spring Boot(2)解决Maven下载依赖缓慢的问题给火车头提提速第3节Spring Boot(3)教你手工搭建Spring Boot项目纯手工玩法…

Zookeeper概览

个人博客地址:Zookeeper概览 | 一张假钞的真实世界 设计目标 简单的:方便使用以实现复杂的业务应用。复制式的:跟Zookeeper协调的分布式进程一样,它也是在一组服务器上复制的。集群的每个节点间互相知道。它们维护一个状态数据在…

播放音频文件同步音频文本

播放音频同步音频文本 对应单个文本高亮显示 使用audio音频文件对应音频文本资源 音频文本内容(Json) [{"end": 4875,"index": 0,"speaker": 0,"start": 30,"text": "70号二啊,","tex…