CN110417861B - 一种信息推送方法以及相关装置 - Google Patents

一种信息推送方法以及相关装置 Download PDF

Info

Publication number
CN110417861B
CN110417861B CN201910558785.7A CN201910558785A CN110417861B CN 110417861 B CN110417861 B CN 110417861B CN 201910558785 A CN201910558785 A CN 201910558785A CN 110417861 B CN110417861 B CN 110417861B
Authority
CN
China
Prior art keywords
data
data block
edge node
download
block
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.)
Active
Application number
CN201910558785.7A
Other languages
English (en)
Other versions
CN110417861A (zh
Inventor
周炳
严华梁
陈荣科
朱子荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Beijing Co Ltd
Original Assignee
Tencent Technology Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Beijing Co Ltd filed Critical Tencent Technology Beijing Co Ltd
Priority to CN201910558785.7A priority Critical patent/CN110417861B/zh
Publication of CN110417861A publication Critical patent/CN110417861A/zh
Application granted granted Critical
Publication of CN110417861B publication Critical patent/CN110417861B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请公开了一种信息推送方法以及相关装置,能够将热门数据信息推送给边缘节点以使边缘节点缓存热门数据,提高边缘节点数据的命中率,将边缘节点提供的数据最大化从而提高边缘节点上行带宽,降低CDN带宽成本。本申请方法包括:向边缘节点发送数据块下载请求,以使所述边缘节点根据所述数据块下载请求获取数据块;获取所述数据块所对应的下载数据量;向服务器发送所述下载数据量,以使所述服务器根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,所述服务器向所述边缘节点发送所述目标数据块信息,以使所述边缘节点存储所述目标数据块。

Description

一种信息推送方法以及相关装置
技术领域
本申请涉及数据传输技术领域,尤其涉及一种信息推送方法以及相关装置。
背景技术
内容分发网络(Content Delivery Network,CDN)是一种在互联网上构建的分布式服务器系统,包括CDN节点和边缘节点,通过这些节点向客户端发送数据内容,使用户通过客户端获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。
客户端向边缘节点请求数据时,若边缘节点有数据,则直接命中,客户端可以在边缘节点下载请求的数据,若边缘节点没有请求的数据,则边缘节点向CDN下载请求的数据,边缘节点再将请求的数据发送给客户端,边缘节点向CDN获取用户请求的数据内容的过程称为回源,它占用了网络的骨干带宽,如果回源过多,会导致网络拥挤。因此,边缘节点需要尽量多的覆盖用户请求。
目前边缘节点通过缓存用户请求的数据来覆盖用户请求,若个别客户端向边缘节点请求冷门数据,则边缘节点会缓存冷门数据,甚至会将旧的热门数据淘汰,导致边缘节点命中率较低,边缘节点提供的数据较少导致上行带宽偏低,经常向CDN回源,CDN带宽成本变高。
发明内容
本申请实施例提供了一种信息推送方法以及相关装置,能够将热门数据信息推送给边缘节点以使边缘节点缓存热门数据,提高边缘节点数据的命中率,将边缘节点提供的数据最大化从而提高边缘节点上行带宽,降低CDN带宽成本。
有鉴于此,本申请第一方面提供一种信息推送方法,包括:
向边缘节点发送数据块下载请求,以使所述边缘节点根据所述数据块下载请求获取数据块;
获取所述数据块所对应的下载数据量,其中,所述下载数据量包括第一数据量以及第二数据量,所述第一数据量表示从内容分发网络CDN下载的数据块所对应的数据量,所述第二数据量表示从所述边缘节点下载的数据块所对应的数据量;
向服务器发送所述下载数据量,以使所述服务器根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,所述服务器向所述边缘节点发送所述目标数据块信息,以使所述边缘节点存储所述目标数据块,其中,所述信息推送关系表示所述数据块与所述第一数据量以及所述第二数据量之间的对应关系。
本申请第二方面提供另一种信息推送方法,包括:
接收终端设备发送的下载数据量,其中,所述下载数据量包括第一数据量以及第二数据量,所述第一数据量表示所述终端设备从内容分发网络CDN下载的数据块所对应的数据量,所述第二数据量表示所述终端设备从所述边缘节点下载的数据块所对应的数据量;
根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,其中,所述信息推送关系表示所述数据块与所述第一数据量以及所述第二数据量之间的对应关系;
向所述边缘节点发送所述目标数据块信息,以使所述边缘节点存储所述目标数据块。
本申请第三方面提供一种客户端,包括:
请求发送单元,用于向边缘节点发送数据块下载请求,以使所述边缘节点根据所述数据块下载请求获取数据块;
数据量获取单元,用于获取所述数据块所对应的下载数据量,其中,所述下载数据量包括第一数据量以及第二数据量,所述第一数据量表示从内容分发网络CDN下载的数据块所对应的数据量,所述第二数据量表示从所述边缘节点下载的数据块所对应的数据量;
下载数据量发送单元,用于向服务器发送所述下载数据量,以使所述服务器根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,所述服务器向所述边缘节点发送所述目标数据块,以使所述边缘节点存储所述目标数据块,其中,所述信息推送关系表示所述数据块与所述第一数据量以及所述第二数据量之间的对应关系。
在一种可能的设计中,在本申请实施例第三方面的第一种实现方式中,
所述下载数据量发送单元,还用于向服务器发送终端设备标识、数据块标识、所述第一数据量和所述第二数据量。
在一种可能的设计中,在本申请实施例第三方面的第二种实现方式中,
所述请求发送单元,还用于向所述边缘节点发送数据块所对应的字节范围下载请求;
所述请求发送单元,还用于若所述边缘节点返回所述字节范围对应的数据缺少信息,则向所述CDN发送所述字节范围下载请求。
在一种可能的设计中,在本申请实施例第三方面的第三种实现方式中,
所述客户端还包括数据分块单元:
所述数据分块单元,用于将文件分为数据块,为每个数据块设定数据块标识。
本申请第四方面提供一种服务器,包括:
下载数据量接收单元,用于接收终端设备发送的下载数据量,其中,所述下载数据量包括第一数据量以及第二数据量,所述第一数据量表示所述终端设备从内容分发网络CDN下载的数据块所对应的数据量,所述第二数据量表示所述终端设备从所述边缘节点下载的数据块所对应的数据量;
目标数据块确定单元,用于根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,其中,所述信息推送关系表示所述数据块与所述第一数据量以及所述第二数据量之间的对应关系;
目标数据块信息发送单元,用于向所述边缘节点发送所述目标数据块信息,以使所述边缘节点存储所述目标数据块。
在一种可能的设计中,在本申请实施例第四方面的第一种实现方式中,
所述目标数据块确定单元,还用于获取预设数据块个数M;
所述目标数据块确定单元,还用于根据所述预设数据块个数M从所述数据块中获取所述目标数据块,其中,所述目标数据块为所述N个数据块中下载数据量或第一数据量从高到低排列的前M个数据块。
在一种可能的设计中,在本申请实施例第四方面的第二种实现方式中,
所述服务器还包括:
下载次数接收单元,用于接收终端设备发送的数据块下载次数;
下发概率计算单元,用于根据所述数据块下载次数计算得到数据块的下发概率,所述下发概率为数据块下载次数占总下载次数的比值;
下发概率发送单元,用于向所述边缘节点发送数据块的下发概率,以使所述边缘节点根据所述下发概率确定所述目标数据块的存储量。
本申请第五方面提供一种终端设备,包括:存储器、收发器、处理器以及总线系统;
其中,存储器用于存储程序;
处理器用于执行存储器中的程序,包括如下步骤:
向边缘节点发送数据块下载请求,以使所述边缘节点根据所述数据块下载请求获取数据块;
获取所述数据块所对应的下载数据量,其中,所述下载数据量包括第一数据量以及第二数据量,所述第一数据量表示从内容分发网络CDN下载的数据块所对应的数据量,所述第二数据量表示从所述边缘节点下载的数据块所对应的数据量;
向服务器发送所述下载数据量,以使所述服务器根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,所述服务器向所述边缘节点发送所述目标数据块信息,以使所述边缘节点存储所述目标数据块,其中,所述信息推送关系表示所述数据块与所述第一数据量以及所述第二数据量之间的对应关系;
总线系统用于连接存储器以及处理器,以使存储器以及处理器进行通信。
本申请第六方面提供一种服务器,包括:存储器、收发器、处理器以及总线系统;
其中,存储器用于存储程序;
处理器用于执行存储器中的程序,包括如下步骤:
接收终端设备发送的下载数据量,其中,所述下载数据量包括第一数据量以及第二数据量,所述第一数据量表示所述终端设备从内容分发网络CDN下载的数据块所对应的数据量,所述第二数据量表示所述终端设备从所述边缘节点下载的数据块所对应的数据量;
根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,其中,所述信息推送关系表示所述数据块与所述第一数据量以及所述第二数据量之间的对应关系;
向所述边缘节点发送所述目标数据块信息,以使所述边缘节点存储所述目标数据块;
总线系统用于连接存储器以及处理器,以使存储器以及处理器进行通信。
本申请第七方面提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一方面的方法。
本申请的第八方面提供了一种包含指令的计算机程序产品,当其在计算机或处理器上运行时,使得计算机或处理器执行上述任一方面的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
客户端向边缘节点发送数据块下载请求,以使所述边缘节点根据所述数据块下载请求获取数据块;获取所述数据块所对应的下载数据量;向服务器发送所述下载数据量,以使所述服务器根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,所述服务器向所述边缘节点发送所述目标数据块信息,以使所述边缘节点存储所述目标数据块。通过所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,即确定了热门数据,能够将热门数据信息推送给边缘节点以使边缘节点缓存热门数据,提高边缘节点数据的命中率,将边缘节点提供的数据最大化从而提高边缘节点上行带宽,降低CDN带宽成本。
附图说明
图1为本申请实施例提供的一种信息推送方法的系统架构示意图;
图2为本申请实施例提供的一种信息推送方法的流程图;
图3为本申请实施例提供的信息推送方法的流程图;
图4为本申请实施例提供的一种客户端的示意图;
图5为本申请实施例提供的客户端的一个可选实施例的示意图;
图6为本申请实施例提供的一种客户端所处的架构示意图;
图7为本申请实施例提供的一种服务器的示意图;
图8为本申请实施例提供的服务器的一个可选实施例的示意图;
图9为本申请实施例提供的一种终端设备的示意图;
图10是本申请实施例提供的一种服务器结构示意图。
具体实施方式
本申请实施例提供了一种信息推送方法以及相关装置,能够将热门数据信息推送给边缘节点以使边缘节点缓存热门数据,提高边缘节点数据的命中率,将边缘节点提供的数据最大化从而提高边缘节点上行带宽,降低CDN带宽成本。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应理解,在互联网下载数据是上网冲浪中常见的过程,而下载数据都是从服务器中下载,并且可以通过内容分发网络(Content Delivery Network,CDN)进行更快、更稳定的传输。通过CDN进行传输时,终端设备首先向边缘节点请求需要下载的数据,当边缘节点缓存有该需要下载的数据是,边缘节点可以向终端设备直接发送该需要下载的数据,由于边缘节点相对于CDN中心网络更加靠近终端设备,因此可以提高终端设备下载数据的响应速度和下载速度。然而,终端设备需要下载的数据不一定已经缓存在边缘节点中,若边缘节点缓存有终端设备需要下载的数据,则边缘节点的数据命中,若边缘节点没有缓存终端设备需要下载的数据,则边缘节点的数据没有命中。根据若干次的终端设备数据下载请求以及边缘节点的相应,可以得出边缘节点数据的命中率。若边缘节点数据的命中率高,则说明终端设备需要下载的数据较多地缓存在边缘节点中,边缘节点能够提供较多的缓存数据,边缘节点的上行带宽较高,从而分担了CDN中心网络的压力,降低CDN带宽成本。
为了提高边缘节点数据的命中率,需要在边缘节点中缓存热门数据。本申请实施例提供了一种信息推送方法以及相关装置,能够将热门数据信息推送给边缘节点以使边缘节点缓存热门数据,提高边缘节点数据的命中率,将边缘节点提供的数据最大化从而提高边缘节点上行带宽,降低CDN带宽成本。
图1示出了本申请实施例提供的一种信息推送方法的系统架构示意图,该系统可以包括:终端设备、服务器、边缘节点和CDN中心网络;
终端设备上部署有用户侧的客户端,客户端是一种计算机程序产品,客户端用于从网络上下载数据,具体可以是各种应用或操作系统,例如游戏客户端、浏览器、下载器、网络视频播放器等,终端设备上可以部署有多个客户端,终端设备通过客户端执行计算机操作指令。终端设备仅为一个示意,在实际应用中,终端设备包含但不仅限于手机、台式电脑、平板电脑、笔记本电脑以及掌上电脑,或者是车辆终端设备等。终端设备可以通过终端设备从边缘节点或CDN中心网络下载数据,终端设备也可以通过客户端与服务器进行数据信息交互。终端设备上从边缘节点或CDN中心网络下载数据的客户端和与服务器进行数据信息交互的客户端可以是同一个客户端,也可以是不同的两个客户端。终端设备下载数据是,可以同时向多个边缘节点发送数据块下载请求。
服务器上部署有服务器软件系统,服务器通过服务器软件系统执行计算机操作指令。服务器可以与终端设备进行数据信息交互,例如接收终端设备的下载数据量的信息。服务器还可以与边缘节点进行数据信息交互,例如向边缘节点发送目标数据块信息,以使得边缘节点根据该目标数据块信息存储对应的目标数据块。
边缘节点实际上是一种缓存服务器,边缘节点中缓存有数据,当终端设备向边缘节点发送数据块下载请求时,边缘节点检测缓存的数据中是否有对应的数据块,若是,则向终端设备发送该对应的数据块,若否,则可以向终端设备返回请求失败信息。边缘节点可以与服务器进行数据信息交互,边缘节点接收服务器发送的目标数据块信息,并根据该目标数据块信息从CDN中心网络中下载并存储对应的目标数据块,此后,当终端设备向边缘节点发送关于目标数据块的数据块下载请求时,边缘节点检测缓存的数据中有对应的目标数据块,则向终端设备发送该目标数据块。
CDN中心网络为CDN节点的集合,可提供完整完备的数据,可以相应于边缘节点请求向边缘节点发送数据,也可以相应于终端设备请求向终端设备发送数据。
基于上述的系统架构,本申请实施例提供一种信息推送方法,可由终端设备执行,如图2所示,图2为本申请实施例提供的一种信息推送方法的流程图,包括:
201、向边缘节点发送数据块下载请求,以使边缘节点根据数据块下载请求获取数据块;
终端设备向边缘节点发送数据块下载请求后,若边缘节点中缓存有该数据块,则直接向终端设备发送该数据块,若边缘节点中没有该数据块,则边缘节点返回反馈信息,反馈信息用于向终端设备反馈边缘节点没有该数据块,终端设备接收到反馈信息后,可以将数据块下载请求发送至CDN中心网络,以使CDN中心网络向终端设备发送该数据块,此外,边缘节点可以根据数据块下载请求从CDN中心网络获取该数据块进行缓存,使得终端设备可以从边缘节点下载该数据块。
可以理解的是,终端设备可以同时处理多个数据块,终端设备可以同时向边缘节点和CDN中心网络下载不同的数据块,实现方式可以是终端设备同时向边缘节点和CDN中心网络发送不同的数据块下载请求。因此,终端设备可以同时与边缘节点和CDN中心网络连接。
在本申请实施例中,数据块的形式可以是某一段字节范围,也可以是多段字节范围的组合。
202、获取数据块所对应的下载数据量,其中,下载数据量包括第一数据量以及第二数据量,第一数据量表示从内容分发网络CDN下载的数据块所对应的数据量,第二数据量表示从边缘节点下载的数据块所对应的数据量;
若边缘节点直接向终端设备发送数据块,则终端设备下载该数据块时可以记录该数据块的下载数据量,并记录下载数据量是从边缘节点下载的第一数据量。若CDN向终端设备发送数据块,则终端设备下载该数据块时可以记录该数据块的下载数据量,并记录下载数据量是从CDN下载的第二数据量。终端设备记录数据块下载数据量的时间可以是实时记录,也可以是等待数据块下载完毕之后记录。终端设备记录数据块下载数据量的方式可以是监测下载端口的流量,也可以是根据数据块包头信息,也可以通过抓包分析,具体此处不做限定。终端设备记录数据块下载数据量的来源可以是根据数据块的下载地址、IP地址等,或者可以是根据数据块下载请求的URL等,具体此处不做限定。
表1为数据块下载数据量的一个示意,需要说明的是,数据块的大小可以不相同,也可以相同。一个终端设备可以下载多个不同的数据块,一个数据块可以被多个不同的终端设备下载。数据块可能缓存在边缘节点上,也可能没有缓存在边缘节点上,当数据块缓存在边缘节点上是,数据块从边缘节点下载到终端设备,当数据块没有缓存在边缘节点时,数据块从CDN下载到终端设备。一个终端设备可以对同一个数据块多次下载,同一个数据块可以被同一个终端设备多次下载,一个终端设备对一个数据块完成一次下载,则该数据块的下载次数+1。
表1
Figure BDA0002106795560000061
Figure BDA0002106795560000071
203、向服务器发送下载数据量,以使服务器根据下载数据量确定信息推送关系,根据信息推送关系从数据块中确定目标数据块,服务器向边缘节点发送目标数据块信息,以使边缘节点存储目标数据块,其中,信息推送关系表示数据块与第一数据量以及第二数据量之间的对应关系。
终端设备获取到数据块所对应的下载数据量后,将自身设备号、数据块标识、下载数据量等信息上报给服务器,以使服务器根据下载数据量确定信息推送关系。需要说明的是,服务器可以获取多个终端设备的下载数据量,得到如表1所示的数据,再根据这些数据确定同一个数据块的下载数据量,通过这些数据块的下载数据量可以得知每个数据块的热门程度,从而可以选择热门的数据块在边缘节点中进行缓存。
根据这些数据确定同一个数据块的下载数据量时,可以将同一个数据块的下载数据量相加,多个终端设备下载同一个数据块的下载数据量可以相加,同一个终端设备多次下载同一个数据块的下载数据量可以相加。例如,在表1中,终端设备1和终端设备2都下载了数据块1,且终端设备2下载了两次数据块1,则将这三次下载的下载数据量相加,得到数据块1的第一数据量为150KB,第二数据量为0KB,数据块1与第一数据量以及第二数据量之间的对应关系即为数据块1的信息推送关系。
根据数据块的信息推送关系,可以清楚每个数据块的热门程度,可以是设定第一数据量高的数据块作为目标数据块,以使边缘节点存储该目标数据块,也可以是设定第一数据量和第二数据量之和高的数据块作为目标数据块,以使边缘节点存储该目标数据块。根据描述数据块热门程度的下载数据量可设定其他方式确定目标数据块,此处不做具体限定。
边缘节点存储目标数据块的方式可以是边缘节点向CDN中心网络请求该目标数据块。服务器向边缘节点发送目标数据块信息时,目标数据块信息带有目标数据块的标识,使得边缘节点可以根据目标数据块的标识向CDN中心网络请求该目标数据块。目标数据块的标识可以是目标数据块的ID或者目标数据块的字节范围,可根据实际应用具体设置,具体此处不做限定。
在本实施例中,边缘节点可以按预设周期对数据块进行存储,即在一个预设的周期内,终端设备下载数据块并且将数据块的下载数据量发送至服务器,以使服务器根据数据块的下载数据量确定热门的数据块,边缘节点再对热门的数据块进行存储。服务器可以对每个数据块,在一个时间周期T内,汇总第一数据量和第二数据量,以及每个数据块的下载次数。比如服务器周期向边缘节点发送10个数据块的信息,边缘节点分别从cdn下载这10个数据块。在上行时间内,边缘节点为这10个数据块提供上行,降低这个10个数据块对cdn的带宽压力。
可选地,在上述图2对应的各个实施例的基础上,本申请实施例提供的信息推送方法的一个可选实施例中,向服务器发送下载数据量包括:
向服务器发送终端设备标识、数据块标识、第一数据量和第二数据量。
在本实施例中,如表1所示,终端设备标识为终端设备1、终端设备2等,数据块标识为数据块1、数据块2等,第一数据量为终端设备从CDN下载数据块的数据量,第二数据量为终端设备从边缘节点下载数据块的数据量。终端设备将这些信息打包后向服务器发送,也可以不打包直接向服务器发送。
可以理解的是,对应于n个数据块FileiBlock1,FileiBlock2,...,FileiBlockn,数据块标识可以是FileiBlockId1,FileiBlockId2,...,FileiBlockIdn。k个边缘节点的标识可以是EdgeNode1,EdgeNode2,...,EdgeNodek。终端设备上的客户端标识可以是ClientId。因此,终端设备向服务器发送终端设备标识、数据块标识、第一数据量和第二数据量的上报格式可以为<ClientId,FilexBlockIdy,cdnBytes,edgeNodeBytes>,其中ClientId为客户端标识,FilexBlockIdy为数据块标识,cdnBytes,为第一数据量,edgeNodeBytes为第二数据量。
可选地,在上述图2对应的各个实施例的基础上,本申请实施例提供的信息推送方法的一个可选实施例中,向边缘节点发送数据块下载请求,以使边缘节点根据数据块下载请求获取数据块包括:
向边缘节点发送数据块所对应的字节范围下载请求;
若边缘节点返回字节范围对应的数据缺少信息,则向CDN发送字节范围下载请求。
在本申请实施例中,数据块可以是一段字节范围,因此数据块下载请求可以是字节范围的下载请求,例如:Req=<URL,ByteOffSet,ByteLen>,其中,Req(Require)是请求标识,URL(统一资源定位符,Uniform Resource Locator)是请求的目标地址,可以是边缘节点的URL地址,也可以是CDN的URL地址。当终端设备向边缘节点发送字节范围下载请求时,URL为边缘节点的URL地址,当终端设备向CDN发送字节范围下载请求时,URL为CDN的URL地址。当然,在实际应用中,URL地址也可以是其他地址,具体此处不做限定。ByteOffSet为字节偏移量,ByteLen为长度,根据这两个参数可以确定数据块的字节范围。在实际应用中,字节范围下载请求还可以包括其他信息,此处不做限定。
可以理解的是,边缘节点返回的数据缺少信息是表示终端设备请求的数据块缺少的信息,例如,终端设备向边缘节点发送数据块1的字节范围下载请求,而边缘节点没有缓存数据块1,则边缘节点向终端设备返回数据块1的数据缺少信息,使得终端设备获知边缘节点中没有缓存数据块1,则终端设备向CDN发送数据块1的字节范围下载请求。
可选地,在上述图2对应的各个实施例的基础上,本申请实施例提供的信息推送方法的一个可选实施例中,向边缘节点发送数据块下载请求之前,方法还包括:
将文件分为数据块,为每个数据块设定数据块标识。
可以理解的是,可以将文件分为多个数据块,大文件达到十几GB的文件,分为多个数据块,这些数据块可以分别分次进行下载,全部下载完毕后再在终端设备中拼接起来,例如可以分几天下载一个大文件。
将文件分为多个数据块可以是按照定长或变长的方式,按照字节顺序进行分块。每个数据块设定数据块标识,例如FileiBlockId1,FileiBlockId2。通过这些数据块标识可以确定数据块。
需要说明的是,终端设备、服务器和边缘节点都共用统一的数据块标识,使得终端设备、服务器、CDN和边缘节点能够通过数据块标识找到同一个数据块,例如,终端设备向边缘节点发送数据块1的下载请求,则边缘节点向终端设备发送数据块1,或者边缘节点没有缓存数据块1,则终端设备向CDN下载数据块1,若数据块1是热门数据块,则服务器可以使得边缘节点存储数据块1。上述过程都是通过同一个数据块标识实现对数据块1的确定。
上述是本申请实施例提供的终端设备执行的一种信息推送方法的详细描述,下面将从服务器角度对本申请实施例提供的信息推送方法做详细的描述。
请参阅图3,图3为本申请实施例提供的信息推送方法的流程图;本申请实施例提供的信息推送方法,包括:
301、服务器接收终端设备发送的下载数据量,其中,下载数据量包括第一数据量以及第二数据量,第一数据量表示终端设备从内容分发网络CDN下载的数据块所对应的数据量,第二数据量表示终端设备从边缘节点下载的数据块所对应的数据量;
在本申请实施例中,服务器接收终端设备的下载数据量与前述图2所示实施例中步骤203描述服务器接收终端设备的下载数据量类似,此处不再赘述。
302、服务器根据下载数据量确定信息推送关系,根据信息推送关系从数据块中确定目标数据块,其中,信息推送关系表示数据块与第一数据量以及第二数据量之间的对应关系;
在本申请实施例中,服务器根据下载数据量确定信息推送关系与前述图2所示实施例中步骤203描述服务器根据下载数据量确定信息推送关系类似,此处不再赘述。
303、服务器向边缘节点发送目标数据块信息,以使边缘节点存储目标数据块。
在本申请实施例中,服务器向边缘节点发送目标数据块信息以使边缘节点存储目标数据块与前述图2所示实施例中步骤203描述服务器向边缘节点发送目标数据块信息以使边缘节点存储目标数据块类似,此处不再赘述。
需要说明的是,服务器与终端设备可以在数据交互前建立通信连接,服务器与边缘节点可以在数据交互前建立通信连接,终端设备与边缘节点可以在数据交互前建立通信连接,终端设备与CDN可以在数据交互前建立通信连接,边缘节点与CDN可以在数据交互前建立通信连接。建立通信连接可以采用使用TCP协议,也可以使用UDP协议,TCP协议使用三次握手协议建立连接;UDP协议使用NAT穿透技术建立连接。上述只是以两个例子说明建立通信连接的协议,在实际应用中,还可以通过其他协议建立通信连接,例如可以是FTP协议,具体此处不做限定。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的信息推送方法的一个可选实施例中,根据信息推送关系从数据块中确定目标数据块包括:
获取预设数据块个数M;
根据预设数据块个数M从数据块中获取目标数据块,其中,目标数据块为N个数据块中下载数据量或第一数据量从高到低排列的前M个数据块。
应理解,M为大于0且小于等于N的整数,N为大于0的整数。
数据块可以根据下载数据量从高到低排序,下载数据量等于第一数据量加上第二数据量,也可以单独根据第一数据量排序,根据下载数据量进行排序时,可以反映数据块的热门程度,将热门的数据块排到前面,优先作为目标数据块,根据第一数据量进行排序时,可以反映没有缓存在边缘节点的数据块中热门的数据块,更有针对地对没有缓存在边缘节点的数据块进行选择。
表2为信息推送关系的一个示意,经过第一数据量排序后,排在前面的数据块优先作为目标数据块,根据预设的数据块个数可以将排在前面的M个数据块作为目标数据块。表2中一共有5个数据块按照第一数据量的高低进行排序,若预设的数据块个数M为3,则按照排序将排在前面的数据块1、数据块10和数据块15作为目标数据块。将这些目标数据块信息发送给边缘节点,使得边缘节点向CDN获取这些数据块并存储。应理解,数据块按照第一数据量排序,与数据块标识无关,也与第二数据量无关。当第一数据量相等时,可以随机进行二次排序,也可以按照第二数据量进行二次排序,例如数据块7的第二数据量比数据块6的第二数据量大,则数据块7排在前面。
上面只是以一个例子说明按第一数据量进行排序的情况,在实际应用中,还可以按照下载数据量进行排序,或者其他方式进行排序,具体此处不做限定。
表2
Figure BDA0002106795560000101
需要说明的是,可以设定黑名单,不对在黑名单中的数据块进行排序。例如,某数据块遭受黑客恶意下载,但该数据块经工作人员鉴定为不需要大量缓存的数据块,则工作人员可以将该数据块标识列入黑名单中,不对在黑名单中的该数据块进行排序,可以避免该数据块被确定为目标数据块,防止边缘节点缓存特殊数据块。
可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的信息推送方法的一个可选实施例中,方法还包括:
接收终端设备发送的数据块下载次数;
根据数据块下载次数计算得到数据块的下发概率,下发概率为数据块下载次数占总下载次数的比值;
向边缘节点发送数据块的下发概率,以使边缘节点根据下发概率确定目标数据块的存储量。
在本申请实施例中,一个终端设备可以对同一个数据块多次下载,同一个数据块可以被多个终端设备下载,同一个数据块可以被同一个终端设备多次下载,一个终端设备对一个数据块完成一次下载,则该数据块的下载次数+1。如表1中每一行表示一次下载次数。因此,终端设备可以计算终端设备自身对每个数据块的下载次数。例如,表1中数据块1被终端设备1下载1次,被终端设备2下载2次,则数据块1的下载次数为3。
终端设备计算终端设备自身对每个数据块的下载次数后,可以将下载次数发送给服务器,服务器接收终端设备发送的数据块下载次数后,可以根据数据块下载次数计算得到数据块的下发概率。
表3为服务器计算下发概率的一种示意,表3为表2情况的一种延伸。当选中了前三个数据块作为目标数据块,即数据块1、数据块10和数据块15作为目标数据块后,可以根据这些目标数据块的下载次数计算对应的下发概率,例如,数据块1的下发概率为数据块1的下载次数除以总下载次数,该总下载次数为所有目标数据块的下载次数总和,因此数据块1的下载次数为r1/r1+r2+r3。服务器可以不计算非目标数据块的下发概率。下载次数可以用totalReportCnt标识表示。
表3
Figure BDA0002106795560000111
需要说明的是,终端设备向服务器发送下载数据量时,可以同时发送下载次数。服务器在统计数据块的数据量时,可以同时统计数据块的下载次数。计算下发概率的步骤可以在服务器中执行,也可以通过边缘节点执行,具体此处不做限定。
下载次数可以作为边缘节点存储数据块的副本数权重。在本申请实施例中,边缘节点获取到下发概率后,可以根据下发概率确定目标数据块的存储量。具体可以为数据块的存储量等于总存储量乘以下发概率。总存储量为所有参与存储的边缘节点计划用于存储的存储量。例如,边缘节点计划用于存储的总存储量为10GB,则表3中数据块1的存储量为10GB*r1/r1+r2+r3,数据块10的存储量为10GB*r2/r1+r2+r3,数据块15的存储量为10GB*r3/r1+r2+r3。需要说明的是,对于同一个数据块,一个边缘节点通常只存储一份,不会重复存储。各个边缘节点向CDN发送数据块存储请求,直到各个边缘节点累加的数据块存储量达到要求,例如数据块1的存储量为10GB*r1/r1+r2+r3,则各个边缘节点请求下载数据块1,当数据块1在各个边缘节点的存储量总和达到根据下发概率确定的存储量后,停止数据块1的下载。
若边缘节点总存储量较少,则会导致各个边缘节点均下载某个数据块后无法下载其他目标数据块。在本申请实施例中,通过下发概率控制数据块的存储量,当数据块的存储量达到根据下发概率确定的存储量后停止该数据块的下载(通常情况是其中一些边缘节点下载该数据块后则可以达到根据下发概率确定的存储量,剩余边缘节点停止该数据块的下载),防止了该数据块的下载占用了其他目标数据块的存储空间,可以在边缘节点总存储量较少的情况下仍能对所有目标数据块实现存储,避免了边缘节点总存储量较少导致部分目标数据块未能存储的问题。
此外,若每个边缘节点都下载完同一个数据块后,该数据块在各个边缘节点的存储量仍未达到根据下发概率确定的存储量,处理方式可以是若各个边缘节点都下载完同一个数据块,则停止该数据块的下载。
下面对本申请实施例提供的一种客户端进行详细的描述。请参阅图4,图4为本申请实施例提供的一种客户端的示意图。客户端400包括:
请求发送单元401,用于向边缘节点发送数据块下载请求,以使边缘节点根据数据块下载请求获取数据块;
数据量获取单元402,用于获取数据块所对应的下载数据量,其中,下载数据量包括第一数据量以及第二数据量,第一数据量表示从内容分发网络CDN下载的数据块所对应的数据量,第二数据量表示从边缘节点下载的数据块所对应的数据量;
下载数据量发送单元403,用于向服务器发送下载数据量,以使服务器根据下载数据量确定信息推送关系,根据信息推送关系从数据块中确定目标数据块,服务器向边缘节点发送目标数据块,以使边缘节点存储目标数据块,其中,信息推送关系表示数据块与第一数据量以及第二数据量之间的对应关系。
可选地,在上述图4对应的各个实施例的基础上,本申请实施例提供的客户端的一个可选实施例中,下载数据量发送单元403,还用于向服务器发送终端设备标识、数据块标识、第一数据量和第二数据量。
可选地,在上述图4对应的各个实施例的基础上,本申请实施例提供的客户端的一个可选实施例中,请求发送单元401,还用于向边缘节点发送数据块所对应的字节范围下载请求;
请求发送单元401,还用于若边缘节点返回字节范围对应的数据缺少信息,则向CDN发送字节范围下载请求。
可选地,在上述图4对应的各个实施例的基础上,本申请实施例提供的客户端的一个可选实施例中,请参阅图5,图5为本申请实施例提供的客户端的一个可选实施例的示意图,客户端400还包括数据分块单元404:
数据分块单元404,用于将文件分为数据块,为每个数据块设定数据块标识。
请参阅图6,图6为本申请实施例提供的一种客户端所处的架构示意图。如图6所示,客户端从边缘节点或CDN下载数据块之后,可以通过箭头方向的传输路径将数据块信息(包括下载数据量)发送至服务器,服务器根据下载数据量确定目标数据块后,将目标数据块信息推送给边缘节点,边缘节点根据目标数据块信息向CDN下载目标数据块并进行存储。
下面对本申请实施例提供的一种服务器进行详细的描述。请参阅图7,图7为本申请实施例提供的一种服务器的示意图。服务器700包括:
下载数据量接收单元701,用于接收终端设备发送的下载数据量,其中,下载数据量包括第一数据量以及第二数据量,第一数据量表示终端设备从内容分发网络CDN下载的数据块所对应的数据量,第二数据量表示终端设备从边缘节点下载的数据块所对应的数据量;
目标数据块确定单元702,用于根据下载数据量确定信息推送关系,根据信息推送关系从数据块中确定目标数据块,其中,信息推送关系表示数据块与第一数据量以及第二数据量之间的对应关系;
目标数据块信息发送单元703,用于向边缘节点发送目标数据块信息,以使边缘节点存储目标数据块。
可选地,在上述图7对应的各个实施例的基础上,本申请实施例提供的服务器的一个可选实施例中,目标数据块确定单元702,还用于获取预设数据块个数M;
目标数据块确定单元702,还用于根据预设数据块个数M从数据块中获取目标数据块,其中,目标数据块为N个数据块中下载数据量或第一数据量从高到低排列的前M个数据块。
可选地,在上述图7对应的各个实施例的基础上,本申请实施例提供的服务器的一个可选实施例中,请参阅图8,图8为本申请实施例提供的服务器的一个可选实施例的示意图。服务器700还包括:
下载次数接收单元704,用于接收终端设备发送的数据块下载次数;
下发概率计算单元705,用于根据数据块下载次数计算得到数据块的下发概率,下发概率为数据块下载次数占总下载次数的比值;
下发概率发送单元706,用于向边缘节点发送数据块的下发概率,以使边缘节点根据下发概率确定目标数据块的存储量。
下面对本申请实施例提供的一种终端设备进行详细的描述。请参阅图9,图9为本申请实施例提供的一种终端设备的示意图。如图9所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端设备可以为包括手机、平板电脑、个人数字助理(personal digital assistant,PDA)、销售终端(point of sales,POS)、车载电脑等任意终端设备,以终端设备为手机为例:
图9示出的是与本申请实施例提供的终端相关的手机的部分结构的框图。参考图9,手机包括:射频(radio frequency,RF)电路910、存储器920、输入单元930、显示单元940、传感器950、音频电路960、无线保真(wireless fidelity,WiFi)模块970、处理器980、以及电源990等部件。本领域技术人员可以理解,图9中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图9对手机的各个构成部件进行具体的介绍:
RF电路910可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器980处理;另外,将设计上行的数据发送给基站。通常,RF电路910包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noiseamplifier,LNA)、双工器等。此外,RF电路910还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystem of mobile communication,GSM)、通用分组无线服务(general packet radioservice,GPRS)、码分多址(code division multiple access,CDMA)、宽带码分多址(wideband code division multiple access,WCDMA)、长期演进(long term evolution,LTE)、电子邮件、短消息服务(short messaging service,SMS)等。
存储器920可用于存储软件程序以及模块,处理器980通过运行存储在存储器920的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器920可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元930可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元930可包括触控面板931以及其他输入设备932。触控面板931,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板931上或在触控面板931附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板931可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器980,并能接收处理器980发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板931。除了触控面板931,输入单元930还可以包括其他输入设备932。具体地,其他输入设备932可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元940可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元940可包括显示面板941,可选的,可以采用液晶显示器(liquid crystaldisplay,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置显示面板941。进一步的,触控面板931可覆盖显示面板941,当触控面板931检测到在其上或附近的触摸操作后,传送给处理器980以确定触摸事件的类型,随后处理器980根据触摸事件的类型在显示面板941上提供相应的视觉输出。虽然在图9中,触控面板931与显示面板941是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板931与显示面板941集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器950,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板941的亮度,接近传感器可在手机移动到耳边时,关闭显示面板941和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路960、扬声器961,传声器962可提供用户与手机之间的音频接口。音频电路960可将接收到的音频数据转换后的电信号,传输到扬声器961,由扬声器961转换为声音信号输出;另一方面,传声器962将收集的声音信号转换为电信号,由音频电路960接收后转换为音频数据,再将音频数据输出处理器980处理后,经RF电路910以发送给比如另一手机,或者将音频数据输出至存储器920以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块970可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图9示出了WiFi模块970,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器980是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器920内的软件程序和/或模块,以及调用存储在存储器920内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器980可包括一个或多个处理单元;可选的,处理器980可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器980中。
手机还包括给各个部件供电的电源990(比如电池),可选的,电源可以通过电源管理系统与处理器980逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本申请实施例中,该终端设备所包括的处理器980还具有以下功能:
向边缘节点发送数据块下载请求,以使边缘节点根据数据块下载请求获取数据块;
获取数据块所对应的下载数据量,其中,下载数据量包括第一数据量以及第二数据量,第一数据量表示从内容分发网络CDN下载的数据块所对应的数据量,第二数据量表示从边缘节点下载的数据块所对应的数据量;
向服务器发送下载数据量,以使服务器根据下载数据量确定信息推送关系,根据信息推送关系从数据块中确定目标数据块,服务器向边缘节点发送目标数据块信息,以使边缘节点存储目标数据块,其中,信息推送关系表示数据块与第一数据量以及第二数据量之间的对应关系。
在本申请实施例中,该终端设备所包括的处理器980还具有以下功能:
向服务器发送终端设备标识、数据块标识、第一数据量和第二数据量。
在本申请实施例中,该终端设备所包括的处理器980还具有以下功能:
向边缘节点发送数据块所对应的字节范围下载请求;
若边缘节点返回字节范围对应的数据缺少信息,则向CDN发送字节范围下载请求。
在本申请实施例中,该终端设备所包括的处理器980还具有以下功能:
将文件分为数据块,为每个数据块设定数据块标识。
图10是本申请实施例提供的一种服务器结构示意图,该服务器1000可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processingunits,CPU)1022(例如,一个或一个以上处理器)和存储器1032,一个或一个以上存储应用程序1042或数据1044的存储介质1030(例如一个或一个以上海量存储设备)。其中,存储器1032和存储介质1030可以是短暂存储或持久存储。存储在存储介质1030的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1022可以设置为与存储介质1030通信,在服务器1000上执行存储介质1030中的一系列指令操作。
服务器1000还可以包括一个或一个以上电源1026,一个或一个以上有线或无线网络接口1050,一个或一个以上输入输出接口1058,和/或,一个或一个以上操作系统1041,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图10所示的服务器结构。
本申请实施例中,CPU1022用于执行如下步骤:
接收终端设备发送的下载数据量,其中,下载数据量包括第一数据量以及第二数据量,第一数据量表示终端设备从内容分发网络CDN下载的数据块所对应的数据量,第二数据量表示终端设备从边缘节点下载的数据块所对应的数据量;
根据下载数据量确定信息推送关系,根据信息推送关系从数据块中确定目标数据块,其中,信息推送关系表示数据块与第一数据量以及第二数据量之间的对应关系;
向边缘节点发送目标数据块信息,以使边缘节点存储目标数据块;
本申请实施例中,CPU1022还用于执行如下步骤:
获取预设数据块个数M;
根据预设数据块个数M从数据块中获取目标数据块,其中,目标数据块为N个数据块中下载数据量或第一数据量从高到低排列的前M个数据块。
本申请实施例中,CPU1022还用于执行如下步骤:
接收终端设备发送的数据块下载次数;
根据数据块下载次数计算得到数据块的下发概率,下发概率为数据块下载次数占总下载次数的比值;
向边缘节点发送数据块的下发概率,以使边缘节点根据下发概率确定目标数据块的存储量。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (12)

