直播 CDN 分发网络(网络架构)
网络拓扑
和传统页面,点播业务的 CDN 只有下行分发不同。对于一些秀场,游戏类的直播场景中主播一般是分散在全国各地的,所以直播架构中是分为上行汇聚和下行分发两套网络。而对一些现场活动,赛事制作方的直播,更多的是业务方提供一个源站,由 CDN 去拉取后进行分发。
主播推流模式
- 主播推流到上行边缘节点
- 上行边缘节点将流推到汇聚核心。在有些环境中,上行边缘节点到汇聚核心网络状况并不好,这时候需要多走一层中转
- 汇聚核心收到流后,和 CDN 一样,不需要主动将流分发到边缘(需要预热的情况除外),一些转码,水印,录制类业务一般在汇聚核心完成
回源拉流模式
- 当用户有访问到汇聚核心后,汇聚核心向一个回源节点拉流,回源节点向客户源站拉流
下行观看流程
- 观众到边缘节点拉取直播流
- 边缘节点上如果有流,直接发送给观众,如果没有流则会向上一级回源
- 上一级节点可能是中转节点,也可能是汇聚核心。一般会在两种情况下选取是否走中转节点:下行边缘到汇聚核心链路质量;汇聚核心处理能力(中转节点和下行边缘一样有 Cache 的能力,可以做回源收敛)
下行观看流程和传统 CDN 类似,会有直播数据 Cache,由于实效性问题,