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进行设计时,您必须考虑到这些可能性。