跳至主要內容
Skip to content

WebRTC 實戰 (9) —— 多人通訊架構:Mesh, MCU 與 SFU

到目前為止,我們討論的都是「一對一」通訊。但當房間裡有 5 個人甚至 50 個人時,點對點全連接的 RTCPeerConnection 就會崩潰。本篇將帶你從架構的高度,看看 WebRTC 是如何「變大」的。


一、 三大架構圖解

1. Mesh (P2P 全連接)

每個人都與所有人連線。

  • 優點:成本最低,延遲最低。
  • 缺點頻寬風暴。超過 5 人後,使用者的上傳頻寬會瞬間耗盡。

2. MCU (多點控制單元)

伺服器將所有人畫面「混成一張大圖」再發送。

  • 優點:使用者壓力最小(一傳一收)。
  • 缺點:伺服器運算成本極高,無法自訂畫面佈局。

3. SFU (選擇性轉發單元)

伺服器只負責轉發封包,不解碼。

  • 優點:架構平衡,使用者上傳一條串流即可,擴展性最強。

二、 三種架構大比拼

特性Mesh (P2P)MCUSFU (主流)
成本極低極高中 (流量)
使用者壓力極低
延遲最低較高
擴展性一般極佳

總結

小規模(小於 4 人)優先用 Mesh 以節省成本,而大型會議或直播則必須藉助 SFU 伺服器進行高效分發。

下一章,我們將正式邁向 SFU 的核心:探索業界頂尖框架 Mediasoup 與 Janus。


️ 進階挑戰

為什麼現在的會議軟體(如 Google Meet)即使在只有 2 個人的時候,有時也會強迫你經過 SFU 伺服器而不使用 Mesh?(提示:想想看錄影、穩定性與切換網路的流暢度。)


延伸閱讀與資源

← 上一章:WebRTC-Internals 除錯監控 | 返回專題首頁 | 下一章:邁向 SFU:框架探索