虛擬化技術(shù)在通信基礎(chǔ)設(shè)施中的應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
0 引 言
隨著Intel公司和其他廠家向多核處理器轉(zhuǎn)移,通信設(shè)備制造商也隨之改變他們的編程思路,以便有效地利用這些增加的核。通常,通信設(shè)備傾向于利用已經(jīng)優(yōu)化和驗(yàn)證,按時(shí)序邏輯執(zhí)行的高度專用軟件。但這樣的軟件卻很難移植到多核平臺(tái)。有了Intel VT,設(shè)備制造商無(wú)需重新修改現(xiàn)有軟件,就可在多核處理器上執(zhí)行多線程應(yīng)用,從而使移植更簡(jiǎn)單。
Intel虛擬化技術(shù)具有如下優(yōu)點(diǎn):
(1)為分離內(nèi)核與非分離內(nèi)核服務(wù)的隔離提供必要的環(huán)形結(jié)構(gòu);
(2)簡(jiǎn)化了VMM設(shè)計(jì),使分離內(nèi)核代碼很小,這樣使得建立在數(shù)學(xué)上可驗(yàn)證的分離內(nèi)核成為可能;
(3)虛擬化允許不需修改的OS,簡(jiǎn)化了單線程現(xiàn)有軟件移植到多核處理器。這給最終客戶一個(gè)選項(xiàng),即可同時(shí)運(yùn)行非SMP OS的多個(gè)例程。
(4)Intel VT-d允許直接訪問(wèn)分配的設(shè)備。網(wǎng)絡(luò)接口的分離是系統(tǒng)安全的主要組成部分。Intel的虛擬化技術(shù)允許在VM中有效共享物理I/O設(shè)備,而不需要訪問(wèn)所有網(wǎng)絡(luò)流量的一個(gè)“服務(wù)”分區(qū),因而允許把網(wǎng)絡(luò)流量導(dǎo)向到特定的OS和指定的應(yīng)用。
(5)Intel VT也支持使用可信平臺(tái)模塊(TPM)提供能認(rèn)證VMM,客體OS和應(yīng)用,保證它們?cè)诖疟P上的映像不被篡改。TPM是個(gè)微控制器,存儲(chǔ)密鑰,口令和數(shù)字證書。TPM按可信計(jì)算小組(Trusted Compu-ting Group)定義,屬于TPM的微控制器可從很多制造商那里獲得。
下面探討虛擬化技術(shù)在通信領(lǐng)域的幾種應(yīng)用模式。
1 虛擬化技術(shù)在通信領(lǐng)域的應(yīng)用
1.1 從單線程到多例程
設(shè)備制造商可以執(zhí)行單線程軟件的多個(gè)實(shí)例,每個(gè)實(shí)例在一個(gè)單獨(dú)的VM內(nèi)執(zhí)行,每一個(gè)VM處理整個(gè)任務(wù)的一部分。一個(gè)相應(yīng)的VMM提供必要的軟件基礎(chǔ)結(jié)構(gòu),以便在VM之間分配負(fù)荷。多核移植的例子包括蜂窩網(wǎng)絡(luò)中的多定位注冊(cè);或擾動(dòng)檢測(cè)系統(tǒng)之間的負(fù)荷劃分。電信設(shè)備制造商可以利用VMM在多核平臺(tái)上整合原有單線程應(yīng)用的多個(gè)實(shí)例,避免為了利用多核架構(gòu)要花昂貴的研發(fā)周期修改已有代碼(見圖1)。大多數(shù)通信設(shè)備的處理可分為數(shù)據(jù)層、控制層和管理層。每一層有不同的處理要求,如內(nèi)存反應(yīng)時(shí)間和帶寬要求,以及網(wǎng)絡(luò)I/O要求。通過(guò)使用Intel VT和實(shí)時(shí)VMM,制造商就可以在較少的處理器件上整合這些不同層。這樣就降低了設(shè)備和運(yùn)行成本,成本的節(jié)省可讓設(shè)備制造商和他們的客戶(服務(wù)提供商)具有競(jìng)爭(zhēng)力。整合的一個(gè)例子就是在移動(dòng)無(wú)線業(yè)務(wù)中確定移動(dòng)單元當(dāng)前位置,被稱作HLR(Home Location Register)系統(tǒng)。實(shí)際上,很多這樣的系統(tǒng)是專用的,限定為32位尋址。使用Intel VT,多個(gè)HLR就可以配置到單一系統(tǒng)上。VMM考慮了多個(gè)HLR的負(fù)荷分配,也考慮了大于4 GB的HLR數(shù)據(jù)庫(kù)。
1.2 提升系統(tǒng)的可用性
通信系統(tǒng)的一個(gè)獨(dú)特要求就是極高的可靠性。要求通信系統(tǒng)能夠處理所有呼叫的99.999%。這相當(dāng)于每年的停機(jī)時(shí)間小于5 min,其中還包括所有安排的維修,軟件和硬件的升級(jí),以及系統(tǒng)的校正。由于與軟件設(shè)計(jì)相關(guān),現(xiàn)在只有高端通信系統(tǒng)才能提供這個(gè)可靠性級(jí)別。用Intel VT,通信系統(tǒng)可以提供更大的可用性,而沒(méi)有傳統(tǒng)軟件的基礎(chǔ)成本。大多數(shù)可靠性問(wèn)題是由通信軟件定制特性引起。Intel VT為通信系統(tǒng)所有層面提供了軟件故障隔離。通過(guò)執(zhí)行軟件活動(dòng)的和備用的實(shí)例激活它,每一個(gè)執(zhí)行軟件位于自己的VM之內(nèi)。如果出現(xiàn)軟件故障,備用實(shí)例將繼續(xù)執(zhí)行并設(shè)置為活動(dòng)狀態(tài),直到VMM重新啟動(dòng)故障實(shí)例。有了這個(gè)能力,軟件故障成本,傳統(tǒng)上的冗余硬件保護(hù),就被去掉。除了冗余外,提供冗余硬件實(shí)現(xiàn)軟件在線升級(jí)的能力。如圖2所示,備用部分既可用于熱升級(jí),也可用于容錯(cuò)。用Intel VT,消除了冗余對(duì)硬件的需要?,F(xiàn)在只需簡(jiǎn)單的升級(jí),重啟動(dòng),并指定它為活動(dòng)實(shí)例就完成軟件升級(jí)。如果新軟件出錯(cuò),仍能求助于以前的軟件版本。
1.3 服務(wù)器負(fù)荷遷移
負(fù)荷遷移是虛擬化企業(yè)服務(wù)器的一個(gè)普遍特性;它也適用于通信領(lǐng)域。例如,在很多話音通過(guò)互聯(lián)網(wǎng)協(xié)議(VoIP)傳輸?shù)膶?shí)現(xiàn)中,有一個(gè)叫作軟交換的設(shè)備。軟交換機(jī)處理呼叫建立和管理的各個(gè)方面。軟交換機(jī)有一個(gè)能力設(shè)置層,一旦超出就必須用新交換機(jī)替換或擴(kuò)容。手工配置新交換機(jī)的過(guò)程很費(fèi)時(shí)。InteI VT簡(jiǎn)化了這個(gè)過(guò)程,允許一個(gè)完整的交換機(jī)實(shí)例從一個(gè)硬件平臺(tái)遷移到另一個(gè)硬件平臺(tái)。此外,簡(jiǎn)化了網(wǎng)絡(luò)的擴(kuò)充,首先在可控的實(shí)驗(yàn)室環(huán)境中做所有配置,然后再把該配置投入到實(shí)際運(yùn)行的交換機(jī)上,這樣降低了與擴(kuò)充相關(guān)的風(fēng)險(xiǎn)。利用實(shí)際環(huán)境的測(cè)試和流量模式,在現(xiàn)場(chǎng)部署之前完全可以配置和測(cè)試擴(kuò)充交換機(jī)。一旦測(cè)試了擴(kuò)充交換機(jī)配置,實(shí)施了遷移策略,接著進(jìn)行在線升級(jí)。圖3示出該遷移,擴(kuò)充交換機(jī)已被添加到網(wǎng)絡(luò),一個(gè)安裝的交換機(jī)的區(qū)被遷移到擴(kuò)充交換機(jī)。這是一個(gè)比現(xiàn)有解決方案更簡(jiǎn)單的管理模型。
1.4 面向通信的操作系統(tǒng)
與其他市場(chǎng)相比,通信市場(chǎng)包含很多定制的OS。很多時(shí)候,這些系統(tǒng)用特定的產(chǎn)品開發(fā),也沒(méi)有提供很好的維護(hù)性。虛擬化允許利用這個(gè)有價(jià)值的專用OS,且仍能隨新技術(shù)向前進(jìn)化。通過(guò)提供專用OS操作環(huán)境,Intel VT允許在通用或流行OS上進(jìn)行新開發(fā),同時(shí)提供到專用OS的鏈接。在提供支持這些已有的OS中,Intel VT邁出了第一步。它提供了遷移到高級(jí)硬件技術(shù)如多核,而無(wú)需OS內(nèi)的多處理器支持。它不需要修改OS,也無(wú)需通過(guò)二進(jìn)制轉(zhuǎn)換改善性能。因此,為了預(yù)定目的,可以利用專有技術(shù),從而節(jié)約了重新驗(yàn)證和軟件開發(fā)的成本。
1.5 共享與分配I/O設(shè)備
通信市場(chǎng)要求硬件/軟件解決方案提供高性能的I/O成本一直是設(shè)計(jì)中的一個(gè)因素,獲得每瓦最大性能是每個(gè)設(shè)計(jì)的目標(biāo)。在虛擬化解決方案中,有兩種方法提供訪問(wèn)高性能I/O,即共享I/O和直接分配模型。在共享I/O中VMM提供通過(guò)仿真復(fù)用技術(shù)訪問(wèn)I/O設(shè)備??腕wOS以虛擬設(shè)備出現(xiàn)。VMM復(fù)合虛擬設(shè)備訪問(wèn)實(shí)際I/O設(shè)備。共享I/O機(jī)制引起性能降低,因?yàn)槠湟肆藦?fù)合和仿真層;但在遷移中提供了最大的靈活性。由于性能影響,通信系統(tǒng)中共享I/O限于對(duì)性能要求不高的任務(wù),如管理層。在直接I/O分配中,給VM專門分配一個(gè)I/O設(shè)備。針對(duì)直 I/O,Intel VT(Intel VT-d)能應(yīng)對(duì)這種需求。目前,這樣的分配出現(xiàn)在PCI總線上,商用VMM被構(gòu)建成應(yīng)對(duì)這種需求。VMM隱藏了訪問(wèn)沒(méi)有分配給一個(gè)特殊的客體OS的PCI設(shè)備。
對(duì)于直接I/O分配存在著技術(shù)上的挑戰(zhàn)。最大的挑戰(zhàn)出現(xiàn)那些執(zhí)行DMA操作的設(shè)備。由于客體OS不知道已經(jīng)被移到內(nèi)存中它已知起點(diǎn)之上的位置,所以它就可能給駐留在內(nèi)存區(qū)間之外的DMA設(shè)備提供地址。為了克服這個(gè)問(wèn)題,VMM可以重新映射這些內(nèi)存訪問(wèn),也可以用硬件動(dòng)態(tài)的實(shí)現(xiàn)。在VMM重新映射地址情況中,要求客體OS既要知道被重新定位到一個(gè)新的內(nèi)存中,也要知道VMM相應(yīng)的限制重定位。在硬件重映射DMA地址(如用Intel VT-d)情況中,VMM用VM基本地址和VM設(shè)備的分配規(guī)劃硬件。直接I/O分配比以VM動(dòng)態(tài)遷移能力為代價(jià)的共享I/O性能改善高一個(gè)數(shù)量級(jí)。對(duì)于通信設(shè)備中所有高吞吐量接口性能改善是必要的,因而需要折衷考慮。
1.6 對(duì)平臺(tái)分區(qū)以提高通信性能
為了通用目的,在體系結(jié)構(gòu)設(shè)計(jì)時(shí),通信系統(tǒng)設(shè)計(jì)者常常處于矛盾境地:通常情況下,設(shè)計(jì)人員偏好于使用通用操作系統(tǒng)(GPOS)、及其各種操作界面和其他通用軟件,但是GPOS提供的網(wǎng)絡(luò)性能難以令人滿意。虛擬化技術(shù)可用于化解這個(gè)矛盾,通過(guò)創(chuàng)建一個(gè)分區(qū),運(yùn)行一個(gè)較小內(nèi)核的操作系統(tǒng)(OS),執(zhí)行與性能相關(guān)的應(yīng)用部分,提供直接訪問(wèn)網(wǎng)絡(luò)設(shè)備,而另一分區(qū)運(yùn)行一個(gè)GPOS,執(zhí)行對(duì)性能要求相對(duì)較小的那部分應(yīng)用,如操作界面、系統(tǒng)配置,監(jiān)控、統(tǒng)計(jì)和報(bào)警管理等。Intel推出了這樣一個(gè)系統(tǒng)的應(yīng)用原型,運(yùn)行發(fā)現(xiàn)相同的應(yīng)用在同樣的硬件,相同的GPOS上運(yùn)行,性能提高了24%。
2 一個(gè)通信網(wǎng)絡(luò)商用虛擬化解決方案
商用產(chǎn)品Jaluna OSware提供優(yōu)化解決方案以滿足通信設(shè)備的嚴(yán)格要求。OSware提供一個(gè)健壯的平臺(tái):直接和共享I/O,硬實(shí)時(shí)保證,有限中斷延遲時(shí)間(測(cè)量為21 ms),高效的內(nèi)存虛擬化,能執(zhí)行商用和專用OS,而無(wú)需修改它們。圖4為虛擬化和非虛擬化環(huán)境中,OSware提供的運(yùn)行在RedHat企業(yè)Linux上標(biāo)準(zhǔn)應(yīng)用的同一網(wǎng)絡(luò)I/O性能。