三种 FRR 技术演进 LFA、rLFA、Ti-LFA

        FRR:Fast ReRoute 快速重路由,是为最大程度地减少流量损失,路由器预先安装一条备份路径,当故障发生的时候,由邻近故障点的路由器(PLR:Point of Local Repair,本地修复节点)快速切换到备份路径,从而最大限度减少网络故障的丢包,提升收敛性能。

        预先概念:
        S:运行LFA的源节点
        D:目的节点
        N:与源节点相邻的邻居节点,即相邻源节点的、备份路径开始的节点
        P:从源节点开始,计算LFA的节点
        Q:从目的节点开始,计算LFA的节点

        1、LFA:

        最早出现的FRR技术是LFA(Loop-Free Alternate),计算条件是:ND < NS + SD,满足此条件即可确认链路无环。

        这样计算方式的缺点是:1、可能出现次优备份链路;2、仍有一定机率可能出现 环路;3、有一定机率出现误判,找不到下一跳;RFC 6571数据统计LFA场景覆盖率为80%~90%,于是出现了 rLFA

        2、rLFA:

        rLFA:remote Loop Free Alternate,远端无环路备份路径,RFC7490定义的,方法是:找到一个不会经过故障节点的中间结点(通常称PQ结点),计算条件为:
        P区域满足:NP < SN + SP
        Q区域满足:QD < SQ +SD
        PQ交汇的点即为PQ节点,成为LFA备份链路的起始节点

        RLFA的原理可以简单理解为:从源端和目的端,双向做了LFA,相较于LFA的优点是:增加了生成备份路径的几率,在SR中,减少了 SR-List 的层数,从而扩展了网络半径。但RLFA仍然有一定几率无法计算出PQ节点,覆盖范围为90%~95%,于是又补充发展出了 Ti-LFA

        3、Ti-LFA

        Ti-LFA:Topology-Independent Loop-free Alternate,拓扑无关的无环路备份路径,计算方法是在 rLFA 的基础上,在无法计算出PQ交汇点的时候,那么PQ节点之间,借用IGP的计算表达,如果PQ之间的IGP无环,则确定整条备份链路无环,用 adjacency sid 标签链接PQ节点连接PQ空间,来完成整个链路的建立

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

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

相关文章

在Java Web项目中遇到过哪些技术难题以及如何解决的

在Java Web项目中&#xff0c;开发者可能会遇到多种技术难题。这些难题可能涉及框架使用、性能优化、安全性、数据库交互、前后端交互等多个方面。以下是一些常见的技术难题及其可能的解决方案&#xff1a; 1. 框架使用问题 难题&#xff1a; Spring Boot、Spring MVC等框架…

自动控制:前馈控制

自动控制&#xff1a;前馈控制 前馈控制是一种在控制系统中通过预先计算和调整输入来应对已知扰动或变化的方法。相比于反馈控制&#xff0c;前馈控制能够更快速地响应系统的变化&#xff0c;因为它不依赖于系统输出的反馈信号。前馈控制的应用在工业过程中尤为广泛&#xff0…

银河麒麟(V10SP1)-arm版交叉编译-qt-5.12.12源码

前言 确实是编译出来了qtbase库和qtwebengine库&#xff0c;如果按照文章没有操作出来有两种情况 (1) 读者阅读不仔细 (2) 我后期记录整理时写错了 不完美之处和遗留问题 读者阅读前须知 1. 最后发现没有生成libqxcb库文件,如果在国产化系统上执行qt程序时依赖的是自己编译…

element-ui输入框如何实现回显的多选样式?

废话不多说直接上效果&#x1f9d0; 效果图 <template><div><el-form:model"params"ref"queryForm"size"small":inline"true"label-width"68px"><el-form-item label"标签" prop"tag&q…

基于java+springboot+vue实现的仓库管理系统(文末源码+lw+ppt)23-499

第1章 绪论 伴随着信息社会的飞速发展&#xff0c;仓库管理所面临的问题也一个接一个的出现&#xff0c;所以现在最该解决的问题就是信息的实时查询和访问需求的问题&#xff0c;以及如何利用快捷便利的方式让访问者在广大信息系统中进行查询、分享、储存和管理。这对我们的现…

微积分-导数5(链式法则)

链式法则 假设你想求下面的函数的导数 f ( x ) x 2 1 f(x) \sqrt{x^2 1} f(x)x21 ​ 之前学到的微分法则没求 F ′ ( x ) F(x) F′(x)。 我们观察到 F F F 是一个复合函数。实际上&#xff0c;如果我们令 y f ( u ) u y f(u) \sqrt{u} yf(u)u ​ 并且 u g ( x ) …

Oracle PL / SQL运算符

连接运算符 串联运算符||将一个字符串操作数附加到另一个。 每个字符串可以是CHAR&#xff0c;VARCHAR2&#xff0c;CLOB。 如果任一个字符串是CLOB&#xff0c;则结果是临时CLOB; 否则&#xff0c;它是一个VARCHAR2值。 下面的代码连接运算符。 DECLARE x VARCHAR2(4) : …

Golang 类型断言+反射+序列化

