ICMP-сообщения отправляются в случае утери UDP-сообщения - PullRequest
0 голосов
/ 13 апреля 2020

Я написал простой Python скрипт для отправки UDP-сообщения

import socket

HOST = '127.0.0.1'
PORT = 65432

client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sent_data = client_socket.sendto(b'hello world sending UDP data',(HOST,PORT))
print ("Sent data = %r"%(sent_data))

Я выполняю скрипт и продолжаю прослушивать Wireshark (нет получателя), я получил следующую трассировку:

enter image description here

Мой вопрос заключается в следующем. Цель сообщений ICMP - оповещение о наличии проблем в сети, но UDP не является протоколом, ориентированным на установление соединения, это означает, что он не проверяет, получены ли данные отправителем.

1- Почему сообщения ICMP запускаются?

2- Как отправитель проверяет, получил ли получатель сообщение в случае UDP, есть ли какое-либо подтверждение со стороны получателя?

...