开发历程
1987 IETF OSPF工作组成立
1991 OSPFv2在RFC1247中发布
1998 OSPFv2现行规范在RFC2328中发布
1999 用于IPv6的OSPFv3在RFC2740中发布
OSPF特点:
1.国际标准(Open)支持多厂商路由设备
2.最短路径优先算法(SPF Shortest Path First)
3.支持VLSM CIDR(路由汇聚)
4.链路状态路由协议(VS。距离矢量路由协议)
OSPF更新链路状态信息而不是路由表信息
LSA(链路状态通告)被泛洪到区域内所有OSPF路由器
OSPF使用SPF算法计算到目的地的最短路径
-LINK=路由器接口
-State=描述接口及它跟邻居路由的关系
增量更新(触发更新)
5.分层设计(Area区域的概念)
缺点:配置复杂,对路由器CPU和内存要求高。
工作过程
1.发送Hello包,建立邻居关系
2.泛洪LSA,邻居收到LSA后,继续泛洪LSA
3.由LSA完成LSDB(链路状态数据库)完成流程
4.运行SPF算法(以自己为根到叶节点的路径)算出最佳路径写入路由表。
OSPF数据包类型
1.HELLO包(网络稳定后只发送Hello包维持邻居关系)
-建立和维持邻居关系
-选举DR和BDR(点到点网络除外)
2.Databade Description(DBD)数据库描述包
-选举路由主/从关系
-包含LSA头部
3.Link-State Request(LSR) 链路状态请求包
4.Link-State Update(LSU)链路状态更新包
5.Link-State Acknowledgement(LSAck)链路状态确认包
OSPF三张表
1.邻居表
2.拓扑表
3.路由表
建立邻居的必要条件
1.Hello/dead intervals 必须匹配
2.Area-ID 必须匹配
3.Authentication password 认证类型和密码 必须匹配
4.Stub area flag 末节区域标识 必须匹配
分层设计
1.大的OSPF网络采用分层设计,所有区域连接到主干区域.
Large OSPF networks use a hierarchical design.Multiple areas
connect to a distribution area,area0,also called the backbone.
2.好处(benefit)
-减少路由更新(reduces routing overhead)
-加速收敛(Speeds up convergence)
-限制不稳定到一个区域(Confines network instabiligy to an area)
-提高网络性能(Improves performance)
OSPF路由器类型
区域类路由器(Internal Routers)
区域边界路由器(ABR and Backbone Router)
自治系统边界路由器(ASBR)
链路状态更新(LSU)
LSA序列号成棒棒糖形状(-Ox80000001-0x7ffffff)
端口状态(Down-Full)
Down State - Init State(初始状态,发送Hello包,建立邻居关系) - Two-
Way State(双向通信,发送DbD包,选举DR和BDR)- Exstart State(信息初始
交换状态,发送LSR包,DbD包) - Exchange State(信息交换,)- Loading
State(加载,发送LSR包)- Full State(发送LSAck)
思科建议部署:
每个区域小于等于50
邻居小于等于60
所在区域数小于等于3
链路状态路由的算法:
Cost=10^8/BW(带宽)
广播型多路访问网络(Multiaccess Broadcast Network)
1.进行DR和BDR选举(在一个网段内生效,先选BDR再选DR)
-最高接口优先级(0-255)的路由器被选成DR(优先级默认为1,0表示不参与选举)
The router with the highest OSPF priority is selected as the DR
-最高的路由器ID(Router-ID)
Use the OSPF router ID as the tie breaker
--最大的逻辑接口IP地址
--最大的物理接口IP地址
--路由ID具有非抢占性
2.DRother只与DR和BDR形成邻接关系.
All DRother form full adjacencies with the DR and BDR only
3.DR和BDR不具有抢占性
The DR election is nonpreemptive
配置OSPF
Router(config)#route ospf 进程号(1-65535)
Router(config-route)#network 通告网络 反掩码 区域号-----通告网络
配置端口优先级
Router(config-if)#ip ospf priority number(0-255)
配置Hell/Dead时间
Router(config-if)#ip ospf hello-interval/dead-interval 时间(1-
65535)
查看邻居表
Router#show ip ospf neighbor
查看OSPF数据库
Router#show ip ospf datebase