广告
返回顶部
首页 > 资讯 > 数据库 >OSPF报文详解
  • 282
分享到

OSPF报文详解

2024-04-02 19:04:59 282人浏览 安东尼
摘要

一、OSPF 概述1、IGP (Interior Gateway Protocol),AS内部网关路由协议。2、链路状态动态路由协议。3、IP 协议号89。4、分area。area由一些network ra

一、OSPF 概述

1、IGP (Interior Gateway Protocol),AS内部网关路由协议。
2、链路状态动态路由协议。
3、IP 协议号89。
4、分area。area由一些network range组成。area 0 为骨干区域。同一area内的router 链路状态数据库需要保持同步。
5、使用hello,Database Description,Link State Request,Link State Update,Link State Acknowledgment 这5中packet来发现和建立邻接关系,并交换LSA(Link State Advertisement),同步链路状态数据库
6、使用5中LSA来描述area 内的拓扑结构,以及AS内其他area的路由,及AS内从外部AS学到的路由:1).Router links advertisements; 2).network links advertisements; 3).Summary link advertisements; 4).ASBR-Summary link advertisements; 5).AS external link advertisements.
7、使用链路状态数据库存储LSA,并使用SPF(Shortest Path First)算法。以自己为根,计算出到目的网络的无环的最短路径树。


二、OSPF Packet

2.1 OSPF 报文公共header

OSPF报文详解

2.1.1 作用

封装OSPF packet,表明packet的类型,来源,来源区域。也可以进行认证。

2.1.2 字段说明

Type:表明header下面跟的packet的类型(1-Hello;2-Database Description;3-Link State Request;4-Link State Update;5-Link State Acknowledgment)
Router ID:路由器在区域内的唯一标识,可用路由器上的interface IP.
Area ID: 发送该OSPF Packet的router interface 所属的area.


2.2 OSPF Hello Packet

OSPF报文详解

作用:发现邻居,选举DR/BDR(multi-access network),建立双向通信关系。
字段说明:
Network Mask:发送接口的网络掩码。
HelloInt:Hello包周期发送时间间隔。
Options:可选能力字段,比如E位用来表示区域是否接收AS External link advertisement.
Rtr Pri: Router Priority在选举DR/BDR的时候使用。
DeadInt:收到邻居回复前的最大等待时间,超过改时间认为邻居Dead。
Designated Router:本router认为的该multi-access network里面的指定路由器
Backup Designated Router:本router认为的该multi-access network 里面的备用指定路由器。
Neighbor: 最近收到的hello packet 的 Router ID(发送路由器),如果在收到的hello packet里面看到自己的router ID 则和hello packet的发送路由器进入双向通信(2-way)状态。


2.3 OSPF Database Description Packet

OSPF报文详解

