哔哩哔哩技术 01月24日
文末新春福利丨视频 CDN 融合资源的调度策略探索落地
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文介绍了B站如何应对直播用户带宽需求增长,通过构建智能调度系统来优化CDN边缘节点的资源利用。该系统采用分层架构,包括成本调度层和资源调度层,旨在平衡成本和质量。成本调度层根据资源质量和单价将节点分类,并采用不同的资源规划策略,如充分利用95计费节点的冲顶时间。资源调度层则基于成本调度结果,为不同业务分配带宽。通过这些策略,B站实现了带宽复用率的显著提升,并有效降低了资源池的卡顿率。

💰成本调度层:将CDN边缘节点按资源质量和带宽单价划分为多个资源池,针对SLO强保障资源,充分利用带宽并提升复用率;对SLO弱保障资源,采用启发式策略动态调整,以提高资源利用率。

🌐资源调度层:在成本调度基础上,根据不同业务的带宽需求,定量划分节点的冲顶资源和非冲顶资源,确保每个业务都有尽可能多的节点承载,实现业务间的互斥性和覆盖性。

📈 区域借调策略:通过最大流问题模型,将资源充足区域的节点借调到资源不足区域,解决资源分布不均问题,实现全国供需的相对均衡。

📊 资源规划策略:针对不同计费方式的节点,采用不同的资源规划策略。例如,对于月95计费节点,充分利用其冲顶时间;对于包端口节点,则在带宽上限内合理使用。

🛠️ 启发式资源规划:通过收集多轮SLO和资源利用率反馈数据,使用contextual bandit算法,动态调整资源池的预期全局资源利用率,并根据SLO表现升降节点,优化资源利用效率。

原创 通用工程 2025-01-24 12:02 上海

随着 B 站直播常量用户带宽需求增多,结合自身的直播流模型,进一步推动了 CDN 边缘节点的基建工作。

背景介绍


随着 B 站直播常量用户带宽需求增多,结合自身的直播流模型,进一步推动了 CDN 边缘节点的基建工作,这些节点具有很大的异构性,能力差距大,价格不一,计费方式不同。如何利用这些异构资源,在保障稳定性的前提下,在成本和质量之间做好动态平衡,是我们需要解决的问题。


调度体系设计


整体调度架构体系设计如下,采用分治思想,问题拆解,分层解决




每一层都有一个要解决的核心问题:

本文主要介绍成本调度层、资源调度层。


成本调度层


资源计费方式介绍


目前B站 CDN 边缘节点分为以下几种计费方式:


核心思想


我们按照资源质量与带宽单价分类为多个资源池,根据资源池类型不同,采取不同的资源规划策略。

对于资源 SLO 质量强保障的资源,根据节点不同的计费方式,充分利用带宽,提升带宽复用率;

对于资源 SLO 质量弱保障的资源,在保证用户 SLO 质量的前提下,尽可能提高资源利用率;




策略模型


输入


输出



处理逻辑


区域借调

解决问题:区域内供需不均衡

下图分别为用户分布和边缘节点资源分布,可见边缘节点在一些区域的能力非常冗余,而其另一些区域能力过度欠缺。这种分布不匹配的状况导致一部分区域的边缘节点资源利用率打不上去,另一部分区域的边缘节点资源利用率过高。



我们将这个问题归类为最大流问题。

目的:将资源充足的区域的节点借调到资源不够的区域。

输入:全国所有区域的资源供给情况。

输出:区域A应该借给区域B多少资源。




执行完借调策略后,我们可以得到每个边缘节点可以覆盖的区域,全国供需基本已经达到一个相对均衡的状态,即:每个区域的supply >= 该区域的demand。


成本规划适用于SLO 质量强保障的资源

基于所有边缘CDN节点的最大能力、计费方式、所在区域、运营商数据进行建模,目标函数是最小化所有边缘CDN节点的带宽费用总和。由于不同节点的单价不同,在大于保底利用率的前提下,按照单价梯度控制节点资源的带宽利用率;同时充分利用 95 计费节点的冲顶时间。




启发式资源规划适用于SLO 质量弱保障的资源

核心:在保证用户SLO的前提下,尽可能提高资源利用率




资源调度


核心思想


在成本调度的基础上,定量的进一步对节点的冲顶资源和非冲顶资源做业务级别的划分;

目标:


策略模型


输入


输出


每个CDN边缘节点可以给不同业务(如:点播、直播、动态加速等,目前直接入了直播业务,正在建设点播业务的接入)使用的最大带宽。


处理逻辑


详细处理逻辑如下:

1.  demand按 业务*区域*运营商划分(目前业务只有直播)

2.  将supply按可用资源从大到小排序(目前supply只是直播资源池)

3.  开始装箱




在直播的落地效果










-End-

作者丨仲昭雪、苏顾云、王喜


开发者问答

关于CDN调度策略,大家还有什么优秀的方案和经验?

欢迎在留言区分享你的见解~

转发本文至朋友圈并留言,即可参与下方抽奖⬇️

值此新春佳节之际,小编将抽取5位幸运的小伙伴获取扭扭龙+b站pu定制包

抽奖截止时间:1月28日12:00

如果喜欢本期内容的话,欢迎点个“在看”吧!



往期精彩指路


通用工程大前端业务线

大数据AI多媒体



阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

CDN调度 成本优化 资源复用 智能调度 B站
相关文章