边缘节点设备、内容分发系统、方法、计算机设备及介质与流程

文档序号:19664414发布日期:2020-01-10 21:26阅读:186来源:国知局
边缘节点设备、内容分发系统、方法、计算机设备及介质与流程

本发明涉及分布式存储技术领域,尤其涉及一种边缘节点设备、内容分发系统、方法、计算机设备及介质。



背景技术:

当下主流的内容分发网络(contentdeliverynetwork,cdn)服务主要是通过在多个城市的中心机房配置多个服务器来实现的。然而,这种实现方式除了需要配置大量的服务器外,还需要配置大容量的存储以及大吞吐的光纤宽带,成本和运营维护费用都较高。同时,传统cdn提供商为了方便维护和管理,机房和服务器都是中心化的建设,导致网络管道非常集中,在用户访问高峰时极易出现网络阻塞的情况,速度慢,延迟高,效率低。

因此,有必要提供一种低成本的、去中心化的分布式cdn技术方案,以解决用户访问速度慢效率低的技术问题。



技术实现要素:

本发明的主要目的在于提供一种边缘节点设备、内容分发系统、方法、计算机设备及介质,旨在通过低成本的边缘节点设备构建去中心化的分布式系统,解决用户访问速度慢、效率低的技术问题。

为实现上述目的,本发明的第一方面提供一种边缘节点设备,所述边缘节点设备包括:

路由器芯片,用于实现路由器的功能;

soc芯片,用于实现共享计算和/或边缘计算的功能,使得所述边缘节点设备在进行共享计算和/或边缘计算后通过所述路由器的功能向距离最近的客户端设备分发内容。

根据本发明的一个可选实施例,所述soc芯片包括arm架构、mips架构及x86架构的单核或多核芯片。

根据本发明的一个可选实施例,所述边缘节点设备还包括:存储装置,所述存储装置内置于所述边缘节点设备中或者外接于所述边缘节点设备外。

为实现上述目的,本发明的第二方面提供一种内容分发系统,包括:源服务器、调度服务器和至少一个所述的边缘节点设备,其中,

所述源服务器,用于部署内容并在接收到所述调度服务器的内容分发通知时向所述至少一个边缘节点设备分发内容;

所述调度服务器,用于接收到客户端设备的内容调用请求时,向所述至少一个边缘节点设备下发内容分发指令;

所述至少一个边缘节点设备,用于接收到所述内容分发指令时,响应所述内容分发指令向所述客户端设备分发内容。

为实现上述目的,本发明的第三方面提供一种内容分发方法,应用于边缘节点设备中,所述边缘节点设备如上所述,所述方法包括:

接收源服务器分发的内容并存储;

当接收到调度服务器下发的内容分发指令时,响应所述内容分发指令向与所述内容分发指令对应的客户端设备分发内容。

根据本发明的一个可选实施例,所述方法还包括:

接收所述调度服务器下发的内容操作指令;

根据所述内容操作指令对所存储的内容执行相应的操作;

在执行所述相应的操作后,上报操作状态至所述调度服务器。

根据本发明的一个可选实施例,所述根据所述内容操作指令对所存储的内容执行相应的操作包括:

识别所述内容操作指令为程序运行指令还是文件存储指令;

当所述内容操作指令为程序运行指令时,对所述内容执行运行程序的操作;

当所述内容操作指令为文件存储指令时,对所述内容执行文件存储的操作。

根据本发明的一个可选实施例,所述方法还包括:

侦测到启动信号时,向所述源服务器或者所述调度服务器上报状态信息。

为实现上述目的,本发明的第四方面提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的内容分发程序,所述内容分发程序被所述处理器执行时实现所述的内容分发方法。

为实现上述目的,本发明的第五方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有内容分发程序,所述内容分发程序可被一个或者多个处理器执行,以实现所述的内容分发方法。

本发明实施例所述的边缘节点设备、内容分发系统、方法、计算机设备及介质,通过具有路由器、共享计算和/或边缘计算功能的边缘节点设备向客户端设备分发内容,由于边缘节点设备与客户端设备距离较近,因而提高了分发速度和分发效率。通过部署多个边缘节点设备,由于边缘节点设备的低成本优势,节省了内容分发系统的部署成本。

附图说明

图1为本发明第一实施例的内容分发系统的结构示意图;

