OSPF协议及链路状态算法(详解)

一、路由选择协议分类回顾

在这里插入图片描述

二、OSPF协议

  1. 开放最短路径优先OSPF协议:“开放”标明OSPF协议不是受某一家厂商控制,而是公开发表的;
  2. “最短路径优先”是因为使用了Dijkstra提出的最短路径算法SPF
  3. OSPF最主要的特征就是使用分布式的链路状态协议

OSPF的特点:

和谁交换?
  1. 使用洪泛法向自治系统内所有路由器发送信息,即路由器通过输出端口向所有相邻的路由器发送信息,而每一个相邻路由器又再次将此信息发往其所有的相邻路由器。广播
    最终整个区域内所有路由器都得到了这个信息的一个副本。
交换什么?
  1. 发送的信息就是与本路由器相邻的所有路由器的链路状态链路状态是指本路由器和哪些路由器相邻,以及该链路的度量/代价——费用、距离、时延、带宽等,这些都由网络管理人员来决定。)。
    【举例】
    思科路由器中OSPF计算代价的方法:100Mbps/链路带宽计算结果小于1的值仍记为1;大于1且有小数的,舍去小数。
    在这里插入图片描述
多久交换?
  1. 只有当链路状态发生变化时,路由器才向所有路由器洪泛发送此信息。

最后,所有路由器都能建立一个链路状态数据库,即全网拓扑图

三、链路状态路由算法

  1. 每个路由器发现它的邻居结点【HELLO问候分组】,并了解邻居节点的网络地址。
  2. 设置到它的每个邻居的成本度量metric。
  3. 构造【DD数据库描述分组】,向邻站给出自己的链路状态数据库中的所有链路状态项目的摘要信息。
  4. 如果DD分组中的摘要自己都有,则邻站不做处理;如果有没有的或者是更新的,则发送【LSR链路状态请求分组】请求自己没有的和比自己更新的信息。
  5. 收到邻站的LSR分组后,发送【LSU链路状态更新分组】进行更新。
  6. 更新完毕后,邻站返回一个【LSAck链路状态确认分组】进行确认。
    只要一个路由器的链路状态发生变化:
    5.泛洪发送【LSU链路状态更新分组】进行更新。
    6.更新完毕后,其他站返回一个【LSAck链路状态确认分组】进行确认。
  7. 使用Dijkstra根据自己的链路状态数据库构造到其他节点间的最短路径。

在这里插入图片描述

四、OSPF的区域

为了使OSPF能够用于规模很大的网络,OSPF把一个自治系统再划分为若干个更小的范围,叫做区域(Area)
每一个区域都有一个32位的区域标识符(用点分十进制表示)
区域也不能太大,在一个区域内的路由器最好不超过200个。
在这里插入图片描述
区域内路由器IR(internal router):R1,R2,R8,R9
主干路由器BBR(backbone router):R3,R4,R5,R6,R7
区域边界路由器ABR(area border router):R3,R4,R7
自治系统边界路由器ASBR(AS border router):R6

五、OSPF分组

在这里插入图片描述

六、OSPF其他特点

1.每隔30min,要刷新一次数据库中的链路状态。
2.由于一个路由器的链路状态只涉及到与相邻路由器的连通状态,因而与整个互联网的规模并无直接关系。因此当互联网规模很大时,OSPF协议要比距离向量协议RIP好得多。
3.OSPF不存在坏消息传的慢的问题,它的收敛速度很快

七、总结

在这里插入图片描述

02f,18aug03,agi added #include 02e,02jun03,agi removed #include "rwproto.h" 02d,02jun03,agi changed #include "rwos.h" to include "ospf_rwos.h" 02c,29may03,agi removed unused includes, added new includes 02c,08may03,asr Changes to make OSPF virtual stack compatible 02b,09may03,agi added #include , removed #include 02a,17feb02,ram SPR 81808 Added OSPF memory partition support 21,13october01,kc Dynamic configuration changes. 20,21september01,kc Removed unused raw socket specific declarations. 19,26september00,reshma Added WindRiver CopyRight 18,25september00,reshma RFC-1587 implementation for OSPF NSSA Option, also tested against ANVL. 17,20july00,reshma Unix compatibility related changes. 16,06july00,reshma Removed unnecessary header files and defines. 15,23february00,reshma Changes for ospf mib 14,23december99,reshma Compatibility with VxWorks-IP and VxWorks RTM-interface 13,13august99,jack compilation fixes no IP case 12,05august99,nishit Replaced including IP header files by the new ospf_ip_structures.h 11,17may99,jack Added new include file ospf_patricia_32_bits_key_prototypes.h 10,28december98,jack Compiled and added some comments 09,25november98,rajive Deleted socket include file 08,11november98,jack Config changes, linted and big endian changes 07,30october98,jack Incorporate changes for compilation on Vxworks 06,12february98,release engineer code style changes, feature enhancements, complete CISCO and BAY compaltibility. OSPF v4.2.0 05,10july97,cindy Pre-release v1.52b 04,10february97,cindy Release Version 1.52 03,22october97,cindy Release Version 1.50 02,05june96,cindy Including visnpstr.h as a kludge for the first beta release. 01,05june96,cindy First Beta Release
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值