您的位置:首页 > 其它

WebRTC中的拥塞控制 一

2016-10-16 22:40 197 查看
    对于基于内容分享的Internet应用来说, 拥塞控制都是其无法回避的问题,     而实时多媒体应用的拥塞控制, 相比于其他应用而言, 更具有挑战性.      原因在于:

        1.  媒体数据对于 packet loss,  jitters都非常敏感,   数据的丢失,   接受的抖动与延迟,  都会严重的影响主观体验. 

        2.  网络情况的变化往往难以预测, 而且变化频繁, 但是媒体数据的码率调整则需要一个过程, 并不能根据检测到的拥塞情况迅速调低码率,   尤其是视频,  其码率跟输入的视频内容有很强的相关性, 复杂的场景往往伴随着高码率.  这就意味着传输内容的大小对网络的响应比较慢,  从而放大了拥塞控制的难度.

        3.   媒体的质量跟码率是正比的关系.   对于实时媒体传输而言, 最大限度的利用带宽是保证高质量的必要条件.    这也就意味着传输的质量对网络的变化非常敏感.     

    Google 的开源项目WebRTC里的拥塞控制是众多实时通信系统中的佼佼者.      下文, 我们来尝试分析和学习其中的原理和算法.     计划会按照如下的顺序来讲述. 

        1.   Delay based Model 

              i)  Arrival  Model

              ii)  Arrival Time delta Filter

            iii)  Overuse detector

            iv)  Rate control

         2.  Loss based Model

  

   我在github 建了关于WebRTC中的Congest Control 的工程, 以方便分析和学习.   https://github.com/volvet/WebRTC_QoS

Reference:

    1    IETF draft:  A Google Congest Control Algorithm for Real-time Communication 

    2.   WebRTC:  www.webrtc.org
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息