Amazon CloudWatch 网络监测仪的工作原理 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon CloudWatch 网络监测仪的工作原理

本部分提供有关 Amazon CloudWatch 网络监测仪工作原理的信息。其中包括说明 Amazon 如何收集用于检测互联网连接问题的数据,以及如何计算性能和可用性分数。

内容

Amazon 的优势

Internet Monitor 专注于监测您的 Amazon 资源用户访问的互联网子集,而不是像其他工具那样从世界的各区域广泛监测您的网站。这也是一种经济高效的解决方案,大小公司都能负担得起。

Internet Monitor 使用了同样强大的探测器和问题检测算法,Amazon 通过在 Internet Monitor 中创建运行状况事件,在内部利用这些探测器和算法来提醒您影响应用程序的连接问题。然后,根据您的应用程序资源,Internet Monitor 会覆盖从您的活跃观众那里创建的流量配置文件,从而使您能够访问生成的性能和可用性地图。

利用这些信息,Internet Monitor 可以只向您显示相关事件(即来自您有活跃观众的地方的事件),以及这些事件对您的整体观众量的影响。因此,一个事件有多大影响(按百分比计算)取决于您在全球范围内的总流量。

Internet Monitor 每五分钟将向每个监测仪发送流量的前 500 个城市网络(客户端位置和 ASN,通常是互联网服务提供商或 ISP)的互联网测量数据发布到 CloudWatch Logs。或者,您可以选择将所有受监测城市网络(最多 50 万个城市网络的服务限制)的互联网测量数据发布到 Amazon S3 存储桶。有关更多信息,请参阅在 Amazon CloudWatch 网络监测仪中将互联网测量数据发布到 Amazon S3

Internet Monitor 的优点包括:

  • 使用 Internet Monitor 不会给 Amazon 上托管的应用程序带来额外的负载或成本。

  • 您无需在客户端资源或应用程序中包含性能测量代码。

  • 您可以了解您的应用程序所连接的互联网的性能和可用性,包括“最后一英里”信息。

请注意,因为 Internet Monitor 根据您的 Amazon 资源创建测量数据,所以 Internet Monitor 仅创建特定于您的应用程序流量的事件。全球互联网问题一般不会报告。此外,当服务位置为 Amazon Web Services 区域 时,发出的测量数据和事件旨在表示区域级别的连接,并不能准确表示最终用户位置与可用区之间的连接。

Amazon 如何测量连接问题

Amazon CloudWatch 网络监测仪通过网络或自治系统号(ASN)[通常是互联网服务提供商(ISP)] 来监测不同 Amazon Web Services 区域 之间以及 Amazon CloudFront 入网点(PoP)到不同位置的互联网连接数据。Amazon 操作人员每天在内部使用这些连接数据来主动检测全球互联网的连接问题。

对于每个 Amazon Web Services 区域,我们知道互联网的哪些部分与该区域通信,并执行以下操作:

  • 我们通过 30 天的滚动窗口积极监控互联网的这些部分。

  • 我们使用网络和更高级别的协议探测器,包括入站和出站探测。

Amazon 如何计算可用性和 RTT

Amazon 具有主动和被动探测器,可测量从每个 Amazon Web Services 区域 以及 CloudFront 服务到整个互联网的第 90 个百分位数的延迟(性能)和可到达性(可用性)。它会监控服务与客户位置之间的异常连接模式,然后以警报形式报告给客户。

往返时间(RTT)是指从用户发出请求到向用户返回响应所需的时间。当跨最终用户位置汇总往返时间数据时,将根据每个最终用户位置驱动的流量对该值进行加权。

例如,如果有两个最终用户位置,一个使用 5 毫秒 RTT 提供 90% 的流量,另一个使用 10 毫秒 RTT 提供 10% 的流量,则 RTT 汇总结果是 5.5 毫秒(计算过程:5 毫秒 * 0.9 + 10 毫秒 * 0.1)。

请注意,测量最终用户端延迟的资源存在差异。对于网络监测仪的延迟测量数据,VPC、网络负载均衡器和 WorkSpaces 目录不包含最终用户端的延迟。

网络监测仪如何计算性能和可用性分数

Amazon 拥有大量关于 Amazon 服务与不同城市网络(位置和 ASN)之间的互联网性能和可用性的历史数据。通过对数据进行统计分析,网络监测仪可以检测到您的应用程序的互联网性能和可用性与其估算的基准相比何时有所下降。为了更容易看到这些下降,它会以运行状况分数(性能分数和可用性分数)的形式向您报告该信息。

运行状况分数是按不同的粒度计算的。我们以最精细的粒度计算某个地理区域(例如某个城市或城域)和 ASN(城市网络)的运行状况分数。我们还将单独的运行状况分数汇总为监测仪中应用程序的总体运行状况分数。如果您在查看性能或可用性分数时未以任何特定的地理位置或服务提供商进行筛选,则网络监测仪会提供总体运行状况分数。

在指定的时间段内,总体运行状况分数涵盖整个应用程序。当应用程序的城市-网络对性能或可用性分数在应用程序内达到或低于相应的性能或可用性运行状况事件阈值时,网络监测仪会触发运行状况事件。默认情况下,总体性能和可用性阈值均为 95%。网络监测仪还会根据您配置的值,根据本地阈值(如果该选项处于默认启用状态)创建运行状况事件。要了解有关配置运行状况事件阈值的更多信息,请参阅更改运行状况事件阈值

