欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于udp協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng)及其方法

文檔序號(hào):7613823閱讀:308來源:國(guó)知局
專利名稱:基于udp協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng)及其方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)領(lǐng)域,特別涉及計(jì)算機(jī)網(wǎng)絡(luò)即時(shí)控制領(lǐng)域,具體是指一種基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng)。
背景技術(shù)
在現(xiàn)代生活中,各種各樣的網(wǎng)絡(luò)終端設(shè)備越來越多,并且其功能也越來越復(fù)雜和智能化,而這些網(wǎng)絡(luò)終端設(shè)備通常都必須擁有一個(gè)強(qiáng)大的中央服務(wù)器系統(tǒng)作為監(jiān)控中心,而在目前的各項(xiàng)網(wǎng)絡(luò)終端應(yīng)用中,在中央服務(wù)器系統(tǒng)與客戶終端設(shè)備之間使用“心跳”技術(shù)的還不是很多,雖然在即時(shí)通訊領(lǐng)域有所應(yīng)用,但是其UDP數(shù)據(jù)包信息的壓縮和管理也還不是很完善,因此無法滿足高速有效即時(shí)控制的要求,這樣對(duì)于目前的網(wǎng)絡(luò)終端設(shè)備的應(yīng)用發(fā)展非常不利,同時(shí)制約了網(wǎng)絡(luò)應(yīng)用的范圍。

發(fā)明內(nèi)容
本發(fā)明的目的是克服了上述現(xiàn)有技術(shù)中的缺點(diǎn),提供一種適合于大型網(wǎng)絡(luò)即時(shí)通訊和控制系統(tǒng)、能夠?qū)崟r(shí)對(duì)網(wǎng)絡(luò)終端設(shè)備進(jìn)行狀態(tài)監(jiān)控和調(diào)整、反應(yīng)迅速及時(shí)有效、網(wǎng)絡(luò)資源占用率低、工作穩(wěn)定、適用面較廣的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng)及其方法。
為了實(shí)現(xiàn)上述的目的,本發(fā)明的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng)及其方法如下該基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng),包括客戶端系統(tǒng)和通過網(wǎng)絡(luò)相連接的中央服務(wù)器系統(tǒng),其主要特征是,所述的客戶端系統(tǒng)包括網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器和通過網(wǎng)絡(luò)與之相連接的數(shù)個(gè)網(wǎng)絡(luò)終端設(shè)備,所述的中央服務(wù)器系統(tǒng)包括中央心跳服務(wù)器、心跳管理器、中央任務(wù)管理器和中央數(shù)據(jù)庫(kù)服務(wù)器,所述的中央心跳服務(wù)器、心跳管理器、中央任務(wù)管理器和中央數(shù)據(jù)庫(kù)服務(wù)器通過網(wǎng)絡(luò)兩兩彼此相連接,且該中央心跳服務(wù)器通過網(wǎng)絡(luò)與所述的網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器相連接。
該基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng)的網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器通過局域網(wǎng)絡(luò)與所述的網(wǎng)絡(luò)終端設(shè)備相連接;所述的中央心跳服務(wù)器、心跳管理器、中央任務(wù)管理器和中央數(shù)據(jù)庫(kù)服務(wù)器通過局域網(wǎng)絡(luò)兩兩彼此相連接;所述的中央心跳服務(wù)器通過因特網(wǎng)與所述的網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器相連接。
該使用上述的系統(tǒng)進(jìn)行基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法,其主要特點(diǎn)是,所述的方法包括以下步驟(1)網(wǎng)絡(luò)終端設(shè)備每隔一定時(shí)間將自身的狀態(tài)信息進(jìn)行收集并進(jìn)行壓縮打包處理,然后使用UDP協(xié)議將UDP心跳數(shù)據(jù)包通過網(wǎng)絡(luò)發(fā)送到網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器上;(2)網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器將網(wǎng)絡(luò)終端設(shè)備發(fā)送的UDP心跳數(shù)據(jù)包信息進(jìn)行地址轉(zhuǎn)換處理,即將網(wǎng)路終端設(shè)備的IP地址和端口轉(zhuǎn)換為網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器的IP地址和端口,再把該UDP心跳數(shù)據(jù)包信息通過網(wǎng)絡(luò)轉(zhuǎn)發(fā)到中央心跳服務(wù)器上;(3)中央心跳服務(wù)器在接收到相應(yīng)的UDP心跳數(shù)據(jù)包信息之后,將消息通過網(wǎng)絡(luò)轉(zhuǎn)發(fā)給心跳管理器;(4)心跳管理器對(duì)該UDP心跳數(shù)據(jù)包信息進(jìn)行解壓驗(yàn)證處理,然后對(duì)相應(yīng)信息進(jìn)行格式翻譯處理;(5)如果信息格式不正確,則心跳管理器丟棄當(dāng)前UDP心跳數(shù)據(jù)包,并向客戶端系統(tǒng)發(fā)送UDP心跳數(shù)據(jù)包信息重發(fā)要求的反饋信息UDP數(shù)據(jù)包;(6)如果信息格式正確,則將相關(guān)記錄信息轉(zhuǎn)發(fā)至中央數(shù)據(jù)庫(kù)服務(wù)器中寫入數(shù)據(jù)庫(kù);(7)中央任務(wù)管理器根據(jù)中央數(shù)據(jù)庫(kù)服務(wù)器中寫入的相關(guān)記錄信息進(jìn)行向客戶端系統(tǒng)發(fā)送相應(yīng)反饋信息UDP心跳數(shù)據(jù)包的處理;(8)網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器通過網(wǎng)絡(luò)接收到中央服務(wù)器系統(tǒng)的反饋信息UDP數(shù)據(jù)包,對(duì)其進(jìn)行反向地址轉(zhuǎn)換處理,即將網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器的IP地址和端口轉(zhuǎn)換為網(wǎng)路終端設(shè)備的IP地址和端口;(9)網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器將反饋信息UDP數(shù)據(jù)包發(fā)送給相應(yīng)的網(wǎng)絡(luò)終端設(shè)備;(10)網(wǎng)絡(luò)終端設(shè)備根據(jù)該反饋信息UDP數(shù)據(jù)包進(jìn)行相應(yīng)的后續(xù)處理。
該基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法的UDP心跳數(shù)據(jù)包消息類型包括登錄消息和心跳消息,所述的登錄消息包括登錄請(qǐng)求消息和登錄回復(fù)消息,所述的登錄請(qǐng)求消息格式為

