OSPF的基本概念
OSPF的基本原理
OSPF的网络类型
OSPF的多区域环境类型
OSPF协议的基本概念:
--专为TCP/IP网络设计,支持VLSM、路由汇总、等价负载均衡、区域划分、认证
--OSPF在RGOS平台上的管理距离(AD)是110
--OSPF报文封装在IP报文中,IP协议号为89
--OSPF具有无环路、收敛快、扩展性好、可适合大规模网络
--OSPF目前应用中有两个版本:
V2: 适用于IPv4
V3:扩张支持IPv6
OSPF的Cost值
l OSPF的接口开销(Cost)计算方式:基于物理链路的带宽来计算度量值
Ø Cost=默认计算基数/物理链路带宽(Bit为单位),默认计算基数= 108 bit=100M
100M带宽的接口,Cost值就是1 ;
10M带宽的接口,Cost值就是10 ;
Ø 如结果出现小数,会舍弃小数部分取整(如果整数部分为0,则Cost值记为1), 例如带宽是1000M的 链路, Cost值也是1
l OSPF路由条目的Cost值=路由的原始Cost值和沿途入向接口Cost值的累加
OSPF基本原理
五种报文:
三个阶段:
- 邻居发现——LSA同步——路由计算
1--邻居发现,形成邻居:(成功的标志:2-Way状态)
通过Hello报文发现并形成邻居关系
形成邻居表
2--形成邻接,路由通告:(成功的标志:Full状态,LSDB同步)
邻接路由器之间通过LSU泛洪LSA,通告拓扑信息
通过DBD、LSR、LSAck辅助LSA的同步
最终同一个区域内之间所有路由器LSDB完全相同
3--路由计算阶段:
LSDP同步后,每台计算机独立进行SPF运算
把计算出的最佳路由信息放进路由表
八种状态:
Ø Down,Attempt,Init,2-Way,ExStart,ExChange,Loading,Full
- Down:
这是邻居会话的初始阶段,表明没有在邻居失效时间间隔内收到来自邻居路由器的Hello数据包
Attempt:
该状态仅发生在NBMA(非广播多路访问)网络中,表明对端在邻居失效时间间隔超时前仍然没有回复Hello报文。此时路由器依然按照发送轮询Hello报文的时间间隔向对端发送Hello报文
Init:收到Hello报文后状态变为Init
2-way:收到的Hello报文中包含有自己的Router ID,则状态变为2-way;如果不需要形成邻接关系则邻居状态机就停留在此状态,否则进入Exstart状态
Exstart:开始协商主从关系,并确定DD的序列号,此时状态为Exstart
Exchange: 主从关系协商完毕后开始交换DD报文,此时状态为Exchange
Loading:DD报文交换完成即Exchange done,此时状态为Loading
Full:LSR重传列表为空,此时状态为Full
三张表:
邻居表:
- 通过Hello报文形成邻居
- 用邻居机制来维系路由
- 邻居表存储双向通信的OSPF路由器列表信息
链路状态数据库(LSDB):通过LSU报文更新LSDP
描述拓扑信息的LSA存储在LSDB中
路由表(RIB):OSPF计算出来的路由将会加载到路由表
路由优先级O>OIA>OE1/2>ON 1/2
OSPF相关术语
l Router-ID:在AS中唯一标识一台运行OSPF的路由器的编号
Ø AS(自治系统 Autonomous System) :使用同一种路由协议一组路由器所构成的一套系统
Ø 每个运行OSPF的路由器都必须有一个Router ID,同一个AS内,Router-ID不能重复
Ø Router-ID可以手动命令配置,也可以系统自动选举
l 邻居(Neighbor):两台运行OSPF协议的路由器,从它们相连的接口上会相互发出各自的OSPF参数,如果双方的参数符合建立邻居的条件,就会形成邻居关系
l 邻接(Adjacency):邻居不一定邻接。如果两台路由设备之间交换链路状态信息,并根据更新后的数据库计算出OSPF路由,才能称为邻接关系
Router ID
l 在没有手工指定的情况下(手工指定,直接成为Route ID)
Ø 如果本地有激活的Loopback接口,则取Loopback接口IP最大值作为OSPF Router-ID
Ø 如果没有Loopback接口,则取活跃的物理接口IP地址中的最大值
项目实施中,一般先创建loopback接口并配置IP地址,随后手工指定OSPF Router-ID为该接口地址
OSPF的邻居发现过程——Hello报文
- 路由ID :必须不一致
- Hello/Dead Time : 必须一致
- Area ID :ID值必须一致
- 认证 :密钥必须一致
- stub存根标记 :末节区域类型必须一致
- 接口子网掩码 :在以太网环境下,掩码必须一致
- 接口网络类型 :必须一致,影响路由计算
OSPF的网络类型
点到点网络——P2P
- 采用PPP或HDLC封装格式,OSPF自动检测接口类型,网络类型自动识别为点到点
- 每个点到点的链路,IP地址一般设计掩码“ /30 ”
- 既没有DR也没有BDR,不需要进行DR/BDR选举,相连路由器形成邻接
- Hello计时器为10秒,dead间隔为40秒,等待时间为40秒
- 使用组播地址 224.0.0.5
广播型多路访问网络——Broadcast
- 如果接口封装类型为以太网,则该接口的OSPF网络类型为Broadcast
- 使用组播地址224.0.0.5及224.0.0.6
- OSPF在广播多路访问的网络上,会进行DR与BDR选举
- DR与BDR的节点能够与该链路上其他节点建立邻接关系
- DR other (非DR/BDR)的节点之间建立邻居,停留在 2-way状态,不会交换LSA
非广播多路访问 (NBMA与P2MP)
OSPF网络类型汇总
对比如下:
OSPF的DR与BDR的选举
优先级高的成为DR,其次成为BDR
- 优先级为0的路由设备不具备选举资格,未来也不可能成为DR或BDR
- Hello 包携带路由设备优先级,默认=1
- DR和BDR一旦选定,即使OSPF区域内新增优先级更高的路由设备,DR和BDR也不会重新选举,只有当DR和BDR都失败后,才参与选举
- 优先级是基于接口的,修改命令如下:
(config)#int vlan 10
(config-if-VLAN 10) #ip ospf priority 10
OSPF多区域环境路由器类型
l 内部路由器IR ( Internal Area Router):
Ø 所有接口在同一个Area内
Ø 同一区域内的内部路由器,LSDB完全相同
l 区域边界路由器ABR( Area Border Router):
Ø 接口分属于两个或两个以上的区域,并且有一个活动接口属于area 0
Ø ABR为它们所连接的每个区域分别维护单独的LSDB
Ø 区域间路由信息必须通过ABR进行传递
l 自制系统边界路由器ASBR(Auto System Border Router)
Ø 自制系统边界的路由器,至少有一个接口属于OSPF之外的其他路由协议