首页> 中国专利> 一种CDN‑P2P网络架构的流媒体缓存替换方法

一种CDN‑P2P网络架构的流媒体缓存替换方法

摘要

本发明公开了一种CDN‑P2P网络架构的流媒体缓存替换方法,包括对超级节点PSN侧执行基于视频热度优先的先进先出操作和对普通用户终端PCN执行基于保护预分发的本地服务优先操作,前者具体包括PTS接收到PSN的删除命令后,进入拒绝该删除内容定位请求的状态,并保持到本次删除结束,同时进行通知,进入拒绝对该内容新下载请求的状态,并保持到本次删除结束,当PTS上检测到所有PCN结束点播状态时,PTS删除该删除内容目录,同时通知PSN删除该删除内容,PSN接收到PTS的命令后从硬盘中删除该内容。本发明克服了传统的缓存替换策略不能保护内容预分发内容和正在服务其他用户内容的问题,同时缓解了内容热度不能及时更新或者内容热度更新需要浪费大量的流量的问题。

著录项

  • 公开/公告号CN107181734A

    专利类型发明专利

  • 公开/公告日2017-09-19

    原文格式PDF

  • 申请/专利权人 南京邮电大学;

    申请/专利号CN201710222693.2

  • 发明设计人 魏昕;丁平船;李智林;周亮;

    申请日2017-04-07

  • 分类号H04L29/06(20060101);

  • 代理机构32207 南京知识律师事务所;

  • 代理人李湘群

  • 地址 210003 江苏省南京市鼓楼区新模范马路66号

  • 入库时间 2023-06-19 03:23:15

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-03-17

    未缴年费专利权终止 IPC(主分类):H04L29/06 专利号:ZL2017102226932 申请日:20170407 授权公告日:20200407

    专利权的终止

  • 2022-03-22

    专利实施许可合同备案的注销 IPC(主分类):H04L29/06 专利申请号:2017102226932 专利号:ZL2017102226932 合同备案号:X2020980006913 让与人:南京邮电大学 受让人:南京金学堂信息科技有限公司 发明名称: 解除日:20220304

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

  • 2020-04-07

    授权

    授权

  • 2017-10-20

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20170407

    实质审查的生效

  • 2017-09-19

    公开

    公开

说明书

技术领域

本发明属于多媒体技术领域,具体涉及一种CDN-P2P网络架构的流媒体缓存替换方法。

背景技术

CDN-P2P融合内容分发网络是一个可管理性、高扩展性、高可靠性、低成本的内容分发平台,不但结合了内容分发网络CDN(Content Distribution Network)和P2P(Peer-to-Peer)二者的优点,而且也克服了二者的不足。因此成为目前较为可行的流媒体内容分发技术,是近年来流媒体内容分发技术研究领域的热点,有望成为未来流媒体内容分发网络架构的主流技术。

缓存替换方法是对用户观看的流畅度、播放体验的一个很重要的影响因素,一个好的缓存替换方法,不仅可以降低对服务器的压力,更重要的是提高用户视频观看流畅度。

现有的缓存替换方法,绝大多数都只是考虑到视频的热度,没有考虑对内容预分发内容和正在服务其他用户内容的保护,把这两种内容当做普通的内容进行缓存并删除掉。有的缓存策略即便是考虑了视频的热度,也没有对热度采取一定更新的措施。这样造成以下问题:第一,对内容预分发的内容没有得到保护,浪费了内容预分发的流量。降低其他内容的传输效率。第二,把本地正在服务其他用户的内容替换删除,会降低服务其他用户的成功率,进而影响其他用户观看视频的流畅度。第三,视频热度不能及时跟新,造成缓存的视频内容整体利用率低,最终造成整个系统内容命中率低。

有鉴于此,有需要提出一种CDN-P2P网络架构的流媒体缓存替换方法,能够充分保护预分发内容,尽可能保证正在提供服务的内容不被替换掉,并解决视频热度不能及时更新等问题,从而提高内容命中率和观看流畅度。

发明内容

本发明要解决的技术问题是为了克服传统的缓存替换策略不能保护内容预分发内容和正在服务其他用户内容的问题,同时缓解内容热度不能及时更新或者内容热度更新需要浪费大量的流量等问题而提出一种CDN-P2P网络架构的流媒体缓存替换方法。该方法能够尽可能地保护预分发内容以及正在服务其他用户的内容,从而得到更高的内容命中率和更好的视频观看流畅度,提高用户观看视频的体验,同时降低CDN边缘服务器负载。

