学习笔记——动态路由——OSPF(报头信息、报文信息、三张表)

六、OSPF协议的报头信息、报文信息、三张表

OSPF的协议报文在一个广播域内进行传递,是直接封装在IP报文中的,协议号为89

OSPF本身5种类型:分别是Hello报文、DD报文、LSR报文、LSU报文、LSAck报文,各种不同类型的LSA其实只是包含在LSU报文中。

其他类型的OSPF报文中虽然没有携带LSA,但是仍然会携带一些链路状态信息,当然也会携带一些其他的信息。

1、OSPF报头信息

 

字段

长度  

含义

Version

1字节

版本,OSPF的版本号。对于OSPFv2来说,其值为2。

Version

1字节

版本,OSPF的版本号。对于OSPFv2来说,其值为2。

Type

1字节

类型,OSPF报文的类型,有下面几种类型:

1:Hello报文;2:DD报文;3:LSR报文;4:LSU报文;5:LSAck报文。

Packet length

2字节

OSPF报文的总长度,包括报文头在内,单位为字节。

Router ID

4字节

发送该报文的路由器标识。

Area ID

4字节

发送该报文的所属区域。

Checksum

2字节

校验和,包含除了认证字段的整个报文的校验和。

AuType

2字节

验证类型,值有如下几种表示,0:不验证;1:简单认证;2:MD5认证。

Authentication

8字节

鉴定字段,其数值根据验证类型而定。当验证类型为0时未作定义;

类型为1时此字段为密码信息;

类型为2时此字段包括Key ID、MD5验证数据长度和序列号的信息。 MD5验证数据添加在OSPF报文后面,不包含在Authenticaiton字段中。

2、OSPF五种报文

OSPF的5种报文中,Hello报文用来发现和维护邻居关系只有邻接关系建立完成后才会交互DD、LSR, LSU以及LSAck报文

Type

报文名称

报文功能

1

Hello

发现和维护OSPF邻居关系。周期性发送,用来发现、维护、保持OSPF邻居关系。

2

Database Description(DD)

交互链路状态数据库摘要。描述本地LSDB的摘要信息,用于两台设备进行数据库同步。

3

Link State Request(LSR)

请求特定的链路状态信息。用于向对方请求所需要的LSA。设备只有在OSPF邻居双方成功交换DD报文后才会向对方发出LSR报文。

4

Link State Update(LSU)

发送详细的链路状态信息。用于向对方发送其所需要的LSA,此时LSA信息是完整的。

5

Link State Ack(LSAck)

发送确认报文。用来对收到的LSA进行确认。

注意:OSPF在邻居刚建立的时候会发送路由信息(路由信息使用DD、LSR、LSU、LSack四种报文来发送),路由同步以后,后面仅发送hello包来维持邻居关系即可。

(1)Hello报文

最常用的一种报文,用于发现、维护邻居关系,并在广播和NBMA类型的网络中,选举指定路由器(DR)和备份指定路由路由器(BDR)。

Hello报文周期性发送,发送的时间受OSPF链路类型影响,如,广播网络类型下的Hello发送间隔为10秒不同链路状态下的Hello报文发送方式不同,广播网络类型下的Hello报文以组播发送。

1)Hello报文字段详解:

2)Hello报文的作用:

(1)邻居发现:自动发现邻居路由器,并建立相邻关系,广播网络类型下通过组播224.0.0.5发送,通告两台路由器建立相邻关系所必需统一的参数。

(2)邻居建立:完成Hello报文中的参数协商,建立邻居关系。

(3)邻居保持:通过Keepalive机制,检测邻居运行状态。

广播型的网络中,更新的周期为10S/40S非广播多路访问的网络中,更新的周期30s/120s

3)Hello时间修改:

重置ospf 进程:< >reset  ospf  process

修改hello时间:< >ospf  timer  hello  5

比如改成hello时间5s行吗?    可以

那么死亡时间是多少呢?        20s

hello时间和dead时间感知链路邻居是否存在。如果默认40s没有收到hello报文,OSPF邻居将会down掉

如果我修改了dead没有修改hello时间,那么hello时间会随着dead时间改变吗?