图2为本发明第二实施例的边缘节点设备的结构示意图;

图3为本发明第三实施例的内容分发方法的流程示意图;

图4为本发明第四实施例的内容分发方法的流程示意图;

图5为本发明第五实施例的内容分发装置的功能模块示意图;

图6为本发明第六实施例的内容分发装置的功能模块示意图;

图7为本发明第七实施例揭露的计算机设备的内部结构示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、系统、方法、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。

实施例一

参阅图1所示,为本发明第一实施例的内容分发系统的结构示意图。

所述内容分发系统100可以包括:源服务器1、调度服务器2及多个边缘节点设备3。图1中的边缘节点设备3的数目仅仅是示意性的。根据实际需要,可以具有任意数目的边缘节点设备。在其他实施例中,还可以包括客户端设备,所述客户端设备通过网络与调度服务器通信连接。

所述调度服务器2可以通过第一网络(未图示)与所述源服务器1通信,所述调度服务器2可以通过第二网络(未图示)与所述多个边缘节点设备3通信。所述第一网络可以与所述第二网络相同,也可以不同。所述第一网络及所述第二网络用以提供通信连接的介质,包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

所述源服务器1可以是指在内容分发网络(contentdeliverynetwork,cdn)中用于接收调度服务器2访问的服务器。用户(例如,cdn系统的工作人员或者管理者等)可以事先将需要部署在源服务器1中的内容上传到源服务器1中。所述内容可以包括:运行程序镜像文件及其他文件,例如,流媒体文件,音视频文件,文档文件,图片文件等。

所述调度服务器2是指在cdn中用于接收客户端设备访问的服务器。所述调度服务器2在所述用户将所有内容部署在源服务器1上后,再通知所述源服务器1向多个边缘节点设备3分发内容,使得所述多个边缘节点设备3接收到所述源服务器1分发的内容时,存储所述内容。

所述边缘节点设备3具有文件管理、文件存储、安全可靠、共享计算、边缘计算及路由器的功能。所述边缘节点设备3用于接收所述调度服务器2下发的内容分发指令,并根据所述内容分发指令将自身存储的内容分发给至少一个客户端设备。

在一个可选的实施例中,所述调度服务器2在所述用户将所有内容部署在源服务器1上后,还需根据所述用户事先设置的部署需求,有针对性的通知所述源服务器1向不同的边缘节点设备3下发不同的内容,从而使得不同的边缘节点设备3存储不同的内容。示例性的,假设华南地区的用户的喜好为玩游戏,华中地区的用户的喜好为观看视频,则可以设置部署需求为:将源服务器中的游戏运行程序镜像文件分发到位于华南地区的边缘节点设备中,将源服务器中的音视频文件分发到位于华中地区的边缘节点设备中。所述调度服务器2根据所述部署需求,通知所述源服务器1向位于华南地区的边缘节点设备3下发第一内容,向位于华中地区的边缘节点设备3下发第二内容,则位于华南地区的边缘节点设备3存储第一内容,位于华中地区的边缘节点设备3存储第二内容。如此,可以根据目标用户群的喜好及实际使用情况设置不同的部署需求,使得不同的边缘节点设备有针对性的存储不同的内容,避免将所有的内容都存储于边缘节点设备中,占用边缘节点设备的磁盘空间。此外,提高边缘节点设备的磁盘利用率,还能提高边缘节点设备的响应速度。

本实施例中,通过将多个所述边缘节点设备3组成一张庞大的虚拟cnd网络来替代中心机房里的单一服务器,实现了去中心化,相较于部署多个中心机房及服务器,边缘节点设备的成本更低;多个所述边缘节点设备3组成的虚拟cnd网络的计算能力、存储容量以及带宽总和远超任何单一节点的中心机房中的服务器,能够极大的降低了网络阻塞概率;由于边缘节点设备3具有路由器、边缘计算和/或共享计算的功能,通过边缘节点设备实现而无需交由源服务器处理,处理过程将在边缘节点设备的本地边缘计算层完成,能够提升处理效率,减轻源服务器的负荷。边缘节点设备更加靠近用户,还可为用户提供更快的响应,传输延迟更低;众多的边缘节点设备同时向用户并发数据,能进一步提高响应速度和效率。

实施例二

参阅图2所示,为本发明第二实施例的边缘节点设备的结构示意图。

