Ubuntu:UDP 消息生成/接收低速率问题

Ubuntu:UDP 消息生成/接收低速率问题

我有两个简单的 Java 程序,使用 DatagramSocket 生成和接收 UDP 消息。

发电机

String message = "MyMessage";
byte[] data = (message).getBytes();
DatagramPacket packet = new DatagramPacket(data, data.length, host, port);
socket.send(packet);

接收者

DatagramSocket serverSocket = new DatagramSocket(port);
DatagramPacket receiveData = new byte[1024];
receivePacket = new DatagramPacket(receiveData, receiveData.length);
serverSocket.receive(receivePacket);
String message = new String(receivePacket.getData());

因此,生成器生成消息,接收器捕获它们。在 Windows 中,我每秒最多可以发送 200,000 条消息。但在 Ubuntu 中,每秒为 100,000 条消息(是 Windows 环境的一半)。

不仅如此,如果我在 Ubuntu 上每秒生成 50,000 个,那么接收器似乎只能捕获大约 30,000 个。如果生成器生成 100,000 个,那么接收器将捕获 60,000 个。同样,对于 200,000 个,接收器也只能捕获 100,000 个。

我不确定为什么它在 Windows 上表现良好而在 Ubuntu 上表现不佳。我们在 Ubuntu 桌面版和服务器版上都进行了测试。

有人能帮助我吗?

谢谢!

相关内容