我想将我的每个游戏服务器节点中的玩家数量报告给一个中央权威机构,该中心将用于将平衡连接加载到这些节点。这是一个实时多人网络游戏。这是一个游戏设计问题,游戏可以在任何负载平衡方向进行,在这一点上,任何解决方案都是可能的。在较高的级别上,如果您正在设计,那么打开到权限的出站tcp连接并在游戏循环中报告游戏状态更好,还是等待权限通过传入的tcp连接向游戏服务器请求统计信息会更好呢?如果有1000个节点,哪种解决方案更好?
如果这是来自游戏服务器的出站:如果游戏服务器报告这是我的ip地址、我的端口和我的玩家数量--如果存在相同的ip/端口组合,当局可以对这些数据进行编目并更新玩家数量。为了防止流氓代理将自己报告为游戏服务器时出现的安全问题,您需要尝试使用加密和某种类型的授权机制来保护连接。
,如果这是入站到游戏服务器,,如果权威机构已经知道它需要连接的每个节点的地址,那么您可能只需要担心中间服务器中假装是权威的人。由于数据只是游戏统计数据,没有什么敏感信息,所以加密在连接到游戏服务器的大方案中并不重要。例如,我可以有一个配置文件或数据库表与所有已知的游戏服务器连接。一个mitm会得到游戏统计数据,或者只是阻止连接。对我来说,这似乎是更好的选择,只是连接到您的游戏服务器未加密,并获得统计。缺点是,其他任何人都可以连接到您的游戏服务器以及请求游戏统计。然后,在你的游戏服务器中,你必须找出哪个连接才是真正的权威,或者只是将游戏统计信息广播给任何要求游戏统计数据的人。不过,从安全的角度来看,游戏服务器可能会超载到许多希望获得游戏状态的连接,而且您也没有一个很好的方法来知道哪个权限对您的负载平衡和临时代理很重要。我觉得这就是该走的路。
发布于 2022-07-27 19:55:00
我同意进入游戏服务器是一条路,因为你说过的原因。
以下是一些其他的注意事项。
https://stackoverflow.com/questions/73117274
复制相似问题