gpt4 book ai didi

linux - 如何观察 Linux 上进程的 TCP 连接变量?

转载 作者:太空宇宙 更新时间:2023-11-04 03:37:50 25 4
gpt4 key购买 nike

我有一个分布式应用程序,可以将大量数据加载到其中。不幸的是,我的应用程序无法像我预期的那样通过网络推送数据:如果我对文件进行 scp,网络带宽(由 dstat --net 报告)约为 120Mb/s,而我的应用程序仅推送约 80Mb/s。

如何观察进程使用的套接字的 TCP 连接变量以找出瓶颈所在?我特别想测量:

  • 我的套接字的 cwnd 大小
  • 我的套接字的当前接收/发送缓冲区大小
  • 我的套接字上 TCP 重传/重复 ACK 等的速率

最佳答案

  • cwnd 大小我可以通过 cat/proc/net/tcp 查看(倒数第二列)。
  • 我可以通过查看 /proc/net/tcpnetstat --tcp 来查看套接字发送/接收缓冲区中当前未完成的字节数,尽管这并没有显示最大发送缓冲区大小。
  • TCP 重传更加困难,但这已经非常接近了:https://github.com/brendangregg/perf-tools/blob/master/net/tcpretrans

关于linux - 如何观察 Linux 上进程的 TCP 连接变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30992111/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com