C# .Net UdpClient Receive-一个关于它为什么不返回任何内容的技术问题

C# .Net UdpClient Receive-一个关于它为什么不返回任何内容的技术问题,c#,.net,udp,datagram,udpclient,C#,.net,Udp,Datagram,Udpclient,我正在根据设备的IP地址和端口(成功)与设备建立UDP连接。 我可以成功地向它发送消息(以字节编码)。 但是,我没有看到client.Receive()方法返回的响应 我向您提出的技术问题与这个()方法有关 也许我的理解是完全错误的,但我认为我用来连接设备的IP地址+端口应该与我调用Receive()方法时的相同 但从实例来看,情况似乎并非如此 有人能给我解释一下为什么不使用相同的IP地址+端口吗 调用Receive()时 UDP数据包是无状态的,实际上没有连接。与TCP流不同,连接方法不会触发

我正在根据设备的IP地址和端口(成功)与设备建立UDP连接。 我可以成功地向它发送消息(以字节编码)。 但是,我没有看到client.Receive()方法返回的响应

我向您提出的技术问题与这个()方法有关

也许我的理解是完全错误的,但我认为我用来连接设备的IP地址+端口应该与我调用Receive()方法时的相同

但从实例来看,情况似乎并非如此

有人能给我解释一下为什么不使用相同的IP地址+端口吗 调用Receive()时


UDP数据包是无状态的,实际上没有连接。与TCP流不同,连接方法不会触发任何网络数据包。它所做的只是提供一个默认地址,这样在发送新数据包时就不需要提供默认地址。并设置一个数据包过滤器,以便只接收与该远程地址(包括端口号)完全匹配的数据包

receive方法仍应提供远程端点的地址

请注意,如果您没有将UdpClient绑定到特定的端点,并且机器有多个网络地址,则操作系统可能会从不同的地址发送数据包。

问题在于Receive()从未为我返回任何内容。
A) Note that i can see a response using a sniffer like Wireshark. But i just dont see the response returning from the C# udpClient.Receive(ref endpoint) method itself.

B) Also, i am using this API document which says that the device (drone) can receive and send a response on the same IPAddress + port.