linux - shell 脚本: How to calculate the number of bytes transmitted on a network from a single network intense application?

标签 linux bash shell networking

Shell脚本:如何计算上传到远程节点的字节数?

1) 我使用了 IPTRAF 命令,它可以捕获所有数据,但是当我尝试使用 vxargs(python) 从本地系统运行脚本时,它不起作用。 2)我也尝试使用 IFTOP 命令,但它不会将输出保存到文件中。 3)/proc/net/dev 也不起作用,因为它捕获了一些额外的数据包。

tcpdump 命令是否仅捕获传输的数据负载的字节/数据包数,还是传输的数据会附加一些 header ?

我只想从正在运行的网络密集型应用程序捕获数据包。

最佳答案

我认为这并非易事。请参阅http://mutrics.iitis.pl/tracedump对于一个似乎可以完成此任务的程序。然而,它自 2012 年以来就没有更新过,并且仅适用于 32 位架构。

一个粗略的解决方案可能是通过 strace 运行应用程序,然后汇总相关系统调用(如 writesendto)的返回值。

关于linux - shell 脚本: How to calculate the number of bytes transmitted on a network from a single network intense application?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24845317/

相关文章:

linux - 将 ftp 文件发送到 Google Cloud debian 9

linux - 在 Linux (Ubuntu) 上安装 ibm_db2

bash - 如何使用 logger 命令登录到 linux 中的特定文件?

linux - 每隔 x(毫秒)暂停一个 shell 脚本以减少立即的 CPU 使用率

linux - 如何检查软链接(soft link)的最终目标文件是否实际存在?

c++ - linux中动态链接库的开源c++代码覆盖率

linux - 使用 sed,如何删除某一行范围内字符串的所有实例?

linux - while 循环读取命令正在打印位置而不仅仅是文件名 - 这是为什么?

python - 重命名有间隙的连续图像文件

linux - 使用 awk 输入列