什么是路由抖动?该如何控制
路由器在实现不间断的网络通信和连接方面发挥着重要作用,具有所需功能的持续可用的路由器可确保其相关子网的良好性能,由于网络严重依赖路由器的性能,因此确保您的路由器不会遇到任何问题非常重要。路由器遇到的一个严重的网络问题是路由抖动。
什么是路由抖动
路由抖动是一种网络问题,其中路由器的状态在短时间内不断波动。这包括路由器:
- 在可用和不可用之间不断切换。
- 更新和撤回网络前缀,从而交替通告两个最佳目标路由。
- 显示任何路由指标(例如 BGP 表版本)的剧烈变化。
例如,如果路由器将路由 A 更新为第一次广播中的最佳路由,然后立即撤回该路由并将路由 B 更新为第二次广播中的最佳路由,然后再次将路由 A 更新为最佳路由,则路由器正在抖动。
通过网络数据包嗅探器、可用性监控或手动检查路由器指标,可以轻松检测到路由抖动。
路由抖动的常见原因
路由抖动在大型网络中很常见,这些网络在分布式位置部署了数百个路由器。路由抖动可能是由干扰路由器理想工作条件的多种网络场景引起的。一些常见原因包括:
- 动态路由:当网络部署动态路由时,路由器容易发生密集的自适应路由更改,它们根据网络拓扑的演变方式动态通告和撤消路由。这会导致路由抖动的几率更高。
- 错误配置:任何错误配置(例如在具有相等跃点的路径之间启用负载均衡)都很容易导致路由抖动。
- 已部署的协议:网络管理员还应仔细选择并监控链路状态和距离矢量路由协议的部署,由于这些协议会导致频繁的重新计算和更新,因此在这种情况下,路由抖动可能会阻碍网络收敛。
- 硬件错误:路由器硬件故障会导致路由器状态在向上或向下之间剧烈波动,从而导致路由抖动。
- 连接的设备:路由抖动也可能是由于与路由器关联的设备造成的,例如出现错误的连接接口或其他连接的路由器抖动。
路由抖动如何影响网络
有问题的路由器很容易减慢您的网络流量,破坏正常的网络功能,并影响最终用户体验。路由抖动对网络的一些主要影响包括:
- 抖动的级联效应:如果不加以管理,路由抖动可能会影响整个网络,在两个目标路由之间密集交替的路由器可能会导致网络流量路由混乱,从而导致所有连接的路由器频繁地重新计算拓扑。这很容易破坏网络拓扑,导致所有上游连接的路由器抖动。
- 路由器过载和 CPU 利用率:路由抖动导致的不必要的重新计算和路由更新会给路由器的 CPU 带来压力,密集的 CPU 使用率和不断变化的目标路由会影响路由器性能并导致网络流量变慢。
- 路由环路:路由抖动会导致路由中的路由器不可用,这会导致其他路由器重新路由流量,持续的流量重新路由可能会导致网络内的路由环路。
- 延迟和网络停机时间:密集的计算、路由更新和 CPU 资源消耗可能会减慢并影响网络路由器的性能,这会影响网络的整体性能,不仅如此,路由抖动还会导致网络组件的下一跳混淆。确定下一跃点所需的时间越长,网络延迟就越高。由于路由器冲突会增加网络延迟、降低性能并呈级联,因此很容易引发代价高昂的网络停机。
如何控制路由抖动
定期升级路由器等最佳实践可帮助您避免大多数路由器问题。例如,具有非常高处理能力的现代路由器限制了路由抖动的可能性。但是,为确保网络路由器与路由抖动的级联效应良好隔离,应实施以下控制技术:
- 路由汇总
- 路由抑制
路由汇总
路由汇总是应对路线抖动风险的有效对策,此技术可帮助网络管理员有效地将其他上游路由器与抖动路由器的影响隔离开来。
路由汇总如何工作
路由汇总的工作原理是首先记下与路由器关联的子网的所有链路,链路根据链路地址中的公共位进行聚合。然后,路由器将此聚合链路通告为与其关联的所有子网的链路。当对多个路由器执行此操作时,会大大减少网络中通告的链路数量。
例如,假设连接了五个路由器,如下所示。路由器 D 通常必须向路由器 E 通告 16 个路由。但是,在路由聚合后,路由器 A、B 和 C 将基于公共前缀聚合其链路,从而分别向路由器 D 通告一条链路。然后,路由器 D 将根据它们的通用前缀聚合这三条链路,并仅向路由器 E 通告一条路由。这大大提高了效率和路由器性能。
此外,在通告的聚合链路中,即使路由器内的链路抖动,聚合路由仍将起作用,当仍至少存在一个有效的聚合子网时,不会释放聚合路由。
这样就无需频繁更新、重新计算和撤回目标路由,从而将路由抖动的影响与其他路由器隔离开来,并帮助网络管理员轻松解决问题。
路由抑制
路由抖动抑制是一种技术,使网络管理员能够在路由器抖动时稳定网络路由,此技术的工作原理是抑制抖动路由器并重新路由通过它的流量。
路由抑制是如何工作的
首先,将网络路由器配置为遵循实现的路由抑制技术,网络管理员需要定义抑制限制。这是允许路由器抖动的首选次数。在网络中,对于每个襟翼,路由器都会受到惩罚。当累积惩罚大于抑制限制时,路由器将被抑制。流量通过更稳定的路由器重新路由。
但是,路由器累积的惩罚会随着时间的推移呈指数级衰减。当累积惩罚小于抑制限制时,默认禁用路由抑制,并重复使用路由。因此,路由抑制可帮助网络管理员在不稳定路由稳定之前延迟使用这些路由。
注意:虽然路由抖动抑制在处理专用链路中的抖动路由器方面可能很有效,但不建议在整个网络中依赖它。错误配置的路由抑制指标很容易导致部分网络无法访问,甚至导致其他路由器抖动。在实施路由抑制之前,网络管理员需要仔细分析其网络的需求和配置。
路由器作为 IT 基础设施的关键组件,容易出现许多其他网络问题,例如速度变慢和信号质量低下,这些问题会严重影响您的网络性能和可用性。为了保护网络免受有问题的路由器的影响并提高路由器性能,需要一个可靠的网络性能监控解决方案。
网络路由器监控
OpManager是一个功能强大、直观的网络性能监控解决方案,可全面监控网络路由器,轻松发现有问题的路由器,并在它们破坏您的网络之前,对其进行故障排除。通过几个内置主动监控器,确保持续的路由器可用性和最佳的路由器资源使用。还可以通过其各种网络拓扑映射功能可视化所有网络路由器。
相关文章:

什么是路由抖动?该如何控制
路由器在实现不间断的网络通信和连接方面发挥着重要作用,具有所需功能的持续可用的路由器可确保其相关子网的良好性能,由于网络严重依赖路由器的性能,因此确保您的路由器不会遇到任何问题非常重要。路由器遇到的一个严重的网络问题是路由抖动…...
2023SICTF-web-白猫-RCE
001 分析题目 题目名称: RCE 题目简介: 请bypass我! 题目环境: http://210.44.151.51:10088/ 函数理解: #PHP str_replace() 函数 <!DOCTYPE html> <html> <body><?php echo str_replace("…...
1.用数组输出0-9
文章目录 前言一、题目描述 二、题目分析 三、解题 程序运行代码 四、举一反三一、题目描述 二、题目分析 三、解题 程序运行代码 总结 前言 本系列为数组编程题,点滴成长,一起逆袭。 一、题目描述 用数组输出0-9 二、题目分析 数组下标从0开始 用数组…...

Selenium 元素不能定位总结
目录 元素不能定位总结: 1、定位语法错误: 定位语法错误,如无效的xpath,css selector,dom路径错误,动态dom 定位语法错误,动态路径(动态变化) 定位策略错误,如dom没有id用id定位…...
1-2 非阻塞延时实现LED闪烁功能(累计定时中断次数)--多路软件定时器的功能实现
单路 #include <reg51.h> #include "delay.h"#define LED_SHINE_TIME 1000//1sunsigned int g_u16_timer_cnt;//在定时器的基础上进行计数 unsigned char g_u8_time_flag;//时间到的标志 unsigned char g_u8_timer_soft_enable;//定时器的软件开关sbit LED0P1…...
数据类型及强制转换
数据类型范围(基本) 数据类型占内存字节数表示范围数量级char(signed char)1-128~1272unsigned char10~2552short int(signed short int)2-32,768~32,7674unsigned short int20~65,5354int(sig…...
Python----高阶函数
高阶函数:把函数作为参数传入,这样的函数称为高阶函数,高阶函数是函数式编程的体现。函数式编程就是指这种高度抽象的编程范式。 高阶函数的由来 在Python中,abs()函数可以完成对数字求绝对值计算。 ① 正数的绝对值是它本身 ②…...

Unity地面交互效果——6、地形动态顶点置换和曲面细分
回到目录 Unity置换贴图局部距离曲面细分 大家好,我是阿赵。 这篇文章是我无聊的时候做了一个demo,觉得挺有趣,于是就发上来。这里面包含了4个内容:置换贴图、顶点偏移、局部曲面细分,曲面细分按距离调整强度。 …...
Linux系统服务之一次性服务(2)
接前一篇文章:Linux系统服务之一次性服务(1) 本文内容参考以下文章: Systemd OneShot 系统启动时运行一次特定的命令或脚本,并在执行完毕后自动退出-CSDN博客 oneshot一次性服务_typeoneshot-CSDN博客 systemd.serv…...

Vue项目解决van-calendar 显示白色空白,需滑动一下屏幕,才可正常显示
问题描述,如图 ipad(平板)或者 H5移动端引入Vant组件的日历组件(van-calendar),初始化显示空白,需滚动一下屏幕,才可正常显示 解决方法 需在van-calendar上绑定open"openCalendar"事件…...

Linux:可视化管理工具Webmin的安装
一、下载 地址:Webmin官网 我这里下载的是1.700-1版本 二、安装 1、在虚拟机上新建目录并安装软件 mkdir /opt/webmin rpm -ivh webmin-1.700-1.noarch.rpm2、修改webmin的root密码 /usr/libexec/webmin/changepass.pl /etc/webmin root 1234563、修改端口(可…...

WARNING: Access control is not enabled for the database.
MongoDB shell version v3.4.24 WARNING: Access control is not enabled for the database. Read and write access to data and configuration is unrestricted. 1)未启用访问控制 2)读写访问不受限制 D:\MongoDB\Server\3.4\bin>mongo MongoDB shell version v3.4.24 c…...

