OSPF及外部网关协议BGP
OSPF(开放最短路径优先)
为克服RIP中网络出故障时,传播时间往往需要较长的时间(例如数分钟)的缺点而设计。
一)开放:不受某一厂家控制,是公开发表的。
二)最短路径算法SPF:由Dijkstra提出,将每一个路由器作为根(ROOT)来计算其到每一个目的地路由器的距离,每一个路由器根据一个统一的链路状态数据库会计算出全网的拓扑结构图,这个拓扑结构图在全网范围内是一致的(链路状态数据库的同步),该结构图类似于一棵树,在SPF算法中,被称为最短路径树。
在OSPF路由协议中,最短路径树的树干长度,即OSPF路由器至每一个目的地路由器的距离,称为OSPF的Cost,其算法为:Cost = 100×(10)^6/链路带宽。在这里,链路带宽以bps来表示。也就是说,OSPF的Cost 与链路的带宽成反比,带宽越高,Cost越小,表示OSPF到目的地的距离越近。举例来说,FDDI或快速以太网的Cost为1,2M串行链路的Cost为48,10M以太网的Cost为10等。
三)分布式的链路状态协议。
>>> 谁向谁 多久一次 发送什么?
仅当路由器的链路状态发生变化时,使用洪泛法向本AS中所有路由器发送与本路由器相邻的所有路由器的链路状态。
链路状态:就是说明本路由器都和哪些路由器相邻,以及该链路的“度量”(费用、距离、时延、带宽等)
为了使 OSPF 能够用于规模很大的网络,OSPF 将一个自治系统再划分为若干个更小的范围,叫作区域。每个区域都有一个32位的区域标识符(用点分十进制表示)。每个区域不能太大,其中的路由器最好不超过200个。
使用层次结构的区域划分:
- 主干区域
- 区域
各区域中路由器的划分:
- 区域边界路由器
- 主干路由器
- 自治系统边界路由器
OSPF直接用IP数据报传输(不用UDP),可以不必将长的数据报分片传送。
边界网关协议BGP
一)互联网规模太大,使AS之间的路由选择非常困难。
二)AS之间的路由选择必须考虑组策略。
>>> BGP设计思想:
——BGP 只能是力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由。
——采用路径向量路由选择协议。
——在配置BGP时,需要选择至少一个BGP边界路由器作为该自治系统的“BGP发言人”,BGP发言人之间交换路由信息时,需要先建立TCP连接,然后在TCP连接上交换 BGP 报文以建立 BGP 会话(session),利用BGP会话交换路由信息。如增加新的路由或撤销过时的路由,以及报告出差错情况等。
使用TCP连接交换路由信息的两个BGP发言人,彼此成为对方的邻站或对等站
特点:
- BGP协议交换路由信息的结点数量级是AS数的量级
- 每个AS中BGP发言人的数目很少
- 支持无分类域间路由选择CIDR
- 在BGP 刚刚运行时,BGP 的邻站是交换整个的 BGP 路由表,但以后只需要在发生变化时,更新有变化的部分。
BGP-4的四种报文:
- OPEN(打开)报文
- UPDATE(更新)报文
- KEEPALIVE(保活)报文
- NOTIFICATION(通知)报文
BGP报文格式: