本發(fā)明涉及一種偵聽系統(tǒng),尤其涉及一種被動式無線網(wǎng)絡(luò)偵聽系統(tǒng)。
背景技術(shù):
近年來隨著無線通信技術(shù)、嵌入式計算和微電子技術(shù)的迅速發(fā)展,形成了一種智能網(wǎng)絡(luò)測控,即智能無線傳感器網(wǎng)絡(luò)。智能的無線傳感器網(wǎng)絡(luò)具備以下優(yōu)點:自組織成網(wǎng)、極速安置、協(xié)同作業(yè)和較強的抗性等優(yōu)勢,主要可以應(yīng)用在動植物的習性研究、長途醫(yī)療、外空間的探測、現(xiàn)代家居、智能交通等方面。
構(gòu)成原理是把無線傳感器節(jié)點安置在監(jiān)控區(qū)域內(nèi),用無線通訊辦法把傳感器節(jié)點以外的信息形成一個監(jiān)控的網(wǎng)絡(luò),能對網(wǎng)絡(luò)監(jiān)測區(qū)域以內(nèi)的環(huán)境有關(guān)重要信息進行及時的收集和感知,然后對這些信息進行網(wǎng)絡(luò)傳送和網(wǎng)絡(luò)處理。實施傳感器網(wǎng)絡(luò)實時動態(tài)的監(jiān)測目的就是保證無線傳感器網(wǎng)絡(luò)正常高效的工作,而這種能夠?qū)崟r監(jiān)測WSN狀況、及時反映無線傳感器網(wǎng)絡(luò)的技術(shù)問題的體系,就是被動式無線網(wǎng)絡(luò)偵聽體系。但是目前偵聽體系的軟件系統(tǒng)數(shù)據(jù)分析只能通過獲取數(shù)據(jù)庫數(shù)據(jù)方式進行數(shù)據(jù)分析,不能同時進行實時數(shù)據(jù)分析和數(shù)據(jù)回放分析功能。大多偵聽體系使用的ACCESS數(shù)據(jù)庫,屬于輕量級數(shù)據(jù)庫,適用于存儲少量數(shù)據(jù),可以滿足環(huán)境測試、軟件測評等工作,但在實際軟件使用中,監(jiān)測到的數(shù)據(jù)量往往十分龐大,遠遠超過了ACCESS數(shù)據(jù)庫的承載能力,無法滿足實際使用要求。
技術(shù)實現(xiàn)要素:
本發(fā)明公開一種被動式無線網(wǎng)絡(luò)偵聽系統(tǒng),。
為了實現(xiàn)上述目的,本發(fā)明采用如下方案:
一種被動式無線網(wǎng)絡(luò)偵聽方法,包括軟件系統(tǒng),所述軟件系統(tǒng)包括串口通信模塊、時鐘同步模塊、數(shù)據(jù)融合模塊、數(shù)據(jù)存儲模塊、數(shù)據(jù)分析模塊、數(shù)據(jù)顯示模塊和數(shù)據(jù)庫,所述串口通信模塊用于接收和發(fā)送數(shù)據(jù),通過通道S1與所述數(shù)據(jù)融合模塊連接;所述時鐘同步模塊用來同步測試網(wǎng)絡(luò),通過通道S2與所述數(shù)據(jù)融合模塊連接;所述數(shù)據(jù)融合模塊將所述串口通信模塊輸送來的數(shù)據(jù)進行融合;所述數(shù)據(jù)存儲模塊通過通道S3、S4和S7分別與所述數(shù)據(jù)融合模塊、數(shù)據(jù)庫和所述數(shù)據(jù)分析模塊連接,所述數(shù)據(jù)存儲模塊負責批量存儲融合后的數(shù)據(jù)到數(shù)據(jù)庫中;所述數(shù)據(jù)分析模塊通過通道S5、S6分別與數(shù)據(jù)庫和數(shù)據(jù)顯示模塊相連,所述數(shù)據(jù)分析模塊用來解析數(shù)據(jù)和給出測試指標,所述數(shù)據(jù)顯示模塊用來顯示分析后的數(shù)據(jù)。
所述軟件系統(tǒng)采用C#語言編程。
進一步的:所述軟件系統(tǒng)還包括數(shù)據(jù)存儲服務(wù)模塊,所述通道S4、S5和S7分別經(jīng)所述數(shù)據(jù)存儲服務(wù)模塊連接各自所述兩端的模塊。
進一步的:所述數(shù)據(jù)庫為SQL數(shù)據(jù)庫。
一種裝載有被動式無線網(wǎng)絡(luò)偵聽方法的偵聽系統(tǒng),包括監(jiān)測主機,所述偵聽方法軟件系統(tǒng)安裝于所述監(jiān)控主機內(nèi),所述檢測主機的人機交互設(shè)備與偵聽方法的數(shù)據(jù)顯示模塊實現(xiàn)人機交互。
所述偵聽系統(tǒng)還包括數(shù)據(jù)傳輸網(wǎng)絡(luò)和偵聽節(jié)點,所述偵聽節(jié)點散布在被測無線傳感器網(wǎng)絡(luò)中,用以采集數(shù)據(jù),并將所述數(shù)據(jù)通過數(shù)據(jù)傳輸網(wǎng)絡(luò)輸送給監(jiān)測主機,進而輸送給所述軟件系統(tǒng)的串口通信模塊。
所述數(shù)據(jù)傳輸網(wǎng)絡(luò)為基于USB集線器的數(shù)據(jù)傳輸網(wǎng)絡(luò)或者基于以太網(wǎng)的數(shù)據(jù)傳輸網(wǎng)絡(luò);所述基于USB集線器的數(shù)據(jù)傳輸網(wǎng)絡(luò)連接方式為:所述各偵聽節(jié)點的USB接口經(jīng)信號擴大傳輸模塊連接到子節(jié)點USB集線器的下行端口,所述各子節(jié)點USB集線器接到對應(yīng)的總節(jié)點USB集線器,級聯(lián)層數(shù)不大于5,根節(jié)點USB集線器的上行端口連接到監(jiān)測主機,所述各偵聽節(jié)點與所述監(jiān)測主機之間雙向通信。
所述數(shù)據(jù)傳輸網(wǎng)絡(luò)為基于以太網(wǎng)的數(shù)據(jù)傳輸網(wǎng)絡(luò),所述基于以太網(wǎng)的數(shù)據(jù)傳輸網(wǎng)絡(luò)連接方式為:所述各偵聽節(jié)點的串口連接至對應(yīng)的串口轉(zhuǎn)以太網(wǎng)模塊,所述各串口轉(zhuǎn)以太網(wǎng)模塊連接至以太網(wǎng)交換機,所述以太網(wǎng)交換機與所述監(jiān)測主機相連;所述各偵聽節(jié)點與所述監(jiān)測主機之間雙向通信。
本發(fā)明的有益效果是:追加一個數(shù)據(jù)獲取通道,使得軟件系統(tǒng)可以分別進行實時數(shù)據(jù)分析和數(shù)據(jù)回放分析功能;采用SQL數(shù)據(jù)庫,不僅提高了整個偵聽系統(tǒng)的數(shù)據(jù)承載能力,還可以實現(xiàn)多軟件同時運行,提高軟件工作效率,加大監(jiān)控范圍,更好地進行網(wǎng)絡(luò)監(jiān)測分析工作。
附圖說明
圖1為本發(fā)明軟件系統(tǒng)結(jié)構(gòu)及工作流程圖。
圖2為本發(fā)明數(shù)據(jù)存儲流程圖。
圖3為本發(fā)明基于USB集線器的數(shù)據(jù)傳輸網(wǎng)絡(luò)。
圖4為本發(fā)明基于以太網(wǎng)的數(shù)據(jù)傳輸網(wǎng)絡(luò)。
具體實施方式
下面結(jié)合附圖對本發(fā)明具體實施例做出詳細說明。
被動式無線網(wǎng)絡(luò)偵聽系統(tǒng)包括軟件系統(tǒng)、監(jiān)測主機、數(shù)據(jù)傳輸網(wǎng)絡(luò)及偵聽節(jié)點。偵聽節(jié)點散布在無線傳感器網(wǎng)絡(luò)當中,將接收到的數(shù)據(jù)包預處理后輸送到數(shù)據(jù)傳輸網(wǎng)絡(luò);數(shù)據(jù)傳輸網(wǎng)絡(luò)將收集到的數(shù)據(jù)傳送至監(jiān)測主機;監(jiān)測主機上安裝有軟件系統(tǒng),軟件系統(tǒng)是數(shù)據(jù)的處理中心,它對數(shù)據(jù)進行融合、存儲,并對融合后的數(shù)據(jù)進行協(xié)議解析,實現(xiàn)測驗網(wǎng)絡(luò)同步、網(wǎng)絡(luò)工作狀態(tài)監(jiān)測等的網(wǎng)絡(luò)測試工作。
監(jiān)測主機軟件系統(tǒng)開發(fā)平臺采用Microsoft Visual Studio.Net 2010,采用C#語言編程。程序主要包括串口通信模塊、時鐘同步模塊、數(shù)據(jù)融合模塊、數(shù)據(jù)存儲模塊、數(shù)據(jù)分析模塊、數(shù)據(jù)顯示模塊和數(shù)據(jù)庫。數(shù)據(jù)庫采用SQL。串口通信模塊負責與測試節(jié)點的命令和數(shù)據(jù)交互;時鐘同步模塊負責同步測試網(wǎng)絡(luò);數(shù)據(jù)融合模塊中將各測試節(jié)點的數(shù)據(jù)進行融合;數(shù)據(jù)存儲模塊負責批量存儲融合后的數(shù)據(jù)到SQL數(shù)據(jù)庫;數(shù)據(jù)分析模塊根據(jù)無線傳感器網(wǎng)絡(luò)的網(wǎng)絡(luò)協(xié)議解析數(shù)據(jù),并給出各種測試指標;數(shù)據(jù)顯示模塊以多種圖形方式如表格、柱狀圖、圓餅圖、曲線圖等方式顯示分析后的數(shù)據(jù),并繪制網(wǎng)絡(luò)的拓撲結(jié)構(gòu)。
其工作流程如圖1所示:
1.串口通信模塊:是整個系統(tǒng)的數(shù)據(jù)輸入模塊,主要負責與測試節(jié)點的命令和數(shù)據(jù)交互,檢測節(jié)點將獲取到的數(shù)據(jù)通過串口發(fā)送到協(xié)議分析軟件所在主機,串口通信模塊接收到數(shù)據(jù)后將其發(fā)送給數(shù)據(jù)融合模塊進行數(shù)據(jù)融合。
2.時鐘同步模塊:主要負責同步網(wǎng)絡(luò),使本機與網(wǎng)絡(luò)中的時鐘一致;同時利用時間同步對參與融合的數(shù)據(jù)進行篩選,過濾掉錯誤數(shù)據(jù)。
3.數(shù)據(jù)融合模塊:該模塊同時接收S1通道發(fā)送的串口數(shù)據(jù)和S2通道發(fā)送的時間同步數(shù)據(jù),并通過S2通道對S1通道數(shù)據(jù)進行篩選,拋棄延遲較大的串口數(shù)據(jù),只對較近時間段內(nèi)的數(shù)據(jù)進行融合處理;此模塊主要負責將不同節(jié)點獲取的網(wǎng)絡(luò)數(shù)據(jù)進行分析整理,并將相似的數(shù)據(jù)進行融合,通過S3通道向數(shù)據(jù)存儲模塊發(fā)送更加準確的數(shù)據(jù)信息。
4.數(shù)據(jù)存儲模塊:將通過S3通道接收到的融合信息分別通過S4通道存儲到數(shù)據(jù)庫中、S7通道發(fā)送給數(shù)據(jù)分析模塊。
5.數(shù)據(jù)分析模塊:主要負責根據(jù)無線傳感器網(wǎng)絡(luò)的網(wǎng)絡(luò)協(xié)議解析數(shù)據(jù),并向數(shù)據(jù)顯示模塊發(fā)送分析結(jié)果。該模塊可以通過S7通道接收數(shù)據(jù)存儲模塊發(fā)送的實時數(shù)據(jù)進行解析,也可以通過S5通道讀取數(shù)據(jù)庫中的存儲信息進行解析。
6.數(shù)據(jù)顯示模塊:是整個系統(tǒng)的輸出模塊,主要負責與用戶進行交互。用戶可以通過界面選擇數(shù)據(jù)分析模塊分析實時數(shù)據(jù)或者數(shù)據(jù)庫中數(shù)據(jù),其分析結(jié)果將通過S6通道返回數(shù)據(jù)顯示模塊,并在界面上以用戶選擇的圖表形式顯示出來。
通過數(shù)據(jù)獲取通道S7,使得程序可以分別進行實時數(shù)據(jù)分析和數(shù)據(jù)回放分析功能。此模塊的實現(xiàn)方法是在數(shù)據(jù)存儲模塊中添加數(shù)據(jù)傳輸代碼,在把數(shù)據(jù)存入數(shù)據(jù)庫中之后將數(shù)據(jù)發(fā)送給數(shù)據(jù)分析模塊;同時數(shù)據(jù)分析模塊中加入數(shù)據(jù)接收代碼,實現(xiàn)兩個模塊通過S7接口進行通信。
S7接口的具體實施是:在程序中聲明靜態(tài)全局變量RTData(List<string>)和更新標識ND(bool),當數(shù)據(jù)存儲模塊接收到新的實時數(shù)據(jù)時會將數(shù)據(jù)值添加到隊列RTData中,并將ND置為true;數(shù)據(jù)分析模塊在進行實時數(shù)據(jù)分析時會一直對ND進行判斷,若ND為true,則對RTData內(nèi)所有數(shù)據(jù)進行分析處理,然后將ND置為false,并清空RTData隊列。
本發(fā)明選用SQL數(shù)據(jù)庫,將數(shù)據(jù)存儲到遠端服務(wù)器中。SQL數(shù)據(jù)庫支持多客戶端同時訪問,這樣就可以實現(xiàn)多軟件同時運行,提高軟件工作效率,加大監(jiān)控范圍,更好地進行網(wǎng)絡(luò)監(jiān)測分析工作。
如圖2所示,對數(shù)據(jù)庫的操作是通過數(shù)據(jù)存儲服務(wù)進行的,該模塊啟動后以設(shè)置好的用戶名與密碼登錄數(shù)據(jù)庫,并通過設(shè)定好的端口將接收到的命令下達給數(shù)據(jù)庫實現(xiàn)數(shù)據(jù)存儲查詢等功能。本發(fā)明數(shù)據(jù)存儲模塊中需要將存儲命令轉(zhuǎn)換成Sql語句發(fā)送給數(shù)據(jù)存儲服務(wù),然后又數(shù)據(jù)存儲服務(wù)進行數(shù)據(jù)入庫操作。
部分具體實施代碼如下:
string Order=string.Format("INSERT TASK_YJ SQL='{0}',CHECKDATA='{1}',TRANS='{2}',TARGETS='{3}',INSYSTIME={4}",package.Sql,package.Checkdata,pack.Trans,package.Targets,string.Format("to_date('{0}','yyyy-MM-ddhh24:mi:ss')",DateTime.Now));
Dbacer.ExecuteNonQuery(Order);
以上代碼中string Order是存儲數(shù)據(jù)的Sql語句,Dbacer.ExecuteNonQuery是與數(shù)據(jù)存儲服務(wù)進行通信的命令。
string SQL=string.Format("WHERE 1=1AND[METHOD]='{0}'AND[TASKNO]='0'",package.Method);
Criteria criteria=new Criteria(SQL);
IList SignalList=DbWriteAcer.Select(typeof(Task),criteria);
以上幾行代碼是數(shù)據(jù)分析模塊進行數(shù)據(jù)查詢分析時所需要用到的,string SQL和Criteria criteria將查詢條件轉(zhuǎn)換成Sql語句,IList SignalList是對數(shù)據(jù)庫進行查詢并將查詢結(jié)果以List形式返回,進行數(shù)據(jù)解析。
無線傳感器網(wǎng)絡(luò)中的若干個偵聽節(jié)點,需要通過數(shù)據(jù)傳輸網(wǎng)絡(luò)使其連接成一個完善的測驗網(wǎng)絡(luò)。目前,測驗網(wǎng)絡(luò)的設(shè)計主要分為基于USB集線器的和基于以太網(wǎng)兩種。
基于USB集線器的數(shù)據(jù)傳輸網(wǎng)絡(luò):
基于USB集線器的數(shù)據(jù)傳輸網(wǎng)絡(luò)主要由各偵聽節(jié)點對應(yīng)的USB線和USB集線器組成,其結(jié)構(gòu)如下圖3所示。
各偵聽節(jié)點散布在被測無線傳感器網(wǎng)絡(luò)中,偵聽節(jié)點的USB接口經(jīng)一信號擴大傳輸模塊連接到子節(jié)點USB集線器的下行端口,各子節(jié)點USB集線器接到其總節(jié)點USB集線器,如此經(jīng)過級聯(lián)USB集線器(最多5層級聯(lián))將數(shù)據(jù)傳輸網(wǎng)絡(luò)構(gòu)成樹形拓撲,根節(jié)點USB集線器的上行端口連接監(jiān)測主機,這樣偵聽節(jié)點可以將數(shù)據(jù)包向上傳送至監(jiān)測主機,并可以接納監(jiān)測主機發(fā)送的指令。
基于以太網(wǎng)的數(shù)據(jù)傳輸網(wǎng)絡(luò):
根據(jù)以太網(wǎng)的數(shù)據(jù)傳輸網(wǎng)絡(luò)運用來太網(wǎng)作為傳輸前沿,數(shù)據(jù)傳輸網(wǎng)絡(luò)包括串口轉(zhuǎn)以太網(wǎng)模塊、以太網(wǎng)交換機和通信線路,其構(gòu)造如圖4所示。
串口轉(zhuǎn)以太網(wǎng)模塊將不同偵聽節(jié)點的串口連接到以太網(wǎng)交換機,實現(xiàn)數(shù)據(jù)準確傳送給監(jiān)測主機。相同,監(jiān)測主機通過以太網(wǎng)來向相應(yīng)偵聽節(jié)點發(fā)送啟動、結(jié)束、切換信道和調(diào)整射頻輸出功率等不同指令。按照以太網(wǎng)協(xié)議,其最多能夠分配255個IP地址供串口轉(zhuǎn)以太網(wǎng)模塊和監(jiān)測主機使用,這個數(shù)量一般能滿足測驗網(wǎng)絡(luò)中偵聽節(jié)點的需求。
本發(fā)明的有益效果是:
1.追加一個數(shù)據(jù)獲取通道,使得軟件系統(tǒng)可以分別進行實時數(shù)據(jù)分析和數(shù)據(jù)回放分析功能;
2.采用SQL數(shù)據(jù)庫,不僅提高了整個偵聽系統(tǒng)的數(shù)據(jù)承載能力,還可以實現(xiàn)多軟件同時運行,提高軟件工作效率,加大監(jiān)控范圍,更好地進行網(wǎng)絡(luò)監(jiān)測分析工作。
以上對本發(fā)明的兩個實施例進行了詳細說明,但所述內(nèi)容僅為本發(fā)明的較佳實施例,不能被認為用于限定本發(fā)明的實施范圍。凡依本發(fā)明申請范圍所作的均等變化、改進或組合等,均應(yīng)仍歸屬于本發(fā)明的專利涵蓋范圍之內(nèi)。