IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> MPLS专题 -> 正文阅读

[网络协议]MPLS专题

IP路由的概念回顾
在这里插入图片描述


背景
90年代中期,随着IP技术的快速发展,Internet数据海量增长。但由于硬件技术存在限制,基于最长匹配算法的IP技术必须使用软件查找路由,转发性能低下,因此IP技术的转发性能成为当时限制网络发展的瓶颈

MPLS最初是为了提高路由器的转发速度而提出的。与传统IP路由方式相比,它在数据转发时,只在网络边缘分析IP报文头,而不用在每一跳都分析IP报文头,节约了处理时间

随着专用集成电路ASIC技术的发展,路由查找速度已经不是阻碍网络发展的瓶颈。这使得MPLS在提高转发速度方面不再具备明显的优势。但是MPLS支持多层标签和转发平面面向连接的特性,使其在VPN、流量工程、QoS等方面得到广泛应用


在这里插入图片描述
MPLS:Multi-Protocol Label Switching,多协议标签交换,是一种IP骨干网技术

MPLS中的Multi-Protocol指的是支持多种网络协议,MPLS起源于IPv4,其核心技术可扩展到多种网络协议,包括IPv6,IPX和CLNP等

MPLS并不是一种业务或者应用,它实际是一种隧道技术,这种技术不仅支持多种高层协议与业务,而且在一定程度上可以保证信息传输的安全性


在这里插入图片描述
在这里插入图片描述


MPLS协议中的基本术语

在这里插入图片描述

LSR:Label Switch Router,标签交换路由器,支持MPLS的路由器,实际上也指支持MPLS的交换机或者其他网络设备,该设备能够根据报文的MPLS的标签头部对其进行转发,如上图中的R1、R2及R3

MPLS域:MPLS Domain,一系列连续的LSR构成了一个MPLS域

LER:Label Edge Router,位于MPLS域边缘、连接其他网络的LSR,包括Ingress LSR及Egress LSR,如上图中的R1和R3

LSP:Label Switched Path,标签交换路径,是标签报文穿越MPLS网络到达目的地所走的路径。LSP实际上是一种类似于Tunnel的概念,LSP的建立过程实际上也是报文转发路径中,沿途设备关于特定FEC的标签确定的过程。LSP可以通过手工的方式建立,即静态LSP;或者通过变迁分发协议自动建立,即动态LSP。LSP是单向的,如上图所示

Ingress LSR:入站LSR,LSP的入口LSR被称为Ingress LSR,如上图中的R1

Transit LSR:中转LSR,位于LSP中间的LSR被称为Transit LSR,如上图中的R2

Egress LSR:出站LSR,LSP的出口LSR被称为Egress LSR,如上图中的R3

一条LSP可以有0个、1个或多个Transit LSR,但是有且只有一个Ingress LSR和一个Egress LSR

FEC:Forwarding Equivalence Class,转发等价类,是在转发过程中具有相同处理待遇的数据流,可通过IP地址、隧道、CoS等方式来标识一个FEC,例如,在传统的采用最长匹配算法的IP转发中,到同一条路由的所有报文就是一个转发等价类。通常在一台设备上,对于一个FEC分配相同的标签。术语一个FEC的流量具有相同的转发方式、转发路径和转发待遇。但是并不是所有拥有相同标签的报文都术语一个FEC,因为这些报文的EXP值可能不相同,执行方式可能不同。决定报文术语哪一个FEC的设备是Ingress LSR,因为是它对报文进行分类和压入标签的操作


MPLS初体验
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


MPLS架构

控制平面:
控制平面是无连接的,主要功能是负责产生和维护路由信息以及标签信息。
控制平面中IP路由协议模块用来传递路由信息,生成路由信息表;标签分发协议模块用来完成标签信息的交换,建立标签转发路径

数据平面
数据平面也成为转发平面,是面向连接的,主要功能是负责普通IP报文的转发以及带MPLS标签的报文的转发。
数据平面包括IP转发信息表和标签转发信息表,当收到普通IP报文是,如果是普通IP转发,则查找IP路由表转发,如果需要标签转发,则按照标签转发表转发;当收到带标签的报文时,如果需要按照标签转发,则根据标签转发表转发,如果需要转发到IP网络,则去掉标签后根据IP转发表转发

