一种分布式虚拟现实内容分发方法和系统与流程

文档序号:17356514发布日期:2019-04-09 21:43阅读:243来源:国知局
一种分布式虚拟现实内容分发方法和系统与流程

本发明属于虚拟现实技术领域,尤其涉及一种分布式虚拟现实内容分发方法及系统。



背景技术:

随着虚拟现实(virtualreality,简称vr)和互联网技术的发展,为了满足地理上广为分布的不同计算终端之间的交互需求,分布式虚拟现实(distributedvirtualreality,简称dvr),又称分布式虚拟环境(distributedvirtualenvironments,简称dve)应运而生。

地理上分布于不同区域的计算终端,在本地构建虚拟环境,然后通过控制虚拟节点化身(avatar,用于代表真实用户的虚拟人)在一个共享的三维虚拟环境中进行交互或者漫游。

目前,vr体验店发展迅猛,为使用户获得较佳使用体验,vr厂商会提供诸如视频、游戏、动画等体验内容,并且定期或不定期对体验内容进行更新或升级,然后各门店对分布式虚拟现实内容进行下载、更新或升级,但是,由于分布式虚拟现实内容数据量大,在体验店较多的情况下,带宽压力大,下载速度慢。



技术实现要素:

本发明旨在提供一种分布式虚拟现实内容分发方法及系统,能有效解决上述技术缺陷。

为了实现上述目的,本发明的技术方案是:

一种分布式虚拟现实内容分发方法,其适用于vr体验店,所述vr体验店为用户请求点或内容节点,该方法包括:

用户请求点发送目标文件下载请求;

用户请求点通过对等网络传输协议连接索引服务器根据所述目标文件下载请求随机返回的正在下载该目标文件的内容节点;

用户请求点从所述内容节点下载目标文件。

进一步地,所述用户请求点发送文件下载请求具体为:用户请求点通过超文本传输协议或数据报传输协议发送文件下载请求至索引服务器。

进一步地,所述文件下载请求包含该用户请求点私有信息、目标文件名称及目标文件的哈希值。

进一步地,所述索引服务器根据所述目标文件下载请求随机返回的正在下载该目标文件的内容节点具体为:

索引服务器根据所述文件下载请求中的目标文件的哈希值查找内部数据字典;

根据用户请求点私有信息,将查找到的正在下载该目标文件的内容节点的内容节点信息随机返回至用户请求点。

进一步地,在用户请求点从所述内容节点下载目标文件之前,还包括:

判断所述正在下载该目标文件的内容节点包括一个还是多个,当存在多个内容节点正在下载该目标文件时,则进一步

用户请求点发送目标文件当前下载完成进度请求至所述多个内容节点;

用户请求点根据所述多个内容节点的当前下载完成进度将目标文件切割成多个子文件;

用户请求点从所述多个内容节点中分别下载对应的子文件;

其中,所述多个子文件包括第一子文件和第二子文件,所述第一子文件即为内容节点中有节点已下载完成的子文件;第二子文件为任一内容节点均未开始下载的子文件;

第一子文件对应由刚完成该子文件下载的内容节点通过对等网络传输协议传输至用户请求点;

第二子文件由已开始下载第二子文件且最先完成其负责的向用户请求点传输下载第一子文件的内容节点通过对等网络传输协议传输至用户请求点。

进一步地,在用户请求点发送目标文件下载请求后,还包括判断用户请求点与索引服务器是否连接:

若是,则继续后续步骤;

若否,则用户请求点通过分布式哈希表网络查询正在下载该目标文件的内容节点并获取内容节点信息,然后通过对等网络传输协议连接所述内容节点,进一步用户请求点从所述内容节点下载目标文件。

为了解决上述技术问题,本发明实施例还提供了一种分布式虚拟现实内容分发系统,其包括包括索引服务器、与所述索引服务器连接的多个用户请求点和内容节点;

所述用户请求点,用于发送目标文件下载请求;

所述索引服务器,用于接收所述目标文件下载请求,并根据所述目标文件下载请求随机返回的正在下载该目标文件的内容节点的内容节点信息;

所述用户请求点还用于通过对等网络传输协议连接所述内容节点,并从所述内容节点下载目标文件。

