亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于分層結(jié)構(gòu)的網(wǎng)絡(luò)系統(tǒng)及其節(jié)點(diǎn)的定位方法

文檔序號(hào):7612525閱讀:266來源:國(guó)知局
專利名稱:基于分層結(jié)構(gòu)的網(wǎng)絡(luò)系統(tǒng)及其節(jié)點(diǎn)的定位方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種網(wǎng)絡(luò)應(yīng)用技術(shù)領(lǐng)域的系統(tǒng)和方法,尤其是一種基于分層結(jié)構(gòu)的網(wǎng)絡(luò)系統(tǒng)及其節(jié)點(diǎn)的定位方法。
背景技術(shù)
準(zhǔn)確定位目標(biāo)節(jié)點(diǎn)是網(wǎng)絡(luò)系統(tǒng)中各節(jié)點(diǎn)進(jìn)行通信之前首先要解決的問題。從互聯(lián)網(wǎng)的出現(xiàn)到現(xiàn)在的極度膨脹,網(wǎng)絡(luò)系統(tǒng)節(jié)點(diǎn)的定位方法為了適應(yīng)互聯(lián)網(wǎng)的發(fā)展也在不斷進(jìn)化。從最初簡(jiǎn)單地用IP地址和通用端口號(hào)的節(jié)點(diǎn)定位方法,到現(xiàn)在的多種多樣適用于各種特殊網(wǎng)絡(luò)需求的節(jié)點(diǎn)定位方法,可以發(fā)現(xiàn),定位方法都是為了適應(yīng)互聯(lián)網(wǎng)的變化需求而變化的。
眾所周知,當(dāng)前互聯(lián)網(wǎng)公網(wǎng)IPv4地址處于非常稀缺的程度,尤其是進(jìn)入互聯(lián)網(wǎng)較晚的國(guó)家和地區(qū),如中國(guó)、韓國(guó)、印度等國(guó)家更是短缺。許多企業(yè)網(wǎng)中的主機(jī)都使用內(nèi)網(wǎng)IP地址,通過NAT轉(zhuǎn)換再與互聯(lián)網(wǎng)連接。同時(shí),企業(yè)各個(gè)子網(wǎng)出于安全考慮,都安裝了防火墻,不允許各子網(wǎng)主機(jī)對(duì)外提供服務(wù),這對(duì)在不同子網(wǎng)中的網(wǎng)絡(luò)節(jié)點(diǎn)的通信連接非常不便。目前,網(wǎng)絡(luò)系統(tǒng)的節(jié)點(diǎn)定位方法主要有以下幾種(1)靜態(tài)定位每個(gè)節(jié)點(diǎn)都確切地知道存在于網(wǎng)絡(luò)中的其它節(jié)點(diǎn)的位置,通過目標(biāo)節(jié)點(diǎn)的合法IP和固定的端口號(hào)進(jìn)行通信。這種定位方法不能適應(yīng)預(yù)知的隨機(jī)事件和臨時(shí)變更,比如目標(biāo)節(jié)點(diǎn)隨機(jī)進(jìn)入和退出網(wǎng)絡(luò)的情況。當(dāng)前許多應(yīng)用都采用了這種定位方法,例如互聯(lián)網(wǎng)中通過IP地址和固定端口號(hào)訪問的文件傳送協(xié)議(File TransferProtocol,簡(jiǎn)稱FTP)服務(wù)、遠(yuǎn)程連接協(xié)議(TELNET)服務(wù)、超文本傳輸協(xié)議(HTTP)服務(wù)。這種定位方法需要所有節(jié)點(diǎn)都有互聯(lián)網(wǎng)公網(wǎng)IP地址。
(2)動(dòng)態(tài)目錄定位;這種定位方法是在網(wǎng)絡(luò)中部署一臺(tái)或多臺(tái)服務(wù)器,用于提供目錄服務(wù),各節(jié)點(diǎn)向目錄服務(wù)器注冊(cè)自身信息(如名稱、IP地址及對(duì)應(yīng)關(guān)系等),系統(tǒng)中的某一節(jié)點(diǎn)通過查詢目錄服務(wù)器中的信息來定位其它節(jié)點(diǎn)。這種定位方法需要所有節(jié)點(diǎn)都有互聯(lián)網(wǎng)公網(wǎng)IP地址,而且,當(dāng)目標(biāo)節(jié)點(diǎn)處于防火墻保護(hù)的情況下很容易造成注冊(cè)了信息卻不能訪問的問題。當(dāng)前采用這種定位方法的典型應(yīng)用如通過DNS網(wǎng)絡(luò)名訪問的FTP服務(wù)、WEB服務(wù)等。
(3)動(dòng)態(tài)網(wǎng)絡(luò)定位這種定位方式在網(wǎng)絡(luò)中沒有專門的目錄服務(wù)器為節(jié)點(diǎn)提供定位功能,當(dāng)一個(gè)節(jié)點(diǎn)需要定位其他節(jié)點(diǎn)的位置時(shí),它就發(fā)出一個(gè)查詢請(qǐng)求并傳遞給其鄰居節(jié)點(diǎn),如果鄰居節(jié)點(diǎn)不能完全滿足這個(gè)請(qǐng)求時(shí),就將請(qǐng)求傳遞給它們的鄰居節(jié)點(diǎn),以此類推。這種定位方法可能會(huì)讓一次定位過程經(jīng)歷相當(dāng)長(zhǎng)的時(shí)間,其效率可能會(huì)很低。對(duì)這種方法加以改進(jìn),為每個(gè)節(jié)點(diǎn)按一定的哈希算法計(jì)算其KEY值,將不同KEY值的節(jié)點(diǎn)劃分在某個(gè)區(qū)域,當(dāng)一個(gè)節(jié)點(diǎn)需要定位其他節(jié)點(diǎn)的位置時(shí),可以先找到該節(jié)點(diǎn)所在的區(qū)域從而定位目標(biāo)節(jié)點(diǎn)。采用這種定位方法需要所有節(jié)點(diǎn)都具有互聯(lián)網(wǎng)公網(wǎng)IP地址。
(4)動(dòng)態(tài)多/廣播定位這種定位方式在網(wǎng)絡(luò)中也沒有專門的目錄服務(wù)器為節(jié)點(diǎn)提供定位功能,各節(jié)點(diǎn)使用IP多/廣播技術(shù)宣布自己的位置,其他節(jié)點(diǎn)收到消息后,抽取出該節(jié)點(diǎn)的MAC地址和主機(jī)IP,并通過MAC地址找尋到該節(jié)點(diǎn),從而建立正常的TCP/IP連接。目前,局域網(wǎng)中的ARP廣播尋址就是基于這種方法。但由于互聯(lián)網(wǎng)對(duì)多/廣播技術(shù)并不友好,子網(wǎng)間的路由多播通信是一項(xiàng)非常復(fù)雜的技術(shù),所以這種多/廣播定位都應(yīng)用于局域網(wǎng)中,在廣域網(wǎng)中一般不應(yīng)用這種定位方法。
以上常見的各種網(wǎng)絡(luò)定位方法,都存在一個(gè)共同問題,即,它們都需要目標(biāo)節(jié)點(diǎn)擁有互聯(lián)網(wǎng)公網(wǎng)IP地址,都需要目標(biāo)節(jié)點(diǎn)對(duì)外開放端口來提供服務(wù)。但是,當(dāng)前互聯(lián)網(wǎng)公網(wǎng)IPv4地址處于非常稀缺的程度,對(duì)外開放端口也給企業(yè)子網(wǎng)增加了不安全因素。許多企業(yè)網(wǎng)中的主機(jī)都使用內(nèi)網(wǎng)IP地址,再通過NAT轉(zhuǎn)換與互聯(lián)網(wǎng)連接,并且,為了提高網(wǎng)絡(luò)安全,許多企業(yè)網(wǎng)都安裝防火墻,不允許內(nèi)網(wǎng)主機(jī)對(duì)外提供服務(wù)。在這種情況下,當(dāng)某個(gè)企業(yè)網(wǎng)由多個(gè)異地子網(wǎng)構(gòu)成,用戶希望在異地對(duì)遠(yuǎn)程子網(wǎng)進(jìn)行訪問或執(zhí)行操作時(shí),以上這些常用的網(wǎng)絡(luò)定位方法將不能滿足用戶的這種需求,這就需要一種有效的定位方法來解決這種問題。

