我目前正在尝试制作一个在线视频游戏,该游戏目前使用 TCP 发送数据包。我想使用 UDP,但我对 UDP 非常陌生,并且遇到了一些问题。
当我在同一台计算机(本地主机)上测试我的服务器/客户端时,数据包似乎相互干扰。
例如,如果客户端向服务器发送一个数据包(UDP,127.0.0.1:1338),客户端最终会收到该数据包,因为客户端也在端口 1338 上侦听来自 127.0.0.1 的数据包。同样,当我尝试测试 2 个客户端和 1 个服务器,客户端可能会发送本应发送给服务器的数据包,但被另一个客户端接收。
由于所有数据包都从/发送到 127.0.0.1:1338,我如何在 localhost 上测试 UDP?我是否需要在我的数据包中实现某种层来区分数据包是用于服务器还是特定客户端?