3/10 日总结

WebRTC---为使得浏览器能为实时通信(RTC)提供简单的JS接口的开源项目。

这个接口所创立的信道并不是像WebSocket一样,打通一个浏览器与websocket服务器之间的信道,而是通过一系列的信令,建立一个浏览器与浏览器之间(peer to peer)的信道,这个信道可以发送任何数据,而不需要经过服务器。并且通过实现MediaStream,通过浏览器调用设备的摄像头、话筒,使得浏览器之间传递音频和视频。

WebRTC实现了三个API: MediaStream:通过MediaStream的API能够通过设备的摄像头及话筒获得视频、音频的同步流

            RTCPeerConnection:RTCPeerConnection是WebRTC用于构建点对点之间稳定高效的流传输的组件

            RTCDataChannel:RTCDataChannel浏览器之间建立一个高吞吐量、低延迟的信道来传输任意数据

就算WebRTC提供浏览器之间的点对点信道进行数据传输,但是建立这个信道,必须有服务器的参与。WebRTC需要服务器对其进行四方面的功能支持:
1. 用户发现以及通信
2. 信令传输
3. NAT/防火墙穿越
4. 如果点对点通信建立失败,可以作为中转服务器

原文地址:https://www.cnblogs.com/tinmh/p/6531251.html