当前位置: 首页 > news >正文

华为:Wireshark的OSPF抓包分析过程

 一、OSPF 的5包7状态

5个数据包

1.Hello:发现、建立邻居(邻接)关系、维持、周期保活;存在全网唯一的RID,使用IP地址表示

2.DBD:本地的数据库的目录(摘要),LSDB的目录(所有LSA的集合)

3.LSR:基于DBD包中的未知信息进行查询

4.LSU:携带了真正的LSA信息(链路状态通告),用于答复对端的LSR

5.LSack:对传递LSA信息进行确认,链路状态确认。

7个状态

Down:一旦启动后发出hello包,则立即进入下一状态

Init初始化:收到邻居Hello包,但未确认双方可达

2-Way双向通信:双向通信建立

ExStart预启动:主从关系协商

Exchange准交换:LSA摘要信息交换

Loading加载:请求完整LSA信息

Full转发:邻接关系完全建立

二、状态变化过程

三、状态过程分析

拓扑

分析

(1)Down:

邻居会话的初级阶段,表示没有收到hello报文

HELLO包:12.1.1.1以10秒为周期向其他链路以组播方式发送hello包,并携带自己的RID。

(2)init:

收到hello报文之后,变成此状态(此时只有一方知道了邻居的存在1-way),

之后发送的hello报文中会有对方的RID,如下图

(3)2-way:

另一方收到hello报文之后,如果从中看到自己的RID以及hello报文中的各项参数是对的,就进入此状态。此时网络类型是广播,则需要选举BDR和DB。如果不建立形成邻居关系,邻居状态就停止,否则直接进入Exstatr。

(4)Extart(预启动)和Exchange(准交换)

相互发送一个空的DD报文,AR1在第一次发送DBD时会将自己的master设置为YES,且两个的DD都是不一样的;

比较DD报文,RID大的则为master,如果是最后一个DD,标志位M置为0;

master收到使自己序列号的DD报文后。表示对方自己为master,状态变为Exchange,同时也会发送DD报文描述自己的LS信息,序列号+1。Slave收到master最后一个DD报文后,使用空的DD报文回复确认,此时状态变为Loading。

(5)Loading

确定主从关系之后,双方开始发送LSA请求LSA信息,对方收到请求恢复LSAck报文,直到LSA同步。

注意:双方不会对每个LSU发送LSAck进行确认,会采用LSA头部的序列号进行隐式确认,类似TCP的序列号,但是会对最后一个LSU发送LSAck进行确认。

(6)Full:LSR重传列表位空,LSA交互完毕。

到此,7个状态完成,路由与拓扑完成交换

四、总结

通过Wireshark分析可清晰观察OSPF状态机的动态过程,首先路由器之间发送Hello包建立邻居关系,然后比较RID选举master,选举完之后使用真正的DBD包进行数据共享,再去获取未知LSA信息,进行交换加入到LSDB中;建立完成邻居关系,就可以转发了。

相关文章:

华为:Wireshark的OSPF抓包分析过程

一、OSPF 的5包7状态 5个数据包 1.Hello:发现、建立邻居(邻接)关系、维持、周期保活;存在全网唯一的RID,使用IP地址表示 2.DBD:本地的数据库的目录(摘要),LSDB的目录&…...

Android项目优化同步速度

最近项目需要使用ffmpeg,需要gradle配置引入ffmpeg库,发现原来通过google官方的代码仓,下载太慢了,每秒KB级别的速度。(之前下gradle/gradle plugin都不至于这么慢),于是想到配置国内镜像源来提…...

在线教育网站项目第二步 :学习roncoo-education,服务器为ubuntu22.04.05