發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題在于,針對(duì)現(xiàn)有技術(shù)的不足,提供一種基于分層結(jié)構(gòu)的網(wǎng)絡(luò)系統(tǒng)及其節(jié)點(diǎn)的定位方法,用于減少企業(yè)網(wǎng)絡(luò)對(duì)互聯(lián)網(wǎng)公網(wǎng)IPv4地址的需求,而且能讓企業(yè)各子網(wǎng)在處于防火墻的保護(hù)之下時(shí),不額外開放端口也能互相訪問,提高企業(yè)網(wǎng)的安全性。
為解決上述技術(shù)問題,本發(fā)明提供了一種基于分層結(jié)構(gòu)的網(wǎng)絡(luò)系統(tǒng),包括受控網(wǎng)絡(luò)層、通信代理層、應(yīng)用層和定位中心,其中,所述受控網(wǎng)絡(luò)層包括一個(gè)或多個(gè)終端節(jié)點(diǎn),所述通信代理層包括一個(gè)或多個(gè)透明代理節(jié)點(diǎn),所述應(yīng)用層包括一個(gè)或多個(gè)控制節(jié)點(diǎn),所述受控網(wǎng)絡(luò)層的節(jié)點(diǎn)與所述通信代理層的節(jié)點(diǎn)、所述通信代理層的節(jié)點(diǎn)與所述應(yīng)用層的節(jié)點(diǎn)分別呈網(wǎng)狀連接,并且,每一層中的節(jié)點(diǎn)與定位中心連接。
進(jìn)一步地,上述系統(tǒng)中的所述定位中心包括用于記錄所有透明代理節(jié)點(diǎn)信息的動(dòng)態(tài)透明代理節(jié)點(diǎn)列表。
進(jìn)一步地,上述系統(tǒng)中的所述透明代理節(jié)點(diǎn)包括用于記錄所有與其連接的終端節(jié)點(diǎn)信息的動(dòng)態(tài)終端節(jié)點(diǎn)列表。
本發(fā)明還提供了一種基于上述網(wǎng)絡(luò)系統(tǒng)節(jié)點(diǎn)的定位方法,包括以下步驟步驟 1、所述控制節(jié)點(diǎn)建立其與所述定位中心的通信連接,查詢所述定位中心維護(hù)的透明代理節(jié)點(diǎn)列表,獲取可用透明代理節(jié)點(diǎn)的位置信息及與所述透明代理節(jié)點(diǎn)連接的終端節(jié)點(diǎn)信息,所述的位置信息為節(jié)點(diǎn)的IP地址和端口號(hào),所述終端節(jié)點(diǎn)信息包括節(jié)點(diǎn)的IP地址、端口號(hào)和/或ID號(hào);步驟2、所述控制節(jié)點(diǎn)根據(jù)目標(biāo)終端節(jié)點(diǎn)的IP地址或ID號(hào)確定與所述目標(biāo)終端節(jié)點(diǎn)連接的透明代理節(jié)點(diǎn),并與之建立連接;步驟3、所述控制節(jié)點(diǎn)通過所述透明代理節(jié)點(diǎn)與所述目標(biāo)終端節(jié)點(diǎn)建立通信連接,進(jìn)行通信。
上述方法中,所述步驟1進(jìn)一步包括所述控制節(jié)點(diǎn)按照其與所獲得的可用透明代理節(jié)點(diǎn)的拓?fù)渚嚯x進(jìn)行排序,使得所述的透明代理節(jié)點(diǎn)按照其與所述控制節(jié)點(diǎn)的拓?fù)渚嚯x排列。
上述方法中,所述控制節(jié)點(diǎn)對(duì)所獲得的可用透明代理節(jié)點(diǎn)按照所述透明代理節(jié)點(diǎn)與其的拓?fù)渚嚯x進(jìn)行排序的步驟為首先,所述控制節(jié)點(diǎn)向所述的透明代理節(jié)點(diǎn)發(fā)送UDP數(shù)據(jù)包,確定二者之間的TTL(Time to Live)值;然后,根據(jù)所述的TTL值大小對(duì)所述透明代理節(jié)點(diǎn)進(jìn)行排序。
上述方法中,在所述步驟1之前還包括透明代理節(jié)點(diǎn)與所述定位中心建立連接,將其ID號(hào)和位置信息(包括IP地址和端口號(hào))發(fā)送給定位中心;所述定位中心收到所述透明代理節(jié)點(diǎn)的位置信息后,將所述透明代理節(jié)點(diǎn)的位置信息添加到透明代理節(jié)點(diǎn)列表文件中。
上述方法中,在所述步驟1之前還包括終端節(jié)點(diǎn)與所述定位中心建立連接,查詢透明代理節(jié)點(diǎn)列表文件,從而獲取可用透明代理節(jié)點(diǎn)列表信息;所述終端節(jié)點(diǎn)根據(jù)獲取的透明代理節(jié)點(diǎn)列表信息,向所有可用的透明代理節(jié)點(diǎn)發(fā)送連接請(qǐng)求;所述透明代理節(jié)點(diǎn)接收終端節(jié)點(diǎn)發(fā)送的連接請(qǐng)求,與之建立連接,所述的連接為SOCKET通道,簡(jiǎn)稱為S1,并將所述終端節(jié)點(diǎn)的位置信息插入其維護(hù)的終端節(jié)點(diǎn)列表文件中。
這種終端節(jié)點(diǎn)主動(dòng)與定位中心建立連接的方法,讓終端節(jié)點(diǎn)即使處于NAT轉(zhuǎn)換的環(huán)境下(終端節(jié)點(diǎn)沒有互聯(lián)網(wǎng)公網(wǎng)IP地址),或者處于防火墻的保護(hù)下不允許向外提供服務(wù)時(shí),也能獲取可用透明代理節(jié)點(diǎn)列表,這提高了企業(yè)網(wǎng)的安全性。
上述方法中,所述終端節(jié)點(diǎn)與所有可用的透明代理節(jié)點(diǎn)建立連接后,通過定期發(fā)送REFRESH刷新命令,使所述連接一直保持活動(dòng)狀態(tài)。
這種終端節(jié)點(diǎn)主動(dòng)與透明代理節(jié)點(diǎn)建立連接的方法,讓終端節(jié)點(diǎn)即使處于NAT轉(zhuǎn)換的環(huán)境下(終端節(jié)點(diǎn)沒有互聯(lián)網(wǎng)公網(wǎng)IP地址),或者處于防火墻的保護(hù)下不允許向外提供服務(wù)時(shí),也能順利與透明代理節(jié)點(diǎn)建立連接,這提高了企業(yè)網(wǎng)的安全性。
上述方法中,所述的透明代理節(jié)點(diǎn)對(duì)記錄在其維護(hù)的終端節(jié)點(diǎn)列表文件中的終端節(jié)點(diǎn)按照其與終端節(jié)點(diǎn)的拓?fù)渚嚯x進(jìn)行排序,使得所述的終端節(jié)點(diǎn)按照其與所述的透明代理節(jié)點(diǎn)的拓?fù)渚嚯x排列。
上述方法中,所述的透明代理節(jié)點(diǎn)按照其與終端節(jié)點(diǎn)的拓?fù)渚嚯x進(jìn)行排序的步驟為首先,所述的透明代理節(jié)點(diǎn)向與其連接的終端節(jié)點(diǎn)發(fā)送UDP數(shù)據(jù)包,確定二者之間的TTL值;然后,根據(jù)所述的TTL值大小對(duì)所述終端節(jié)點(diǎn)進(jìn)行排序后記錄在所述終端節(jié)點(diǎn)列表文件中。
上述方法中,所述透明代理節(jié)點(diǎn)接收終端節(jié)點(diǎn)發(fā)送的連接請(qǐng)求,與之建立連接時(shí),當(dāng)與所述透明代理節(jié)點(diǎn)連接的終端節(jié)點(diǎn)數(shù)量達(dá)到所述透明代理節(jié)點(diǎn)的處理最大限時(shí),所述透明代理節(jié)點(diǎn)發(fā)送信息給后續(xù)向其發(fā)送連接請(qǐng)求的終端節(jié)點(diǎn);接到該信息的終端節(jié)點(diǎn)向下一個(gè)可用的透明代理節(jié)點(diǎn)發(fā)送連接請(qǐng)求。
上述方法中,當(dāng)所述透明代理節(jié)點(diǎn)維護(hù)的終端節(jié)點(diǎn)列表信息發(fā)生改動(dòng),所述透明代理節(jié)點(diǎn)向定位中心發(fā)送刷新請(qǐng)求;所述定位中心同步更新所述透明代理節(jié)點(diǎn)的終端節(jié)點(diǎn)列表信息。
上述方法中,在步驟3中,所述控制節(jié)點(diǎn)通過所述透明代理節(jié)點(diǎn)與所述目標(biāo)終端節(jié)點(diǎn)進(jìn)行通信時(shí),所述透明代理節(jié)點(diǎn)開啟一個(gè)專門的線程實(shí)時(shí)監(jiān)聽透明代理節(jié)點(diǎn)與目標(biāo)終端節(jié)點(diǎn)的連接和透明代理節(jié)點(diǎn)與控制節(jié)點(diǎn)的連接,為所述兩個(gè)連接建立直接通信的數(shù)據(jù)管道。
上述方法中,步驟1中的ID號(hào)包括節(jié)點(diǎn)主機(jī)的MAC地址和節(jié)點(diǎn)類型編號(hào)。
從上述方案可知,本發(fā)明具有以下有益效果(1)采用節(jié)點(diǎn)主機(jī)MAC地址和節(jié)點(diǎn)類型給每個(gè)節(jié)點(diǎn)命名,不僅可以唯一識(shí)別每個(gè)節(jié)點(diǎn),同時(shí)由于采用終端節(jié)點(diǎn)和控制節(jié)點(diǎn)主動(dòng)連接的通信方法,在終端節(jié)點(diǎn)和/或控制節(jié)點(diǎn)使用內(nèi)網(wǎng)IP地址(非公網(wǎng)IP地址,大多數(shù)情況下地址都重復(fù))的情況下,系統(tǒng)也能準(zhǔn)確識(shí)別各個(gè)節(jié)點(diǎn)的身份和位置。
(2)采用基于定位中心的多節(jié)點(diǎn)定位方法,由定位中心收集并維護(hù)終端節(jié)點(diǎn)和透明代理節(jié)點(diǎn)之間的連通狀態(tài),控制節(jié)點(diǎn)通過了解這種狀態(tài)就能快速、準(zhǔn)確地定位到目標(biāo)終端節(jié)點(diǎn)。
(3)采用節(jié)點(diǎn)定位功能和通信透明轉(zhuǎn)發(fā)功能獨(dú)立開來的機(jī)制,讓一個(gè)專門的節(jié)點(diǎn)作為定位中心完成節(jié)點(diǎn)定位的關(guān)鍵功能,讓多個(gè)透明代理節(jié)點(diǎn)完成大量數(shù)據(jù)通信流的轉(zhuǎn)發(fā)功能,使整個(gè)網(wǎng)絡(luò)系統(tǒng)的各部分負(fù)載均勻合理。
(4)透明代理節(jié)點(diǎn)對(duì)終端節(jié)點(diǎn)進(jìn)行拓?fù)渚嚯x排序、控制節(jié)點(diǎn)對(duì)透明代理節(jié)點(diǎn)進(jìn)行拓?fù)渚嚯x排序,最終形成按照網(wǎng)絡(luò)拓?fù)渚嚯x排序后的定位列表,以此幫助用戶選擇最佳通信路徑,有效地提高系統(tǒng)通信效率。
(5)系統(tǒng)采用基于透明代理節(jié)點(diǎn)的三層通信機(jī)制,由控制節(jié)點(diǎn)、終端節(jié)點(diǎn)主動(dòng)與透明代理節(jié)點(diǎn)建立通信連接,可以讓控制節(jié)點(diǎn)、終端節(jié)點(diǎn)均處于NAT轉(zhuǎn)換的網(wǎng)絡(luò)環(huán)境下,在不擁有互聯(lián)網(wǎng)公網(wǎng)IP地址,或者處于防火墻的保護(hù)下不允許向外提供服務(wù)時(shí),也能順利進(jìn)行通信。從本方法的節(jié)點(diǎn)定位方案可以看出,一個(gè)企業(yè)網(wǎng)如果租用第三方主機(jī)作為透明代理節(jié)點(diǎn),那么企業(yè)采用本方法進(jìn)行節(jié)點(diǎn)定位就只需要定位中心一臺(tái)主機(jī)擁有對(duì)外的互聯(lián)網(wǎng)公網(wǎng)IP地址,其他子網(wǎng)的主機(jī)對(duì)外都是內(nèi)網(wǎng)地址,這也提高了企業(yè)網(wǎng)的安全性。
(6)系統(tǒng)由透明代理節(jié)點(diǎn)自己確定服務(wù)端口并公告自己服務(wù)端口,而不是指定唯一的服務(wù)端口,可以使透明代理節(jié)點(diǎn)在防火墻的保護(hù)中,只允許某個(gè)端口提供服務(wù)的情況下,靈活地確定自己的服務(wù)端口,提高了系統(tǒng)對(duì)網(wǎng)絡(luò)環(huán)境的適應(yīng)性。
(7)系統(tǒng)采用多個(gè)終端節(jié)點(diǎn)對(duì)多個(gè)透明代理節(jié)點(diǎn)、多個(gè)透明代理節(jié)點(diǎn)對(duì)多個(gè)控制節(jié)點(diǎn)的機(jī)制,終端節(jié)點(diǎn)與所有可連接的透明代理節(jié)點(diǎn)通信,控制節(jié)點(diǎn)按拓?fù)渚嚯x最短的規(guī)則選擇透明代理節(jié)點(diǎn)以建立對(duì)終端節(jié)點(diǎn)實(shí)施控制的通信通道,增加了系統(tǒng)的穩(wěn)定性和容錯(cuò)性。