在这里插入图片描述


MPLS标签结构
在这里插入图片描述
在这里插入图片描述
LSR收到一个数据帧后,如何判断里面所封装的究竟是IP报文还是标签报文呢?
以以太网环境为例,以太帧头中的Type字段用于指示帧头后所封装的报文类型,如果字段值为0x0800,则标识帧头内封装的是一个IP报文;如果值为0x8847(单播)或0x8848(组播),则标识帧头内封装的是一个MPLS标签报文


标签空间
在这里插入图片描述


MPLS标签的处理

标签的操作类型包括标签压入(Push或Insert)、标签交换(Swap)和标签弹出(Pop),它们是标签转发的基本动作,是标签转发信息表的组成部分

标签压入:Push,指当IP报文进入MPLS域时,MPLS边界设备在报文二层头部和IP头部之间插入一个新标签;或者MPLS中间设备根据需要,在标签栈顶增加一个新的标签(即标签嵌套封装)

标签交换:Swap,当报文在MPLS域内转发时,根据标签转发表,用下一跳分配的标签,替换MPLS报文中的栈顶标签

标签弹出:Pop,当报文离开MPLS域时,将MLPS报文的标签去掉

PHP:Penultimate Hop Popping,倒数第二跳弹出,在最后一跳LSR中,标签已经没有使用价值。在这种情况下,可以利用PHP特性,在倒数第二跳LSR处将标签弹出,减少最后一跳的负担。最后一跳LSR直接进行IP转发或者下一层标签转发。PHP在Egress LSR上配置,支持PHP特性的Egress LSR分配给倒数第二跳LSR的标签值为3


LSP的分类和建立

MPLS需要为报文事先分配好标签,建立一条LSP,才能进行报文转发。LSP分为静态LSP和动态LSP两种

静态LSP的建立:
静态LSP是用户通过手工为各个FEC分配标签而建立的。

由于静态LSP各节点上不能相互感知到整个LSP的情况,因此静态LSP是一个本地的概念。

静态LSP不使用标签分发协议,不需要交互控制报文,因此消耗资源比较小,适用于拓扑简单并且稳定的小型网络。

但通过静态方式分配标签建立的LSP不能根据网络拓扑变化动态调整,需要管理员干预。

动态LSP的建立:
动态LSP通过标签发布协议动态建立。标签发布协议是MPLS的控制协议,也可称为信令协议,负责FEC的分类、标签的分发以及LSP的建立和维护等一系列操作。MPLS可以使用多种标签发布协议

LDP:LDP是专为标签发布而制定的协议,LDP根据IGP、BGP路由信息通过逐跳的方式建立LSP

RSVP-TE:RSVP-TE是对RSVP的扩展,用于建立基于约束的LSP,它拥有普通LDP LSP没有的功能,如发布带宽预留请求、带宽约束、链路颜色和显式路径等

MP-BGP:MP-BGP是在BGP协议的基础上扩展而来的协议,MP-BGP支持为MPLS VPN业务中私网路由和跨域VPN的标签路由分配标签


静态LSP的建立和配置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


MPLS详细转发过程

NHLFE:Next Hop Label Forwarding Entry,下一跳标签转发表项,用于指导MPLS报文的转发

FTN:FEC-to-NHLFE,FEC到一组NHLFE的映射

ILM:Incoming Label Map,入标签到一组下一跳标签转发表项的映射

ILM包括Tunnel ID、入标签、入接口和标签操作类型等信息

ILM在Transit LSR的作用是将标签和NHLFE绑定。通过标签索引ILM表,就相当于使用目的IP地址查询FIB,能够得到所有的标签转发信息

Tunnel ID:为了给使用隧道的上层应用(如VPN、路由管理)提供统一的接口,系统自动为隧道分配了一个ID,称为Tunnel ID。Tunnel ID长度为32bit,本地有效,设备为各种隧道所分配的一个ID。在MPLS中,Tunnel ID还用于将FIB、ILM及NHLFE进行关联

在报文转发过程中:

在这里插入图片描述
在Ingress LSR,通过查询FIB表和NHLFE表指导报文的转发。当IP报文进入MPLS域时,首先查看FIB表,检查目的IP地址对应的Tunnel ID值是否为0x0,如果Tunnel ID值为0x0,则进入正常的IP转发流程;如果Tunnel ID值不为0x0,则进入MPLS转发流程

在这里插入图片描述
在Transit LSR,通过查询ILM表和NHLFE表指导MPLS报文的转发

在这里插入图片描述
在Egress LSR,通过查询ILM表指导MPLS报文的转发或查询路由表指导IP报文转发

在这里插入图片描述


LDP协议概述

LDP(Label Distribution Protocol,标签分发协议)时一种标签分发协议,广泛应用于MPLS网络,具有配置简单,可提供路由拓扑驱动建立LSP、支持大容量LSP等优点。LDP是MPLS的一种控制协议。LDP通过Hello报文发现邻居,并基于TCP建立邻居之间的会话。LDP能够动态地为FEC分配标签,并建立LSP

在这里插入图片描述


LDP对等体及LDP会话

LDP对等体:LDP对等体是指相互之间存在LDP会话、使用LDP来交换标签映射信息的两个LSR。LDP对等体通过它们之间的LDP会话获得对方的标签映射。LDP对等体也成为LDP邻居

LDP会话:

本地LDP会话(Local LDP Session),建立会话的两个LSR之间是直连的
远程LDP会话(Remote LDP Session),建立会话的两个LSP之间是非直连的
在这里插入图片描述


LDP报文类型

LDP协议主要使用四类报文

发现报文:用于通告和维护网络中LSR的存在,如Hello报文

会话报文:用于建立、维护和终止LDP对等体之间的会话,如Initialization报文、Keepalive报文

通告报文:用于创建、改变和删除FEC的标签映射

通知报文:用于提供建设性的报文和差错通知

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


LDP协议中的一些概念

LSR ID:
每台运行MPLS的LSR都必须拥有一个域内唯一的LSR ID。LSR ID长度为32bit,与IPv4地址的格式相同。
通常情况下,会选择设备的某个Loopback接口的地址作为LSR ID。
在华为设备上激活MPLS能力之前,必须为设备配置MPLS ID(使用全局配置命令mpls 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时,标识基于设备(或基于平台)的标签空间,在本课程中,所有LSR均使用该形式;值非0时,标识基于接口的标签空间

在这里插入图片描述

传输地址:TA,Transport Address
两台LSR之间在建立LDP会话之前,需要先建立TCP连接,以便进行LDP协议报文的交换

互为邻居的LSR需要基于双方的传输地址建立TCP连接

在LDP的Hello报文中,包含设备的传输地址,LSR通过Hello报文知晓邻居的传输地址

在使用Hello报文发现邻居并知道了对方的传输地址后,邻居之间就会开始尝试TCP的三次握手(基于传输地址),并交互LDP的初始化报文、标签映射报文等,这些报文都使用双方的传输地址作为源、目的IP地址

由于传输地址会被用来与邻居建立TCP连接,因此LSR必须拥有到达邻居的传输地址的路由

缺省情况下,公网的LDP传输地址等于设备的LSR ID,私网的传输地址等于接口的主IP地址

在接口视图下,使用mpls ldp transport-address命令,可以修改传输地址


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


LSR的缺省行为

在华为设备上激活了MPLS和LDP后,缺省情况下
Transit LSR只有收到下游的标签映射报文时,才会向上游分发标签
对于从邻居LSR收到的标签映射,无论邻居LSR是不是自己的下一跳都会保留下来


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在MPLS中,运行LDP协议的LSR的操作小结

LSR首先通过运行IGP(如OSPF、ISIS等)来构建路由表、FIB表

LDP根据相应的模式,为路由表中的路由前缀(FEC)分配标签

LDP根据相应的模式,将自己为路由前缀分配的标签,通过LDP标签映射报文通告给LDP邻居

LSR将自己为路由前缀分配的额标签,以及LDP邻居为该路由前缀通告的标签存储起来,并形成关联

当LSR转发到达目的网络的标签报文时,所使用的出站标签总是下游LDP邻居所通告的标签,此处所指的下游邻居,时设备的路由表中到达该目的网络的下一跳设备

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-10-23 12:49:51  更:2021-10-23 12:49:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:44:43-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码