Вопрос проверяет понимание различий транспортных протоколов.
TCP - надежный, с установкой соединения и контролем ошибок. UDP - простой, без гарантий доставки. TCP для веба, UDP для видео/голоса.
TCP - гарантированная доставка, требуется 3-way handshake, есть повторная передача, порядок данных сохраняется, используется в веб, почте, файлах
UDP - нет гарантий надежности, не гарантируется порядок данных, быстрее скорость, используется в видео, играх
Когда использовать:
TCP:
HTTP/HTTPS
FTP
SMTP
Когда важна надежность
UDP:
Видеостриминг (WebRTC)
VoIP (например, SIP)
DNS запросы
Онлайн-игры
Пример UDP в Java:
DatagramSocket socket = new DatagramSocket();
byte[] buffer = "Hello".getBytes();
DatagramPacket packet = new DatagramPacket(
buffer, buffer.length, InetAddress.getByName("example.com"), 9876);
socket.send(packet);