socketFd_ = socket(AF_INET, SOCK_RAW, protoType);
sentBytes = sendto(socketFd_, buf, len, 0,
(struct sockaddr *)&sa,sizeof(structsockaddr_in));
protoType = GRE
我正在发送1000个数据包到网络中。如果我的tx数据包速率为40,我可以在Wireshark中看到所有数据包。然而当我试图以100的速率发送时,其中一些数据包(3-4个)将无法到达网络,但sendto没有返回任何错误。我知道sendto只会将tx数据包放入队列中,并不能保证数据包在网络中的传递,那么我该从哪里获取内核中丢弃数据包的统计信息和丢包原因呢?我尝试将接口的txqueuelen增加到65000,但没有帮助。我该如何调试此问题?