高負載場景下的C6實例初體驗:網絡包轉發速率上1000萬PPS
彈性云服務器(ECS)是云計算最基礎的服務之一,其性能和穩定性直接決定云計算的用戶體驗。每當有重大的計算或網絡硬件更新,云服務器就會升級換代,將性能推向新的高度。顯然,盡快將新的硬件技術應用于云服務器,是云服務商的核心競爭力之一。
4月3日上午,英特爾在太平洋兩岸近乎同步的發布了代號Cascade Lake的第二代至強可擴展處理器。中午12點,基于Cascade Lake的華為云全新一代通用計算增強型云服務器C6正式轉為商用。此刻,北京的發布會尚未結束,距舊金山的發布會開始也還不到12小時。
在正式轉為商用之前,C6和通用計算型云服務器S6都經歷了長達四周的公測階段。換言之,大約在3月初,這兩款基于新一代至強可擴展處理器的實例便已基本就位了。
七年前推出的至強E5系列奠定了英特爾在云計算領域的統治地位,經過前后4代的發展,于2017年轉為代號Skylake的第一代至強可擴展處理器,這樣算來,到Cascade Lake就是第6代了。
擁有定制版本的至強處理器是云計算服務商市場地位和規模的體現。在Skylake時代,華為云有兩款定制處理器,分別用于C3/C3ne和S3,那么C6和S6自然對應兩款華為定制版Cascade Lake處理器。
Cascade Lake可以視為Skylake的完善版本,大多數2代型號主要體現為100~300MHz的頻率提升。不過,C3和C3ne實例的基頻已經是國內一線云計算服務商同類產品中最高的了,頻率上C6只需繼承基頻3.0GHz、睿頻3.4GHz的配置就可以了,最直觀的改進是內核數量的增加——vCPU上限從60增加到64,并吸收了C3ne在網絡方面的增強,不愧是華為云的旗艦系列。
技術實現方案圖
C6實例在網絡方面的增強主要包括以下三大創新:
1. 軟硬結合,流表歸一,快表轉發
虛擬網絡數據面轉發首創集成流表方案,將業界傳統流表用戶態轉發方式卸載到華為海思自研u-NIC芯片上,實現主機流量快表轉發,全功能加速和卸載,最大內網帶寬可達40G,網絡包轉發速率可到1000萬PPS。
2. 獨創零拷貝技術方案,生態兼容
虛擬網絡數據面轉發首創軟硬結合的virtio后端軟直通技術,零拷貝技術方案保證40Gbps流量進入虛擬機,同時保證對虛擬機內原生virtio前端兼容,無需升級GuestOS驅動,避免業界標準SR-IOV方案的部署難題。
3. 數據面無間斷升級,高可靠和高可用
虛擬網絡數據面轉發各個模塊(EVS/集成流表數據面/virtio-agent)設計解耦,支持fail static特性,有效提高了健壯性和快速特性部署。
看起來,C6的計算和網絡性能真是令人期待。
C6的舞臺
在華為云C6實例公測期間,E企研究院在16款不同配置的C6實例中,選取了4款典型配置的C6實例進行了測試,以評估其在計算、存儲以及網絡方面的性能表現。以下為我們用于測試的C6實例配置:
E企研究院在華為云C6實例中選取了如下4種配置:
c6.xlarge.4(4vCPU與16GB內存)是最主流的商用類型,具有較高的性價比,適用于廣泛的中小型應用;
c6.4xlarge.4為前一款的增強型配置,具有更多的vCPU數量與更高的內存容量,面向性能要求較高的中小型應用;
C6.8xlarge.4搭配32vCPU與128GB內存容量,適用于中大型應用,其高性能網絡帶寬使得其在集群部署方面更有優勢;
頂配款c6.16xlarge.4的64vCPU和256GB內存創下了C系列的新高,還有最高40Gbps帶寬和1000萬PPS轉發能力,以滿足中大型應用提出的苛刻性能需求。
E企研究院用于測試的華為云C6實例類型
在C6實例中實際上并不包括存儲的配置(數據存儲,OS盤不算其中),但在實際部署中,存儲作為三大核心基礎設施之一,其與計算、網絡一起從不同角度應用整體系統的性能發揮,因此在關于華為云C6實例的評估中,E企研究院也對華為云塊存儲——超高IO云硬盤——的性能進行測試。在c6.8xlarge.4實例上掛載了1塊600GB容量的超高IO云硬盤,測試其隨機讀寫性能(IOPS)與帶寬吞吐量(MBPS,MB/s)。
根據E企研究院測試規劃,上圖中每種C6實例均配備3臺,將其作為一組,4組不同類型C6實例共計12臺。
按需增長的計算性能
雖然在實際應用中,CPU和內存這兩者幾乎緊密相連,并影響應用系統的整體計算性能。但作為計算機系統中擁有各自技術路線的兩個獨立組件,通過相關測試軟件,卻能衡量各自的性能水平。
在CPU運算性能方面,E企研究院使用GeekBench 3軟件來評估C6實例中的vCPU運算性能。GeekBench 3是一款輕量級的CPU基準性能測試軟件,能夠衡量CPU單核與多核狀態下的整數與浮點運算性能,其結果得分以Intel Core i5-2520M(2.50GHz,用于Mac電腦中)的2500分為基線,以此換算得來,得分越高意味著性能越高。下圖為C6實例在不同配置下的整數運算與浮點運算性能得分:
華為云不同(vCPU與內存容量)配置C6實例計算性能得分,上述各項得分均為在相同條件下,5次重復測試獲得得分后的平均得分
上圖中藍線與灰線分別表示單核的整數與浮點運算性能得分,在不同vCPU配置下,其單核(整數與浮點)性能得分保持平穩,意味著其性能表現穩定,且底層采用同一款CPU硬件;橙色與黃色柱狀圖則分別為多核下的整數與浮點運算得分,即不同vCPU配置下,所有vCPU都參與測試后獲得的整數與浮點運算綜合得分。
GeekBench網站公布的一款使用上一代Intel Xeon Gold 6136(@3.0GHz,可睿頻到3.7GHz)處理器的云主機vCPU測試結果。與E企研究院測試結果的單核得分相比,使用新一代Cascade Lake定制處理器的華為云主機單核(整數)性能有超過15%的性能提升,單核性能高,核心更多,意味著多核性能將線性提高
從測試結果來看,即使是測試所使用的最低配置的c6.xlarge.4(4vCPU與16GB內存)實例,其整數與浮點運算得分都接近1.5萬分,并隨著vCPU數量的提升,其性能逐漸提升,在最大配置的c6.16xlarge.4(64vCPU與256GB內存)實例中,其整數運算得分接近12萬分,浮點運算得分超過13萬分,幾乎是4vCPU配置的10倍左右。
在內存性能方面,華為云C6實例亦有不俗的表現。E企研究院使用Stream基準測試軟件來評估C6實例的內存性能,Stream是業內公認的用于內存性能評估的基準測試軟件,其包括Copy(復制)、Scale(乘法)、Add(加法)以及Triad(三者復合)四種不同操作情況下的內存帶寬表現。E企研究院對華為云不同(vCPU與內存容量)配置的C6實例進行5次重復測試后,取其平均成績,具體如下圖所示:
上圖中從左到右四種不同顏色依次表示c6.xlarge.4(4vCPU與16GB內存容量,即上圖中的4c16G)、c6.4xlarge.4、c6.8xlarge.4與c6.16xlarge.4實例的內存帶寬性能表現:隨著C6實例內存容量的增大,其內存性能越高
結合CPU計算性能與內存帶寬性能,可以看出,華為云C6實例具有較好的整體計算性能,隨著C6實例配置的提高,其計算性能有著較明顯的增長。
新一代高性能智能網絡的性能新體驗
實際上在去年華為云就發布了使用新一代高性能智能網卡的C3網絡增強型實例(即C3ne),現在華為云基于定制版英特爾Cascade Lake處理器的C6實例完全融合了ne系列網絡增強能力,以匹配最新定制處理器帶來的綜合性能提升,擴大對企業應用場景的覆蓋。
根據主流應用對網絡性能的不同需求,E企研究院針對C6實例的網絡性能測試主要分為兩大類型:TCP和UDP使用場景。TCP主要用于建立長效的傳輸連接并保證數據的安全傳輸,比如基于http/https的web應用、ftp文件傳輸以及POP/SMTP的郵件應用等等,通常是一對一連接,更強調網絡帶寬實現的數據傳輸能力;UDP則是無狀態傳輸協議,更強調數據傳輸的實時性,在網絡質量不好的情況下運行丟包。最典型應用場景如在線視頻播放、視頻/音頻會議、視頻直播等等,UDP通常一對多,更關注收發包能力。
E企研究院首先對C6實例進行TCP帶寬測試,選取相同配置的3臺C6實例進行配置:其中一臺作為Server端,其余2臺作為Client端。2臺Client向Server端同時并發壓力(數據包長1440),然后在Server端統計TCP帶寬。根據E企研究院測試結果,華為云不同配置C6實例的TCP帶寬如下圖所示:
上圖紅線為E企研究院針對不同配置C6實例的實測性能數據,橙色虛線為對應配置下的最高帶寬。從測試結果可以看出,實測數據(紅色實線)幾乎已經達到了C6實例對應配置下的最高帶寬
在UDP PPS轉發性能測試中,使用與TCP帶寬測試相同環境,即3臺相同配置的C6實例,其中一臺作為Server端,其余2臺作為Client端,根據Server端的配置,每臺Client發起對應數目的數據流并發壓力測試(數據包長64),具體測試數據流設置如下表:
在華為云C6實例UDP網絡性能測試中,E企研究院使用的下發壓力模型
E企研究院針對4組不同類型C6實例進行測試后,統計其結果如下圖所示:
E企研究院實測C6實例UDP收發包能力(橙色柱狀圖)與華為云官方公布的最大收發包能力(黃色折線)
E企研究院測試結果表明,相應配置的C6實例其UDP最大收發包能力基本與華為云官方公布的數據一致,頂配c6.16xlarge.4實例的最大收發包能力達到1000萬PPS,即使是最主流的c6.xlarge.4實例也達到了80萬PPS。
云硬盤性能:低隊列獲得高性能
華為云硬盤實際上早已有之,并不屬于此次C6實例的發布內容。但基于C6實例部署應用,云硬盤又不可或缺,做為C6實例的操作系統盤(即OS)或者數據存儲。為了更全面地評估C6實例在實際應用場景下的綜合性能表現,E企研究院增加了對華為云硬盤的基準測試。
一般而言,評估(塊)存儲性能通常有兩個較為關鍵的指標,即IOPS和吞吐量(即MB/s)。前者通常以4KB數據塊的隨機讀寫性能作為衡量標準;帶寬則通常以64K、128K或者1MB數據塊尺寸的順序讀寫帶寬作為存儲帶寬標準。云硬盤實際性能高低通常又與所購買的容量大小相關,并且在公有云存儲方面,為了更好地保障穩定性,通常會有一個最大IOPS性能(類似SSD的單盤最大IOPS性能),和一個基準性能(或曰最小IOPS性能),以及對應的存儲QoS策略。
以華為云超高IO盤為例,單個云硬盤IOPS性能 =Min(“最大IOPS” , “基線IOPS + 每GB云硬盤的IOPS × 云硬盤容量”)。以E企研究院測試用600G容量作為說明,最大隨機讀寫性能可達31500 IOPS。如果將容量增加到或超過630GB,那么其最大隨機讀寫性能則不超過33000 IOPS。而在吞吐量方面則并沒有那么復雜,只限制不超過350MB/s。下圖為E企研究院針對600GB容量的超高IO盤的4K隨機讀寫性能測試結果:
從上圖可以看到,華為云超高IO盤基本都在較低的16隊列深度時獲得最大IOPS——接達到31500 IOPS。而在低于16隊列深度時,隨著隊列深度的增加,其隨機讀寫性能幾乎以倍數增加;在超過16隊列深度后,其性能穩定在31500 IOPS。這顯示了華為云高超的性能優化水平以及嚴格的存儲QoS控制能力。
上圖為華為云超高IO盤的順序讀寫帶寬表現,橙色柱狀圖表示為1MB數據塊的順序讀帶寬——350 MB/s,這已經與華為云官網所公布的最大存儲帶寬性能相吻合;藍色折線表示1MB數據塊的順序寫帶寬,在隊列深度為2時獲得最大350MB/s,此后讀寫帶寬均保持平穩。較低隊列深度就獲得最大存儲性能意味著能夠為應用提供更好的支撐,減少應用優化的復雜程度。
華為云雙11上云嘉年華期間,100+云產品更是1折起,千行百業上云特惠,新用戶只需88元即可體驗華為云服務器,還能參與抽獎。
ECS
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。