TURN [読み方:たーん]
TURNはTraversal Using Relays around NATを表し、RFC 5766(2010年4月発行)で規定されるプロトコルである。NATの内側に位置するエンドポイントが別のそのようなエンドポイント(ピア)と通信するためには、パブリック・ネットワークに中継サーバ(TURNサーバ)が必要である。TURNは、そのような環境でNATの内側エンドポイント(TURNクライアント)がNAT外側のTURNサーバに中継サーバとして動作することを要求し、中継サーバを制御してピアとのパケット送受信を実現する。クライアントがサーバのピア側トランスポート・アドレス(relayed transport address、中継トランスポート・アドレス)を獲得することでこれが可能となる。クライアントからのパケットはTURNメッセージとしてサーバに届きUDPに戻されて宛先のピアに届く。逆にピアからのUDPパケットはサーバの中継トランスポート・アドレスに届き,サーバでTURNメッセージに包まれてクライアントに届く。この中継トランスポート・アドレスをクライアントとピアで共有する方法は、TURNプロトコルの規程範囲外で、SIPシステムではSIPメッセージがこれを支援する。
TURNはもともとSIPによるマルチメディア通信のために考え出され、SIPは1対1通信のみでなくforkingと呼ばれる1対多の双方向通信を提供するので、TURNも1対多の通信をサポートしている。
TURNはICEの一部として設計されたプロトコルであるが、ICEなしの場合にも適用可能である。またTURNはSTUNの拡張として定義され、TURNメッセージのほとんどはSTUNフォーマットになっている。