近年來,隨著固網寬帶以及移動互聯網的快速發展,視頻直播行業迎來新的巨大商機,各種視頻直播平臺如雨后春筍般的涌現。然而當大量用戶同時在線訪問時,極致高清、無卡頓的視頻直播體驗成為大家的一致訴求。
在決定直播觀看體驗的諸多因素中,比如卡頓、首屏時間、延時、清晰度等等,卡頓是直播體驗的最無法忍受的痛點。從“主播推流端”到“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,就選金山云!