【问题标题】:Can DDS be used over the internet for use in online gaming?DDS 可以通过 Internet 用于在线游戏吗?
【发布时间】:2020-05-24 23:13:47
【问题描述】:

我想知道 DDS 是否可以在互联网上使用,以及它是否是在线游戏的好选择。

我在 RTI 网站上看到他们支持 WAN,但这是否意味着我可以订阅来自世界另一端的其他参与者的主题?

如果是这种情况,QoS 保证会怎样?

谢谢。

【问题讨论】:

  • 在公共互联网上没有 QoS保证。

标签: networking distributed-database opendds rti-dds


【解决方案1】:

免责声明:我全职从事 OpenDDS 工作,但没有网络游戏编程经验。

支持互联网的 DDS 可用于连接游戏客户端。在没有具体信息的情况下,我目前无法回答这是否是一个好主意,但 QoS 部分是一个很好的问题。据我所知,在 OpenDDS 中,我们尝试遵守用户定义的 QoS,就好像它是一个普通的 RTPS 连接一样。这意味着在 Internet 上使用它可能需要对 QoS 进行一些调整,具体取决于您要使用的 QoS。例如,如果在本地网络上使用最后期限 QoS,则考虑到 Internet 的更大延迟,可能必须放宽时间段。

对于 OpenDDS,支持 Internet 的 RTPS 在 OpenDDS 开发人员指南的第 15 章中进行了描述:http://download.objectcomputing.com/OpenDDS/OpenDDS-latest.pdf。除了使用 ICE 来克服 NAT 之外,我们还有一个称为 RTPS 中继的功能,可以在客户端无法使用 ICE 时启用连接。

我不熟悉这里的 RTI Connext 有哪些具体功能,但据我所知,它们是相似的,因为它们也使用 ICE。另外需要注意的是,支持 Internet 的 RTPS 没有标准化,因此 Connext 和 OpenDDS 无法通过 WAN 进行通话。

【讨论】:

  • 公共互联网上没有no QoS,即使通过隧道也不行,因为隧道数据包仍然受制于公共互联网。一些面向企业的 ISP 将收取 QoS 合同费用,但在您直接连接的网络之外,您的流量通过的其他 Internet ISP 将不遵守任何 QoS 标记。
  • @RonMaupin 我认为术语有些混乱。由于这是一个 DDS 问题,我假设它们是指 DDS 意义上的 QoS。 DDS 具有所谓的“QoS”,它基本上独立于网络堆栈的较低层可能具有的任何 QoS。我不确定 DDS 的设计者将其称为 QoS 是否正确,因为它包含与网络术语非常不同的想法,但有一些重叠,例如可靠性设置。
【解决方案2】:

由于带宽要求,OpenDDS 仅适用于非常受限环境中的游戏。如果所有用户都在同一个 LAN 上,那么 RTPS 使用的 UDP 多播方法对于点对点游戏架构将是有效的。但是,如果添加了远程用户,那么每个对等点都必须将每次更新都直接发送给其他对等点的要求将很快导致带宽需求激增。

鉴于 RTPS 中继已经是另一个需要运行的应用程序,如果用户并非都在一个 LAN 网段上,那么一个游戏服务器会更有效地处理来自同级的更新并发送世界状态。

p>

【讨论】:

    猜你喜欢
    • 2010-12-14
    • 2015-06-09
    • 1970-01-01
    • 2014-09-14
    • 2015-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-03
    相关资源
    最近更新 更多