为解决上述技术问题,本发明所采用的技术方案是一种CDN-P2P网络架构的流媒体缓存替换方法,包括以下步骤:

S1:对超级节点PSN侧执行基于视频热度优先的先进先出操作,具体步骤如下:

(1)PSN将删除内容通知PTS;

(2)PTS接收到PSN的命令后,进入拒绝该删除内容定位请求的状态,该状态一直保持到本次删除结束;

(3)同时通知所有在线PCN删除该内容;

(4)PCN接收到删除命令后,进入拒绝对该内容新下载请求的状态,该状态同样一直保持到本次删除结束,但已经建立的连接请求可以继续;

(5)当PTS上检测到所有PCN结束点播状态时,PTS删除该删除内容目录,同时通知PSN删除该删除内容;

(6)PSN接收到PTS的命令后从硬盘中删除该内容;

S2:对普通用户终端PCN执行基于保护预分发的本地服务优先操作,具体步骤如下:

(1)首先判断是否有PSN下发的删除命令;

(2)如果有PSN下发的删除命令,并且没有超出阈值,则进行如下步骤:

(2-1)PCN接收到PSN发送的具体内容的删除命令;

(2-2)PCN拒绝该内容新的服务请求;

(2-3)判断PCN是否在为其他用户提供该内容的服务,如果正在提供服务,则等待服务结束;

(2-4)判断当前终端是否对该内容播放完毕,若用户播放完毕则执行删除,流程结束;

(3)如果存储空间超出了阈值,则执行删除命令。

进一步,如果存储空间超出阈值则执行删除命令的具体步骤为:

(1)首先将用户的存储空间上划分为五个区:播放区、最近播放区、预分发区、服务区、普通区,其中播放区保存的是正在播放视频的内容,预分发区存放的是系统预分发给当前用户PCN的内容,服务区存放的是当前用户PCN正在服务其他用户的内容,普通区存放的是最近播放视频热度最高的视频块;

(2)当存储空间超出ST时,先计算普通区每一块的未来价值FV,根据FV的大小对块视频进行排列,从中选取若干块视频,进行删除,选取的块数由起始阈值ST与结束阈值ET对应空间的大小决定,若该大小大于整个普通区,则删除整个普通区,否则选取N块视频进行删除,结束本次删除过程,其中,

T开始表示视频进入用户的时刻,T删除表示本次删除的时刻,Pij表示视频Vi的第j块块视频热度,C表示视频进入系统被提供其他终端服务次数;

(3)对最近播放区选取视频热度P最小的视频进行删除,每次删除一个视频,判断存储空间是否低于阈值ET,若低于阈值,本次删除过程结束,如整个最近播放区删除之后还大于阈值ET,则进行删除预分发区;

(4)预分发的内容按照预分发等级由高到低排列,优先选择删除预分发等级低的内容,每次删除一块视频时,都要判断是否低于阈值ET,直至低于阈值ET,本次删除过程结束,如果预分发区删除之后存储空间还是大于阈值ET,则选择服务区的内容进行删除,直到小于阈值ET。

作为优选,上述步骤2中选取N块视频时,该N块视频大小和两阈值之差的大小相同或者近似相同。

步骤4中,选择服务区的内容进行删除时优先选择服务次数少的视频块进行删除。

与现有技术相比,本发明的有益效果在于:

1,本发明克服了传统的缓存替换策略不能保护内容预分发内容和正在服务其他用户内容的问题,同时缓解了内容热度不能及时更新或者内容热度更新需要浪费大量的流量的问题。

2,本发明能够尽可能地保护预分发内容以及正在服务其他用户的内容,从而得到更高的内容命中率和更好的视频观看流畅度,提高用户观看视频的体验,同时降低CDN边缘服务器负载。

附图说明

图1为本发明CDN-P2P混合组网架构。

图2为本发明用户PCN内容区域划分图。

图3为本发明PSN侧内容删除完整流程图。

图4为本发明PCN执行删除内容的流程图。

图5为本发明PCN存储空间超出阈值ST时,执行的过程删除流程。

具体实施方式

现结合附图对本发明做进一步详细的说明。

