华为-路由协议之ospf 概念篇

一 : OSPF协议

****OSPF全称是开放式最短路径优先。是IETF开发的一种链路状态路由协议,使用基于带宽的度量值。采用SPF算法计算路由,从算法上保证了无路由环路。通过邻居关系维护路由,避免定期更新对带宽进行的消耗。路由更新效率高,网络收敛快,适用大中型网络。

**与静态路由相比:OSPF依靠报文传输路由信息,保密性差,而且传输报文会占用线路带宽。但静态路由配置繁琐且容易出错,不适用大型网络。当网络的拓扑结构和链路状态发生变化时,路由器中路由信息需要大范围地调整。

**与rip协议相比:OSPF使用基于带宽的度量值,选路更加科学。当路由条目更新时,仅发送更新路由(rip发送整个路由表,且每隔30秒发送一次)减小了线路带宽的消耗,收敛速度快。(此处收敛是指当网络发生变化时的收敛,网络刚运行OSPF时,网络中的各个路由器学习到路由的时间可能要多于RIP,原因是路由器间选举DR,BDR需要40s,所以如果想加快网络初始化收敛速度,我们常常把线路配置成点到点线路)

二、OSPF基本特点:

1.OSPF的特性

OSPF作为基于链路状态的协议,能够解决RIP所面临的诸多问题。此外,OSPF还有以下优点:
OSPF采用组播形式收发协议报文,这样可以减少对其它不运行OSPF路由器的影响。
OSPF支持无类型域间选路(CIDR)。
OSPF支持对等价路由进行负载分担。
OSPF支持报文认证。

2、Router-ID:

OSPF Router-ID用于在OSPF domain中唯一地表示一台OSPF路由器,从OSPF网络设计的角度,我们要求全OSPF域内,禁止出现两台路由器拥有相同的Router-ID。
OSPF Router-ID的设定可以通过手工配置的方式,或者通过协议自动选取的方式。当然,在实际网络部署中,强烈建议手工配置OSPF的Router-ID,因为这关系到协议的稳定。

3、OSPF Cost:

OSPF使用cost“开销”作为路由度量值。
OSPF接口cost=100M /接口带宽,其中100M为OSPF的参考带宽(reference-bandwidth),可以修改。
每一个激活OSPF的接口都有一个cost值。
一条OSPF路由的cost由该路由从起源一路到达本地的所有入接口cost值的总和。在这里插入图片描述
华为配置接口COST值
int G 0/0/0
OSPF COST 2

4、OSPF进程号(Processor ID)

OSPF进程号的取值范围是1-65535,只具有本地意义,用于在一台网络设备上标识OSPF进程。华为的网络产品支持运行多个OSPF进程,每一个OSPF进程需指定特定的进程号加以区分。
由于进程号只具有本地意义,因此两台直连的设备,如果要建立OSPF邻接关系,则并不要求二者使用相同的进程号。

5、 通配符掩码Wildcard-mask

这里涉及到一个知识点,反掩码
通配符是一个32比特长度的数值,用于指示IP地址中,哪些比特位需要严格匹配,哪些比特位则无所谓。
通配符通常采用类似网络掩码的点分十进制形式表示,但是含义却与网络掩码完全不同。
在这里插入图片描述
在这里插入图片描述

三 :OSPF的三个阶段

1. 邻居建立阶段:

OSPF路由器发送HELLO报文,建立和维护邻居关系。

2.路由交换阶段:

OSPF路由器发送DBD报文描述自己的LSDB,再用LSR(请求特定的LSA的报文
),LSU(承载LSA的报文)交换自己缺少的LSA,使得双方的LSDB达到一致,即所有路由器知道网络的全局拓扑关系图。双方LSDB一致的标志是邻居达到FULL状态。

3.路由计算阶段:

通过SPF算法计算出去往各个网段的最佳路由。并添加到路由表中。

四:OSPF 关系的建立

1 .OSPF邻居关系的建立(宏观)

