一种利用虚拟化技术实现的cdn加速系统及方法

文档序号:9670859阅读:524来源:国知局
一种利用虚拟化技术实现的cdn加速系统及方法
【技术领域】
[0001]本发明涉及音视频等实时内容分发的架构及方法,尤其涉及一种CDN动态加速的系统及方法。
【背景技术】
[0002]随着互联网的用户不断增多,用户对音视频直播画质/音质的要求不断提升,直播内容的码流不断提升,同时在线人数也不断增加,带宽和并发在线人数的要求渐渐成为制约这项业务的瓶颈。以1Mbps的码流计算,1G的带宽仅能支撑1000个用户并发,而要保证1百万用户的同时在线,就需要1000G的带宽,对于单一的直播节目来说,这个费用是非常高昂的。另一方面,1百万的并发流式访问,对普通的服务器的性能来说也是一个不可能完成的任务。所以当前通常采用服务器分层加客户端p2p的技术来分担并发访问的人数同时将服务器的一部访问转移到客户端,从而减轻访问压力和降低带宽的消耗。例如专利CN201510150133.1就采用了这种⑶N+P2P的架构,播放器(客户端)之间作为P2P分组,而服务器之间采用源服务器+CDN分发服务器这样的分层组网。源服务器将直播内容复制若干份,分发到边缘的CDN服务器,每个CDN服务器负责一部分的用户访问,同时通过部署P2P的支撑服务器(tracker,NAT穿透),将客户端组成不同的网络,客户端之间可以互相访问,也可以直接请求⑶N服务器。
[0003]基于这种架构,进一步的可以将⑶N服务器和P2P支撑服务器按照运营商网络/或者是地域划分为不同的自治域(AS),形成若干p2p子网,如专利CN201510006008.3中所提及的组网方式。AS内部是域内连接,AS之间还有少量数据传输,属于域间连接。
[0004]在云计算虚拟化领域,通过虚拟化的技术将分布式的闲散的计算资源,存储资源组织起来,通过网络路由交换,再封装成一个整体并虚拟成一个单一的虚拟机给用户使用,也是当前的一个热点,例如专利CN201410468455.6,就提供了一种虚拟化的存储解决方案。通过在服务器上安装虚拟器的控制单元,控制本地的文件系统,并接受来自网络的集中调度,若干服务器的存储被虚拟化成一个大的存储,对外提供统一的访问接口。即外部调用存储访问的接口,或者是计算的接口,通过集中调度,将存储访问或者是计算需求分配给某一个节点,完成任务后再返回结果给接口。
[0005]尽管采用了⑶N+P2P的方式,有效地增大了直播服务的规模,降低了带宽的消耗,但是这种技术也面临一些问题,第一是这种架构依然需要消耗一定规模的⑶N带宽。例如在直播开始时,客户端需要先有一定量的CDN带宽消耗,才能带动P2P的访问,即客户端需要先有一定数量的内容来自CDN服务器,才能在客户端之间进行P2P的互动;客户端是不稳定的,它可以随时退出P2P网络,如果是关键的P2P节点退出P2P网络,也会导致有突发的较大的CDN访问;如果并发用户数量不足,客户端依然需要直接使用CDN的带宽。第二是这种网络结构是与应用绑定的,也就是说选定好客户端的程序,就会决定了 CDN网络服务器的程序以及组网架构。整个网络各个层次间的耦合度较大。
[0006]另一方面,目前的虚拟化实践中,通常是将小单元的计算能力(CPU),存储能力汇聚起来,通过一个控制模块发送任务给某些个小单元,然后完成后再汇聚成一个大的任务结果。对于零散带宽资源的聚合,则没有对应的实践方案。

【发明内容】

[0007]本发明提出了一种新型的架构方案,依托于布置在互联网最后一英里的特殊设备,具体的如某种可以利用上下行富余带宽的网络接入路由器,或者是装有虚拟化程序并且能上网的电子设备等,其特征是对计算能力和存储能力要求不高,但是在运营商的带宽利用上,处于用户侧个人电脑的上一层,能够长时间稳定接入互联网,故而能够更好的利用运营商的上/下行的带宽。将这些设备通过虚拟化的方式集中起来,提供各种可以定制化的服务。
[0008]在本发明中,这些设备都用物理设备RD表示(real device),他们一起组成一个虚拟服务器VM (virtual machine)。RD在本发明中被看成是一个提供网络服务的容器,SP它可以安装任何满足要求的网络服务程序(RD APP),另一方面它又是一个网络带宽的输出单元,就是说RD可以向互联网提供带宽资源。在这些RD上都安装有一个agent代理程序,即RD上设置有agent模块,agent模块的作用是监控RD的状态,主要是RD上下行带宽状态,获取RD的运行负载,向RD发送指令。在agent的上边,是虚拟化的API,是连接RD和虚拟化调度单元的桥梁。装有相同服务程序的RD会被组织成一个大的虚拟服务器,提供上文所述的网络服务。对于通过网络协议(rtmp/http/rtsp/hls/p2p协议)访问VM的客户端来说,他感受到的就是一个真实的服务器。对于使用上层UI界面的调用者来说,他管理的也就是一个个的真实服务器。
[0009]本发明提供的一种利用虚拟化技术实现的⑶N加速系统,包括:⑶N服务器、虚拟服务器及客户端,
[0010]所述⑶N服务器用于将数据下发到所述虚拟服务器;
[0011]所述虚拟服务器用于将接收到的数据分发至客户端;
[0012]其中,所述虚拟服务器内设置有物理设备RD,所述物理设备RD用于将上下行富余的带宽集合起来。
[0013]进一步地,所述虚拟服务器进一步还包括虚拟化的API,所述虚拟化的API用于根据客户端的请求返回最佳物理设备RD。还包括虚拟化调度单元,所述虚拟调度单元用于向所述虚拟服务器发送调度信息,所述虚拟服务器进一步还包括虚拟化的API,所述虚拟化的API用于实现所述物理设备RD与虚拟化调度单元的交互。所述客户端是支持P2P的客户端或不支持P2P的客户端。
[0014]进一步地,所述虚拟服务器进一步还包括agent模块,所述agent模块用于控制物理设备RD之间的交互。
[0015]进一步地,所述虚拟服务器进一步还包括RD APP模块,所述客户端为支持P2P的客户端,客户端之间组成P2P网络;所述RD APP模块用于将物理设备RD加入到客户端P2P网络中,使物理设备RD与其它RD APP及客户端P2P节点进行数据交换。
[0016]进一步地,还包括云端辅助系统,所述虚拟服务器用于与云端辅助系统进行通信,获取来自源站的信息。
[0017]相应地,本发明还提供了一种利用虚拟化技术实现的⑶N加速方法,包括:
[0018]6.一种利用虚拟化技术实现的⑶N加速方法,其特征在于,包括:
[0019]S1、⑶N服务器将数据下发到虚拟服务器;
[0020]S2、虚拟服务器将接收到的数据分发至客户端;
[0021]S3、所述虚拟服务器内设置有物理设备RD,所述物理设备RD将上下行富余的带宽集合起来。
[0022]进一步地,所述虚拟服务器进一步还包括虚拟化的API,所述虚拟化的API根据客户端的请求返回最佳物理设备RD。
[0023]进一步地,所述虚拟服务器进一步还包括agent模块,所述agent模块控制物理设备RD之间的交互。所述客户端是支持P2P的客户端或不支持P2P的客户端。
[0024]进一步地,所述虚拟服务器进一步还包括RD APP模块,所述客户端为支持P2P的客户端,所述RD APP模块用于将物理设备RD加入到客户端P2P网络中
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1