設定基於 WebRTC 的通訊系統
要設定基於 WebRTC 的通訊系統,你需要三個主要元件:
-
WebRTC 信令伺服器
為了建立 WebRTC 連線,對等體需要聯絡信令伺服器,然後信令伺服器提供對等體建立對等連線所需的地址資訊。信令伺服器例如:
- signalmaster :基於 JavaScript 的輕量級信令伺服器
- NextRTC :基於 Java 的信令伺服器
- Kurento :全面的 WebRTC 框架
- Janus :通用 WebRTC 閘道器
-
WebRTC 客戶端應用程式
客戶端通過 JavaScript API 訪問瀏覽器的 WebRTC 實現,或使用 WebRTC 庫(即作為桌面或移動應用程式的一部分)。為了建立與對等體的連線,客戶端首先需要連線到信令伺服器。WebRTC 客戶端的示例如下:
-
OpenWebRTC ,一個具有移動焦點的跨平臺客戶端
-
Peer.js 基於瀏覽器的客戶端(Peer.js 還提供輕量級伺服器)
-
STUN / TURN 伺服器
用於 NAT 的會話遍歷實用程式(STUN) 使對等方能夠交換地址資訊,即使它們位於採用網路地址轉換(NAT)的路由器之後。如果網路限制完全阻止對等端直接通訊,則通過
NAT(TURN)
伺服器周圍的遍歷使用中繼來路由流量。你可以在 http://www.avaya.com/blogs/archives/2014/08/understanding-webrtc-media-connections-ice-stun-and-turn.html 找到有關 STUN 和 TURN 的詳細圖形說明。WebRTC STUN / TURN 伺服器的示例如下:- coturn 結合了 STUN 和 TURN,通常是完全成熟的 WebRTC 基礎設施的一部分。
- Janus WebRTC Gateway 附帶一個整合的 STUN / TURN 伺服器。