Cloud Router 的工作原理

Cloud Router 是一个 API 抽象,由多个冗余 BGP 任务、动态路由控制平面以及 Virtual Private Cloud (VPC) 网络控制平面和数据平面实现。了解这三个软件组件如何协同工作有助于您了解 Cloud Router 操作以及已知路由最佳路径选择选项的工作原理。

Cloud Router 的软件组件

Cloud Router 和 VPC 中包含几个软件组件:

Cloud Router BGP 任务
Cloud Router BGP 任务分组到一个区域内。每个 BGP 任务都与其区域和组的动态路由控制平面进行通信。BGP 任务不会处理数据包数据处理。不过,BGP 任务会管理 BGP 会话以发送和接收 BGP 前缀。
动态路由控制平面
每个区域都包含一个动态路由控制平面,用于与其区域和组的 BGP 任务进行通信。在全球动态路由模式下,一个区域中的动态路由控制平面还会与其他区域中的动态路由控制平面通信。每个动态路由控制平面都会向 VPC 网络控制平面发送消息。
VPC 网络控制平面和数据平面

Google Cloud 使用 Andromeda 网络虚拟化堆栈(PDF 下载)作为 VPC 网络的分布式控制平面和数据平面,其中包括以下组件:

VPC 网络控制平面
每个区域都包含一个 VPC 网络控制平面,该控制平面会从自己区域中的一组动态路由控制平面接收信息。每个 VPC 网络控制平面都会在接收 VPC 网络中对动态路由进行编程。VPC 网络控制平面还会实施动态路由配额。
VPC 网络数据平面
每个区域都包含一个 VPC 网络数据平面,该数据平面会使用 VPC 网络控制平面中的信息评估和实现动态路由。VPC 网络数据平面会执行数据包转发。

Cloud Router BGP 任务

下表展示了 Cloud Router 路由器用于常见场景的 BGP 任务的数量:

示例场景 用于实现 Cloud Router 路由器的 BGP 任务的数量
一个或多个接口,每个接口连接到一个传统 VPN 隧道。 一个 BGP 任务
一个或多个接口,每个接口连接到一个 VLAN 连接,VLAN 连接位于同一边缘可用性网域中。 一个 BGP 任务
任意数量的接口,每个接口连接到一个高可用性 VPN 隧道,隧道都连接到一个或多个高可用性 VPN 网关上的相同接口编号。例如,两个隧道分别连接到不同高可用性 VPN 网关上的 interface 0 一个 BGP 任务
至少两个接口,一个接口连接到一个边缘可用性网域中的 VLAN 连接,另一个接口连接到一个高可用性 VPN 隧道,边缘可用性网域编号和 VPN 网关接口编号相同。例如,一对边缘可用性网域中的第一个边缘可用性网域和第一个 VPN 网关接口。 一个 BGP 任务
至少两个接口,均连接到路由器设备实例,其中一个接口配置为冗余接口。如需创建冗余接口,请使用 redundant-interface 标志 (Google Cloud CLI) 或 redundantInterface 字段 (Compute Engine API)。路由器设备是 Network Connectivity Center 的一部分。 两个 BGP 任务
至少两个接口,每个接口连接到一个 VLAN 连接,VLAN 连接位于不同的边缘可用性网域中。 两个 BGP 任务
至少两个接口,每个接口连接到一个高可用性 VPN 隧道,每个隧道连接到不同的高可用性 VPN 网关接口编号。例如,一个隧道连接到高可用性 VPN 网关的 interface 0,另一个隧道连接到相同网关的 interface 1 或另一个网关。 两个 BGP 任务
至少满足以下条件的 Cloud Router 路由器:
  • 一个接口连接到 edge availability domain 0 中的一个 VLAN 连接和/或一个接口连接到一个高可用性 VPN 隧道,该隧道连接到高可用性 VPN 网关的 interface 0
  • 一个接口连接到 edge availability domain 1 中的一个 VLAN 连接和/或一个接口连接到一个高可用性 VPN 隧道,该隧道连接到高可用性 VPN 网关的 interface 1
  • 一个接口连接到传统 VPN 隧道。
三个 BGP 任务

软件维护

Google Cloud 会定期执行维护事件,以发布新功能并提高可靠性。在维护期间,新的 BGP 任务会接任成为 BGP 发言者和响应者。

系统会自动维护 Cloud Router 路由器,旨在确保不会中断路由。维护事件用时预计不会超过 60 秒。在维护之前,Cloud Router 路由器会将优雅重启通知(TCP FIN 数据包)发送到本地路由器。

如果您的本地路由器可以处理安全重启事件,则会在 Cloud Router 路由器维护期间记录安全重启事件。对于不支持优雅重启的本地路由器,请确保将本地路由器的保留计时器设置为 60 秒。

BGP 保留定时器确定在对等互连的 BGP 路由器不可用时将已知路由保留多长时间。BGP 保留计时器通过协商确定为两端两个值中的较低者。Cloud Router 使用默认值为 60 秒的 BGP 保留计时器。我们建议您将本地路由器上的 BGP 保留计时器设置为 60 秒或更长时间。这样一来,两个路由器都会在这些升级期间保留其路由,并且流量可持续流动。如需了解详情,请参阅管理 BGP 计时器

Cloud Router 路由器维护事件不会提前通知,因为路由不会在正确配置的本地路由器上丢失。如需详细了解已完成的维护事件,请参阅识别路由器维护事件

如需了解优雅重启如何与双向转发检测 (BFD) 搭配使用,请参阅优雅重启和 BFD