JavaScript编程进阶 – Return语句
JavaScript编程进阶 – Return语句 JavaScript Programming Advanced – Return Statement By JacksonML 就像人们习惯的函数一样,总觉得在函数体最后需要一个return语句,标志着函数的结束,就像下面这个函数 theFunc() 那样。 function theFunc() { re…...
Python与设计模式--备忘录模式
23种计模式之 前言 (5)单例模式、工厂模式、简单工厂模式、抽象工厂模式、建造者模式、原型模式、(7)代理模式、装饰器模式、适配器模式、门面模式、组合模式、享元模式、桥梁模式、(11)策略模式、责任链模式、命令模式、中介者模…...

04_Flutter自定义Slider滑块
04_Flutter自定义Slider滑块 一.Slider控件基本用法 Column(mainAxisAlignment: MainAxisAlignment.start,children: <Widget>[Text("sliderValue: ${_sliderValue.toInt()}"),Slider(value: _sliderValue,min: 0,max: 100,divisions: 10,thumbColor: Colors.…...

服务器数据恢复—EMC存储raid5故障导致上层应用崩溃的数据恢复案例
服务器存储数据恢复环境: EMC某型号存储,8块组建一组raid5磁盘阵列。上层操作系统采用zfs文件系统。 服务器存储故障&分析: raid5阵列中有2块硬盘未知原因离线,raid5阵列崩溃,上层应用无法正常使用。 服务器数据恢…...

7.1 Windows驱动开发:内核监控进程与线程回调
在前面的文章中LyShark一直在重复的实现对系统底层模块的枚举,今天我们将展开一个新的话题,内核监控,我们以监控进程线程创建为例,在Win10系统中监控进程与线程可以使用微软提供给我们的两个新函数来实现,此类函数的原…...

基于ssm的汽车论坛管理系统设计与实现
基于ssm的汽车论坛管理系统设计与实现 摘要:信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题…...
实习开发日志经验总结(一)
文章目录 前言实习日志经验总结 前言 自己之前实习过程中遇到的问题以及相应的解决过程,我都有记录形成比较凌乱的实习日志。故想在整个实习日志的基础上,提炼一些技术知识点或者是解决问题的思路。考虑到实习项目的不方便公开性,所以会隐去…...

【Unity基础】8.简单场景的搭建
【Unity基础】8.简单场景的搭建 大家好,我是Lampard~~ 欢迎来到Unity基础系列博客,所学知识来自B站阿发老师~感谢 (一)场景资源 (1)Import资源包 今天我们将手动去搭一个简单的场景,当…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...

3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
线程与协程
1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指:像函数调用/返回一样轻量地完成任务切换。 举例说明: 当你在程序中写一个函数调用: funcA() 然后 funcA 执行完后返回&…...

DAY 47
三、通道注意力 3.1 通道注意力的定义 # 新增:通道注意力模块(SE模块) class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...
【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表
1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...

CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...

算法岗面试经验分享-大模型篇
文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer (1)资源 论文&a…...