【 摘 要 】 論文全面介紹了一種基于UDP實時遠程設備管理系統(tǒng)的設計與安全實現(xiàn)。隨著物聯(lián)網(wǎng)的發(fā)展,對于大規(guī)模的設備終端的遠程實時管理需要越來越高,物聯(lián)網(wǎng)的終端大多處于局域網(wǎng)內(nèi),應用服務器無法直接向物聯(lián)網(wǎng)的終端發(fā)送管理報文,用TCP通過終端和應用服務器建立長鏈接的方法隨著終端數(shù)量的增加,消耗的網(wǎng)絡資源和服務器資源會越來越大,擴展性面臨的挑戰(zhàn)也會越來越大。論文提供的方案,通過用UDP的方法可以大大節(jié)約網(wǎng)絡和服務器資源,此外,還提供的安全實現(xiàn)方法還能夠達到安全實時遠程管理設備的需求。
【 關(guān)鍵詞 】 UDP;長鏈接;設備管理;安全
【 中圖分類號 】 TP393 【 文獻標識碼 】 A
【 Abstract 】 This paper introduces the design and security implement of a system based on UDP to manage the devices remotely and real timely. With the development of internet of things ( IOT), manage the devices remotely and real timely has been a growing demand, the devices are most in the local area network(LAN),the application servers can not send the message to the devices. During the increment of the devices, the method using TCP to make a persistent connection between the devices and the application servers will consume more and more resources. The solution provided by this paper using UDP can decrease the consumption of the resources or the network and sever, and can security manage the devices remotely and real timely.
【 Keywords 】 udp; persistent connection; device management; security
1 引言
物聯(lián)網(wǎng)(IOT)是通過射頻識別(Rfid)、紅外感應器、全球定位系統(tǒng)、激光掃描器等信息傳感設備,按照約定的協(xié)議,把任何物品與互聯(lián)網(wǎng)連接起來,進行信息交換和通訊,以實現(xiàn)智能化識別、定位、跟蹤、監(jiān)控和管理的一種網(wǎng)絡。
隨著物聯(lián)網(wǎng)的發(fā)展,對于大規(guī)模的設備終端的遠程實時管理需要越來越高。由于物聯(lián)網(wǎng)的終端大多處于局域網(wǎng)內(nèi),應用服務器無法直接向物聯(lián)網(wǎng)的終端發(fā)送管理報文,但是終端可以向應用服務器發(fā)送請求,終端用傳輸控制協(xié)議(TCP)和應用服務器建立長鏈接的方法隨著終端數(shù)量的增加,消耗的網(wǎng)絡資源和服務器資源會越來越大,而且系統(tǒng)的擴展性面臨的挑戰(zhàn)也會越來越大。
所謂長連接指在一個TCP連接上可以連續(xù)發(fā)送多個數(shù)據(jù)包,在TCP連接保持期間,如果沒有數(shù)據(jù)包發(fā)送,需要雙方發(fā)檢測包以維持此連接,一般需要自己做在線維持。短連接是指通信雙方有數(shù)據(jù)交互時,就建立一個TCP連接,數(shù)據(jù)發(fā)送完成后,則斷開此TCP連接。比如Http的,只是連接、請求、關(guān)閉,過程時間較短服務器若是一段時間內(nèi)沒有收到請求即可關(guān)閉連接。其實長連接是相對于通常的短連接而說的,也就是長時間保持客戶端與服務端的連接狀態(tài)。
用戶數(shù)據(jù)報協(xié)議UDP(User Datagram Protocol)由于實現(xiàn)機制簡單、傳輸效率高,成為分布式應用中常用的網(wǎng)絡報文傳輸協(xié)議,尤其廣泛應用于各種仿真系統(tǒng)或者試驗系統(tǒng)中。通過UDP的方法,設備向管理服務器發(fā)送心跳報文,上報設備終端的狀態(tài)。當有管理需求的時候,應用服務器向管理服務器發(fā)送管理報文,當設備終端發(fā)送心跳報文請求的時候,管理服務器將管理報文發(fā)送終端,終端向應用服務器發(fā)起請求執(zhí)行管理作業(yè)。
2 基于UDP實時遠程設備管理系統(tǒng)的基本流程
如圖1所示,基于UDP安全實時遠程設備管理系統(tǒng)的基本流程。
(1)與AP建立VPN隧道,實時控制和獲取AP的狀態(tài)。
流程描述:
A. 應用服務器需要實時獲取設備狀態(tài)或者下發(fā)更新配置給設備的時候,向管理服務器發(fā)起請求;
B. 管理服務器在緩存中存儲設備需要建立VPN隧道的指令,(指令的過期時間以及時間tag);
C. 設備心跳包的數(shù)據(jù)包到達時,從緩存中取出這個指令,根據(jù)指令,與指定的VPN Server建立隧道,并且即發(fā)起每秒上報,在數(shù)據(jù)包中攜帶最近執(zhí)行指令的結(jié)果;
D. 管理服務器在緩存中檢測到AP執(zhí)行指令的結(jié)果,并返回給應用服務器(設置超時時間),同時管理服務器維護當前已建立的VPN隧道列表;
E. 應用服務器通過VPN Server直接與AP通信,獲取最新的狀態(tài)或則下發(fā)配置,完畢后關(guān)閉隧道(設置VPN隧道的超時時間 或者由應用服務器主動發(fā)起關(guān)閉VPN隧道)。
(2)分配上報地址流程。
流程描述:
A.設備每5分鐘進行傳統(tǒng)上報,應用服務器檢查上報配置是否是默認配置;
B.如果是默認配置,那么向管理服務器請求新的可上報配置,下發(fā)到設備。
3 系統(tǒng)架構(gòu)
3.1 概述
系統(tǒng)一共有三個主要模塊:數(shù)據(jù)處理模塊、服務管理模塊以及VPN代理服務器。服務管理模塊處于整個系統(tǒng)的中心位置,向外提供接口、并管理數(shù)據(jù)處理服務器;VPN代理服務器提供VPN連接隧道,作為AP接收控制指令的代理服務器;數(shù)據(jù)處理模塊處理AP設備的上報數(shù)據(jù),可以搭建多臺,以集群的形式存在,由管理服務器統(tǒng)一管理。
3.2 模塊
3.2.1 上報數(shù)據(jù)處理模塊
(1) 描述:以集群方式配置的數(shù)據(jù)處理服務器,用于并發(fā)處理設備的上報數(shù)據(jù)。
(2)接口:數(shù)據(jù)上報接口。描述:用于接收和處理設備的每秒上報數(shù)據(jù);調(diào)試模塊:設備;接口協(xié)議:UDP;輸入:上報的UDP數(shù)據(jù)包;輸出:數(shù)據(jù)處理服務器的返回結(jié)果。
3.2.2 服務管理模塊
(1)描述:管理數(shù)據(jù)處理服務器,對外提供接口分配上報配置,接收應用服務器下發(fā)的指令,并指定設備執(zhí)行。
(2)接口。
I. 分配上報配置接口。描述:根據(jù)當前數(shù)據(jù)處理服務器的狀態(tài),分配一個可用的上報配置;調(diào)用模塊:應用服務器;接口協(xié)議:TCP; 輸入:請求分配設備ID;輸出:可用的上報配置。
II. 下發(fā)指令接口。描述:接收應用服務器發(fā)出讓指定設備執(zhí)行的指令,并返回設備執(zhí)行該指令的結(jié)果;調(diào)用模塊:應用服務器;接口協(xié)議:TCP;輸入:特定的指令,例如建立VPN隧道;輸出:指令的執(zhí)行相關(guān)結(jié)果。
III. 登入設備接口。描述:管理服務器根據(jù)設備的虛擬地址,提供網(wǎng)頁控制臺的地址(網(wǎng)SSH);調(diào)用模塊:應用服務器;接口協(xié)議:TCP;輸入:設備在VPN中的虛擬地址和VPN的地址;輸出:VPN網(wǎng)頁SSH服務的地址;
IV. 獲取VPN隧道列表接口。描述:應用服務器從管理服務器處獲得當前已經(jīng)建立的VPN隧道列表;調(diào)用模塊:應用服務器;接口協(xié)議:TCP;輸入:無;輸出:當前已建立的VPN隧道列表,包括設備的MAC地址、VPN Server的地址、設備在VPN Server中的虛擬地址。
3.2.3 VPN代理服務器
(1)描述:向設備提供建立VPN隧道,作為代理服務器,轉(zhuǎn)發(fā)應用服務器的控制信息。
(2)接口。
I. 控制信息轉(zhuǎn)發(fā)接口。描述:建立VPN隧道之后,向設備轉(zhuǎn)發(fā)應用服務器的控制信息;調(diào)用模塊:應用服務器;接口協(xié)議:TCP;輸入:特定的控制信息,例如進行固件更新或者狀態(tài)上報;輸出:設備狀態(tài)或固件更新的結(jié)果。
4 系統(tǒng)的安全實現(xiàn)
在與AP建立VPN隧道過程中,通過認證和授權(quán)保證其安全實現(xiàn)。
(1)認證。給每一個設備分配一個賬號和密碼在設備的某個安全區(qū)域。
建立VPN之前,用賬號和密碼獲取一個臨時的證書,然后用該臨時證書建立VPN的鏈接。臨時證書有有效期,當有效期過期之后,需要重新獲取新的臨時證書。這種動態(tài)獲取方法不用每次數(shù)據(jù)交互傳輸?shù)臅r候傳遞賬號和密碼,而是用動態(tài)的臨時正式來替換賬號身份信息,提高賬號和傳輸過程的安全性。
(2)授權(quán)。根據(jù)每個不同的設備賬號下發(fā)不同配置,授予不同權(quán)限,這樣可以根據(jù)不同的業(yè)務需求對設備進行分組管理,從而提高了設備管理的安全性和靈活性。
5 結(jié)束語
對于大規(guī)模的設備終端的遠程實時管理需要越來越高,物聯(lián)網(wǎng)的終端大多處于局域網(wǎng)內(nèi),應用服務器無法直接向物聯(lián)網(wǎng)的終端發(fā)送管理報文,用TCP通過終端和應用服務器建立長鏈接的方法隨著終端數(shù)量的增加,消耗的網(wǎng)絡資源和服務器資源會越來越大,擴展性面臨的挑戰(zhàn)也會越來越大。通過用UDP的方法可以大大節(jié)約網(wǎng)絡和服務器資源,而同時達到安全實時遠程管理設備的需求。
參考文獻
[1] 黃玉蘭.物聯(lián)網(wǎng)體系結(jié)構(gòu)的探究[J].物聯(lián)網(wǎng)技術(shù),2011年第4期,58-62.
[2] http://wenku.baidu.com/link?url=U2AQdpN26x4KR1Q3ZuIIWQvzuZPBNst_6aABtlZnwNjkrHMJBfp1UWmNQRCm4tkCxVyBDwr6SK8Ywtz5MnCuUOx3OEYIQCEWucKHELxDMx_.
[3] 張劍,黃坤,姚晉.一種UDP報文數(shù)據(jù)的搜索方法[J].計算機與數(shù)字工程,2013年第1期,89-91.
作者簡介:
李原野(1980-),女,漢族,吉林吉林人,中國科學院軟件所,碩士,國家知識產(chǎn)權(quán)局專利局,審查員。