BGP 协议介绍

BGP 全称是 Border Gateway Protocol, 对应中文是边界网关协议。
BGP是互联网上一个核心的去中心化自治路由协议。

边界网关协议BGP(Border Gateway Protocol)是一种实现自治系统AS(Autonomous System)之间的路由可达,并选择最佳路由的距离矢量路由协议。早期发布的三个版本分别是BGP-1、BGP-2和BGP-3,1994年开始使用BGP-4,2006年之后单播IPv4网络使用的版本是BGP-4,其他网络(如IPv6等)使用的版本是MP-BGP。
MP-BGP是对BGP-4进行了扩展,来达到在不同网络中应用的目的,BGP-4原有的消息机制和路由机制并没有改变。
MP-BGP在IPv6单播网络上的应用称为BGP4+,在IPv4组播网络上的应用称为MBGP(Multicast BGP)。

BGP从多方面保证了网络的安全性、灵活性、稳定性、可靠性和高效性:
BGP采用认证和GTSM的方式,保证了网络的安全性。
BGP提供了丰富的路由策略,能够灵活的进行路由选路,并且能指导邻居按策略发布路由。
BGP提供了路由聚合和路由衰减功能用于防止路由振荡,有效提高了网络的稳定性。
BGP使用TCP作为其传输层协议(端口号为179),并支持BGP与BFD联动、BGP Tracking和BGP GR和NSR,提高了网络的可靠性。
在邻居数目多、路由量大且大多邻居有相同出口策略场景下,BGP用按组打包技术极大提高了BGP打包发包性能
更多名词定义:

名词概念 描述
BGP 1. 边界网关协议(Border Gateway Protocol)是互联网上一个核心的去中心化自治路由协议,它通过维护IP路由表或前缀表来实现自治系统(AS)之间的可达性
2. 大多数ISP使用BGP来与其他ISP创建路由连接,特大型的私有IP网络也可以使用BGP
3. BGP的通信对端(对等实体,Peer)通过TCP(端口179)会话交换数据,BGP路由器会周期地发送19字节的保活消息来维护连接。在路由协议中,只有BGP
IBGP 内部边界网关协议。同一个AS内部的两个或多个对等实体之间运行的BGP被称为IBGP
IGP 1. 一个IGP内部应该仅有数十(最多小几百)个对等实体
2. 对于端点数,也存在限制,一般在数百(最多上千)个Endpoint级别
IBGP和IGP都是处理AS内部路由的,仍然需要IGP的原因是:
(1) IBGP之间是TCP连接,也就意味着IBGP邻居采用的是逻辑连接的方式,两个IBGP连接不一定存在实际的物理链路。所以需要有IGP来提供路由,以完成BGP路由的递归查找
EBGP 外部边界网关协议。归属不同的AS的对等实体之间运行的BGP称为EBGP。
Border Router 边界路由器,在AS边界上与其他AS交换信息的路由器
AS 自治系统(Autonomous system),一个组织(例如ISP)管辖下的所有IP网络和路由器的整体。
参与BGP路由的每个AS都被分配一个唯一的自治系统编号(ASN)。对BGP来说ASN是区别整个相互连接的网络中的各个网络的唯一标识。64512到65535之间的ASN编号保留给专用网络使用
Route Reflector 1. 同一AS内如果有多个路由器参与BGP路由,则它们之间必须配置成全连通的网状结构——任意两个路由器之间都必须配置成对等实体。由于所需要TCP连接数是路由器数量的平方,这就导致了巨大的TCP连接数
为了缓解这种问题,BGP支持两种方案:Route Reflector、Confederations
路由反射器(Route Reflector)是AS内的一台路由器,其它所有路由器都和RR直接连接,作为RR的客户机。RR和客户机之间建立BGP连接,而客户机之间则不需要相互通信
RR的工作步骤如下:
(1)从非客户机IBGP对等实体学到的路由,发布给此RR的所有客户机
(2)从客户机学到的路由,发布给此RR的所有非客户机和客户机
(3)从EBGP对等实体学到的路由,发布给所有的非客户机和客户机
RR的一个优势是配置方便,因为只需要在反射器上配置
工作负载 Workload,即运行在Calico节点上的虚机或容器
全互联 全互联网络(Full node-to-node Mesh)是指任何两个Calico节点都进行配对的L3连接模

你可能感兴趣的