OSPF之所以能被应用广泛首先要理解它的特点以及LSA和LSDB的意思,网络中每台路由将自己搜寻到的LSA放入到LADB(链路状态数据库)中,从而路由器才能有下一步的spf计算的过程,所以核心思想一定要掌握。
在这里插入图片描述

2.OSPF邻居关系的建立(细节)结合ospf的七个状态来讲述如何建立

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里在EX-start中双方交互DBD报文,这里的报文内部没有lac,只有routerid,用来比较主从关系,这里不要跟DR和BDR的选举混淆了

OSPF邻居关系的建立(查看邻近路由表信息)
Display ospf peer
在这里插入图片描述

五 :OSPF的基本工作机制

1、OSPF网络类型:

OSPF支持的网络类型
(1)点到点网络
(2)广播型多路访问网络
(3)非广播型多路访问(NBMA)网路
(4)P2MP网络
(5)常见链路层协议对应的默认网络类型:
网络类型 常见链路层协议
Point-to-point ------ PPP链路;Lapb链路;HDLC链路;
Broadcast ------- 以太网链路;
NBMA ----- 帧中继链路;ATM链路
P2MP ------- 需手工指定

2、DR、BDR:

在广播多路访问网络(Multi Access)中,所有的路由器的接口都是相同网段,这些接口都将两两建立OSPF邻居关系,这就意味着,网络中共有:
n(n-1)/2
这么多个OSPF邻居关系,维护如此多的邻居关系不仅仅额外消耗设备资源,更是增加了网络中LSA的泛洪数量。

为减小多路访问网络中的 OSPF 流量,OSPF 会在每一个MA网络(多路访问网络)选举一个指定路由器 (DR) 和一个备用指定路由器 (BDR)。
DR选举规则:最高OSPF接口优先级拥有者被选作DR,如果优先级相等(默认为1),具有最高的OSPF Router-ID的路由器被选举成DR,并且DR具有非抢占性。
1)wait计时原则
在这里插入图片描述
2)组播地址
路由器R3用224.0.0.6通知DR及BDR。
DR、BDR监听224.0.0.6这一组播地址。
在这里插入图片描述
在这里插入图片描述
修改优先级,人为参与DR/BDR选举
修改优先级,使得R1为DR
Ospf dr-priority 255(这里的255是最大值)
在这里插入图片描述

3、OSPF area的概念

LSA泛洪严重,OSPF路由器的负担很大。
区域内部动荡会引起全网路由器的SPF计算。
LSDB庞大,资源消耗过多,设备性能下降,影响数据转发。
每台路由器都需要维护的路由表越来越大,单区域内路由无法汇总。
在这里插入图片描述
减少了LSA洪泛的范围,有效地把拓扑变化控制在区域内,达到网络优化的目的。
在区域边界可以做路由汇总,减小了路由表。
充分利用OSPF特殊区域的特性,进一步减少LSA泛洪,从而优化路由。
多区域提高了网络的扩展性,有利于组建大规模的网络 。

Area0为骨干区域,负责在非骨干区域之间中转由区域边界路由器归纳的链路状态通告信息。为了防止出现环路,OSPF要求所有的非骨干区域之间不能直接进行LSA的交互,而必须通过Area0骨干区域进行中转,因此所有的非骨干区域必须都与Area0“直接相连”
2)OSPF路由器的角色
在这里插入图片描述

六:OSPF 的5个报文组

HELLO报文:建立和维护邻居关系。包含hello头部和hello包.hell头中有:route id
,区域号,认证。hello包中有:hello间隔(10s),失效时间(40s),特殊区域标志。(注:形成邻居的条件:双向收发Hello报文,参数匹配(hello间隔,失效时间,认证,区域号,特殊区域标志)。在对方的hello报文中的邻居列表中有自身id,且为two
way状态,则表示建立了邻居关系。)
在这里插入图片描述
DBD报文:数据库描述包,描述数据库中有哪些LSA。DBD报文分为两个阶段,首先路由器发送DBD报文(不携带LSDB,带route id
和序列号)选出主从路由器,然后再发送带LSDB的DBD报文。

