使用阿里云PCDN降低内容分发成本

简介: 在云栖社区在线技术培训上,阿里云P2P产品专家曾林青从产品特性、技术架构、接入流程和典型案例四个角度出发为大家讲解了阿里云PCDN服务,该服务基于P2P技术,依托海量的分布式P2P节点构建,在保证服务质量的同时可以显著降低分发成本,适用于视频点播、视频直播、大文件下载等业务。

阿里云PCDN(P2P CDN简称)是基于P2P技术的内容分发网络产品,相比CDN而言,PCDN单价较低,更适于大流量内容分发。PCDN产品是与传统CDN互补协作的关系,以P2P技术为核心的分布式PCDN系统可与传统CDN、云CDN无缝集成,形成互补协作,PCDN相对于CDN进行了相应的扩容、提速、降费:

(1)扩容,扩充放大CDN容量。PCDN可将原CDN容量按约1:5比例放大,使用PCDN后仅需要较小的 CDN规模即可获得约5倍的整体扩容效果。

(2)提速,降低播放延迟及进行流畅率优化。通过调用海量分布式P2P节点, 平均播放流畅率 > 97%,平均首播时间小于1秒。
(3)降费,整体成本降低30%以上,PCDN相对传统CDN成本降低40% 以上,与CDN混合集成后整体成本 降低30%以上。

产品特性

ec2e8ec8b3cb9eba27a5ec5a5a3625c38d6a8b08 

PCDN主要应用的业务领域包括视频点播、视频直播、大文件下载;应用场景涵盖互动娱乐、教育、演出和赛事;目前支持的平台系统包括Web Flash、IOS、Android、PC Client、OTT,支持的格式协议包括MP4、FLV、RTMP、HLS。其产品具有用户体验好、SDK强大易用、高P2P分享率、高安全性、高可用性、成熟稳定六大特性:

(1)用户体验好:平均播放流畅率>97%;平均首播时间小于1秒。

(2)SDK强大易用:支持Web Flash/Andriod/iOS/OTT等平台下点播、直播;提供优酷播放器,通过多年视频播放技术沉淀,效果媲美一线视频应用;接口统一,各终端平台适配简单。

(3)高P2P分享率:P2P全天平均分享率>50%,高峰期分享率60%~80%

(4)高安全性:保护关键数据,防盗链抵御DDoS攻击;安全通道通过加密机制保证媒体数据的正确性。

(5)高可用性:可根据运营商、渠道、地区等多维度进行运行参数修改和启停控制;数据统计系统可以实时监控、查询加速状态和效果。

(6)成熟稳定:多年来一直为优酷土豆提供优质的播放加速;拥有内网穿透、缓存处理、种子管理、传输策略等各方面的核心技术和专利40余

移动端优化

b2afe8fe0082f8bfbbb4f3eacdd77ad7b0076d79 

最近几年,移动端占比逐步攀升,视频播放行为越来越多地发生在移动端,在移动端开发P2P应用存在天然的挑战:一是由于网络接入的情况多变,而客户对APP的上传行为有着比较苛刻的限制或者是干脆不上传,一旦P2P应用没有上传,则传统的P2P厂商很难继续提供服务。PCDN为了应对上传限制,通过使用路由、区核节点,在移动端上传受限情况下也能达到良好的效果。第二个挑战是因为移动端设备性能、存储、功耗上的限制,对P2P应用有着较为严格的限制,PCDN针对移动设备做了很多优化:I/O方面支持内存模式,不必读写TF/ROM;资源使用及功耗方面,PCDN做到了极低的系统资源占用,耗电量使用P2P应用和不使用P2P应用基本无区别;机型及版本适配方面,适配各种Android/iOS设备及系统版本。

 

技术架构

视频点播和大文件下载

下面看一下PCDN的技术架构和工作原理,具体从视频生产、传输、消费三个环节探究PCDN的工作方式。

2df9f5c6823d44a08a594576fe9765b9e448b46f 