1.一种信息推送方法,其特征在于,应用于客户端,包括:
向边缘节点发送数据块下载请求,以使所述边缘节点根据所述数据块下载请求获取数据块;
获取所述数据块所对应的下载数据量,其中,所述下载数据量包括第一数据量以及第二数据量,所述第一数据量表示从内容分发网络CDN下载的数据块所对应的数据量,所述第二数据量表示从所述边缘节点下载的数据块所对应的数据量;
向服务器发送所述下载数据量,以使所述服务器根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,所述服务器向所述边缘节点发送所述目标数据块信息,以使所述边缘节点存储所述目标数据块,并使得此后在客户端向所述边缘节点发送所述目标数据块的数据块下载请求时,能够在所述边缘节点命中所述目标数据块,其中,所述信息推送关系表示所述数据块与所述第一数据量以及所述第二数据量之间的对应关系。
2.根据权利要求1所述的信息推送方法,其特征在于,向服务器发送所述下载数据量包括:
向服务器发送终端设备标识、数据块标识、所述第一数据量和所述第二数据量。
3.根据权利要求1所述的信息推送方法,其特征在于,向边缘节点发送数据块下载请求,以使所述边缘节点根据所述数据块下载请求获取数据块包括:
向所述边缘节点发送数据块所对应的字节范围下载请求;
若所述边缘节点返回所述字节范围对应的数据缺少信息,则向所述CDN发送所述字节范围下载请求。
4.根据权利要求1所述的信息推送方法,其特征在于,向边缘节点发送数据块下载请求之前,方法还包括:
将文件分为数据块,为每个数据块设定数据块标识。
5.一种信息推送方法,其特征在于,包括:
接收终端设备发送的下载数据量,其中,所述下载数据量包括第一数据量以及第二数据量,所述第一数据量表示所述终端设备从内容分发网络CDN下载的数据块所对应的数据量,所述第二数据量表示所述终端设备从所述边缘节点下载的数据块所对应的数据量;
根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,其中,所述信息推送关系表示所述数据块与所述第一数据量以及所述第二数据量之间的对应关系;
向所述边缘节点发送所述目标数据块信息,以使所述边缘节点存储所述目标数据块,并使得此后在终端设备向所述边缘节点发送所述目标数据块的数据块下载请求时,能够在所述边缘节点命中所述目标数据块。
6.根据权利要求5所述的信息推送方法,其特征在于,根据所述信息推送关系从所述数据块中确定目标数据块包括:
获取预设数据块个数M;
根据所述预设数据块个数M从所述数据块中获取所述目标数据块,其中,所述目标数据块为所述N个数据块中下载数据量或第一数据量从高到低排列的前M个数据块。
7.根据权利要求5所述的信息推送方法,其特征在于,方法还包括:
接收终端设备发送的数据块下载次数;
根据所述数据块下载次数计算得到数据块的下发概率,所述下发概率为数据块下载次数占总下载次数的比值;
向所述边缘节点发送数据块的下发概率,以使所述边缘节点根据所述下发概率确定所述目标数据块的存储量。
8.一种客户端,其特征在于,包括:
请求发送单元,用于向边缘节点发送数据块下载请求,以使所述边缘节点根据所述数据块下载请求获取数据块;
数据量获取单元,用于获取所述数据块所对应的下载数据量,其中,所述下载数据量包括第一数据量以及第二数据量,所述第一数据量表示从内容分发网络CDN下载的数据块所对应的数据量,所述第二数据量表示从所述边缘节点下载的数据块所对应的数据量;
下载数据量发送单元,用于向服务器发送所述下载数据量,以使所述服务器根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,所述服务器向所述边缘节点发送所述目标数据块,以使所述边缘节点存储所述目标数据块,并使得此后在客户端向所述边缘节点发送所述目标数据块的数据块下载请求时,能够在所述边缘节点命中所述目标数据块,其中,所述信息推送关系表示所述数据块与所述第一数据量以及所述第二数据量之间的对应关系。
9.一种服务器,其特征在于,包括:
下载数据量接收单元,用于接收终端设备发送的下载数据量,其中,所述下载数据量包括第一数据量以及第二数据量,所述第一数据量表示所述终端设备从内容分发网络CDN下载的数据块所对应的数据量,所述第二数据量表示所述终端设备从所述边缘节点下载的数据块所对应的数据量;
信息推送关系确定单元,用于根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,其中,所述信息推送关系表示所述数据块与所述第一数据量以及所述第二数据量之间的对应关系;
目标数据块信息发送单元,用于向所述边缘节点发送所述目标数据块信息,以使所述边缘节点存储所述目标数据块,并使得此后在终端设备向所述边缘节点发送所述目标数据块的数据块下载请求时,能够在所述边缘节点命中所述目标数据块。
10.一种信息推送系统,其特征在于,包括权利要求8所述的客户端、权利要求9所述的服务器和边缘节点。
11.一种服务器,包括:存储器、收发器、处理器以及总线系统;
其中,存储器用于存储程序;
处理器用于执行存储器中的程序,包括如下步骤:
接收终端设备发送的下载数据量,其中,所述下载数据量包括第一数据量以及第二数据量,所述第一数据量表示所述终端设备从内容分发网络CDN下载的数据块所对应的数据量,所述第二数据量表示所述终端设备从所述边缘节点下载的数据块所对应的数据量;
根据所述下载数据量确定信息推送关系,根据所述信息推送关系从所述数据块中确定目标数据块,其中,所述信息推送关系表示所述数据块与所述第一数据量以及所述第二数据量之间的对应关系;
向所述边缘节点发送所述目标数据块信息,以使所述边缘节点存储所述目标数据块,并使得此后在终端设备向所述边缘节点发送所述目标数据块的数据块下载请求时,能够在所述边缘节点命中所述目标数据块;
总线系统用于连接存储器以及处理器,以使存储器以及处理器进行通信。
12.一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如权利要求1~4或5~7中至少一项所述的方法。
CN201910558785.7A 2019-06-25 2019-06-25 一种信息推送方法以及相关装置 Active CN110417861B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910558785.7A CN110417861B (zh) 2019-06-25 2019-06-25 一种信息推送方法以及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910558785.7A CN110417861B (zh) 2019-06-25 2019-06-25 一种信息推送方法以及相关装置