作用:互相交换链路状态数据库里面的LSA信息。比较然后发现自己没有的或者比自己存储的LSA更新的。
字段说明:
Option:作用同Hello里面的。
I/M/MS:I(Init bit,设置为1表示发送的第一个DBD,M(More bit,表示后面还有DBD),MS(Master/Slave,置1表示Master,只有1个master,其他的为slave,在DBD交换过程中,Master先发包含LSA头部信息的DBD包,使用一个DD sequence number,slave 回复DBD包,使用相同的DD sequence number在传递LSA的同时对Master发送的DBD进行确认,以此实现可靠的信息交换)
Link State Advertisement Header: LSA数据包的header,header中包含足够的信息以唯一的确认一个SLA的实例。LSA Header下面会介绍


2.4 OSPF Link State Request

OSPF报文详解

作用:向邻居请求其数据库中自己没有的或者比自己更新的LSA。
字段说明:
LS type:LS 类型如之前介绍的5中LSA。
Link State ID:相应的LS type的LSA header里面包含的Link State ID字段内容。其具体的值在之后介绍LSA Header时介绍。
Advertisiong Router:通告该被请求LSA的Router。
以上三个字段可以唯一的确认要请求的LSA。


2.5 OSPF Link State Update

OSPF报文详解

作用:向邻居发送其请求的LSA(单播),在网络上泛洪LSA(多播,当网络有变动时,发送新的LSA),发送的Upadate packet需要neighbor使用 Ackownledged packet进行确认。如果未收到neighbor的确认,对改neighbor进行单播重传,以确保他们的数据库信息同步。
字段说明:
#advertisements:包含的LSA的数量。
link state advertisements:完整的LSA数据包。


2.6 OSPF Link State Acknowledgment

OSPF报文详解

作用:对收到的Update packet进行确认。字段说明:
#A Link State Advertisement Header:收到的Update packet里面包含的LSA的header,发送回去表示具体的LSA已经收到。


三、 OSPF LSA 封装

上面介绍的5中OSPF packet 是用来建立并维持邻居关系并交换和保持链路状态数据库同步的。其交换和存储的正是下面要介绍的5中LSA。
1、Router links
2、Network links
3、Summary link(IP network)
4、Summary link(ASBR)
5、AS external link
下面通过介绍不同LSA的包的内容,来介绍一下OSPF是如何通过LSA来描述area 的拓扑,及area内包含的网段。并通过LSA来学习area 外部,AS外部的路由。


3.1 OSPF LSA Common Header

OSPF报文详解

作用:通过LS type,Link State ID,Advertising Router, 来唯一的确认一个LSA,通过LS age,LS sequence number 用来唯一确认该LSA最新的实例。
字段说明:
LS age:LSA被生成以后到现在的时间。
Options:可选的能力支持,同Hello。
LS type:头部下面跟随的LSA的类型(1-Router links;2-Network links;3-Summary links(IP network);4-Summary link(ASBR);5-AS external link)
Link State ID:表示该LSA描述的网络环境(internet environment),根据不同的LS type,有不同的值,Router links 其值为router's OSPF Router ID; Network links其值为 IP interface address
of the Designated Router;Summary link(3)其值为IP network number;Summary link(4)其值为ASBR's Router ID;AS external link其值为IP network number.
Advertising Router:生成改LSA的router's router ID。
LS sequence number:LSA 序列号用来检测旧的或者重瞳的LSA。
LS checksum:整个LSA的一个校验值。
length:LSA的长度,包括头部。


3.2 Router link advertisement

OSPF报文详解

作用:描述router上属于相应area的interface(or link)的state 和 cost。该Router的所有的属于一个area的link必须被包含在一个Router links advertisement里面。area里面的每个router生成。其link State ID为生成该LSA的路由器的Router ID.
字段说明:
E/B: E表明router是否是ASBR,B表明router是否是ABR
#links:改LSA中包含的LINK的数量。
Type:link的类型 1-Point-to-piont;2-transit network;3-stub network;4-Virtual link.
Link ID:定义该link连接的对象,针对不同的link type其值不同,P-2-P其值为Neighboring router's ID;Transit-network其值为IP address of Designated Router;Stub-network其值为IP network/sunet number;Virtrual Link 其值为Neighboring router's ID.
Link Data:其值也根据链路类型来确定:Stub-network其值为network mask;其他类型该值为router 关联接口的IP 地址。
TOS 0 metric: TOS(Type of Service在IP里面定义的服务类型)0 的metric 值。也就是cost。


3.3 Network link advertisement

OSPF报文详解

作用:由transit-network(multi-access network)的Designated Router生成,描述所有连接到该multi-access network的router。其Link State ID 为DR's interface ip.
字段说明:
Network Mast:transit-network 的网络掩码。
Attached Router:附加(连接)在该multi-access network的路由器的router-id ,包括Designated Router 其自己的router ID.


3.4 Summary link advertisement

OSPF报文详解

作用:由ABR(Area Border Router)生成,一个Summary links advertisement 只能包含一条属于本AS但是是area外的destination route。其lsa header里的Link State ID就是其要通告的destination route(IP network number)
字段说明:
Network Mast:Link State ID 里面IP network number 的网络掩码。IP network number+ Network Mask 形成该LSA传递的路由的具体的目标网络。
TOS/metric:该路由针对于不同的TOS的metric值。
TYPE-4
作用:由ABR生成告诉区域内的路由器通告AS external link advertisements 的ASBR(Autonomous System Boundary Router)的位置。其LSA header 里面Link State ID的值为 ASBR的 Router ID.
字段说明:
Network Mask: 在该类型的SLA里,该字段没有意义,必须置0.


3.5 AS External Link advertisement

OSPF报文详解

作用:由ASBR生成,一个AS external links advertisement 只能包含一条本AS外部的destination route。其lsa header里的Link State ID就是其要通告的destination route(IP network number)
字段说明:
Network Mast:Link State ID 里面IP network number 的网络掩码。IP network number+ Network Mask 形成该LSA传递的路由的具体的目标网络。
E:externel metric 类型。置1表示Type2 external metric(只使用外部初始的cost,改路由在AS内部传递其metric不随着内部路径成本的增加而增加)。置0表示Type 1 external metric(意思是路由的metric随着内部路径成本的增加而增加)
TOS/metric:该路由针对于不同的TOS的metric值。
Forwarding address:第三方转发地址。数据包应该被发送到该地址进行下一步的转发,而不是发送到ASBR上。如果改地址为0.0.0.0,则数据包路由到ASBR上,之后再进行下一步的转发。


四、OSPF 工作原理

OSPF是如何通过5中LSA来构建area 拓扑和学习路由的:
其实网络就是由点(路由器以及附着在路由上的stub network)和线(link/network)组成。
OSPF Router通过Router LSA学习到一下信息:1)、标识出来一个路由器(Router ID);2)router 上的stub network比如interface vlan,loopback interface;3)、和point-to-point link 网段连接的Router的 Router ID.
OSPF Router通过Network LSA学习到multi-access network 里面附着的Router。
在同一个区域内的所有OSPF Router的LSDB同步以后,Router 就可以计算出一张完成的区域内路由器连接拓扑图了。到该area内的目的网络的路由,OSPF Router 以自己为根根据不同链路的cost 最后计算出一条到该目的地网络的最短路径。
area 外部但是属于AS内部的目的网络路由,区域内的路由器通过ABR通告的summary LSA 来学习到(ABR就是一个AREA 的出口)
AS外部的路由,AS内部的路由器通过ASBR通告的 AS external LSA 来学习到。ASBR就是一个AS的出口。


