C udp应用程序模拟数据包丢失

时间:2014-08-12 08:34:36

标签: c sockets udp packet

我有用C编写的udp服务器 - 客户端应用程序。在客户端,使用recvfrom函数和数据包序列号检测数据包丢失。我现在如何在客户端模拟丢弃的数据包,例如,如果服务器发送1000个数据包,我想丢弃20%的数据包?我想在代码中执行此操作,而不是使用ip表或类似的东西。还有一件事,我的客户很少,我希望他们可以丢弃不同的数据包,而不是相同的数据包。

while(1){

    nbytes = recvfrom(socket, buffer, MAX_SIZE, 0, (struct sockaddr *) &srv_addr, &addrlen);

        if (nbytes != -1) {

    // packet is received

        }else{

    //packet is not received

        }

}

0 个答案:

没有答案