1. 程式人生 > >不同直播場景的CDN技術簡析

不同直播場景的CDN技術簡析

隨著直播行業的興起,各種直播應用、平臺和產品萬花齊放,直播場景也越來越多元化,這就對視訊技術的發展提出了“日新月異”的需求。那麼,目前視訊直播的場景主要有哪些?不同型別的直播場景對視訊技術又有怎樣不同的要求?本文將通過分享一些個人經驗,簡要分析不同直播型別的CDN技術要點。

 

要說清楚這個問題,我們需要從頭說起:

 

基礎網路的發展路徑

80後、90後都是見證網際網路崛起的一代,網際網路的發展史,本質上就是網路速度的發展史。剛開始的時候,網民用電話線撥號上網,下行速度只有不到幾十K,開啟一個複雜的網頁要十幾秒到幾十秒;後來寬頻興起,網民使用了現在常見的網線(其實和電話線一樣都是銅芯),傳輸速度能達到1000Mbps;再到後來光纖到戶了,不再使用銅線,傳輸介質都變成了光纖,傳輸速率高達萬Mbps。

上面說的是家裡的固網,下面再來聊聊手機行動網路。行動網路包含語音和資料兩塊,語音就是我們常用的打電話業務,資料就是我們訪問網際網路的資料傳輸。要分清楚這兩個業務,最簡單的祕訣就是看手機頂端顯示的訊號圖示。(這裡簡單擴充套件一個基礎知識:我們常說的幾G就是代表第幾代移動通訊技術GenerationG代表GPRS, 2.5G也就是第二代移動通訊網路的延伸,速率能夠到達115kbpsE是EDGE,經常被叫2.75G網路,速率有384kbps。)

大概六七年前開始,網路使用者開始使用3G,就是第三代移動通訊技術,速率可達2Mbps,還有一些時候會顯示H或者H+,可以當做是3.5G4G,後來就是目前比較流行的4G,速率在100Mbps以上。

隨著傳輸技術的演進,網際網路上的應用也發生了很大變化。用一些具有代表性的例子來說,早年間大家使用的應用主要是通訊軟體例如QQ、發郵件、訪問網頁;到後來網路可以便捷快速的傳輸較大的檔案,就有了線上聽音樂千千靜聽、酷狗音樂;然後普及了線上視訊優酷、土豆、pps;到現在我們可以看到,網路上已經有了愛奇藝這樣全高清的線上視訊。

隨著直播,尤其是移動直播在近兩年突然爆發,給基礎網路提出了最嚴苛的要求。一方面,以往使用者的上網行為對頻寬的要求是極不對等的,使用者對上行頻寬的需求普遍是隻要能傳送出請求訊息就行,日常用網主要靠下行頻寬下載大量資料。但現在有了直播,使用者可能隨時隨地就會開啟直播,而當用戶開啟直播以後,應用需要把直播內容上傳到服務端,這個過程就對上行頻寬提出了新的要求,只要直播上傳端出現卡頓,所有看直播的觀眾都會受到影響。另一方面,直播從內容產生到上傳到分發最後使用者播放整個鏈路完全是實時的,每個環節都容不得細微的網路抖動和異常,尤其很多高清的直播對上下行頻寬要求都非常高。怎麼解決這個問題?

 

通過CDN解決內容傳輸問題

下面兩張分別是我在電腦和手機測速的截圖,速率都達到10Mbps或100Mbps,那為什麼往往上傳2M以上的直播或觀看3M以上的直播會經常很卡呢?

   

這是因為傳輸技術、移動通訊技術都已經能夠支援這麼大的傳輸速率,但是接收的服務端卻沒有那麼強的接收能力,以及各種各樣小運營商之間的互聯很差等導致的。舉個例子,如果順豐快遞在一個小區每家每戶都安排一個快遞員24小時等待取件,那是不是該小區所有人都能馬上寄出東西了呢?不是,因為樓下的順豐倉庫就只有1平米,大家都在寄東西他們倉庫滿了不能再受理了,即使快遞員收件很快,物流點也處理不過來。

