最新的毛片基地免费,国产国语一级毛片,免费国产成人高清在线电影,中天堂国产日韩欧美,中国国产aa一级毛片,国产va欧美va在线观看,成人不卡在线

異步虛擬機復(fù)制的制作方法

文檔序號:6362470閱讀:256來源:國知局
專利名稱:異步虛擬機復(fù)制的制作方法
技術(shù)領(lǐng)域
實施例涉及虛擬機的異步復(fù)制。
背景技術(shù)
諸如用于提供電話通信服務(wù)的計算基礎(chǔ)設(shè)施的虛擬化包括在計算環(huán)境上提供這樣的服務(wù)。虛擬化可以包括對物理機器、服務(wù)器和虛擬機的使用。物理機器或服務(wù)器是物理實體。虛擬機包括在物理機器上執(zhí)行的軟件,其仿真與可在同一物理機器上仿真的其它虛擬機獨立的單獨的機器。單個物理機器可托管多個虛擬機。術(shù)語“服務(wù)器”可基于語境指代物理機器或虛擬機??梢允褂脙煞N方法之一來復(fù)制虛擬機。一種是同步虛擬機復(fù)制,另一種是異步虛擬機復(fù)制。同步虛擬機復(fù)制太慢以至于不能實用于高數(shù)據(jù)率應(yīng)用。盡管顯著地好于同步方案,但是由于其對外出業(yè)務(wù)量的限制,異步虛擬機復(fù)制不可直接地應(yīng)用于高數(shù)據(jù)率應(yīng)用(所有傳送的分組需要被緩存延長的時間段,導(dǎo)致顯著的帶寬減少)。異步復(fù)制確保外部客戶端對被復(fù)制的系統(tǒng)具有一致的視圖,而不管成功與否。原始的和備份的僅以特定間隔同步。如果為在先時間間隔中建立的數(shù)據(jù)分組發(fā)生所有數(shù)據(jù)分組傳送,則確保了一致性,因為在先間隔已成功地送交(committed to)給備份。因為以已知異步方法緩存所有數(shù)據(jù)分組,分組僅在每個缺省時間間隔(T印och)傳送,從而以與所述間隔的持續(xù)時間成比例的因子降低了有效帶寬。此外,在已知的異步方法中,外部客戶端將在分組緩存期間體驗不活動的周期,隨后是緩存釋放期間非常高的網(wǎng)絡(luò)業(yè)務(wù)量的簡短周期。進一步地,在已知的異步方法中,來自復(fù)制的虛擬機的響應(yīng)將被平均推遲 Tepoch/2?!?br>
發(fā)明內(nèi)容
示例實施例涉及虛擬機的異步復(fù)制。一個實施例包括用于復(fù)制虛擬機的方法。該方法包括確定對應(yīng)于與虛擬機關(guān)聯(lián)的數(shù)據(jù)分組的分類,以及基于所確定的分類緩沖所述分組或傳送所述分組。另一實施例包括與虛擬機的托管關(guān)聯(lián)的控制模塊。所述控制模塊包括配置成緩沖數(shù)據(jù)分組的存儲器。所述控制模塊包括配置成確定對應(yīng)于與虛擬機關(guān)聯(lián)的分組的分類,并配置成基于確定的分類緩沖存儲器中的分組或傳送所述分組的分組分類器。另一實施例包括網(wǎng)絡(luò)交換機。網(wǎng)絡(luò)交換機包括配置成從托管虛擬機的控制模塊接收消息的模塊,所述消息包括對應(yīng)于與虛擬機關(guān)聯(lián)的分組的控制信息和協(xié)議信息。網(wǎng)絡(luò)交換機進一步包括配置成基于協(xié)議信息和控制信息確定分類并配置成基于確定的分類緩沖分組或傳送分組的分組分類器。


從此處下面給出的詳細(xì)描述以及附圖可以更全面地理解本發(fā)明,其中相同的元件由相同的圖標(biāo)表示,附圖僅作為示例給出,因此不限制本發(fā)明,其中:圖1示出了根據(jù)示例實施例的網(wǎng)絡(luò)。圖2示出了根據(jù)示例實施例的控制模塊150。圖3示出了根據(jù)示例實施例的替代控制模塊155。圖4示出了根據(jù)示例實施例的交換機110。圖5示出了根據(jù)示例實施例用于異步虛擬機復(fù)制的方法。圖6示出了根據(jù)示例實施例用于異步虛擬機復(fù)制的方法。應(yīng)注意的是,這些示圖旨在示出在特定實例實施例中使用的方法、結(jié)構(gòu)和/或材料的一般特性,并補充下面提供的書面描述。然而,這些附圖沒有按比例繪制并且可能沒有精確地反映任何給定實施例的精確結(jié)構(gòu)或性能特性,因此不應(yīng)解釋為限定或限制示例實施例所包含的特性或值的范圍。例如,為了清楚,可減小或擴大分子、層、區(qū)域和/或結(jié)構(gòu)元件的相對厚度和定位。各個附圖中對類似或相同參考圖標(biāo)的使用旨在表明類似或相同元件或特征的存在。
具體實施例方式雖然示例實施例能夠有各種修改和替代形式,但其實施例以附圖中示例的形式示出并將在此處詳細(xì)描述。然而,應(yīng)該理解的是,本發(fā)明不意在將示例實施例限制為公開的特定形式,而是相反,示例實施例將覆蓋落入權(quán)利要求范圍內(nèi)的所有修改、等效或替代方案。通篇對附圖的描述中相同的 圖標(biāo)指代相同的元件。在更詳細(xì)地討論示例實施例之前,應(yīng)注意,一些示例實施例描述為過程或描述為流程圖的方法。盡管流程圖將操作描述為順序的過程,但是許多操作可以并行、同時或一起執(zhí)行。此外,可以重新安排操作的順序。過程可以在其操作完成時結(jié)束,但也可以具有附圖中未包含的附加步驟。該過程可以對應(yīng)于方法、功能、程序、子例程、子程序等。下面討論的方法(其中一些由流程圖示出)可以由硬件、軟件、固件、中間件、微代碼、硬件描述語言或其任意組合實現(xiàn)。當(dāng)在軟件、固件、中間件或微代碼中實現(xiàn)時,將執(zhí)行必要任務(wù)的程序代碼或代碼分段將存儲在諸如存儲介質(zhì)的機器或計算機可讀介質(zhì)中。處理器將執(zhí)行該必要任務(wù)。此處公開的特定結(jié)構(gòu)和功能性細(xì)節(jié)只是為了描述本發(fā)明的示例實施例。然而,本發(fā)明可以許多替代形式體現(xiàn),并且不應(yīng)解釋為限定為此處列舉的實施例。應(yīng)理解的是,盡管此處可使用術(shù)語第一、第二等來描述各種元件,但是這些元件不應(yīng)被這些術(shù)語限制。這些術(shù)語僅用于將元件彼此區(qū)分。例如,可以將第一元件稱為第二元件、并且類似地,可將第二元件稱為第一元件,而不偏離示例實施例的范圍。此處使用的術(shù)語“和/或”包括關(guān)聯(lián)的所列術(shù)語中的一個或多個的任意或所有組合。應(yīng)理解的是,當(dāng)一個元件被稱為“連接”或“耦合”到另一元件時,其可以直接連接或耦合到其它元件或者可以存在介于其間的元件。相比之下,當(dāng)元件被稱為“直接地連接”或“直接地耦合”到另一元件時,則不存在介于其間的元件。應(yīng)以類似的方式解釋用于描述元件間的關(guān)系的其它措辭(例如,“之間”與“直接地位于其間”,“相鄰”與“直接地相鄰”等)。此處使用的術(shù)語只是為了描述特定實施例,不意在限制示例實施例。除非上下文明確地表明,此處使用的術(shù)語“一”、“一個”和“所述”意在也包括復(fù)數(shù)形式。應(yīng)進一步理解的是,此處使用的術(shù)語“包括”、“包含”和/或“含有”指定所述特征、整數(shù)、步驟、操作、元件和/或組件的存在,但是不排除一個或多個其它特征、整數(shù)、步驟、操作、元件、組件和/或其群組的存在或添加。還應(yīng)該理解的是,在一些替代實施例中,所記載的功能/動作可以附圖中記載的順序之外的順序發(fā)生。例如,兩個接連示出的附圖實際上可以同時執(zhí)行,或者有時可以反向順序執(zhí)行,取決于所涉及的功能性/動作。除非以其它方式定義,否則此處使用的所有術(shù)語(包括技術(shù)和科學(xué)術(shù)語)具有如示例實施例所屬領(lǐng)域普通技術(shù)人員所理解的相同含義。應(yīng)進一步理解的是,例如通常使用的詞典中定義的術(shù)語的術(shù)語應(yīng)被解釋為具有與相關(guān)領(lǐng)域的語境中的含義一致的含義,并且不應(yīng)以理想化的或過于形式化的理解進行解釋,除非此處明確地如此定義。根據(jù)軟件或算法以及計算機存儲器內(nèi)的數(shù)據(jù)比特上操作的符號表示呈現(xiàn)示例實施例的部分以及對應(yīng)的詳細(xì)描述。這些描述和表示是本領(lǐng)域技術(shù)人員可借以將其工作高效地傳遞給本領(lǐng)域其它技術(shù)人員的描述和表示。如其通常所使用的,此處使用的術(shù)語算法構(gòu)思為導(dǎo)致所需結(jié)果的步驟的前后一致的序列。所述步驟為需要物理量的物理操控的步驟。通常,盡管不必須,但這些量采取能夠被存儲、傳輸、組合、比較以及以其他方式被操控的光、電或磁信號的形式。主要因為常規(guī)使用,已證明有時是方便的以指代這些信號為比特、值、元件、符號、特征、條款、數(shù)目等。在下面的描述中,將參考可被實現(xiàn)為包括例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等的程序模塊或功能過程的操作的動作和符號表示(例如,以流程圖的形式)來描述說明性實施例,其中程序模塊或功能過程執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型,并將使用現(xiàn)有硬件在現(xiàn)有網(wǎng)絡(luò)元件處實現(xiàn)。這種現(xiàn)有硬件將包括一個或多個中央處理單元(CPU)、數(shù)字信號處理器(DSP)、專用集成電路、場可編程門陣列(FPGA)計算機等中的至少一個。然而,應(yīng)記住的是, 所有這些和類似的術(shù)語將與合適的物理量相關(guān)聯(lián),并且僅為應(yīng)用于這些量的便利標(biāo)簽。除非明確地規(guī)定,否則從所述討論顯而易見的是,諸如“處理”或“估算”或“計算”或“確定”或“顯示”等的術(shù)語指代計算機系統(tǒng)或類似的電子計算設(shè)備的動作和處理,其操控和將被表示為計算系統(tǒng)的寄存器和存儲器中的物理、電子量的數(shù)據(jù)轉(zhuǎn)換為類似地被表示為計算系統(tǒng)存儲器或寄存器或其它這樣的信息存儲、傳輸或顯示設(shè)備內(nèi)的物理量的其它數(shù)據(jù)。同樣應(yīng)注意的是,示例實施例的軟件實現(xiàn)的方面通常以程序/非暫時性存儲介質(zhì)形式編碼或在某種類型的傳輸介質(zhì)上實現(xiàn)。程序存儲介質(zhì)可以是磁的(例如,軟盤或硬盤機)或電的(例如,光盤只讀存儲器或“⑶R0M”),并且可為只讀或隨機存取的。類似地,傳輸介質(zhì)可為雙絞線、同軸電纜、光線或現(xiàn)有技術(shù)已知的一些其它合適的傳輸介質(zhì)。示例實施例不受給定實現(xiàn)方式的這些方面的限制。如此處使用的,術(shù)語“客戶端”可認(rèn)為與移動、移動單元、移動臺、用戶設(shè)備、對方臺、接入終端、接收機等同義并可在下文中間或指代移動、移動單元、移動臺、用戶設(shè)備、對方臺、接入終端、接收機等,并且可以描述通信網(wǎng)絡(luò)中的有線或無線資源的遠(yuǎn)程用戶。此處使用的術(shù)語“物理機器”可認(rèn)為與服務(wù)器、網(wǎng)絡(luò)設(shè)備、聯(lián)網(wǎng)計算機等同義并可在下文中間或指代服務(wù)器、網(wǎng)絡(luò)設(shè)備、聯(lián)網(wǎng)計算機等,并且可以描述有線或無線通信網(wǎng)絡(luò)的物理計算設(shè)備并配置成托管虛擬機。圖1示出了根據(jù)示例實施例的網(wǎng)絡(luò)。如圖1所示,客戶端105可與交換機110(關(guān)于下面的圖4更詳細(xì)地描述)互連。盡管只示出了一個客戶端,但是應(yīng)該理解的是,示例實施例不限制為一個客戶端105。交換機110包括在網(wǎng)絡(luò)環(huán)境115中。網(wǎng)絡(luò)環(huán)境115包括一個或多個物理機器120、125。物理機器120、125可包括控制模塊150、155。物理機器120、125可包括一個或多個虛擬機130、135、140、145。例如,虛擬機120包括控制模塊150和單個虛擬機130,物理機器125包括控制模塊155和三個虛擬機135、140、145。例如,本領(lǐng)域技術(shù)人員可已知控制模塊150、155為管理程序或虛擬機管理器(VMM)0控制模塊150、155可配置成托管一個或多個虛擬機130、135、140、145。下面將關(guān)于圖2和圖3更詳細(xì)地討論控制模塊150、155。如本領(lǐng)域技術(shù)人員所知,虛擬機130、135、140、145是執(zhí)行軟件的機器的軟件實現(xiàn)方式,就像虛擬機130、135、140、145是物理機器。可以在物理機器120、125上執(zhí)行多個虛擬機130、135、140、145。與操作系統(tǒng)如何能允許多個程序在物理機器120、125上同時運行類似,控制模塊150、155或管理程序可以允許多個虛擬機130、135、140、145在物理機器120、125上同時運行。為了簡潔,將不再進一步描述虛擬機130、135、140、145的一般操作。網(wǎng)絡(luò)環(huán)境115為本領(lǐng)域技術(shù)人員已知。通常,網(wǎng)絡(luò)環(huán)境115將由彼此通信并運行為向客戶端105提供服務(wù)的多個組件(例如,服務(wù)器、數(shù)據(jù)庫、路由器和多路復(fù)用器)構(gòu)成。服務(wù)包括例如語音、媒體、應(yīng)用、計算資源等。網(wǎng)絡(luò)環(huán)境115向多個客戶端105提供靈活的計算資源。如本領(lǐng)域技術(shù)人員所知的,網(wǎng)絡(luò)環(huán)境115可以是公共網(wǎng)絡(luò)、私人網(wǎng)絡(luò)和/或混合(公共/私人)網(wǎng)絡(luò)。
`
圖2圖示了根據(jù)示例實施例的控制模塊150。如圖2所示,控制模塊150可以包括虛擬機接口 210、分組分類器215、規(guī)則制定數(shù)據(jù)庫220、傳送緩沖器225和網(wǎng)絡(luò)接口 230。虛擬機接口 210用作向和從一個或多個虛擬機傳送和接收的分組和信號的接口。網(wǎng)絡(luò)接口230用作向和從一個或多個網(wǎng)絡(luò)元件(例如,路由器、交換機、客戶端等)傳送和接收的分組和信號的接口。接口(例如,虛擬機210和網(wǎng)絡(luò)接口 210)為本領(lǐng)域技術(shù)人員所熟知且為了簡潔將不再進一步描述。分組分類器215可接收經(jīng)由虛擬機接口 210從虛擬機(例如,虛擬機130)接收的數(shù)據(jù)分組作為輸入,并基于所確定的對應(yīng)于該數(shù)據(jù)分組的分類和虛擬機的狀態(tài)轉(zhuǎn)發(fā)數(shù)據(jù)分組?;谒龃_定將數(shù)據(jù)分組轉(zhuǎn)發(fā)到傳送緩沖器225或網(wǎng)絡(luò)接口 230。傳送緩沖器225可以是存儲器(例如,ROM、RAM、SDRAM、DDR等)。例如,分組分類器215確定是否緩沖(例如,在傳送緩沖器225中)與復(fù)制的虛擬機關(guān)聯(lián)的數(shù)據(jù)分組以使得不改變所復(fù)制的虛擬機的外部可見狀態(tài)的任何數(shù)據(jù)分組不被緩沖。而緩沖改變所復(fù)制的虛擬機的外部可見狀態(tài)的數(shù)據(jù)分組。外部可見狀態(tài)可以是客戶端可見的虛擬機狀態(tài)。不改變所復(fù)制的虛擬機的外部可見狀態(tài)的數(shù)據(jù)分組可以是例如轉(zhuǎn)發(fā)的數(shù)據(jù)分組(例如,不在虛擬機處始發(fā)的數(shù)據(jù)分組)以及僅包括數(shù)據(jù)的數(shù)據(jù)分組。改變所復(fù)制的虛擬機的外部可見狀態(tài)的數(shù)據(jù)分組可以是例如包括控制消息的數(shù)據(jù)分組。規(guī)則制定數(shù)據(jù)庫220可以包括例如將數(shù)據(jù)分組的類型(例如,數(shù)據(jù)或控制)與分類進行關(guān)聯(lián)的數(shù)據(jù)表。每個分類可以定義數(shù)據(jù)分組是否將被緩沖。規(guī)則制定數(shù)據(jù)庫220可以在任何時間改變并且可以由與控制模塊150關(guān)聯(lián)的應(yīng)用和/或與虛擬機關(guān)聯(lián)的應(yīng)用控制。例如,假設(shè)控制模塊150從虛擬機130接收兩個數(shù)據(jù)分組并且該虛擬機130為復(fù)制的虛擬機。第一數(shù)據(jù)分組與分類一關(guān)聯(lián),第二數(shù)據(jù)分組與分類二關(guān)聯(lián)。規(guī)則制定模塊220包括分類一是僅有數(shù)據(jù)的數(shù)據(jù)分組且分類二是包括控制消息的數(shù)據(jù)分組這樣的關(guān)聯(lián)。分組分類器215使用來自規(guī)則制定數(shù)據(jù)庫220的關(guān)聯(lián),基于分類一是僅有數(shù)據(jù)的數(shù)據(jù)分組(其為不改變所復(fù)制的虛擬機130的外部可見狀態(tài)的數(shù)據(jù)分組)的關(guān)聯(lián)確定第一數(shù)據(jù)分組將不被緩沖。分組分類器215使用來自規(guī)則制定數(shù)據(jù)庫220的關(guān)聯(lián),基于分類二是包括控制消息的數(shù)據(jù)分組(其為改變所復(fù)制的虛擬機130的外部可見狀態(tài)的數(shù)據(jù)分組)的關(guān)聯(lián)確定第二數(shù)據(jù)分組將被緩沖。因此,分組分類器215將第一數(shù)據(jù)分組直接轉(zhuǎn)發(fā)到網(wǎng)絡(luò)接口 230,將第二數(shù)據(jù)分組轉(zhuǎn)發(fā)到傳送緩沖器225。圖3圖示了根據(jù)示例實施例的替代控制模塊155。如圖3所示,控制模塊155可以包括虛擬機接口 310、控制接口 315、控制和協(xié)議模塊320以及網(wǎng)絡(luò)接口 325。虛擬機接口310用作向和從一個或多個虛擬機傳送和接收的信號的接口。控制接口 315用作向和從一個或多個交換機(例如,交換機110)傳送和接收的分組和信號的接口。網(wǎng)絡(luò)接口 325用作向和從一個或多個網(wǎng)絡(luò)元件(例如,路由器、交換機、客戶端等)傳送和接收的分組和信號的接口。接口(例如,虛擬機接口 310、控制接口 315和網(wǎng)絡(luò)接口 325)為本領(lǐng)域技術(shù)人員所熟知且為了簡潔將不再進一步描述。控制和協(xié)議模塊320監(jiān)控通過控制模塊155傳送的數(shù)據(jù)分組??刂坪蛥f(xié)議模塊320監(jiān)控數(shù)據(jù)分組以確定與數(shù)據(jù)分組關(guān)聯(lián)的信息。例如,控制和協(xié)議模塊320可監(jiān)控分組以確定數(shù)據(jù)分組是否是包括控制消息的數(shù)據(jù)分組。例如,控制和協(xié)議模塊320可監(jiān)控分組以確定與數(shù)據(jù)分組關(guān)聯(lián)的協(xié)議??刂坪蛥f(xié)議模塊320將 信息傳達(dá)給控制接口 315??刂平涌?315將該信息傳達(dá)給另一網(wǎng)絡(luò)元件(例如,交換機110)。圖4圖示了根據(jù)示例實施例的交換機110。如圖4所示,交換機110可以包括控制模塊接口 410、控制接口 415、控制和協(xié)議模塊420、分組分類器425、規(guī)則制定數(shù)據(jù)庫430、傳送緩沖器435以及網(wǎng)絡(luò)接口 440??刂颇K接口 410用作向和從一個或多個控制模塊(例如,控制模塊155)傳送和接收的分組和信號的接口??刂平涌?415用作向和從一個或多個控制模塊(例如,控制模塊155)傳送和接收的信號的接口。網(wǎng)絡(luò)接口 440用作向和從一個或多個網(wǎng)絡(luò)元件(例如,路由器、交換機、客戶端等)傳送和接收的分組和信號的接口。接口(例如,控制模塊接口 410、控制接口 415和網(wǎng)絡(luò)接口 440)為本領(lǐng)域技術(shù)人員所熟知且為了簡潔將不再進一步描述??刂坪蛥f(xié)議模塊420可接收與數(shù)據(jù)分組關(guān)聯(lián)的分組信息??山?jīng)由控制模塊接口410從控制模塊(例如,控制模塊155)接收數(shù)據(jù)分組??山?jīng)由控制接口 415從控制模塊(例如,控制模塊155)接收分組信息。控制和協(xié)議模塊420可基于分組信息確定數(shù)據(jù)分組是否是包括控制消息的數(shù)據(jù)分組,控制分組是否是僅包括數(shù)據(jù)或與數(shù)據(jù)分組關(guān)聯(lián)的協(xié)議的數(shù)據(jù)分組。控制和協(xié)議模塊420可將所述確定傳達(dá)給分組分類器425和傳送緩沖器435。分組分類器425可接收經(jīng)由控制模塊接口 410從控制模塊(例如,控制模塊155)接收的數(shù)據(jù)分組作為輸入,并且分組分類器425可基于所確定的對應(yīng)于該數(shù)據(jù)分組的分類和虛擬機的狀態(tài)轉(zhuǎn)發(fā)數(shù)據(jù)分組。基于所述確定將數(shù)據(jù)分組轉(zhuǎn)發(fā)到傳送緩沖器425或網(wǎng)絡(luò)接Π 440。例如,分組分類器415確定是否緩沖(例如,在傳送緩沖器435中)與復(fù)制的虛擬機關(guān)聯(lián)的數(shù)據(jù)分組以使得不改變所復(fù)制的虛擬機的外部可見狀態(tài)的任何數(shù)據(jù)分組不被緩沖。而緩沖改變所復(fù)制的虛擬機的外部可見狀態(tài)的數(shù)據(jù)分組。傳送緩沖器435可以是存儲器(例如,ROM、RAM、SDRAM、DDR 等)。不改變所復(fù)制的虛擬機的外部可見狀態(tài)的數(shù)據(jù)分組可以是例如轉(zhuǎn)發(fā)的數(shù)據(jù)分組(例如,不在虛擬機處始發(fā)的數(shù)據(jù)分組)以及僅包括數(shù)據(jù)的數(shù)據(jù)分組。改變所復(fù)制的虛擬機的外部可見狀態(tài)的數(shù)據(jù)分組可以是例如包括控制消息的數(shù)據(jù)分組。規(guī)則制定數(shù)據(jù)庫430可以包括例如將數(shù)據(jù)分組的類型(例如,數(shù)據(jù)或控制)與分類進行關(guān)聯(lián)的數(shù)據(jù)表。每個分類可以定義數(shù)據(jù)分組是否將被緩沖。規(guī)則制定數(shù)據(jù)庫430可以在任何時間改變并且可以由與交換機110關(guān)聯(lián)的應(yīng)用和/或與虛擬機(例如,虛擬機135)關(guān)聯(lián)的應(yīng)用控制。例如,假設(shè)交換機110從控制模塊(例如,控制模塊155)接收兩個數(shù)據(jù)分組并且該虛擬機135為復(fù)制的虛擬機。第一數(shù)據(jù)分組與分類一關(guān)聯(lián),第二數(shù)據(jù)分組與分類二關(guān)聯(lián)。規(guī)則制定模塊430包括分類一是僅有數(shù)據(jù)的數(shù)據(jù)分組且分類二是包括控制消息的數(shù)據(jù)分組這樣的關(guān)聯(lián)。控制和協(xié)議模塊420接收與第一數(shù)據(jù)分組和第二數(shù)據(jù)分組關(guān)聯(lián)的第一分組信息。控制和協(xié)議模塊420還接收表明虛擬機130是第一數(shù)據(jù)分組和第二數(shù)據(jù)分組的源的第二分組信息。第一分組信息至少包括第一數(shù)據(jù)分組與分類一關(guān)聯(lián)并且第二數(shù)據(jù)分組與分類二關(guān)聯(lián)的指示。第二分組信息至少包括虛擬機130是復(fù)制的虛擬機的指示??刂坪蛥f(xié)議模塊420將第一和第二分組信息(或關(guān)于分類和復(fù)制的確定)傳達(dá)給分組分類器425。分組分類器425使用來自規(guī)則制定數(shù)據(jù)庫430的關(guān)聯(lián),基于分類一是僅有數(shù)據(jù)的數(shù)據(jù)分組(其為不改變所復(fù)制的虛擬機135的外部可見狀態(tài)的數(shù)據(jù)分組)的關(guān)聯(lián)確定第一數(shù)據(jù)分組將不被緩沖。分組分類器425使用來自規(guī)則制定數(shù)據(jù)庫430的關(guān)聯(lián),基于分類二是包括控制消息的數(shù)據(jù)分組(其為改變所復(fù)制的虛擬機135的外部可見狀態(tài)的數(shù)據(jù)分組)的關(guān)聯(lián)確定第二數(shù)據(jù)分組將被緩沖。因此,分組分類器將第一數(shù)據(jù)分組直接轉(zhuǎn)發(fā)到網(wǎng)絡(luò)接口440,將第二數(shù)據(jù)分組轉(zhuǎn)發(fā)到傳送緩沖器435。圖5圖示了根據(jù)示例實施例用于異步虛擬機復(fù)制的方法。在描述與圖5關(guān)聯(lián)的方法的步驟時將參考圖1的網(wǎng)絡(luò)和圖2的控制模塊150。參考圖5,在步驟S505中,托管虛擬機的控制模塊確定虛擬機將被復(fù)制。在步驟S510中,控制模塊開始虛擬機的復(fù)制。確定虛擬機將被復(fù)制以及發(fā)起虛擬機的復(fù)制是本領(lǐng)域技術(shù)人員已知的,為了簡潔將不再進一步描述。在步驟S515中,控制模塊從將被復(fù)制的虛擬機接收數(shù)據(jù)分組。例如,控制模塊150可從虛擬機130 (假設(shè)虛擬機130是將被復(fù)制的虛擬機)接收數(shù)據(jù)分組??刂颇K150可經(jīng)由虛擬機接口 210接收數(shù)據(jù)分組,如圖2中所示。在步驟S520中,控制模塊150確定與數(shù)據(jù)分組關(guān)聯(lián)的分類。例如,分組分類器215可基于與將要復(fù)制的虛擬機關(guān)聯(lián) 的數(shù)據(jù)分組是否要被緩沖(例如,在傳送緩沖器225中)來確定與數(shù)據(jù)分組關(guān)聯(lián)的分類,以使得不改變所復(fù)制的虛擬機的外部可見狀態(tài)的任何數(shù)據(jù)分組不被緩沖。而緩沖改變所復(fù)制的虛擬機的外部可見狀態(tài)的數(shù)據(jù)分組。不改變被復(fù)制的虛擬機的外部可見狀態(tài)的數(shù)據(jù)分組可以是例如轉(zhuǎn)發(fā)的數(shù)據(jù)分組(例如,不在虛擬機處始發(fā)的數(shù)據(jù)分組)以及僅包括數(shù)據(jù)的數(shù)據(jù)分組。改變被復(fù)制的虛擬機的外部可見狀態(tài)的數(shù)據(jù)分組可以是例如包括控制消息的數(shù)據(jù)分組。例如,如上所述,規(guī)則制定數(shù)據(jù)庫220可以包括將數(shù)據(jù)分組的類型(例如,數(shù)據(jù)或控制)與分類進行關(guān)聯(lián)的數(shù)據(jù)表。每個分類可以定義數(shù)據(jù)分組是否將被緩沖。分組分類器215可以在步驟S520中使用數(shù)據(jù)分組與分類之間的關(guān)聯(lián)來確定是否緩沖與被復(fù)制的虛擬機關(guān)聯(lián)的數(shù)據(jù)分組。在步驟S525中,控制模塊150確定分類是否引起狀態(tài)改變(例如,數(shù)據(jù)分組包括控制消息)。如果分類引起狀態(tài)改變,那么在步驟S530中緩沖數(shù)據(jù)分組(例如,在傳送緩沖器225中)。否則,在步驟S535中數(shù)據(jù)分組被傳送(例如,經(jīng)由網(wǎng)絡(luò)接口 230)。如以上關(guān)于圖2所述,可以由分組分類器215執(zhí)行步驟S520和S525。在步驟S540中,控制模塊150確定復(fù)制是否完成。如果復(fù)制沒有完成,則處理返回步驟S515。否則,在步驟S545中,使用標(biāo)準(zhǔn)的(已知)處理來處理數(shù)據(jù)分組。確定復(fù)制是否完成以及對數(shù)據(jù)分組的標(biāo)準(zhǔn)處理為本領(lǐng)域技術(shù)人員所熟知,因此為了簡潔將不進一步介紹。圖6圖示了根據(jù)示例實施例用于異步虛擬機復(fù)制的方法。在描述與圖6關(guān)聯(lián)的方法的步驟時將參考圖1的網(wǎng)絡(luò)、圖3的控制模塊155以及圖4的交換機110。參考圖6,在步驟S605中,托管虛擬機的控制模塊確定虛擬機將被復(fù)制。在步驟S610中,控制模塊開始虛擬機的復(fù)制。確定虛擬機將被復(fù)制以及發(fā)起虛擬機的復(fù)制是本領(lǐng)域技術(shù)人員已知的,為了簡潔將不再進一步描述。在步驟S615 中,交換機110從控制模塊(例如,控制模塊155)接收消息。消息包括與數(shù)據(jù)分組關(guān)聯(lián)的協(xié)議和控制信息。協(xié)議和控制信息可包括與數(shù)據(jù)分組關(guān)聯(lián)的協(xié)議、與數(shù)據(jù)分組關(guān)聯(lián)的分類(如上所述)、與數(shù)據(jù)分組關(guān)聯(lián)的消息信息和/或與數(shù)據(jù)分組關(guān)聯(lián)的數(shù)據(jù)類型信息。例如,控制模塊155可如上所述關(guān)于圖3確定協(xié)議和控制信息。控制模塊155可經(jīng)由控制接口 315將信令消息發(fā)送到交換機110。然后交換機110可經(jīng)由控制接口 415接收該信令消息,并且控制和協(xié)議模塊420處理該信令消息,如上述關(guān)于圖4討論的。在步驟S620中,交換機110從托管被復(fù)制的虛擬機的控制模塊(例如,控制模塊155)接收數(shù)據(jù)分組。例如,交換機110可從虛擬機135接收數(shù)據(jù)分組(假設(shè)虛擬機135是被復(fù)制的虛擬機)??山?jīng)由控制模塊155接收數(shù)據(jù)分組。交換機110可經(jīng)由控制模塊接口 410接收數(shù)據(jù)分組,如圖4所示。在步驟S625中,交換機110確定與數(shù)據(jù)分組關(guān)聯(lián)的分類。例如,分組分類器215可基于與被復(fù)制的虛擬機關(guān)聯(lián)的數(shù)據(jù)分組是否要被緩沖(例如,在傳送緩沖器435中)來確定與數(shù)據(jù)分組關(guān)聯(lián)的分類,以使得不改變被復(fù)制的虛擬機的外部可見狀態(tài)的任何數(shù)據(jù)分組不被緩沖。而緩沖改變被復(fù)制的虛擬機的外部可見狀態(tài)的數(shù)據(jù)分組。不改變被復(fù)制的虛擬機的外部可見狀態(tài)的數(shù)據(jù)分組可以是例如轉(zhuǎn)發(fā)的數(shù)據(jù)分組(例如,不在虛擬機處始發(fā)的數(shù)據(jù)分組)以及僅包括數(shù)據(jù)的數(shù)據(jù)分組。改變被復(fù)制的虛擬機的外部可見狀態(tài)的數(shù)據(jù)分組可以是例如包括控制消息的數(shù)據(jù)分組。
例如,如上所述,規(guī)則制定數(shù)據(jù)庫220可以包括將數(shù)據(jù)分組的類型(例如,數(shù)據(jù)或控制)與分類進行關(guān)聯(lián)的數(shù)據(jù)表。每個分類可以定義數(shù)據(jù)分組是否將被緩沖。分組分類器215可以在步驟S625中使用數(shù)據(jù)分組與分類之間的關(guān)聯(lián)來確定是否緩沖與被復(fù)制的虛擬機關(guān)聯(lián)的數(shù)據(jù)分組。在步驟S630中,交換機110確定分類是否引起狀態(tài)改變(例如,數(shù)據(jù)分組包括控制消息)。如果分類引起狀態(tài)改變,那么在步驟S635中緩沖數(shù)據(jù)分組(例如,在傳送緩沖器435中)。否則,在步驟S640中數(shù)據(jù)分組被傳送(例如,經(jīng)由網(wǎng)絡(luò)接口 440)。如以上關(guān)于圖4所述,可以由分組分類器215執(zhí)行步驟S625和S630。在步驟S645中,交換機110確定復(fù)制是否完成。如果復(fù)制沒有完成,則處理返回步驟S615。否則,在步驟S650中,使用標(biāo)準(zhǔn)的(已知)處理來處理數(shù)據(jù)分組。確定復(fù)制是否完成以及對數(shù)據(jù)分組的標(biāo)準(zhǔn)處理為本領(lǐng)域技術(shù)人員所熟知,因此為了簡潔將不進一步介紹。盡管示例實施例描述了在異步虛擬機復(fù)制期間包括緩沖數(shù)據(jù)分組的新方法(例如,圖5和圖6),但是示例實施例不限于此。例如,可以復(fù)制虛擬機以創(chuàng)建備份或備用虛擬機??梢允褂萌缟纤鱿嗤姆椒ê拖嗤难b置來處理與備份或備用虛擬機關(guān)聯(lián)的數(shù)據(jù)分組。例如,可以從原始的虛擬機和作為原始的虛擬機的備份的虛擬機的角度來執(zhí)行圖5的方法。在該示例中,被復(fù)制的虛擬機變成原始的虛擬機,并且步驟S540被詢問是否繼續(xù)使用備份虛擬機替代。類似的替代示例實施例可基于圖6。本發(fā)明的 替代實施例可實現(xiàn)為用于計算機系統(tǒng)的計算機程序產(chǎn)品,例如,計算機程序產(chǎn)品為存儲在有形或非暫態(tài)數(shù)據(jù)記錄介質(zhì)(計算機可讀介質(zhì))上或在計算機數(shù)據(jù)信號中體現(xiàn)的計算機指令序列、代碼片段或程序片段,有形或非暫態(tài)數(shù)據(jù)記錄介質(zhì)例如為磁盤、CD-ROM、ROM或硬盤,計算機數(shù)據(jù)信號在有形介質(zhì)或無線介質(zhì)(例如,微波或紅外線)上傳送。計算機指令序列、代碼片段或程序片段可構(gòu)成上述示例實施例的方法的所有或部分功能性,并且也可以存儲在任何存儲器設(shè)備中,易失性的或非易失性的,諸如半導(dǎo)體、磁、光或其它存儲器設(shè)備。示例實施例提供用于虛擬機的異步復(fù)制的改進方案,因為在已知方法中所有數(shù)據(jù)分組從復(fù)制的虛擬機緩沖。因為在已知方法中所有數(shù)據(jù)分組被緩沖,因此分組僅每缺省時間間隔(Tepoch)傳送,從而以與間隔持續(xù)時間成比例的因子降低了有效帶寬。此外,在已知方法中,外部客戶端在分組緩沖期間將體驗不活動周期,隨后在緩沖釋放期間體驗非常高的網(wǎng)絡(luò)業(yè)務(wù)量的簡短周期。進一步地,在已知方法中,來自復(fù)制的虛擬機的響應(yīng)將被平均延遲 Tepoch/2。盡管已特別地示出和描述示例實施例,但本領(lǐng)域技術(shù)人員將理解的是,在不脫離權(quán)利要求的精神和范圍的情況下可以進行形式和細(xì)節(jié)上的改變。因此已描述了本發(fā)明,將顯而易見的是,可以許多方式作出修改。這樣的修改將不認(rèn)為是對本發(fā)明的偏離,并且所有這樣的修改意在包括在本發(fā)明的范圍內(nèi)。
權(quán)利要求
1.一種復(fù)制虛擬機(130、135、140、145)的方法,所述方法包括: 由網(wǎng)絡(luò)元件確定(S520、S625)對應(yīng)于與所述虛擬機關(guān)聯(lián)的數(shù)據(jù)分組的分類;以及 基于所確定的分類緩沖(S530、S635)所述數(shù)據(jù)分組或傳送(S535、S640)所述數(shù)據(jù)分組。
2.根據(jù)權(quán)利要求1所述的方法,其中 基于所述數(shù)據(jù)分組的類型確定所述分類,以及 所述類型是數(shù)據(jù)分組包括控制消息和數(shù)據(jù)分組只包括數(shù)據(jù)中的一種。
3.根據(jù)權(quán)利要求2所述的方法,進一步包括: 將所確定的分類與規(guī)則制定進行比較,所述規(guī)則制定包括基于所述分類和數(shù)據(jù)分組的類型的多個規(guī)則。
4.根據(jù)權(quán)利要求3所述的方法,其中緩沖包括控制消息的數(shù)據(jù)分組,并且傳送只包括數(shù)據(jù)的數(shù)據(jù)分組。
5.根據(jù)權(quán)利要求1所述的方法,其中所述網(wǎng)絡(luò)元件是網(wǎng)絡(luò)交換機。
6.根據(jù)權(quán)利要求5所述的方法,進一步包括: 由所述網(wǎng)絡(luò)交換機從托管所述虛擬機的控制模塊接收(S615)控制和協(xié)議消息;以及由所述網(wǎng)絡(luò)交換機從托管所述虛擬機的控制模塊接收(S620)所述數(shù)據(jù)分組,其中所述控制和協(xié)議消息用于確定對應(yīng)于所述數(shù)據(jù)分組的分類。
7.—種與虛擬機的托管關(guān)聯(lián)的控制模塊(150),所述控制模塊包括: 配置成緩沖數(shù)據(jù)分組的存儲器(225);以及 配置成確定對應(yīng)于與所述虛擬機關(guān)聯(lián)的數(shù)據(jù)分組的分類并且配置成基于所確定的分類緩沖所述存儲器中的數(shù)據(jù)分組或傳送所述數(shù)據(jù)分組的分組分類器(215)。
8.根據(jù)權(quán)利要求7所述的控制模塊,其中 基于所述分組的類型確定所述分類, 所述類型是數(shù)據(jù)分組包括控制消息和數(shù)據(jù)分組只包括數(shù)據(jù)中的一種, 緩沖包括控制消息的數(shù)據(jù)分組,以及 傳送只包括數(shù)據(jù)的數(shù)據(jù)分組。
9.一種網(wǎng)絡(luò)交換機(110),包括: 配置成從托管虛擬機的控制模塊接收消息的模塊(410),所述消息包括對應(yīng)于與所述虛擬機關(guān)聯(lián)的數(shù)據(jù)分組的協(xié)議信息和控制信息;以及 配置成基于所述協(xié)議信息和控制信息確定分類并且配置成基于所確定的分類緩沖所述數(shù)據(jù)分組或傳送所述數(shù)據(jù)分組的分組分類器(425)。
10.根據(jù)權(quán)利要求9所述的網(wǎng)絡(luò)交換機,其中 基于所述數(shù)據(jù)分組的類型確定所述分類, 所述類型是數(shù)據(jù)分組包括控制消息和數(shù)據(jù)分組只包括數(shù)據(jù)中的一種, 緩沖包括控制消息的 數(shù)據(jù)分組,以及 傳送只包括數(shù)據(jù)的數(shù)據(jù)分組。
全文摘要
提供了一種用于異步虛擬機復(fù)制的方法和設(shè)備。該方法包括確定對應(yīng)于與虛擬機關(guān)聯(lián)的數(shù)據(jù)分組的分類,以及基于所確定的分類緩沖所述數(shù)據(jù)分組或傳送所述數(shù)據(jù)分組。
文檔編號G06F11/14GK103250395SQ201180059502
公開日2013年8月14日 申請日期2011年11月21日 優(yōu)先權(quán)日2010年12月10日
發(fā)明者T·斯塔斯波羅斯, P·科波爾, A·哈里, D·斯提利艾迪斯 申請人:阿爾卡特朗訊公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1