打开视频网页一直白屏转圈,下载进度条一动不动,但随手启动网络游戏却秒进房间,这种情况比想象中常见。问题出在两类应用走的是完全不同的网络通道。
网络游戏大部分用UDP协议发送数据,视频网页要经过TCP协议的完整握手。UDP是一种无连接协议,数据包发出后不管是否到达,服务器和客户端之间没有验证环节。TCP则要先建立三次握手,传输中还要确认每个包。如果防火墙、路由器或者运营商网络对TCP数据流有干扰,游戏照跑不误,网页却可能连第一步握手都完不成。
最常见的断点在DNS解析。视频网站为了分发内容,主站和播放地址常常分布在几十个域名之下。浏览器要逐个解析这些域名,只要其中一个返回了错误IP,播放就卡住。游戏客户端则不同,很多游戏服务器地址直接以IP形式预先配置,或者只解析一个固定域名。中国有多个云服务商提供公共DNS,比如阿里云的223.5.5.5和腾讯的119.29.29.29,要是你的电脑还在用运营商默认DNS,遇到缓存污染或劫持,视频网站恰好中了招。换成公共DNS后,大量类似问题立刻消失。
另一个隐蔽的位置是系统代理和浏览器插件。有些人装了加速器或VPN,这些工具往往会对不同流量区分处理。游戏流量可能走了加速通道,而浏览器的代理规则没跟上,或者某个插件把视频网站的请求拦截了。你可以打开浏览器的无痕模式,停用所有插件再试。要是无痕模式下能放视频,那就是插件或者缓存cookie在捣鬼。
浏览器自身的缓存和Cookie也会制造假故障。视频网站在播放前会检查身份标记,如果Cookie失效或缓存文件损坏,可能导致播放器一直请求验证。清空浏览器缓存后重新登录,有时候就好了。游戏客户端有自己的登录服务器,不受浏览器数据影响。

显卡驱动和硬件解码也经常成为水下的暗礁。浏览器播放高清视频时会调用GPU的硬件解码,显卡驱动一旦崩溃或版本不兼容,画面就卡在加载状态。可游戏有自己的渲染引擎,通常使用独立的图形API,驱动问题未必影响它。遇到这种情况,去设备管理器里看显卡驱动有没有黄叹号,或者直接去NVIDIA、AMD官网下载最新驱动。最简单的测试是关闭浏览器的硬件加速开关,如果能出画面,就确定是硬件解码环节的问题。
Hosts文件