天天看點

安防監控平台技術總結

  2017年剛參加工作,項目中就用到了攝像頭。内網用rtsp拉流可以通,外網行不通,當時一直研究怎麼穿透網絡,最後根據客戶的情況,選擇了比較麻煩的一種方案:

  客戶門店使用電信寬帶撥号上網,路由器綁定在銳捷平台。在路由器上做好端口映射(映射NVR的web通路端口)。

需要觀看的時候,登陸銳捷的平台得到路由器的外網位址,再通路NVR。

當然這樣做弊端很多:

  1. 穿透率低,撥号上網不一定能配置設定到公網ip,很有可能還是内網的ip。即使配置設定到了公網ip,很多寬帶都屏蔽了端口(NAT限制)。即使用花生殼等穿透工具,寬帶的問題穿透不了的還是穿透不了,還是需要伺服器來轉發實作穿透。
  2. 速度慢。
自此以後,腦海裡一直有個問題,攝像頭怎麼才能友好的出内網?

  2018年,新公司,新項目當中又用到了攝像頭,出外網的問題随之而來。不同于之前,這次攝像頭是用在室外,通過4G卡上網。上司也提出了一些方案,最後也都是無疾而終,擱置不前。

  在開發部标JT1078流媒體服務時,發現終端通過TCP連接配接上Server,Server可以通過TCP通道給終端下發推流指令,終端再向伺服器推流。我艹,瞬間感覺這種方式多友善、多友好啊。随之即想到,難道之前的安防攝像頭不能通過這樣方式推流嗎?是攝像頭廠商發展太慢,還是我太菜了?拿起了海康的攝像頭,又是一陣研究,結果顯然是我太菜了。原來有GB28181協定啊,完美解決出外網的問題。後面也基于GB28181實作了流媒體平台,解決了這一大憾事。後面也将帶來幾篇文章講解GB28181的文章(基于Java)。随着對國标的研究發現,安防監控解決方案大緻分兩種:

1. 本地架設伺服器方案

  此方案相對來說自由很多,rtsp直接拉流/onvif/gb28181以及各種私有協定,如果有靜态IP外網可直接通路。但是很少直接通路攝像頭,一般都通過平台集中管理攝像頭,同時對外提供服務。

如果沒靜态ip,還需要本地伺服器和公網伺服器自定義協定,實作流媒體轉發。

2. 國标方案

  在終端設定綁定到伺服器,終端上電聯網後,向伺服器注冊,發送心跳維持通道,以及各種互動信令。需要觀看監控時,server給攝像頭下發信令,攝像頭推流。

  除此之外,各個廠家都有自己的私有協定,例如海康的螢石雲,ehome。螢石雲是p2p穿透方案,按流量收費,現在4G基本穿透不了(對稱型NAT)。有的p2p攝像頭自帶wifi熱點,不知道是不是以此 來增加穿透幾率,但是4G的Nat那層還是穿透不了啊,有空再研究。ehome協定,看了下伺服器抓包資料和文檔,出外網應該也沒有問題,有興趣的朋友可以研究下。

安防監控平台技術總結

繼續閱讀