在现实Internet网络环境中,大多数计算机主机都位于防火墙或NAT之后,只有少部分主机能够直接接入Internet。很多时候,我们希望网络中的两台主机能够直接进行通信,即所谓的P2P通信,而不需要其他公共服务器的中转。由于主机可能位于防火墙或NAT之后,在进行P2P通信之前,我们需要进行检测以确认它们之间能否进行P2P通信以及如何通信。这种技术通常称为NAT穿透(NAT Traversal)。最常见的NAT穿透是基于UDP的技术,如RFC3489中定义的STUN协议。

STUN,首先在RFC3489中定义,作为一个完整的NAT穿透解决方案,英文全称是Simple Traversal of UDP Through NATs,即简单的用UDP穿透NAT。

在新的RFC5389修订中把STUN协议定位于为穿透NAT提供工具,而不是一个完整的解决方案,英文全称是Session Traversal Utilities for NAT,即NAT会话穿透效用。RFC5389与RFC3489除了名称变化外,最大的区别是支持TCP穿透。

TURN,首先在RFC5766中定义,英文全称是Traversal Using Relays around NAT:Relay Extensions to Session Traversal Utilities for NAT,即使用中继穿透NAT:STUN的扩展。简单的说,TURN与STURN的共同点都是通过修改应用层中的私网地址达到NAT穿透的效果,异同点是TURN是通过两方通讯的“中间人”方式实现穿透。

1 STUN

了解STUN之前,我们需要了解NAT的种类。

NAT对待UDP的实现方式有4种,分别如下:

  1. Full Cone NAT

WebRtc 之 STUN和TURN相关推荐

  1. 实际中的WebRTC:STUN,TURN以及信令(五)

    原标题:WebRTC in the real world: STUN, TURN and signaling 前文链接:实际中的WebRTC:STUN,TURN以及信令(一),实际中的WebRTC:S ...

  2. Webrtc中stun和turn的理解

    对于stun和turn的理解 在介绍turn和stun之前我们先来了解几个概念 会话描述协议 SDP(Session Description Protocol ) 网络地址转换 NAT (Networ ...

  3. webrtc下的媒体网络连接STUN、TURN、UDP、TCP

    一.理想的网络 媒体流创建流程: 1. PeerA.PeerB分别把自己的IP地址(包含端口号)和媒体能力(本地能支持的音视频编解码类型)告诉信令服务器. 2. 信令服务器对媒体能力进行协商,找到一组 ...

  4. webrtc进阶-信令篇-之三:信令、stun、turn、ice

    webRTC支持点对点通讯,但是webRTC仍然需要服务端:  . 协调通讯过程中客户端之间需要交换元数据,    如一个客户端找到另一个客户端以及通知另一个客户端开始通讯.  . 需要处理NAT(网 ...

  5. webrtc进阶-信令篇-之三:信令、stun、turn、ice 【转】

    文章来源:webrtc进阶-信令篇-之三:信令.stun.turn.ice webRTC支持点对点通讯,但是webRTC仍然需要服务端:  . 协调通讯过程中客户端之间需要交换元数据,    如一个客 ...

  6. WebRTC:stun/turn服务器搭建

    基于coturn项目的stun/turn服务器搭建 VoIP (Voice over Internet Protocol), 一种语音通话技术,经由网际协议(IP)来达成语音通话与多媒体会议,也就是经 ...

  7. P2P技术详解(三):P2P技术之STUN、TURN、ICE详解 (webrtc)

    https://www.cnblogs.com/mlgjb/p/8243690.html 简单的说,TURN与STURN的共同点都是通过修改应用层中的私网地址达到NAT穿透的效果,异同点是TURN是通 ...

  8. STUN和TURN技术浅析

    在现实Internet网络环境中,大多数计算机主机都位于防火墙或NAT之后,只有少部分主机能够直接接入Internet.很多时候,我们希望网络中的两台主机能够直接进行通信,即所谓的P2P通信,而不需要 ...

  9. P2P技术之STUN、TURN、ICE详解

    1.内容概述 在现实Internet网络环境中,大多数计算机主机都位于防火墙或NAT之后,只有少部分主机能够直接接入Internet.很多时候,我们希望网络中的两台主机能够直接进行通信,即所谓的P2P ...

最新文章

  1. deepin linux桌面设置,Deepin系统的桌面样式:高效模式和时尚模式
  2. 2021算法竞赛入门班第二节课【递归、分治、二分】练习题
  3. git学习笔记04-将本地仓库添加到GitHub远程仓库-git比svn先进的地方
  4. java网络编程阻塞_Java网络编程由浅入深三 一文了解非阻塞通信的图文代码示例详解...
  5. 通信调制体制设计之64QAM性能分析MATLAB仿真及代码
  6. oracle之单行函数之分组函数
  7. 数学思想 —— 对称性思维
  8. java窗口添加标签页_在新标签页中打开新窗口
  9. 2.跳转到指定的位置
  10. 局部图像运动复原matlab,运动模糊图像复原算法实现及应用.docx
  11. 火狐——图片闪动 部分情况下加载不出来
  12. 人物-IT-史玉柱:史玉柱
  13. 扭曲丛林服务器未响应,LOL等级最高玩家已246级 狂刷扭曲丛林攒经验
  14. 模仿类似美团手机版应用源码
  15. 马克思 第一章 世界的物质性及其发展规律
  16. 如何免费下载DJKK的音乐
  17. 不能被7整除但能被5整除的数
  18. anacondaJupyter相关环境配置及常见问题及pycharm快捷命令(很全!很详细)
  19. 2022第三届全国大学生网络安全精英赛练习题(5)
  20. Xilinx原语的用法

热门文章

  1. AVAudioRecorder stop崩溃 在iOS13系统上
  2. JDK 环境变量配置及验证(javac 命令)
  3. 【大作业】一个完整的大作业
  4. 各种版本的卡图.html,问下大佬们utr有几种版本的,图一的个人认为是比较好看的一种...
  5. 基于DCT域的数字水印算法研究与应用
  6. Druid连接池 报错:abandon connection原因分析
  7. RBAC权限管理(详细)
  8. 店宝宝:淘宝特价版怎么玩?
  9. 长沙72岁老太弃12万元“启光”被银言劝阻
  10. xgboost 正则项_XGBoost总结