一、简介
在复杂的网络环境中,路由协议扮演着至关重要的角色。其中,开放最短路径优先(OSPF)协议以其高效、灵活的特性,在网络世界中占有一席之地,今天,让我们来看看什么叫嗯啊的OSPF!
OSPF(Open Shortest Path First)协议,又称“链路状态路由协议”,主要向相邻路由器发送链路状态信息,收敛后形成最终网络拓扑,形成路由的算法是Dijkstra algorithm(迪杰斯特拉最短路径算法)
OSPF三张表
1、邻居表
查看路由器Q的邻居有哪些
dis ospf peer
2、拓扑表
查看路由器的拓扑表
dis ospf lsdb
3、路由表
查看路由器的路由表
dis ospf routing
dis ip routing-table
二、工作过程
1、邻居发现与邻接关系建立
--hello报文交换
OSPF启动后,会周期性的发送hello报文来发行邻居,并通过down、init、2-way来建立连接
down: 还没启动的时候;
init:有了邻居;
2-way:知道了彼此的存在
R1在down的状态下通过发送hello报文发现邻居R2,R2在down的状态下收到报文后也发送hello报文寻找邻居R1,R1收到后再接着跟R2互通有无。
--DBDS
DBDS(database descriptor packets)数据库描述包,用于向邻居发送摘要信息,用以进行全链路状态数据库的同步
Exstart--建立主从关系
Exchange--交换摘要信息
--LSRs
LSRS(link state request)链路状态请求包,在路由器接收到包含新信息的DBD后发送,用于请求更详细的信息
--LSU
LSU(link state update)链路状态更新包,收到LSR后发送链路状态通告(LSA),一个LSU数据包可能包含几个LSA
--LSA
LSA(link state ack)全链路状态确认包,确认已经收到DBD/LSU,每个LSA需要分别被确认
loading--加载详细信息
full--完全连接(收敛)
三、路由器的种类
在OSPF协议中,路由器一共可分为4种
ABR
跨区域的路由器(如上图夹在area 22、area0、area44三个区域的那两个)
IR
完全在区域内的路由器(area22里的路由器)
BR
骨干区域路由器(area0)
ASBR
跨协议的路由
四、区域类型
标准区域
Standard area
末梢区域
STUB area
非完全末梢区域
not so stubby area
五、OSPF的DR和BDR选举
1、选举目的
在一个区域内,路由器通过组播的方式向相邻路由器发送链路状态信息,但这样会使网络流动流量太大,通过选举DR和BDR的方式,让区域内的路由器只向DR和BDR发送链路状态信息,减少网络流量流通,可以更加节省带宽使网络更稳定。
2、选举方式
在区域内,可手动设置路由器的优先级,设置完之后,优先值最高的路由器就是DR(大当家的),优先值第二高的路由器就是BDR(二当家的),剩下的就是普通路由器,暂且叫它OR(小弟)。
优先级范围:0~255,优先值越大,优先级越高。所有的路由器最初默认优先级都是1,可以把1调成0,这样这个路由器就不会参与DR和BDR的选取,自愿当OR(小弟仔)。如果优先值一样,就会进行router-id比较,值最大的当DR,第二大的当BDR,其他当OR。
3、组播
224.0.0.5:代表的是该区域内所有的路由器
224.0.0.6:代表的是该区域内的DR和BDR
如果一个OR(小弟仔)有新的数据更新了,它会把更新的数据发送给DR(大当家的)和BDR(二当家的),而不会告诉其他OR(崽子),emmm~~~就是这样
六、总结
总的来说,OSPF是一种强大、灵活的路由协议,具有广泛的应用前景和潜力。通过了解OSPF,我们可以更好地利用它来提升网络性能和稳定性。未来,随着网络技术的不断创新和发展,我们有理由相信OSPF将在网络世界中继续发挥重要作用!