网工干货知识

超全学习笔记
当前位置:首页 > 干货知识

交互式连接建立机制(Interactive Connectivity Establishment)

更新时间:2026年03月27日   作者:spoto   标签(Tag):
先决条件:网络地址转换(NAT)功能ICE到底是什么?交互式连接建立技术(Interactive Connectivity Establishment, ICE)适用于那种需要让互联网上的两个节点能够尽可能直接地进行通信的情况。不过,由于存在NAT和防火墙的干扰,节点之间很难实现直接通信。这种网络技术利用了STUN(用于穿越NAT的会话遍历工具)和TURN(通过中继器来穿越NAT的技术)来实现两个节点之间的直接连接。它是如何工作的呢?要了解ICE的工作原理,我们需要了解STUN协议及其扩展协议TURN协议的工作原理。
  • STUN(用于NAT协议的会话遍历工具):对于那些位于NAT下的终端节点来说,如果它们拥有本地地址的话,那么这些终端节点就无法被本地网络之外的其他终端节点所访问。因此,无法建立连接。在这种情况下,该终端节点可以向STUN服务器请求其公共IP地址。这个可以被其他终端节点访问的IP地址,就可以被用来建立连接了。不过,当终端节点处于对称NAT之下时,这种连接方式就会失效,而这种情况在大多数实际场景中都会发生。这时,TURN服务器就派上了用场了。
  • TURN(使用中继器绕过NAT进行通信的方法):顾名思义,TURN服务器被用作一个中继服务器或中间服务器,用于交换数据。 当对称NAT下的任何端点能够连接到位于公共互联网上的TURN服务器以建立连接时,该端点就被称为TURN客户端。 使用TURN服务器的缺点在于,在会话的整个过程中都需要使用它。而STUN服务器则不需要在连接建立之后一直使用它。 因此,在ICE技术中,默认情况下使用的是STUN协议。
ICE是一种利用STUN和TURN协议来建立连接的技术。 在初始阶段,各个端点并不了解自己所在网络的结构,无论该网络是由单一NAT还是多个NAT层构成的,也不清楚具体的NAT类型。ICE技术允许这些端点通过STUN服务器来发现这些信息,从而找到合适的路径以建立直接连接。 如果答案是“是”,那么连接就建立起来了;否则,就会使用TURN服务器作为中继设备,以在各个端点之间交换信息。 ICE规定,STUN应该被默认使用。因为TURN通信需要持续使用TURN服务器,而连接方式并非点对点式的,因此会消耗更多的服务器资源。 ICE是由互联网工程任务组根据RFC 8445标准开发的。 该协议适用于以下情况:
  • SIP:会话发起协议
  • 互联网协议语音
  • P2P通信
  • WebRTC
  • 电话会议
              马上抢免费试听资格
意向课程:*必选
姓名:*必填
联系方式:*必填
QQ:
思博SPOTO在线咨询

相关资讯

即刻预约

免费试听-咨询课程-获取免费资料