摘 要:本文研究了移動互聯網環境下一種可靠有效的跨層優化P2P多媒體資源搜索算法,針對節點移動性等因素導致的分裂P2P覆蓋網問題和路由查找匹配缺失問題,提出了跨層優化P2P覆蓋網架構,SLDC算法能夠保證資源搜索的可靠性,QRMA算法避免出現環狀路。
關鍵詞:移動互聯網;資源搜索優化
中圖分類號:TN929.1 文獻標識碼:A 文章編號:1674-7712 (2014) 20-0000-02
隨著應用需求的推動以及相關技術的成熟,以MP2P(Mobile Peer-to-Peer,移動對等計算)為核心的資源搜索的相關研究日益增多。MP2P多媒體資源搜索協議有集中式和分布式兩種。集中式對應于P2P網絡,索引服務器集中管理資源文件的索引信息,而這些資源文件是存在于各節點之中,由于資源不是集中的,所以在移動互聯網環境下不會因為服務器瓶頸而造成任何限制。分布式更加適應于純P2P網絡,根據搜索策略和搜索思路的差別,這種資源搜索協議又有非結構化和結構化兩種。
移動互聯網中的用戶分布廣泛且都可作為資源的存儲點,這使得傳統的C/S模式難以實現。結構化P2P多媒體資源搜索機制不依賴于中心節點,能夠將資源索引信息廣泛、均勻、規律地分布于所有用戶節點之間,是一種較好的解決方案。但是,移動互聯網下的用戶節點具有較大的移動性,網絡拓撲變化快,并且對能量效率有更高的要求,現有的資源搜索機制在可靠性和有效性上還需要優化提高。
一、P2P多媒體資源搜索算法
Hsiao基于固定網絡的Tornado結構提出了一種移動的結構化P2P體系結構Bristle,從某種程度上來說能處理節點的移動,但必須有P2P網絡的支持,所以對移動互聯網并不是好的選擇。Christensen提出了LightPeers的輕量級的體系結構,可擴展性不好。Conti為了讓Pastry等協議使用更加簡單,設計了一個跨層協議棧,不過沒有專門設計一種出一種算法使之更適用。Ding與Goel設計的跨層協議是在位置服務中綁定查詢機制,節點在移動的時候需要實時更新資源文件的索引數據,這樣會造成額外開。Jakes將協作緩存的理念應用在P2P文件共享上,該方式無法預測搜索成功率,并且對系統搜索均不行過于依賴。MP2P協議相對于上面幾種或者說在當前可以認為是較為成功的一種MP2P協議,但其也存在洪泛帶來較大的開銷的不足。根據搜索策略思路的不同,搜索算法可以分為兩種,集中式和分布式。
(一)集中式。集中式搜索算法需要資源索引服務器對整個網絡中資源的索引信息進行集中管理,而資源文件則廣泛分布于所有P2P網絡節點之間。例如圖1中,節點A為資源索引服務器,,節點B、C、D為P2P用戶。當節點B需要搜索資源信息時,將向服務器A發送資源查找請求并獲得回復,得知目標資源存儲在節點C中。然后,節點B會與節點C建立連接進行資源傳輸。與傳統的C/S網絡相比,由于資源不會集中與服務器中,該方式可以有效避免因服務器瓶頸給無線網絡可擴展性帶來的限制。
(二)分布式。不存在集中式的那種索引服務器,因為用戶無法了解整個網絡中的資源索引信息,如何快速找到資源文件就成為最需要解決的問題。根據解決思路的不同,可以進一步劃分為非結構化和結構化兩種。
在非結構化方式中,資源索引信息僅存在于其存儲用戶之中。假設存在節點A、B、C、D......。當節點A需要尋找一個資源時,會向周圍的所有鄰居廣播資源查找請求,當節點B接收到查找請求時,發現自己沒有此項資源,會繼續轉發此查找請求給其他用戶,例如節點C。節點C發現自己沒有此項資源,會根據查找請求中的TTL信息,判斷是繼續轉發或丟棄查找請求。當節點D發現自己存儲著此項資源,將答復節點A,然后節點A將與節點D進行資源傳輸。
在結構化方式中,首先,各節點會根據協議中規定的具體算法,將自己存儲資源的索引信息進行哈希映射,并發布到對應的其他P2P用戶。由于結構化搜索的不會廣播搜索請求,搜索效率和搜索的開銷都比非結構化有優勢,缺點是要在全網發布各節點的資源索引信息并周期性地更新,這樣會造成系統維護開銷,因此,更加適合于大規模的P2P網絡。
二、P2P多媒體資源搜索算法優化
Chord具有可擴展、穩定、高效的特點,能夠有效管理網絡中存在的多媒體資源,實現對目標資源進行快速、有效的查找,非常適合于在移動互聯網應用,在結構化P2P多媒體資源搜索算法中具有較好的代表性。
(一)跨層優化結構化P2P覆蓋網架構。利用移動互聯網路山協議中的拓撲鄰居信息,跨層優化P2P覆蓋網架構,在P2P覆蓋網內建立和維護拓撲鄰居表,為及時發現可疑的分裂環節點,緩解路由查找匹配缺失提供條件。
為了便于描述,本文通過Chord協議來具體闡述CoSP架構及具體相關算法,統稱為CoSP-Chord協議。
圖2是跨層優化P2P覆蓋網架構,通過跨層信息交互接口,CoSP-Chord協議能夠從移動互聯網中獲取到拓撲鄰居信息。
假設所有的無線節點的Chord環ID都是由IP地址通過相關算法進行哈希映射所得到。當CoSP-Chord協議通過跨層信息交互接口得到了拓撲鄰居的節點信息,會將拓撲鄰居的IP地址進行同樣的映射處理,并存儲在CoSP-Chord定義的拓撲鄰居表(Topology Neighbor Table,TN表),如表1所示。
由于移動互聯網節點的移動性,網絡拓撲結構可能發生變化,因此需要定期對TN表內的信息進行更新。
(二)分裂P2P覆蓋網檢測與融合(SLDC)算法。SLDC算法有兩個階段,第一階段是檢測分裂Chord環,第二階段是融合分裂Chord環。每個節點會運行SLDC算法,通過檢測當前Chord環中有沒有不合法的拓撲鄰居節點來發現分裂Chord環。若發現了分裂Chord環,則會融合該Chord環以再次構造出完整的CoSP-Chord覆蓋網,這個過程是周期性的。
(三)路由查找匹配缺失緩解(QRMA)算法。防止或者減少P2P路由查找匹配缺失問題是QRMA算法的主要目的。所有的節點都會運行QRMA算法,在發送或轉發P2P多媒體資源搜索請求時,利用TN表中的信息進行優化處理,在拓撲鄰居節點中尋找下一跳節點,從而提升搜索效率。算法描述如下:
三、結束語
本文研究了移動互聯網環境下一種可靠有效的跨層優化P2P多媒體資源搜索算法。針對結構化P2P多媒體資源查找協議在移動互聯網中應用時,因為節點移動性等原因造成分裂P2P覆蓋網和路由查找匹配缺失問題,提出了跨層優化P2P覆蓋網架構,從路由協議中的拓撲鄰居獲取信息創建TN表。然后以Chord協議為例,提出了分裂P2P覆蓋網檢測與SLDC算法,使用利用TN表信息,發現分裂Chord環,并將發現的分裂Chord環進行融合造出完整的CoSP-Chord覆蓋網。SLDC算法能夠有效的發現和融合分裂Chord環,保證P2P多媒體資源查找一協議的可靠性,提高了查找成功率。路由查找匹配缺失避免QRMA算法,在發送或轉發查找清求時,在TN表,檢測是否存在下一跳節點,如果發現了下一跳節點,則以最優的節點作為新的發送/轉發目標節點,避免出現環狀路。
參考文獻:
[1]CHRISTENSEN B G.Lightpeers:A lightweight mobile p2p platform,F,2007[C].Ieee.
[2]HUANG C M,HSU T H,HSU M F.Network-aware P2P file sharing over the wireless mobile networks[J].Selected Areas in Communications,IEEE Journal on,2007(01):204-10.
[3]CONTI M,GREGORI E,TURI G.Towards scalable P2P computing for mobile ad hoc networks,F,2004[C].IEEE.
[4]DING G,BHARGAVA B.Peer-to-peer file-sharing over mobile ad hoc networks,F,2004[C].IEEE.
[作者簡介]歐陽煒昊(1978-),男,湖南長沙人,副教授,碩士,研究方向:計算機網絡和新媒體技術。
[基金項目]湖南省高校科研項目(項目編號:12C0998):移動互聯網下多媒體視頻業務優化問題的研究。