在视频生产环节,客户通过版权采购、用户上传分享等方式产生媒资库,存储在阿里云的OSS上,形成源站;在视频传输和视频消费环节,定义了一、二、三级加速概念,从源站将内容推送到CDN,这是最传统的CDN加速,这里称之为一级加速;P2P的节点又细分为路由器、运营商区核和商业WiFi,称之为PCDN网络的二级节点,PCDN网络中的调度会定期主动把CDN网络中热点资源推送到PCDN网络的二级节点上;在视频播放端,由于集成了PCDN的SDK,在请求播放时会优先命中附近的路由器、运营商区核、商业Wifi是否存在所请求资源,如果存在,则直接从这些节点中获取资源;否则从CDN获取资源,通过这种机制实现了二级加速,减少了CDN的使用量;在播放端,尤其是SDK中,它不仅可以到二级节点中命中所请求的资源,还可以通过彼此之间的上传和下载命中所需资源,这种消费端彼此命中资源的模式称之为三级加速,进一步降低了二级节点的使用量。通过将PCDN网络和CDN网络结合起来,通过一、二、三级加速达到了较好的用户体验,同时降低了成本。

直播

1bc8b62df54e22ae1d014c42d2376e12781b58ef 

视频直播的技术架构如上图所示,整体流程与点播基本一致,它们的区别在于,直播通常分为两类:HLS切片,它可以利用点播的思想来实现直播,它的原理和刚才的点播实际上是一样的,HLS切片直接被CDN分发,热点内容再分发到二级节点上,如果SDK能够在二级节点命中请求,则从二级节点中获取内容,进行播放,如果不命中或超时则回源CDN。对于直播流RTMP/FLV,它是流的形式,并不是小切片或者文件的形式,因此在CDN网络分发以及被PCDN网络识别和打包前,必须要将视频流推送到切片服务,经处理后分发到CDN中,也就是通过切片服务将RTMP/FLV直播流转换成类似HLS小视频切片,后续处理和HLS相同。

节点布局

为了应对移动端上传的限制,在PCDN的网络中专门部署大量的二级节点,包括运营商汇聚层节点(区核)、商业网络节点(商业wifi、小区宽带)、路由器节点(路由宝及合作机制)。通过这样的节点布局,覆盖了90%以上地级市和五大运营商,P2P带宽储量保守估计达10Tbps。

 

接入流程

下面来看一下如何接入和使用PCDN服务。

e08372ad105f98473381207084ab30cf05c778be 

使用PCDN的大致步骤如上图所示,首先客户了解到品,会同我们售前人员进行需求沟通,主要沟通的问题包括业务场景和带宽需求量,特别是用户群、终端分布、媒资热度和格式;如果沟通之后确定PCDN适用于客户场景,下一步客户需要通过文档和技术人员指导在各端SDK集成联调;第三个环节包括局部上线和正式上线,局部上线时分渠道/地区/运营商逐步打开P2P开关,阶段性评估播放体验,确认一切无误,再全量打开P2P开关,正式投入运营。

接入流程:媒资流量调研

447ec3b7c8ca11ba13a7bcfb5bda5f7f507c000a 

我们在与客户沟通的过程中,需要明确客户的媒资热度,媒资热度反映的是媒资库中热点内容流量占比情况,例如:10%的内容占据90%的流量。图中左侧是媒资库热度分布曲线,横轴是累计媒资数量,纵轴可以是CDN流量(TB)或播放量(vv)、m3u/ts的媒资文件。如果视频播放的频率是完全平均分布的,则媒资热度分布曲线呈现长尾下均匀分布,如图中黄色曲线所示;如果极少数的视频带来绝大多数播放量,则媒资热度分布曲线呈现头部效应下分布,如图中绿色曲线所示,曲线越陡峭则媒资热度集中度越高,实施P2P方案的效果就越好。

接入流程:PCDN SDK

fd3a3e7d80cd251a6644e7a00273bbb958696103 

在接入过程中,主要工作在对接SDK上。相比较而言,PCDN的SDK接口层还是较为简洁的,宿主APP实际上只需要对接SDK接口层所提供的几个简单的方法和接口即可实现整个逻辑,一些复杂的业务实现屏蔽在SDK的内核中。

下面来看一个简单的PCDN SDK接口的调用过程。

0795b6c4147847afe2657c20849fb8fc9cf29564 

 

