浅读:PCDN技术基础与应用

发布于 2021-02-02  966 次阅读


什么是CDN技术

CDN的全称是Content Delivery Network,即内容分发网络,是一种基于C/S结构的分布式媒体服务技术平台。是目前采用比较普遍,技术成熟度比较高的一种平台。其目的是通过在现有的Internet中增加一层新的网络架构,通过智能化策略,将用户需要访问的内容发布到分发到距离用户最近、服务质量最好的节点,同时通过后台服务自动的将用户调度到相应的节点,为用户提供最好的服务。这种方案有效缓解了Internet网络拥塞状况,提高用户访问网站的响应速度。从技术上全面解决由于网络带宽小、用户访问量大、网点分布不均等原因,造成的用户访问响应速度慢的问题。

许多网站都将其内容接入某个CDN运营商的平台上,以达到用户对网站的访问速度更快,体验更好的效果。CDN同时也成为了网站的一层“防火墙”,更好的保护的源网站。

传统的CDN技术虽然可以在一定程度上加速流媒体,实现下载、直播和点播。但是其核心仍然是基于集中服务器的结构,跟地域化管制紧密相连,很难降低其扩展的成本。另外,传统CDN技术在高峰时期对突发流量的适应性,容错性等方面仍然存在一定缺陷。随着用户规模的迅速增加,对CDN应用发展提出了较大挑战。

什么是P2P技术

P2P技术则是打破了传统的Client/Server模式,是一种基于对等节点非中心化服务的平台方案。P2P技术发展迅猛,迅速改变了整个互联网传统秩序。“去中性化”符合WEB2.0技术潮流。特别在流媒体领域,由于采用Peer之间对等计算的模式,大大提高了资源共享的利用率,能在较低的成本下,充分利用空闲时间分发数据,避免拥塞,提供具备高实时性,和容错性能的流服务。为流媒体服务开辟了一条崭新的道路。

然而目前单纯的P2P应用亦存在它的问题,P2P业务的盛行会带来网络流量风暴;新闻监管缺失,内容版权管理真空,盗版盛行;还可能导致恶性病毒;给电信运营商以及产业链造成损害。此外,层出不穷的p2P产品采用的拓扑结构、算法模型不尽相同,缺乏标准体系,应用模式也不清晰。这些问题都阻碍了P2P技术进一步发展成为运营商级别的可靠技术平台。

我们常常使用的迅雷下载软件,就是采用P2P技术的典型。

什么是PCDN技术

PCDN技术就是P2P和CDN技术的结合体。(这里的P2P不是指互联网P2P金融,而是一种网络传输技术)

PCDN技术原理的核心设计思想是在CDN网络的边缘节点上引入P2P自治域。由单个或若干个边缘节点设备及其覆盖的最终用户作为对等实体,共同构成一个P2P自治域。在域内利用P2P技术实现资源共享,而自治域之间不发生流量交换。

PCDN技术就是在原CDN技术平台上,再引入P2P技术,以自治域为管理边界,实现更加充分的域内资源共享。(或者反过来说,在p2p的平台上,叠加CDN技术)

PCDN技术原理示意图
PCDN技术原理示意图

此图基本上说明了PCDN的网络架构。

通过此图,我们可以分析一下PCDN技术原理。在某个CDN服务器管理的区域内,此区域内所有用户的访问都在此CDN服务器,如果在加入P2P技术,那么,自然就会减轻CDN节点服务器的压力,同时用户的访问速度也会更加流畅快速。这就是PCDN技术带来的好处。

PCDN的广泛应用

现在的PCDN主要是是以P2P技术为基础,通过挖掘利用电信边缘网络海量碎片化闲置资源而构建的低成本高品质内容分发网络服务。厂家通过集成PCDN SDK(以下简称SDK)接入该服务后能获得等同(或略高于)CDN的分发质量,同时显著降低分发成本。适用于视频点播、直播、大文件下载等业务场景。

典型的使用PCDN后的HTTP请求处理流程如下图:

以阿里云的PCDN服务为例,常用的关键组件包括:

  • Index服务:全局调度,把用户请求调度到最佳的机房。
  • ZooKeeper (Global和Local):服务活动情况汇报给调度服务,动态配置更新。
  • Nginx Proxy:支持私有协议的Nginx代理服务,针对不同文件一致性Hash到不同的Channel服务。
  • Channel服务:记录文件和拥有文件的端点地址信息,为下载提供就近的端点地址。
  • Relay服务:服务P2P建立连接和通讯。
  • Hot服务:Hot文件发现和推送。

目前主流的使用场景有三种:

  • 视频点播:长视频点播,热度集中的短视频点播。
    • 比如爱奇艺(自研HCDN技术),优酷土豆(依托阿里云),Bilibili(采用融合云技术,多供应商同步缓存)。
  • 视频直播:大型晚会赛事直播、地方网台直播、秀场互动直播。
    • 今年B站的跨年晚会顶住了差不多10亿热度流量,并实现4k分辨率,6000kbps码率的推流直播,这其中就离不开PCDN技术的应用。
  • 大文件下载:超过1 MB且热度集中的文件分发,例如应用市场分发、在线音频分发。

从中可以看出,PCDN的接入大幅减低了内容供应商在分发带宽方面的压力,也节省了使用常规CDN的流量的成本。

结语

PCDN通过P2P技术使用多种节点带宽以实现价格和质量的最优化,在质量与CDN相当(或略高)的情况下可降低成本。由于P2P的技术特性,使用PCDN方案还可提高平均下载速率,在大型游戏/固件包下载、应用批量更新等场景中可明显减少用户下载等待时间,提升用户体验。

最后更新于 2021-02-02