所述的登錄回復(fù)消息格式為

該心跳消息格式為

該基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法的網(wǎng)絡(luò)終端設(shè)備的收集自身狀態(tài)信息并發(fā)送UDP心跳數(shù)據(jù)包的時(shí)間間隔為2分鐘。
該基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法的網(wǎng)絡(luò)終端數(shù)據(jù)對(duì)狀態(tài)信息進(jìn)行壓縮打包處理包括以下步驟(1)系統(tǒng)中預(yù)先建立字符串——十六進(jìn)制數(shù)字——ASCII碼的對(duì)應(yīng)關(guān)系;(2)系統(tǒng)將狀態(tài)信息中的字符串轉(zhuǎn)換為相應(yīng)的十六進(jìn)制數(shù)字,然后再轉(zhuǎn)換為ASCII碼;(3)系統(tǒng)對(duì)得到的ASCII碼進(jìn)行加密,并計(jì)算加密后字符的MD5值;(4)系統(tǒng)對(duì)加密后的信息連同MD5值一起打包。
該基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法的心跳管理器對(duì)該UDP心跳數(shù)據(jù)包信息進(jìn)行解壓驗(yàn)證處理包括以下步驟(1)系統(tǒng)中預(yù)先建立字符串——十六進(jìn)制數(shù)字——ASCII碼的對(duì)應(yīng)關(guān)系;(2)系統(tǒng)對(duì)接收到的狀態(tài)信息檢測(cè)其MD5值,再與其攜帶的MD5值進(jìn)行對(duì)比,如果值相等則校驗(yàn)成功;否則校驗(yàn)失?。?3)如果校驗(yàn)失敗,則丟棄當(dāng)前UDP心跳數(shù)據(jù)包,并向客戶端系統(tǒng)發(fā)送UDP心跳數(shù)據(jù)包信息重發(fā)要求的反饋信息UDP數(shù)據(jù)包;(4)如果校驗(yàn)成功,則對(duì)得到的狀態(tài)信息進(jìn)行解密,得到ASCII碼;(5)系統(tǒng)將ASCII碼轉(zhuǎn)換為相應(yīng)的十六進(jìn)制數(shù)字,然后再轉(zhuǎn)換為字符串。
該基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法的相關(guān)記錄信息為狀態(tài)信息和IP地址信息。
該基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法的中央任務(wù)管理器根據(jù)相關(guān)記錄信息進(jìn)行向客戶端系統(tǒng)發(fā)送相應(yīng)反饋信息UDP心跳數(shù)據(jù)包的處理包括以下步驟(1)如果狀態(tài)信息一切正常,則返回中央服務(wù)器系統(tǒng)接收到客戶端系統(tǒng)UDP心跳數(shù)據(jù)包成功的確認(rèn)信息;(2)如果狀態(tài)信息有異常,則返回相應(yīng)的修正信息來調(diào)整客戶端系統(tǒng)中相應(yīng)網(wǎng)絡(luò)終端設(shè)備的狀態(tài)。
該基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法的方法中還包括以下步驟如果網(wǎng)絡(luò)終端設(shè)備沒有在規(guī)定時(shí)間內(nèi)向中央心跳服務(wù)器發(fā)送UDP心跳數(shù)據(jù)包,則中央心跳服務(wù)器根據(jù)上次心跳記錄的IP地址信息來詢問該網(wǎng)絡(luò)終端設(shè)備是否在線。
采用了該發(fā)明的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng)及其方法,由于該系統(tǒng)中的網(wǎng)絡(luò)終端設(shè)備與中央心跳服務(wù)器之間通過UDP心跳數(shù)據(jù)包實(shí)時(shí)進(jìn)行監(jiān)控,而且該UDP心跳數(shù)據(jù)包采用壓縮加密方式,使得該系統(tǒng)和方法適合于大型網(wǎng)絡(luò)即時(shí)通訊和控制,能夠保證客戶端與服務(wù)端的長(zhǎng)期連接,有非常高的穩(wěn)定性和擴(kuò)展性,能夠確保整個(gè)網(wǎng)路的正常運(yùn)作和消息的即時(shí)到達(dá),而且網(wǎng)絡(luò)資源占用率低,適用于所有基于因特網(wǎng)的即時(shí)通訊系統(tǒng)和即時(shí)控制系統(tǒng)。


圖1為客戶端-服務(wù)器模型系統(tǒng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖。
圖2為本發(fā)明的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法的工作過程示意圖。
圖3為本發(fā)明的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法的UDP心跳數(shù)據(jù)包信息壓縮打包及解壓驗(yàn)證過程示意圖。
具體實(shí)施例方式
為了能夠更清楚地理解本發(fā)明的技術(shù)內(nèi)容,首先介紹一下本發(fā)明所用到的一些現(xiàn)有技術(shù)(1)基于UDP協(xié)議的網(wǎng)絡(luò)通信基本原理UDP協(xié)議是英文User Datagram Protocol的縮寫,即用戶數(shù)據(jù)報(bào)協(xié)議,主要用來支持那些需要在計(jì)算機(jī)之間傳輸數(shù)據(jù)的網(wǎng)絡(luò)應(yīng)用。包括網(wǎng)絡(luò)視頻會(huì)議系統(tǒng)在內(nèi)的眾多的客戶/服務(wù)器模式的網(wǎng)絡(luò)應(yīng)用都需要使用UDP協(xié)議。雖然UDP通信是不可靠的網(wǎng)絡(luò)信息傳輸,但是我們可以基于UDP協(xié)議建立一套可靠的通信系統(tǒng),在充分考慮到消息編號(hào),消息重發(fā),消息緩存,消息組播等功能基礎(chǔ)上,實(shí)現(xiàn)可靠的,高效率的即時(shí)信息傳輸。
(2)NAT穿透基本原理(基于Internet的網(wǎng)絡(luò)應(yīng)用)在當(dāng)今的Internet中,普遍存在使用“代理”設(shè)備來進(jìn)行網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT),導(dǎo)致這種現(xiàn)象的原因是IPV4地址空間的資源耗盡危機(jī)。雖然不對(duì)稱asymmetric的地址分配和連通性制度已經(jīng)在代理中被定義,但是卻給端對(duì)端應(yīng)用程序和協(xié)議制定造成了一些特殊的問題。像電話會(huì)議和多媒體網(wǎng)絡(luò)游戲。這些問題即使在IPV6世界中還是會(huì)存在,因?yàn)镹AT作為IPV4的一種兼容性機(jī)制經(jīng)常被使用[NAT-PT],并且防火墻將仍然將普遍存在,即使不再需要NAT技術(shù)。針對(duì)不同的網(wǎng)絡(luò)環(huán)境,所使用的穿透技術(shù)也有所不同,最常用的技術(shù)為“UDP holepunching”,即UDP打洞技術(shù),UDP打洞技術(shù)依賴于由公共防火墻和cone NAT,允許適當(dāng)?shù)挠杏?jì)劃的端對(duì)端應(yīng)用程序通過NAT“打洞”,即使當(dāng)雙方的主機(jī)都處于NAT之后。也能將信息直接發(fā)送過去。
請(qǐng)參閱圖1所示,該模式中客戶端-服務(wù)器采用星型結(jié)構(gòu),服務(wù)器-服務(wù)器采用對(duì)等結(jié)構(gòu),是一種非常成熟的拓?fù)浣Y(jié)構(gòu),大多數(shù)TCP/IP應(yīng)用系統(tǒng),例如SMTP服務(wù)、DNS服務(wù)、WWW服務(wù)等都是使用這種模式。
(1)適用性作為一個(gè)一般性的模型,通訊模型可以適用于無線網(wǎng)絡(luò)和Internet上現(xiàn)存的多種系統(tǒng)。模型可以是Internet上的應(yīng)用程序,也可以是移植到移動(dòng)電話和其他各種無線手持設(shè)備上的應(yīng)用程序。即時(shí)通訊和到場(chǎng)服務(wù)可以是Internet上ICQ服務(wù),可以是GSM標(biāo)準(zhǔn)中的SMS(ShortMessage Service,短信息服務(wù))等。
(2)擴(kuò)展性模型的具有很強(qiáng)的擴(kuò)展性。本模型規(guī)定服務(wù)采用中央服務(wù)器,而且中央服務(wù)器可以進(jìn)行集群架構(gòu)。即可以有大量的心跳服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行矩陣建設(shè),這樣給整個(gè)應(yīng)用帶來了極大的擴(kuò)展性;(3)穩(wěn)定性模型具有極強(qiáng)的穩(wěn)定性,因?yàn)楸灸P鸵欢ㄒ捎弥醒敕?wù)器,而中央服務(wù)器的網(wǎng)絡(luò)和穩(wěn)定性都是相當(dāng)高的,尤其是對(duì)網(wǎng)絡(luò)進(jìn)行擴(kuò)展之后,集群服務(wù)器的可以達(dá)到7*24小時(shí)的高性能網(wǎng)絡(luò)服務(wù)。
作為本發(fā)明的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng)及其方法的技術(shù)方案,特舉以下實(shí)施例予以詳細(xì)說明。
請(qǐng)參閱圖2所示,其中的網(wǎng)絡(luò)元素有以下(1)終端機(jī)器1、2IP地址信息為192.168.0.41,192.168.0.44,使用局域網(wǎng)IP地址,狀態(tài)正常,在線,等待下一次“心跳”。
(2)NAT服務(wù)器1IP地址信息為202.114.23.123,使用全球唯一靜態(tài)IP地址,終端機(jī)器通過此服務(wù)器連接上Internet,并進(jìn)行網(wǎng)絡(luò)地址轉(zhuǎn)換,是客戶端與服務(wù)器之間的信息中轉(zhuǎn)。
(3)中央心跳服務(wù)器其中包括中央心跳服務(wù)器、心跳管理器、中央任務(wù)管理器,專門負(fù)責(zé)接受和處理客戶端傳來的心跳信息,并根據(jù)心跳信息的狀態(tài)來對(duì)客戶端進(jìn)行相應(yīng)的反饋,以達(dá)到即時(shí)控制終端的目的。
(4)中央數(shù)據(jù)庫(kù)服務(wù)器存儲(chǔ)每臺(tái)機(jī)器最后心跳的狀態(tài)和IP地址信息,用于保持客戶端的端口綁定以及發(fā)送信息有效性。
對(duì)于選用UDP信息協(xié)議格式來說,主要需要考慮以下因素(一)即時(shí)消息的設(shè)計(jì)需求
1、即時(shí)消息的協(xié)議需求協(xié)議是一系列的步驟,它包括雙方或者多方,設(shè)計(jì)它的目的是要完成一項(xiàng)任務(wù)。即時(shí)通訊協(xié)議,參與的雙方或者多方是即時(shí)通訊的實(shí)體。協(xié)議必須是雙方或者多方參與的,一方單獨(dú)完成的就不算協(xié)議。這樣在協(xié)議動(dòng)作的過程中,雙方必須交換信息,包括控制信息、狀態(tài)信息等等。這些信息的格式必須是協(xié)議參與方同意并且遵循的。好的協(xié)議要求清楚,完整,每一步都必須有明確的定義,并且不會(huì)引起誤解;對(duì)每種可能的情況必須規(guī)定具體的動(dòng)作。
2、即時(shí)消息的安全需求A發(fā)送即時(shí)消息M給B(1)如果無法發(fā)送,A必須接到確認(rèn);(2)如果M被投遞了,B只能接受M一次;(3)協(xié)議必須為B提供方法檢查A發(fā)送了這條信息;(4)協(xié)議必須允許B使用另一條即時(shí)信息,回復(fù)信息;(5)協(xié)議不能暴露A的IP地址;(6)協(xié)議必須為A提供方法保證沒有其他個(gè)體C可以看到內(nèi)容M;(7)協(xié)議必須為A提供方法保證沒有其他個(gè)體C可以篡改M;(8)協(xié)議必須為B提供方法鑒別沒有發(fā)生篡改;(9)B必須能夠閱讀M,B可以防止A發(fā)送信息給他;(10)協(xié)議必須允許A使用現(xiàn)在的數(shù)字簽名標(biāo)準(zhǔn)對(duì)信息進(jìn)行簽名;3、即時(shí)信息加密和鑒別(1)協(xié)議必須提供方法保證通知和即時(shí)消息的置信度,未被監(jiān)聽或者破壞;(2)協(xié)議必須提供方法保證通知和即時(shí)消息的置信度,未被重排序或者回放;(3)協(xié)議必須提供方法保證通知和即時(shí)消息被正確的實(shí)體閱讀;(4)協(xié)議必須允許客戶自己使用方法確保信息的不被截獲,不被重放和解密。
(二)即時(shí)消息的基本設(shè)計(jì)每個(gè)請(qǐng)求的消息都應(yīng)有一個(gè)ID,以標(biāo)識(shí)每個(gè)不同的消息,而每個(gè)回復(fù)的消息的ID必須與其所請(qǐng)求的ID一致。
每個(gè)消息都必須包含一個(gè)操作碼。如登陸的消息操作碼可為0x22。
為了對(duì)操作結(jié)果進(jìn)行確認(rèn),每個(gè)客戶端請(qǐng)求的從服務(wù)器返回的消息必須包含一個(gè)狀態(tài)碼。狀態(tài)碼可參考http協(xié)議的狀態(tài)碼,如200表示操作成功。
(三)具體消息描述
1、登陸消息客戶端請(qǐng)求登陸,加密密碼使用shal算法

