路由选择协议OSPF
开放最短路径协议OSPF:使用迪杰斯特拉算法,基于链路状态而不是距离向量,不限制网络规模,更新效率高,收敛速度快
链路状态的度量:带框、费用、距离、时延等
邻居关系的建立和维护
OSPF路由器之间通过交互HELLO分组来建立和维护邻居关系,问候分组封装在IP数据报中,发往组播地址224.0.0.5,IP数据报中的协议号字段取值为89,问候分组的发送周期为10s,若40s未收到来自邻居路由器的问候分组则认为邻居路由器不可达,每个路由器都会建立一张邻居表。
链路状态通告:使用OSPF的每个路由器都会产生链路状态通告LSA,LSA包含直连网络的链路状态信息和令居路由器的链路状态信息
链路状态更新分组:链路状态通告被封装在链路状态更新分组汇总,采用可靠的洪泛法进行发送,洪泛法是指向自己所有的邻居路由器发送链路状态更新分组,收到该分组的各漏气又将该分组转发给所有的邻居路由器(除去上游路由器),可靠是指收到链路状态更新分组后要发送确认,收到重复的分组无需再次转发但是要发送确认。
链路状态数据库LSDB:使用OSPF的每一个路由器都有一个链路状态数据库,用于存储链路状态通告LSA,通过各路由器洪泛发送封装有各自链路状态通告LSA的链路状态更新分组LSU,各路由器的链路状态数据库最终达到一致。
基于链路状态数据库使用迪杰斯塔拉算法构建自己到其他各路哟器的最短路径
OSPF有5种分组类型
问候分组:用来发现和维护令居路由器的可达性
数据库描述:用来向邻居路由器给出自己的链路状态数据库中的所有链路状态项目
链路状态请求:用来向邻居路由器请求发送某些链路状态项目的详细信息:
链路状态更新:用洪泛法对整个系统更新链路状态
链路状态确认:对链路状态更新分组的确认分组
多点接入网络的OSPF路由器为了减少洪泛发送问候分组和链路状态更新分组的数量,OSPF采用如下措施,选用指定路由器DR和备用指定路由器BDR,所有的非DR/BDR只和DR/BDR建立邻居关系,非DR/BDR之间通过DR/BDR交换信息
OSPF划分区域
自治系统边界路由器:R6
主干路由器:R3、R4、R5、R6、R7
区域内路由器:R1、R2、R8、R9
区域边界路由器:R3、R4、R7
参考资料
文档信息
- 本文作者:wendaocsmaster
- 本文链接:https://wendaocsmaster.github.io/2023/02/18/Computer-Networks-network-layer-OSPF/
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)