进一步地,所述用户请求点,还用于判断所述正在下载该目标文件的内容节点包括一个还是多个,当存在多个内容节点正在下载该目标文件时,则进一步

发送目标文件当前下载完成进度请求至所述多个内容节点;

根据所述多个内容节点的当前下载完成进度将目标文件切割成多个子文件;

从所述多个内容节点中分别下载对应的子文件;

其中,所述多个子文件包括第一子文件和第二子文件,所述第一子文件即为内容节点中有节点已下载完成的子文件;第二子文件为任一内容节点均未开始下载的子文件;

第一子文件对应由刚完成该子文件下载的内容节点通过对等网络传输协议传输至用户请求点;

第二子文件由已开始下载第二子文件且最先完成其负责的向用户请求点传输下载第一子文件的内容节点通过对等网络传输协议传输至用户请求点。

进一步地,所述用户请求点,还用于在用户请求点发送目标文件下载请求后,判断与索引服务器是否连接;并在用户请求点与索引服务器连接不上时,通过分布式哈希表网络查询正在下载该目标文件的内容节点并获取内容节点信息,然后通过对等网络传输协议连接所述内容节点,进一步从所述内容节点下载目标文件。

基于上述技术方案,本发明实施例的至少可以产生以下技术效果:

1、本发明将vr体验店作为用户请求点的同时,作为内容节点,既可以发送文件下载请求,请求下载目标文件,在下载文件的同时又作为其他请求点的内容节点,通过众多节点分发的互相传输,大大减少服务器和带宽成本,下载速度快,用户体验更佳。

2、相比于传统依靠中央节点,本发明的分布式虚拟现实内容分发系统中的索引服务器、用户请求节点、内容节点均为平等的节点,抗攻击和故障能力更好。

附图说明

图1是本发明实施例的分布式虚拟现实内容分发方法的流程示意图;

图2是本发明实施例的分布式虚拟现实内容分发方法的流程示意图;

图3是本发明实施例的分布式虚拟现实内容分发方法的流程示意图;

图4是本发明实施例的分布式虚拟现实内容分发系统的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面结合说明书附图对本发明实施例作进一步详细描述。应当理解,此处所描述的实施例仅用于说明和解释本发明,并不用于限定本发明。

实施例1

如图1所示,为本发明实施例的分布式虚拟现实内容分发方法,其适用于vr体验店,所述vr体验店为用户请求点或内容节点,该方法包括:

s100:用户请求点发送目标文件下载请求;

其中,所述文件下载请求包含该用户请求点私有信息、目标文件名称及目标文件的哈希值。

其中,所述用户请求点发送文件下载请求具体为:用户请求点通过超文本传输协议或数据报传输协议发送文件下载请求至索引服务器。

s200:用户请求点通过对等网络传输协议连接索引服务器根据所述目标文件下载请求随机返回的正在下载该目标文件的内容节点;

其中,所述索引服务器根据所述目标文件下载请求随机返回的正在下载该目标文件的内容节点的内容节点信息具体为:

索引服务器根据所述文件下载请求中的目标文件的哈希值查找内部数据字典;

根据用户请求点私有信息,将查找到的正在下载该目标文件的内容节点的内容节点信息随机返回至用户请求点。

s300:用户请求点从所述内容节点下载目标文件。

优选地,如图2所示,在用户请求点从所述内容节点下载目标文件之前,还包括:

s400:判断所述正在下载该目标文件的内容节点包括一个还是多个,当存在多个内容节点正在下载该目标文件时,则进一步

s410:用户请求点发送目标文件当前下载完成进度请求至所述多个内容节点;

s420:用户请求点根据所述多个内容节点的当前下载完成进度将目标文件切割成多个子文件。所述多个子文件包括第一子文件和第二子文件,所述第一子文件即为内容节点中有节点已下载完成的子文件;第二子文件为任一内容节点均未开始下载的子文件。

例如,有4个内容节点正在下载该目标文件,分别为内容节点a、b、c、d,每个内容节点的的当前下载完成进度分别为15%、60%、70%、95%,则将目标文件切割成[0-15],[16-60],[61-70],[71-95],[96-100]共五个子文件。

