第36篇:视频流协议分析:点播、直播、实时互动,网络问题各不同

视频卡了,是不是网速不行?

这是最常见的归因,也是最有误导性的归因。

视频卡顿背后,至少有十种以上完全不同的问题:

  • 带宽不够
  • 丢包太多
  • 抖动过大
  • 延迟过高
  • CDN节点响应慢
  • 播放器缓冲策略不当
  • 码率切换不及时
  • TCP队头阻塞
  • UDP被限速或丢弃
  • WebRTC NAT穿透失败

同样一个"卡"字,病因千差万别。抓包分析的第一步,不是背协议名,而是先判断你面对的是哪一种视频场景。


点播、直播、实时互动,是三种不同的网络生意

视频场景粗暴分三类,网络诉求完全不同。

点播(电影、课程、录播):追求稳定播放和画质,延迟不敏感。先缓冲再播放,牺牲实时性换流畅度。

直播(赛事、发布会):延迟和稳定之间取折中,靠CDN大规模分发。晚5秒看到进球能接受,晚60秒就离谱。

实时互动(视频会议、连麦、在线课堂):低延迟压倒一切。宁可丢画质,不能断声音。300毫秒延迟就能明显打断对话节奏。

同一个"视频"二字,背后是完全不同的网络指标和协议选型。用点播的标准衡量视频会议,拿直播的抓包方法去看WebRTC,方向错了,看再多包也没用。


HLS:把视频切成片,装进HTTP快递盒