OSPF详细介绍

 ospf的特点:       

         OSPF(Open Shortest Path First,开放最短路径优先)是IETF开发的一个基于链
状态的内部网关协议,其协议号89。它具有以下特点:
        *支持较大规模的网络:OSPF协议无路由跳数限制,所以其适应范围广,支持网络
模更大。在特定的组网环境下,OSPF单区域甚至可支持几十台路由器。
         *组播触发式更新:0SPF协议在收敛完成后,会以触发方式发送拓扑变化的信息给其它路由器,从而占用了较少的链路带宽;同时,在某些类型的链路上以组播方式发送协议报文,减少对其他设备的干扰。
         *收敛速度快:在网络的拓扑结构发生变化后,0SPF会立即发送更新报文,从而使拓扑变化很快扩散到整个自治系统;同时,0SPF采用周期较短的 HeI1o报文来维护邻居状态。
          *以开销(Cost)作为度量值:0SPF 协议在设计时,就考虑到了链路带宽对路由度量值的影响。0SPF 采用链路开销作为度量值,而链路开使与链路带宽成反比,即带宽越高,开销越小。这样,OSPF选路主要基于带宽因素。
           *协议设计避免路由环路:由于OSPF 根据收集到的链路状态用最短路径树算法计算路由,从算法本身保证了不会生成自环路由。
           *应用广泛:目前在互联网有大量的应用实例,是使用最广泛的IGP之一

在采用周期较短的hello报文来维护邻居关系中:p2p/bradcast:hello报文发送间隔为10s。p2mp/nbma:hello报文间隔30s。

开销配置方式:1,在接口视图下直接配置开销值   2,配置接口的参考带宽

spf算法的前提:一个区域内所有的路由器的数据库要变成同步一模一样的。所有意味着每台路由器对区域内的拓扑结构有着非常详细了解,这是spf算法避免产生环路的原因。

ospf三张表:

1)3张表:邻居表、拓扑表、路由表。
OSPF 协议的工作过程包含了邻居发现、路由交换、路由计算、路由维护等阶段。这些过程中主要涉及到以下3张表:
            *邻居表:运行OSPF 协议的路由器以组播方式(目的地址224.0.0.5)发送hello报文来发现邻居。收到 Hello报文的邻居路由器检查报文中所定义的参数,如果双方一致就会形成邻居关系。邻居表会记录所有的建立了邻居关系的路由器,包括相关描述和邻居状态。路由器会定时的向自己的邻居发送 He11o报文,如果在一定的周期内,没有收到邻居的回应报文,就认为邻居路由器已经失效将它从邻居表中删除。
             *链路状态数据库(LSDB):有时也被称作拓扑表。根据协议规定,运行OSPF协议的路由器之间并不是交换路由表,而是交换彼此对于链路状态的描述信息。交换完成之后,所有同一区域的路由器的拓扑表中都具有当前区域的所有链路状态信息,并且都是一致的。
             *路由表:运行0SPF 协议的路由器在获得完整的链路状态描述之后,运用spf算法计算,算出来的最优路由加入ospf路由表中。
 

Router id:

Router ID(RID)是一个32比特无符号整数,在大部分使用环境下,都可以用来在一个自治系统中唯一地标识一台路由器,以区分其他路由器。路由器在启动OSPF协议之前,会首先检查Router ID的配置。

如果没有通过相关命令配置Router ID,路由器会按照以下顺序自动选择一个 Router ID:
      *如果存在配置 IP 地址的Loopback 接口,则选择Loopback 接口地址中最大的作为Router ID;
      *如果没有配置IP地址的Loopback 接口,则从其他接口的 IP地址中选择最大的作为Router ID(不考虑接口的up/down状态)。
一般情况下,建议配置Loopback 接口,并且将 Loopback 接口的IP地址配置为路由器的Router ID。

0SPF路由器类型: 

根据其在 AS中的不同位置,OSPF 路由器可以分为以下四类:
0区域内路由器(Internal Router):该类路由器的所有接口都属于同一个 OSPF
区域。
        •区域边界路由器(ABR,Area Border Router):该类路由器可以同时属于两个以上的区域,但其中一个必须是骨干区域。ABR用来连接骨干区域和非骨干区域,它与骨干区域之间既可以是物理连接,也可以是逻辑上的连接。
       • 骨干路由器(Backbone Router):该类路由器至少有一个接口属于骨干区域。