圖1為本發(fā)明所述網(wǎng)絡(luò)系統(tǒng)的結(jié)構(gòu)示意圖;圖2為本發(fā)明所述定位方法的流程圖;
圖3為本發(fā)明所述定位方法的一具體實(shí)施例的流程圖之一;圖4為本發(fā)明所述定位方法的一具體實(shí)施例的流程圖之二;圖5為本發(fā)明另一具體實(shí)施例的網(wǎng)絡(luò)系統(tǒng)的結(jié)構(gòu)示意圖;圖6為基于圖5所示系統(tǒng)的節(jié)點(diǎn)定位方法流程圖。
具體實(shí)施例方式
以下結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)的說明。
參見圖1,為本發(fā)明所述網(wǎng)絡(luò)系統(tǒng)的結(jié)構(gòu)示意圖,所述網(wǎng)絡(luò)系統(tǒng)包括受控網(wǎng)絡(luò)層1、通信代理層2、應(yīng)用層3和定位中心4;其中,受控網(wǎng)絡(luò)層1包括一個(gè)或一個(gè)以上的終端節(jié)點(diǎn)11,所述終端節(jié)點(diǎn)11可以向用戶提供各種具體的服務(wù);通信代理層2包括一個(gè)或一個(gè)以上的透明代理節(jié)點(diǎn)21;所述應(yīng)用層3包括一個(gè)或一個(gè)以上的控制節(jié)點(diǎn)31,所述控制節(jié)點(diǎn)31用于提供用戶接入和控制的交互接口,所述透明代理節(jié)點(diǎn)21是終端節(jié)點(diǎn)和控制節(jié)點(diǎn)之間通信的中轉(zhuǎn)站。不同層次節(jié)點(diǎn)之間的連接呈多對(duì)多的網(wǎng)狀結(jié)構(gòu),各節(jié)點(diǎn)之間可以互相協(xié)調(diào),達(dá)到最好的資源搭配,并且,每一層中的節(jié)點(diǎn)均與定位中心4連接。
圖中各類型的節(jié)點(diǎn)程序安裝在普通主機(jī)上,定位中心4安裝在高性能服務(wù)器上,出于安全考慮,應(yīng)該位于企業(yè)網(wǎng)內(nèi)。透明代理節(jié)點(diǎn)21可安裝在租用的第三方主機(jī)上,而終端節(jié)點(diǎn)11和控制節(jié)點(diǎn)31安裝在企業(yè)各異地子網(wǎng)內(nèi)的主機(jī)上。透明代理節(jié)點(diǎn)21和定位中心4應(yīng)該具有互聯(lián)網(wǎng)公網(wǎng)IP地址,終端節(jié)點(diǎn)11和控制節(jié)點(diǎn)31可以位于NAT轉(zhuǎn)換環(huán)境和防火墻的保護(hù)下,不必具有合法的IP地址,可以不對(duì)外提供服務(wù)。
其中,定位中心4安裝在一臺(tái)高性能服務(wù)器上,收集透明代理節(jié)點(diǎn)21和終端節(jié)點(diǎn)11的信息,形成一個(gè)透明代理節(jié)點(diǎn)列表,并動(dòng)態(tài)地維護(hù)所述列表的信息。所述的透明代理節(jié)點(diǎn)列表包括了所述網(wǎng)絡(luò)系統(tǒng)中的所有透明代理節(jié)點(diǎn)的信息,及每一透明代理節(jié)點(diǎn)所連接的終端節(jié)點(diǎn)信息,包括ID號(hào)、IP地址和端口號(hào)。用戶通過上述的列表中的信息即可定位目標(biāo)終端節(jié)點(diǎn)位置并獲取目標(biāo)終端節(jié)點(diǎn)的通信通道信息。
終端節(jié)點(diǎn)11,安裝在目標(biāo)網(wǎng)絡(luò)各終端節(jié)點(diǎn)主機(jī)上,向用戶提供各種具體的服務(wù)。
透明代理節(jié)點(diǎn)21,安裝在互聯(lián)網(wǎng)絡(luò)中的任意節(jié)點(diǎn)主機(jī)上,可以位于網(wǎng)絡(luò)中任何位置,其維護(hù)一個(gè)用于記錄與其連接的終端節(jié)點(diǎn)11信息的列表,該列表包括與其連接的每一終端節(jié)點(diǎn)11的ID號(hào)、IP地址和端口號(hào)。這里所述的“透明”是指該節(jié)點(diǎn)對(duì)其接收的數(shù)據(jù)不做任何處理的轉(zhuǎn)發(fā),透明代理節(jié)點(diǎn)接收控制節(jié)點(diǎn)31與終端節(jié)點(diǎn)11兩類節(jié)點(diǎn)的通信流,并為之建立數(shù)據(jù)管道,使得二者能以它為中轉(zhuǎn)站完成通信。
控制節(jié)點(diǎn)31,安裝在用戶主機(jī)上,可以位于網(wǎng)絡(luò)中任何位置,它提供用戶訪問目標(biāo)終端節(jié)點(diǎn)的人機(jī)交互接口。
基于上述網(wǎng)絡(luò)系統(tǒng),本發(fā)明提供了一種網(wǎng)絡(luò)系統(tǒng)節(jié)點(diǎn)的定位方法,如圖2所示,該方法包括以下步驟步驟S1、所述控制節(jié)點(diǎn)建立其與所述定位中心的通信連接,查詢所述定位中心維護(hù)的透明代理節(jié)點(diǎn)列表,獲取可用透明代理節(jié)點(diǎn)的位置信息及與所述可用透明代理節(jié)點(diǎn)連接的終端節(jié)點(diǎn)信息,所述的位置信息為節(jié)點(diǎn)的IP地址和端口號(hào)或/和ID號(hào),所述終端節(jié)點(diǎn)信息包括節(jié)點(diǎn)的IP地址、端口和/或ID號(hào);步驟S2、所述控制節(jié)點(diǎn)根據(jù)目標(biāo)終端節(jié)點(diǎn)的IP地址或ID號(hào)確定與所述目標(biāo)終端節(jié)點(diǎn)連接的透明代理節(jié)點(diǎn),并與之建立連接;步驟S3、所述控制節(jié)點(diǎn)通過所述透明代理節(jié)點(diǎn)與所述目標(biāo)終端節(jié)點(diǎn)建立通信連接,進(jìn)行通信。
本發(fā)明通過所述方法,終端節(jié)點(diǎn)和控制節(jié)點(diǎn)可以位于NAT轉(zhuǎn)換環(huán)境和防火墻的保護(hù)下,不必具有合法的IP地址,減少了企業(yè)網(wǎng)絡(luò)對(duì)互聯(lián)網(wǎng)公網(wǎng)IPv4地址的需求,而且能讓企業(yè)各子網(wǎng)在處于防火墻的保護(hù)之下時(shí),不額外開放端口也能互相訪問,提高了企業(yè)網(wǎng)的安全性。
本發(fā)明中所涉及到的ID號(hào)和通信命令字的數(shù)據(jù)結(jié)構(gòu)如下1、為實(shí)現(xiàn)多個(gè)節(jié)點(diǎn)之間的協(xié)調(diào)以及控制節(jié)點(diǎn)定位到終端節(jié)點(diǎn)和透明代理節(jié)點(diǎn),終端節(jié)點(diǎn)和透明代理節(jié)點(diǎn)必須具有唯一可識(shí)別的ID號(hào)。在多節(jié)點(diǎn)的網(wǎng)絡(luò)環(huán)境下,ID號(hào)應(yīng)該唯一可用,避免沖突;其次,ID號(hào)應(yīng)該包含盡可能多的識(shí)別信息。在本發(fā)明中,所述ID號(hào)的數(shù)據(jù)結(jié)構(gòu)如表1所示
表1

