OSPF是链路状态路由协议
OSPF–开放的最短路径优先协议

内部网关协议和外部网关协议

自治系统(AS)
 内部网关协议(IGP)
 外部网关协议(EGP)

AS是指由同一个技术管理机构管理、使用统一选路策略的一些路由器的集合。

(1)按自治系统分为:
IGP:内部网关路由协议,运行在AS内部的路由协议,主要解决AS内部的选路问题,发现、计算路由。
主要:RIP1/RIP2、OSPF、ISIS、EIGARP(思科私有协议)

EGP:外部网关路由协议,运行在AS与AS之间的路由协议,他解决AS之间选路问题。
通常:BGP

(2)按协议类型分类
距离矢量路由协议:RIP1/2、BGP(路径矢量协议)、EIGRP(高级距离矢量协议)
路由器对全网拓扑不完全了解。是“传说的路由”,A发路由信息给B,B加上自己的度量值又发给C,路由表里的条目是听来的

链路状态路由协议:OSPF、ISIS
路由器对全网拓扑完全了解。是“传信的路由”,A将信息放在一封信里发给B,B对其不做任何改变,拷贝下来,并将自己的信息放在另一封信里,两封信一起给C,这样,信息没有任何改变和丢失,最后所有路由器都收到相同的一堆信,这一堆信就是LSDB。然后,每个路由器运用相同的SPF算法,以自己为根,计算出SPF Tree(即到达目的地的各个方案),选出最佳路径,放入路由表中。

OSPF工作过程
1.建立邻居表
2.形成链路状态数据库
3.形成路由表
建立邻接关系–学习链路状态信息→链路状态数据库–Dijkstra算法(SPF)→最短路径树→路由表

OSPF区域
为了适应大型的网络,OSPF在AS内划分多个区域
 每个OSPF路由器只维护所在区域的完整链路状态信息

区域ID
 区域ID可以表示成一个十进制的数字
 也可以表示成一个IP

骨干区域Area 0
负责区域间路由信息传播
非骨干区域

Router ID
OSPF区域内唯一标识路由器的IP地址

Router ID选取规则
选取路由器loop back接口上数值最高的IP地址
如果没有loop back接口,在物理端口中选取IP地址最高的
也可以使用router-id命令指定Router ID

DR和BDR的选举方法
 自动选举DR和BDR
网段上Router ID最大的路由器将被选举DR,第二大的将被选举为BDR

手工选择DR和BDR
  优先级范围是0~255,数值越大,优先级越高,默认为1
  如果优先级相同,则需要比较Router ID
  如果路由器的优先级被设置为0,它将不参与DR和BDR的选举

DR和BDR的选举过程:
路由器的优先级可以影响一个选举过程,但它不能强制更换已经存在的DR或BDR路由器
其他路由器(DR others只和DR及BDR形成邻接关系)

OSPF的组播地址:
224.0.0.5
224.0.0.6

OSPF的度量值为COST
COST=10^8/BW
最短路径是基于接口指定的代价(cost)计算的

OSPF数据包
承载在IP数据包内,使用协议号89

OSPF的包类型:
Hello包:维护邻居关系
数据库描述包DBD/DD:向邻居发送摘要信息
链路状态请求包LSR:请求更详细的信息
链路状态更新包LSU:发送LSA(链路状态通告)
链路状态确认包:确认收到DBD和LSU

OSPF邻接关系建立的状态机
/down /init /2way /Exstart /Exchange /Loading /full
初始化 收到第一个Hello包 双向建立会话 建立主从关系 交换摘要信息 加载详细信息 完全连接

OSPF将网络划分为四种类型
点到点网络:
自动发现邻居,不需DR/BDR、组播224.0.0.5
广播多路访问网络:
自动发现邻居、选DR/BDR、组播224.0.0.5、224.0.0.6
非广播多路访问网络:
手工指定邻居、选DR/BDR、单播
点到多点网络:
自动发现邻居,不需DR/BDR、组播224.0.0.5

从以下几方面考虑OSPF的使用:
网络规模
网络拓扑
其他特殊要求
路由器自身要求

OSPF的特点:
可适应大规模网络
路由器变化收敛速度快
无路由环
支持变长子网掩码VLSM
支持区域划分
支持以组播地址发送协议报