近年來(lái),數(shù)字視頻監(jiān)控系統(tǒng)以其控制靈活、信息容量大、存儲(chǔ)和檢索便利等優(yōu)點(diǎn)逐步取代了傳統(tǒng)的模擬視頻監(jiān)控系統(tǒng),被廣泛應(yīng)用于安防、監(jiān)控、質(zhì)檢等方面。隨著計(jì)算機(jī)及網(wǎng)絡(luò)技術(shù)的發(fā)展、普及和網(wǎng)絡(luò)帶寬的迅速擴(kuò)大,視頻監(jiān)控又逐漸產(chǎn)生了新的需求,即將數(shù)字視頻監(jiān)控技術(shù)與網(wǎng)絡(luò)技術(shù)相結(jié)合,在現(xiàn)場(chǎng)監(jiān)控主機(jī)無(wú)人職守情況下,實(shí)現(xiàn)局域網(wǎng)或Internet遠(yuǎn)程監(jiān)控的功能。這樣,將監(jiān)控信息從監(jiān)控中心釋放出來(lái)提高了管理水平和效率。但在通過(guò)Internet遠(yuǎn)程訪問(wèn)視頻監(jiān)控服務(wù)傳統(tǒng)的遠(yuǎn)程訪問(wèn)技術(shù)體現(xiàn)功能不足,無(wú)法保證監(jiān)控所需的保密性和速度性的要求。VPNVirtual Private Networking)技術(shù)的出現(xiàn),改變了這一局面。通過(guò)使用VPN的隧道和加密技術(shù),實(shí)現(xiàn)了視頻數(shù)據(jù)經(jīng)過(guò)Internet在虛擬企業(yè)網(wǎng)絡(luò)中安全和便利的傳播。本文將結(jié)合一套為企業(yè)制作的遠(yuǎn)程數(shù)字視頻監(jiān)控系統(tǒng),介紹一種實(shí)用的基于VPN的遠(yuǎn)程視頻監(jiān)控系統(tǒng)架構(gòu)。該系統(tǒng)已成功應(yīng)用于多個(gè)部門,對(duì)視頻監(jiān)控、網(wǎng)絡(luò)視頻傳輸開(kāi)發(fā)有很高的參考價(jià)值。
圖1 用于VPN的IP-in-IP土封裝傳輸原理
VPN的遠(yuǎn)程數(shù)字視頻監(jiān)控系統(tǒng)架構(gòu)解決方案
1 遠(yuǎn)程數(shù)字視頻監(jiān)控系統(tǒng)的網(wǎng)絡(luò)設(shè)計(jì)要求
本系統(tǒng)是一套專門為企業(yè)制作的數(shù)字視頻監(jiān)控系統(tǒng),在工程實(shí)施過(guò)程中,需要提供遠(yuǎn)程監(jiān)控(實(shí)時(shí)圖像傳輸和遠(yuǎn)程操作)功能。具體地講,就是利用不同的方式(如拔號(hào)上網(wǎng)、局域網(wǎng)等方式)進(jìn)行單路及多路遠(yuǎn)程監(jiān)控,用戶在遠(yuǎn)程的監(jiān)控中心可以很方便地通過(guò)網(wǎng)絡(luò)了解各網(wǎng)點(diǎn)的基本情況、各路狀態(tài)控制、云臺(tái)控制、傳輸文件、遠(yuǎn)程解密。工程中將要完成對(duì)400余路視頻的處理,整個(gè)工程將配置20~30臺(tái)數(shù)字硬盤錄像機(jī)。具體要求:(1)本地主機(jī)通過(guò)局域網(wǎng)訪問(wèn)本地的任意一臺(tái)視頻服務(wù)器;(2)遠(yuǎn)程傳輸必須實(shí)時(shí)、可靠,必須保證視頻數(shù)據(jù)的高速和可靠傳輸。根據(jù)實(shí)際需要可以申請(qǐng)DDN,并在價(jià)格合適的條件下同時(shí)兼顧ADSL、PSTN和 DDN等三種連接方式;(3)遠(yuǎn)程接入終端通過(guò)遠(yuǎn)程撥號(hào)Remote Dial方式透過(guò)Internet訪問(wèn)本地局域網(wǎng)的任意一臺(tái)視頻服務(wù)器可同時(shí)連接16臺(tái)本地視頻服務(wù)器;(4)在工程中傳輸?shù)囊曨l數(shù)據(jù)可以定性為非高保密數(shù)據(jù),在上層的系統(tǒng)軟件中完成加密和必要的合法驗(yàn)證,在網(wǎng)絡(luò)設(shè)計(jì)中可以不特意選擇高性能的防火墻;(5)遠(yuǎn)程接入終端透過(guò)Internet 對(duì)本地局域網(wǎng)的訪問(wèn)對(duì)上層系統(tǒng)是絕對(duì)透明的,從某種意義來(lái)說(shuō),上層系統(tǒng)可以根據(jù)指定的局域網(wǎng)IP 地址來(lái)訪問(wèn)任何一臺(tái)本地視頻服務(wù)器。
采用方案分析:(1)對(duì)于速度要求,可以采用DDN專線、ADSL或?qū)?lái)的寬帶傳輸技術(shù);(2)價(jià)格要求,廉價(jià)的方式是使用Internet進(jìn)行數(shù)據(jù)傳輸?shù)@必然涉及到數(shù)據(jù)保密性的要求;(3)網(wǎng)絡(luò)安全性問(wèn)題,遠(yuǎn)程主機(jī)的接入身份驗(yàn)證和驗(yàn)證身份的數(shù)據(jù)必須加密,視頻數(shù)據(jù)可以根據(jù)需求加密;(4)遠(yuǎn)程訪問(wèn),需要視頻服務(wù)器提供允許遠(yuǎn)程接入的能力, 需要進(jìn)行RAS配置;(5)訪問(wèn)透明性要求,上層系統(tǒng)只需要設(shè)計(jì)成簡(jiǎn)單的兩步架構(gòu),用戶指定視頻服務(wù)器IP---->監(jiān)控指定IP的視頻,無(wú)需涉及網(wǎng)絡(luò)連接的具體實(shí)現(xiàn)過(guò)程,無(wú)需用代碼實(shí)現(xiàn)遠(yuǎn)程連接的過(guò)程。
鑒于以上需求,可以采用VPN+ADSL方案,這是一個(gè)切實(shí)可行且成本低廉的方案。能夠提供速度及企業(yè)移動(dòng)用戶(mobile user)的安全便利接入、數(shù)據(jù)保密性、客戶遠(yuǎn)程訪問(wèn)透明性的需求.以下將介紹構(gòu)架VPN的基本原理, 以及本系統(tǒng)的具體實(shí)現(xiàn)構(gòu)架。
圖2 Internet網(wǎng)上VPN應(yīng)用與局域網(wǎng)內(nèi)部VPN應(yīng)用
VPN的遠(yuǎn)程數(shù)字視頻監(jiān)控系統(tǒng)架構(gòu)解決方案
2 VPN介紹
2.1 VPN的概念
隨著Internet網(wǎng)絡(luò)規(guī)模與使用的擴(kuò)大和廣泛化,通過(guò)Internet傳輸保密數(shù)據(jù)的安全性需求日益提上議程。分布式企業(yè)想在處于不同地域的部門之間安全傳遞數(shù)據(jù),傳統(tǒng)的方法是使用租用線路將各部門的私有網(wǎng)絡(luò)相連,并使用租用線路進(jìn)行內(nèi)部通訊。該方案的主要缺點(diǎn)在于租用線路價(jià)格昂貴。一種新的降低成本的途徑是允許單位配置VPN技術(shù),不用任何租用線路通過(guò)Internet傳輸加密數(shù)據(jù),這樣可以把線路費(fèi)用降到。該技術(shù)通過(guò)隧道和加密技術(shù)達(dá)到類似私有網(wǎng)絡(luò)的安全數(shù)據(jù)傳輸功能有著非常廣闊的應(yīng)用前景。它具有以下優(yōu)點(diǎn):
(1)費(fèi)用低--VPN使用Internet進(jìn)行數(shù)據(jù)傳輸免去了昂貴的專線費(fèi)用只須添加支持VPN的上網(wǎng)設(shè)備。
(2)保密性--VPN使用了加密技術(shù)保證了通過(guò)Internet進(jìn)行數(shù)據(jù)傳輸?shù)陌踩浴?/span>
(3)私有性--連接上VPN服務(wù)器的客戶就像在使用局域網(wǎng)一樣。使用局域網(wǎng)內(nèi)部IP地址就可以訪問(wèn)整個(gè)VPN中的所有主機(jī)。
2.2 VPN的基本工作原理
針對(duì)VPN實(shí)現(xiàn)的幾個(gè)優(yōu)點(diǎn),VPN主要使用了隧道傳輸,tunneling,技術(shù)和加密,encrypting,技術(shù)。為了實(shí)現(xiàn)保密性, VPN把外發(fā)的數(shù)據(jù)報(bào)加密傳輸。對(duì)于私有性,VPN使用隧道技術(shù), 定義了兩個(gè)網(wǎng)點(diǎn)的路由器之間通過(guò)Internet的一個(gè)隧道, 并使用IP-in-IP封裝通過(guò)隧道轉(zhuǎn)發(fā)數(shù)據(jù)報(bào)。其基本原理如圖1所示,為了確保保密性內(nèi)層數(shù)據(jù)經(jīng)過(guò)加密。
圖1中,VPN授權(quán)主機(jī)A發(fā)給主機(jī)B的整個(gè)內(nèi)層數(shù)據(jù)報(bào),包括首部,在被封裝前進(jìn)行了加密。當(dāng)數(shù)據(jù)報(bào)通過(guò)隧道到達(dá)VPN服務(wù)器時(shí), VPN服務(wù)器將數(shù)據(jù)區(qū)解密, 還原出內(nèi)層數(shù)據(jù)報(bào), 然后轉(zhuǎn)發(fā)該數(shù)據(jù)報(bào)給主機(jī)B。對(duì)A和B而言, 它們之間的數(shù)據(jù)傳輸過(guò)程是透明的。A要發(fā)送的原始信息包的目的地址就是B, 用戶并無(wú)覺(jué)察數(shù)據(jù)經(jīng)過(guò)打包交由VPN服務(wù)器轉(zhuǎn)發(fā)給B, 反之亦然。感覺(jué)上A和B之間存在一條虛擬的加密直達(dá)鏈路。總之,VPN通過(guò)Internet傳輸數(shù)據(jù), 但對(duì)網(wǎng)點(diǎn)間傳輸進(jìn)行加密,以保證保密性。
市面上的VPN方案繁多但都包含了三個(gè)基本元素:(1)授權(quán):VPN服務(wù)器對(duì)遠(yuǎn)程接入終端進(jìn)行授權(quán)接入VPN,(2)加密:遠(yuǎn)程接入終端發(fā)送的數(shù)據(jù)加密后才通過(guò)非私有網(wǎng)傳輸;(3)隧道:遠(yuǎn)程接入終端發(fā)送的數(shù)據(jù)經(jīng)過(guò)封裝由VPN服務(wù)器轉(zhuǎn)發(fā)。
2.3 VPN的主要應(yīng)用
設(shè)計(jì)VPN的初衷在于使用Internet安全傳遞數(shù)據(jù)此外VPN也提供了對(duì)移動(dòng)用戶和漫游用戶的支持這是VPN能迅速推廣和被運(yùn)用的主要原因。在Internet網(wǎng)上的VPN應(yīng)用及使用步驟,如圖2上部所示圖中的PPTP是VPN的一種實(shí)現(xiàn)方案。遠(yuǎn)程主機(jī)可以有三種方法通過(guò)Internet向VPN服務(wù)器請(qǐng)求VPN服務(wù)。同理,如圖2下部,在局域網(wǎng)內(nèi)部,主機(jī)A的加密數(shù)據(jù)報(bào)也可以由VPN服務(wù)器轉(zhuǎn)發(fā)給主機(jī)B,實(shí)現(xiàn)A到B的保密傳輸。
圖3 視頻監(jiān)控系統(tǒng)網(wǎng)絡(luò)架構(gòu)
VPN的遠(yuǎn)程數(shù)字視頻監(jiān)控系統(tǒng)架構(gòu)解決方案
3 遠(yuǎn)程數(shù)字視頻監(jiān)控系統(tǒng)架構(gòu)
3.1網(wǎng)絡(luò)架構(gòu)方案
出于系統(tǒng)的設(shè)計(jì)要求和VPN的優(yōu)點(diǎn),本系統(tǒng)采用VPN方案來(lái)構(gòu)架遠(yuǎn)程數(shù)字視頻監(jiān)控系統(tǒng)。在工程設(shè)施中,采用預(yù)裝了VPN協(xié)議組的路由器作為VPN服務(wù)器。系統(tǒng)網(wǎng)絡(luò)構(gòu)架如圖3所示。
若不采用傳統(tǒng)的遠(yuǎn)程訪問(wèn)方案,要使遠(yuǎn)程用戶訪問(wèn)視頻服務(wù)器必須給每臺(tái)視頻服務(wù)器配置RAS協(xié)議接受傳入的訪問(wèn)并在遠(yuǎn)程訪問(wèn)終端上添加所有要訪問(wèn)的視頻服務(wù)器的撥號(hào)連接每訪問(wèn)一臺(tái)視頻服務(wù)器都須撥號(hào)一次非常麻煩;但采用了VPN方案遠(yuǎn)程用戶只需撥號(hào)訪問(wèn)VPN服務(wù)器一次就與本地所有的視頻服務(wù)器構(gòu)成一個(gè)虛擬的局域網(wǎng)可以使用局域網(wǎng)IP地址直接訪問(wèn)任意的視頻服務(wù)器大大減小了遠(yuǎn)程訪問(wèn)連接的開(kāi)銷方便了用戶和上層軟件系統(tǒng)的設(shè)計(jì)只需要設(shè)計(jì)成局域網(wǎng)訪問(wèn)方案就可以了,并做到安全通訊。
3.1.1 VPN路由器/局域網(wǎng)內(nèi)部主機(jī)/遠(yuǎn)程訪問(wèn)主機(jī)的配置
當(dāng)前VPN行業(yè)使用四個(gè)標(biāo)準(zhǔn):點(diǎn)到點(diǎn)隧道協(xié)議PPTPPoint-to-Point Tunneling Protocol,第2層發(fā)送協(xié)議L2F,第2層隧道協(xié)議L2TP,IP安全性IPsec。由于本系統(tǒng)中使用的所有主機(jī)都是基于WindowNT系統(tǒng)出于協(xié)議兼容性考慮本系統(tǒng)VPN方案主體采用微軟的PPTP協(xié)議構(gòu)架。
(1)本系統(tǒng)采用VPN路由器,它內(nèi)置了Web服務(wù)器用戶可以直接訪問(wèn)其Web服務(wù)器進(jìn)行路由器配置。例如預(yù)先向ISP申請(qǐng)了靜態(tài)的IP地址202.168.25.1可以直接在瀏覽器地址欄中輸入http?//202.168.25.1?80訪問(wèn)網(wǎng)頁(yè),輸入用戶帳戶和密碼后進(jìn)入設(shè)置界面,對(duì)路由器進(jìn)行如下配置:在VPN協(xié)議配置頁(yè)面中選擇“自動(dòng)選用VPN協(xié)議”,并采用加密傳輸選項(xiàng);在訪問(wèn)頁(yè)面設(shè)置加入VPN的用戶名和密碼用于為遠(yuǎn)程客戶授權(quán)加入VPN;過(guò)濾數(shù)據(jù)包令VPN路由器只處理VPN數(shù)據(jù)包,其他數(shù)據(jù)包丟棄,以減少網(wǎng)絡(luò)流量。
(2)本地訪問(wèn)主機(jī)B和視頻服務(wù)器處于同一局域網(wǎng)內(nèi)部無(wú)需其他附加的協(xié)議。
(3)遠(yuǎn)程訪問(wèn)主機(jī)A想通過(guò)VPN方案訪問(wèn)局域網(wǎng)內(nèi)的所有視頻服務(wù)器。需要有連接上Internet的設(shè)備如ADSL、ISDN、PSTN;需要安裝RAS協(xié)議以連接上VPN服務(wù)器;需要安裝PPTP協(xié)議以與VPN服務(wù)器通訊并構(gòu)架VPN。
3.1.2 系統(tǒng)工作流程
(1)25臺(tái)視頻服務(wù)器通過(guò)100Mbps以太網(wǎng)交換機(jī)連接組成局域網(wǎng)每部監(jiān)控視頻服務(wù)器數(shù)字硬盤錄像機(jī)通過(guò)4張PCI 板卡可以直接連接16個(gè)攝像機(jī)并完成視頻的實(shí)時(shí)采集、壓縮和寫盤工作。系統(tǒng)中共有25×16=400路實(shí)時(shí)視頻信號(hào)資源。
(2)在特定時(shí)段內(nèi)(可在系統(tǒng)中由用戶設(shè)置,可以設(shè)置為非監(jiān)控時(shí)段),監(jiān)控服務(wù)器將記錄在本機(jī)的視頻數(shù)據(jù)資料發(fā)送給回放視頻服務(wù)器存檔,供日后檢索使用。授權(quán)用戶可以訪問(wèn)監(jiān)控視頻服務(wù)器獲取實(shí)時(shí)監(jiān)控視頻,也可以訪問(wèn)回放視頻服務(wù)器獲取回放視頻資料。
(3)在局域網(wǎng)內(nèi)部例如主機(jī)B可以直接訪問(wèn)局域網(wǎng)內(nèi)部的任何一臺(tái)視頻服務(wù)器。
(4)局域網(wǎng)通過(guò)VPN路由器與Internet相連為授權(quán)移動(dòng)用戶mobil user提供遠(yuǎn)程訪問(wèn)的能力。遠(yuǎn)程移動(dòng)用戶A可以在任何地方先使用ADSL、ISDN或PSTN向ISP請(qǐng)求連接上Internet再使用PPTP協(xié)議請(qǐng)求連接上私有局域網(wǎng)的VPN路由器預(yù)裝了VPN相關(guān)協(xié)議;VPN路由器根據(jù)預(yù)先設(shè)置的授權(quán)名單校驗(yàn)授權(quán)用戶,若校驗(yàn)通過(guò)則與遠(yuǎn)程主機(jī)A建立一條VPN隧道供傳輸數(shù)據(jù)并將主機(jī)加入到虛擬專用網(wǎng)VPN中;此后主機(jī)A可以使用私有局域網(wǎng)內(nèi)部的IP地址訪問(wèn)私有局域網(wǎng)中的任意一臺(tái)監(jiān)控或回放視頻服務(wù)器。3.2 軟件架構(gòu)方案
Internet應(yīng)用層軟件開(kāi)發(fā)主要使用兩種方案進(jìn)行數(shù)據(jù)傳輸:傳輸控制協(xié)議TCP(Translate Control Protocol)和用戶數(shù)據(jù)報(bào)協(xié)議UDPUser Datagram Protocol。TCP采用丟幀重發(fā)的方法來(lái)提供有可靠保障的數(shù)據(jù)流服務(wù),UDP提供“大可能地交付”高效小時(shí)延但不可靠的數(shù)據(jù)報(bào)傳輸服務(wù)。根據(jù)它們各自的特點(diǎn),可以使用TCP傳輸有質(zhì)量要求的控制命令,且用UDP迅速傳輸大量的音視頻數(shù)據(jù)。
本系統(tǒng)作如下設(shè)計(jì):在可靠性要求比較嚴(yán)格的地方使用TCP傳輸數(shù)據(jù),包括服務(wù)器信息收集、各路狀態(tài)控制、云臺(tái)控制、傳輸文件、遠(yuǎn)程解密等;同時(shí)在速度要求比較嚴(yán)格的地方--實(shí)時(shí)視頻傳輸中使用UDP。遠(yuǎn)程監(jiān)控的一個(gè)問(wèn)題是實(shí)時(shí)性,而實(shí)時(shí)性的障礙就是網(wǎng)絡(luò)傳輸時(shí)延問(wèn)題。在這種情況下應(yīng)該選用UDP傳輸視頻圖像,對(duì)用戶來(lái)說(shuō),一定程度的數(shù)據(jù)丟失和次序錯(cuò)誤并不是大問(wèn)題,上一幀的丟失不會(huì)影響到下一幀。用戶寧愿接受有一定丟幀的實(shí)時(shí)視頻圖像,也不愿意接受沒(méi)有丟幀的具有累加時(shí)延的滯后視頻圖像。若采用TCP,TCP固有的傳錯(cuò)傳丟重發(fā)機(jī)制本身就加重了視頻傳輸?shù)臅r(shí)延。在具體編程中可以通過(guò)WinSock來(lái)使用TCP和UDP協(xié)議提供的功能。
整個(gè)視頻監(jiān)控系統(tǒng)各部分功能及數(shù)據(jù)流向如圖4所示。
圖4 系統(tǒng)總體功能模型
VPN的遠(yuǎn)程數(shù)字視頻監(jiān)控系統(tǒng)架構(gòu)解決方案
3.3 系統(tǒng)評(píng)價(jià)及應(yīng)用前景
作者使用Visual C++6實(shí)現(xiàn)數(shù)字視頻監(jiān)控系統(tǒng),該系統(tǒng)經(jīng)過(guò)測(cè)試能實(shí)際達(dá)到的效果:
(1)速度:局域網(wǎng)(100Mbps以太網(wǎng))內(nèi)部可以達(dá)到實(shí)時(shí)傳輸16路×23幀/每秒CIF圖像的要求。廣域網(wǎng)實(shí)用ADSL可以達(dá)到2路×23幀/每秒CIF圖像的要求,并可以使用通道輪轉(zhuǎn)技術(shù)實(shí)時(shí)監(jiān)控16路視頻的能力。
(2)遠(yuǎn)程訪問(wèn)的安全性:由于在VPN服務(wù)器上設(shè)置了遠(yuǎn)程訪問(wèn)企業(yè)內(nèi)部網(wǎng)的用戶權(quán)限,并使用VPN的安全用戶訪問(wèn)方式(如RADIUS遠(yuǎn)程驗(yàn)證撥號(hào)用戶服務(wù)),保證了用戶保密資料的傳輸。
(3)訪問(wèn)方便:遠(yuǎn)程連接時(shí),在連接上企業(yè)的VPN服務(wù)器后,用戶感覺(jué)上就處于一個(gè)虛擬的企業(yè)內(nèi)部局域網(wǎng)中,其后操作都與局域網(wǎng)操作致。用戶可任意訪問(wèn)任意臺(tái)視頻服務(wù)器的任意個(gè)視頻通道。
該系統(tǒng)架構(gòu)已經(jīng)在多個(gè)銀行和企業(yè)部門中使用,其實(shí)用性和易操作性受到客戶的好評(píng)。該系統(tǒng)對(duì)于視頻監(jiān)控、網(wǎng)絡(luò)視頻傳輸開(kāi)發(fā)有很高的參考價(jià)值。