專利名稱:用于實(shí)現(xiàn)虛擬機(jī)在虛擬私有云內(nèi)的遷移的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及網(wǎng)絡(luò)通信。更具體地,本發(fā)明涉及虛擬私有云中的虛擬機(jī)的遷移。
背景技術(shù):
云計(jì)算的出現(xiàn)改變了用戶終端的計(jì)算模式一將計(jì)算中心從客戶端轉(zhuǎn)移到網(wǎng)絡(luò)偵牝極大地降低了對(duì)客戶端的運(yùn)行能力的要求。這樣的計(jì)算架構(gòu)使得瘦客戶端成為可能,從而為客戶端設(shè)備提供了更廣的發(fā)展空間。此外,這樣的計(jì)算架構(gòu)也使得允許原本不具備大容量、高處理及計(jì)算速度的客戶端設(shè)備使用更多的網(wǎng)絡(luò)應(yīng)用,尤其是那些要求高計(jì)算和強(qiáng)處理能力的應(yīng)用。因此,云計(jì)算能夠向客戶端提供比任何現(xiàn)有技術(shù)都更多更新的、具有吸引力的服務(wù)。目前云計(jì)算與瘦客戶端相結(jié)合的應(yīng)用已經(jīng)越來越流行,在未來將成為網(wǎng)絡(luò)技術(shù)領(lǐng)域的熱點(diǎn)之一。簡(jiǎn)單來說,云計(jì)算主要是通過虛擬化技術(shù),將客戶端設(shè)備上的計(jì)算工作轉(zhuǎn)移到網(wǎng)絡(luò)中的設(shè)備上,承接了這種計(jì)算工作的設(shè)備往往被形象地稱為云中心,包括例如資源池、數(shù)據(jù)中心等。這樣的云中心能夠?yàn)榭蛻舳嗽O(shè)備提供良好的安全性、靈活性以及可擴(kuò)展性。可以理解,客戶端會(huì)期望云中心能夠提供越來越高的服務(wù)效率,從而提升服務(wù)質(zhì)量、獲得良好的服務(wù)體驗(yàn)。因此具體運(yùn)行云中心計(jì)算任務(wù)的虛擬機(jī)VM(Virtual Machine)需要能夠根據(jù)客戶端最新的狀態(tài)(例如在哪里、何時(shí)可能會(huì)使用云計(jì)算服務(wù)、將需要進(jìn)行哪些云計(jì)算等等)動(dòng)態(tài)地、自適應(yīng)地遷移到最佳位置,并具有高靈活性。這不僅需要硬件和軟件支持,同時(shí)還需要消除虛擬機(jī)的位置依賴性。也就是說,虛擬機(jī)應(yīng)當(dāng)能夠在多個(gè)不同的或分布式云中心之間自由遷移。這樣,運(yùn)行在虛擬機(jī)上的基于云的應(yīng)用對(duì)于客戶端設(shè)備來說,就是在任何地點(diǎn)、任何時(shí)間都是可用的、可訪問的,并且能夠滿足用戶的位置和連接狀態(tài)等具體情況的要求??梢姡瑢?shí)現(xiàn)虛擬機(jī)遷移是提高云中心服務(wù)效率的主要途徑之一。基于虛擬機(jī)遷移可以將若干個(gè)分布式的云中心整合起來(如整合計(jì)算資源、存儲(chǔ)資源等),成為一個(gè)功能更強(qiáng)大的云中心。此外,實(shí)現(xiàn)虛擬機(jī)遷移還可以帶來諸多優(yōu)點(diǎn),例如,通過遷移能夠改善工作負(fù)載的分布,方便云中心的管理、改善整個(gè)系統(tǒng)性能、提高云中心的容錯(cuò)能力等等。最近,私有云或者說虛擬私有云(VPC, Virtual Private Cloud)正在成為云計(jì)算的發(fā)展方向之一。虛擬私有云可將共享的或公有云的一部分資源提供給用戶使用。利用虛擬私有云,云服務(wù)可以通過VPN連接的方式與現(xiàn)有IP網(wǎng)絡(luò)基礎(chǔ)設(shè)施整合起來。目前亞馬遜、Google等諸多企業(yè)都開發(fā)了這樣的虛擬私有云。使用VPN的目的就是在多個(gè)虛擬私有云之間實(shí)現(xiàn)隔離。虛擬私有云中的虛擬機(jī)會(huì)被分配私有IP地址。當(dāng)屬于不同VPN但擁有相同私有地址的虛擬機(jī)同時(shí)跨越廣域網(wǎng)遷移時(shí),會(huì)在網(wǎng)絡(luò)中產(chǎn)生地址沖突,導(dǎo)致PE無法區(qū)分具有相同私有地址的兩個(gè)虛擬機(jī)。目前用來實(shí)現(xiàn)虛擬私有云中虛擬機(jī)跨越廣域網(wǎng)進(jìn)行遷移的方案是為了保證移動(dòng)的虛擬機(jī)的IP地址在整個(gè)廣域網(wǎng)絡(luò)環(huán)境中是唯一的,即,避免不同VPN中的虛擬機(jī)的IP地址彼此沖突或交疊,為具有遷移需求的虛擬機(jī)分配公有IP地址。這樣,當(dāng)虛擬私有云中的虛擬機(jī)發(fā)生遷移時(shí),運(yùn)營(yíng)商邊緣路由器便將其私有IP地址映射到為其分配的公有IP地址,進(jìn)而通過公有IP地址來指示目的地為該移動(dòng)虛擬機(jī)的分組應(yīng)該被轉(zhuǎn)發(fā)到哪里。但是,隨著具有遷移需求的虛擬機(jī)的增多,這樣的遷移方案將消耗大量公有IP地址,其可擴(kuò)展性和效率都比較弱。鑒于還需要較長(zhǎng)的時(shí)間才能完成從IPv4到IPv6的轉(zhuǎn)換,所以公有地址,特別是IPv4公有地址仍然是寶貴的網(wǎng)絡(luò)資源。由上述可見,急需有效的虛擬機(jī)遷移方案,使得在不耗費(fèi)或至少不耗費(fèi)大量公有IP地址的情況下,實(shí)現(xiàn)虛擬機(jī)在基于MPLS VPN的虛擬私有云內(nèi)的靈活遷移。
發(fā)明內(nèi)容
為了解決或者至少緩解現(xiàn)有技術(shù)中的上述問題,本發(fā)明提供了一種用于實(shí)現(xiàn)虛擬機(jī)在基于MPLS VPN的虛擬私有云內(nèi)的遷移的方法和設(shè)備,以及相應(yīng)的計(jì)算機(jī)程序以及存儲(chǔ)有計(jì)算機(jī)可讀代碼的計(jì)算機(jī)可讀介質(zhì)。根據(jù)本發(fā)明的第一方面,提供了一種用于實(shí)現(xiàn)虛擬機(jī)在虛擬私有云內(nèi)遷移的方法,所述方法包括維護(hù)用于標(biāo)識(shí)虛擬機(jī)的虛擬機(jī)二元標(biāo)識(shí)符以及為該虛擬機(jī)提供服務(wù)的提供商邊緣路由器之間的綁定信息;在接收到去往虛擬機(jī)的分組數(shù)據(jù)的情況下,基于對(duì)數(shù)據(jù)分組的接收確定目的虛擬機(jī)的二元標(biāo)識(shí)符,并根據(jù)所維護(hù)的綁定信息確定與該二元標(biāo)識(shí)符相關(guān)聯(lián)的提供商邊緣路由器;其中,所述分組數(shù) 據(jù)將被路由到所確定的提供商邊緣路由器;虛擬機(jī)的二元標(biāo)識(shí)符包括該虛擬機(jī)的私有IP地址以及能夠標(biāo)識(shí)該虛擬機(jī)所在的虛擬專用網(wǎng)的區(qū)分符。優(yōu)選地,根據(jù)所確定的與二元標(biāo)識(shí)符相關(guān)聯(lián)的提供商邊緣路由器,確定所述分組數(shù)據(jù)的標(biāo)簽交換路徑。根據(jù)本發(fā)明的第二方面,提供了一種用于實(shí)現(xiàn)虛擬機(jī)在虛擬私有云內(nèi)的遷移的方法,所述方法包括維護(hù)標(biāo)識(shí)虛擬機(jī)的二元標(biāo)識(shí)符以及為該虛擬機(jī)提供服務(wù)的提供商邊緣路由器之間的綁定信息;在接收到關(guān)于所維護(hù)的綁定信息的更新或者新的綁定信息的情況下,更新所維護(hù)的綁定信息;在接收到查詢綁定信息的消息情況下,如果所維護(hù)的綁定信息中有所查詢的綁定信息,則作為響應(yīng),發(fā)送相應(yīng)的綁定信息;如果所維護(hù)的綁定信息中沒有所查詢的綁定信息并且所述查詢綁定信息的消息發(fā)送自提供商邊緣路由器,則向其他路由映射設(shè)備查詢?cè)摻壎ㄐ畔?,并將所獲得的綁定信息發(fā)送給所述提供商邊緣路由器;否則,向其他路由映射設(shè)備查詢?cè)摻壎ㄐ畔ⅲ⒆鳛轫憫?yīng)發(fā)送所獲得的綁定信息,或者不做任何響應(yīng);其中,虛擬機(jī)的二元標(biāo)識(shí)符包括該虛擬機(jī)的私有IP地址以及能夠標(biāo)識(shí)該虛擬機(jī)所在的虛擬專用網(wǎng)的區(qū)分符。根據(jù)本發(fā)明的第三方面,提供了一種設(shè)備,該設(shè)備包括用于實(shí)現(xiàn)上述方法以及本發(fā)明的實(shí)施例的任意方法的裝置。根據(jù)本發(fā)明的第四方面,提供了一種用于實(shí)現(xiàn)虛擬機(jī)在虛擬私有云內(nèi)的遷移的設(shè)備,所述設(shè)備包括收發(fā)單元,用于收發(fā)信息;數(shù)據(jù)庫(kù),用于維護(hù)標(biāo)識(shí)虛擬機(jī)的虛擬機(jī)二元標(biāo)識(shí)符以及為該虛擬機(jī)提供服務(wù)的提供商邊緣路由器之間的綁定信息;綁定信息管理單元,在經(jīng)由收發(fā)單元接收到去往虛擬機(jī)的分組數(shù)據(jù)的情況下,基于對(duì)數(shù)據(jù)分組的接收確定目的虛擬機(jī)的二元標(biāo)識(shí)符,并根據(jù)所維護(hù)的綁定信息確定與該二元標(biāo)識(shí)符相關(guān)聯(lián)的提供商邊緣路由器;其中,所述分組數(shù)據(jù)將被路由到所確定的提供商邊緣路由器;虛擬機(jī)的二元標(biāo)識(shí)符包括該虛擬機(jī)的私有IP地址以及能夠標(biāo)識(shí)該虛擬機(jī)所在的虛擬專用網(wǎng)的區(qū)分符。根據(jù)本發(fā)明的第五方面,提供了一種用于實(shí)現(xiàn)虛擬機(jī)在虛擬私有云內(nèi)的遷移的設(shè)備,所述設(shè)備包括收發(fā)單元,用于收發(fā)信息;數(shù)據(jù)庫(kù),用于維護(hù)標(biāo)識(shí)虛擬機(jī)的虛擬機(jī)二元標(biāo)識(shí)符以及為該虛擬機(jī)提供服務(wù)的提供商邊緣路由器之間的綁定信息;綁定信息管理單元,在經(jīng)由收發(fā)單元接收到查詢綁定信息的消息情況下,如果所維護(hù)的綁定信息中有所查詢的綁定信息,則作為響應(yīng),經(jīng)由所述收發(fā)單元發(fā)送相應(yīng)的綁定信息;如果所維護(hù)的綁定信息中沒有所查詢的綁定信息并且所述查詢綁定信息的消息發(fā)送自提供商邊緣路由器,則經(jīng)由所述收發(fā)單元向其他路由映射設(shè)備查詢?cè)摻壎ㄐ畔?,并將所獲得的綁定信息發(fā)送給所述提供商邊緣路由器;否則,經(jīng)由所述收發(fā)單元向其他路由映射設(shè)備查詢?cè)摻壎ㄐ畔?,并作為響?yīng)發(fā)送所獲得的綁定信息,或者不做任何響應(yīng);其中,虛擬機(jī)的二元標(biāo)識(shí)符包括該虛擬機(jī)的私有IP地址以及能夠標(biāo)識(shí)該虛擬機(jī)所在的虛擬專用網(wǎng)的區(qū)分符。根據(jù)本發(fā)明的第六方面,前述方法以及根據(jù)本發(fā)明的實(shí)施例實(shí)現(xiàn)的任意方法都可以由計(jì)算機(jī)程序來實(shí)現(xiàn)。根據(jù)本發(fā)明的第七方面,提供了一種設(shè)備,其包括接口,用于接收和發(fā)送信息;存儲(chǔ)器,其上存儲(chǔ)有用于實(shí)現(xiàn)本發(fā)明的任意方法或設(shè)備的計(jì)算機(jī)可執(zhí)行代碼;處理器,所述處理器能夠引起所述存儲(chǔ)器上存儲(chǔ)的計(jì)算機(jī)可執(zhí)行代碼被所述設(shè)備執(zhí)行。根據(jù)本發(fā)明的第八方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有用于實(shí)現(xiàn)本發(fā)明的方法或設(shè)備的計(jì)算機(jī)可執(zhí)行指令。根據(jù)本發(fā)明的方案,使用虛擬機(jī)在基于MPLS VPN的虛擬私有云中的私有IP地址就可以實(shí)現(xiàn)虛擬機(jī)在基于MPLS VPN的虛擬私有云中的遷移。使得當(dāng)虛擬機(jī)發(fā)生遷移時(shí),即,虛擬機(jī)成為移動(dòng)虛擬機(jī)時(shí),無需再為其單獨(dú)分配公有IP地址。這樣,只要需要,采用本發(fā)明的方案的網(wǎng)絡(luò)環(huán)境中的任何一個(gè)虛擬機(jī)可以隨時(shí)成為移動(dòng)的虛擬機(jī)。從而,本發(fā)明實(shí)現(xiàn)了虛擬機(jī)在基于MPLS VPN的虛擬私有云中的遷移。對(duì)于虛擬私有云提供商來說,使用本發(fā)明的虛擬機(jī)遷移技術(shù),可以更方便地將虛擬私有云服務(wù)與MPLS VPN集成,而無需為其相應(yīng)的虛擬私有云服務(wù)或應(yīng)用特別地構(gòu)建MPLS網(wǎng)絡(luò) 。而且,在本發(fā)明的優(yōu)選實(shí)施例中,對(duì)于基于多協(xié)議(例如IPv4、IPv6等)的MPLSVPN的虛擬私有云中心,可以利用所提出的ICMP消息來承載本發(fā)明中的注冊(cè)過程的消息,利用擴(kuò)展BGP更新消息(Update message)來承載本發(fā)明中的有關(guān)綁定信息的更新、查詢、通知等消息。這樣,實(shí)現(xiàn)了對(duì)現(xiàn)有的網(wǎng)絡(luò)運(yùn)行環(huán)境、通信協(xié)議、通信設(shè)備的最小的改動(dòng),最小化對(duì)現(xiàn)有框架的影響。此外,在另一優(yōu)選實(shí)施例中,在上述消息中引入了新的可選非傳遞屬性作為對(duì)現(xiàn)有協(xié)議的擴(kuò)展。這樣,進(jìn)一步實(shí)現(xiàn)了與現(xiàn)有網(wǎng)絡(luò)架構(gòu)的兼容性(不支持本發(fā)明的網(wǎng)絡(luò)設(shè)備可以直接丟棄接收到的與本發(fā)明相關(guān)的信息)。
通過下面結(jié)合附圖進(jìn)行的詳細(xì)描述,將會(huì)對(duì)本發(fā)明有進(jìn)一步的理解,從而本發(fā)明的上述以及其他優(yōu)點(diǎn)、所公開的示例性實(shí)施例的其它特性和優(yōu)點(diǎn)對(duì)本領(lǐng)域技術(shù)人員將變得明顯。然而,需要注意的是,無論是附圖還是下文中的具體實(shí)例,均只是為了說明本發(fā)明的思路而做出的示例性描述,不應(yīng)當(dāng)被作為對(duì)本發(fā)明的任何方面的限制。本發(fā)明的保護(hù)范圍由所附權(quán)利要求的內(nèi)容及其等效方案來限定。在附圖中,圖1示意性示出用于實(shí)施本發(fā)明的方案的一種示例性網(wǎng)絡(luò)架構(gòu);圖2示意性示出根據(jù)本發(fā)明的一個(gè)實(shí)施例在PE處的處理過程。圖3a示意性示出可以部署在PE路由器上用于實(shí)現(xiàn)本發(fā)明的一個(gè)實(shí)施例的設(shè)備的框圖。圖3b示意性示出用于實(shí)施本發(fā)明的設(shè)備的另一實(shí)施例的示意性框圖。圖4示出了用于實(shí)施本發(fā)明的方案的另一種示例性優(yōu)選網(wǎng)絡(luò)架構(gòu)。圖5示意性示出根據(jù)本發(fā)明的一個(gè)實(shí)施例在ARR處執(zhí)行的處理過程。圖6a示例性示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例在ARR處用于實(shí)現(xiàn)本發(fā)明的方案的設(shè)備的框圖。圖6b示例性示出了根據(jù)本發(fā)明的另一個(gè)實(shí)施例在ARR處用于實(shí)現(xiàn)本發(fā)明的方案的設(shè)備的框圖。圖7示意性示出VM經(jīng)過向PE注冊(cè)從而能夠與客戶端設(shè)備進(jìn)行通信的處理流程。圖8示意性示出根據(jù)本發(fā)明的一個(gè)實(shí)施例VM在區(qū)域內(nèi)部發(fā)生遷移的情況下客戶端與VM之間的通信實(shí)例。圖9示意性示出根據(jù)本發(fā)明的一個(gè)實(shí)施例VM在區(qū)域間發(fā)生遷移的情況下客戶端與VM之間的通信實(shí)例。
具體實(shí)施例方式圖1示例性示出用于實(shí)施本發(fā)明的方案的一種示例性網(wǎng)絡(luò)架構(gòu)。對(duì)于本領(lǐng)域技術(shù)人員來說,由圖1可知,用于實(shí)施本發(fā)明的網(wǎng)絡(luò)環(huán)境與現(xiàn)有技術(shù)中集成了虛擬私有云的MPLS VPN網(wǎng)絡(luò)運(yùn)行環(huán)境相同。也就是說,根據(jù)本發(fā)明的方案可以通過將實(shí)現(xiàn)本發(fā)明的方法、功能、設(shè)備直接附加到現(xiàn)有的網(wǎng)絡(luò)中來實(shí)施本發(fā)明,無需對(duì)現(xiàn)有的網(wǎng)絡(luò)框架做出改動(dòng)。這也體現(xiàn)了本發(fā)明良好的兼容性。如圖1所示, MPLS VPN網(wǎng)絡(luò)包括提供商邊緣路由器PE(Provider Edge),即,標(biāo)簽邊緣路由器LER(LabeI Edge Router)和提供商P(Provider)路由器。VPC提供商站點(diǎn)網(wǎng)絡(luò)A、B、C以及VPC服務(wù)預(yù)定網(wǎng)絡(luò)包括用戶邊緣路由器CE (CE,Customer Edge)和普通的用戶C(Customer)路由器。其中,PE路由器具有與CE的直接的層3連接,這里,CE是VPC提供商站點(diǎn)網(wǎng)絡(luò)或VPC服務(wù)預(yù)定網(wǎng)絡(luò)中的邊緣路由器。而P路由器只與其他P路由器以及PE路由器通信,而不會(huì)與CE建立直接的網(wǎng)絡(luò)連接。如本領(lǐng)域技術(shù)人員熟知的,C路由器均通過CE路由器與PE路由器建立連接,而CE路由器與外界的所有通信都通過PE來完成。具體地,當(dāng)虛擬機(jī)VM或客戶端需要與外界通信時(shí),其通過相應(yīng)的C路由器,經(jīng)由CE路由器連接到PE (在這種情況下,也被稱為入口 PE)上。然后,由PE負(fù)責(zé)對(duì)待傳輸?shù)臄?shù)據(jù)分組封裝內(nèi)層和外層標(biāo)簽,進(jìn)而依據(jù)外層標(biāo)簽在P路由器之間傳遞,直到將數(shù)據(jù)傳輸?shù)剿_定的出口 PE路由器。于是,出口 PE路由器對(duì)標(biāo)簽進(jìn)行解封裝,并將數(shù)據(jù)分組轉(zhuǎn)發(fā)給作為傳輸?shù)哪康牡氐目蛻舳嘶騐M。由上述可見,在該架構(gòu)中,數(shù)據(jù)層面的處理機(jī)制與現(xiàn)有技術(shù)相同。即,分組被根據(jù)其轉(zhuǎn)發(fā)等價(jià)類來附加標(biāo)簽作為前綴,并沿著標(biāo)簽交換路徑(LSR)從一個(gè)PE傳遞到另一個(gè)PE。如下面所描述的,本發(fā)明的方案在控制層面作出了改進(jìn)。為了支持VM在VPC內(nèi)跨越MPLS網(wǎng)絡(luò)的遷移,本發(fā)明以二元的方式來標(biāo)記每一個(gè)VM,即,區(qū)分符和私有地址。這里,區(qū)分符用來標(biāo)記VM所在的VPN,以區(qū)分不同的MPLS VPN,進(jìn)而使得具有相同私有IP地址的VM能夠彼此相區(qū)分。這里,區(qū)分符可以是任何形式的能夠用來區(qū)分不同VPN的標(biāo)識(shí)符,例如包括,但不限于標(biāo)識(shí)VM所在的VPC和/或VPN的標(biāo)識(shí)符。用來標(biāo)識(shí)VPN的標(biāo)識(shí)符例如是,能夠全網(wǎng)唯一地標(biāo)識(shí)特定VPN的路由區(qū)分符RD (RouteDi stingui sher)。可以理解,只要區(qū)分符能夠?qū)W(wǎng)絡(luò)中的不同VPN進(jìn)行標(biāo)識(shí),那么對(duì)于PE來說,就能夠識(shí)別具有相同私有IP地址的VM。而且,在某些情況中,VPC往往只包括一個(gè)VPN。在這種情況下,可替代地,可以使用對(duì)VPC進(jìn)行標(biāo)識(shí)的標(biāo)識(shí)符來區(qū)分網(wǎng)絡(luò)中的不同VPN。即,使用VPC的標(biāo)識(shí)符作為本發(fā)明中的區(qū)分符,也同樣能夠避免PE處的VM地址沖突問題。特別地,在使用VPC的標(biāo)識(shí)符作為區(qū)分符來實(shí)施本發(fā)明的網(wǎng)絡(luò)環(huán)境中,如果存在包含有多個(gè)VPN的VPC,則可以分別對(duì)該VPC內(nèi)的VPN進(jìn)行標(biāo)記,并使用VPC的標(biāo)識(shí)符和標(biāo)記該VPC中的特定VPN的標(biāo)識(shí)符兩者作為本發(fā)明的區(qū)分符。這樣,在后一種情況中,即便是位于一個(gè)VPC中兩個(gè)不同的虛擬專用網(wǎng)中的虛擬機(jī)具有相同的私有地址,也可以通過區(qū)分符中的另一元素——VPN標(biāo)識(shí)符來對(duì)同一個(gè)VPC的不同VPN中的虛擬機(jī)進(jìn)行區(qū)分。具體地,例如,如果一個(gè)虛擬私有云中A包含多個(gè)虛擬專用網(wǎng)a、b、c等,則可以使用VPC和VPN兩者來共同、唯一地標(biāo)識(shí)VM所在的VPN,例如Aa、Ab, Ac等等,并將其作為虛擬機(jī)VM的標(biāo)識(shí)符中的區(qū)分符。容易理解,除了利用現(xiàn)有的能夠?qū)Σ煌腣PN加以區(qū)分的屬性外,可以直接對(duì)網(wǎng)絡(luò)中的VPN重新進(jìn)行標(biāo)識(shí)。 然后,以重新標(biāo)識(shí)的標(biāo)識(shí)符作為虛擬機(jī)VM的標(biāo)識(shí)符中的區(qū)分符。結(jié)果是,網(wǎng)絡(luò)中的VM都具有唯一的標(biāo)識(shí)符,這為在不額外分配公有IP地址的情況下VM跨越MPLS網(wǎng)絡(luò)而隨意遷移提供了可能(如上文提到的)。在本發(fā)明中,虛擬機(jī)VM的這種二元標(biāo)識(shí)符的使用主要是在PE路由器上實(shí)現(xiàn)。在本發(fā)明的優(yōu)選實(shí)施例中,虛擬機(jī)VM的二元標(biāo)識(shí)符中的區(qū)分符,例如,RD,是利用網(wǎng)絡(luò)中的現(xiàn)有參數(shù)來區(qū)分VM所在的VPN。而且,在使用現(xiàn)有技術(shù)中的數(shù)據(jù)分組傳輸方式的情況下,PE就能夠確定并利用這樣的區(qū)分符來對(duì)VM加以區(qū)分。此外,本發(fā)明提出的用于VM的二元標(biāo)識(shí)符無論對(duì)MPLS VPN網(wǎng)絡(luò)中的P路由器,還是對(duì)VPC提供商站點(diǎn)或預(yù)訂網(wǎng)絡(luò)(例如網(wǎng)絡(luò)中的CE、C路由器)來說,都是透明的。在上述優(yōu)選實(shí)施例中,最大化地降低了實(shí)施本發(fā)明的復(fù)雜度,并且最小化了對(duì)VPC提供商站點(diǎn)的網(wǎng)絡(luò)以及VPC服務(wù)預(yù)訂網(wǎng)絡(luò)的影響。在其他實(shí)施例中,如果按照現(xiàn)有的數(shù)據(jù)分組傳輸方式,PE不能獲得這樣的區(qū)分符,貝U可能需要VPC提供商站點(diǎn)或VPC服務(wù)預(yù)訂網(wǎng)絡(luò)中的設(shè)備(例如CE路由器)的配合。具體地,例如,由CE額外地將所需的區(qū)分符添加到發(fā)往PE的數(shù)據(jù)分組中,或通過現(xiàn)有的或新類型的消息直接發(fā)送給PE。關(guān)于在PE處與VM的二元標(biāo)識(shí)符相關(guān)的操作,圖2示意性示出根據(jù)本發(fā)明的一個(gè)實(shí)施例在PE處的處理過程。如圖2所示,PE維護(hù)VM以及該VM的服務(wù)PE這樣的綁定信息。也就是說,綁定信息體現(xiàn)了某個(gè)虛擬機(jī)VM與一個(gè)特定PE的映射關(guān)系。對(duì)于一條綁定信息,可以視為綁定信息中的二元標(biāo)識(shí)符表示的虛擬機(jī)VM成功地注冊(cè)到一個(gè)PE之后(這將在下文詳細(xì)描述),與該二元標(biāo)識(shí)符綁定的PE成為這一虛擬機(jī)的服務(wù)PE,即,該虛擬機(jī)邏輯上綁定到了該P(yáng)E。下面的表I示例性示出PE路由器所維護(hù)的關(guān)于VM綁定信息的列表。這里,將虛擬機(jī)VM的二元標(biāo)識(shí)符表示為VMID (Virtual Machine Identifier),并且將RD作為區(qū)分符。本文中給出的本發(fā)明的實(shí)施例多數(shù)以RD為區(qū)分符進(jìn)行說明的,但是本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,RD只是一種示意性的舉例。如上文提到的,任何現(xiàn)有的、處于開發(fā)中的以及未來出現(xiàn)的或者在實(shí)施本發(fā)明的方案過程中單獨(dú)定義的能夠確定虛擬機(jī)VM歸屬于哪個(gè)虛擬專用網(wǎng)VPN的標(biāo)識(shí)符,都可以作為本發(fā)明VM 二元標(biāo)識(shí)符中的區(qū)分符。此外,如表I所示,以服務(wù)PE的IP地址來對(duì)服務(wù)PE進(jìn)行標(biāo)識(shí)??梢岳斫猓捎闷渌男畔順?biāo)識(shí)不同的PE也是可行的,本發(fā)明在此不再熬述。
權(quán)利要求
1.一種用于實(shí)現(xiàn)虛擬機(jī)在虛擬私有云內(nèi)的遷移的方法,所述方法包括 維護(hù)用于標(biāo)識(shí)虛擬機(jī)的虛擬機(jī)二元標(biāo)識(shí)符以及為該虛擬機(jī)提供服務(wù)的提供商邊緣路由器之間的綁定信息; 在接收到去往虛擬機(jī)的分組數(shù)據(jù)的情況下,基于對(duì)數(shù)據(jù)分組的接收確定目的虛擬機(jī)的二元標(biāo)識(shí)符,并根據(jù)所維護(hù)的綁定信息確定與該二元標(biāo)識(shí)符相關(guān)聯(lián)的提供商邊緣路由器; 其中,所述分組數(shù)據(jù)將被路由到所確定的提供商邊緣路由器;虛擬機(jī)的二元標(biāo)識(shí)符包括該虛擬機(jī)的私有IP地址以及能夠標(biāo)識(shí)該虛擬機(jī)所在的虛擬專用網(wǎng)的區(qū)分符。
2.如權(quán)利要求1所述的方法,其中,如果所維護(hù)的信息中沒有與所確定的二元標(biāo)識(shí)符相關(guān)聯(lián)的綁定信息,則向其他提供商邊緣路由器、相應(yīng)的路由映射器或經(jīng)由相應(yīng)的路由映射器向網(wǎng)絡(luò)中的其他路由映射器中的一個(gè)發(fā)送綁定信息查詢消息,以查詢?cè)摻壎ㄐ畔?,并根?jù)包含在接收到的綁定信息通知消息中的綁定信息,確定相關(guān)聯(lián)的提供商邊緣路由器。
3.如權(quán)利要求1或2所述的方法,其中,如果接收到來自虛擬機(jī)的注冊(cè)消息,則基于對(duì)注冊(cè)消息的接收確定該虛擬機(jī)的二元標(biāo)識(shí)符,并將自己作為該虛擬機(jī)的服務(wù)提供商邊緣路由器與所確定的二元標(biāo)識(shí)符綁定,將所確定的新的綁定信息更新到所維護(hù)的綁定信息中,并向虛擬機(jī)發(fā)送注冊(cè)通告消息以表明注冊(cè)成功。
4.如權(quán)利要求3所述的方法,所述方法進(jìn)一步包括在綁定信息更新消息中將所確定的新的綁定信息發(fā)送給其他提供商邊緣路由器、相應(yīng)的服務(wù)路由映射器、舊的服務(wù)提供商邊緣路由器中的至少一個(gè)。
5.如前述任一權(quán)利要求所述的方法,所述方法進(jìn)一步包括如果接收到來自其他提供商邊緣路由器或相應(yīng)的路由映射器的綁定信息更新消息,則將所接收的綁定信息更新到所維護(hù)的綁定信息中。
6.如前述任一權(quán)利要求所述的方法,所述方法進(jìn)一步包括如果接收到來自其他提供商邊緣路由器或相應(yīng)的路由映射器的綁定信息查詢消息,則如果所維護(hù)的信息中有所查詢的綁定信息,則將所查詢到的綁定信息包含在綁定信息通知消息中向回發(fā)送。
7.如前述任一權(quán)利要求所述的方法,其中,所述區(qū)分符是標(biāo)識(shí)VM所在的虛擬私有云和/或虛擬專用網(wǎng)的標(biāo)識(shí)符,優(yōu)選地是路由區(qū)分符;和/或所述注冊(cè)消息和注冊(cè)通告消息是ICMP消息,所述綁定信息查詢消息、綁定信息通告消息、綁定信息更新消息是擴(kuò)展的MP BGP更新消息。
8.如前述任一權(quán)利要求所述的方法,如果接收到來自其他提供商邊緣路由器或路由映射器的綁定信息更新消息,并且該消息指示此前綁定到該提供上邊緣路由器的虛擬機(jī)遷移到了新的另外的提供商邊緣路由器,則保留該虛擬機(jī)的遷移信息,并在接收到去往該虛擬機(jī)的數(shù)據(jù)分組的情況下,將接收到的數(shù)據(jù)分組轉(zhuǎn)發(fā)給新的另外的提供商邊緣路由器,直到經(jīng)過預(yù)定的時(shí)間段或接收到通知數(shù)據(jù)分組不再會(huì)到達(dá)該提供上邊緣路由器為止。
9.一種用于實(shí)現(xiàn)虛擬機(jī)在虛擬私有云內(nèi)的遷移的設(shè)備,所述設(shè)備包括 收發(fā)單元,用于收發(fā)信息; 數(shù)據(jù)庫(kù),用于維護(hù)標(biāo)識(shí)虛擬機(jī)的虛擬機(jī)二元標(biāo)識(shí)符以及為該虛擬機(jī)提供服務(wù)的提供商邊緣路由器之間的綁定信息; 綁定信息管理單元,在經(jīng)由收發(fā)單元接收到去往虛擬機(jī)的分組數(shù)據(jù)的情況下,基于對(duì)數(shù)據(jù)分組的接收確定目的虛擬機(jī)的二元標(biāo)識(shí)符,并根據(jù)所維護(hù)的綁定信息確定與該二元標(biāo)識(shí)符相關(guān)聯(lián)的提供商邊緣路由器; 其中,所述分組數(shù)據(jù)將被路由到所確定的提供商邊緣路由器;虛擬機(jī)的二元標(biāo)識(shí)符包括該虛擬機(jī)的私有IP地址以及能夠標(biāo)識(shí)該虛擬機(jī)所在的虛擬專用網(wǎng)的區(qū)分符。
10.一種用于實(shí)現(xiàn)虛擬機(jī)在虛擬私有云內(nèi)的遷移的方法,所述方法包括 維護(hù)標(biāo)識(shí)虛擬機(jī)的二元標(biāo)識(shí)符以及為該虛擬機(jī)提供服務(wù)的提供商邊緣路由器之間的綁定信息; 在接收到關(guān)于所維護(hù)的綁定信息的更新或者新的綁定信息的情況下,更新所維護(hù)的綁定信息; 在接收到查詢綁定信息的消息情況下,如果所維護(hù)的綁定信息中有所查詢的綁定信息,則作為響應(yīng),發(fā)送相應(yīng)的綁定信息;如果所維護(hù)的綁定信息中沒有所查詢的綁定信息并且所述查詢綁定信息的消息發(fā)送自提供商邊緣路由器,則向其他路由映射設(shè)備查詢?cè)摻壎ㄐ畔?,并將所獲得的綁定信息發(fā)送給所述提供商邊緣路由器;否則,向其他路由映射設(shè)備查詢?cè)摻壎ㄐ畔?,并作為響?yīng)發(fā)送所獲得的綁定信息,或者不做任何響應(yīng); 其中,虛擬機(jī)的二元標(biāo)識(shí)符包括該虛擬機(jī)的私有IP地址以及能夠標(biāo)識(shí)該虛擬機(jī)所在的虛擬專用網(wǎng)的區(qū)分符。
11.如權(quán)利要求10所述的方法,其中,所述區(qū)分符是標(biāo)識(shí)VM所在的虛擬私有云和/或虛擬專用網(wǎng)的標(biāo)識(shí)符,優(yōu)選地是路由區(qū)分符。
12.一種用于實(shí)現(xiàn)虛擬機(jī)在虛擬私有云內(nèi)的遷移的設(shè)備,所述設(shè)備包括 收發(fā)單元,用于收發(fā)信息; 數(shù)據(jù)庫(kù),用于維護(hù)標(biāo)識(shí)虛擬機(jī)的虛擬機(jī)二元標(biāo)識(shí)符以及為該虛擬機(jī)提供服務(wù)的提供商邊緣路由器之間的綁定信息; 綁定信息管理單元,在經(jīng)由收發(fā)單元接收到查詢綁定信息的消息情況下,如果所維護(hù)的綁定信息中有所查詢的綁定信息,則作為響應(yīng),經(jīng)由所述收發(fā)單元發(fā)送相應(yīng)的綁定信息;如果所維護(hù)的綁定信息中沒有所查詢的綁定信息并且所述查詢綁定信息的消息發(fā)送自提供商邊緣路由器,則經(jīng)由所述收發(fā)單元向其他路由映射設(shè)備查詢?cè)摻壎ㄐ畔?,并將所獲得的綁定信息發(fā)送給所述提供商邊緣路由器;否則,經(jīng)由所述收發(fā)單元向其他路由映射設(shè)備查詢?cè)摻壎ㄐ畔?,并作為響?yīng)發(fā)送所獲得的綁定信息,或者不做任何響應(yīng); 其中,虛擬機(jī)的二元標(biāo)識(shí)符包括該虛擬機(jī)的私有IP地址以及能夠標(biāo)識(shí)該虛擬機(jī)所在的虛擬專用網(wǎng)的區(qū)分符。
13.一種用于實(shí)現(xiàn)虛擬機(jī)在虛擬私有云內(nèi)的遷移的設(shè)備,包括用于執(zhí)行如權(quán)利要求1至8、10中任一權(quán)利要求所述的步驟。
全文摘要
本發(fā)明提供了一種用于實(shí)現(xiàn)虛擬機(jī)在虛擬私有云內(nèi)的遷移的方法和設(shè)備。其中,所述方法包括維護(hù)用于標(biāo)識(shí)虛擬機(jī)的虛擬機(jī)二元標(biāo)識(shí)符以及為該虛擬機(jī)提供服務(wù)的提供商邊緣路由器之間的綁定信息;在接收到去往虛擬機(jī)的分組數(shù)據(jù)的情況下,基于所接收到的數(shù)據(jù)分組確定目的虛擬機(jī)的二元標(biāo)識(shí)符,并根據(jù)所維護(hù)的綁定信息確定與該二元標(biāo)識(shí)符相關(guān)聯(lián)的提供商邊緣路由器;其中,所述分組數(shù)據(jù)將被路由到所確定的提供商邊緣路由器;虛擬機(jī)的二元標(biāo)識(shí)符包括該虛擬機(jī)的私有IP地址以及能夠標(biāo)識(shí)該虛擬機(jī)所在的虛擬專用網(wǎng)的區(qū)分符。
文檔編號(hào)H04L12/46GK103036919SQ20111029927
公開日2013年4月10日 申請(qǐng)日期2011年9月30日 優(yōu)先權(quán)日2011年9月30日
發(fā)明者梁錚, 賓梵翔, 溫海波, 鄭軍 申請(qǐng)人:上海貝爾股份有限公司