JAVA发送数据报分组分片

时间:2019-05-31 19:59:18

标签: java udp packet datagram

我有以下代码将数据包发送出去...

sendSocket = new DatagramSocket(new InetSocketAddress (InetAddress.getByName (prefs.get ("interfaceIP", Defaults.defaultInterfaceIP)), 0));

log.debug ("length = " + responsePacket.getLength ());

sendPacket = new DatagramPacket (responsePacket.getData (), responsePacket.getLength (), this.deviceHostAddress, prefs.getInt ("port", Defaults.defaultPort));
sendSocket.send (sendPacket);

我要发送的数据长3,527字节(来自log.debug行),由于某种原因,当我在Wireshark上观看数据包时,我看到该数据包“碎片化”,只有1480字节已被已发送。对我来说,这是正常的,因为数据包需要适合MTU。但是,我看不到其余数据在后续数据包中通过(因此将根据数据包ID合并在一起)。

有什么想法为什么DatagramSocket.send仅发送第一个片段而不发送其余片段?

0 个答案:

没有答案