整体调用过程分为三步:第一步启动P2P(调用start()命令);第二步利用pcdn_address函数转换播放地址,在向P2P系统播放请求URL时,首先调用pcdn_address函数对原地址(http://a.com/xxx.mp4)进行转换,如果P2P系统成功返回http://127.0.0.1:xxxx/xxx.mp4地址,则说明该系统可以供给P2P流量,播放器无需知晓这个地址是怎么来的,只需要按照返回地址播放视频即可,播放时使用的是P2P流量;如果P2P策略被禁用或者不识别域名无法提供服务时,会返回原地址(http://a.com/xxx.mp4),宿主APP像访问CDN一样访问该地址即可。整体过程对用户而言都是透明的,且没有其他性能代价。第三步:当整体业务流程结束时,停止P2P(调用stop()命令)。

 

效果分析

下面通过两种服务模式对PCDN的效果进行分析。

PCDN服务模式一:与阿里云CDN集成

e4e05b947c7a5d9c7ce2b39e1f99743cdde6385c 

PCDN与阿里云CDN集成使用的大致结构如上图所示。首先给定预设条件:客户切给阿里云带宽15Gbps;PCDN覆盖率80%,P2P分享率50%。客户的各种终端都需要升级带SDK的APP才能使用PCDN的流量,一旦涉及软件升级,是很难做到100%,总有老版本因为各种问题无法升级,因此假定80%覆盖并使用SDK的终端。

上图中虚线部分包括三种类型的移动终端,分别是未集成SDK、集成SDK但未使用PCDN服务以及集成SDK并使用PCDN服务终端。当APP发起资源请求时,客户端通过负载均衡/流量调度系统把该请求调度给阿里云CDN,如果是由集成SDK并使用PCDN的终端发起的请求,则由阿里云PCDN响应该请求,对其提供服务,阿里云PCDN在该预设条件下报表用量为12G(15×80%),按PCDN单价计费;当请求是由其他两类终端发出,则由阿里云CDN响应其请求,并提供服务,在阿里云CDN报表用量为3G(15-12),按CDN单价计费。

345e6711e51bae4f37b2e06f99b25b8681c59e72 

PCDN与阿里云CDN集成之后的节省效果如上图所示,两者相比较,通过阿里云CDN与PCDN混合方案,每月能够节省32%的成本。

PCDN服务模式二:与任意CDN集成

4f3f0957b1f84b8eac4bd6535b7fbbf3ebfe1d1c 

除了阿里云CDN之外,PCDN还可以与任意第三方CDN集成使用。预设条件不变,客户总带宽需求15Gbps;PCDN覆盖率80%,P2P分享率50%;客户终端不变,同样是三种类型。当用户APP请求资源时,集成SDK并使用PCDN的终端会出现两种状况:一是请求命中P2P资源,使用P2P带宽,则阿里云PCDN报表为6G(15G*80%*50%),按PCDN单价计费;二是尽管集成SDK并使用了PCDN,但请求未命中P2P资源,则回源CDN获取资源,则这部分会计入第三方CDN报表中,则第三方CDN报表为9G(15G-6G)。

 

典型案例

最后介绍两个PCDN在实际中使用的典型案例。

OTT点播

64673538ee3187a71ec13fd27e6b1b98d3b1a0f5 

上图是OTT点播的架构模型,在该结构中使用OSS做源站,多家CDN做分发,其中PCDN仅对接阿里云CDN,也就是仅对请求阿里云域名的流量起作用,帮助客户降低了使用阿里云产品的成本。

互动直播

671096d4ac349283ae83e322cc380c4020814805 

上图是互动直播案例架构图,在该案例中PCDN对接所有厂商的CDN(不单是阿里云CDN),使用阿里云直播中心推流,视频流其中一条路径是进入Rtmp/Flv切片服务进行切片,原始直播流和切片后的文件都通过阿里云CDN分发,利用阿里云CDN作为根节点(是第三方CDN的源站),对于各CDN的请求都可以使用PCDN带宽。利用该架构可以降低客户使用各家CDN的成本。

相关文章
|
2月前
|
机器人
阿里云 RPA 的成本效益分析
机器人流程自动化(RPA)技术在企业数字化转型中扮演着越来越重要的角色。阿里云 RPA 作为一种高效的自动化解决方案,不仅可以提高业务效率,还可以降低运营成本。本文将对阿里云 RPA 的成本效益进行分析,帮助企业更好地评估和利用这一技术。
|
3月前
|
人工智能 机器人 Serverless
魔搭大模型一键部署到阿里云函数计算,GPU 闲置计费功能可大幅降低开销
魔搭大模型一键部署到阿里云函数计算,GPU 闲置计费功能可大幅降低开销
580 2
|
2月前
|
域名解析 网络协议 安全
阿里云CDN
本文介绍阿里云CDN产品中涉及的基本概念,便于您更准确地理解和使用CDN产品。
59 5
|
12天前
|
弹性计算 前端开发 Java
使用阿里云 mqtt serverless 版本超低成本快速实现 webscoket 长链接服务器
使用阿里云 MQTT Serverless 可轻松实现弹性伸缩的 WebSocket 服务,每日成本低至几元。适用于小程序消息推送的 MQTT P2P 模式。前端需注意安全,避免 AK 泄露,采用一机一密方案。后端通过调用 `RegisterDeviceCredential` API 发送消息。示例代码包括 JavaScript 前端连接和 Java 后端发送。
103 0
|
1月前
|
安全 网络安全 CDN
阿里云CDN HTTPS 证书配置流程
阿里云CDN HTTPS 证书配置流程
167 1
|
2月前
|
弹性计算 数据安全/隐私保护
【零成本】【懒人版】阿里云上雾锁王国/Enshrouded服务搭建教程
【零成本】【懒人版】雾锁王国/Enshrouded服务搭建教程。随着游戏行业的不断发展,玩家们对于游戏体验的要求也越来越高。为了满足玩家们的需求,腾讯云提供了游戏联机服务器一键部署方案,本文将为大家分享基于阿里云服务器10秒钟完成雾锁王国游戏服务器搭建教程,让大家的游戏体验更加顺畅。
|
2月前
|
弹性计算 Linux 数据安全/隐私保护
阿里云4核16G服务器搭建幻兽帕鲁成本仅需26元
阿里云4核16G服务器搭建幻兽帕鲁成本仅需26元,幻兽帕鲁Palworld多人游戏专用服务器一键部署教程,阿里云推出新手0基础一键部署幻兽帕鲁服务器教程,傻瓜式一键部署,3分钟即可成功创建一台Palworld专属服务器,成本仅需26元,阿里云百科分享2024年新版基于阿里云搭建幻兽帕鲁服务器教程
|
2月前
|
弹性计算 安全 Linux
成本26元一键部署阿里云幻兽帕鲁联机服务器,阿里云出品
成本26元一键部署阿里云幻兽帕鲁联机服务器,阿里云出品,如何自建幻兽帕鲁服务器?基于阿里云服务器搭建幻兽帕鲁palworld服务器教程来了,一看就懂系列。本文是利用OOS中幻兽帕鲁扩展程序来一键部署幻兽帕鲁服务器,阿里云百科分享官方基于阿里云服务器快速创建幻兽帕鲁服务器教程:
96 0
|
3月前
|
存储 人工智能 Kubernetes
阿里云ACK助力GPU成本优化,实现灵活管理
摘要:本文将介绍如何在阿里云容器服务ACK中,利用cGPU技术,共享GPU算力,提高GPU利用率,降低TCO。
58 2
|
25天前
|
Ubuntu JavaScript 关系型数据库
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
在阿里云Ubuntu 20.04服务器上部署Ghost博客的步骤包括创建新用户、安装Nginx、MySQL和Node.js 18.x。首先,通过`adduser`命令创建非root用户,然后安装Nginx和MySQL。接着,设置Node.js环境,下载Nodesource GPG密钥并安装Node.js 18.x。之后,使用`npm`安装Ghost-CLI,创建Ghost安装目录并进行安装。配置过程中需提供博客URL、数据库连接信息等。最后,测试访问前台首页和后台管理页面。确保DNS设置正确,并根据提示完成Ghost博客的配置。
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客