链路状态路由协议 OSPF (二)

news2024/11/18 9:25:07

  • 作者简介:一名在校云计算网络运维学生、每天分享网络运维的学习经验、和学习笔记。 

  •  座右铭:低头赶路,敬事如仪

  • 个人主页:网络豆的主页​​​​​​

目录

前言

一.Router ID

1.什么是Router ID

2.获得Router ID方法

二.DR和BDR

1.DR和BDR的概念

三.DR BDR 选举

1.DR和BDR的选举方式

(1)自动选举DR和BDR

(2)手工选举DR和BDR

2.DR和BDR的选举过程

注意

OSPF的组播地址

四.OSPF度量值

1.OSPF度量值概述

2.ospf 度量值 cost 代价

3.ospf 的数据包类型


前言

本章将会继续学习链路状态路由协议OSPF ,理解OSPF的基本概念,工作原理。


一.Router ID

1.什么是Router ID

因为运行OSPF的路由器要了解每条链路是连接在那个路由器上的,因此,就需要有一个唯一的标识来标记OSPF网络中的路由器,这个唯一标识称为router ID。

Router ID 是在OSPF区域内唯一标识路由器的IP地址。Cisco路由器通过下面方法得到它们的Router ID。

2.获得Router ID方法

首先,①路由器选择它所以Loopback接口上数值最高的IP地址。②如果路由器没有配置Loopback接口的IP地址,那么路由器就在所有活动物理端口中选择一个数值最高的IP地址作为路由器的RouterID,用作Router ID的路由器接口不一定非要运行OSPF协议。

使用Loopback接口作为Router ID的主要好处是Loopback接口比任何其他的物理端口都更稳定。一旦路由器启动成功,这个环回接口就会处于活动状态,只有整个路由器失效时它才会失效。

③在OSPF协议中可以通过router-id 命令指定路由器的Router ID,所以网络管理员可以配置便于识别和记忆的Router ID值。

注:在实际工程中配置OSPF时都需要手动指定路由器的Router ID,这已经成为了一种标准配      置。


二.DR和BDR

1.DR和BDR的概念

DR 是指定 路由器   BDR 备份指定路由器

在一个区域内为了防止路由器之间相互传输链路状态数据而造成的混乱和防止阻塞,在区域内选择 DR 其他路由器可以将链路状态传给DR DR汇总后再请其他路由器发放一份,再选择BDR 作为DR 的备份,防止DR 无法正常运行。

运行OSPF的路由器通过与邻居路由器建立领接关系,互相传递链路状态信息。

网络上的每一天路由器都和DR构成一个领接关系,那么只需要建立n-1个领接关系就可以了。

 为了实现冗余,当DR失效时,需要有一个新的DR来接替它,这个路由器就是备份指定路由器(Backup Designated Router BDR)。网络上所有的路由器将和DR,BDR同时形成领接关系,DR和BDR之间也将形成领接关系,如下图,如果DR失效,BDR将会成为新的DR。


三.DR BDR 选举

1.DR和BDR的选举方式

可以由OSPF自动选举DR和BDR,也可以手工选举。

(1)自动选举DR和BDR

网段上Router ID最大的路由器将被选举为DR,第二大的将被选举为BDR。这样的选举结果可能不是最佳的。例如,如果网段中有Cisco 7200和3800系列路由器,那么3800路由器可能由于Router ID较大而被选举为DR。

(2)手工选举DR和BDR

 配置优先级  0-255  数值越大 优先级越高  默认 1, 0 表示不参与选举
                    优先级相同 则比较 router-id

2.DR和BDR的选举过程

当一台OSPF路由器启动并发现它的邻居路由器时,它将去检查有效的DR和BDR路由器。如果DR
BDR路由器存在,这台路由器将接受已经存在的DR和BDR路由器。如果BDR路由器不存在,将执行一个选举过程,选出具有最高优先级的路由器作为BDR路由器。如果存在多个路由器具有相同的优先级,那么Router ID最大的路由器将被选中。如果没有有效的DR路由器存在,那么BDR路由器将被提升为DR路由器,然后执行一个选举过程选举BDR路由器。

 