一、说明 前端技术体系:Vue3 Nuxt3 Vite5 Vue-Router Element-Plus Pinia Axios 后端技术体系:Spring Cloud Alibaba2021 MySQL8 Nacos Seata Mybatis Druid redis 后端系统:roncoo-education(核心框架:S…...

STM32-GPIO详解

目录 一:GPIO基本概念 ​编辑 二:GPIO的实际应用 三:功能描述 四:GPIO库函数 五:寄存器 GPIO相关寄存器功能 一:GPIO基本概念 GPIO是英文General Purpose Input/Output的缩写,中文翻译为…...

【Framework系列之Client】UIManager和UIPanel模块介绍

今天来介绍一下UIManager和UIPanel模块,话不多说直接开始。 UIManager 功能介绍 UIManager是管理UIPanel的唯一模块,UIManager的主要功能包括: 提供打开、隐藏、关闭UIPanel的相关接口。负责UIPanel对象的创建以及初始化。负责储存UIPanel对…...

阿里云操作系统控制台——ECS操作与性能优化

引言:在数字化时代,云服务器作为强大的计算资源承载平台,为企业和开发者提供了灵活且高效的服务。本文将详细介绍如何一步步操作云服务器 ECS,从开通到组件安装,再到内存全景诊断,帮助快速上手,…...

【长安大学】苹果手机/平板自动连接认证CHD-WIFI脚本(快捷指令)

背景: 已经用这个脚本的记得设置Wifi时候,关闭“自动登录” 前几天实在忍受不了CHD-WIFI动不动就断开,一天要重新连接,点登陆好几次。试了下在网上搜有没有CHD-WIFI的自动连接WIFI自动认证脚本,那样我就可以解放双手&…...

第51天:Web开发-JavaEE应用SpringBoot栈身份验证JWT令牌Security鉴权安全绕过

#知识点 1、安全开发-JavaEE-身份验证-JWT&Security 2、安全开发-JavaEE-安全问题-不安全写法&版本漏洞 #开发框架-SpringBoot 参考:Spring Boot 中文文档 一、身份验证的常见技术: 1、JWT 2、Shiro 3、Spring Security 4、OAuth 2.0 5、SSO 6、…...

中原银行:从“小机+传统数据库”升级为“OceanBase+通用服务器”,30 +系统成功上线|OceanBase DB大咖说(十五)

OceanBase《DB 大咖说》第 15 期,我们邀请到了中原银行金融科技部数据团队负责人,吕春雷。本文为本期大咖说的精选。 吕春雷是一位资历深厚的数据库专家,从传统制造企业、IT企业、甲骨文公司到中原银行,他在数据库技术与运维管理…...

Java面试第八山!《Spring框架》

一、Spring框架概述 Spring是Java企业级应用开发的核心框架,通过控制反转(IoC)和 面向切面编程(AOP)实现模块解耦,简化开发流程。其核心优势包括依赖注入、声明式事务管理、集成主流ORM框架(如…...

LangChain教程 - Agent - 支持 9 种 ReAct 交互

引言 LangChain 总结了 9 种经典的复杂模型交互模式,每种都针对特定任务设计,兼具独特优势与适用场景,内容涵盖: ReAct、Function Call、知识库、搜索等,使用这些模式可以大大简化这些场景开发难度。这些模式可以使用…...

蓝桥杯备赛日记【day1】(c++赛道)

一、裁纸刀问题(2022、规律、思维、省赛) 解法思路: 参考题目给出的例子发现。不管要裁剪多少次。最外围的四次是固定的。然后通过观察发现,我们的行的裁剪次数为(m-1) 次,而每行都需要裁剪列数…...

【大模型基础_毛玉仁】1.4 语言模型的采样方法

【大模型基础_毛玉仁】1.4 语言模型的采样方法 1.4 语言模型的采样方法1.4.1 概率最大化方法1)贪心搜索(GreedySearch)2)波束搜索(BeamSearch) 1.4.2 随机采样方法1)Top-K 采样2)Top…...

[内网安全] Windows 本地认证 — NTLM 哈希和 LM 哈希

关注这个专栏的其他相关笔记:[内网安全] 内网渗透 - 学习手册-CSDN博客 0x01:SAM 文件 & Windows 本地认证流程 0x0101:SAM 文件简介 Windows 本地账户的登录密码是存储在系统本地的 SAM 文件中的,在登录 Windows 的时候&am…...

基于SNR估计的自适应码率LDPC编译码算法matlab性能仿真,对比固定码率LDPC的系统传输性能

目录 1.算法仿真效果 2.算法涉及理论知识概要 2.1 基于序列的SNR估计 2.2 基于SNR估计值进行码率切换 2.3 根据数据量进行码率切换 3.MATLAB核心程序 4.完整算法代码文件获得 1.算法仿真效果 matlab2022a仿真结果如下(完整代码运行后无水印)&…...

opencv 模板匹配方法汇总

在OpenCV中,模板匹配是一种在较大图像中查找特定模板图像位置的技术。OpenCV提供了多种模板匹配方法,通过cv2.matchTemplate函数实现,该函数支持的匹配方式主要有以下6种,下面详细介绍每种方法的原理、特点和适用场景。 1. cv2.T…...

Embedding技术:DeepWalkNode2vec

引言 在推荐系统中,Graph Embedding技术已经成为一种强大的工具,用于捕捉用户和物品之间的复杂关系。本文将介绍Graph Embedding的基本概念、原理及其在推荐系统中的应用。 什么是Graph Embedding? Graph Embedding是一种将图中的节点映射…...

微信小程序注册组件

在微信小程序中注册组件分为自定义组件的创建和全局/局部注册,下面为你详细介绍具体步骤和示例。 自定义组件的创建 自定义组件由四个文件组成,分别是 .js(脚本文件)、.json(配置文件)、.wxml&#xff08…...

【docker】安装mysql,修改端口号并重启,root改密

我的docker笔记 【centOS】安装docker环境&#xff0c;替换国内镜像 1. 配置镜像源 使用阿里云镜像加速器&#xff0c;编辑/etc/docker/daemon.json sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-EOF {"registry-mirrors": ["https:/…...

自定义wordpress三级导航菜单代码

首先&#xff0c;在你的主题functions.php文件中&#xff0c;添加以下代码以注册一个新的菜单位置&#xff1a; function mytheme_register_menus() {register_nav_menus(array(primary-menu > __(Primary Menu, mytheme))); } add_action(init, mytheme_register_menus); …...

用PyTorch和ECANet18搞定RAF-DB表情分类:从数据集下载到模型部署的保姆级教程

基于ECANet18的RAF-DB表情识别实战&#xff1a;从零构建高精度分类模型 人脸表情识别&#xff08;FER&#xff09;作为计算机视觉领域的重要分支&#xff0c;在情感计算、智能交互等领域展现出巨大潜力。本文将带您完整实现一个基于PyTorch和ECANet18的端到端表情识别系统&…...

告别ET1100?聊聊AX58100这颗高性价比EtherCAT从站芯片的升级体验

告别ET1100&#xff1f;AX58100高性价比EtherCAT从站芯片的工业升级实战 当工业设备制造商面临从传统控制架构向实时以太网迁移时&#xff0c;EtherCAT从站芯片的选型往往成为关键转折点。十年前&#xff0c;ET1100凭借其稳定的性能和相对友好的开发门槛&#xff0c;成为许多工…...

GURU-Ai:面向开发者的AI命令行工具集,提升代码理解与运维效率

1. 项目概述&#xff1a;一个面向开发者的AI助手工具集最近在GitHub上看到一个挺有意思的项目&#xff0c;叫“Guru322/GURU-Ai”。光看名字&#xff0c;你可能会觉得这又是一个大而全的AI模型或者聊天机器人&#xff0c;但点进去仔细研究后&#xff0c;我发现它的定位其实非常…...

怎么判断一家工厂还在不在正常生产?6 类活跃度信号,从纸面到现场

跑工厂的销售员都遇到过这种事&#xff1a;手机里存着一份名单&#xff0c;导航开两小时&#xff0c;到门口才发现卷帘门焊死、车间长草、保安说"厂子去年就搬了"。 问题出在哪&#xff1f;大多数人判断"这家工厂在不在"&#xff0c;靠的是工商登记——执照…...

AI编程助手CodeBuddy:VS Code扩展的架构、部署与高效使用指南

1. 项目概述&#xff1a;CodeBuddy&#xff0c;你的AI编程伙伴最近在GitHub上看到一个挺有意思的项目&#xff0c;叫codebuddy&#xff0c;作者是olasunkanmi-SE。光看名字就能猜个大概——“代码伙伴”&#xff0c;这显然是一个旨在辅助编程的工具。作为一个在开发一线摸爬滚打…...

火灾动力学模拟实战:如何用FDS构建精准的火灾预测系统

火灾动力学模拟实战&#xff1a;如何用FDS构建精准的火灾预测系统 【免费下载链接】fds Fire Dynamics Simulator 项目地址: https://gitcode.com/gh_mirrors/fd/fds 你是否曾面临这样的困境&#xff1a;当设计一栋大型商业建筑时&#xff0c;如何科学评估火灾时的人员疏…...

大语言模型分步推理与自我验证框架:提升AI生成准确性的工程实践

1. 项目概述&#xff1a;当AI学会“自我验证”最近在开源社区里&#xff0c;一个名为“Lets-Verify-Step-by-Step”的项目引起了我的注意。这个项目直指当前大语言模型&#xff08;LLM&#xff09;应用中的一个核心痛点&#xff1a;如何让模型在生成复杂答案时&#xff0c;能像…...

【仅剩47份】Midjourney湿版摄影风格训练数据包(含1851–1889年原始湿版扫描图谱×236张+ICC色彩配置文件×5):精准匹配V6.6新渲染引擎底层纹理采样逻辑

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;湿版摄影风格的历史溯源与数字再生价值 湿版摄影&#xff08;Wet Plate Collodion Process&#xff09;诞生于1851年&#xff0c;由英国科学家弗雷德里克斯科特阿彻&#xff08;Frederick Scott Archer…...

Bun用Rust重写核心代码,百万行新增代码直接把GitHub干爆了!

Bun 项目刚刚完成了一次惊人的技术跨越。5月14日&#xff0c;Bun 正式宣布其核心运行时已从 Zig 重写为 Rust——这个版本包含 6755 个 commit&#xff0c;二进制文件体积缩小 3-8 MB&#xff0c;性能测试在各个平台上均达到或超越原有水平。Jarred Sumner&#xff08;Bun 的创…...

为什么92%的设计师调不出正宗铂金印相?3个被忽略的色彩科学陷阱与CIE LAB空间修正公式

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;铂金印相的视觉本质与历史语境 铂金印相&#xff08;Platinum Print&#xff09;并非一种数字图像处理技术&#xff0c;而是一种19世纪末诞生于摄影化学工艺巅峰的物理显影体系。其视觉本质在于——铂金…...