Publications (2)

Publication Number Publication Date
CN110417861A CN110417861A (zh) 2019-11-05
CN110417861B true CN110417861B (zh) 2023-05-26

Family

ID=68359870

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910558785.7A Active CN110417861B (zh) 2019-06-25 2019-06-25 一种信息推送方法以及相关装置

Country Status (1)

Country Link
CN (1) CN110417861B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111355798A (zh) * 2020-02-27 2020-06-30 典基网络科技(上海)有限公司 一种数据分发方法及系统
CN114024954B (zh) * 2021-10-27 2024-02-06 北京达佳互联信息技术有限公司 信息传输方法、装置、服务器及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2320619A1 (en) * 1999-12-20 2011-05-11 Yahoo! Inc. A content distribution method over an internetwork including content peering arrangement
CN106385426A (zh) * 2015-07-30 2017-02-08 中兴通讯股份有限公司 节点内容的命中方法及装置
CN107124630A (zh) * 2017-03-30 2017-09-01 华为技术有限公司 节点数据管理的方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026615B (zh) * 2006-02-18 2011-09-14 华为技术有限公司 一种基于ims的流媒体网络系统
CN101345690B (zh) * 2007-07-12 2010-10-13 中国电信股份有限公司 电信级p2p网络的内容分级存储及传送方法
CN106230942B (zh) * 2016-08-01 2019-08-16 中国联合网络通信集团有限公司 一种回源访问的方法及系统
CN109561141B (zh) * 2018-11-21 2020-05-22 中国联合网络通信集团有限公司 一种cdn节点的选择方法及设备
CN109672757B (zh) * 2019-02-26 2022-02-25 北京奇艺世纪科技有限公司 文件访问方法及文件访问处理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2320619A1 (en) * 1999-12-20 2011-05-11 Yahoo! Inc. A content distribution method over an internetwork including content peering arrangement
CN106385426A (zh) * 2015-07-30 2017-02-08 中兴通讯股份有限公司 节点内容的命中方法及装置
CN107124630A (zh) * 2017-03-30 2017-09-01 华为技术有限公司 节点数据管理的方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"A Novel Fanless Energy Efficient Edge Computing System Architecture and Engineering Practice for Baidu PCDN Application";Dechao Kong等;《2019 18th IEEE Intersociety Conference on Thermal and Thermomechanical Phenomena in Electronic Systems (ITherm)》;全文 *
"基于CDN-P2P技术的流媒体自适应分发系统的研究";陈露;《中国优秀硕士学位论文全文数据库》;全文 *

