咱们使用协议的目的,是为了实现通讯,没有协议的话只有直连的设备才可以Ping通,算法
那咱们有了RIP协议为何还要OSPF,答案只有一个?RIP有缺陷。
RIP的缺陷:收敛慢(就是更新比较慢),最大可达跳数15跳(意味着网络中最多只能有15台设备),
间隔发送完整性更新(一样的信息也会再次发送,就会致使资源的浪费),存在环路的可能,有可能选择一条次优的路径。数据库
所以咱们有了OSPF----open shortest path first----开放最短路径优先(在线网中的使用率占80%以上)
由于OSPF属于公有协议适用于各个厂商网络
OSPF属于内部网关协议(IGP)----属于链路状态协议----一样是经过组播的形式发送路由更新
----直接工做在IP层,协议号是89
ide
何为链路状态协议?
链路:加入ospf的接口以及接口的简要信息。----针对于路由器上链路就是一个接口(也就是一条网段)
状态:有哪些ospf的邻居oop
距离矢量协议和链路状态协议的区别:
距离矢量协议再发送路由更新的时候发送的是完整的路由表,而链路状态协议发送路由更新的时候发送的是链路状态数据库;距离矢量协议只可以知道直连的状况,而链路状态协议能知道整个网络的状况。性能
距离矢量协议是一个听信谣言的协议,而链路状态协议可以知道整个网络的真实状况。
由于距离矢量协议会根据别人告诉你怎么作就怎么作,而ospf就会知道全部的方法而且本身选取一个最优解。this
组播地址:
224.0.0.9(RIP)
224.0.0.5----全部的ospf都会加入
224.0.0.6----只有DR/BDR才会加入3d
要介绍ospf,先介绍ospf路由器的名字--Router ID--RID
RID的做用:在网络中,用于惟一标示一台ospf路由器。通常状况下使用本台设备的IP地址做为RID。code
RID的来源:
①手动指定,经过手动指定的RID具备最高级别的优先权,而且不会更改。
②若是没有手动指定,那么就选择回环接口地址做为RID。若是同时存在多个回环口地址,那么就选择IP地址最大的那个。
③若是即不存在手动,又没有回环口地址,那么就选择双up的物理接口地址做为RID,一样是越大越好。router
OSPF的hello包:
用于发现、创建和维持邻居之间的关系。
若是hello包中的某些参数匹配,则成功创建邻居关系。
hello时间:10s
dead时间:40s
ospf创建的前提:
①hello间隔要一致
②区域ID要一致
③认证类型要一致
④特殊区域要一致
ospf研究要了解三五七-------三张表-------五个报文-------七个状态
三张表:
①邻居表:启用了ospf协议的路由器,就会加入组播地址224.0.0.5,而且往组播地址发送hello报文,同时也会接收到其余ospf路由器发送的hello报文,此时若是hello包中的参数匹配,则成功创建邻居,而且会把对方的RID和hello包的接收接口关联起来造成邻居表。
IOU1#show ip ospf neighbor
②拓扑表:也叫作链路状态数据库(LSDB),造成邻居关系后,邻居路由器之间就会相互发送链路状态通告(LSA),每一台ospf路由器都会把接受到链路状态通告汇总起来造成拓扑表,拓扑表存放就就是整个网络的信息,而且ospf在发送路由更新的时候发送的就是链路状态数据库。
IOU2#show ip ospf database
③路由表:拿到拓扑表运行SPF算法,获得一条最优路径,存放进路由表中。
IOU1#show ip route ospf
SPF算法:也叫做DIJKSTRA算法,是ospf的一个选路标准,是以本身为重构建一棵最短路径树,而且计算出到达目标的最优路径。
如何判断一条路径是否最短?----ospf的选路标准
ospf链路代价的计算:从源到达目的沿途全部出站接口的开销累积和。
接口开销的计算方式:10^8/BW(带宽)
更改接口开销的方式
手动更改:
①更改带宽来更改开销
IOU1(config-if)#bandwidth 100000
--进入出接口更改带宽,从而更改接口开销,可是通常不建议使用这种方法,由于接口的带宽不止于ospf的开销有关,还与eigrp的度量值计算有关。
②直接进接口更改ospf开销
IOU1(config-if)#ip ospf cost n --直接进入接口更改ospf的接口开销--建议使用
OSPF的区域
为何要对ospf进行区域的划分?
ospf使用于大型的网络中,因为设备量大,ospf路由器之间须要相互发送链路状态信息,而且造成庞大的拓扑表,再加上运行复杂的SPF算法,因此就会对设备的性能形成很大的负担,而且消耗更多的资源和带宽。
因此提出了区域的概念,把一整个大的网络域划分红多个比较小的区域,这样每一个区域只须要管理同步本区域内的拓扑信息便可。
ospf的区域分为:骨干区域(区域0)和非骨干区域(除了区域0之外的其它区域)
要求:非骨干区域必定要与骨干区域链接在一块儿。
区域划分的优点:
OSPF的网络类型:能够根据链路类型来区分网络类型
①以太网链路(以太网接口):网络类型是广播多路访问环境(MA),MA的网络环境须要进行DR/BDR的选举。会发送组播的hello报文,hello时间是10s。
②串行链路(串行接口):网络类型是点对点(P2P),点对点链路不须要进行DR/BDR的选举。会发送组播的hello报文,hello时间是10s。
③回环接口:网络类型是loopbacks
④非广播多路访问环境;
DR/BDR
DR:指定路由器
BDR:备份指定路由器
DR/BDR的来源:经过选举的获得,而且是在一条链路上进行选举的。
选举规则:
①先比较接口优先级的大小,优先级大的成为DR。(默认的优先级是1,优先级0的不参与选举)
②若是优先级一致,那么就选择RID比较大的成为DR。
保持稳定原则:DR/BDR的选举是非抢占,若是网络已经选择处一个DR,那么此时就算再加入一台具备更高优先级的路由,也不会立刻抢夺原来DR的位置,除非重置路由信息。
更改接口的优先级:
IOU1(config-if)#ip ospf priority 2 --越大越优先
OSPF基本配置:
IOU2(config)#router ospf 1 --启用ospf协议,进程号1(进程号只在本地有意义) IOU2(config-router)#network 12.12.12.2 0.0.0.0 area 0--通告网段,属于12.12.12.0 网段的IP地址所属接口都会加入ospf进程。 IOU2(config-router)#router-id 192.168.1.1--手动更改RID % OSPF: Reload or use "clear ip ospf process" command, for this to take effect IOU2#clear ip ospf process Reset ALL OSPF processes? [no]: y
惯例√