可以访问每个套接字的 TCP 统计数据/信息吗? (C/C++)

发布于 2024-10-03 15:30:32 字数 146 浏览 2 评论 0原文

我需要一些信息,例如我创建的特定 TCP 套接字发生的重新发送包/数据包丢失的数量。有人知道如何直接从我的 C/C++ 程序访问或请求此类信息吗?也许是 Linux 特有的东西?

或者我是否需要(作为解决方法)捕获和分析我自己的流量?

提前致谢!

I require some informations like the amount of resend packages/packet-loss occurred for a specific TCP-Socket I created. Does somebody know a way how to access or request such informations directly from my C/C++ program? Maybe something Linux specific?

Or do I need (as a workaround) to capture and analyze my own traffic?

Thanks in advance!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

蓝海似她心 2024-10-10 15:30:32

通过使用 getsockopt() 获取或 setsockopt() 设置 TCP 套接字选项,您可以在 Linux 机器上使用 TCP_INFO 选项来获取有关套接字的信息。如果您希望代码可移植,则应避免使用此选项。

您将返回的是来自内核的 struct tcp_info包含重传、丢失数据包、状态等信息。

By using getsockopt() to get or setsockopt() to set TCP socket options, you can use TCP_INFO option on linux machines in order to get information about a socket. This option should be avoided if you want the code to be portable.

What you will get back is a struct tcp_info from the kernel that contains information such as retransmissions, lost packets, states etc.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文