在本实施例中,所述边缘节点设备3可以包括:soc芯片30及路由器芯片32。

所述soc(system-on-a-chip,soc)芯片30用于实现共享计算和/或边缘计算的功能,主要负责系统的运算,类似服务器里的主cpu。所述soc芯片30可以包括arm架构、mips(millioninstructionspersecond,每秒处理的百万级的机器语言指令数)架构、x86架构的单核或多核soc。所述soc芯片30还可以包括其他芯片,本发明在此不一一列举。

所述共享计算是指贡献存储、带宽和cpu资源,承担计算任务。所述边缘计算是指在靠近物或数据源头的一侧,采用网络、计算、存储、应用核心能力为一体的开放平台,就近提供最近端服务,其应用程序在边缘侧发起,产生更快的网络服务响应。所述soc芯片30的共享计算和/或边缘计算的功能,使得所述边缘节点设备3在进行共享计算和/或边缘计算后能够通过所述路由器的功能向距离最近的客户端设备分发内容,如此可确保客户端设备能够快速的得到响应。

所述路由器芯片32用于负责实现网络的连接及实现路由器的功能。

在其他实施例中,所述边缘节点设备3还可以包括:存储装置34。所述存储装置34可以内置于所述边缘节点设备3中(如图2所示),例如,机械硬盘或者固态硬盘等。所述存储装置34也可以外接于所述边缘节点设备3外(未在图2中显示),例如,移动硬盘或者u盘等。

需要说明的是,内容分发方法由所述调度服务器2执行,相应地,内容分发装置一般设置于所述调度服务器2中。所述内容分发方法由所述边缘节点设备3执行,相应地,内容分发装置一般设置于所述边缘节点设备3中。

实施例三

如图3所示,为本发明实施例三提供的内容分发方法的流程图。所述内容分发方法应用于调度服务器中,具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。

s31,获取多个边缘节点设备的状态信息。

本实施例中,所述调度服务器先获取多个边缘节点设备的状态信息,所述状态信息可以包括以下一种或者多种的组合:cpu使用率、内存使用率、硬盘空间、带宽、网络延时、边缘节点设备的地址(例如,ip地址或者mac地址)、设备标识等。

所述调度服务器可以发送状态请求至源服务器,由所述源服务器响应所述状态请求并返回所述多个边缘节点设备的状态信息,从而使得所述调度服务器从所述源服务器的响应结果中获取到所述多个边缘节点设备的状态信息。所述边缘节点设备还可以在家庭或者企业等地方部署完成后,主动向所述调度服务器上报所述状态信息;或者,主动向所述源服务器上报所述状态信息,并由所述源服务器定期或者及时将所述状态信息推送给所述调度服务器。

本实施例中,所述的边缘节点设备可以包括路由器芯片和soc芯片,即所述的边缘节点设备具有路由器、共享计算和/或边缘计算功能,具体可以参加实施例二及其相应描述。

s32,根据部署需求通知源服务器将内容分发给所述多个边缘节点设备进行存储。

本实施例中,用户可以事先将需要部署的内容上传到源服务器中,所述内容可以包括,但不限于:运行程序镜像文件,需分发的文件等。所述需分发的文件可以为流媒体文件,音视频文件等。

所述部署需求是指将所述源服务器中的全部或者指定的内容分发到全部或者指定的边缘节点设备中。所述部署需求可以是用户事先存储于所述调度服务器中的;也可以是用户事先存储于其他电子设备中,由调度服务器从所述其他电子设备获取得到的。优选的,由所述调度服务器提供一个显示界面,用户通过所述显示界面设置部署需求。

具体的,所述调度服务器的显示界面上显示有内容选项列表,例如,游戏运行程序镜像文件选项、音频文件选项、视频文件选项等,所述每个内容选项还对应显示有多个边缘节点设备及其状态信息的选项框,用户可以在所述选框中勾选边缘节点设备从而建立内容选项与边缘节点设备之间的对应关系。所述调度服务器接收到用户的勾选操作对应的信号时,确定将所述内容选项对应的内容分发给所勾选的边缘节点设备。例如,对于游戏运行程序镜像文件选项,用户勾选了边缘节点设备a、边缘节点设备b,则调度服务器通知源服务器将游戏运行程序镜像文件分发给边缘节点设备a、边缘节点设备b;又如,对于视频文件选项,用户勾选了边缘节点设备d、边缘节点设备g及边缘节点设备j,则调度服务器通知源服务器将游戏运行程序镜像文件分发给边缘节点设备d、边缘节点设备g及边缘节点设备j。

