精華區beta Config 關於我們 聯絡資訊
Keyword 使用 Flat Name , 看起來像是集中式的登錄查詢系統, 但 Distributed Hash Table 的技術可以把一張大表分散給不同的 server. 出名的 Chord 把 server 串成一個環, 環就可以逐一查詢, 甚至把環上 的 server 代號按序串接, 就能在 sequential number 裡做 O(log N) 的 binary search. 考量分散負擔時, 可以讓新加入的機器擔任環上的 新 server, 因此 Consistency Hash 的分配法被採用, 以減少資料的搬 移數. 把 Keyword 當成一個資源的名稱, 把 DNS 與 FTP 這兩個軟體拿來 裝在環上的 server 當登錄名稱與存放資源的地方, 再用 Web/browser 提供使用者介面, 這個 p2p 系統就大致架構完成. 很明顯, 這裡可以不 使用 DNS 軟體也可以自己發展一個專用的登錄查詢系統. 這個系統唯一的缺點就是環上 server 未必形成一個最短路徑組成的 環, 存放資源的點也未必非常接近使用者端, 因此存放資源的 server 還 要加上 proxy/cache 功能. 如果把存放資源的 server 從環上脫開, 使 用 pointer/link 指出去, 這個環就成為分散式 keyword name system. 如同中文的繁簡輔助解析, 如果要利用現有的 DNS 系統免下載, 就 只要利用 *.TLD. 同樣的, Keyword 可以利用 *. 這個 exception trap, Mapper 就是以 Hash Function 把 keyword Name 對映成一個整數 key. 查詢 key 就可以利用數字範圍與 DNS Table 來完成, 同樣的 * trap 就 能讓找不到時回到 web/browser 進行所必要的 ring jump search. 如果不使用 * trap 技術, 就只要讓 client 端來做 server access 與 mapping 計算也是可以的. 同樣的, DNS 只是提供 table search, 假 如另一個 matching 機制被引進, 這樣的查詢就可以是不同條件的 partial matching. DNS 對動態登錄系統不太能支援的原因是大量使用 cache 與較大的 ttl 值. MIT 對 ttl 值降到個位數有實驗與模擬數據證明是可容忍的. 假如考慮行動電話與 p2p 的需求, 可以把 cache 只用在避免 binary search 以找到存放的 ring server, 但實際的 replica/gateway 仍需進 行查詢與 link 動作才能找到. Overlay Network 與 indirection 可以利用 DNS 但也可以替代 DNS server, 就名稱(name)的立場, 有 "." 或沒有 "." 並非分散式處理的關 鍵. 沒有 "." 的中文 Keyword 也可以是分散式系統. -- ◎ Origin: 中央松濤站□bbs.ee.ncu.edu.tw From: 140.115.6.234