因此,所有的ABR和位于AreaO的内部路由器都是骨干路由器。
       •自治系统边界路由器(ASBR,Autonomous System Border Router):与其他AS交换路由信息的路由器称为ASBR。ASBR并不一定位于AS的边界,它有可能是区域内路由器,也有可能是ABR。只要一台 OSPF路由器引入了外部路由的信息,它就成为ASBR。

ospf的网络类型:

OSPF 根据链路层协议类型将网络分为下列四种类型:
      *Broadcas:当链路层协议是 Ethernet、FDDI 时,OSPF 缺省认为网络类型是在该类型的网络中,通常以组播形式(224.0.0.5 和224.0.0.6)发送协议报文。    

      *NBMA(Non-Broadcast titi-Access,非广播多点可达网络):当链路层协议是帧中继、ATM或X25时,OSPF 缺省认为网络类型是NBMA。在该类型的网络中,以单播形式发送协议报文。

      *P2MP(Point-to-MultiPoint,点到多点):没有一种链路层协议会被缺省的认为是P2MP 类型。点到多点必须是由其他的网络类型强制更改的。常用做法是将NBMA改为点到多点的网络。在该类型的网络中,以组播形式(224.0.0.5)发送协议报文。

      *P2P(Point-to-Point,点到点):当链路层协议是PPP、HDLC 时,OSPF缺省认为网络类型是 P2P以组播形式(224.0.0.5)发送协议报文。

OSPF五种报文:

        *He1lo报文:周期性发送,用来发现和维持0SPF邻居关系。内容包括一些定时器的数值、DR(Designated Router,指定路由器)、BDR(Backup Designated Router,备份指定路由器)以及自己已知的邻居。

        *DD(Database Description,数据库描述)报文:描述了本地 LSDB中每一条LSA的摘要信息,用于两台路由器进行数据库同步。

        *LSR (Link State Request,链路状态请求)报文:向对方请求所需的LSA。两台组播路由器互相交换 DD报文之后,得知对端的路由器有哪些LSA 是本地的LSDB所缺少的,这时需要发送LSR 报文向对方请求所需的 LSA。内容包括所需要的LSA的摘要。

        *LSU(Link State Update,链路状态更新)报文:向对方发送其所需要的LSA组播。 

        *LSAck (Link State Acknowledgment,链路状态确认)报文:用来对收到的 LS进行确认。内容是需要确认的LSA的 Header(一个报文可对多个LSA进行确认)。

DR/BDR的选举

          采用 DR/BDR 建立邻接关系,可以降低需要维护的邻接关系数量。DR和BDR是由同一网段中所有的路由器根据路由器优先级、Router id通过Hello 报文选举出来的,只有优先级大于0的路由器才具有选举资格。
         进行 DR/BDR 选举时每台路由器将自己选出的 DR 写入Hello报文中,发给网段上的每台运行 OSPF 协议的路由器。当处于同一网段的两台路由器同时宣布自己是DR时,路由器优先级高者胜出。如果优先级相等,则Router ID大者胜出。如果一台路由器的优先级为0,则它不会被选举为 DR 或 BDR。
此外,DR/BDR的选举机制还具有以下特点:
只有在广播或NBMA类型接口才会选举 DR,在点到点或点到多点类型的接口上不需要选举 DR。

ospf状态机:

OSPF 协议使用邻居状态机来表示邻居路由器当前的状态。主要有以下几种;

         *Dom:在上一个邻居失效时间内,在当前的接口没有收到任何 He11o报文。这个状态是状态机的第一个稳定状态。

        *Attempt: 这个状态只存在于NBMA网络中。当一台设备试图通过He1lo报文去联系自己的邻居,但是还没有收到回应的报文时,就将它的邻居设置为Attempt 状态

         *Init:一台路由器收到了其他路由器发送的He11o报文,但是在He1lo中的邻居列表中没有看到自己的 Router ID。

         *2-way:一台路由器收到了其他路由器发送的He1lo报文,并且在Hello中的邻居列表中已经看到自己的Router ID。这是状态机的第一个稳定状态。

        *Exstart:一台路由器和它的邻居在这个状态协商主从关系,并且由 Master 路出器决定 DD
交换的序列号。交互第一个D0报文,协商主从。

        *Exchange:在这个状态时,路由器邻居之间交换 DD报文。传递本地所有LSA摘要。

        *Loading:路由器比较 DD报文和LSDB,如果发现 DD存在 LSDB中不具有的LSA,向邻居发送LSR请求缺失的LSA,邻居收到LSR会响应LSU。

         *Full:在这个状态,路由器结束更新自己的LSDB,具有完整的LSDB。这是状态的第三个稳定状态。