這就需要通過CDN來解決問題。當發生物流點要處理大量快件的情況時,我們就需要在每個小區都建很多個、空間很大的物流點。回到CDN上來說,就需要在每個網路內都部署CDN伺服器節點,而且需要部署非常多個。當然,這樣做導致的問題就是CDN的成本會變得非常高,高到直播平臺根本負擔不了的地步。我們星域CDN的解決思路是採用共享經濟的方式,低成本地在全網部署“無限”多的節點,解決資料傳輸的問題。具體怎麼實現?星域CDN通過一個智慧硬體——迅雷賺錢寶,將家庭使用者空閒的家庭頻寬資源籌集起來,一方面可以免去節點建設成本,一方面也可以使節點離使用者更近。用物流來比喻,就是我們可以將小區裡閒置的空房、空地、空路線利用起來,免去重新佔地建房的成本。

 

不同直播場景的CDN技術簡析

根據不同平臺端直播廠商的業務需求,以及直播觀看者的需求和行為分析,直播主要有以下幾種型別:

1、事件直播

一般是重大活動賽事或媒體類的現場直播,所有觀看者集中到一路直播流。

因此這種型別的直播最重要的是穩定性,事件帶來的頻寬增長、高併發需要CDN有足夠的儲備頻寬應對突發,直播全程不能出現任何中斷故障,否則影響使用者體驗。像熊貓直播,擁有很多人氣非常高的主播,他們就會要求星域CDN一定要給出一個T的冗餘頻寬以及一千路的轉碼能力,就是為了應對有的主播有活動的時候流量突然爆發。

還有就是內容安全方面,尤其是現在流行的媒體類事件直播通常配合CDN的延播技術做到先審再播。一般需要有2min左右的延遲播放,以及通過視訊https傳輸防止內容被惡意篡改。當然,星域CDN配套了延時配置的服務。

2、泛娛樂直播

泛娛樂直播一般是個人輸出內容,涉及面非常廣且主播素質良莠不齊,稽核就是必要的需求。通常大直播公司會採用人工稽核+購買第三方鑑黃/政審服務(這種服務都是計算機按照智慧演算法通過拉流介面或者截圖來稽核)。對CDN提出的要求就是要有一套穩定且處理能力強的截圖系統,還有一旦發現不適合播放的內容時,需要有支援秒級禁播和恢復開啟播放介面。星域目前的鑑黃做得挺好,準確率達到了99%,在行業裡面應該是比較領先的。

此外泛娛樂直播主要靠主播同粉絲互動,所以很關心端到端延遲。端到端延遲指定就是內容從主播拍攝產生,到CDN分發再到使用者觀看到經過了多長時間,可以簡單理解為使用者觀看的內容是多久時間前發生的。如果延遲很長,就會出現主播講完一段話,使用者很久以後才能看到,對於互動性要求比較強的直播來說,這是無法忍受的。業內對延遲的解決方案,傳統CDN優秀的可以達到5-10秒延遲,傳統P2P可能要幾十秒的延遲,星域CDN就可以做到2秒以內的延遲。

3、遊戲直播

遊戲直播是非常有粘性的,一半觀看者會持續長時間觀看主播或電競比賽,現在的多人線上遊戲直播主播之間會需要連麥服務。再比如電競比賽有時候為了避免暴露玩家在地圖上的位置也需要延播一兩分鐘,我們也多次為客戶配置過賽事活動延播,同時也根據客戶的需求提供連麥、美顏等不同的功能。另外,卡頓應該是所有直播場景中都無法忍受的情況,我自己有時候會打遊戲,看遊戲直播的時候卡頓尤其令人惱火,星域CDN的卡頓率就做到了1%,行業內其他的可能做到4%,這一點上我們是比較有信心的。

4、移動直播

