全世界是台電腦(2/3)

全世界是台電腦(2/3)

撰文/David P. Anderson & John Kubiatowicz|譯者/鍾樹人
轉載自《科學人》2004年4月第26期

我的就是你的

今天,極大多數的運算工作都是私人資源;無論是團體或個人都擁有他們所使用的系統。ISOS將促成新典範,使用整個網路上的資源將成為常態。能夠運算和儲存資料的主機,以及能夠在主機間傳遞資料的網路,將共同構成龐大的資源庫。這些資源仍為個人所擁有,但將為任何人工作。主機則可能包括桌上型、筆記型、伺服器、連網的儲存裝置,甚至是手持式設備。

這個網際網路上的資源庫和私人擁有的資源,有幾項重要的相異處。目前有超過1億5000萬台電腦連接到網際網路,而且這個數目還在成指數增加。因此,ISOS能提供的,是處理速度和儲存能力都將超過一般單機電腦1億5000萬倍的虛擬電腦。即使這台虛擬電腦同時有很多使用者,而且還要網路費用,它仍會比使用者私人的電腦更大、更快、更便宜。持續升級資源庫裡的硬體,會讓這台超級電腦的總體速度和容量增加得比連結的主機數目要快。而且,這個資源庫可以自我維護:當其中的電腦壞了,它的主人終會修理或換新的。

因為有了網際網路資源庫,特殊的資料平行傳輸才成為可能。就以瑪莉的電影為例,其片段可能從大約200台主機裡上傳。這些主機可能是以古老的56K數據機連結到網際網路的個人電腦,這種慢速度遠遠無法傳輸高畫質影像,但200台結合在一起,卻可以達到每秒傳送10Mb的速度,比纜線數據機還快。儲存在分散式系統裡的資料可從任何地點取得(加上適當的安全防護),即使資源庫裡的某些段落失效了,也能順利運作。這類系統的安全性也可能很高,畢竟,除非可以侵入一萬台以上的電腦,否則無法破壞系統。

這種網路資源的典範,能增加某些應用程式的效能(像是更快的速度和更大的資料容量),或者是降低某些應用程式的成本。不過對某些應用程式來說,則可能兩者皆非,畢竟這只是一種典範,而不是萬靈丹。而且,設計一套ISOS也會遇上一大堆障礙。

資源庫的某些特性會導致一些ISOS必須面對的困難。資源庫是異質性的:主機電腦會有不同的處理器和作業系統。它們的記憶體大小和磁碟空間各不相同,網際網路的連線速度也互異。某些主機可能有防火牆或是其他類似的軟體層保護,禁止或阻礙外來的連線動作。很多資源庫裡的主機偶爾才會連線、桌上型個人電腦會在夜間關機,而使用數據機的筆記型電腦和系統也經常是離線狀態。主機電腦可能無預警地消失(有些是永久性的),不過新的主機則會出現。

ISOS也要避免激怒主機的所有者。它必須盡量不要影響到未使用ISOS時的主機,並且尊重所有者所訂定的限制,像是只能在夜間使用,或是只能供某些特定的應用程式使用。不過ISOS也不能因為自己謹守分寸,就相信每台主機都會遵守遊戲規則。所有者可以自行檢查或修改主機的活動,心懷好奇或惡意的使用者也可能嘗試打斷、欺騙或是愚弄系統。這些問題都會對ISOS的設計產生重大影響。

如何分配資源?

網際網路規模的作業系統必須面對兩個基本問題:如何分配資源,以及如何給予資源提供者報酬。經濟學有所謂提供者釋出資源給消費者的原則,以此為基礎發展的模型,可同時解決這兩個問題。1980年代,美國全錄帕洛亞托實驗室的研究人員,提供並分析了幾項適當分配電腦資源的經濟法則。最近,魔力國度(Mojo Nation)公司發展出一個檔案分享系統,使用者可以因為其他人使用自己的資源而得到虛擬貨幣──魔力,反之也必須付出魔力才能使用系統。類似的經濟模型鼓勵所有者釋出自己的資源以供其他組織使用,理論顯示,這會讓資源達成最理想的分配。

即使有1億5000萬台主機可供差遣,ISOS仍會面臨資源的「匱乏」,因為某些任務需要或是有能力使用到幾乎無限的資源。在ISOS不斷決定何處可以執行資料處理的工作,以及如何分配儲存空間的同時,也必須設法以盡可能便宜的方式執行任務。它也必須公平,不能因為要有效率地執行某項任務,而犧牲了另一項任務。訂定確實的標準,並且設計出盡可能達成目標的排程演算法,是目前人們積極研究的重點。

這類共享網路的經濟系統,必須定義出資源的基本單位,像是一天使用1Mb的磁碟空間,並且為必須列入考量的各種屬性指定價值,如可以存取儲存裝置的連線速率、頻寬,以及儲存裝置接上網路的頻率。同時,系統也必須定義「買賣資源」(例如是否要事先付款),以及「決定價格」(是經由拍賣,或透過訂定價格的中間人)的方式。

在這個架構下,ISOS必須準確且安全地追蹤資源的使用。ISOS會有個內部銀行,其中有提供者與消費者的帳號,並根據資源的使用建立雙方的借貸記錄。參與者能在ISOS貨幣與真實錢幣之間自由轉換。ISOS也必須確保資源的取得準確無誤:瑪莉可不想她的電影放映到一半嘎然而止。這個經濟系統能讓資源提供者決定資源被使用的方式。舉例來說,個人電腦的所有者可能會指明,別人在早上9點至下午5點之間不能使用他電腦的處理器,除非對方付出很高的價格。

當然,有錢就會有詐欺,ISOS的參與者若想欺騙對方多的是方法。譬如,資源的賣方可以修改或愚弄自己電腦上的ISOS代理人程式,在沒有任何計算的情況下回報虛構的結果。研究人員已經開發出統計方法,能夠偵測出蓄意欺騙或是發生故障的主機電腦。最近一項預防不勞而獲的方法則是,讓每個工作單元都有一系列能讓伺服器快速檢查的中介結果,但只有在執行完整個運算之後才能取得。我們還需要其他方法,預防在資料儲存與服務提供等方面的欺騙行為。

對終端使用者來說,ISOS資源上的花費將只是硬體成本的一小部份。理想上,這一小部份已足以鼓勵所有者參與,也能讓許多網際網路規模的應用程式具有合理的價格。一般個人電腦的所有者可能會將這個系統視為以物易物的經濟架構,可用閒置的處理器時間和硬碟空間換取免費的服務,像是檔案備份以及網站代管。(待續)

(本文由教育部補助「AI報報─AI科普推廣計畫」取得網路轉載授權)

views