如何查看哪些程序 / 用户正在与哪些网络地址通信以及通信量是多少?(Unix / Ubuntu)

如何查看哪些程序 / 用户正在与哪些网络地址通信以及通信量是多少?(Unix / Ubuntu)

可能重复:
有没有办法找出 Linux 中哪些应用程序使用了最多的带宽?

我感兴趣的是哪些程序正在使用我的网络连接以及使用量是多少。

我想知道是否存在与 htop 对 CPU/内存使用一样的东西?

我想要一份当前连接的其他计算机的列表,哪些用户/程序已建立连接,按负载顺序排序,并实时显示。

我使用过 netstat,它告诉我连接到了哪个网络,但没有告诉我哪里的流量最大。而 Wireshark 则提供了太多信息。

答案1

我不知道有任何软件可以(直接)告诉您哪个程序使用了多少带宽,但您可以通过监控带宽、查看哪些端口正在使用带宽,然后找出哪个程序(以及协议)与流量相关,从而在很大程度上解决问题。[我怀疑 - 但可能是错的 - 假设您找不到将流量直接链接到进程的软件包,因为流量需要通过内核和我见过的所有带宽程序 - 忽略 Android 程序 - 通过与 libpcap 交互来查看跨接口的内容]

IPTraf 应该能够为您提供过多和过少信息之间的合理平衡,并且易于使用。(对于您来说,IP 流量监视器和统计细分可能是最有用的)。

如果流量与您机器上运行的服务有关,您可以通过输入端口来找到该服务的名称,fuser -n [udp|tcp]它将为您提供与流量相关的进程的 PID。

相关内容