BGP协议是什么,bgp协议

描述

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

  • 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用于整个互联网。

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

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

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

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

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

  • 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对等体。

    相关推荐

    相关文章