周紅衛 劉 娜
中國電子科技集團公司第28研究所
目前,國外已經有多家IT公司和研究機構在云計算領域取得了國際領先的成果,其中最為主要的是Amazon AWS、Miscrosoft Azure、IBM、Google等,他們都各自研發了自己的云計算產品,并向各類用戶提供云服務。以ISO/IEC JTC1、ITU-T、DMTF、SNIA等為代表的標準化組織和協會紛紛開展云計算標準化工作,并取得實質性進展。如何依據現有的標準化成果,構建統一的云測評標準,并以市場發展為導向,逐步完善和豐富云測評框架和方法,成為推動云計算產業健康有序發展的基礎性工作之一。
國內從2010年開始開展云計算標準化工作,組織業內50多家單位調研云計算標準化需求,從基礎、技術和產品、服務、安全等多個方面開展10多項云計算國際標準、國家標準和行業標準的編制。伴隨國內云計算產品的層出不窮,云測評工作越來越得到重視,一方面,幫助云服務提供者合規高效地建設云;另一方面,幫助用戶有效識別和選擇云計算產品。
本文以對云計算基礎設施的高彈性、高可靠、按需服務等功能性能指標進行測試和量化評估為需求,構建了云計算基礎設施產品測評框架,提出云計算基礎設施的測試方法和多元感知負載模擬技術,為云計算基礎設施產品的測試提供依據。
云計算產品是指為搭建云計算平臺所需要的硬件和軟件產品,以及云終端產品。其中,硬件產品的主要形態有云計算一體機和云存儲設備,軟件產品可分為基礎設施產品、平臺產品和應用產品。目前,云計算IaaS基礎設施層的軟件產品技術較為成熟,產品種類包括服務器虛擬化系統、云計算資源管理平臺、云存儲管理系統和網絡管理系統,如圖1所示。

圖1 云計算基礎設施功能框架
服務器虛擬化技術是指能夠在一臺物理服務器上運行多臺虛擬服務器的技術,不僅可提高服務器資源的利用率,而且還能增強系統安全性和可靠性。在服務器虛擬化技術中,被虛擬出來的服務器稱為虛擬機(Virtual Machine,VM),負責管理虛擬機的軟件稱為虛擬機管理器(Virtual Machine Monior,VMM),又稱為服務器虛擬化系統。虛擬機通過軟件模擬了一個具有完整硬件系統功能并且可隔離運行的完整計算機系統。服務器虛擬化系統負責創建和管理虛擬機,并支持快速配置和優化新的和現有的虛擬機。
服務器虛擬化系統的功能測評框架分為虛擬機基本特性、虛擬機基本功能和虛擬機管理功能三部分,如圖2所示。
虛擬機基本特性測試包括虛擬機兼容性(含操作系統兼容性、虛擬網卡驅動兼容性、存儲架構兼容性)檢測、虛擬機隔離性(含虛擬機物理隔離性、虛擬機網絡隔離性)檢測、虛擬機封裝性檢測、虛擬機硬件獨立性檢測。
虛擬機基本功能測試包括虛擬機運行控制操作、虛擬機模板操作、系統鏡像操作、虛擬機快照操作、虛擬機克隆操作、虛擬機備份操作。
虛擬機管理功能測試包括虛擬機遠程連接管理、虛擬機監控管理、虛擬機遷移管理、虛擬機CPU配置管理、虛擬機內存配置管理、虛擬機存儲配置管理、虛擬機虛擬網卡配置管理、系統日志管理、用戶權限管理。
云計算資源管理平臺以IaaS基礎資源池為基礎。IaaS基礎資源池采用虛擬化技術,實現了對底層物理資源的抽象,使其成為一個個可被靈活生成、調度、管理的基礎資源單位。云計算資源管理平臺則將這些資源進行有效整合,形成一個可統一管理、靈活分配調度、動態遷移的基礎服務設施資源池。
云計算資源管理平臺的核心是實現對每個基礎資源單位(物理資源或虛擬化資源)的生命周期管理能力和對資源的管理調度能力。對資源的生命周期管理是指對資源的生成、分配、擴展、遷移、回收的全流程管理,關鍵技術包括虛擬機自動化部署、虛擬機彈性能力提供、資源狀態監控、度量和資源回收等。資源的管理調度能力是指對資源的全局性管理與調度,包括模板管理、接口管理、調度策略管理、資源使用量的采集和度量。
云計算資源管理平臺的管理功能測評框架分為資源管理功能要求和平臺運維功能要求兩部分,具體如圖3所示。

