问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

WebRTC概念简介

发布网友 发布时间:2022-04-22 15:08

我来回答

1个回答

热心网友 时间:2023-11-10 02:52

WebRTC(Web Real-Time Communication)。Real-Time Communication,实时通讯。

WebRTC能让web应用和站点之间选择性地分享音视频流。在不安装其它应用和插件的情况下,完成点对点通信。
WebRTC背后的技术被实现为一个开放的Web标准,并在所有主要浏览器中均以常规JavaScript API的形式提供。对于客户端(例如Android和iOS),可以使用提供相同功能的库。 WebRTC是个 开源项目 ,得到Google,Apple,Microsoft和Mozilla等等公司的支持。2011年6月1日开源并在Google、Mozilla、Opera支持下被纳入万维网联盟的W3C推荐标准。

WebRTC包括一系列API和相互关联的协议来实现通信。

Voice over Internet Protocol,在网络上传输声音消息的技术。
例如网络音频通话。或者叫做IP电话,宽带电话。使用VoIP技术的一大原因是费用低。

Network address translation,网络地址转换。
NAT能给你的设备一个公共IP地址。一个路由器(router)有一个公共IP地址,每个连接到路由的设备有一个私有的IP地址。
设备发送请求时,会从一个特定端口,通过私有IP发送到路由的公共IP。这样每个设备在网上不需要都有一个公共IP地址,但也能被其它设备发现。

参考 IP Network Address Translator (NAT) Terminology and Considerations

Interactive Connectivity Establishment,互动式连接建立(交互式连通性建立)。
ICE是一套能让web浏览器之间互相连接的框架。通常来说,节点A到B是很难直接相连的。防火墙会阻止连接,设备没有公共IP地址,路由不允许直接连接其他节点。
ICE使用STUN或者TURN服务(或者同时使用两者)来建立连接。

参考 ICE | rfc8445

Session Traversal Utilities for NAT (STUN) ,NAT会话传输工具。
STUN协议能发现客户端(节点)的公共地址。客户端发送一个请求给网上的STUN服务器,服务器返回客户端的公共地址。不管客户端在路由器的NAT后能否可达。
STUN为请求者提供了可公开访问的IP地址,它就不再参与对话了。

有些路由器会*设备与外面其它设备的连接。这意味着即使STUN服务器知道了路由的公共IP地址,也没法建立连接。
这种情况下我们需要使用TURN

Traversal Using Relays around NAT,使用中继绕过NAT传输。
一些路由器使用一种叫“Symmetric NAT”(对称型NAT)的*。这意味着路由器仅允许之前连接过的节点(peer)来建立连接。

STUN提供了一个能让应用(终端,节点)穿过NAT的方法。STUN允许客户端获得一个传输地址(一个IP和端口)来获取其它节点的数据。
然而STUN获取到的地址不一定能被所有节点使用。这些地址是否可用取决于网络拓扑的情况。所以,单独STUN无法提供完整的穿越NAT的方案。

TURN协议允许两个处于NAT环境的主机利用中继进行通讯。客户端能够在TURN服务器上分配资源,与其它客户端(peer)进行通讯。
客户端关联一个TURN服务器的地址(relayed server address)来作为中继。
客户端发送报文给TURN服务,TURN服务使用relayed server address作为源地址向其他客户端中继转发报文。
穿越NAT,这个过程就像是“打洞”。也有人称TURN服务器为“打洞服务器”。

这么看,TURN服务器需要有大的带宽。因此,ICE会优先考虑直接通讯,无法直接通讯情况下会使用TURN。

参考 TURN rfc8656

Session Description Protocol,会话描述协议。

描述多媒体连接内容的协议。例如分辨率,格式,编码,加密算法等等。

实际上,SDP不是个真正的协议。它也是用来描述设备之间连接与传输多媒体的数据格式。

参考 SDP: Session Description Protocol | rfc8866

一些缩写

更多请参考 WebRTC概念简介

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
美缝到底有没有必要做美缝工艺流程 为什么 这就是街舞 一直在热门上 魅族Miniplayer RESP(4GB) 魅族 miniplayer SL版(4GB) 魅族Miniplayer RESP与Miniplayer 有何区别?哪个更好? meizu miniplayersl 和 miniplayer区别 五年级数学,教我、过程写在纸上 几道数学题 五年级的,要详细过程,越快越好,会几题答几题 答完为止... 请问已经移民加拿大了,继续缴社保五金到退休年龄是否不能亨受 医保卡可以退吗?里面的钱能退出来吗? 要出国了医保卡里的钱怎么办 如何正确地在Android上计算WebRtc-AECM-msInSndCardBuf参数 android webrtc 怎么发送offer和answer 404 Not Found 基于android的webrtc服务器怎么搭 如何提高微信的安全性 如何提高微信安全等级 微信帐号有什么方法能提升安全性? 如何在不使用银行卡的情况下提升微信的安全等级? 2手苹果7p128g多少钱 微信安全系数过低怎么办? 准备买二手苹果7P128g,卖家说2500元,是不是贵很多? 二手苹果7p128G 这个值多少钱 请大神参考爱思数据,想知道是不是原机,害怕被骗 怎么提高微信账号安全 二手苹果7P128g手机多少钱 苹果7p128G2100划算吗,98新? 苹果7P128G国行多少钱 苹果7P 128g 现在官网价多少? 苹果7p128g现在多少钱了? 现在苹果7P 128G 亮黑的是多少钱 官网报价 飞利浦S8860拆卸电池盖拆机过程,怎么样? AR技术可以通过HTML5实现吗?不通过APP android webrtc 的sdp怎么截取了 404 Not Found android webrtc 回音消除使用audiotrack 合适吗 pdf文件能作为附件插入到ppt中吗 长期用微波炉热饭菜吃对人有害吗? 微波炉热饭菜对人体有什么伤害吗 吃微波炉做的食物对身体有害吗 有什么软件可以测试体重和身高的? 匀称app软件哪个好 手机咋恢复? 体重管理app哪个好用 oppo手机还原手机是什么意思 手机刷机了怎么恢复了 可以测量出身高体重比例胖瘦的软件有哪些啊? 格力体重秤什么APP 李新的人物经历 李新的人物生平 宋代李新的介绍 李新的介绍
  • 焦点

最新推荐

猜你喜欢

热门推荐