其中,MAC為節(jié)點(diǎn)主機(jī)的MAC地址。
TYPE為節(jié)點(diǎn)類型,1表示透明代理節(jié)點(diǎn)、2表示終端節(jié)點(diǎn)、3表示控制節(jié)點(diǎn)。
2、在本發(fā)明中,通信命令字用于各節(jié)點(diǎn)之間、采用基于TCP協(xié)議的數(shù)據(jù)流傳輸進(jìn)行通信。其數(shù)據(jù)結(jié)構(gòu)格式如表2所示表2

其中,COMMAND.Magic為通信幻數(shù),為本系統(tǒng)各節(jié)點(diǎn)通信的統(tǒng)一標(biāo)識(shí),如果Magic不正確,則接受方認(rèn)為通信請(qǐng)求不是來自本系統(tǒng)內(nèi)的節(jié)點(diǎn)。設(shè)計(jì)Magic的目的是加強(qiáng)系統(tǒng)的安全性,防止來自其他系統(tǒng)的通信連接。
COMMAND.CommandID命令字,本系統(tǒng)中用到的命令字如表3所示表3


COMMAND.DataSize下一個(gè)數(shù)據(jù)包的長(zhǎng)度。
在表3中,序號(hào)為1-5的命令字都是對(duì)文件進(jìn)行操作的命令,本發(fā)明中采集的信息都以文件的形式進(jìn)行傳輸,在進(jìn)行文件傳輸時(shí),用一個(gè)特殊的結(jié)構(gòu)體來描述文件,所述描述文件的結(jié)構(gòu)體格式如表4所示表4