则[0-15],[16-60],[61-70],[71-95]为第一子文件,[96-100]为第二子文件。

s430:用户请求点从所述多个内容节点中分别下载对应的子文件;

其中,第一子文件对应由刚完成该子文件下载的内容节点通过对等网络传输协议传输至用户请求点。

参照上述例子,则子文件[0-15],[16-60],[61-70],[71-95]分别对应由内容节点a、b、c、d通过对等网络传输协议传输至用户请求点。

进一步,第二子文件由已开始下载第二子文件且最先完成其负责的第一子文件向用户请求点传输下载的内容节点向用户请求点传输数据。也即第二子文件[96-100]由内容节点a、b、c、d中最先完成传输[0-15],[16-60],[61-70],[71-95]子文件的内容节点,且已经开始进行第二子文件下载的内容节点向用户请求点传输第二子文件。如内容节点a、b、c、d中c节点最先完成[61-70],且此时节点c已经开始下载第二子文件[96-100],则由内容节点c向用户请求点传输第二子文件[96-100]。

其中,如图3所示,优选地,在用户请求点发送目标文件下载请求后,还包括:s500:判断用户请求点与索引服务器是否连接:

若是,则继续后续步骤;

若否,则执行步骤s510。

s510:用户请求点通过分布式哈希表网络查询正在下载该目标文件的内容节点并获取内容节点信息,然后通过对等网络传输协议连接所述内容节点,进一步用户请求点从所述内容节点下载目标文件。

在本发明实施例中,传输协议也处在不断变化中,可以通过超文本传输协议(http)、数据报协议(udp)获得可用的传输节点信息,也可以通过分布式哈希表网络查询(dht)的方法获得可用的传输节点信息,使得文件下载应用更加灵活,提高用户点的下载体验。

本发明将vr体验店作为用户请求点的同时,作为内容节点,既可以发送文件下载请求,请求下载目标文件,在下载文件的同时又作为其他请求点的内容节点,通过众多节点分发的互相传输,大大减少服务器和带宽成本,下载速度快,用户体验更佳。

相比于传统依靠中央节点,本发明的分布式虚拟现实内容分发系统中的索引服务器、用户请求节点、内容节点均为平等的节点,抗攻击和故障能力更好。

实施例2

如图4所示,本发明实施例还提供了一种分布式虚拟现实内容分发系统,其包括包括索引服务器、与所述索引服务器连接的多个用户请求点和内容节点;

所述用户请求点,用于发送目标文件下载请求;

所述索引服务器,用于接收所述目标文件下载请求,并根据所述目标文件下载请求随机返回的正在下载该目标文件的内容节点的内容节点信息;

所述用户请求点还用于通过对等网络传输协议连接所述内容节点,并从所述内容节点下载目标文件。

进一步地,所述用户请求点,还用于判断所述正在下载该目标文件的内容节点包括一个还是多个,当存在多个内容节点正在下载该目标文件时,则进一步

发送目标文件当前下载完成进度请求至所述多个内容节点;

根据所述多个内容节点的当前下载完成进度将目标文件切割成多个子文件;

从所述多个内容节点中分别下载对应的子文件;

其中,每个子文件对应由将下载该子文件的内容节点通过对等网络传输协议传输至用户请求点。

进一步地,所述用户请求点,还用于在用户请求点发送目标文件下载请求后,判断与索引服务器是否连接;并在用户请求点与索引服务器连接不上时,通过分布式哈希表网络查询正在下载该目标文件的内容节点并获取内容节点信息,然后通过对等网络传输协议连接所述内容节点,进一步从所述内容节点下载目标文件。

本发明将vr体验店作为用户请求点的同时,作为内容节点,既可以发送文件下载请求,请求下载目标文件,在下载文件的同时又作为其他请求点的内容节点,通过众多节点分发的互相传输,大大减少服务器和带宽成本,下载速度快,用户体验更佳。

相比于传统依靠中央节点,本发明的分布式虚拟现实内容分发系统中的索引服务器、用户请求节点、内容节点均为平等的节点,抗攻击和故障能力更好。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1