CN102576346A - 对等网络的虚拟环境的兴趣管理 - Google Patents
对等网络的虚拟环境的兴趣管理 Download PDFInfo
- Publication number
- CN102576346A CN102576346A CN2010800320315A CN201080032031A CN102576346A CN 102576346 A CN102576346 A CN 102576346A CN 2010800320315 A CN2010800320315 A CN 2010800320315A CN 201080032031 A CN201080032031 A CN 201080032031A CN 102576346 A CN102576346 A CN 102576346A
- Authority
- CN
- China
- Prior art keywords
- entity
- interest management
- equity
- interest
- peer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 claims abstract description 12
- 238000007726 management method Methods 0.000 claims description 145
- 238000000034 method Methods 0.000 claims description 58
- 101000746134 Homo sapiens DNA endonuclease RBBP8 Proteins 0.000 claims description 4
- 101000969031 Homo sapiens Nuclear protein 1 Proteins 0.000 claims description 4
- 102100021133 Nuclear protein 1 Human genes 0.000 claims description 4
- 238000013461 design Methods 0.000 claims description 3
- 238000011161 development Methods 0.000 claims description 3
- 230000008520 organization Effects 0.000 claims description 3
- 230000004044 response Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 239000000463 material Substances 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 244000144992 flock Species 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/34—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using peer-to-peer connections
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/355—Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/358—Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/40—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
- A63F2300/402—Communication between platforms, i.e. physical link to protocol
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/40—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
- A63F2300/408—Peer to peer connection
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Child & Adolescent Psychology (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种对等网络内兴趣管理的规定,对等网络为多用户提供虚拟环境。在线游戏环境为这种环境的一个实例。本发明包括切换算法(图9),该算法将对等为实体提供的兴趣管理有效地在三个协议(小区、兴趣限界以及闲谈)之间切换(902),以响应于在相关对等上的处理载荷。这使得兴趣管理服务可扩展并且可靠。闲谈协议(图8)将兴趣管理信息发送给实体的相邻的实体,也减少了给该实体的兴趣管理服务发送兴趣管理信息请求的频率。
Description
交叉引用相关应用
该申请主张2010年7月14日提交的澳大利亚临时专利申请No.2009903300的优先权,其内容以引用的方式并入本文中。
而且,2009年10月8日提交的PCT专利申请PCT/AU2009/001331(公开号WO 2010/04179)的内容也以引用的方式并入本文中。
技术领域
本发明涉及为多个用户提供虚拟环境的对等网络(peer-to-peer networks)的兴趣管理(interest management)的规定,在线游戏环境即为这种环境的一个实例。本发明的各方面包括促进兴趣管理的方法、软件、计算机系统、开发平台以及对等网络。
背景技术
对等网络为由节点组成的任何分布式计算机网络结构,每个节点通常为计算机系统(即处理硬件)。由于该分布式结构增强的可扩展性和服务稳健性,所以对等网络通常用于文件共享应用程序中,并且可用于提供分散式多用户虚拟环境。
对等网络通常由以点对点增加的节点动态地形成,其中,对等(peer)为节点上运行的虚拟环境的软件应用的实例。通常,每个节点具有一个对等,但是节点上可运行软件(即对等)的多个实例。
虚拟环境内的兴趣管理能够分享相关的空间信息。所述对等使用网络的兴趣管理服务(interest management service)将兴趣管理提供给对等所分配的几组实体。即,虚拟环境内的每个实体具有兴趣区域,该区域通常为虚拟环境内可限定的区域并且以该实体为中心。实体仅仅需要与其共享同一个兴趣区域的其他实体的信息。这样一来,与共享网络虚拟环境内的全球信息相比,大大降低了网络带宽消耗。同样,减轻了促进兴趣管理的每个对等的工作量。
尽管兴趣管理在客户端-服务器模型网络中是很容易的,但这给对等网络提供了额外的挑战。
在结构化对等网络内,使用基于分布式哈希表(DHT,distributed hash table)的索引可支持兴趣管理。使用以分布式哈希表,可将虚拟环境分割成固定的小区。将权威节点(authoritative node)动态地分配给每个小区,并且通过保持信息的高速缓存,每个节点负责协调小区实体成员之间的兴趣信息。
资源密集型对等网络的实例包括多用户网络游戏环境,网络游戏环境越来越多地包括复杂的大型虚拟环境,在该环境内具有大量实时参与的用户。在线游戏平台内的兴趣管理包括确保实体的游戏状态精确并且最新。实体可为虚拟环境内的任何对象,比如化身(用户)、诸如怪兽之类的非玩家角色以及诸如灯开关或开动的汽车之类的动态内容。
通常,兴趣区域大于所述实体可见到的区域,比如,化身实体的兴趣区域稍微大于屏幕上实际可见的区域。表示动态内容并具有可见区域的实体具有兴趣区域,该区域为零单位(zero units)半径的球体。
本说明书内已经包含的文档、行为、材料、装置、物品等等的讨论仅仅用于为本发明提供背景。不应将其视为承认这些物质中任何物质或所有物质形成现有技术基础或者曾经为与本发明相关的领域中的公共常识,因为在本申请的每条权利要求的优先权日期之前该讨论就存在。
发明内容
在第一方面,本发明提供了由对等执行的方法,该方法用于促进对等网络的虚拟环境进行兴趣管理,该方法包括:
(a)在虚拟环境内,为实体进行兴趣管理,包括代表实体发送兴趣管理信息的请求;
(b)基于由满足条件的对等进行兴趣管理的处理载荷,通过下列步骤选择性地进行兴趣管理:
(i)将促进实体子集的兴趣管理分配给另一对等,或者
(ii)减少发送兴趣管理信息的请求的频率。
本发明的优点在于,实现促进兴趣管理的方法随着时间高效地变化,并且响应于对等处理载荷的变化,使得兴趣管理服务可扩展并且可靠。
兴趣管理信息可包括发现信息,即将新实体引入对等进行兴趣管理的实体内。
所述实体可为虚拟环境中的任何对象,包括用户和动态内容。
步骤(a)针对那些分配给对等的以促进兴趣管理的实体执行。
所述虚拟环境可为在线游戏环境,比如大型多人在线游戏(MMOG)。
在步骤(a)中进行兴趣管理可包括向兴趣管理服务发送兴趣管理信息的请求,比如分布式哈希表(DHT)。该方法明显减少了与分布式哈希表相关的通信开销。这就减少了分布式哈希表上的载荷,并且可明显提高系统的整体性能。
在(i)情况下,以及基于由再次满足条件的对等进行兴趣管理的处理载荷,该方法可进一步包括将另一实体子集的兴趣管理分配给另一对等。
步骤(b)进一步基于:步骤(a)的现有兴趣管理方法是否基于向信息管理服务发送请求和/或为先前选择(i)或(ii)的结果。
在(i)情况下,另一对等促进兴趣管理的实体子集可随着时间改变。
所述处理载荷条件可基于下列一个或多个:
所述对等促进兴趣管理的实体的数量;
特定实体所具有的交集的数量;
所述对等的处理能力,包括用于兴趣管理通信的上游和下游带宽;
所述对等基于实体兴趣的区域促进兴趣管理的实体的候选分组;
所述对等促进兴趣管理的实体的估计比例。
所述处理载荷条件对虚拟网络的特定应用程序来讲可以是具体的。
情况(ii)可根据本发明的下述四个方面。
该方法可由所述对等对分配给对等以促进兴趣管理的每个实体。
在第二方面,本发明提供一种软件,执行该软件时,该软件促使对等网络虚拟环境中虚拟环境的对等根据本发明的第一方面促进兴趣管理。
在第三方面,本发明提供一种计算机系统,组织对等网络虚拟环境中虚拟环境的对等,该对等可操作地促进兴趣管理,该计算机系统包括执行根据本发明的第一方面的方法的处理器、通信端口、储存装置。
在第四方面,本发明提供促进第一实体在对等网络的虚拟环境中进行兴趣管理的方法,该方法包括:
(a)将兴趣管理信息发送给第一实体的相邻的实体;
(b)减少向兴趣管理服务发送兴趣管理信息的请求的频率。
由对等执行该方法,该对等代表分配给其的实体,以促进兴趣管理。该方法可由对等针对每个分配给其的实体进行促进兴趣管理。
所述兴趣管理信息可为存在信息,比如介绍。
可减小步骤(b)中的频率,确保该频率不超过阈值。
步骤(b)中的频率可基于兴趣管理服务的能力,比如适当的分布式哈希表的小区服务器能力。
步骤(b)中的频率可包括首先确定第一实体的交集的估计数量与阈值的比例。步骤(b)可包括生成随机数量,并只在该随机数量表示要发送请求时发送该请求。可比较随机数量和比例。
采用比步骤(b)中的频率更高的频率执行步骤(a)。
执行步骤(a)的频率可基于带宽数量,所述带宽数量由所述对等分配用以执行步骤(a)。
所述第一实体的相邻实体可包括与第一实体通常交换更新状态信息的实体和/或所述对等进行促进兴趣管理的实体。
可将步骤(b)中的请求发送给兴趣管理服务,比如支持虚拟环境的分布式哈希表(DHT)。
步骤(a)可包括:在实体更新消息内携带兴趣管理信息,发送这些实体更新消息给关联第一实体,如实时状态同步消息。
在第五方面,本发明提供一种软件,执行该软件时,该软件促使对等网络虚拟环境的对等根据本发明的第四方面促进兴趣管理。
在第六方面,本发明提供一种计算机系统,组织对等网络虚拟环境的对等,该对等可操作地促进兴趣管理,该计算机系统包括执行本发明的第四方面的方法的处理器、通信端口、储存装置。
在第七方面,本发明提供一种开发平台软件应用,使游戏开发人员能够设计出多人在线游戏,并能够在所述游戏中根据本发明的第一和/或第三方面的方法促进兴趣管理。
在第八方面,本发明提供一种对等网络组织虚拟环境,其中根据本发明的第一和/或第三方面的方法促进虚拟环境内的兴趣管理。
附图说明
现在参看附图描述本发明的实例,其中:
图1为该实例的网络引擎的示意图;
图2为执行小区协议的对等网络的示意图;
图3为执行小区协议(Cell protocol)并具有超负荷小区节点(服务器)的对等网络的示意图;
图4为包括执行动态限界协议的对等网络的示意图;
图5示出了两个限界区域的合并操作;
图6示出了限界区域的分裂操作;
图7示出了限界区域实体的两个小组;
图8为闲谈协议(gossip protocol)的方法的流程图;
图9为协议之间的切换算法的方法的流程图;
图10为计算机系统的元件的示意图,该计算机系统组织能够执行图7和/或8的方法的对等。
具体实施方式
在该实例中,虚拟环境为大型多人在线游戏的虚拟环境。该实例使用为虚拟环境设计的引擎,该引擎提供完整的网络框架。包括网络插件,该插件与现有的大型多人在线游戏(MMOG)相结合,使得网络可高度扩张。图1中显示了该引擎的逻辑元件的示意图。本申请中的实例针对网络引擎的兴趣管理服务20。所述兴趣管理服务负责为大型多人在线应用程序内的所有实体提供相关的实时信息并且确保游戏状态精确并且最新。所述兴趣管理服务将虚拟环境内的所有对象视为实体。
没有集中索引服务器(indexing server)时,该引擎依赖分布式空间索引算法,该算法可由对等在对等网络上执行。在该实例中,负责兴趣管理的对等使用多层方法,该方法基于虚拟环境内的网络条件在三个不同的协议之间自动进行切换。
在该实例中,三个兴趣管理协议为:小区、动态限界区域、以及闲谈(Gossip)。
现在依次描述每个协议。
小区协议
将虚拟环境分为大小固定的区域(小区),并且将这些小区插在分布式哈希表所形成的对等网络上。映射确保在网络内的所有对等上的负载均衡充足。每个小区的大小基于网络内对等的数量,也基于应用程序的性质。离所映射的小区最近的对等负责该小区。即,将组织该对等的节点视为小区节点(服务器)。比如,在图2中,P1为小区C1的小区节点(服务器),P2为小区C2的小区节点(服务器)。
当对等向网络介绍/宣告所分配的实体时,该对等使用小区协议将该实体和兴趣区域插入虚拟环境内。适当的小区服务器得到新实体(请求)的通知,并且反过来将新实体兴趣区域内的其他相关实体通知给进行介绍的对等。
如果新实体与其他实体的兴趣区域相交,那么小区服务器还会通过各个对等向小区内所有其他的实体提供关于该新实体的信息。小区内的实体定期询问相关小区节点(服务器),以找出其兴趣区域内的其他实体,也称为要求兴趣管理信息(见图9的步骤900)。该小区服务器以更新后的与其他实体和兴趣区域的交集组作为响应。该小区节点(服务器)仅仅发送交集组的变化,而不发送整个交集组。
由于给定实体的交集数量增加,比如虚拟环境内某个空间的化身密度增大,所进行的兴趣管理算法切换到下面描述的动态限界方法。
动态限界区域协议
使用小区协议的一个缺陷在于保持分布式哈希表需要大笔开销。分布式哈希表的每次插入要重复几次(取决于分布式哈希表的大小)。因此,如果虚拟环境内具有大量的实体,那么这些实体会给分布式哈希表造成明显的载荷,使得该分布式哈希表不稳定。图3显示了多个实体(用30表示)如何能在虚拟空间内聚集在一起使得分布式哈希表超载的实例。通过减少分布式哈希表的载荷,动态限界区域协议解决了该问题,并且即使虚拟环境的实体数量明显增大也会确保分布式哈希表稳定。2009年10月8日提交的PCT专利申请号PCT/AU2009/001331(公开号WO 2010/04179)中完整地描述了动态限界区域协议。
现在参考图4,动态限界兴趣管理(IM,Interesting Management)区域32为任何形状和尺寸的空间内的区域。与小区不同,限界兴趣管理区域为动态,即该区域在虚拟空间内可四处移动并且可按照要求调整其大小。而且,限界兴趣管理区域本身为“实体”,因此该区域可插入其他兴趣管理服务(比如小区或其他限界兴趣管理区域)内。限界兴趣管理区域可采取任何由基本的对象系统支撑的形状,比如球形。
动态限界兴趣管理区域在发现过程中引入额外的条件。每个实体及其相关的兴趣区域的兴趣管理由限界兴趣管理区域提供。限界区域通过其限界区域管理对等询问分布式哈希表,以找出其他实体和其他限界兴趣区域。兴趣区域内的实体询问其限界区域,以识别任何兴趣实体。
限界区域由管理对等控制,将特定限界区域的限界区域管理员的任务分配给网络上的对等。这样进行对等选择,以便在网络上分布载荷。限界区域内只有一个实体时,由本地对等(分配给该实体的对等)管理该限界区域。这就省去了实体和限界区域之间相关的通信开销。
限界区域管理对等产生限界区域,并且在该限界区域内插入实体和其兴趣区域,开始进行系统操作(见图9中的步骤902(i))。然后限界区域管理对等使用小区协议将限界兴趣管理区域插入分布式哈希表。这些小区在空间内检测所插入的限界兴趣管理区域和现有的实体之间的交集,并且通过负责的对等将新服务通知给这些实体。反过来,这些实体从小区中去除其区域并将这些区域插入限界兴趣管理区域内。如果某实体被限界兴趣管理区域完全包含,那么该限界兴趣管理服务的区域管理对等发送通知给该实体,通知该实体已经与分布式哈希表分离。该有效效应在于仅将一个区域插入覆盖所有实体的分布式哈希表内,明显减少了分布式哈希表复制造成的通信量。
实体随时自由进入或离开限界兴趣管理区域所覆盖的空间区域。兴趣管理服务将限界兴趣管理区域和分布式哈希表的交集/分离通知给这些实体,然后按照要求更新兴趣管理订阅。同样,限界区域可按照要求移动或调整大小,以最小化网络通信量,兴趣管理通知依然确保兴趣管理订阅的一致性。
限界实体管理区域具有默认大小,然而,这些区域的尺寸可增大或缩小,以便容纳多个对象。具有最大的尺寸限制,计算该尺寸限制,以便优化系统性能。限界区域可与其他区域合并(见图5),或者基于区域内的实体运动,这些区域可分裂(见图6)成多个限界区域。
可由下面的算法描述限界区域的行为。假设限界区域B1包含N个实体O1,O2,…,ON。每次实体从订阅区域移出时,其负责的对等发送请求给限界区域,限界区域的管理对等反过来调用“更改_区域()函数(Modify_Region()function)”。为了理解这些算法,这里介绍小组的概念。基于实体的兴趣区域的重叠,将区域内的实体分为小组。小组内的所有实体具有一定程度的重叠或者通过另外的实体连接。比如,在图7中,限界区域X具有两个小组。第一组包括A、B和C,第二组包括D和E。即使实体A和C的兴趣区域彼此不相交,但是这些区域为同一个小组的一部分,因为这些区域通过实体B连接。
更改_区域(),合并()和分裂()的算法如下:
限界兴趣管理区域与其区域内的各个实体或分布式哈希表的连接(暂时或永久地)失败或丧失。在这种情况下,所有的实体和限界兴趣区域恢复使用小区协议,并且重新形成新限界兴趣区域。当限界兴趣区域失效时,这就给兴趣管理提供后退机制,确保限界兴趣管理区域能够以平稳的方式从网络和设备失效中恢复,而不丧失连接。
Gossip协议
限界兴趣管理减少了分布式哈希表上的载荷,从而随后减少复制中附加的开销。然而,限界区域限制了这些区域可支撑的实体的数量。由于限界区域由单个对等管理,所以如果大量的实体参与限界兴趣管理区域,这些区域就会超载。如果大量的用户聚集在小空间内,就会发生该情形。如图3所示,所有的实体可为相同限界区域的一部分。这就造成该限界区域的管理对等超载,并且使得系统不稳定。Gossip协议会确保无论多少实体进入限界区域或小区,对等均不超载。
当该实体的交集数量超过某个阈值(见图9的步骤902)时,对等使用闲谈模式为实体提供兴趣管理。进入闲谈模式的阈值与实体兴趣区域内的实体的总数成比例。
每个实体第一次进入虚拟环境时,总是通过负责的对等将自身插入分布式哈希表(使用小区协议)。然而,由于实体的交集数量超过预定的阈值(见图9的步骤902),该实体的负责对等切换到Gossip协议,以促进该实体的兴趣管理。
对分布式哈希表的限制要求
Gossip协议确保兴趣管理服务的大小可适合大量用户(并且反过来适合实体),而不损害整个系统的性能。这由对该实体负责的对等通过减少代表该实体的适当的小区服务器进行的兴趣管理询问的频率,达到该目的(见图8的步骤802和图9的步骤902(ii))。这种减少的频率可基于预定的和可编程的阈值。比如,基于适当的小区服务器的能力,所减少的询问频率由负责的对等确定或者提供给负责的对等。该减少的频率也可基于其他参数,比如实体区域密度和该对等交集的数量。
以Gossip模式管理实体时,通过减少而非停止对兴趣管理服务的询问,确保小区服务器具有实体知识并可调整任何差异。
使用概率函数计算实体ei询问分布式哈希表的频率,该函数考虑了该实体的交集数量。
假定进入闲谈模式的实体的阈值为T个交集(在ei的兴趣区域内具有T个以上的实体)。
对于给定的时间段P,假设ei的已知交集的数量为K(必须大于T,否则ei不在闲谈模式内)。假定对ei负责的对等接收R个引入(introductions),同时在该时间段P内与其相邻的实体闲谈。在整个R引入的实体中的实体子集U并非负责的对等先前已知的那些实体(即,某些所接收的闲谈信息与该实体已知的那些实体相关)。由于该对等未与小区服务器连通一段时间并且也不确切了解,所以计算ei兴趣区域内的实体Ni的总数的估算值。Ni计算如下:
Ni=(U/R)*K+K
需要注意的是,所估算的Ni总是大于或等于K,K大于T。
使用概率函数(PDF)ρi如下计算闲谈频率:
ρi=T/Ni
需要注意的是,ρi总是为1或者小于1,因为Ni总大于T。
每次对ei负责的对等预期询问分布式哈希表时,均生成0和1之间的随机数。如果该随机数小于ρi,那么该对等询问分布式哈希表,否则就不询问。即,该频率基于Ni大于阈值T的程度以及所生成的随机数。
该程序确保对小区服务器进行询问的总数不超过该时间段内的阈值T。
实体之间的闲谈信息
可替换的,实体通过其负责的对等依赖相邻的实体,将虚拟空间内的其他实体通知给彼此(见图8的步骤800)。
通常,每个对等了解几个区域和这些区域的信息储存在其本地存储器内。促进闲谈模式(Gossip mode)的实体进行兴趣管理时,该实体的负责对等将关于这种已知区域的信息发送给实体的其他对等,即对等与其他对等交流区域详情(见图8的步骤800)。
比如,假设有四个对等A、B和C,其分别控制实体A、B和C。三个实体A、B和C分别具有区域A、B和C。
A和B相邻,因为实体A(通过对等A)了解区域B,比如小区服务器已经将区域B的详情给予对等A,或者从限界兴趣管理系统中可获得该信息,因为实体A和B在彼此的兴趣区域内。B和C相邻,因为实体C了解区域B。
实体A和B以及实体B和C定期地(通过其对等)交换实体更新,比如位置信息。
对等A目前正在Gossip协议内管理实体A,将兴趣信息添加到实体A定期发送给实体B和C的某些实体更新消息(见图8的步骤802)。兴趣信息为“闲谈(Gossip)”,因为A将实体C的存在通知给实体B。实体A也将实体B的存在通知给实体C。
实体B(通过对等B)从A中接收信息更新包并且以常规的方式进行处理。如果B检测该消息内的额外“闲谈”信息,那么其对该信息进行如下处理。如果B已经意识到实体C,那么其简单地忽略更新消息内的额外信息。如果实体B未意识到实体C为实体B的兴趣区域,那么将其视为介绍。然后,实体B试图与实体C进行连通(通过其各自的对等),以在以后分享更新消息。
对等A将实体A切换到Gossip协议中时,为闲谈分配固定的带宽量。对等A使用该带宽,引入其他的实体,同时与相邻的实体闲谈/交互。对等A确保仅仅发送关于某些随机选择的更新消息的兴趣信息不会超过该带宽。
Gossip协议确保兴趣管理服务稳健并且稳定,能够支持密集的区域,而不造成对等网络超载。
在其间选择性地切换
现在描述在兴趣管理协议之间选择性地切换的方法,该方法在结构对等网络内由对等执行。
下面显示选择性切换算法的实例,其中:
对等能力P(int x,int y)
对等的能力为保留给兴趣管理的对等的预计带宽。x为兴趣管理的预计上游带宽,y为兴趣管理的预计下游带宽。
交集整数n
这为实体的交集的数量,即n表示实体兴趣区域内的实体的估计数量。
总体状态水平G(float(浮动))
此为实体兴趣区域内的实体的估计数量与网络N内的实体的总数之间的预计比率。
在结构对等网络中,每个对等具有网络的局部信息,因此并非每个对等了解网络内对等的总数。相反,在该实例中,对等如下预估网络内对等的总数。每个对等负责该空间内的某个区域。比如,如果该网络内仅仅有一个对等,那么该对等负责整个虚拟空间(见图7)。如果网络内具有三个对等,那么平均每个对等负责三分之一的虚拟空间,这是因为散列函数足够随机,以便假定整体上均匀地分布对等,这在图8中用示出了出。因此如果在虚拟网络内具有N个对等,那么平均每个对等负责整个虚拟空间的1/N。每个对等使用该方法估计N的值。
由对等为每个所分配的实体进行下面的算法,使用不同的协议兴趣管理每个实体。
选择_协议(对等能力P,交集数量n,现有总体水平G)
也就是说:
常量t=f(P.x,P.y)
对等基于对等能力P计算阈值t。
常量U=f(P.x)
对等基于对等P能力计算阈值U。
实体列表X:{}
生成所有实体的列表,对等P将兴趣管理提供给这些实体。
在X内解析每个E并形成子组
即,基于其兴趣区域,将分配给对等的实体分成子组。
另s=子组的数量
将参数s设定为上述子组的数量。
如果(协议=小区)&&(s>t)
切换_协议(限界区域)
如果对等P目前操作该实体的小区协议,并且子组的数量大于基于P的能力确定的阈值t,那么现在将对等P设为相对于该实体根据上述的限界区域协议进行操作。
如果(协议=小区或限界区域)&&(n>U)
切换_协议(闲谈)
如果对等P目前操作该实体的小区或限界区域协议,并且该实体区域范围内的对等的数量大于基于兴趣管理的对等P的下游带宽的阈值U,那么现在将对等P设为根据上述的gossip协议管理该实体。
如果(G>0.5)
切换_协议(小区)
此文中,负载均衡阈值0.5为预定的阈值,该阈值可调,并且基于应用程序而变化。在其他的实施例中,变量可用于限定该阈值参数,然后该参数可成为应用程序特有的阈值。
在该实例中,如果对等P对对等网络内预计不到50%的实体负责,那么现在将对等P设为根据上述的小区协议进行操作。
如果(G<=0.5)并且(n<U)
切换_协议(限界区域)
在该实例中,如果对等P对对等网络内预计50%以上的实体负责,并且该实体的交集的数量大于基于兴趣管理的对等P的下游带宽的阈值,那么现在将对等P设为根据上述的限界区域协议进行操作。
如果(G<=0.5)并且(n>U)
切换_协议(闲谈)
在该实例中,如果对等P对对等网络内预计50%以上的实体负责,并且该实体的交集的数量大于基于兴趣管理的对等P的下游带宽的阈值,那么现在将对等P设为根据上述的Gossip协议进行操作。
图10为计算机系统100的示意图,该计算机系统组织能够执行上述的切换算法和兴趣管理协议的对等。计算机系统包括存储器102,该存储器包括储存应用软件,在该应用程序中,包括允许用户在虚拟环境上参与的软件,尤其是为对等提供器具的软件。还提供储存器,此外,该储存器还储存关于信息兴趣管理的信息,比如,分配给对等的实体的区域的详情。还提供处理器110,以执行该软件108并获得106中储存的信息,以便执行上述方法。使用输入输出口104将处理器110生成的请求和更新消息发送到网络上。在端口104处接收对请求和更新消息等的回复,并且如上所述由处理器110处理这些回复,可包括在存储器106中储存一些信息。
在其他实施例中,可使用对等P的不同处理载荷措施以及阈值条件,并且按照不同的顺序使用,以便在所述的三个兴趣管理协议之间有效地进行切换。
可引进其他的兴趣管理协议,以便在四个或更多的兴趣管理协议之间进行选择。
该实例有利的是,兴趣管理服务可扩展,使得该服务可处理蜂拥而至的突发访问,并且同时可靠精确。
本技术领域的技术人员要理解的是,如具体的实施例中所示,本发明可进行大量的变更和/或更改,而不背离本发明所描述的广泛范围。
要理解的是,使用各种技术可执行该公开的技术。比如,合适的计算机可读介质上的一系列计算机可执行指令可执行此文中所描述的方法。合适的计算机可读介质可包括易失性(比如随机存取存储器)或非易失性(比如只读存储器,磁盘)存储器、载波和传输介质。示范性载波可采取电动、电磁或光学信号的形式,沿着局部网络或可公开访问的网络(比如互联网)输送数字数据流。
还要理解的是,除非另外在下面的讨论中明显地特别指出,否则要了解,在整个说明书中,讨论所使用的术语,比如“构造”、或“处理”、或“接收”、或“获取”、或“包括”、或“计算”、或“执行”等等,指计算机系统、或类似的电子计算装置、或其他这种信息储存器、传输或显示装置的行为和程序,类似的电子计算装置处理由计算机系统的寄存器和存储器内的物理(电子)量所表示的数据并将其转换成同样由计算机系统的存储器或寄存器内的物理量所表示的其他数据。
因此,在各个方面应将这些实施例视为说明性,而非限制性。
Claims (24)
1.一种由对等执行的用于促进对等网络的虚拟环境进行兴趣管理的方法,其特征在于,该方法包括:
(a)在虚拟环境内,为实体进行兴趣管理,包括代表实体发送兴趣管理信息的请求;
(b)基于由满足条件的对等进行兴趣管理的处理载荷,通过下列步骤选择性地进行兴趣管理:
(i)将促进实体子集的兴趣管理分配给另一对等,或者
(ii)减少发送兴趣管理信息的请求的频率。
2.根据权利要求1所述的方法,其特征在于,在步骤(a)中进行兴趣管理包括向兴趣管理服务发送兴趣管理信息的请求。
3.根据权利要求1或2所述的方法,其特征在于,该方法进一步包括:
在(i)情况下,以及基于由再次满足条件的对等进行兴趣管理的处理载荷,将另一实体子集的兴趣管理分配给另一对等。
4.根据权利要求1、2或3所述的方法,其特征在于,步骤(b)进一步基于:步骤(a)的现有兴趣管理方法是否基于向信息管理服务发送请求和/或为先前选择(i)或(ii)的结果。
5.根据前述权利要求中任一项所述的方法,其特征在于,在(i)情况下,另一对等促进兴趣管理的实体子集随着时间改变。
6.根据前述权利要求中任一项所述的方法,其特征在于,所述处理载荷条件基于下列一个或多个:
所述对等促进兴趣管理的实体的数量;
特定实体所具有的交集的数量;
所述对等的处理能力;
所述对等基于实体兴趣的区域促进兴趣管理的实体的候选分组;
所述对等促进兴趣管理的实体的估计比例。
7.根据前述权利要求中任一项所述的方法,其特征在于,情况(ii)基于权利要求11到20中的任一项。
8.根据前述权利要求中任一项所述的方法,其特征在于,所述方法由所述对等对分配给对等以促进兴趣管理的每个实体。
9.一种软件,其特征在于,执行该软件以促使对等网络虚拟环境中虚拟环境的对等根据前述任一项权利要求促进兴趣管理。
10.一种计算机系统,其特征在于,该计算机系统组织对等网络虚拟环境中虚拟环境的对等可操作地促进兴趣管理,该计算机系统包括执行根据权利要求1到8中任一项所述的方法的处理器、通信端口、储存装置。
11.一种促进第一实体在对等网络的虚拟环境中进行兴趣管理的方法,其特征在于,该方法包括:
(a)将兴趣管理信息发送给与第一实体的相邻的实体;
(b)减少向兴趣管理服务发送兴趣管理信息的请求的频率。
12.根据权利要求11所述的方法,其特征在于,减小所述步骤(b)中的频率,确保该频率不超过阈值。
13.根据权利要求11或12所述的方法,其特征在于,所述步骤(b)中的频率基于兴趣管理服务的能力。
14.根据权利要求11、12或13所述的方法,其特征在于,所述步骤(b)中的频率包括首先确定第一实体的交集的估计数量与阈值的比例。
15.根据权利要求11到14中任一项所述的方法,其特征在于,所述步骤(b)包括生成随机数量,并只在该随机数量表示要发送请求时发送该请求。
16.根据由权利要求15限定的权利要求14所述的方法,其特征在于,比较所述随机数量和所述比例。
17.根据权利要求11到16中任一项所述的方法,其特征在于,所述步骤(a)以比步骤(b)中的频率更高的频率执行。
18.根据权利要求11到17中任一项所述的方法,其特征在于,所述步骤(a)以基于带宽数量的频率执行,所述带宽数量由所述对等分配用以执行步骤(a)。
19.根据权利要求11到18中任一项所述的方法,其特征在于,所述步骤(b)中的请求发送给兴趣管理服务。
20.根据权利要求11到19中任一项所述的方法,其特征在于,所述步骤(a)包括:在实体更新消息内携带兴趣管理信息,发送所述实体更新消息给关联第一实体。
21.一种软件,其特征在于,执行该软件以促使对等网络虚拟环境的对等根据权利要求11到19中任一项促进兴趣管理。
22.一种计算机系统,其特征在于,组织对等网络虚拟环境的对等可操作地促进兴趣管理,该计算机系统包括执行根据权利要求11到19中任一项所述的方法的处理器、通信端口、储存装置。
23.一种开发平台软件应用,其特征在于,使游戏开发人员能够设计出多人在线游戏,并能够在所述游戏中根据权利要求1到8、11到19中任一项所述的方法进行促进兴趣管理。
24.一种组织虚拟环境的对等网络,其特征在于,根据权利要求1到8、11到19中任一项所述的方法促进虚拟环境内的兴趣管理。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2009903300A AU2009903300A0 (en) | 2009-07-14 | Three tiered interest management for decentralised virtual environments | |
AU2009903300 | 2009-07-14 | ||
PCT/AU2010/000898 WO2011006203A1 (en) | 2009-07-14 | 2010-07-14 | Interest management for a virtual environment of a peer-to-peer network |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102576346A true CN102576346A (zh) | 2012-07-11 |
Family
ID=43448801
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010800320315A Pending CN102576346A (zh) | 2009-07-14 | 2010-07-14 | 对等网络的虚拟环境的兴趣管理 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20120197997A1 (zh) |
EP (1) | EP2454677A1 (zh) |
KR (1) | KR20120040240A (zh) |
CN (1) | CN102576346A (zh) |
AU (1) | AU2010273177A1 (zh) |
WO (1) | WO2011006203A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108096832A (zh) * | 2017-12-26 | 2018-06-01 | 北京奇虎科技有限公司 | 一种处理网页游戏的方法及电子终端 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101984007B1 (ko) * | 2012-10-31 | 2019-05-31 | 한국전자통신연구원 | P2p 네트워크 기반 콘텐트 전달 서비스에서 사용자에게 다른 사용자가 수신하고 있는 콘텐트 정보를 제공하는 방법 |
KR101595948B1 (ko) | 2014-12-11 | 2016-02-29 | 충북대학교 산학협력단 | 부하 임계치 조정을 통한 p2p 네트워크의 부하 분산 처리 방법 및 이를 구현하는 디바이스 |
US9858303B2 (en) | 2015-01-12 | 2018-01-02 | International Business Machines Corporation | In-memory latch-free index structure |
US10579434B2 (en) | 2016-08-24 | 2020-03-03 | Improbable Worlds Ltd | Simulation systems and methods using query-based interest |
US10380282B2 (en) | 2016-08-24 | 2019-08-13 | Improbable Worlds Ltd | Distributable and customizable load-balancing of data-associated computation via partitions and virtual processes |
US10289767B2 (en) | 2016-08-24 | 2019-05-14 | Improbable Worlds Ltd | Communications interface facilitating operations of a persistent spatially-optimized computer-based simulation |
US10549189B1 (en) * | 2018-12-20 | 2020-02-04 | Sony Interactive Entertainment LLC | Massive multi-player compute |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370565B1 (en) * | 1999-03-01 | 2002-04-09 | Sony Corporation Of Japan | Method of sharing computation load within a distributed virtual environment system |
US20060003823A1 (en) * | 2004-06-30 | 2006-01-05 | Microsoft Corporation | Dynamic player groups for interest management in multi-character virtual environments |
WO2008040092A1 (en) * | 2006-10-05 | 2008-04-10 | National Ict Australia Limited | Decentralised multi-user online environment |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030177187A1 (en) * | 2000-11-27 | 2003-09-18 | Butterfly.Net. Inc. | Computing grid for massively multi-player online games and other multi-user immersive persistent-state and session-based applications |
US7606900B2 (en) * | 2001-07-27 | 2009-10-20 | International Business Machines Corporation | Regulating access to a scarce resource |
US7124110B1 (en) * | 2002-07-15 | 2006-10-17 | Trading Technologies International Inc. | Method and apparatus for message flow and transaction queue management |
US7779415B2 (en) * | 2003-11-21 | 2010-08-17 | International Business Machines Corporation | Adaptive load distribution in managing dynamic and transient data for distributed applications |
US8856310B2 (en) * | 2005-12-22 | 2014-10-07 | Alcatel Lucent | ACORN: providing network-level security in P2P overlay architectures |
US8601112B1 (en) * | 2006-03-14 | 2013-12-03 | Amazon Technologies, Inc. | Method and system for collecting and analyzing time-series data |
US7519734B1 (en) * | 2006-03-14 | 2009-04-14 | Amazon Technologies, Inc. | System and method for routing service requests |
WO2007110865A1 (en) * | 2006-03-27 | 2007-10-04 | Rayv Inc. | Realtime media distribution in a p2p network |
EP2002632B1 (en) * | 2006-03-28 | 2015-10-21 | Nxp B.V. | Delay Mismatch Compensation Using a Low Complexity Structure in Signal Transmitters with Digital and Analog Components |
US20080104609A1 (en) * | 2006-10-26 | 2008-05-01 | D Amora Bruce D | System and method for load balancing distributed simulations in virtual environments |
US20100058424A1 (en) * | 2008-08-26 | 2010-03-04 | Comcast Cable Holdings, Llc | System and method for controlling signal traffic peaks on a video interactive network |
-
2010
- 2010-07-14 KR KR1020127003745A patent/KR20120040240A/ko not_active Application Discontinuation
- 2010-07-14 CN CN2010800320315A patent/CN102576346A/zh active Pending
- 2010-07-14 EP EP10799286A patent/EP2454677A1/en not_active Withdrawn
- 2010-07-14 WO PCT/AU2010/000898 patent/WO2011006203A1/en active Application Filing
- 2010-07-14 US US13/381,346 patent/US20120197997A1/en not_active Abandoned
- 2010-07-14 AU AU2010273177A patent/AU2010273177A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370565B1 (en) * | 1999-03-01 | 2002-04-09 | Sony Corporation Of Japan | Method of sharing computation load within a distributed virtual environment system |
US20060003823A1 (en) * | 2004-06-30 | 2006-01-05 | Microsoft Corporation | Dynamic player groups for interest management in multi-character virtual environments |
WO2008040092A1 (en) * | 2006-10-05 | 2008-04-10 | National Ict Australia Limited | Decentralised multi-user online environment |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108096832A (zh) * | 2017-12-26 | 2018-06-01 | 北京奇虎科技有限公司 | 一种处理网页游戏的方法及电子终端 |
Also Published As
Publication number | Publication date |
---|---|
AU2010273177A1 (en) | 2012-02-02 |
EP2454677A1 (en) | 2012-05-23 |
KR20120040240A (ko) | 2012-04-26 |
US20120197997A1 (en) | 2012-08-02 |
WO2011006203A1 (en) | 2011-01-20 |
WO2011006203A8 (en) | 2011-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102576346A (zh) | 对等网络的虚拟环境的兴趣管理 | |
Baldoni et al. | TERA: topic-based event routing for peer-to-peer architectures | |
Hassanzadeh-Nazarabadi et al. | Decentralized utility-and locality-aware replication for heterogeneous DHT-based P2P cloud storage systems | |
Patel et al. | Rappel: Exploiting interest and network locality to improve fairness in publish-subscribe systems | |
Ranjan et al. | Decentralised resource discovery service for large scale federated grids | |
Jayalath et al. | Universal cross-cloud communication | |
Pandey et al. | Minimizing the communication cost of aggregation in publish/subscribe systems | |
e Silva et al. | On the scalability of P2P swarming systems | |
Fu et al. | A general scalable and accurate decentralized level monitoring method for large-scale dynamic service provision in hybrid clouds | |
Ozkasap et al. | Flat and hierarchical epidemics in P2P systems: Energy cost models and analysis | |
Kulkarni et al. | Badumna: A decentralised network engine for virtual environments | |
Krause | A case for mutual notification: a survey of P2P protocols for massively multiplayer online games | |
Cota et al. | RACOON++: A semi-automatic framework for the selfishness-aware design of cooperative systems | |
Oliveira et al. | Improving peer neighborhood on P2P video distribution networks using Push/Pull protocol | |
Evropeytsev et al. | An efficient causal group communication protocol for P2P hierarchical overlay networks | |
Jafarpour et al. | Dynamic load balancing for cluster-based publish/subscribe system | |
Reddy et al. | Fair k mutual exclusion algorithm for peer to peer systems | |
Zuo et al. | An evolutionary game-based mechanism for routing P2P network flow among selfish peers | |
Koskela et al. | Robustness of a P2P community management system based on two-level hierarchical DHT overlays | |
Xiang-bin et al. | An interest management mechanism based on n-tree | |
Maamar et al. | Energy management control for supplying partner selection protocol in mobile peer‐to‐peer three‐dimensional streaming | |
Celaya et al. | Scalable architecture for allocation of idle CPUs in a P2P network | |
Li et al. | Self-adaptive AOI-cast based on node bandwidth usage rate for peer-to-peer networked virtual environment | |
Guha et al. | Improving Web access efficiency using P2P proxies | |
Nishide et al. | Data aggregation method for view range computation on p2p-based vcs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120711 |