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

news2024/11/14 16:31:43

六、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.coloradmin.cn/o/1869915.html

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

相关文章

深度解析观测云智能监控的核心设计原理

背景 在监控高度分布式的应用程序时&#xff0c;可能依赖于多个基于云的和本地环境中的数百个服务和基础设施组件&#xff0c;在识别错误、检测高延迟的原因和确定问题的根因都是比较有挑战性的。即使已经具备了强大的监控和警报系统&#xff0c;但是基础设施和应用程序也可能…

求出某空间曲面下的体积

求出某空间曲面下的体积 flyfish 用小长方体的体积和来逼近该体积 import numpy as np import matplotlib.pyplot as plt import matplotlib.animation as animation# 定义函数 f(x, y) def f(x, y):return np.sin(np.pi * x) * np.sin(np.pi * y)# 创建网格 x np.linspac…

HMI 的 UI 风格,精妙无比

HMI 的 UI 风格&#xff0c;精妙无比

使用vue + canvas绘制仪表盘

使用vue canvas绘制仪表盘 效果图&#xff1a; 父容器 <template><div class"panelBoard-page"><h1>panelBoard</h1><Demo1 :rate"rate" /></div> </template> <script setup> import { ref } from …

2024最新总结:1500页金三银四面试宝典 记录35轮大厂面试(都是面试重点)

学习是你这个职业一辈子的事 手里有个 1 2 3&#xff0c;不要想着去怼别人的 4 5 6&#xff0c;因为还有你不知道的 7 8 9。保持空瓶心态从 0 开始才能学到 10 全。 毕竟也是跳槽高峰期&#xff0c;我还是为大家准备了这份1500页金三银四宝典&#xff0c;记录的都是真实大厂面…

表格截图怎么转换成表格?6个软件帮助你快速进行表格转换

表格截图怎么转换成表格&#xff1f;6个软件帮助你快速进行表格转换 将表格截图转换为可编辑的表格文件是处理数据时常见的需求&#xff0c;特别是在需要分析或编辑图像中包含的信息时。以下是几款帮助你快速进行表格转换的软件和工具&#xff0c;它们提供了不同的功能和适用场…

LearnOpenGL - Android OpenGL ES 3.0 使用 FBO 进行离屏渲染

系列文章目录 LearnOpenGL 笔记 - 入门 01 OpenGLLearnOpenGL 笔记 - 入门 02 创建窗口LearnOpenGL 笔记 - 入门 03 你好&#xff0c;窗口LearnOpenGL 笔记 - 入门 04 你好&#xff0c;三角形OpenGL - 如何理解 VAO 与 VBO 之间的关系LearnOpenGL - Android OpenGL ES 3.0 绘制…

【Linux】对共享库加载问题的深入理解——基本原理概述

原理概述 【linux】详解——库-CSDN博客 共享库被加载后&#xff0c;系统会为该共享库创建一个结构&#xff0c;这个结构体中的字段描述了库的各种属性。在内存中可能会加载很多库&#xff0c;每一个库都用一个结构体描述。把这些结构体用一些数据结构管理起来&#xff0c;系…

短说V4.1.5及PC端V3.1.4正式版发布公告

Hi 大家好&#xff0c; 我是给你们带来惊喜的运营小番茄。 本期更新为短说 4.1.5和PC端3.1.4的正式版。 本次修复上个版本中的问题和功能优化&#xff0c;以及新增了如下功能&#xff1a; PC端支持发布秀米帖&#xff0c;可支持部分秀米格式&#xff1b;后台管理类消息新增…

shell编程之免交互(shell脚本)

Here Document 免交互 Here Document 概述 Here Document是一个特殊的用途的代码块。它在linux shell中使用I/O重定向的方式将命令列表提供给交互式程序或命令&#xff0c;比如ftp&#xff0c;cat或read命令。Here Document 是标准输入的一种替代品&#xff0c;可以帮助脚本开…

postman忘记密码发邮件,久久收不到怎么办?