在本发明的一个可选实施例中,所述根据部署需求通知源服务器将内容分发给所述多个边缘节点设备进行存储包括:

识别所述部署需求为程序运行需求还是文件分发需求;

当所述部署需求为程序运行需求时,将所述源服务器中与所述程序运行需求对应的程序镜像文件分发给所述多个边缘节点设备进行存储;

当所述部署需求为文件分发需求时,将所述源服务器中与所述文件分发需求对应的文件进行切片后分发给所述多个边缘节点设备进行存储。

在该可选的实施例中,所述调度服务器根据部署需求通知源服务器将内容分发给一个或者多个边缘节点设备。对于文件分发需求,所述源服务器先将与所述文件分发需求对应的文件进行切片,再分发给一个或者多个边缘节点设备。边缘节点设备在合并分片文件时,还可以采用边下载边合并的方式,例如,若判断出当前分片文件m2与已下载的分片文件m1存在相邻关系,则可以先合并,无需等到分片文件m3下载完成,提升了得到整体文件的速度。

s33,当接收到客户端设备发送的内容调用请求时,根据所述状态信息筛选出与所述客户端设备对应的至少一个目标边缘节点设备。

本实施例中,当用户需要某个内容时,可以通过客户端设备向所述调度服务器发送内容调用请求。所述调度服务器接收到内容调用请求时,可以根据边缘节点设备的状态信息筛选出与所述客户端设备对应的至少一个目标边缘节点设备,以便通过所述至少一个目标边缘节点设备向所述客户端设备分发内容。

在本发明的一个可选实施例中,所述当接收到客户端设备发送的内容调用请求时,根据所述状态信息筛选出与所述客户端设备对应的至少一个目标边缘节点设备包括:

当接收到客户端设备发送的内容调用请求时,解析出所述内容调用请求中携带的客户端设备的地址;

筛选出与所述客户端设备的地址对应的至少一个候选边缘节点设备;

根据所述至少一个候选边缘节点设备的状态信息确定至少一个目标边缘节点设备。

在该可选的实施例中,所述内容调用请求中携带有客户端设备的地址。调度服务器可以根据客户端设备的地址,从所述多个边缘节点设备中筛选出与所述地址匹配的至少一个目标地址,从而筛选出与所述至少一个目标地址对应的至少一个候选边缘节点设备。最后,所述调度服务器根据所述边缘节点设备的网络流量、负载状况以及到用户的距离和响应时间等状态信息,从所述至少一个候选边缘节点设备中,再筛选出至少一个目标边缘节点设备,作为最优的边缘节点设备响应于客户端设备的内容调用请求,以便提供相应的服务给用户。

示例性的,假设调度服务器接收到来自广州客户端设备的内容调用需求,则从多个边缘节点设备中筛选位于广州的边缘节点设备,再根据位于广州的边缘节点设备的网络流量、负载状况以及到用户的距离和响应时间等,确定出离客户端设备距离近、网络流量好、负载状况优、响应时间快的至少一个边缘节点设备,同时发送与所述内容调用需求对应的内容给用户。

s34,下发内容分发指令至所述至少一个目标边缘节点设备以分发与所述内容调用请求对应的内容至所述客户端设备。

本实施例中,调度服务器确定出了至少一个目标边缘节点设备后,根据所述内容调用请求下发一个内容分发指令至所述至少一个目标边缘节点设备,以响应所述客户端设备的内容调用请求,将用户需求的内容分发给所述客户端设备。

综上所述,本发明实施例所述的内容分发方法,通过调度服务器获取多个边缘节点设备的状态信息,然后根据部署需求通知源服务器将内容分发给所述多个边缘节点设备进行存储,在接收到客户端设备发送的内容调用请求时,根据所述状态信息筛选出与所述客户端设备对应的至少一个目标边缘节点设备,并下发内容分发指令至所述至少一个目标边缘节点设备以分发与所述内容调用请求对应的内容至所述客户端设备。本发明通过硬件和软件相结合的思想,将具有路由器、共享计算和/或边缘计算功能的边缘节点设备应用到内容分发中,使得客户端设备能够与距离较近的边缘节点设备直接进行通讯从而获取边缘节点设备分发的内容,分发速度快,效率高。另外,通过部署多个边缘节点设备,由于边缘节点设备的低成本优势,节省了内容分发系统的部署成本,并且降低了源服务器的内容分发压力和计算压力。

