4.3 OSPF
OSPF(开放最短路径优先)是一种基于链路状态算法的分层次的路由协议,层次中最大的实体是AS(自治系统)。因而把AS划分为多个区域。
OSPF由二个互相关联的主要部分组成:Hello协议和“可靠泛洪”机制
Hello协议检测邻居并维护邻接关系,可靠泛洪算法可以确保同一个城中的所有OSPF路由器始终具有一致的链路状态数据库,而该数据库构成了对域的网络拓扑和链路状态的映射
4.3.1 OSPF基本概念
1.链路状态
OSPF使用的链路状态路由与RIP所使用的距离矢量路由的本质区别在于,链路状态路由中,每一个路由器所获得的信息不仅仅局限于邻居路由器的路由表信息,而是对整个网络的结构都有完整的记录。
2.区域
OSPF协议引入“分层路由”的概念,将网络分割成一个主干连接的一组相互独立的部分,这些相互独立的部分被称为区域,主干的部分称为主干区域,Area0为主干区域,
3.网络类型
根据路由器所连接的物理网络不同,将OSPF划分为4种类型:广播多路访问型、非广播多路访问、点到点型、点到多点型
4.路由器类型
内部路由器:所有的端口在同一个区域的路由器,维护一个链路状态数据库
主干路由器:具有连接主干区域端口的路由表
区域边界路由器:具有连接多区域端口的路由器,一般作为一个区域的出口
自治系统边界路由器:至少拥有一个连接外部自治区域端口的路由器,负责将非OSPF网络信息传入OSPF网络
4.3.2 OSPF的特点
与RIP相比 OSPF具有以下特点
(1)可适应大规模网络(2)路由变化收敛速度快
(3)无路由自环(4)支持可变长子网掩码
(5)支持等值路由(6)支持区域划分和路由分级管理
(7)支持验证(8)支持组播地址发送协议报文 224.0.0.5
4.3.3 协议操作
(1)建立路由器的邻接关系(2)选举DR/BDR
(3)发现路由器(4)选择适当的路由器(5)维护路由信息
4.3.5 OSPF与RIP的区别
目前用的较为多的路由协议有RIP和OSPF 他们同属于内部网关协议,但RIP基于距离矢量算法而OSPF基于链路状态的最短路径优先算法,此外 RIP是利用UDP作为其传输协议而OSPF是直接在IP上进行传输。
在RIP中,所有的路由都有跳数来度量,到达目的地的路由最大不超过16跳,且只有一条相比之下OSPF是基于链路状态的路由协议,克服了RIP的许多缺陷
OSPF不再采用跳数的概念,而是根据接口的吞吐率、拥塞状况、往返时间、可靠性等实际链路的负载能力定出路由的代价,同时选择最短、最优路由并允许保持同一目标地址的多条路由,从而实现负载均衡
OSPF支持不同服务类型的不同代价,从而实现不同的QOS的路由服务
OSPF路由器不再广播和交换路由表,而是同步各路由器对网络状态的认识,即同步路由器上保存的链路状态数据库,然后通过Dijkstra最短路径算法计算出到网络中各目的地址的最优路由。
4.4 BGP
一个AS有时也称为一个路由选择域,一个AS将分配一个全局唯一的16位号码,有时把这个号码叫做自治区域号(ASN)

BGP(边界网关协议)使用TCP端口号179建立连接
BGP的路由算法较为复杂,其路由开销不仅要考虑延迟、网络拥塞等技术因素还要考虑政治、安全、经济等方面的因素
BGP基本上是属于距离矢量协议,但又与RIP那样的距离矢量协议不同,BGP路由器不仅维护到每个目标的开销量,还记录下到达该目标的路径,这样可以避免路径中出现循环,轻易的解决了距离矢量协议的循环路径问题。由于存储路径的信息BGP有时也称为距离矢量协议