一、OSPF链路状态路由协议的术语和工作原理:
- 链路状态路由协议又称为最短路径优先协议,它基于Edsger Dijkstra的最短路径优先(SPF)算法。它比距离矢量路由协议复杂得多,但基本功能和配置却很简单,甚至算法也容易理解。路由器的链路状态的信息称为链路状态,包括:接口的IP地址和子网掩码、网络类型(如以太网链路或串行点对点链路)、该链路的开销、该链路上的所有的相邻路由器
- 链路状态路由协议特征:
- 快速适应网络变化
- 在网络发生变化时发送触发式更新
- 较低频率发送定期更新(每隔30分钟),被称为链路状态刷新
3. OSPF的工作原理:
- 路由的计算分为三个阶段:
-
(1)建立邻居表(2)建立链路状态表(3)计算出路由表
-
1.建立邻居表-->获知身边所有邻居. 邻居表是通过hello协议建立的;. 每台OSPF路由都主动发出HELLO信息并接听其他路由器发来的HELLO信息. 在HELLO信息中,包含路由器的基本情况(),路由器通过HELLO信息相互识别对方,互相发送过HELLO信息的路由器就会变成邻居.所有链路状态更新信息是在邻居之间发送2. 建立链路状态表-->在邻居间交换链路状态信息,获得全网拓朴. 链路状态信息和网络拓朴信息是一致的.. 收集到所有的链路状态后所建立的表,也就包含了网络拓朴的所有信息.3. 计算路由表-->在拓朴表中利用SPF算法计算出路由表. 有了网络拓朴的结构(图),即可计算出两点间的最短路径(即计算以当前路由器为起始的、到达每一个目标网络的最短路径). 其计算过程,使用了图论中的一个标准算法:最短路径优先算法(SPF算法).OSPF算法中的"O"(open),代表它是一个开放的协议,而非某个厂家的私有协议(如IGRP等)4. OSPF的工作过程:.HELLO 数据包的结构.DR和BDR的概念.OSPF的链路状态更新过程1.HELLO数据包的结构(8个字段). 所要解决的问题:如何去识邻居,建立邻居,在邻居之间得到一些基本的信息. 在相邻接的路由器上必须一致才能构成邻居关系.(1)Router ID.在OSPF算法中,唯一地标识这台路由器.它是路由器的loopback端口IP,或是路由器各个端口中最高的一个IP(2)hello/dead Interval.hello interval:发送HELLO信息的时间周期(缺省10秒).dead interval:邻居死亡的死亡时间(缺省40秒)(3)neighbor.用于应答的目的,包含对方的router id,表明自己已看到对方(4)Area id.表明当前所处的区域(5)router priority.在DR、BDR选举中的优先级(多访问网络[如以太网]中使用,使信息的发表更加有序,发布的信息量更少)(5)DR IP Address: "指定路由器"地址(6)BDR IP Address: "备份DR"的地址(7)Authentication password.一种验证机制,提高安全性(8)stub area flag.标志当前区域是否是一个残余区域2.DR和BDR.HELLO机制选举代表当前网络的DR和BDR.每台路由器和DR/BDR相邻.最高priority的路由器当选DR/BDR.使信息的发表更加有序,发布的信息量更少3.链路状态更新().链路状态更新包LSU在全网的蔓延过程[四个步骤].链路状态更新过程采用组播的方式 (所有DR工作在224.O.0.6,所有其他OSPF路由器工作在224.0.0.5)--不打扰其他设备.OSPF链路状态更新有版本号机制(避免时延问题)4.路径选择问题.以费用(Cost)作为判别OSPF路径优劣的方法.单条链路的Cost:10^8/网络带宽.多条链路的Cost:各条链路Cost之和
转载于:https://blog.51cto.com/jeffrey2013/948085