Linux:如何找出 NIC 是否造成了瓶颈?

Linux:如何找出 NIC 是否造成了瓶颈?

关于如何检查由本地硬盘 IO(iostat)、CPU(top)、延迟(ping)甚至网络带宽(交换机可能会告诉)造成的瓶颈,有很多资源。

如何判断 NIC 是否重要?

答案1

我推荐 dstat -nf 和 dstat -i 或 dstat -if。要查找的内容:

  • 网络数据速率(以 MB/s 为单位)等于或接近带宽(以 Mbits/s 为单位)的 1/8。例如,100Mbit 卡的速率为 12MBytes/s。
  • 与高数据包速率/网络流量相对应的非常高的中断率。

第一个是您无法绕过的基本带宽速率。第二个可能表明您将受益于巨型帧或 TCP 卸载/您的系统因网络流量而因中断而过载(使系统难以响应其他事件)。

答案2

iftop -i <interface> -B可能会有帮助。它以字节/秒为单位显示带宽速率。

答案3

netstat 怎么样。netstat -c在源端运行,并观察 Send-Q 列。值大表示有大量待处理数据。

答案4

这里的问题是列出了一堆工具,但没有办法获得综合的外观。像 collectl 这样的工具可以监控一切,让您可以实时查看 CPU、磁盘、网络、内存甚至中断,也可以将其写入文件以供以后回放。

如果您怀疑是 CPU 问题,请查看单个 CPU 数据并查看中断处理所花费的时间。如果您确实怀疑中断开销,collectl 甚至会按 CPU 显示中断,甚至允许您按 CPU 按特定中断类型进行分解。这确实是一种可以轻松替代许多其他工具的瑞士军刀。

-标记

相关内容