实施例四

如图4所示,为本发明实施例四的内容分发方法的流程图。所述内容分发方法应用于边缘节点设备中,具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。

s41,接收源服务器分发的内容并存储。

本实施例中,所述的边缘节点设备可以包括路由器芯片和soc芯片,即所述的边缘节点设备具有路由器、共享计算和/或边缘计算功能,具体可以参加实施例二及其相应描述。

所述边缘节点设备接收到源服务器下发的内容时,将所接收到的内容存储在所述边缘节点设备的存储空间中,例如,存储在内置的存储装置中,或者存储在外接的存储装置中。

s42,当接收到调度服务器下发的内容分发指令时,响应所述内容分发指令向与所述内容分发指令对应的客户端设备分发内容。

本实施例中,所述调度服务器在接收到客户端设备的内容调用请求时,向所述边缘节点设备下发一个与所述内容调用请求对应的内容分发指令至所述边缘节点设备。所述客户端设备可以包括:智能手机、平板电脑、个人计算机等用户设备。所述边缘节点设备响应所述内容分发指令将对应所述内容调用请求的内容,例如,程序或者文件等,分发给所述客户端设备。

在本发明的一个可选实施例中,所述内容分发方法还包括:

接收所述调度服务器下发的内容操作指令;

根据所述内容操作指令对所存储的内容执行相应的操作;

在执行所述相应的操作后,上报操作状态至所述调度服务器。

在该可选的实施例中,所述调度服务器在向所述边缘节点设备分发内容的同时,还可以根据所分发的内容下发一个内容操作指令。所述边缘节点设备在根据所述内容操作指令对所述源服务器分发的内容执行相应的操作,例如,运行程序,或者存储文件等,并向所述调度服务器上报操作状态。

当所述边缘节点设备成功执行相应的操作后,可以上报操作成功的状态至所述调度服务器。当所述边缘节点设备由于存储装置损坏,或者网络状况较差等原因导致在执行相应的操作的过程中失败时,可以上报操作失败的状态至所述调度服务器。当调度服务器接收到所述边缘节点设备上报的操作失败的状态时,可以再次通知源服务器分发内容至所述边缘节点设备并下发与所述内容对应的内容操作指令。

在本发明的一个可选实施例中,所述根据所述内容操作指令对所存储的内容执行相应的操作包括:

识别所述内容操作指令为程序运行指令还是文件存储指令;

当所述内容操作指令为程序运行指令时,对所述内容执行运行程序的操作;

当所述内容操作指令为文件存储指令时,对所述内容执行文件存储的操作。

综上所述,本发明实施例所述的内容分发方法,通过边缘节点设备接收调度服务器根据部署需求通知源服务器分发的内容并存储,在客户端设备向调度服务器请求内容时,通过所述调度服务器向边缘节点设备下发内容分发指令,以便边缘节点设备响应所述客户端设备的内容调用请求。本发明通过硬件和软件相结合的思想,将具有路由器、共享计算和/或边缘计算功能的边缘节点设备应用到内容分发中,使得客户端设备能够与距离较近的边缘节点设备直接进行通讯从而获取边缘节点设备分发的内容,分发速度快,效率高。另外,通过部署多个边缘节点设备,由于边缘节点设备的低成本优势,节省了内容分发系统的部署成本,并且降低了源服务器的内容分发压力和计算压力。

上述图3-4详细介绍了本发明的内容分发方法,下面结合第5~7图,分别对实现所述内容分发方法的软件系统的功能模块以及硬件装置架构进行介绍。

应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。

实施例五

参阅图5所示,为本发明实施例五揭露的内容分发装置的功能模块示意图。

在一些实施例中,所述内容分发装置50运行于调度服务器中。所述内容分发装置50可以包括多个由程序代码段所组成的功能模块。所述内容分发装置50中的各个程序段的程序代码可以存储于调度服务器的存储器中,并由至少一个处理器所执行,以执行(详见图3描述)内容分发方法中的全部或者部分步骤。

