互聯網內容載體變遷歷程,文字——圖片/聲音——視頻——VR/AR——……從直播1.0秀場時代(YY)、2.0游戲直播(斗魚、虎牙、熊貓)到如今全民直播3.0泛生活娛樂時代(映客、花椒),國外直播App(Meerkat 、Periscope),隨着 VA/AR/MR 提出的沉浸式視聽體驗,直播4.0時代很快就能到來。
在這個全民娛樂的時代,直播已經火得不要不要的,各大公司都有自己的直播產品。本文主要從直播的一些基本知識,一步步打造直播 App。直播那么火的背后有什么樣的技術支撐呢?
本文試圖對當前火熱的直播系統的傳輸架構做一個分析,希望可以對從對問題的思辨中可以得到一些啟發。
http://geek.csdn.net/news/detail/112262 《從 0 到 1 打造直播 App》 這篇文章更加深入的講解了一些直播技術。
下圖描述了在直播的業務場景下,北京的PC用戶在進行直播,他的音視頻流在網絡中的傳輸數據流。
不同於2個或少量幾個用戶間的視頻電話,用戶和用戶之間可以建立TCP連接傳輸音視頻流;直播業務場景中的數據流必須通過直播傳輸網絡進行傳輸,用戶的音視頻流量先要上到最近的推流服務器,再通過推流服務器傳輸給其他用戶。單個IDC所能 支持的最大用戶數為: min(IDC帶寬, ∑ IDC內所有推流服務器網卡帶寬)/ 音視頻流量。
假如一個主播在北京進行直播(音視頻消耗帶寬為1Mbps),在全國有10K人進行了收看。 那么北京IDC機房需要部署多少服務器和占用多少IDC帶寬才能支持呢 ? 簡單計算一下,10K * 1Mbps = 10Gbps,在假設10Gb網卡的服務器CPU和內存能夠處理的50%流量和包, 理論上2個萬兆網卡的服務器的可以支持。 一般用戶和服務器配比為 20K用戶:1台服務器, 那么如果百萬級的用戶在全國觀看直播需要多少服務器支持呢,簡單計算 50台服務器即可,那么怎么安排這些服務器在全國的IDC中呢, 因為在每個IDC服務的用戶不同,最合理的方式的服務器的分布方式,應該參考這個地區的人口數的比例 來確定分布的比例較為合理。
那么IDC 又要怎么選址呢? 最好參考下圖中國互聯網骨干網圖和人口密度圖,把IDC建設在人口稠密和骨干網關鍵節點的位置。
中國互聯網骨干網圖如下:
CHINANET骨干網由北京、上海、廣州、沈陽、南京、武漢、成都、西安等8 個核心節點組成的核心層和其它54 個匯接節點組成的匯接層組成。全網有3 個國際出口,通過京、滬、穗的路由器完成。國際路由器與國內路由器獨立設置,並負責實現各國際策略及安全性限制。CHINANET 網絡節點間的中繼電路采用基於SDH 和DWDM 的光纖網絡,網絡總帶寬超過800G,國際出口總帶寬已超過5000Mbp