注意

  1. 路由器优先级 只会影响一个选举过程,不会强制更换当前已经存在的DR,BDR
  2. DR BDR 通过组播地址 224.0.0.5 将链路状态汇总传给其他路由器
  3. 其他路由器通过组播地址 224.0.0.6 将自己的链路状态信息传给DR 和 BDR

OSPF的组播地址

224.0.0.5
224.0.0.6


四.OSPF度量值

1.OSPF度量值概述

OSPF的度量值为COST
COST= 108/BW
最短路径是基于接口指定的代价(cost)计算的

 

2.ospf 度量值 cost 代价

  1.    ospf 的度量值  叫做 代价, 就是从源端到目标端所花费的路程 时间等
  2.    代价的计算公式    cost=10的8次方 / 带宽速率(以  字节/S 为单位)
  3.    简单来说就是 代价和带宽速率成反比。

3.ospf 的数据包类型

  1. hello  包     发现和维持邻接关系  选举 DR BDR
  2. 数据库描述包 DBD   向邻居发送的链路状态摘要信息
  3. 链路状态请求包 LSD   接受还要信息的路由器向发送方发送的请求包 要求详细了链路数据
  4. 链路状体更新包 LSU      发送的详细链路状态数据
  5. 链路状态确认包  LSAck   确认已经收到LSU  后 接收方发给对方的确认信息 
  6. 承载在IP数据包内,使用协议号89


     创作不易,求关注,点赞,收藏,谢谢~

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

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

相关文章

每日一题(day9)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录俩到经典题目一、走方格的方案数题目描述解题分析代码演示二.另类加法题目描述:解题分析常见的位运算代码演示总结俩到经典题目 一、走方格的方案数 题目…

【小嘟陪你刷题14】二叉树的最小深度、二叉树的所有路径、翻转二叉树

目录一、二叉树的最小深度思路一:深度优先搜索代码实现思路二:广度优先搜索代码实现二、二叉树的所有路径思路一:递归法代码实现思路二:迭代法三、翻转二叉树思路一:递归法代码实现思路二:迭代法代码实现一…

controller传输from-data数据格式的内容,取出传入数据为from-data格式的值

传输from-data数据格式的内容 postman里面的格式如下 接下来,便将上面的内容转换为代码 第一步:将File转为MultipartFile格式 首先,我们只能将File转为改格式才能进行网络传输,转换方式请看这篇博客:https://blog.…

推动行业数字化转型,亚马逊云科技自身就是“好把式”

(亚马逊全球副总裁、亚马逊云科技大中华区执行董事张文翊) 在2022年10月的亚马逊云科技中国峰会上,亚马逊云科技宣布了四大战略举措——“连中外、襄百业、携伙伴、促绿色“,进一步为中国本地客户赋能数字化探索与创新&#xff0…

顺序表实现—数据结构

文章目录一、顺序表概念及结构二、动态顺序表和静态顺序表的选择三、动态顺序表的实现逻辑(1)创建结构体(2)具体函数实现(*)顺序表初始化(*)释放顺序表(*)打印…

青少年python系列 21.turtle库绘制一个8

#绘制一个8import turtle#上方的小圆,圆心在左turtle.circle(80)#下方的大圆,圆心在右turtle.circle(-100)turtle.done() 青少年python教学视频ppt源码 青少年python系列目录_老程序员115的博客-CSDN博客 csdn文章推荐受影响解决办法10个字10行 csdn文…

梦开始的地方—— C语言指针入门

文章目录指针入门1.指针概念2. 指针和指针类型3. 野指针造成野指针的原因如何避免野指针4. 指针的运算指针加减整数指针的运算关系指针的关系运算5.指针和数组6. 二级指针7. 指针数组指针入门 1.指针概念 指针(Pointer) 是编程语言中的一个对象,利用地址&#xff…

31、Java——JDBC实现账号密码登录

✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:乐趣国学的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:Java案例分…

Kong自动注册kong-spring-boot-stater

前言 kong-spring-boot-stater框架是为了解决SpringBoot项目和kong网关的自动注册,虽然Kong网关有提供可视化管理后台的操作界面,但是在多服务、多环境的时候在管理后台挨个配置每个服务节点是比较麻烦的,所以这也是kong-spring-boot-stater…

P3654 First Step (ファーストステップ)——暴力枚举

First Step (ファーストステップ) 题目背景 知らないことばかりなにもかもが(どうしたらいいの?) 一切的一切 尽是充满了未知数(该如何是好) それでも期待で足が軽いよ(ジャンプだ!&#xff09…

项目流程管理工具:OmniPlan Pro 4 中文

如何更好的管理项目流程?OmniPlan Pro 4中文是个很好的帮手,非常好用的项目流程管理工具, 强大的规划,管理复杂性: 引入三个新的内置模板:标准项目、标准项目(样式)和简单项目。 …

【TA】Unity角色二次元风格渲染

NRMToonLitSample Author : 文若 我的Demo地址 : NRMToonLitSample 学习视频地址 : Kerry大佬的 技术美术实战培训课程——卡通人物渲染方案 文章目录NRMToonLitSample1. 模型贴图基本信息2. 基础渲染效果2.1 基础shader Toon2.2 光照模型效果第一步&…

【从零到一的Raspberry】树莓派踩坑实录(一)系统安装与简单开发

写在前面 本系列作为树莓派上手记录,同时将本人的踩坑以及参考进行记录汇总,必要时罗列出小组分工,作为《嵌入式软开》小组参考文件。 0 硬件准备 名称描述树莓派3B支持wifi,包含了散热器、外壳、电源线等配件网线感谢王emo同学…

【小程序websocket前后端交互】uniapp写微信小程序聊天功能功能,websocket交互功能,心跳重连【详细注释,复制即用】

前言 这几天在做的一个需求,就是要写一个小程序端的页面,用于跟客服聊天。 然后就用到了websocket技术,以前我做过网页版的,但是做小程序后发现网页版的逻辑放过来没问题,但是很多的方法和api是不生效的,所…

立方体的表面积 长方体的表面积 公里转换为米 温度对照

立方体的表面积 难度&#xff1a;青铜 时间限制&#xff1a;1秒 占用内存&#xff1a;64 M 输入立方体边长&#xff0c;输出立方体的表面积。不考虑非法输入。格式 输入格式&#xff1a;输入实型 输出格式&#xff1a;输出实型 #include<bits/stdc.h> using namespace s…

万字长文的CSS与JavaScript简易学习

近期学习web笔记&#xff0c;可供参考 目录 css: css导入方式&#xff1a; css选择器&#xff1a; javascript: javascript介绍&#xff1a; js引入方式&#xff1a; js书写语法&#xff1a; js变量&#xff1a; 5种原始类型&#xff1a; 运算符&#xff1a; JavaScr…

推荐一款基于.Net Core开发简约漂亮的 WPF UI库

今天给大家推荐一个开源WPF UI库。 项目简介 这是一款使用简单、UI评论的WPF UI库&#xff0c;借鉴了多个开源框架。UI简单清晰、大气。 技术架构 1、跨平台&#xff1a;这是基于.Net Core开发的系统&#xff0c;可以部署在Docker, Windows, Linux, Mac。 2、开发环境&…

微视网媒:沃尔沃质量有什么魅力 让大佬罗永浩、樊登纷纷翻牌S90?

在消费市场&#xff0c;选对代言人&#xff0c;产品就成功了一半&#xff0c;这话可是一点都没说错。 从一定程度上来说&#xff0c;代言人就是产品对外形象的展示&#xff0c;甚至有不少消费者还会因为代言人激情下单。 当然&#xff0c;成也代言&#xff0c;败也代言&#xf…

拉格朗日对偶问题的一些介绍

文章目录参考前言拉格朗日函数例1例2拉格朗日函数的对偶问题参考 “拉格朗日对偶问题”如何直观理解&#xff1f;“KKT条件” “Slater条件” “凸优化”打包理解 感觉有时间看视频的还是看视频比较好&#xff0c;本文只是记录一下以防以后忘记。 前言 还记得SVM里用到拉格朗…

Python代码的编写运行方式简介

Python代码的编写运行方式简介 Python编写方式 Python 是一种解释型的脚本编程语言&#xff0c;支持两种代码编写方式&#xff1a;交互命令行方式和运行.py代码文件方式。 Python的交互命令行方式和直接运行.py代码文件方式有什么区别呢&#xff1f; 交互模式&#xff0c;相当…