WebRTC

作者: ZoranLee | 来源:发表于2021-11-12 14:13 被阅读0次

    WebRTC

    名称源自网页即时通信(英语:Web Real-Time Communication)的缩写,是一个支
    持网页浏览器进行实时语音对话或视频对话的API。

    WebRTC是由Google主导的,由一组标准、协议和JavaScript API组成,用于实现浏览器之间(端到端之
    间)的音频、视频及数据共享。

    官网

    https://www.w3.org/TR/webrtc/

    RTP协议(RFC3550)

    实时传输协议(RTP)
    用于音频数据(RTP),另一个用于控制包(RTCP)

    SDP(RFC4566)

    Session Description Protocol

    SDP协议主要包含:
    SDP包括以下一些方面:
    (1)会话的名称和目的
    (2)会话存活时间
    (3)包含在会话中的媒体信息,包括: 媒体类型(video,audio, etc) 传输协议(RTP/UDP/IP,H.320, etc) 媒体格式(H.261 video, MPEG video, etc) 多播或远端(单播)地址和端口
    (4)为接收媒体而需的信息(addresses, ports, formats and so on)
    (5)使用的带宽信息
    (6)可信赖的接洽信息(Contact information)

    TURN(RFC5766)

    ICE(RFC5245)
    ICE全称Interactive Connectivity Establishment:交互式连通建立方式。ICE参照RFC5245建议实现,
    是一组基于offer/answer模式解决NAT穿越的协议集合。它综合利用现有的STUN,TURN等协议,以更
    有效的方式来建立会话。客户端侧无需关心所处网络的位置以及NAT类型,并且能够动态的发现最优的
    传输路径。

    Socket.IO

    https://socket.io/
    https://socket.io/docs/v4

    应用场景

    • 实时分析:将数据推送到客户端,客户端表现为实时计数器、图表、日志客户。
    • 实时通讯:聊天应用
    • 二进制流传输:socket.io支持任何形式的二进制文件传输,例如图片、视频、音频等。
    • 文档合并:允许多个用户同时编辑一个文档,并能够看到每个用户做出的修改

    WebSocket 原理

    WebSocket是一种双向通信协议,它建立在TCP之上,同HTTP一样通过TCP来传输数据,但与HTTP最
    大不同的是:

    • WebSocket是一种双向通信协议,在建立连接后,WebSocket服务器和Browser/UserAgent都能
      主动的向对象发送或接收数据,就像Socket一样,不同的是WebSocket是一种建立在Web基础上
      的简单模拟Socket的协议。
    • WebSocket需要通过握手连接,类似TCP也需要客户端和服务端进行握手连接,连接成功后才能相
      互通信。


      image.png

    相关文章

      网友评论

        本文标题:WebRTC

        本文链接:https://www.haomeiwen.com/subject/fftozltx.html