【发布时间】:2013-09-06 05:44:31
【问题描述】:
我目前正在尝试制作一个在线视频游戏,该游戏目前使用 TCP 发送数据包。我想使用 UDP,但我对 UDP 非常陌生,并且遇到了一些问题。
当我在同一台计算机 (localhost) 上测试我的服务器/客户端时,数据包似乎相互干扰。
例如,如果客户端向服务器发送一个数据包(UDP,127.0.0.1:1338),客户端最终会收到该数据包,因为客户端也在端口 1338 上侦听来自 127.0.0.1 的数据包。类似地,当我尝试测试 2 个客户端和 1 个服务器时,客户端可能会发出用于服务器的数据包,但被另一个客户端接收。
由于所有数据包都从 127.0.0.1:1338 接收/发送到 127.0.0.1:1338,我如何在 localhost 上测试 UDP?我是否需要在我的数据包中实现某种层,以区分数据包是用于服务器还是特定客户端?
【问题讨论】:
标签: c# sockets testing networking udp