CN107277092A - 内容分发网络及其数据下载方法 - Google Patents

内容分发网络及其数据下载方法 Download PDF

Info

Publication number
CN107277092A
CN107277092A CN201610215443.1A CN201610215443A CN107277092A CN 107277092 A CN107277092 A CN 107277092A CN 201610215443 A CN201610215443 A CN 201610215443A CN 107277092 A CN107277092 A CN 107277092A
Authority
CN
China
Prior art keywords
node
media data
caching nodes
download
edge caching
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
Application number
CN201610215443.1A
Other languages
English (en)
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.)
BEIJING UNION VOOLE TECHNOLOGY Co Ltd
Original Assignee
BEIJING UNION VOOLE TECHNOLOGY 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 BEIJING UNION VOOLE TECHNOLOGY Co Ltd filed Critical BEIJING UNION VOOLE TECHNOLOGY Co Ltd
Priority to CN201610215443.1A priority Critical patent/CN107277092A/zh
Publication of CN107277092A publication Critical patent/CN107277092A/zh
Pending legal-status Critical Current

Links

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/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • 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
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load

Abstract

本申请提供了一种内容分发网络及其数据下载方法,所述内容分发网络包括通过网络连接的核心存储节点和二个以上的边缘缓存节点,位于同一地区的边缘缓存节点组成一个边缘节点组;在边缘缓存节点侧,所述方法包括:判断本边缘节点组内的其他边缘缓存节点是否保存有需要下载的介质数据;若是,选择本边缘节点组内保存有所述介质数据,且可用网络带宽最大的边缘缓存节点作为应答节点;从应答节点下载并在本地保存所述介质数据;若否,从上层节点回源下载并在本地保存所述介质数据。本申请通过上述手段,可以充分利用同组的边缘缓存节点一般在同一个地区内的特点,不仅能够节省网络成本,数据传输速率也能够得到更好的保障,可有效提高工作效率。

Description

