跳至主要内容

什么是 BGP(边界网关协议)?

什么是边界网关协议?

边界网关协议(BGP)是一组规则,用于确定在互联网上传输数据的最佳网络路由。互联网由成千上万的私有、公有、企业和政府网络组成,这些网络通过标准化协议、设备和通信技术连接在一起。当您浏览互联网时,数据会途经多个网络,然后到达目的地。BGP 的责任是检查数据可能途径的所有可用路径,然后选择最佳路线。例如,当美国的用户加载原始服务器位于欧洲的应用程序时,BGP 可以实现快速高效的通信。

为什么边界网关协议很重要?

边界网关协议(BGP)通过数据路由使互联网正常运行。BGP 路由至关重要,因为互联网的核心是由数十万个自治系统组成的。

自治系统是指由单个管理实体控制的小型网络。您可以通过互联网号码分配机构(IANA)分配的自治系统编号来唯一标识此类网络。当数据从源移动到目标时,会在自治系统之间传输。

BGP 支持每个自治系统执行以下操作。

查找最佳路线

当数据通过互联网从源传输到目标时,沿途的每个自治系统都需要决定数据包下一步将传输到的位置。

该决策基于多个属性,例如数据通过的网络数量、首选出口点和首选入口点。BGP 路由会考虑这些因素并帮助确定下一个最佳的自治系统,从而使数据根据策略通过最佳路径从源传输到目标。

发现网络连接的变化

互联网的结构是动态的。新的自治系统不断增加,而旧的自治系统不断被移除。每个自治系统都必须随时更新有关新路由和过时路由的信息。BGP 可以帮助系统发现此类网络变化并保持更新。

管理网络策略

BGP 具有灵活性,允许自治系统管理员实施自己的路由策略。

例如,您可以配置运行 BGP 的路由器,以区分自治系统内部和外部的路由。管理员可以设置规则来确定应在内部还是外部路由数据。

增加一层网络安全保障

BGP 可支持网络管理中的安全性。例如,BGP 可以使用资源公钥基础设施(RPKI)验证路由源授权。RPKI 有助于防止路由劫持。

BGP 确保自治系统间的路由策略一致

边界网关协议允许每个自治系统应用自己的路由策略,这有助于明确确定流量如何在多个网络之间流动。BGP 协议允许您控制连接如何选择和发布路由,而不必遵循单一的全局规则集。

定义自己的路由策略将确保任何 BGP 路由决策直接符合任何内部业务需求。使用边界网关协议(BGP)的策略驱动型连接方法为您提供了一种可预测和优化的方式,可以在自治系统之间路由流量,同时保持对边界网关的完全控制。

边界网关协议的工作原理是什么?

边界网关协议(BGP)使用一种称为对等的机制工作。管理员将特定路由器指定为 BGP 说话人,与 BGP 邻居建立会话,从而与其他邻居路由器建立连接。这些对等体位于自治系统的边缘,共享信息。它们可以使用外部 BGP(eBGP)与其他自治系统共享信息,或者在内部与同一自治系统内的 iBGP 共享信息。

两个对等体需要建立可靠的 TCP 连接,在此期间,每个对等体共享关键参数,例如其系统号和路由器 ID(也称为 BGP 标识符)。会话处于活动状态后,对等体就可以开始交换信息。

BGP 对等体执行多种主要功能。

路由发现

BGP 对等体通过网络层可达性信息(NLRI)和路径属性与相邻 BGP 对等体交换路由信息。NLRI 包括有关邻居以及如何到达特定目标网络的连接信息。路径属性包括 AS 路径、下一跃点、本地首选项和其他 BGP 属性。

交换信息后,每个 BGP 对等体都可以构造网络连接的路由信息库(RIB),以确定可达性。

路由存储

在发现过程中,每台 BGP 路由器都会收集路由通告信息并以路由表的形式存储这些信息。它使用路由表进行路径选择,还会经常更新。

例如,BGP 路由器可能每 60 秒收到来自邻居路由器的 keepalive 消息,从而相应地更新存储的路由。

路径选择

BGP 路由器使用路由表中存储的信息来路由流量。路径选择遵循路由策略,采用基于规则的顺序决策。BGP 路由因素,例如来源、AS 路径、本地首选项和路由器 ID,有助于确定最佳路径。当可以从多个路径到达目标时,BGP 根据路径选择算法顺序评估路径属性来选择最佳路径。

边界网关协议有哪些类型?

边界网关协议(BGP)根据数据路由的位置分为内部 BGP 和外部 BGP。

外部 BGP 路由器将自治系统连接到全局互联网。但是,大型自治系统本身由内部较小的联网系统组成。内部 BGP 在系统内路由数据。

外部 BGP 与内部 BGP 的对比

内部和外部 BGP 对等之间的主要区别在于默认情况下,将从一个对等体接收的 BGP 路由传播到其他对等体的方式。具体说明如下:

  • 从外部 BGP 对等体获知的新路由将重新通告给所有对等体
  • 从内部 BGP 对等体获知的新路由仅重新通告给所有外部对等体,而不是内部对等体

此外,组织必须使用外部 BGP 将其公司网络连接到互联网。

