2013-05-30 31 views
-1

您好目前使用UDP消息在局域网中的不同计算机上与我的程序(用Delphi使用IdUDPClient和IdUDPServer制作)进行通信,但昨天我遇到了一个奇怪的问题,其中一台计算机无法接收消息其他计算机是否可以读取他的消息,所有程序都使用相同的UDP端口。UDP有时不工作

工作的唯一解决方案是重新启动路由器,但也许有一个解释为什么会发生?

谢谢。

回答

2

我想这就是UDP是如何工作的:)引用自wikipedia

UDP使用简单的传输模型用最少的协议机制。它没有握手对话,从而暴露了底层网络协议对用户程序的任何不可靠性。由于这通常是IP通过不可靠的媒体,因此不保证交付,订购或重复保护。

+0

是的,我想对我来说不是一件好事:)但是,好吧,也许some1有另一个解释,如果不是明天生病选择你的答案=) – vexen

+0

@vexen所有不丢失,你可以保持队列消息和计数,如果消息到达时count = 5,并且您期望count = 4,则可以发回命令“re-send me message count = 4” – ComputerSaysNo

+0

@ComputerSaysNo问题是消息需要重新配置一些其他程序等,直到我们重新启动路由器,我们无法/发送/接收消息到/从该计算机,它不是1消息,但所有消息。 – vexen