查看 ULL 流量的流日志

本页面介绍了 VPC 流日志中对超低延迟 (ULL) 单播和多播流量的支持。

VPC 流日志会收集 ULL 虚拟私有云 (VPC) 网络中的数据包,以生成流日志。流日志通过 IP 连接(5 元组)汇总。

这些日志可用于网络监控、取证、安全分析和费用优化。例如,多播提供方可以使用基于日志的指标来跟踪多播使用方的丟包。如需了解详情,请参阅 Cloud Logging 文档中的基于日志的指标概览

如需了解详情,请参阅 VPC 流日志概览

ULL 流量的 VPC 流日志记录

下表总结了 ULL 单播和多播流量的 VPC 流日志记录中包含的独特信息,具体取决于流的报告者和流量类型。下表中的信息适用于 ULL Compute Engine 实例。

如需查看 VPC 流日志记录中字段的完整列表,请参阅关于 VPC 流日志记录

流量报告程序 日志说明
ULL 单播来源或目标实例 VPC 流日志记录包含以下附加信息:
  • 实例丟包(适用于源实例)
  • 网络丟包
  • 网络延迟时间
  • 网络抖动

如需了解详情,请参阅 ULL 单播的记录格式

ULL 多播使用方 VPC 流日志记录包含以下附加信息:
  • 有关相应多播网域和群组范围的信息,以便您可以观察从多播群组到多播使用方的吞吐量。
  • 网络丟包
  • 网络延迟时间

如需了解详情,请参阅 ULL 多播使用方的记录格式

ULL 单播的记录格式

下表介绍了 ULL 单播流量的 VPC 流日志记录中的特有字段和字段格式差异。

对于给定的 ULL 单播流,VPC 流日志可能会针对同一流量生成多个不同的流日志记录:

  • 一条用于记录成功传送的数据包的日志记录。此记录默认由系统生成。唯一例外情况是发生实例出站丟包,或者在极少数情况下,在汇总间隔期间发生 100% 的网络丟包。

  • 一个或多个有关丢弃数据包的日志记录,具体取决于丢弃原因。 只有在发生丟包时才会生成这些记录。

如需详细了解每个日志记录中的字段,请参阅下表。

字段 字段格式 字段类型:基本或可选元数据
disposition 字符串
如果日志表示丟包,则此字段会填充 DROPPED 值。否则,此字段不会填充。
基本
drop_reason 字符串
如果 disposition 字段的值为 DROPPED,则此字段会填充以下值之一:
  • LOST_IN_TRANSIT:表示网络丢包
  • SPOOFED_SOURCE:表示由来源 IP 地址欺骗导致的实例出站丟包
  • UNREACHABLE_DESTINATION:表示由未知目的地导致的实例出站丟包
基本
one_way_network_latencies 延迟时间
如果未填充 disposition,表示没有丟包,则此字段会填充在聚合时间间隔内测量的单向网络延迟时间(以毫秒为单位,精确度为纳秒级)。延迟时间测量不包括应用消耗的时间。如果未填充,则无法进行衡量。
基本
one_way_network_latency_jitter LatencyJitter
如果未填充 disposition,则表示没有丟包,此字段将填充源实例和目标实例之间以毫秒为单位的单向网络抖动,精确到纳秒级。
基本
rtt_msec 不会针对 ULL 单播流量进行填充。 基本
round_trip_time 不会针对 ULL 单播流量进行填充。 基本
bytes_sent int64
填充方式如下:
  • 如果未填充 disposition 字段,则此字段是从来源发送到目的地的用户载荷字节数。
  • 如果 disposition 字段填充的值为 DROPPED 且原因是 LOST_IN_TRANSIT,则此字段表示丢弃的用户载荷字节数。
  • 如果 disposition 字段填充的值为 DROPPED,且原因是 SPOOFED_SOURCEUNREACHABLE_DESTINATION,则系统不会填充此字段。
假设一个来源发送了 1, 000 字节,但由于网络丟包而丢弃了 100 字节。在这种情况下,系统会生成两个单独的日志:一个包含 bytes_sent: 900,另一个包含 bytes_sent: 100
基本
packets_sent int64
填充方式如下:
  • 如果未填充 disposition 字段,则此字段是从来源发送到目的地的数据包数量。
  • 如果 disposition 字段填充的值为 DROPPED 且原因为 LOST_IN_TRANSIT,则此字段为丢弃的数据包数量。
  • 如果 disposition 字段填充的值为 DROPPED,且原因是 SPOOFED_SOURCEUNREACHABLE_DESTINATION,则系统不会填充此字段。
基本

ULL 多播使用方的记录格式

下表介绍了当流的报告者是多播使用方时,多播流量的 VPC 流日志记录中的唯一字段和字段格式差异。

对于给定的多播使用方流,VPC 流日志会为同一流量生成最多两条单独的流日志记录:

  • 一条用于记录成功传送的数据包的日志记录。默认情况下会生成此记录,但在极少数情况下(即在汇总间隔期间发生 100% 的网络丟包)不会生成此记录。
  • 一条丢弃数据包的日志记录。仅当发生丟包时,系统才会生成此记录。

如需详细了解每个日志记录中的字段,请参阅下表。

