В Java при использовании DatagramPacket
предположим, что у вас есть байт [1024 * 1024 ]
буфер. Если вы просто передадите это для DatagramPacket при отправке / получении, будет ли Java получать вызов для блока DatagramPacket, пока он не прочитает весь мегабайт?
Я спрашиваю, разделит ли Java его или просто попытается отправить все это который падает.
Обычно ограничение на размер составляет около 64 КБ для UDP-пакета, но мне было интересно, поскольку API Java допускает использование байтовых массивов, если это ограничение, и что-то сверхгромкое будет отброшено или разделено и повторно собрано для вас.
Если он будет сброшен, какой вызов API скажет мне, какую максимальную полезную нагрузку данных я могу использовать в вызове Java? Я слышал, что IPv6 также имеет jumbo-кадры, но поддерживает ли DatagramPacket (или DatagramSocket
) это, поскольку UDP определяет спецификацию заголовка?