网络与保护
检查带宽并诊断吞吐量
将端口速度、流量、数据包错误和应用程序吞吐量分开,然后收集对故障排除有用的测量数据。
开始之前
- 一台活跃的服务器以及对其操作系统的管理访问权限。
- 承载生产流量的接口名称以及服务器配置中的预期端口层级。
- 精确的 UTC 事件窗口、源地址和目标地址、协议以及预期与观察到的结果。
- 允许检查本地接口计数器而不重置或更改它们。
区分测量值
端口速度是协商或配置的链路速率。流量是随时间传输的字节数或数据包数。吞吐量是工作负载实现的有效速率,取决于两个端点、协议行为、磁盘和CPU限制、数据包丢失、延迟、拥塞和测试设计。不限流量意味着包含的服务不按传输配额计费;它不会消除物理端口限制,也不能保证每个流都能达到线速。
服务器显示与您的配置关联的端口层级。该标签不是流量测量。网络图表尚不包含实时样本,因此请使用您自己的监控来获取使用情况、峰值和历史证据。
| 信号 | 问题已回答 | 当前来源 |
|---|---|---|
| 目录端口层级 | 订购了哪种链路层级? | 服务器摘要 |
| 接口字节计数器 | 此客户机接口传输了多少流量? | 操作系统 |
| 错误/丢弃计数器 | 客户机或设备是否报告了数据包问题? | 操作系统和驱动程序 |
| 提供商交换机计数器 | 客户机外部发生了什么? | 仅运营商 |
| 应用时序 | 工作负载体验到的性能如何? | 您的应用程序监控 |
收集只读基线
发现接口名称,然后在已知间隔内检查其计数器两次。将 eth0 替换为实际接口。Linux 内核文档说明 ip -s -s 可显示详细的链路统计信息,ethtool 可显示标准和驱动程序定义的计数器。计数器名称和支持因驱动程序而异,因此请保留完整输出,而不是仅选择一个字段。
- RX或TX错误和丢弃计数器增长是需要调查的证据,而不是提供商故障的证明。
- 显示的链路速度低于预期层级时,应报告接口和驱动程序详细信息。
- 应用程序测试期间接口安静可能表明工作负载使用了其他接口、命名空间或路径。
- 客户计数器无法揭示上游交换机或传输路径上的每个事件。
ip -brief link
ip -s -s link show dev eth0
ethtool eth0
ethtool -S eth0设计有用的测试
- 说明问题:单流吞吐量、聚合吞吐量、数据包丢失、延迟或接口错误。
- 选择您有权使用的受控端点,并记录其位置和容量。
- 在定义的 UTC 时间间隔内进行测量,同时收集客户机计数器和应用程序指标。
- 一次只更改一个变量,例如另一个目的地或时间窗口,而不是同时更改多个设置。
- 停止任何可能干扰生产或产生滥用流量的测试。
预期结果和升级
预期结果是与接口、两个端点、协议和时间窗口相关的可重复观察,而不是占位符图的截图。如果本地计数器健康但到多个合适目的地的性能持续较差,请向操作员发送服务器、区域、地址、接口、时间窗口、方向、预期层级、观察到的速率、错误计数器和测试方法。
历史流量图表尚不可用。如果历史流量证据在操作上很重要,请保留自己的监控,并与运营商商定可共享的提供商侧数据。