OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(Autonomous System,AS)内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。著名的迪克斯加算法(Dijkstra)算法被用来计算最短路径树。OSPF分为OSPFv2和OSPFv3两个版本,其中OSPFv2用在IPv4网络,OSPFv3用在IPv6网络。OSPFv2是由RFC 2328定义的,OSPFv3是由RFC 5340定义的。与RIP相比,OSPF是链路状态协议,而RIP是距离矢量协议。
●自治系统(AS)-----收敛时间 ●内部网关协议(IGP)----------RIP,OSPF,IS-IS ●外部网关协议(EGP)---------BGP
OSPF协议是链路状态路由协议
架构介绍:花瓣形状,骨干区域为0区域,其他区域1,2,3,都围绕区域0相连,及个别的特殊情况,可以通过虚拟链路来连接 信息传递:向邻居发送自己知道的所有状态的链路状态信息 路由标识:Router-ID是网络上唯一用于标识的一台路由器,线网用路由器的环回口 来配置Router-ID,这边的地址是32位的公网IP地址,如果没有标,通过物理口 来确认 区域规划:划分多个区域是为了优化网络性能
●邻居列表 ●链路状态数据库 ●路由表
●为了适应大型的网络,OSPF在AS内划分多个区域 ●每个OSPF路由器只维护所在区域的完整链路状态信息
●区域ID可以表示成一个十进制的数字 ●也可以表示成一个IP
●负责区域内路由信息传播
Router ID:OSPF区域内唯一标识路由器的IP地址
●选取路由器loopback接口上数值最高的IP地址 ●如果没有loopback接口,在物理端口中选取IP地址最高的 ●也可以使用router-id命令指定Router ID
指定路由器(DR)
其他路由器(DRothers)只和DR及BDR形成邻接关系
●选举DR、BDR是为在广播多路访问中减少连接关系的建立,优化性能 ●默认Router-ID最大是DR,第二大是BDR,其他是Drother(如果路由器的优先级被设置为0,它将 不参与DR与DBR的选举) ●DR一旦被选定就不会被抢占, ●Drother会通过224.0.0.6向DR和BDR通告网络状态信息,DR会通过224.0.0.5向所有邻居通告信息
OSPF数据包:承载在IP数据包内,使用协议号89
●Hello------发现邻居并建立和维护邻居关系 (Hello报文) ●DataBase Description------检查所有路由器的LSDB是否同步(数据库描述报文DBD) ●Link-State Request--------向另外一台路由器请求特定的链路状态记录 (链路请求报文LSR) ●Link-State Update--------发送被请求的链路状态记录 (链路回应报文LSU) ●Link-State Acknowledgment------对其他类型的分组进行确认 (链路确认报文LSA)
OSPF启动的第一个阶段是使用Hello报文建立双向通信的过程
OSPF启动的第二个阶段是建立完全邻接关系
●点到点网络 ●广播多路访问网络 ●非广播多路访问网络 ●点到多点网络
●网络规模 ●网络拓扑 ●其他特殊要求 ●路由器自身要求
●可适应大规模网络 ●路由变化收敛速度快 ●无路由环 ●支持变长子网掩码VLSM ●支持区域划分 ●支持以组播地址发送协议报
●改善网络的可扩展性 ●快速收敛
●域内通信量(Intra-Area Traffic):单个区域内的路由器之间交换数据包构成的通信量 ●域间通信量(Inter-Area Traffic):不同区域的路由器之间交换数据包构成的通信量 ●外部通信量(External Traffic):OSPF域内的路由器与OSPF区域外或另一个自治系统内 的路由器之间交换数据包构成的通信量
●每个路由器都创建了由每个接口,对应的相邻节点和接口速度组成的数据库 ●链路状态数据库中每个条目称为LSA(链路状态通告),常见的有六种LSA类型
●只有一个默认路由作为其区域的出口 ●区域不能作为虚拟链路的穿越区域 ●Stub区域里无自治系统边界路由器ASBR ●不是骨干区域Area 0
●没有LSA4,5,7通告
●除一条LSA3的默认路由通告外,没有LSA3,4,5,7通告