管理 BGP 计时器

本页面介绍以下内容:

  • Cloud Router 路由器的 BGP 计时器及其设置,包括在本地路由器上配置相同设置的指导。
  • 更新 Cloud Router 路由器的 BGP keepalive 间隔。

BGP 计时器和设置

Cloud Router 路由器与您的本地路由器会使用以下一组计时器设置来保持通信。

keepalive 计时器

BGP 系统交换 keepalive 消息以确定链路或主机是发生故障还是不再可用。keepalive 计时器与保留计时器一起指示路由器是否可以通过其 BGP 对等端访问。

keepalive 计时器是 Cloud Router 路由器与其对应的本地对等路由器之间定期交换的 BGP 消息之间的 KEEPALIVE_INTERVAL。您可以按照更新 BGP keepalive 时间间隔中的说明配置此值。默认值是 20 秒。Google Cloud 建议在本地路由器和 Cloud Router 路由器上将 keepalive 计时器设置为相同的值。

保留计时器

此计时器会跟踪自上次成功检测到 keepalive 消息以来的最短时间。它指示 Cloud Router 路由器或本地路由器在移除从另一个路由器获知的路由之前应等待的时长(缺少优雅重启通知的情况下)。

Cloud Router 会将此值设置为已配置的 keepalive 计时器值乘以 3。例如,如果 keepalive 计时器为 20 秒,则保留计时器设置为 60 秒。同样,将本地路由器上的保留计时器设置为 Cloud Router keepalive 计时器乘以 3 的值。

安全重启计时器

此计时器会跟踪一个路由器在收到来自另一个路由器的优雅重启通知(TCP FIN 或 RST 数据包)后等待的时间。支持优雅重启的路由器会通告优雅重启计时器值,该值定义另一个路由器在收到优雅重启通知后应等待的时间。两个对等路由器可以使用不同的优雅重启计时器值,但路由器应该遵循其对等方的优雅重启计时器值。建立新的 BGP 会话时,每个路由器都会通过 BGP OPEN 消息将自己的优雅重启计时器值传递给对等路由器。

Cloud Router 支持优雅重启,并且 Cloud Router 优雅重启计时器设置为 60 秒。每个 Cloud Router 路由器都会在每个软件维护事件之前发送优雅重启通知。

如果您为本地路由器配置了优雅重启功能,那么它还可以在本地路由器重启或维护事件期间向 Cloud Router 发送优雅重启通知。将本地路由器的优雅重启计时器设置为适合您需求的值。

过时路径计时器

此设置用于确定在收到来自另一个路由器的记录结束 (EOR) 消息后,路由器要等待多久才能删除已知路由。当 BGP 会话安全重启后进行重新初始化时,此计时器会启动,但 UPDATE 消息尚未处理相关前缀。我们建议在本地路由器上将过时路径计时器设置为 300 秒,以与 Cloud Router 路由器的设置相匹配。

更新 BGP keepalive 间隔

如需修改 Cloud Router 路由器上的 BGP keepalive 时间间隔,请按以下步骤操作。

控制台

  1. 在 Google Cloud 控制台中,前往 Cloud Router 路由器页面。

    前往“Cloud Router 路由器”

  2. 选择包含要修改的 BGP 间隔的 Cloud Router 路由器。

  3. 路由器详情页面上,点击 修改

  4. 更新 BGP 对等端 keepalive 间隔。此值必须是介于 20 到 60 之间的整数,用于指定该间隔的秒数。默认时间为 20 秒。

  5. 点击保存

gcloud

运行 update 命令:

gcloud compute routers update ROUTER_NAME \
    --project=PROJECT_ID \
    --keepalive-interval=KEEPALIVE_INTERVAL \
    --region=REGION

请替换以下内容:

  • ROUTER_NAME:Cloud Router 路由器的名称
  • PROJECT_ID:Cloud Router 路由器所属的项目
  • KEEPALIVE_INTERVAL:发送到对等路由器的 BGP keepalive 消息之间的时间间隔

    此值必须是介于 20 到 60 之间的整数,用于指定该间隔的秒数。默认时间为 20 秒。

  • REGION:Cloud Router 路由器所在的区域

输出内容类似如下:

  Updating router [my-router]...done.

API

使用 routers.patch 方法更新 bgp.keepaliveInterval 字段:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
      "bgp": {
        "keepaliveInterval": KEEPALIVE_INTERVAL
     }
   }

请替换以下内容:

  • PROJECT_ID:Cloud Router 路由器所属的项目
  • REGION:Cloud Router 路由器所在的区域
  • ROUTER_NAME:Cloud Router 路由器的名称
  • KEEPALIVE_INTERVAL:发送到对等路由器的 BGP keepalive 消息之间的时间间隔

    此值必须是介于 20 到 60 之间的整数,用于指定该间隔的秒数。默认时间为 20 秒。

后续步骤