介绍
多参与虚拟环境是一种网络应用程序,它集成了计算机图形、声音和触觉,以模拟共享三维虚拟世界中多个用户之间的实时交互体验。在这些应用程序中,每个用户在连接到广域网的客户端计算机上运行一个交互式界面程序,模拟虚拟环境的真实感。为了共享单个世界的常识,在共享虚拟环境中交互的多个实体经常相互发送消息,以宣布其几何体或行为的更新、对共享环境的修改或对其他对象的影响。随着用户和实体数量的增加,用户和实体之间交换的更新消息数量也会大幅增加。大规模多用户虚拟环境(MMVE)是此类应用程序的一种特殊情况,其中用户数量非常大。此类应用程序的实际示例是拥有数百万在线用户的大规模多用户在线游戏(MMOG),如Counter-strike、Quake、Second Life和World of Warcraft。由于此类应用程序中的大量用户,更新消息分发变得非常具有挑战性和重要。
大多数现有MMVE使用客户机/服务器(C/S)或混合架构。这种架构存在可伸缩性问题,在游戏中添加新用户可能会使服务器的带宽和处理能力饱和。分布式方案可以显著缓解这种可伸缩性问题,因为它们使用对等点本身来分发通信任务。然而,这是以一种更具挑战性的算法为代价的:多跳分布式路由,它比简单的C/S体系结构更为复杂,其中所有更新都通过一个中心点进行分发。
近年来,MMVE中的可扩展更新交换领域已经进行了大量研究,并针对这种环境提出了几种体系结构,其中基于P2P的网络虚拟环境被认为是满足网络可扩展性要求的良好选择(Bharambe等人,2006;Douglas等人,2005;Druschel等人,1997;Fan等人,2007;Hampel等人,2006年;Knutsson等人,2004;Limura等人,2004年;Yu和Vuong,2005年)。
分布式更新交换中的一个挑战性问题是,在没有单个管理器负责所有节点状态更新的环境中,找到负责更新实体的对等点。因此,应该使用一种分散的机制,让对等方之间共享状态更新交换任务。由于这应该是分布式的,基于分布式哈希表(DHT)的体系结构的使用立即浮现在人们的脑海中,因为DHT提供了分散索引,在这种情况下,不需要中心表或泛洪搜索来查找更新消息的目的地。
以前的许多工作都建议将基于DHT的体系结构用于大规模多用户虚拟环境,以实现无需中央交换的分布式更新交换系统(Bharambe等人,2006;Fan等人,2007;Hampel等人,2006年;Knutsson等人,2004;Limura等人,2004年;Yu和Vuong,2005)。本节稍后将讨论它们的实现、缺点以及我们提出的方案所带来的改进和优点。应该注意的是,使用非结构化网络代替DHT会导致一些问题,因为无法控制源和目标之间的跳数(因此延迟增加)。使用DHT,我们可以确保数据包在有限和预定的跳数内到达目的地,而非结构化网络上的QoS支持即使不是不可能,也是不现实的。
尽管DHT非常适合于对等文件共享系统的环境,以便在大型分布式系统中进行有效的数据分配,但它引入了一个不可接受的延迟扩展级别,其中任何两个节点之间重叠的路径可能与底层网络上这两个节点间的单播路径有显著差异。虽然这种延迟在文件共享应用程序中并不重要,但它会严重影响MMVE应用程序的性能,因为MMVE本质上对延迟很敏感,以满足对等方协作的实时要求。因此,原始格式的DHT无法满足延迟感知路由,而延迟感知路由是虚拟环境应用程序的基本要求之一(Claypool和Claypoor,2006)。尽管已经提出了几个方案(Dabek等人,2004年;Castro等人,2002a年;Castro等人,2002b年;Castre等人,2003年;Song等人,2005年)来改善文件共享系统上下文中的DHT延迟延伸,但在DHT结构上感知延迟的路由和更新消息的传播仍然是一个公开的问题。此问题需要解决方案,为MMVE特定特性提供局部端到端延迟最小化,这些特性与文件共享系统在以下方面不同:
- 1
MMVE中的更新消息交换并不是均匀分布在虚拟环境中的所有点之间。它主要位于“区域”内:由相同距离内的用户组成的感兴趣区域。这来自于一个逻辑假设,即根据兴趣区域管理算法,用户交互主要基于对象的空间邻近性。换言之,随着物体之间的距离越来越近,它们将更加了解彼此,并能够进行更多的交互(Benford和Fahlen,1993)。这种模式在文件共享中并不存在,因为文件交换需求预计将通过网络实现统一。
- 2
在MMVE中,对等端之间存在定期的消息交换,其中消息交换速率因不同节点而异,并取决于化身的交互状态。根据AoIM方案,一些用户可能处于拥挤的区域,周围环绕着许多化身,因此需要交换更多信息。此外,一些用户可能移动和操作更快,因此需要向邻居发送更多更新。这与对等端可能长时间保持沉默的文件共享情况形成了对比。
- 三。
MMVE应用程序需要感知延迟的信息传输来执行实时渲染。另一方面,文件共享系统中的DHT路由用于查找目的,而主数据传输是直接进行的。
- 4
与文件共享系统相比,MMVE应用程序处理高度动态的环境。覆盖结构的频繁变化是由于对等方的位置发生了变化,而与加入和离开对等方相关的问题在文件共享案例中仍然存在。
- 5
MMVE被认为是高客户流失网络。因此,此类网络中的延迟优化可能需要更多带宽,以根据邻近标准保持路由表最新。
- 6
DHT网络通常在ID分配中避免地理位置,以避免节点的批量故障。相反,MMVE应用程序利用虚拟世界中的局部性来减少路由跳数。
- 7
MMVE覆盖设计要求在具有集群流量需求的节点之间建立低延迟连接。相比之下,DHT的设计目的是以尽可能少的跳数路由均匀的交通需求。
因此,在MMVE应用中使用DHT结构需要对其设计进行根本性更改,以缓解这些设计对比。从积极的方面来说,DHT具有一些很有前途的特性,例如可扩展性、负载平衡和分布式索引,这些特性可以用于MMVE中的更新消息交换问题。因此,本文提出了一种新的基于DHT的技术,可以补偿DHT的不利影响,并使其适用于MMVE覆盖结构。
值得注意的是,我们将以满足对等通信需求的方式解决为MMVE构建高效覆盖网络的问题。众所周知,如果你没有足够的处理能力,你就无法加入游戏。这就是为什么所有游戏的包装上都有“最低要求”的广告。安装游戏的玩家必须具备运行游戏模拟引擎的最低硬件要求,以便能够及时处理更新消息。如果对等端没有最低的需求处理能力,它将面临额外的处理延迟,这被认为是本地问题,而不是网络问题。此类本地延迟源超出了本文的范围。
我们提出的体系结构通过重新设计DHT的部分并将其与Hilbert空间填充曲线耦合以用于位置敏感ID分配和基于蚂蚁的邻近邻域选择(Druschel et al.,1997)来解决MMVE的上述特征,以用于潜在感知路由。我们使用蚂蚁算法中引入的概率路由表的概念来帮助节点探索几个可能的邻居并选择最佳选项。然后,蚂蚁携带的信息将被用作延迟增强算法的输入,以构建一个邻近感知路由表,而路由算法使用延迟/距离权衡来选择这些选项中最合适的下一跳。我们进一步提出了蚂蚁携带更新消息的想法,以节省蚂蚁数据包交换所花费的资源。这也增加了需求软件路由的机会,其中低延迟路径最好分配给要求更高的商品。
我们声称,所提议的ID分配和邻近路由策略的应用将在很大程度上补偿DHT延迟。为了证明这一说法,我们引入了一个分析框架,在我们提出的ID分配和邻近路由插件存在的情况下评估DHT路由的性能。该分析框架为作为一般优化问题的邻居选择问题提供了一个模型。延迟增强问题的集中式理想解决方案是根据邻域定义定义的,以最小化定义的流量需求的延迟。这个问题可以进一步被重新定义为更新交换的最小代价路径选择算法,其中代价被定义为流量和延迟的乘积。网络流理论可以用来找到这个问题的解决方案。需要注意的是,只有了解整个网络,才能找到全局最优值。因此,它不能在实际中使用,我们将仅作为评估分布式邻居选择方案性能的参考。仿真结果表明,最佳解决方案与DHT延迟之间存在微小差异。因此,DHT延迟延伸得到了很大程度的补偿。
本文的其余部分安排如下:在下一节中,我们介绍了一些背景和相关工作。在第3节中,我们将提出一种分布式自适应延迟增强体系结构,然后在第4节中介绍其理论和详细设计。第5节将讨论动态问题。第6节介绍了导出延迟增强问题最佳解决方案的分析框架,第7节将其用于对我们的体系结构进行比较和验证。结束语结束了论文。让我们从背景和一些相关工作开始。