今天一觉醒来刷某女性redbook平台的时候,看到有人在发《b站拿用户电脑挖矿》的帖子,不过仔细细究了一下,虚惊一场,是电脑小白在安装uBlock Origin扩展以后(拿这个插件屏蔽B站广告),发现刷B站视频被拦截的请求特别多,以为是拿用户电脑偷偷挖矿。
![]()
这是今中午我刚刚测试的
其实这根本不是什么挖矿,只不过是叔叔和阿姨在那我们电脑做PCDN而已。
很多盒友都应该发现一个问题,为什么明明家里装的千兆宽带,播放个明明已经是低码率的 B 站都会卡顿,尤其是一些标明高清的素材,拖动进度条播放的体验非常差,这很可能是PCDN的原因。
这里先解释一下什么是CDN,CDN全称内容分发网络(Content Delivery Network),是一种广泛应用于互联网领域的服务模式。
![]()
CDN可以看作流量负载均衡的手段
CDN 通过在网络中部署分布式服务器(即镜像服务器,如上图右边的例子),将内容缓存到离用户最近的服务器上,CDN 会根据用户的地理位置等信息,自动为用户分配。可以避免所有请求全部涌向主服务器,减轻主服务器的负载压力,减小视频的延迟,提升用户的观看体验(理论上,实际上叔叔拿这个偷偷搞事情)。
![]()
如图,你的设备也是CDN
PCDN,即 P2P CDN(是的,就是迅雷那个P2P)。所有使用方既是客户端也是服务端,一方面可以向 PCDN 发起请求获取资源,另一方面如果其已下载过某些内容,还可能供其他客户端下载,从而利用用户端的闲置资源来辅助内容分发。看似是很不错的技术?这其实是一种运营成本的转移,利用正在看视频用户的闲置上行带宽为其他用户提供CDN服务,这样就把B站的运营费用转移到了用户身上。而且家用带宽的上传质量比商用带宽差得多,反而会导致看视频的人越多卡顿。
![]()
以R星的GTA6视频为例,在播放页面右键打开统计信息,可以看到Video Hosts显示了视频资源提供方,使用的域名后缀为“szbdyd”,即来自PCDN,哪个老哥此时电脑在为我播放的视频默默付出。
可能出现的CDN提供方有以下几种(统计内容来自网络博客Lainbo's Blog):
upos-sz-mirror****.bilivideo,看不同的域名对应不同的服务商方案,比如腾讯是cos/cosb等,华为是hw,/hwb/uphw/js。
cn-****-dx-v-**.bilivideo,似乎是B站在各地的自建CDN,可以看到省份和城市首字母缩写。
xxxxx(ip地址).mcdn.bilivideo,也是一种P2P形式的CDN,似乎是京东的技术,质量很差。
********.v1d.szbdyd,PCDN,质量极差,P2P 节点模式的CDN。
解决办法也很简单,屏蔽掉那些质量差的 CDN,让 B 站服务器误以为我们连不上这些垃圾 PCDN,从而去连接高质量的 CDN,这方面插件很多,不过B站也经常更新技术,导致很多都失效了,这里提供一个目前还有效的方法。
![]()
下载油猴插件(进不去油猴官网的盒友,建议百度油猴镜像站),名字叫Bilibili Video CDN Switcher,打开脚本编辑页面,将第49行改为var CustomCDN = 'upos-sz-mirror08c.bilivideo.com'或者其他CDN,这里给出例子是华为的CDN。
![]()
再测试一下,可以看到此时终于不是PCDN了。至于视频质量质量到底好没好,其实我也看不太出来。
更多游戏资讯请关注:电玩帮游戏资讯专区
电玩帮图文攻略 www.vgover.com
