我正在开发一个完全在单个网络内运行的 .net 解决方案。当用户对系统进行更改时,我想发布公告,让其他人听到并采取相应行动。有没有一种方法可以让我们广播出这样的消息(比如 UDP 可以让你这样做),同时保持有保证的传递(比如 TCP)?
这是在一个小型网络(大约 30 个客户端)上,如果这会有所作为的话。
几乎所有游戏都需要 UDP 的快速反应特性(以及较小程度的无连接特性)和 TCP 的可靠性。他们所做的就是在 UDP 之上构建自己的可靠协议。这使他们能够将数据包突发到任何地方,并可选择使其可靠。
可靠的数据包系统通常是一个简单的重试直到确认系统,比 TCP 更简单,但有些协议远远超出了 TCP 所能提供的范围。
你的情况听起来很简单。您可能能够自己制定最干净的解决方案 - 只需让每个客户端发回“我听到了”响应,然后让服务器继续尝试,直到收到(或放弃)。
如果您想要更多东西,大多数自定义协议库都是用 C++ 编写的,所以我不确定它们对您有多大用处。然而,我在这里的知识已经有几年了——也许一些协议现在已经被移植了。嗯...RakNet 和enet 是我想到的两个C/C++ 库。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)