本实施例中,所述内容分发装置50根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:状态获取模块501、内容分发模块502、目标筛选模块503及指令下发模块504。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。

状态获取模块501,用于获取多个边缘节点设备的状态信息。

本实施例中,所述调度服务器先获取多个边缘节点设备的状态信息,所述状态信息可以包括以下一种或者多种的组合:cpu使用率、内存使用率、硬盘空间、带宽、网络延时、边缘节点设备的地址(例如,ip地址或者mac地址)、设备标识等。

所述调度服务器可以发送状态请求至源服务器,由所述源服务器响应所述状态请求并返回所述多个边缘节点设备的状态信息,从而使得所述调度服务器从所述源服务器的响应结果中获取到所述多个边缘节点设备的状态信息。所述边缘节点设备还可以在家庭或者企业等地方部署完成后,主动向所述调度服务器上报所述状态信息;或者,主动向所述源服务器上报所述状态信息,并由所述源服务器定期或者及时将所述状态信息推送给所述调度服务器。

本实施例中,所述的边缘节点设备可以包括路由器芯片和soc芯片,即所述的边缘节点设备具有路由器、共享计算和/或边缘计算功能,具体可以参加实施例二及其相应描述。

内容分发模块502,用于根据部署需求通知源服务器将内容分发给所述多个边缘节点设备进行存储。

本实施例中,用户可以事先将需要部署的内容上传到源服务器中,所述内容可以包括,但不限于:运行程序镜像文件,需分发的文件等。所述需分发的文件可以为流媒体文件,音视频文件等。

所述部署需求是指将所述源服务器中的全部或者指定的内容分发到全部或者指定的边缘节点设备中。所述部署需求可以是用户事先存储于所述调度服务器中的;也可以是用户事先存储于其他电子设备中,由调度服务器从所述其他电子设备获取得到的。优选的,由所述调度服务器提供一个显示界面,用户通过所述显示界面设置部署需求。

具体的,所述调度服务器的显示界面上显示有内容选项列表,例如,游戏运行程序镜像文件选项、音频文件选项、视频文件选项等,所述每个内容选项还对应显示有多个边缘节点设备及其状态信息的选项框,用户可以在所述选框中勾选边缘节点设备从而建立内容选项与边缘节点设备之间的对应关系。所述调度服务器接收到用户的勾选操作对应的信号时,确定将所述内容选项对应的内容分发给所勾选的边缘节点设备。例如,对于游戏运行程序镜像文件选项,用户勾选了边缘节点设备a、边缘节点设备b,则调度服务器通知源服务器将游戏运行程序镜像文件分发给边缘节点设备a、边缘节点设备b;又如,对于视频文件选项,用户勾选了边缘节点设备d、边缘节点设备g及边缘节点设备j,则调度服务器通知源服务器将游戏运行程序镜像文件分发给边缘节点设备d、边缘节点设备g及边缘节点设备j。

在本发明的一个可选实施例中,所述内容分发模块502根据部署需求通知源服务器将内容分发给所述多个边缘节点设备进行存储包括:

识别所述部署需求为程序运行需求还是文件分发需求;

当所述部署需求为程序运行需求时,将所述源服务器中与所述程序运行需求对应的程序镜像文件分发给所述多个边缘节点设备进行存储;

当所述部署需求为文件分发需求时,将所述源服务器中与所述文件分发需求对应的文件进行切片后分发给所述多个边缘节点设备进行存储。

在该可选的实施例中,所述调度服务器根据部署需求通知源服务器将内容分发给一个或者多个边缘节点设备。对于文件分发需求,所述源服务器先将与所述文件分发需求对应的文件进行切片,再分发给一个或者多个边缘节点设备。边缘节点设备在合并分片文件时,还可以采用边下载边合并的方式,例如,若判断出当前分片文件m2与已下载的分片文件m1存在相邻关系,则可以先合并,无需等到分片文件m3下载完成,提升了得到整体文件的速度。

目标筛选模块503,用于当接收到客户端设备发送的内容调用请求时,根据所述状态信息筛选出与所述客户端设备对应的至少一个目标边缘节点设备。

