同步教室連線原理
About TURN
About TURN
同步會議進行需要多個 UDP 的通道,讓 WebRTC 進行溝通;然而在網路受限制的環境,身處在防火牆或 NAT內,無法用 UDP 對外通訊,可能會導致連線問題。
這時就會需要用到 TURN (Traversal Using Relays around NAT),它是設計用來進行UDP通訊的協定;它可以讓同步教室,不受防火牆的限制(就像穿透防火牆),它也實作了 STUN (還有複雜的內部機制),我們稍候會提到。
有了 TURN 的幫忙,提高並改進了,與同步教室連線成功的機率,
受限制的網路環境,如:公司內、校內、社區網路-通常是第4台或二類電信商供應)。
個人與同步教室連線
個人與同步教室連線
當你要連到同步教室時,兩台裝置間的通訊流程如下:
直接連線
經由STUN協助找到彼此
經由TURN中繼轉接
以下逐一說明:
直接連線
直接連線
通常是在本地網路(校內或公司區網內);如果兩端都在本地,沒有什麼特別要處理的,直接連接即可。
由STUN協助
由STUN協助
如果兩端不在同一本地,需經由公開網路連線。
因為不知道自身的對外的IP,所以先到 STUN 進行詢問-我的公開IP為何?
假設沒有其它因素阻擋,彼此就可連線。
一般狀況80%都可經由 STUN 協助解決連線問題。
由TURN協助
由TURN協助
取得公開IP還不能解決連線時(在NAT內或防火牆等設備不允許直接連線),需要由TURN幫忙中繼轉傳。