内容分发网络及其数据下载方法
技术领域
本申请涉及计算机网络技术领域,特别地,涉及一种内容分发网络及其数据下载方法。
背景技术
随着互联网的快速发展,智能电视的普及,网络数据流量成倍增长,会出现网络拥塞并出现影响业务应用体验的情况。内容分发网络(CDN,Content Delivery Network)作为一种能够提高互联网内容传输效率的系统,特别针对视频等多媒体内容传输的服务质量效率能得到很大提升,得到越来越广泛的应用。CDN是基于网络和部署在各地的边缘服务器,利用中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,从而降低网络拥塞,提高用户访问的响应速度和命中率。
但在现有CDN系统中,为了控制系统配置成本,一般的边缘服务器配置的存储装置容量是有限的,无法缓存中心平台核心存储中的所有内容,当提供服务的边缘服务器没有缓存用户请求的介质数据时,就需要向中心平台回源下载。因此,当出现大量回源下载请求、特别是出现对同一介质数据的回源下载请求时,必然会给核心存储造成巨大的负载压力,较大程度的降低了中心平台的服务性能。
发明内容
本申请提供一种内容分发网络及其数据下载方法,用于解决现有CDN系统当出现大量回源下载请求时给核心存储造成的巨大负载压力问题。
本申请公开的一种内容分发网络的数据下载方法,所述内容分发网络包括通过网络连接的核心存储节点和二个以上的边缘缓存节点,位于同一地区的边缘缓存节点组成一个边缘节点组;在边缘缓存节点侧,所述方法包括:判断本边缘节点组内的其他边缘缓存节点是否保存有需要下载的介质数据;若是,选择本边缘节点组内保存有所述介质数据,且可用网络带宽最大的边缘缓存节点作为应答节点;从所述应答节点下载并在本地存储器保存所述介质数据;若否,从上层节点回源下载并在本地存储器保存所述介质数据。
优选的,所述内容分发网络还包括设置在所述核心存储节点和边缘缓存节点之间的一层以上的中间缓存节点,所述从上层节点回源下载并在本地存储器保存所述介质数据,具体包括:从边缘缓存节点开始,重复向当前节点的上层节点发出介质数据下载请求,直至找到保存有该介质数据的中间缓存节点或核心存储节点,并将该中间缓存节点或核心存储节点作为应答节点;从所述应答节点的下层节点开始直至所述边缘缓存节点,逐级从当前节点的上层节点下载并在本地存储器保存所述介质数据。
优选的,所述从上层节点回源下载并在本地存储器保存所述介质数据,还包括:若从所述应答节点的下层节点开始直至所述边缘缓存节点,逐级从当前节点的上层节点下载并在本地存储器保存所述介质数据的过程失败,所述边缘缓存节点直接从核心存储节点下载并在本地存储器保存所述介质数据。
优选的,各节点均存储有所述介质数据的切片内容在本节点是否存在的状态记录信息;所述下载并在本地存储器保存所述介质数据,具体包括:请求下载节点将本节点中与所述介质数据相关的状态记录信息发送至下载服务节点;所述下载服务节点将本节点的状态记录信息与请求下载节点的状态记录信息进行比较,选择请求下载节点不存在的切片内容返回至请求下载节点;请求下载节点收到上述切片内容并保存至本地的存储器后,更新本节点的状态记录信息;其中,所述切片内容指按预设的切片长度对介质数据划分得到的各个部分,每一部分为一个切片内容。
优选的,所述状态记录信息是一个或多个bitmap,所述bitmap中的每一位对应于一切片内容,其数值表示对应的切片内容在本节点是否存在。
优选的,所述切片内容是按设定的段大小将下载文件分成的一段或多段,每段按设定的块大小分为多块,每一段数据维护一个bitmap ;在下载过程中,请求下载节点在下载每段数据时均先向下载服务节点发送该段数据的bitmap,然后下载服务节点根据本地和请求下载节点的该段数据的bitmap向请求下载节点返回相应的块数据。
优选的,所述方法还包括:判断一个群组内是否有多个边缘缓存节点需要到上层节点回源下载相同的介质数据,若是,指定一个边缘缓存节点执行回源下载流程,其他边缘缓存节点从上述指定的边缘缓存节点下载;和/或,判断所述边缘缓存节点是否有多个对需要下载的同样的介质数据的服务请求,若是,仅对第一个服务请求执行数据下载过程,等所述边缘缓存节点收到该介质数据后,同时返回给需要此介质数据服务的所有用户。
本申请公开的一种内容分发网络,包括通过网络连接的核心存储节点、二个以上的边缘缓存节点,位于同一地区的边缘缓存节点组成一个边缘节点组;所述边缘缓存节点包括:组内数据判断模块,用于判断本边缘节点组内的其他边缘缓存节点是否保存有需要下载的介质数据;组内节点选择模块,用于当本边缘节点组内的其他边缘缓存节点保存有需要下载的介质数据时,选择本边缘节点组内保存有所述介质数据、且可用网络带宽最大的边缘缓存节点作为应答节点;介质下载模块,用于从应答节点下载所述介质数据并保存至本地存储器;回源下载模块,用于当本边缘节点组内的其他边缘缓存节点均没有保存需要下载的介质数据时,向上级节点回源下载所述介质数据并保存至本地存储器。
优选的,所述内容分发网络还包括设置在所述核心存储节点和边缘缓存节点之间的一层以上的中间缓存节点,所述回源下载模块包括:节点追溯子模块,用于从边缘缓存节点开始,重复向当前节点的上层节点发出介质数据下载请求,直至找到保存有该介质数据的中间缓存节点或核心存储节点,将该中间缓存节点或核心存储节点作为应答节点;逐级下载子模块,用于从所述应答节点的下层节点开始直至所述边缘缓存节点,逐级从当前节点的上层节点下载并在本地存储器保存所述介质数据。
优选的,各节点均存储有所述介质数据的切片内容在本节点是否存在的状态记录信息;所述介质下载模块具体包括:状态发送子模块,用于将本边缘缓存节点中与所述介质数据相关的状态记录信息发送至所述应答节点;切片下载子模块,用于接收所述应答节点返回的本边缘缓存节点不存在的切片内容,其中,所述应答节点通过比较本节点的状态记录信息与上述边缘缓存节点的状态记录信息的方式选取上述边缘缓存节点不存在的切片内容;状态更新子模块,用于在收到上述不存在的切片内容、并保存至本地的存储器后,更新本节点的所述状态记录信息;其中,所述切片内容指按预设的切片长度对介质数据划分得到的各个部分,每一部分为一个切片内容。
与现有技术相比,本申请具有以下优点:
本申请优选实施例中的边缘缓存节点在下载介质数据时,优先在本边缘缓存节点组内查找其他节点是否存储有该介质数据,在本组内的其他节点也没有该介质数据时,才向上层节点回源下载,可以充分利用同组的边缘缓存节点一般在同一个地区内的特点,不仅能够节省网络成本,数据传输速率也能够得到更好的保障,可有效提高工作效率。另外,还能够减少回上层下载的频率,较大程度的减轻了上层节点(特别是核心缓存节点)的压力。
附图说明
图1为本申请内容分发网络的数据下载方法第一实施例的流程示意图;
图2为本申请内容分发网络的数据下载方法第二实施例的流程示意图;
图3为本申请实施例中边缘缓存节点从应答节点下载介质数据的具体流程示意图;
图4为本申请内容分发网络第一实施例的结构示意图;
图5为本申请内容分发网络第二实施例的结构示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
参照图1,示出了本申请内容分发网络的数据下载方法第一实施例的流程,所述内容分发网络包括通过网络连接的核心存储节点和二个以上的边缘缓存节点,位于同一地区的边缘缓存节点组成一个边缘节点组,在边缘缓存节点侧,所述方法包括:
步骤S101:判断本边缘缓存节点组内的其他边缘缓存节点是否保存有需要下载的介质数据;若是,转步骤S102;否则,转步骤S104。当边缘缓存节点收到CDN中心平台转发的介质数据下载请求时,首先判断本地是否缓存有该介质数据。如果本地没有缓存,则优先在本组内查找其他节点是否存储有该介质数据;如果本组内的其他节点也没有该介质数据,才需要向上层节点回源下载。
步骤S102:将本边缘缓存节点组内保存有所述介质数据,且可用网络带宽最大的边缘缓存节点作为应答节点。
在具体实施时,为了使下载性能达到最优,可以在边缘缓存节点组内的每个边缘节点中都记录有去其他节点的下载速度,从而可方便的选择可用网络带宽最大、且保存有所述介质数据的边缘缓存节点作为应答节点。
步骤S103:从所述应答节点下载并在本地存储器保存所述介质数据。
步骤S104:向上级节点回源下载并在本地存储器保存所述介质数据。
在本优选实施例中,当边缘缓存节点的直接上级节点为核心存储节点时(如图4所示),将该核心存储节点作为应答节点。当核心存储节点和边缘缓存节点组之间还设置有中间缓存节点时(如图5所示),可以采用逐级回源下载的方式,即优先选择保存有该介质数据的最低一级的中间缓存节点作为应答节点;也可以采用直接回源下载方式,即直接将核心存储节点作为应答节点。
本优选实施例通过上述从本组内边缘节点共享介质下载的手段,可以充分利用同群组节点一般在同一个地区内的特点,不仅能够节省网络成本,数据传输速率也能够得到更好的保障,可有效提高工作效率。
另外,该技术手段还能够减少回上层下载的频率,较大程度的减轻了上层节点(各级中间缓存节点和核心缓存节点)的压力。
在具体实施时,当同一群组内有多个边缘缓存节点需要下载同一个介质时,为了避免多个同时去上层下载,上层需要复制多份数据,分别发给相应边缘缓存节点的问题,减少介质数据在不同层级之间的传输量,进一步减轻上层节点(特别是核心存储节点)的压力,可以采用指定一个边缘缓存节点回上层回源下载的方式。
在另一个优选实施例中,为了进一步节省网络带宽,当边缘缓存节点收到多个对需要下载的同样的介质数据的服务请求时(即该同样的介质数据没有缓存在本边缘缓存节点),仅对第一个服务请求执行上述数据下载过程,等所述边缘缓存节点收到该介质数据后,同时返回给需要此介质数据服务的所有用户。
参照图2,示出了本申请内容分发网络的数据下载方法第二实施例的流程,本优选方法实施例与上述第一方法实施例的区别在于:内容分发网络在核心存储节点和边缘缓存节点之间还设置有一层或多次中间缓存节点,其结构形式如图5所示。当边缘缓存节点收到CDN中心平台转发的介质数据下载请求时,首先判断本地是否缓存有该介质数据;如果本节点没有缓存,则优先在本边缘缓存节点组内查找其他节点是否存储有该介质数据;如果本组内的其他节点也没有该介质数据,则需要向上层中间缓存节点或核心存储节点回源下载。本优选实施例通过从中间缓存节点下载数据的手段,能够进一步分担核心存储节点的负载压力,有效解决现有CDN系统当出现大量回源下载请求、特别是出现对同一介质数据的回源下载请求时可能给核心存储造成的过载问题,较好的保证了CDN系统服务的稳定性。本方法实施例包括:
步骤S201:判断本边缘缓存节点组内的其他边缘缓存节点是否保存有需要下载的介质数据;若是,转步骤S202;否则,转步骤S203。
步骤S202:将保存有所述介质数据的可用网络带宽最大的边缘缓存节点作为应答节点,从应答节点下载并在本地存储器保存所述介质数据。
在具体实施时,为了使下载性能达到最优,可以在群组内的每个边缘节点中都会记录去其他节点的下载速度,从而可方便的选择可用网络带宽最大、且保存有所述介质数据的边缘缓存节点作为应答节点。
步骤S203:所述边缘缓存节点向上层中间缓存节点发出介质数据下载请求。
步骤S204:判断当前接收介质数据下载请求的节点是否为保存有该介质数据的中间缓存节点或核心存储节点;若是,转步骤S206;否则,转步骤S205。
步骤S205:继续向当前节点的上层节点发出介质数据下载请求,转步骤S204。
在本优选实施例中,为减小核心存储节点的压力,采用分级负载的方式;先判断该边缘缓存节点的直接上层节点(中间缓存节点)是否缓存有该介质数据;若该直接上层节点没有缓存该介质数据,则继续向上层节点追溯,直至找到保存有该介质数据的中间缓存节点或核心存储节点。
步骤S206:将保存有该介质数据的中间缓存节点或核心存储节点作为应答节点,从所述应答节点的下层节点开始直至所述边缘缓存节点,逐级从当前节点的上层节点下载并在本地存储器保存所述介质数据。
本优选实施例通过上述手段,使回源下载时经过的各级中间缓存节点均缓存一份所述介质数据,一方面,能够方便其他下层节点回源下载;另一方面,还能够自动将新发布的介质数据缓存到CDN系统相关中间缓存节点中,提高整体运行效率。
步骤S207:当步骤S206执行失败时,所述边缘缓存节点直接从核心存储节点下载并在本地存储器保存所述介质数据。在进一步的优选实施例中,在介质数据下载过程中,为减少节点之间的交互次数(如可以采用一次请求,多次回复的方式)以及避免重复下载本机已经存在的数据,本申请方案中的边缘缓存节点和中间缓存节点均存储有与所述介质数据的切片内容在本节点是否存在的状态记录信息;上述步骤S202和S206中下载并在本地存储器保存所述介质数据的方法如图3所示,具体包括:
步骤S301:请求下载节点将本节点中与所述介质数据相关的状态记录信息发送至下载服务节点;
步骤S302:下载服务节点将本节点的状态记录信息与上述请求下载节点的状态记录信息进行比较,选择请求下载节点不存在的切片内容返回至请求下载节点;
步骤S303:请求下载节点收到上述不存在的切片内容后,在本地存储器保存该切片内容,并更新本节点的状态记录信息;
其中,步骤S202中的请求下载节点为边缘缓存节点,下载服务节点为应答节点(即另一个边缘缓存节点);步骤S206中的请求下载节点为边缘缓存节点或下层中间缓存节点,下载服务节点为核心存储节点或上层中间缓存节点。
本优选实施例中的切片内容指的是按预设的切片长度(如16K)对介质数据划分得到的各个部分,每一部分(16K数据)为一个切片内容。
在具体实施时,上述状态记录信息可以是一个或多个bitmap,所述bitmap中的每一位(bit)对应于一个切片内容,其数值(0或1)表示对应的切片内容在本节点是否存在(如可以用0表示本节点没有保存该bit对应的切片内容,用1表示本节点保存有该bit对应的切片内容)。
例如,对于磁盘上存储的64M影片文件,按照16K为一块顺序存储;如果某一个切片内容在本节点有保存,则在bitmap中对应bit位标记1,如果没有保存则标记0;一个完整的64M的影片文件块,其对应的bitmap共有4096个bit位,bitmap文件的大小为512字节长度。
请求下载节点在数据下载过程中,可以一边下载、一边进行缓存,如可以采用16K为最小分片单位进行下载和缓存,只要下载过的数据就会被缓存下来,使网络得以充分利用。
在另一进一步的优选实施例中,考虑到边缘缓存节点和中间缓存节点中的介质数据都不是永久存储,介质数据的流动性较大,采用将介质文件按预设的段大小(如64M)分成多段进行存储的方式(同一个介质文件分成的多段数据可能缓存在不同的节点中),每段再按预设的块大小(如16K)分为多块,每一段数据维护一个bitmap文件。
在下载过程中,边缘缓存节点需要下载每段数据时,首先向所述应答节点(即保存有该64M数据的中间缓存节点或核心存储节点)发送该段数据对应的bitmap,然后应答节点根据本地和边缘缓存节点的该段数据的bitmap的差别,向所述边缘缓存节点返回相应的块数据(即应答节点存在但边缘缓存节点不存在的16K块数据)。上述数据下载过程具体包括:
(1)请求介质数据的节点把要请求的段数据对应的bitmap发送到应答节点;
(2)应答节点接收到bitmap之后,与本地对应的bitmap验证,找出请求介质数据的节点没有而本地有的bit位;
(3)按照顺序把上述bit位对应的16K数据返回给请求介质数据的节点;
(4)当网络情况较差的时候,发送的bitmap可以是整个64M段数据的bitmap的一部分,通过offset方式,指定从具体哪一位开始传输,以发送一小块bitmap数据方式,防止请求交互数据量过大,影响机器性能。
对于前述的各方法实施例,为了描述简单,故将其都表述为一系列的动作组合,但是本领域的技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为根据本申请,某些步骤可以采用其他顺序或同时执行;其次,本领域技术人员也应该知悉,上述方法实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
参照图4,示出了本申请内容分发网络第一实施例的结构示意图,包括通过网络连接的核心存储节点10和二个以上的边缘缓存节点31 ,位于同一地区的边缘缓存节点31组成一个边缘节点组30;边缘缓存节点31包括:
组内数据判断模块,用于判断本边缘节点组内的其他边缘缓存节点是否保存有需要下载的介质数据;
组内节点选择模块,用于当本边缘节点组内的其他边缘缓存节点保存有需要下载的介质数据时,选择本边缘节点组内保存有所述介质数据、且可用网络带宽最大的边缘缓存节点作为应答节点;
介质下载模块,用于从应答节点下载所述介质数据并保存至本地存储器;
回源下载模块,用于当本边缘节点组内的其他边缘缓存节点均没有保存需要下载的介质数据时,向上级节点回源下载所述介质数据并保存至本地存储器。
参照图5,示出了本申请内容分发网络第二实施例的结构示意图,本优选实施例与上述第一内容分发网络实施例的区别在于:所述内容分发网络还包括设置在核心存储节点10和边缘缓存节点31之间的一层以上的中间缓存节点20,其中的回源下载模块具体包括:
节点追溯子模块,用于从边缘缓存节点31开始,重复向当前节点的上层节点发出介质数据下载请求,直至找到保存有该介质数据的中间缓存节点20或核心存储节点10,将该中间缓存节点20或核心存储节点10作为应答节点;
逐级下载子模块,用于从所述应答节点的下层节点开始直至所述边缘缓存节点,逐级从当前节点的上层节点下载并在本地存储器保存所述介质数据。
在进一步的优选实施例中,上述边缘缓存节点31和中间缓存节点20均存储有与所述介质数据的切片内容在本节点是否存在的状态记录信息;上述介质下载模块具体包括:
状态发送子模块,用于将本边缘缓存节点中与所述介质数据相关的状态记录信息(如bitmap)发送至所述应答节点;
切片下载子模块,用于接收所述应答节点返回的边缘缓存节点不存在的切片内容,其中,所述应答节点通过比较本节点的状态记录信息(bitmap)与上述边缘缓存节点的状态记录信息(bitmap)的方式选取上述边缘缓存节点不存在的切片内容;
状态更新子模块,用于在收到上述不存在的切片内容、并保存至本地的存储器后,更新本节点的状态记录信息(bitmap);
其中,所述切片内容指按设定的切片长度对介质数据划分得到的各个部分,每一部分为一个切片内容。
在另一进一步的优选实施例中,中间缓存节点20和边缘缓存节点31均可以设置本节点的区域负载均衡器(SLB,Service Load Balance)以及多个介质缓存节点(CACHE),其中:
中间缓存节点20设置有第一区域负载均衡器和二个以上的第一介质缓存节点;
第一区域负载均衡器用于获取并向上层中间缓存节点或所述全局负载均衡器(GSLB,Global Service Load Balance)上报下层中间缓存节点或边缘缓存节点的状态,以及根据其下层边缘缓存节点的状态将GSLB重定向的服务请求分配给合适的边缘缓存节点;
第一介质缓存节点用于存储下层中间缓存节点或边缘缓存节点回源下载的介质数据。
边缘缓存节点31设置有第二区域负载均衡器和二个以上的流媒体服务器(VSS,Streaming Server)及其第二介质缓存节点;
所述第二区域负载均衡器用于获取并向上层中间缓存节点或GSLB上报所述边缘缓存节点中各流媒体服务器的状态,以及根据各流媒体服务器的状态将GSLB重定向的服务请求分配给合适的流媒体服务器;
所述流媒体服务器用于把所述第二介质缓存节点缓存的介质数据返回给客户端;
介质下载模块312具体设置在第二介质缓存节点中,用于与中间缓存节点30的第一介质缓存节点建立连接并下载所需的介质数据。
需要说明的是,上述系统实施例属于优选实施例,所涉及的单元和模块并不一定是本申请所必须的。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于本申请的装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上对本申请所提供的一种内容分发网络及其数据下载方法,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种内容分发网络的数据下载方法,其特征在于,所述内容分发网络包括通过网络连接的核心存储节点和二个以上的边缘缓存节点,位于同一地区的边缘缓存节点组成一个边缘节点组;在边缘缓存节点侧,所述方法包括:
判断本边缘节点组内的其他边缘缓存节点是否保存有需要下载的介质数据;
若是,选择本边缘节点组内保存有所述介质数据,且可用网络带宽最大的边缘缓存节点作为应答节点;从所述应答节点下载并在本地存储器保存所述介质数据;
若否,从上层节点回源下载并在本地存储器保存所述介质数据。
2.根据权利要求1所述的方法,其特征在于,所述内容分发网络还包括设置在所述核心存储节点和边缘缓存节点之间的一层以上的中间缓存节点,所述从上层节点回源下载并在本地存储器保存所述介质数据,具体包括:
从边缘缓存节点开始,重复向当前节点的上层节点发出介质数据下载请求,直至找到保存有该介质数据的中间缓存节点或核心存储节点,并将该中间缓存节点或核心存储节点作为应答节点;从所述应答节点的下层节点开始直至所述边缘缓存节点,逐级从当前节点的上层节点下载并在本地存储器保存所述介质数据。
3.根据权利要求2所述的方法,其特征在于,所述从上层节点回源下载并在本地存储器保存所述介质数据,还包括:若从所述应答节点的下层节点开始直至所述边缘缓存节点,逐级从当前节点的上层节点下载并在本地存储器保存所述介质数据的过程失败,所述边缘缓存节点直接从核心存储节点下载并在本地存储器保存所述介质数据。
4.根据权利要求1~3任一所述的方法,其特征在于,各节点均存储有所述介质数据的切片内容在本节点是否存在的状态记录信息;
所述下载并在本地存储器保存所述介质数据,具体包括:
请求下载节点将本节点中与所述介质数据相关的状态记录信息发送至下载服务节点;
所述下载服务节点将本节点的状态记录信息与请求下载节点的状态记录信息进行比较,选择请求下载节点不存在的切片内容返回至请求下载节点;
请求下载节点收到上述切片内容并保存至本地的存储器后,更新本节点的状态记录信息;
其中,所述切片内容指按预设的切片长度对介质数据划分得到的各个部分,每一部分为一个切片内容。
5.根据权利要求4所述的方法,其特征在于,所述状态记录信息是一个或多个bitmap,所述bitmap中的每一位对应于一切片内容,其数值表示对应的切片内容在本节点是否存在。
6.根据权利要求5所述的方法,其特征在于:
所述切片内容是按设定的段大小将下载文件分成的一段或多段,每段按设定的块大小分为多块,每一段数据维护一个bitmap ;
在下载过程中,请求下载节点在下载每段数据时均先向下载服务节点发送该段数据的bitmap,然后下载服务节点根据本地和请求下载节点的该段数据的bitmap向请求下载节点返回相应的块数据。
7.根据权利要求2所述的方法,其特征在于,所述方法还包括:
判断一个群组内是否有多个边缘缓存节点需要到上层节点回源下载相同的介质数据,若是,指定一个边缘缓存节点执行回源下载流程,其他边缘缓存节点从上述指定的边缘缓存节点下载;
和/或,
判断所述边缘缓存节点是否有多个对需要下载的同样的介质数据的服务请求,若是,仅对第一个服务请求执行数据下载过程,等所述边缘缓存节点收到该介质数据后,同时返回给需要此介质数据服务的所有用户。
8.一种内容分发网络,其特征在于,包括通过网络连接的核心存储节点、二个以上的边缘缓存节点,位于同一地区的边缘缓存节点组成一个边缘节点组;所述边缘缓存节点包括:
组内数据判断模块,用于判断本边缘节点组内的其他边缘缓存节点是否保存有需要下载的介质数据;
组内节点选择模块,用于当本边缘节点组内的其他边缘缓存节点保存有需要下载的介质数据时,选择本边缘节点组内保存有所述介质数据、且可用网络带宽最大的边缘缓存节点作为应答节点;
介质下载模块,用于从应答节点下载所述介质数据并保存至本地存储器;
回源下载模块,用于当本边缘节点组内的其他边缘缓存节点均没有保存需要下载的介质数据时,向上级节点回源下载所述介质数据并保存至本地存储器。
9.根据权利要求8所述的内容分发网络,其特征在于,所述内容分发网络还包括设置在所述核心存储节点和边缘缓存节点之间的一层以上的中间缓存节点,所述回源下载模块包括:
节点追溯子模块,用于从边缘缓存节点开始,重复向当前节点的上层节点发出介质数据下载请求,直至找到保存有该介质数据的中间缓存节点或核心存储节点,将该中间缓存节点或核心存储节点作为应答节点;
逐级下载子模块,用于从所述应答节点的下层节点开始直至所述边缘缓存节点,逐级从当前节点的上层节点下载并在本地存储器保存所述介质数据。
10.根据权利要求8所述的内容分发网络,其特征在于,各节点均存储有所述介质数据的切片内容在本节点是否存在的状态记录信息;
所述介质下载模块具体包括:
状态发送子模块,用于将本边缘缓存节点中与所述介质数据相关的状态记录信息发送至所述应答节点;
切片下载子模块,用于接收所述应答节点返回的本边缘缓存节点不存在的切片内容,其中,所述应答节点通过比较本节点的状态记录信息与上述边缘缓存节点的状态记录信息的方式选取上述边缘缓存节点不存在的切片内容;
状态更新子模块,用于在收到上述不存在的切片内容、并保存至本地的存储器后,更新本节点的所述状态记录信息;
其中,所述切片内容指按预设的切片长度对介质数据划分得到的各个部分,每一部分为一个切片内容。
CN201610215443.1A 2016-04-08 2016-04-08 内容分发网络及其数据下载方法 Pending CN107277092A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610215443.1A CN107277092A (zh) 2016-04-08 2016-04-08 内容分发网络及其数据下载方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610215443.1A CN107277092A (zh) 2016-04-08 2016-04-08 内容分发网络及其数据下载方法