不会!因为hello时间随着报文通告

(2)DD(Database Description,数据库描述)报文

DD(数据库描述)报文,建立邻居的基础上用于两台路由器进行交换链路状态数据库的摘要信息。它允许路由器之间比较彼此的数据库,以确定需要交换的更新信息主要用于数据库的同步

不同链路状态下的DD报文发送方式不同广播网络类型下的DD报文以单播发送

内容包括LSDB中每一条LSA的Heade头部(LSA的Header可以唯一标识一条LSA) 。LSA Header只占LSA的整个数据量的一小部分,这样可以减少路由器之间的协议报文流量,对端路由器根据LSA Header就可以判断出是否已有这条LSA。

1)报文字段详解:

 

2)DD报文的作用:

(1)主要用于数据库的同步。

(2)先描述后请求,减少了交换LSA的次数,提高网络的收敛速度。

(3)如果没有DD报文,每次建立邻居后都要发送全部的LSA,如果对方已经有了大部分了,你还发一堆过去就产生了不必要的流量。

(3)LSR(Link State Request, 链路状态请求)报文

链路状态请求(LSR)报文,用于请求DD报文中的详细路由信息。

两台路由器互相交换过DD报文之后,知道对端的路由器有哪些LSA是本地的LSDB所缺少的,这时需要发送LSR报文向对方请求缺少的LSA。内容包括所需要的LSA 的摘要。

不同链路状态下的LSR报文发送方式不同广播网络类型下的LSR报文以单播发送

1)报文字段详解:

(4)LSU(Link State Update, 链路状态更新)报文

链路状态更新(LSU)报文,用于回复详细的LSR请求信息,在OSPF链路状态更新/拓扑变更时进行路由的更新通知。

用来向对端路由器发送所需要的LSA,内容是多条LSA(全部内容)的集合。当一个路由器检测到网络拓扑发生变化时,它会生成LSU报文,并将更新的链路状态数据发送给邻居路由器。

不同链路状态下的LSU报文发送方式不同广播网络类型下的LSU报文以组播发送

1)报文字段详解:

(5)LSAck报文(Link State Acknowledgment, 链路状态确认)

链路状态确认(LSAck)报文,用来对接收到的LSU报文进行确认。

当一个路由器接收到LSU报文后,会发送LSAck报文作为回应,通知发送方链路状态数据已成功接收。

不同链路状态下的LSACK报文发送方式不同广播网络类型下的LSACK报文以组播发送

1)报文字段详解:

2)LSAck报文的作用

保障LSA传输的可靠性,不至于说发送LSU丢了也不知道。

3、OSPF三张表

OSPF有三张重要的表项,OSPF邻居表、LSDB表和OSPF路由表。

(1)OSPF三张表——OSPF邻居表(neighbor table)

OSPF用邻居机制,来发现和维持路由的存在,邻居表存储了双向通信的邻居关系OSPF路由器列表的信息

对于OSPF的邻居表,需要了解∶

OSPF在传递链路状态信息之前,需先建立OSPF邻居关系邻居关系通过交互Hello报文建立

OSPF邻居表显示了OSPF路由器之间的邻居状态,使用display ospf peer查看。

[R2]display ospf  peer  brief //显示OSPF邻居的概要信息

         OSPF Process 1 with Router ID 2.2.2.2

                  Peer Statistic Information

 ----------------------------------------------------------------------------

 Area Id          Interface                  Neighbor id      State   

 0.0.0.0          GigabitEthernet0/0/0             1.1.1.1         Full   

 ----------------------------------------------------------------------------

[R2]display ospf  peer    //显示OSPF中各区域的详细邻居信息

         OSPF Process 1 with Router ID 2.2.2.2  //本地自己的Router ID

                 Neighbors

 Area 0.0.0.0 interface 10.1.12.2(GigabitEthernet0/0/0)'s neighbors

     Router ID: 1.1.1.1 //邻居的router-id    Address: 10.1.12.1   //邻居的接口IP    

   State: Full //OSPF的状态 Mode:Nbr is  Slave  Priority: 1   //接口优先级用于选举DR和BDR

   DR: 10.1.12.1  BDR: 10.1.12.2  MTU: 0    //MTU值 最大传输单元,缺省为1500,华为缺省是不开启MTU检测

   Dead timer due in 39  sec               //死亡时间(失效时间)

   Retrans timer interval: 5                    //LSA重传时间

   Neighbor is up for 00:05:21            //邻居UP 

   Authentication Sequence: [ 0 ]               //认证字段