服務(wù)器回復(fù)

如果成功狀態(tài)碼為200,如果密碼或用戶名錯(cuò)誤,狀態(tài)碼為401,307為重定向,必須帶上要重定向的地址。
2、心跳消息

操作碼為2,發(fā)送頻率為2分鐘/次。
整個(gè)基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng)的工作過程包括以下步驟第一步終端機(jī)1將自己的狀態(tài)信息收集好后,使用EnumHelper提供的壓縮技術(shù)進(jìn)行壓縮打包,并使用終端本身的UDP端口2000,將UDP數(shù)據(jù)包發(fā)送到局域網(wǎng)服務(wù)器NAT服務(wù)器1上;第二步NAT服務(wù)器1將終端機(jī)1發(fā)來的UDP數(shù)據(jù)信息進(jìn)行地址轉(zhuǎn)換,如終端機(jī)1是通過它本機(jī)的2000端口進(jìn)行發(fā)送的,在地址轉(zhuǎn)換之后,其IP地址信息相應(yīng)的變成202.114.23.1236000,即使用NAT服務(wù)器1的IP地址和端口;地址轉(zhuǎn)換完成之后,再把終端機(jī)1的信息轉(zhuǎn)發(fā)到中央心跳服務(wù)器上;第三步中央心跳服務(wù)器在接收到終端機(jī)1的心跳信息之后,將消息轉(zhuǎn)交給心跳管理器,心跳管理器對(duì)UDP信息進(jìn)行解壓和MD5驗(yàn)證,并對(duì)信息進(jìn)行翻譯;第四步如果信息格式正確,則將狀態(tài)信息和IP地址信息寫入數(shù)據(jù)庫(kù)服務(wù)器,如果終端機(jī)1沒有及時(shí)的向服務(wù)器報(bào)心跳,則服務(wù)器可以根據(jù)上次心跳的地址來詢問終端機(jī)是否在線;第五步中央任務(wù)管理器根據(jù)心跳管理器翻譯的狀態(tài)信息返回相應(yīng)的反饋信息,如果一切正常,則只返回服務(wù)器接收到客戶端心跳成功的確認(rèn)信息,如果客戶端有異常,則服務(wù)器端將傳回相應(yīng)的修正信息來調(diào)整客戶端的狀態(tài);第六步因?yàn)榫W(wǎng)絡(luò)延遲和數(shù)據(jù)包丟失的關(guān)系,偶爾會(huì)出現(xiàn)傳輸數(shù)據(jù)失敗的情況,如果消息格式不正確,則中央心跳管理器會(huì)要求終端機(jī)1將心跳信息重新發(fā)送一次給服務(wù)器,此次發(fā)送的UDP心跳信息則將丟失不予處理;第七步NAT服務(wù)器1在接收到服務(wù)端的反饋信息之后,再次進(jìn)行地址轉(zhuǎn)換,將信息發(fā)送到正確的終端機(jī)IP地址和端口上。
其中的關(guān)于UDP心跳數(shù)據(jù)包信息壓縮打包及解壓驗(yàn)證過程請(qǐng)參閱圖3所示,本技術(shù)使用C#中的枚舉類型將長(zhǎng)字符串型變量名與十六進(jìn)制結(jié)合,最后轉(zhuǎn)換成ASCII代碼,大大壓縮了UDP消息的長(zhǎng)度,同時(shí)又很方便的能進(jìn)行面向?qū)ο蟮木幊獭?br>
第一步采用StringValueToEnum的方法,可以將字符串型轉(zhuǎn)化成對(duì)應(yīng)的枚舉類型,這樣對(duì)數(shù)據(jù)就可以從配置文件或者UDP字符串中直接轉(zhuǎn)換成枚舉類型,操作相當(dāng)方便。

