zoukankan      html  css  js  c++  java
  • Android IOS WebRTC 音视频开发总结(二七)-- whatsapp之转发优先

    最近看了一篇老外在webrtcHacks上写的文章,主要介绍webrtc和whatsapp的传输机制,蛮好的,加上自己的理解进行总结,

    希望对大伙有所帮助,转载请说明出处,原文来自博客园RTC.Blacker。

    whatsapp的voip的传输机制用的是pjsip(webrtc的P2P机制冗余庞大一直被人诟病,所以有人就替换成了同样庞大的pjsip),下面是他们的对比:

    从上图可知,whatsapp并没有采用ICE,只用到了STUN,不过他在建立连接的时候做了一个很有意思的改动:

    建立连接前先通过Turn建立连接,等到P2P打洞成功后再将连接从turn切换为P2P,这样做的好处就是减少等待时间,增强用户体验,而且为将来的多方通话做了一个很好的扩展,原文如下:

    "The most impressive thing I found is the optimization for a fast call setup by using a relay initially and then switching to a peer-to-peer session. This also opens up the possibility for a future multi-party VoIP call which would certainly be supported by this architecture."

    抓包结果详见下图:

    当然,webrtc也可以用变通的方式实现这种效果,详见:https://github.com/fippo/webrtc/commit/bc8a3ac137bf49795f2ed1487cdfdfab6451540b

    另外如果对作者分析的Whatsapp的整个抓包过程感兴趣,详见:

    https://webrtchacks.com/wp-content/uploads/2015/04/WhatsappReport.pdf

    下面是我自己整理的ICE打洞过程截图:

    最后,原文来自:https://webrtchacks.com/whats-up-with-whatsapp-and-webrtc/

  • 相关阅读:
    15、线程
    17、lambda表达式
    16、sockect
    14、反射(reflect)
    13、集合2
    java 基本类型、包装类、字符串之间的转换
    13、集合1
    12、NIO、AIO、BIO二
    12、NIO、AIO、BIO一
    11、流与文件
  • 原文地址:https://www.cnblogs.com/lingyunhu/p/rtc27.html
Copyright © 2011-2022 走看看