時間:2022-03-22 20:11:55
序論:好文章的創作是一個不斷探索和完善的過程,我們為您推薦十篇云計算數據論文范例,希望它們能助您一臂之力,提升您的閱讀品質,帶來更深刻的閱讀感受。
通過對大數據的匯集、智能分析和挖掘技術,發現數據中的潛在價值信息,幫助人們做出正確決策,這就是大數據產業的利益。國外大數據的起步比較早,比較成功的大數據應用案例有:商業龍頭沃爾瑪公司通過對消費者的購物數據進行分析,了解顧客的行為喜好,對超市的商品結構進行搭配重置以增加銷售額;亞馬遜公司通過大數據構建自己的推薦系統,每年可以靠此多收益20%;奧巴馬通過大數據分析系統進行數據挖掘,用科學的手段獲取選票、募集資金,贏得了總統競選的勝利。相比于國外,國內的大數據研究和應用還處于起步和發展中的階段,比較成功的案例有:淘寶數據魔方平臺,通過大數據,為買家量身打造完善的購物體驗產品;新浪微博大數據產品,通過大量的社交數據,創造不同的社會經濟價值等。
1.2云計算的發展
云計算可以像電力資源一樣提供彈性的按需服務,事實上它是集合了一系列的服務提供給用戶。云計算的核心可分為三個層次,分別為基礎設施層、平臺層、應用層,如圖2所示。云計算將基礎設施、軟件運行環境、應用程序抽象成服務,具有可靠性高、可用性強、規模可伸縮等特點,滿足了不同企業的發展需求,各個云服務提供商根據各自服務對象的差別分別開發了各具特色的云服務。(1)基礎設施即服務層基礎設施即服務(InfrastructureasaService,IaaS)層通過部署硬件基礎設施對外提供服務,用戶可以根據各自的需求購買虛擬或實體的計算、存儲、網絡等資源。用戶可以在購買的空間內部署和運行軟件,包括操作系統和應用程序。消費者不能管理或控制任何云計算基礎設施,但能控制操作系統的選擇、存儲空間、部署的應用,也有可能獲得有限制的網絡組件(如防火墻、負載均衡器等)的控制。云服務提供商為了使硬件資源得到更有效的利用,引入了Xen、KVM、VMware等虛擬化技術,使得云服務商可以提供更個性化的IaaS服務。亞馬遜彈性云計算(AmazonElasticComputeCloud,AmazonEC2)是亞馬遜Web服務產品之一,AmazonEC2利用其全球性的數據中心網絡,為客戶提供虛擬主機服務,讓使用者可以租用云服務運行所需應用的系統。(2)平臺即服務層平臺即服務(PlatformasaService,PaaS)層是指云計算應用程序開發和部署的平臺,包括應用設計、應用開發、應用測試和應用托管,都作為一種服務提供給客戶。開發者只需要上傳代碼和數據就可以使用云服務,而無需關注底層的具體實現方式和管理模式。鑒于PaaS平臺的重要意義,國內外廠商根據各自的戰略提出了相應的PaaS平臺,國外的如GoogleAppEngine(GAE),通過GAE,即使在重載和數據量極大的情況下,也可以輕松構建能安全運行的應用程序。國內也有新浪的SAE(SinaAppEngine)、阿里的ACE(AliyunCloudEnginee)等。(3)軟件即服務層軟件即服務(SoftasaService,SaaS)層是為云計算終端用戶提供基于互聯網軟件應用服務的平臺。隨著Web服務、HTML5、AJAX、Mashup等技術的成熟與標準化,SaaS應用近年來發展迅速,典型的SaaS應用包括GoogleApps、SalesforceCRM等。國外云計算平臺比較成功的應用案例有:亞馬遜電子商務網站根據用戶的購買行為和搜索技術搭建Hadoop集群,構建推薦系統;Twitter社交網站搭建Hadoop分布式系統用于用戶關聯的建立。國內云計算平臺的成功案例有:阿里巴巴目前整個集群達到1700個節點,數據容量達到24.3PB,并且以每天255TB的速率不斷攀升;2013年,華為推出國內首個運營云平臺,目前為止與該平臺簽訂協議的ISV有3000多家。
1.3云計算相關技術
(1)分布式文件系統分布式文件系統(GoogleFileSystem,GFS)[3]是Google公司針對云計算過程處理海量數據而專門設計的。一個GFS集群由一個主節點和多個從節點組成,用戶可以通過客戶端訪問文件系統,進行正常的文件處理工作。在云計算中,海量數據文件被分割成多個固定大小的數據塊,這些數據塊被自動分配到不同的從節點存儲,并會在多個節點進行備份存儲,以免數據丟失。主服務器管理文件系統記錄文件的各種屬性,包括文件名、訪問控制權限、文件存儲塊映射、塊物理信息等數據。正是通過這個表,文件系統可以準確地找到文件存儲的位置,避免數據丟失,保證數據安全。圖3是GFS的體系結構示意,每一個節點都是普通的Linux服務器,GFS的工作就是協調成百上千的服務器為各種應用提供服務。(2)分布式并行數據庫BigTableBigTable[4]是一個為管理大規模結構化數據而設計的分布式存儲系統,可以擴展到PB級數據和上千臺服務器。很多Google的項目使用BigTable存儲數據,這些應用對BigTable提出了不同的挑戰,比如對數據規模的要求、對時延的要求。BigTable能滿足這些多變的要求,為這些產品成功地提供了靈活、高性能的存儲解決方案。BigTable采用的鍵是三維的,分別是行鍵(RowKey)、列鍵(ColumnKey)和時間戳(Timestamp)。行鍵和列鍵都是字節串,時間戳是64位整型;值是一個字節串,可以用(row:string,column:string,time:int64)string來表示一條鍵值對記錄。(3)分布式計算框架MapReduceMapReduce[5]是Google公司提出的大數據技術計算框架,被廣泛應用于數據挖掘、海量數據處理以及機器學習等領域,由于其并行化處理數據的強大能力,越來越多的廠商根據MapReduce思想開發了各自的云計算平臺,其中以Apache公司的Hadoop最為典型。MapReduce由Map和Reduce兩個階段組成。用戶只需要編寫簡單的map()和reduce()函數就可以完成復雜分布式程序設計,而不用了解計算框架的底層實現。MapReduce的數據分析流程如圖4所示。分布在不同服務器節點上的海量數據首先通過split()函數被拆分成Key/Value鍵值對,map()函數以該鍵值對為輸入,將該鍵值對進行函數處理,產生一系列的中間結果并存入磁盤。MapReduce的中間過程shuffle()將所有具有相同Key值的鍵值對傳遞給Reduce環節,Reduce會收集中間結果,并將相同的Value值合并,完成所有工作后將結果輸出給用戶。MapReduce是一個并行的計算框架,主要體現在不同的服務器節點同時啟動相同的工作,并且在每個獨立的服務器節點上又可以啟動多個map()、reduce()并行計算。
2基于云計算的大數據處理
目前大數據處理的基本流程如圖5所示,整個流程經過數據源的采集,用不同的方式進行處理和加工,形成標準的格式,存儲下來;然后用合適的數據計算處理方式將數據推送到數據分析和挖掘平臺,通過有效的數據分析和挖掘手段,找出大數據中有價值的信息;最后通過可視化技術將信息展現給人們。
2.1數據采集存儲
大數據具有不同結構的數據(包括結構、半結構、非結構),針對不同類型的數據,在進行云計算的分布采集時,需要選擇不同的數據采集方式收集數據,這也是大數據處理中最基礎的一步。采集到的數據并不是都適合推送到后面的平臺,需要對其進一步處理,例如來源不同的數據,需要對其進行加載合并;數據存在噪聲或者干擾點的,需要對其進行“清洗”和“去噪”等操作,從而保障數據的有效性;數據的格式或者量綱不統一的,需要對其進行標準化等轉換處理;最后處理生成的數據,通過特定的數據庫,如NoSQL數據(Google的BigTable,Amazon的Dynamo)進行存儲,方便進行下一步的數據讀取。由于傳統的數據倉庫無法適應大數據的存儲要求,目前基于云計算的數據倉庫都是采用列式存儲。列式存儲的數據具有相同的數據類型,可以大大提高數據的壓縮率,例如華為的云存儲服務MOS(MassiveObjectService)的數據持久性高達99.9%,同時提供高效率的端到端保障。
2.2數據計算模式
這一環節需要根據處理的數據類型和既定目標,選擇合適的計算模型處理數據。由于數據量的龐大,會消耗大量的計算資源,因此,傳統的計算技術很難使用大數據的環境條件,取而代之的是分而治之的分布式計算模式,具有代表性的幾種計算模式的特點見表1。采用批處理方式計算的Hadoop平臺,例如,Facebook擁有全球最大規模的Hadoop集群,集群機器目前超過3000臺,CPU核心更是超過30000個,可以存儲的數據量能夠達到驚人的40PB;采用流處理方式計算的Storm平臺分布式計算的時延比Hadoop更小;實時處理方式計算的Spark是一種基于內存的計算模式,例如,Yahoo運用Spark技術在廣告營銷中實時尋找目標用戶,目前在Yahoo部署的Spark集群有112臺節點和9.2TB內存;交互處理方式計算的Dremel在處理PB級別的數據時耗時可以縮短至秒級,并且無需大量的并發。
2.3數據分析挖掘
數據分析挖掘環節是從海量數據中發現隱藏規律和有價值信息的過程,這個環節是大數據處理流程最為有價值和核心的部分,傳統的數據分析方法有機器學習、商業智能等。傳統的數據挖掘十大算法[6](其中有K-Means、Na觙veBayes、SVM、EM、Apriori等)在云計算環境下都得到了大幅度的并行優化,在大數據的背景下,計算速度得到了很大程度的提升?,F在新興的深度學習是原始機器學習的一個新領域,動機是在于建立、模擬人腦進行分析學習的神經網絡,它模仿人腦的機制來解釋數據,這種新的數據分析挖掘技術已經在計算機視覺、語音識別、自然語言處理等領域有了成功的應用。
2.4數據解釋展現
將挖掘出來的復雜信息進行數據解釋和展現是整個大數據處理流程的最后一個環節,數據分析的結果需要向客戶進行恰當的展現。與傳統的數據輸出和文本展示等方式不同,現在絕大部分的企業都通過引進“數據可視化”技術來展示大數據分析的結果信息,這種方式以圖像、動畫等方式,形象地向客戶展現數據處理分析的結果,也容易被客戶理解和接受,更為先進的是,現在逐步形成的“交互式可視化技術”,大大地方便了數據與人之間的“親密交流”。目前面向大數據主流應用的可視化技術見表2。
3大數據和云計算的未來挑戰
大數據需要超大存儲容量的計算能力,云計算作為一種新的計算模式,為大數據的應用研究提供了技術支持,大數據和云計算的完美結合,相得益彰,發揮了各自的最大優勢,為社會創造了巨大的價值。雖然國內大數據和云計算的研究還是處于初步階段,但隨著研究的不斷進行,所面臨的問題也越來越多。在大數據向前不斷邁進的階段里,如何讓我們對大數據的研究朝著有利于全人類的方向發展成為了重中之重。
3.1重要戰略資源
在這個信息社會里,大數據將會成為眾多企業甚至是國家層面的重要戰略資源。國家層面要將大數據上升為國家戰略。奧巴馬在2012年3月將“大數據戰略”上升為最高國策,像陸權、海權、空權一樣,將數據的占有和控制作為重要的國家核心能力。大數據資源也會成為各種機構和企業的重要資產以及提升企業社會競爭力的有力武器。在大數據市場里,客戶的各種數據信息都會為企業創造價值,也會在促進消費水平、提高廣告效應等方面扮演重要的角色。
3.2數據隱私安全
大數據如果運用得當,可以有效地幫助相關領域做出幫助和決策,但若這些數據被泄露和竊取,隨之而來的將是個人信息及財產的安全問題得不到保障。2011年索尼公司遭到黑客攻擊,造成一億份客戶資料泄露,經濟虧損約1.71億美元。為了解決大數據的數據隱私安全問題,Roy等在2010年提出了一種隱私保護系統,將信息流控制和差分隱私保護技術融入到云計算平臺中,防止MapReduce計算過程中的數據泄露問題。在數據更新飛速的情況下,如何維護數據的隱私安全成為大數據時代研究的重點方向。
3.3智慧城市
人口的增長給城市交通、醫療、建筑等各方面帶來了不小的壓力,智慧城市就是依靠大數據和云計算技術,實現城市高效的管理、便捷的民生服務、可持續的產業發展。在剛剛結束的“兩會”的政府工作報告中,總理也特意強調了智慧城市發展的重要性,目前國家智慧城市試點已遍布全國各地,多達409個。智慧安防、智慧交通、智慧醫療等都是智慧城市應用領域。智慧城市的建設也趨使大數據人才的培養。據預測,到2015年,大數據將會出現約100萬的人才缺口,全球將新增440萬個與大數據相關的工作崗位來填補這個空缺。
云計算技術的發展為計算機的進一步技術提升提供了方向,由于云計算自身有著對空閑資源整合的優勢并能使之合理化的分配,所以在當前的工作生活中發揮了重要的功能作用。云計算的出現是技術上的革新,但為人們帶來方便的同時,在安全性上也存在著諸多問題,其中最為突出的就是數據的完整性,所以加強這一層面的理論研究就有著實質性意義。
1 云計算中數據完整性具備的特征及檢測技術
1.1 云計算中數據完整性具備的特征分析
云計算環境下的數據完整性自身具備著鮮明的特征,主要體現在對動態操作的支持,為能夠對云中的應用得以有效滿足,此時就需要完整性的驗證機制加以支持動態操作。當前的數據更新需要生成大量的簽名標簽,從而使得計算代價以及通信開銷方面相對較大。另外則是無狀態的認證以及對用戶隱私的確保,還有就是公開認證允許任意第三方替代用戶完成數據的完整性驗證。
1.2 云計算中數據完整性檢測技術分析
云計算中的數據完整性檢測技術比較多樣,此次分析比較重要的幾個協議,首先是哨兵完整性檢測方案,這一技術方案主要是在數據當中進行隨機插入小段數據作為哨兵,在進行實際的檢測過程中,對哨兵進行檢測替代對整個文件的檢測。這一技術方案的安全性主要體現在原始文件以及哨兵除了在數據的擁有著之外其他人是無法進行分辨的。這一協議主要是先對數據進行處理,按照糾錯以及加密和哨兵產生置換等程序進行實施。
從糾錯這一程序傻上來看,主要就是將文件按照每組數據當中有多塊的合理化分組,通過參數糾錯碼加以編碼。另外在加密過程中所使用的對稱密鑰加密編碼后每塊數據,再者就是哨兵的產生,而在最后的環節置換上,首先是要通過偽隨機置換函數將多個哨兵及加密后數據重新的排列并混合,從而實現數據中的嵌入工作。
2 云計算的數據完整性檢測方案設計
2.1 數據完整性檢測模型分析
云計算所提供的服務性能及成本管理等都有著很多的優勢,能夠讓用戶享受到高規格以及大容量的計算服務,而在云計算的數據完整性檢測的模型應用框架方面也比較重要,其應用框架主要有參與方以及云服務商等。在云服務商所建立的云系統方面主要是向數據的擁有著及請求者提供的云計算服務,為能有效的達到這一服務目標,云服務商就要能采取相應安全措施來對服務的安全性得以確保。
大數據的完整性檢測方案上,由于大數據信息量比較大,這就決定了其和普通大量數據間的區別,并能看出普通輕量級檢測協議是不能完成大數據完整性檢測的。要想能夠有效完成數據的完整性檢測,就需要滿足相應的條件,數據的檢測量和檢測位置可由用戶自己進行定義,倘若是檢測的方案不能實現檢測塊數量由用戶定義,是通過所有數據進行的監測,這樣在檢測所消耗的資源及時間上都有著較大的耗費。另外就是整個協議檢測階段的效率要能夠和文件以及數據塊大小保持獨立性,適用于大數據完整性檢測協議在數據檢測階段計算量不能與數據塊大小有關,否則就會造成計算隨著數據塊的增大而增大。
2.2 檢索公鑰加密算法設計
為能夠保障用戶的信息數據安全完整,就要進行制定相對應的方案,從方案的主要參與方上來看主要有數據信息的發送者以及接收者、服務器、可信第三方這幾個方面。其中的信息數據發送者主要是對數據的創建然后通過云服務商及接收者公開密鑰加密以及發送數據。而在接收者則主要是通過私鑰生成的所要查詢的關鍵信息,發送給云服務商進行檢索,在接收到云服務商檢索結果過程中,進行解密數據和對結果數據進行核對。再者就是云服務商以及可信第三方,云服務商主要是向接收者提供云中文件存儲及搜索服務,而可信第三方則主要是對云服務商的服務加以安全評估及認證,其主要的框架如圖1所示。
對數據的完整性及安全性的考慮,主要是從離線關鍵詞猜測攻擊以及抗不可區分性選擇明文攻擊層面進行考慮。從方案的設計過程來看,首先假設k是一個安全參數,在云計算的系統實施部署的過程中,可信第三方調用子算法來進行計算公共參數,而后通過調用子算法生成服務器及接收者公私鑰對并分發。在發送者所需要的明文文件n傳輸到接收者的時候,要對文件n的關鍵詞進行確認。這些程序完成之后在進行調用Trapdoor(cp,pks,skR,W)進行對對應的陷門信息進行計算,并傳輸至服務器,在對信息接收之后通過檢索得到密文并通過函數部分進行對密文解密。在這一過程中,接收者通過函數來解密文件的密文,然后通過相關的關鍵詞來判定返回密文和檢索的要求是否是符合的。
另外也可通過全同態加密的方式進行對數據完整性進行檢測,這一檢測的方法主要是在隱私的保護及數據處理過程中的應用,用戶把需要存儲的數據通過密文的形式進行提交云端服務器,其他的用戶能夠直接性的對密文數據進行處理操作但不能獲得原始的數據,而用戶則能通過云端服務器來獲取數據處理結果并進行同態加密。
3 結語
總而言之,云計算當中的數據完整性檢測是保障用戶數據信息的重要途徑,隨著科學技術的不斷發展,在檢測技術上也隨之而得到了升級,這樣對數據的完整性將會得到更有效的保障。由于本文的篇幅限制,不能進一步深化探究,希望此次努力能起到拋磚引玉的作用,以待后來者居上。
參考文獻
[1]姜日敏.電信運營商數據脫敏系統建設方案探討[J].中國科技信息,2014(08).
[2]程風剛.基于云計算的數據安全風險及防范策略[J].圖書館學研究,2014(02).
[3]王衍鋒,陳典友,姜帆,關磊,范瑾輝.商業銀行敏感數據識別與風險分析[J].計算機安全,2013(10).
[4]王志文,王強.云計算敏感數據防泄露技術研究[J].信息安全與通信保密,2013(08).
2云計算環境下工作流執行模型
科學工作流由工作流管理系統提交和管理,工作流管理系統駐留在提交主機,協調調度工作的流執行。工作流管理系統將工作流中的任務分配到虛擬機的工作節點,任務的執行所需要的數據可以從一個或多個輸入數據存儲點輸入。中間文件在工作流執行期間駐留在數據暫存站點。當工作流結束時,工作流管理系統刪除中間數據,同時將輸出文件從暫存站點轉存到輸出站點,然后永久性保存。根據工作流管理系統和目標執行環境的不同,多個數據站點可以協同工作。例如,在輸入數據已經駐留在計算節點的情況下,該計算節點和輸入點是相同的。圖2顯示了具有兩個任務的工作流,來說明工作流所需的文件是如何在邏輯上獨立的站點之間移動的。
3對象存儲應用于科學工作流中的數據管理
對象存儲系統主要包括存儲服務器、元數據服務器、客戶端等組成部分,其核心思想是將數據的讀和寫與元數據存儲分離,如圖3所示。存儲服務器主要負責數據存儲、智能的數據分布以及每個對象元數據的管理;元數據服務器主要提供對象存儲訪問、文件和目錄訪問管理以及客戶端緩存的一致性管理等功能。為了提供可擴展的可靠服務,對象存儲器的內部結構非常復雜。例如,亞馬遜的簡單存儲服務(S3)[12]通過REST(RepresentationalStateTransfer)、SOAP(SimpleObjectAccessProtocol)和APIs(ApplicationProgrammingInterfaces)提供檢索和刪除操作;它將一個對象的多個副本布局在存儲服務器上以提供錯誤情況下的冗余。很多網格存儲服務和為數據密集型應用設計的協議可以認為是對象存儲,這種架構對構建來自不同的執行環境的數據管理模式而言具有重要的借鑒意義。針對面向大數據工作流,利用對象存儲的優點,本文提出兩個方案:一是工作流中的3類數據文件都使用遠程的對象存儲;二是在計算節點上使用共享文件系統作為數據暫存點來存儲中間數據。
3.1單獨使用對象存儲
在這種情況下,所有的數據都存儲在對象存儲系統中,工作流管理系統需要從對象存儲中無縫檢索數據,為本地工作流任務使用。在這樣的設置中,工作流管理系統從對象存儲中檢索輸入文件和中間文件,然后,工作流中的任務對本地的POSIX文件系統做必要的輸入/輸出設置,任務完成時,工作流管理系統能夠將中間數據和輸出數據存儲到對象存儲中。這樣,即使工作流被部署在分布的資源上,科學應用只需要對POSIX做常規的輸入/輸出設置,就能完成工作流的執行。工作流管理系統與對象存儲的多次交互增加了工作流執行的開銷,而該開銷與分布資源上的計算相比并不算大。對象存儲中既有輸入數據也有中間數據,只要工作流系統與對象存儲能夠無縫檢索和存儲,那么任務執行可以在任何地方。如圖4中,任務t1可以在校園計算機集群上完成,而屬于同一工作流的任務t2可以在亞馬遜的EC2上完成,t1、t2使用亞馬遜的S3對象存儲作為中間數據文件的暫存??傊?,數據存儲和執行環境的分離,使得工作流在分布資源上的執行更為容易。一個常見的情況是,當計算需求超過本地或校園計算所提供的資源時,將使用云資源。圖4也說明了工作流的數據移動情況。在這里,文件F-i被傳送到云中的高性能計算集群工作節點的本地文件系統。任務t1從該節點開始,讀入輸入文件F-i,然后寫入本地文件系統的中間文件F-t,F-t被傳回到作為數據暫存點的對象存儲中。F-t文件將從對象存儲中被檢索進入到EC2節點的本地文件系統。任務t2啟動后讀取F-t文件(該文件是由t1創建),然后將F-o寫到本地磁盤,再傳送到對象存儲中。以上所有的數據傳輸工作都由工作流管理系統完成??茖W工作流中單獨使用對象存儲的明顯不足之處是,數據重復傳輸會引起在大數據處理過程中的延遲。工作流中的多個任務使用相同的文件,所以重復傳輸是顯而易見的[13][14]。對象存儲將對同一資源的重復請求認為是不同的請求,對象存儲通常以其良好的擴展性減輕這種重復對工作流性能造成的影響。另外,工作流系統可能在本地節點選擇緩存文件,或者利用集群中的共享文件系統來減輕此問題。延遲是整個工作流性能應該關注的問題,云對象存儲的設計提供了很高的帶寬,但對單個檢索或對象操作可能需要數秒鐘的延遲。對具有大量文件的數據密集型的科學工作流而言,這種延遲顯著增加了工作流運行的時間開銷。大型工作流中的另一個問題是多數中間文件需要被傳輸到對象存儲中由相關后續任務檢索并使用。由于商業對象存儲提供以GB為單位的存儲,并按遷移、存儲和檢索的請求數付費,所以重復傳輸也就意味著費用的增加。
3.2共享文件系統作為數據暫存
解決由數據重復遷移造成的延遲問題的方法之一,是工作流管理系統將中間文件暫存在POSIX兼容系統中,由多個計算節點文件系統共享,然后在一個資源節點上運行所有的計算。文件共享系統保存了工作流管理系統中所有任務的中間數據,在這種情況下,只有輸入輸出文件存儲在對象存儲中。由于中間文件不需要在對象存儲與計算節點之間傳送,從而可降低使用商業云對象存儲的費用。如圖5所示,是一個具有文件共享系統的高性能計算環境下具有2個任務的簡單工作流。文件F-i被工作流管理系統傳送到集群文件共享文件系統。任務t1在計算節點1上啟動,從共享文件系統中讀入文件F-i,然后將中間文件F-i-t寫入到共享文件系統中,任務t2在計算節點2上啟動,從文件共享系統中讀入F-i-t(由任務t1創建),然后將其輸出寫入到F-o,F-o由工作流管理系統送到對象存儲中,這種方法的優點在傳統的有高速并行超級計算環境中尤為顯著。例如,XSEDE(ExtremeScienceandEngineeringDiscoveryEnvironment)節點對多數科學工作流點有極大擴展性[15]。值得注意的是,如果第一個計算節點忙而需要將計算溢出到另一個節點時,這種隨數據布局任務的方法,損失了布局計算的靈活性。以上兩種方法各有所長,選擇使用哪種方法取決于工作流的類型和工作流執行的目標環境,這就要求工作流管理系統的開發具有彈性的數據管理方案,允許科學家有效使用對他們有用的基礎設施。工作流中的數據管理方案應該具有如下特征:首先,科學工作流管理系統允許任務和數據后綁定,任務依據資源的可用性映射到計算資源上,任務在執行時能夠發現資源,并從眾多存儲中選擇數據暫存位置;其次,在科學家只有一個計算資源可用的情況下,允許任務和數據的靜態綁定;再次,支持使用不同協議和不同安全機制訪問對象存儲。
4相關工作
工作流管理系統處理數據的方法很多,Swift[16]采用與本文所描述的第二種模式類似,使用本地文件系統或共享文件系統作為數據緩存,提交主機扮演數據暫存的角色。系統首先選擇一個計算站點來運行一個任務,然后將數據從提交主機推向該站點的文件系統,任務執行后,輸入的文件被回傳給提交主機,中間文件被留在共享文件系統中以便后續任務的執行。相對而言,本文將數據文件(包括輸入、輸出、中間文件)與提交主機分離,并使用不同的協議,具有更好的靈活性。其他工作流管理系統如Kepler[17],Triana[18]和Taverna[19]關注的是流式工作流中任務的調度和其他Web資源的調用,這些工作流具有圖形化的用戶界面,允許用戶搭建具有不同部件的工作流,但通常沒有涉及訪問大量數據集的問題。這些工作流中的數據管理很大程度上依賴于用戶,數據管理自動化非常有限。Kepler[20]引入了一個MapReduce執行器,允許執行采用MapReduce算法的混合工作流。Hadoop平臺通常用來運行數據密集型的科學應用,它所提供的文件操作與POSIX類似,允許隨機讀,但不允許隨機寫。在這種情況下,Hadoop平臺負責將輸入文件切片并分布在各個數據節點。而本文提出的方法主要針對工作流運行在多個不同的執行環境中,代碼不能MapReduce的情況。在XSEDE中,任務利用分布式文件系統如GPFS-WAN[21](GeneralParallelFileSystem-WAN)來訪問數據,分布式文件系統支持POSIX操作,可以對輸入和輸出文件進行遠程訪問。研究表明[22],將大型數據集布局在本地計算節點會更好,但這一策略也會帶來新的問題,如不同類型工作流的融合以及數據布局策略算法等。
中圖分類號:TP393 文獻標識碼:A 文章編號:2095-2163(2015)02-
Improve the Security of Cloud Computing Data with Encrypting the Communication Channel
ZHANG Jianzhen
(ShanXi Institute of Mechanical & Electrical Engineering, ChangZhi ShanXi 046000,China)
Abstract: With the development of cloud computing, the security of cloud data gets more and more attention, in order to make the data in the cloud computing, data storage, data communication be more secure, this paper analyzes main risk and the existed security measures, puts forward through encrypting the communication channel to strengthening communications’ security, which could promote cloud computing data security.
Keywords: Cloud Computing; Data Security; Data Encryption; Access Control; Channel Encryption
0 引 言
自2010年以來,云服務得到廣泛的應用,云計算、云存儲、云平臺幾乎滲透到工作、學習、生活的各個領域,許多企業紛紛搭建云平臺以提供云服務,還有一些企業則開始遷移企業數據至云平臺,以節約成本、提高效率。由于云計算對網絡的依賴,使其除了云計算技術本身安全性外,同時更要考慮計算機網絡的安全風險。如何保障云中數據的安全性,成為云技術發展的重要課題。
1 云計算數據風險分析
云計算的一個主要特征就是網絡依賴,其一切服務均通過計算機網絡來實現,用戶的數據存放在云端,無論使用PaaS、IaaS還是SaaS服務,均需要通過網絡與用戶通信。因此,云計算在平臺架構、網絡連接、用戶訪問等環節均存在安全風險。
1.1 平臺架構
2010年以來,OpenStack提供了最簡單可行的私有云平臺架構技術,支持僅通過5臺計算機建立一個正常運行的簡單云計算平臺,5臺計算機功能分別是計算服務器nova、存儲服務器swift、鏡像管理服務器glance、身份與訪問管理服務器keystone和Web服務接口Horizon,其中計算服務器Nova是OpenStack的核心,負責管理和優化云計算資源配置[1]。因此,如果Nova節點出現故障(SPoF,single point of failure),將直接導致OpenStack云平臺的崩潰,云中數據的可用性也不復存在[2]。
1.2 網絡連接
由于云計算對網絡的依賴性,所以一般網絡存在的安全風險在云計算中同樣存在,如中間節點、網絡設備、連接設備等構成云計算網絡每個環節的安全性,不僅如此,云計算平臺構建的網絡連接本身也將是云中數據安全的重要一環。
1.3 用戶訪問
分布式虛擬技術是云計算關鍵技術之一,在云中,用戶不僅不清楚自己的數據儲存在哪臺服務器上,也不了解服務器具體放置何處,用戶之間通過分布式虛擬技術實現共享計算或存儲資源,此時若用戶之間安全隔離不夠,就使得一些惡意用戶利用溢出等攻擊技術讀取共享區數據,從而使得用戶數據被竊取、篡改或丟失。
2 云計算數據安全主要措施
為保障云中數據安全,目前采用的安全保障措施主要包括數據加密和采用訪問控制策略。
2.1 數據加密
采用數據加密技術是實現用戶信息在云計算環境下安全存儲與安全隔離[3]的有效手段,目前比較流行的數據加密方法有同態加密[4-6]和基于屬性的加密。同態加密使云端在不知道用戶明文數據m情況下,對加密的用戶數據e直接進行操作,如同對明文進行操作,另外也有類似的半同態或somewhat同態加密技術?;趯傩缘募用苁褂糜脩舻膶傩约献鳛楣€對用戶數據加密[7],若一個訪問用戶要解密一個密文,則要求該用戶的屬性集合與公鑰的屬性集合相同屬性的數量達到要求數量才能解密。但加密數據的密鑰管理往往成為另一個新的問題。
2.2 訪問控制
用戶訪問云中數據時,必須經過云服務商CSP認證,因此,云服務商需要采用訪問控制策略來控制用戶對云中數據和云服務的訪問[8]。由于云計算中,用戶都有自己的數字ID,因此基于身份的加密IBE和簽名IBS的IBACC認證協議廣泛用于云計算身份認證,采用此身份認證方式,可以進行實時身份監控、權限認證和證書檢查,從而防止來自惡意用戶的越權訪問。訪問控制不能就消息傳輸過程的安全性作出反應。
3 通信信道加密保障安全
正如密碼學上經典的Alice和Bob通信問題,目前保障云中數據安全的方法無論加密消息本身還是在Alice和Bob之間設置訪問控制協議,均各有利弊。為保障云中數據的安全可靠,除采用數據加密和訪問控制外,充分借鑒計算機網絡通信加密技術提出通過信道加密來保障云數據安全。OSI通信模型中,加密可以發生在通信低層如物理層、數據鏈路層,也可以發生在如應用層等較高層。物理層與數據鏈路層等低層加密也叫鏈―鏈加密(link-by-link encryption),即通過該鏈路的所有數據將被加密;發生在較高層(如應用層)的加密叫端―端加密(end-to-end encryption),數據傳輸到此處時被有選擇性地加密,并且只在最后的接收端解密[9]。以下為加密具體實現方法。
3.1 鏈―鏈加密
鏈―鏈加密方法是在標準物理層接口處添加硬件設備,在線加密,每一次鏈接僅需要一組密鑰。通過物理接口的所有數據將被加密,如數據、路由信息、協議等,對用戶透明,發送端與接收端之間的任務智能交換或節點要處理數據必須對其進行解密,因此鏈―鏈加密以后,由于所有數據被加密,竊聽者得不到任何關于數據結構的信息,也無法猜測數據來源及目的地,偵聽到的僅是貌似隨機的位序列。由于鏈路加密需要對每個物理鏈路加密,只要有一處沒加密就會危及整個網絡安全。因此,對于大網絡,鏈―鏈加密開銷將變大,且中間節點數據易被暴露。鏈路加密原理如圖1所示。
圖1鏈路加密原理模型
Fig.1 Link encryption principle model
3.2 端―端加密
端―端加密方法主要是在通信模型的較高層――網絡層或傳輸層之間添加加密設備,加密設備根據OSI模型低三層的協議理解數據,由于端―端加密只加密傳輸中的數據單元,不處理路由信息,因而省去了通信中在物理層加解密信息的繁瑣,數據單元可以保持加密狀態,直到傳輸結束。端―端加密獨立于網絡所用的通信結構,加密和解密離線完成,因此密鑰管理相對復雜。由于路由信息不加密,因此攻擊者將可根據路由信息分析通信雙方,通信時間及時長等。端―端加密原理如圖2所示。
圖2端―端加密原理模型
Fig.2 P2P encryption principle model
3.3 組合加密
根據鏈―鏈加密與端―端加密的優缺點,考慮一種針對云計算有效的網絡安全方式,即加密每個物理鏈路同時加密數據單元,從而既避開了端―端加密攻擊者對路由信息的分析,也提升了鏈―鏈加密中間節點數據的安全性。密鑰管理方面,用戶仍采用離線的端―端加密,網絡管理員負責物理層在線的鏈―鏈加密。
4 結束語
隨著云計算技術的發展,云服務不斷滲透人們生活的方方面面,但是由于云計算模式下數據異地存儲導致數據超出人們的掌控范圍,數據安全成為時下普遍關注的焦點。數據加密與訪問控制是最常規的安全措施,作為云計算數據傳輸的“高速公路”――通信信道往往被人們所忽視,數據安全環環相扣,只要其中任何一個環節出現漏洞,均會導致功虧一簣。通過數據加密、訪問控制、信道加密三位一體的安全措施,相信在一定程度上解決云計算數據安全問題,但隨著網絡技術的高新、快速發展,有效的安全手段仍需要不斷深入研究,力爭實現防患于未然。
參考文獻:
[1] 陳伯龍,程志鵬.云計算與OpenStack[M].北京:電子工業出版社,2013.
[2] 曾文琦,葉家煒,楊陽,等.面向應用服務的虛擬機性能評估[J].計算機工程與設計,2014(10): 156-158.
[3] 張啟云.云計算中數據安全問題研究[J].計算機光盤軟件與應用, 2012(6):25-26.
[4] 吳旭東.云計算數據安全研究[A].第26次全國計算機安全學術交流會論文集[C]. 上海:信息網絡安全, 2011:38-40.
[5] Marten van Dijk and Craig Gentry and Shai Halevi and Vinod Vaikuntanathan.Full Homomorphic Encryption over the Integers[C]//Eurocrypt.Nice,France:ICAR,2010.
[6] 彭偉.面向云計算安全的同態加密技術應用研究[D]. 重慶:重慶大學, 2014.
[7] 程玉柱,胡伏湘.云計算中數據資源的安全加密機制[J].長沙民政職業技術學院學報, 2013(2):132-134.
【中圖分類號】G40-057 【文獻標識碼】A 【論文編號】1009-8097(2012)03-0099-05
引言
隨著的IT(Information Technology,信息技術)逐漸滲透到高校的教學、科研和辦公等核心業務,各類信息系統數量和存儲的數據越來越多,數據中心規模越來越大,學校對數據中心的可靠性、安全性、靈活性提出了更苛刻的要求,傳統的數據中心建設管理模式己無法滿足當前數字化校園的建設需求。服務器虛擬化以其高效、節能、高可用等諸多優點已經為人們所熟知,在高校校園網中服務器虛擬化的應用也越來越廣泛。許多高校在使用虛擬化技術改造或新建數據中心時,僅實現了服務器的虛擬化,對實現數據中心整體虛擬化及云計算技術在數據中心的研究和應用較少。服務器虛擬化提升了服務器硬件使用效率,但如果不能實現數據中心的整體虛擬化,虛擬機得不到存儲及網絡系統的支持,虛擬化技術提供的高可靠性、高可用性、靈活性等更有價值的功能將無法得到應用。本文分析了利用云計算、虛擬化和無狀態計算等技術對服務器、存儲、網絡和應用交付設備進行全面虛擬化整合的方法,并對關鍵技術的選擇進行了深入的探討。最后在徐州師范大學數據中心建設方案的基礎上,提出了一套基于云計算以實現數據中心計算服務化、資源虛擬化和管理智能化為建設目標的數據中心優化解決方案。
一、高校數據中心建設的現狀
不斷成熟的虛擬化技術正在幫助更多的高校數據中心減少服務器數量、優化資源配置并簡化管理,利用虛擬化和云計算技術可以實現動態IT基礎設施環境,進一步改善現有的架構和管理模式,得到了諸多高校的認可。但是目前多數高校僅實現了用虛擬服務器簡單代替物理服務器,而沒有把數據中心內的存儲、網絡及應用交付系統進行針對性調整,虛擬化技術提供的高可用性、高可靠性和資源動態分配等非常有應用價值的功無法實施,傳統數據中心普遍存在的業務連續性差、靈活性差、業務部署周期長、管理維護成本高和高負載應用(如每學期的集中選課)等問題依然沒有得到解決。
在數據中心僅對服務器進行虛擬化,而不對其它硬件資源進行針對性的調整,各類信息系統仍然無法與其使用的硬件資源徹底脫離關系。當應用系統使用的硬件資源性能無法滿足需要或出現故障時,信息系統的運行仍將受到影響。在利用云計算技術實現了存儲、網絡應用交付系統整體虛擬化的數據中心,所有的硬件資源都在一個統一管理、分配并具有彈性伸縮能力的資源池中,這可以為應用系統屏蔽底層硬件架構的復雜性,使應用系統與硬件資源徹底分離,系統使用的計算、存儲和網絡資源可以從數據中心的資源池中按需獲取,資源池中的設備出現故障時或系統需要更多的計算、網絡和存儲資源時,云計算管理平臺可自動從資源池中分配新的可用資源,從而保證業務的連續性和可用性。數據中心整體虛擬化基礎架構與服務器虛擬化架構比較如圖1所示。
在高校數據中心建設中可以通過云計算技術解決服務器虛擬化帶來的問題。云計算是通過整合、管理、調配分布在數據中心的各類資源,并以統一的界面向用戶提供安全可靠的數據存儲、網絡和計算能力。作為一種共享的網絡交付信息服務的模式,云計算的使用者看到的只有服務本身,而不用關心相關基礎設施的具體實現,利用云計算和虛擬化技術構建數據中心,對數據中心的服務器、存儲、網絡和應用交付系統進行整體虛擬化,使整個數據中心的運行實現高效、可靠、安全和高可用的同時,還可對硬件資源進行智能管理、靈活部署、動態調整和按需分配,最終實現IaaS(Infrastructureas a Service,基礎設施即服務)的目標。利用云計算技術可根本解決高校傳統數據中心普遍存在的多種問題,考核數據中心運維情況的TCO、服務器利用率、節能、穩定性、容災、可用性、安全性等指標,與傳統無虛擬化的數據中心和僅對服務器做了虛擬化的數據中心相比有明顯提升,根據[3]中調查數據,利用雷達圖對相關指示做了比較如圖2所示。
二、云計算數據中心的關鍵環節
建設云計算數據中心時,除了已被廣泛接受的虛擬化技術以外,資源池化、資源動態管理和資源動態擴展等技術是實現高校云計算數據中心的關鍵環節。本節將分析這些環節實現技術的特點及其在數據中心建設過程中的作用。
1.資源池化
資源池化是指通過虛擬化手段,將數據中心內的軟、硬件資源虛擬成一個大的“資源水池”,從而簡化硬件資源管理、調度難度,實現資源按需獲取和空閑資源自動釋放,是實現云計算數據中心的關鍵技術之一,也是實現云計算數據中心的基礎。云計算數據中心對虛擬化的要求不僅僅是將一臺服務器變成多臺這么簡單,它需要把數據中心的各類硬件資源虛擬并轉化為多個資源池,包括計算資源池、網絡資源池、存儲資源池、安全和應用交付池等。資源池化是云計算的一個典型特點,只有實現了資源的池化,才有可能實現資源的靈活分配。
實現資源池化可以使數據中心的硬件資源管理方式由管理離散的硬件更改為管理虛擬化的共享資源池,管理工作將變得更加簡單和高效,同時還可以提高硬件資源利用率并針對關鍵應用優先進行動態的資源分配。從資源池可以按應用系統需要分配出個性化的邏輯構造塊(包含計算、網絡、存儲和安全能力),根據應用系統需求這些從資源池中獲取的邏輯構造塊經過針對性調整,可提供修改化的服務級別或業務需求。實現資源池還有一個優勢就是可以實現業務的快速部署,將資源池中的資源動態的分配給應用程序。每個應用程序與。個vApp(Virtual Application,虛擬化應用程序)堆棧捆綁,而vApp配有應用程序需要的應用服務器、數據庫和服務器操作系統配置,這使得業務部署變得更加靈活、高效。
2.資源動態管理
資源動態管理可以簡化資源管理、調度難度,實現資源按需獲取和空閑資源快速釋放是云計算數據中心必須具備的能力。變更指定給應用系統負載的硬件資源或硬件資源離線維護時,負載需要在硬件資源之間進行轉移,這需要數據中心對資源池進行動態管理。如何智能化的分配、調整、回收資源池中的資源是云計算數據中心必須解決的問題。數據中心資源的動態管理可有效提高設備利用率和數據中心可用性、可靠性和靈活性。
數據中心資源池的管理和調度可以通過負載均衡設備及虛擬化軟件的DRS(Distributed Resources Scheduler,分布式
資源調度)、HA(VMware High Availability,高可用性)、FT(Fault Tolerance,系統容錯)等功能實現各類應用程序產生的負載在不同的硬件資源上動態移動,從而實現硬件資源的按需分配、動態調整和自動回收。通過多種資源管理技術的實施可以整合工作負載、提高利用率、減少單點故障、實現故障自動切換等功能,使各類應用系統不必再去關心硬件資源的分配及運行情況,應用系統面對的只是一臺虛擬機,虛擬機產生的數據流被靈活、均衡地分配到資源池中,從而實現了資源的動態管理。
3.動態擴展
現有資源池內的資源無法滿足應用系統的需求時,就需要數據中心的資源池可以在不中斷服務的情況下實現快速擴容。采用模塊化數據中心(Portable Optimized Datacenter.POD)的建設方式,在每個模塊里有支撐業務部署的計算、網絡、及存儲資源,這種方式實現了資源的高度整合,縮短了建設周期,避免了大型平臺建設中不必要的銜接問題。同時每個模塊具有獨立承載業務能力,提升了后期設備選型的靈活性。隨著技術的發展,IT行業越來越意識到把應用部署在單一支撐點的缺陷,云計算環境建議采用并行分布部署方式將業務加載到多個物理上完全獨立的模塊上,從而確保云環境下應用的高冗余及業務連續性。通過POD建設方式動態擴展資源池的過程如圖3所示。
三、關鍵設備和軟件的選型
本節將介紹各資源系統實現方法并給出一些高校在建設云計算數據中心時技術、設備選擇的建議。重點介紹計算系統、網絡系統、存儲系統和安全應用交付系統和云管理平臺的建設方法。
1.計算系統設計與實現
計算資源的虛擬化是通過服務器虛擬化軟件來實現的,關于服務器虛擬化軟件的選擇爭議并不大,在高校中應用最廣泛、最具有代表意義的服務器虛擬化軟件是VMware公司的vSphere,也有部分高校使用了少量的Hyper-V、XenServer和Virtuozzo。vSphere是目前唯一可供生產環境使用的虛擬化套件,與同類產品相比其整合比最高,優勢明顯。
在服務器的選擇上首先考慮的是設備的性能,系統最終能否支持海量用戶服務及時響應的需求是系統設計是否成功的關鍵。其次是系統結構應該具有伸縮能力,保證系統能夠在維持系統框架、追加少量備件或設備的前提下,滿足數年內學校業務增長的需要。徐州師范大學計算系統采用統一計算、一體化架構設計,計算能力主要由兩臺Cisco UCS 5108刀片服務器提供。UCS采用了Service Profile和無狀態計算概念,UCS中的所有服務器在沒被啟用前均可視為裸機,其物理特性已經不再重要。配置文件會自動尋找第一個可用的服務器,并和它關聯。當該服務器損壞,配置文件會自動尋找第二個可用服務器。由于配置文件中設置了服務器的物理參數,備用服務器也會獲取和原服務器一樣的物理參數,因此,無需在網絡和存儲設備上做任何重新設置,備用服務器就能具有原服務器所有物理特性,操作系統和應用還可以實現自動重啟,完全無需人工干預即實現了備機的自動上線。
高校公共數據平臺使用的數據庫產品多數是Oracle,因Oracle公司不建議將其產品部署于第三方公司的虛擬化平臺上,同時高校公共數據平臺是整個數字化校園的基礎,對硬件性能、可靠性、可用性要求都非常高。因此在徐州師范大學計算資源中還另外增加了兩臺IBM公司的Power 740小型機供數據庫系統使用,同時服務器負載均衡,這在提升了服務器處理能力的同時實現了雙機熱備,該方案整體性能可滿足學校公共數據平臺運轉需求。
2.網絡系統設計與實現
云計算數據中心網絡區別于傳統的數據中心網絡及校園網,網絡資源調用方式是面向云服務而不是面向復雜的物理底層設施進行設計的。通過網絡虛擬化可以把數據中心的網絡設備以一種與物理位置、物理存在和物理狀態無關的方式進行調用,這是云計算架構中IT資源池形成的關鍵環節。網絡虛擬化是實現網絡資源復用、降低管理維護復雜度、提高網絡設備利用率、保證全局服務策略一致性的關鍵,同時也是為自動化資源調用和配置打下基礎。
高校數據中心承載業務的應用特點決定了其網絡既要考慮傳統校園網絡接入,又要考慮數據中心網絡接入,因此在方案設計上采用超大規模數據中心交換機Cisco Nexus 7000作為核心,在性能上實現了網絡核心和數據中心匯聚交換機資源的共享和復用,解決了核心層數據量和數據中心數據量可能存在較大差異的問題。數據中心核心配備了兩臺10插槽Nexus 7000,通過虛擬交換技術以雙機冗余的方式部署在網絡核心。配置了1塊48端口1/10G板卡,通過選配不同的光纖模塊,可同時實現萬兆和千兆的接入。在網絡虛擬化方面,Nexus采用了VDC(VirtualDeviceContent,虛擬化數據中心)技術,可以將一臺物理交換機邏輯上模擬成多臺虛擬交換機,從而實現更加靈活的、與物理設備無關的跨平臺資源分配能力,為數據中心這種底層設施資源消耗型網絡提供更經濟高效的組網方式,也為管理和運營智能化、自動化創造了條件。
另外還可以通過改進虛機系統平臺內的軟交換機運行方式來提升虛擬化網絡的運行質量。Cisco與VMware聯合推出了一款內置于vSphere系統的分布式交換機Nexus 1000v,替代V/V1ware原有的vSwitch和分布式交換機。該交換機使得在一個集群內主機上的所有虛機可以看成連接在單一的一臺智能化交換機上,如圖4所示,它可實現無論虛機如何遷移,配置在虛擬交換機上的所有網絡策略都隨虛機遷移而自動跟隨,這在降低管理復雜性的同時提升了虛擬機的遷移速度。
3.存儲系統設計與實現
云計算采用分布式存儲的方式來存儲數據,在云計算數據中心對服務器穩定性的要求有所降低,但對存儲可靠性與性能要求大幅提高。存儲系統是數據中心的核心基礎,其性能的優劣、質量的好壞,對全局影響重大,因此如何保證數據中心的存儲系統能夠不斷地完善、發展,保持系統的實用性和技術的先進性是在整個數據中心建設方案中必須重點考慮的問題。在存儲系統平臺的選型上應充分考慮系統應用水平和處理數據量的大小,在云計算數據中心因虛擬化帶來的服務器密度增加,導致I/O(Input/Output,輸入輸出)成為系統性能瓶頸,因此需要根據實際情況重點考慮系統I/O性能。
云計算數據中心存儲系統建設基本原則是利用虛擬化技術和先進的大容量存儲設備,集中、智能管理所有存儲設備,形成存儲資源池。系統應能提供完善、便捷的備份恢復解決方案,保證數據的高可用性。EMC公司VNX存儲系統在以上幾個方面都有卓越的表現,并且和本方案的軟、硬件基礎架構有機結合,形成一個完善的軟硬件存儲系統虛擬化解決方案。徐州師范大學數據中心建設方案中,我們采用一臺EMC VNX5300存儲作為數據中心主存儲,配置兩個SAN(Storage
Area Network,存儲區域網絡)控制器,已提高系統的可靠性,配置一個NAS(network attached storage,網絡附加存儲)控制器以提高系統的靈活性。配置SAS硬盤,用于對I/O性能要求高的應用。為了降低成本,還配置了SAT硬盤用于存儲對容量要求高,但對性能不太敏感的數據。另外設計一臺EMC VNX5100存儲作為數據中心的容災存儲。存儲網絡通過FC(Fiber Chanel,光纖通道)和FCoE(Fibre Channel over Ethernet,以太網光纖通道)共存的方式實現,這樣不僅解決了新舊技術過渡問題,還減少了接入交換機類型、數量和復雜性,整合了網絡資源,提高了數據中心資源部署效率,降低了功耗。
4.安全應用交付系統設計與實現
虛擬化環境下虛擬機的數量及密度迅速膨脹,為了減少防毒過程中的資源消耗、簡化管理手段并加強虛擬機的透明性和安全性,我們在虛擬機安全產品上選擇的是Trend公司的Deep Security。該系統是一套保護服務器和應用程序的綜合安全系統,擁有無安全防護技術,該系統通過與VMware的控管中心整合,無需在虛擬機中安裝任何插件,即可實現對虛擬機的安全防護,這進一步減少了虛擬服務器的資源消耗,提升了計算資源工作的有效性。
虛擬化平臺本身具備部分對平臺內的計算資源、存儲資源的負載均衡能力,可以在運行期間持續監控群集內所有主機和虛擬機的CPU、內存資源的分布情況和使用情況,根據運行情況執行相應虛擬機遷移或提供遷移建議,從而保持計算資源的負載平衡。徐州師范大學數據中心建設中,輕負載通過創建基于VMware vSphere的主機DRS集群和存儲SDRS(Storage Distributed Resources Scheduler,分布式資源調度)集群實現管理。大型負載如選課、統一身份認證的負載分流由F5公司的本地流量管理設備BIG-IP LTM實現。該設備通過與vSphere的深度整合,維護方便,利用虛擬化環境軟件的自動遷移功能,可靠性也較高。
根據主流備份系統的搭建準則,徐州師范大學通過具有重復數據刪除功能的EMC Avama備份系統組建了統一的智能備份系統。通過新的數據備份技術,實現了在存儲系統中完成對所有數據的備份工作,備份工作不再基于數據所處的操作系統,這在大幅簡化數據備份工作難度的同時,提升了數據備份的效率。同時因備份工作不再通過服務器,從而節省了大量的計算和網絡資源,降低了數據中心的負載。Avama直接運行于VMware vSphere虛擬化平臺之上,無需其他操作系統支持。另外系統支持操作系統的快速恢復,且備份的操作系統可以靈活的恢復到不同的硬件服務器上?;謴蛿祿r不需采用全備份疊加增量備份來恢復至指定的時間點,而是采用任意時間點恢復的方式。
5.云管理平臺
云管理平臺負責整個數據中心資源管理,是各資源池的管理和工作負載交付管理平臺,是實現IaaS的關鍵環節。云管理平臺應能針對不同的資源池,提供統一的云管理接口,以實現對本架構中的各資源池集中管理,包括資源管理、監控、配置、診斷、故障檢測、審核及統計數據收集等方面的管理。徐州師范大學云管理平臺是在vSphere為云計算系統提供的基礎設施架構的基礎上,通過第三方個性化開發軟件實現了與vSphere的對接。該平臺具有良好的跨平臺和功能擴展性,系統用戶通過Web界面就可以實現自助式申請和管理,系統管理員不再需要手工生成和配置用戶所要求的虛擬機,而是交由管理平臺自動完成。
6.數據中心拓撲
一、云計算基本概念
近些年,云計算這一概念在行業內被普遍提及,也隨之為這一技術帶來了巨大的發展。維基百科()對云計算的定義如下:一種基于互聯網的計算機新方式,通過互聯網上的異構、自治的服務為個人和企業用戶提供按需即取的計算。分析這一概念我們可以了解到,在互聯網時代,計算能力已經成為了一種“商品”在進行銷售,它就像我們日常生活中的水電、煤氣一樣,價格便宜,使用方便。目前,國內外的互聯網商業巨頭紛紛推出自己的云計算平臺,如google、微軟、IBM、亞馬遜等,并將其作為未來發展的重要戰略之一。因此,針對云計算的研究不僅是互聯網時代業界技術發展的重要趨勢,也具有十分重要的應用價值。
二、云計算的體系結構
云計算是一個革命性的舉措,它不僅帶來了IT模式的變化,也引發了IT服務的變革。在云計算時代,數據是自己的,而對于數據的計算、處理等操作,都可以交給云計算數據中心進行。云計算平臺可以看成是一個強大的“云”網絡,不僅將眾多并發的網格計算和服務連接起來,還利用虛擬化技術對每一個服務器能力進行拓展,這樣就通過云計算平臺使得各自的資源整合起來,擁有超級計算和存儲能力。從總體上看,云計算由三個基礎部分組成:基礎設施,網絡和終端。
三、云計算的關鍵技術
云計算是以數據為中心的一種數據密集型的超級計算方式,它在數據存儲和管理、編程模式和虛擬化等方面都具有自身獨特的技術。
(一)數據存儲和管理。云計算的數據一般采用分布式方式進行存儲和管理。為了保證數據的高吞吐率、可靠性及高利用率,冗余存儲的方式也時常采用。此外,鑒于云計算中對數據讀取和分析的頻率高于數據更新頻率,云計算系統的數據管理常采用列存儲的數據管理模式---將表按列劃分后存儲。
(二)編程模式。在云計算系統的編程實現過程中,應當盡可能的簡單化。究其原因,主要是因為簡單化的編程模式能夠為基于云計算服務的開發人員提供便利,可以幫助他們在進行后臺并行執行和任務調度時獲得相對透明的流程,進一步得幫忙他們專心于業務邏輯。
(三)虛擬化技術。虛擬化技術是云計算有別于一般并行計算的根本性特點,也是云計算中的一個關鍵技術。采用虛擬機技術對云計算資源進行管理具有以下幾點優勢:移動性、獨立性和高整合性。
四、云計算中的網絡拓撲設計
云計算作為基于互聯網的商業計算模型,其后端的網絡拓撲結構十分復雜。對云計算系統中后端大量的服務器進行有效地組織和管理一直是云計算研究中重要的方面,這是保證云計算系統穩定運行的關鍵。和一般的企業網絡、公網相比,云計算網絡結構的特點有以下幾方面不同:
(一)云計算系統后端網絡的復雜程度遠遠大于一般公司的網絡,因此,合理高效的網絡拓撲結構是云計算系統中的關鍵,其主要的作用在于為網絡中數據傳輸的暢通和穩定提供保證。
(二)云計算系統網絡內部的數據流量大,主要由于系統主要面向大量的用戶和大規模的業務處理。同時,還可能會有服務等級區分度較大的問題。
(三)云計算系統的中網絡需要保證高穩定性,這主要是由于用戶所有業務及數據都依賴云來開展。
(四)云計算系統需要有良好的可擴展性。云計算系統的規模較大,不可能一次性建設完成,而且用戶規模會隨服務的增加持續擴大,因此,如果沒有良好的可擴展性很難滿足要求。
圖 1. 云系統后端網絡結構示意圖
云計算系統中整個網絡的效率、穩定性和復雜度由核心交換層的網絡拓撲結構決定。顯而易見的,如果核心交換節點直接兩兩相【摘 要】本文的出發點為云計算的網絡需求,針對云計算系統中的網絡拓撲結構特點進行研究與分析,提出了云計算系統中網絡拓撲結構的基本思想――由中心的主干交換部分和樹狀子網組成;并給出了相應的實現解決思路。
【關鍵詞】云計算 網絡拓撲設計 算法實現
連,由此形成的全連通網絡抗穩定性是最優的,網絡的暢通性也能夠得到保證。但是,這樣拓撲結構的網絡其建設和維護的成本較高,各個核心交換節點中的路由和管理復雜度極高。另一方面,直接以各自交換節點為根生成最小生成樹也可以構建網絡,這樣的網絡拓撲結構相對簡單,成本低,但是其穩定性較差,容易造成網絡的不連通。
因此,一種合理且有效的方式可以簡化為如圖1所示的結構。通過對該網絡抽象化,將需要研究的問題突出顯示,即抽象化每一個子網為一個節點,給每個節點附上交換能力、子網流量和地理位置信息等特性。此時,針對網絡主干拓撲結構的設計問題就可以表示為如何在已知若干節點容量、地理位置信息和可能流量等信息的前提下,將這些節點互相連接并形成一個冗余小、網絡架設開銷小的網絡拓撲。
針對云計算網絡拓撲設計已有眾多研究者進行了深入的研究和討論,該問題可以表示成圖論中的一個數學模型:即抽象化云計算系統中的網絡節點和所有可能的鏈路,表示為圖論中圖的頂點和邊,抽象化帶寬、延時、鏈路長度等表示為圖的邊權重。
本文針對云計算系統后端網絡的特點,給出了云計算網絡拓撲結構組成---主干交換部分為中心和樹狀子網為結構。通過將該問題抽象化為數學模型,并求解該抽象化問題,能夠有效地計算出云計算系統的網絡拓撲結構。
參考文獻:
[1]鄧自立, 云計算中的網絡拓撲設計和Hadoop平臺研究,[D].中國科學技術大學. 2009. 學位論文
0 引言
2006年谷歌推出了“Google 101計劃”,并正式提出“云”的概念和理論。隨后亞馬遜、微軟、惠普、雅虎、英特爾、IBM等公司都宣布了自己的“云計劃”。
云計算的思想可以追溯到20世紀60年代,John McCar2thy[1]曾經提到“計算早晚有一天能變成公用的基礎設施”,意味著計算能力可以流通,像人們使用商品一樣使用計算機資源。將計算、服務作為一種公共設施為公眾提供,像使用電話、煤氣和水電一樣使用計算機資源,并且費用低廉、取用方便。云計算是通過互聯網進行傳輸的,數據存儲在云端,服務存儲在云端,通過利用數據的強大計算能力,為用戶服務。繼2007年IBM和Google宣布在云計算領域的合作后[2],云計算迅速成為產業界與學術界的熱點研究,得到廣泛的關注。
1 云計算的定義
云計算(Cloud Computing)是網格計算(Grid Computing)、分布式計算(Distributed Computing)、并行計算(Parallel Computing)、效用計算(Utility Computing)網絡存儲(Network Storage Technologies)、虛擬化(Virtualization)、負載均衡(Load Balance)等傳統計算機技術和網絡技術發展融合的產物,是新興的商業計算模型。它旨在通過網絡把多個成本相對較低的計算實體整合成一個具有強大計算能力的完美系統,并借助SaaS、PaaS、IaaS、MSP等先進的商業模式把這強大的計算能力分布到終端用戶手中。Cloud Computing的一個核心理念就是通過不斷提高“云”的處理能力,進而減少用戶終端的處理負擔,最終使用戶終端簡化成一個單純的輸入輸出設備,并能按需享受“云”的強大計算處理能力通俗的理解是,云計算的“云”就是存在于互聯網上的服務器集群上的資源,它包括硬件資源和軟件資源,本地計算機只需要通過互聯網發送一個需求信息,遠端就會有成千上萬的計算機為你提供需要的資源并將結果返回到本地計算機,這樣,本地計算機幾乎不需要做什么,所有的處理都在云計算提供商所提供的計算機群來完成。
2 云計算的主要服務形式
目前,云計算的主要服務形式有:SaaS、Paas和IaaS。
(1)軟件即服務(SaaS)。SaaS服務指的是提供商在自己的服務器上將應用軟件統一部署,用戶通過互聯網來訂購自己需要的應用軟件,提供商會根據所定軟件的時間長短和數量來收費,服務提供商會通過瀏覽器給用戶提供軟件。(2)平臺即服務(PaaS)。PaaS是指將開發環境作為服務來提供。廠商提供開發環境、服務器平臺、硬件資源等服務給客戶,用戶在其平臺基礎上定制開發自己的應用程序并通過其服務器和互聯網傳遞給其他客戶。PaaS能夠給企業或個人提供研發的中間件平臺,提供應用程序開發、數據庫、應用服務器、試驗、托管及應用服務。(3)基礎設施服務(IaaS)。IaaS即把廠商的由多臺服務器組成的“云端”基礎設施,作為計量服務提供給客戶。它可以提供存儲資源和虛擬化服務器,前提是它將I/O設備、內存、計算能力和存儲整理合并成虛擬的資源池。這是一種托管型硬件方式,用戶付費使用廠商的硬件設施。
3 云計算的核心技術
云計算系統運用了許多技術,其中以編程模型、數據管理技術、數據存儲技術、虛擬化技術、云計算平臺管理技術最為關鍵。
(1)編程模型。MapReduce是Google開發的java、Python、C++編程模型,它是一種簡化的分布式編程模型和高效的任務調度模型,用于大規模數據集(大于1TB)的并行運算。嚴格的編程模型使云計算環境下的編程十分簡單。(2)海量數據分布存儲技術。云計算系統由大量服務器組成,同時為大量用戶服務,因此云計算系統采用分布式存儲的方式存儲數據,用冗余存儲的方式保證了數據可靠性。(3)海量數據管理技術。云計算需要對分布的、海量的數據進行處理、分析,因此,數據管理技術必需能夠高效的管理大量的數據。云計算系統中的數據管理技術主要是Google的BT數據管理技術和Hadoop團隊開發的開源數據管理模塊HBase。(4)虛擬化技術。通過虛擬化技術可實現軟件應用與底層硬件相隔離,它包括將單個資源劃分成多個虛擬資源的裂分模式,也包括將多個資源整合成一個虛擬資源的聚合模式。(5)云計算平臺管理技術。云計算系統的平臺管理技術能夠將大量的服務器進行協同工作,進行業務部署和開通非常方便,發現和恢復系統故障也非常的快速,通過智能化、自動化的手段實現大規模系統的運營。
4 云計算技術發展面臨的主要問題
隨著云計算技術的日益發展和廣泛應用,云計算模式同時存在著一些問題。(1)數據隱私問題。如何保證存放在云服務提供商的數據隱私不被非法利用,不僅需要技術的改進,也需要法律的進一步完善。(2)數據安全性。有些數據是企業的商業機密,數據的安全性關系到企業的生存和發展。云計算數據的安全性問題解決不了會影響云計算在企業中的應用。(3)用戶使用習慣。如何改變用戶的使用習慣,使用戶適應網絡化的軟硬件應用是長期而艱巨的挑戰。(4)網絡傳輸問題。云計算服務依賴網絡,目前網速低且不穩定,使云應用的性能不高。云計算的普及依賴網絡技術的發展。
5 結語
目前,云計算技術的發展正處在起步階段,但云計算技術的發展將會改變用戶對計算資源的使用方式,使用戶從以桌面為核心轉向了以Web為核心。云計算的前景美好,但還存在一些技術問題亟待解決,例如可擴展的并行計算技術、高可靠的系統容錯技術、數據安全技術、負載均衡技術、海量數據的挖掘技術、任務調度技術等方向。隨著云計算技術的發展,將會有更多的平臺和服務不斷涌現出來進而推動云計算技術及其應用的發展。
中圖分類號:TH16, TP311 文獻標識碼:A 文章編號:1007-9416(2017)02-0108-01
1 系統設計
1.1 系統軟件的開發平臺
數控機床可靠性管理系統采用SQL Server 2000作為數據庫軟件,采用VC++6.0作為應用程序。VC++6.0是微軟公司推出的一種可視化的、面向對象的Windows應用程序開發工具,VC既具有C++的強大功能和高效性,同時又具有可視化編程的方便性,所以越來越受到使用者的歡迎。
1.2 系統的功能模塊[2]
該系統主要包括:用戶管理模塊、數據信息管理模塊、設備運行狀態查詢模塊、可靠性指標分析模塊、報表輸出模塊。
2 SQL數據庫的建立
2.1 ADO數據連接技術
ADO(ActiveX Data Objects)是微數據庫應用程序開發的新接口,可以通過VC++先建立一個ADO連接對象,然后通過該對象打開到數據庫的連接。為了簡化操作,在使用ADO對象時可以將其封裝到類中,這樣只要引用封裝類的頭文件,即可使用封裝過的ADO對象。[3]
2.2 數據的錄入
系統主要錄入機床名稱、故障維修時間、故障部位、故障現象和故障原因等數控設備基本數據信息。
3 功能模塊實現
3.1 用戶管理模塊
該模塊主要是為了確保系統數據的安全,將登錄用戶分為:普通、高級、管理員三類用戶。
三類用戶的權限如下:普通用戶可以瀏覽和導出數據,不能編輯數據;高級用戶可以編輯數據;管理員用戶除了可以編輯數據外,還可以對普通和高級用戶進行權限管理。
3.2 數據信息管理模塊
該模塊主要實現數控設備故障信息的添加、修改、刪除、保存、導出等功能。
3.3 數控設備運行狀態查詢模塊[4]
該模塊是對數控機床的故障狀態進行統計和查詢,可以根據字段名、邏輯關系、過濾條件等進行查詢,也可以導出相關的機床編號、故障編號、運行時間、故障率等信息,以方便進行故障分析。
3.4 可靠性指標分析模塊[5]
該模塊主要計算數控機床可靠性分析常用的三個指標MTBF、MTTR、A的值。
(1)平均故障間隔時間MTBF,一般可用式(1)計算。
(1)
其中,N0 為在評定周期內機床累計故障頻數;
n為機床抽樣臺數;
ti為在評定周期內第i臺機床的實際工作時間(h);
ri為在評定周期內第i臺機床出現的故障頻數。
(2)平均維修時間 MTTR,一般可用式(2)計算:
(2)
其中:tMi ――在評定周期內第i臺數控床的實際修復時間(小時)。
(3)固有可用度 A,固有可用度A 綜合了可靠度和維修度的可靠性特征量,其計算公式為:
(3)
3.5 報表輸出模塊
該模塊主要是打印功能,可以輸出數控設備的故障信息表、數控設備的運行狀態、數控設備的可靠性指標分析等數據信息。
4 結語
數控機床可靠性管理系統是針對數控機床產品的基本故障信息管理和可靠性評估而開發的,通過軟件的使用可以實現用戶管理、數據信息管理、設備運行狀態查詢、可靠性指標分析、報表輸出等功能,實現了設計的目的和要求。此外, 通過該軟件的數據結果可以分析出數控機床的薄弱環節和潛在缺點,方便生產廠家采取改進機床的可靠性的措施, 并為機床使用廠家的維修計劃提供建設性的依據,增加企業的經濟效益。
參考文獻
[1]李南,盧曉紅,韓鵬卓,武文毅.數控機床及其關鍵功能部件可靠性研究綜述[J].組合機床與自動化加工技術,2012(11).
[2]鄭銳.基于可靠性分析的數控機床維修策略研究[D].吉林:吉林大學碩士論文,2011.6.
一、SDN技術的發展歷史
2006年,SDN誕生于美國GENI項目資助的斯坦福大學Clean Slate課題。
2008年,基于Ethane 及其前續項目Sane的啟發, Nick McKeown 教授等人提出了OpenFlow 的概念,并于當年在ACM SIGCOMM 發表了題為《OpenFlow: Enabling Innovation in Campus Networks》的論文,首次詳細地介紹了OpenFlow 的概念。
2009年12月,OpenFlow規范了具有里程碑意義的可用于商業化產品的1.0版本,之后又進一步修訂推出了1.1、1.2、1.3、1.4版本。
在工業界,2010年1月,Google數據中心開始采用OpenFlow技術。
2011年3月,開放網絡聯盟ONF成立,標志著SDN/ OpenFlow從單純的學術研究正式過渡到產業化發展的軌道中。
2012年底,AT&T、英國電信(BT)、德國電信、Orange、意大利電信、西班牙電信公司和Verizon聯合發起成立了網絡功能虛擬化產業聯盟(Network Functions Virtualisation,NFV),旨在將SDN的理念引入電信業。除ONF外,包括互聯網工程任務組、國際電信聯盟、歐洲電信標準協議也在推動SDN的發展和應用。
二、應用場景
目前,SDN主要應用于通信技術領域,具體涉及校園網、移動網絡以及云計算網絡等,隨著SDN技術的深化發展,其應用領域會更加廣泛。
2.1應用于校園網
SDN最早誕生于斯坦福大學的Clean Slate課題,該課題主要是用于校園網絡的試驗創新,旨在改變設計已略顯不合時宜,且難以進化發展的現有網絡基礎架構,從而構建一個靈活高效的校園網。
2012年,國家“863”項目“未來網絡體系結構和創新環境” 獲得科技部批準。該項目是一個符合SDN思想的項目主要由清華大學牽頭負責,清華大學、中科院計算所、北郵、東南大學、北京大學等分別負責各課題,項目提出了未來網絡體系結構創新環境FINE(Future Internet innovation Environment)。
2.2應用于移動網
SDN邏輯上集中的控制平面能夠更好地實現網絡融合,使統一管理成為可能。利用SDN技術可以在固定網絡和移動網絡中實現無縫控制、提高VPN管理的靈活性等。
在運營商網絡中利用SDN技術不但能夠降低網絡管理難度,還能加快業務部署速度,提高網絡服務器的適應能力。
目前,我國三大移動運營商紛紛找有實力的SDN技術研發公司進行合作,如華為與電信運營商的合作,其合作的目的是將現有的網絡結構向SDN網絡結構轉型,以期能夠適應時代的潮流,為客戶提供更好的服務。
2.3應用于云計算網絡
隨著網絡通信技術的發展以及客戶需求的增長,傳統的存儲處理系統遠遠達不到數據處理的需求,因此提出了集群及云計算概念。
云計算數據中心的交換機管理結構復雜,因此需要對服務器和虛擬機進行快速配置和數據遷移。如果不能在大量的服務器集群中進行快速高效的尋址與數據傳輸,就極容易造成網絡擁塞,發揮不出網絡功能。
在數據中心網絡中部署OpenFlow交換機,可以借助SDN技術,實現高效尋址、優化傳輸路徑、負載均衡等功能,提供數據交換的效率。
三、展望
SDN是一種新興的網絡架構,屬于下一代網絡技術研究范疇,但又與其他下一代網絡技術研究方向有很大區別。由于SDN技術剛剛提出,因此目前使用軟件定義網絡還存在一些問題,如讓不同的網絡服務提供者互相交換網絡信息從商業的角度來說是不容易實現的,在實現數據平面和控制平面的分離時如何實現分離轉發和控制面的OpenFlow協議的完善等。
但是相信隨著SDN技術的發展,這些問題在不久的將來會得到妥善解決。
參 考 文 獻
中圖分類號:TP309 文獻標識碼:A 文章編號:1671-7597(2013)19-0059-02
隨著云計算技術的興起,傳統的C/S和B/S模式網絡服務形式正在發生著各種變革。在云計算模式下,客戶端和服務器端的定位正在發生變化,網絡的主要功能從服務器端到客戶端信息的傳送變化成服務的傳送。云計算服務體系由許多企事業單位的私有云及其相互之間的連接網絡組成。云的增多使得云內部、云之間和客戶之間的連接網絡越來越龐大和復雜,網絡內部的數據存儲和傳輸也變得越來越復雜,作為云計算信息傳輸的基礎網絡而言,傳統的網絡架構和協議無法應對越來越復雜的數據傳輸要求,而數據在不同節點的存儲和傳輸控制顯得復雜化,所以有必要對傳統的網絡結構和存儲技術進行相應的改進,建立一個具有高連通性、高吞吐量、高可靠性與安全性的云中數據存儲與傳輸架構。同時具有較低的實現成本。
1 云計算數據中心拓撲結構改進
云計算采用虛擬化技術建立一個抽象的云概念和透明的訪問方式,便于用戶的使用。云計算需要建立一個數據中心,數據中心由網絡將不同的云或云計算單元互聯,網絡需要實現較高吞吐帶寬和較高的可靠性。傳統的基于核心層、匯聚層和接入層三層的網絡拓撲結構能將數據實現分層,應用于局域網傳輸具有較大的優勢。為了提高網絡的可靠性每層網絡設備之間還使用了多根線路連接,具備了鏈路冗余和流量負載均衡的功能。但作為提供云計算服務的服務器位于接入層交換機之下,服務器與接入層交換機只能實現單線連接,無冗余和流量負載功能。不利于發揮服務器群的性能。本文提出了一種在原有拓撲結構基礎上利用可管理交換機實現網絡結構改進,使服務器能實現雙出口設計,大大增強服務器的數據吞吐量。同時具有較好的容錯功能。具體如圖1所示。
在本拓撲結構中,出現兩個對稱的網絡拓撲結構樹,將服務器實現了雙出口設計。此網絡能容納的服務器數量主要以交換機的端口數為準,核心層和匯聚層交換機可以通過增加插槽和模塊的方式擴容,端口一般夠用。接入層交換機一般為固定端口,以24、48口居多。如果以每個交換機48個口為例,則整個網絡可以容納27648臺服務器。對一般的企事業單位構建私有云來說都足夠了。當然此結構的成本低廉,且容易實現,具有雙倍的數據吞吐量,能充分挖掘服務器的性能。如果網絡中虛擬主機需要遷移則更容易實現。
改變了網絡拓撲結構后需要對網絡重新進行IP地址的劃分,并重新進內網的路由設計。為了提高網絡的可伸縮性、增加服務器的容量。建議采用10.0.0.0/8的A類私網地址,然后根據匯聚層和和接入層交換機的數據量劃分子網,一般推薦每一個接入層交換機劃入一個VLAN,因為每個接入層交換機的端口數為48,所有保留5個主機位即可,剩下19個主機位可以作為子網劃分用。根據業務和管理需要,將連接相同功能的服務器的接入層交換機劃入相同子網,然后再對每個接入交換機劃分子網。也就是說子網的劃分從核心、匯聚到接入逐級劃分,這樣的好處是路由匯總容易,路由條目較少,便于網絡維護。需要注意的是,服務采用雙網卡,兩個網卡處于不同的網段,服務器本身采用負載均衡技術實現兩個網卡的流量平衡。由于全網采用VLAN的方式結合冗余路由協議實現全網互通的話存在一定安全隱患,當某臺服務器感染病毒時可能會導致整個網絡傳輸大量垃圾信息。所以推薦在匯聚層和核心層之間采用路由模式。以提高整個網絡的抗攻擊能力。采用此方式還可以發揮匯聚交換機的交換性能。
2 網絡緩存技術設計
對云計算機平臺設計好網絡拓撲結構后,需要對網絡中服務器進行功能定位。服務器系統有索引服務器、存儲服務器和客戶端節點三個部分組成。索引服務器主要保存賬戶、空間、內容目錄、文件片與存儲位置等信息。該服務器主要給方便用戶訪問所需要的資源。存儲服務器主要保存云計算平臺所提供的各種資源及其備份??蛻艄濣c則提供系統入口,通過預先定義的規則與云中的其他服務器進行交互。這樣的網絡存儲系統可以利用廣域網中大量開放的存儲服務形成云服務。能提供較大空間和數據傳輸帶寬。當用戶的數量劇增或出現黑客攻擊時,也可能出現許多用戶請求同一服務而導致拒絕服務。具體表現在:
1)當較多用戶下載同一數據時,將導致大量的訪問請求指向存儲該數據的服務器,該服務器由于壓力劇增而出現崩潰的幾率將大增。
2)云服務方便用戶上傳大量文件,當用戶頻繁訪問某種存儲服務時出現速度變慢等現象,這是由于出現了服務拒絕的情況,當然可以通過重傳的等方式,但執行任務的周期會增加,從拖累了整個系統的效率。
針對該問題,本文提出了給云計算數據中心增加緩存服務器層的思路來改進云計算平臺的數據保存和傳輸效率的思路。主要做法如下:
1)引入緩存服務器層概念,增加相應的數據存儲服務器,將服務器集中統一的方式進行管理,作為系統初始的文件冗余備份機制。如果將云計算平臺看作一臺計算機,那么該服務器群相當于給整個數據中心增加了內存容量。該服務器群定位于臨時數據的存儲。
2)將客戶端的帶寬和存儲資源利用起來,運用分布式哈希算法來解決結構化的分布式存儲問題,將用戶節點組織起來,使用戶之間能夠彼此交換數據和資源共享。這樣可以減輕存放數據的服務器的壓力,避免服務器成為系統瓶頸或出現崩潰現象。
3)添加點對點的網絡傳輸層,引入服務節點群和傳輸節點全兩個模型,服務節點具有帶寬高、計算能力強、存儲量大、在線時間長的特點。傳輸節點則相對于服務節點性能較弱、資源較少。服務節點根據一定評價指標進行篩選,然后根據KAD算法組成一個網絡,網絡信息有緩存服務器進行保存,服務節點的主要作用是共享數據或提供服務。具體拓撲結構如圖2所示。
4) 處理流程:
上傳數據:用戶節點聯入網絡后,如果達到了服務節點的要求,將成為服務節點,并向緩存服務器匯報自己的節點信息,緩存服務器根據緩存的節點信息調度各個服務節點協同作業。用戶節點向索引服務器請求網絡存儲服務器,獲得授權后首先向緩存服務器上傳數據,作為冗余備份。然后通過緩存服務器層向網絡存儲服務器上傳數據。
協同傳輸備份:索引服務器將需要備份的數據信息發送到緩存服務器,緩存服務器根據其保存的各種節點信息協調節點進行傳輸備份,這樣緩存服務器、服務節點和存儲服務器都具有備份的數據。當然緩存服務器、服務節點保存的時間有限,存儲服務器是永久保存。根據傳輸備份結果將數據保存信息反饋給索引服務器,方便下次用戶數據下載請求訪問。
下載數據:用戶節點下載數據時,索引服務器將用戶引導至緩存服務器,當緩存服務器存在用戶下載的數據時,將引導用戶從上傳該數據的服務節點下載,用戶節點還可以根據下載速度同時從服務節點、緩存服務器和存儲服務器同時下載。服務節點、緩存服務器和存儲服務器會根據負載的情況動態調整帶寬。多方下載的前提是數據進行了合理的分片。下載后用戶需要將分片的數據進行重組。
3 總結
云計算技術的不斷應用,促使傳統的數據中心拓撲結構不斷發生著改變,數據中心內部、用戶與云平臺之間的數據傳輸和存儲方式在不斷發生著改變,本文提出的新型拓撲結構和數據傳輸技術適用于目前常見的云計算平臺。數據中心的網絡拓撲結構的優化,充分利用了傳統三層結構的穩定性與高效性,同時也增加了服務器的出口容量,釋放了服務器的潛力,消除了云計算平臺數據中心的系統瓶頸,提高了整個系統的可靠性和效率。緩存數據層的引入則加快了用戶使用云計算平臺的有效傳輸效率,特別是用戶下載數據體驗會更好。經過模型的測試,采用優化網絡拓撲和增加緩存數據層結構的云計算平臺能教明顯的提高數據的傳輸速率,該結構的特點是投入有限的硬件設備的條件下,利用用戶節點的資源充分挖掘云計算平臺本身潛力,實現了整個系統的資源配置優化。
項目基金
本論文是湖南省教育廳科學研究項目“基于云計算的安全數據存儲服務技術研究”(11C0273)的研究成果。
參考文獻