第二步使用EnumValueToASCIIString方法將枚舉類型值直接轉(zhuǎn)換成ASCII碼值,這樣就可以使用UDP協(xié)議將轉(zhuǎn)換后的值進(jìn)行壓縮了。

第三步經(jīng)過如上壓縮,比如”O(jiān)ffline”是7個(gè)ASCII字符,轉(zhuǎn)換過后就只有1個(gè)ASCII碼“%”,有極大的壓縮比和高安全性,我們?cè)賹?duì)壓縮后的ASCII進(jìn)行加密,并計(jì)算加密后字符的MD5值,最后將加密后的信息攜帶MD5值通過Internet傳送到服務(wù)端。
第四步中央服務(wù)器在接收到客戶端發(fā)來的心跳信息后,先要對(duì)信息進(jìn)行MD5校驗(yàn)、服務(wù)器端對(duì)接受到的消息檢測(cè)其MD5值,再與其攜帶的MD5值進(jìn)行對(duì)比,如果值相等則校驗(yàn)成功,MD5校驗(yàn)成功后,對(duì)UDP信息進(jìn)行解密和解壓縮,再分析UDP信息和數(shù)據(jù),如果以上任何一步出現(xiàn)誤差,服務(wù)器都將要求客戶端重新發(fā)送心跳信息。
MD5校驗(yàn)方法如下