LSDB更新:

1)系统会首先在LSDB中查找此条LSA.如果不能查到,就认为是一条新的LSA,加入 LSDB。

2)如果查到了此条LSA,那么比较这条 1SA的序列号。如果收到的新LSA序列号更大,那么认为这条LSA有了更新,将这条LSA的计时器进行刷新,同时更新序列号。

3)如果收到的新LSA 序列号等于或者小于LSDB中LSA的序列号,那么就认为收到的LSA 可能是由于网络拥塞或者重传的陈旧的LSA,不会对 LSDB的LSA 做任何操作,并且将收到的 LSA 更新报文丢弃。

OSPF 报文定时器:

          *缺省情况下,P2P、Broadcast 类型接口发送 He110报文的时间间隔为10秒;P2MP、NBMA 类型接口发送 Hel1o报文的时间间隔为30 秒。Hell。定时器的值越小,发现网络拓扑改变的速度越快,对系统资源的开销也就越大。同一网段上的接口的 Hel1o定时器的值必须相同。
          *缺省情况下,P2P、Broadcast 类型接口的OSPF邻居失效的时间为40秒;P2MP、NBMA 类型接口的 OSPF 邻居失效的时间为120秒。邻居失效时间值至少应为He11o计时器值的4 倍,同一网段上的接口的邻居失效时间也必须相同。

ospf虚连接:

         *虚连接:如果出现骨干区域被分割,或者非骨干区域无法和骨干区域保持联通的问题,通过配置OSPF 虚连接(VirtualLink)予以解决。
         *虚连接是指在两台 ABR之间通过一个非骨干区域而建立一条逻辑连接通道。它的两端必须是ABR,而且必须在两端同时配置方可生效。为虚连接两端提供一条非骨干区域内部路由的区域称为传输区域(Transit Area)。虚连接相当于在两个 ABR之间形成了一个点到点的逻辑连接。

OSPF的LSA:

Type1 LSA (Router LSA)
             第一类LSA,即Router LSA,描述了区域内部与路由器直连的链路的信息。这种类型的LSA每一台路由器都会产生,它的内容中包括了这台路由器所有直连的链路类型和链路开销等信息,并且向它的邻居传播。这台路由器的所有链路信息都放在一个Router LSA内,并且只在此台路由器始发的区域内传播。

Type2 LSA (Network LSA)
            第二类LSA,即Network LSA,是由DR产生,它描述的是连接到一个特定的广播网络
或者NBMA网络的所有路由器的链路状态。
这条 LSA内描述其在该网络上连接的所有路由器以及网段掩码信息,记录了这一网段上所有路由器的Router ID,甚至包括 DR 自己的Router ID。Network LSA 也只在区域内传播。由于Network LSA 是由 DR产生的描述网络信息的LSA,因此对于P2P和P2MP网络类型的链路,不产生Network LSA。

Type3 LSA (Summary LSA)
           第三类 LSA,即Summary LSA,是由 ABR生成,将所连接区域内部的链路信息以子网的形式传播到相邻区域。Summary LSA 实际上就是将区域内部的Type1和Type2 的LSA信息收集起来以路由子网的形式进行传播。
在第三类LSA 中,由于直接传递的是路由条目,而不是链路状态描述,因此,路由器在处理第三类LSA的时候,并不是运用SPF 算法进行计算,而且直接作为路由条目加入路由表中。

Type4 LSA (ASBR Summary LSA)
          第四类LSA,即 ASBR Summary LSA,是由 ABR生成,格式与第三类LSA 相同,描述的目标网络是一个ASBR的Router ID。它不会主动产生,触发条件为ABR收到一个第五类LSA,意义在于让区域内部路由器知道如何到达 ASBR。

5) Type5 LSA (AS External LSA)
         第五类LSA,即AS External LSA,是由 ASBR产生,描述到AS外部的路由信息。它一旦生成,将在整个OSPF 系统内扩散,除非个别特殊区域做了相关配置。AS外部的路由信息来源一般是通过路由引入的方式,将外部路由在OSPF区域内部发布。
第五类LSA 和第三类LSA非常类似,传递也都是路由信息,而不是链路状态信息。同样的,路由器在处理第五类LSA的时候,也不会运用SPF算法,而是作为路由条目加入路由表中。

