專利名稱:一種虛擬機遷移方法、交換機、虛擬機系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,特別涉及一種虛擬機遷移方法、交換機、虛擬機系統(tǒng)。
背景技術(shù):
VM(Virtual Machine,虛擬機)技術(shù)是指將一臺服務(wù)器虛擬為多臺相互隔離的虛擬機,或是將多臺服務(wù)器虛擬為一臺虛擬機,以提高資源的利用率并簡化系統(tǒng)管理。VM實時遷移是指將正在運行的整個虛擬機從一臺服務(wù)器實時遷移到另一臺服務(wù)器中,為了實現(xiàn)VM實時遷移的網(wǎng)絡(luò)化配置,可以通過VDP協(xié)議(VSIDiscovery andConfigurationProtocol,虛擬站點接口發(fā)現(xiàn)配置協(xié)議;VSI, Virtual Station Interface,虛擬站點接口)來進行VM的遷入和遷出?,F(xiàn)有的VDP協(xié)議的一般流程為當服務(wù)器創(chuàng)建VM或有VM遷入時,服務(wù)器向交換機發(fā)送I^e-associate (預關(guān)聯(lián))消息。交換機根據(jù)pre-associate消息獲得VSItype (VSI類型)的消息,然后根據(jù)該消息到VSI數(shù)據(jù)庫里獲取參數(shù)配置交換機。在收到服務(wù)器發(fā)送的associate (關(guān)聯(lián))消息時,使能交換機的配置。當服務(wù)器銷毀VM或有VM遷出時,服務(wù)器向交換機發(fā)送de-associate (解除關(guān)聯(lián))消息?,F(xiàn)有技術(shù)中的VDP協(xié)議的消息格式如圖1所示,包括TLV (Type Length Value,類型長度內(nèi)容)數(shù)據(jù)包頭及TLV information string(類型長度內(nèi)容信息串)。如圖1所示的,TLV數(shù)據(jù)包頭包括以下字段TLV type字段,用于標識該消息的類型;該類型可以包括Are-associate消息、associate 消息、de-associate 消息;TLV information string length,用于標識 TLV 信息串的長度。如圖2所示的,現(xiàn)有的TLV information string中可以包括以下字段Reason (原因)、VSI Mgr ID (虛擬站點接口管理編號)、VSI Type ID (虛擬站點接口類型編號)、VSI Type Version (虛擬站點接口類型版本)、VSI Instance ID (虛擬站點接口實例編號)、MAC/VLAN Format (MAC/VLAN格式)、MAC/VLANs (Media Access Control,介質(zhì)訪問控制;VLAN, Virtual Local Area Network,虛擬局域網(wǎng))。在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題現(xiàn)有技術(shù)中服務(wù)器在遷入或創(chuàng)建VM時都會向交換機發(fā)送VDP消息,導致交換機無法從VDP消息中準確獲知VM發(fā)生遷移,不能夠及時為遷移的VM建立業(yè)務(wù)綁定關(guān)系,影響了業(yè)務(wù)的實時性。
發(fā)明內(nèi)容
為了解決現(xiàn)有技術(shù)中交換機無法獲知虛擬機發(fā)生遷移的問題,本發(fā)明實施例提出了一種虛擬機遷移方法、交換機、虛擬機系統(tǒng)。所述技術(shù)方案如下本發(fā)明實施例提出了一種虛擬機遷移方法,包括
接收服務(wù)器發(fā)送的消息,所述消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口 ;獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器的虛擬機。本發(fā)明實施例還提出了一種交換機,包括接收模塊,用于接收服務(wù)器發(fā)送的消息;所述消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口 ;第一獲取模塊,用于獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器的虛擬機。本發(fā)明實施例還提出了一種虛擬機系統(tǒng),包括服務(wù)器和交換機;所述服務(wù)器用于當有虛擬機遷入時,向所述交換機發(fā)送消息,所述消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口;所述交換機用于接收所述消息;獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器的虛擬機。本發(fā)明實施例中,可以通過接收服務(wù)器發(fā)送的消息,并根據(jù)其中的標識字段來判斷該服務(wù)器上新增的虛擬機是新建的還是遷入的。這樣相比較現(xiàn)有技術(shù),可以精確地獲知服務(wù)器是否有虛擬機遷入。
為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對實施例中使用的附圖作一簡單地介紹,顯而易見地,下面所列附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為現(xiàn)有的VDP消息報文格式;圖2為圖1中的VDP消息中的TLVinformation string的格式;圖3為本發(fā)明第一實施例的流程示意圖;圖4為本發(fā)明第二實施例中一種業(yè)務(wù)遷移的方法的流程示意圖;圖5為本發(fā)明第二實施例中另一種業(yè)務(wù)遷移的方法的流程示意圖;圖6為本發(fā)明第二實施例中又一種業(yè)務(wù)遷移的方法的流程示意圖;圖7本發(fā)明第三實施例的結(jié)構(gòu)示意圖;圖8本發(fā)明第四實施例中一種交換機的結(jié)構(gòu)示意圖;圖9本發(fā)明第四實施例中另一種交換機的結(jié)構(gòu)示意圖;圖10本發(fā)明第四實施例中又一種交換機的結(jié)構(gòu)示意圖;圖11為本發(fā)明第五實施例的虛擬機系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進一步地詳細描述。實施例1本發(fā)明第一實施例提出了一種虛擬機遷移方法,其流程如圖3所示,包括
步驟101、接收服務(wù)器發(fā)送的消息,所述消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口 ;獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;步驟102、根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器的虛擬機。本發(fā)明實施例中,可以通過接收服務(wù)器發(fā)送的消息,并根據(jù)其中的標識字段來判斷該服務(wù)器上新增的虛擬機是新建的還是遷入的。這樣相比較現(xiàn)有技術(shù),可以精確地獲知服務(wù)器是否有虛擬機遷入。實施例2本發(fā)明第二實施例提出了一種虛擬機遷移方法,是在第一實施例的基礎(chǔ)上改進而來。進一步的,在交換機獲知服務(wù)器中有虛擬機遷入時,可以進一步的對交換機端口上綁定的該虛擬機對應的業(yè)務(wù)進行遷移。下面以DHCP Snooping技術(shù)(DHCP偵聽;DHCP,DynamicHostConfiguration Protocol,動態(tài)主機配置協(xié)議)的遷移為例對本發(fā)明實施例進行進一步說明。DHCP Snooping是DHCP協(xié)議安全特性,通過建立和維護DHCP Snooping用戶綁定表過濾不可信任的DHCP信息。DHCP Snooping用戶綁定表包含不信任區(qū)域的用戶MAC地址、IP地址、租用期、VLAN-ID接口等參數(shù)?,F(xiàn)有的交換機開啟了 DHCP-Snooping后,會對DHCP報文進行偵聽,并可以從接收到的DHCP Request或DHCP Ack報文中提取并記錄IP地址和MAC地址參數(shù)。在本發(fā)明的一個實施例中,可以由交換機觸發(fā)DHCP服務(wù)器返回應答消息,以對DHCPSnooping用戶綁定表進行更新。其流程如圖4所示,包括步驟201、當VM進行遷移時,該VM遷入的服務(wù)器向交換機發(fā)送消息,以通知交換機VM發(fā)生了遷移。該消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口,且該消息中至少包括用于指示VM進行遷移的標識字段或標識位。其中,可以對現(xiàn)有的VDP消息報文進行擴展,在TLV information string中增加一個用于表示VM進行遷移的VSI property (VSI特性)字段?,F(xiàn)有的TLV informationstring如圖2所示的,本發(fā)明實施例可以在如圖2所示的VDP消息報文中的TLVinformation string的任意位置添加一個VSI property字段。當然,還可以在TLVinformation string的Reason字段中的一個bit位作為標識位,當該標識位為O時則表示該VM是新建的,當該標識位為1時則表示該VM是遷入的。步驟202、交換機從該消息中獲取MAC/VLAN信息和/或VSI instance ID信息,并生成DHCP lease query (DHCP續(xù)租質(zhì)詢)消息?,F(xiàn)有技術(shù)中,VDP消息中的MAC/VLAN字段中存儲有該VM的6字節(jié)的MAC地址和2字節(jié)的VLAN ID ;VSI instance ID中存儲有該VM在全局中的唯一標識。交換機可以根據(jù)這兩個字段中的任意一個生成對應的DHCP lease query (DHCP續(xù)租質(zhì)詢)消息。此為現(xiàn)有技術(shù),在此不再贅述。步驟203、交換機向DHCP服務(wù)器發(fā)送DHCP lease query消息。步驟204、交換機接收DHCP服務(wù)器返回的應答消息,并以現(xiàn)有技術(shù)中的方式對DHCPSnooping用戶綁定表進行更新。其中,根據(jù)DHCP服務(wù)器返回的應答消息對DHCP Snooping用戶綁定表進行更新的方法為現(xiàn)有技術(shù),在此不再贅述。其中,在現(xiàn)有的 IETF(Internet Engineering Task Force,互聯(lián)網(wǎng)工程任務(wù)組)的RFC4388標準中,允許DHCP lease relay消息通過MAC地址、IP地址、Client-Identifier (客戶端標識符)中的任何一個參數(shù)向DHCP服務(wù)器查詢DHCP的租期信息。還可以通過RFC4388標準的擴展協(xié)議的option 82選項下的remote-id子選項來查找VM的DHCP的租期信息。在本發(fā)明的另一個實施例中,還可以由服務(wù)器發(fā)送DHCP Request (DHCP請求)消息,并通過解析DHCP服務(wù)器返回的DHCP Ack (DHCP響應)消息對DHCP Snooping用戶綁定表進行更新。其流程如圖5所示,包括步驟301、當VM進行遷移時,該VM遷入的服務(wù)器向交換機發(fā)送消息,以通知交換機VM發(fā)生了遷移。該消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口,且該消息中至少包括用于表示VM進行遷移的標識字段或標識位。其中,可以對現(xiàn)有的VDP消息報文進行擴展,在TLV information string中增加一個用于表示VM進行遷移的VSI property (VSI特性)字段。現(xiàn)有的TLV informationstring如圖2所示的,本發(fā)明實施例可以在如圖2所示的VDP消息報文中的TLVinformation string的任意位置添加一個VSI property字段。當然,還可以在TLVinformation string的Reason字段中的一個bit位作為標識位,當該標識位為0時則表示該VM是新建的,當該標識位為1時則表示該VM是遷入的。步驟302、交換機向該VM遷入的服務(wù)器發(fā)送協(xié)助請求消息,以使該服務(wù)器獲取該VM的虛擬網(wǎng)絡(luò)接口的MAC地址、IP地址、DHCP服務(wù)器的IP地址,并使該服務(wù)器向該DHCP服務(wù)器發(fā)送DHCP Request消息。其中,服務(wù)器可以通過任何方式獲取該虛擬機的虛擬網(wǎng)絡(luò)接口的MAC地址、IP地址、DHCP服務(wù)器的IP地址,本發(fā)明實施例并不對此做出限定。其中,可以對現(xiàn)有的VDP消息報文進行擴展,在TLV information string中增加一個用于表示請求服務(wù)器進行協(xié)助的標識字段?,F(xiàn)有的TLV information string如圖2所示的,本發(fā)明實施例可以在如圖2所示的VDP消息報文中的TLV information string的任意位置添加一個標識字段。當服務(wù)器接收到VDP消息后,解析該VDP消息以根據(jù)該標志位判斷是否向DHCP服務(wù)器發(fā)送DHCP Request消息。步驟303、交換機偵聽DHCP服務(wù)器返回的DHCP Ack消息,并根據(jù)DHCP Ack消息對DHCP Snooping用戶綁定表進行更新。其中,根據(jù)DHCP Ack消息對DHCP Snooping用戶綁定表進行更新的方法為現(xiàn)有技術(shù),在此不再贅述。下面以該VM對應的組播組的遷移為例對本發(fā)明實施例進行進一步說明。在本發(fā)明的又一個實施例中,可以由交換機通知VM向組播路由器發(fā)送IGMPr印ort(IGMP報告;IGMP Jnternet Group Message Protocol,互聯(lián)網(wǎng)組管理協(xié)議)報文,以使VM立即加入組播組。在現(xiàn)有技術(shù)中,當交換機在使用一些視頻服務(wù)的網(wǎng)絡(luò)程序如IPTV、視頻流及游戲的時候,視頻流量可以分發(fā)到所有連接的端口,因為這類流量通常有一個組播以太網(wǎng)地址。IGMP偵聽可以啟用來創(chuàng)建一個組播群用來定位那些流量到有需要的用戶。交換機的IGMP query(IGMP查詢議)可以發(fā)起IGMP成員查詢并讓有需要的節(jié)點做出回應。
因此本實施例的流程如圖6所示,包括步驟401、當VM進行遷移時,該VM遷入的服務(wù)器向交換機發(fā)送消息,以通知交換機VM發(fā)生了遷移。該消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口,且該消息中至少包括用于表示VM進行遷移的標識字段或標識位。其中,可以對現(xiàn)有的VDP消息報文進行擴展,在TLV information string中增加一個用于表示VM進行遷移的VSI property (VSI特性)字段。現(xiàn)有的TLV informationstring如圖2所示的,本發(fā)明實施例可以在如圖2所示的VDP消息報文中的TLVinformation string的任意位置添加一個VSI property字段。當然,還可以在TLVinformation string的Reason字段中的一個bit位作為標識位,當該標識位為0時則表示該VM是新建的,當該標識位為1時則表示該VM是遷入的。步驟402、交換機向所述遷入的VM發(fā)送IGMP query報文。步驟403、VM向組播服務(wù)器發(fā)送IGMP report (IGMP報告)報文,以加入組播組。其中,步驟403為現(xiàn)有技術(shù)。現(xiàn)有技術(shù)中,VM在接收到IGMP query報文后會發(fā)送IGMPreport ;組播服務(wù)器在接收到該IGMP report后會將該VM加入組播組。本發(fā)明實施例可以通過對VDP協(xié)議的消息進行擴展,在VDP協(xié)議報文的TLVinformationstring中增加一個標識字段或標識位,以通知交換機VM發(fā)生遷移。進一步的,本發(fā)明實施例還可以對該VM的端口綁定的業(yè)務(wù)進行遷移,以降低維護成本,提高VM遷移后接入業(yè)務(wù)的實時性。實施例3本發(fā)明第三實施例提出了一種交換機,其結(jié)構(gòu)如圖7所示,包括接收模塊1,用于接收服務(wù)器發(fā)送的消息;該消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口 ;第一獲取模塊2,用于獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器的虛擬機。本發(fā)明實施例中,可以通過接收服務(wù)器發(fā)送的消息,并根據(jù)其中的標識字段來判斷該服務(wù)器上新增的虛擬機是新建的還是遷入的。這樣相比較現(xiàn)有技術(shù),可以精確地獲知服務(wù)器是否有虛擬機遷入。實施例4本發(fā)明第四實施例提出了一種交換機,是在第三實施例的基礎(chǔ)上改進而來。進一步的,在交換機精確獲知服務(wù)器中有虛擬機遷入時,可以進一步的對交換機端口上綁定的該虛擬機對應的業(yè)務(wù)進行遷移。下面以DHCP Snooping( DHCP偵聽;DHCP,Dynamic HostConfiguratiorfrotocol,動態(tài)主機配置協(xié)議)技術(shù)的遷移為例對本發(fā)明實施例進行進一步說明。DHCP Snooping是DHCP協(xié)議安全特性,通過建立和維護DHCP Snooping用戶綁定表過濾不可信任的DHCP信息。DHCP Snooping用戶綁定表包含不信任區(qū)域的用戶MAC地址、IP地址、租用期、VLAN-ID接口等參數(shù)?,F(xiàn)有的交換機開啟了 DHCP-Snooping后,會對DHCP報文進行偵聽,并可以從接收到的DHCP Request或DHCP Ack報文中提取并記錄IP地址和MAC地址參數(shù)。在本發(fā)明的一個實施例中,可以由交換機觸發(fā)DHCP服務(wù)器返回應答消息,以對DHCPSnooping用戶綁定表進行更新。即本發(fā)明實施例的交換機,其結(jié)構(gòu)可以如圖8所示,包括接收模塊1,用于接收服務(wù)器發(fā)送的消息;所述消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口 ;第一獲取模塊2,用于獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器的虛擬機。在本發(fā)明實施例中,當VM進行遷移時,可以使該VM遷入的服務(wù)器向交換機發(fā)送消息,以通知交換機VM發(fā)生了遷移。該消息中至少包括用于表示VM進行遷移的標識字段或標識位。其中,可以對現(xiàn)有的VDP消息報文進行擴展,在TLV information string中增加一個用于表示VM進行遷移的VSI property (VSI特性)字段?,F(xiàn)有的TLV informationstring如圖2所示的,本發(fā)明實施例可以在如圖2所示的VDP消息報文中的TLVinformation string的任意位置添加一個VSI property字段。當然,還可以在TLVinformation string的Reason字段中的一個bit位作為標識位,當該標識位為0時則表示該VM是新建的,當該標識位為1時則表示該VM是遷入的。當交換機解析該VDP消息以獲知服務(wù)器中有VM遷入時,可以將端口上綁定的DHCPSnooping進行遷移。即所述交換機如圖8所示的,還包括第二獲取模塊3,用于獲取所述消息中的MAC/VLAN信息和/或VSI instance IDfn息;第一發(fā)送模塊4,用于根據(jù)MAC/VLAN信息和/或VSI instance ID信息生成DHCPIeasequery并發(fā)送到DHCP服務(wù)器;更新模塊5,用于接收DHCP服務(wù)器返回的應答消息,并根據(jù)應答消息對DHCPSnooping用戶綁定表進行更新。其中,在現(xiàn)有的 IETF(Internet Engineering Task Force,互聯(lián)網(wǎng)工程任務(wù)組)的RFC4388標準中,允許DHCP lease relay消息通過MAC地址、IP地址、Client-Identifier (客戶端標識符)中的任何一個參數(shù)向DHCP服務(wù)器查詢DHCP的租期信息。還可以通過RFC4388標準的擴展協(xié)議的option 82選項下的remote-id子選項來查找VM的DHCP的租期信息。在本發(fā)明的另一個實施例中,還可以由服務(wù)器發(fā)送DHCP Request消息,并通過解析DHCP服務(wù)器返回的DHCP Ack消息以對DHCP Snooping用戶綁定表進行更新。S卩本發(fā)明實施例的交換機,其結(jié)構(gòu)可以如圖9所示,包括接收模塊1,用于接收服務(wù)器發(fā)送的消息;所述消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口 ;第一獲取模塊2,用于獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器的虛擬機。在本發(fā)明實施例中,當VM進行遷移時,可以使該VM遷入的服務(wù)器向交換機發(fā)送消息,以通知交換機VM發(fā)生了遷移。該消息中至少包括用于表示VM進行遷移的標識字段或標識位。其中,可以對現(xiàn)有的VDP消息報文進行擴展,在TLV information string中增加一個用于表示VM進行遷移的VSI property (VSI特性)字段?,F(xiàn)有的TLV informationstring如圖2所示的,本發(fā)明實施例可以在如圖2所示的VDP消息報文中的TLVinformation string的任意位置添加一個VSI property字段。當然,還可以在TLVinformation string的Reason字段中的一個bit位作為標識位,當該標識位為0時則表示該VM是新建的,當該標識位為1時則表示該VM是遷入的。當交換機解析該VDP消息以獲知服務(wù)器中有VM遷入時,可以將端口上綁定的DHCPSnooping進行遷移。即所述交換機如圖9所示的,還包括第二發(fā)送模塊6,用于向所述服務(wù)器發(fā)送協(xié)助請求消息,以使該服務(wù)器獲得該虛擬機的虛擬網(wǎng)絡(luò)接口的MAC地址、IP地址、DHCP服務(wù)器的IP地址,并使服務(wù)器向DHCP服務(wù)器發(fā)送DHCP Request消息。其中,可以對現(xiàn)有的VDP消息報文進行擴展,在TLV information string中增加一個用于表示請求服務(wù)器進行協(xié)助的標識字段?,F(xiàn)有的TLV information string如圖2所示的,本發(fā)明實施例可以在如圖2所示的VDP消息報文中的TLV information string的任意位置添加一個標識字段。當服務(wù)器接收到VDP消息后,解析該VDP消息以根據(jù)該標志位判斷是否向DHCP服務(wù)器發(fā)送DHCP Request消息。偵聽模塊7,用于偵聽DHCP服務(wù)器返回的DHCP Ack消息,并根據(jù)DHCP Ack消息對DHCP Snooping用戶綁定表進行更新。下面以該VM對應的組播組的遷移為例對本發(fā)明實施例進行進一步說明。在本發(fā)明的又一個實施例中,可以由交換機通知VM向組播路由器發(fā)送IGMPr印ort報文,以使VM立即加入組播組。在現(xiàn)有技術(shù)中,當交換機在使用一些視頻服務(wù)的網(wǎng)絡(luò)程序如IPTV、視頻流及游戲的時候,視頻流量可以分發(fā)到所有連接的端口,因為這類流量通常有一個組播以太網(wǎng)地址。IGMP偵聽可以啟用來創(chuàng)建一個組播群用來定位那些流量到有需要的用戶。交換機的IGMP query(IGMP查詢器;IGMP,Internet Group MessageProtocol,互聯(lián)網(wǎng)組管理協(xié)議)可以發(fā)起IGMP成員查詢并讓有需要的節(jié)點做出回應。因此本實施例的交換機,其結(jié)構(gòu)可以如圖10所示,包括接收模塊1,用于接收服務(wù)器發(fā)送的消息;所述消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口 ;第一獲取模塊2,用于獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器的虛擬機。在本發(fā)明實施例中,當VM進行遷移時,可以使該VM遷入的服務(wù)器向交換機發(fā)送消息,以通知交換機VM發(fā)生了遷移。該消息中至少包括用于表示VM進行遷移的標識字段或標識位。其中,可以對現(xiàn)有的VDP消息報文進行擴展,在TLV information string中增加一個用于表示VM進行遷移的VSI property (VSI特性)字段?,F(xiàn)有的TLV informationstring如圖2所示的,本發(fā)明實施例可以在如圖2所示的VDP消息報文中的TLVinformation string的任意位置添加一個VSI property字段。當然,還可以在TLVinformation string的Reason字段中的一個bit位作為標識位,當該標識位為0時則表示該VM是新建的,當該標識位為1時則表示該VM是遷入的。當交換機解析該VDP消息以獲知服務(wù)器中有VM遷入時,可以使該VM加入組播組。即所述交換機如圖10所示的,還包括第三發(fā)送模塊8,用于向所述虛擬機發(fā)送IGMP query報文,以使所述虛擬機通過向組播服務(wù)器發(fā)送IGMP r印OTt報文加入組播組。其中,VM向組播服務(wù)器發(fā)送IGMP report現(xiàn)有技術(shù)?,F(xiàn)有技術(shù)中,VM在接收到IGMPquery報文后會發(fā)送IGMP report ;組播服務(wù)器在接收到該IGMP report后會將該VM加入組播組。本發(fā)明實施例可以通過對VDP協(xié)議的消息進行擴展,在VDP協(xié)議報文的TLVinformationstring中增加一個標識字段或標識位,以通知交換機VM發(fā)生遷移。進一步的,本發(fā)明實施例還可以并對該VM的端口綁定的業(yè)務(wù)進行遷移,以降低維護成本,提高VM遷移后接入業(yè)務(wù)的實時性。需要說明的是上述第三、第四實施例僅以上述各功能模塊的劃分進行舉例說明,實際應用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。上述第三、第四實施例與第一、第二實施例提出的方法屬于同一構(gòu)思;因此相同部分不再贅述。實施例5本發(fā)明第五實施例提出了一種虛擬機系統(tǒng),其結(jié)構(gòu)如圖11所示,包括用于承載虛擬機的服務(wù)器501和用于連接服務(wù)器的交換機502 ;所述服務(wù)器501用于當有虛擬機遷入時,向所述交換機502發(fā)送消息,所述消息用于使交換機502發(fā)現(xiàn)連接的虛擬機接口 ;所述交換機502用于接收所述消息;獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器501的虛擬機。本發(fā)明實施例中,可以通過由交換機接收服務(wù)器發(fā)送的消息,并根據(jù)其中的標識字段來判斷該服務(wù)器上新增的虛擬機是新建的還是遷入的。這樣相比較現(xiàn)有技術(shù),可以精確地獲知服務(wù)器是否有虛擬機遷入,并為遷入的虛擬機預先建立業(yè)務(wù)綁定關(guān)系,提高了 VM遷移后接入業(yè)務(wù)的實時性。實施例6本發(fā)明第六實施例提出了一種交換機,是在第五實施例的基礎(chǔ)上改進而來。在交換機精確獲知服務(wù)器中有虛擬機遷入時,可以進一步的對交換機端口上綁定的該虛擬機對應的業(yè)務(wù)進行遷移。下面以 DHCP Snooping (DHCP 偵聽;DHCP,Dynamic Host ConfigurationProtocol,動態(tài)主機配置協(xié)議)技術(shù)的遷移為例對本發(fā)明實施例進行進一步說明。DHCP Snooping是DHCP協(xié)議安全特性,通過建立和維護DHCP Snooping用戶綁定表過濾不可信任的DHCP信息。DHCP Snooping用戶綁定表包含不信任區(qū)域的用戶MAC地址、IP地址、租用期、VLAN-ID接口等參數(shù)有的交換機開啟了 DHCP-Snooping后,會對DHCP報文進行偵聽,并可以從接收到的DHCP Request或DHCP Ack報文中提取并記錄IP地址和MAC地址參數(shù)。在本發(fā)明的一個實施例中,可以由交換機觸發(fā)DHCP服務(wù)器返回應答消息,以對DHCPSnooping用戶綁定表進行更新。即本發(fā)明實施例的系統(tǒng)包括用于承載虛擬機的服務(wù)器501和用于連接服務(wù)器的交換機502 ;
所述服務(wù)器501用于當有虛擬機遷入時,向所述交換機502發(fā)送消息,所述消息用于請求為所述服務(wù)器501上的虛擬機配置參數(shù);所述消息中至少包括用于指示所述虛擬機遷入的標識字段。其中,可以對現(xiàn)有的VDP消息報文進行擴展,在TLV information string中增加一個用于表示VM進行遷移的VSI property (VSI特性)字段?,F(xiàn)有的TLV informationstring如圖2所示的,本發(fā)明實施例可以在如圖2所示的VDP消息報文中的TLVinformation string的任意位置添加一個VSI property字段。當然,還可以在TLVinformation string的Reason字段中的一個bit位作為標識位,當該標識位為0時則表示該VM是新建的,當該標識位為1時則表示該VM是遷入的。當確定所述虛擬機為遷入所述服務(wù)器的虛擬機時,所述交換機502用于從該消息中獲取MAC/VLAN信息和/或VSI instance ID信息,并生成DHCP lease query (DHCP續(xù)租質(zhì)詢)消息并發(fā)送到DHCP服務(wù)器;接收DHCP服務(wù)器返回的應答消息,并根據(jù)應答消息對DHCPSnooping用戶綁定表進行更新。其中,在現(xiàn)有的 IETF(Internet Engineering Task Force,互聯(lián)網(wǎng)工程任務(wù)組)的RFC4388標準中,允許DHCP lease relay消息通過MAC地址、IP地址、Client-Identifier (客戶端標識符)中的任何一個參數(shù)向DHCP服務(wù)器查詢DHCP的租期信息。還可以通過RFC4388標準的擴展協(xié)議的option 82選項下的remote-id子選項來查找VM的DHCP的租期信息。在本發(fā)明的另一個實施例中,還可以由服務(wù)器發(fā)送DHCP Request消息,并通過解析DHCP服務(wù)器返回的DHCP Ack消息以對DHCP Snooping用戶綁定表進行更新。即本發(fā)明實施例的系統(tǒng)包括用于承載虛擬機的服務(wù)器501和用于連接服務(wù)器的交換機502 ;其中,所述服務(wù)器501用于當有虛擬機遷入時,向所述交換機502發(fā)送消息,所述消息用于請求為所述服務(wù)器501上的虛擬機配置參數(shù);所述消息中至少包括用于指示所述虛擬機遷入的標識字段。其中,可以對現(xiàn)有的VDP消息報文進行擴展,在TLV information string中增加一個用于表示VM進行遷移的VSI property (VSI特性)字段?,F(xiàn)有的TLV informationstring如圖2所示的,本發(fā)明實施例可以在如圖2所示的VDP消息報文中的TLVinformation string 的任意位置添力口一個 VSI property 字段。當確定所述虛擬機為遷入所述服務(wù)器的虛擬機時,所述交換機502用于向該VM遷入的服務(wù)器發(fā)送協(xié)助請求消息,以使該服務(wù)器獲取該VM的虛擬網(wǎng)絡(luò)接口的MAC地址、IP地址、DHCP服務(wù)器的IP地址,并使該服務(wù)器向該DHCP服務(wù)器發(fā)送DHCP Request消息。其中,可以對現(xiàn)有的VDP消息報文進行擴展,在TLV information string中增加一個用于表示請求服務(wù)器進行協(xié)助的標識字段?,F(xiàn)有的TLV information string如圖2所示的,本發(fā)明實施例可以在如圖2所示的VDP消息報文中的TLV information string的任意位置添加一個標識字段。當服務(wù)器接收到VDP消息后,解析該VDP消息以根據(jù)該標志位判斷是否向DHCP服務(wù)器發(fā)送DHCP Request消息。所述交換機502還用于偵聽DHCP服務(wù)器返回的DHCPAck消息,并根據(jù)DHCPAck消息對DHCP Snooping用戶綁定表進行更新。下面以該VM對應的組播組的遷移為例對本發(fā)明實施例進行進一步說明。
在本發(fā)明的又一個實施例中,可以由交換機通知VM向組播路由器發(fā)送IGMPr印ort報文,以使VM立即加入組播組。在現(xiàn)有技術(shù)中,當交換機在使用一些視頻服務(wù)的網(wǎng)絡(luò)程序如IPTV、視頻流及游戲的時候,視頻流量可以分發(fā)到所有連接的端口,因為這類流量通常有一個組播以太網(wǎng)地址。IGMP偵聽可以啟用來創(chuàng)建一個組播群用來定位那些流量到有需要的用戶。交換機的IGMP query(IGMP查詢器;IGMP,Internet Group MessageProtocol,互聯(lián)網(wǎng)組管理協(xié)議)可以發(fā)起IGMP成員查詢并讓有需要的節(jié)點做出回應。即本發(fā)明實施例的系統(tǒng)包括用于承載虛擬機的服務(wù)器501和用于連接服務(wù)器的交換機502 ;其中,所述服務(wù)器501用于當有虛擬機遷入時,向所述交換機502發(fā)送消息,所述消息用于請求為所述服務(wù)器501上的虛擬機配置參數(shù);所述消息中至少包括用于指示所述虛擬機遷入的標識字段。其中,可以對現(xiàn)有的VDP消息報文進行擴展,在TLV information string中增加一個用于表示VM進行遷移的VSI property (VSI特性)字段?,F(xiàn)有的TLV informationstring如圖2所示的,本發(fā)明實施例可以在如圖2所示的VDP消息報文中的TLVinformation string的任意位置添加一個VSI property字段。當然,還可以在TLVinformation string的Reason字段中的一個bit位作為標識位,當該標識位為0時則表示該VM是新建的,當該標識位為1時則表示該VM是遷入的。當確定所述虛擬機為遷入所述服務(wù)器的虛擬機時,所述交換機502用于向所述虛擬機發(fā)送IGMP query報文,以使所述虛擬機通過向組播服務(wù)器發(fā)送IGMP r印ort報文加入
組播組。其中,VM向組播服務(wù)器發(fā)送IGMP report現(xiàn)有技術(shù)?,F(xiàn)有技術(shù)中,VM在接收到IGMPquery報文后會發(fā)送IGMP report ;組播服務(wù)器在接收到該IGMP report后會將該VM加入組播組。在本發(fā)明實施例中,交換機502可以為第三、第四實施例中的交換機。本發(fā)明實施例可以通過對VDP協(xié)議的消息進行擴展,在VDP協(xié)議報文的TLVinformationstring中增加一個標識字段或標識位,以通知交換機VM發(fā)生遷移。進一步的,本發(fā)明實施例還可以并對該VM的端口綁定的業(yè)務(wù)進行遷移,以降低維護成本,提高VM遷移后接入業(yè)務(wù)的實時性。需要說明的是上述第五、第六實施例僅以上述各功能模塊的劃分進行舉例說明,實際應用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。上述第五、第六實施例與第一、第二實施例提出的方法屬于同一構(gòu)思;因此相同部分不再贅述。本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質(zhì)包括R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種虛擬機遷移方法,其特征在于,包括接收服務(wù)器發(fā)送的消息,所述消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口 ;獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器的虛擬機。
2.根據(jù)權(quán)利要求1所述的虛擬機遷移方法,其特征在于,所述消息為虛擬站點接口發(fā)現(xiàn)配置協(xié)議報文;其中,所述消息的類型長度內(nèi)容信息串中至少包括用于指示虛擬機發(fā)生遷移的標識字段;或,所述消息的類型長度內(nèi)容信息串的原因字段中至少包括一個用于指示虛擬機發(fā)生遷移的標識位。
3.根據(jù)權(quán)利要求1或2所述的虛擬機遷移方法,其特征在于,當確定所述虛擬機為遷入所述服務(wù)器的虛擬機時,所述方法還包括獲取所述消息中的介質(zhì)訪問控制/虛擬局域網(wǎng)信息和/或虛擬站點接口實例標識信息;根據(jù)所述介質(zhì)訪問控制/虛擬局域網(wǎng)信息和/或虛擬站點接口實例標識信息生成動態(tài)主機配置協(xié)議續(xù)租質(zhì)詢消息并發(fā)送到動態(tài)主機配置協(xié)議服務(wù)器;接收動態(tài)主機配置協(xié)議服務(wù)器返回的應答消息,并根據(jù)所述應答消息對動態(tài)主機配置協(xié)議偵聽用戶綁定表進行更新。
4.根據(jù)權(quán)利要求1或2所述的虛擬機遷移方法,其特征在于,當確定所述虛擬機為遷入所述服務(wù)器的虛擬機時,所述方法還包括向所述服務(wù)器發(fā)送協(xié)助請求消息,以使該服務(wù)器獲得該虛擬機的虛擬網(wǎng)絡(luò)接口的介質(zhì)訪問控制地址、IP地址、動態(tài)主機配置協(xié)議服務(wù)器的IP地址,并使服務(wù)器向該動態(tài)主機配置協(xié)議服務(wù)器發(fā)送動態(tài)主機配置協(xié)議請求消息;偵聽動態(tài)主機配置協(xié)議服務(wù)器返回的動態(tài)主機配置協(xié)議響應消息,并根據(jù)動態(tài)主機配置協(xié)議響應消息對動態(tài)主機配置協(xié)議偵聽用戶綁定表進行更新。
5.根據(jù)權(quán)利要求1或2所述的虛擬機遷移方法,其特征在于,當確定所述虛擬機為遷入所述服務(wù)器的虛擬機時,所述方法還包括向所述虛擬機發(fā)送互聯(lián)網(wǎng)組管理協(xié)議查詢報文,以使所述虛擬機通過向組播服務(wù)器發(fā)送互聯(lián)網(wǎng)組管理協(xié)議報告報文加入組播組。
6.一種交換機,其特征在于,包括接收模塊,用于接收服務(wù)器發(fā)送的消息,所述消息用于使交換機發(fā)現(xiàn)連接的虛擬機接Π ;第一獲取模塊,用于獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器的虛擬機。
7.根據(jù)權(quán)利要求6所述的交換機,其特征在于,所述消息為虛擬站點接口發(fā)現(xiàn)配置協(xié)議報文;其中,所述消息的類型長度內(nèi)容信息串中至少包括用于指示虛擬機發(fā)生遷移的標識字段;或,所述消息的類型長度內(nèi)容信息串的原因字段中至少包括一個用于指示虛擬機發(fā)生遷移的標識位。
8.根據(jù)權(quán)利要求6或7所述的交換機,其特征在于,所述交換機還包括第二獲取模塊,用于獲取所述消息中的介質(zhì)訪問控制/虛擬局域網(wǎng)信息和/或虛擬站點接口實例標識信息;第一發(fā)送模塊,用于根據(jù)所述介質(zhì)訪問控制/虛擬局域網(wǎng)信息和/或虛擬站點接口實例標識信息生成動態(tài)主機配置協(xié)議續(xù)租質(zhì)詢消息并發(fā)送到動態(tài)主機配置協(xié)議服務(wù)器;更新模塊,用于接收動態(tài)主機配置協(xié)議服務(wù)器返回的應答消息,并根據(jù)所述應答消息對動態(tài)主機配置協(xié)議偵聽用戶綁定表進行更新。
9.根據(jù)權(quán)利要求6或7所述的交換機,其特征在于,所述交換機還包括第二發(fā)送模塊,用于向所述服務(wù)器發(fā)送協(xié)助請求消息,以使該服務(wù)器獲得該虛擬機的虛擬網(wǎng)絡(luò)接口的介質(zhì)訪問控制地址、IP地址、動態(tài)主機配置協(xié)議服務(wù)器的IP地址,并使服務(wù)器向該動態(tài)主機配置協(xié)議服務(wù)器發(fā)送動態(tài)主機配置協(xié)議請求消息;偵聽模塊,用于偵聽動態(tài)主機配置協(xié)議服務(wù)器返回的動態(tài)主機配置協(xié)議響應消息,并根據(jù)動態(tài)主機配置協(xié)議響應消息對動態(tài)主機配置協(xié)議偵聽用戶綁定表進行更新。
10.根據(jù)權(quán)利要求6或7所述的交換機,其特征在于,所述交換機還包括第三發(fā)送模塊,用于向所述虛擬機發(fā)送互聯(lián)網(wǎng)組管理協(xié)議查詢報文,以使所述虛擬機通過向組播服務(wù)器發(fā)送互聯(lián)網(wǎng)組管理協(xié)議報告報文加入組播組。
11.一種虛擬機系統(tǒng),包括服務(wù)器和交換機;其特征在于,所述服務(wù)器用于當有虛擬機遷入時,向所述交換機發(fā)送消息,所述消息用于使所述交換機發(fā)現(xiàn)連接的虛擬機接口 ;所述消息中至少包括用于指示所述虛擬機遷入的標識;所述交換機用于接收所述消息;獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器的虛擬機。
12.根據(jù)權(quán)利要求11所述的虛擬機系統(tǒng),其特征在于,所述消息為虛擬站點接口發(fā)現(xiàn)配置協(xié)議報文;其中,所述消息的類型長度內(nèi)容信息串中至少包括用于指示虛擬機發(fā)生遷移的標識字段;或,所述消息的類型長度內(nèi)容信息串的原因字段中至少包括一個用于指示虛擬機發(fā)生遷移的標識位。
13.根據(jù)權(quán)利要求11或12所述的虛擬機系統(tǒng),其特征在于,當確定所述虛擬機為遷入所述服務(wù)器的虛擬機時,所述交換機還用于解析所述消息,以獲取介質(zhì)訪問控制/虛擬局域網(wǎng)信息和/或虛擬站點接口實例標識信息;并根據(jù)所述介質(zhì)訪問控制/虛擬局域網(wǎng)字段信息和/或虛擬站點接口實例標識信息生成動態(tài)主機配置協(xié)議續(xù)租質(zhì)詢消息并發(fā)送到動態(tài)主機配置協(xié)議服務(wù)器;接收動態(tài)主機配置協(xié)議服務(wù)器返回的應答消息,并根據(jù)所述應答消息對動態(tài)主機配置協(xié)議偵聽綁定表進行更新。
14.根據(jù)權(quán)利要求11或12所述的虛擬機系統(tǒng),其特征在于,當確定所述虛擬機為遷入所述服務(wù)器的虛擬機時,所述交換機還用于向所述服務(wù)器發(fā)送協(xié)助請求消息,以使服務(wù)器獲得該虛擬機的虛擬網(wǎng)絡(luò)接口的介質(zhì)訪問控制地址、IP地址、動態(tài)主機配置協(xié)議服務(wù)器的IP地址,并使服務(wù)器向該動態(tài)主機配置協(xié)議服務(wù)器發(fā)送動態(tài)主機配置協(xié)議請求消息;還用于偵聽動態(tài)主機配置協(xié)議服務(wù)器返回的動態(tài)主機配置協(xié)議響應消息,并根據(jù)動態(tài)主機配置協(xié)議響應消息對動態(tài)主機配置協(xié)議偵聽用戶綁定表進行更新。
15.根據(jù)權(quán)利要求11或12所述的虛擬機系統(tǒng),其特征在于,當確定所述虛擬機為遷入所述服務(wù)器的虛擬機時,所述交換機還用于向所述虛擬機發(fā)送互聯(lián)網(wǎng)組管理協(xié)議查詢報文,以使所述虛擬機通過向組播服務(wù)器發(fā)送互聯(lián)網(wǎng)組管理協(xié)議報告報文加入組播組。
全文摘要
本發(fā)明提出了一種虛擬機遷移方法、交換機、虛擬機系統(tǒng),屬于通信技術(shù)領(lǐng)域。本發(fā)明實施例的方法包括接收服務(wù)器發(fā)送的消息,所述消息用于使交換機發(fā)現(xiàn)連接的虛擬機接口;獲取所述消息中的用于指示虛擬機發(fā)生遷移的標識;根據(jù)所述指示虛擬機發(fā)生遷移的標識判斷所述虛擬機是否為遷入所述服務(wù)器的虛擬機。交換機包括接收模塊和第一獲取模塊。虛擬機系統(tǒng)包括服務(wù)器和交換機。本發(fā)明實施例可以通過接收服務(wù)器發(fā)送的消息,并根據(jù)其中的標識字段來判斷該服務(wù)器上新增的虛擬機是新建的還是遷入的。這樣相比較現(xiàn)有技術(shù),可以精確地獲知服務(wù)器是否有虛擬機遷入,并為遷入的虛擬機預先建立業(yè)務(wù)綁定關(guān)系,提高了VM遷移后接入業(yè)務(wù)的實時性。
文檔編號H04L12/56GK102594652SQ20111000673
公開日2012年7月18日 申請日期2011年1月13日 優(yōu)先權(quán)日2011年1月13日
發(fā)明者厲益舟, 宋偉, 李光, 李晉, 鄭明 申請人:華為技術(shù)有限公司