TURN協定允許NAT或者防火牆後面的對象可以通過TCP或者UDP接收到數據。這在使用了對稱式的NAT(或者防火牆)的網路中尤其具有實用價值 。
TURN方式解決NAT問題的思路與STUN相似,是基於私網接入用戶通過某種機制預先得到其私有地址對應在公網的地址(STUN方式得到的地址為出口NAT上的地址,TURN方式得到地址為TURNServer上的地址),然後在報文負載中所描述的地址信息直接填寫該公網地址的方式,實際套用原理也是一樣的。
TURN的全稱為Traversal Using Relay NAT,即通過Relay方式穿越NAT,TURN套用模型通過分配TURNServer的地址和連線埠作為客戶端對外的接受地址和連線埠,即私網用戶發出的報文都要經過TURNServer進行Relay轉發,這種方式套用模型除了具有STUN方式的優點外,還解決了STUN套用無法穿透對稱NAT(SymmetricNAT)以及類似的Firewall設備的缺陷,即無論企業網/駐地網出口為哪種類型的NAT/FW,都可以實現NAT的穿透,同時TURN支持基於TCP的套用,如H323協定。此外TURNServer控制分配地址和連線埠,能分配RTP/RTCP地址對(RTCP連線埠號為RTP連線埠號加1)作為本端客戶的接受地址,避免了STUN套用模型下出口NAT對RTP/RTCP地址連線埠號的任意分配,使得客戶端無法收到對端發過來的RTCP報文(對端發RTCP報文時,目的連線埠號預設按RTP連線埠號加1傳送)
TURN的局限性在於所有報文都必須經過TURNServer轉發,增大了包的延遲和丟包的可能性。