本实施例中,当用户需要某个内容时,可以通过客户端设备向所述调度服务器发送内容调用请求。所述调度服务器接收到内容调用请求时,可以根据边缘节点设备的状态信息筛选出与所述客户端设备对应的至少一个目标边缘节点设备,以便通过所述至少一个目标边缘节点设备向所述客户端设备分发内容。

在本发明的一个可选实施例中,所述目标筛选模块503当接收到客户端设备发送的内容调用请求时,根据所述状态信息筛选出与所述客户端设备对应的至少一个目标边缘节点设备包括:

当接收到客户端设备发送的内容调用请求时,解析出所述内容调用请求中携带的客户端设备的地址;

筛选出与所述客户端设备的地址对应的至少一个候选边缘节点设备;

根据所述至少一个候选边缘节点设备的状态信息确定至少一个目标边缘节点设备。

在该可选的实施例中,所述内容调用请求中携带有客户端设备的地址。调度服务器可以根据客户端设备的地址,从所述多个边缘节点设备中筛选出与所述地址匹配的至少一个目标地址,从而筛选出与所述至少一个目标地址对应的至少一个候选边缘节点设备。最后,所述调度服务器根据所述边缘节点设备的网络流量、负载状况以及到用户的距离和响应时间等状态信息,从所述至少一个候选边缘节点设备中,再筛选出至少一个目标边缘节点设备,作为最优的边缘节点设备响应于客户端设备的内容调用请求,以便提供相应的服务给用户。

示例性的,假设调度服务器接收到来自广州客户端设备的内容调用需求,则从多个边缘节点设备中筛选位于广州的边缘节点设备,再根据位于广州的边缘节点设备的网络流量、负载状况以及到用户的距离和响应时间等,确定出离客户端设备距离近、网络流量好、负载状况优、响应时间快的至少一个边缘节点设备,同时发送与所述内容调用需求对应的内容给用户。

指令下发模块504,用于下发内容分发指令至所述至少一个目标边缘节点设备以分发与所述内容调用请求对应的内容至所述客户端设备。

本实施例中,调度服务器确定出了至少一个目标边缘节点设备后,根据所述内容调用请求下发一个内容分发指令至所述至少一个目标边缘节点设备,以响应所述客户端设备的内容调用请求,将用户需求的内容分发给所述客户端设备。

综上所述,本发明实施例所述的内容分发装置,通过调度服务器获取多个边缘节点设备的状态信息,然后根据部署需求通知源服务器将内容分发给所述多个边缘节点设备进行存储,在接收到客户端设备发送的内容调用请求时,根据所述状态信息筛选出与所述客户端设备对应的至少一个目标边缘节点设备,并下发内容分发指令至所述至少一个目标边缘节点设备以分发与所述内容调用请求对应的内容至所述客户端设备。本发明通过硬件和软件相结合的思想,将具有路由器、共享计算和/或边缘计算功能的边缘节点设备应用到内容分发中,使得客户端设备能够与距离较近的边缘节点设备直接进行通讯从而获取边缘节点设备分发的内容,分发速度快,效率高。另外,通过部署多个边缘节点设备,由于边缘节点设备的低成本优势,节省了内容分发系统的部署成本,并且降低了源服务器的内容分发压力和计算压力。

实施例六

参阅图6所示,为本发明实施例六揭露的内容分发装置的功能模块示意图。

在一些实施例中,所述内容分发装置60运行于边缘节点设备中。所述内容分发装置60可以包括多个由程序代码段所组成的功能模块。所述内容分发装置60中的各个程序段的程序代码可以存储于边缘节点设备的存储器中,并由至少一个处理器所执行,以执行(详见图4描述)内容分发方法中的全部或者部分步骤。

本实施例中,所述内容分发装置60根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:内容存储模块601、请求响应模块602、指令接收模块603及操作执行模块604。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。

内容存储模块601,用于接收源服务器分发的内容并存储。

本实施例中,所述的边缘节点设备可以包括路由器芯片和soc芯片,即所述的边缘节点设备具有路由器、共享计算和/或边缘计算功能,具体可以参加实施例二及其相应描述。

所述边缘节点设备接收到源服务器下发的内容时,将所接收到的内容存储在所述边缘节点设备的存储空间中,例如,存储在内置的存储装置中,或者存储在外接的存储装置中。

请求响应模块602,用于当接收到调度服务器下发的内容分发指令时,响应所述内容分发指令向与所述内容分发指令对应的客户端设备分发内容。

