从CDN支持直播加速的协议说起

最近在做一个CDN的直播加速业务测试,客户给出的直播网站的域名是一个xxx.m3ua地址,一开始有点奇怪,为什么直播业务给出的一个是m3ua媒体文件地址,而不是一个实时的数据流地址呢?

上网查了一下,原来是这样的,客户直播网站是基于 HLS (HTTP Live Streaming) 协议构建的,HLS是苹果公司基于http流媒体传输协议,它的特点是并不是一下请求完整的数据流,它在服务端讲媒体数据切割成持续的时长较短的ts小文件,并通过M3UA索引文件按序访问ts文件,客户端不停的从服务端获取文件,从而实现视频播放。
但是HLS的实时性差,时延在10s以上,大量的文件碎片会对存储和缓存都有一定的挑战,对CDN厂家要求更高。

目前主流的直播协议还有RTMP、HTTP-FLV,这两个都是Adobe公司推出的。
RTMP,全称 Real Time Messaging Protocol,即实时消息传送协议。基于TCP传输,默认使用1935端口。在传输过程中会把消息切割成小块,通过TCP传输,接收端收到后恢复成媒体数据。 RTMP 的延迟相对较低,一般延时在 1-3s 之间。
由于这是一个私有协议,很多终端无法播放特别是IOS设备,需要第三方播放器以及第三方解码特别支持才行。

FLV (Flash Video) ,其文件格式是.flv。 HTTP-FLV 即将流媒体数据封装成 FLV 格式,然后通过 HTTP 协议传输给客户端。其传输格式简单,速度快。HTTP-FLV 能够好的穿透防火墙,它是基于 HTTP/80 传输。HTTP-FLV会让流媒体资源缓存在本地客户端,网络流量也较大。

现在主流的CDN厂家都支持三种直播协议。

2020.6.11

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值