第五类LSA 携带的外部路由信息可以分为两种:
         第一类外部路由:是指接收路由的可信程度较高,并且和OSPF自身路由的开销具有可比性,所以到第一类外部路由的开销等于本路由到相应的 ASBR的开销与 ASBR到该路由目的地址的开销之和。
         第二类外部路由:是指接收路由的可信度比较低,所以OSPF协议认为从ASBR到自治系统之外的开销远远大于在自治系统之内到达 ASBR的开销。所以计算路由开销时将主要考虑前者,即到第二类外部路由的开销等于ASBR 到该路由目的地址的开销。如果计算出开销值相等的两条路由,再考虑本路由器到相应的ASBR的开销。部路由。默认情况下,引入0SPF协议的都是第二类外部路由。
在第五类 LSA中,专门有一个字段E位标识引入的是第一类外部路由还是第二类外

6) Type7 LSA (nass LSA)

LSA的类型及作用
LSA类型                                      LSA作用
Router-LSA (Type1)                    每个路由器都会产生,直连网段描述了路由器的链路状态和开销,在发布路由器所 属的区域内传播。
Router-LSA (Type2)                    由DR产生,描述本网段的链路状态,在DR所属的区域内传  播。
Network-summary-LSA(Type3)  由ABR产生,描述区域内某个网段的路由,并通告给发布或  接收此LSA的非Totally STUB或NSSA区域。
ASBR-summa ry-LSA(Type4)    由ABR产生,描述到ASBR的路由,通告给除ASBR所在区域的其他区域。   
AS-external-LSA(Type5)            由ASBR产生,描述到AS外部的路由,通告到所有的区域(除了STUB区域和NSSA区域)。
NSSA LSA ( Type7)                    由ASBR产生,描述到AS外部的路由,仅在NSSA区域内传  播。

ospf选路:

OSPF 内部路由的协议优先级为10,外部路由的协议优先级为150。
如果都是 OSPF 路由,那么将按照以下的原则进行原则:
第1步:按照路由类型的优先级选择,优先级从高到低的顺序依次为:
区域内路由(Intra Area)
区域问路由(Inter Area)
第一类外部路由(Type1 External)计算AS内部lest
第二类外部路由(Type2 ExternaI)不计算AS内部lst
第2步:在类型相同的情况下,选择路由开销值较小的路由。
第3步:如果路由类型和链路开销都相等,那么这两条或者多条路由就形成等价路由。

ospf特殊区域:

特殊区域指人为定义的一些区域,他们在逻辑中一般位于OSPF区域的边缘,只与骨干区域相邻连,骨干区域不能为特殊区域

Stub区域:允许1类,2类,3类的LSA存在,禁止4类和5类LSA,会自动下发默认路由

totally stub区域:允许1类,2类LSA的存在,禁止3类,4类,5类LSA,会自动下发默认路由

NSSA区域:允许1类,2类,3类LSA存在,禁止4类和5类,引入的外部路由会以7类LSA的方式存在,并且需要手动下发默认路由

totally NSSA:允许1类,2类LSA的存在,禁止3类,4类,5类LSA引入的外部路由会以7类LSA的方式存在,会自动下发默认路由

ospf路由聚合:

在ABR聚合中可以在OSPF的聚合有两种:
            *ABR 聚合:ABR向其它区域发送路由信息时,以网段为单位生成Type3 LSA。如果该区域中存在一些连续的网段,则可以将这些连续的网段聚合成一个网段。这样ABR末实现路由过滤只发送一条聚合后的LSA,所有属于聚合网段范围的LSA将不再会被单独发送出去,这样可减少其它区域中LSDB的规模。
          *ASBR 聚合:配置引入路由聚合后,如果本地路由器是自治系统边界路由器ASBR,将对引入的聚合地址范围内的Type5 LSA进行聚合。当配置了NSSA区域时,还可以对引入的聚合地址范围内的Type7 LSA进行聚合。
路由聚合也可以用于过滤路由。通过聚合后不发布实现。

ospf路由过滤:

1. 基于访问控制列表 (ACL) 的过滤:

- 使用标准或扩展的访问控制列表来过滤特定的前缀。

 2. 基于策略路由的过滤:

- 使用 `filter-policy` 命令结合 IP 前缀列表 (`ip-prefix`) 或路由策略 (`route-policy`) 来过滤路由。

3. 在引入其他协议的路由时过滤:

- 当从其他路由协议引入路由到 OSPF 时,可以使用 `import-route` 命令加上 `route-map` 来指定过滤规则。

4. 在 ABR 上过滤区域间的路由:

- 使用 `summary-address` 命令来汇总路由并抑制更具体的前缀。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值