字段 字段格式 字段类型:基本或可选元数据
disposition 字符串
如果日志表示丟包,则此字段会填充 DROPPED 值。否则,此字段不会填充。
基本
drop_reason 字符串
如果 disposition 字段的值为 DROPPED,则此字段会填充 LOST_IN_TRANSIT 值。 否则,此字段不会填充。
基本
one_way_network_latencies 延迟时间
如果未填充 disposition,表示没有丟包,则此字段会填充在聚合时间间隔内测量的单向网络延迟时间(以毫秒为单位,精确度为纳秒级)。延迟时间测量不包括应用消耗的时间。如果未填充,则无法进行衡量。
基本
rtt_msec 不会针对多播流量进行填充。 基本
round_trip_time 不会针对多播流量进行填充。 基本
bytes_sent int64
按如下方式填充:
  • 如果未填充 disposition 字段,则此字段表示从多播生产者发送到消费者的用户载荷字节数。
  • 如果 disposition 字段填充的值为 DROPPED,则此字段表示丢弃的用户载荷字节数。
假设某个多播提供方发送了 1, 000 字节,但有 100 字节被丢弃。在这种情况下,系统会生成两个单独的日志:一个包含 bytes_sent: 900,另一个包含 bytes_sent: 100
基本
packets_sent int64
按如下方式填充:
  • 如果未填充 disposition 字段,则此字段是从多播提供方发送到使用方的数据包数量。
  • 如果 disposition 字段填充的值为 DROPPED,则此字段为丢弃的数据包数量。
基本
来源和目标元数据字段
src_multicast_group_consumer_activation MulticastGroupConsumerActivationDetails
如果流的目的地是多播群组 IP 地址,并且流的报告者是多播使用方,则此字段中会填充多播使用方关联和群组使用方激活详细信息。
元数据

字段格式参考

本部分提供了有关流日志记录中字段格式的参考信息。

如需查看 VPC 流日志记录中字段格式的完整列表,请参阅关于 VPC 流日志记录

延迟时间字段格式

字段 类型 说明
median_msec 双精度 在聚合时间间隔内测量的延迟时间中位数。

LatencyJitter 字段格式

字段 类型 说明
median_msec 双精度 延迟时间中位数抖动。

MulticastGroupConsumerActivationDetails 字段格式

字段 类型 说明
project_id 字符串 包含多播使用方 VPC 网络的项目的 ID。
地理位置 字符串 多播使用方的可用区。
name 字符串 为群组范围激活多播使用方 VPC 网络时创建的多播群组使用方激活的名称。
domain_association 字符串 多播使用方 VPC 网络与网域之间的多播使用方关联的名称。

在 Cloud Logging 中查看流日志

您可以在 Cloud Logging 中查看流日志,并将日志导出至 Cloud Logging 导出功能支持的任意目的地。

如需在 Cloud Logging 中查看流日志,请执行以下操作:

  1. 如果您尚未配置 VPC 流日志,请进行配置。请参阅 VPC 流日志文档中的配置 VPC 流日志
  2. 请按照步骤访问流日志

使用 Flow Analyzer 分析流量

借助 Flow Analyzer,您可以快速高效地了解流量,而无需编写复杂的 SQL 查询。如需了解详情,请参阅 Flow Analyzer 概览

在开始之前,请查看以下限制:

  • Flow Analyzer 中提供了 ULL 流量的 VPC 流日志记录中的所有信息,不包括 ULL 单播丟包。
  • Connectivity Tests 不支持多播。在 Flow Analyzer 中,运行 Connectivity Tests 的界面选项在适用情况下处于停用状态。

如需分析流量流,请执行以下操作:

  1. 如果您尚未启用可观测性分析,请将其启用。请参阅 Flow Analyzer 文档中的启用 Observability Analytics

  2. 按照相应步骤,通过构建和运行流日志查询来分析流量

    在分析 ULL 单播和多播流量时,请考虑以下事项:

    • 过滤条件基本过滤条件可让您定义查询的范围。
    • 显示选项:运行查询后,您可以使用显示选项优化结果。
      • 如需查看吞吐量数据,请使用数据量显示模式。
      • 如需查看延迟时间和抖动数据,请使用延迟时间显示模式。
        • 如需查看延迟时间,请确保为指标类型选择单向(中位数)。虽然往返时间 (RTT) 是默认的指标类型,但 ULL 单播和多播流日志中不提供此数据。
        • 如需查看抖动,请为指标类型选择单向抖动
      • 如需查看丟包数据,请使用丢包显示模式。丢包率数据仅适用于多播流量。以下选项适用于丢包显示模式:
        • 指标类型:与数据量可用的指标类型类似,您可以选择发送的数据包数(默认)和发送的字节数
        • 显示时间轴:使用此选项可确定丟包的计算和显示方式:
          • 丢弃率(默认):显示被丢弃的总流量所占的百分比。
          • 丢弃数:显示丢弃的数据包数或字节数。
        • 高级设置抽样点:与数据量的抽样点选项类似,您可以选择一种方法来确定哪些流日志会显示在图表中:
          • 来源和目标(默认):流的任一端点报告的丟包。
          • 来源:流的来源端点报告的丟包。
          • 目标:流的目标端点报告的丟包。

        此外,在查看丟包数据时,您可以点击给定流的丢弃原因列中的值,详细了解特定丟包情况以及如何缓解该问题。

多播字段的过滤条件参考信息

本部分提供了与多播流量的 VPC 流日志记录字段对应的 Flow Analyzer 过滤条件参考信息。

多播使用方日志的过滤条件

VPC 流日志记录中的字段 在 Flow Analyzer 中过滤 过滤条件类型
MulticastGroupConsumerActivationDetails
src_multicast_group_consumer_activation.project_id 多播使用方项目 ID 流形参数
src_multicast_group_consumer_activation.location 多播使用方位置 流形参数
src_multicast_group_consumer_activation.name 多播使用方激活名称 流形参数
src_multicast_group_consumer_activation.domain_association 多播使用方网域关联 流形参数