本发明提出的CDN-P2P网络架构的流媒体缓存替换方法,包括如下步骤:

如图1所示,CDN-P2P流媒体系统中,对于每一个P2P自治域中都会有对应超级节点(PSN),和索引服务器(PTS),他们用来管理每一个P2P自治域,PSN主要功能是提供内容服务,PTS主要功能是对域内的内容目录进行管理。提供视频内容给用户。系统中,PSN和普通节点PCN的缓存替换策略是不同的。

对于超级节点PSN缓存替换策略,采用基于视频热度优先的先进先出策略VPF-FIFO(Video Popularity-First Input First Output,VPF-FIFO)。具体流程如下:

PSN管理视频内容是以一个完整视频为单位进行存储的。当PSN存储空间超出触发阈值ST(Start Threshold)(默认视频内容占用PSN存储空间的90%)时,就需要对PSN内容进行替换删除,删除的内容主要根据每一个视频的热度P大小进行选择,对视频的热度由大到小进行排序,选出热度最小的视频进行删除,当视频的热度P大小相同时,再根据视频的大小进行选择内容,当大小相同时,选择视频达到系统时间早的进行删除。当选定一个视频进行删除时,首先把删除命令下发到所有在线的用户,通知所有在线的用户删除该内容,触发所有在线用户的老化流程,然后判断P2P自治域中,没有用户点播该视频,当没有用户点播该视频才能执行删除,每次删除一个视频都要判断PSN存储空间是否低于终止阈值ET(End Threshold)(默认视频内容占用PSN存储空间的85%),当达到终止阈值ET时,结束本次删除。

对于普通的用户PCN提出了基于保护预分发的本地服务优先策略PDC-LSF(Protected Preparatory Distribution Content-Local Service First)具体内容如下:

首先判断是否接收到PSN下发的删除命令。当PCN接收到PSN下发的删除命令后,首先该PCN会拒绝其他用户对该内容的请求,同时把已经对该内容建立连接的请求执行完毕,之后会等待该PCN用户是否播放完毕,如果播放完毕,才能删除该内容。本次删除过程结束。

如果没有接收到PSN下发的删除命令,则判断是否有新的视频内容缓存到本地PCN,有则判断PCN本地存储空间是否超出阈值ST(默认视频内容占用PCN存储空间的90%),若没有超出则结束本次替换删除过程。若超出阈值,删除步骤如下:

步骤1:首先将终端用户的存储空间上划分为五个区:播放区、最近播放区、预分发区、服务区、普通区。其中播放区保存的是正在播放视频的内容,最近播放区保存的是最近播放的两个视频,预分发区存放的是系统预分发给当前用户PCN的内容,服务区存放的是当前用户PCN正在服务其他用户的内容。普通区存放的是最近播放视频热度最高的视频块(因为一个视频每一块的热度是不同的)。具体分区如图1所示。

步骤2:当存储空间超出ST时,先计算普通区每一块的未来价值FV(Future Value)根据FV的大小对块视频进行排列,从中选取若干块视频,进行删除。选取的块数由起始阈值CTT与结束阈值ET(默认视频内容占用PCN存储空间的85%)对应空间的大小决定,若该大小大于整个普通区,则删除整个普通区,继续步骤3,否则选取N块(该N块视频大小和两阈值只差大小相同或者近似相同)视频进行删除,结束本次删除过程。其中,

T开始表示视频进入本地PCN的时刻

T删除表示本次删除的时刻

Pij表示视频Vi的第j块块视频热度。

C表示视频进入本地PCN被提供其他终端服务次数

步骤3:对最近播放区选取视频热度P最小的视频进行删除。每次删除一个视频,则判断存储空间是否低于阈值ET,若低于阈值,本次删除过程结束。如整个最近播放区删除之后还是不能低于阈值ET,则进行删除预分发区。

步骤4:预分发的内容按照预分发等级由高到低排列,优先选择删除预分发等级低的内容。和删除最近播放区类似,每次删除一块视频时,都要判断是否低于阈值ET,直至低于阈值ET本次删除过程结束。如果预分发区删除之后存储空间还是大于阈值ET,则选择服务区的内容进行删除,优先选择服务次数少的视频块进行删除,直到小于阈值ET。因为正在播放区的内容只能有一个,所以删除完正在服务区,储存空间一定小于阈值ET。

