首页 > 其他分享 >02、OSPFv3基本原理

02、OSPFv3基本原理

时间:2024-04-15 22:58:37浏览次数:32  
标签:02 LSA 基本原理 报文 OSPFv3 ABR 区域 路由

OSPFv3基本原理 

OSPFv3是运行于IPv6的OSPF路由协议(RFC2740),它在OSPFv2基础上进行了增强,是一个独立的路由协议。

  • OSPFv3在Hello报文、状态机、LSDB、洪泛机制和路由计算等方面的工作原理和OSPFv2保持一致。

  • OSPFv3协议把自治系统划分成逻辑意义上的一个或多个区域,通过LSA(Link State Advertisement)的形式发布路由。

  • OSPFv3依靠在OSPFv3区域内各设备间交互OSPFv3报文来达到路由信息的统一。

  • OSPFv3报文封装在IPv6报文内,可以采用单播和组播的形式发送。

OSPFv3报文类型

报文类型

报文作用

Hello报文

周期性发送,用来发现和维持OSPFv3邻居关系。

DD报文(Database Description packet)

描述了本地LSDB的摘要信息,用于两台设备进行数据库同步。

LSR报文(Link State Request packet)

用于向对方请求所需的LSA。

设备只有在OSPFv3邻居双方成功交换DD报文后才会向对方发出LSR报文。

LSU报文(Link State Update packet)

向对方发送其所需要的LSA。

LSAck报文(Link State Acknowledgment packet)

用来对收到的LSA进行确认。

LSA类型

LSA类型

LSA作用

Router-LSA(Type1)

设备会为每个运行OSPFv3接口所在的区域产生一个LSA,描述了设备的链路状态和开销,在所属的区域内传播。

Network-LSA(Type2)

由DR产生,描述本链路的链路状态,在所属的区域内传播。

Inter-Area-Prefix-LSA(Type3)

由ABR产生,描述区域内某个网段的路由,并通告给其他相关区域。

Inter-Area-Router-LSA(Type4)

由ABR产生,描述到ASBR的路由,通告给除ASBR所在区域的其他相关区域。

AS-external-LSA(Type5)

由ASBR产生,描述到AS外部的路由,通告到所有的区域(除了Stub区域和NSSA区域)。

NSSA LSA(Type7)

由ASBR产生,描述到AS外部的路由,仅在NSSA区域内传播。

Link-LSA(Type8)

每个设备都会为每个链路产生一个Link-LSA,描述到此Link上的link-local地址、IPv6前缀地址,并提供将会在Network-LSA中设置的链路选项,它仅在此链路内传播。

Intra-Area-Prefix-LSA(Type9)

每个设备及DR都会产生一个或多个此类LSA,在所属的区域内传播。

  • 设备产生的此类LSA,描述与Route-LSA相关联的IPv6前缀地址。
  • DR产生的此类LSA,描述与Network-LSA相关联的IPv6前缀地址。

设备类型

图1 设备类型

表1 设备的类型及含义

设备类型

含义

区域内设备(Internal Router)

该类设备的所有接口都属于同一个OSPFv3区域。

区域边界路由器ABR(Area Border Router)

该类设备可以同时属于两个以上的区域,但其中一个必须是骨干区域。

ABR用来连接骨干区域和非骨干区域,它与骨干区域之间既可以是物理连接,也可以是逻辑上的连接。

骨干路由器(Backbone Router)

该类设备至少有一个接口属于骨干区域。

因此,所有的ABR和位于Area0的内部路由器都是骨干路由器。

自治系统边界路由器ASBR(AS Boundary Router)

与其他AS交换路由信息的路由器称为ASBR。

ASBR并不一定位于AS的边界,它可能是区域内路由器,也可能是ABR。

OSPFv3路由类型

AS区域内和区域间路由描述的是AS内部的网络结构,AS外部路由则描述了应该如何选择到AS以外目的地址的路由。OSPFv3将引入的AS外部路由分为Type1和Type2两类。

表2中按优先级从高到低顺序列出了路由类型。

表2 OSPFv3路由类型

路由类型

含义

Intra Area

区域内路由。

Inter Area

区域间路由。

第一类外部路由(Type1 External)

这类路由的可信程度高一些,所以计算出的外部路由的开销与自治系统内部的路由开销是相当的,并且和OSPFv3自身路由的开销具有可比性。

到第一类外部路由的开销=本路由器到相应的ASBR的开销+ASBR到该路由目的地址的开销。

第二类外部路由(Type2 External)

这类路由的可信度比较低,所以OSPFv3协议认为从ASBR到自治系统之外的开销远远大于在自治系统之内到达ASBR的开销。

所以,OSPFv3计算路由开销时只考虑ASBR到自治系统之外的开销,即到第二类外部路由的开销=ASBR到该路由目的地址的开销。

区域类型

表3 OSPFv3区域类型

区域类型

作用

Totally Stub Area

允许ABR发布的Type3缺省路由,不允许自治系统外部路由和区域间的路由。

Stub Area