Publications (1)

Publication Number Publication Date
CN107277092A true CN107277092A (zh) 2017-10-20

Family

ID=60052401

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610215443.1A Pending CN107277092A (zh) 2016-04-08 2016-04-08 内容分发网络及其数据下载方法

Country Status (1)

Country Link
CN (1) CN107277092A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108449608A (zh) * 2018-04-02 2018-08-24 西南交通大学 双层缓存架构、对应块下载协议和在视频缓存的应用
CN108737500A (zh) * 2018-04-20 2018-11-02 青岛海尔科技有限公司 目标资源获取、提供方法、装置、存储介质与计算机设备
CN108924579A (zh) * 2018-08-28 2018-11-30 深圳市网心科技有限公司 视频网络系统、回源网络节点设备、方法和存储介质
CN109688204A (zh) * 2018-12-05 2019-04-26 量子云未来(北京)信息科技有限公司 基于ndn网络的文件下载方法、装置、节点、终端
CN112513830A (zh) * 2019-07-15 2021-03-16 华为技术有限公司 内容分发网络中的回源方法及相关装置
CN112751912A (zh) * 2020-12-15 2021-05-04 北京金山云网络技术有限公司 配置调整方法、装置及电子设备
CN113132439A (zh) * 2019-12-31 2021-07-16 贵州白山云科技股份有限公司 一种数据处理方法和系统及边缘节点
CN114615237A (zh) * 2022-03-22 2022-06-10 阿里巴巴(中国)有限公司 流媒体通信方法、系统、设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1592248A (zh) * 2003-08-29 2005-03-09 华为技术有限公司 一种分层的内容分发网络及内容分层分发的方法
CN101237418A (zh) * 2008-02-28 2008-08-06 蓝汛网络科技(北京)有限公司 基于内容分发网络的流媒体加速系统、方法及设备
WO2009085465A1 (en) * 2007-12-21 2009-07-09 Hostway Corporation System and method for selecting an optimal authoritative name server
CN102055650A (zh) * 2009-10-29 2011-05-11 华为技术有限公司 负载均衡方法及系统和管理服务器
CN102204218A (zh) * 2011-05-31 2011-09-28 华为技术有限公司 数据处理方法、缓存节点、协作控制器及系统
US20120191778A1 (en) * 2011-01-26 2012-07-26 MMC Technology Inc. Content distribution network for supporting peer-to-peer live streaming
CN103986976A (zh) * 2014-06-05 2014-08-13 北京赛维安讯科技发展有限公司 基于cdn网络的传输系统及方法
CN103997461A (zh) * 2014-06-13 2014-08-20 北京邮电大学 一种基于蚁群算法的内容中心网络缓存定位方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1592248A (zh) * 2003-08-29 2005-03-09 华为技术有限公司 一种分层的内容分发网络及内容分层分发的方法
WO2009085465A1 (en) * 2007-12-21 2009-07-09 Hostway Corporation System and method for selecting an optimal authoritative name server
CN101237418A (zh) * 2008-02-28 2008-08-06 蓝汛网络科技(北京)有限公司 基于内容分发网络的流媒体加速系统、方法及设备
CN102055650A (zh) * 2009-10-29 2011-05-11 华为技术有限公司 负载均衡方法及系统和管理服务器
US20120191778A1 (en) * 2011-01-26 2012-07-26 MMC Technology Inc. Content distribution network for supporting peer-to-peer live streaming
CN102204218A (zh) * 2011-05-31 2011-09-28 华为技术有限公司 数据处理方法、缓存节点、协作控制器及系统
CN103986976A (zh) * 2014-06-05 2014-08-13 北京赛维安讯科技发展有限公司 基于cdn网络的传输系统及方法
CN103997461A (zh) * 2014-06-13 2014-08-20 北京邮电大学 一种基于蚁群算法的内容中心网络缓存定位方法

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108449608A (zh) * 2018-04-02 2018-08-24 西南交通大学 双层缓存架构、对应块下载协议和在视频缓存的应用
CN108737500B (zh) * 2018-04-20 2022-02-25 青岛海尔科技有限公司 目标资源获取、提供方法、装置、存储介质与计算机设备
CN108737500A (zh) * 2018-04-20 2018-11-02 青岛海尔科技有限公司 目标资源获取、提供方法、装置、存储介质与计算机设备
CN108924579A (zh) * 2018-08-28 2018-11-30 深圳市网心科技有限公司 视频网络系统、回源网络节点设备、方法和存储介质
CN109688204A (zh) * 2018-12-05 2019-04-26 量子云未来(北京)信息科技有限公司 基于ndn网络的文件下载方法、装置、节点、终端
CN109688204B (zh) * 2018-12-05 2022-01-04 量子云未来(北京)信息科技有限公司 基于ndn网络的文件下载方法、节点、终端
CN112513830A (zh) * 2019-07-15 2021-03-16 华为技术有限公司 内容分发网络中的回源方法及相关装置
CN113132439A (zh) * 2019-12-31 2021-07-16 贵州白山云科技股份有限公司 一种数据处理方法和系统及边缘节点
CN113132439B (zh) * 2019-12-31 2023-04-21 贵州白山云科技股份有限公司 一种数据处理方法和系统及边缘节点
CN112751912A (zh) * 2020-12-15 2021-05-04 北京金山云网络技术有限公司 配置调整方法、装置及电子设备
CN112751912B (zh) * 2020-12-15 2021-12-03 北京金山云网络技术有限公司 配置调整方法、装置及电子设备
CN114615237A (zh) * 2022-03-22 2022-06-10 阿里巴巴(中国)有限公司 流媒体通信方法、系统、设备及存储介质
CN114615237B (zh) * 2022-03-22 2024-03-29 阿里巴巴(中国)有限公司 流媒体通信方法、系统、设备及存储介质