选举主从路由器的DBD报文。

在这里插入图片描述
在这里插入图片描述
注:DBD报文中的序列号是用来保障DBD报文的可靠性的,并且只有主路由器能决定序列号。当主路由器发现从路由器发送的DBD包中的序列号和自身发送的DBD包中的序列号一致时,则证明对方收到了主路由器发送的DBD报文,如果不一致,则证明没有收到,主路由器重新发送一份DBD报文。对于从路由器来说,接收到主路由器的DBD报文中的序列号一般要为自身发送的DBD报文中的序列号加一。
第三个DBA报文带 LSA头部
在这里插入图片描述
3.LSR报文:链路状态请求包,向邻居请求特定的LSA。
在这里插入图片描述
4.LSU报文:链路状态更新包,携带LSA。

在这里插入图片描述
5.LSACK报文:链路状态确认包,对收到的LSA进行确认。
在这里插入图片描述

七: OSPF的七种状态

down:初始状态。

init:互相发送Hello报文,hello报文中包含Router ID,AreaID,各种定时器,认证,DR信息,接口优先级等等。初始化状态即单向通信,A收到B的hello(或B收到A的hello)。

tow way:路由器收到对方的Hello包,网络中非DR,BDR路由器之间就是这种状态,也是一种稳态。 双方互相通信状态,彼此收到对方的hello,并且从hello包中读取信息,建立邻居关系。

exstart:确立主从关系,RID高的路由器成为主路由器,如果MTU值不匹配,将停留在此阶段。就是将要开始发送DBD,在发送之前确认谁先发,谁后发,他们自动协商,依靠router id,越大越优先。

exchange:主从关系确立后,开始交换DBD报文,LSDB同步的第一个阶段,主要建立LSDB的总体框架。

lading:加载DBD,发送LSR,通过更新LSU,LSA报文,交换相互缺少的DD报文,完成LSDB的同步。第二个阶段。收到DBD后进行比较是否相同(比较依据查看序列号),然后进行LSR、LSU的请求和更新

full:同步完成后,建立邻接关系。以后LSA的交换,用LSU报文进行。

八:OSPF多区域

划分多区域的目的:

减小了LSDB,降低了路由器的内存消耗并减轻了CPU SPF计算负担。
减小了LSA洪泛范围,有效地把拓扑变化控制在区域内,提高了 网络的稳定性。
在区域边界可以做路由汇总,减小了路由表,减轻了设备的数据转发负担。
提高了网络的拓展性,有利于组件大规模网络。

九:OSPF的六种LSA类型:

LSA1:每个OSPF路由器都会针对本区域产生一个LSA1,描述拓扑信息。
LSA2 :由DR产生的,补充说明类型LSA1,描述多路访问架构。描述一条链路上有哪些路由器。
LSA3:网络汇总。描述OSPF的区域间路由(在路由表中以 O IA 标识)。原LSA 1所描述的路由信息会由所在区域的ABR将其转换为LSA 3。LSA3可以传播到整个OSPF的所有区域(特殊区域除外)。由ABR通告。注意:LSA 3每穿越一个ABR,其ADV Router都会发生改变,ADV Router转变为最后一次穿越的ABR路由器。
LSA4:由ABR产生,当ASBR产生一个LSA5时,ABR会产生一个LSA4,指明ASBR区域。
LSA5: 自治系统外部LSA 。LSA 5描述的是OSPF区域以外的路由(RIP、EIGRP、BGP等等)。由ASBR所通告,LSA 5可以传播到整个OSPF的所有区域(特殊区域除外)。注意:LSA 5的通告路由器在穿越ABR的时候是不会改变的。
LSA7:只有在NSSA中存在,可以理解为LSA5的重发布变种。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章