HCIP---MPLS---LDP

文章目录

目录

文章目录

前言

 一.LDP基本工作机制

  LDP工作原理概述 

LDP对等体:

二.本地LDP会话自动建立过程 

三.LDP优化 

PHP机制:

 四.LDP配置

总结


前言

    MPLS 基于标签转发表进行转发,与路由表类似,标签转发表有两种获取渠道:一是手动配置(类似静态路由),二是通过协议自动学习(类似OSPF)。手动配置不灵活。维护量较大,常用的标签分发方法是使用标签分发协议 LDP 自动分发标签。

    本章介绍LDP的工作原理,然后结合一个例子介绍NPLS,LDP的配置。


 一.LDP基本工作机制

  LDP工作原理概述 

    LDP 协议作为 MPLS 的标签分发协议,同样需要基于路由器通过IGP协议获取路由信息的情况下。

    在MPLS域中,只有目标网段的出站LSR会主动分发标签(例如上图中R4作为4.4.4.0网段出站LSR会给目标网段分发标签),R4给4.4.4.0网段分发标签后,会将目标网段和标签的映射表发给中转LSR(R3)(前提:R4和R3为LDP对等体),R3将路由表中是否有目标网段信息和去往该网段的下一跳是否为R4作为标准,如果两者都满足,则给目标网段分配标签。

LDP对等体:

   LDP对等体指的是使用标签分发协议(LDP)进行标签分发的网络设备。在LDP网络中,有许多LDP对等体,它们彼此通信以建立标签分发情况。

  •     本地LDP会话:直连设备之间建立的会话
  •     远程LDP会话:非直连设备之间建立的会话

二.本地LDP会话自动建立过程 

 概述为以下四步

发现邻居---建立TCP连接---建立LDP会话---分发标签

  • 发现邻居: 

R1将hello报文封装在UDP(端口:646)中,使用组播地址224.0.0.2发送hello报文。

  

Hello包字段解析
传输地址默认使用该设备的LSR ID,用于建立TCP会话
LDP ID 用于唯一标识一个LDP进程,每个LDP ID对应一个唯一的标签空间,用于标识和转发数据包,用于确保MPLS标签在网络中唯一分配和传递
周期更新时间5秒
保活时间3倍周期更新时间
  •  建立TCP会话

 准备阶段

 R1收到R2发送的hello包后,会检查hello包中携带的传输地址是否可达,若可达则将本地的传输地址与之比较,传输地址较大者为主动方,基于对端发送hello中的源IP主动发起TCP建立会话。

建立阶段:

注:TCP会话建立完成后扔会周期性的发送hello包以探测新的邻居。

  • 建立LDP会话

 TCP连接建立完成之后,双方进行LDP参数协商,协商成功后,向对方回复keeplive报文,若双方参数都协商成功,则LDP对等体关系建立完成,LDP会话建立完成,并周期性(15s)发送heeplive报文进行保活(保活时间:3倍周期更新时间)。

  •  分发标签:

 标签传递方式:

  • DU模式(下游自主模式):MPLS的下游节点会主动向上游节点(出站LSR是最后一个下游节点)发送标记。
  • DOD模式:(下游按需模式)下游设备收到上游设备请求后发送标签。 

DU模式的中转LSR不仅会记录收到的标签,将标签发送给上游节点,还会将标签发给下游节点,下游节点收到上游节点的标签后会根据路由表判断本身为下游节点拒绝记录该标签。由于LDP协议为动态搭建LSP,除了出站LSR,剩余的中转LSR都无法判断自己是否为中转LSR,因此LDP协议中的中转LSR都有两种身份:出站LSR(入站标签:null,出站标签:下游节点发送的标签)+中转LSR(入站标签:本地分配,出站标签:下游节点发送)

 如图,当数据包去往4.4.4.0网段时,可以从R2入站(此时R2为入站LSR,R3为中转LSR)或R3入站(此时R3为入站LSR)。而静态搭建的LSP由于入站LSR是手工指定的,因此数据包想要去往4.4.4.0网段只能从手工配置的入站LSR进入。

三.LDP优化 

  •  入站LSR优化机制:

 入站/出站LSR会根据数据包中的目标IP查看FIB表该数据包是否执行MPLS,若执行则查看LFIB表查看数据包的转发路径。为了解决出站/入站LSR需要查询两张表导致的查询效率低下问题,LDP协议存在PHP机制(次默跳弹出机制)。

 优化机制:将出站标签直接添加到FIB表中。

  • 出站LSR优化机制:

PHP机制:

   当数据包到达MPLS网络的倒数第二个节点时,该节点可以将标签弹出,并将数据包发送到它的最终目的地。这样可以减少MPLS网络上的标签交换操作,从而提高网络性能。华为设备默认开启。

   LDP协议中的PHP机制是通过将特殊的标签值(隐式空标签:3)分配给PHP标签来实现的。出站LSR会将隐式空标签分配给上游节点,此节点会将隐式空标签作为出站标签记录在LFIB表中,并将出站标签3作为鉴别自身是否为该LSP链路上倒数第二节点的依据,若鉴别为倒数第二节点转发报文时会自动弹出隐式空标签,然后转发给出站LSR,借此来实现出站LSR收到的报文不含标签,不查LFIB表,只查FIB表转发数据,从而增加查询效率,降低节点负载,提高网络性能。具体可查看下方倒数第二节点LSP构建情况白哦。

 四.LDP配置

#准备工作:需要配置静态或动态路由实现全网可达#配置LSR-ID
[r1]mpls lsr-id 1.1.1.1
#MPLS全局激活
[r1]mpls\
#LDP全局激活
[r1]mpls ldp
#MPLS接口激活
[r1-GigabitEthernet0/0/0]mpls
#LDP接口激活
[r1-GigabitEthernet0/0/0]mpls ldp#R2 R3 R4 配置方法相同#查看MPLS对等体关系
[r1]display mpls ldp peer 
#查看LDP会话
[r1]display mpls ldp session
#查看LSP构建情况
[r4]display mpls lsp#华为设备默认只给/32网段分配标签
#给所有除了/32以外的网段分配标签,默认只对配置命令设备的直连网段生效
#其它设备的直连网段需要在其它设备上配置相同的命令
[r4]mpls
[r4-mpls]lsp-trigger all
  •  LDP 会话表

  •   LSP 构建i情况表

  •  倒数第二节点LSP构建表

  •  中转LSR R2 LSP表

  • 入站LSR LSP表


总结

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

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

相关文章

【Rust】快速教程——自定义类型、数字转枚举、Cargo运行

前言 超过一定的年龄之后,所谓人生,无非是一个不断丧失的过程而已。宝贵的东西,会像梳子豁了齿一样从手中滑落下去。你所爱的人会一个接着一个,从身旁悄然消逝。——《1Q84》 \;\\\;\\\; 目录 前言自定义类型数字转枚举Cargo.tom…

【LeetCode刷题-链表】--86.分隔链表

86.分隔链表 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val val; }* ListNode(int val, ListNode next) { this.val val; this.next next; }* }*/ class…

前端学习--React(3)

一、Redux 集中状态管理工具,不需要react即可使用,每个store的数据都是独立于组件之外的 vue小链接:vuex/pinia 基本使用 Redux将数据修改流程分成三个概念,state、action和reducer state - 一个对象 存放我们管理的数据状态 a…

某东大厂面试js手写题【手写代码附带注释,放心食用,博主亲测】

文章目录 前言js实现push方法js实现订阅发布手写防抖节流手写reduce方法深拷贝es5去重数组多维数组去重排序简单递归实现树形结构输出遍历后言 前言 hello world欢迎来到前端的新世界 😜当前文章系列专栏:前端面试 🐱‍👓博主在前…

Linux僵死进程及文件操作

1.僵死进程(僵尸进程): 1.僵死进程产生的原因或者条件: 什么是僵死进程? 当子进程先于父进程结束,父进程没有获取子进程的退出码,此时子进程变成僵死进程. 简而言之,就是子进程先结束,并且父进程没有获取它的退出码; 那么僵死进程产生的原因或者条件就是:子进…

直接插入排序和希尔排序

前言 我们前面几期介绍了线性和非线性的基本数据结构。例如顺序表、链表、栈和队列、二叉树等~!本期和接下来的几期我们来详解介绍各个排序的概念、实现以及性能分析! 本期内容 排序的概念以及其运用 常见的排序算法 直接插入排序 希尔排序 一、排序的…

vue2项目从0搭建(三):配置环境变量及对应的webpack配置

