确定已知进程的网络使用情况(无需 root/提升权限)

确定已知进程的网络使用情况(无需 root/提升权限)

我的应用程序正在启动另一个进程,我想跟踪新进程从网络套接字读取/写入了多少数据。

我找到了像 nethogs 这样的工具,但它们需要提升才能找到任意进程的使用情况。我也不能使用它来以编程方式获取“当前”的运行总数。

答案1

这并不简单,但您可以ptrace在子进程中使用并跟踪:

  1. 哪些 FD 是套接字。
  2. 字节输入readwrite调用。
  3. 交叉引用 1 中的列表和 2 中的大小来确定在网络套接字上读取/写入的字节。

相关内容