云計算自提出以來一直受到業界的廣泛關注,眾多設備廠商和平臺服務提供商紛紛推出各自的云計算產品與服務,電信運營商也緊跟著進入云計算時代。而被譽為“先于云計算、包含云計算”的透明計算,則由于獲得2014年國家最高科技獎而首次進入大眾的視野,并在業界引起較大反響。究竟什么是透明計算?兩者有何異同?
透明計算的概念
透明計算的概念是于2004年正式提出的,發表于電子學報上的定義如下:“透明計算是一種用戶無需感知計算機操作系統、支撐工具以及應用程序的所在,并能根據自己的需求,從所使用的各種設備(包括固定和移動以及家庭的各類設備)中找到相關計算服務,而這些服務又是存儲于位于分布式網絡服務器中的計算模式。用戶使用的設備(統稱為客戶機)與服務器之間的連接依靠內部的通信協議完成。”
在此基礎上,提出了一種超級操作系統TransOS及其基于4VP 的實現示例。4VP 定義了服務端與客戶端交互的兩個協議和基于功能劃分的四個虛擬邏輯層次。TransOS則定義為運行在傳統操作系統與計算機主板BIOS之間,對包含各種傳統操作系統在內的網絡資源進行管理的超級操作系統。
簡單來說,就是將數據的存儲、計算與管理分離,將存儲放在服務器端,使用時可靈活選擇傳統操作系統及應用程序,將其通過網絡以塊流的形式及時載入到客戶端并運行。該方式理論上可簡化客戶端, 使用起來更輕便、更快捷、更安全。
透明計算與云計算的異同
透明計算的概念最初是作為普適計算的一種新模式而提出的。普適計算強調在任何時間和地點都可以為人們提供網絡連接與計算,計算設備的靈活、便捷性非常重要。而現實中的終端設備卻無法滿足需求:一方面PC機指標越來越高,軟件操作系統越來越復雜,維護成本越來越高;另一方面只能安裝小型嵌入式系統的移動設備卻面臨難與其他設備互聯互通的問題。針對這些問題,透明計算從用戶服務選擇透明的角度出發,通過存儲、運算、管理的物理和邏輯分離,軟硬件平臺的跨平臺選擇,用戶端系統流式執行等方式,實現計算機服務的無處不在和不知不覺。可以說,透明計算的提出是為了解決計算機的復雜性問題,降低客戶端客戶使用和維護成本,以達到普適計算的理想。
云計算的提出,是對當時Google、IBM、Amazon等公司已經提供或計劃提供的技術服務的概括。現階段,廣為接受的是美國國家標準與技術研究院的定義:“云計算是一種按使用量付費的模式,這種模式提供可用的、便捷的、按需的網絡方式,進入可以配置的計算資源共享池(資源包括網絡、服務器、存儲、應用軟件、服務),這些資源能夠被快速提供,只需投入很少的管理工作,或與服務供應商進行很少的交互。”相比而言,云計算更強調一種商業模式,集中資源,按需服務,按量付費。云服務平臺運營商在構建云平臺時,主要著力于如何在大規模的廉價服務器集群之上構建高可用性的服務,往往會綜合采用多種技術手段和方法。
透明計算的技術特征
從技術實現的角度,透明計算與云計算具備一些共同特征,但在具體細節上仍存在各自特點: (1)以網絡為中心。云計算平臺以互聯網為中心,將存儲和運算能力分布在網絡所連接的各個節點之中。透明計算同樣依賴網絡,通過網絡把運算和存儲分離,服務器存儲操作系統、應用程序以及用戶數據等軟件資源,終端使用時才從服務器以塊流方式及時載入并運行。
(2)虛擬(透明)化。云計算將底層的硬件,包括服務器、存儲與網絡設備全面虛擬化,建立起一個共享的可以按需分配的基礎資源池。透明計算需解決多個操作系統和應用程序在同一臺硬件設備上的共存及激活切換問題,也需使用虛擬化技術以實現“透明”。
(3)分布式計算和共享資源池。云計算可以說是分布式計算技術的一種延伸,通過計算機集群構建服務,將存儲、計算能力等資源進行分布式管理,建立共享資源池,具備可動態擴展的特性。透明計算的服務端同樣基于分布式管理,包括對硬件資源、傳統操作系統、開發和管理工具、應用軟件、結構化與非結構化等軟件或數據資源的統一管理及調度。
與云計算相比,透明計算具備一些獨有特征:
(1)計算完全在客戶端執行和完成。
這是透明計算與云計算的顯著不同。云計算平臺中的計算是由云端的計算節點完成的,客戶端不參與計算和存儲。
(2)輕量化的終端客戶機。
終端客戶機甚至輕量化到僅僅是個裸機而無任何預制操作系統,在需要服務時,才從服務器中獲取所需資源并執行。
(3)透明計算是需求驅動的流式執行。
終端客戶機啟動后,駐留在BIOS的TransOS內核部分負責獲得終端控制權,并與服務器聯系,獲得系統運行所需的更多內核代碼,并動態地以塊流的方式加載到終端側執行。塊流是指每次只按需從網絡服務器上獲取一小部分代碼或者數據塊到終端上進行計算。如此循環反復,形成從網絡服務器到終端的流。
云計算的服務呈現多樣性,具有設施即服務(IaaS)、平臺即服務(PaaS)和軟件即服務(SaaS)等多種方式,并提供不同的用戶接口,包括直接面向用戶的軟件服務界面、僅提供開發者使用的API接口等,對客戶機以及服務的具體執行方式沒有明確規定。
產業化前景可期
透明計算確實先于云計算而提出。盡管兩者在以網絡為中心、虛擬(透明)化、分布式計算和共享資源池方面有異曲同工之妙,然而卻不存在包含關系。云計算是對商業模式的概括。透明計算則是對一種新計算模式的明確定義,具有云計算所不具備的獨有技術特點:包括計算在客戶端執行、輕量化到沒有操作系統的客戶端計算機、需求驅動的流式執行方式等。
雖然透明計算存在對網絡要求較高、客戶端計算效率方面的問題,但其簡化客戶端的理念具有廣泛的應用場景,未來產業化前景可期。