webrtc连接方法——TURN服务器和STUN服务器作用简介

Posted TSINGSEE

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了webrtc连接方法——TURN服务器和STUN服务器作用简介相关的知识,希望对你有一定的参考价值。

WebRTC的TURN服务器是几乎所有WebRTC部署中必不可少的部分,连接WebRTC会话是在多个WebRTC服务器的协助下精心策划的工作,WebRTC中的NAT遍历服务器负责确保正确连接多媒体,这些服务就是STUN和TURN服务。

WebRTC.png

在浏览器(对等)连接WebRTC之间会话的三种方法:

A、通过本地网络直接连接:

如果两个设备都在本地网络上,则无需做任何特别的工作即可使用对等连接彼此,就是一台设备具有另一台设备的本地IP地址,则它们可以直接相互通信。

B、通过公共IP地址Internet直接连接:

这样就是通过STUN获取的公共IP地址直接连接WebRTC,当设备不在同一个本地网络中时,只能通过公共IP地址来实现相互访问的方式,所以我们的设备不知道公共IP地址,这样就是STUN服务的用武之地,它就是使设备可以向STUN服务器询问“我的公共IP地址是啥”。

C、通过WebRTC TURN服务器路由连接媒体:

使用TURN来中继媒体来连接我们的WebRTC,这种情况知道公共IP地址固然好,但是可能还是够。

这种情况造成的原因有很多种,其中之一是所使用的NAT和防火墙设备不允许发生这种直接流量。想这种情况下,我们通过TURN服务来做为中间公共服务器路由数据,这需要一定的工作和带宽成本。

image.png

以上是关于webrtc连接方法——TURN服务器和STUN服务器作用简介的主要内容,如果未能解决你的问题,请参考以下文章

WebRTC:ICE、STUN 和 TURN,但我不能只使用我的 SignalR.NET 连接吗?

WebRTC - 我需要指定多少 STUN/TURN 服务器?

C# 中的 WebRTC STUN 和 TURN 服务器

ICE vs STUN vs TURN

TSINGSEE青犀视频中关于WebRTC的stun/turn服务说明

为 WebRTC 应用程序实现我们自己的 STUN/TURN 服务器 [重复]