类型断言 什么是类型断言 由于多态的存在&#xff0c;接口变量不知道其指向的具体类型&#xff0c;如果需要转为具体类型&#xff0c;则需要使用类型断言 类型断言语法 接口变量名.(具体类型) // 此处变量必须为 interface 类型类型断言返回值 x : 变量名.(具体类型) // 如…

【第三版 系统集成项目管理工程师】第4章 信息系统架构

持续更新。。。。。。。。。。。。。。。 【第三版】系统集成项目管理工程师 考情分析4.1架构基础4.1.1指导思想&#xff08;非重点&#xff09; P1364.1.2设计原则&#xff08;非重点&#xff09; P1364.1.3建设目标&#xff08;非重点&#xff09; P1374.1.4总体框架 P138练习…

常见的Java运行时异常

常见的Java运行时异常 1、ArithmeticException&#xff08;算术异常&#xff09;2、ClassCastException &#xff08;类转换异常&#xff09;3、IllegalArgumentException &#xff08;非法参数异常&#xff09;4、IndexOutOfBoundsException &#xff08;下标越界异常&#xf…

Vue3 监听属性

Vue3 监听属性 Vue.js 是一个流行的前端框架,以其响应式系统和组件化开发而闻名。在 Vue3 中,监听属性(Watchers)是一个核心功能,允许开发者监控和响应数据的变化。本文将详细介绍 Vue3 中监听属性的使用方法、场景和最佳实践。 监听属性的基本概念 在 Vue3 中,监听属…

windows无法访问github

##一、如果发现windows无法访问github时 一般就是我们的dns出现了问题&#xff0c;此时我们需要更换一个dns访问 ##二、解决方法 首先我们访问ip查询地址&#xff0c; https://ipchaxun.com/github.com/ 可更换下面历史ip进行测试&#xff0c;在windows的cmd里面输入ping git…

VirtualBox虚拟机网络设置(四种方式)

在使用VirtualBox进行虚拟化操作时&#xff0c;网络配置是一个重要的环节。VirtualBox提供了四种主要的网络连接方式&#xff0c;每种方式都有其特定的应用场景和特点。以下是详细的介绍&#xff1a; 1. NAT (Network Address Translation) 特点&#xff1a; - 工作原理&#…

Python学习笔记31:进阶篇(二十)pygame的使用之图形绘制

前言 基础模块的知识通过这么长时间的学习已经有所了解&#xff0c;更加深入的话需要通过完成各种项目&#xff0c;在这个过程中逐渐学习&#xff0c;成长。 我们的下一步目标是完成python crash course中的外星人入侵项目&#xff0c;这是一个2D游戏项目。在这之前&#xff…

Day2用 rustlings 练习 Rust 语言-Move Semantics

大家好 今天 完成 2024年自动驾驶OS开发训练营-初阶营第四期-导学 Day2用 rustlings 练习 Rust 语言 -Move Semantics https://doc.rust-lang.org/stable/book/ch04-00-understanding-ownership.html 提交代码时候 提示 没有权限怎么出来 aciton 参考开发环境配置 https://rcor…

图片管理新纪元:高效批量横向拼接图片,一键生成灰色艺术效果,打造专业视觉体验!

在数字时代&#xff0c;图片已成为我们生活和工作中不可或缺的一部分。但面对海量的图片&#xff0c;如何高效地进行批量管理、拼接和调色&#xff0c;成为许多人面临的难题。今天&#xff0c;我们为您带来了一款颠覆性的图片管理工具&#xff0c;让您轻松实现图片批量横向拼接…

智慧生活新篇章,Vatee万腾平台领航前行

在21世纪的科技浪潮中&#xff0c;智慧生活已不再是一个遥远的梦想&#xff0c;而是正逐步成为我们日常生活的现实。从智能家居的温馨便捷&#xff0c;到智慧城市的高效运转&#xff0c;科技的每一次进步都在为我们的生活增添新的色彩。而在这场智慧生活的变革中&#xff0c;Va…

论文翻译 | (TAKE A STEP BACK) 后退一步:在大型语言模型中通过抽象来调用推理

摘要 我们介绍了STEP-BACK提示&#xff0c;这是一种简单的提示技术&#xff0c;使LLM能够进行抽象&#xff0c;从而从包含特定细节的实例中派生高级概念和第一原则。使用概念和原则来指导推理&#xff0c;LLM显着提高了他们遵循正确推理路径的能力。我们使用PaLM-2L、GPT-4和Ll…

Redis数据结构解析-RedisObject

文章目录 ☃️概述☃️源码 ☃️概述 RedisObject 是 Redis 中表示数据对象的结构体&#xff0c;它是 Redis 数据库中的基本数据类型的抽象。在 Redis 中&#xff0c;所有的数据都被存储为 RedisObject 类型的对象。 RedisObject 结构体定义如下&#xff08;简化版本&#xf…

python 66 个冷知识 0706

66个有趣的Python冷知识 Python的名字来源 Python的名字不是来自蛇&#xff0c;而是来自英国的喜剧团体“蒙提派森”。 多行字符串 Python支持使用三重引号 或 """ 来创建多行字符串。 链式比较 Python允许你进行链式比较&#xff0c;例如 1 < a < 3。…