最終更新:2020-03-09 (月) 18:35:50 (1501d)  

TURN
Top / TURN

Traversal Using Relay around NAT

パケットをそのままリレー

RFC

ポート

  • 3478
  • TURN は STUN と同じポートで送られてくる前提で設計されている。そのため規定されているポート番号も一緒

TURN over TCP

  • ポート:80
  • シグナリングサーバーも 80/TCP で動かす必要がある
  • Webサーバー、シグナリングサーバー、TURNサーバーの3つをすべて80/TCPで動かすので、サーバーを3つ別々に立てる必要がある

メモ

  • すべての通信をTURNを経由して⾏うので、速度的なメリットはほとんどない

TURNサーバ

認証

short-term

long-term

  • WebRTCはこっち
  • USERNAME 属性と REALM 属性と Credential の 3 つを使う

メモ

  • 92%がSTUNを使った P2P 通信
  • 8%がTURNによる通信

メモ

  • 80%はTURNが無くても繋がり、10%はTURN-UDPがあれば繋がり、のこり10%はTURN-TCPとTURN-TLSがあれば繋がるという話がある
    • 通常の UDP で繋がらず、TURN の UDP が繋がらないときに TURN の TCP 、 そして TURN の TCP が繋がらないときに TURN の TLS にフォールバックしていく仕組み。

WebRTCの裏側

参考

関連