Java DatagramPacket (UDP) 最大 send/recv 缓冲区大小
在Java中使用DatagramPacket
时,假设你有一个缓冲区。如果你在发送/接收时只是为DatagramPacket传递它,Java会接收对DatagramPacket块的调用,直到它读取整个兆字节吗?byte[1024*1024]
我问Java是否会拆分它,或者只是尝试发送整个被删除的东西。
通常,UDP数据包的大小限制约为64KB,但是我想知道,因为Java的API允许字节数组,如果这是一个限制,并且会丢弃或拆分并重新组装一些超级大的东西。
如果它被删除,什么API调用会告诉我在Java调用中可以使用的最大数据有效负载?我听说IPv6也有巨型帧,但是DatagramPacket(或DatagramSocket
)是否支持,因为UDP定义了标头规范?