(2)OSPF三张表——LSDB(链路状态数据库,link-state database)

OSPF用LSA(链路状态通告)来描述网络拓扑信息,然后OSPF路由器用LSDB链路状态数据库来存储网络的这些LSA。

LSDB同步:每个LSA都要在LSU中通告给邻居,并且每个邻居都要确认,若没有收到邻居的确认,LSU在5s后重传。

对于OSPF的LSDB表,需要了解∶

LSDB会保存自己产生的及从邻居收到的LSA信息。(下图中R1的LSDB包含了三条LSA)

作用:存放其他路由器的LSA

[R2]display ospf lsdb     //显示LSDB链路状态数据库的信息。

         OSPF Process 1 with Router ID 2.2.2.2

                 Link State Database

Area: 0.0.0.0

 LSA的类型            发送LSA的路由器            

 Type      LinkState ID        AdvRouter        Age  Len   Sequence   Metric

 Router      2.2.2.2         2.2.2.2        1175  36    80000003   1

 Router      1.1.1.1         1.1.1.1        1175  48    80000008   1

 Network      10.1.12.1         1.1.1.1        1175  32    80000002   0

Type:LSA的类型:1类2类

Link State ID:描述拓扑信息或者路由信息:根据你的LSA的类型不同

Adv Router:通告路由器:谁告诉你的这条LSA

age: LSA的存放时间                           Len:长度以字节为单位

Sequence:OSPF LSA的序列号(当拓扑产生变化之后+1以十六进制计算)     Metric:开销

(3)OSPF三张表——OSPF路由表(routing table)

对链路状态数据库进行SPF(Dijkstra)计算,而得出的OSPF路由表。

对于OSPF的路由表,需要了解∶

OSPF路由表路由器路由表两张不同的表项。下图中OSPF路由表有三条路由。

OSPF路由表包含:Destination(源地址)、Cost(开销)和NextHop(下一跳)等指导转发的信息。

Transitnet类型:网段路由。一般采用在直连接口,需要维护邻居之间的拓扑信息和路由信息。

stubnet类型:主机路由。一般采用在环回接口,不需要维护邻居之间的拓扑信息,只需要维护路由信息。

[R2]display ospf  routing   //显示OSPF路由表信息

         OSPF Process 1 with Router ID 2.2.2.2

                  Routing Tables Routing for Network

 Destination      Cost  Type               NextHop     AdvRouter    Area

 10.1.12.0/24       1  Transit //网段路由    10.1.12.2    2.2.2.2    0.0.0.0

 10.1.14.0/24       2  Stub   //主机路由    10.1.12.1    1.1.1.1    0.0.0.0

 Total Nets: 2 

 Intra Area: 2  Inter Area: 0  ASE: 0  NSSA: 0

(4)LSA、LSDB、SPF、路由表之间的关系

1)相互交换自己的LSA从而组成LSDB。【LSDB的形成】

2)通过SPF算法对LSDB中的路径信息进行一个计算,得出最优的OSPF路由。【路由的产生】

3)最优的OSPF路由放置在路由表中。如果存在其它路由协议的最优路由与OSPF的最优路由相同,将进行比较路由优先级,优先级小的信任度更高,将成为最优路由放置在路由表中。


整个华为数通学习笔记系列中,本人是以网络视频与网络文章的方式自学的,并按自己理解的方式总结了学习笔记,某些笔记段落中可能有部分文字或图片与网络中有雷同,并非抄袭。完处于学习态度,觉得这段文字更通俗易懂,融入了自己的学习笔记中。如有相关文字涉及到某个人的版权利益,可以直接联系我,我会把相关文字删除。【VX:czlingyun    暗号:CSDN】

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

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

