近年来,随着固网宽带以及移动互联网的快速发展,视频直播行业迎来新的巨大商机,各种视频直播平台如雨后春笋般的涌现。然而当大量用户同时在线访问时,极致高清、无卡顿的视频直播体验成为大家的一致诉求。
在决定直播观看体验的诸多因素中,比如卡顿、首屏时间、延时、清晰度等等,卡顿是直播体验的最无法忍受的痛点。从“主播推流端”到“CDN”到“观众拉流端”,整个流媒体传输链路中,任何一个环节出现丢包都可能导致卡顿,尤其是主播推流端的推流流畅度更是决定了原流的质量。
针对于此,传统的做法是over TCP推拉流,但在弱网环境下直播的卡顿、首屏时间太长等问题成为各个直播平台难以解决的痛点,而这一切在金山视频云推出QUIC+方案后变得迎刃而解。QUIC+方案可以帮助互联网内容服务商实现更快的连接建立、弱网环境抗丢包、切换网络无需重新连接等等特性,可以帮助直播平台轻松解决卡顿、首屏时间太长等问题。
五大特点 QUIC优势尽显
众所周知,在互联网传输协议中TCP和UDP“各有优劣”,TCP可靠、稳定,但是建连需要经过3次握手,繁琐、效率低且占用系统资源高;UDP效率高、快、轻量,占用系统资源少,但也是存在不可靠、无序等缺点。
QUIC是在UDP协议之上提供一种可靠的、可建立面向连接的服务,它继承了UDP的优点,同时基于UDP之上加入了拥塞控制、多路复用、前向纠错等功能,弥补了UDP的缺点,使得QUIC既提高了数据的传输效率,也变得更加可靠。2016年11月,在国际互联网工程任务组(IETF)召开的第一次QUIC工作组会议上,QUIC一被提出便受到了业界的广泛关注。
相较TCP+TLS+HTTP2的策略,QUIC优势在于:一是极短的建连时间,QUIC的建连时间中大部分为0 RTT,极少部分是1 RTT;二是采用了BBR拥塞控制算法,由于效果很好,后来还被移植到TCP内核中了;三是改善了HTTP/2中的队首阻塞问题,从而避免队首阻塞的多路复用;四是前向纠错(FEC,Forward Error Correction),在弱网环境下出现丢包时,可以通过未丢失的报文和FEC报文将丢包恢复出来,减少了不必要的重传,解决了在弱网环境下数据接收端的体验的问题;五是连接转移,QUIC通过数据包中一个64位的数值ConnectionID来标识一个连接,从而避免出现切换网络需要重连的问题。
图:QUIC解决了HTTP/2队首阻塞问题
QUIC除了在推流端大有用武之地外,在拉流端也显得异常重要。在移动互联网时代,大量用户是使用手机观看直播视频的,在不同地区、不同位置由于移动蜂窝网络覆盖质量不同,在弱网环境中使用传统的TCP拉流体验很差,拉流端支持 QUIC成为重要的解决方法。
尤其在当前移动4G网络向5G网络演进的过程中,当网络覆盖不足或者用户大范围聚集时视频卡顿的现象就会频繁出现,严重影响用户观看体验。这就对视频平台的稳定性、健壮性提出了更高的要求,推拉流双向发力成为众平台发力的方向,QUIC为此点燃了新的希望。然而,目前业界中能够在推流端支持QUIC协议的平台本就少之又少,在拉流端支持QUIC的更是凤毛麟角。
金山云直播率先实现推拉流over QUIC倍受行业认可
目前,金山云直播是行业内率先全面实现over QUIC推流和拉流的CDN厂商,并于2019年10月正式上线。金山云直播over QUIC推拉流后,通过内测期间长期的线上验证,得到了头部客户的高度认可。
在弱网的环境中,视频平台的服务质量如何,在某种程度上也成为衡量一个企业背后技术实力强弱的重要因素。目前,金山云直播QUIC方案在推流和拉流上都实现了BBR算法,并且经过对BBR算法的适配和优化,能保证在弱网环境下丢包30%时仍然能流畅推流和拉流。
金山云视频云QUIC+方案实测效果
在相同的测试环境中,同一个媒资,推流分辨率640x480、码率800 Kb/s、编码格式H.264都相同情形下,使用ATC工具模拟弱网环境,分别采用RTMP over TCP和RTMP over QUIC推拉流,用srs播放器持续播放5 mins,记录流畅度和卡顿次数,金山云直播over QUIC推拉流后优势明显。
1、在延时 200ms,丢包率10%的弱网环境下,RTMP over TCP推流非常卡,播放器拉流35秒后被断开连接;而RTMP over QUIC推流和播放都很流畅,在持续5分钟的播放过程中0次卡顿,流畅度100%,效果非常好。
1)RTMP over TCP测试截图:
2)RTMP over QUIC测试截图:
2、当丢包率上升至20%,RTMP over TCP推流非常卡无法正常推流,播放器拉流马上就被断开;而RTMP over QUIC推流和播放都很流畅,在持续5分钟的播放过程中0次卡顿,流畅度100%,效果非常好。
RTMP over QUIC测试截图:
3、在延时 500ms,丢包率 30%的弱网环境下,RTMP over TCP直接无法推流,而RTMP over QUIC推流和播放仍然还是流畅的,在持续5分钟的播放过程中只出现7次卡顿,流畅度96.51%,大多数观众仍能接受。
RTMP over QUIC测试截图:
通过QUIC与TCP性能测试对比,金山云直播QUIC解决方案实现了视频性能的大幅提升。
目前市场上,部分厂商的直播产品仍不支持QUIC,少数厂商虽支持over QUIC推流,但无法支持端到端流畅体验。虽然部分厂商通过部署推流SDK,但造成SDK对接繁琐,头部客户甚至因有所顾虑而选择自研的SDK。
同时从各企业公布测试数据来看,在弱网环境下,直播QUIC方案因没有集成BBR拥塞控制算法的厂商,抗丢包的能力远不及采用BBR算法的金山视频云直播QUIC+解决方案。当丢包率上升至20%时,流畅度只有30-40%,RTMP over TCP推流非常卡无法正常推流。而金山视频云直播QUIC+解决方案在丢包率达到30%时流畅度还有96.51%,成为业内率先真正完美支持直播推拉流over QUIC的云厂商。
作为行业内的旗舰产品,目前金山云云直播产品现已率先支持rtmp over quic推流,rtmp over quic / http-flv over quic / hls over quic拉流功能。
追求无止境,除了在直播场景下率先实现推拉流over QUIC,金山云CDN还支持直播多流择优方案,通过稳定的性能、透明的数据服务体制,金山云成功保障“国庆70周年庆典”“建军90周年阅兵”“十九大”“全国两会”“香港回归20周年”“G20峰会”“金砖国家峰会”“央视春晚”“世界互联网大会”“世界杯”“亚运会”等大型活动和体育赛事直播。作为云计算行业的领导者,金山云将致力于为用户打造高品质的直播体验而保驾护航。选用视频云,就选金山云!选用CDN,就选金山云!