燕東渭
(陜西省氣象信息中心,西安 710014)
近年來,各行各業(yè)都在大力進(jìn)行有關(guān)大數(shù)據(jù)的應(yīng)用和研究,其中如何獲取外部門數(shù)據(jù)往往成為開展大數(shù)據(jù)應(yīng)用,特別是跨部門數(shù)據(jù)融合應(yīng)用的關(guān)鍵。目前,陜西省氣象部門已經(jīng)得到了授權(quán),可以訪問外部門覆蓋陜西全省的實(shí)景視頻信息。這些信息對于氣象部門開展天氣實(shí)況服務(wù)、短時臨近預(yù)報預(yù)警以及預(yù)報服務(wù)評估等業(yè)務(wù)來說,都是非常寶貴的資源。但因?yàn)闆]有項(xiàng)目和經(jīng)費(fèi)支撐,無法搭建通信專線,也無法購置新的專用設(shè)備來完成共享數(shù)據(jù)的獲取。僅有的通道是互聯(lián)網(wǎng)和電子政務(wù)外網(wǎng)這樣的公網(wǎng)。因此,以陜西省氣象局和某省級部門為例,探討如何基于公網(wǎng),在不添置任何新網(wǎng)絡(luò)設(shè)備的條件下,實(shí)現(xiàn)跨部門視頻流數(shù)據(jù)的共享。
1.1.1 網(wǎng)絡(luò) 兩個部門互聯(lián)的網(wǎng)絡(luò)拓?fù)涫疽馊鐖D1,陜西省氣象局和對方都有各自的省級、市級局域網(wǎng)絡(luò)[1-2],省級網(wǎng)絡(luò)均通過硬件防火墻接入了公網(wǎng)。兩個防火墻(防火墻A和防火墻B)之間測試是暢通的,但是將兩個私網(wǎng)直接打通是不可能的。其中,對方WWW服務(wù)器布設(shè)在省級網(wǎng)絡(luò),幾個流媒體服務(wù)器分別在市級網(wǎng)絡(luò)。
圖1 兩個部門互聯(lián)網(wǎng)絡(luò)拓?fù)鋱D
1.1.2 數(shù)據(jù)共享 某省級部門的實(shí)景視頻服務(wù)對其內(nèi)部是借助一臺省級WWW服務(wù)器提供入口門戶的。內(nèi)部用戶使用瀏覽器點(diǎn)擊該WWW頁面上以樹形層次結(jié)構(gòu)呈現(xiàn)的所有視頻拍攝點(diǎn)位置名稱,即可查看相關(guān)的實(shí)景視頻。當(dāng)用戶點(diǎn)擊訪問不同場所的視頻時,底層是借助預(yù)裝在本地終端上的插件按照WWW服務(wù)器上的超鏈接信息(流媒體服務(wù)器IP,視頻設(shè)備ID,用戶名密碼等),實(shí)時連接對應(yīng)的一臺市級流媒體服務(wù)器,請求對應(yīng)場所的攝像設(shè)備,從而獲取實(shí)時信息。需要注意的是,此時該用戶的PC必須與對應(yīng)的市級流媒體服務(wù)器保持連通。其給陜西省氣象局提供的數(shù)據(jù)共享方式,僅僅是允許瀏覽該WWW服務(wù)器。
省氣象局得到訪問該部門覆蓋陜西全省的實(shí)景視頻信息的許可只是單點(diǎn)的。為了更廣泛地發(fā)揮實(shí)景視頻信息的作用,還需保證省氣象局網(wǎng)內(nèi)全部用戶,或者至少部分用戶可以自如地訪問到對方的WWW服務(wù)器和視頻資源。同時,還需考慮不給氣象部門內(nèi)部用戶增加其他附加的操作,如臨時修改終端路由或安裝VPN客戶端等。
流媒體(streaming media)是在網(wǎng)絡(luò)上按時間先后順序傳輸和播放的連續(xù)音頻或視頻數(shù)據(jù)流。傳統(tǒng)方式瀏覽網(wǎng)絡(luò)上的視頻時,須先將整個文件完整下載并存儲在本地后,才能播放。與傳統(tǒng)方式不同,流媒體服務(wù)允許用戶在播放前無需下載整個文件,只將部分內(nèi)容緩存,使媒體數(shù)據(jù)流邊傳送邊播放,這樣節(jié)省了下載等待時間,非常適合實(shí)時視頻的共享。這種服務(wù)有個前提,即用戶終端PC必須與流媒體服務(wù)器網(wǎng)絡(luò)連通,而不是經(jīng)過第三方中轉(zhuǎn)。
NAT(net address transfer)是網(wǎng)絡(luò)上常用的一種技術(shù),通過改變數(shù)據(jù)包的源IP或目的IP[3],進(jìn)而使本不符合路由規(guī)則的數(shù)據(jù)包變得符合規(guī)則而得以被轉(zhuǎn)發(fā)。擴(kuò)展的NAT技術(shù)還允許改變數(shù)據(jù)包的源端口或目的端口。該技術(shù)非常適合在內(nèi)外網(wǎng)節(jié)點(diǎn)處的設(shè)備上配置,進(jìn)而打通不同網(wǎng)絡(luò)。因此可利用NAT技術(shù),實(shí)現(xiàn)陜西省氣象局內(nèi)網(wǎng)上的PC終端像對方的內(nèi)部終端一樣自如地訪問其視頻信息。具體實(shí)施方法:陜西省氣象局用戶訪問對方視頻時,在發(fā)出的數(shù)據(jù)包經(jīng)過陜西省氣象局的防火墻出口時,將數(shù)據(jù)包的源IP修改成陜西省氣象局的防火墻外網(wǎng)口IP(公網(wǎng)IP),目標(biāo)IP也需要確保是對方的防火墻外網(wǎng)口IP(公網(wǎng)IP),這樣可以保證該數(shù)據(jù)包順利經(jīng)過公網(wǎng),到達(dá)對方的防火墻;隨后再進(jìn)行二次NAT,即將該數(shù)據(jù)包的目標(biāo)IP修改為對方服務(wù)器的真實(shí)IP,還需要將源IP修改為對方的防火墻內(nèi)網(wǎng)口IP。經(jīng)過兩次NAT后,即可保證數(shù)據(jù)包順利到達(dá)對方內(nèi)網(wǎng)中的目標(biāo)服務(wù)器。
除了上述復(fù)雜的NAT外,一些必要的訪問控制規(guī)則也同樣需要考慮,如在陜西省氣象局的防火墻上允許轉(zhuǎn)發(fā)目標(biāo)IP是對方公網(wǎng)IP的數(shù)據(jù)包,在對方防火墻上增加允許轉(zhuǎn)發(fā)源IP是陜西省氣象局公網(wǎng)IP,目標(biāo)IP是對方WWW服務(wù)器IP的數(shù)據(jù)包,等等。此外還需要在陜西省氣象局核心交換機(jī)上增加對方網(wǎng)絡(luò)的靜態(tài)路由等。
按照上述技術(shù)方案,在陜西省氣象局防火墻上配置NAT,規(guī)則如表1。其中,第1條是將陜西省氣象局內(nèi)部網(wǎng)上所有訪問對方WWW服務(wù)器(IP為61.2.2.249,服務(wù)端口為TCP8080)的數(shù)據(jù)包中源IP地址包裝成陜西省氣象局的公網(wǎng)IP。這樣可以保證該數(shù)據(jù)包能順利通過公網(wǎng)到達(dá)對方的防火墻,進(jìn)而進(jìn)入其內(nèi)部網(wǎng)絡(luò)。該規(guī)則是針對源IP的NAT。第2條是將陜西省氣象局內(nèi)部網(wǎng)上訪問對方流媒體服務(wù)器A的數(shù)據(jù)包源IP地址包裝成陜西省氣象局的公網(wǎng)IP,不同的是該目標(biāo)服務(wù)器是對方A市的流媒體服務(wù)器,服務(wù)端口是TCP1200,而且該IP是對方服務(wù)器的真實(shí)IP。這條規(guī)則的目的同樣是保證該數(shù)據(jù)包能順利通過公網(wǎng)到達(dá)對方的內(nèi)部網(wǎng)絡(luò)。該規(guī)則是針對源IP和目的IP同時的NAT(終端用戶與流媒體服務(wù)器連接時,必須用對方的真實(shí)IP)。第3條規(guī)則和第2條的作用類似,該規(guī)則針對的是另一個市級流媒體服務(wù)器B(IP是10.2.2.24,服務(wù)端口是TCP1200)的訪問。對方給陜西省氣象局提供服務(wù)的公網(wǎng)IP(61.2.2.249)只有一個,而對方幾個不同流媒體服務(wù)器的服務(wù)統(tǒng)一使用TCP1200端口。在第2條規(guī)則中,陜西省氣象局為了實(shí)現(xiàn)流媒體服務(wù)的轉(zhuǎn)發(fā),已經(jīng)占用了服務(wù)器端口TCP1200,故在第3條中暫時將目標(biāo)端口修改為TCP1230。為了保證數(shù)據(jù)包到達(dá)對方網(wǎng)絡(luò)后,能夠正常轉(zhuǎn)發(fā)到目標(biāo)服務(wù)端口上,在對方的防火墻上做反向NAT時,及時把對端口TCP1230訪問的數(shù)據(jù)包目標(biāo)端口恢復(fù)成TCP1200即可。該條規(guī)則同樣是針對源IP和目標(biāo)IP的雙向NAT。第4條規(guī)則和第3條類似,不再贅述。
表1 陜西省氣象局NAT規(guī)則
經(jīng)過上述一系列NAT后,陜西省氣象局內(nèi)網(wǎng)用戶向?qū)Ψ桨l(fā)出各種被授權(quán)的請求(WWW服務(wù)和流媒體服務(wù))數(shù)據(jù)包,均可順利通過公網(wǎng)轉(zhuǎn)發(fā)到對方的防火墻上。故還需要在對方防火墻上做一系列反向NAT,每一條規(guī)則都是陜西省氣象局防火墻上對應(yīng)規(guī)則的反向轉(zhuǎn)換。如,針對陜西省氣象局NAT第1條規(guī)則,在對方防火墻上應(yīng)該有一條將所有源IP是陜西省氣象局公網(wǎng)IP,訪問服務(wù)是TCP8080的數(shù)據(jù)包進(jìn)行NAT:源IP轉(zhuǎn)換為對方防火墻內(nèi)網(wǎng)口IP,目標(biāo)IP轉(zhuǎn)換為對方提供WWW服務(wù)的真實(shí)IP。這樣,該數(shù)據(jù)包就會像對方內(nèi)部數(shù)據(jù)包一樣被正常轉(zhuǎn)發(fā)至WWW服務(wù)器。其他規(guī)則原理類似,不再贅述,具體見表2。需要特別指出的是,對方的WWW是省級服務(wù)器,布設(shè)在省級網(wǎng)絡(luò)區(qū)域,而其他的流媒體服務(wù)器有些在地市級的網(wǎng)絡(luò)區(qū)域部署。因此,為了保證陜西省氣象局對所有市級流媒體正常訪問,就必須保證對方防火墻的內(nèi)網(wǎng)口與其所有地市級流媒體服務(wù)器暢通。這可能需要對方網(wǎng)絡(luò)管理技術(shù)人員配合完成相關(guān)的路由打通工作。
表2 某省級部門NAT規(guī)則
按照上述技術(shù)方案在雙方的公網(wǎng)防火墻設(shè)備上實(shí)施配置后,在陜西省氣象局授權(quán)的內(nèi)部網(wǎng)上,用戶安裝必要的插件,并經(jīng)過相關(guān)身份認(rèn)證后,便可順暢地訪問對方的實(shí)時視頻信息,達(dá)到預(yù)想效果。目前可以借助該部門覆蓋陜西全省的實(shí)景視頻信息及時掌握陜西省多地的天氣實(shí)況,極大地提升了氣象防災(zāi)減災(zāi)的效率。