相关文章

Acitity跳转延时10s会导致anr的时序问题讨论

背景&#xff1a; 针对前些天直播时候&#xff0c;主要讲解是launcher启动app&#xff0c;Activity onResume延时10s不会anr&#xff0c;但是Activity内部activity1跳转activity2就会anr问题展开了讨论 https://mp.weixin.qq.com/s/_uA5yKUTUw-9H-tWxGNK9g 这个原因为啥已经在…

『Z-Workshop』 6月22日线下ALCOVE分享活动

2024 求是创新 ZJUBCA Sponsored by the ALCOVE Community TIME&#xff1a;2024/06/22 ADD&#xff1a;浙江大学紫金港校区 --- Alcove 是 Aptos 公链与 Alibaba Cloud 共同打造的亚洲首个 Move 开发者社区&#xff0c;致力于支持开发者使用 Move 语言构建下一代 Web3 应用&am…

综合管廊挂轨巡检机器人:安全高效管理的新力量

综合管廊、电力管廊等作为承载着各类电缆和管线的重要通道&#xff0c;管廊的安全和可靠性对城市的运行至关重要。传统人工巡检效率低、劳动强度大&#xff0c;且可能存在巡检不及时、不准确等问题。难以满足日益复杂和庞大的管廊系统的监控需求。为了解决这些问题&#xff0c;…

RabbitMQ基本概念

RabbitMQ是AMQP协议的一个开源实现&#xff0c;所以其基本概念也就是的 AMQP 协 议中的基本概念。如图3-1所示是 RabbitMQ 的整体架构图。 Message(消息):消息是不具名的&#xff0c;它由消息头和消息体组成。消息体是不透明的&#xff0c; 而消息头则由一系列可选属性组成&…

vue3中的图片懒加载指令及全局注册

vue3中的图片懒加载指令及全局注册 最近重新刷了一遍黑马的小兔鲜前端项目&#xff0c;发现有个懒加载的指令之前还没有用过。而且写法相对固定&#xff0c;因此记录一下 首先&#xff0c;懒加载&#xff08;Lazy Loading&#xff09;的作用是延迟加载某些资源或组件&#xf…

用免费的“山水博客”来管理你的离线文章

山水博客地址&#xff1a; https://github.com/opensanyue/ssblog 电脑上存了不博客文章&#xff0c;一直想找个软件整理一下。前不久在github刷到一个&#xff0c;试了一下&#xff0c;还不错&#xff0c;先看看成果。 左边我建了2个大类&#xff0c;分开用来放“csdn”和“简…

文物管理技术RFID技术

随着科技的不断发展&#xff0c;科技在各个领域都发挥着重要的作用。其中&#xff0c;在文物管理方面&#xff0c;RFID技术的应用正在逐渐引起人们的关注。RFID&#xff08;Radio Frequency Identification&#xff09;技术是一种通过无线电信号进行非接触式识别的技术&#xf…

docker curl:(56) Recv failure: Connection reset by peer

docker容器启动后&#xff0c;查看日志未发现错误&#xff0c;通过查询和分析&#xff0c;发现是期望容器打开的端口与容器实际打开的端口不一致导致。 1&#xff09;docker run -itd -p 8082:8082 vulfocus/log4j2-rce-2021-12-09:latest 2&#xff09;curl localhost:8082 …

java基于ssm+jsp 大学生校园兼职系统

1前台首页功能模块 大学生校园兼职系统&#xff0c;在大学生校园兼职系统可以查看首页、企业信息、招聘信息、论坛信息、留言反馈、我的、跳转到后台等内容&#xff0c;如图1所示。 图1系统首页界面图 学生登录&#xff0c;通过学生登录填写账号、密码等信息进行登录操作&…

OSM数据导入至PostgreSQL

好几年没写博客了&#xff0c;最近博士小论文扩展准备添加个路网数据增加定位准确性 用的读取代码是github上的代码&#xff0c;使用openstreet数据。 1&#xff0c;从BBBbike划定区域下载路网数据&#xff0c;BBBike extracts OpenStreetMap (OSM, Garmin, Shapefile etc.) …

