OSPF-1类Router LSA学习

前面我们又复习了一遍OSPF概述,在OSPF建立关系后有几种交互报文,通过LSU类型报文包含LSA信息实现路由信息传递,常见了1、2、3、4、5、7类LSA,分别对应不同功能使用。这里先看下1类LSA-Router LSA。

一、LSA概述

LSA,全称为Link State Advertisement,即链路状态通告,是OSPF(Open Shortest Path First)路由协议中的一个关键组成部分。

LSA记录了OSPF路由器所了解到的网络拓扑信息,包括连接的网络设备、路由器之间的连接信息、链路状态、度量值等。在OSPF协议中,网络被划分成了不同的区域,每个区域内部的路由器会收集各自所连接的网络的信息,并将这些信息记录在LSA中。当一个OSPF路由器收到其他路由器发送的LSA时,会通过比较这些LSA来计算最短路径,从而确定数据包的传输路径。

LSA类似于一条数据记录或者说原材料,然后路由器将这些LSA存放在LSDB数据库里面,正常情况下区域内的LSDB保持一致,然后路由器根据这些LSA通过SPF算法计算到达各个目的网络的路径,这样子保证区域内无环路。

LSDB
LSDB

LSA是OSPF进行路由计算的关键依据。OSPF的LSU报文可以携带多种不同类型的LSA。各种类型的LSA拥有相同的报文头部。

LSA 相关字段说明:

  1. LS Age(链路状态老化时间):此字段表示LSA已经生存的时间,单位是秒。
  2. Options(可选项):每一个bit都对应了OSPF所支持的某种特性。
  3. LS Type(链路状态类型):指示本LSA的类型。
  4. Link State ID(链路状态ID):不同的LSA,对该字段的定义不同。
  5. Advertising Router(通告路由器):产生该LSA的路由器的Router ID。
  6. LS Sequence Number(链路状态序列号):当LSA每次有新的实例产生时,序列号就会增加。LS Checksum(校验和):用于保证数据的完整性和准确性。判断新旧,越大越新。
  7. Length:是一个包含LSA头部在内的LSA的总长度值。

链路状态类型、链路状态ID、通告路由器三元组唯一地标识了一个LSA。

链路状态老化时间 、链路状态序列号 、校验和用于判断LSA的新旧。

二、Router LSA(1类LSA)详解

2.1 报文结构

Router LSA(1类LSA):每台OSPF路由器都会产生。它描述了该路由器直连接口的信息。Router LSA只能在所属的区域内泛洪。

1类LSA
1类LSA
  • Router LSA使用Link来承载路由器直连接口的信息。
  • 每条Link均包含“链路类型”、“链路ID”、“链路数据”以及“度量值”这几个关键信息。
  • 路由器可能会采用一个或者多个Link来描述某个接口。
Link描述
Link描述
Link TypeLink IDLink Data
Point-to-Point(P2P):描述一个从本路由器到邻居路由器之间的点到点链路,属于拓扑信息邻居路由器的Router ID宣告该Router LSA的路由器接口的IP地址
TransNet:描述一个从本路由器到一个Transit网段(例如MA或者NBMA网段)的连接,属于拓扑信息DR的接口IP地址宣告该Router LSA的路由器接口的IP地址
StubNet:描述一个从本路由器到一个Stub网段(例如Loopback接口)的连接,属于网段信息宣告该Router LSA的路由器接口的网络IP地址该Stub网络的网络掩码

报文抓包:

报文示例
报文示例
区域内LSDB同步
区域内LSDB同步

2.2 LSA描述的链路类型

关系说明:OSPF LSU报文-->LSA(1、2、3、5、7)-->一条LSA可以多条链路的描述-->描述的类型有(P2P、TransNet、StubNet)

Router LSA描述P2P网络: PTP类型 如图所示:这是一条Router LSA,LS id 为10.0.1.1,发布者是10.0.1.1;里面包含两条link描述,第一条的Link Type类型为P2P,因此这里的Link ID是对端的路由器ID,data就是自身的接口IP;第二个link类似为stubnet,描述一个从本路由器到一个Stub网段(例如Loopback接口)的连接,属于网段信息,因此这里link id 是接口的网段,data是掩码,说明这个接口的所属网段为10.0.13.0/24。

Router LSA描述TransNet:

TransNet 描述一个从本路由器到一个Transit网段(例如MA或者NBMA网段)的连接,属于拓扑信息。这里link id 表示DR地址,data表示DR发送接口的IP地址。

正常情况下OSPF描述网络需要拓扑信息和网段信息,能够知道对端是什么地址?DR是谁?连接网段和掩码是多少?

2.3 LSA的产生形成

OSPF是有自己产生LSA进行通告和学习其它邻居发布的LSA组成LSDB,然后进行计算最优路径的。

以下图为例: 图例

# 检查OSPF状态
[AR1]dis ospf peer brief 

	 OSPF Process 1 with Router ID 10.0.0.1
		  Peer Statistic Information
 ----------------------------------------------------------------------------
 Area Id          Interface                        Neighbor id      State    
 0.0.0.0          GigabitEthernet0/0/0             10.0.0.2         Full        
 ----------------------------------------------------------------------------
[AR1]dis ospf peer 

	 OSPF Process 1 with Router ID 10.0.0.1
		 Neighbors 

 Area 0.0.0.0 interface 10.0.0.1(GigabitEthernet0/0/0)'s neighbors
 Router ID: 10.0.0.2         Address: 10.0.0.2        
   State: Full  Mode:Nbr is  Master  Priority: 1
   DR: 10.0.0.1  BDR: 10.0.0.2  MTU: 0    
   Dead timer due in 40  sec 
   Retrans timer interval: 5 
   Neighbor is up for 05:15:57     
   Authentication Sequence: [ 0 ] 

# AR2
[AR2]DIS OSPF PEER brief 

	 OSPF Process 1 with Router ID 10.0.0.2
		  Peer Statistic Information
 ----------------------------------------------------------------------------
 Area Id          Interface                        Neighbor id      State    
 0.0.0.0          GigabitEthernet0/0/0             10.0.0.1         Full        
 ----------------------------------------------------------------------------
[AR2]DIS OSPF PEER 

	 OSPF Process 1 with Router ID 10.0.0.2
		 Neighbors 

 Area 0.0.0.0 interface 10.0.0.2(GigabitEthernet0/0/0)'s neighbors
 Router ID: 10.0.0.1         Address: 10.0.0.1        
   State: Full  Mode:Nbr is  Slave  Priority: 1
   DR: 10.0.0.1  BDR: 10.0.0.2  MTU: 0    
   Dead timer due in 35  sec 
   Retrans timer interval: 5 
   Neighbor is up for 05:17:18     
   Authentication Sequence: [ 0 ] 

# 从上面知道邻居已经建立,DR是10.0.0.1,BDR是10.0.0.2

AR1的LSA信息:

# 查看LSDB数据库
[AR1]dis ospf lsdb 

	 OSPF Process 1 with Router ID 10.0.0.1
		 Link State Database 

		         Area: 0.0.0.0
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    10.0.0.2        10.0.0.2          1281  48    8000000E       1
 Router    10.0.0.1        10.0.0.1          1278  48    80000010       1
 Network   10.0.0.1        10.0.0.1          1278  32    8000000C       0

# 先看一类LSA,能够发现有两条一类LSA,然后通告者分别是10.0.0.1和10.0.0.2。
Router LSA信息
Router LSA信息

AR2的LSA信息:

[AR2]dis ospf lsdb router 

	 OSPF Process 1 with Router ID 10.0.0.2
		         Area: 0.0.0.0
		 Link State Database 


  Type      : Router
  Ls id     : 10.0.0.2
  Adv rtr   : 10.0.0.2  
  Ls age    : 1698 
  Len       : 48 
  Options   :  E  
  seq#      : 8000000e 
  chksum    : 0x2920
  Link count: 2
   * Link ID: 10.0.0.1     
     Data   : 10.0.0.2     
     Link Type: TransNet     
     Metric : 1
   * Link ID: 172.16.0.1   
     Data   : 255.255.255.255 
     Link Type: StubNet      
     Metric : 0 
     Priority : Medium

  Type      : Router
  Ls id     : 10.0.0.1
  Adv rtr   : 10.0.0.1  
  Ls age    : 1697 
  Len       : 48 
  Options   :  E  
  seq#      : 80000010 
  chksum    : 0xa5f6
  Link count: 2
   * Link ID: 10.0.0.1     
     Data   : 10.0.0.1     
     Link Type: TransNet     
     Metric : 1
   * Link ID: 192.168.1.1  
     Data   : 255.255.255.255 
     Link Type: StubNet      
     Metric : 0 
     Priority : Medium

