分布式系統安全之結構化P2P協議
結構化的P2P協議,如和弦,糕點,掛毯,卡德姆利亞,CAN等。通常用于拓撲結構有助于高效搜索的數據發現應用程序。它們的拓撲圖通常顯示小世界屬性,即在任何兩個具有相對較少邊數的對等體之間存在一條路徑。結構化拓撲通常顯示為帶有快捷方式的環形結構,這構成了可擴展和高效操作(如資源發現和消息傳遞)的基礎。一些協議具有更奇特的拓撲結構,例如,蝴蝶圖,固定度圖或多環圖。顯著特征是節點發現效率和使用P2P結構和拓撲信息的路由效率。由于這方面具有安全隱患,因此我們簡要詳細介紹了這些操作。
與非結構化不同P2P的開放式尋址架構,結構化P2P協議、指向對等體或數據等資源的指針存儲在分布式數據結構中,稱為分布式哈希桌子(DHT).這覆蓋層的地址空間通常是整數刻度,范圍為[0,...,2w1]跟在一般是128或160。通常,一個距離函數d(甲、乙)定義允許在任意兩個標識符之間進行距離計算一個和b在地址空間中。距離計算對于查找機制和數據存儲職責至關重要。距離函數及其屬性因協議實現而異。數據發現是意識到由計算機科學這.key之一易于掌握資源標識符,例如唯一名稱/密鑰,隨后從負責人之一請求該密鑰及其數據同行。
消息-例如請求給定密鑰的數據-直接在大多數結構化協議中交換,即使用兩個對等體之間的底層網絡連接。如果對等方彼此不認識,則無法建立直接連接,需要確定目標對等方的位置才能進行路由。為此,覆蓋查找機制旨在穩定地減少查找算法每次迭代時到目標的地址空間距離,直到標識符可以解決。事實證明,這種設計方法非常有效,并促進了可伸縮性。一旦查找成功檢索到目標的底層網絡地址,就可以交換消息。查找變體包括迭代或遞歸算法,以及對一組最近鄰對等方的并行查詢。
路由表通常存儲克·條目與k是特定于協議的常量。此外對于i千部分k條目與我[0...在],對等方存儲共享的對等方的聯系信息我的通用前綴位同行的.key。換句話說,路由表通常提供更多存儲為近同行比更多遠的。此外路由表僅保留有關實時和可訪問對等方的信息,因此對等方會定期ping操作。在結構化中協議保養是更多貴如這拓撲結構需要自被保留,例如新加入同行有自是放到這適當同行的路由表或離開/無響應同行有自是取代由住的在多同行'路由表。