IS-IS 泛洪机制 | LSP 处理流程
IS-IS 泛洪机制
作为一种链路状态路由协议,IS-IS 与 OSPF 类似,在学习和计算路由之前,区域中的路由器首先需交换链路状态信息,最终使所有路由器的链路状态数据库达到一致状态,这就如同每台路由器都拥有一张相同的网络拓扑图。之后,每台路由器利用自身的 SPF 算法计算到达区域内任何其他网络的最优路由。
路由器产生一个 LSP 后,会从所有运行了 IS-IS 的接口进行扩散。区域中的其他路由器从一个接口接收到 LSP 后,会将该 LSP 的一份拷贝装入 L1 或 L2 的数据库中,然后再将这份 LSP 从其他所有运行了 IS-IS 的接口继续扩散。
LSP 处理流程
路由器接收到一条 LSP 时,处理流程如下:
处理流程说明
-
IS-IS 路由器接收到 LSP 后,在数据库中搜索对应的记录。如果没有找到该 LSP,则将其加入数据库,并组播新的数据库内容。
-
如果收到的 LSP 的序列号大于本地 LSP 的序列号,则替换为新报文,并组播新的数据库内容;如果收到的 LSP 的序列号小于本地 LSP 的序列号,则向入端接口发送本地 LSP 报文。
-
如果两个序列号相等,则比较 Remaining Lifetime(剩余生存时间)。如果收到的 LSP 的 Remaining Lifetime 小于本地 LSP 的 Remaining Lifetime,则替换为新报文,并组播新的数据库内容;如果收到的 LSP 的 Remaining Lifetime 大于本地 LSP 的 Remaining Lifetime,则向入端接口发送本地 LSP 报文。
-
如果两个序列号和 Remaining Lifetime 都相等,则比较 Checksum。如果收到的 LSP 的 Checksum 大于本地 LSP 的 Checksum,则替换为新报文,并组播新的数据库内容;如果收到的 LSP 的 Checksum 小于本地 LSP 的 Checksum,则向入端接口发送本地 LSP 报文。
-
如果两个序列号、Remaining Lifetime 和 Checksum 都相等,则不转发该报文。
Ref: huawei
相关文章:
IS-IS 泛洪机制 | LSP 处理流程
IS-IS 泛洪机制 作为一种链路状态路由协议,IS-IS 与 OSPF 类似,在学习和计算路由之前,区域中的路由器首先需交换链路状态信息,最终使所有路由器的链路状态数据库达到一致状态,这就如同每台路由器都拥有一张相同的网络…...
原型模式详解(Java)
原型模式(Prototype Pattern),作为一种极具代表性的创建型设计模式,其核心思想在于通过复制,亦即克隆现有的对象,来达成创建新对象的目的,而非依赖传统的构造函数途径。这一模式巧妙地基于现有对…...
内存条2R×4 2400和4R×4 2133的性能差异
内存条2R4 2400和4R4 2133的性能差异 2R4 2400 和 4R4 2133 是两种不同的内存条规格,主要在Rank数量和频率上有所不同,具体性能差异如下: 1. Rank数量 2R4:表示内存条有2个Rank,每个Rank有4个内存芯片。4R4ÿ…...
安装并配置 MySQL
MySQL 是世界上最流行的开源关系型数据库管理系统之一,因其高性能、可靠性和易用性而被广泛应用于各种规模的企业级应用中。本文将详细介绍如何在不同的操作系统上安装和配置 MySQL,帮助你快速搭建起一个功能完善的数据库环境。 选择适合你的安装方式 …...
常用的网络安全设备
一、 WAF 应用防火墙 范围:应用层防护软件 作用: 通过特征提取和分块检索技术进行模式匹配来达到过滤,分析,校验网络请求包的目的,在保证正常网络应用功能的同时,隔绝或者阻断无效或者非法的攻击请求 可…...
【蓝桥】线性DP--最快洗车时间
题目描述 解题思路 完整代码 举例 总结 基于 0/1 背包思想 解决 洗车时间分配问题,本质上是子集和问题【给定一个 正整数数组 nums 和一个目标值 target,判断是否可以从 nums 选择 若干个数(每个数最多选一次),使…...
Spring Boot比Spring多哪些注解?
Spring Boot 相比 Spring 多了很多自动化配置和简化开发的注解,主要包括以下几类: Spring Boot 启动与自动配置相关Spring Boot 配置相关Spring Boot Web 相关Spring Boot 测试相关Spring Boot 条件装配相关Spring Boot 监控与 Actuator 相关 1. Spring…...
springboot021校园周边美食探索及分享平台
版权声明 所有作品均为本人原创,提供参考学习使用,如需要源码数据库配套文档请移步 www.taobysj.com 搜索获取 技术实现 开发语言:Javavue。 框架:后端spingboot前端vue。 模式:B/S。 数据库:mysql。 开…...
【网络通信】传输层之UDP协议
【网络通信】传输层之UDP协议 传输层端对端通信实现端到端通信的关键技术 UDP协议再谈端口号端口号划分关于端口号的两个问题 UDP协议基本格式UDP通信的特点UDP的缓冲区UDP数据报的最大长度基于UDP的应用层协议如何封装UDP报文以及如何交付UDP报文进一步理解封装和解包 传输层 …...
Python环境搭建与量化交易开发:从基础到实战
Python环境搭建与量化交易开发:从基础到实战 在量化交易领域,Python因其强大的数据处理能力和丰富的库支持而成为首选编程语言。本文将指导您如何在本地搭建一个适合量化交易的Python环境,并介绍一些实用的工具和技巧。 《QMT开通规则分享》…...
软著申请(六)软著返修流程【2025年最新版】
软著申请(六)软著返修流程【2025年最新版】 一、软著返修流程1、软著返修流程须知2、相关细节二、针对大模型特殊补正条件三、备注本服务提供详细的软件著作权申请流程指导。申请人严格按照指导步骤完成申请,若最终未能成功获得著作权登记,可联系服务提供方进行免费咨询和指…...
SOUI基于Zint生成Code11码
Code 11 是一种高密度的数字条形码,主要用于标识电信设备和电子元件。它的名称来源于其能够编码 11 种字符:数字 0-9 和连接符 -。Code 11 是一种双向可读的条形码,支持校验位以提高数据准确性。 在使用BARCODE_CODE11码制生成code 11码时可指…...
sqlilabs第八关
?id1 and sleep(2)-- 发现页面存在注点,使用时间盲注脚本进行注入--- import requestsdef inject_database(url):name #name用于存储猜测出的数据库名称 for i in range(1, 20): # 假设数据库名称长度不超过20low 48 # 0high 122 # zmiddle (low high…...
基于HAL库的按钮实验
实验目的 掌握STM32 HAL库的GPIO输入配置方法。 实现通过按钮控制LED亮灭(支持轮询和中断两种模式)。 熟悉STM32CubeMX的外部中断(EXTI)配置流程。 实验硬件 开发板:STM32系列开发板(如STM32F103C8T6、N…...
DeepSeek 突然来袭,AI 大模型变革的危机与转机藏在哪?
随着人工智能技术的飞速发展,大模型领域不断涌现出具有创新性的成果。DeepSeek 的横空出世,为 AI 大模型领域带来了新的变革浪潮。本文将深入探讨 DeepSeek 出现后 AI 大模型面临的危机与转机。 冲冲冲!!! 目录 一、…...
prompt技术结合大模型 生成测试用例
要利用prompt技术结合大模型对目标B/S架构软件系统进行测试,以下以使用Python调用OpenAI的GPT模型进行功能测试用例生成,再借助Selenium库执行测试为例,给出一个完整的实现示例。 前提条件 安装依赖库:你需要安装openai和selenium库,可以使用以下命令进行安装:pip insta…...
【C++ 真题】P2920 [USACO08NOV] Time Management S
P2920 [USACO08NOV] Time Management S 题目描述 Ever the maturing businessman, Farmer John realizes that he must manage his time effectively. He has N jobs conveniently numbered 1…N (1 < N < 1,000) to accomplish (like milking the cows, cleaning the …...
pip安装指定版本的包
个人博客地址:pip安装指定版本的包 | 一张假钞的真实世界 使用以下命令安装指定版本的包: # pip install pyspark2.3.3...
【pytest】获取所有用例名称并存于数据库
数据库操作包,引用前面创建的py文件,【sqlite】python操作sqlite3(含测试) #!/usr/bin/env python # -*- coding: utf-8 -*- # Time : 2025-02-11 8:45 # Author : duxiaowei # File : get_filename.py # Software: 这个文…...
Java中原子操作的实现原理
目录 一、处理器如何实现原子操作? 1.使用总线锁保证原子性 1.使用缓存锁保证原子性 二、Java如何实现原子操作? 1)使用循环CAS实现原子操作 2)CAS实现原子操作的三大问题 3)使用锁机制实现原子操作 前言 原子&…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
使用VSCode开发Django指南
使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架,专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用,其中包含三个使用通用基本模板的页面。在此…...
(十)学生端搭建
本次旨在将之前的已完成的部分功能进行拼装到学生端,同时完善学生端的构建。本次工作主要包括: 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...
全志A40i android7.1 调试信息打印串口由uart0改为uart3
一,概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本:2014.07; Kernel版本:Linux-3.10; 二,Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01),并让boo…...
Redis数据倾斜问题解决
Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中,部分节点存储的数据量或访问量远高于其他节点,导致这些节点负载过高,影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...
C++ 设计模式 《小明的奶茶加料风波》
👨🎓 模式名称:装饰器模式(Decorator Pattern) 👦 小明最近上线了校园奶茶配送功能,业务火爆,大家都在加料: 有的同学要加波霸 🟤,有的要加椰果…...
【无标题】湖北理元理律师事务所:债务优化中的生活保障与法律平衡之道
文/法律实务观察组 在债务重组领域,专业机构的核心价值不仅在于减轻债务数字,更在于帮助债务人在履行义务的同时维持基本生活尊严。湖北理元理律师事务所的服务实践表明,合法债务优化需同步实现三重平衡: 法律刚性(债…...