与之相对的是,组织没有义务使用内部 BGP。您可以根据组织的网络要求从多种内部路由协议中进行选择。

边界网关协议如何处理扩缩?

假设有数十亿台设备连接到互联网,一个边界网关协议(BGP)路由器如何能够与成千上万个潜在对等体连接? 人们采用几种方法来管理扩缩和适应互联网的扩展。每个级别都使用细分,因此每台路由器必须记住的对等体数量保持可控。

以下是 BGP 处理扩缩的几种方式。

路由反射器

路由反射器(RR)可以减少内部 BGP 中的连接数量。单个路由器可以充当与内部路由器集群对等的中央集线器。

您可以将您的网络划分为多个集群和 RR。RR 相互通信以及与外部 BGP 路由器通信,客户端路由器仅与单个 RR 对等,而不是与自治系统中的所有路由器对等。

联盟

联盟是通过将自治系统分成多个子部分来扩展内部 BGP 的一种方式。联盟是一组自治系统,对互联网的其他部分而言,它们具有单个自治系统编号(ASN)。

例如,几个欧洲国家/地区的互联网服务提供商(ISP)可能会组成欧洲联盟。外界将看到多个国家/地区具有单个 ASN。

路由聚合

路由反射器和联盟有助于减少全球 BGP 网络的数量。但是,全球顶级对等体的数量也在持续增长。

为了防止路由表最终耗尽,ISP 通力合作,尽可能缩小全球路由表的规模。他们使用无类别域间路由(CIDR)来更有效地分配 IP 地址。还使用路由聚合在单个路由表条目中表示多个网络。

边界网关协议如何建立 BGP 邻居关系?

BGP 邻居关系是在运行 BGP 的两台路由器之间形成的连接,允许它们交换路由信息。在边界网关协议中,邻居关系定义了哪些已配置的路由可以在不同的自治系统之间共享目标网络的可达性数据。这有助于协调互联网上多个网络之间的路由。

BGP 通过端口 179 启动与已配置对等地址的传输协议(TCP)连接,使用另一台路由器的自治系统编号来识别该路由器,从而建立这种关系。由于边界网关协议是一种外部路由协议,因此它使用 TCP 来形成稳定的 BGP 会话。这两台路由器将交换 BGP 消息,确认所有必要的参数,例如路由器 ID,然后共享路由。

由于可信邻居可以通告 BGP 路由,因此邻居对等连接过程可帮助网络运营商维持稳定的路由决策,并在互连网络上执行策略。

边界网关协议历史

在 1989 年边界网关协议发明之前,较小规模的互联网是通过外部网关协议(EGP)连接的。随着越来越独立的网络形成自己的自治系统结构,人们需要更具可扩展性的路由协议来可靠地在这些系统之间交换路由信息。最初的 BGP 协议是作为路径向量协议创建的,它允许每个自治系统通告其可访问的 IP 前缀,同时防止出现任何路由环路。

边界网关架构稳步发展,支持组织(甚至包括互联网服务提供商)之间更基于策略的路由系统。边界网关协议的改进引入了路由策略控制,改进了现有的 BGP 属性,并允许更好地处理多条路径和确定通往目标网络的最佳路由。添加了无类域间路由,以减少全球路由表的增长并提高可扩展性。

边界网关协议增加了其他功能,例如支持大型网络中的内部 BGP、路由反射器和 BGP 联盟等可扩展性功能。在技术层面,小规模迭代完善了 keepalive 消息如何保持稳定的 BGP 邻居关系、BGP 消息如何发出错误信号,以及如何通过 TCP 连接形成 BGP 会话。

这些改进使其成为当今自治系统边缘路由器上的基础路由协议。

AWS 如何支持您的 BGP 路由协议需求?

Amazon Web Services(AWS)提供 AWS Transit Gateway 和 AWS Direct Connect,以支持您的边界网关协议(BGP)路由协议要求。

Transit Gateway

Transit Gateway 通过中央枢纽,使用路由表连接您的 Amazon Virtual Private Cloud(VPC)和本地网络。这种连接方式简化了网络架构,并消除了复杂的对等连接关系。

Transit Gateway 充当高度可扩展的云路由器,每个新的连接只建立一次。它支持 BGP over VPN,可以通过网络虚拟设备的原生集成来简化分支连接。任何支持 BGP 的第三方设备均可使用 Transit Gateway。

AWS Direct Connect

同样,AWS Direct Connect 是访问 AWS 资源的最短路径。在传输过程中,您的网络流量始终留在 AWS 全球网络上,绝不会经过公共互联网。

您可以使用附加了一个或多个中转虚拟接口的 AWS Direct Connect 网关,在任何受支持的 AWS 区域中与最多三个中转网关交互。您可以通过单个中转虚拟接口建立一个 IPv4 BGP 会话和一个 IPv6 BGP 会话。

立即创建免费账户,开始在您的 AWS 资源和企业网络之间进行 BGP 路由。

Browse all cloud computing concepts

Browse all cloud computing concepts content here:

正在加载
正在加载
正在加载
正在加载
正在加载

Did you find what you were looking for today?

Let us know so we can improve the quality of the content on our pages