相應(yīng)的解壓縮過程與壓縮過程的順序相反即可完成,在這里不再具體贅述,其方法的代碼如下

本發(fā)明的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng)及其方法在實(shí)際應(yīng)用當(dāng)中,心跳技術(shù)最初應(yīng)用在IM即時(shí)通訊軟件中,但是只涉及到簡(jiǎn)單的端口保持,并不能保證對(duì)客戶端的完全控制(這也是普通的IM安全機(jī)制所不允許的),而本發(fā)明提到的方法,則能夠保證對(duì)終端的完全控制,利用該方法可以實(shí)現(xiàn)遠(yuǎn)程監(jiān)控終端的運(yùn)行狀態(tài),并根據(jù)實(shí)時(shí)”心跳”數(shù)據(jù)分析該終端的運(yùn)行規(guī)律和網(wǎng)絡(luò)負(fù)載,根據(jù)終端的運(yùn)行狀態(tài),服務(wù)器做出相應(yīng)調(diào)整;同時(shí),服務(wù)端能夠接收大量的并發(fā)數(shù)據(jù),啟動(dòng)異步多線程的管理器來處理終端發(fā)來的相關(guān)信息。本發(fā)明的方法中,還具有UDP數(shù)據(jù)包在穿透NAT多層網(wǎng)絡(luò)的時(shí)候如何正確的將自己的網(wǎng)絡(luò)地址發(fā)送給服務(wù)器的方法,如UDP打洞技術(shù),端口保持技術(shù)等,應(yīng)用在網(wǎng)絡(luò)終端的即時(shí)控制上能夠達(dá)到相當(dāng)高的有效性和即時(shí)性。
同時(shí),隨著網(wǎng)絡(luò)越來越深入各行各業(yè),傳統(tǒng)行業(yè)得到了改造,原來依賴于電話或者人工監(jiān)督的系統(tǒng),可以逐步的使用即時(shí)遠(yuǎn)程控制系統(tǒng)代替,而本發(fā)明的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng)及其方法就是即時(shí)遠(yuǎn)程控制系統(tǒng)中非常重要的一項(xiàng)技術(shù),他能夠保證客戶端與服務(wù)端的長(zhǎng)期連接,有非常高的穩(wěn)定性和擴(kuò)展性,能夠確保整個(gè)網(wǎng)路的正常運(yùn)作和消息的即時(shí)到達(dá),因此,本發(fā)明的系統(tǒng)和方法適用與所有基于Internet網(wǎng)絡(luò)的即時(shí)通訊系統(tǒng)和即時(shí)控制系統(tǒng)。
在此說明書中,本發(fā)明已參照其特定的實(shí)施例作了描述。但是,很顯然仍可以作出各種修改和變換而不背離本發(fā)明的精神和范圍。因此,說明書和附圖應(yīng)被認(rèn)為是說明性的而非限制性的。
權(quán)利要求
1.一種基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng),包括客戶端系統(tǒng)和通過網(wǎng)絡(luò)相連接的中央服務(wù)器系統(tǒng),其特征在于,所述的客戶端系統(tǒng)包括網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器和通過網(wǎng)絡(luò)與之相連接的數(shù)個(gè)網(wǎng)絡(luò)終端設(shè)備,所述的中央服務(wù)器系統(tǒng)包括中央心跳服務(wù)器、心跳管理器、中央任務(wù)管理器和中央數(shù)據(jù)庫(kù)服務(wù)器,所述的中央心跳服務(wù)器、心跳管理器、中央任務(wù)管理器和中央數(shù)據(jù)庫(kù)服務(wù)器通過網(wǎng)絡(luò)兩兩彼此相連接,且該中央心跳服務(wù)器通過網(wǎng)絡(luò)與所述的網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器相連接。
2.根據(jù)權(quán)利要求1所述的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng),其特征在于,所述的網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器通過局域網(wǎng)絡(luò)與所述的網(wǎng)絡(luò)終端設(shè)備相連接;所述的中央心跳服務(wù)器、心跳管理器、中央任務(wù)管理器和中央數(shù)據(jù)庫(kù)服務(wù)器通過局域網(wǎng)絡(luò)兩兩彼此相連接;所述的中央心跳服務(wù)器通過因特網(wǎng)與所述的網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器相連接。
3.一種使用權(quán)利要求1所述的系統(tǒng)進(jìn)行基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法,其特征在于,所述的方法包括以下步驟(1)網(wǎng)絡(luò)終端設(shè)備每隔一定時(shí)間將自身的狀態(tài)信息進(jìn)行收集并進(jìn)行壓縮打包處理,然后使用UDP協(xié)議將UDP心跳數(shù)據(jù)包通過網(wǎng)絡(luò)發(fā)送到網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器上;(2)網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器將網(wǎng)絡(luò)終端設(shè)備發(fā)送的UDP心跳數(shù)據(jù)包信息進(jìn)行地址轉(zhuǎn)換處理,即將網(wǎng)路終端設(shè)備的IP地址和端口轉(zhuǎn)換為網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器的IP地址和端口,再把該UDP心跳數(shù)據(jù)包信息通過網(wǎng)絡(luò)轉(zhuǎn)發(fā)到中央心跳服務(wù)器上;(3)中央心跳服務(wù)器在接收到相應(yīng)的UDP心跳數(shù)據(jù)包信息之后,將消息通過網(wǎng)絡(luò)轉(zhuǎn)發(fā)給心跳管理器;(4)心跳管理器對(duì)該UDP心跳數(shù)據(jù)包信息進(jìn)行解壓驗(yàn)證處理,然后對(duì)相應(yīng)信息進(jìn)行格式翻譯處理;(5)如果信息格式不正確,則心跳管理器丟棄當(dāng)前UDP心跳數(shù)據(jù)包,并向客戶端系統(tǒng)發(fā)送UDP心跳數(shù)據(jù)包信息重發(fā)要求的反饋信息UDP數(shù)據(jù)包;(6)如果信息格式正確,則將相關(guān)記錄信息轉(zhuǎn)發(fā)至中央數(shù)據(jù)庫(kù)服務(wù)器中寫入數(shù)據(jù)庫(kù);(7)中央任務(wù)管理器根據(jù)中央數(shù)據(jù)庫(kù)服務(wù)器中寫入的相關(guān)記錄信息進(jìn)行向客戶端系統(tǒng)發(fā)送相應(yīng)反饋信息UDP心跳數(shù)據(jù)包的處理;(8)網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器通過網(wǎng)絡(luò)接收到中央服務(wù)器系統(tǒng)的反饋信息UDP數(shù)據(jù)包,對(duì)其進(jìn)行反向地址轉(zhuǎn)換處理,即將網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器的IP地址和端口轉(zhuǎn)換為網(wǎng)路終端設(shè)備的IP地址和端口;(9)網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器將反饋信息UDP數(shù)據(jù)包發(fā)送給相應(yīng)的網(wǎng)絡(luò)終端設(shè)備;(10)網(wǎng)絡(luò)終端設(shè)備根據(jù)該反饋信息UDP數(shù)據(jù)包進(jìn)行相應(yīng)的后續(xù)處理。
4.根據(jù)權(quán)利要求3所述的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法,其特征在于,所述的UDP心跳數(shù)據(jù)包消息類型包括登錄消息和心跳消息,所述的登錄消息包括登錄請(qǐng)求消息和登錄回復(fù)消息,所述的登錄請(qǐng)求消息格式為
所述的登錄回復(fù)消息格式為
該心跳消息格式為
5.根據(jù)權(quán)利要求3所述的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法,其特征在于,所述的網(wǎng)絡(luò)終端設(shè)備的收集自身狀態(tài)信息并發(fā)送UDP心跳數(shù)據(jù)包的時(shí)間間隔為2分鐘。
6.根據(jù)權(quán)利要求3、4或5所述的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法,其特征在于,所述的網(wǎng)絡(luò)終端數(shù)據(jù)對(duì)狀態(tài)信息進(jìn)行壓縮打包處理包括以下步驟(1)系統(tǒng)中預(yù)先建立字符串——十六進(jìn)制數(shù)字——ASCII碼的對(duì)應(yīng)關(guān)系;(2)系統(tǒng)將狀態(tài)信息中的字符串轉(zhuǎn)換為相應(yīng)的十六進(jìn)制數(shù)字,然后再轉(zhuǎn)換為ASCII碼;(3)系統(tǒng)對(duì)得到的ASCII碼進(jìn)行加密,并計(jì)算加密后字符的MD5值;(4)系統(tǒng)對(duì)加密后的信息連同MD5值一起打包。
7.根據(jù)權(quán)利要求6所述的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法,其特征在于,所述的心跳管理器對(duì)該UDP心跳數(shù)據(jù)包信息進(jìn)行解壓驗(yàn)證處理包括以下步驟(1)系統(tǒng)中預(yù)先建立字符串——十六進(jìn)制數(shù)字——ASCII碼的對(duì)應(yīng)關(guān)系;(2)系統(tǒng)對(duì)接收到的狀態(tài)信息檢測(cè)其MD5值,再與其攜帶的MD5值進(jìn)行對(duì)比,如果值相等則校驗(yàn)成功;否則校驗(yàn)失??;(3)如果校驗(yàn)失敗,則丟棄當(dāng)前UDP心跳數(shù)據(jù)包,并向客戶端系統(tǒng)發(fā)送UDP心跳數(shù)據(jù)包信息重發(fā)要求的反饋信息UDP數(shù)據(jù)包;(4)如果校驗(yàn)成功,則對(duì)得到的狀態(tài)信息進(jìn)行解密,得到ASCII碼;(5)系統(tǒng)將ASCII碼轉(zhuǎn)換為相應(yīng)的十六進(jìn)制數(shù)字,然后再轉(zhuǎn)換為字符串。
8.根據(jù)權(quán)利要求3、4或5所述的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法,其特征在于,所述的相關(guān)記錄信息為狀態(tài)信息和IP地址信息。
9.根據(jù)權(quán)利要求8所述的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法,其特征在于,所述的中央任務(wù)管理器根據(jù)相關(guān)記錄信息進(jìn)行向客戶端系統(tǒng)發(fā)送相應(yīng)反饋信息UDP心跳數(shù)據(jù)包的處理包括以下步驟(1)如果狀態(tài)信息一切正常,則返回中央服務(wù)器系統(tǒng)接收到客戶端系統(tǒng)UDP心跳數(shù)據(jù)包成功的確認(rèn)信息;(2)如果狀態(tài)信息有異常,則返回相應(yīng)的修正信息來調(diào)整客戶端系統(tǒng)中相應(yīng)網(wǎng)絡(luò)終端設(shè)備的狀態(tài)。
10.根據(jù)權(quán)利要求8所述的基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控方法,其特征在于,所述的方法中還包括以下步驟如果網(wǎng)絡(luò)終端設(shè)備沒有在規(guī)定時(shí)間內(nèi)向中央心跳服務(wù)器發(fā)送UDP心跳數(shù)據(jù)包,則中央心跳服務(wù)器根據(jù)上次心跳記錄的IP地址信息來詢問該網(wǎng)絡(luò)終端設(shè)備是否在線。
全文摘要
本發(fā)明涉及一種基于UDP協(xié)議的網(wǎng)絡(luò)心跳監(jiān)控系統(tǒng)及方法,該系統(tǒng)中客戶端系統(tǒng)包括網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器和相連的網(wǎng)絡(luò)終端設(shè)備,中央服務(wù)器系統(tǒng)包括通過網(wǎng)絡(luò)兩兩相連接的中央心跳服務(wù)器、心跳管理器、中央任務(wù)管理器和中央數(shù)據(jù)庫(kù)服務(wù)器,中央心跳服務(wù)器通過網(wǎng)絡(luò)與網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器相連接。該方法包括網(wǎng)絡(luò)終端設(shè)備每隔一定時(shí)間收集狀態(tài)信息進(jìn)行壓縮打包并發(fā)送到網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)器、進(jìn)行地址轉(zhuǎn)換處理并轉(zhuǎn)發(fā)到中央心跳服務(wù)器、解壓驗(yàn)證處理和翻譯處理、信息寫入數(shù)據(jù)庫(kù)、服務(wù)器發(fā)送相應(yīng)反饋信息UDP心跳數(shù)據(jù)包、網(wǎng)絡(luò)終端設(shè)備根據(jù)反饋信息UDP數(shù)據(jù)包進(jìn)行相應(yīng)的后續(xù)處理。該種系統(tǒng)及其方法適合大型網(wǎng)絡(luò)即時(shí)通訊和控制,具有非常高的穩(wěn)定性和擴(kuò)展性。
文檔編號(hào)H04L29/06GK1933427SQ200510029578
公開日2007年3月21日 申請(qǐng)日期2005年9月12日 優(yōu)先權(quán)日2005年9月12日
發(fā)明者金駿 申請(qǐng)人:上海新納廣告?zhèn)髅接邢薰?
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
科尔| 得荣县| 响水县| 东阿县| 洪雅县| 威宁| 东方市| 新宁县| 滕州市| 茶陵县| 新沂市| 日土县| 康乐县| 峨眉山市| 丹巴县| 邢台县| 松阳县| 达孜县| 缙云县| 丰县| 红原县| 佛山市| 张掖市| 彩票| 阳高县| 泾川县| 商水县| 香港 | 钦州市| 克什克腾旗| 北海市| 蕲春县| 达日县| 偃师市| 泽库县| 重庆市| 巴青县| 韩城市| 新宁县| 金昌市| 刚察县|