但是,当您浏览监控和日志文件中的信息以调查问题和了解更多信息时,可以按特定的城市(位置)、网络(ASN 或互联网服务提供商)或同时按城市和网络进行筛选。这样就可以使用筛选条件来查看不同城市、ASN 或城市-网络对的运行状况分数,具体取决于您选择的筛选条件。

  • 可用性分数表示出现可用性下降的流量的估计百分比。Internet Monitor 可估算与观察到的总流量和可用性指标测量值相比下降的流量百分比。例如,最终用户/服务位置对的可用性分数为 99%,相当于其流量的 1% 出现了可用性下降。

  • 性能分数表示出现性能下降的流量百分比。例如,最终用户/服务位置对的性能分数为 99%,相当于其流量的 1% 出现了性能下降。

网络监测仪中地理位置的准确性

对于位置信息,网络监测仪使用 MaxMind 提供的 IP-地理位置数据。网络监测仪测量数据中位置信息的准确性,取决于 MaxMind 数据的准确性。

网络监测仪在计算 TTFB 和 RTT(延迟)时包含哪些数据

首字节时间(TTFB)是指从客户端发出请求到其从服务器接收到首字节信息的时间。Amazon 在计算 TTFB 时会测量从 Amazon EC2 或 Amazon CloudFront 到网络监测仪测量节点(包括节点的最终用户端)的时间。也就是说,对于 EC2 的 TTFB,网络监测仪会测量从用户到 Amazon EC2 区域的时间,对于 CloudFront 的 TTFB,网络监测仪会测量从用户到 CloudFront 的时间。

对于往返时间(RTT),网络监测仪会测量从公有 IP 地址所反映的城市-网络(即客户端位置和 ASN,后者通常是互联网服务提供商)到 Amazon Web Services 区域 的时间。这意味着,对于从网关或 VPN 之后访问互联网的用户,网络监测仪不会测量最终用户端的延迟。

请注意,测量最终用户端延迟的资源存在差异。对于网络监测仪的延迟测量数据,VPC、网络负载均衡器和 WorkSpaces 目录不包含最终用户端的延迟。

在 CloudWatch 控制面板上,在流量洞察选项卡中的流量优化建议部分中,网络监测仪会包含平均 TTFB 信息,旨在帮助您评估应用程序不同设置的选项,从而提高性能。

网络监测仪何时会创建和解决运行状况事件

网络监测仪根据当前设置的阈值为您监测的应用程序流量创建和关闭运行状况事件。网络监测仪具有默认阈值配置,您也可以设置自己的阈值配置。网络监测仪确定连接问题对应用程序的总体影响,以及对应用程序具有客户端的本地区域的影响,并在超过阈值时创建运行状况事件。

对于通过 Amazon 提供给服务的网络流量,Internet Monitor 根据有关互联网性能和可用性的历史数据计算连接问题对客户端位置的影响。它根据客户使用您的应用程序的 ASN 和服务的地理位置,应用与您的应用程序相关的信息:受影响的城市网络对。位置由您添加到监测仪的资源确定。然后,网络监测仪使用统计分析来检测何时出现性能和可用性下降,从而影响应用程序的客户端体验。

网络监测仪计算的性能和可用性分数以出现下降的流量百分比表示。影响与此相反:它表示问题对客户的最终用户造成了多大的影响。例如,如果表示全球可用性下降的值为 93%,则相应的影响将为 7%。

当应用程序的城市-网络对性能或可用性分数在全球范围内达到或低于相应的性能或可用性运行状况事件阈值时,这会导致网络监测仪生成运行状况事件。默认情况下,性能和可用性阈值均为 95%。达到或低于阈值的值是累积性的,因此这可能意味着几个较小的事件合计达到阈值百分比,也可能意味着单个事件达到或低于阈值水平。

只要触发事件的性能或可用性分数等于或低于总体影响的相应运行状况事件阈值百分比,运行状况事件就会保持活动状态。当触发事件的分数或合计分数超过阈值时,网络监测仪会解决运行状况事件。

网络监测仪还根据本地阈值和问题所影响的总流量的百分比创建运行状况事件。您可以配置本地阈值的选项,也可以完全关闭本地阈值。

要了解有关配置运行状况事件阈值的更多信息,请参阅更改运行状况事件阈值

运行状况事件的报告时间

Internet Monitor 使用聚合器收集有关互联网问题的所有信号,以便在几分钟之内在监视器中创建运行状况事件。

Internet Monitor 会尽量分析运行状况事件的起源,以确定该事件是由 Amazon 还是 ASN 引起。事件解决后,会继续进行运行状况事件分析。Internet Monitor 可以在长达一个小时的时间内使用新信息更新事件。

网络监测仪如何处理 IPv4 和 IPv6 流量

如果您通过任何 IP 系列(IPv4 或 IPv6)向网络提供流量,网络监测仪将仅通过 IPv4 测量网络的运行状况,并向您显示运行状况事件以及可用性和性能指标。如果您提供来自双堆栈资源(如双堆栈 CloudFront 分发)的流量,则只有在 IPv4 流量与 IPv6 流量存在相同的资源问题时,网络监测仪才会引发运行状况事件,并显示性能分数或可用性分数下降。

请注意,网络监测仪传入总字节数和传出总字节数指标可以准确反映所有互联网流量(IPv4 和 IPv6)。