本实施例中,所述调度服务器在接收到客户端设备的内容调用请求时,向所述边缘节点设备下发一个与所述内容调用请求对应的内容分发指令至所述边缘节点设备。所述客户端设备可以包括:智能手机、平板电脑、个人计算机等用户设备。所述边缘节点设备响应所述内容分发指令将对应所述内容调用请求的内容,例如,程序或者文件等,分发给所述客户端设备。

在本发明的一个可选实施例中,所述内容分发装置60还包括:

指令接收模块603,用于接收所述调度服务器下发的内容操作指令;

操作执行模块604,用于根据所述内容操作指令对所存储的内容执行相应的操作;及在执行所述相应的操作后,上报操作状态至所述调度服务器。

在该可选的实施例中,所述调度服务器在向所述边缘节点设备分发内容的同时,还可以根据所分发的内容下发一个内容操作指令。所述边缘节点设备在根据所述内容操作指令对所述源服务器分发的内容执行相应的操作,例如,运行程序,或者存储文件等,并向所述调度服务器上报操作状态。

当所述边缘节点设备成功执行相应的操作后,可以上报操作成功的状态至所述调度服务器。当所述边缘节点设备由于存储装置损坏,或者网络状况较差等原因导致在执行相应的操作的过程中失败时,可以上报操作失败的状态至所述调度服务器。当调度服务器接收到所述边缘节点设备上报的操作失败的状态时,可以再次通知源服务器分发内容至所述边缘节点设备并下发与所述内容对应的内容操作指令。

在本发明的一个可选实施例中,所述操作执行模块604根据所述内容操作指令对所存储的内容执行相应的操作包括:

识别所述内容操作指令为程序运行指令还是文件存储指令;

当所述内容操作指令为程序运行指令时,对所述内容执行运行程序的操作;

当所述内容操作指令为文件存储指令时,对所述内容执行文件存储的操作。

综上所述,本发明实施例所述的内容分发装置,通过边缘节点设备接收调度服务器根据部署需求通知源服务器分发的内容并存储,在客户端设备向调度服务器请求内容时,通过所述调度服务器向边缘节点设备下发内容分发指令,以便边缘节点设备响应所述客户端设备的内容调用请求。本发明通过硬件和软件相结合的思想,将具有路由器、共享计算和/或边缘计算功能的边缘节点设备应用到内容分发中,使得客户端设备能够与距离较近的边缘节点设备直接进行通讯从而获取边缘节点设备分发的内容,分发速度快,效率高。另外,通过部署多个边缘节点设备,由于边缘节点设备的低成本优势,节省了内容分发系统的部署成本,并且降低了源服务器的内容分发压力和计算压力。

实施例七

图7为本发明实施例五揭露的计算机设备的内部结构示意图。

在本实施例中,所述计算机设备7可以包括存储器71、处理器72和总线73。

其中,存储器71至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、磁性存储器、磁盘、光盘等。存储器71在一些实施例中可以是所述计算机设备7的内部存储单元,例如所述计算机设备7的硬盘。存储器71在另一些实施例中也可以是所述计算机设备7的外部存储设备,例如所述计算机设备7上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,存储器71还可以既包括所述计算机设备7的内部存储单元也包括外部存储设备。存储器71不仅可以用于存储安装于所述计算机设备7的应用软件及各类数据,例如内容分发装置50或者内容分发装置60的代码等及各个模块,还可以用于暂时地存储已经输出或者将要输出的数据。

处理器72在一些实施例中可以是一中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器71中存储的程序代码或处理数据。

该总线73可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

进一步地,所述计算机设备7还可以包括网络接口,网络接口可选的可以包括有线接口和/或无线接口(如wi-fi接口、蓝牙接口等),通常用于在该计算机设备7与其他客户端设备之间建立通信连接。

图7仅示出了具有组件71、72、73以及所述内容分发装置的所述计算机设备7,本领域技术人员可以理解的是,图7示出的结构并不构成对所述计算机设备7的限定,既可以是总线型结构,也可以是星形结构,所述计算机设备7还可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。

所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如,同轴电缆、光纤、数字用户线(dsl)或无线(例如,红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如,固态硬盘(solidstatedisk,ssd))等。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、硬盘、只读存储器(rom,read-onlymemory)、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是,上述实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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