开放最短路径优先OSPF的基本工作原理
1.开放最短路径优先OSPF(open shortest path first),是为克服RIP的缺点在1989年开发出来的
j开放表明OSPF协议不是受某一家厂商控制的,而是公开发表的
k最短路径优先是因为使用了Dijkstra提出的最短距离算法SPF
2.OSPF是基于链路状态的,而不像RIP那样是基于向量的
3.OSPF采用SPF算法计算路由,从算法上保证了不会产生路由环路
4.OSPF不限制网络规模,更新效率高,收敛速度快
5.链路状态是指本路由器都和哪些 路由相邻,以及相应链路的代价
代价用来表示费用、距离、时延、带宽等,这些都由网络管理人员来决定。
举例:思科路由器中OSPF计算代价的方法:100mbps/链路带宽
计算结果小于1的值仍记为1,大于1且有小数的值,舍去小数
OSPF相邻路由器之间通过交互(hello)问候分组,建立和维护邻居关系。
hello分组封装在IP数据报中,发往组播地址224.0.0.5
目的IP为224.0.0.5 协议号为89(表明数据报的数据载荷为OSPF分组)
发送周期为10秒
40秒未收到邻居路由器的hello分组,则认为该邻居路由器不可达
LSA
使用OSPF的每个路由器都会产生链路状态通告LSA(link state advertisement)。LSA中包含以下内容:
直连网络的链路状态信息
邻居路由器的链路状态信息
LSA被封装在链路状态更新分组LSU中,采用洪泛法发送。
LSDB --->链路状态数据库
使用OSPF的各路由器基于LSDB进行最短路径优先SPF计算,构建出各自到达其他各路由器的最短路径,即构建各自的路由表。
OSPF分组类型
OSPF有以下五种分组类型:
类型1:问候分组
用来发现和维护邻居路由器的可达性
类型2:数据库描述分组
向邻居路由器给出自己的链路状态数据库中的所有链路状态项目的摘要信息
类型3:链路状态请求分组
向邻居路由器请求发送某些链路状态项目的详细信息
类型4:链路状态更新分组
路由器使用这种分组将其链路状态进行洪泛发送,即用洪泛法对全网更新链路状态
类型5:链路状态确认分组
这是对链路状态更新分组的确认分组
邻居关系
OSPF在多点接入网络中路由器邻居关系的建立
1.选举指定路由器DR和备用的指定路由器BDR
2.所有的非DR和BDR只与DR/BDR建立邻居关系
3.非DR/BDR之间通过DR/BDR交换信息
区域
为了使OSPF能够用于规模很大的网络,OSPF把一个自治系统再划分为若干个更小的范围,叫做区域(area)
区域内路由器IR(internal router):路由器的所有接口位于同一个区域内
区域边界路由器ABR(area border router):一部分接口用于连接自身所在区域,另一部分接口用于连接主干区域
主干路由器BBR(backbone router):位于主干区域内的路由器,区域边界路由器可以看作主干路由器
自治系统边界路由器ASBR(AS border router): 专门和本自治系统外的其他自治系统交换路由信息