![Linux:如何找出 NIC 是否造成了瓶颈?](https://linux22.com/image/557942/Linux%EF%BC%9A%E5%A6%82%E4%BD%95%E6%89%BE%E5%87%BA%20NIC%20%E6%98%AF%E5%90%A6%E9%80%A0%E6%88%90%E4%BA%86%E7%93%B6%E9%A2%88%EF%BC%9F.png)
关于如何检查由本地硬盘 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 按特定中断类型进行分解。这确实是一种可以轻松替代许多其他工具的瑞士军刀。
-标记