图1是本缓存策略的CDN-P2P组网架构,在CDN网络中引入P2P自治域,采用分制的思想。不同地域的用户分别划分到不同的P2P自治域,如图1的组网架构所示,CDN连接不同的P2P自治域,各个域之间不能互相通信,域中每个普通节点PCN(P2P Client Node)之间可以互相通信。每个域中都有一个索引服务器PTS(P2P Tracker Subsystem)和一个超级节点PSN(P2P Super Node),PTS负责维护域用户PCN的加入和离开以及负责发现域中的资源。PSN主要提供该域中热门的视频内容。

一个普通节点(用户)视频内容请求的过程如图1的组网架构的序号所示:①普通节点PCN(用户)请求内容先向PTS发起内容定位请求。②.PTS返回有该视频的且可提供服务的普通节点PCN。③.该节点(用户)与目标节点(目标用户)建立连接。④.获取视频资源。⑤.当域中的其它节点(用户)不能满足视频的获取时,则该节点会转向超级节点PSN去获取内容;⑥.超级节点返回视频资源;⑦.如果超级节点也不能满足要求,则该节点转向CDN去请求视频资源;⑧.CDN返回视频资源。

PSN内容删除流程如图3所示:

(1)PSN将删除内容通知PTS。

(2)PTS接收到PSN的命令后,进入拒绝该删除内容定位请求的状态,该状态一直保持到本次删除结束。

(3)同时通知所有在线PCN删除该内容。

(4)PCN接收到删除命令后,进入拒绝对该内容新下载请求的状态,该状态同样一直保持到本次删除结束,但已经建立的连接请求可以继续。

(5)当PTS上检测到所有PCN结束点播状态时,PTS删除该删除内容目录,同时通知PSN删除该删除内容。

(6)PSN接收到PTS的命令后从硬盘中删除该内容。

PCN侧的内容删除过程如图4所示:

(1)首先判断是否有PSN下发的删除命令

(2)如果有PSN下发的删除命令,并且没有超出阈值,则进行如下步骤:

(2-1)PCN接收到PSN发送的具体内容的删除命令。

(2-2)PCN拒绝该内容新的服务请求。

(2-3)判断PCN是否在为其他用户提供该内容的服务。如果正在提供服务,则等待服务结束。

(2-4)判断当前终端是否对该内容播放完毕。若用户播放完毕则执行删除,流程结束。

(3)如果存储空间超出了阈值则其删除的流程如图5所示,具体步骤如下:

(3-1)首先将用户的存储空间上划分为五个区:播放区、最近播放区、预分发区、服务区、普通区。其中播放区保存的是正在播放视频的内容,预分发区存放的是系统预分发给当前用户PCN的内容,服务区存放的是当前用户PCN正在服务其他用户的内容。普通区存放的是最近播放视频热度最高的视频块(因为一个视频每一块的热度是不同的)。具体分区如图2所示。

(3-2)当存储空间超出ST时,先计算普通区每一块的未来价值FV(Future Value)根据FV的大小对块视频进行排列,从中选取若干块视频,进行删除。选取的块数由起始阈值ST与结束阈值ET对应空间的大小决定,若该大小大于整个普通区,则删除整个普通区,继续步骤3,否则选取N块(该N块视频大小和两阈值只差大小相同或者近似相同)视频进行删除,结束本次删除过程。其中,

T开始表示视频进入用户的时刻

T删除表示本次删除的时刻

Pij表示视频Vi的第j块块视频热度。

C表示视频进入系统被提供其他终端服务次数

(3-3)对最近播放去选取视频热度P最小的视频进行删除。每次删除一个视频,则判断存储空间是否低于阈值ET,若低于阈值,本次删除过程结束。如整个最近播放区删除之后还是不能低于阈值ET,则进行删除预分发区。

(3-4)预分发的内容按照预分发等级由高到低排列,优先选择删除预分发等级低的内容。和删除最近播放区类似,每次删除一块视频时,都要判断是否低于阈值ET,直至低于阈值ET本次删除过程结束。如果预分发区删除之后存储空间还是大于阈值ET,则选择服务区的内容进行删除,优先选择服务次数少的视频块进行删除,直到小于阈值ET。

需要说明的是,以上情景下的实施方式只是本发明的优选方式,在不违背本发明的精神的前提下所做的任何变形都属于本发明的保护范围。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号