【发布时间】:2011-07-17 15:12:14
【问题描述】:
希望创建一个 Java 停止等待 UDP 服务器和客户端,但我一开始就遇到了一些问题。我已经制作了一个简单的 UDP 客户端和服务器,没有停止等待部分,但我现在想学习如何更改它。如何使用 Java 套接字发送 ACK 并实现超时?
有人可以发布一些示例供我在实施中使用吗?
【问题讨论】:
-
请发布您现在拥有的重要部分,以及您遇到的问题。还有,
stop-and-wait是什么意思? -
停止并等待意味着客户端向服务器发送消息,然后在等待服务器确认时超时。如果在等待确认时所有时间都到期,则重新发送数据包,否则发送下一个数据包
-
停止等待协议是一次发送1个数据包的过程,并等待客户端在发送下一个数据包之前发送回一个ack。
-
好的,我已经在我的客户端上调用了clientSocket.setSoTimeout(1),所以现在我希望它检查是否收到了ACK,以及它是否没有再次发送消息......是否有某种 if(ACK RECEIVED) 套接字方法?