5.3.4 因特网的路由协议(四)BGP协议
我们学习的RIP协议(5.3.2 因特网的路由协议(二)基于距离向量算法的RIP协议)和OSPF协议(5.3.3 因特网的路由协议(三)OSPF协议)都是内部网关协议,都是只能作用于一个自治系统中,如何实现在不同的自治系统之间也能进行信息的传递,这就需要依靠外部网关协议比如BGP作为两个自治系统之间信息传递的桥梁,BGP协议又被成为边界网关协议,它是运行于TCP之上的路由协议,BGP 是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间的多路连接的协议,与RIP协议、OSPF协议不同的是BGP协议采用了一种路径向量路由算法去找到一条到达目的网络或者目的自治系统并且相对来说比较好的路由,并非像RIP、OSPF那样去找到一条路由器数量最少或总的代价最小的最佳路由。
一、不同自治系统之间利用BGP协议进行通信原理
如图
图中存在三个不同的自治系统分别是AS100、AS200、AS300,在自治系统内部使用的是内部网关协议IGP(5.3.1 因特网的路由协议(一)),在自治系统之间使用的是外部网关协议EGP(5.3.1 因特网的路由协议(一)),当他们三个自治系统之间需要相互通信的时候各自都必须选择一个边界路由器作为BGP的Speaker,也称之为BGP的发言人,如此以来不同自治系统之间相互通信的目的就可以利用BGP发言人来达成。
二、路由协议特点
- RIP协议,它是一种基于距离向量算法的分布式路由选择协议,只适用于小型自治系统,最大跳数是15,不能同时使用多条路由,并且每隔30秒会和邻居路由器交换各自的整个路由表。这里我们要注意,这个协议是工作在应用层的,在传输层选择的是UDP协议。
- OSPF协议,它是基于链路状态的路由选择协议,采用了Dijkstra最短路径算法并且通过洪泛法更新链路状态信息,并且所有路由器都维持着一个链路状态数据库,这个协议是工作在网络层。它与我们前面介绍的ICMP协议(5.2.7 因特网控制报文协议ICMP)一样,OSPF报文是封装在IP数据报的数据部分。即它直接使用IP数据报来传送信息。
- BGP协议,他通过路径向量算法保存路径,该协议主要用于在不同的自治系统之间交换信息,它同RIP一样是工作在应用层,但是它的传输层选择的是TCP协议。