从上面信息我们能够知道有AR1和AR2两个路由器,AR1是DR,连接了一个192.168.1.0网段,AR2与AR1相连,角色是BDR,连接了一个172.16.0.0网段,简单说就是transnet和p2p描述了网络拓扑,然后stubnet描述连接的网段信息构成整个完整网络。当然这里我们只学习了Router LSA,只能在区域内Area0内通告泛洪。

总结:OSPF邻接关系完成后通过LSU请求报文和学习路由信息,每个路由器会通告自己的拓扑信息和网段信息保存在区域内的LSDB,一般区域内的LSDB数据库是一致的,然后路由器根据这个LSDB进行路由计算保证区域内无环路,Router LSA头部相同,可以携带多条link链路信息,只能在区域内进行泛洪通告。

本文由 mdnice 多平台发布

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥练习题总结(一)字母图形、完美的代价、01串、序列求和

目录 一、字母图形 二、完美的代价 三、01字串 四、序列求和 一、字母图形 问题描述 利用字母可以组成一些美丽的图形,下面给出了一个例子: ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 这是一个5行7列的图形,请找出这个图形的规律&#xff…

慧海科创再探潮间带|全面调研推动梭子蟹产业进步

浙江的海岸线延绵,孕育了丰富的海洋生物多样性。在这样的背景下,慧海科创团队沿着宁波至舟山的潮间带开展了全面的调研活动。2024年3月15日,浙江海洋大学、宁波大学、上海理工大学的梭子蟹智能捆扎实践团队,深入海岸一线,与当地养殖户交流产业发展中的痛点难点,共同探讨梭子蟹产…

【云呐】固定资产管理系统有哪些主要功能

固定资产管理是一项非常重要的任务。许多企业选择固定资产管理系统,以提高运营效率,降低企业成本。那么,固定资产管理系统的关键功能是什么呢?这个功能如何实现企业高效管理?  固定资产管理系统最重要的作用是资产登…

铸铁平台制造工艺有多精细你知道吗——河北北重

铸铁平台的制造工艺要求相对较高,需要经过以下精细工艺: 材料选择:铸铁平台通常使用灰口铸铁,其具有良好的耐磨性和强度。材料的选择要考虑到使用环境和平台的功能需求。 模具制造:根据设计要求制作模具,模…

SinoDB客户端工具dbaccess

类似Oracle的客户端工具sqlplus,Mysql的客户端工具mysql,SinoDB数据库也有自带的命令行客户端工具dbaccess。 dbaccess 识别用户输入,将用户输入的 SQL 语句打包发送给 SinoDB 数据库服务器执行,然后接收服务器的执行结果&#xf…

【Linux】网络基础一

网络基础一 1.计算机网络背景1.1 网络发展1.2 认识 “协议” 2.网络协议初识2.1 协议分层2.2 OSI七层模型2.3 TCP/IP五层(或四层)模型 3. 网络传输基本流程3.1 网络传输流程图 4.数据包封装和分用5.网络中的地址管理 从今天开始我们将要从系统横跨到网络的学习了,因…

C++特性三:多态的基本语法及原理剖析

一、多态的基本语法 多态分为两类 静态多态: 函数重载 和 运算符重载属于静态多态,复用函数名 动态多态: 派生类和虚函数实现运行时多态 静态多态和动态多态区别: 静态多态的函数地址早绑定 - 编译阶段确定函数地址 动态多态的函数地址晚绑定 - 运…

Springcloud智慧工地APP云综合平台源码 SaaS服务

目录 智慧工地功能介绍 一、项目人员 二、视频监控 三、危大工程 四、绿色施工 五、安全隐患 具体功能介绍: 1.劳务管理: 2.施工安全管理: 3.视频监控管理: 4.机械安全管理: 5.危大工程监管: …

Java设计模式 | 简单工厂模式

概述 需求 设计一个咖啡店点餐系统设计一个咖啡类(Coffee);并定义其两个子类(美式咖啡AmericanCoffee和拿铁咖啡LatteCoffee);再设计一个咖啡店类(CoffeeStore),其具备…

ctf_show笔记篇(web入门---反序列化)

目录 反序列化 254:无用,是让熟悉序列化这个东西的 255:直接使$isViptrue 256:还是使用变量覆盖 257:开始使用魔法函数 258:将序列化最前面的过滤了,使用绕过 259: 这一题需要看writeup才…

用css滤镜做颜色不同的数据卡片(背景图对于css滤镜的使用)

<template> <div class"xx_modal_maincon"><div class"xx_model_bt">履约起始日至计算日配额及履约情况</div><el-row><el-col :span"6"><div class"xx_modal_mod"><div class"mod…

cs推免相关文书模板、基本资料

目录 复试问题 文书模板 机考指南 链接:https://pan.baidu.com/s/1WAAzTPZsASNDt5XRmAO9VA?pwd=21yk 提取码:21yk --来自百度网盘超级会员V5的分享 408专业课复习 链接:https://pan.baidu.com/s/1UI0EwWTy3zn3lm3wTQJ2Dw?pwd=t5gj 提取码:t5gj --来自百度网盘超级会…

【技术栈】Redis 中的事务及持久化方式

SueWakeup 个人主页&#xff1a; SueWakeup 系列专栏&#xff1a;学习技术栈 个性签名&#xff1a;保留赤子之心也许是种幸运吧 本文封面由 凯楠&#x1f4f8; 友情提供 目录 相关传送门 1. Redis 中的事务 2. Redis 持久化 2.1 RDB 方式 2.1.1 RDB手动 2.1.2 RDB自动 2.…

LeetCode:2684. 矩阵中移动的最大次数(DP Java)

目录 2684. 矩阵中移动的最大次数 题目描述&#xff1a; 实现代码与解析&#xff1a; DP 原理思路&#xff1a; 2684. 矩阵中移动的最大次数 题目描述&#xff1a; 给你一个下标从 0 开始、大小为 m x n 的矩阵 grid &#xff0c;矩阵由若干 正 整数组成。 你可以从矩阵第…

C++第八弹---类与对象(五)

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】 目录 1、运算符重载 1.1、赋值运算符重载 1.2、前置和后置重载 2、const成员 3、取地址及const取地址操作符重载 总结 1、运算符重载 1.1、赋值运…

MathType注册码永久激活版2024中文版

1、 点击exe的安装包&#xff0c;然后像普通软件一样安装即可&#xff0c;路径选择你可以找到的&#xff08;后面设置会用到&#xff09; 2、安装完成之后&#xff0c;不要打开!不要打开!不要打开!这一步很重要!!!安装之后&#xff0c;打开激活工具&#xff08;激活工具&#x…

Spring之@Autowired注解

Autowired的几种用法 作用在属性上作用在方法上作用在构造器上 demo演示 创建三个普通bean Component public class ComponentA { }Component public class ComponentB { }Component public class ComponentC { } 依赖注入 package com.test.model.component;import org.…

Spring学习记录之依赖注入

问题1&#xff1a; 往一个类中传递数据的方式有哪些呢&#xff0c;其实&#xff0c;只有一种方式&#xff0c;即通过方法&#xff0c;但方法却有多种&#xff0c;一种是我们先前学到的通过set方法&#xff08;普通方法&#xff09;&#xff0c;另一种则是通过构造方法的方式。…

3.19作业

1、思维导图 2、模拟面试题 1&#xff09;TCP通信中的三次握手和四次挥手 答&#xff1a;三次握手 客户端向服务器发送连接请求 服务器向客户端回复应答并向客户端发送连接请求 客户端回复服务端&#xff0c;并建立联系 四次挥手 进程a向进程b发送断开连接请求…

单例设计模式,各种排序复习

1.单例设计模式 资料来源 1.1单例模式是什么&#xff1f; 单例模式&#xff0c;属于创建类型的一种常用的软件设计模式。 通过单例模式的方法创建的类在当前进程中只有一个实例&#xff08;根据需要&#xff0c;也有可能一个线程中属于单例&#xff0c;如&#xff1a;仅线程…
最新文章