怎样判断一个UDP连接的状态

怎样判断一个UDP的连接状态,是断开还是仍然连接?

阅读 25.5k
3 个回答

原始的UDP的话没法判断的(甚至有的时候采用TCP协议都没法判断一方的异常掉线)。不过你可以增加心跳机制,每个一段时间进行一次心跳通信,如果在该规定的时间内还没有收到心跳数据的话就认为掉线了。

UDP似乎是一方往另一方发送数据包,不保证一定可达。我认为如果要检查状态,应该在程序里设置一个收到数据后向发送端发送一个心跳信号这种机制(当然这里应该用TCP保证心跳信号能被发送端收到)

UDP不需要事先建立连接,所以你这个问题是个伪问题。如果你想知道链路是否通,可以采取ping的方式进行。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进