C# 检查P2P-UDP-C中的断开连接#

C# 检查P2P-UDP-C中的断开连接#,c#,sockets,udp,p2p,C#,Sockets,Udp,P2p,我正在制作一个应用程序,其中三个用户进入一个会话并相互发送UDP数据(点对点)。如何检测其中一个用户是否已断开与会话的连接?由于UDP不基于连接,因此判断用户是否已断开连接的唯一方法是检查您是否不再接收来自他们的响应或消息 一种策略是让用户定期发送“heartbeat”消息,并跟踪用户是否错过了一行中最后X个心跳,并在该点上假设它们已断开连接。这些消息不需要包含任何信息,重要的是接收它们 您还应该让用户在断开连接时发送“断开连接消息”,但不要仅依赖于此,因为用户可能会崩溃,或者消息可能会丢失,永

我正在制作一个应用程序,其中三个用户进入一个会话并相互发送UDP数据(点对点)。如何检测其中一个用户是否已断开与会话的连接?

由于UDP不基于连接,因此判断用户是否已断开连接的唯一方法是检查您是否不再接收来自他们的响应或消息

一种策略是让用户定期发送“heartbeat”消息,并跟踪用户是否错过了一行中最后X个心跳,并在该点上假设它们已断开连接。这些消息不需要包含任何信息,重要的是接收它们


您还应该让用户在断开连接时发送“断开连接消息”,但不要仅依赖于此,因为用户可能会崩溃,或者消息可能会丢失,永远无法接收。

Udp可以广播,也可以基于连接。尼克错了。“UDP使用简单的无连接通信模型”广播是UDP最常用的方法。但是您仍然可以像TCP一样使用UDP,而无需确认。UDP是一种定义为无连接的协议。我认为您对某些事情感到困惑。例如,即使您对udpclient使用“Connect”,它实际上也不会建立连接。这更像是建立一个过滤器。请解释连接的类型。不能让多个用户在单个对等网络上连接。