首页> 中国专利> CDN网络中的视频缓存系统及方法

CDN网络中的视频缓存系统及方法

摘要

本发明涉及一种CDN网络中的视频缓存系统,其中包括CDN管理服务器、内容管理平台、数个缓存服务器、源服务器、数个客户端以及数据库服务器;本发明还涉及一种CDN网络中的视频缓存方法,该方法中实时地从数个缓存服务器中获取片源在一定时间内被客户端访问的次数,且只有该被访问的次数达到阈值时,才将该片源缓存至缓存服务器中,此外,通过对系统中各个片源进行优先级标注,缓存优先级高的片源至缓存服务器,并在缓存服务器容量已满时,删除优先级低的片源。采用该种结构的CDN网络中的视频缓存系统及方法,优化了缓存容量管理,避免发生频繁的缓存替换和带宽浪费,被广泛应用于网络视频点播或直播、网络视频监控等领域。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-01-22

    授权

    授权

  • 2016-03-30

    专利实施许可合同备案的生效 IPC(主分类):H04N21/231 合同备案号:2016320000081 让与人:上海赛特斯信息科技股份有限公司 受让人:赛特斯信息科技股份有限公司 发明名称:CDN网络中的视频缓存系统及方法 申请公布日:20151007 许可种类:普通许可 备案日期:20160302 申请日:20150527

    专利实施许可合同备案的生效、变更及注销

  • 2015-11-25

    著录事项变更 IPC(主分类):H04N21/231 变更前: 变更后: 申请日:20150527

    著录事项变更

  • 2015-11-11

    实质审查的生效 IPC(主分类):H04N21/231 申请日:20150527

    实质审查的生效

  • 2015-10-07

    公开

    公开

说明书

技术领域

本发明涉及网络技术领域,尤其涉及CDN网络,具体是指一种CDN网络中的视频缓存 系统及方法。

背景技术

CDN(Content Delivery Network)内容分发网络实现将内容从中心源站点分发到网络边 缘节点,为用户提供就近性服务。特别地,CDN网络是流媒体系统重要的组成部分,它为保 障流媒体服务质量提供了重要支撑。服务于流媒体业务的CDN网络所需缓存容量和带宽都非 常巨大,合理进行缓存、尽量节省带宽显得尤为重要。

目前在服务于流媒体业务的CDN网络中,当用户访问某一个视频内容时,经过CDN调 度过程后,会使用户访问到离该用户最近的且负载最小的缓存服务器。如果此缓存服务器中 还没有此视频内容的备份,则此缓存服务器会从上一层节点或源节点缓存此视频内容,同时 也向该访问用户提供流媒体服务。这样的缓存策略存在如下问题:1)如果此视频节目是一个 冷门节目,即仅仅会被偶尔访问一次的节目,这样就会导致边缘节点的缓存容量和缓存带宽 的浪费;2)如果此视频是一个热门视频,这样的缓存策略也会导致每个缓存服务器首次响应 该视频的延迟较大,影响用户体验。

发明内容

本发明的目的是克服了上述现有技术的缺点,提供了一种能够优化缓存容量管理、避免 发生频繁的缓存替换和带宽浪费、被广泛应用于网络视频点播或直播、网络视频监控等领域 的CDN网络中的视频缓存系统及方法。

为了实现上述目的,本发明的CDN网络中的视频缓存系统及方法具有如下构成:

该CDN网络中的视频缓存系统,其主要特点是,所述的系统包括:

CDN管理服务器,用以在push缓存进程中接收内容管理平台发送的缓存优先级高的片 源的指令,并控制缓存服务器缓存该优先级高的片源;以及在pull缓存进程中接收数个缓存 服务器上报的各片源在一定时间内被访问的次数,并在某一片源的访问次数超过阈值时,控 制该缓存服务器缓存此片源;

内容管理平台,用以录入或更新各片源的优先级,以及向所述的CDN管理服务器发送缓 存该优先级高的片源的指令;

数个缓存服务器,用以缓存片源以及实时向CDN管理服务器上报各片源在一定时间内被 访问的次数;

源服务器,用以存放片源;以及数个用户端,用以从所述的缓存服务器获取片源并播放。

进一步地,所述的系统还包括:

数据库服务器,用以存储所述的CDN管理服务器、内容管理平台以及数个缓存服务器中 的信息。

本发明还涉及一种CDN网络中的视频缓存方法,所述的方法包括pull缓存进程和push 缓存进程;

所述的pull缓存进程包括以下步骤:

S101:所述的数个缓存服务器实时向CDN管理服务器上报各片源在一定时间内被客户 端访问的次数;

S102:所述的CDN管理服务器判断所述的各片源在一定时间内被客户端访问的次数是 否大于阈值;