您可能感兴趣的文档:

--结束END--

本文标题: OSPF报文详解

本文链接: https://www.lsjlt.com/news/40876.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • OSPF报文详解
    一、OSPF 概述1、IGP (Interior Gateway Protocol),AS内部网关路由协议。2、链路状态动态路由协议。3、IP 协议号89。4、分area。area由一些network ra...
    99+
    2022-10-18
  • OSPF报头及各种报文格式
    要理解OSPF路由协议的工作原理,特别是路由更新机制,首先就要对它的各种报文格式有一个全面的了解。OSPF报文主要有5种:Hello报文、DD (Database Description,数据库描...
    99+
    2022-10-18
  • 指南:动态路由协议OSPF基础,OSPF报文,LSA
    OSPF IETF(Internet Engineering Task Force,互联网工程任务组)组织开发的一个基于链路状态的内部网关协议。目前针对 IPv4 协议使用的是OSPF Version 2。OSPF简介...
    99+
    2023-06-03
  • OSPF详解-3 邻接、度量值
    **一、OSPF邻接关系 运行链路状态路由协议的路由器必须首先与选定的邻居路由器建立邻接关系,这是通过与邻居路由器交换Hello分组来实现的。 1.邻接路由器建立步骤 路由器建立邻接关系的步骤如下: 1)路由器将Hello分组发送给邻居...
    99+
    2023-01-31
    度量 详解 OSPF
  • OSPF中常见的六种LSA详解
    OSPF中常见的六种LSA详解 1类LSA2类LSA3类LSA5类LSA4类LSA7类LSAOSPF中计时器 在OSPF协议中,使用LSA来传递路由信息和拓扑信息,因此了解不同的LSA的内容和其功能,对了解OSPF协议的路由形成有很大帮...
    99+
    2023-08-18
    网络 网络协议 服务器
  • OSPF-5种报文、3个阶段、3张表
    在理解OSPF各种报文之前,需先清楚OSPF协议,通过下面图例帮助理解(口诀:5种报文、3个阶段、3张表) (Notice:OSPF报文头部24字节) 1、3个阶段 邻居发现阶段:     直连路由器形成邻居关系,在broadcast和...
    99+
    2023-01-31
    报文 阶段 OSPF
  • UDP报文详解
    目录 🐳今日良言:走好选择的路,别选择好走的路,你才能拥有真正的自己。 🐼一、UDP协议特点 🐼二、UDP协议段格式详解 🐳今日良言:走好选择的路,别选择好走的路,你才能拥...
    99+
    2023-09-20
    udp 网络 服务器
  • go语言import报错处理图文详解
    目录import 认识补充:Go语言不支持相对路径import导入包总结import 认识 go的import有两种形式 第一种是GOPATH下项目文件管理 第二种是Go Modul...
    99+
    2023-05-18
    go语言 import go语言import报错 go语言import
  • SQL注入报错注入函数图文详解
    目录前言常用报错函数用法详解updateXML()函数实例extractvalue()函数floor()函数exp()函数12种报错注入函数总结前言 报错注入的前提是当语句发生错误时,错误信息被输出到前端。其漏...
    99+
    2022-07-08
    sql注入解决方法 sql注入 报错注入 sql报错注入原理
  • AJAX实现文件上传功能报错Currentrequestisnotamultipartrequest详解
    想做一个文件上传,spring boot配合Ajax来进行。却报错:Current request is not a multipart request 这是错误截图: 当时发生这...
    99+
    2022-11-13
  • Jmeter如何获取jtl文件中所有的请求报文详解
    前言 大家都知道Jmeter运行测试可以产生jtl文件,里边包含了整个脚本的请求返回以及各种设置。近期遇到一个问题给大家分享下,就是作为性能测试组,从自动化测试组中拿到了一堆jtl文...
    99+
    2022-11-12
  • AssemblyInfo.cs文件详解
    AssemblyInfo.cs是一个C#项目中的元数据文件,它包含了项目的一些重要信息,如程序集的版本号、标题、描述等。以下是Ass...
    99+
    2023-09-14
    详解
  • Parquet文件详解
    1、parquet文件简介 Apache Parquet是Apache Hadoop生态系统的一种免费的开源面向列的数据存储格式。 它类似于Hadoop中可用的其他列存储文件格式,如RCFile格式和ORC格式。 Apache Parque...
    99+
    2023-08-19
    hadoop 大数据 java
  • Dockerfile文件详解
    目录什么是dockerfileDockerfile的基本结构Dockerfile文件说明FROMMAINTAINERRUNshell执行exec执行ADDCOPYCMDENTRYPO...
    99+
    2022-11-13
  • 详解build.gradle文件
    前言 一般来说一个新创建的项目中,有两个 build.gradle 文件,一个是工程目录下的,一个是 app 目录下的,这两个 build.gradle 文件对 Android Studio 项目的作...
    99+
    2023-09-03
    android android studio gradle
  • pom文件详解
    pom文件详解 前言什么是POM文件?POM文件的基本结构POM文件的常用配置项1. 坐标信息2. 依赖项配置3.构建配置4. 插件配置5. 仓库配置 父子pom父POM子POM父子POM的优点父子POM的使用 总结 前...
    99+
    2023-08-16
    java maven spring
  • AndroidManifest文件详解
    AndroidManifest 官方解释是应用清单(Manifest意思是货单),每个应用的根目录中都必须包含一个,并且文件名必须为AndroidManifest。这个文件中包含了APP的配置信息,系统需要根据里面的内容运行APP的代码,显...
    99+
    2023-08-18
    android android studio ide java
  • 详解BadTokenException报错解决方法
    线上出现了如上的 crash,第一解决反应是在 show dialog 之前做个 isFinish 和 isDestroyed 判断,当我翻开代码正要解决时,我惊了,原来已经做过了...
    99+
    2022-11-12
  • 详解SQL报错盲注
    目录一、SQL报错函数详解二、SQL报错盲注payload构造1、updateXML语句构造思路2、查询当前数据库3、查询表名4、查询列名5、查询字段名6、查询数据今天继续给大家介绍linux运维相关知识,本文...
    99+
    2022-07-22
    SQL报错盲注 SQL盲注
  • Python生成图文并茂的PDF报告的方法详解
    目录安装第三方库模块导入封装不同内容对应的函数生成报告reportlab是Python的一个标准库,可以画图、画表格、编辑文字,最后可以输出PDF格式。它的逻辑和编辑一个word文档...
    99+
    2022-11-11
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作