本發(fā)明提供一種適用于電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址匹配的方法及系統(tǒng)。
背景技術(shù):
現(xiàn)有計(jì)算機(jī)系統(tǒng)無(wú)法進(jìn)行現(xiàn)實(shí)地址和其相應(yīng)的網(wǎng)絡(luò)地址(包含mac地址和ipv4、ipv6地址等ip地址)之間的實(shí)時(shí)匹配,即已知現(xiàn)實(shí)世界中的一個(gè)地址信息(如坐標(biāo)),現(xiàn)有計(jì)算機(jī)系統(tǒng)無(wú)法僅僅根據(jù)此地址信息實(shí)時(shí)獲得處于該地址的電子設(shè)備的網(wǎng)絡(luò)地址。例如,提供一個(gè)坐標(biāo)信息和海拔信息,現(xiàn)有計(jì)算機(jī)系統(tǒng)無(wú)法根據(jù)此信息判斷在該空間位置處是否有電子設(shè)備,若有,也無(wú)法獲得該電子設(shè)備的網(wǎng)絡(luò)地址。
或者,已知一個(gè)網(wǎng)絡(luò)地址(如mac地址或ip地址),現(xiàn)有計(jì)算機(jī)系統(tǒng)無(wú)法僅僅根據(jù)該網(wǎng)絡(luò)地址實(shí)時(shí)獲得使用該網(wǎng)絡(luò)地址的電子設(shè)備的現(xiàn)實(shí)地址。例如,提供一個(gè)ip地址,現(xiàn)有計(jì)算機(jī)系統(tǒng)無(wú)法確定是否有電子設(shè)備使用該ip地址(因并非所有接入網(wǎng)絡(luò)的電子設(shè)備都回應(yīng)網(wǎng)絡(luò)請(qǐng)求,故無(wú)法判斷),若有,也無(wú)法獲得使用該ip地址的電子設(shè)備的坐標(biāo)。
技術(shù)實(shí)現(xiàn)要素:
因此,本發(fā)明的目的在于提供一種適用于電子設(shè)備現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址匹配的方法及系統(tǒng),可以實(shí)現(xiàn)現(xiàn)實(shí)地址和網(wǎng)絡(luò)地址的相互匹配。
為了實(shí)現(xiàn)上述目的,本發(fā)明提供一種適用于電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址匹配的方法,其特點(diǎn)在于,包括:
通過服務(wù)器記錄電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址之間的對(duì)應(yīng)關(guān)系;
若收到客戶端的一查詢請(qǐng)求,所述服務(wù)器根據(jù)所述查詢請(qǐng)求中的一查詢信息與所述對(duì)應(yīng)關(guān)系進(jìn)行匹配,并返回一匹配結(jié)果至所述客戶端。
在本發(fā)明的一實(shí)施例中,所述的適用于電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址匹 配的方法還包括:
所述電子設(shè)備更新并保存當(dāng)前狀態(tài)至所述服務(wù)器,其中所述當(dāng)前狀態(tài)至少包括所述電子設(shè)備的所述現(xiàn)實(shí)地址和所述網(wǎng)絡(luò)地址。
在本發(fā)明的一實(shí)施例中,所述現(xiàn)實(shí)地址包括坐標(biāo),所述坐標(biāo)包括二維坐標(biāo)或多維坐標(biāo);所述網(wǎng)絡(luò)地址包括ip地址和/或mac地址。
在本發(fā)明的一實(shí)施例中,在所述對(duì)應(yīng)關(guān)系中,所述現(xiàn)實(shí)地址與所述網(wǎng)絡(luò)地址是直接的對(duì)應(yīng)關(guān)系。
在本發(fā)明的一實(shí)施例中,所述服務(wù)器是通過存儲(chǔ)一條目的方式來記錄所述對(duì)應(yīng)關(guān)系,所述條目至少包括所述現(xiàn)實(shí)地址、所述網(wǎng)絡(luò)地址及一輔助信息,其中所述輔助信息含有零項(xiàng)或一項(xiàng)或多項(xiàng)信息。
在本發(fā)明的一實(shí)施例中,在所述對(duì)應(yīng)關(guān)系中,所述現(xiàn)實(shí)地址與所述網(wǎng)絡(luò)地址是一重或多重間接的對(duì)應(yīng)關(guān)系。
在本發(fā)明的一實(shí)施例中,所述服務(wù)器是通過存儲(chǔ)至少二條目的方式來記錄所述對(duì)應(yīng)關(guān)系,其中第一條目至少包括所述現(xiàn)實(shí)地址及一第一輔助信息,所述第二條目至少包括所述網(wǎng)絡(luò)地址及一第二輔助信息,所述第一輔助信息及所述第二輔助信息均含有一項(xiàng)或多項(xiàng)信息,且所述第一輔助信息和所述第二輔助信息具有直接或間接的對(duì)應(yīng)關(guān)系。
在本發(fā)明的一實(shí)施例中,當(dāng)所述第一輔助信息與所述第二輔助信息含有的信息沒有對(duì)應(yīng)關(guān)系時(shí),所述服務(wù)器還存儲(chǔ)第三條目,所述第三條目包含所述第一輔助信息與第二輔助信息的對(duì)應(yīng)關(guān)系。
在本發(fā)明的一實(shí)施例中,所述當(dāng)前狀態(tài)還包括時(shí)間戳、類別、及時(shí)間閾值中的至少一種;其中,所述時(shí)間戳為所述電子設(shè)備保存當(dāng)前狀態(tài)時(shí)的時(shí)間;所述類別為所述電子設(shè)備的類別;所述時(shí)間閾值為所述電子設(shè)備的當(dāng)前狀態(tài)的穩(wěn)定時(shí)間的估計(jì)值。
在本發(fā)明的一實(shí)施例中,所述電子設(shè)備更新并保存當(dāng)前狀態(tài)至所述服務(wù)器的步驟包括以下步驟中的至少之一:
所述電子設(shè)備檢查當(dāng)前時(shí)間戳,若距離上次發(fā)送已過一發(fā)送周期,所述電子設(shè)備更新并保存新的當(dāng)前狀態(tài)至所述服務(wù)器;
若所述電子設(shè)備的ip地址發(fā)生變化,所述電子設(shè)備更新并保存當(dāng)前狀態(tài)至所述服務(wù)器;
若所述電子設(shè)備的坐標(biāo)發(fā)生變化且其變化范圍超過一精度,所述電子設(shè)備更新并保存當(dāng)前狀態(tài)至所述服務(wù)器。
在本發(fā)明的一實(shí)施例中,所述查詢信息包括所述坐標(biāo)、所述ip地址、所述mac地址或所述輔助信息。
在本發(fā)明的一實(shí)施例中,所述服務(wù)器根據(jù)所述查詢請(qǐng)求中的一查詢信息與所述對(duì)應(yīng)關(guān)系進(jìn)行匹配的步驟中還包括:
所述服務(wù)器按照tcp/ip協(xié)議將所述查詢信息提供的所述ip地址或所述mac地址轉(zhuǎn)換為所述mac地址或所述ip地址。
在本發(fā)明的一實(shí)施例中,當(dāng)所述客戶端提供坐標(biāo)查詢相應(yīng)的網(wǎng)絡(luò)地址時(shí),所述服務(wù)器返回的所述匹配結(jié)果是一個(gè)網(wǎng)絡(luò)地址集合。
為了實(shí)現(xiàn)上述目的,本發(fā)明還另提供一種適用于電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址匹配的系統(tǒng),其特點(diǎn)在于,包括服務(wù)器、客戶端及電子設(shè)備,所述客戶端及所述電子設(shè)備均與所述服務(wù)器通信連接,其中:
所述電子設(shè)備,用于更新并保存當(dāng)前狀態(tài)至所述服務(wù)器,所述當(dāng)前狀態(tài)至少包括所述電子設(shè)備的現(xiàn)實(shí)地址和網(wǎng)絡(luò)地址;
所述客戶端,用于發(fā)送一查詢請(qǐng)求至所述服務(wù)器;
所述服務(wù)器,用于記錄所述電子設(shè)備的所述現(xiàn)實(shí)地址與所述網(wǎng)絡(luò)地址之間的對(duì)應(yīng)關(guān)系,并在收到所述客戶端的所述查詢請(qǐng)求時(shí),根據(jù)所述查詢請(qǐng)求中的一查詢信息與所述對(duì)應(yīng)關(guān)系進(jìn)行匹配,并返回一匹配結(jié)果至所述客戶端。
在本發(fā)明的另一實(shí)施例中,所述現(xiàn)實(shí)地址包括坐標(biāo),所述坐標(biāo)包括二維坐標(biāo)或多維坐標(biāo);所述網(wǎng)絡(luò)地址包括ip地址和/或mac地址。
在本發(fā)明的另一實(shí)施例中,所述當(dāng)前狀態(tài)還包括時(shí)間戳、類別、及時(shí)間閾值中的至少一種;其中,所述時(shí)間戳為所述電子設(shè)備保存當(dāng)前狀態(tài)時(shí)的時(shí)間;所述類別為所述電子設(shè)備的類別;所述時(shí)間閾值為所述電子設(shè)備的當(dāng)前狀態(tài)的穩(wěn)定時(shí)間的估計(jì)值;所述查詢信息包括所述坐標(biāo)、所述ip地址、所述mac地址或輔助信息。
在本發(fā)明的另一實(shí)施例中,在所述對(duì)應(yīng)關(guān)系中,所述現(xiàn)實(shí)地址與所述網(wǎng)絡(luò)地址是直接的對(duì)應(yīng)關(guān)系;所述服務(wù)器是通過存儲(chǔ)一條目的方式來記錄所述對(duì)應(yīng)關(guān)系,所述條目至少包括所述現(xiàn)實(shí)地址、所述網(wǎng)絡(luò)地址及一輔助信息,其中所述輔助信息含有零項(xiàng)或一項(xiàng)或多項(xiàng)信息。
在本發(fā)明的另一實(shí)施例中,在所述對(duì)應(yīng)關(guān)系中,所述現(xiàn)實(shí)地址與所述網(wǎng)絡(luò)地址是一重或多重間接的對(duì)應(yīng)關(guān)系;所述服務(wù)器是通過存儲(chǔ)至少二條目的方式來記錄所述對(duì)應(yīng)關(guān)系,其中第一條目至少包括所述現(xiàn)實(shí)地址及一第一輔助信息,所述第二條目至少包括所述網(wǎng)絡(luò)地址及一第二輔助信息,所述第一輔助信息及所述第二輔助信息均含有一項(xiàng)或多項(xiàng)信息,且所述第一輔助信息和所述第二輔助信息具有直接或間接的對(duì)應(yīng)關(guān)系。
在本發(fā)明的另一實(shí)施例中,當(dāng)所述第一輔助信息與所述第二輔助信息含有的信息沒有對(duì)應(yīng)關(guān)系時(shí),所述服務(wù)器還存儲(chǔ)第三條目,所述第三條目包含所述第一輔助信息與第二輔助信息的對(duì)應(yīng)關(guān)系
在本發(fā)明的另一實(shí)施例中,所述服務(wù)器還用于按照tcp/ip協(xié)議將所述查詢信息提供的ip地址或mac地址轉(zhuǎn)換為mac地址或ip地址。
通過本發(fā)明的方法和系統(tǒng),可以實(shí)現(xiàn)現(xiàn)實(shí)地址和網(wǎng)絡(luò)地址的相互匹配,每一個(gè)匹配點(diǎn)猶如膠水一般將網(wǎng)絡(luò)世界和現(xiàn)實(shí)世界粘合在一起,拉近現(xiàn)實(shí)世界和網(wǎng)絡(luò)世界的距離,利于將網(wǎng)絡(luò)世界與現(xiàn)實(shí)世界相互融合,為人們的生活提供便利。
附圖說明
為讓本發(fā)明的上述和其他目的、特征、優(yōu)點(diǎn)與實(shí)施例能更明顯易懂,所附附圖的說明如下:
圖1a是本發(fā)明一較佳的適用于電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址匹配的系統(tǒng)的架構(gòu)示意圖;
圖1b是本發(fā)明另一較佳的適用于電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址匹配的系統(tǒng)的架構(gòu)示意圖;
圖2是本發(fā)明的適用于電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址匹配的方法的示意圖;
圖3是本發(fā)明的系統(tǒng)的第一種工作方式中電子設(shè)備的工作流程;
圖4是本發(fā)明的系統(tǒng)的第一種工作方式中服務(wù)器的工作流程;
圖5是本發(fā)明的系統(tǒng)的第二種工作方式中電子設(shè)備的工作流程;
圖6是本發(fā)明的系統(tǒng)的第二種工作方式中服務(wù)器的工作流程。
具體實(shí)施方式
下文是舉實(shí)施例配合所附附圖作詳細(xì)說明,但所提供的實(shí)施例并非用以限制本發(fā)明所涵蓋的范圍。
本發(fā)明的適用于電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址匹配的系統(tǒng)主要包括客戶端、電子設(shè)備和服務(wù)器三個(gè)部分,其中,所述客戶端和所述電子設(shè)備是與所述服務(wù)器通信連接。如圖1a所示,示出了本發(fā)明一較佳的適用于電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址匹配的系統(tǒng)的架構(gòu),在此實(shí)施例中,多個(gè)電子設(shè)備和多個(gè)客戶端是分別與一服務(wù)器通信連接。如圖1b所示,示出了本發(fā)明另一較佳的適用于電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址匹配的系統(tǒng)的架構(gòu),在此實(shí)施例中,系統(tǒng)包括由多個(gè)服務(wù)器構(gòu)成的服務(wù)器單元、由多個(gè)電子設(shè)備構(gòu)成的電子設(shè)備單元、以及由多個(gè)客戶端構(gòu)成的客戶端單元,其中,所述電子設(shè)備單元和所述客戶端單元是與所述服務(wù)器單元通信連接。
在本發(fā)明中,所述電子設(shè)備是用于更新并保存當(dāng)前狀態(tài)至所述服務(wù)器,所述當(dāng)前狀態(tài)至少包括所述電子設(shè)備的現(xiàn)實(shí)地址和網(wǎng)絡(luò)地址,所述現(xiàn)實(shí)地址例如可包括坐標(biāo),所述坐標(biāo)包括二維坐標(biāo)或多維坐標(biāo);所述網(wǎng)絡(luò)地址例如可包括ip地址和/或mac地址。所述客戶端是用于發(fā)送一查詢請(qǐng)求至所述服務(wù)器。所述服務(wù)器是用于記錄所述電子設(shè)備的所述現(xiàn)實(shí)地址與所述網(wǎng)絡(luò)地址之間的對(duì)應(yīng)關(guān)系,并在收到所述客戶端的所述查詢請(qǐng)求時(shí),根據(jù)所述查詢請(qǐng)求中的一查詢信息與所述對(duì)應(yīng)關(guān)系進(jìn)行匹配,并返回一匹配結(jié)果至所述客戶端,所述查詢信息例如可包括坐標(biāo)、ip地址、mac地址或輔助信息等。
在本發(fā)明的其它實(shí)施例中,所述電子設(shè)備的當(dāng)前狀態(tài)還可包括時(shí)間戳、類別、及時(shí)間閾值中的至少一種。其中,所述時(shí)間戳為所述電子設(shè)備保存當(dāng)前狀態(tài)時(shí)的時(shí)間;所述類別為所述電子設(shè)備的類別;所述時(shí)間閾值為所述電子設(shè)備的當(dāng)前狀態(tài)的穩(wěn)定時(shí)間的估計(jì)值。
如圖2所示,本發(fā)明的一種適用于電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址匹配的方法主要包括:
通過服務(wù)器記錄電子設(shè)備的現(xiàn)實(shí)地址與網(wǎng)絡(luò)地址之間的對(duì)應(yīng)關(guān)系;
若收到客戶端的一查詢請(qǐng)求,所述服務(wù)器根據(jù)所述查詢請(qǐng)求中的一查詢信息與所述對(duì)應(yīng)關(guān)系進(jìn)行匹配,并返回一匹配結(jié)果至所述客戶端。
在本發(fā)明的一實(shí)施例中,在所述對(duì)應(yīng)關(guān)系中,所述現(xiàn)實(shí)地址與所述網(wǎng)絡(luò)地 址可以是直接的對(duì)應(yīng)關(guān)系。在此情況下,所述服務(wù)器可以通過存儲(chǔ)一條目的方式來記錄所述對(duì)應(yīng)關(guān)系,而所述條目至少包括所述現(xiàn)實(shí)地址、所述網(wǎng)絡(luò)地址及一輔助信息,其中所述輔助信息含有零項(xiàng)或一項(xiàng)或多項(xiàng)信息。
在本發(fā)明的另一實(shí)施例中,在所述對(duì)應(yīng)關(guān)系中,所述現(xiàn)實(shí)地址與所述網(wǎng)絡(luò)地址可以是一重或多重間接的對(duì)應(yīng)關(guān)系。在此情況下,所述服務(wù)器可以通過存儲(chǔ)至少二條目的方式來記錄所述對(duì)應(yīng)關(guān)系,其中第一條目至少包括所述現(xiàn)實(shí)地址及一第一輔助信息,所述第二條目至少包括所述網(wǎng)絡(luò)地址及一第二輔助信息,而所述第一輔助信息及所述第二輔助信息均含有一項(xiàng)或多項(xiàng)信息,且所述第一輔助信息和所述第二輔助信息具有直接或間接的對(duì)應(yīng)關(guān)系。當(dāng)所述第一輔助信息與所述第二輔助信息含有相匹配的信息時(shí),通過所述相匹配的信息即可確定所述現(xiàn)實(shí)地址和所述網(wǎng)絡(luò)地址之間的對(duì)應(yīng)關(guān)系。而當(dāng)所述第一輔助信息與所述第二輔助信息含有的信息沒有對(duì)應(yīng)關(guān)系(如未含有相匹配的信息)時(shí),所述服務(wù)器還存儲(chǔ)有第三條目,所述第三條目包括所述第一輔助信息與所述第二輔助信息的對(duì)應(yīng)關(guān)系,通過第一~第三條目即可確定所述現(xiàn)實(shí)地址和所述網(wǎng)絡(luò)地址之間的對(duì)應(yīng)關(guān)系。當(dāng)然,可以理解的是,在其它實(shí)施例中,當(dāng)所述第一輔助信息與所述第二輔助信息未含有相匹配的信息時(shí),所述服務(wù)器還可以存儲(chǔ)有其它的條目,通過這些條目之間的多重間接對(duì)應(yīng)關(guān)系來確定所述現(xiàn)實(shí)地址和所述網(wǎng)絡(luò)地址之間的對(duì)應(yīng)關(guān)系,這些并不作為對(duì)本發(fā)明的限制。
在本發(fā)明中,所述電子設(shè)備更新并保存當(dāng)前狀態(tài)至所述服務(wù)器的步驟包括以下步驟(1)~(3)中的至少之一:
(1)所述電子設(shè)備檢查當(dāng)前時(shí)間戳,若距離上次發(fā)送已過一發(fā)送周期,所述電子設(shè)備更新并保存新的當(dāng)前狀態(tài)至所述服務(wù)器;
(2)若所述電子設(shè)備的ip地址發(fā)生變化,所述電子設(shè)備更新并保存當(dāng)前狀態(tài)至所述服務(wù)器;
(3)若所述電子設(shè)備的坐標(biāo)發(fā)生變化且其變化范圍超過一精度,所述電子設(shè)備更新并保存當(dāng)前狀態(tài)至所述服務(wù)器。
在本發(fā)明中,所述服務(wù)器還可以對(duì)所述客戶端提供轉(zhuǎn)換服務(wù)。也即,在所述服務(wù)器根據(jù)所述查詢請(qǐng)求中的一查詢信息與所述對(duì)應(yīng)關(guān)系進(jìn)行匹配的步驟中,所述服務(wù)器可以按照tcp/ip協(xié)議將所述查詢信息提供的所述ip地址或所述mac地址轉(zhuǎn)換為所述mac地址或所述ip地址。
本發(fā)明的系統(tǒng)可以有多種工作方式,以下以第一實(shí)施例和第二實(shí)施例分別說明本發(fā)明的系統(tǒng)的兩種工作方式:
<第一實(shí)施例>
本實(shí)施例為第一種工作方式,在此工作方式中,服務(wù)器對(duì)每一個(gè)電子設(shè)備都存儲(chǔ)如下相對(duì)應(yīng)的信息條目,(坐標(biāo),ip,mac,時(shí)間戳,時(shí)間閾值),其中,坐標(biāo)為該電子設(shè)備的當(dāng)前坐標(biāo),可以是二維坐標(biāo)或多維坐標(biāo);ip為該電子設(shè)備的最新ip地址;mac為該電子設(shè)備的mac地址;時(shí)間戳為該電子設(shè)備保存當(dāng)前狀態(tài)時(shí)的時(shí)間(即當(dāng)前條目最近一次更新的時(shí)間);時(shí)間閾值為該電子設(shè)備的當(dāng)前狀態(tài)的穩(wěn)定時(shí)間的估計(jì)值(即對(duì)當(dāng)前條目穩(wěn)定時(shí)間的估計(jì)值)。在本發(fā)明中,條目的表達(dá)方式(a,b)表示該條目至少包含a和b,條目(a,b,c)表示該條目至少包含a、b和c,以此類推。服務(wù)器條目中的時(shí)間閾值可有多種更新模型。
考慮到電子設(shè)備有可能發(fā)生位移,即其坐標(biāo)可能會(huì)發(fā)生變化,其ip地址可能會(huì)重新分配而發(fā)生變化,該電子設(shè)備也有可能會(huì)因其他因素而處于離線狀態(tài)。因此,客戶端、電子設(shè)備和服務(wù)器分別按如下方式工作。
設(shè)置系統(tǒng)參數(shù),包括設(shè)置坐標(biāo)精度為p、電子設(shè)備發(fā)送周期為t、服務(wù)器搜尋坐標(biāo)范圍為n、以及系統(tǒng)超時(shí)時(shí)間為t等。超時(shí)時(shí)間t的設(shè)置可以保證系統(tǒng)的實(shí)時(shí)性。
在此工作方式下,整個(gè)系統(tǒng)的工作流程如下:
客戶端
利用客戶端可以進(jìn)行以下操作:
(1)輸入坐標(biāo),查詢ip地址;
(2)輸入坐標(biāo),查詢mac地址;
(3)輸入ip地址,查詢坐標(biāo);
(4)輸入mac地址,查詢坐標(biāo)。
電子設(shè)備
如圖3所示,電子設(shè)備的工作流程如下:
(1)初始化,保存自身當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳),并將當(dāng)前狀態(tài)發(fā)送至服務(wù)器,其中坐標(biāo)為電子設(shè)備當(dāng)前坐標(biāo),ip為電子設(shè)備當(dāng)前ip地址,mac為電子設(shè)備當(dāng)前mac地址,時(shí)間戳為電子設(shè)備保存當(dāng)前狀態(tài)時(shí) 的時(shí)間,類別為電子設(shè)備的類別;
(2)檢查當(dāng)前時(shí)間戳,若距離上次發(fā)送已過發(fā)送周期t,向服務(wù)器發(fā)送自身新的當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(3)檢查自身ip地址,若ip地址發(fā)生變化,向服務(wù)器發(fā)送(坐標(biāo),ip,mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(4)檢查自身坐標(biāo),若自身坐標(biāo)發(fā)生變化,且其變化范圍超過精度p,向服務(wù)器發(fā)送(坐標(biāo),ip,mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(5)若收到服務(wù)器的心跳,向服務(wù)器發(fā)送當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(6)回到第(2)步。
服務(wù)器
如圖4所示,服務(wù)器的工作流程如下:
(1)初始化,清除所有條目;
(2)若收到電子設(shè)備發(fā)送的(坐標(biāo),ip,mac,時(shí)間戳),因每個(gè)電子設(shè)備擁有唯一mac地址,查看對(duì)應(yīng)的mac地址的條目是否已存在;若不存在,則保存為(坐標(biāo),ip,mac,時(shí)間戳,時(shí)間閾值),其中前四項(xiàng)(坐標(biāo),ip,mac,時(shí)間戳)為電子設(shè)備所發(fā)送的數(shù)據(jù),初始時(shí)間閾值為0;若已存在,則更新對(duì)應(yīng)的條目,更新方法如下:首先查看ip地址是否發(fā)生變化,若發(fā)生變化,則更新(坐標(biāo),ip,時(shí)間戳)為電子設(shè)備最新發(fā)送的數(shù)據(jù),時(shí)間閾值清零;若ip地址沒有變化,則查看坐標(biāo)是否發(fā)生變化,若坐標(biāo)發(fā)生變化且其變化范圍超過精度p,則更新(坐標(biāo),ip,時(shí)間戳)為電子設(shè)備最新發(fā)送的數(shù)據(jù);若ip地址無(wú)變化,且坐標(biāo)也在精度p的范圍內(nèi)變化,則更新時(shí)間戳和時(shí)間閾值,新的時(shí)間閾值=舊的時(shí)間閾值+(新的時(shí)間戳-舊的時(shí)間戳)*0.5;
(3)若收到客戶端查詢請(qǐng)求,且客戶端提供的是mac,查詢相對(duì)應(yīng)的坐標(biāo),則尋找服務(wù)器中所有條目;若存在這樣的條目,其mac地址為客戶端所提供的mac地址,返回此條目中的坐標(biāo)信息給客戶端;若不存在這樣的條目,則返回空給客戶端;
(4)若收到客戶端查詢請(qǐng)求,且客戶端提供的是ip,查詢相對(duì)應(yīng)的坐標(biāo),則尋找服務(wù)器中所有條目,若存在這樣的條目,其ip地址為客戶端所提供的ip,返回此條目中的坐標(biāo)信息給客戶端;若不存在這樣的條目,則返回空給客 戶端;
(5)若收到客戶端的查詢請(qǐng)求,客戶端提供的是坐標(biāo)信息,查詢對(duì)應(yīng)的ip或mac,則尋找服務(wù)器中所有條目,考慮到有的電子設(shè)備處于移動(dòng)的過程中,其實(shí)際坐標(biāo)會(huì)發(fā)生變化,服務(wù)器尋找坐標(biāo)處于客戶端所提供的坐標(biāo)周圍范圍n之內(nèi)的條目,這樣的條目集合為set1,對(duì)set1中的每一個(gè)條目做如下處理:若當(dāng)前的系統(tǒng)時(shí)間戳<=條目中的時(shí)間戳+條目中的時(shí)間閾值,將當(dāng)前條目加入set2;若當(dāng)前的時(shí)間戳大于條目中的時(shí)間戳+條目中的時(shí)間閾值,向條目中的ip地址發(fā)送心跳信息,設(shè)置超時(shí)時(shí)間t,準(zhǔn)備接受電子設(shè)備發(fā)送的(坐標(biāo),ip,mac,時(shí)間戳),若在超時(shí)時(shí)間內(nèi)收到來自電子設(shè)備的回應(yīng),按第(2)步處理,之后將本條目加入set2;若在超時(shí)時(shí)間內(nèi)未收到回應(yīng),則刪除服務(wù)器中與本條目相對(duì)應(yīng)的條目;在set2中尋找處于用戶所提供的坐標(biāo)周圍范圍為精度p之內(nèi)的條目,將此條目加入set3,向客戶端返回set3中的ip地址集合或mac地址集合;
(6)回到第(2)步;
<第二實(shí)施例>
本實(shí)施例為第二種工作方式,在此工作方式下,服務(wù)器對(duì)每一個(gè)電子設(shè)備都存儲(chǔ)如下相對(duì)應(yīng)的信息條目,(坐標(biāo),mac,時(shí)間戳,時(shí)間閾值),其中,坐標(biāo)為該電子設(shè)備的當(dāng)前坐標(biāo),可以是二維坐標(biāo)或多維坐標(biāo);mac為該電子設(shè)備的mac地址;時(shí)間戳為該電子設(shè)備保存當(dāng)前狀態(tài)時(shí)的時(shí)間(即當(dāng)前條目最近一次更新的時(shí)間);時(shí)間閾值為該電子設(shè)備的當(dāng)前狀態(tài)的穩(wěn)定時(shí)間的估計(jì)值(即對(duì)當(dāng)前條目穩(wěn)定時(shí)間的估計(jì)值)。
在此工作方式下,整個(gè)系統(tǒng)的工作流程如下:
客戶端
利用客戶端可以進(jìn)行以下操作:
(1)輸入坐標(biāo),查詢ip地址;
(2)輸入坐標(biāo),查詢mac地址;
(3)輸入ip地址,查詢坐標(biāo);
(4)輸入mac地址,查詢坐標(biāo)。
電子設(shè)備
如圖5所示,電子設(shè)備的工作流程如下:
(1)初始化,保存自身當(dāng)前狀態(tài)(坐標(biāo),mac,時(shí)間戳),并將當(dāng)前狀態(tài)發(fā)送至服務(wù)器,其中坐標(biāo)為電子設(shè)備當(dāng)前坐標(biāo),mac為電子設(shè)備當(dāng)前mac地址,時(shí)間戳為電子設(shè)備保存當(dāng)前狀態(tài)時(shí)的時(shí)間,類別為電子設(shè)備的類別;
(2)檢查當(dāng)前時(shí)間戳,若距離上次發(fā)送已過發(fā)送周期t,向服務(wù)器發(fā)送自身新的當(dāng)前狀態(tài)(坐標(biāo),mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(3)檢查自身坐標(biāo),若自身坐標(biāo)發(fā)生變化,且其變化范圍超過精度p,向服務(wù)器發(fā)送(坐標(biāo),mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(4)若收到服務(wù)器的心跳,向服務(wù)器發(fā)送當(dāng)前狀態(tài)(坐標(biāo),mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(5)回到第(2)步。
服務(wù)器
如圖6所示,服務(wù)器的工作流程如下:
(1)初始化,清除所有條目;
(2)若收到電子設(shè)備發(fā)送的(坐標(biāo),mac,時(shí)間戳),因每個(gè)電子設(shè)備擁有唯一mac地址,查看對(duì)應(yīng)的mac地址的條目是否已存在;若不存在,則保存為(坐標(biāo),mac,時(shí)間戳,時(shí)間閾值),前三項(xiàng)(坐標(biāo),mac,時(shí)間戳)為電子設(shè)備所發(fā)送的數(shù)據(jù),初始時(shí)間閾值設(shè)為0;若已存在,則更新對(duì)應(yīng)的條目,更新方法如下:查看坐標(biāo)是否發(fā)生變化,若坐標(biāo)發(fā)生變化且其變化范圍超過精度p,則更新(坐標(biāo),mac,時(shí)間戳)為電子設(shè)備最新發(fā)送的數(shù)據(jù);若坐標(biāo)在精度p的范圍內(nèi)變化,則更新時(shí)間戳和時(shí)間閾值,新的時(shí)間閾值=舊的時(shí)間閾值+(新的時(shí)間戳-舊的時(shí)間戳)*0.5;
(3)若收到客戶端查詢請(qǐng)求,且客戶端提供的是mac,查詢相對(duì)應(yīng)的坐標(biāo),則尋找服務(wù)器中所有條目,若存在這樣的條目,其mac地址為客戶端所提供的mac地址,返回此條目中的坐標(biāo)信息給客戶端;若不存在這樣的條目,則返回空給客戶端;
(4)若收到客戶端查詢請(qǐng)求,且客戶端提供的是ip,查詢相對(duì)應(yīng)的坐標(biāo),則首先根據(jù)tcp/ip協(xié)議將其轉(zhuǎn)換為mac地址,若轉(zhuǎn)換失敗,則返回空給客戶端;若成功則尋找服務(wù)器中所有條目,若存在這樣的條目,其mac地址為轉(zhuǎn)換后的mac地址,返回此條目中的坐標(biāo)信息給客戶端;若不存在這樣的條目,則返回空給客戶端;
(5)若收到客戶端的查詢請(qǐng)求,且客戶端提供的是坐標(biāo)信息,查詢對(duì)應(yīng)的mac地址,則尋找服務(wù)器中所有條目,考慮到有的電子設(shè)備處于移動(dòng)的過程中,其實(shí)際坐標(biāo)會(huì)發(fā)生變化,服務(wù)器尋找坐標(biāo)處于客戶端所提供的坐標(biāo)周圍范圍n之內(nèi)的條目,這樣的條目集合為set1,對(duì)set1中的每一個(gè)條目做如下處理:若當(dāng)前的時(shí)間戳<=條目中的時(shí)間戳+條目中的時(shí)間閾值,將當(dāng)前條目加入set2;若當(dāng)前的時(shí)間戳大于條目中的時(shí)間戳+條目中的時(shí)間閾值,向條目中的ip地址發(fā)送心跳信息,設(shè)置超時(shí)時(shí)間t,準(zhǔn)備接受電子設(shè)備發(fā)送的(坐標(biāo),mac,時(shí)間戳),若在超時(shí)時(shí)間內(nèi)收到來自電子設(shè)備的回應(yīng),按第(2)步處理,之后將本條目加入set2;若在超時(shí)時(shí)間內(nèi)未收到回應(yīng),則刪除服務(wù)器中與本條目相對(duì)應(yīng)的條目;在set2中尋找處于用戶所提供的地標(biāo)周圍范圍為精度p之內(nèi)的條目,將此條目加入set3,最后向客戶端返回set3中的mac地址集合;
(6)若收到客戶端的查詢請(qǐng)求,且客戶端提供的是坐標(biāo)信息,查詢對(duì)應(yīng)的ip地址,則首先按第(5)步處理,得到set3之后,對(duì)set3內(nèi)的每一個(gè)條目作如下操作:提取條目中的mac地址,按tcp/ip協(xié)議將其轉(zhuǎn)換為ip地址,若轉(zhuǎn)換成功,將轉(zhuǎn)換后的ip地址加入set4;向客戶端返回set4(ip地址集合);
(7)回到第(2)步。
在本發(fā)明中,還可對(duì)整個(gè)系統(tǒng)進(jìn)行優(yōu)化,即對(duì)電子設(shè)備進(jìn)行分類,服務(wù)器對(duì)每一個(gè)類別均設(shè)置一個(gè)對(duì)應(yīng)的集合,在此集合中每一個(gè)電子設(shè)備均有對(duì)應(yīng)的條目。不同的集合實(shí)行不同的操作,設(shè)置不同的系統(tǒng)參數(shù)。
譬如,將電子設(shè)備分為靜止電子設(shè)備和移動(dòng)電子設(shè)備兩個(gè)類別,以下第三實(shí)施例和第四實(shí)施例為對(duì)第一種工作方式和第二種工作方式進(jìn)行優(yōu)化的相應(yīng)實(shí)例。
<第三實(shí)施例>
本實(shí)施例是對(duì)第一種工作方式的系統(tǒng)進(jìn)行優(yōu)化,以下為此優(yōu)化系統(tǒng)在第一種工作方式下的工作流程:
客戶端
利用客戶端可以進(jìn)行以下操作:
(1)輸入坐標(biāo),查詢ip地址;
(2)輸入坐標(biāo),查詢mac地址;
(3)輸入ip地址,查詢坐標(biāo);
(4)輸入mac地址,查詢坐標(biāo)。
電子設(shè)備
電子設(shè)備的工作流程如下:
(1)初始化,保存自身當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳,類別),并將當(dāng)前狀態(tài)發(fā)送至服務(wù)器,其中坐標(biāo)為電子設(shè)備當(dāng)前坐標(biāo),ip為電子設(shè)備當(dāng)前ip地址,mac為電子設(shè)備當(dāng)前mac地址,時(shí)間戳為電子設(shè)備保存當(dāng)前狀態(tài)時(shí)的時(shí)間,類別為電子設(shè)備的類別;
(2)檢查當(dāng)前時(shí)間戳,若距離上次發(fā)送已過發(fā)送周期t,向服務(wù)器發(fā)送自身新的當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳,類別),更新并保存為當(dāng)前狀態(tài),對(duì)于靜止電子設(shè)備而言,可將發(fā)送周期t設(shè)置為較長(zhǎng)的時(shí)間,如一個(gè)月,對(duì)于移動(dòng)電子設(shè)備而言,可將發(fā)送周期t設(shè)置為較短的時(shí)間,如一個(gè)小時(shí);
(3)檢查自身ip地址,若ip地址發(fā)生變化,向服務(wù)器發(fā)送(坐標(biāo),ip,mac,時(shí)間戳,類別),更新并保存為當(dāng)前狀態(tài);
(4)檢查自身坐標(biāo),若自身坐標(biāo)發(fā)生變化,且其變化范圍超過精度p,向服務(wù)器發(fā)送(坐標(biāo),ip,mac,時(shí)間戳,類別),更新并保存為當(dāng)前狀態(tài);
(5)若收到服務(wù)器的心跳,向服務(wù)器發(fā)送當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳,類別),更新并保存為當(dāng)前狀態(tài);
(6)回到第(2)步。
服務(wù)器
服務(wù)器工作流程如下:
(1)初始化,清除所有條目,為每一個(gè)類別設(shè)置一個(gè)集合,在此為兩個(gè)集合,分別對(duì)應(yīng)靜止電子設(shè)備和移動(dòng)電子設(shè)備;
(2)若收到電子設(shè)備發(fā)送的(坐標(biāo),ip,mac,時(shí)間戳,類別),因每個(gè)電子設(shè)備擁有唯一mac地址,查看相應(yīng)類別的集合中對(duì)應(yīng)的mac地址的條目是否已存在;若不存在,則保存為(坐標(biāo),ip,mac,時(shí)間戳,時(shí)間閾值),前四項(xiàng)(坐標(biāo),ip,mac,時(shí)間戳)為電子設(shè)備所發(fā)送的數(shù)據(jù),初始時(shí)間閾值設(shè)為0;若已存在,則更新對(duì)應(yīng)的條目,更新方法如下:首先查看ip 地址是否發(fā)生變化,若發(fā)生變化,則更新(坐標(biāo),ip,時(shí)間戳)為電子設(shè)備最新發(fā)送的數(shù)據(jù),時(shí)間閾值清零;若ip地址沒有變化,則查看坐標(biāo)是否發(fā)生變化,若坐標(biāo)發(fā)生變化且其變化范圍超過精度p,則更新(坐標(biāo),ip,時(shí)間戳)為電子設(shè)備最新發(fā)送的數(shù)據(jù);若ip地址無(wú)變化,且坐標(biāo)也在精度p的范圍內(nèi)變化,則更新時(shí)間戳和時(shí)間閾值,新的時(shí)間閾值=舊的時(shí)間閾值+(新的時(shí)間戳-舊的時(shí)間戳)*0.5;
(3)若收到客戶端查詢請(qǐng)求,且客戶端提供的是mac,查詢對(duì)應(yīng)的坐標(biāo),則尋找服務(wù)器中所有集合中的所有條目,若存在這樣的條目,其mac地址為客戶端所提供的mac地址,返回此條目中的坐標(biāo)信息給客戶端;若不存在這樣的條目,則返回空給客戶端;
(4)若收到客戶端查詢請(qǐng)求,且客戶端提供的是ip,查詢對(duì)應(yīng)的坐標(biāo),則尋找服務(wù)器中所有集合中的所有條目,若存在這樣的條目,其ip地址為客戶端所提供的ip,返回此條目中的坐標(biāo)信息給客戶端;若不存在這樣的條目,則返回空給客戶端;
(5)若收到客戶端的查詢請(qǐng)求,且客戶端提供的是坐標(biāo)信息,查詢對(duì)應(yīng)的ip地址或mac地址,則同時(shí)尋找服務(wù)器中所有集合,不同類別的集合,實(shí)行的操作也不一樣。在靜止電子設(shè)備的集合中,尋找處于客戶端所提供的地標(biāo)范圍周圍為精度p之內(nèi)的條目,將此條目加入set3;在移動(dòng)電子設(shè)備的集合中,考慮到電子設(shè)備處于移動(dòng)的過程中,其實(shí)際坐標(biāo)會(huì)發(fā)生變化,服務(wù)器尋找坐標(biāo)處于用戶所提供的坐標(biāo)周圍范圍n之內(nèi)的條目,這樣的條目集合為set1,對(duì)set1中的每一個(gè)條目做如下處理:若當(dāng)前的時(shí)間戳<=條目中的時(shí)間戳+條目中的時(shí)間閾值,將當(dāng)前條目加入set2;若當(dāng)前的時(shí)間戳大于條目中的時(shí)間戳+條目中的時(shí)間閾值,向條目中的ip地址發(fā)送心跳信息,設(shè)置超時(shí)時(shí)間t,準(zhǔn)備接受電子設(shè)備發(fā)送的(坐標(biāo),ip,mac,時(shí)間戳,類別),若在超時(shí)時(shí)間內(nèi)收到來自電子設(shè)備的回應(yīng),按第二步處理,之后將本條目加入set2;若在超時(shí)時(shí)間t內(nèi)未收到回應(yīng),則刪除服務(wù)器中與本條目相對(duì)應(yīng)的條目;在set2中尋找處于用戶所提供的地標(biāo)周圍范圍為精度p之內(nèi)的條目,將此條目加入set3;向客戶端返回set3中的ip地址集合或mac地址集合;
(6)回到第(2)步;
<第四實(shí)施例>
本實(shí)施例是對(duì)第二種工作方式的系統(tǒng)進(jìn)行優(yōu)化,以下為此優(yōu)化系統(tǒng)在此第二種工作方式下的工作流程:
客戶端
利用客戶端可以進(jìn)行以下操作:
(1)輸入坐標(biāo),查詢ip地址;
(2)輸入坐標(biāo),查詢mac地址;
(3)輸入ip地址,查詢坐標(biāo);
(4)輸入mac地址,查詢坐標(biāo)。
電子設(shè)備
電子設(shè)備的工作流程如下:
(1)初始化,保存自身當(dāng)前狀態(tài)(坐標(biāo),mac,時(shí)間戳,類別),并將當(dāng)前狀態(tài)發(fā)送至服務(wù)器,其中坐標(biāo)為電子設(shè)備當(dāng)前坐標(biāo),mac為電子設(shè)備當(dāng)前mac地址,時(shí)間戳為電子設(shè)備保存當(dāng)前狀態(tài)時(shí)的時(shí)間,類別為電子設(shè)備的類別;
(2)檢查當(dāng)前時(shí)間戳,若距離上次發(fā)送已過發(fā)送周期t,向服務(wù)器發(fā)送自身新的當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳,類別),更新并保存為當(dāng)前狀態(tài),對(duì)于靜止電子設(shè)備而言,可將發(fā)送周期t設(shè)置為較長(zhǎng)的時(shí)間,如一個(gè)月,對(duì)于移動(dòng)電子設(shè)備而言,可將發(fā)送周期t設(shè)置為較短的時(shí)間,如一個(gè)小時(shí);
(3)檢查自身坐標(biāo),若自身坐標(biāo)發(fā)生變化,且其變化范圍超過精度p,向服務(wù)器發(fā)送(坐標(biāo),ip,mac,時(shí)間戳,類別),更新并保存為當(dāng)前狀態(tài);
(4)若收到服務(wù)器的心跳,向服務(wù)器發(fā)送當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳,類別),更新并保存為當(dāng)前狀態(tài);
(5)回到第(2)步。
服務(wù)器
服務(wù)器工作流程如下:
(1)初始化,清除所有條目,為每一個(gè)類別設(shè)置一個(gè)集合,在此為兩個(gè)集合,分別對(duì)應(yīng)靜止電子設(shè)備和移動(dòng)電子設(shè)備;
(2)若收到電子設(shè)備發(fā)送的(坐標(biāo),mac,時(shí)間戳),因每個(gè)電子設(shè)備擁有唯一mac地址,查看對(duì)應(yīng)的mac地址的條目是否已存在;若不存在,則保存為(坐標(biāo),mac,時(shí)間戳,時(shí)間閾值),前三項(xiàng)(坐標(biāo),mac,時(shí)間 戳)為電子設(shè)備所發(fā)送的數(shù)據(jù),初始時(shí)間閾值設(shè)為0;若已存在,則更新對(duì)應(yīng)的條目,更新方法如下:查看坐標(biāo)是否發(fā)生變化,若坐標(biāo)發(fā)生變化且其變化范圍超過精度p,則更新(坐標(biāo),mac,時(shí)間戳)為電子設(shè)備最新發(fā)送的數(shù)據(jù);若坐標(biāo)在精度p的范圍內(nèi)變化,則更新時(shí)間戳和時(shí)間閾值,新的時(shí)間閾值=舊的時(shí)間閾值+(新的時(shí)間戳-舊的時(shí)間戳)*0.5;
(3)若收到客戶端查詢請(qǐng)求,且客戶端提供的是mac,查詢相對(duì)應(yīng)的坐標(biāo),則尋找服務(wù)器中所有條目,若存在這樣的條目,其mac地址為客戶端所提供的mac地址,返回此條目中的坐標(biāo)信息給客戶端;若不存在這樣的條目,則返回空給客戶端;
(4)若收到客戶端查詢請(qǐng)求,且客戶端提供的是ip,查詢相對(duì)應(yīng)的坐標(biāo),則首先根據(jù)tcp/ip協(xié)議將其轉(zhuǎn)換為mac地址,若轉(zhuǎn)換失敗,則返回空給客戶端;若成功則尋找服務(wù)器中所有條目,若存在這樣的條目,其mac地址為轉(zhuǎn)換后的mac地址,返回此條目中的坐標(biāo)信息給客戶端;若不存在這樣的條目,則返回空給客戶端;
(5)若收到客戶端的查詢請(qǐng)求,且客戶端提供的是坐標(biāo)信息,查詢對(duì)應(yīng)的mac地址,則同時(shí)尋找服務(wù)器中所有集合,不同類別的集合,實(shí)行的操作也不一樣。在靜止電子設(shè)備的集合中,尋找處于客戶端所提供的地標(biāo)范圍周圍為精度p之內(nèi)的條目,將此條目加入set3;在移動(dòng)電子設(shè)備的集合中,考慮到電子設(shè)備處于移動(dòng)的過程中,其實(shí)際坐標(biāo)會(huì)發(fā)生變化,服務(wù)器尋找坐標(biāo)處于用戶所提供的坐標(biāo)周圍范圍n之內(nèi)的條目,這樣的條目集合為set1,對(duì)set1中的每一個(gè)條目做如下處理:若當(dāng)前的時(shí)間戳<=條目中的時(shí)間戳+條目中的時(shí)間閾值,將當(dāng)前條目加入set2;若當(dāng)前的時(shí)間戳大于條目中的時(shí)間戳+條目中的時(shí)間閾值,向條目中的ip地址發(fā)送心跳信息,設(shè)置超時(shí)時(shí)間t,準(zhǔn)備接受電子設(shè)備發(fā)送的(坐標(biāo),mac,時(shí)間戳,類別),若在超時(shí)時(shí)間內(nèi)收到來自電子設(shè)備的回應(yīng),按第二步處理,之后將本條目加入set2;若在超時(shí)時(shí)間t內(nèi)未收到回應(yīng),則刪除服務(wù)器中與本條目相對(duì)應(yīng)的條目;在set2中尋找處于用戶所提供的地標(biāo)周圍范圍為精度p之內(nèi)的條目,將此條目加入set3;最后向客戶端返回set3中的mac地址集合;
(6)若收到客戶端的查詢請(qǐng)求,且客戶端提供的是坐標(biāo)信息,查詢對(duì)應(yīng)的ip地址,則首先按第(5)步處理,得到set3之后,對(duì)set3內(nèi)的每一個(gè) 條目作如下操作:提取條目中的mac地址,按tcp/ip協(xié)議將其轉(zhuǎn)換為ip地址,若轉(zhuǎn)換成功,將轉(zhuǎn)換后的ip地址加入set4;向客戶端返回set4(ip地址集合);
(7)回到第(2)步;
在本發(fā)明中,還可對(duì)整個(gè)系統(tǒng)和方法進(jìn)一步進(jìn)行簡(jiǎn)化,即將所有電子設(shè)備視為靜止電子設(shè)備,系統(tǒng)參數(shù)和操作也設(shè)置為適用于靜止電子設(shè)備的參數(shù)和操作。此簡(jiǎn)化可能對(duì)移動(dòng)電子設(shè)備的誤差較大,但對(duì)于靜止電子設(shè)備有較好的性能和效果。以下第五實(shí)施例和第六實(shí)施例為對(duì)第一種工作方式和第二種工作方式進(jìn)行簡(jiǎn)化的相應(yīng)實(shí)例。
<第五實(shí)施例>
本實(shí)施例是對(duì)第一種工作方式的系統(tǒng)進(jìn)行簡(jiǎn)化,以下為此簡(jiǎn)化系統(tǒng)在第一種工作方式下的工作流程:
客戶端
利用客戶端可以進(jìn)行以下操作:
(1)輸入坐標(biāo),查詢ip地址;
(2)輸入坐標(biāo),查詢mac地址;
(3)輸入ip地址,查詢坐標(biāo);
(4)輸入mac地址,查詢坐標(biāo);
電子設(shè)備
電子設(shè)備的工作流程如下:
(1)初始化,保存自身當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳),并將當(dāng)前狀態(tài)發(fā)送至服務(wù)器,其中坐標(biāo)為電子設(shè)備當(dāng)前坐標(biāo),ip為電子設(shè)備當(dāng)前ip地址,mac為電子設(shè)備當(dāng)前mac地址,時(shí)間戳為電子設(shè)備保存當(dāng)前狀態(tài)時(shí)的時(shí)間;
(2)檢查當(dāng)前時(shí)間戳,若距離上次發(fā)送已過發(fā)送周期t,向服務(wù)器發(fā)送自身新的當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(3)檢查自身ip地址,若ip地址發(fā)生變化,向服務(wù)器發(fā)送(坐標(biāo),ip,mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(4)檢查自身坐標(biāo),若自身坐標(biāo)發(fā)生變化,且其變化范圍超過精度p, 向服務(wù)器發(fā)送(坐標(biāo),ip,mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(5)若收到服務(wù)器的心跳,向服務(wù)器發(fā)送當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(6)回到第(2)步。
服務(wù)器
服務(wù)器工作流程如下:
(1)初始化,清除所有條目;
(2)若收到電子設(shè)備發(fā)送的(坐標(biāo),ip,mac,時(shí)間戳),因每個(gè)電子設(shè)備擁有唯一mac地址,查看相應(yīng)類別的集合中對(duì)應(yīng)的mac地址的條目是否已存在;若不存在,則保存為(坐標(biāo),ip,mac,時(shí)間戳,時(shí)間閾值),前四項(xiàng)(坐標(biāo),ip,mac,時(shí)間戳)為電子設(shè)備所發(fā)送的數(shù)據(jù),初始時(shí)間閾值設(shè)為0;若已存在,則更新對(duì)應(yīng)的條目,更新方法如下:首先查看ip地址是否發(fā)生變化,若發(fā)生變化,則更新(坐標(biāo),ip,時(shí)間戳)為電子設(shè)備最新發(fā)送的數(shù)據(jù),時(shí)間閾值清零;若ip地址沒有變化,則查看坐標(biāo)是否發(fā)生變化,若坐標(biāo)發(fā)生變化且其變化范圍超過精度p,則更新(坐標(biāo),ip,時(shí)間戳)為電子設(shè)備最新發(fā)送的數(shù)據(jù);若ip地址無(wú)變化,且坐標(biāo)也在精度p的范圍內(nèi)變化,則更新時(shí)間戳和時(shí)間閾值,新的時(shí)間閾值=舊的時(shí)間閾值+(新的時(shí)間戳-舊的時(shí)間戳)*0.5;
(3)若收到客戶端查詢請(qǐng)求,且客戶端提供的是mac,查詢對(duì)應(yīng)的坐標(biāo),則尋找服務(wù)器中所有集合中的所有條目,若存在這樣的條目,其mac地址為客戶端所提供的mac地址,返回此條目中的坐標(biāo)信息給客戶端;若不存在這樣的條目,則返回空給客戶端;
(4)若收到客戶端查詢請(qǐng)求,且客戶端提供的是ip,查詢對(duì)應(yīng)的坐標(biāo),則尋找服務(wù)器中所有集合中的所有條目,若存在這樣的條目,其ip地址為客戶端所提供的ip,返回此條目中的坐標(biāo)信息給客戶端;若不存在這樣的條目,則返回空給客戶端;
(5)若收到客戶端的查詢請(qǐng)求,且客戶端提供的是坐標(biāo)信息,查詢對(duì)應(yīng)的ip或mac,則搜尋所有條目,查找處于客戶端所提供的地標(biāo)范圍周圍為精度p之內(nèi)的條目,將此條目加入set3,向客戶端返回set3中的ip地址集合或mac地址集合;
(6)回到第(2)步;
<第六實(shí)施例>
本實(shí)施例是對(duì)第二種工作方式的系統(tǒng)進(jìn)行簡(jiǎn)化,以下為此簡(jiǎn)化系統(tǒng)在第二種工作方式下的工作流程:
客戶端
利用客戶端可以進(jìn)行以下操作:
(1)輸入坐標(biāo),查詢ip地址;
(2)輸入坐標(biāo),查詢mac地址;
(3)輸入ip地址,查詢坐標(biāo);
(4)輸入mac地址,查詢坐標(biāo)。
電子設(shè)備
電子設(shè)備的工作流程如下:
(1)初始化,保存自身當(dāng)前狀態(tài)(坐標(biāo),mac,時(shí)間戳),并將當(dāng)前狀態(tài)發(fā)送至服務(wù)器,其中坐標(biāo)為電子設(shè)備當(dāng)前坐標(biāo),mac為電子設(shè)備當(dāng)前mac地址,時(shí)間戳為電子設(shè)備保存當(dāng)前狀態(tài)時(shí)的時(shí)間;
(2)檢查當(dāng)前時(shí)間戳,若距離上次發(fā)送已過發(fā)送周期t,向服務(wù)器發(fā)送自身新的當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(3)檢查自身坐標(biāo),若自身坐標(biāo)發(fā)生變化,其變化范圍超過精度p,向服務(wù)器發(fā)送(坐標(biāo),ip,mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(4)若收到服務(wù)器的心跳,向服務(wù)器發(fā)送當(dāng)前狀態(tài)(坐標(biāo),ip,mac,時(shí)間戳),更新并保存為當(dāng)前狀態(tài);
(5)回到第(2)步。
服務(wù)器
服務(wù)器的工作流程如下:
(1)初始化,清除所有條目;
(2)若收到電子設(shè)備發(fā)送的(坐標(biāo),mac,時(shí)間戳),因每個(gè)電子設(shè)備擁有唯一mac地址,查看相應(yīng)類別的集合中對(duì)應(yīng)的mac地址的條目是否已存在;若不存在,則保存為(坐標(biāo),mac,時(shí)間戳,時(shí)間閾值),前三項(xiàng)為電子設(shè)備所發(fā)送的數(shù)據(jù),初始時(shí)間閾值設(shè)為0;若已存在,則更新對(duì)應(yīng)的條目,更新方法如下:首先查看坐標(biāo)是否發(fā)生變化,若坐標(biāo)發(fā)生變化且其變化范圍超 過精度p,則更新(坐標(biāo),時(shí)間戳)為電子設(shè)備最新發(fā)送的數(shù)據(jù);若坐標(biāo)在精度p的范圍內(nèi)變化,則更新時(shí)間戳和時(shí)間閾值,新的時(shí)間閾值=舊的時(shí)間閾值+(新的時(shí)間戳-舊的時(shí)間戳)*0.5;
(3)若收到客戶端查詢請(qǐng)求,且客戶端提供的是mac,查詢對(duì)應(yīng)的坐標(biāo),則尋找服務(wù)器中所有集合中的所有條目,若存在這樣的條目,其mac地址為客戶端所提供的mac地址,返回此條目中的坐標(biāo)信息給客戶端;若不存在這樣的條目,則返回空給客戶端;
(4)若收到客戶端查詢請(qǐng)求,且客戶端提供的是ip,查詢對(duì)應(yīng)的坐標(biāo),則首先按tcp/ip協(xié)議將ip地址轉(zhuǎn)換為mac地址,然后尋找服務(wù)器中所有集合中的所有條目,若存在這樣的條目,其mac地址為轉(zhuǎn)換后的mac地址,返回此條目中的坐標(biāo)信息給客戶端;若不存在這樣的條目,則返回空給客戶端;
(5)若收到客戶端的查詢請(qǐng)求,且客戶端提供的是坐標(biāo)信息,查詢對(duì)應(yīng)的mac地址,則搜尋所有條目,查找處于客戶端所提供的地標(biāo)范圍周圍為精度p之內(nèi)的條目,將此條目加入set3,向客戶端返回set3中的mac地址集合;
(6)若收到客戶端的查詢請(qǐng)求,客戶端提供的是坐標(biāo)信息,查詢對(duì)應(yīng)的ip地址,則搜尋所有條目,查找處于客戶端所提供的地標(biāo)范圍周圍為精度p之內(nèi)的條目,將此條目加入set3,對(duì)set3中的每一個(gè)條目做如下操作:提取條目中的mac地址,按tcp/ip協(xié)議轉(zhuǎn)換為ip地址,若轉(zhuǎn)換成功,將轉(zhuǎn)換后的ip地址加入set4;最后向客戶端返回set4(ip地址集合)
(7)回到第(2)步。
在本發(fā)明中,整個(gè)系統(tǒng)還可進(jìn)行進(jìn)一步的簡(jiǎn)化,即只對(duì)靜止電子設(shè)備提供轉(zhuǎn)換服務(wù),通過人工收集電子設(shè)備(坐標(biāo),mac)信息,存入服務(wù)器,即服務(wù)器中對(duì)每個(gè)電子設(shè)備都存儲(chǔ)對(duì)應(yīng)的(坐標(biāo),mac)條目,根據(jù)這些條目即可響應(yīng)客戶端的請(qǐng)求。
綜合上述實(shí)施例可知,本發(fā)明的系統(tǒng)和方法的主要是使用服務(wù)器(如計(jì)算機(jī)系統(tǒng))實(shí)時(shí)記錄現(xiàn)實(shí)地址(如坐標(biāo))與網(wǎng)絡(luò)地址之間的對(duì)應(yīng)關(guān)系,并對(duì)客戶端提供轉(zhuǎn)換服務(wù)。本發(fā)明的系統(tǒng)可擁有多種變形,如服務(wù)器對(duì)每一個(gè)電子設(shè)備存儲(chǔ)條目為(坐標(biāo),ip,mac,輔助信息)、(坐標(biāo),ip,輔助信息)或(坐 標(biāo),mac,輔助信息)等,其中輔助信息是含有零項(xiàng)或一項(xiàng)或多項(xiàng)信息,用于提高坐標(biāo)與網(wǎng)絡(luò)地址之間相互轉(zhuǎn)換時(shí)匹配的準(zhǔn)確度。譬如當(dāng)客戶端提供坐標(biāo),查詢相應(yīng)的網(wǎng)絡(luò)地址時(shí),服務(wù)器返回的是一個(gè)網(wǎng)絡(luò)地址集合,此集合可能只包含一個(gè)網(wǎng)絡(luò)地址或者沒有或者多個(gè)網(wǎng)絡(luò)地址,輔助信息可作為服務(wù)器尋找網(wǎng)絡(luò)地址過程中的特征信息,用于尋找最匹配的網(wǎng)絡(luò)地址。舉個(gè)例子,可以對(duì)系統(tǒng)中每個(gè)電子設(shè)備進(jìn)行編號(hào),作為輔助信息??蛻舳送ㄟ^提供坐標(biāo)和輔助信息,可以查詢網(wǎng)絡(luò)地址,即根據(jù)電子設(shè)備的編號(hào),服務(wù)器可以唯一確定此電子設(shè)備的網(wǎng)絡(luò)地址,要么匹配成功將此網(wǎng)絡(luò)地址返回給客戶端,要么匹配失敗,返回空給客戶端。在此例子中,其實(shí)設(shè)備編號(hào)與電子設(shè)備是一一對(duì)應(yīng)的關(guān)系,客戶端若只提供設(shè)備編號(hào)也可進(jìn)行查詢,如查詢?cè)O(shè)備的坐標(biāo),或者查詢?cè)O(shè)備的網(wǎng)絡(luò)地址,而服務(wù)器是根據(jù)設(shè)備編號(hào)進(jìn)行匹配,并將相應(yīng)結(jié)果返回給客戶端。
綜合上述實(shí)施例可知,在本發(fā)明中,服務(wù)器(如計(jì)算機(jī)系統(tǒng))所記錄的現(xiàn)實(shí)地址(如坐標(biāo))與網(wǎng)絡(luò)地址之間的對(duì)應(yīng)關(guān)系可以是直接的對(duì)應(yīng)關(guān)系,如服務(wù)器可以存儲(chǔ)條目(坐標(biāo),網(wǎng)絡(luò)地址),該條目是直接的對(duì)應(yīng)關(guān)系。此對(duì)應(yīng)關(guān)系也可以是間接的對(duì)應(yīng)關(guān)系,如服務(wù)器可以存儲(chǔ)條目(坐標(biāo),輔助信息a)和(網(wǎng)絡(luò)地址,輔助信息a),如此,坐標(biāo)和網(wǎng)絡(luò)地址之間有間接的對(duì)應(yīng)關(guān)系。舉個(gè)例子,譬如服務(wù)器對(duì)每個(gè)電子設(shè)備存儲(chǔ)條目(坐標(biāo),設(shè)備編號(hào))和條目(網(wǎng)絡(luò)地址,設(shè)備編號(hào))。電子設(shè)備的mac地址也可用作編號(hào),如服務(wù)器保存對(duì)電子設(shè)備保存條目(坐標(biāo),mac)和條目(ip,mac),此時(shí)坐標(biāo)和網(wǎng)絡(luò)地址之間具有一重間接對(duì)應(yīng)關(guān)系。在另一實(shí)施例中,坐標(biāo)和網(wǎng)絡(luò)地址也可有多重間接對(duì)應(yīng)關(guān)系,譬如服務(wù)器保存條目(坐標(biāo),輔助信息a)、條目(網(wǎng)絡(luò)地址,輔助信息b)和條目(輔助信息a,輔助信息b),此時(shí)坐標(biāo)和網(wǎng)絡(luò)地址之間具有二重間接對(duì)應(yīng)關(guān)系?;蛘?,在其它實(shí)施例中,坐標(biāo)和網(wǎng)絡(luò)地址可以經(jīng)過更多條目來實(shí)現(xiàn)坐標(biāo)和網(wǎng)絡(luò)地址之間更多重的間接對(duì)應(yīng)關(guān)系。
通過本發(fā)明的系統(tǒng)和方法,本發(fā)明可以提供如下服務(wù):通過坐標(biāo),匹配網(wǎng)絡(luò)地址;通過網(wǎng)絡(luò)地址,匹配坐標(biāo);通過坐標(biāo)和輔助信息,匹配網(wǎng)絡(luò)地址;通過輔助信息,匹配坐標(biāo);通過輔助信息,匹配網(wǎng)絡(luò)地址。
雖然本發(fā)明已以實(shí)施方式揭露如上,然其并非用以限定本發(fā)明,任何熟悉此技藝者,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作各種的更動(dòng)與潤(rùn)飾,因此本發(fā)明的保護(hù)范圍當(dāng)視所附的權(quán)利要求書所界定的范圍為準(zhǔn)。