OSPF
开放式最短路径优先协议,
无类别链路状态协议;跨层封装,协议号89;组播更新:224.0.0.5(all ospf)、6(DR/BDR)
存在触发更新和周期更新(30min);使用SPF算法;存在区域
距离矢量型:分布式计算,每步计算(EIGRP)–小型网络
链路状态型:集中式计算,效率低,灵活性高(OSPF)–大型网络
集中式:先传递原始信息,信息收集完毕得到全网拓扑图再计算–效率低;灵活性、稳定性高
分布式:先计算—计算效率快,计算量小;可靠性不好;不优的会被抛弃
OSPF特征:
·使用了区域的概念,这样可以有效地减少路由选择协议对路由器的CPU和内存的占用;
·划分区域还可以降低路由选择协议的通信量,这使构建一个层次化的网络拓扑成为可能;
· 完全无类别地处理地址问题,排除了不连续子网这样的有类别路由选择协议的问题;
· 支持无类别路由表查询、VLSM 和用来进行有效地址管理的超网技术;
· 支持无大小限制的、任意的度量值;
· 支持使用多条路径的效率更高的等价负载均衡;
· 使用保留的组播地址来减小对不宣告 OSPF 的设备的影响;
· 支持更安全的路由选择认证;
· 使用可以跟踪外部路由的路由标记。
1、OSPF的邻居关系
1)P2P点到点网络
2)MA多路网络——缩减邻居关系(算法所致)——DR/BDR机制
DR/BDR两个参数选举,不能抢占:
1.接口优先级(0-255,默认为1,0表示没有选举权)
2.router-id(唯一标识一个路由器,先回环地址,没有则接口地址,多个地址选最大)
通信过程,只能让DR、BDR收集MA网络信息,使用了两个组播地址
DR/BDR发送使用224.0.0.5,监听使用224.0.0.6
DRother发送使用224.0.0.6,监听使用224.0.0.5
2、OSPF邻居形成过程
1.参与其中的数据包
·hello
·DBD
·LSR
·LSU
·LSack
邻居状态机制 attempt状态只有在按需电路或者nbma中出现
1.down hello包未发出
2.init hello包发出
3.two-way hello包发出并收到,只有MA网络有(P2P点到点网络跳过),用于选举DR/BDR
4.exstart DBD(无数据形态)发出并收到,用于选举主从关系,router-id大的设备为主设备,主设备先发携带拓扑缩略信息的DBD。
5.exchange DBD(完整结构),有主先发出,从接收后发出。DBD中携带的是拓扑的目录(缩略信息),用来查看该路由器那些信息时自己需要的,那些是不需要的。收到对方的LSack。
6.Load 发送LSR请求自己想要的完整拓扑信息,对方用LSU回应,LSU会携带该路由器的完整拓扑信息。以自己发送LSack确认对方的LSU结束。
7.full
建立邻居的条件:
1.hello时间一致
2.mtu值一致
3.认证
4.相同的are id
5.特殊标识(nssa和stub)
6.router-id不能相同
7.网络类型(主要hello时间)但是点到点和MA建立邻居会引起SPF算法混乱
8.max-lsa数量的限制会引发lsa加载失败影响建邻
9.MA网络类型会检测接口地址的掩码,掩码不一致会导致MA网络无法选举DR/BDR(两边优先级为0)
10.虚链路的建邻居要保证两个ABR的出接口OSPF包能通
11· .shame-link建邻要保证源和目的单播能通
3、拓扑信息 LSA
链路状态通告LSA头(缩略信息)+LSA体 完整的LSA是携带完整拓扑信息
DBD与LSR携带的都是LSA的头部信息协议,只有LSU才携带LSA的完整信息
LSA头部内容:Type LS-ID Ls-ADVrouter
LSA内容:链路的路由前缀 掩码 开销,连接的链路类型,以及连接的路由器
4、LSDB链路状态数据库–告知拓扑图(SPF算法,有向图)
SPF算法:每一步都找到其他点最短路径
根据建邻居关系,LSDB得出网络连接图,运行SPF算法,选最短路径,得出路由器状态树状图(无环、且最短);在图中检索该路由器到达未知网段的信息(最短路径),这样一来就形成了路由信息。
OSPF收敛完成后由于拥有完整的路由信息所以比较稳定
5、LSA的接收和洪泛
是否存在库——>序列号是否一致——>一致忽略
| |
添加到库 判断序列号大小 ——>小则更新进入LSA
|
大则添加到库中
(回复确认ACK并洪泛)
周期洪泛 30min —因为60min会老化
LSA的序列号在LSU中,可靠传输
序列号小代表老,序列号大代表新
收到新的和没有一样,进行添加到LSDB中
6、OSPF的区域设计
分区域是为了减少计算量,但某种情况下会出现环路
OSPF设计成星型结构,区域间具备水平分割原则
出发点:减少计算,防环
区域类型:
骨干区域:区域0
非骨干区域:非0区
区域中的路由器角色:
骨干路由器BR:一个路由器的所有接口都在骨干路由器上,则就是骨干路由器
非骨干路由器IR:一个路由器的所有接口都在非0区域,则就是非骨干路由器
ABR:区域边界路由器—一个路由器必须连接到骨干区域,又连接一个或多个非骨干区域的接口(能够产生3类LSA的路由器)
ASBR:自治系统边界路由器—一个路由器属于OSPF网路也属于非OSPF网路,当把非OSPF网络重发布引入OSPF网络时,该路由器就是ASBR路由器(能够产生5类或7类LSA的路由器)
show ip ospf interface brief 查看接口信息
7、LSA
1类router LSA
链路类型
1)stub 末梢
2)transit MA-----在传递一类LSA时会产生二类LSA描述完整拓扑
3)p2p 点到点
在transit网络中,只告诉了路由器链接到了一个网络中,不知道网络中链接的是谁,在这种情况下,产生了2类LSA来补充1类LSA告诉网络中链接的哪些路由器,和网络掩码;
功能:用于在一个区域内传输路由信息和拓扑信息
告诉的信息有:路由器所连接的链路和接口,并指明了它们的状态和沿每条链路出方向的cost值和所有的OSPF的邻居
传播范围:在本区域内,终止于ABR
Linkid(产生该LSA的标记):产生该LSA路由器的router-id
ADVrouter(产生路由器的标记):产生该LSA路由器的router-id
特点:在MA网络中,1类LSA仅仅包含MA的接口以及metric,掩码以及路由器数量在2类LSA中告诉
2类LSA—network LSA-----为了补充第一类LSA无法具体的有向图
功能:指定DR同时DR路由器所在的MA网络中连接多少个邻居路由器和掩码信息
传播范围:在本区域内传输,终止于ABR(就是本区域内没有MA网络的路由器也传输2类LSA)
Link-id:MA网络中DR的接口地址
ADV-router:MA网络中DR的接口地址
特点:告诉了网络掩码,以及在MA网络中所连接路由器数量