我有一个服务器和客户端设置来使用UDP通信。现在,我让客户端向服务器发送0
,服务器以1
响应。
我已经读过UDP如何不保证消息到达服务器,并且不保证它是正确的而没有错误。在这种情况下,这是否意味着服务器有时可能认为它已收到1
而不是0
。这会发生吗? (到目前为止我的测试中没有发生过这种情况)并且错误和丢弃的数据包会更常见,例如移动3g连接?
我也想知道我读过的其他内容。如果我只发送一个数据包,则服务器可以接收多个重复的数据包。是这种情况吗?
我意识到我可以使用TCP,这将更安全。但是,我正在尝试创建一个非常低延迟的程序。
答案 0 :(得分:0)
服务器不太可能收到1而不是0,这需要很多东西出错。
UDP的“不可靠性”只是意味着,如果目的地没有得到它,没有人会关心或再试一次 - 它刚刚消失。发送方不检查,接收方也不知道它错过了什么。