前言 实际业务开发中,一个项目很可能会同时配置好几套环境。 比如:常规开发环境,开发测试环境,正式的测试环境,预发测试环境,客户甲的生产环境,客户乙的生产环境,通用生产环境,独立应用环境,微前端环境,大屏专用环境,移动端环境。 一女多嫁的实际业务场景,就需要我们进行多样…

安卓用SQLite数据库存储数据

什么是SQLite? SQLite是安卓中的轻量级内置数据库,不需要设置用户名和密码就可以使用。资源占用较少,运算速度也比较快。 SQLite支持:null(空)、integer(整形)、real(小…

第29期 | GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大型语言模型(LLM)等安全领域应用的知识。在这里,您可以…

Linux篇:文件系统

一、共识原理: 文件文件内容文件属性 磁盘上存储文件存文件的内容(数据块)存文件的属性(inode) Linux的文件在磁盘中存储是将属性和内容分开存储的。 二、硬件简述: 1. 认识硬件 磁盘:唯一的一…

混合云案例:利用 Databend Cloud 高效加速私有 Databend 的策略与实施

背景 Databend 是一款基于对象存储的存算分离湖仓产品,已成为云上大数据分析中高效且低成本的首选解决方案。目前,Databend 在多个用户场景中得到广泛应用,包括: 新媒体行业数据分析及大屏数据展示云上 CDH 替代以减少本地磁盘和…

Deep Image Prior

深度图像先验 论文链接:https://sites.skoltech.ru/app/data/uploads/sites/25/2018/04/deep_image_prior.pdf 项目链接:https://github.com/DmitryUlyanov/deep-image-prior Abstract 深度卷积网络已经成为一种流行的图像生成和恢复工具。一般来说&a…

web:[ZJCTF 2019]NiZhuanSiWei1

题目 点进题目,网页显示如下,需要代码审计 $_GET["text"]和$_GET["file"]来获取传入的两个参数text和file。使用isset()函数来检查$text变量是否已设置并且不为null。如果设置了并且不为null,则执行下面的逻辑。在下面的…

汽车电子 -- 车载ADAS之LCA(变道辅助系统)

相关法规文件: LCA: ISO 17387-2008 Intelligent transport systems — Lane change decision aid systems 一、变道辅助系统 LCA (Lane Change Assist) LCA 系统(变道辅助系统)监测后方相邻车道区域,如果有车辆在后…

《融合SCADA系统数据的天然气管道泄漏多源感知技术研究》误报数据识别模型开发

数据处理不作表述。因为我用的是处理后的数据,数据点这。 文章目录 工作内容1CC040VFD电流VFD转速压缩机转速反馈进出口差压 紧急截断阀开到位进出电动阀开到位发球筒电筒阀开到位收球筒电动阀开到位电动阀2005开到位越站阀开到位 工作内容2工作内容3 工作内容1 任…

Java小游戏 王者荣耀

GameFrame类 所需图片: package 王者荣耀;import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.io.File; import java.util.ArrayLis…

<JavaDS> 二叉树遍历各种遍历方式的代码实现 -- 前序、中序、后序、层序遍历

目录 有以下二叉树: 一、递归 1.1 前序遍历-递归 1.2 中序遍历-递归 1.3 后序遍历-递归 二、递归--使用链表 2.1 前序遍历-递归-返回链表 2.2 中序遍历-递归-返回链表 2.3 后序遍历-递归-返回链表 三、迭代--使用栈 3.1 前序遍历-迭代-使用栈 3.2 中序遍…

【Python3】【力扣题】367. 有效的完全平方数

【力扣题】题目描述: 【Python3】代码: 1、解题思路:Python函数。num的平方根 或者 num的0.5次幂。 知识点:float.is_integer(...):判断浮点数的值是否等于整数。也可以:浮点数.is_integer()。 pow(a,b)&…

【SpringCloud】微服务的扩展性及其与 SOA 的区别

一、微服务的扩展性 由上一篇文章(没看过的可点击传送阅读)可知, 微服务具有极强的可扩展性,这些扩展性包含以下几个方面: 性能可扩展:性能无法完全实现线性扩展,但要尽量使用具有并发性和异步…

【Intel FPGA】D5005 使用笔记

项目总目标,在AFU中实现xx算法DDR 1.FPGA device :1SX280HN2F43E2VG 2 .硬件架构图 3.DDR信息 4.FIM (FPAG Interface Manager) The FIM contains the FPGA logic to support the accelerators, including the PCIe IP core, …