和Totally Stub区域的不同在于,该区域允许区域间路由。

NSSA Area

和Stub区域的不同在于该区域允许自治系统外部路由的引入,由ASBR发布Type7 LSA通告给本区域,这些Type7 LSA在ABR上转换成Type5 LSA,并且泛洪到整个OSPFv3域中。

OSPFv3支持的网络类型

OSPFv3根据链路层协议类型,将网络分为如表4所列四种类型。

表4 OSPFv3网络类型

网络类型

含义

广播类型(Broadcast)

当链路层协议是Ethernet、FDDI时,缺省情况下,OSPFv3认为网络类型是Broadcast。

在该类型的网络中:

  • 通常以组播形式发送Hello报文、LSU报文和LSAck报文。其中,FF02::5为OSPFv3路由器的预留IPv6组播地址;FF02::6为OSPFv3 DR/BDR的预留IPv6组播地址。

  • 以单播形式发送DD报文和LSR报文。

NBMA类型(Non-broadcast multiple access)

当链路层协议是帧中继、ATM或X.25时,缺省情况下,OSPFv3认为网络类型是NBMA。

在该类型的网络中,以单播形式发送协议报文(Hello报文、DD报文、LSR报文、LSU报文、LSAck报文)。

点到多点P2M类型(Point-to-Multipoint)

没有一种链路层协议会被缺省的认为是Point-to-Multipoint类型。点到多点必须是由其他的网络类型强制更改的。常用做法是将非全连通的NBMA改为点到多点的网络。

在该类型的网络中:

  • 以组播形式(FF02::5)发送Hello报文;

  • 以单播形式发送其他协议报文(DD报文、LSR报文、LSU报文、LSAck报文)。

点到点P2P类型(point-to-point)

当链路层协议是PPP、HDLC和LAPB时,缺省情况下,OSPFv3认为网络类型是P2P。

在该类型的网络中,以组播形式(FF02::5)发送协议报文(Hello报文、DD报文、LSR报文、LSU报文、LSAck报文)。

Stub区域

Stub区域是一些特定的区域,Stub区域的ABR不传播它们接收到的自治系统外部路由,在这些区域中路由器的路由表规模以及路由信息传递的数量都会大大减少。

Stub区域是一种可选的配置属性,但并不是每个区域都符合配置的条件。通常来说,Stub区域位于自治系统的边界,是那些只有一个ABR的非骨干区域。

为保证到自治系统外的路由依旧可达,该区域的ABR将生成一条缺省路由,并发布给Stub区域中的其他非ABR路由器。

配置Stub区域时需要注意下列几点:

  • 骨干区域不能配置成Stub区域。

  • 如果要将一个区域配置成Stub区域,则该区域中的所有路由器必须都要配置成Stub路由器。

  • Stub区域内不能存在ASBR,即自治系统外部的路由不能在本区域内传播。

  • 虚连接不能穿过Stub区域。

OSPFv3路由聚合

通过路由聚合,可以减少路由信息,从而减小路由表的规模,提高设备的性能。

OSPFv3路由聚合过程如下:

  • ABR聚合

    ABR路由聚合将具有相同前缀的路由信息聚合在一起,只发布一条路由到其它区域。

    ABR在发送路由信息到别的区域的过程中,基于IPv6地址前缀生成type3 LSA。如果一些连续的IPv6地址前缀在某个区域内存在并且ABR聚合功能是使能的,这些IPv6地址前缀聚合成一个地址前缀。 对于前缀相同的多条LSA,区域边界路由器(ABR)只发送一条聚合的LSA。属于命令指定网段的LSA不单独传输。

  • ASBR聚合

    ASBR路由聚合将具有相同前缀的引入路由聚合在一起,只发布一条路由到其它区域。

    使能ASBR路由聚合功能后,自治系统边界路由器将处于聚合地址范围内的引入的type5 LSA进行聚合。聚合后,自治系统边界路由器不会为配置范围内所有的前缀生成单独的type5 LSA,相反,自治系统边界路由器只为聚合的前缀生成单一的type5 LSA。对于NSSA区域,自治系统边界路由器将处于聚合地址范围内的多条引入的type7 LSA聚合成一条type7 LSA。 

OSPFv3虚连接

虚连接(Virtual link)是指在两台ABR之间通过一个非骨干区域建立的一条逻辑上的连接通道。

  • 虚连接必须在两端同时配置方可生效。

  • 为虚连接两端提供一条非骨干区域内部路由的区域称为传输区域(Transit Area)。

在实际应用中,可能会因为各方面条件的限制,无法满足所有非骨干区域与骨干区域保持连通的要求。这时可以通过配置OSPFv3虚连接予以解决。

虚连接相当于在两个ABR之间形成了一个点到点的连接,因此,虚连接的两端和物理接口一样可以配置接口的各参数,如发送Hello报文间隔等。

图2 OSPFv3虚连接