S103:如果某一片源在一定时间内被客户端访问的次数大于阈值,则所述的CDN管理 服务器控制与该片源相对应的缓存服务器缓存此片源;

S104:如果各片源在一定时间内被客户端访问的次数均不大于阈值,则继续步骤S101;

所述的push缓存进程包括以下步骤:

S201:所述的内容管理平台录入或更新各片源的优先级;

S202:所述的内容管理平台向所述的CDN管理服务器发送缓存该优先级高的片源的指 令;

S203:所述的CDN管理服务器控制缓存服务器缓存该优先级高的片源。

进一步地,所述的pull缓存进程和push缓存进程之后还包括以下步骤:

S2:所述的缓存服务器向所述的CDN管理服务器发送缓存状态信息;

S3:所述的CDN管理服务器更新所述的数据库服务器。

进一步地,所述的系统还包括数据库服务器,所述的步骤S101之后还包括以下步骤:

S1011:所述的CDN管理服务器更新所述的数据库服务器。

进一步地,所述的系统还包括数据库服务器,所述的步骤S201之后还包括以下步骤:

S2011:所述的CDN管理服务器更新所述的数据库服务器。

进一步地,所述的方法还包括缓存服务器中缓存内容替换进程;所述的缓存服务器中缓 存内容替换进程包括以下步骤:

S301:所述的缓存服务器从所述的CDN管路服务器获取待缓存的片源的容量;

S302:所述的缓存服务器判断所述的待缓存的片源的容量是否小于该缓存服务器的最低 可用容量门限值;

S303:如果所述的待缓存的片源的容量大于或等于该缓存服务器的最低可用容量门限值, 则所述的缓存服务器从所述的CDN管路服务器获取按预设规则排序的片源列表;

S304:所述的缓存服务器删除所述的片源列表中排列在最后的列表,然后继续步骤S302;

S305:如果所述的待缓存的片源的容量小于该缓存服务器的最低可用容量门限值,则所 述的缓存服务器缓存该待缓存的片源。

更进一步地,所述的系统还包括数据库服务器,所述的步骤S305之后还包括以下步骤:

S306:所述的缓存服务器向所述的CDN管理服务器发送缓存状态信息;

S307:所述的CDN管理服务器更新所述的数据库服务器。

采用了该发明中的CDN网络中的视频缓存系统及方法,与现有技术相比,具有以下有益 效果:

1)对近期一定时间内被偶尔访问的冷门片源不进行缓存,从而节省缓存容量和带宽;

2)对入库片源标注或根据需要更新优先级,特别对流媒体的第一个切片文件增加一级优 先级,再按照优先级高低次序将片源排入主动推送分发的队列进行push缓存进程的分发,这 样减小了用户访问的延迟,改善了用户体验;

3)将片源优先级和近期被访问次数这两个因素纳入到替换片源的策略中,这样也优化了 缓存容量管理,避免发生频繁的缓存替换和带宽浪费;

4)本发明能被广泛应用于网络视频点播或直播、网络视频监控等领域。

附图说明

图1为本发明的CDN网络中的视频缓存系统的结构示意图。

图2为本发明的CDN网络中的视频缓存方法的步骤流程图。

图3为本发明的CDN网络中缓存服务器中缓存内容替换进程的步骤流程图。

具体实施方式

为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。

首先,本发明提供一种CDN网络中视频缓存的方法和系统,在此系统中,视频缓存方法 包括:

1)实时记录每个片源从缓存服务器在近期一段时间内被客户访问的次数,只有当这个访 问次数达到一定门限值时,才启动将此片源从中心节点缓存到此边缘节点服务器。这样可以 避免边缘节点的缓存容量和缓存带宽的浪费;

2)对入库到CDN分发网络中的片源进行优先级标注,优先级分为10、9、8……1共十 级,将热门片源的优先级标注为高优先级,同时将每个片源的第一个切片文件的优先级也增 加一级;按照优先级高低次序将片源排入主动推送分发的队列中,主动向各个缓存服务器进 行推送分发;通过主动分发高优先级的片源,减小了用户访问的延迟,改善了用户体验;

3)当缓存服务器容量已经用满的情况下,将片源优先级和近期被访问次数这两个因素纳 入到替换片源的策略中,即优先级低且近期不常被访问的片源将会被替换。这样优化了缓存 容量管理,避免发生频繁的缓存替换,也节省了缓存带宽。

请参阅图1所示,为本发明的CDN网络中的视频缓存系统及方法,其主要包括内容管理 平台、CDN管理服务器、数据库服务器、源服务器和缓存服务器等基本功能模块。