【Proteus仿真】基于stm32的数码管时钟

【Proteus仿真】基于stm32的数码管时钟 Proteus仿真&#xff01;基于stm32的数码管时钟~_哔哩哔哩_bilibili ‍ 01原理图 ​​ 02功能描述 1.通过按键修改时间 2.数码管显示实时时间&#xff0c;时-分-秒-毫秒格式 03获取方式 https://docs.qq.com/sheet/DTExIc2dPUUJ…

启动台出现agent app的解决方法~

启动台出现agent app的解决方法&#xff5e; 如果用了战网&#xff0c;Battle.net&#xff0c;在卸载后有一个agent app&#xff0c;启动台删除不掉&#xff0c;应用程序里面没有&#xff0c;怎么办呢&#xff1f; 解决方法&#xff1a;找到这个app所在位置&#xff0c;可以通…

05 Shell编程之免交互

1、Here Document免交互 1.1 Here Document概述 Here Document是一个特殊用途的代码块&#xff0c;它是标准输入的一种替代品&#xff0c; 可以帮助脚本开发人员不必使用临时文件来构建输入信息&#xff0c;而是直接就地生产出一个文件并用作命令的标准输入。 Here Documen…

vue-主题切换

themeName/index.vue页面: <template><div class"theme-view"><div click"themeClick" class"theme-btn">切换颜色</div><br>{{themeName white ? 白色 : 深色}}主题页面</div> </template><sc…

po文件并转换成mo文件

po文件转换成mo文件 简介 .po和.mo文件是WordPress中语言相关的两种文件。po 是Portable Object(可移植对象)的缩写&#xff0c;存放待翻译的字符串信息&#xff0c;可直接用文本编辑器打开编辑&#xff1b;mo 是Machine Object的缩写&#xff0c;二进制文件&#xff0c;程序…

1.3.1 离散周期信号DFS

目录 离散周期序列的DFS表示 离散周期信号DFS的性质 线性特性 位移特性 对称特性 奇偶对称 共轭反转对称 实序列的对称特性 周期卷积 DFS——Discrete Fourier Series 傅里叶级数 离散周期序列的DFS表示 做题得到的小公式 离散周期信号DFS的性质 线性特性 位…

郭子威:未来香港楼市多方拉动稳健前行

今年2月&#xff0c;香港取消了实行14年的楼市“辣招”。“撤辣”之后&#xff0c;香港楼市迎来迅速反弹&#xff0c;3月一手房成交量环比涨逾10倍。 香港“撤辣”的背景是什么&#xff1f;撤辣之后对楼市的长远影响有哪些&#xff1f;未来香港楼市的表现将会如何&#xff1f; …

马蹄集 oj赛(双周赛第二十九次)

目录 供水管线 附庸的附庸 逆序 队列安排 管理通讯簿 调整队伍 泡泡 一元多项式的加法 约瑟夫环 暧昧团 快排变形 采蜜 供水管线 难度:钻石● 时间限制:1秒巴: 占用内存:128 M 在几个城市之间原本要规划修建许多条下水管道&#xff0c;管理人员发现这些管道会形成一…

KubeCon 香港:移动云与云猿生联合议题《在没有专用 Operator 的情况下管理数据库集群》

KubeCon CloudNativeCon 开源峰会 AI_dev 中国大会将于 2024 年 8 月 21 日至 23 日在香港举行。来自全球的云原生技术专家与爱好者在这里相会&#xff0c;探讨云原生领域的技术创新与最佳实践。此外&#xff0c;本次 KubeCon CloudNativeCon 和开源峰会将与 AI_dev&#x…

【日常记录】【JS】SSE 流式传输 ChatGPT 的网络传输模式

文章目录 1、SSE 流式传输2、后端代码3、前端代码5、SSE和WS 对比6、chatgpt SSE的服务端返回的数据参考链接 单工通信是一种单向的通信方式&#xff0c;其中信息只能从发送端传输到接收端&#xff0c;而接收端不能向发送端发送任何信息。在Web开发中&#xff0c;Server-Sent E…