根本原因是需要FQ&#xff01;&#xff01;&#xff01; 重置密码的链接&#xff1a; https://identity.getpostman.com/trouble-signing-in 找个平台或者软件&#xff0c;访问这个链接即可完成修改密码后续操作&#xff0c;不用再傻傻等着验证码了。 有需要协助的朋友也可私信…

运算放大器(运放)输入偏置电流、失调电流

输入偏置电流定义 理想情况下&#xff0c;并无电流进入运算放大器的输入端。而实际操作中&#xff0c;始终存在两个输入偏置电流&#xff0c;即IB和IB-(参见图1)。 I B I_B IB​的值大小不一&#xff0c;在静电计AD549中低至60 fA(每三微秒通过一个电子)&#xff0c;而在某些高…

Linux CentOS 宝塔中禁用php8.2的eval函数详细图文教程

PHP_diseval_extension 这个方法是支持PHP8的, Suhosin禁用eval函数&#xff0c;不支持PHP8 一、安装 cd / git clone https://github.com/mk-j/PHP_diseval_extension.gitcd /PHP_diseval_extension/source/www/server/php/82/bin/phpize ./configure --with-php-config/ww…

似然 与 概率

概率似然概率函数与似然函数的关系似然与机器学习的关系最大似然估计 似然与概率分别是针对不同内容的估计和近似 概率 概率&#xff1a;概率表达给定参数 θ \theta θ下样本随机向量 X x \textbf{X} {x} Xx的可能性。 概率密度函数的定义形式是 f ( x ∣ θ ) f(x|\t…

【博士每天一篇文献-综述】A survey on few-shot class-incremental learning

阅读时间&#xff1a;2023-12-19 1 介绍 年份&#xff1a;2024 作者&#xff1a;田松松&#xff0c;中国科学院半导体研究所&#xff1b;李璐思&#xff0c;老道明大学助理教授&#xff1b;李伟军&#xff0c;中国科学院半导体研究所AnnLab&#xff1b; 期刊&#xff1a; Neu…

FastGPT部署和OneAPI部署

FastGPT模型管理 FastGPT只支持openai 格式的restful 的api接口。 就是 chat/completion那个接口。如果不理解可以参考这个文章 https://zhuanlan.zhihu.com/p/656959227 。 支持Python 。JAVA 等后端语言或者 http 访问 因此如果想访问大模型&#xff0c;有以下几种方案&…

一次tcpdump抓包过程

#查询网卡 tcpdump -D # 监听 21100 端口 网卡ens192 &#xff08;不知道网卡&#xff0c;可以直接不输入 -i 网卡&#xff09;TCP数据&#xff0c;等待一段时间&#xff0c;执行CtrlC&#xff0c;终止程序 tcpdump -x -s 0 -w /tmp/123.dump -i ens192 -p tcp port 21100 #…

《2024快手行业人群画像报告-大家电类目》

快手商业化品牌行业运营中心与快手商业化用户研究中心联合发布了一份名为《2024快手行业人群画像报告-大家电类目》的研究报告。 这份报告深入分析了大家电市场的用户画像,涵盖了品类划分、用户趋势、交易洞察、人群洞察、搜索洞察以及品牌认知等多个维度的详尽数据和洞察,为理…

海思平台使用ITTP_Stream调试sensor

目录 相关资料1.ISP相关资料2.MIPI RX相关资料3.sensor资料4.MIPI标准 准备工作1.准备sensor驱动2.准备sample vio3.准备上位机和下位机程序 运行1.只运行HiPQTool1.1.板端运行1.2.PC端运行HiPQTool 2.使用ITTP_Stream2.1.板端运行2.2.打开上位机软件 相关资料 1.ISP相关资料 …

基于哈尔小波基的一维密度估计(Python)

先说点其他的东西。 关于强非线性、强间断、多物理场强耦合或高度复杂几何形态问题能够得以有效求解的核心难题之一&#xff0c;是如何构建在多尺度情形、非线性作用下具有准确地识别、定位、捕获以及分离各个尺度特征尤其是小尺度局部特征能力的数值工具&#xff0c;这之中包…