CCTV 何時需要 Multicast?組播網絡應如何設計及驗收?
Multicast(組播)不是所有閉路電視系統的必要條件。當同一即時影像需要同時送達多個監察工作站、解碼器或顯示牆時,組播可減少攝影機及上行鏈路重複傳送的流量;若影像主要由攝影機送往單一錄影伺服器,單播通常更簡單,也較容易跨越既有網絡與保安邊界。
先判斷 CCTV 是否真正需要 Multicast
設計不應由「攝影機支援組播」開始,而應先畫出每條影像流的來源、接收者及用途。一般錄影情境常見的是一部攝影機向一部網絡錄影機或管理伺服器傳送一條單播串流;即使多名操作員觀看,平台也可能由伺服器重新分發影像,攝影機本身未必需要組播。
| 情境 | 通常較合適的方法 | 原因及限制 |
|---|
| 攝影機只向單一 NVR/VMS 錄影 | 單播 | 流向清晰、配置簡單;不需要為單一接收者引入組播控制平面。 |
| 同一即時串流要送往大量工作站、解碼器或顯示牆 | 評估組播 | 來源只需發送一份串流,由網絡按群組成員複製;所有設備及軟件必須支援同一組播模式。 |
| 不同使用者需要不同解像度、碼率、重播或權限 | 單播或由 VMS 分發 | 組播群組內接收者通常取得同一串流,個別化控制能力有限。 |
| 串流要跨防火牆、營運商或不受控制的廣域網絡 | 通常採用單播/應用層分發 | 端到端組播支援、路由、安全策略及故障排查的要求較高。 |
只有當多個接收者會同時訂閱同一條即時串流,而且節省的重複頻寬足以抵銷設計及維運成本時,才應採用組播。組播不會降低每條影像本身的碼率,也不會自動提升畫質、錄影可靠性或網絡安全。
二層網絡:IGMP Snooping 與 Querier 各有甚麼作用?
IGMP 管理接收者成員關係
接收端透過 IGMP 加入或離開組播群組。Query、Membership Report 及 Leave 等訊息讓網絡掌握哪些網段仍有接收者;IGMP 本身不是跨路由器建立分發樹的協議。
Snooping 限制二層轉發
交換機觀察 IGMP 控制訊息,將已知群組流量只轉發到有接收者或多播路由器的端口。功能必須按 VLAN 及平台核對,不能只確認全域開關。
Querier 維持成員狀態
若 VLAN 內沒有多播路由器發出定期 Query,可按平台能力配置 Snooping Querier。其地址、IGMP 版本、選舉結果與備援行為均須記錄及驗證。
IGMP Snooping 依賴可持續更新的成員狀態。若沒有 Querier,部分交換機的動態表項老化後可能重新泛洪、停止轉發,或呈現廠商特定行為。相反,未經規劃地配置多個 Querier,可能造成版本、選舉及故障切換難以預測。應在每個承載組播的 VLAN 明確指定誰提供查詢、誰是備援,以及路由器端口如何被發現。
接收者離開群組後,停止轉發未必是即時的;實際時間受 IGMP 版本、Last Member Query、Robustness Variable、交換機快速離開功能及是否有多部終端共用端口影響。若端口後方可能還有其他接收者,不應在未測試下啟用 Fast Leave。
跨 VLAN 組播:PIM 與 RPF 缺一不可
IGMP Snooping 主要處理 VLAN 內的二層轉發。當來源與接收者位於不同 VLAN,三層設備除了接收下游 IGMP 成員關係,通常還須運行 PIM 等多播路由機制,才能在路由器之間建立組播分發樹。採用 PIM Sparse Mode 時,還要規劃 Rendezvous Point(RP)、共享樹/來源樹行為、PIM 邊界及容許的群組範圍;若平台與應用完整支援 Source-Specific Multicast,則可另行評估其來源指定模式。
RPF(Reverse Path Forwarding)檢查會依照通往組播來源,或特定樹狀模式下通往 RP 的路由資訊,選出預期上游介面。組播封包若從不符合 RPF 的介面進入,通常會被丟棄,以免形成環路或錯誤分發。因此「單播可以到達攝影機」不等於組播路徑必然正確;非對稱路由、摘要路由、VRF、備援切換及策略路由均可能改變 RPF 結果。
| 控制或狀態 | 所在範圍 | 驗收時要核對 |
|---|
| IGMP Membership | 接收者與本地多播路由器/Snooping 交換機 | 群組、來源篩選模式、接收端口、加入及離開時間。 |
| IGMP Snooping 表 | 每個二層 VLAN | 群組只指向正確接收端口及多播路由器端口。 |
| PIM 鄰居與組播路由 | 跨三層網絡 | 鄰居、RP、(*,G)/(S,G) 狀態、入站及出站介面清單。 |
| RPF 結果 | 每部多播路由器 | 來源/RP 查找所選的上游鄰居及介面是否符合設計。 |
組播地址、來源與接收者應如何規劃?
- 建立群組登記冊:為每條串流記錄攝影機或編碼器、來源 IP、組播群組地址、UDP/RTP 連接埠、VLAN、碼率、接收者、擁有人及保留期限,避免不同系統誤用同一群組。
- 選擇合適地址範圍:不要隨意使用整個 224.0.0.0/4。224.0.0.0/24 包含本地網絡控制用途,不適合作一般 CCTV 串流;企業內部應按地址政策選取可管理的範圍,並避免與既有應用重疊。
- 區分 ASM 與 SSM:Any-Source Multicast 只以群組識別接收內容,通常涉及 RP;Source-Specific Multicast 以來源及群組配對。攝影機、VMS、接收端、IGMP 版本及網絡平台必須端到端支援所選模式。
- 限制來源:只有獲授權的攝影機、編碼器或分發伺服器可向指定群組發送。ACL、邊界、來源驗證及管理網絡分隔可減少錯誤或冒充來源。
- 保留管理資料:地址、群組與連接埠不應只存在於攝影機設定畫面;應納入 IPAM、配置備份、網絡圖及變更程序。
規劃時還要確認組播 IP 映射至乙太網絡 MAC 位址並非一對一;不同群組地址可能映射至相同二層 MAC。交換機若只按 MAC 而非 IP 建立轉發狀態,行為及可用群組數可能受平台架構限制,必須查閱目標型號文件並實測。
未知組播、泛洪與故障域
當交換機尚未建立某群組的 Snooping 表項、控制訊息被過濾、Querier 消失、表項老化,或平台按預設策略處理未知組播時,影像流量可能被泛洪到 VLAN 內多個端口。生成樹拓撲變更、交換機重啟及上行切換期間,也可能出現短暫泛洪。即使畫面仍然正常,非接收端口亦可能承受大量不必要流量。
不要假設「啟用 IGMP Snooping」便會安全地丟棄所有未知組播。不同平台對未登記群組、路由器端口、控制群組及拓撲變更的預設行為不同;過度嚴格的丟棄策略也可能在接收者剛加入、表項尚未建立時造成黑畫面。驗收須同時觀察交換機轉發表及實際端口流量。
縮小二層範圍
按樓層、用途或容量劃分 CCTV VLAN,避免單一大型廣播域把未知組播、環路或錯誤配置擴散至全站。
設定多播邊界
在三層邊界明確限制可接受的來源、群組及方向,避免監控串流進入無需要的辦公、訪客或廣域網絡。
預留故障容量
上行或核心故障後,備援鏈路可能承載多個區域的組播副本;容量評估必須包括切換後路徑,而非只計算正常狀態。
容量規劃不能只把攝影機碼率相加
先按實測或合理上限記錄每條串流的平均及峰值碼率,再按每段鏈路上實際存在的不同串流數量計算。組播可避免同一鏈路因多個接收者而重複傳送同一條流,但在分支點之後仍會各自佔用下游鏈路;多個不同群組也仍須逐條累加。
- 突發流量:可變碼率、場景變化、I-frame、攝影機重連及同步切換可能令瞬時流量高於平均值。
- 封包開銷:容量計算要包括乙太網絡、IP、UDP、RTP、VLAN 標籤及平台相關開銷,而非只看編碼器顯示的視像有效載荷。
- 設備資源:除鏈路頻寬外,還要核對交換背板、每端口緩衝、Snooping/Multicast 表項、PIM 狀態、CPU 及組播複製能力。
- 故障情境:以單一上行、核心、RP 或 Querier 失效後的路徑重新計算負載,並保留業務增長及臨時接收者的餘量。
- 服務分級:若網絡存在擠塞,QoS 可按既定政策保護重要流量,但不能彌補長期頻寬不足或錯誤的組播轉發。
部署及驗收:必須觀察加入、離開與完整流量路徑
- 建立設計基線:記錄來源、群組、連接埠、接收者、VLAN、PIM/RP、預期 RPF 上游、正常及備援路徑、平均/峰值碼率與驗收門檻。
- 先驗證無接收者狀態:在沒有接收者加入時檢查接入及上行端口,確認串流沒有無原因地泛洪至整個 VLAN 或跨越未授權邊界。
- 捕捉加入過程:啟動一名接收者,觀察 IGMP Report、Snooping 表、PIM Join、組播路由狀態及流量開始時間,確認只有預期路徑出現該群組。
- 增加多個接收者:分別在同一交換機、同一 VLAN 的另一交換機及另一 VLAN 加入,核對複製點、出站介面與各鏈路頻寬是否符合拓撲。
- 捕捉離開與老化:逐一關閉接收者,觀察 Leave、Last Member Query、表項移除及流量停止時間;最後一名接收者離開後,不應持續佔用無需要的下游路徑。
- 測試故障及恢復:模擬攝影機、Querier、PIM 鄰居、RP、交換機及上行鏈路失效,核對 RPF、分發樹、流量切換、丟包、恢復時間及是否出現泛洪。
- 保存可重複證據:交付 Snooping 表、IGMP/PIM 狀態、RPF 查找、介面計數器、封包擷取、時間線及配置版本,而不是只保存監察畫面的截圖。
「畫面看得到」只能證明某一接收者在某一刻收到影像,不能證明流量沒有泛洪、RPF 路徑正確、最後接收者離開後會停止轉發,亦不能證明故障時仍有足夠容量。正式驗收必須同時覆蓋控制平面、資料平面及應用體驗。