圖1 網(wǎng)絡(luò)基礎(chǔ)架構(gòu)和主機(jī)平臺(tái)隔離在數(shù)據(jù)中心中保持物理隔離
當(dāng)IT管理者對(duì)主機(jī)資源進(jìn)行虛擬化時(shí),需要將應(yīng)用程序與服務(wù)器的比例由1:1調(diào)整為N:l,這一調(diào)整對(duì)服務(wù)器本身來(lái)說(shuō)意義重大,并會(huì)改變我們的思維萬(wàn)式和數(shù)據(jù)中心的體系結(jié)構(gòu)產(chǎn)品。目前這一代多核x86服務(wù)器的單一CPU晶粒上有6個(gè)或更多內(nèi)核,在未來(lái)幾年,內(nèi)核密度有望達(dá)到8或12英寸。這些服務(wù)器能夠支持單臺(tái)物理設(shè)備上的多個(gè)應(yīng)用性序。在利用單臺(tái)物理服務(wù)器支持多個(gè)應(yīng)用程序時(shí),IT管理者和架構(gòu)師必須考慮這一根本性調(diào)整是如何影響網(wǎng)絡(luò)的。除了具備應(yīng)用程序和控制平面處理功能之外,這一調(diào)整還要求之前內(nèi)置在 x86服務(wù)器外部的網(wǎng)絡(luò)和安全功能必須在虛擬化多核平臺(tái)內(nèi)部壓縮,確保在分散的硬件中實(shí)現(xiàn)同一套功能。由于封包分類(lèi)、甚于流量的負(fù)載均衡(load balancing)、主動(dòng)流量狀態(tài)管理和流量抑制(flow pinning)L2交換、L3轉(zhuǎn)發(fā)和Qos處理等特殊處理功能過(guò)去存在于分散的"一臺(tái)主機(jī)一個(gè)應(yīng)用程序(1:1 host-to-application)"模式下,必須在分散設(shè)備外部將它們壓縮到虛擬化X86服務(wù)器中。
圖2 多核CPU支持多個(gè)應(yīng)用程序?qū)嵗?/p>
具體來(lái)講,當(dāng)服務(wù)器端接收到流量時(shí),必須將各種數(shù)據(jù)包處理和安全工作荷載應(yīng)用于數(shù)據(jù),并對(duì)數(shù)據(jù)包進(jìn)行分類(lèi),以確定目標(biāo)內(nèi)核/應(yīng)用程序。流量必須配備適用的安全策略,以避開(kāi)網(wǎng)絡(luò)威脅,此外,就IPSec和SSL流量而言,還必須對(duì)其進(jìn)行加密/解密。最后,必須制定L2交換決策,將數(shù)據(jù)包放置于合適的虛擬機(jī)上。除了這些要求之外,該處理操作還必須采用有狀態(tài)的萬(wàn)式進(jìn)行,以確保屬于相同數(shù)據(jù)流的數(shù)據(jù)包能全部到達(dá)同一個(gè)目標(biāo)應(yīng)用程序。
need a Virtualized Network in here!此處需要部署一個(gè)虛擬化網(wǎng)絡(luò)
圖3 虛擬化服務(wù)器必須支持網(wǎng)絡(luò)需求
這種數(shù)據(jù)包處理器通常部署在軟件中,充當(dāng)虛擬機(jī)管理程序的一個(gè)組件,然而多核x86服務(wù)器沒(méi)有經(jīng)過(guò)優(yōu)化處理,不能用作網(wǎng)絡(luò)和安全處理,因而會(huì)給設(shè)備帶來(lái)嚴(yán)重的性能問(wèn)題,這種僅適用于x86服務(wù)器的基礎(chǔ)架構(gòu)不能捕獲數(shù)據(jù)包和以最高的速度處理數(shù)據(jù)流,因?yàn)閿?shù)據(jù)包處理、中斷處理、安全處理、分組及轉(zhuǎn)發(fā)等全部任務(wù)都在浪費(fèi)寶貴的CPU周期。執(zhí)行軟件中的各類(lèi)任務(wù)會(huì)導(dǎo)致服務(wù)器性能低下和耗電量增加(1吉比特每秒的吞吐量),這最終意味若應(yīng)用程序的性能下降。因此,最終結(jié)果是,這種新的體系結(jié)構(gòu)需要更多服務(wù)器來(lái)支持計(jì)算負(fù)荷,因而無(wú)法達(dá)到指望利用虛擬化達(dá)到的預(yù)期效果。
圖4 在軟件中實(shí)現(xiàn)網(wǎng)絡(luò)功能浪費(fèi)X86服務(wù)器的CPU周期
進(jìn)入I/O虛擬化技術(shù)
虛擬化網(wǎng)絡(luò)與虛擬化服務(wù)器之間缺失的鏈路是網(wǎng)絡(luò)接口與各虛擬機(jī)的I/O。一種創(chuàng)新的虛擬化服務(wù)器體系結(jié)構(gòu)可以跨越一條高性能、具有虛擬化感知能力的 PCIe通信路徑同時(shí)部署工作負(fù)載經(jīng)優(yōu)化的網(wǎng)絡(luò)流處理器(network flow processors,NEP)和x86多核處理器。網(wǎng)絡(luò)流處理器 (network flow processors,NFP)對(duì)x86服務(wù)器的網(wǎng)絡(luò)和安全處理工作進(jìn)行基于硬件的負(fù)載分流,確保將所有CPU周期還給處理器,并確保處理器集中實(shí)施應(yīng)用程序和控制平面處理。該體系構(gòu)支持以極高速率20Gbps甚至更高)向虛擬機(jī)高效傳輸數(shù)據(jù)。
Load Balancer:負(fù)載均衡器;Classifier/Flow State:分類(lèi)器/流量狀態(tài) L2 Switch:L2交換機(jī)
圖5.利用數(shù)據(jù)流處理器進(jìn)行網(wǎng)絡(luò)和安全處理以及利用虛擬機(jī)進(jìn)行解復(fù)用處理可節(jié)省CPU周期。
這些專用的數(shù)據(jù)流處理器經(jīng)過(guò)優(yōu)化處理,可對(duì)通用多核cpu繁重的工作量逆行負(fù)載分流,并能夠處理底層數(shù)據(jù)包處理任務(wù)和加快高層數(shù)據(jù)流及應(yīng)用層處理速度。這一加速體系結(jié)構(gòu)采用網(wǎng)絡(luò)優(yōu)化的數(shù)據(jù)流處理器內(nèi)核,對(duì)數(shù)據(jù)包進(jìn)行分類(lèi)、有狀態(tài)的數(shù)據(jù)流分析、深層數(shù)據(jù)包檢測(cè)、加密以及基于流量的動(dòng)態(tài)負(fù)載均衡。此外,將數(shù)據(jù)流解復(fù)用到指定虛擬機(jī)的主要功能將在數(shù)據(jù)流處理器中實(shí)施,而且L2交換不必在虛擬機(jī)管理程序中進(jìn)行。該I/O虛擬化(IVO) 技術(shù)提供保障帶寬、延遲和允許在多個(gè)內(nèi)核和虛擬機(jī)中進(jìn)行流量隔離。沒(méi)有1/O虛擬化(IOV)技術(shù),就不能發(fā)揮OS虛擬化的眾多優(yōu)勢(shì)。
利用上述想法在數(shù)據(jù)中心架構(gòu)產(chǎn)品將使我們能夠采用最高效和最環(huán)保的方式利用我們稀缺的處理資源,以滿足用戶對(duì)更高帶寬的需求。