Similar Documents

Publication Publication Date Title
CN107277092A (zh) 内容分发网络及其数据下载方法
US10574772B2 (en) Content engine for mobile communications systems
US20210176307A1 (en) Content Delivery Method, Virtual Server Management Method, Cloud Platform, and System
KR20130088774A (ko) 분할 콘텐트 전달 시스템 및 방법
JP5092374B2 (ja) データセンタ及びデータ転送方法
CN103457993B (zh) 本地缓存装置和提供内容缓存服务的方法
CN103024593A (zh) 一种网络视频点播加速系统及其播放方法
CN105577549A (zh) 一种基于软件定义网络实现内容分发网络的方法及系统
CN101741884B (zh) 一种分布式存储方法和装置
US8250171B2 (en) Content delivery apparatus, content delivery method, and content delivery program
CN103430489B (zh) 内容分发网络中文件下载方法、装置和系统
CN102629938B (zh) 对网络视频加载进行视频加速的方法和系统
CN104284201A (zh) 一种视频内容的处理方法和装置
CN103634346B (zh) 网络数据中心的数据分发方法和系统
CN104052803A (zh) 一种去中心化的分布式渲染方法及渲染系统
CN105025391A (zh) 视频播放方法和装置
CN102439934A (zh) 一种cdn中边缘服务器的多级缓存管理方法与系统
US8086629B2 (en) Content delivery apparatus, content delivery method, and content delivery program
CN105871591A (zh) 一种分发cdn地址的方法及装置
CN104935653A (zh) 一种访问热点资源的旁路缓存方法和装置
CN106790552A (zh) 一种基于内容分发网络的内容提供系统
CN107071072A (zh) 一种处理对象存储高并发请求的分布式网关方法
CN113301079B (zh) 一种数据的获取方法、系统、计算设备及存储介质
CN106357539A (zh) 一种数据获取方法和设备
CN103095587B (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20171020

RJ01 Rejection of invention patent application after publication