劉班
摘要:通過對共享資源分布式索引(SRDI)服務的支持,JXSE為JXTA網(wǎng)絡中查詢請求的傳播提供了一個高效的機制。集合節(jié)點維護了一個由邊緣節(jié)點發(fā)布的廣告的索引。當邊緣節(jié)點發(fā)布了一個新廣告,該節(jié)點就會使用SRDI服務,將新廣告的索引保存到集合節(jié)點中。通過這種集合-邊緣節(jié)點的層次體系,查詢只在集合節(jié)點之間傳播,從而在很大程度上減少了搜索一個廣告所涉及的節(jié)點數(shù)目。JXTA網(wǎng)絡的操作依賴于其解析分布式查詢的能力。JXTA使用了一種稱為共享資源分布式索引(SRDI)的分布式算法,以創(chuàng)建并維護網(wǎng)絡中資源的一個總體索引。論述了SRDI的工作原理和簡單應用實例。
關鍵詞:JXTA SRDI 共享資源分布式索引
中圖分類號:TP393.02 文獻標識碼:A 文章編號:1007-9416(2016)09-0235-01
1 工作原理
每個集合節(jié)點都維護著自己的一套同節(jié)點組中已知集合節(jié)點的列表。一個集合節(jié)點可能從一套預先定義好的種子集合節(jié)點列表中獲取其它集合節(jié)點的信息。集合節(jié)點周期性地選擇另外一些隨機數(shù)量的集合節(jié)點,并向這些集合節(jié)點發(fā)送其已知集合節(jié)點的一個隨機列表。同時,集合節(jié)點也周期性的清除掉那些沒有響應的集合節(jié)點。因而集合節(jié)點維護著其已知集合節(jié)點的一個大致上連續(xù)的網(wǎng)絡。
當一個節(jié)點發(fā)布了一個新的廣告后,這個廣告就被SRDI服務使用主鍵(比如廣告名稱或ID)進行了索引。SRDI只將廣告的索引存入集合節(jié)點,從而最小化那些需要存入集合節(jié)點的數(shù)據(jù)量。集合節(jié)點也將廣告的索引存入另外一些集合節(jié)點之中,這些集合節(jié)點是根據(jù)廣告索引的一個哈希函數(shù)計算結果選擇的。
本地網(wǎng)絡中的查詢(比如在一個子網(wǎng)內)會借助一個定義為廣播或多播方式的傳播協(xié)議傳播到本地網(wǎng)絡的節(jié)點之中。如果接收到該查詢的節(jié)點本地緩存中包含要查詢的信息,則該節(jié)點會直接響應發(fā)出該請求的節(jié)點。發(fā)往本地網(wǎng)絡以外的查詢首先被轉發(fā)到與本地網(wǎng)絡相連的集合節(jié)點上。該集合節(jié)點先在其本地緩存中查找是否有滿足查詢要求的信息。如果這個集合節(jié)點包含請求的信息,那么它就會直接回復發(fā)出該請求的節(jié)點,并且不會再傳播這個請求。如果這個集合節(jié)點在其SRDI緩存中包含此請求資源的索引,那么它就會通知發(fā)布該資源的節(jié)點,使那個節(jié)點可以直接響應發(fā)出該請求的節(jié)點,在這種情況下,集合節(jié)點只存儲了廣告的索引,而沒有存儲廣告本身,因而集合節(jié)點是不能直接響應請求節(jié)點的。
如果集合節(jié)點沒有包含請求的信息,那么JXTA網(wǎng)絡就會使用一個默認的有范圍限制的遍歷算法在一套集合節(jié)點中遍歷尋找包含了請求信息廣告索引的集合節(jié)點。為了減少一個查詢的TTL值,一個查詢的路徑可能會被一個網(wǎng)絡映射函數(shù)修改。為了避免可能導致網(wǎng)絡不穩(wěn)定的Ping-Pong命令的影響,一個跳躍計數(shù)用于指定請求被映射/轉發(fā)的最大次數(shù)。一旦查詢到達了節(jié)點,該節(jié)點就可以直接回復最初發(fā)起該查詢的節(jié)點。
SRDI使用一個SHA1哈希尋址方案。在這個方案中,一個160位的哈希地址空間在一個集合節(jié)點的有序列表之中分配。當索引被接收后,哈希函數(shù)就會根據(jù)這些索引計算出他們的復制地址,然后將他們復制到這些地址對應的目標集合節(jié)點之上。
2 配置實例
圖1是一種配置的實例。節(jié)點A是一個邊緣節(jié)點,并配置為使用R1作為其集合節(jié)點(Rendezvous)。當節(jié)點A生成一個發(fā)現(xiàn)或搜索請求后,該請求就會首先被發(fā)送給它的集合節(jié)點R1,在這個實例中,該請求也會通過多播方式發(fā)送給同一子網(wǎng)的其它節(jié)點。
3 結語
在SRDI的支持下,JXTA網(wǎng)絡可以快速地對一個節(jié)點發(fā)出的公告查詢進行響應, 從而提高了JXTA網(wǎng)絡中節(jié)點間信息傳遞的效率,為基于JXTA框架的應用程序開發(fā)提供了方便。
參考文獻
[1]楊天路,劉宇宏等.P2P網(wǎng)絡技術原理與系統(tǒng)開發(fā)案例[M].北京:人民郵電出版社,2007.
[2]Sing Li.JXTA2:具有高性能、海量伸縮性的P2P網(wǎng)絡.