MPLS LDP协议

文章目录

    • LDP标签分发协议
      • 工作原理
      • LDP应用
      • 倒数第二跳弹出

在这里插入图片描述

LDP标签分发协议

  • 基于FEC自动分配标签构建LSP
  • 用于建立动态LSP
  • LDP报文头部结构
  • 信息类型

工作原理

LDP工作过程

  • 发送Hello消息用于发现邻居;UDP发送
  • LSR_1主动发起并建立TCP连接;TCP进行建立
  • 主动方发初始化消息协商参数
  • 接收参数则发初始化消息和Keepalive消息
  • 接收参数则发送 Keepalive 消息
dis mpls ldp adjacency    #查看邻居关系,只能说明邻居关系建立成功,不能说明会话建立成功
dis mpls ldp session    #查看邻居会话关系
dis mpls ldp inter g0/0/0    #查看接口状态,接口Down掉之后邻居和会话肯定都断掉

标签分配过程

标签的分配是下游开始分配到上游的

  • EGress设备分配标签到FEC(路由),向上游通告标签映射(标签与FEC路由的对应关系)
  • Transit 接受标签映射,向上游通告对应FEC(路由)的标签映射
  • InGress接受标签映射
  • 标签映射接受前提:判断标签映射通告者和该FEC的下一跳是否一致
  • 只会对主机路由进行分配标签,互联网段不会分配标签(可以改)

LDP应用

解决BGP路由黑洞问题

MPLS在BGP的IBGP内解决全互联问题,可以直接跨设备建立邻居,直接解决路由黑洞问题,因为MPLS交换的是标签路径,中间的BGP设备是不需要看路由的,看标签进行数据的转发

  • 配置完基本的MPLS和BGP操作之后,只有R2和R5上面有两个私网的路由,中间的设备没有私网路由,这时候默认还是走IP网络,此时是无法通信的,中间走路由肯定不行,虽然R3和R4没路由,但是配置MPLS之后,可以经过标签进行转发,这时候在两台LER上配置----路由迭代,让私网的包走LSP链路

  • 之后直接查看FIB,发现去往另一端的网段是走路由下一跳的,此时不行

    [R2-bgp]dis fib | in 2.0Destination/Mask   Nexthop         Flag  TimeStamp     Interface      TunnelID
    10.1.2.0/24        23.1.1.3        DGU   t[2527]       GE0/0/1        0x0
    
  • 但是在BGP路由表中看另一端的网段下一跳是正确的 LSP 路径,需要让本地路由走正确的LSP路径

     Total Number of Routes: 2Network            NextHop        MED        LocPrf    PrefVal Path/Ogn*>   10.1.1.0/24        0.0.0.0         0                     0      i*>i  10.1.2.0/24        5.5.5.5         0          100        0      i
    
  • 配置命令:

    route recursive-lookup tunnel    #路由递归到标签交换隧道中,只能在LER设备上进行配置,两端都需要配置
    dis fib | in 2.0    #之后我们就能看见走路由标签交换了
    dis tunnel-info tunnel-id 0x5    #查看Tunnel隧道信息
    
  • 之后使用 Tracert -v 10.1.2.253 进行测试时候会发现经过MPLS网络的信息,会直接用 * 代替

    #华为认为,在Tracert路由进入MPLS网络中之后,里面的设备需要一跳一跳的去回复,回复的是ICMP差错报文,当只有一层标签的情况下,ICMP的报错信息会沿着IP路由回来,但是如果要沿着IP路由回来的话,本地上没有路由,所以就出现 * 号配置:undo ttl expiration pop    #命令是将TTL的报错命令沿着LSP路径继续往后发,也可以记成让 Tracert 回显,在LSR上配置
    
  • 配置以上命令之后就能在 Tracert 中查看到了

倒数第二跳弹出

倒数第二跳当然也可以不弹出,会对 LER 设备构成困扰

倒数第二跳弹出,主要是用来缓解LER的压力

LER连接的是IP网络,最后一跳依靠 LFIB 来判断是否需要弹标签,如果需要弹标签,还需要查询 IP 路由表,之后查询FIB表再进行转发。

最后一跳查两张表,FIB(转发表)和LFIB(标签转发表)

为了降低LER的压力,在倒数第二的LSR设备上进行标签的弹出,让LER设备直接查询路由进行FIB转发

Author:DC

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

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

相关文章

怎么利用商品详情API接口实现数据获取与应用?

在当今数字化的商业时代,高效获取和利用商品数据对于企业和开发者来说至关重要。商品详情 API 接口为我们提供了一种便捷的方式来获取丰富的商品信息,从而实现各种有价值的应用。本文将深入探讨如何利用商品详情 API 接口实现数据获取与应用。 一、商品…

STM32 HAL库UART查询方式实例

本文中介绍USART编程涵盖了三种主要方法,详细介绍STM32F407微控制器结合HAL库,通过UART的查询方式来实现一个实用的密码验证程序。提示用户键入一个字符作为密码。只有当用户精准地输入字符6时,系统才会反馈“密码正确”的确认信息。反之&…

@JsonAlias和@JSONField序列化和反序列化

com.fasterxml.jackson.annotation.JsonAlias("expressCode") com.alibaba.fastjson.annotation.JSONField(name "expressCode") 这两个注解分别属于不同的JSON序列化框架:Jackson 和 Fastjson,它们的用途是处理JSON字段的名称映射…

【重学 MySQL】五十六、位类型

