本文主要分析webrtc中的抗丟包與帶寬自適應原理,文章來自博客園RTC.Blacker,歡迎關注微信公眾號blacker,更多詳見www.rtc.help
文章內容主要來自中國電信北京研究院丁博士在上周六的技術交流會上的演講內容,之前我們有在公眾號上介紹過這個技術交流會,詳見:http://mp.weixin.qq.com/s?__biz=MzA5ODMzMjE1NQ==&mid=401152241&idx=1&sn=38dd10e369d3f8e308a6086e84984072&scene=23&srcid=1219MtQx3dqOaQZo9L2emdBH#rd
從結果來看這種技術交流會還是挺有料的,主要是技術人員在分享技術,所以我們后面會將其他演講嘉賓的資料也一並整理好發上來。
實時通訊中為了保證傳輸速度我們的通訊協議一般采用udp,但是這樣會帶來丟包的問題,加上實際網絡狀況的復雜性,都會帶來丟包,這樣嚴重影響了音視頻通話質量,如果保證在這種不穩定的網絡狀況到得到較好的通話質量呢?這就是本文主要介紹的三種技術:NACK,FEC和網絡帶寬自適應。
先看這三個術語的名詞解釋:
FEC:前向糾錯也叫前向糾錯碼(Forward Error Correction簡稱FEC),是增加數據通訊可信度的方法。在單向通訊信道中,一旦錯誤被發現,其接收器將無權再請求傳輸。FEC 是利用數據進行傳輸冗余信息的方法,當傳輸中出現錯誤,將允許接收器再建數據。
NACK:a negative-acknowledge character (NAK or NACK)
In telecommunications, NACK is a transmission control character sent by a station as a negative response to the station with which the connection has been set up.
In Binary Synchronous Communications protocol, the NAK is used to indicate that a transmission error was detected in the previously received block and that the receiver is ready to accept retransmission of that block.
In multipoint systems, the NAK is used as the not-ready reply to a poll.
網絡帶寬自適應:這個比較好理解,按照一定的算法根據網絡帶寬狀況,動態調整碼率,以保持良好通話質量!
以下截圖來自博士的pdf文檔,由kelly進行整理:
---------------------------------------------------------
-----------------------------------------------------------------
-----------------------------------------------------------------
------------------------------------------------------------------
------------------------------------------------------------------
-----------------------------------------------------------------
-------------------------------------------------------------------
-------------------------------------------------------------------
-------------------------------------------------------------------
-------------------------------------------------------------------
-------------------------------------------------------------------
------------------------------------------------------------------
------------------------------------------------------------------
------------------------------------------------------------------
-------------------------------------------------------------------
------------------------------------------------------------------
------------------------------------------------------------------
-------------------------------------------------------------------