图2所示,通过虚连接,两台ABR之间直接传递OSPFv3报文信息,他们之间的OSPFv3设备只是起到一个转发报文的作用。由于OSPFv3协议报文的目的地址不是这些设备,所以这些报文对于他们而言是透明的,只是当作普通的IP报文来转发。

OSPFv3多进程

OSPFv3支持多进程,在同一台设备上可以运行多个不同的OSPFv3进程,它们之间互不影响,彼此独立。不同OSPFv3进程之间的路由交互相当于不同路由协议之间的路由交互。

设备的一个接口只能属于某一个OSPFv3进程。

 

标签:02,LSA,基本原理,报文,OSPFv3,ABR,区域,路由
From: https://www.cnblogs.com/laixufei/p/18137083

相关文章

  • 04、OSPFv3与BGP联动
    OSPFv3与BGP联动 当有新的路由器加入到网络中,或者路由器重启时,可能会出现在BGP收敛期间内网络流量丢失的现象。这是由于IGP收敛速度比BGP快而造成的。通过使能OSPFv3-BGP联动特性可以解决这个问题。在BGP网络中,如果一台路由器从故障中恢复正常,其BGP会重新收敛,这段时间内可能......
  • 【专题】中国纯电新能源汽车-市场发展和用车报告2024年报告合集PDF分享(附原数据表)
    原文链接:https://tecdat.cn/?p=35878原文出处:拓端数据部落公众号2023年,纯电车型在新能源市场中占据高达七成的市场份额,尽管技术挑战仍然存在。插混及增程车型在续航里程和驾驶体验上取得显著进步,但纯电车型仍占据主导地位。预计未来几年,插混及增程车型市场份额将持续攀升,为市场......
  • 02、IS-IS IPv6与IS-IS IPv4的差异
    IS-ISIPv6与IS-ISIPv4的差异IS-IS最初是为OSI网络设计的一种基于链路状态算法的动态路由协议。之后为了提供对IPv4的路由支持,扩展应用到IPv4网络,称为集成IS-IS。随着IPv6网络的建设,同样需要动态路由协议为IPv6报文的转发提供准确有效的路由信息。IS-IS路由协议结合自身具有......
  • 01、OSPFv3简介
    OSPFv3简介介绍OSPFv3的定义和作用。定义OSPF(OpenShortestPathFirst)是IETF组织开发的一个基于链路状态的内部网关协议(InteriorGatewayProtocol)。目前针对IPv4协议使用的是OSPFVersion2,针对IPv6协议使用OSPFVersion3。OSPFv3是OSPFVersion3的简称。OSPFv3......
  • [题解][2021-2022年度国际大学生程序设计竞赛第10届陕西省程序设计竞赛] Type The Str
    题目描述给定n个字符串,有以下几种操作:打出一个字符,花费1。删除一个字符,花费1。复制并打出一个之前打出过的字符串,花费k。求打出所有n个字符串的最小花费。(注意,打出顺序和字符串输入的顺序不必相同)题解显然,操作3需要算字符串的最长公共子序列来处理。这个问题可以转换为......
  • 20211314实验二-密码引擎-3-sdf接口
    任务详情两人一组完成下面任务分析代码接口和智能钥匙的接口的异同编译运行附件中代码,提交运行结果截图修改test.c完成包含小组内成员的学号姓名的文件的sm3hash运算,sm4加密解密,提交代码和运行结果截图。完成完成包含小组内成员的学号姓名的文件的签名验签名,提交代码和运行......
  • 2024.4.15每日收获之变量赋初值
    今天组长临下班前给了个新任务,让我去消除代码测评中的5D警告,5D指的是ProcedurecontainURdataflowanomalies,翻译过来就是存在UR(变量未赋初值就使用)数据流异常。这个警告其实是测评网址的问题,未赋初值,但是在单片机清ram时,已经对存放在ram中所有的全局变量清零了,只是没有在代码......
  • [题解][2021-2022年度国际大学生程序设计竞赛第10届陕西省程序设计竞赛] Hash
    题目描述给定字符串T,要求求字符串S,满足以下条件:S是T的前缀S和T运行某段代码的哈希值相同(代码见下)T只包含小写字母S和T的长度差不超过50哈希代码://LanguageC++14longlongmod=5999993;longlonggethas(strings){longlongret=0;for(charc:s)ret=......
  • 1022 D进制的A+B
    给定的范围是2^30-1,如果是转化成2进制,也得30位,所以不管用int或者longlong都是没办法接收的(int大概是9位,longlong是19位)只能用数组/栈了。#include<bits/stdc++.h>usingnamespacestd;#definelllonglongvector<int>tentoD(lla,intd){//1到10进制 vector<int>re......
  • 【2024蓝桥B组】小球反弹
    小球反弹题目题目分析一个比较绕脑的数学问题。。。首先:小球能过从左上角出发,然后回到左上角,那么其x方向的路径长度则为2k1x,y方向的路径长度则为2k2y。其次,我们得知其x与y的速度比值为15:17,由公式:时间*速度=路程可得:t*dx=2k1x,t*dy=2k2y然后,通过简单的数学变换,我们可以得出:k......