BGP协议是什么

描述

  1. BGP****协议是什么?

BGP(Border Gateway Protocol,边界网关协议)是互联网上一个核心的去中心化自治路由协议,运行在TCP协议之上,使用179端口,属于应用层协议,用于传递路由信息。

  1. BGP协议用在什么地方?

在【OSPF协议】一文中提到几个概念:AS自治系统、IGP内部网关协议、EGP外部网关协议。

而BGP即可以用于IGP,也可用于EGP。

因此,BGP又分为IBGP和EBGP:前者为Interior BGP,用于同一个AS内部的连接;后者为Exterior BGP,用于不同AS之间的BGP连接。

为什么会存在IBGP?原因是IGP原有的协议,如OSPF,设计对象是同一AS内,针对中小规模网络设计。如果同一AS内网络规模过于宏大,则IGP OSPF协议存在性能瓶颈。

总的来说,IGP协议(如OSPF)用于小规模内部网络,IBGP用于大规模内部网络,EBGP用于整个互联网。

  1. 为什么会产生BGP协议?

AS自治系统是指在同一组织管理下,使用统一选路策略设备的集合。假设企业网络分总部网络H和分支网络A、B。H、A、B网络分别是AS自治系统,每个AS内部可使用OSPF或ISIS进行路由计算和选择。

那么,如何实现H、A、B的互联呢?

企业总部与分支的互联,需要经过运营商网络,也就是网络路径是H---运营商--A。

尝试使用OSPF协议是否可以呢?答案是否定的。OSPF会进行路由计算和选择,一方面会遇到性能问题,另一方面,运营商的内部网络拓扑是不会共享给企业网络的,也就是运营商网络不会相信你的企业网络。

这就需要BGP协议,BGP协议只传递路由信息,不会进行计算,不会感知对方AS内的网络拓扑,也不会进行周期性更新(使用触发更新)。

  1. BGP 消息报文是如何交互的?

BGP有5种报文:open、update、keepalive、notification、route-refresh。

(1)Open

TCP三次握手成功后,路由器之间相互发送OPEN报文,建立对等体的参数协商,如AS号、keepalive报文发送时间和路由器身份标识router id。

(2)keepalive

Open报文之后,相互发送keepalive报文,收到后,则对等体建立成功。后续会定时发送keepalive报文以便保持连接。

(3)Update

Keepalive后,就可以通过BGP update 报文通告路由到对等体。BGP通告路由有两种方式:

一种是逐条将IP路由表中的路由引入到BGP路由表中,并通告给邻居,称为network方式;

一种是将路由器设备路由表中的路由信息重分发到BGP路由表中,称为import方式。

路由通告完成后,路由器会进行判断,以决定是否引入到路由器的路由表中。

注:建立BGP会话的双方,相互称为BGP对等体;使用loopback地址建立IBGP对等体,使用直连地址建立EBGP对等体。
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分