其中,F(xiàn)ILEINFO.Magic對(duì)應(yīng)于COMMAND.Magic;FILEINFO.filename待傳輸?shù)奈募?包含文件在本地的全路徑);FILEINFO.filesize待傳輸?shù)奈募止?jié)數(shù)。
序號(hào)為6的命令字COMMUNICATE用于控制節(jié)點(diǎn)請(qǐng)求建立與終端節(jié)點(diǎn)的通信。下一個(gè)數(shù)據(jù)包中通常是請(qǐng)求建立通信的終端節(jié)點(diǎn)的ID號(hào)。
序號(hào)為7-10的命令字沒有后續(xù)數(shù)據(jù)包,所以其COMMAND.DataSize為0。
具體地,本發(fā)明所述定位方法的一具體實(shí)施例的流程如圖3、圖4所示步驟S100、透明代理節(jié)點(diǎn)運(yùn)行,與定位中心建立連接,發(fā)送自己的ID號(hào)和位置信息(包括IP地址和端口號(hào)),成功后等待終端節(jié)點(diǎn)和控制節(jié)點(diǎn)與其連接。
步驟S101、定位中心收到透明代理節(jié)點(diǎn)的位置信息后,將該透明代理節(jié)點(diǎn)的位置信息添加到特定目錄下的透明代理節(jié)點(diǎn)列表文件中。
文件格式如下{ IP=192.168.100.20,PORT=1056(AgentID1.1)IP=192.168.110.20,PORT=1057(AgentID1.2)IP=192.168.120.20,PORT=1058……}{[AgentID2]IP=,PORT=(AgentID2.1)IP=193.168.110.20,PORT=1065(AgentID2.2)IP=193.168.120.20,PORT=1066}其中,[AgentID1]表示透明代理節(jié)點(diǎn)的ID號(hào);(AgentID1.1)表示與[AgentID1]連接的終端節(jié)點(diǎn)ID號(hào);IP、PORT分別是該節(jié)點(diǎn)的IP地址和端口號(hào)。
這種由透明代理節(jié)點(diǎn)自己確定服務(wù)端口而不是指定唯一服務(wù)端口的辦法,可以使透明代理節(jié)點(diǎn)在防火墻保護(hù)中、只允許某個(gè)端口提供服務(wù)的情況下,靈活地確定自己的服務(wù)端口。
步驟S102、終端節(jié)點(diǎn)向定位中心發(fā)送命令字為FILE_SENDFILE,目標(biāo)文件名為透明代理節(jié)點(diǎn)列表文件的請(qǐng)求,從而獲取可用透明代理節(jié)點(diǎn)列表信息。
這種終端節(jié)點(diǎn)主動(dòng)與定位中心建立連接的方法,讓終端節(jié)點(diǎn)即使處于NAT轉(zhuǎn)換的環(huán)境下(終端節(jié)點(diǎn)沒有互聯(lián)網(wǎng)公網(wǎng)IP地址),或者處于防火墻的保護(hù)下不允許向外提供服務(wù)時(shí),也能獲取可用透明代理節(jié)點(diǎn)列表,提高了企業(yè)網(wǎng)的安全性。
步驟S103、終端節(jié)點(diǎn)根據(jù)步驟S102獲取的透明代理節(jié)點(diǎn)列表信息,與所有可用的透明代理節(jié)點(diǎn)建立連接(設(shè)該SOCKET通道為S1),并通過定期發(fā)送REFRESH命令使該連接一直保持活動(dòng)狀態(tài)。
利用這種代表身份的ID號(hào),采用終端節(jié)點(diǎn)和控制節(jié)點(diǎn)均向透明代理節(jié)點(diǎn)主動(dòng)連接的通信方法,在透明代理節(jié)點(diǎn)上依賴于同ID相關(guān)聯(lián)的Socket通道來確立連接,即使終端節(jié)點(diǎn)和控制節(jié)點(diǎn)都使用內(nèi)網(wǎng)IP地址(非公網(wǎng)IP地址),也能準(zhǔn)確定位他們的位置。并且,這種終端節(jié)點(diǎn)主動(dòng)與透明代理節(jié)點(diǎn)建立連接的方法,讓終端節(jié)點(diǎn)即使處于NAT轉(zhuǎn)換的環(huán)境下(終端節(jié)點(diǎn)沒有互聯(lián)網(wǎng)公網(wǎng)IP地址),或者處于防火墻的保護(hù)下不允許向外提供服務(wù),也能順利與透明代理節(jié)點(diǎn)建立連接,這提高了企業(yè)網(wǎng)的安全性。
步驟S104、透明代理節(jié)點(diǎn)與終端節(jié)點(diǎn)之間的連接成功建立后,透明代理節(jié)點(diǎn)將該終端節(jié)點(diǎn)位置信息插入終端節(jié)點(diǎn)列表文件中。該文件格式如下[AgentID1]IP=192.168.100.20,PORT=1080[AgentID2]IP=192.168.100.30,PORT=1081……該文件一大特點(diǎn)在于它存在順序,在該步驟中,利用TCP/IP通信機(jī)制將各個(gè)終端節(jié)點(diǎn)按照拓?fù)渚嚯x進(jìn)行排序。首先,透明代理節(jié)點(diǎn)向終端節(jié)點(diǎn)發(fā)送UDP數(shù)據(jù)包,以確定二者之間的TTL值,該值反映了二者中間路由器的跳數(shù),TTL值越小,說明經(jīng)過的路由器越少,通信速率越快,通過TTL值可以確定二者之間的拓?fù)渚嚯x;然后,根據(jù)TTL值對(duì)每個(gè)終端節(jié)點(diǎn)進(jìn)行排列,即,每個(gè)終端節(jié)點(diǎn)在文件中的位置由透明代理節(jié)點(diǎn)與終端節(jié)點(diǎn)之間的拓?fù)渚嚯x來決定。在文件中的位置越靠前的終端節(jié)點(diǎn)具有更短的拓?fù)渚嚯x。
當(dāng)透明代理節(jié)點(diǎn)達(dá)到設(shè)定的終端節(jié)點(diǎn)最大處理能力后,向后續(xù)終端節(jié)點(diǎn)發(fā)送出錯(cuò)(ERR)命令,收到該指令的終端節(jié)點(diǎn)會(huì)嘗試連接下一個(gè)透明代理節(jié)點(diǎn)。
步驟S105、透明代理節(jié)點(diǎn)向定位中心發(fā)送命令字為FILE_SAVEFILE,目標(biāo)文件為透明代理節(jié)點(diǎn)列表的請(qǐng)求,請(qǐng)求定位中心同步更新與自己連接的終端節(jié)點(diǎn)列表信息。
一旦透明代理節(jié)點(diǎn)的終端節(jié)點(diǎn)列表信息發(fā)生任意改動(dòng),它都會(huì)向定位中心發(fā)送同步更新終端節(jié)點(diǎn)列表的請(qǐng)求。
步驟S106、控制節(jié)點(diǎn)啟動(dòng)后與定位中心建立連接,向定位中心發(fā)送命令字為FILE_SENDFILE,目標(biāo)文件名為透明代理節(jié)點(diǎn)列表的請(qǐng)求,從而獲取可用透明代理節(jié)點(diǎn)列表及與其相連的終端節(jié)點(diǎn)信息,顯示給用戶??刂乒?jié)點(diǎn)對(duì)獲得的透明代理節(jié)點(diǎn)列表文件中的節(jié)點(diǎn)按拓?fù)渚嚯x排序,排序方法與步驟S104中的排序方法相同,在此不再贅述。至此,控制節(jié)點(diǎn)獲得了按路徑最優(yōu)排序的透明代理節(jié)點(diǎn)列表,在列表中位置越靠前的透明代理節(jié)點(diǎn)與該控制節(jié)點(diǎn)具有更短的拓?fù)渚嚯x,在同一透明代理節(jié)點(diǎn)子項(xiàng)中,位置越靠前的終端節(jié)點(diǎn)與透明代理節(jié)點(diǎn)具有更短的拓?fù)渚嚯x。
這種控制節(jié)點(diǎn)主動(dòng)與定位中心建立連接的方法,讓控制節(jié)點(diǎn)即使處于NAT轉(zhuǎn)換的環(huán)境下(控制節(jié)點(diǎn)沒有互聯(lián)網(wǎng)公網(wǎng)IP地址),或者處于防火墻的保護(hù)下不允許向外提供服務(wù)時(shí),也能順利獲取可用透明代理節(jié)點(diǎn)列表及與其相連的終端節(jié)點(diǎn)信息,這提高了企業(yè)網(wǎng)的安全性。
步驟S107、用戶輸入想要訪問的目標(biāo)終端節(jié)點(diǎn)IP地址信息或目標(biāo)終端節(jié)點(diǎn)的ID號(hào)信息,控制節(jié)點(diǎn)從步驟S106中獲取的排序列表中給出三者通信時(shí)總拓?fù)渚嚯x最短的路徑選擇,并提示用戶選擇路徑。
步驟S108、控制節(jié)點(diǎn)與用戶指定路徑中的透明代理節(jié)點(diǎn)建立連接(設(shè)該SOCKET通道為S2),成功后,向該透明代理節(jié)點(diǎn)發(fā)送命令字為COMMUNICATE,目標(biāo)為用戶指定終端ID號(hào)的請(qǐng)求,請(qǐng)求與指定目標(biāo)終端節(jié)點(diǎn)通信。
步驟S109、透明代理節(jié)點(diǎn)將來自控制節(jié)點(diǎn)的通信請(qǐng)求發(fā)送到終端節(jié)點(diǎn)與自己一直保持的SOCKET通道S1上。
步驟S110、終端節(jié)點(diǎn)收到COMMUNICATE指令后,發(fā)送OK指令,確定建立通信成功。
步驟S111、透明代理節(jié)點(diǎn)將OK指令發(fā)送至控制節(jié)點(diǎn)與自己的SOCKET通道S2上。
步驟S112、透明代理節(jié)點(diǎn)開啟一個(gè)專門的線程實(shí)時(shí)監(jiān)聽SOCKET通道S1、SOCKET通道S2,為兩個(gè)通道建立直接通信的數(shù)據(jù)管道。當(dāng)控制節(jié)點(diǎn)發(fā)送控制指令時(shí),該線程讀取SOCKET通道S2中的輸出數(shù)據(jù)流,作為輸入傳送給SOCKET通道S1;同理,終端節(jié)點(diǎn)返回指令執(zhí)行結(jié)果時(shí),該線程讀取SOCKET通道S1中的數(shù)據(jù)流,將其作為輸入傳送給SOCKET通道S2。
步驟S113、終端節(jié)點(diǎn)完成用戶指定的控制并將結(jié)果返回給控制節(jié)點(diǎn),控制節(jié)點(diǎn)向S2發(fā)送EXIT指令,取消與終端節(jié)點(diǎn)的通信。
步驟S114、透明代理節(jié)點(diǎn)把EXIT指令轉(zhuǎn)發(fā)給SOCKET通道S1,終端節(jié)點(diǎn)斷開與控制節(jié)點(diǎn)的連接,并定期發(fā)送REFRESH刷新命令使SOCKET通道S1一直保持活動(dòng)狀態(tài)。
步驟S115、控制節(jié)點(diǎn)斷開與透明代理節(jié)點(diǎn)的連接通道,整個(gè)通信過程結(jié)束。
本發(fā)明中,所述的網(wǎng)絡(luò)系統(tǒng)采用基于透明代理節(jié)點(diǎn)的三層通信機(jī)制,由控制節(jié)點(diǎn)、終端節(jié)點(diǎn)主動(dòng)與透明代理節(jié)點(diǎn)建立通信連接,可以讓控制節(jié)點(diǎn)、終端節(jié)點(diǎn)均處于NAT轉(zhuǎn)換的網(wǎng)絡(luò)環(huán)境下不擁有互聯(lián)網(wǎng)公網(wǎng)IP地址,或者處于防火墻的保護(hù)下不允許向外提供服務(wù)時(shí),也能順利地通信。當(dāng)采用本發(fā)明所述的定位方法時(shí),一個(gè)企業(yè)網(wǎng)如果租用第三方主機(jī)作為透明代理節(jié)點(diǎn),那么企業(yè)采用本方法進(jìn)行節(jié)點(diǎn)定位就只需要定位中心一臺(tái)主機(jī)擁有對(duì)外的互聯(lián)網(wǎng)公網(wǎng)IP地址,其他子網(wǎng)的主機(jī)對(duì)外都是內(nèi)網(wǎng)地址,這也提高了企業(yè)網(wǎng)的安全性。
在本發(fā)明中,所述的網(wǎng)絡(luò)系統(tǒng)由透明代理節(jié)點(diǎn)自己確定服務(wù)端口并公告自己服務(wù)端口,而不是指定唯一的服務(wù)端口,可以使透明代理節(jié)點(diǎn)在防火墻保護(hù)中,在只允許某個(gè)端口提供服務(wù)的情況下,靈活地確定自己的服務(wù)端口,提高了系統(tǒng)對(duì)網(wǎng)絡(luò)環(huán)境的適應(yīng)性。
并且,本發(fā)明的網(wǎng)絡(luò)系統(tǒng)采用多個(gè)終端節(jié)點(diǎn)對(duì)多個(gè)透明代理節(jié)點(diǎn)、多個(gè)透明代理節(jié)點(diǎn)對(duì)多個(gè)控制節(jié)點(diǎn)的機(jī)制,終端節(jié)點(diǎn)與所有可連接的透明代理節(jié)點(diǎn)通信,控制節(jié)點(diǎn)按拓?fù)渚嚯x最短的規(guī)則選擇透明代理節(jié)點(diǎn)以建立對(duì)終端節(jié)點(diǎn)實(shí)施控制的通信通道,這增加了系統(tǒng)的穩(wěn)定性和容錯(cuò)性。
本發(fā)明采用節(jié)點(diǎn)主機(jī)MAC地址和節(jié)點(diǎn)類型給每個(gè)節(jié)點(diǎn)命名的辦法,不僅可以唯一識(shí)別每個(gè)節(jié)點(diǎn),而且在終端節(jié)點(diǎn)和/或控制節(jié)點(diǎn)使用內(nèi)網(wǎng)IP地址(非公網(wǎng)IP地址,大多數(shù)情況下地址都重復(fù))的情況下,系統(tǒng)也能準(zhǔn)確識(shí)別各個(gè)節(jié)點(diǎn)的身份和位置。
本發(fā)明采用節(jié)點(diǎn)定位功能和通信透明轉(zhuǎn)發(fā)功能獨(dú)立分開的機(jī)制,一個(gè)專門的節(jié)點(diǎn)作為定位中心完成節(jié)點(diǎn)定位的關(guān)鍵功能,多個(gè)透明代理節(jié)點(diǎn)完成大量數(shù)據(jù)通信流的轉(zhuǎn)發(fā)功能,使整個(gè)網(wǎng)絡(luò)系統(tǒng)的各部分負(fù)載均勻合理。
并且,透明代理節(jié)點(diǎn)對(duì)終端節(jié)點(diǎn)進(jìn)行拓?fù)渚嚯x排序、控制節(jié)點(diǎn)對(duì)透明代理節(jié)點(diǎn)進(jìn)行拓?fù)渚嚯x排序,最終形成按照網(wǎng)絡(luò)拓?fù)渚嚯x排序后的定位列表,以此幫助用戶選擇最佳通信路徑,有效地提高系統(tǒng)通信效率。
本發(fā)明所述的系統(tǒng)和方法可以應(yīng)用于各種具體的網(wǎng)絡(luò)環(huán)境。如在一種基于透明代理的分布式多節(jié)點(diǎn)網(wǎng)絡(luò)監(jiān)控系統(tǒng)中,將人工智能研究中多Agent系統(tǒng),與分布式網(wǎng)絡(luò)監(jiān)控系統(tǒng)的結(jié)構(gòu)相適應(yīng),其中,Agent指分布式系統(tǒng)中能持續(xù)自主發(fā)揮作用的計(jì)算實(shí)體,具有自主性、交互性、反應(yīng)性和主動(dòng)性的特征。在網(wǎng)絡(luò)安全領(lǐng)域借鑒人工智能的成果,每一個(gè)終端Agent既具有思考型Agent的特點(diǎn),能夠自動(dòng)報(bào)告自身的存活性,主動(dòng)完成常規(guī)的檢測(cè),又具備反應(yīng)型Agent的靈活性,可以根據(jù)控制端的實(shí)時(shí)指令,快速響應(yīng)并做出相應(yīng)的處理。
如圖5所示,為本發(fā)明一具體實(shí)施例的網(wǎng)絡(luò)結(jié)構(gòu)示意圖,本實(shí)施例的網(wǎng)絡(luò)結(jié)構(gòu)為一種基于透明代理的分布式多節(jié)點(diǎn)網(wǎng)絡(luò)監(jiān)控系統(tǒng),包括受控目標(biāo)網(wǎng)絡(luò)層100,通信代理層200、應(yīng)用層300和定位中心400。所述受控目標(biāo)網(wǎng)絡(luò)層100包括6個(gè)安裝在受監(jiān)控的目標(biāo)網(wǎng)絡(luò)節(jié)點(diǎn)主機(jī)上的終端Agent101-106;所述通信代理層200包括4個(gè)安裝在網(wǎng)絡(luò)中的受控節(jié)點(diǎn)主機(jī)上的透明代理Agent201-204;所述應(yīng)用層300包括2個(gè)安裝在網(wǎng)絡(luò)任何節(jié)點(diǎn)主機(jī)上的控制端Agent301、302;所述定位中心400位于服務(wù)器上,是整個(gè)系統(tǒng)的中心數(shù)據(jù)節(jié)點(diǎn),為系統(tǒng)的初始化、更新和維護(hù)提供支撐數(shù)據(jù)信息,用于維護(hù)透明代理Agent列表、終端Agent列表信息及二者之間的連通關(guān)系,為用戶提供查詢和檢索的各種Agent的實(shí)時(shí)信息,查看各種Agent獲取的環(huán)境信息和監(jiān)控得到的信息。其中,終端Agent101-103位于子網(wǎng)1中,終端Agent104-106位于子網(wǎng)2中,終端Agent與透明代理Agent呈網(wǎng)狀連接,透明代理Agent與控制端Agent呈網(wǎng)狀連接,并且,每一個(gè)終端Agent、透明代理Agent、控制端Agent分別與定位中心連接。
所述終端Agent,用于獲取所監(jiān)控的網(wǎng)絡(luò)節(jié)點(diǎn)的環(huán)境信息以及由控制端Agent指定監(jiān)控的各種網(wǎng)絡(luò)狀態(tài)和主機(jī)狀態(tài),包括活動(dòng)進(jìn)程、運(yùn)行的服務(wù)、文件操作、聯(lián)網(wǎng)行為等,并形成記錄日志,及時(shí)向定位中心匯報(bào),以便用戶實(shí)時(shí)查詢和檢索。
所述透明代理Agent,用于建立和維護(hù)終端Agent與控制端Agent之間的通信,并根據(jù)網(wǎng)絡(luò)拓?fù)渚嚯x排序形成列表,以待控制端Agent連接,當(dāng)控制端Agent與終端Agent通過身份驗(yàn)證,建立有效連接后,透明代理Agent透明地轉(zhuǎn)發(fā)信息和指令。
所述控制端Agent,用于指定終端Agent的監(jiān)控任務(wù),并獲取監(jiān)控結(jié)果。因此,用戶可以采用控制端Agent查詢可用的透明代理Agent,自主選擇希望連接的透明代理Agent,并查詢可控終端Agent。
所述的透明代理Agent包括一級(jí)或一級(jí)以上的透明代理Agent,其中,低級(jí)透明代理Agent分別與一個(gè)高級(jí)透明代理Agent連接,用于進(jìn)行消息的轉(zhuǎn)發(fā)。
在本監(jiān)控網(wǎng)絡(luò)系統(tǒng)中,終端Agent采用混合型Agent,快速反應(yīng),可控性強(qiáng),又具備自主工作的能力,在無控制端Agent指令的時(shí)候,可以自主匯報(bào)自己的工作情況,并主動(dòng)收集情報(bào)信息備用。為了監(jiān)控指定的終端Agent,控制端Agent需要從本系統(tǒng)中找到所述指定的終端Agent,通過獲取所述指定的終端Agent所采集的數(shù)據(jù),即可知所述指定的終端Agent所在主機(jī)的網(wǎng)絡(luò)運(yùn)行情況。
定位中心維護(hù)透明代理Agent列表及每一透明代理Agent對(duì)應(yīng)的終端Agent的列表信息,每一透明代理Agent維護(hù)與其連接的終端Agent的列表信息。當(dāng)某一控制端Agent欲在該網(wǎng)絡(luò)系統(tǒng)中定位某一目標(biāo)終端Agent時(shí),采用如圖6所示流程圖的步驟完成
步驟S200、所述控制端Agent建立與所述定位中心的通信連接,查詢所述定位中心維護(hù)的透明代理Agent列表,獲取可用透明代理Agent的位置信息及與其連接的終端Agent信息,所述的位置信息為節(jié)點(diǎn)的IP地址和端口號(hào)或/和ID號(hào),所述終端Agent信息包括節(jié)點(diǎn)的IP地址、端口號(hào)和/或ID號(hào),所述的ID號(hào)包括Agent節(jié)點(diǎn)主機(jī)MAC地址和Agent代理類型;步驟S201、所述控制端Agent根據(jù)目標(biāo)終端Agent的IP地址或ID號(hào)確定與所述目標(biāo)終端Agent連接的透明代理Agent,并與之建立連接;步驟S202、所述控制端Agent通過所述透明代理Agent與所述目標(biāo)終端Agent建立通信連接,進(jìn)行通信。
控制端Agent與目標(biāo)終端Agent建立起通信連接后,控制端Agent向所述目標(biāo)終端Agent發(fā)送監(jiān)控指令;所述透明代理Agent作為控制端Agent和所述目標(biāo)終端Agent之間的通信橋梁,將所述監(jiān)控指令轉(zhuǎn)發(fā)給目標(biāo)終端Agent;目標(biāo)終端Agent獲取所述監(jiān)控指令,按照所述監(jiān)控指令完成監(jiān)控任務(wù),并通過所述透明代理Agent將監(jiān)控結(jié)果返回給所述控制端Agent。
在本系統(tǒng)中,定位中心維護(hù)的所述透明代理Agent列表記錄了本系統(tǒng)中所有的透明代理Agent的位置信息,即IP地址、ID號(hào)和端口號(hào)。每一透明代理Agent維護(hù)的終端Agent列表記錄了與所述透明代理Agent連接的終端Agent的位置信息,即IP地址、ID號(hào)和端口號(hào)。上述兩個(gè)列表是動(dòng)態(tài)刷新的,也就是說,是根據(jù)網(wǎng)絡(luò)連接的變化而變化的,當(dāng)所述透明代理Agent維護(hù)的終端Agent列表信息發(fā)生改動(dòng)時(shí),所述透明代理Agent向定位中心發(fā)送刷新請(qǐng)求;所述定位中心同步更新所述透明代理Agent的終端Agent列表信息。同理,當(dāng)與定位中心連接的所述透明代理Agent發(fā)生變化時(shí),其向定位中心發(fā)送刷新請(qǐng)求;所述定位中心同步更新所述透明代理Agent列表。這樣可以保證上述兩種列表的實(shí)效性。
其中,為了定位的準(zhǔn)確、迅速,上述兩種列表中所記錄的Agent是有順序的,以終端Agent列表為例進(jìn)行說明。所述終端Agent列表中的終端Agent按照其與其連接的透明代理Agent的拓?fù)渚嚯x排序。具體的算法如下所示ttli、ttlij分別表示排序前和排序后第i個(gè)終端Agent到所連接的透明代理Agent的拓?fù)渚嚯x;TTLj表示排序后各終端Agent到所連接的透明代理Agent的拓?fù)渚嚯x集;time-on-linei、time-on-lineij分別表示排序前和排序后第i個(gè)終端Agent在線的時(shí)間;TIME-ON-LINEj表示排序后各終端Agent在線的時(shí)間集;listi、listij分別表示排序前和排序后列表中的第i項(xiàng);li、lij分別表示排序前和排序后的第i個(gè)終端Agent。
TTL0={ttl0,ttl1......ttli......ttln},i∈0,nTIME-ON-LINE0={time-on-line0,time-on-line1......time-on-linei......time-on-linen},i∈0,n TTL1={ttl0,ttl1......ttli......ttln}-ttli0,i∈0,nTIME-ON-LINE1={time-on-line0,time-on-line1.....time-on-linei.....time-on-linen}-time-on-linei0,i∈0,n TTLj={ttl0,ttl1......ttli......ttln}-Σk=0j-1ttlik,i∈0,n]]>TIME-ON-LINEj={time-on-line0,time-on-line1......time-on-linei......time-on-linen}-Σk=0j-1time-on-lineik,]]>i∈0,n 所述終端Agent列表文件的格式如下所示[AgentID1]IP=192.168.100.20,PORT=80[AgentID2]
IP=192.168.100.30,PORT=80……該文件最大的特點(diǎn)在于它存在順序,程序利用TCP/IP通信機(jī)制將各個(gè)終端Agent按照拓?fù)渚嚯x進(jìn)行排序。透明代理Agent向終端Agent發(fā)送UDP數(shù)據(jù)包,以確定二者之間的TTL值,該值反映了二者中間路由器的跳數(shù),TTL值越小,說明經(jīng)過的路由器越少,通信速率越快,因此,系統(tǒng)可以通過TTL值確定二者之間的拓?fù)渚嚯x。每個(gè)終端Agent在文件中的位置由透明代理Agent與終端Agent之間的拓?fù)渚嚯x來決定,在文件中的位置越靠前的終端Agent具有更短的拓?fù)渚嚯x。
當(dāng)透明代理Agent達(dá)到設(shè)定的終端Agent最大處理能力后,向后續(xù)終端Agent發(fā)送出錯(cuò)(ERR)命令,收到該指令的終端Agent會(huì)嘗試連接下-個(gè)透明代理Agent。
同理,透明代理Agent列表的排序與上述終端Agent列表的排序相同。
所述控制端Agent通過所述透明代理Agent與所述目標(biāo)終端Agent進(jìn)行通信時(shí),所述透明代理Agent開啟一個(gè)專門的線程實(shí)時(shí)監(jiān)聽透明代理Agent與目標(biāo)終端Agent的連接和透明代理Agent與控制端Agent的連接,為所述兩個(gè)連接建立直接通信的數(shù)據(jù)管道。
另外,上述實(shí)施例中的控制端Agent對(duì)目標(biāo)終端Agent的定位是在網(wǎng)絡(luò)系統(tǒng)的運(yùn)行時(shí)進(jìn)行的,在所述網(wǎng)絡(luò)系統(tǒng)運(yùn)行之初,需要進(jìn)行初始化,做好監(jiān)控及定位的必備工作,如終端Agent與所述定位中心建立連接,查詢透明代理Agent列表文件,從而獲取可用透明代理Agent列表信息;所述終端Agent根據(jù)獲取的透明代理Agent列表信息,向所有可用的透明代理Agent發(fā)送連接請(qǐng)求;所述透明代理Agent接收終端Agent發(fā)送的連接請(qǐng)求,與之建立連接,并將所述終端Agent的位置信息插入其維護(hù)的終端Agent列表文件中,并完成對(duì)與其連接的終端Agent的排序。
透明代理Agent與所述定位中心建立連接,將其ID號(hào)和位置信息發(fā)送給定位中心;
所述定位中心收到透明代理Agent的位置信息后,將該透明代理Agent的位置信息添加到透明代理Agent列表文件中,并完成對(duì)與其連接的透明代理Agent的排序。
本實(shí)施例由定位中心收集并維護(hù)終端Agent節(jié)點(diǎn)和透明代理Agent節(jié)點(diǎn)之間的連通狀態(tài),控制端Agent通過了解這種狀態(tài)就能快速、準(zhǔn)確地定位到目標(biāo)終端Agent節(jié)點(diǎn)。
本發(fā)明采用節(jié)點(diǎn)定位功能和通信透明轉(zhuǎn)發(fā)功能獨(dú)立開來的機(jī)制,讓一個(gè)專門的定位中心節(jié)點(diǎn)完成節(jié)點(diǎn)定位的關(guān)鍵功能,讓多個(gè)透明代理Agent節(jié)點(diǎn)完成大量數(shù)據(jù)通信流的轉(zhuǎn)發(fā)功能,使整個(gè)系統(tǒng)的各部分負(fù)載均勻合理。
并且,采用Agent節(jié)點(diǎn)主機(jī)MAC地址和Agent類型給每個(gè)節(jié)點(diǎn)Agent命名的辦法,不僅可以唯一識(shí)別每個(gè)節(jié)點(diǎn),而且在終端Agent和/或控制端Agent使用內(nèi)網(wǎng)IP地址(非公網(wǎng)IP地址,大多數(shù)情況下地址都重復(fù))的情況下,系統(tǒng)也能準(zhǔn)確識(shí)別各個(gè)節(jié)點(diǎn)的身份和位置。
最后所應(yīng)說明的是以上實(shí)施例僅用以說明本發(fā)明而非限制,盡管參照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對(duì)本發(fā)明進(jìn)行修改或者等同替換,而不脫離本發(fā)明的精神和范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
權(quán)利要求
1.一種基于分層結(jié)構(gòu)的網(wǎng)絡(luò)系統(tǒng),其特征在于,包括受控網(wǎng)絡(luò)層、通信代理層、應(yīng)用層和定位中心,其中,所述受控網(wǎng)絡(luò)層包括一個(gè)或多個(gè)終端節(jié)點(diǎn),所述通信代理層包括一個(gè)或多個(gè)透明代理節(jié)點(diǎn),所述應(yīng)用層包括一個(gè)或多個(gè)控制節(jié)點(diǎn),所述受控網(wǎng)絡(luò)層的節(jié)點(diǎn)與所述通信代理層的節(jié)點(diǎn)、所述通信代理層的節(jié)點(diǎn)與所述應(yīng)用層的節(jié)點(diǎn)分別呈網(wǎng)狀連接,并且,每一層中的節(jié)點(diǎn)與定位中心連接。
2.一種基于權(quán)利要求1所述網(wǎng)絡(luò)系統(tǒng)節(jié)點(diǎn)的定位方法,其特征在于,包括以下步驟步驟1、所述控制節(jié)點(diǎn)建立其與所述定位中心的通信連接,查詢所述定位中心維護(hù)的透明代理節(jié)點(diǎn)列表,獲取可用透明代理節(jié)點(diǎn)的位置信息及與所述透明代理節(jié)點(diǎn)連接的終端節(jié)點(diǎn)信息,所述的位置信息為節(jié)點(diǎn)的IP地址和端口號(hào),所述終端節(jié)點(diǎn)信息包括節(jié)點(diǎn)的IP地址、端口號(hào)和/或ID號(hào);步驟2、所述控制節(jié)點(diǎn)根據(jù)目標(biāo)終端節(jié)點(diǎn)的IP地址或ID號(hào)確定與所述目標(biāo)終端節(jié)點(diǎn)連接的透明代理節(jié)點(diǎn),并與之建立連接;步驟3、所述控制節(jié)點(diǎn)通過所述透明代理節(jié)點(diǎn)與所述目標(biāo)終端節(jié)點(diǎn)建立通信連接,進(jìn)行通信。
3.根據(jù)權(quán)利要求2所述的網(wǎng)絡(luò)系統(tǒng)節(jié)點(diǎn)的定位方法,其特征在于,所述步驟1進(jìn)一步包括所述控制節(jié)點(diǎn)按照其與所獲得的可用透明代理節(jié)點(diǎn)的拓?fù)渚嚯x進(jìn)行排序,使得所述的透明代理節(jié)點(diǎn)按照其與控制節(jié)點(diǎn)的拓?fù)渚嚯x排列。
4.根據(jù)權(quán)利要求3所述的網(wǎng)絡(luò)系統(tǒng)節(jié)點(diǎn)的定位方法,其特征在于,所述控制節(jié)點(diǎn)對(duì)所獲得的可用透明代理節(jié)點(diǎn),按照所述透明代理節(jié)點(diǎn)與其的拓?fù)渚嚯x進(jìn)行排序的步驟為首先,所述控制節(jié)點(diǎn)向所述的透明代理節(jié)點(diǎn)發(fā)送UDP數(shù)據(jù)包,確定二者之間的TTL值;然后,根據(jù)所述的TTL值大小對(duì)所述透明代理節(jié)點(diǎn)進(jìn)行排序。
5.根據(jù)權(quán)利要求2所述的網(wǎng)絡(luò)系統(tǒng)節(jié)點(diǎn)的定位方法,其特征在于,在所述步驟1之前還包括所述透明代理節(jié)點(diǎn)與所述定位中心建立連接,將其ID號(hào)和位置信息發(fā)送給定位中心;所述定位中心收到所述透明代理節(jié)點(diǎn)的位置信息后,將所述透明代理節(jié)點(diǎn)的位置信息添加到所述透明代理節(jié)點(diǎn)列表文件中。
6.根據(jù)權(quán)利要求2-5任一所述的網(wǎng)絡(luò)系統(tǒng)節(jié)點(diǎn)的定位方法,其特征在于,在所述步驟1之前還包括所述終端節(jié)點(diǎn)與所述定位中心建立連接,查詢所述透明代理節(jié)點(diǎn)列表文件,獲取可用透明代理節(jié)點(diǎn)位置信息;所述終端節(jié)點(diǎn)根據(jù)獲取的透明代理節(jié)點(diǎn)位置信息,向所有可用的透明代理節(jié)點(diǎn)發(fā)送連接請(qǐng)求;所述透明代理節(jié)點(diǎn)接收所述終端節(jié)點(diǎn)發(fā)送的連接請(qǐng)求,與之建立連接,并將所述終端節(jié)點(diǎn)的位置信息插入其維護(hù)的終端節(jié)點(diǎn)列表文件中。
7.根據(jù)權(quán)利要求6所述的網(wǎng)絡(luò)系統(tǒng)節(jié)點(diǎn)的定位方法,其特征在于,所述的透明代理節(jié)點(diǎn)對(duì)記錄在其維護(hù)的所述終端節(jié)點(diǎn)列表文件中的終端節(jié)點(diǎn)按照其與所述終端節(jié)點(diǎn)的拓?fù)渚嚯x進(jìn)行排序,使得所述的終端節(jié)點(diǎn)按照其與所述的透明代理節(jié)點(diǎn)的拓?fù)渚嚯x排列。
8.根據(jù)權(quán)利要求7所述的網(wǎng)絡(luò)系統(tǒng)節(jié)點(diǎn)的定位方法,其特征在于,所述的透明代理節(jié)點(diǎn)對(duì)記錄在其維護(hù)的所述終端節(jié)點(diǎn)列表文件中的終端節(jié)點(diǎn)按照其與所述終端節(jié)點(diǎn)的拓?fù)渚嚯x進(jìn)行排序的步驟為所述的透明代理節(jié)點(diǎn)向與其連接的終端節(jié)點(diǎn)發(fā)送UDP數(shù)據(jù)包,確定二者之間的TTL值;根據(jù)所述的TTL值大小對(duì)所述終端節(jié)點(diǎn)進(jìn)行排序。
9.根據(jù)權(quán)利要求6、7或8所述的網(wǎng)絡(luò)系統(tǒng)節(jié)點(diǎn)的定位方法,其特征在于,所述透明代理節(jié)點(diǎn)接收終端節(jié)點(diǎn)發(fā)送的連接請(qǐng)求,與之建立連接時(shí),當(dāng)與所述透明代理節(jié)點(diǎn)連接的終端節(jié)點(diǎn)數(shù)量達(dá)到所述透明代理節(jié)點(diǎn)的處理最大限時(shí),所述透明代理節(jié)點(diǎn)發(fā)送信息給后續(xù)向其發(fā)送連接請(qǐng)求的終端節(jié)點(diǎn);接到該信息終端節(jié)點(diǎn)向下一個(gè)可用的透明代理節(jié)點(diǎn)發(fā)送連接請(qǐng)求。
10.根據(jù)權(quán)利要求6、7或8所述的網(wǎng)絡(luò)系統(tǒng)節(jié)點(diǎn)的定位方法,其特征在于,當(dāng)所述透明代理節(jié)點(diǎn)維護(hù)的所述終端節(jié)點(diǎn)列表信息發(fā)生改動(dòng)時(shí),所述透明代理節(jié)點(diǎn)向定位中心發(fā)送刷新請(qǐng)求;所述定位中心同步更新所述透明代理節(jié)點(diǎn)的終端節(jié)點(diǎn)列表信息。
全文摘要
一種基于分層結(jié)構(gòu)的網(wǎng)絡(luò)系統(tǒng)及其節(jié)點(diǎn)的定位方法,所述定位方法包括所述控制節(jié)點(diǎn)建立其與所述定位中心的通信連接,查詢所述定位中心維護(hù)的透明代理節(jié)點(diǎn)列表,獲取可用透明代理節(jié)點(diǎn)的位置信息及與所述透明代理節(jié)點(diǎn)連接的終端節(jié)點(diǎn)信息,所述的位置信息為節(jié)點(diǎn)的IP地址和端口號(hào);所述控制節(jié)點(diǎn)根據(jù)目標(biāo)終端節(jié)點(diǎn)的IP地址或ID號(hào)確定與所述目標(biāo)終端節(jié)點(diǎn)連接的透明代理節(jié)點(diǎn),并與之建立連接;聽述控制節(jié)點(diǎn)通過所述透明代理節(jié)點(diǎn)與所述目標(biāo)終端節(jié)點(diǎn)建立通信連接,進(jìn)行通信。本發(fā)明減少了企業(yè)網(wǎng)絡(luò)對(duì)互聯(lián)網(wǎng)公網(wǎng)IPv4地址的需求,使企業(yè)各子網(wǎng)在處于防火墻的保護(hù)之下時(shí),不額外開放端口也能互相訪問,提高了企業(yè)網(wǎng)的安全性。
文檔編號(hào)H04L29/12GK1710910SQ20051001218
公開日2005年12月21日 申請(qǐng)日期2005年7月14日 優(yōu)先權(quán)日2005年7月14日
發(fā)明者何韶軍, 郭世澤, 李基 , 牛偉, 段榕, 張永, 蘇享茂 申請(qǐng)人:何韶軍, 郭世澤, 李基 , 牛偉, 段榕, 張永, 蘇享茂
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1