OSPF

OSPF(open shortest path first)开放式最短路径优先:
是一个内部网关协议,用在单一自治系统内决策路由。是对链路状态路由的一种实现,属于内部网关协议,ospf支持负载均衡和基于服务类型的选路,也支持多种路由形式。
工作原理:
ospf简单的说就是两个相邻的路由器通过发报文的形式成为邻居关系,邻居再互相发送链路状态信息形成邻接关系,之后再各自根据最短路径算法算出路由,放在ospf路由表里

1、邻居关系:
1、p2p点到点 224.0.0.5
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:把从DBD中找出需要的链路状态头部信息传给邻居,请求完整信息
LSU:将LSR请求的头部信息对应的完整信息发送给邻居
SACK:收到LSU报文后确认该报文
邻居状态机制 attempt状态只有在按需电路中出现或者NBMA中出现
1、down hello 包未发出
2、init hello 包发出但未收到
3、two-way hello包发出并收到 只有MA 网络有(p2p没有,直接跳过),用于选举DR/BDR
4、exstart DBD 发出并收到,用于选举主从关系
(router-id大的设备为主设备,主设备先发携带拓扑缩略信息的DBD ),收到最高发送的LSACK结束
5、exchange DBD 完整结构,由主先发出,从接收后发出
DBD 中携带的是拓扑的目录(缩略信息),用于查看路由器那些信息是需要的,那些是不需要的。收到
对方的lsack结束
6、load 发送LSR请求自己想要的完整拓扑信息,对方用LSU回应,LSU会携带完整的拓扑信息,以自己发送的
lsack确认对方的LSU结束
7、full
OSPF_第1张图片
3、拓扑信息 lsa
链路状态通告LSA (缩略信息)+LSA 体,完整的LSA 携带完整的拓扑信息
DBD 与LSR 携带的都是LSA 头部协议,只有LSU携带LSA的完整信息
LSA头部内容 type LSA-id LS -ADVrouter
LSA内容 链路的路由前缀 掩码 开销 路由器连接网段,连接的链路类型以及连接的路由器
路由器之间的连接图,OSPF 找最短路径得到最短路径树状图(无环并且到达其他点最短),检索到达该路由器拥有网段的路径
5、LSA的接收和洪泛,收到新的或者没有的路由, 周期洪泛30分钟60分钟会老化

6、建立邻居的条件:
1、hello时间一致
2、mtu值一样
3、area id一致
4、认证
5、特殊标识(nass和stub)
6、router-id不能相同
7、网络类型(主要hello时间),但是点到点和ma建邻会引起spf算法混乱
8、 max-lsa数量的限制会引发lsa 加载失败影响建邻
9、MA网络类型会检测接口地址的掩码,掩码不一致会导致
10、MA网络无法选举DR/BDR(两边优先级为0)
11、虚链路的建邻要保证两个ABR的出接口ospf包能通
12、shame-link建邻要保证源和目的的单播能通

在这里插入图片描述
LSA
1、router LSA 由区域内所有路由器产生,并且只能在本个区域内洪泛,
2、network LSA 由本区域内的DR/BDR路由器产生,报文包括DR/BDR连接的路由器的链路信息
链路类型
1、stub
2、transit
3、p2p

你可能感兴趣的:(网络)