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