CN105208059B - 一种内容分发方法、终端、服务器,及系统 - Google Patents
一种内容分发方法、终端、服务器,及系统 Download PDFInfo
- Publication number
- CN105208059B CN105208059B CN201410277379.0A CN201410277379A CN105208059B CN 105208059 B CN105208059 B CN 105208059B CN 201410277379 A CN201410277379 A CN 201410277379A CN 105208059 B CN105208059 B CN 105208059B
- Authority
- CN
- China
- Prior art keywords
- download
- information
- digital content
- content
- server
- 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
Links
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种内容分发方法、终端、服务器,及系统,其中方法的实现包括:向存储有数字内容资源索引的索引服务器发送资源请求,在所述资源请求中携带有请求下载的数字内容标识;接收所述数字内容标识对应的数字内容的至少两个下载信息,所述数字内容的至少两个下载信息对应至少两种不同的内容源;启动与所述数字内容的下载信息对应的协议,分别下载所述数字内容的各分片;将下载得到的所述数字内容的各分片组装为所述数字内容。提供了能够减少CDN服务器的部署,不再依赖于单一内容源,单一内容源也不再需要大量带宽来支持内容分发,缓解了带宽不足的压力,可以充分利用现有网络带宽,减少网络压力,节省数字内容的快速分发的成本。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种内容分发方法、终端、服务器,及系统。
背景技术
内容分发网络(Content Delivery Network,CDN)的基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的互联网基础之上的一层智能虚拟网络。CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决互联网(Internet)网络拥挤的状况,提高用户访问网站的响应速度。
数字内容以数字信息形式存在的文本、图像、声音等内容,它可以存储在如光盘、硬盘等数字载体上,并通过网络等手段传播。数字内容是将图像、文字、影音等内容通过数字技术进行整合应用的产品或服务的总体,是数字媒体技术与文化创意结合的产物。
网络带宽是指在一个固定的时间内(通常为1秒),能通过的最大位数据。就如高速公路的车道一样,带宽越大,好比车道越多。网络带宽作为衡量网络使用情况的一个重要指标,日益受到人们的普遍关注。它不仅是政府或单位制定网络通信发展策略的重要依据,也是互联网用户和单位选择互联网接入服务商的主要因素之一,也是计价和成本的最主要依据。网络带宽是用户接入互联网的基本保障,享受互联网服务,绝大部分都涉及到数字内容的传输和分发,同时网络服务器提供商业需要有一定的网络带宽才能为自己服务的用户保证一定的服务器质量,这些带宽的产生主要来源于服务器端的数据输出。
另外一种需要持续发布升级的情况是软件发布以后,随着功能的持续迭代或者软件出现安全漏洞等各种原因,需要发布新的软件安装包重新替换原来的安装包来发布更新的软件。比如通用的客户端软件,大型网络游戏或者移动应用软件(APPlication,App)都存在更新的要求,在应用下载更新时,如果很多人同时更新下载,那么服务器存在巨大的带宽压力,下载速度和性能也无法保证。比如网络游戏是最近几年互联网发展最快的领域,和传统的单机游戏不一样,现在主要的网络游戏采用内容源(Content Source,CS)模式结构,除了一个强大的网络游戏服务器端外,还有一个强大的网络游戏客户端。客户端的大小从几百M到几个G,文件都非常大,随着游戏新功能的增加游戏包含的多媒体数据信息变多,游戏包越来越大。升级需要的带宽越来越大。对于新发布的网络游戏或者升级补丁包,所有游戏的服务器商都通常期望在尽快的时间内完成游戏的升级和发布,减少用户下载和等待的时间。服务器输出带宽到几十G乃至上百G,峰值带宽的计费原则导致服务器的带宽还是很高,成本巨大。
随着计算机和互联网等信息技术的发展,海量的信息和内容被数字化,包括文本,图像,声音等各种各样的内容对应的有视频,电子杂志,软件应用,游戏等等,大量的数字内容需要有效快速分发到用户,这就涉及到高效的内容分发渠道和技术。目前互联网数字内容发行成为一个快速增长的领域。随着互联网使用率进一步提高,在线数字媒体内容快速膨胀,大量数字内容通过互联网进行流动。然而,由于网络运营商互之间的连接有一定限制,导致数字媒体内容获取仍然存在诸如反应时间慢迟滞和其它网络性能问题,宽带网络架构效率相对较低。
在互联网数字内容分发领域,目前主要是采用CDN技术实现数字内容的快速分发,内容分发网络(CDN)是一种新型网络内容服务体系,其基于互联网协议(InternetProtocol,IP)网络而构建,基于内容访问与应用的效率要求、质量要求和内容秩序而提供内容的分发和服务,通俗理解就是网站加速,中央处理器(Central Processing Unit,CPU)均衡负载,来解决跨运营商,跨地区,服务器负载能力过低,带宽过少等带来的网站文件传输速度慢等问题。CDN业务功能已由传统的网页(WEB)内容分发向视频、电视、游戏、应用软件等大量数字内容分发延伸。目前大的互联网内容发行商开始使用大量CDN服务器商帮助发布大的内容,CDN通过在现有的Internet中增加一层新的网络架构,通过智能化策略,将中心的内容发布到最接近用户、服务能力最好的网络"边缘"节点,使用户可以就近取得所需的内容,解决Internet网络拥塞状况,提高用户访问网站的响应速度。通常一个CDN服务器上可能在区域A和B服务器比较好,另外一个可能在区域B和C服务器比较好,如果需要覆盖A,B,C三个区域那么需要这2家服务商。那如果面向全部的用户,就可能需要更多的CDN服务商,所以通常一个文件分发过程中在互联网上存在很多副本(比如:辅助源、第三方的镜像资源、互连网上第三方网站提供、互联网业务提供商(Internet Service Provider,ISP)缓存服务器上提供的缓存等),由于不同CDN服务商提供的资源的链接可能不一样,或者同一个CDN服务器商在不同区域对于资源的链接也不一样,目前绝大部分的分发过程只能从单一链接源获取数据。
目前CDN在实现快速分发数字内容的过程中,需要在各区域部署大量的CDN服务器;另外,受限于基础网络带宽和效率,即使部署大量的CDN服务器也未必能实现快速分发数字内容的目的;而且,CDN基于CS架构,服务器需要网络带宽,导致实现快速分发数字内容的成本巨大。
发明内容
本发明实施例提供了一种内容分发方法、终端、服务器,及系统,用于实现数字内容的快速分发,减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容的快速分发的成本。
一种内容分发方法,包括:
向存储有数字内容资源索引的索引服务器发送资源请求,在所述资源请求中携带有请求下载的数字内容标识;
接收所述数字内容标识对应的数字内容的至少两个下载信息,所述数字内容的至少两个下载信息对应至少两种不同的内容源;
启动与所述数字内容的下载信息对应的协议,分别下载所述数字内容的各分片;
将下载得到的所述数字内容的各分片组装为所述数字内容。
一种内容分发方法,包括:
接收来自分发终端的资源请求,并获取所述资源请求中携带的数字内容标识,确定所述数字内容标识对应的数字内容;
查询所述数字内容对应的下载信息,得到与所述数字内容对应的至少两个下载信息;与所述数字内容对应的至少两个下载信息对应至少两种不同的内容源;
将与所述数字内容对应的至少两个下载信息发送给所述分发终端,用于所述分发终端下载所述数字内容。
一种内容分发方法,包括:
接收来自分发终端的数字内容的下载信息,对接收到的下载信息进行验证;
若验证通过,则将下载信息同步到存储有数字内容资源索引的索引服务器;
将验证通过的下载信息发送给下载集群服务器下载对应的数字内容,供分发终端从所述下载集群服务器下载所述数字内容。
一种内容分发方法,包括:
资源收集服务器接收来自分发终端的下载信息,并从所述下载信息中提取源地址内所包含的下载信息集合;
对所述下载信息集合内的下载信息进行去重处理,获得索引服务器中未包含的下载信息;
将去重后的下载信息发送给资源验证服务器。
一种分发终端,包括:
信息发送单元,用于向存储有数字内容资源索引的索引服务器发送资源请求,在所述资源请求中携带有请求下载的数字内容标识;
信息接收单元,用于接收所述数字内容标识对应的数字内容的至少两个下载信息,所述数字内容的至少两个下载信息对应至少两种不同的内容源;
下载单元,用于启动与所述数字内容的下载信息对应的协议,分别下载所述数字内容的各分片;
数据组装单元,用于将下载得到的所述数字内容的各分片组装为所述数字内容。
一种索引服务器,包括:
信息接收单元,用于接收来自分发终端的资源请求;
内容确定单元,用于获取所述资源请求中携带的数字内容标识,确定所述数字内容标识对应的数字内容;
信息查询单元,用于查询所述数字内容对应的下载信息,得到与所述数字内容对应的至少两个下载信息;与所述数字内容对应的至少两个下载信息对应至少两种不同的内容源;
信息下发单元,用于将与所述数字内容对应的至少两个下载信息发送给所述分发终端,用于所述分发终端下载所述数字内容。
一种资源验证服务器,包括:
接收信息单元,用于接收来自分发终端的数字内容的下载信息;
验证信息单元,用于对所述接收信息单元接收到的下载信息进行验证;
信息同步单元,用于若验证通过,则将下载信息同步到存储有数字内容资源索引的索引服务器;
发送信息单元,用于将验证通过的下载信息发送给下载集群服务器下载对应的数字内容,供分发终端从所述下载集群服务器下载所述数字内容。
一种资源收集服务器,包括:
下载信息接收单元,用于接收来自分发终端的下载信息;
集合信息提取单元,用于从所述下载信息中提取源地址内所包含的下载信息集合;
集合信息处理单元,用于对所述下载信息集合内的下载信息进行去重处理,获得索引服务器中未包含的下载信息;
一种内容分发系统,包括:
本发明实施例提供的任意一项的分发终端,以及本发明实施例提供的任意一项的索引服务器。
从以上技术方案可以看出,本发明实施例具有以下优点:在索引服务器中维护了数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例方法流程示意图;
图2为本发明实施例方法流程示意图;
图3为本发明实施例方法流程示意图;
图4为本发明实施例方法流程示意图;
图5为本发明实施例信令流向示意图;
图6A为本发明实施例分发终端结构示意图;
图6B为本发明实施例分发终端结构示意图;
图7为本发明实施例分发终端结构示意图;
图8为本发明实施例分发终端结构示意图;
图9为本发明实施例索引服务器结构示意图;
图10为本发明实施例索引服务器结构示意图;
图11为本发明实施例索引服务器结构示意图;
图12为本发明实施例资源验证服务器结构示意图;
图13为本发明实施例资源收集服务器结构示意图;
图14为本发明实施例资源收集服务器结构示意图;
图15为本发明实施例分发终端结构示意图;
图16为本发明实施例索引服务器结构示意图;
图17为本发明实施例资源验证服务器结构示意图;
图18为本发明实施例资源收集服务器结构示意图;
图19为本发明实施例系统结构示意图;
图20为本发明实施例系统结构示意图;
图21为本发明实施例终端结构示意图;
图22为本发明实施例服务器结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
除了CDN外还有点对点(Peer to Peer,P2P)技术等内容分发技术,用来提升数字内容的分发效率。P2P技术在文件共享和下载方面得到了广泛的应用。P2P一端的下载速度和另一端的上传速度密切相关,由于目前用户大多使用非对称数字用户线(AsymmetricalDigital Subscriber line,ADSL)上网,ADSL的上传速度并不快,仅几十K速度,一些用户还会人为限制上传速度,这导致了P2P方式的上传带宽资源的缺乏,因此用户会普遍感觉P2P的速度较慢。
比特流(BitTorrent)也是一种内容分发协议,它采用高效的软件分发系统和点对点技术共享大体积文件(如一部电影或电视节目),并使每个用户像网络重新分配结点那样提供上传服务。一般的下载服务器为每一个发出下载请求的用户提供下载服务,而BitTorrent的工作方式与之不同。分配器或文件的持有者将文件发送给其中一名用户,再由这名用户转发给其它用户,用户之间相互转发自己所拥有的文件部分,直到每个用户的下载都全部完成。这种方法可以使下载服务器同时处理多个大体积文件的下载请求,而无须占用大量带宽。
eMule(电驴)的客户端使用若干种网络来建立一个可靠的传输网络,每个下载的文件都会自动检查是否损坏,以确保文件的正确性。eMule允许使用非常复杂的布尔操作符来进行查询,使你更加灵活的搜索文件。运行eMule后,可双击连接服务器(也可以在选项中选择以后开启eMule后自动连接服务器)。连接成功之后,点击浏览器中的eD2k(一种文件共享网络)链接,eMule就可自动下载该链接的资源;也可以把链接复制到eMule中下载。
以上是可以作为内容分发的两种具体实现的举例,实际上还有很多内容分发方式可以应用于下载数据内容,再次不再一一举例。本发明实施例要实现各种不同内容源的整合,具体方案如下:
本发明实施例提供了一种内容分发方法,如图1所示,包括:
101:向存储有数字内容资源索引的索引服务器发送资源请求,在上述资源请求中携带有请求下载的数字内容标识;
在本发明实施例中,索引服务器负责统一管理数字内容资源的下载信息,下载信息以索引的形式存放,供查询。在本发明实施例中数字内容标识是用来唯一标识需要下载的数字内容的信息,这个信息在现网中可选很多,本发明实施例对此不予限定。
102:接收上述数字内容标识对应的数字内容的至少两个下载信息,上述数字内容的至少两个下载信息对应至少两种不同的内容源;
内容源是存有数据内容的设备,下载信息与之对应。下载信息用于确定如何从内容源下载信息,其包含的信息应遵循不同的内容源,例如使用的下载协议、通信方式等等。
103:启动与上述数字内容的下载信息对应的协议,分别下载上述数字内容的各分片;
在本发明实施例中,分发终端会接收到至少两种不同内容源的下载信息,那么分发终端可以在任意下载地址下载,也可以同时在多个地址下载,同时下载时会涉及到在各地址下载资源的分配问题,本发明实施例提供的解决方案如下:在分别下载上述数字内容的各分片之前,还包括:依据各下载信息对应协议的网络能力,将上述数字内容进行分片。
另外,在全部下载完毕之前,可能会出现有些分片很快下载完毕,有些分片下载缓慢的情况,这种情况下,本发明实施例提供了解决方案,通过重新分片的方式从下载快速的数据源下载未完成的分片,从而达到快速下载的目的,具体方案如下:上述方法还包括:在下载上述数字内容的各分片的过程中,若存在第一下载信息对应的数字内容的分片被下载完毕,第二下载信息对应的数字内容的分片未完成,则对未完成下载的分片进行二次分片,依据上述第二下载信息下载二次分片对应的数据内容的分片。
104:将下载得到的上述数字内容的各分片组装为上述数字内容。
本发明实施例,在索引服务器中维护了数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
进一步地,由于存在对数字内容进行分片,并且各分片的来源并不相同,在组装之前,还可以先进行校验保证数据内容的正确性,避免错误数据组装浪费数据处理资源,具体方案如下:在将下载得到的上述数字内容的各分片组装为上述数字内容之前,上述方法还包括:
对下载到的数字内容的分片进行校验,若校验结果为文件错误,则更换下载信息下载发生文件错误的数字内容的分片。
对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例为了避免错误数据内容在网络传输导致的资源浪费,节省网络资源,提出了如下解决方案,具体如下:若校验结果为文件错误,上述方法还包括:
向资源验证服务器和/或上述索引服务器发送校验错误信息,告知上述文件错误对应的数字内容的分片的校验结果。
在本发明实施例中,校验错误信息可以直接发送给索引服务器,使索引服务器对相应的下载信息进行删除处理,也可以发送给资源校验服务器进行校验后由资源校验服务器来确定数据源是否具有错误的数据内容,并决定是否需要将验证错误信息发送给索引服务器,使索引服务器对相应的下载信息进行删除处理,从而避免错误的下载信息在网络系统中传播。
在本发明实施例中,数字内容的下载过程,是一个持续一段时间的过程,在这个过程中会有一些下载相关的统计信息产生,例如各数据源的下载速度、下载时间、下载结果、文件大小、不同协议传输数据的比例等信息,这些信息对于网络侧的服务器而言可以用于做各种决策,例如:确定后续下发给分发终端的下载信息的侧重点,确定在主动收集网络资源过程中的侧重点等,因此本发明实施例基于此,提出了将统计信息上报的实现方案,具体如下:在下载上述数字内容的各分片之后,或者在下载上述数字内容的各分片过程中,上述方法还包括:
向资源收集服务器和/或上述索引服务器,发送各数字内容的各分片的下载统计信息;或者,向索引服务器注册本地资源地址。
在本发明实施例中,内容分发终端开始下载数据内容以后,其本地已经存放了相应的部分数据内容,因此该分发终端可以基于P2P技术作为一个内容源接入到网络,为其他分发终端提供数据内容的资源。因此本发明实施例还提供了分发终端主动注册本地资源地址的方案,进一步提高整个网络资源的利用率。
在本发明实施例中,索引服务器中的下载信息的来源可以是由数据内容的发布者主动配置的,也可以是网络侧的资源收集服务器搜集得到的,还可以是终端上报的;其来源丰富多样,但是仍然有可能出现分发终端在某次下载数据内容时,仅获得了一个下载信息的情况,这种情况通常来说下载的数据内容是一个新的数据内容,此种情况下终端可以主动将自身获得的数据内容贡献出来,将自身作为数据源为其它分发终端服务器,来提高网络资源利用率,具体方案如下:上述方法还包括:
若下载到的数字内容未对应两个或两个以上的下载信息,则计算下载到的数字内容的特征值,将上述特征值发送给资源验证服务器;若下载到的上述数字内容为种子文件,则将下载到的种子文件发送给资源验证服务器和/或上述索引服务器。
在本发明实施例中,下载信息可以是包括下载地址在内的各种与数据内容下载相关的信息,用于提供下载数据内容的依据,具体如下:上述下载信息包括:
与内容源对应的下载地址以及与内容源对应的下载协议。
基于本发明实施例的方案,下载协议可以突破各种网络协议之间的壁垒。下载协议与内容源是关联的,内容源不同,则可以包含多种不同的下载协议。从而实现在不同内容源实现下载的目的。目前已有的内容源种类繁多,例如基于C/S结构的数据服务器、基于P2P技术的资源节点,等等;具体的协议以及内容源的对应关系本领域技术人员是熟知的,本发明实施例对此不予赘述。
本发明实施例还提供了另一种内容分发方法,如图2所示,包括:
201:索引服务器接收来自分发终端的资源请求,并获取上述资源请求中携带的数字内容标识,确定上述数字内容标识对应的数字内容;
在本发明实施例中数字内容标识是用来唯一标识需要下载的数字内容的信息,这个信息在现网中可选很多,本发明实施例对此不予限定。
202:查询上述数字内容对应的下载信息,得到与上述数字内容对应的至少两个下载信息;与上述数字内容对应的至少两个下载信息对应至少两种不同的内容源;
203:将与上述数字内容对应的至少两个下载信息发送给上述分发终端,用于上述分发终端下载上述数字内容。
本发明实施例,在索引服务器中维护了数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
下载信息与内容源是对应的,内容源所包含的数据内容有可能是整个数据内容的文件,也可能包含一部分的数据内容,因此对于不同的情况可以有不同的解决方案,对于索引服务器而言,本发明实施例提供的解决方案如下:上述与上述数字内容对应的至少两个下载信息包括:与数字内容的分片对应的至少两个下载信息,和/或,与数字内容的每一个分片对应的至少两个下载信息。
对于索引服务器而言,维护的可以是整个数字内容的下载信息的索引,也可以是所有各数据分片的下载信息的索引。由于内容源很多,遵循的协议类型可能也很多,因此索引可能是多个双向映射关系的索引。
在网络中,可能存在数据内容错误的情况,这种情况下,内容分发终端在下载完毕数据内容以后是可以发现的;在网络侧还可以设置相应的服务器对网络中的数据内容进行校验,来确定是否存在数据内容错误的情况。对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例为了避免错误数据内容在网络传输导致的资源浪费,节省网络资源,提出了如下解决方案,具体如下:上述方法,还包括:接收校验错误信息,从上述校验错误信息中获取发生文件错误对应的下载信息,删除发生文件错误对应的下载信息。
在本发明实施例中,索引服务器中的下载信息的来源可以是由数据内容的发布者主动配置的,也可以是网络侧的资源收集服务器搜集得到的,还可以是终端上报的;其来源丰富多样,但是仍然有可能出现分发终端在某次下载数据内容时,仅获得了一个下载信息的情况,这种情况通常来说下载的数据内容是一个新的数据内容,此种情况下终端可以主动将自身获得的数据内容贡献出来,将自身作为数据源为其它分发终端服务器,来提高网络资源利用率。另外,本发明实施例还提供了由资源服务器来同步下载信息的方案,具体方案如下:上述方法,还包括:
接收资源验证服务器发送的与数字内容对应的下载信息,将接收到的下载信息更新到数据库中。
资源验证服务器获得的下载信息来源也可以是多种多样的,例如在本发明实施例中,由分发终端上报新资源的下载信息以后由验证服务器验证;也可以是由专门的资源收集服务器进行相关的下载信息的资源收集,然后由资源收集服务器将下载信息更新/同步到资源验证服务器,由资源验证服务器进行验证后发送给索引服务器。因此,在本发明实施例中,下载信息的来源可以设置得较多的来源,使索引服务器能够对全网具有的数据内容有较全的收录,从而为实现快速的内容分发提供支持。
本发明实施例还提供了另一种内容分发方法,如图3所示,包括:
301:资源验证服务器接收来自分发终端的数字内容的下载信息,对接收到的下载信息进行验证;
302:若验证通过,则将下载信息同步到存储有数字内容资源索引的索引服务器;
303:将验证通过的下载信息发送给下载集群服务器下载对应的数字内容,供分发终端从上述下载集群服务器下载上述数字内容。
本发明实施例,资源验证服务器为所有服务器提供下载信息,使索引服务器中维护数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例为了避免错误数据内容在网络传输导致的资源浪费,节省网络资源,验证服务器可以将验证错误的信息发送给索引服务器,使索引服务器删除这些下载信息。
资源验证服务器获得的下载信息来源也可以是多种多样的,例如在本发明实施例中,由分发终端上报新资源的下载信息以后由验证服务器验证;也可以是由专门的资源收集服务器进行相关的下载信息的资源收集,然后由资源收集服务器将下载信息更新/同步到资源验证服务器,由资源验证服务器进行验证后发送给索引服务器。因此,在本发明实施例中,下载信息的来源可以设置得较多的来源,使索引服务器能够对全网具有的数据内容有较全的收录,从而为实现快速的内容分发提供支持。前一实施例中,采用分发终端上报的方式实现,本实施例基于此进一步提供了由资源收集服务器提供下载信息的方案,具体如下:上述方法还包括:接收来自资源收集服务器的下载信息。
在本发明实施例中,资源验证服务器在收到下载信息后,均需要对下载信息进行验证,以保证同步到索引服务器的下载信息的正确性,减少错误信息在网络中的传输,从而节省网络资源,提升网络资源的利用效率。
本发明实施例还提供了另一种内容分发方法,如图4所示,包括:
401:资源收集服务器接收来自分发终端的下载信息,并从上述下载信息中提取源地址内所包含的下载信息集合;
下载信息的集合内包含的成员是下载信息,来自分发终端下载信息通常会来源于某一具体的源地址,在这个源地址中可能会有很多的地址供下载,例如:各种下载网站会包含有很多类型的下载地址,不同网络服务商、相同网络服务商的不同区域服务器、特定下载软件对应的地址、或者种子等各种下载信息;本步骤可以对源地址进行信息提取来获得下载信息的集合。
402:对上述下载信息集合内的下载信息进行去重处理,获得索引服务器中未包含的下载信息;
由于在索引服务器中可能已经有一些下载信息与下载信息集合中的下载信息相同,如果不去重,将会导致资源验证服务器不必要的验证以及下载集群服务器的重复下载,浪费网络资源。本发明实施例通过去重处理,可以避免资源验证服务器不必要的验证操作,也可以避免下载集群服务器不必要的数据内容下载,因此可以提升网络资源的使用效率。
403:将去重后的下载信息发送给资源验证服务器。
本发明实施例,资源收集服务器主动收集网络中的下载信息,发送给资源验证服务器。这样,可以使得资源验证服务器获得丰富的下载信息,资源验证服务器则可以相应的为索引服务器提供下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
在本发明实施例中,资源收集服务器需要从上述下载信息中提取源地址内所包含的下载信息集合,本发明实施例给出了具体的实现方式,具体如下:上述从上述下载信息中提取源地址内所包含的下载信息集合包括:指示网络爬虫爬取上述下载信息对应源地址内所包含的下载信息集合。
使用网络爬虫爬去页面信息的方案本发明实施例不予赘述,在爬去到源地址的页面后,可以获取其中的下载信息,例如:URL信息。
在本发明实施例中,资源收集服务器可能会收到众多的下载信息,然后确定众多的源地址,因此对于资源收集服务器而言如果都及时处理的话可能会有高的压力,为了减轻这种压力,使数据收集更有效率,本发明实施例提供了如下解决方案,具体如下:上述方法,还包括:接收来自分发终端的下载统计信息,依据下载统计信息确定下载统计信息对应源地址的优先级;
上述从上述下载信息中提取源地址内所包含的下载信息集合包括:
按照确定的源地址的优先级从高到底,依次从下载信息中提取源地址内所包含的下载信息集合。
本发明实施例通过源地址的优先级,确定哪些源地址优先处理,这样可以使更有效的源地址中的下载信息尽快更新到索引服务器。在本发明实施例中,数字内容的下载过程,是一个持续一段时间的过程,在这个过程中会有一些下载相关的统计信息产生,例如各数据源的下载速度、下载时间、下载结果、文件大小、不同协议传输数据的比例等信息,这些信息对于网络侧的服务器而言可以用于做各种决策,例如:确定在主动收集网络资源过程中的侧重点。
以下实施例将结合实际应用中的几种具体协议对本发明实施例进行更详细的举例说明。
一、协议说明如下:
本发明实施例主要涉及的协议有:HTTP,Bt、eMule,以及Magnet传输协议,分别说明如下:
HTTP(HyperText Transfer Protocol,超文本传输协议)是互联网上应用较为广泛的一种网络协议,目前网络上文件内容的传播很多是直接提供HTTP下载方式。它是一个客户端和服务器端请求和应答的标准:传输控制协议(Transmission Control Protocol,TCP。客户端是终端用户,服务器端是网站。客户端发起一个到服务器上指定端口(默认端口为80)的HTTP请求。,请求方式的格式为:统一资源标识符(Uniform Resource Locator,URL)、协议版本号,后边是多用途互联网消息扩展协议(Multipurpose Internet MailExtensions,MIME)信息包括请求修饰符、客户机信息和可能的内容。
BitTorrent是一种内容分发协议。它采用高效的软件分发系统和点对点技术共享大体积文件,并使每个用户像网络重新分配结点那样提供上传服务。根据BitTorrent协议,文件发布者会根据要发布的文件生成提供一个.torrent文件,即种子文件。torrent文件本质上是文本文件,包含追踪系统(Tracker)信息和文件信息两部分。Tracker信息主要是BT下载中需要用到的Tracker服务器的地址和针对Tracker服务器的设置,文件信息是根据对目标文件的计算生成的。Bt下载协议的另外一种协议变种称为Magent“磁力链接”,它的主要作用是识别BT种子,这种链接是通过不同文件内容的Hash(哈希)结果生成一个纯文本的“数字指纹”,来识别文件的。
eMule下载协议ed2k全称叫“eDonkey2000network”,是一种文件共享网络,最初用于共享音乐、电影和软件。与多数文件共享网络一样,它是分布式的;文件基于P2P原理存放于用户的电脑上而不是存储于一个中枢服务器。eMule支持并且可以产生复杂的链接,通常比较典型的eMule下载链接有如下格式:ed2k:|file|<文件名称>|<文件大小>|<文件哈希值>|/,一个eD2k链接包含必要的文件描述像是名称,大小及哈希值形成基本的格式,只要有文件Hash值和文件大小就可以构造一个基本的下载链接从eMule网络中下载对应的文件
发明人对背景技术中技术方案存在的技术问题,结合相关协议以及与本发明实施例方案的对比进行了分析,具体如下:数字内容分发过程中使用的CDN及辅助的p2p传输技术,没有充分实现网络上数字资源的无缝共享,还有很大的提升。总结一下,目前数字内容分发技术主要存在如下问题:
现在的CDN数字内容分发技术将服务能力和服务内容在网络上进行了分布,但由于其核心仍然是基于C/S的架构,其服务的扩展能力取决于分布节点的不断部署,由此造成了CDN服务能力扩展的成本非常高,需要不断的投资。同时,用户访问具有随意性以及突发性等特点的,而传统CDN系统不具备弹性动态扩展的能力,难以从根本上提升CDN系统的效率。
分发过程中的CDN带宽都是需要付出成本的,数字内容的种类和类型越来越多,而且内容的发展比网络等基础设施的改善速度更快,用户需求超越了分发能力,导致内容提供商巨大的分发负担,高峰时期数字内容分发带宽成本巨大,由于ISP的互联互通的原因,跨越ISP互联的带宽成本和连通速度效率都无法保证,带宽增长需求超过了基础设施建设的速度;
同一个文件在网络上不同分发协议之间是没有整合和打通,不需要付费的带宽和成本并没有合理利用。对于HTTP协议,不同分发渠道的多家CDN不同链接是相互隔离的,这些提供同一个文件分发的多个源是无法共享的;
另外P2P网络没有充分利用,实际文件分发过程中,一个文件可能以HTTP方式分发,也可以以BT或者eMule协议分发,但是目前的技术当中,不同分发协议无法兼容,比如一个文件如果以HTTP形式发布,但是这个文件在Bt或者eMule网络中存在缺并不能提供数据上传服务,能够贡献资源的节点是无法利用的。网络上能够进行主流文件分发协议的BtTracker协议及eMule协议的edonkey服务器也是分离的,同一个文件在不同服务器上索引,用户之间是不通的,它们下载的同一个文件之间的peer也无法共享,从而无法进一步发挥p2p网络的威力。
针对以上问题,本发明实施例提供了如下解决方案,请参阅图5所示的信令流向图。
如上图5所示的基于互联网数字内容快速分发系统,在服务器一侧主要包含:资源索引整合系统,资源入库验证系统和资源主动收集系统(分别对应索引服务器、验证服务器、资源收集服务器)。在实际网络架构中,服务器的功能是可以按照需要进行拆分和组合的,因此图5所示的网络架构以及功能划分不应理解为对本发明实施例的唯一性限定。以下实施例将就图5所示的网络架构以及功能划分进行详细说明。
在本实施例中所称的资源主要是指互联网上标识各类资源文件的资源定位符比如URL,对应的就是HTTP下载链接,或者eMule传输协议的ed2k协议,或者Bitorrent协议的Bt种子文件及Magnet磁力链协议等等。数字内容分发的过程当中,除了在CDN等构造的服务器中获取资源以外,还通过其他类型的协议从分发终端等处获得资源。
其中资源索引整合系统主要包括:资源索引数据库和文件校验数据库及资源查询接口服务器。所有资源文件都会需要生成唯一的标识,通常是SHA或者Md5,由于SHA是20个字节,目前通常使用SHA做唯一标识。这里所说的资源索引,通常是指下载完成一个完整的文件时包含的标识信息索引。一个完整的索引主要包括:原始链接信息,链接对应文件的唯一标识SHA,链接对应文件的Md4标识别,如果是Bt文件结合需要记录Bt内部每一个具体文件的SHA和md4值,链接所属协议的类型,对应链接的URL的SHA,如果Bt种子文件需要记录Bt种子文件的Torrent(种子)特征码和文件的具体序列号。
最后在资源索引整合系统中形成了一个如下的多重链接映射关系:
Urlhash(HTTP链接)《==》FileHashSHA(文件内容的Hash)《==》FileMd4(ed2k链接)《==》TorrentNo(BT种子特征码加序号,magnet协议最终也转换为Bt种子)《==》TorrentFileHash(Bt内部种子文件对应的Hash)
在多重廉洁映射关系中,可以包括一对一和一对多2种映射关系,通过上面的映射关系链条可以将不同网络分发协议双向打通,相互传输数据。
以下实施例将重点介绍互联网数字内容快速分发方法和系统各个模块的主要功能,可以参阅图5所示,具体如下:
一.分发终端:
(1)、分发终端通过资源索引接口服务器向资源索引接口服务器汇报自身在线情况和本地拥有的资源信息(主动注册资源地址),主要包括资源唯一的标识,自身的服务地址和端口。
另外,分发终端还通过资源分发入口链接(可以是URL,BT种子文件或者ed2k链接)向资源索引接口服务器查询多资源url,ed2k链接和Bt种子,文件Hash及文件校验信息,同时向Tracker服务器查询Peer;从而获得多源下载地址。
(2)、分发终端在获得多源链接和peer信息后,在分发终端本地启动相应的协议下载模块或者部分协议模块,开始通过这些协议传输文件的不同部分进行具体下载。
对于一次下载行为,按照查询索引的情况,启动HTTP、p2p、Bt和/或eMule协议下载。在下载过程中,可以将数据内容的文件的不同分片分发给不同下载协议下载,通常的分配原则可以是依据不同协议的下载能力来分配和调整。比如:1个1G的数据内容的文件,可以分成三段分别给HTTP、eMule、BT下载,那个模块先下载完毕分配给自己的任务,则可以继续分配剩下的未完成的分片进行下载。分发终端可以支持上述传输的所有协议,也可以只支持一部分协议,按照分发终端需要的模块大小来决定。
(3)、分发终端完成下载任务后,向统计服务器上报统计相关信息,具体可以是:汇报本次下载任务的下载时间、下载速度、下载结果、文件大小,不同协议传输数据比例和速度等信息,下载不动的时候,也同步上报当前的下载状况。
(4)、分发终端在下载过程,当中发现下载到完成的数据内容的分片后,对下载完成的数据内容的分片进行校验,如果发现分片错误,可以向统计服务器上报。对下载完成的数据内容的分片进行校验的方法可以如下:如果能够获得Bt或者eMule网络中的校验信息就优先使用该校验信息进行校验,否则可以使用从资源索引接口服务器查询到的分片校验信息验证文件的正确性。
(5)、分发终端在下载完成一个文件后,如果是新文件(也就是在资源索引整合系统中没有查询到对应的hash,或者md4,或者是新的Bt种子文件),分发终端可以计算相应的hash特征值,上报给资源入库验证系统的资源验证服务器,完成新资源上报。
如果是新的Bt种子文件,则可以直接上传给资源入库验证系统。资源入库验证系统在去重后同步保存到资源索引数据库中。
二、资源索引整合系统:
A:资源索引接口服务器:
(1)、接收分发终端通过Url作为索引的入口查询文件Hash;
(2)、接收分发终端通过Url作为索引的入口查询下载的多Url资源集合,ed2k链接和BT种子信息;
(3)、提供文件分片校验信息,供位于分发终端的下载客户端校验下载数据的有效性和正确性;
(4)、接收分发终端通过ed2k作为索引的入口查询下载的多Url资源集合和Bt种子信息;
(5)、接收分发终端通过Bt种子特征值作为索引的入口查询下载的多Url资源集合和ed2k链接信息;
(6)、向资源索引整合系统查询各种hash标识之间映射的转换关系,将下载链接来源的引用页(源地址所在的页)推送给资源主动收集系统作为主动爬取资源收录链接的入口,完成资源推送。
B:资源索引数据库:
(1)、保存HTTP下载协议,url与文件hash及文件Hash到对应下载url集合的映射关系;
(2)、保存eMule下载协议当中,md4的eMule文件特征值文件对应文件hash之间的双向映射关系;
(3)、保存Bt种子文件的torrent特征码和Bt文件序号组成的主键到对应文件内容Hash的映射,同时记录文件hash到对应Bt种子集合的映射,同一个文件hash可能在多个Bt种子文件中存在,这里对应是Bt种子文件的torrent特征码,通过torrent特征码可以查询到对应的种子文件;实际实现的时候可以记录每个Bt种子中间文件对应下载的速度,在有多个Bt种子供选择的时候,选择平均下载速度最高的一个,如果没有多个,就直接用存在的那一个;
(4)、支持资源入库验证系统和分发终端上报资源的主动同步入库,增加数据库中的数据映射记录。
C:文件校验数据库:
保存文件校验信息,为了确保文件下载的正确性需要记录文件每个分片大小的校验Hash,通常按照文件大小选择不同分片,通常最小是32KB,然后是64KB,128KB,直至512KB,超过4G以上的文件大小,就固定总分片为8K片,数据分片的大小可以动态变化,确保文件校验信息大小是固定的,每个文件计算一个Md5校验值,最终保存在文件校验数据库当中。
数据文件大小和具体分片大小的划分规则,可以选择下面的方案:
K=1024;M=K*K;
if(文件大小FileSize<=2*M)return 32K;
else if(文件大小FileSize<=20*M)return 64K;
else if(文件大小FileSize<=200*M)return 128K;
else if(文件大小FileSize<=1024*M)return 256K;
else if(文件大小FileSize<=(4096*M)return 512K;
else return(文件大小FileSize+8192*K-1)/(8192*K);
由于下载过程当中文件来自不同协议和不同的服务器,为了确保文件最终的正确性,需要验证每一个完成分片是否正确,不正确就会丢弃,重新下载。
三、资源索引接口服务器:
(1)、分发终端查询多资源索引信息的入口,也作为资源主动收集系统查询资源是否重复入库的入口;
(2)、将资源引用页信息主动推送给资源主动收集系统作为资源收集的起始链接。
四、资源入库验证系统:
A、资源上报系统:
(1)、接收分发终端下载中无法进行多资源(没有收录资源,即新资源)信息的上报。包括:URL链接,ed2k链接,Bt种子或者Magnet协议,及文件大小,Hash标识,分片校验信息;
(2)、接收分发终端Bt种子文件的上传,在上传Bt中接受查询是否存在对应的Bt种子文件;
(3)、如果分发终端下载过程中发现从下载链接下载的数据内容与校验信息不一致,则将对应信息提交给资源验证服务器进行相关的验证处理,确保资源索引数据库的一致性。
B、资源验证服务器:
(1)、接收资源上报服务器提交的资源验证请求,包括:文件大小异常,文件链接对应文件内容发生变化,链接传输错误数据或者链接连通性等能够表示资源链接下载性能和质量的指标。资源验证服务器还从资源链接存储服务器的数据库中取出待验证的资源放入到资源队列中,由下载集群服务器的进程从资源队列中取出资源来进行验证并上报。对于爬虫的资源,在资源验证服务器的表中有一个三段或者全文的字段来区分是进行全文或者三段的下载,即:采用部分还是全文Hash进行验证;
(2)、接收资源主动收集系统爬取的网络上的资源链接,同时将这些链接信息及分发终端上报的信息分发给下载集群服务器,由下载集群服务器按照对应的协议,下载对应文件的部分内容或者全部内容,并且计算文件对应的标识及分片信息。
对于资源上报系统推送过来的资源,可以根据是新资源上报和更新索引的资源的情况不同,分发到不同的下载集群服务器上进行验证,从而提高新资源的验证的反应速度,将验证的结果信息同步给资源索引整合系统的资源索引数据库和文件索引数据库当中,同时更新资源索引数据库内存中相关的资源映射记录;验证过程中如果有多个分发终端上报同一个文件不同的验证信息,则可以采用少数服从多数的原则,以大多数分发终端上报的信息为标准。
C、下载集群服务器:
(1)、接受资源验证服务器分发的下载验证任务,然后按照不同的协议从源链接下载原始文件,供分发终端通过互联网下载。
五、资源主动收集系统:
A、资源爬虫控制服务器:
资源爬虫控制服务器是整个系统中最复杂的模块,它的功能如下:
接收资源索引接口服务器推送(下载文件的源地址页,通常还可能包含用户想要的链接)的资源以及资源链接存储服务器推送的更新爬取的资源。资源爬虫控制服务器将这些源地址页按照热门站点和一般站点分别放到不同的文件队列中,还可以在站点内部分为不同优先级,从这些队列中不断取出需要爬取的资源链接推送给资源爬虫服务器进行爬取,然后根据资源爬虫服务器返回的爬取结果更新资源链接信息和对应站点信息。
资源爬虫服务器爬取站点优先级的参考因素可以包括如下几点:
站点下载成功率,站点二进制链接率,站点二进制链接重复率,站点下载成功率,站点二进制链接率,站点二进制链接重复率;
以上参数均有最小值:
m_ucMinDownSuccessRate;
m_ucMinNeededUrlRate;
m_ucMinRepeatNeededUrlRate;
当作为参考的参数小于这个最小值,可以返回到黑名单。这些最小值对应着三类不受欢迎的站点。优先级的技术公式可以如下:
优先级=(站点下载成功率–最小下载成功率)*下载成功率的权值/归一化下载成功率+(站点二进制链接率-最小站点二进制链接率)*二进制链接率的权值/归一化二进制连接率;
以上优先级计算公式中,需要取值的参数通常是又技术人员设定或者依据对应站点的历史链接下载情况的统计值来决定。最小下载成功率通常不能低于10%,网站能下载的二进制链接不能低于5%,具体参数可以依据业务需要和爬虫能力进行调整。
B、资源链接存储服务器:
资源链接存储服务器的功能是把资源爬虫控制服务器推送的链接信息存在数据库中,并在适当的时候把存在数据库中的链接信息提取出来推送给资源爬虫控制服务器做更新爬取或者主动验证爬取;
在资源链接存储的服务器的数据库中,每个链接存储的信息通常可以包括如下信息:
(1)、urlhash:对url做md5产生;
(2)、urlLinkDepth:当前url爬取的深度;
(3)、urlDownloadResult:爬取的结果;
(4)、urlLastDownloadTime:上次爬取的时间;
(5)、ProcesLink:产生的连接数;
(6)、ProcesNeedLink:产生的二进制链接数;
(7)、FileSize:url对应资源文件大小;
(8)、FileHash[SHA1_LENGTH]:url对应文件的hash;
(9)、urlPriority:url优先级;
(10)、SiteHash:url对应站点的hash;
(11)、UrlSize:url长度;
(12)、Url[MAX_URL_LENGTH]:url的具体内容。
C、资源爬虫服务器:
(1)、资源爬虫服务器接收资源爬虫控制服务器推送的资源链接的原始信息,通常是配置的一些热门的下载网站比如国内各大下载网站,或者大型的门户网站为起始爬取点,然后利用资源链接下载库下载链接对应的网页,分析网页中的可以下载的二进制链接,把这些链接存下来连同链接信息、是否下载过的信息等,一起发回给资源爬虫控制服务器;
(2)、对于资源爬虫服务器,由于需要爬取的链接很多,对Url存储后需要对Url进行更新爬取,为了区别Url更新爬取的频繁程度,对Url设置了优先级,从0~99优先级越来越大,分别对应到100个文件队列。一个Url的优先级就是它的域名对应站点的优先级。
六.统计服务器:
接收客户端在下载完成和/或下载过程中上报的下载统计信息,例如:Url下载速度,下载时间,连通情况,下载结果,文件大小等信息,统计服务器可以将这些下载信息转换为流水日志,然后发送给资源索引整合系统以及资源爬虫控制服务器进行决策使用。
通过本发明实施例的方案,相比于背景技术中的方案,至少具有如下有益效果:
1、整合互联网上的数字内容,将各种不同协议之间实现双向打通,通过其中任何一个协议分发收内容的时候都可以从其他协议中获取数据,不同的下载协议实现完全的无缝整合;
2、极大提升分发效率和速度,内容分发过程中数据来源渠道多元化,由于多源链接的收录和跨越协议的整合,使得内容分发过程的速度和成功率比依靠单一分发源会提升很多,索引单独的验证和筛选机制也确保多源的有效和服务质量;
3、降低了内容分发成本和缓解源带宽压力。避免带宽不足影响网络服务商的服务能力,束缚了互联网业务的发展的瓶颈。可以有效节省服务商的网络带宽资源,减少网络压力,使得发展相对滞后的网络基础设施对互联网产业发展的掣肘效应有了一定程度上的缓解。
本发明实施例还提供了一种分发终端,如图6A所示,包括:
信息发送单元601,用于向存储有数字内容资源索引的索引服务器发送资源请求,在上述资源请求中携带有请求下载的数字内容标识;
信息接收单元602,用于接收上述数字内容标识对应的数字内容的至少两个下载信息,上述数字内容的至少两个下载信息对应至少两种不同的内容源;
下载单元603,用于启动与上述数字内容的下载信息对应的协议,分别下载上述数字内容的各分片;
数据组装单元604,用于将下载得到的上述数字内容的各分片组装为上述数字内容。
在本发明实施例中,索引服务器负责统一管理数字内容资源的下载信息,下载信息以索引的形式存放,供查询。在本发明实施例中数字内容标识是用来唯一标识需要下载的数字内容的信息,这个信息在现网中可选很多,本发明实施例对此不予限定。
内容源是存有数据内容的设备,下载信息与之对应。下载信息用于确定如何从内容源下载信息,其包含的信息应遵循不同的内容源,例如使用的下载协议、通信方式等等。
本发明实施例,在索引服务器中维护了数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
在本发明实施例中,分发终端会接收到至少两种不同内容源的下载信息,那么分发终端可以在任意下载地址下载,也可以同时在多个地址下载,同时下载时会涉及到在各地址下载资源的分配问题,本发明实施例提供的解决方案如下:进一步地,如图6B所示,上述分发终端还包括:
分片控制单元605,用于在分别下载上述数字内容的各分片之前,依据各下载信息对应协议的网络能力,将上述数字内容进行分片。
另外,在全部下载完毕之前,可能会出现有些分片很快下载完毕,有些分片下载缓慢的情况,这种情况下,本发明实施例提供了解决方案,通过重新分片的方式从下载快速的数据源下载未完成的分片,从而达到快速下载的目的,具体方案如下:进一步地,上述分片控制单元605,还用于在下载上述数字内容的各分片的过程中,若存在第一下载信息对应的数字内容的分片被下载完毕,第二下载信息对应的数字内容的分片未完成,则对未完成下载的分片进行二次分片;
上述下载单元603,还用于依据上述第二下载信息下载二次分片对应的数据内容的分片。
进一步地,由于存在对数字内容进行分片,并且各分片的来源并不相同,在组装之前,还可以先进行校验保证数据内容的正确性,避免错误数据组装浪费数据处理资源,具体方案如下:如图7所示,上述分发终端还包括:
校验单元701,用于在上述数据组装单元604将下载得到的上述数字内容的各分片组装为上述数字内容之前,对下载到的数字内容的分片进行校验;
上述下载单元603,还用于若上述校验单元701校验结果为文件错误,则更换下载信息下载发生文件错误的数字内容的分片。
对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例为了避免错误数据内容在网络传输导致的资源浪费,节省网络资源,提出了如下解决方案,具体如下:进一步地,上述信息发送单元601,还用于若上述校验单元701确定校验结果为文件错误,则向资源验证服务器和/或上述索引服务器发送校验错误信息,告知上述文件错误对应的数字内容的分片的校验结果。
在本发明实施例中,验错误信息可以直接发送给索引服务器,使索引服务器对相应的下载信息进行删除处理,也可以发送给资源校验服务器进行校验后由资源校验服务器来确定数据源是否具有错误的数据内容,并决定是否需要将验证错误信息发送给索引服务器,使索引服务器对相应的下载信息进行删除处理,从而避免错误的下载信息在网络系统中传播。
在本发明实施例中,数字内容的下载过程,是一个持续一段时间的过程,在这个过程中会有一些下载相关的统计信息产生,例如各数据源的下载速度、下载时间、下载结果、文件大小、不同协议传输数据的比例等信息,这些信息对于网络侧的服务器而言可以用于做各种决策,例如:确定后续下发给分发终端的下载信息的侧重点,确定在主动收集网络资源过程中的侧重点等,因此本发明实施例基于此,提出了将统计信息上报的实现方案,具体如下:进一步地,上述信息发送单元601,还用于在下载上述数字内容的各分片之后,或者在下载上述数字内容的各分片过程中,向资源收集服务器和/或上述索引服务器,发送各数字内容的各分片的下载统计信息;或者,向索引服务器注册本地资源地址。
在本发明实施例中,内容分发终端开始下载数据内容以后,其本地已经存放了相应的部分数据内容,因此该分发终端可以基于P2P技术作为一个内容源接入到网络,为其他分发终端提供数据内容的资源。因此本发明实施例还提供了分发终端主动注册本地资源地址的方案,进一步提高整个网络资源的利用率。
在本发明实施例中,索引服务器中的下载信息的来源可以是由数据内容的发布者主动配置的,也可以是网络侧的资源收集服务器搜集得到的,还可以是终端上报的;其来源丰富多样,但是仍然有可能出现分发终端在某次下载数据内容时,仅获得了一个下载信息的情况,这种情况通常来说下载的数据内容是一个新的数据内容,此种情况下终端可以主动将自身获得的数据内容贡献出来,将自身作为数据源为其它分发终端服务器,来提高网络资源利用率,具体方案如下:进一步地,如图8所示,上述分发终端还包括:
计算单元801,用于若下载到的数字内容未对应两个或两个以上的下载信息,则计算下载到的数字内容的特征值;
上述信息发送单元601,还用于将上述特征值发送给资源验证服务器;若下载到的上述数字内容为种子文件,则将下载到的种子文件发送给资源验证服务器和/或上述索引服务器。
在本发明实施例中,下载信息可以是包括下载地址在内的各种与数据内容下载相关的信息,用于提供下载数据内容的依据,具体如下:上述下载信息包括:
与内容源对应的下载地址以及与内容源对应的下载协议。
基于本发明实施例的方案,下载协议可以突破各种网络协议之间的壁垒。下载协议与内容源是关联的,内容源不同,则可以包含多种不同的下载协议。从而实现在不同内容源实现下载的目的。目前已有的内容源种类繁多,例如基于C/S结构的数据服务器、基于P2P技术的资源节点,等等;具体的协议以及内容源的对应关系本领域技术人员是熟知的,本发明实施例对此不予赘述。
本发明实施例还提供了一种索引服务器,如图9所示,包括:
信息接收单元901,用于接收来自分发终端的资源请求;
内容确定单元902,用于获取上述资源请求中携带的数字内容标识,确定上述数字内容标识对应的数字内容;
信息查询单元903,用于查询上述数字内容对应的下载信息,得到与上述数字内容对应的至少两个下载信息;与上述数字内容对应的至少两个下载信息对应至少两种不同的内容源;
信息下发单元904,用于将与上述数字内容对应的至少两个下载信息发送给上述分发终端,用于上述分发终端下载上述数字内容。
在本发明实施例中数字内容标识是用来唯一标识需要下载的数字内容的信息,这个信息在现网中可选很多,本发明实施例对此不予限定。
本发明实施例,在索引服务器中维护了数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
下载信息与内容源是对应的,内容源所包含的数据内容有可能是整个数据内容的文件,也可能包含一部分的数据内容,因此对于不同的情况可以有不同的解决方案,对于索引服务器而言,本发明实施例提供的解决方案如下:可选地,上述信息查询单元903,用于查询到的上述与上述数字内容对应的至少两个下载信息包括:与数字内容的分片对应的至少两个下载信息,和/或,与数字内容的每一个分片对应的至少两个下载信息。
对于索引服务器而言,维护的可以是整个数字内容的下载信息的索引,也可以是所有各数据分片的下载信息的索引。由于内容源很多,遵循的协议类型可能也很多,因此索引可能是多个双向映射关系的索引。
在网络中,可能存在数据内容错误的情况,这种情况下,内容分发终端在下载完毕数据内容以后是可以发现的;在网络侧还可以设置相应的服务器对网络中的数据内容进行校验,来确定是否存在数据内容错误的情况。对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例为了避免错误数据内容在网络传输导致的资源浪费,节省网络资源,提出了如下解决方案,具体如下:进一步地,如图10所示,上述信息接收单元901,还用于接收校验错误信息;上述索引服务器还包括:
信息删除单元1001,用于从上述校验错误信息中获取发生文件错误对应的下载信息,删除发生文件错误对应的下载信息。
在本发明实施例中,索引服务器中的下载信息的来源可以是由数据内容的发布者主动配置的,也可以是网络侧的资源收集服务器搜集得到的,还可以是终端上报的;其来源丰富多样,但是仍然有可能出现分发终端在某次下载数据内容时,仅获得了一个下载信息的情况,这种情况通常来说下载的数据内容是一个新的数据内容,此种情况下终端可以主动将自身获得的数据内容贡献出来,将自身作为数据源为其它分发终端服务器,来提高网络资源利用率。另外,本发明实施例还提供了由资源服务器来同步下载信息的方案,具体方案如下:进一步地,如图11所示,上述信息接收单元901,还用于接收资源验证服务器发送的与数字内容对应的下载信息;上述索引服务器还包括:
信息更新单元1101,用于将接收到的下载信息更新到数据库中。
资源验证服务器获得的下载信息来源也可以是多种多样的,例如在本发明实施例中,由分发终端上报新资源的下载信息以后由验证服务器验证;也可以是由专门的资源收集服务器进行相关的下载信息的资源收集,然后由资源收集服务器将下载信息更新/同步到资源验证服务器,由资源验证服务器进行验证后发送给索引服务器。因此,在本发明实施例中,下载信息的来源可以设置得较多的来源,使索引服务器能够对全网具有的数据内容有较全的收录,从而为实现快速的内容分发提供支持。
本发明实施例还提供了一种资源验证服务器,如图12所示,包括:
接收信息单元1201,用于接收来自分发终端的数字内容的下载信息;
验证信息单元1202,用于对上述接收信息单元1201接收到的下载信息进行验证;
信息同步单元1203,用于若验证通过,则将下载信息同步到存储有数字内容资源索引的索引服务器;
发送信息单元1204,用于将验证通过的下载信息发送给下载集群服务器下载对应的数字内容,供分发终端从上述下载集群服务器下载上述数字内容。
本发明实施例,资源验证服务器为所有服务器提供下载信息,使索引服务器中维护数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例为了避免错误数据内容在网络传输导致的资源浪费,节省网络资源,验证服务器可以将验证错误的信息发送给索引服务器,使索引服务器删除这些下载信息。
资源验证服务器获得的下载信息来源也可以是多种多样的,例如在本发明实施例中,由分发终端上报新资源的下载信息以后由验证服务器验证;也可以是由专门的资源收集服务器进行相关的下载信息的资源收集,然后由资源收集服务器将下载信息更新/同步到资源验证服务器,由资源验证服务器进行验证后发送给索引服务器。因此,在本发明实施例中,下载信息的来源可以设置得较多的来源,使索引服务器能够对全网具有的数据内容有较全的收录,从而为实现快速的内容分发提供支持。前一实施例中,采用分发终端上报的方式实现,本实施例基于此进一步提供了由资源收集服务器提供下载信息的方案,具体如下:进一步地,上述接收信息单元1201,还用于接收来自资源收集服务器的下载信息。
在本发明实施例中,资源验证服务器在收到下载信息后,均需要对下载信息进行验证,以保证同步到索引服务器的下载信息的正确性,减少错误信息在网络中的传输,从而节省网络资源,提升网络资源的利用效率。
本发明实施例还提供了一种资源收集服务器,如图13所示,包括:
下载信息接收单元1301,用于接收来自分发终端的下载信息;
集合信息提取单元1302,用于从上述下载信息中提取源地址内所包含的下载信息集合;
集合信息处理单元1303,用于对上述下载信息集合内的下载信息进行去重处理,获得索引服务器中未包含的下载信息;
下载信息发送单元1304,用于将去重后的下载信息发送给资源验证服务器。
下载信息的集合内包含的成员是下载信息,来自分发终端下载信息通常会来源于某以具体的源地址,在这个源地址中可能会有很多的地址供下下载,例如:各种下载网站会包含有很多类型的下载地址,不同网络服务商、相同网络服务商的不同区域服务器、特定下载软件对应的地址、或者种子等各种下载信息;本步骤可以对源地址进行信息提取来获得下载信息的集合。
由于在索引服务器中可能已经有一些下载信息与下载信息集合中的下载信息相同,如果不去重,将会导致资源验证服务器不必要的验证以及下载集群服务器的重复下载,浪费网络资源。本发明实施例通过去重处理,可以避免资源验证服务器不必要的验证操作,也可以避免下载集群服务器不必要的数据内容下载,因此可以提升网络资源的使用效率。
本发明实施例,资源收集服务器主动收集网络中的下载信息,发送给资源验证服务器。这样,可以使得资源验证服务器获得丰富的下载信息,资源验证服务器则可以相应的为索引服务器提供下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
在本发明实施例中,资源收集服务器需要从上述下载信息中提取源地址内所包含的下载信息集合,本发明实施例给出了具体的实现方式,具体如下:可选地,上述集合信息处理单元1303,用于指示网络爬虫爬取上述下载信息对应源地址内所包含的下载信息集合。
使用网络爬虫爬去页面信息的方案本发明实施例不予赘述,在爬去到源地址的页面后,可以获取其中的下载信息,例如:URL信息。
在本发明实施例中,资源收集服务器可能会收到众多的下载信息,然后确定众多的源地址,因此对于资源收集服务器而言如果都及时处理的话可能会有高的压力,为了减轻这种压力,使数据收集更有效率,本发明实施例提供了如下解决方案,具体如下:进一步地,如图14所示,上述资源收集服务器还包括:
统计信息接收单元1401,用于接收来自分发终端的下载统计信息;
上述集合信息处理单元1303,用于依据下载统计信息确定下载统计信息对应源地址的优先级;按照确定的源地址的优先级从高到底,依次从下载信息中提取源地址内所包含的下载信息集合。
本发明实施例通过源地址的优先级,确定哪些源地址优先处理,这样可以使更有效的源地址中的下载信息尽快更新到索引服务器。在本发明实施例中,数字内容的下载过程,是一个持续一段时间的过程,在这个过程中会有一些下载相关的统计信息产生,例如各数据源的下载速度、下载时间、下载结果、文件大小、不同协议传输数据的比例等信息,这些信息对于网络侧的服务器而言可以用于做各种决策,例如:确定在主动收集网络资源过程中的侧重点。
本发明实施例还提供了另一种分发终端,如图15所示,包括:接收器1501、发射器1502、处理器1503,以及存储器1504;
其中,处理器1503用于控制执行:向存储有数字内容资源索引的索引服务器发送资源请求,在上述资源请求中携带有请求下载的数字内容标识;接收上述数字内容标识对应的数字内容的至少两个下载信息,上述数字内容的至少两个下载信息对应至少两种不同的内容源;启动与上述数字内容的下载信息对应的协议,分别下载上述数字内容的各分片;将下载得到的上述数字内容的各分片组装为上述数字内容。
在本发明实施例中,索引服务器负责统一管理数字内容资源的下载信息,下载信息以索引的形式存放,供查询。在本发明实施例中数字内容标识是用来唯一标识需要下载的数字内容的信息,这个信息在现网中可选很多,本发明实施例对此不予限定。
内容源是存有数据内容的设备,下载信息与之对应。下载信息用于确定如何从内容源下载信息,其包含的信息应遵循不同的内容源,例如使用的下载协议、通信方式等等。
本发明实施例,在索引服务器中维护了数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
在本发明实施例中,分发终端会接收到至少两种不同内容源的下载信息,那么分发终端可以在任意下载地址下载,也可以同时在多个地址下载,同时下载时会涉及到在各地址下载资源的分配问题,本发明实施例提供的解决方案如下:上述处理器1503还用于控制执行:在分别下载上述数字内容的各分片之前,依据各下载信息对应协议的网络能力,将上述数字内容进行分片。
另外,在全部下载完毕之前,可能会出现有些分片很快下载完毕,有些分片下载缓慢的情况,这种情况下,本发明实施例提供了解决方案,通过重新分片的方式从下载快速的数据源下载未完成的分片,从而达到快速下载的目的,具体方案如下:上述处理器1503还用于控制执行:在下载上述数字内容的各分片的过程中,若存在第一下载信息对应的数字内容的分片被下载完毕,第二下载信息对应的数字内容的分片未完成,则对未完成下载的分片进行二次分片,依据上述第二下载信息下载二次分片对应的数据内容的分片。
进一步地,由于存在对数字内容进行分片,并且各分片的来源并不相同,在组装之前,还可以先进行校验保证数据内容的正确性,避免错误数据组装浪费数据处理资源,具体方案如下:上述处理器1503还用于控制执行:在将下载得到的上述数字内容的各分片组装为上述数字内容之前,对下载到的数字内容的分片进行校验,若校验结果为文件错误,则更换下载信息下载发生文件错误的数字内容的分片。
对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例为了避免错误数据内容在网络传输导致的资源浪费,节省网络资源,提出了如下解决方案,具体如下:
上述处理器1503还用于控制执行:若校验结果为文件错误,则向资源验证服务器和/或上述索引服务器发送校验错误信息,告知上述文件错误对应的数字内容的分片的校验结果。
在本发明实施例中,验错误信息可以直接发送给索引服务器,使索引服务器对相应的下载信息进行删除处理,也可以发送给资源校验服务器进行校验后由资源校验服务器来确定数据源是否具有错误的数据内容,并决定是否需要将验证错误信息发送给索引服务器,使索引服务器对相应的下载信息进行删除处理,从而避免错误的下载信息在网络系统中传播。
在本发明实施例中,数字内容的下载过程,是一个持续一段时间的过程,在这个过程中会有一些下载相关的统计信息产生,例如各数据源的下载速度、下载时间、下载结果、文件大小、不同协议传输数据的比例等信息,这些信息对于网络侧的服务器而言可以用于做各种决策,例如:确定后续下发给分发终端的下载信息的侧重点,确定在主动收集网络资源过程中的侧重点等,因此本发明实施例基于此,提出了将统计信息上报的实现方案,具体如下:上述处理器1503还用于控制执行:在下载上述数字内容的各分片之后,或者在下载上述数字内容的各分片过程中,向资源收集服务器和/或上述索引服务器,发送各数字内容的各分片的下载统计信息;或者,向索引服务器注册本地资源地址。
在本发明实施例中,内容分发终端开始下载数据内容以后,其本地已经存放了相应的部分数据内容,因此该分发终端可以基于P2P技术作为一个内容源接入到网络,为其他分发终端提供数据内容的资源。因此本发明实施例还提供了分发终端主动注册本地资源地址的方案,进一步提高整个网络资源的利用率。
在本发明实施例中,索引服务器中的下载信息的来源可以是由数据内容的发布者主动配置的,也可以是网络侧的资源收集服务器搜集得到的,还可以是终端上报的;其来源丰富多样,但是仍然有可能出现分发终端在某次下载数据内容时,仅获得了一个下载信息的情况,这种情况通常来说下载的数据内容是一个新的数据内容,此种情况下终端可以主动将自身获得的数据内容贡献出来,将自身作为数据源为其它分发终端服务器,来提高网络资源利用率,具体方案如下:上述处理器1503还用于控制执行:
若下载到的数字内容未对应两个或两个以上的下载信息,则计算下载到的数字内容的特征值,将上述特征值发送给资源验证服务器;若下载到的上述数字内容为种子文件,则将下载到的种子文件发送给资源验证服务器和/或上述索引服务器。
在本发明实施例中,下载信息可以是包括下载地址在内的各种与数据内容下载相关的信息,用于提供下载数据内容的依据,具体如下:上述处理器1503用于接收到的,下载信息包括:与内容源对应的下载地址以及与内容源对应的下载协议。
基于本发明实施例的方案,下载协议可以突破各种网络协议之间的壁垒。下载协议与内容源是关联的,内容源不同,则可以包含多种不同的下载协议。从而实现在不同内容源实现下载的目的。目前已有的内容源种类繁多,例如基于C/S结构的数据服务器、基于P2P技术的资源节点,等等;具体的协议以及内容源的对应关系本领域技术人员是熟知的,本发明实施例对此不予赘述。
本发明实施例还提供了另一种索引服务器,如图16所示,包括:接收器1601、发射器1602、处理器1603,以及存储器1604;
其中,处理器1603用于控制执行:接收来自分发终端的资源请求,并获取上述资源请求中携带的数字内容标识,确定上述数字内容标识对应的数字内容;查询上述数字内容对应的下载信息,得到与上述数字内容对应的至少两个下载信息;与上述数字内容对应的至少两个下载信息对应至少两种不同的内容源;将与上述数字内容对应的至少两个下载信息发送给上述分发终端,用于上述分发终端下载上述数字内容。
在本发明实施例中数字内容标识是用来唯一标识需要下载的数字内容的信息,这个信息在现网中可选很多,本发明实施例对此不予限定。
本发明实施例,在索引服务器中维护了数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
下载信息与内容源是对应的,内容源所包含的数据内容有可能是整个数据内容的文件,也可能包含一部分的数据内容,因此对于不同的情况可以有不同的解决方案,对于索引服务器而言,本发明实施例提供的解决方案如下:处理器1603用于获取到的上述与上述数字内容对应的至少两个下载信息包括:与数字内容的分片对应的至少两个下载信息,和/或,与数字内容的每一个分片对应的至少两个下载信息。
对于索引服务器而言,维护的可以是整个数字内容的下载信息的索引,也可以是所有各数据分片的下载信息的索引。由于内容源很多,遵循的协议类型可能也很多,因此索引可能是多个双向映射关系的索引。
在网络中,可能存在数据内容错误的情况,这种情况下,内容分发终端在下载完毕数据内容以后是可以发现的;在网络侧还可以设置相应的服务器对网络中的数据内容进行校验,来确定是否存在数据内容错误的情况。对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例为了避免错误数据内容在网络传输导致的资源浪费,节省网络资源,提出了如下解决方案,具体如下:上述处理器1603还用于控制执行:接收校验错误信息,从上述校验错误信息中获取发生文件错误对应的下载信息,删除发生文件错误对应的下载信息。
在本发明实施例中,索引服务器中的下载信息的来源可以是由数据内容的发布者主动配置的,也可以是网络侧的资源收集服务器搜集得到的,还可以是终端上报的;其来源丰富多样,但是仍然有可能出现分发终端在某次下载数据内容时,仅获得了一个下载信息的情况,这种情况通常来说下载的数据内容是一个新的数据内容,此种情况下终端可以主动将自身获得的数据内容贡献出来,将自身作为数据源为其它分发终端服务器,来提高网络资源利用率。另外,本发明实施例还提供了由资源服务器来同步下载信息的方案,具体方案如下:上述处理器1603还用于控制执行:
接收资源验证服务器发送的与数字内容对应的下载信息,将接收到的下载信息更新到数据库中。
资源验证服务器获得的下载信息来源也可以是多种多样的,例如在本发明实施例中,由分发终端上报新资源的下载信息以后由验证服务器验证;也可以是由专门的资源收集服务器进行相关的下载信息的资源收集,然后由资源收集服务器将下载信息更新/同步到资源验证服务器,由资源验证服务器进行验证后发送给索引服务器。因此,在本发明实施例中,下载信息的来源可以设置得较多的来源,使索引服务器能够对全网具有的数据内容有较全的收录,从而为实现快速的内容分发提供支持。
本发明实施例还提供了另一种资源验证服务器,如图17所示,包括:接收器1701、发射器1702、处理器1703,以及存储器1704;
其中,上述处理器1703用于控制执行:接收来自分发终端的数字内容的下载信息,对接收到的下载信息进行验证;若验证通过,则将下载信息同步到存储有数字内容资源索引的索引服务器;将验证通过的下载信息发送给下载集群服务器下载对应的数字内容,供分发终端从上述下载集群服务器下载上述数字内容。
本发明实施例,资源验证服务器为所有服务器提供下载信息,使索引服务器中维护数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例为了避免错误数据内容在网络传输导致的资源浪费,节省网络资源,验证服务器可以将验证错误的信息发送给索引服务器,使索引服务器删除这些下载信息。
资源验证服务器获得的下载信息来源也可以是多种多样的,例如在本发明实施例中,由分发终端上报新资源的下载信息以后由验证服务器验证;也可以是由专门的资源收集服务器进行相关的下载信息的资源收集,然后由资源收集服务器将下载信息更新/同步到资源验证服务器,由资源验证服务器进行验证后发送给索引服务器。因此,在本发明实施例中,下载信息的来源可以设置得较多的来源,使索引服务器能够对全网具有的数据内容有较全的收录,从而为实现快速的内容分发提供支持。前一实施例中,采用分发终端上报的方式实现,本实施例基于此进一步提供了由资源收集服务器提供下载信息的方案,具体如下:上述处理器1703还用于控制执行:接收来自资源收集服务器的下载信息。
在本发明实施例中,资源验证服务器在收到下载信息后,均需要对下载信息进行验证,以保证同步到索引服务器的下载信息的正确性,减少错误信息在网络中的传输,从而节省网络资源,提升网络资源的利用效率。
本发明实施例还提供了另一种资源收集服务器,如图18所示,包括:接收器1801、发射器1802、处理器1803,以及存储器1804;
其中,上述处理器1803用于控制执行:接收来自分发终端的下载信息,并从上述下载信息中提取源地址内所包含的下载信息集合;对上述下载信息集合内的下载信息进行去重处理,获得索引服务器中未包含的下载信息;将去重后的下载信息发送给资源验证服务器。
本发明实施例中,下载信息的集合内包含的成员是下载信息,来自分发终端下载信息通常会来源于某以具体的源地址,在这个源地址中可能会有很多的地址供下下载,例如:各种下载网站会包含有很多类型的下载地址,不同网络服务商、相同网络服务商的不同区域服务器、特定下载软件对应的地址、或者种子等各种下载信息;本步骤可以对源地址进行信息提取来获得下载信息的集合。
本发明实施例中,由于在索引服务器中可能已经有一些下载信息与下载信息集合中的下载信息相同,如果不去重,将会导致资源验证服务器不必要的验证以及下载集群服务器的重复下载,浪费网络资源。本发明实施例通过去重处理,可以避免资源验证服务器不必要的验证操作,也可以避免下载集群服务器不必要的数据内容下载,因此可以提升网络资源的使用效率。
本发明实施例,资源收集服务器主动收集网络中的下载信息,发送给资源验证服务器。这样,可以使得资源验证服务器获得丰富的下载信息,资源验证服务器则可以相应的为索引服务器提供下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
在本发明实施例中,资源收集服务器需要从上述下载信息中提取源地址内所包含的下载信息集合,本发明实施例给出了具体的实现方式,具体如下:上述处理器1803用于控制执行:从上述下载信息中提取源地址内所包含的下载信息集合包括:指示网络爬虫爬取上述下载信息对应源地址内所包含的下载信息集合。
使用网络爬虫爬去页面信息的方案本发明实施例不予赘述,在爬去到源地址的页面后,可以获取其中的下载信息,例如:URL信息。
在本发明实施例中,资源收集服务器可能会收到众多的下载信息,然后确定众多的源地址,因此对于资源收集服务器而言如果都及时处理的话可能会有高的压力,为了减轻这种压力,使数据收集更有效率,本发明实施例提供了如下解决方案,具体如下:上述处理器1803还用于控制执行:接收来自分发终端的下载统计信息,依据下载统计信息确定下载统计信息对应源地址的优先级;
上述从上述下载信息中提取源地址内所包含的下载信息集合包括:
按照确定的源地址的优先级从高到底,依次从下载信息中提取源地址内所包含的下载信息集合。
本发明实施例通过源地址的优先级,确定哪些源地址优先处理,这样可以使更有效的源地址中的下载信息尽快更新到索引服务器。在本发明实施例中,数字内容的下载过程,是一个持续一段时间的过程,在这个过程中会有一些下载相关的统计信息产生,例如各数据源的下载速度、下载时间、下载结果、文件大小、不同协议传输数据的比例等信息,这些信息对于网络侧的服务器而言可以用于做各种决策,例如:确定在主动收集网络资源过程中的侧重点。
本发明实施例还提供了一种内容分发系统,如图19所示,包括:
本发明实施例提供的任意一项的分发终端1901,以及本发明实施例提供的任意一项的索引服务器1902。
本发明实施例,在索引服务器中维护了数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
进一步地,如果增加资源验证的功能和/或资源收集功能的相关服务器,那么,如图20所示,本发明实施例的内容分发系统,还包括:
本发明实施例提供的任意一项的资源验证服务器2001,和/或,本发明实施例提供的任意一项的资源收集服务器2002。
对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例可以避免错误数据内容在网络传输导致的资源浪费,节省网络资源。
资源验证服务器获得的下载信息来源也可以是多种多样的,例如在本发明实施例中,由分发终端上报新资源的下载信息以后由验证服务器验证;也可以是由专门的资源收集服务器进行相关的下载信息的资源收集,然后由资源收集服务器将下载信息更新/同步到资源验证服务器,由资源验证服务器进行验证后发送给索引服务器。因此,在本发明实施例中,下载信息的来源可以设置得较多的来源,使索引服务器能够对全网具有的数据内容有较全的收录,从而为实现快速的内容分发提供支持。
本发明实施例还提供了另一种分发终端,如图21所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:
图21示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图21,手机包括:射频(Radio Frequency,RF)电路2110、存储器2120、输入单元2130、显示单元2140、传感器2150、音频电路2160、无线保真(wireless fidelity,WiFi)模块2170、处理器2180、以及电源2190等部件。本领域技术人员可以理解,图21中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图21对手机的各个构成部件进行具体的介绍:
RF电路2110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器2180处理;另外,将设计上行的数据发送给基站。通常,RF电路2110包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路2110还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(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)等。
存储器2120可用于存储软件程序以及模块,处理器2180通过运行存储在存储器2120的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器2120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器2120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元2130可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元2130可包括触控面板2131以及其他输入设备2132。触控面板2131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板2131上或在触控面板2131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板2131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器2180,并能接收处理器2180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板2131。除了触控面板2131,输入单元2130还可以包括其他输入设备2132。具体地,其他输入设备2132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元2140可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元2140可包括显示面板2141,可选的,可以采用液晶显示器(LiquidCrystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板2141。进一步的,触控面板2131可覆盖显示面板2141,当触控面板2131检测到在其上或附近的触摸操作后,传送给处理器2180以确定触摸事件的类型,随后处理器2180根据触摸事件的类型在显示面板2141上提供相应的视觉输出。虽然在图21中,触控面板2131与显示面板2141是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板2131与显示面板2141集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器2150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板2141的亮度,接近传感器可在手机移动到耳边时,关闭显示面板2141和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路2160、扬声器2161,传声器2162可提供用户与手机之间的音频接口。音频电路2160可将接收到的音频数据转换后的电信号,传输到扬声器2161,由扬声器2161转换为声音信号输出;另一方面,传声器2162将收集的声音信号转换为电信号,由音频电路2160接收后转换为音频数据,再将音频数据输出处理器2180处理后,经RF电路2110以发送给比如另一手机,或者将音频数据输出至存储器2120以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块2170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图21示出了WiFi模块2170,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器2180是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器2120内的软件程序和/或模块,以及调用存储在存储器2120内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器2180可包括一个或多个处理单元;优选的,处理器2180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器2180中。
手机还包括给各个部件供电的电源2190(比如电池),优选的,电源可以通过电源管理系统与处理器2180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本发明实施例中,该终端所包括的处理器2180还具有以下功能:
其中,处理器2180用于控制执行:向存储有数字内容资源索引的索引服务器发送资源请求,在上述资源请求中携带有请求下载的数字内容标识;接收上述数字内容标识对应的数字内容的至少两个下载信息,上述数字内容的至少两个下载信息对应至少两种不同的内容源;启动与上述数字内容的下载信息对应的协议,分别下载上述数字内容的各分片;将下载得到的上述数字内容的各分片组装为上述数字内容。
在本发明实施例中,索引服务器负责统一管理数字内容资源的下载信息,下载信息以索引的形式存放,供查询。在本发明实施例中数字内容标识是用来唯一标识需要下载的数字内容的信息,这个信息在现网中可选很多,本发明实施例对此不予限定。
内容源是存有数据内容的设备,下载信息与之对应。下载信息用于确定如何从内容源下载信息,其包含的信息应遵循不同的内容源,例如使用的下载协议、通信方式等等。
本发明实施例,在索引服务器中维护了数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
在本发明实施例中,分发终端会接收到至少两种不同内容源的下载信息,那么分发终端可以在任意下载地址下载,也可以同时在多个地址下载,同时下载时会涉及到在各地址下载资源的分配问题,本发明实施例提供的解决方案如下:上述处理器2180还用于控制执行:在分别下载上述数字内容的各分片之前,依据各下载信息对应协议的网络能力,将上述数字内容进行分片。
另外,在全部下载完毕之前,可能会出现有些分片很快下载完毕,有些分片下载缓慢的情况,这种情况下,本发明实施例提供了解决方案,通过重新分片的方式从下载快速的数据源下载未完成的分片,从而达到快速下载的目的,具体方案如下:上述处理器2180还用于控制执行:在下载上述数字内容的各分片的过程中,若存在第一下载信息对应的数字内容的分片被下载完毕,第二下载信息对应的数字内容的分片未完成,则对未完成下载的分片进行二次分片,依据上述第二下载信息下载二次分片对应的数据内容的分片。
进一步地,由于存在对数字内容进行分片,并且各分片的来源并不相同,在组装之前,还可以先进行校验保证数据内容的正确性,避免错误数据组装浪费数据处理资源,具体方案如下:上述处理器2180还用于控制执行:在将下载得到的上述数字内容的各分片组装为上述数字内容之前,对下载到的数字内容的分片进行校验,若校验结果为文件错误,则更换下载信息下载发生文件错误的数字内容的分片。
对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例为了避免错误数据内容在网络传输导致的资源浪费,节省网络资源,提出了如下解决方案,具体如下:
上述处理器2180还用于控制执行:若校验结果为文件错误,则向资源验证服务器和/或上述索引服务器发送校验错误信息,告知上述文件错误对应的数字内容的分片的校验结果。
在本发明实施例中,验错误信息可以直接发送给索引服务器,使索引服务器对相应的下载信息进行删除处理,也可以发送给资源校验服务器进行校验后由资源校验服务器来确定数据源是否具有错误的数据内容,并决定是否需要将验证错误信息发送给索引服务器,使索引服务器对相应的下载信息进行删除处理,从而避免错误的下载信息在网络系统中传播。
在本发明实施例中,数字内容的下载过程,是一个持续一段时间的过程,在这个过程中会有一些下载相关的统计信息产生,例如各数据源的下载速度、下载时间、下载结果、文件大小、不同协议传输数据的比例等信息,这些信息对于网络侧的服务器而言可以用于做各种决策,例如:确定后续下发给分发终端的下载信息的侧重点,确定在主动收集网络资源过程中的侧重点等,因此本发明实施例基于此,提出了将统计信息上报的实现方案,具体如下:上述处理器2180还用于控制执行:在下载上述数字内容的各分片之后,或者在下载上述数字内容的各分片过程中,向资源收集服务器和/或上述索引服务器,发送各数字内容的各分片的下载统计信息;或者,向索引服务器注册本地资源地址。
在本发明实施例中,内容分发终端开始下载数据内容以后,其本地已经存放了相应的部分数据内容,因此该分发终端可以基于P2P技术作为一个内容源接入到网络,为其他分发终端提供数据内容的资源。因此本发明实施例还提供了分发终端主动注册本地资源地址的方案,进一步提高整个网络资源的利用率。
在本发明实施例中,索引服务器中的下载信息的来源可以是由数据内容的发布者主动配置的,也可以是网络侧的资源收集服务器搜集得到的,还可以是终端上报的;其来源丰富多样,但是仍然有可能出现分发终端在某次下载数据内容时,仅获得了一个下载信息的情况,这种情况通常来说下载的数据内容是一个新的数据内容,此种情况下终端可以主动将自身获得的数据内容贡献出来,将自身作为数据源为其它分发终端服务器,来提高网络资源利用率,具体方案如下:上述处理器2180还用于控制执行:
若下载到的数字内容未对应两个或两个以上的下载信息,则计算下载到的数字内容的特征值,将上述特征值发送给资源验证服务器;若下载到的上述数字内容为种子文件,则将下载到的种子文件发送给资源验证服务器和/或上述索引服务器。
在本发明实施例中,下载信息可以是包括下载地址在内的各种与数据内容下载相关的信息,用于提供下载数据内容的依据,具体如下:上述处理器2180用于接收到的,下载信息包括:与内容源对应的下载地址以及与内容源对应的下载协议。
基于本发明实施例的方案,下载协议可以突破各种网络协议之间的壁垒。下载协议与内容源是关联的,内容源不同,则可以包含多种不同的下载协议。从而实现在不同内容源实现下载的目的。目前已有的内容源种类繁多,例如基于C/S结构的数据服务器、基于P2P技术的资源节点,等等;具体的协议以及内容源的对应关系本领域技术人员是熟知的,本发明实施例对此不予赘述。
图22是本发明实施例提供的一种服务器结构示意图,该服务器2200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processingunits,CPU)2222(例如,一个或一个以上处理器)和存储器2232,一个或一个以上存储应用程序2242或数据2244的存储介质2230(例如一个或一个以上海量存储设备)。其中,存储器2232和存储介质2230可以是短暂存储或持久存储。存储在存储介质2230的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器2222可以设置为与存储介质2230通信,在服务器2200上执行存储介质2230中的一系列指令操作。
服务器2200还可以包括一个或一个以上电源2226,一个或一个以上有线或无线网络接口2250,一个或一个以上输入输出接口2258,和/或,一个或一个以上操作系统2241,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图22所示的服务器结构。
如果该服务器作为索引服务器使用,其中,那么中央处理器2222用于控制执行:接收来自分发终端的资源请求,并获取上述资源请求中携带的数字内容标识,确定上述数字内容标识对应的数字内容;查询上述数字内容对应的下载信息,得到与上述数字内容对应的至少两个下载信息;与上述数字内容对应的至少两个下载信息对应至少两种不同的内容源;将与上述数字内容对应的至少两个下载信息发送给上述分发终端,用于上述分发终端下载上述数字内容。
在本发明实施例中数字内容标识是用来唯一标识需要下载的数字内容的信息,这个信息在现网中可选很多,本发明实施例对此不予限定。
本发明实施例,在索引服务器中维护了数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
下载信息与内容源是对应的,内容源所包含的数据内容有可能是整个数据内容的文件,也可能包含一部分的数据内容,因此对于不同的情况可以有不同的解决方案,对于索引服务器而言,本发明实施例提供的解决方案如下:中央处理器2222用于获取到的上述与上述数字内容对应的至少两个下载信息包括:与数字内容的分片对应的至少两个下载信息,和/或,与数字内容的每一个分片对应的至少两个下载信息。
对于索引服务器而言,维护的可以是整个数字内容的下载信息的索引,也可以是所有各数据分片的下载信息的索引。由于内容源很多,遵循的协议类型可能也很多,因此索引可能是多个双向映射关系的索引。
在网络中,可能存在数据内容错误的情况,这种情况下,内容分发终端在下载完毕数据内容以后是可以发现的;在网络侧还可以设置相应的服务器对网络中的数据内容进行校验,来确定是否存在数据内容错误的情况。对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例为了避免错误数据内容在网络传输导致的资源浪费,节省网络资源,提出了如下解决方案,具体如下:上述中央处理器2222还用于控制执行:接收校验错误信息,从上述校验错误信息中获取发生文件错误对应的下载信息,删除发生文件错误对应的下载信息。
在本发明实施例中,索引服务器中的下载信息的来源可以是由数据内容的发布者主动配置的,也可以是网络侧的资源收集服务器搜集得到的,还可以是终端上报的;其来源丰富多样,但是仍然有可能出现分发终端在某次下载数据内容时,仅获得了一个下载信息的情况,这种情况通常来说下载的数据内容是一个新的数据内容,此种情况下终端可以主动将自身获得的数据内容贡献出来,将自身作为数据源为其它分发终端服务器,来提高网络资源利用率。另外,本发明实施例还提供了由资源服务器来同步下载信息的方案,具体方案如下:上述中央处理器2222还用于控制执行:
接收资源验证服务器发送的与数字内容对应的下载信息,将接收到的下载信息更新到数据库中。
资源验证服务器获得的下载信息来源也可以是多种多样的,例如在本发明实施例中,由分发终端上报新资源的下载信息以后由验证服务器验证;也可以是由专门的资源收集服务器进行相关的下载信息的资源收集,然后由资源收集服务器将下载信息更新/同步到资源验证服务器,由资源验证服务器进行验证后发送给索引服务器。因此,在本发明实施例中,下载信息的来源可以设置得较多的来源,使索引服务器能够对全网具有的数据内容有较全的收录,从而为实现快速的内容分发提供支持。
如果该服务器作为资源验证服务器使用,那么,中央处理器2222用于控制执行:接收来自分发终端的数字内容的下载信息,对接收到的下载信息进行验证;若验证通过,则将下载信息同步到存储有数字内容资源索引的索引服务器;将验证通过的下载信息发送给下载集群服务器下载对应的数字内容,供分发终端从上述下载集群服务器下载上述数字内容。
本发明实施例,资源验证服务器为所有服务器提供下载信息,使索引服务器中维护数据内容的多个下载信息,下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
对于校验结果为文件错误对应的下载信息,说明这个数据源提供的数据存在错误的情况,这种情况下继续将该错误的数据源告知其它分发终端,将会导致其他分发终端继续下载错误的数据内容。本发明实施例为了避免错误数据内容在网络传输导致的资源浪费,节省网络资源,验证服务器可以将验证错误的信息发送给索引服务器,使索引服务器删除这些下载信息。
资源验证服务器获得的下载信息来源也可以是多种多样的,例如在本发明实施例中,由分发终端上报新资源的下载信息以后由验证服务器验证;也可以是由专门的资源收集服务器进行相关的下载信息的资源收集,然后由资源收集服务器将下载信息更新/同步到资源验证服务器,由资源验证服务器进行验证后发送给索引服务器。因此,在本发明实施例中,下载信息的来源可以设置得较多的来源,使索引服务器能够对全网具有的数据内容有较全的收录,从而为实现快速的内容分发提供支持。前一实施例中,采用分发终端上报的方式实现,本实施例基于此进一步提供了由资源收集服务器提供下载信息的方案,具体如下:上述中央处理器2222还用于控制执行:接收来自资源收集服务器的下载信息。
在本发明实施例中,资源验证服务器在收到下载信息后,均需要对下载信息进行验证,以保证同步到索引服务器的下载信息的正确性,减少错误信息在网络中的传输,从而节省网络资源,提升网络资源的利用效率。
如果该服务器作为资源收集服务器使用,那么上述中央处理器2222用于控制执行:接收来自分发终端的下载信息,并从上述下载信息中提取源地址内所包含的下载信息集合;对上述下载信息集合内的下载信息进行去重处理,获得索引服务器中未包含的下载信息;将去重后的下载信息发送给资源验证服务器。
本发明实施例中,下载信息的集合内包含的成员是下载信息,来自分发终端下载信息通常会来源于某以具体的源地址,在这个源地址中可能会有很多的地址供下下载,例如:各种下载网站会包含有很多类型的下载地址,不同网络服务商、相同网络服务商的不同区域服务器、特定下载软件对应的地址、或者种子等各种下载信息;本步骤可以对源地址进行信息提取来获得下载信息的集合。
本发明实施例中,由于在索引服务器中可能已经有一些下载信息与下载信息集合中的下载信息相同,如果不去重,将会导致资源验证服务器不必要的验证以及下载集群服务器的重复下载,浪费网络资源。本发明实施例通过去重处理,可以避免资源验证服务器不必要的验证操作,也可以避免下载集群服务器不必要的数据内容下载,因此可以提升网络资源的使用效率。
本发明实施例,资源收集服务器主动收集网络中的下载信息,发送给资源验证服务器。这样,可以使得资源验证服务器获得丰富的下载信息,资源验证服务器则可以相应的为索引服务器提供下载信息与内容源是对应的;在分发终端需要下载数据内容时获得这些下载信息,则可以对应不同的内容源使用相应的网络协议,进行各数据内容的分片同时下载;因此即使不增加CDN服务器,仍然可以实现多内容源为分发终端提供下载资源的目的,实现数据内容的快速分发,因此提供了一种能够减少CDN服务器的部署,充分利用现有网络带宽,节省实现数字内容快速分发成本的内容分发方案。由于下载信息有至少两个并且对应了至少两种内容源,丰富了内容分发内容源的类型,不再依赖于单一内容源,一种内容源也不再需要大量的带宽来支持快速的内容分发,缓解了带宽不足的压力,因而可以充分利用现有网络带宽,减少网络压力,节省实现数字内容的快速分发的成本。
在本发明实施例中,资源收集服务器需要从上述下载信息中提取源地址内所包含的下载信息集合,本发明实施例给出了具体的实现方式,具体如下:上述中央处理器2222用于控制执行:从上述下载信息中提取源地址内所包含的下载信息集合包括:指示网络爬虫爬取上述下载信息对应源地址内所包含的下载信息集合。
使用网络爬虫爬去页面信息的方案本发明实施例不予赘述,在爬去到源地址的页面后,可以获取其中的下载信息,例如:URL信息。
在本发明实施例中,资源收集服务器可能会收到众多的下载信息,然后确定众多的源地址,因此对于资源收集服务器而言如果都及时处理的话可能会有高的压力,为了减轻这种压力,使数据收集更有效率,本发明实施例提供了如下解决方案,具体如下:
上述中央处理器2222还用于控制执行:接收来自分发终端的下载统计信息,依据下载统计信息确定下载统计信息对应源地址的优先级;
上述从上述下载信息中提取源地址内所包含的下载信息集合包括:
按照确定的源地址的优先级从高到底,依次从下载信息中提取源地址内所包含的下载信息集合。
本发明实施例通过源地址的优先级,确定哪些源地址优先处理,这样可以使更有效的源地址中的下载信息尽快更新到索引服务器。在本发明实施例中,数字内容的下载过程,是一个持续一段时间的过程,在这个过程中会有一些下载相关的统计信息产生,例如各数据源的下载速度、下载时间、下载结果、文件大小、不同协议传输数据的比例等信息,这些信息对于网络侧的服务器而言可以用于做各种决策,例如:确定在主动收集网络资源过程中的侧重点。
值得注意的是,上述终端和服务器的实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
另外,本领域普通技术人员可以理解实现上述各方法实施例中的全部或部分步骤是可以通过程序来指令相关的硬件完成,相应的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (27)
1.一种内容分发方法,其特征在于,包括:
向存储有数字内容资源索引的索引服务器发送资源请求,在所述资源请求中携带有请求下载的数字内容标识;
接收所述数字内容标识对应的数字内容的至少两个下载信息,所述数字内容的至少两个下载信息对应至少两种不同的内容源;
启动与所述数字内容的下载信息对应的协议,分别从所述至少两种不同的内容源同时下载所述数字内容的各分片;
在下载所述数字内容的各分片之后,或者在下载所述数字内容的各分片过程中,向资源收集服务器和/或所述索引服务器,发送各数字内容的各分片的下载统计信息;所述下载统计信息用于确定后续下发给分发终端的下载信息的侧重点,和/或,确定在主动收集网络资源过程中的侧重点;
将下载得到的所述数字内容的各分片组装为所述数字内容。
2.根据权利要求1所述方法,其特征在于,在分别从所述至少两种不同的内容源同时下载所述数字内容的各分片之前,还包括:
依据各下载信息对应协议的网络能力,将所述数字内容进行分片。
3.根据权利要求2所述方法,其特征在于,所述方法还包括:
在下载所述数字内容的各分片的过程中,若存在第一下载信息对应的数字内容的分片被下载完毕,第二下载信息对应的数字内容的分片未完成,则对未完成下载的分片进行二次分片,依据所述第二下载信息下载二次分片对应的数据内容的分片。
4.根据权利要求1所述方法,其特征在于,在将下载得到的所述数字内容的各分片组装为所述数字内容之前,所述方法还包括:
对下载得到的数字内容的分片进行校验,若校验结果为文件错误,则更换下载信息下载发生文件错误的数字内容的分片。
5.根据权利要求1所述方法,其特征在于,若校验结果为文件错误,所述方法还包括:
向资源验证服务器和/或所述索引服务器发送校验错误信息,告知所述文件错误对应的数字内容的分片的校验结果。
6.根据权利要求1所述方法,其特征在于,所述方法还包括:
若下载得到的数字内容未对应两个或两个以上的下载信息,则计算下载得到的数字内容的特征值,将所述特征值发送给资源验证服务器;若下载得到的所述数字内容为种子文件,则将下载得到的种子文件发送给资源验证服务器和/或所述索引服务器。
7.根据权利要求1所述方法,其特征在于,所述下载信息包括:
与内容源对应的下载地址以及与内容源对应的下载协议。
8.一种内容分发方法,其特征在于,包括:
接收来自分发终端的资源请求,并获取所述资源请求中携带的数字内容标识,确定所述数字内容标识对应的数字内容;
查询所述数字内容对应的下载信息,得到与所述数字内容对应的至少两个下载信息;与所述数字内容对应的至少两个下载信息对应至少两种不同的内容源;
将与所述数字内容对应的至少两个下载信息发送给所述分发终端,用于所述分发终端分别从所述至少两种不同的内容源同时下载所述数字内容的各分片;
接收分发终端在下载所述数字内容的各分片之后,或者在下载所述数字内容的各分片过程中,发送的各数字内容的各分片的下载统计信息;所述下载统计信息用于确定后续下发给分发终端的下载信息的侧重点,和/或,确定在主动收集网络资源过程中的侧重点。
9.根据权利要求8所述方法,其特征在于,所述与所述数字内容对应的至少两个下载信息包括:
与数字内容的分片对应的至少两个下载信息,和/或,与数字内容的每一个分片对应的至少两个下载信息。
10.根据权利要求8或9所述方法,其特征在于,还包括:
接收校验错误信息,从所述校验错误信息中获取发生文件错误对应的下载信息,删除发生文件错误对应的下载信息。
11.根据权利要求8或9所述方法,其特征在于,还包括:
接收资源验证服务器发送的与数字内容对应的下载信息,将接收到的下载信息更新到数据库中。
12.一种内容分发方法,其特征在于,包括:
资源收集服务器接收来自分发终端的下载统计信息,依据下载统计信息确定下载统计信息对应源地址的优先级;接收来自分发终端的下载信息,按照确定的源地址的优先级从高到低,依次从下载信息中提取源地址内所包含的下载信息集合;
对所述下载信息集合内的下载信息进行去重处理,获得索引服务器中未包含的下载信息;
将去重后的下载信息发送给资源验证服务器。
13.根据权利要求12所述方法,其特征在于,所述从所述下载信息中提取源地址内所包含的下载信息集合包括:
指示网络爬虫爬取所述下载信息对应源地址内所包含的下载信息集合。
14.一种分发终端,其特征在于,包括:
信息发送单元,用于向存储有数字内容资源索引的索引服务器发送资源请求,在所述资源请求中携带有请求下载的数字内容标识;
信息接收单元,用于接收所述数字内容标识对应的数字内容的至少两个下载信息,所述数字内容的至少两个下载信息对应至少两种不同的内容源;
下载单元,用于启动与所述数字内容的下载信息对应的协议,分别从所述至少两种不同的内容源同时下载所述数字内容的各分片;
数据组装单元,用于将下载得到的所述数字内容的各分片组装为所述数字内容;
所述信息发送单元,还用于在下载所述数字内容的各分片之后,或者在下载所述数字内容的各分片过程中,向资源收集服务器和/或所述索引服务器,发送各数字内容的各分片的下载统计信息;所述下载统计信息用于确定后续下发给分发终端的下载信息的侧重点,和/或,确定在主动收集网络资源过程中的侧重点。
15.根据权利要求14所述分发终端,其特征在于,所述分发终端还包括:
分片控制单元,用于在分别从所述至少两种不同的内容源同时下载所述数字内容的各分片之前,依据各下载信息对应协议的网络能力,将所述数字内容进行分片。
16.根据权利要求15所述分发终端,其特征在于,
所述分片控制单元,还用于在下载所述数字内容的各分片的过程中,若存在第一下载信息对应的数字内容的分片被下载完毕,第二下载信息对应的数字内容的分片未完成,则对未完成下载的分片进行二次分片;
所述下载单元,还用于依据所述第二下载信息下载二次分片对应的数据内容的分片。
17.根据权利要求14所述分发终端,其特征在于,所述分发终端还包括:
校验单元,用于在所述数据组装单元将下载得到的所述数字内容的各分片组装为所述数字内容之前,对下载得到的数字内容的分片进行校验;
所述下载单元,还用于若所述校验单元校验结果为文件错误,则更换下载信息下载发生文件错误的数字内容的分片。
18.根据权利要求17所述分发终端,其特征在于,
所述信息发送单元,还用于若所述校验单元确定校验结果为文件错误,则向资源验证服务器和/或所述索引服务器发送校验错误信息,告知所述文件错误对应的数字内容的分片的校验结果。
19.根据权利要求14所述分发终端,其特征在于,所述分发终端还包括:
计算单元,用于若下载得到的数字内容未对应两个或两个以上的下载信息,则计算下载得到的数字内容的特征值;
所述信息发送单元,还用于将所述特征值发送给资源验证服务器;若下载得到的所述数字内容为种子文件,则将下载得到的种子文件发送给资源验证服务器和/或所述索引服务器。
20.一种索引服务器,其特征在于,包括:
信息接收单元,用于接收来自分发终端的资源请求;
内容确定单元,用于获取所述资源请求中携带的数字内容标识,确定所述数字内容标识对应的数字内容;
信息查询单元,用于查询所述数字内容对应的下载信息,得到与所述数字内容对应的至少两个下载信息;与所述数字内容对应的至少两个下载信息对应至少两种不同的内容源;
信息下发单元,用于将与所述数字内容对应的至少两个下载信息发送给所述分发终端,用于所述分发终端分别从所述至少两种不同的内容源同时下载所述数字内容的各分片;
所述信息接收单元,还用于接收分发终端在下载所述数字内容的各分片之后,或者在下载所述数字内容的各分片过程中,发送的各数字内容的各分片的下载统计信息;所述下载统计信息用于确定后续下发给分发终端的下载信息的侧重点,和/或,确定在主动收集网络资源过程中的侧重点。
21.根据权利要求20所述索引服务器,其特征在于,
所述信息查询单元查询到的所述与所述数字内容对应的至少两个下载信息包括:与数字内容的分片对应的至少两个下载信息,和/或,与数字内容的每一个分片对应的至少两个下载信息。
22.根据权利要求20或21所述索引服务器,其特征在于,
所述信息接收单元,还用于接收校验错误信息;所述索引服务器还包括:
信息删除单元,用于从所述校验错误信息中获取发生文件错误对应的下载信息,删除发生文件错误对应的下载信息。
23.根据权利要求20或21所述索引服务器,其特征在于,
所述信息接收单元,还用于接收资源验证服务器发送的与数字内容对应的下载信息;所述索引服务器还包括:
信息更新单元,用于将接收到的下载信息更新到数据库中。
24.一种资源收集服务器,其特征在于,包括:
统计信息接收单元,用于接收来自分发终端的下载统计信息;
下载信息接收单元,用于接收来自分发终端的下载信息;
集合信息提取单元,用于依据下载统计信息确定下载统计信息对应源地址的优先级;按照确定的源地址的优先级从高到低,依次从下载信息中提取源地址内所包含的下载信息集合;
集合信息处理单元,用于对所述下载信息集合内的下载信息进行去重处理,获得索引服务器中未包含的下载信息;
下载信息发送单元,用于将去重后的下载信息发送给资源验证服务器。
25.根据权利要求24所述资源收集服务器,其特征在于,
所述集合信息提取单元,用于指示网络爬虫爬取所述下载信息对应源地址内所包含的下载信息集合。
26.一种内容分发系统,其特征在于,包括:
权利要求14至19任意一项的分发终端,以及权利要求20至23任意一项的索引服务器。
27.根据权利要求26所述内容分发系统,其特征在于,还包括:
权利要求24或25的资源收集服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410277379.0A CN105208059B (zh) | 2014-06-19 | 2014-06-19 | 一种内容分发方法、终端、服务器,及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410277379.0A CN105208059B (zh) | 2014-06-19 | 2014-06-19 | 一种内容分发方法、终端、服务器,及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105208059A CN105208059A (zh) | 2015-12-30 |
CN105208059B true CN105208059B (zh) | 2019-09-17 |
Family
ID=54955488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410277379.0A Active CN105208059B (zh) | 2014-06-19 | 2014-06-19 | 一种内容分发方法、终端、服务器,及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105208059B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105847382A (zh) * | 2016-04-20 | 2016-08-10 | 乐视控股(北京)有限公司 | Cdn文件分发方法及系统 |
CN109716731A (zh) * | 2016-05-31 | 2019-05-03 | 埃克申铁克电子公司 | 用于提供可靠和高效数据传送的系统和方法 |
CN106850778B (zh) * | 2017-01-17 | 2020-10-23 | 无锡清华信息科学与技术国家实验室物联网技术中心 | 一种多源下载性能优化方法及装置 |
CN106993054B (zh) * | 2017-05-05 | 2022-06-03 | 腾讯科技(深圳)有限公司 | 文件分发方法、节点及系统 |
CN109672698B (zh) * | 2017-10-13 | 2021-02-09 | 华为技术有限公司 | 内容分发方法、设备及系统 |
CN108234676A (zh) * | 2018-03-06 | 2018-06-29 | 上海京颐科技股份有限公司 | 医疗终端的数据下载方法及装置、存储介质、服务器、终端 |
CN108833554B (zh) * | 2018-06-22 | 2021-05-18 | 哈尔滨工业大学 | 一种面向大规模网络的实时高可靠消息分发系统及其方法 |
CN111314403B (zh) * | 2018-12-12 | 2022-09-02 | 阿里巴巴集团控股有限公司 | 资源一致性的校验方法和装置 |
CN110191146A (zh) * | 2019-03-21 | 2019-08-30 | 北京北信源软件股份有限公司 | 一种基于浏览器的文件远程调阅方法及系统 |
CN109995866B (zh) * | 2019-04-03 | 2022-04-29 | 深圳市网心科技有限公司 | 分布式文件校验方法、装置、计算机装置及存储介质 |
CN110138808B (zh) * | 2019-06-27 | 2021-04-13 | 苏宁消费金融有限公司 | 基于cdn的反劫持下载方法和系统 |
WO2021077335A1 (zh) * | 2019-10-23 | 2021-04-29 | 深圳市欢太科技有限公司 | 一种异常恢复方法、异常恢复装置及移动终端 |
CN110830580B (zh) * | 2019-11-12 | 2023-04-18 | 腾讯云计算(北京)有限责任公司 | 一种存储数据同步方法及装置 |
CN111935655A (zh) * | 2020-05-27 | 2020-11-13 | 武汉小码联城科技有限公司 | 短消息发送处理方法、系统及客户端、服务器、校验装置 |
CN114125572B (zh) * | 2021-11-22 | 2022-06-03 | 江苏经贸职业技术学院 | 一种基于p2p的视频数据分发与存储系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102752326A (zh) * | 2011-04-19 | 2012-10-24 | 腾讯科技(深圳)有限公司 | 在下载文件时处理数据的方法、客户端、服务器和系统 |
CN102833293A (zh) * | 2011-06-17 | 2012-12-19 | 腾讯科技(深圳)有限公司 | P2sp网络中资源下载的方法及客户端 |
CN103248660A (zh) * | 2012-02-13 | 2013-08-14 | 深圳市腾讯计算机系统有限公司 | 一种云端订阅下载的方法和系统 |
CN103475688A (zh) * | 2013-05-24 | 2013-12-25 | 北京网秦天下科技有限公司 | 用于下载网站数据的分布式方法和系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9311492B2 (en) * | 2007-05-22 | 2016-04-12 | Apple Inc. | Media storage structures for storing content, devices for using such structures, systems for distributing such structures |
CN101247402B (zh) * | 2008-03-17 | 2011-09-14 | 腾讯科技(深圳)有限公司 | 多媒体文件的下载播放系统和方法 |
US8291496B2 (en) * | 2008-05-12 | 2012-10-16 | Enpulz, L.L.C. | Server based malware screening |
-
2014
- 2014-06-19 CN CN201410277379.0A patent/CN105208059B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102752326A (zh) * | 2011-04-19 | 2012-10-24 | 腾讯科技(深圳)有限公司 | 在下载文件时处理数据的方法、客户端、服务器和系统 |
CN102833293A (zh) * | 2011-06-17 | 2012-12-19 | 腾讯科技(深圳)有限公司 | P2sp网络中资源下载的方法及客户端 |
CN103248660A (zh) * | 2012-02-13 | 2013-08-14 | 深圳市腾讯计算机系统有限公司 | 一种云端订阅下载的方法和系统 |
CN103475688A (zh) * | 2013-05-24 | 2013-12-25 | 北京网秦天下科技有限公司 | 用于下载网站数据的分布式方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105208059A (zh) | 2015-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105208059B (zh) | 一种内容分发方法、终端、服务器,及系统 | |
US11296937B2 (en) | Decentralized data storage and processing for IoT devices | |
US11868858B2 (en) | Distributed machine learning in an information centric network | |
CN103329113B (zh) | 配置用于分级高速缓存的代理服务器以及动态站点加速和自定义对象和相关的方法 | |
CN104092646B (zh) | 操作同步方法和装置 | |
CN104618506B (zh) | 一种众包的内容分发网络系统、方法与装置 | |
CN104836821B (zh) | 一种基于路由器设备的网络加速方法、装置和设备 | |
CN103078881B (zh) | 网络资源下载信息的分享控制系统和方法 | |
US20060143179A1 (en) | Apparatus and method for managing security policy information using a device management tree | |
WO2008104131A1 (fr) | Procédé, appareil et système de recherche et de téléchargement d'un fichier de téléphone mobile | |
CN107622064A (zh) | 一种数据读取方法及系统 | |
CN104702634B (zh) | 数据操作请求处理方法、装置及系统 | |
CN105978852A (zh) | 一种网络设备访问历史信息的确定方法、设备及交换机 | |
WO2014206331A1 (zh) | 一种资源访问方法和计算机设备 | |
Borgia et al. | Reliable data delivery in ICN-IoT environments | |
CN111259452A (zh) | 一种基于区块链的数据管理方法以及相关装置 | |
CN108418871A (zh) | 一种云存储性能优化方法和系统 | |
CN102984227A (zh) | 音乐共享方法以及音乐共享服务端系统 | |
CN116806038A (zh) | 一种去中心化的计算机数据共享方法及装置 | |
CN101442560B (zh) | 一种基于移动网格的移动通信终端影音播放查询方法 | |
Wang | Content, topology and cooperation in in-network caching | |
CN110430098B (zh) | 数据处理系统 | |
CN112364186A (zh) | 媒体推荐信息的呈现方法、装置、设备及存储介质 | |
Papadopouli et al. | Peer-to-peer computing for mobile networks: information discovery and dissemination | |
Zhang et al. | Design and implementation of UGC-oriented news gathering system server-side for emergencies |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |