Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 向死服务器发送UDP数据包_C_Sockets_Udp - Fatal编程技术网

C 向死服务器发送UDP数据包

C 向死服务器发送UDP数据包,c,sockets,udp,C,Sockets,Udp,sendto()&recvfrom()套接字API用于通过UDP发送数据包 我们有一个场景,Node1(UDP客户端程序)向Node2(服务器启动)和Node3(服务器关闭)发送UDP数据包 TCP在数据通信开始之前和结束之后执行握手。UDP没有 那么,运行在Node1上的应用程序失败的原因是否是Node3上的服务器程序没有准备好(关闭)接收UDP数据包?它不会失败,事务根本不会发生。话虽如此,任何和所有未收到的数据包都将丢失。它不会失败,事务根本不会发生。话虽如此,所有未接收到的数据包都将丢

sendto()
&
recvfrom()
套接字API用于通过UDP发送数据包

我们有一个场景,
Node1
(UDP客户端程序)向
Node2
(服务器启动)和
Node3
(服务器关闭)发送UDP数据包


TCP在数据通信开始之前和结束之后执行握手。UDP没有


那么,运行在
Node1
上的应用程序失败的原因是否是
Node3
上的服务器程序没有准备好(关闭)接收UDP数据包?

它不会失败,事务根本不会发生。话虽如此,任何和所有未收到的数据包都将丢失。

它不会失败,事务根本不会发生。话虽如此,所有未接收到的数据包都将丢失。

UDP协议不让您知道数据是否已传输,因为它没有这样的属性。程序的流程没有任何问题。在我看来,这就是为什么数据报是有用的。

UDP协议不让您知道数据是否被传输,因为它没有这样的属性。程序的流程没有任何问题。在我看来,这就是为什么数据报是有用的。

UDP数据包是发送和发送的。如果有人收到了,那太好了。如果没有人这么做,那也没关系。接收端上的任何内容都不应导致发送方失败。当然,发送方可能类似于DNS服务器,它发送请求数据包并期望有人响应,但它仍然处于完全控制之下——它应该被写入,这样,如果没有响应,它只会报告,而不会导致失败。是的。UDP就是这样做的。在设计使用fire and forget UDP时,您必须考虑到这些可能性。UDP数据包是发送和祈祷的。如果有人收到了,那太好了。如果没有人这么做,那也没关系。接收端上的任何内容都不应导致发送方失败。当然,发送方可能类似于DNS服务器,它发送请求数据包并期望有人响应,但它仍然处于完全控制之下——它应该被写入,这样,如果没有响应,它只会报告,而不会导致失败。是的。UDP就是这样做的。在使用fire and forget UDP进行设计时,您必须考虑到这些可能性。