侧边栏壁纸
  • 累计撰写 64 篇文章
  • 累计创建 46 个标签
  • 累计收到 93 条评论

目 录CONTENT

文章目录

解决B站垃圾CDN导致卡顿的两种方法

草莓牛奶
2023-08-06 / 7 评论 / 3 点赞 / 706 阅读 / 922 字 / 正在检测是否收录...
温馨提示:
「博客文章out of date 会及时更新,无特殊说明仍然有效,欢迎指正内容中的错误」

一、CDN类型介绍

B站作为一个流媒体内容提供者,高效地为用户提供内容是其核心职责之一。为实现这一目标,B站采用了CDN(Content Delivery/Distribution Network,内容分发网络)和PCDN(P2P CDN)技术。

1.CDN (内容分发网络)

CDN是一种在多个地理位置部署的服务器网络,旨在通过将内容复制到最靠近用户的节点,从而减少内容传输的时间和带宽成本。这样,当用户请求特定内容时,他们将从最近的节点接收内容,从而提高加载速度和用户体验。

B站所采用的CDN类型:

  • 服务商CDN:由第三方提供的CDN服务

    域名:upos-sz-mirror****.bilivideo.com

    • 腾讯:cos, cosb, coso1, coso2, bos
    • 金山:ks3, ks3b, ks3c, ks32
    • 七牛:kodo, kodob
    • 华为:hw, hwb, uphw, js
    • 阿卡迈(海外):akamai
  • 自建CDN:B站自行建设和维护的服务器网络

    域名:cn-****.bilivideo.com

    从其域名结构可以推测,该CDN可能按照地区进行了部署,其中的标识符代表了各个省份和城市的首字母缩写

  • MCDN:与京东云相关的CDN类型

    域名:xxxxx(ip地址).mcdn.bilivideo.com

    从其IP地址分配来看,可能与家用宽带网络有关,与京东云的无线宝产品存在某种关联

2.PCDN (P2P CDN)

与传统的CDN不同,PCDN采用点对点技术将内容从一个用户分发到另一个用户,而不是通过中央服务器。这种方法的好处是能够减少对中央服务器的负担,但由于用户之间的网络质量和速度差异,可能会导致内容传输速度的不稳定。

  • PCDN:B站自行建设和维护的服务器网络

    域名:****.v1d.szbdyd.com

    B站所采用的PCDN,可能会受到各种因素的影响,如用户之间的距离、上行带宽差异等

二、CDN卡顿原因分析

为什么B站视频卡顿?

  • 无 IPv6 : PCDN 型 的概率很高,但因为是 PCDN ,质量比较一言难尽。

  • 有 IPv6 : PCDN 型基本就没有了,MCDN 概率也低很多。

为什么B站仍使用PCDN?

  • 成本效益: 与维护大型、地理分散的服务器网络相比,PCDN可能在某些情况下更为经济。
  • 流量分配: PCDN可以帮助分散大量的流量,从而减轻中心服务器的负担。

三、优化方法

1.屏蔽相关DNS解析

以adguardhome为例,可以通过以下规则来屏蔽pcdn和mcdn的获取与解析

||*pcdn*.biliapi.net^$important
||mcdn.bilivideo.cn^$important
||szbdyd.com^$important
#||cn-*.bilivideo.com

*pcdn*.biliapi.net屏蔽此域名是因为b站似乎已经开始直接使用 IP 连接 PCDN 节点,通过请求这个域名会返回一系列节点信息

cn-*.bilivideo.com这条是用于屏蔽B站自建CDN的规则

image-20230806205707451

2.Tampermonkey脚本

①浏览器安装 Tampermonkey

②打开 MBGA 点击安装脚本

③点击 Tampermonkey > 管理面板,点击 “Make BiliBili Grate Again”

之后刷新视频,右键点击视频统计信息,查看 Video Host 是否已变为 UPOS

image-20230806205737672

四、参考链接

解决B站CDN导致视频加载卡顿的一种方法

京东云各插件到底访问的是那些域名

通信人家园
V2ex

3

评论区