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

一種基于移動ap的近鄰檢測方法

文檔序號:9915095閱讀:555來源:國知局
一種基于移動ap的近鄰檢測方法【
技術(shù)領(lǐng)域
】[0001]本發(fā)明涉及一種基于移動AP的近鄰檢測方法,適用于社交網(wǎng)絡(luò),在保護(hù)用戶位置隱私的前提下,為用戶找出附近的鄰居。【
背景技術(shù)
】[0002]哈希表(Hashtable,也叫散列表),是根據(jù)關(guān)鍵碼值(Keyvalue)而直接進(jìn)行訪問的一種數(shù)據(jù)結(jié)構(gòu)。也就是說,它通過把關(guān)鍵碼值映射到表中的一個位置來訪問記錄。在不需比較的情況下便可直接取得所查記錄,以加快查找的速度。這個映射函數(shù)稱為哈希函數(shù)。構(gòu)造哈希函數(shù)常用的方法有:1)直接定址法;2)數(shù)字分析法;3)平方取中法;4)折疊法;5)除留取余法;6)隨機數(shù)法。此外,不同的關(guān)鍵字可能映射得到同一散列地址,這種現(xiàn)象稱為碰撞。因此,還需要有處理碰撞的方法,處理沖突常用的方法有:1)開放定址法;2)再哈希法;3)鏈地址法;4)建立一個公共溢出區(qū)。[0003]現(xiàn)如今,移動互聯(lián)網(wǎng)的快速發(fā)展使得WIFI技術(shù)得到了極大的普及與應(yīng)用。隨著WIFI熱點(無線AP)數(shù)量的與日倶增,人們在大部分城市地區(qū)都可搜索到眾多無線AP信號。當(dāng)用戶搜索無線AP時,每個AP信號里包含有SSID和BSSID這兩項信息。SSID指的是服務(wù)集標(biāo)識,就是我們搜索到的AP的名字,BSSID指的是AP的MAC地址。不同的AP可以有相同的SSID,但每一個AP的MAC地址是固定的,不同的AP對應(yīng)的MAC地址都不一樣。所以準(zhǔn)確的說,一個AP可以由一個MAC地址來唯一的標(biāo)識。[0004]隨著移動互聯(lián)網(wǎng)以及社交網(wǎng)絡(luò)的迅速發(fā)展,以微信、Facebook、Twitter為代表的SNS網(wǎng)站發(fā)展非常迅猛,用戶數(shù)量也以驚人的速度增長?,F(xiàn)今越來越多的用戶使用類似找"附近的人"、"附近餐館"等近鄰檢測服務(wù),使得近鄰檢測服務(wù)成為社交網(wǎng)絡(luò)中的一種基本服務(wù)。傳統(tǒng)的近鄰檢測方法需要用戶向服務(wù)器上傳其地理位置信息,以便找出與該位置鄰近的其他用戶。該傳統(tǒng)方法向服務(wù)器泄露了用戶的位置信息,如果服務(wù)器存在安全漏洞,或者內(nèi)部人員濫用這些位置信息,將會導(dǎo)致用戶位置隱私的泄露,存在安全隱患。同時,由于現(xiàn)有AP的位置大多放置在固定的地方,并且G〇〇gle、Skyh〇〇k等公司采集的WIFIAP數(shù)據(jù)庫,已經(jīng)可以得到大多數(shù)AP的詳細(xì)位置。當(dāng)移動物體連接到某個AP訪問點時,用戶的位置也就可以較精確地對應(yīng)到一個經(jīng)煒度,進(jìn)而推斷出用戶曾到過的位置或軌跡。因此,通過目前固定的AP來為用戶提供近鄰檢測的服務(wù),有可能存在暴露用戶位置隱私的風(fēng)險。進(jìn)一步,為了防止某些區(qū)域不存在AP而導(dǎo)致無法提供近鄰檢測服務(wù)的情況,綜上所述,本發(fā)明最終提出了一種將移動節(jié)點升級為AP的近鄰檢測方法?!?br/>發(fā)明內(nèi)容】[0005]本發(fā)明的目的是提供一種基于移動AP的近鄰檢測方法,解決了傳統(tǒng)近鄰檢測方法會泄露用戶的位置信息,嚴(yán)重情況下將會危害到用戶隱私的問題;同時,采用移動AP,可有效防止使用靜態(tài)AP帶來的分布不均勻問題以及暴露用戶位置的風(fēng)險。[0006]本發(fā)明采用以下技術(shù)方案實現(xiàn):一種基于移動AP的近鄰檢測方法,其特征在于,包括以下步驟:首先每個移動用戶兼職充當(dāng)信標(biāo)節(jié)點即移動AP節(jié)點,周期性地發(fā)出信標(biāo)信號,為其他尋找鄰居的用戶提供位置參照;當(dāng)移動用戶查找鄰居時,只需向服務(wù)器提交其鄰居AP列表以及請求的鄰居跳數(shù);所述服務(wù)器通過計算這些鄰居AP列表間是否存在交集,從而發(fā)現(xiàn)請求用戶間的鄰居關(guān)系。[0007]進(jìn)一步的,所述的鄰居AP列表存儲的是每個AP的MAC地址,用于唯一標(biāo)識一個AP。[0008]在本發(fā)明一實施例中,用戶發(fā)射信號的周期由發(fā)射信號時間與等待時間組成,其中,發(fā)射信號的時間為固定值10秒,而等待發(fā)射信標(biāo)信號的時間由以下算法決定:步驟1:確定鄰居度K,設(shè)自身的鄰近用戶數(shù)為N,N為自然數(shù),則該用戶的鄰居度K=Pogjm》〗:;步驟2:從整數(shù)集合[0,1,···,2Κ-1]中隨機選擇某個整數(shù)r;步驟3:根據(jù)r,計算出該用戶的等待時間T=r*t,其中t為一個預(yù)設(shè)的時間值。[0009]在本發(fā)明一實施例中,服務(wù)器通過計算這些鄰居AP列表間是否存在交集的具體步驟:1)、首先遍歷用戶的鄰居AP列表,利用哈希函數(shù)BKDRhash將表中的每個AP生成對應(yīng)的哈希值Key,并根據(jù)該哈希值Key查找AP-用戶列表;2)、如果查找為空,證明該AP為新的參照,則將當(dāng)前用戶作為該AP的第一個用戶并插入AP-用戶列表;若不為空,則將該AP項對應(yīng)空間的用戶集加入鄰居列表;3)、接著判斷鄰居跳數(shù)hop是否大于1;4)、若不是,則返回鄰居列表,查找結(jié)束;若是,則根據(jù)上一跳鄰居的AP列表重新計算哈希值Key,將哈希值Key對應(yīng)的用戶集里除上一跳鄰居以外的其他用戶加入鄰居列表,作為用戶的下一跳鄰居,此時,鄰居跳數(shù)hop減1,返回步驟3)。[0010]進(jìn)一步的,所述用戶的鄰居AP列表以哈希表的方式進(jìn)行存儲,通過哈希函數(shù)BKDRhash將用戶的ID生成對應(yīng)哈希值Key,Key值對應(yīng)空間存放該用戶的鄰居AP列表;所述AP-用戶列表也以哈希表的方式存儲AP的鄰居用戶表,利用函數(shù)BKDRhash將每個AP生成哈希值Key,Key值對應(yīng)空間存放AP的鄰居用戶集,每個AP項下的用戶互為鄰居。[0011]進(jìn)一步的,鄰居跳數(shù)hop的取值大小由請求用戶決定,其用于擴大鄰居的搜索范圍,即尋找"鄰居的鄰居",通過不斷地向外擴大鄰居搜索范圍,尋找多跳之外的鄰居。[0012]進(jìn)一步的,哈希表里每個AP項下的用戶都設(shè)有一個生存時間TTL,在該時間內(nèi)的用戶為有效用戶,超過這個時間的用戶將從哈希表中刪除;假設(shè)在該AP原始信號覆蓋范圍內(nèi)的用戶移動至信號外的d距離都仍認(rèn)為其在該AP節(jié)點的有效信號覆蓋范圍內(nèi),仍為該AP節(jié)點下的有效用戶,當(dāng)用戶一直處于該AP原始信號覆蓋范圍內(nèi),TTL取值無窮大;當(dāng)用戶初始位于該AP節(jié)點原始信號覆蓋邊界,并以其最大速度¥_\向信號外圍移動,則TTL取到最小值,BPTTL的取值范圍為:[0013]在本發(fā)明一實施例中,TTL的取值范圍為1-5分鐘。[0014]與現(xiàn)有技術(shù)相比:本發(fā)明提出的近鄰檢測方法,無需用戶提供其自身的位置信息,并且不依賴于靜態(tài)AP節(jié)點,能有效解決傳統(tǒng)近鄰檢測方法中存在的位置隱私暴露問題。因此,在社交網(wǎng)絡(luò)應(yīng)用場景中具有很大的實用價值?!靖綀D說明】[0015]圖1是基于移動AP的近鄰檢測方法系統(tǒng)框架圖;圖2是AP列表匹配流程圖;圖3是AP列表存儲結(jié)構(gòu)圖;圖4是多跳擴大鄰居搜索范圍圖?!揪唧w實施方式】[0016]下面結(jié)合附圖和具體實施方對本發(fā)明做進(jìn)一步說明。[0017]-種基于移動AP的近鄰檢測方法,其特征在于,包括以下步驟:首先每個移動用戶兼職充當(dāng)信標(biāo)節(jié)點即移動AP節(jié)點,周期性地發(fā)出信標(biāo)信號,為其他尋找鄰居的用戶提供位置參照;當(dāng)移動用戶查找鄰居時,只需向服務(wù)器提交其鄰居AP列表以及請求的鄰居跳數(shù);所述服務(wù)器通過計算這些鄰居AP列表間是否存在交集,從而發(fā)現(xiàn)請求用戶間的鄰居關(guān)系。系統(tǒng)框架圖參見圖1。[0018]進(jìn)一步的,所述的鄰居AP列表存儲的是每個AP的MAC地址,用于唯一標(biāo)識一個AP。[0019]在本發(fā)明一實施例中,用戶發(fā)射信號的周期由發(fā)射信號時間與等待時間組成,其中,發(fā)射信號的時間為固定值10秒,而等待發(fā)射信標(biāo)信號的時間由以下算法決定:步驟1:確定鄰居度K,設(shè)自身的鄰近用戶數(shù)為N,N為自然數(shù),則該用戶的鄰居度Κ=?_2_·Ι·賴;步驟2:從整數(shù)集合[0,1,···,2Κ-1]中隨機選擇某個整數(shù)r;步驟3:根據(jù)r,計算出該用戶的等待時間T=r*t,其中t為一個預(yù)設(shè)的時間值。[0020]在本發(fā)明一實施例中,服務(wù)器通過計算這些鄰居AP列表間是否存在交集的具體步驟:1)、首先遍歷用戶的鄰居AP列表,利用哈希函數(shù)BKDRhash將表中的每個AP生成對應(yīng)的哈希值Key,并根據(jù)該哈希值Key查找AP-用戶列表;2)、如果查找為空,證明該AP為新的參照,則將當(dāng)前用戶作為該AP的第一個用戶并插入AP-用戶列表;若不為空,則將該AP項對應(yīng)空間的用戶集加入鄰居列表;3)、接著判斷鄰居跳數(shù)hop是否大于1;4)、若不是,則返回鄰居列表,查找結(jié)束;若是,則根據(jù)上一跳鄰居的AP列表重新計算哈希值Key,將哈希值Key對應(yīng)的用戶集里除上一跳鄰居以外的其他用戶加入鄰居列表,作為用戶的下一跳鄰居,此時,鄰居跳數(shù)hop減1,返回步驟3)。具體流程參見圖2。上述過程通過迭代的方式進(jìn)行,直到查找的鄰居跳數(shù)滿足用戶的請求。[0021]進(jìn)一步的,所述用戶的鄰居AP列表以哈希表的方式進(jìn)行存儲,通過哈希函數(shù)BKDRhash將用戶的ID生成對應(yīng)哈希值Key,Key值對應(yīng)空間存放該用戶的鄰居AP列表;所述AP-用戶當(dāng)前第1頁1 2 
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1