【重学 MySQL】五十六、位类型 定义赋值与使用注意事项应用场景 在MySQL数据库中,位类型(BIT类型)是一种用于存储位字段值的数据类型。 定义 BIT(n)表示n个位字段值,其中n是一个范围从1到64的整数。这意味着你可以存储从1位到64…

数据库镜像拷贝还原--Oracle数据库实例启动报错

现象描述: 从服务器,在未停数据库服务情况下,拍快照还原到另一台服务器,启动数据库报错。 过程记录: 一、启动数据库提示:ORA-01102 报错信息: ORA-01102: cannot mount database in EXCLUSI…

requestidlecallback与分时函数

前言 我们知道GUI 渲染线程与 JS 引擎线程是互斥的。当JS程序执行时间过长,会阻塞页面渲染和事件响应。那么针对一些优先级较低的任务,我们可以利用分时函数在主线程空闲时执行,减少卡顿。其本质是将一个长任务拆分成数个短任务,…

macos php开发环境之macport安装的php扩展安装,php常用扩展安装,port中可用的所有php扩展列表

macos中,我们使用了port 安装了php后,默认只带有php基本的核心扩展的, 如果需要使用其他的扩展,如 redis, https, xdebug等扩展就需要我们手动来安装对应的扩展。 macos php开发环境 macport安装的php的方法见macos 中…

国产工具链GCKontrol-GCAir助力控制律开发快速验证

前言 随着航空领域技术的不断发展,飞机的飞行品质评估和优化成为了航空领域的一个重要任务,为了确保飞行器在各种复杂条件下的稳定性,控制律设计过程中的模型和数据验证需要大量仿真和测试。 本文将探讨基于世冠科技的国产软件工具链GCKont…

Leetcode 37. 解数独

1.题目基本信息 1.1.题目描述 编写一个程序,通过填充空格来解决数独问题。 数独的解法需 遵循如下规则: 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 33 宫内只能出现一次。(请参考…

如何设置 GitLab 密码长度?

GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。 学习极狐GitLab 的相关资料: 极狐GitLab 60天专业…

使用 Spring Boot 客户端对 Apache Pulsar 进行自定义身份验证

先决条件 在我们深入为 Pulsar 创建自定义身份验证机制之前,请确保您具有以下设置: Java 17: 确保您的环境中已安装并设置 Java 17。Spring Boot Version 3.3.2: 我们将使用 Spring Boot 创建自定义 Pulsar 客户端。Docker & Docker Compose: 在容器…

cudnn8编译caffe过程(保姆级图文全过程,涵盖各种报错及解决办法)

众所周知,caffe是个较老的框架,而且只支持到cudnn7,但是笔者在复现ds-slam过程中又必须编译caffe,我的cuda版本是11.4,最低只支持到8.2.4,故没办法,只能编译了 在此记录过程、报错及解决办法如下; 首先安装依赖: sudo apt-get install git sudo apt-get install lib…

facebook受众选择设置策略的最佳方式

在进行Facebookguanggao投放时,受众的选择是一个至关重要的步骤。正确的受众选择不仅能够帮助我们更好地定位目标用户,还能显著提高guanggao的转化率和投资回报率(ROI)。然而,受众选择的数量和范围同样是需要认真考虑的…

外呼系统致力于企业低成本获客,如何做

外呼系统作为一种通过电脑自动往外拨打用户电话,并播放录制好的语音或进行实时对话的系统,对于企业低成本获客具有显著作用。 以下是一些利用外呼系统实现低成本获客的策略和步骤: 一、明确目标和定位 1. 了解市场需求 - 深入分析目标市场…

【Tor】使用Debian系统搭建obfs4 Bridge网桥

你好 我是无聊的木子。 目录 前言 写作の原因 网桥是个啥? 正文 - 到底咋搭建捏 搞台机子先 比较简便の方法 - 买台云服务器 首月五折 一元试用 远程连接服务器 更加复杂の办法 - 自己拿物理机做网桥 开始搭建网桥 先安装Tor 然后配置网桥 最后组合网桥 找到fin…

大数据面试-笔试SQL

一个表table: c_id u_id score;用SQL计算每个班级top5学生的平均分(腾讯) select class_id,avg(score) as score_avg from (select *,row_number() over(partition by class_id order by score desc) as score_rank from table ) t1 where t…

AI推理部署工具之大汇总,后面会逐步补充

目录 1、FastDeploy 1.1 安装 1.2 yolo推理部署示例 1.3 推理部署思路 1、FastDeploy FastDeploy 通过提供简洁的API接口,让AI推理部署变得更加高效和灵活。适用于多种主流算法模型,且支持跨平台、多硬件兼容等优势。 支持 GPU、CPU、Jetson、ARM …

研发中台拆分之路:深度剖析、心得总结与经验分享

背景在 21 年,中台拆分在 21 年,以下为中台拆分的过程心得,带有一定的主观,偏向于中小团队中台建设参考(这里的中小团队指 3-100 人的团队),对于大型团队不太适用,毕竟大型团队人中 …

【计算机网络 - 基础问题】每日 3 题(三十四)

✍个人博客:https://blog.csdn.net/Newin2020?typeblog 📣专栏地址:http://t.csdnimg.cn/fYaBd 📚专栏简介:在这个专栏中,我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞…

Qt源码-Qt多媒体音频框架

Qt 多媒体音频框架 一、概述二、音频设计1. ALSA 基础2. Qt 音频类1. 接口实现2. alsa 插件实现 一、概述 环境详细Qt版本Qt 5.15操作系统Deepin v23代码工具Visual Code源码https://github.com/qt/qtmultimedia/tree/5.15 这里记录一下在Linux下Qt 的 Qt Multimedia 模块的设…