設定基於 WebRTC 的通訊系統

要設定基於 WebRTC 的通訊系統,你需要三個主要元件:

  1. WebRTC 信令伺服器

    為了建立 WebRTC 連線,對等體需要聯絡信令伺服器,然後信令伺服器提供對等體建立對等連線所需的地址資訊。信令伺服器例如:

    • signalmaster :基於 JavaScript 的輕量級信令伺服器
    • NextRTC :基於 Java 的信令伺服器
    • Kurento :全面的 WebRTC 框架
    • Janus :通用 WebRTC 閘道器
  2. WebRTC 客戶端應用程式

    客戶端通過 JavaScript API 訪問瀏覽器的 WebRTC 實現,或使用 WebRTC 庫(即作為桌面或移動應用程式的一部分)。為了建立與對等體的連線,客戶端首先需要連線到信令伺服器。WebRTC 客戶端的示例如下:

  3. 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 伺服器。