Also Published As

Publication number Publication date
CN110417861A (zh) 2019-11-05

Similar Documents

Publication Publication Date Title
CN110300115B (zh) 一种基于多通道的数据传输方法以及相关装置
CN111629075B (zh) 一种数据下载方法和相关装置
US10225356B2 (en) Method and terminal for receiving push information, storage medium
CN109905380B (zh) 一种分布式系统中的节点控制方法和相关装置
US10015566B2 (en) Live video processing method and associated devices and communication system
CN110213315B (zh) 一种路径确定方法和装置
CN106657165B (zh) 一种网络攻击的防御方法、服务器及终端
WO2014180123A1 (zh) 恶意网址的访问防御方法和相关装置
EP3179693B1 (en) Method, apparatus, storage medium and computer program product for establishing a data connection
JP7030984B2 (ja) ビデオ伝送方法、ビデオ伝送装置、およびビデオ伝送システム、ならびにコンピュータ可読記憶媒体
US11973684B2 (en) Link aggregation implementation method and related product
CN107800585B (zh) 网络通信的方法和装置、推送消息的方法和装置
CN108282405B (zh) 应用程序接口缓存管理方法、应用服务器及存储介质
CN110417861B (zh) 一种信息推送方法以及相关装置
WO2014206205A1 (en) Method and system for resource sharing
WO2014032559A1 (zh) 下载文件的方法和装置
CN111444237A (zh) 服务器系统、数据传输方法及电子设备
US11088954B2 (en) Link detection method and related apparatus
CN115242805B (zh) 基于gossip的分布式MQTT消息传递方法、传递系统及存储介质
CN107743149B (zh) 网络接入方法、装置及终端
CN108347460B (zh) 资源访问方法及装置
CN107104760B (zh) 一种传输数据包的方法、客户端以及服务器
CN105577627B (zh) 通信方法、装置、网络设备、终端设备和通信系统
CN111371916B (zh) 一种数据处理方法及相关设备
CN110138887B (zh) 一种数据处理方法、装置及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant