关于网络数通工程师 OSPF 协议的常见面试问题
基础理论部分
-
OSPF是什么?其核心设计目标及主要特性有哪些?
- OSPF(开放式最短路径优先)是基于链路状态的内部网关协议(IGP),使用Dijkstra的SPF算法计算最短路径树,核心目标包括快速收敛、分层网络设计(区域划分)和避免路由环路12。
- 主要特性:
- 支持VLSM/CIDR,适用于复杂IP规划12。
- 通过组播(224.0.0.5/224.0.0.6)传递协议报文,减少广播流量13。
- 支持区域划分(骨干区域Area 0)和路由汇总,提升扩展性36。
- 提供明文、MD5和SHA认证机制13。
-
OSPF的Router ID如何生成?若需修改应如何操作?
- 生成规则:优先手动配置;若无配置,选择最大Loopback接口IP;无Loopback时选最大物理接口IP12。
- 修改操作:需重启OSPF进程(如
clear ip ospf process)或重启设备,否则原Router ID仍生效24。
-
OSPF的邻居(Neighbor)与邻接(Adjacency)区别?邻接关系建立的必要条件?
- 区别:邻居仅通过Hello报文发现对方(2-Way状态),邻接需完成LSDB同步(Full状态)56。
- 必要条件:
- 区域ID、认证类型/密钥、Hello/Dead时间一致56。
- 子网掩码匹配(广播/NBMA网络)16。
- MTU一致(若开启MTU检查)45。
-
简述OSPF的五种报文类型及其功能
- Hello:发现邻居、维护关系、选举DR/BDR45。
- DBD(Database Description):描述LSDB摘要,用于主从选举45。
- LSR(Link State Request):请求缺失的LSA45。
- LSU(Link State Update):发送完整的LSA45。
- LSAck(Link State Acknowledgment):确认LSA接收45。
工作机制与状态机
-
描述OSPF邻居状态机演变过程(从Down到Full)
- Down→Init:发送Hello,未收到对方回应56。
- Init→2-Way:收到含自身Router ID的Hello,建立邻居关系56。
- 2-Way→ExStart:选举主从(Master/Slave),协商DBD序列号45。
- ExStart→Exchange:交换DBD报文,同步LSDB摘要45。
- Exchange→Loading:发送LSR请求缺失LSA,接收LSU更新45。
- Loading→Full:LSDB完全同步,形成邻接关系56。
-
选举DR/BDR的作用?哪些网络类型必须选举?
- 作用:减少邻接关系数量(从O(n²)到O(n)),优化LSA泛洪效率13。
- 网络类型:广播网络(如以太网)和NBMA网络(如帧中继)必须选举13。
-
MTU协商在邻接建立中的作用?协商失败的影响?
- 作用:确保两端能处理相同大小的数据包,避免分片45。
- 失败影响:邻居卡在ExStart/Exchange状态,无法完成LSDB同步45。
-
主从关系选举目的及发生阶段?
- 目的:确定DBD报文发送顺序,避免冲突45。
- 阶段:ExStart阶段,通过比较Router ID选举(高ID为主)45。
LSA与路由计算
-
列举OSPF常见LSA类型及作用(至少5种)
- Type 1(Router LSA):描述路由器直连链路,区域内泛洪46。
- Type 2(Network LSA):描述广播网络的DR信息46。
- Type 3(Summary LSA):ABR生成的域间路由摘要46。
- Type 5(AS External LSA):ASBR通告的外部路由46。
- Type 7(NSSA External LSA):NSSA区域内的外部路由,由ABR转为Type 534。
-
域间路由和外部路由依赖的LSA类型?
- 域间路由:Type 3 LSA(由ABR生成)46。
- 外部路由:Type 5 LSA(普通区域)或Type 7 LSA(NSSA区域)46。
-
SPF算法工作过程及路由表生成机制?
- SPF计算:以Router为根节点,基于链路开销构建最短路径树17。
- 路由表生成:将SPF计算结果转换为路由条目,优选最低开销路径17。
区域与网络设计
-
非骨干区域必须直连Area 0的原因?虚链路使用场景?
- 原因:防止路由环路,确保所有区域通过骨干区域交换路由信息34。
- 虚链路:临时修复非骨干区域与Area 0的物理断开,需两端ABR配置34。
-
Stub与NSSA区域的区别及过滤的LSA类型?
- Stub区域:过滤Type 5 LSA,ABR下发默认路由34。
- NSSA区域:允许Type 7 LSA(本地外部路由),过滤Type 5 LSA34。
-
路由汇总的优势及配置方法?
- 优势:减少LSA数量,降低路由表规模,提升稳定性16。
- 配置:在ABR使用
area x range <汇总前缀>,或在ASBR使用summary-address16。
故障排查与优化
-
子网掩码不一致的后果?
- 邻居无法建立(广播/NBMA网络),因OSPF要求同一子网16。
-
邻居卡在ExStart/Exchange状态的可能原因?
- MTU不匹配、接口网络类型配置错误、Router ID冲突45。
-
如何通过Cost控制选路?默认计算方式?
- 控制方法:手动修改接口Cost值(
ip ospf cost <值>)23。 - 默认计算:
Cost = 100 Mbps / 接口带宽(Mbps),如千兆口Cost=123。
- 控制方法:手动修改接口Cost值(
高级特性与对比
-
OSPF与RIP/EIGRP的区别?
- 协议类型:OSPF为链路状态协议,RIP为距离矢量,EIGRP为混合型23。
- 收敛速度:OSPF快于RIP,EIGRP支持DUAL算法快速收敛23。
- 扩展性:OSPF支持分层设计,RIP限15跳,EIGRP适合中小网络23。
-
OSPFv3相比OSPFv2的改进?
- 支持IPv6:独立于IPv4运行,地址格式为128位23。
- 认证分离:依赖IPSec而非协议内置认证23。
-
OSPF支持的认证类型及配置方法?
- 类型:明文、MD5、HMAC-SHA13。
- 配置示例:
plaintextCopy Code
interface GigabitEthernet0/0 ip ospf authentication message-digest ip ospf message-digest-key 1 md5 <密钥> ```:ml-citation{ref="1,3" data="citationList"}
相关文章:
关于网络数通工程师 OSPF 协议的常见面试问题
基础理论部分 OSPF是什么?其核心设计目标及主要特性有哪些? OSPF(开放式最短路径优先)是基于链路状态的内部网关协议(IGP),使用Dijkstra的SPF算法计算最短路径树,核心目标包括…...
Go 语言 + libbpfgo 实战 eBPF 开发
Go 语言 libbpfgo 实战 eBPF 开发 1. 引言 这是专栏的第一篇文章,我们将从环境准备、示例代码运行和详解三个方面,带你快速入门 eBPF 开发。 📌 读完这篇文章,你将学会: ✔️ 如何用 Go libbpfgo 开发 eBPF 程序。…...
练习题:74
目录 Python题目 题目 题目分析 需求理解 关键知识点 实现思路分析 复杂度分析 可能遇到的问题及注意事项 代码实现 代码解释 运行思路 1. 列表定义阶段 2. for 循环启动阶段 3. 偶数判断与 continue 语句执行阶段 4. 奇数元素输出阶段 5. 循环结束阶段 结束语…...
Python 性能优化:从入门到精通的实用指南
Langchain系列文章目录 01-玩转LangChain:从模型调用到Prompt模板与输出解析的完整指南 02-玩转 LangChain Memory 模块:四种记忆类型详解及应用场景全覆盖 03-全面掌握 LangChain:从核心链条构建到动态任务分配的实战指南 04-玩转 LangChai…...
C# OPC DA获取DCS数据(提前配置DCOM)
OPC DA配置操作手册 配置完成后,访问远程ip,就能获取到服务 C#使用Interop.OPCAutomation采集OPC DA数据,支持订阅(数据变化)、单个读取、单个写入、断线重连...
xinference docker 部署方式
文章目录 简绍docker 安装方式访问地址对应官网在 dify 中 添加 xinference 容器内置大语言模型嵌入模型图像模型音频模型重排序模型视频模型 简绍 Xorbits Inference (Xinference) 是一个开源平台,用于简化各种 AI 模型的运行和集成。借助 Xinference,…...
基于Kubernetes部署MySQL主从集群
以下是一个基于Kubernetes部署MySQL主从集群的详细YAML示例,包含StatefulSet、Service、ConfigMap和Secret等关键配置。MySQL主从集群需要至少1个主节点和多个从节点,这里使用 StatefulSet 初始化脚本 实现主从自动配置。 1. 创建 Namespace (可选) ap…...
【Azure 架构师学习笔记】- Azure Databricks (17) --Delta Live Table和Delta Table
本文属于【Azure 架构师学习笔记】系列。 本文属于【Azure Databricks】系列。 接上文 【Azure 架构师学习笔记】- Azure Databricks (16) – Delta Lake 和 ADLS整合 前言 前面介绍了Delta Table,但是Databricks又推出了“Delta Live Tables(DLTs&…...
Mybatis Generator 使用手册
第一章 什么是Mybatis Generator? MyBatis Generator Core – Introduction to MyBatis Generator MyBatis生成器(MBG)是MyBatis框架的代码生成工具。它支持为所有版本的MyBatis生成代码,通过解析数据库表(或多个表&…...
快乐数 力扣202
一、题目 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果这个过程 结果为 1&…...
SPA单页面应用优化SEO
1.SSR服务端渲染 将组件或页面通过服务器生成html,再返回给浏览器,如nuxt.js或vue-server-renderer const Vue require(vue); const server require(express)(); const renderer require(vue-server-renderer).createRenderer();const vueApp new …...
城市霓虹灯夜景拍照后期Lr调色教程,手机滤镜PS+Lightroom预设下载!
调色教程 在城市霓虹灯夜景拍摄中,由于现场光线复杂等因素,照片可能无法完全呈现出当时的视觉感受。通过 Lr 调色,可以弥补拍摄时的不足。例如,运用基本调整面板中的曝光、对比度、阴影等工具,可以处理出画面的整体明暗…...
通领科技冲刺北交所
高质量增长奔赴产业新征程 日前,通领科技已正式启动在北交所的 IPO 进程,期望借助资本市场的力量,加速技术升级,推动全球化战略布局。这一举措不仅展现了中国汽车零部件企业的强大实力,也预示着行业转型升级的新突破。…...
隐私保护在 Facebook 用户身份验证中的应用
在这个数字化的时代,个人隐私保护成为了公众关注的焦点。社交媒体巨头 Facebook 作为全球最大的社交平台之一,拥有数十亿用户,其在用户身份验证过程中对隐私保护的重视程度直接影响着用户的安全感和信任度。本文将探讨 Facebook 在用户身份验…...
深度学习/强化学习调参技巧
深度调优策略 1. 学习率调整 技巧:学习率是最重要的超参数之一。过大可能导致训练不稳定,过小则收敛速度慢。可以使用学习率衰减(Learning Rate Decay)或自适应学习率方法(如Adam、RMSprop)来动态调整学习…...
python面试常见题目
1、python 有几种数据类型 数字:整形 (int),浮点型 (float)布尔 ( bool):false true字符串 (string)列表 (list)元组 (tuple)字典 &…...
echarts折线图设置背景颜色:X轴和Y轴组成部分背景色
echarts折线图设置背景颜色 关键代码 splitArea: {show: true,areaStyle: {color: [#F2F2F2],},},完整代码位置显示 yAxis: {type: value,boundaryGap: [0, 100%],max: 1,interval: 1,// 于设置y轴的字体axisLabel: {show: false, //这里的show用于设置是否显示y轴下的字体 默…...
文本处理Bert面试内容整理-BERT的应用场景有哪些?
BERT(Bidirectional Encoder Representations from Transformers)在多个自然语言处理(NLP)任务中表现出了强大的能力。由于其能够捕捉双向上下文信息和强大的迁移学习能力,BERT广泛应用于各种NLP场景。以下是BERT的一些典型应用场景: 1. 文本分类 文本分类任务旨在将文本…...
【愚公系列】《Python网络爬虫从入门到精通》045-Charles的SSL证书的安装
标题详情作者简介愚公搬代码头衔华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主&…...
manus对比ChatGPT-Deep reaserch进行研究类学术相关数据分析!谁更胜一筹?
没有账号,只能挑选一个案例 一夜之间被这个用全英文介绍全华班出品的新爆款国产AI产品的小胖刷频。白天还没有切换语言的选项,晚上就加上了。简单看了看团队够成,使用很长实践的Monica创始人也在其中。逐渐可以理解,重心放在海外产…...
STM32F4基本定时器使用和原理详解
STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...
Golang dig框架与GraphQL的完美结合
将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用,可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器,能够帮助开发者更好地管理复杂的依赖关系,而 GraphQL 则是一种用于 API 的查询语言,能够提…...
【算法训练营Day07】字符串part1
文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接:344. 反转字符串 双指针法,两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
【论文阅读28】-CNN-BiLSTM-Attention-(2024)
本文把滑坡位移序列拆开、筛优质因子,再用 CNN-BiLSTM-Attention 来动态预测每个子序列,最后重构出总位移,预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵(S…...
让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...
【VLNs篇】07:NavRL—在动态环境中学习安全飞行
项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战,克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...
Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement
Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement 1. LAB环境2. L2公告策略2.1 部署Death Star2.2 访问服务2.3 部署L2公告策略2.4 服务宣告 3. 可视化 ARP 流量3.1 部署新服务3.2 准备可视化3.3 再次请求 4. 自动IPAM4.1 IPAM Pool4.2 …...
spring Security对RBAC及其ABAC的支持使用
RBAC (基于角色的访问控制) RBAC (Role-Based Access Control) 是 Spring Security 中最常用的权限模型,它将权限分配给角色,再将角色分配给用户。 RBAC 核心实现 1. 数据库设计 users roles permissions ------- ------…...