從使用者行為上來看,當前很火的移動直播花椒、映客,從APP介面上就已經把直播做成了列表瀏覽的方式。使用者可以像刷微博、看新聞一樣的刷直播,通常是隨機的通過封面選擇,感興趣的點進去觀看不超過1min就退出觀看下一個。有的APP還專門設計了左右滑動或者上下滑動就切換到下一個房間。在這樣頻繁的觀看和退出操作下,首屏的體驗就變成了最重要的了,使用者難以忍受切換或者開啟房間後要等很久的體驗。星域在這個方面做到的首屏秒開是很多客戶非常看重並評價很高的技術服務。

5、戶外直播

戶外直播最大的特點就是多采用4G網路直播。採用這種無線方式傳輸時,本身網路就不夠穩定,再加上運營商基站覆蓋不全導致很多野外或山上的活動根本沒法保證,或者一些角落、電梯等遮蔽訊號的地方就會出現直播質量差的問題。主播推流的卡頓會造成整個鏈路的所有觀眾都收到影響,所以核心就是要做好推流的優化和保障。解決戶外直播的這些問題,我們通常可以採用位元速率自適應進行輕量化推流,同時結合多節點服務冗餘和平滑切換技術來保障,星域也提供了現成的推流SDK來實現這些方案。比如我們在業內比較有名的獨創的弱網加速技術,也是星域的四大技術之一,從TCP協議底層專門解決這種弱網場景的傳輸穩定性。

6、VR直播

現在的VR直播從技術上看比普通直播主要的差別就是位元速率要高出N倍。普通的直播可能幾M,幾十M,VR直播可能G級起跳,普通的網路甚至現在市面上的CDN一般都是沒法承載的。VR直播主打的就是使用者體驗的視覺衝擊力,所以在畫質上要保證是最好的,不能打折扣;再有就是觀看流暢度如果不能保證,使用者體驗就會根本無法體驗。目前業內對VR直播的技術和成本控制都比較敏感,像星域CDN支援h.265編碼,能夠在保證原有畫質前提下將頻寬壓縮一半,這樣VR直播的企業就不用承受太大的成本壓力了。另外,星域CDN還和insta360聯合開發的針對全景直播壓縮錐形編碼技術,能把頻寬佔用壓縮為原來的1/8。

7、教育直播

跟直播一樣,教育也是近兩年非常火熱的領域,各個大學,培訓機構也都推出線上教育直播,讓學生能夠遠端便利的隨時接受各種知識,教育機構會非常重視教材跟視訊課程版權和保密性,所以CDN對這種需要提供防盜鏈的訪問方式,甚至視訊級的加密技術。星域CDN的動態防禦就有非常好的防盜鏈機制,迅雷看看的高清內容使用這個機制後,目前仍然保持0盜鏈的記錄。

 

直播領域的技術細節還有很多,感興趣的朋友可以關注我們直播技術負責人李浩在CSDN上的直播:http://edu.csdn.net/huiyiCourse/detail/247

課程簡介:

課程注重實戰,全程通過實戰講解,絕對乾貨。 手把手從建立專案開始,教會同學如何搭建一個直播平臺的架構。還會分享直播架構搭建相關經驗,讓你在開發時少走彎路,教你如何繞開搭建一個直播平臺架構的那些“坑”。有專享學習交流論壇,隨時溝通交流。 直播後提供視訊回放+課件,反覆學習和鞏固知識。 線上問答+專屬答疑課(開課時導師線上解答),幫助學生實戰運用。

課程時間:

2016年12月21日 20:00 - 21:00

 

 

說在最後:我們網心科技是一家創業公司,客戶的口碑是我們發展壯大的根本。在我們接觸的所有客戶中,對星域CDN的評價都說一定是服務最全面到位的,前不久獲得的亞太CDN服務獎是對我們很大的認可。引用我們網心科技的研發副總裁孫小濱的一句話,無論是產品質量,價格,還是服務上,無論老牌CDN,雲廠商,我們都不怕PK,歡迎大家來試用星域CDN。