我正在尝试在Android上每秒发送一定数量的数据包。最后,我应该能够以恒定的速率每秒通过wifi发送4000个数据包。
我创建了一个具有本机C ++支持的应用程序。在C ++中,我创建了UDP套接字,并使用SIGALRM作为计时器以一定的速率发送数据包。
作为一个测试,我想查看我的应用程序的最大吞吐量是多少,所以我做到了,使其能够尽快发送:
while (!stop) {
send(sockfd, data, dataSize, 0);
}
我在Wireshark中观察到的是,我收到了这些“尖峰”的数据包。
当我在Linux机器上运行相同的代码时,我得到了恒定数量的数据包。我猜想Android在发送速度上如此之快受到限制。
是否有可能使输出平滑?我使用的手机是Pixel 3 XL。