图1中内容管理平台101,主要负责将视频源录入到CDN源服务器,或从CDN源服务 器删除视频源。在本发明中此内容管理平台101还具有标注或更新视频源的优先级功能,还 具有向CDN管理服务器主动发送分发消息的功能,此消息即为将高优先级的片源主动推送分 发到CDN缓存服务器的消息。

图1中数据库服务器102,主要保存CDN网络管理信息,比如各服务器运行状态、实时 负载信息等。在本发明中此数据库服务器102还实时记录各缓存服务器中各个片源在近一段 时间内被终端客户访问的次数,同时也保存由内容管理平台实时下发的片源优先级信息。

图1中CDN管理服务器103,其是本系统的核心模块,CDN中无论是主动推送分发(即 push缓存进程)还是被动智能分发(即pull缓存进程)都是由此模块管理和控制的。在push 缓存进程中,CDN管理服务器接收内容管理平台发送的推送消息,控制缓存服务器进行相应 片源的缓存。在pull缓存进程中,CDN管理服务器实时接收各缓存服务器上报的片源近段时 间内被访问的次数,当某个片源的近期访问次数达到一定的门限值时,控制此缓存服务器进 行此片源的缓存。另外,CDN管理服务器也实时接收各缓存服务器的状态消息,并保存于数 据库服务器中,其中在本发明中还包括保存状态:各缓存服务器的缓存可用容量信息,当可 用容量小于门限值或小于需要缓存片源的大小时,根据缓存服务器中片源的近期被访问次数 和片源的优先级进行缓存替换,近期访问次数少的且优先级低的片源会被首先替换掉。

图1中源服务器104,用于存放源视频,同时也可以作为流媒体服务器为客户端提供流 媒体访问服务。

图1中缓存服务器105,用于缓存源视频服务器中的视频,同时也作为流媒体服务器, 为客户端提供就近的流媒体服务;本发明中,此缓存服务器105还包括定时向CDN管理服务 器上报缓存服务器中每个片源近期被访问的次数等信息。

图1中客户端106,是指视频播放客户端。

下面结合示意图2和图3详细介绍一下本发明中CDN网络的视频缓存方法。

如图2所示,过程201和过程206是并行的,分别表示了push缓存进程和pull缓存进程 的开始过程。

步骤201由内容管理平台实现,完成片源优先级的录入或更新,将片源的优先级分为10 级,优先级由高到低依次为10,9,8,…,1,例如对最热门的片源标注为9级,对每个片 源的第一个分片文件的优先级相应加1,这样最热门片源的第一个切片文件的优先级就为最 高级10级;然后进入下一个步骤202和步骤205。

步骤202也是由内容管理平台实现,将片源按照优先级由高到低排列,针对高优先级的 片源,内容管理平台向CDN管理服务器发送push缓存进程的分发消息,优先级越高的片源, 其分发消息在消息队列中就越靠前。

步骤205由CDN管理服务器调用数据库服务器更新数据库中的记录,这里就是更新片源 优先级记录。

步骤203由CDN管理服务器控制缓存服务器实现片源的缓存,这里就是实现push缓存 进程。

步骤204,缓存服务器将缓存完成后的状态上报给CDN管理服务器。

步骤205,CDN管理服务器调用数据库服务器更新数据库中的记录,这里更新的记录包 括片源在缓存服务器中是否缓存成功的记录以及缓存容量更新的记录。

步骤206,由缓存服务器定时向CDN管理服务器上报各片源在近期一段时间内(如一个 月内)被客户访问的次数,然后进入步骤205和步骤207。

步骤205,CDN管理服务器调用数据库服务器更新数据库中的记录,这里更新的记录是 指该缓存服务器中各片源在近段时间内被客户访问的次数。

步骤207,CDN管理服务器判断各片源近段时间内被客户访问的次数是否大于设定的门 限值,如果大于门限值则进入步骤208,否则不进行处理。

步骤208,CDN管理服务器向该缓存服务器下发pull缓存进程的分发指令,然后进入步 骤203。

步骤203,CDN管理服务器控制缓存服务器完成pull缓存进程的视频缓存,然后进入和 push缓存进程相同的步骤204和步骤205。

如图3所示为CDN网络中,缓存服务器进行缓存替换进程的流程示意图。

步骤301,缓存服务器在进行缓存前,先要向CDN管理服务器查询缓存服务器的当前缓 存容量和最低可用容量的门限值。

步骤302,缓存服务器判断当前可用容量是否小于门限值,如果否,则进入步骤303,是 则进入步骤305。

步骤303,缓存服务器进行正常的视频缓存过程,缓存完成后进入步骤304。

步骤304,缓存服务器向CDN管理服务器上报片源更新状态,然后CDN管理服务器更 新数据库中片源在缓存服务器的状态记录。

