换句话说,如果我以通常的方式打开TCP套接字,Linux中是否有办法从创建套接字的进程中检索该特定套接字的丢包计数?
答案 0 :(得分:1)
您可以使用TCP_INFO。这将为您提供一个struct tcp_info
,其中包含一个名为tcpi_lost
的成员:
...
164 __u32 tcpi_unacked;
165 __u32 tcpi_sacked;
166 __u32 tcpi_lost;
167 __u32 tcpi_retrans;
168 __u32 tcpi_facke
...
虽然该成员没有文档,但可以看到它与“丢失的数据包”有关,因为它是这样设置的
info->tcpi_lost = tp->lost_out
u32 lost_out; /* Lost packets */