圖3 云計算資源管理平臺功能測評框架
云計算資源管理功能測評包括平臺管理界面、虛擬機生命周期管理、虛擬機模板管理、虛擬機快照管理、虛擬機備份管理、虛擬機批量操作、虛擬機預配置、虛擬機動態部署、虛擬機動態調度、虛擬機遠程登錄、虛擬機V2V遷移、遠程USB設備重定向、虛擬機網絡管理、虛擬網絡配置管理、虛擬存儲管理。
平臺運維功能測評包括物流服務器增刪管理、物流服務器遠程控制、系統資源狀態監控、系統資源監控統計、系統監控告警管理、平臺日志管理、用戶權限管理。
云存儲是在云計算概念上延伸和發展出來的一個新的概念,是指通過集群應用、網格技術或分布式文件系統等功能,將網絡中大量各種不同類型的存儲設備通過應用軟件集合起來協同工作,共同對外提供數據存儲和業務訪問功能的一個系統。當云計算系統運算和處理的核心是大量數據的存儲和管理時,云計算系統中就需要配置大量的存儲設備,那么云計算系統就轉變為一個云存儲系統,所以云存儲是一個以數據存儲和管理為核心的云計算系統,云存儲可分為云存儲管理系統與數據存儲兩部分。
典型云數據存儲類型框架如圖4所示。該框架按數據結構化程度不同從非結構化、半結構化和結構化三個層次展開。云存儲管理系統通過不同的接口對相應存儲類型進行管理。云存儲管理系統互操作性測評主要對這些接口進行標準符合性驗證。

圖4 典型云數據存儲類型功能測評框架
基礎支撐環境將各類計算存儲、安全保密、時空基準、綜合管理和基礎數據等資源進行動態互聯,基礎支撐環境的性能測試主要負責測試服務器的整機性能。基礎支撐環境性能測試指標主要包括CPU處理性能、內存帶寬性能、文件系統性能、硬盤I/O性能、網絡傳輸性能、數據庫處理性能、圖形顯示性能和整機性能,詳見圖5所示。

圖5 基礎支撐性能指標
(1)CPU處理性能
通過多個模塊進行科學計算的操作,包括覆蓋面很廣的一系列c函數:sin、cos、sqrt、exp、log等,用于整數和浮點數的數學運算、數組訪問、條件分支和程序調用。基于對整型計算及浮點計算的衡量要求,提出了整型計算和浮點計算兩項指標。根據實際應用情況,設置單線程場景和多線程場景,其中多線程場景分為:1/2物理核數的線程、1倍物理核數的線程、2倍物理核數的線程。測試指標為數學運算、數組訪問、條件分支和程序調用多方面的加權值。
(2)內存帶寬性能
通過設定服務器數組長度,考察內存Copy操作帶寬性能。主要包括以下方面:
①Copy操作最為簡單,它先訪問一個內存單元讀出其中的值,再將值寫入到另一個內存單元。
②Scale操作先從內存單元讀出其中的值,作一個乘法運算,再將結果寫入到另一個內存單元。
③Add操作先從內存單元讀出兩個值,做加法運算,再將結果寫入到另一個內存單元。
④Triad的中文含義是將三個組合起來,在本測試中表示的意思是將Copy、Scale、Add三種操作組合起來進行測試。
(3)文件系統性能
測試二進制文件的拷貝時間,主要測試指標為Real(實際時間)、User(用戶CPU時間)和Sys(系統CPU時間)。
①Real(實際時間):命令開始執行到結束的時間,包括其他進程所占用的時間片和進程被阻塞時所花費的時間;
②User(用戶CPU時間):命令執行完成花費的用戶CPU時間,即命令在用戶態中執行時間的總和;
③Sys(系統CPU時間):為命令執行完成花費的系統CPU時間,即命令在核心態中執行時間的總和。
其中,用戶CPU時間和系統CPU時間之和為CPU時間,即命令占用CPU執行的時間總和。在本項試驗中,主要考察CPU時間,即user(用戶 CPU time)和sys(系統CPU時間)之和。
(4)硬盤I/O性能
使用磁盤性能測試工具IOZONE,采用全自動模式,測試寫、重復寫、讀、重復讀不同模式下的硬盤的性能。
(5)網絡傳輸性能
針對基于TCP或UDP的傳輸進行測試,主要測試指標為單向批量傳輸性能,測試類型為TCP_STREAM,UDP_STREAM。
(6)數據庫處理性能
測試數據的導入導出、使用存儲過程插入大量數據、連續插入大量數據、批量入庫測試等。
(7)圖形顯示
測試二維和三維圖形點、線、圈操作處理能力。
(8)整機性能
設置單線程場景和多線程場景測試整機性能。
云計算平臺測試過程需要業務負載驅動,如圖6所示。一方面可以直接根據業務特征生成相應的流量負載;另一方面可以模擬用戶使用系統來產生業務負載。

圖6 多元感知測試負載生成
(1)云計算用戶負載產生
云計算平臺運行規模較大,測試活動也較頻繁,通過人工使用系統產生負載有一些困難。此時需通過模擬用戶使用系統來產生業務負載。采用模擬機器人模擬用戶對系統的操作,一種是模擬用戶的鼠標鍵盤操作,另一種是仿真機器人直接調用系統的服務接口。通過不同的策略腳本可以模擬不同的使用人員。實現大規模環境下的負載產生。模擬機器人產生的負載與根據業務特征生成相應的流量負載相比,更接近真實運行環境。
(2)云平臺流量產生器
直接根據云平臺運行業務特征生成系統負載的產生要符合實際,針對不同典型軍事信息系統設計開發基于業務行為負載產生工具,例如模擬典型網絡化信息系統(雷達組網系統)中業務流量,大批量用戶行為產生的流量信息模擬,重點包括情報用戶的訂閱情報請求行為、信息查詢行為、態勢分發行為等。
(3)多元感知負載產生
通過基于流量行為的應用識別技術,例如協議/應用感知、內容感知和上下文感知,識別不同的應用類型體現在會話連接或數據流上的狀態各有不同的原理(與NetFlow技術相似),建立流量特征模型,通過分析會話連接流的包長、連接速率、傳輸字節量、包與包之間的間隔等信息來與流量模型對比,從而能夠通過調整模型參數來產生負載,如圖7所示。

圖7 業務負載產生器
為了更精確地建立網絡負載特征模型,通過精準定義關鍵的參數,以及為負載產生提供方便,不僅要描述其整體結構框架,還需要定量描述網絡承載的業務。
通常情況下,網絡阻塞會受到下面幾個參量的影響:
①業務量的分布:表示的是業務量在各節點對之間是非對稱分布還是對稱分布的。非對稱分布稱為非均勻業務量(Non-inform Traffic),對稱分布稱為均勻業務量模式(Uniform Traffic)。
②業務總量:表示的就是在每個節點之間需要建立連接的個數,該參數對非動態業務下具有十分重要的意義。
③業務量的到達和保持特性:在動態網絡中,連接保持時間特性和連接請求到達率會影響阻塞性能;而在電路交換網絡中,呼叫到達特性和呼叫保持特性會對網絡對呼叫的阻塞性能產生嚴重的影響。通常情況下,假定連接的保持特性服從負指數分布,此外,絕大多數模型的連接請求的到達服從Poisson分布。然而隨著IP業務飛速發展以及大量應用的出現,目前實際的網絡模型已經不能夠被Poisson到達模型很好地反映。業務突發度需要利用非泊松(Non-Poisson)業務模型描述。突發性存在于大多數高層業務類型的分布中,因而Non-Poisson業務非常適合用自相(Self-SimilarTraffic)來描述。
云計算基礎設施產品測評研究以對云計算基礎設施的高彈性、高可靠、按需服務等功能性能指標進行測試和量化評估為需求,構建了虛擬化系統、云計算資源管理和云存儲管理功能測評框架,提出云計算基礎設施的基本整機測試方法和多元感知負載模擬技術,為用戶有效地識別和選擇云計算產品提供方法和技術支撐。