步骤305,缓存服务器从CDN管理服务器中获取该缓存服务器中按照近期访问次数和优 先级排序的片源列表信息,然后进入306步骤。

步骤306,缓存服务器删除访问次数最少且优先级最低的片源,然后进入步骤307。

步骤307,缓存服务器再一次判断当前可用容量是否小于门限值,如果否,则进入步骤 303,是则循环进入步骤306。

为了使本领域技术人员更好地理解本发明的CDN网络中的视频缓存系统及方法,请参阅 图1至图3所示,本发明的CDN网络中的视频缓存系统及方法的一具体实施例为:

图2为本发明的CDN网络中的视频缓存方法的步骤流程图。

步骤201在内容管理平台实现,通过管理界面输入/更新片源的优先级,例如将片源的优 先级分为10级,优先级由高到低依次为10,9,8,…,1,对最热门的片源标注为9级,对 每个流媒体片源的第一个分片文件的优先级相应+1,这样最热门片源的第一个切片文件的优 先级就为最高级10级。然后进入下一个步骤202和步骤205。

步骤202也是在内容管理平台实现,将片源按照优先级由高到低排序,针对高优先级的 片源,内容管理平台向CDN管理服务器发送push缓存进程的分发消息,优先级越高的片源, 其分发消息在消息队列中就越靠前,例如通过push缓存进程只发送优先级为10级的片源。

步骤205由CDN管理服务器调用数据库服务器更新数据库中的记录,这里就是更新片源 优先级记录。

步骤203由CDN管理服务器控制缓存服务器实现片源的缓存,这里就是实现push缓存 进程,比如只缓存优先级为10级的片源,这样缓存完成后,客户访问这些片源时即可就近访 问,从而减小响应延迟。

步骤204,缓存服务器将缓存完成后的状态上报给CDN管理服务器。

步骤205,CDN管理服务器调用数据库服务器更新数据库中的记录,这里更新的记录包 括片源在缓存服务器中是否缓存成功的记录以及缓存容量更新的记录。

步骤206,由缓存服务器定时向CDN管理服务器上报各片源在近期一个月内被客户访问 的次数,然后进入步骤205和步骤207。

步骤205,CDN管理服务器调用数据库服务器更新数据库中的记录,这里更新的记录是 指该缓存服务器中各片源在近一个月内被客户访问的次数。

步骤207,CDN管理服务器判断各片源近一个月内被客户访问的次数是否大于设定的门 限值N,例如N取100,如果大于100则进入步骤208,否则不进行处理。

步骤208,CDN管理服务器向该缓存服务器下发pull缓存进程的分发指令,然后进入203 步骤。

步骤203,CDN管理服务器控制缓存服务器完成pull缓存进程的视频缓存,然后进入和 push缓存进程相同的步骤204和步骤205。

图3为本发明的CDN网络中缓存服务器中缓存内容替换进程的步骤流程图。

步骤301,缓存服务器在进行缓存前,先要向CDN管理服务器查询缓存服务器的当前缓 存容量和最低可用容量的门限值,例如最低可用容量的门限值取为50G Bytes。

步骤302,缓存服务器判断当前可用容量是否小于50G Bytes,如果否,则进入步骤303, 是则进入步骤305。

步骤303,缓存服务器进行正常的视频缓存过程,缓存完成后进入步骤304。

步骤304,缓存服务器向CDN管理服务器上报片源更新状态,然后CDN管理服务器更 新数据库中片源在缓存服务器的状态记录。

步骤305,缓存服务器从CDN管理服务器中获取该缓存服务器中按照近一个月内访问次 数和优先级排序的片源列表信息,然后进入306步骤。

步骤306,缓存服务器删除访问次数最少且优先级最低的片源,然后进入步骤307。

步骤307,缓存服务器再一次判断当前可用容量是否小于50G Bytes,如果否,则进入步 骤303,是则循环进入步骤306。

采用了该发明中的CDN网络中的视频缓存系统及方法,与现有技术相比,具有以下有益 效果:

1)对近期一定时间内被偶尔访问的冷门片源不进行缓存,从而节省缓存容量和带宽;

2)对入库片源标注或根据需要更新优先级,特别对流媒体的第一个切片文件增加一级优 先级,再按照优先级高低次序将片源排入主动推送分发的队列进行push缓存进程的分发,这 样减小了用户访问的延迟,改善了用户体验;

3)将片源优先级和近期被访问次数这两个因素纳入到替换片源的策略中,这样也优化了 缓存容量管理,避免发生频繁的缓存替换和带宽浪费;

4)本发明能被广泛应用于网络视频点播或直播、网络视频监控等领域。

在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种 修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限 制性的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号