六、WebRTC中ICE的实现

      最后更新:2022-06-13 11:40:21 手机定位技术交流文章

      一、Candidate种类&优先级

      高端:主机, srflx,prflx, 和继电器.

      通过同一本地网络中的主机类型候选者连接到内网。

      非同一局域网,分离STUN、TURN服务器的候选者,收集 srflx和继电器类型。在搜集srflx型候选者时,ICE将设法破掉NAT洞。如果钻井成功,使用P2P传动,否则, 使用Turn服务器传输数据.

      二、ICE策略

      RTCPeerConnection对象, 输入参数 RTCconfiguration是json格式.

      三、P2P连接

      1、NAT穿越原理

      NAT是建立内部和外部网络地址之间的映射关系的地址映射技术。 内部主机向外部主机发送消息。 当数据通过NAT层时,NAT将数据爆炸头的源IP地址和源端口号码用映射IP地址和端口号码取代。

      2、NAT类型

      完整的锥形 、 IP锥形 、 终端锥形 、 对称型.

      穿越难度一次增大。

      (1)完整的锥形NAT

      NAT 成功地击中这个漏洞,所有知道这个漏洞的主机可以通过这个漏洞与内部网络主机进行通信。

      NAT越过大多数UDP

      (二)IP限制锥型NAT

      NAT是成功的,只有成功的主机可以通过洞与内部主机进行通信,而其他外部主机即使知道关口,也无法与洞进行通信。 (需要相同的IP主机,没有不同的端口)

      (三)端口锥限制NAT

      IP限制的锥形NAT(需要相同的IP主机和相同的端口)

      (4)对称型NAT

      每当一个内部主机访问一个不同的外部主机,它就会创建一个新的洞。 钻井成功率非常低。

      3、NAT类型检测

      需要两个STUN服务器,每个STUN服务器需要两个网络卡,每个需要一个公共IP地址。

      如何通过NAT

      四、网络中继

      TURN协议中的传输数据

      TURN协议基础取决于STUN协议

      TURN协议使用CS模式。

      流程:

      主机XTurnClient将分配命令发送到TurnServer 3478端口。TurnServer指定相应的继电器地址。

      indication

      指示发送指示(XOR-PEER-ADDRESS,DATA)

      指示数据指示

      tunnel机制

      发送信道绑定命令将信道号绑定到目标地址一次,就在数据发送之前。

      2.WebRTC使用Turn协议

      WebRTC收集的信道类型候选人必须是TURN协议指定的分配指令地址

      3.STUN/TURN服务器部署

      云主机

      STUN/TURN服务器是一个由Google提供开放源代码的Coturn服务器。

      使用滑冰工具测试。

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/27250.html

          热门文章

          文章分类