欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于虛擬機遷移的網(wǎng)關(guān)控制方法、裝置及系統(tǒng)的制作方法

文檔序號:6626009閱讀:363來源:國知局
一種基于虛擬機遷移的網(wǎng)關(guān)控制方法、裝置及系統(tǒng)的制作方法
【專利摘要】本發(fā)明實施例公開了一種基于虛擬機遷移的網(wǎng)關(guān)控制方法、裝置及系統(tǒng),涉及通信領(lǐng)域,用以解決虛擬機遷移后進行數(shù)據(jù)傳輸時,占用設(shè)備間進行數(shù)據(jù)傳輸?shù)膸?,造成帶寬資源浪費的問題。具體方案為:SDN控制器獲取第一虛擬機網(wǎng)關(guān)的IP地址、第一虛擬機網(wǎng)關(guān)MAC地址和第二物理服務(wù)器的VTEP IP地址;SDN控制器根據(jù)第二物理服務(wù)器的VTEP IP地址,控制第二物理網(wǎng)關(guān)為虛擬機在第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān),第二虛擬機網(wǎng)關(guān)的IP地址與第一虛擬機網(wǎng)關(guān)的IP地址相同,且第二虛擬機網(wǎng)關(guān)的MAC地址與第一虛擬機網(wǎng)關(guān)的MAC地址相同;創(chuàng)建第一流表項,以使得第二物理網(wǎng)關(guān)根據(jù)第一流表項所指示的數(shù)據(jù)轉(zhuǎn)發(fā)策略為該虛擬機轉(zhuǎn)發(fā)數(shù)據(jù)。
【專利說明】一種基于虛擬機遷移的網(wǎng)關(guān)控制方法、裝置及系統(tǒng)

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信領(lǐng)域,尤其涉及一種基于虛擬機遷移的網(wǎng)關(guān)控制方法、裝置及系統(tǒng)。

【背景技術(shù)】
[0002]虛擬機(Virtual Machine, VM)是指通過軟件模擬的具有完整硬件系統(tǒng)功能的,且運行在物理服務(wù)器上的計算機系統(tǒng)。一臺物理服務(wù)器上可以同時運行多個虛擬機,每個虛擬機使用物理服務(wù)器中的一部分物理資源,如中央處理器、內(nèi)存等。
[0003]虛擬機可以由一個物理服務(wù)器遷移至另一個物理服務(wù)器,并在遷移后的物理服務(wù)器上運行,以實現(xiàn)服務(wù)器的負載均衡、在線維護和故障處理等功能。其中,虛擬機遷移前所在的物理服務(wù)器的物理網(wǎng)關(guān)與虛擬機遷移后所在的物理服務(wù)器的物理網(wǎng)關(guān)不同,一個物理網(wǎng)關(guān)上可以配置至少一個虛擬機的虛擬機網(wǎng)關(guān)。
[0004]其中,當虛擬機由一個物理服務(wù)器(物理服務(wù)器A)遷移至另一個物理服務(wù)器(物理服務(wù)器B)時,虛擬機的物理位置發(fā)生了變化,而虛擬機的虛擬機網(wǎng)關(guān)仍處于物理服務(wù)器A的物理網(wǎng)關(guān)上,此時,為了保證業(yè)務(wù)的連續(xù)性,虛擬機在與其他虛擬機(其他虛擬機為與該虛擬機處于不同網(wǎng)段的虛擬機)進行通信時,需要通過交換機將物理服務(wù)器B與物理服務(wù)器A相連,再通過物理服務(wù)器A的物理網(wǎng)關(guān)上配置的該虛擬機的虛擬機網(wǎng)關(guān)(原虛擬機網(wǎng)關(guān))進行數(shù)據(jù)的轉(zhuǎn)發(fā)。
[0005]但是,存在的問題是:虛擬機和與該虛擬機處于不同物理服務(wù)器的虛擬機網(wǎng)關(guān)傳輸數(shù)據(jù)時,需要經(jīng)過物理服務(wù)器之間的若干其他設(shè)備(如交換機)對該數(shù)據(jù)進行轉(zhuǎn)發(fā),而設(shè)備之間額外的數(shù)據(jù)轉(zhuǎn)發(fā)則會增加設(shè)備之間進行數(shù)據(jù)傳輸?shù)臄?shù)據(jù)流量,占用設(shè)備之間進行數(shù)據(jù)傳輸?shù)膸?,造成帶寬資源的浪費。


【發(fā)明內(nèi)容】

[0006]本發(fā)明的實施例提供一種基于虛擬機遷移的網(wǎng)關(guān)控制方法、裝置及系統(tǒng),用以解決虛擬機遷移后進行數(shù)據(jù)傳輸時,占用設(shè)備之間進行數(shù)據(jù)傳輸?shù)膸?,造成帶寬資源浪費的問題。
[0007]為達到上述目的,本發(fā)明的實施例采用如下技術(shù)方案:
[0008]本發(fā)明實施例的第一方面,提供一種基于虛擬機遷移的網(wǎng)關(guān)控制方法,第一物理網(wǎng)關(guān)為第一物理服務(wù)器的物理網(wǎng)關(guān),第二物理網(wǎng)關(guān)為第二物理服務(wù)器的物理網(wǎng)關(guān),當虛擬機由所述第一物理服務(wù)器遷移至所述第二物理服務(wù)器時,所述方法包括:
[0009]軟件定義網(wǎng)絡(luò)SDN控制器獲取第一虛擬機網(wǎng)關(guān)的網(wǎng)際協(xié)議IP地址、所述第一虛擬機網(wǎng)關(guān)的媒體接入控制MAC地址和第二物理服務(wù)器的虛擬隧道終端節(jié)點VTEP IP地址,所述第一虛擬機網(wǎng)關(guān)為配置在所述第一物理網(wǎng)關(guān)上的所述虛擬機的虛擬機網(wǎng)關(guān);
[0010]所述SDN控制器根據(jù)所述第二物理服務(wù)器的VTEP IP地址,控制所述第二物理網(wǎng)關(guān)為所述虛擬機在所述第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān),所述第二虛擬機網(wǎng)關(guān)的IP地址與所述第一虛擬機網(wǎng)關(guān)的IP地址相同,且所述第二虛擬機網(wǎng)關(guān)的MAC地址與所述第一虛擬機網(wǎng)關(guān)的MAC地址相同;
[0011]所述SDN控制器創(chuàng)建第一流表項,所述第一流表項中包含所述第二物理網(wǎng)關(guān)的VTEP IP地址、所述第二虛擬機網(wǎng)關(guān)的IP地址、所述第二虛擬機網(wǎng)關(guān)的MAC地址和所述虛擬機的IP地址之間的映射關(guān)系以及所述虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLAN ID,并發(fā)送所述第一流表項至所述第二物理網(wǎng)關(guān),以使得所述第二物理網(wǎng)關(guān)根據(jù)所述第一流表項所指示的數(shù)據(jù)轉(zhuǎn)發(fā)策略為所述虛擬機轉(zhuǎn)發(fā)數(shù)據(jù),所述虛擬機的VxLAN ID用于標識所述虛擬機所在的網(wǎng)段。
[0012]結(jié)合第一方面,在一種可能的實現(xiàn)方式中,所述SDN控制器根據(jù)所述第二物理服務(wù)器的VTEP IP地址,控制所述第二物理網(wǎng)關(guān)為所述虛擬機在所述第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān),包括:
[0013]所述SDN控制器根據(jù)所述第二物理服務(wù)器的VTEP IP地址確定所述第二物理網(wǎng)關(guān)的VTEP IP地址;
[0014]所述SDN控制器根據(jù)所述第二物理網(wǎng)關(guān)的VTEP IP地址,控制所述第二物理網(wǎng)關(guān)為所述虛擬機在所述第二物理網(wǎng)關(guān)上配置所述第二虛擬機網(wǎng)關(guān)。
[0015]結(jié)合第一方面和上述可能的實現(xiàn)方式,在另一種可能的實現(xiàn)方式中,所述SDN控制器根據(jù)所述第二物理網(wǎng)關(guān)的VTEP IP地址,控制所述第二物理網(wǎng)關(guān)為所述虛擬機在所述第二物理網(wǎng)關(guān)上配置所述第二虛擬機網(wǎng)關(guān),包括:
[0016]所述SDN控制器根據(jù)所述第二物理網(wǎng)關(guān)的VTEP IP地址,發(fā)送所述第一虛擬機網(wǎng)關(guān)的IP地址和所述第一虛擬機網(wǎng)關(guān)的MAC地址至所述第二物理網(wǎng)關(guān),以使得所述第二物理網(wǎng)關(guān)根據(jù)所述第一虛擬機網(wǎng)關(guān)的IP地址和所述第一虛擬機網(wǎng)關(guān)的MAC地址在所述第二物理網(wǎng)關(guān)上配置所述第二虛擬機網(wǎng)關(guān)。
[0017]結(jié)合第一方面和上述可能的實現(xiàn)方式,在另一種可能的實現(xiàn)方式中,所述軟件定義網(wǎng)絡(luò)SDN控制器獲取第一虛擬機網(wǎng)關(guān)的網(wǎng)際協(xié)議IP地址、所述第一虛擬機網(wǎng)關(guān)的媒體接入控制MAC地址和第二物理服務(wù)器的虛擬隧道終端節(jié)點VTEP IP地址,包括:
[0018]所述SDN控制器獲取虛擬機遷移信息,所述虛擬機遷移信息包括:所述虛擬機的IP地址、所述虛擬機的MAC地址和所述第二物理服務(wù)器的VTEP IP地址;
[0019]所述SDN控制器根據(jù)所述虛擬機的IP地址和所述虛擬機的MAC地址確定所述第一虛擬機網(wǎng)關(guān)的IP地址和所述第一虛擬機網(wǎng)關(guān)的MAC地址。
[0020]結(jié)合第一方面和上述可能的實現(xiàn)方式,在另一種可能的實現(xiàn)方式中,在所述SDN控制器創(chuàng)建第一流表項之后,所述方法還包括:
[0021]刪除第二流表項,所述第二流表項中包含所述第一物理網(wǎng)關(guān)的VTEPIP地址、第一虛擬機網(wǎng)關(guān)的IP地址、所述第一虛擬機網(wǎng)關(guān)的MAC地址和所述虛擬機的IP地址之間的映射關(guān)系以及所述虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLAN ID。
[0022]結(jié)合第一方面和上述可能的實現(xiàn)方式,在另一種可能的實現(xiàn)方式中,在所述SDN控制器創(chuàng)建第一流表項之前,所述SDN控制器獲取虛擬機遷移信息之后,所述方法還包括:
[0023]根據(jù)所述虛擬機的IP地址和所述虛擬機的MAC地址確定所述虛擬機的VxLAN ID。
[0024]結(jié)合第一方面和上述可能的實現(xiàn)方式,在另一種可能的實現(xiàn)方式中,在所述創(chuàng)建第一流表項之后,所述方法還包括:
[0025]判斷所述虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),是否存在其他虛擬機使用所述第一虛擬機網(wǎng)關(guān);
[0026]若所述虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),不存在所述其他虛擬機使用所述第一虛擬機網(wǎng)關(guān),則控制所述第一物理網(wǎng)關(guān)刪除所述第一物理網(wǎng)關(guān)上配置的所述第一虛擬機網(wǎng)關(guān)。
[0027]本發(fā)明實施例的第二方面,提供一種軟件定義網(wǎng)絡(luò)SDN控制器,第一物理網(wǎng)關(guān)為第一物理服務(wù)器的物理網(wǎng)關(guān),第二物理網(wǎng)關(guān)為第二物理服務(wù)器的物理網(wǎng)關(guān),應(yīng)用于虛擬機由所述第一物理服務(wù)器遷移至所述第二物理服務(wù)器的過程中,所述SDN控制器包括:
[0028]獲取單元,用于獲取第一虛擬機網(wǎng)關(guān)的網(wǎng)際協(xié)議IP地址、所述第一虛擬機網(wǎng)關(guān)的媒體接入控制MAC地址和第二物理服務(wù)器的虛擬隧道終端節(jié)點VTEP IP地址,所述第一虛擬機網(wǎng)關(guān)為配置在所述第一物理網(wǎng)關(guān)上的所述虛擬機的虛擬機網(wǎng)關(guān);
[0029]配置單元,用于根據(jù)所述獲取單元獲取的所述第二物理服務(wù)器的VTEP IP地址,控制所述第二物理網(wǎng)關(guān)為所述虛擬機在所述第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān),所述第二虛擬機網(wǎng)關(guān)的IP地址與所述獲取單元獲取的所述第一虛擬機網(wǎng)關(guān)的IP地址相同,且所述第二虛擬機網(wǎng)關(guān)的MAC地址與所述獲取單元獲取的所述第一虛擬機網(wǎng)關(guān)的MAC地址相同;
[0030]創(chuàng)建單元,用于創(chuàng)建第一流表項,所述第一流表項中包含所述第二物理網(wǎng)關(guān)的VTEP IP地址、所述第二虛擬機網(wǎng)關(guān)的IP地址、所述第二虛擬機網(wǎng)關(guān)的MAC地址和所述虛擬機的IP地址之間的映射關(guān)系以及所述虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLAN ID ;
[0031]發(fā)送單元,用于發(fā)送創(chuàng)建單元創(chuàng)建的所述第一流表項至所述第二物理網(wǎng)關(guān),以使得所述第二物理網(wǎng)關(guān)根據(jù)所述第一流表項所指示的數(shù)據(jù)轉(zhuǎn)發(fā)策略為所述虛擬機轉(zhuǎn)發(fā)數(shù)據(jù),所述虛擬機的VxLAN ID用于標識所述虛擬機所在的網(wǎng)段。
[0032]結(jié)合第二方面,在一種可能的實現(xiàn)方式中,所述配置單元,包括:
[0033]第一確定子單元,用于根據(jù)所述第二物理服務(wù)器的VTEP IP地址確定所述第二物理網(wǎng)關(guān)的VTEP IP地址;
[0034]配置子單元,用于根據(jù)所述第一確定子單元確定的所述第二物理網(wǎng)關(guān)的VTEP IP地址,控制所述第二物理網(wǎng)關(guān)為所述虛擬機在所述第二物理網(wǎng)關(guān)上配置所述第二虛擬機網(wǎng)關(guān)。
[0035]結(jié)合第二方面和上述可能的實現(xiàn)方式,在另一種可能的實現(xiàn)方式中,所述配置單元,具體用于根據(jù)所述第二物理網(wǎng)關(guān)的VTEP IP地址,發(fā)送所述第一虛擬機網(wǎng)關(guān)的IP地址和所述第一虛擬機網(wǎng)關(guān)的MAC地址至所述第二物理網(wǎng)關(guān),以使得所述第二物理網(wǎng)關(guān)根據(jù)所述第一虛擬機網(wǎng)關(guān)的IP地址和所述第一虛擬機網(wǎng)關(guān)的MAC地址在所述第二物理網(wǎng)關(guān)上配置所述第二虛擬機網(wǎng)關(guān)。
[0036]結(jié)合第二方面和上述可能的實現(xiàn)方式,在另一種可能的實現(xiàn)方式中,所述獲取單元,包括:
[0037]獲取子單元,用于獲取虛擬機遷移信息,所述虛擬機遷移信息包括:所述虛擬機的IP地址、所述虛擬機的MAC地址和所述第二物理服務(wù)器的VTEP IP地址;
[0038]第二確定子單元,用于根據(jù)所述獲取子單元獲取的所述虛擬機的IP地址和所述虛擬機的MAC地址確定所述第一虛擬機網(wǎng)關(guān)的IP地址和所述第一虛擬機網(wǎng)關(guān)的MAC地址。
[0039]結(jié)合第二方面和上述可能的實現(xiàn)方式,在另一種可能的實現(xiàn)方式中,所述SDN控制器還包括:
[0040]刪除單元,用于在所述創(chuàng)建單元創(chuàng)建所述第一流表項之后,刪除第二流表項,所述第二流表項中包含所述第一物理網(wǎng)關(guān)的VTEP IP地址、第一虛擬機網(wǎng)關(guān)的IP地址、所述第一虛擬機網(wǎng)關(guān)的MAC地址和所述虛擬機的IP地址之間的映射關(guān)系以及所述虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLANID。
[0041]結(jié)合第二方面和上述可能的實現(xiàn)方式,在另一種可能的實現(xiàn)方式中,所述SDN控制器還包括:
[0042]確定單元,用于在所述創(chuàng)建單元創(chuàng)建所述第一流表項之前,所述獲取單元獲取所述虛擬機遷移信息之后,根據(jù)所述虛擬機的IP地址和所述虛擬機的MAC地址確定所述虛擬機的 VxLAN ID。
[0043]結(jié)合第二方面和上述可能的實現(xiàn)方式,在另一種可能的實現(xiàn)方式中,所述SDN控制器還包括:
[0044]判斷單元,用于在所述創(chuàng)建單元創(chuàng)建所述第一流表項之后,判斷所述虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),是否存在其他虛擬機使用所述第一虛擬機網(wǎng)關(guān);
[0045]所述刪除單元,還用于若所述判斷單元判斷得到所述虛擬機的VxLANID所標識的網(wǎng)段內(nèi),不存在所述其他虛擬機使用所述第一虛擬機網(wǎng)關(guān),則控制所述第一物理網(wǎng)關(guān)刪除所述第一物理網(wǎng)關(guān)上配置的所述第一虛擬機網(wǎng)關(guān)。
[0046]本發(fā)明實施例的第三方面,提供一種基于虛擬機遷移的網(wǎng)關(guān)控制系統(tǒng),第一物理網(wǎng)關(guān)為第一物理服務(wù)器的物理網(wǎng)關(guān),第二物理網(wǎng)關(guān)為第二物理服務(wù)器的物理網(wǎng)關(guān),應(yīng)用于虛擬機由所述第一物理服務(wù)器遷移至所述第二物理服務(wù)器的過程中,所述系統(tǒng)包括:軟件定義網(wǎng)絡(luò)SDN控制器、所述虛擬機、所述第一物理服務(wù)器、所述第一物理網(wǎng)關(guān)、第一虛擬機網(wǎng)關(guān)、所述第二物理服務(wù)器、所述第二物理網(wǎng)關(guān)和第二虛擬機網(wǎng)關(guān);
[0047]所述第一虛擬機網(wǎng)關(guān)為配置在所述第一物理網(wǎng)關(guān)上的所述虛擬機的虛擬機網(wǎng)關(guān);所述第二虛擬機網(wǎng)關(guān)為配置在所述第二物理網(wǎng)關(guān)上的所述虛擬機的虛擬機網(wǎng)關(guān);
[0048]所述SDN控制器,用于執(zhí)行如權(quán)利要求1-7中任一項所述的基于虛擬機遷移的網(wǎng)關(guān)控制方法;
[0049]第二物理網(wǎng)關(guān),用于根據(jù)所述SDN控制器的控制,在所述第二物理網(wǎng)關(guān)上配置所述第二虛擬機網(wǎng)關(guān);
[0050]其中,所述第二虛擬機網(wǎng)關(guān)的網(wǎng)際協(xié)議IP地址與所述第一虛擬機網(wǎng)關(guān)的IP地址相同,且所述第二虛擬機網(wǎng)關(guān)的MAC地址與所述第一虛擬機網(wǎng)關(guān)的媒體接入控制MAC地址相同。
[0051]本發(fā)明實施例提供的基于虛擬機遷移的網(wǎng)關(guān)控制方法、裝置及系統(tǒng),在虛擬機遷移后的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上配置了與虛擬機遷移前的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上配置的虛擬機的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))具有相同的IP地址和MAC地址的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān)),保證了虛擬機遷移前后的虛擬機網(wǎng)關(guān)地址(虛擬機網(wǎng)關(guān)的IP地址和虛擬機網(wǎng)關(guān)的MAC地址)不變;并且,可以發(fā)送記錄物理網(wǎng)關(guān)、虛擬機網(wǎng)關(guān)和虛擬機的映射關(guān)系的流表項至第二物理網(wǎng)關(guān),以使虛擬機在進行數(shù)據(jù)傳輸時,可以直接通過虛擬機遷移后的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上配置的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān),即與虛擬機遷移前的虛擬機網(wǎng)關(guān)具有相同的IP地址和MAC地址的虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),不需要迂回到虛擬機遷移前所處的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上配置的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),可以減少設(shè)備之間進行數(shù)據(jù)傳輸?shù)臄?shù)據(jù)流量,進而減少設(shè)備之間進行數(shù)據(jù)傳輸所占用的帶寬,可以在一定程度上減少帶寬資源的浪費。

【專利附圖】

【附圖說明】
[0052]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,還可以根據(jù)這些附圖獲得其他的附圖。
[0053]圖1為實施例中的一種基于虛擬機遷移的網(wǎng)關(guān)控制方法流程圖;
[0054]圖2為實施例中的另一種基于虛擬機遷移的網(wǎng)關(guān)控制方法流程圖;
[0055]圖3為實施例中的一種虛擬機I和虛擬機2之間的通信交互圖;
[0056]圖4為實施例中的一種VxLAN報文的格式示意圖;
[0057]圖5為實施例中的一種SDN控制器組成示意圖;
[0058]圖6為實施例中的另一種SDN控制器組成示意圖;
[0059]圖7為實施例中的另一種SDN控制器組成示意圖;
[0060]圖8為實施例中的另一種SDN控制器組成示意圖;
[0061]圖9為實施例中的另一種SDN控制器組成示意圖;
[0062]圖10為實施例中的另一種SDN控制器組成示意圖;
[0063]圖11為實施例中的再一種SDN控制器組成示意圖;
[0064]圖12為實施例中的一種基于虛擬機遷移的網(wǎng)關(guān)控制系統(tǒng)組成示意圖。

【具體實施方式】
[0065]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。本領(lǐng)域普通技術(shù)人員根據(jù)本發(fā)明中的實施例所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0066]另外,本文中術(shù)語“系統(tǒng)”和“網(wǎng)絡(luò)”在本文中常被可互換使用。本文中術(shù)語“和/或”,僅僅是一種描述關(guān)聯(lián)對象的關(guān)聯(lián)關(guān)系,表示可以存在三種關(guān)系,例如,A和/或B,可以表示:單獨存在A,同時存在A和B,單獨存在B這三種情況。另外,本文中字符“/”,一般表示前后關(guān)聯(lián)對象是一種“或”的關(guān)系。
[0067]為了方便理解本發(fā)明實施例,首先在此介紹本發(fā)明實施例描述中會引入的幾個術(shù)語。
[0068]數(shù)據(jù)中心:是一種數(shù)據(jù)整合系統(tǒng),通常由計算系統(tǒng)、存儲系統(tǒng)、通訊系統(tǒng)、網(wǎng)絡(luò)設(shè)備、環(huán)境控制系統(tǒng)和安全系統(tǒng)等組件構(gòu)成,其常用于數(shù)據(jù)的計算和存儲。
[0069]云管理平臺:可以是多個管理軟件的集合,也可以是實現(xiàn)所需要的管理功能的一個軟件。云管理平臺可以以低運營成本實現(xiàn)對大規(guī)模的數(shù)據(jù)中心的集中管理。
[0070]物理服務(wù)器:是指一個用于管理資源并為用戶提供服務(wù)的計算機。相對于普通計算機來說,物理服務(wù)器在穩(wěn)定性和安全性等方面的要求更高。
[0071]虛擬機(Virtual Machine, VM):是指通過軟件模擬的具有完整硬件系統(tǒng)功能的,且運行在物理服務(wù)器上的計算機系統(tǒng)。一臺物理服務(wù)器上可以同時運行多個虛擬機,每個虛擬機使用物理服務(wù)器中的一部分物理資源,如中央處理器、內(nèi)存等。也可以將多個不同類型的應(yīng)用程序,運行在不同的虛擬機上,并整合到一個物理服務(wù)器上,這樣可以提高資源的利用率,提高數(shù)據(jù)中心的計算能力。
[0072]擴展虛擬局域網(wǎng)絡(luò)(Virtual Extensible LAN,VxLAN):是一種將二層(數(shù)據(jù)鏈路層)報文用三層(網(wǎng)絡(luò)層)協(xié)議進行封裝的技術(shù),可以對二層網(wǎng)絡(luò)在三層范圍進行擴展。它應(yīng)用于數(shù)據(jù)中心內(nèi)部,使虛擬機可以在互相連通的三層網(wǎng)絡(luò)范圍內(nèi)遷移,而不需要改變網(wǎng)際協(xié)議(Internet Protocol, IP)地址和媒體接入控制(Media Access Control, MAC)地址,保證業(yè)務(wù)的連續(xù)性。
[0073]VxLAN ID (Virtual Extensible LAN ID):VxLAN 網(wǎng)段的標識符,同一個網(wǎng)段內(nèi)的虛擬機的VxLAN ID相同。
[0074]虛擬隧道終端節(jié)點(Virtual tunnel endpoint, VTEP):用于對VxLAN報文(包括地址解析協(xié)議(Address Resolut1n Protocol, ARP)請求報文和正常的VxLAN數(shù)據(jù)報文)進行封裝/解封裝,在一端VTEP封裝報文后通過隧道向另一端VTEP發(fā)送封裝報文,另一端VTEP接收到封裝報文后對報文解封裝并根據(jù)封裝的MAC地址進行轉(zhuǎn)發(fā)。VTEP可由支持VxLAN的硬件設(shè)備或軟件來實現(xiàn)。
[0075]地址解析協(xié)議ARP:是根據(jù)IP地址獲取MAC地址的一個傳輸控制協(xié)議/因特網(wǎng)互聯(lián)協(xié)議(Transmiss1n Control Protocol/Internet Protocol,TCP/IP)。其功能是:本地物理服務(wù)器向網(wǎng)絡(luò)上的所有物理服務(wù)器廣播ARP請求,并接收網(wǎng)絡(luò)上的某個物理服務(wù)器的返回消息,根據(jù)目標物理服務(wù)器的IP地址確定目標物理服務(wù)器的MAC地址,同時將目標物理服務(wù)器的IP地址和MAC地址存入本地物理服務(wù)器的ARP緩存中。
[0076]物理網(wǎng)關(guān)(Gateway, Gff):負責不同VxLAN之間的數(shù)據(jù)轉(zhuǎn)發(fā),根據(jù)流表對VxLAN報文進行封裝與解封裝。
[0077]虛擬機網(wǎng)關(guān):配置在物理網(wǎng)關(guān)上,用于虛擬機的數(shù)據(jù)轉(zhuǎn)發(fā)。一個物理網(wǎng)關(guān)上可以配置多個虛擬機網(wǎng)關(guān)。
[0078]虛擬交換機(Virtual switch, Vswtich):和物理交換機一樣,包含一定數(shù)量的端口,可以提供連接在不同端口的設(shè)備之間的數(shù)據(jù)交換。
[0079]軟件定義網(wǎng)絡(luò)控制器(SoftwareDefined Network controller, SDN controller):對網(wǎng)絡(luò)進行軟件編程,可以通過創(chuàng)建流表控制VTEP以及VxLAN網(wǎng)關(guān)的數(shù)據(jù)轉(zhuǎn)發(fā)。
[0080]在VxLAN網(wǎng)絡(luò)中,虛擬機從一個物理服務(wù)器遷移到另一個物理服務(wù)器時,云管理平臺會將虛擬機的遷移信息通告給SDN控制器,由SDN控制器控制虛擬機的數(shù)據(jù)轉(zhuǎn)發(fā)方向。本發(fā)明實施例以VxLAN網(wǎng)絡(luò)中的虛擬機遷移為例進行說明。
[0081]實施例1
[0082]本發(fā)明實施例提供一種基于虛擬機遷移的網(wǎng)關(guān)控制方法,第一物理網(wǎng)關(guān)為第一物理服務(wù)器的物理網(wǎng)關(guān),第二物理網(wǎng)關(guān)為第二物理服務(wù)器的物理網(wǎng)關(guān),如圖1所示,當虛擬機由第一物理服務(wù)器遷移至第二物理服務(wù)器時,該方法包括:
[0083]SlOU SDN控制器獲取第一虛擬機網(wǎng)關(guān)的IP地址、第一虛擬機網(wǎng)關(guān)的MAC地址和第二物理服務(wù)器的VTEP IP地址。
[0084]其中,第一虛擬機網(wǎng)關(guān)為配置在第一物理網(wǎng)關(guān)上的虛擬機的虛擬機網(wǎng)關(guān)。第一物理服務(wù)器為虛擬機遷移前所在的物理服務(wù)器,第二物理服務(wù)器為虛擬機遷移后所在的物理服務(wù)器。一個物理服務(wù)器上可以配置多個虛擬機,每個虛擬機可以使用物理服務(wù)器的部分物理資源,如中央處理器、內(nèi)存等。
[0085]本發(fā)明實施例中的第一虛擬機網(wǎng)關(guān)為虛擬機遷移前所在的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上虛擬出的用于虛擬機的數(shù)據(jù)轉(zhuǎn)發(fā)的虛擬機的虛擬機網(wǎng)關(guān)。一個物理網(wǎng)關(guān)上可以配置多個虛擬機網(wǎng)關(guān)。
[0086]可選的,在本發(fā)明實施例中,虛擬機與虛擬機網(wǎng)關(guān)之間的映射關(guān)系可以為預(yù)先建立好,并存儲在SDN控制器中的。當然,SDN控制器也可以在虛擬機需要通過虛擬機網(wǎng)關(guān)進行數(shù)據(jù)轉(zhuǎn)發(fā)時,再建立虛擬機與虛擬機網(wǎng)關(guān)之間的映射關(guān)系,本發(fā)明實施例對此不做限制。
[0087]其中,SDN控制器可以根據(jù)SDN控制器中存儲的虛擬機網(wǎng)關(guān)與虛擬機之間的映射關(guān)系、虛擬機的IP地址和虛擬機的MAC地址,查找第一虛擬機網(wǎng)關(guān)的IP地址和第一虛擬機網(wǎng)關(guān)的MAC地址。
[0088]可選的,SDN控制器可以根據(jù)云管理平臺上報的虛擬機遷移信息獲取第二物理服務(wù)器的VTEP IP地址。當然,SDN控制器也可以通過向云管理平臺發(fā)送請求以獲取虛擬機遷移信息,本發(fā)明實施例對此不做限制。其中,虛擬機遷移信息包括虛擬機的IP地址、虛擬機的MAC地址和第二物理服務(wù)器的VTEP IP地址。
[0089]S102、SDN控制器根據(jù)第二物理服務(wù)器的VTEP IP地址,控制第二物理網(wǎng)關(guān)為虛擬機在第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān)。
[0090]其中,第二虛擬機網(wǎng)關(guān)為虛擬機遷移后所在的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上虛擬出的用于虛擬機的數(shù)據(jù)轉(zhuǎn)發(fā)的虛擬機的虛擬機網(wǎng)關(guān)。第二虛擬機網(wǎng)關(guān)的IP地址與第一虛擬機網(wǎng)關(guān)的IP地址相同,且第二虛擬機網(wǎng)關(guān)的MAC地址與第一虛擬機網(wǎng)關(guān)的MAC地址相同。
[0091]具體的,SDN控制器可以根據(jù)第二物理服務(wù)器的VTEP IP地址確定第二物理網(wǎng)關(guān)的VTEP IP地址,并根據(jù)第二物理網(wǎng)關(guān)的VTEP IP地址確定第二物理網(wǎng)關(guān),為虛擬機在第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān)。
[0092]可選的,物理服務(wù)器與物理網(wǎng)關(guān)之間的映射關(guān)系可以為預(yù)先建立好的、并存儲在SDN控制器中的。當然,SDN控制器也可以在虛擬機需要通過虛擬機網(wǎng)關(guān)進行數(shù)據(jù)轉(zhuǎn)發(fā)時,再建立物理服務(wù)器與物理網(wǎng)關(guān)之間的映射關(guān)系,本發(fā)明實施例對此不做限制。其中,物理服務(wù)器和物理網(wǎng)關(guān)可以用不同的VTEP IP地址標識。每個物理服務(wù)器有一個唯一的VTEP IP地址,每一個物理網(wǎng)關(guān)有一個唯一的VTEP IP地址。
[0093]其中,SDN控制器可以根據(jù)SDN控制器中存儲的物理服務(wù)器與物理網(wǎng)關(guān)的映射關(guān)系和第二物理服務(wù)器的VTEP IP地址,查找第二物理網(wǎng)關(guān)的VTEP IP地址。
[0094]S103、SDN控制器創(chuàng)建第一流表項,第一流表項中包含第二物理網(wǎng)關(guān)的VTEP IP地址、第二虛擬機網(wǎng)關(guān)的IP地址、第二虛擬機網(wǎng)關(guān)的MAC地址和虛擬機的IP地址之間的映射關(guān)系以及虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLAN ID。
[0095]其中,第一流表項存儲在SDN控制器中。
[0096]S104、SDN控制器發(fā)送第一流表項至第二物理網(wǎng)關(guān),以使得第二物理網(wǎng)關(guān)根據(jù)第一流表項所指示的數(shù)據(jù)轉(zhuǎn)發(fā)策略為虛擬機轉(zhuǎn)發(fā)數(shù)據(jù)。
[0097]其中,虛擬機的VxLAN ID用于標識虛擬機所在的網(wǎng)段。第一流表項記錄了物理網(wǎng)關(guān)、虛擬機網(wǎng)關(guān)和虛擬機之間的映射關(guān)系以及虛擬機所在的網(wǎng)段。第二物理網(wǎng)關(guān)在虛擬機遷移至第二物理服務(wù)器后,可以根據(jù)第一流表項的指示,通過第二虛擬機網(wǎng)關(guān)為虛擬機轉(zhuǎn)發(fā)數(shù)據(jù)。
[0098]本發(fā)明實施例提供的基于虛擬機遷移的網(wǎng)關(guān)控制方法,在虛擬機遷移后的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上配置了與虛擬機遷移前的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上配置的虛擬機的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))具有相同的IP地址和MAC地址的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān)),保證了虛擬機遷移前后的虛擬機網(wǎng)關(guān)地址(虛擬機網(wǎng)關(guān)的IP地址和虛擬機網(wǎng)關(guān)的MAC地址)不變;并且,可以發(fā)送記錄物理網(wǎng)關(guān)、虛擬機網(wǎng)關(guān)和虛擬機的映射關(guān)系的流表項至第二物理網(wǎng)關(guān),以使虛擬機在進行數(shù)據(jù)傳輸時,可以直接通過虛擬機遷移后的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上配置的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān),即與虛擬機遷移前的虛擬機網(wǎng)關(guān)具有相同的IP地址和MAC地址的虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),不需要迂回到虛擬機遷移前所處的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上配置的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),可以減少設(shè)備之間進行數(shù)據(jù)傳輸?shù)臄?shù)據(jù)流量,進而減少設(shè)備之間進行數(shù)據(jù)傳輸所占用的帶寬,可以在一定程度上減少帶寬資源的浪費。
[0099]實施例2
[0100]本發(fā)明實施例提供一種基于虛擬機遷移的網(wǎng)關(guān)控制方法,第一物理網(wǎng)關(guān)為第一物理服務(wù)器的物理網(wǎng)關(guān),第二物理網(wǎng)關(guān)為第二物理服務(wù)器的物理網(wǎng)關(guān),如圖2所示,當虛擬機由第一物理服務(wù)器遷移至第二物理服務(wù)器時,該方法包括:
[0101]S201、SDN控制器獲取虛擬機遷移信息,虛擬機遷移信息包括:虛擬機的IP地址、虛擬機的MAC地址和第二物理服務(wù)器的VTEP IP地址。
[0102]其中,虛擬機由第一物理服務(wù)器遷移至第二物理服務(wù)器包括:手動將虛擬機遷移至第二物理服務(wù)器;虛擬機自動遷移至第二物理服務(wù)器。虛擬機自動遷移需要云管理平臺支持。虛擬機的遷移信息可以由云管理平臺上報給SDN,也可以由SDN控制器向云管理平臺發(fā)送請求,以獲取虛擬機遷移信息,本發(fā)明實施例對此不做限制。第二物理服務(wù)器為虛擬機遷移后所在的物理服務(wù)器,用VTEP IP地址可以唯一標識物理服務(wù)器。
[0103]S202、SDN控制器根據(jù)虛擬機的IP地址和虛擬機的MAC地址,確定第一虛擬機網(wǎng)關(guān)的IP地址和第一虛擬機網(wǎng)關(guān)的MAC地址。
[0104]其中,第一虛擬機網(wǎng)關(guān)為虛擬機遷移前所在的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上虛擬出的用于虛擬機的數(shù)據(jù)轉(zhuǎn)發(fā)的虛擬機的虛擬機網(wǎng)關(guān)。SDN控制器確定第一虛擬機網(wǎng)關(guān)的IP地址和第一虛擬機網(wǎng)關(guān)的MAC地址的方法可以參考上述實施例中的相關(guān)描述,本發(fā)明實施例這里不再贅述。
[0105]S203、SDN控制器根據(jù)第二物理服務(wù)器的VTEP IP地址確定第二物理網(wǎng)關(guān)的VTEPIP地址。
[0106]其中,第二物理網(wǎng)關(guān)為第二物理服務(wù)器的物理網(wǎng)關(guān),SDN控制器確定第二物理網(wǎng)關(guān)的VTEP IP地址的方法可以參考上述實施例中的相關(guān)描述,本發(fā)明實施例這里不再贅述。
[0107]S204、SDN控制器根據(jù)第二物理網(wǎng)關(guān)的VTEP IP地址,發(fā)送第一虛擬機網(wǎng)關(guān)的IP地址和第一虛擬機網(wǎng)關(guān)的MAC地址至第二物理網(wǎng)關(guān),以使得第二物理網(wǎng)關(guān)根據(jù)第一虛擬機網(wǎng)關(guān)的IP地址和第一虛擬機網(wǎng)關(guān)的MAC地址為虛擬機在第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān)。
[0108]其中,第一虛擬機網(wǎng)關(guān)為虛擬機遷移前所在的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上虛擬出的用于虛擬機的數(shù)據(jù)轉(zhuǎn)發(fā)的虛擬機的虛擬機網(wǎng)關(guān)。第二虛擬機網(wǎng)關(guān)為虛擬機遷移后所在的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上虛擬出的用于虛擬機的數(shù)據(jù)轉(zhuǎn)發(fā)的虛擬機的虛擬機網(wǎng)關(guān)。第二虛擬機網(wǎng)關(guān)的IP地址與第一虛擬機網(wǎng)關(guān)的IP地址相同,且第二虛擬機網(wǎng)關(guān)的MAC地址與第一虛擬機網(wǎng)關(guān)的MAC地址相同。
[0109]S205、SDN控制器根據(jù)虛擬機的IP地址和虛擬機的MAC地址確定虛擬機的VxLANID0
[0110]其中,虛擬機的VxLAN ID用于標識虛擬機所在的網(wǎng)段。虛擬機與虛擬機的VxLANID的映射關(guān)系可以為預(yù)先建立好,并存儲在SDN控制器中的。SDN控制器可以根據(jù)SDN控制器中存儲的虛擬機與虛擬機的VxLAN ID的映射關(guān)系、虛擬機的IP地址和虛擬機的MAC地址,查找虛擬機的VxLANID。
[0111]S206、SDN控制器創(chuàng)建第一流表項,第一流表項中包含第二物理網(wǎng)關(guān)的VTEP IP地址、第二虛擬機網(wǎng)關(guān)的IP地址、第二虛擬機網(wǎng)關(guān)的MAC地址和虛擬機的IP地址之間的映射關(guān)系以及虛擬機的VxLAN ID。
[0112]其中,第一流表項存儲在SDN控制器中,第一流表項記錄了虛擬機遷移后的物理網(wǎng)關(guān)、虛擬機遷移后的虛擬機的虛擬機網(wǎng)關(guān)和虛擬機之間的映射關(guān)系以及虛擬機所在的網(wǎng)段。在虛擬機遷移至第二物理服務(wù)器后,第二物理網(wǎng)關(guān)可以根據(jù)第一流表項的指示,為虛擬機轉(zhuǎn)發(fā)數(shù)據(jù)。
[0113]S207、SDN控制器發(fā)送第一流表項至第二物理網(wǎng)關(guān),以使得第二物理網(wǎng)關(guān)根據(jù)第一流表項所指示的數(shù)據(jù)轉(zhuǎn)發(fā)策略為虛擬機轉(zhuǎn)發(fā)數(shù)據(jù)。
[0114]S208、SDN控制器刪除第二流表項,第二流表項中包含第一物理網(wǎng)關(guān)的VTEP IP地址、第一虛擬機網(wǎng)關(guān)的IP地址、第一虛擬機網(wǎng)關(guān)的MAC地址和虛擬機的IP地址之間的映射關(guān)系以及虛擬機的VxLAN ID。
[0115]其中,第二流表項存儲在SDN控制器中,第二流表項記錄了虛擬機遷移前的物理網(wǎng)關(guān)、虛擬機遷移前的虛擬機的虛擬機網(wǎng)關(guān)和虛擬機之間的映射關(guān)系以及虛擬機所在的網(wǎng)段。
[0116]通過建立第一流表項,刪除第二流表項,可以防止虛擬機在進行數(shù)據(jù)傳輸時,再通過虛擬機遷移前的虛擬機的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),而可以通過虛擬機遷移后的虛擬機的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā)。這種通過第二虛擬機網(wǎng)關(guān)進行數(shù)據(jù)轉(zhuǎn)發(fā)的過程,可以減少設(shè)備之間進行數(shù)據(jù)傳輸?shù)臄?shù)據(jù)流量,進而減少設(shè)備之間進行數(shù)據(jù)傳輸所占用的帶寬。
[0117]S209、SDN控制器判斷虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),是否存在其他虛擬機使用第一虛擬機網(wǎng)關(guān)。
[0118]其中,SDN控制器可以在虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),根據(jù)SDN控制器中存儲的虛擬機網(wǎng)關(guān)與虛擬機的映射關(guān)系、第一虛擬機網(wǎng)關(guān)的IP地址和第一虛擬機網(wǎng)關(guān)的MAC地址,查找是否存在其他虛擬機的虛擬機網(wǎng)關(guān)的IP地址與第一虛擬機網(wǎng)關(guān)的IP地址相同,且虛擬機網(wǎng)關(guān)的MAC地址與第一虛擬機網(wǎng)關(guān)的MAC地址相同,進而判斷出是否存在其他虛擬機使用第一虛擬機網(wǎng)關(guān)。具體的,若虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),存在其他虛擬機的虛擬機網(wǎng)關(guān)的IP地址與第一虛擬機網(wǎng)關(guān)的IP地址相同,且虛擬機網(wǎng)關(guān)的MAC地址與第一虛擬機網(wǎng)關(guān)的MAC地址相同,則可以判斷出存在其他虛擬機使用第一虛擬機網(wǎng)關(guān);若虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),不存在其他虛擬機的虛擬機網(wǎng)關(guān)的IP地址與第一虛擬機網(wǎng)關(guān)的IP地址相同,且虛擬機網(wǎng)關(guān)的MAC地址與第一虛擬機網(wǎng)關(guān)的MAC地址相同,則可以判斷出不存在其他虛擬機使用第一虛擬機網(wǎng)關(guān)。
[0119]S210、若虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),不存在其他虛擬機使用第一虛擬機網(wǎng)關(guān),則SDN控制器控制第一物理網(wǎng)關(guān)刪除第一物理網(wǎng)關(guān)上配置的第一虛擬機網(wǎng)關(guān)。
[0120]其中,若不存在其他虛擬機使用第一虛擬機網(wǎng)關(guān),則刪除第一物理網(wǎng)關(guān)上配置的第一虛擬機網(wǎng)關(guān),可以減少物理網(wǎng)關(guān)資源(例如,MAC地址表容量、ARP表項容量和路由表項容量)的消耗。
[0121]需要說明的是,在完成上述虛擬機網(wǎng)關(guān)配置方法的步驟之后,當虛擬機需要通過網(wǎng)關(guān)轉(zhuǎn)發(fā)數(shù)據(jù)時,SDN控制器控制第二物理網(wǎng)關(guān)上配置的第二虛擬機網(wǎng)關(guān)對虛擬機的數(shù)據(jù)進行轉(zhuǎn)發(fā)。本發(fā)明實施例以虛擬機I和虛擬機2之間的通信為例進行說明。其中,虛擬機I為發(fā)生遷移的虛擬機,在完成上述虛擬機網(wǎng)關(guān)配置方法的步驟之后,如圖3所示,虛擬機I和虛擬機2之間的通信流程包括:
[0122]S301、虛擬機I向虛擬交換機I發(fā)送訪問虛擬機I的請求,該請求包括虛擬機I的IP地址、虛擬機2的IP地址以及廣播地址。
[0123]其中,虛擬機I在第一次訪問虛擬機2時,虛擬機I不能獲取虛擬機2的MAC地址,可以用廣播地址代替虛擬機2的MAC地址。虛擬機I要獲取虛擬機2的MAC地址,可以通過向網(wǎng)絡(luò)上的所有虛擬機發(fā)送ARP請求,以獲取虛擬機2的MAC地址。
[0124]S302、虛擬交換機I向SDN控制器發(fā)送訪問請求,該請求包括虛擬機I的IP地址、虛擬機2的IP地址以及虛擬機I所在的物理服務(wù)器的VTEP IP。
[0125]其中,虛擬交換機I可以根據(jù)接收到的虛擬機I上報的信息,解析得到虛擬機I所在的物理服務(wù)器的VTEP IP地址。
[0126]S303、SDN控制器查看虛擬機I的IP地址與虛擬機2的IP地址,判斷虛擬機I與虛擬機2是否在同一網(wǎng)段。
[0127]S304、若虛擬機I與虛擬機2不在同一網(wǎng)段,則SDN控制器根據(jù)虛擬機I所在的物理服務(wù)器的VTEP IP地址確定離虛擬機I的物理位置最近的物理網(wǎng)關(guān)I。
[0128]其中,SDN控制器可以根據(jù)SDN控制器中存儲的物理服務(wù)器與物理網(wǎng)關(guān)的映射關(guān)系和虛擬機I所在的物理服務(wù)器的VTEP IP地址,查找離虛擬機I的物理位置最近的物理網(wǎng)關(guān)1,該物理網(wǎng)關(guān)I為虛擬機I遷移后的物理服務(wù)器的物理網(wǎng)關(guān)(即本發(fā)明實施例上述描述中的第二物理網(wǎng)關(guān)),且該物理網(wǎng)關(guān)I上有為虛擬機I配置的第二虛擬機網(wǎng)關(guān)。物理位置最近用于表征轉(zhuǎn)發(fā)路徑最短。
[0129]S305、SDN控制器下發(fā)關(guān)于虛擬機I的IP地址、虛擬機2的IP地址、虛擬機I所在的物理服務(wù)器的VTEP IP地址以及物理網(wǎng)關(guān)I的流表項至虛擬交換機I。
[0130]S306、虛擬交換機I記錄物理網(wǎng)關(guān)I的VTEP IP地址和虛擬機2的IP地址的映射關(guān)系。
[0131]S307、虛擬機I再次向虛擬交換機I發(fā)送訪問虛擬機2的請求,該請求包括虛擬機I的IP地址、虛擬機2的IP地址以及廣播地址。
[0132]S308、虛擬交換機I根據(jù)虛擬機2的IP地址封裝虛擬機I所在的物理服務(wù)器的VTEP IP地址,形成虛擬機I訪問虛擬機2的報文。
[0133]S309、虛擬交換機I將I訪問2的報文發(fā)送至物理網(wǎng)關(guān)I。
[0134]S310、物理網(wǎng)關(guān)I根據(jù)虛擬機2的IP地址向SDN控制器請求虛擬機2所在的物理服務(wù)器的VTEP IP地址。
[0135]其中,虛擬機與物理服務(wù)器的映射關(guān)系可以為預(yù)先建立好,并在SDN控制器中存儲的。SDN控制器可以根據(jù)SDN控制器中存儲的虛擬機與物理服務(wù)器的映射關(guān)系和虛擬機2的IP地址,查找虛擬機2所在的物理服務(wù)器的VTEP IP地址。
[0136]S311、SDN控制器向物理網(wǎng)關(guān)I下發(fā)虛擬機2所在的物理服務(wù)器的VTEP IP地址和虛擬機2的VxLAN ID。
[0137]其中,虛擬機2所在的物理服務(wù)器的VTEP IP地址和虛擬機2的VxLANID用于物理網(wǎng)關(guān)I封裝VxLAN報文。
[0138]S312、物理網(wǎng)關(guān)I封裝VxLAN報文。
[0139]其中,VxLAN報文的格式如圖4所示,在原以太網(wǎng)幀的基礎(chǔ)上增加VxLAN封裝。夕卜部目標IP地址為虛擬機2所在的物理服務(wù)器的VTEP IP地址;外部源IP地址為虛擬機I所在的物理服務(wù)器的VTEP IP地址;VxLANID為虛擬機2的VxLAN ID。外部目標MAC地址為物理網(wǎng)關(guān)I的MAC地址。當虛擬機2與虛擬機I在同一物理網(wǎng)關(guān)下時,外部目標MAC地址和外部源MAC地址相同;當虛擬機2與虛擬機I不在同一物理網(wǎng)關(guān)下時,外部目標MAC地址為虛擬機2的物理網(wǎng)關(guān)的MAC地址,外部源MAC地址為虛擬機I的物理網(wǎng)關(guān)的MAC地址。
[0140]S313、物理網(wǎng)關(guān)I向虛擬交換機2發(fā)送VxLAN報文。
[0141]其中,物理網(wǎng)關(guān)I通過物理網(wǎng)關(guān)I上為虛擬機I配置的第二虛擬機網(wǎng)關(guān)向虛擬交換機2發(fā)送VxLAN報文。
[0142]S314、虛擬交換機2對VxLAN報文解封裝,并向虛擬機2發(fā)送原始報文。
[0143]其中,原始報文為虛擬機I向虛擬交換機I發(fā)送的訪問虛擬機2的請求的報文。
[0144]本發(fā)明實施例提供的基于虛擬機遷移的網(wǎng)關(guān)控制方法,在虛擬機遷移后的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上配置了與虛擬機遷移前的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上配置的虛擬機的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))具有相同的IP地址和MAC地址的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān)),保證了虛擬機遷移前后的虛擬機網(wǎng)關(guān)地址(虛擬機網(wǎng)關(guān)的IP地址和虛擬機網(wǎng)關(guān)的MAC地址)不變;并且,可以發(fā)送記錄物理網(wǎng)關(guān)、虛擬機網(wǎng)關(guān)和虛擬機的映射關(guān)系的流表項至第二物理網(wǎng)關(guān),以使虛擬機在進行數(shù)據(jù)傳輸時,可以直接通過虛擬機遷移后的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上配置的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān),即與虛擬機遷移前的虛擬機網(wǎng)關(guān)具有相同的IP地址和MAC地址的虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),不需要迂回到虛擬機遷移前所處的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上配置的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),可以減少設(shè)備之間進行數(shù)據(jù)傳輸?shù)臄?shù)據(jù)流量,進而減少設(shè)備之間進行數(shù)據(jù)傳輸所占用的帶寬,可以在一定程度上減少帶寬資源的浪費。
[0145]實施例3
[0146]本發(fā)明實施例提供一種SDN控制器,第一物理網(wǎng)關(guān)為第一物理服務(wù)器的物理網(wǎng)關(guān),第二物理網(wǎng)關(guān)為第二物理服務(wù)器的物理網(wǎng)關(guān),應(yīng)用于虛擬機由第一物理服務(wù)器遷移至第二物理服務(wù)器的過程中,如圖5所示,該SDN控制器可以包括:獲取單元31、配置單元32、創(chuàng)建單元33和發(fā)送單元34。
[0147]獲取單元31,獲取第一虛擬機網(wǎng)關(guān)的網(wǎng)際協(xié)議IP地址、第一虛擬機網(wǎng)關(guān)的媒體接入控制MAC地址和第二物理服務(wù)器的虛擬隧道終端節(jié)點VTEP IP地址,第一虛擬機網(wǎng)關(guān)為配置在第一物理網(wǎng)關(guān)上的虛擬機的虛擬機網(wǎng)關(guān)。
[0148]配置單元32,用于根據(jù)獲取單元31獲取的第二物理服務(wù)器的VTEP IP地址,控制第二物理網(wǎng)關(guān)為虛擬機在第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān),第二虛擬機網(wǎng)關(guān)的IP地址與獲取單元獲取的第一虛擬機網(wǎng)關(guān)的IP地址相同,且第二虛擬機網(wǎng)關(guān)的MAC地址與獲取單元獲取的第一虛擬機網(wǎng)關(guān)的MAC地址相同。
[0149]創(chuàng)建單元33,用于創(chuàng)建第一流表項,第一流表項中包含第二物理網(wǎng)關(guān)的VTEP IP地址、第二虛擬機網(wǎng)關(guān)的IP地址、第二虛擬機網(wǎng)關(guān)的MAC地址和虛擬機的IP地址之間的映射關(guān)系以及虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLAN ID。
[0150]發(fā)送單元34,用于發(fā)送創(chuàng)建單元33創(chuàng)建的第一流表項至第二物理網(wǎng)關(guān),以使得第二物理網(wǎng)關(guān)根據(jù)第一流表項所指示的數(shù)據(jù)轉(zhuǎn)發(fā)策略為虛擬機轉(zhuǎn)發(fā)數(shù)據(jù),虛擬機的VxLAN ID用于標識虛擬機所在的網(wǎng)段。
[0151]進一步的,如圖6所示,配置單元32,可以包括:第一確定子單元321和配置子單元 322。
[0152]第一確定子單元321,用于根據(jù)第二物理服務(wù)器的VTEP IP地址確定第二物理網(wǎng)關(guān)的VTEP IP地址。
[0153]配置子單元322,用于根據(jù)第一確定子單元321確定的第二物理網(wǎng)關(guān)的VTEP IP地址,控制第二物理網(wǎng)關(guān)為虛擬機在第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān)。
[0154]進一步的,配置單元32,具體用于根據(jù)第二物理網(wǎng)關(guān)的VTEP IP地址,發(fā)送第一虛擬機網(wǎng)關(guān)的IP地址和第一虛擬機網(wǎng)關(guān)的MAC地址至第二物理網(wǎng)關(guān),以使得第二物理網(wǎng)關(guān)根據(jù)第一虛擬機網(wǎng)關(guān)的IP地址和第一虛擬機網(wǎng)關(guān)的MAC地址在第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān)。
[0155]進一步的,如圖7所示,獲取單元31,可以包括:獲取子單元311和第二確定子單元 312。
[0156]獲取子單元311,用于獲取虛擬機遷移信息,虛擬機遷移信息包括:虛擬機的IP地址、虛擬機的MAC地址和第二物理服務(wù)器的VTEP IP地址。
[0157]第二確定子單元312,用于根據(jù)獲取子單元311獲取的虛擬機的IP地址和虛擬機的MAC地址確定第一虛擬機網(wǎng)關(guān)的IP地址和第一虛擬機網(wǎng)關(guān)的MAC地址。
[0158]進一步的,如圖8所示,本發(fā)明實施例中的SDN控制器,還可以包括刪除單元35。
[0159]刪除單元35,用于在創(chuàng)建單元33創(chuàng)建第一流表項之后,刪除第二流表項,第二流表項中包含第一物理網(wǎng)關(guān)的VTEP IP地址、第一虛擬機網(wǎng)關(guān)的IP地址、第一虛擬機網(wǎng)關(guān)的MAC地址和虛擬機的IP地址之間的映射關(guān)系以及虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLAN ID。
[0160]進一步的,如圖9所示,本發(fā)明實施例中的SDN控制器,還可以包括確定單元36。
[0161]確定單元36,用于在創(chuàng)建單元33創(chuàng)建第一流表項之前,獲取單元31獲取虛擬機遷移信息之后,根據(jù)虛擬機的IP地址和虛擬機的MAC地址確定虛擬機的VxLAN ID。
[0162]進一步的,如圖10所示,本發(fā)明實施例中的SDN控制器,還可以包括判斷單元37。
[0163]判斷單元37,用于在創(chuàng)建單元33創(chuàng)建第一流表項之后,判斷虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),是否存在其他虛擬機使用第一虛擬機網(wǎng)關(guān)。
[0164]刪除單元35,還用于若判斷單元37判斷得到虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),不存在其他虛擬機使用第一虛擬機網(wǎng)關(guān),則控制第一物理網(wǎng)關(guān)刪除第一物理網(wǎng)關(guān)上配置的第一虛擬機網(wǎng)關(guān)。
[0165]需要說明的是,本發(fā)明實施例提供的SDN控制器中部分功能模塊的具體描述可以參考方法實施例中的對應(yīng)內(nèi)容,本實施例這里不再詳細贅述。
[0166]本發(fā)明實施例提供的SDN控制器,在虛擬機遷移后的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上配置了與虛擬機遷移前的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上配置的虛擬機的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))具有相同的IP地址和MAC地址的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān)),保證了虛擬機遷移前后的虛擬機網(wǎng)關(guān)地址(虛擬機網(wǎng)關(guān)的IP地址和虛擬機網(wǎng)關(guān)的MAC地址)不變;并且,可以發(fā)送記錄物理網(wǎng)關(guān)、虛擬機網(wǎng)關(guān)和虛擬機的映射關(guān)系的流表項至第二物理網(wǎng)關(guān),以使虛擬機在進行數(shù)據(jù)傳輸時,可以直接通過虛擬機遷移后的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上配置的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān),即與虛擬機遷移前的虛擬機網(wǎng)關(guān)具有相同的IP地址和MAC地址的虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),不需要迂回到虛擬機遷移前所處的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上配置的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),可以減少設(shè)備之間進行數(shù)據(jù)傳輸?shù)臄?shù)據(jù)流量,進而減少設(shè)備之間進行數(shù)據(jù)傳輸所占用的帶寬,可以在一定程度上減少帶寬資源的浪費。
[0167]實施例4
[0168]本發(fā)明實施例提供一種SDN控制器,第一物理網(wǎng)關(guān)為第一物理服務(wù)器的物理網(wǎng)關(guān),第二物理網(wǎng)關(guān)為第二物理服務(wù)器的物理網(wǎng)關(guān),應(yīng)用于虛擬機由第一物理服務(wù)器遷移至第二物理服務(wù)器的過程中,如圖11所示,該SDN控制器可以包括:接收器41、處理器42、發(fā)送器43和存儲器44。
[0169]接收器41,用于接收虛擬機遷移信息,以獲取第一虛擬機網(wǎng)關(guān)的網(wǎng)際協(xié)議IP地址、第一虛擬機網(wǎng)關(guān)的媒體接入控制MAC地址和第二物理服務(wù)器的虛擬隧道終端節(jié)點VTEPIP地址,第一虛擬機網(wǎng)關(guān)為配置在第一物理網(wǎng)關(guān)上的虛擬機的虛擬機網(wǎng)關(guān);虛擬機遷移信息包括:虛擬機的IP地址、虛擬機的MAC地址和第二物理服務(wù)器的VTEP IP地址。
[0170]處理器42,用于根據(jù)接收器41獲取的第二物理服務(wù)器的VTEP IP地址,控制第二物理網(wǎng)關(guān)為虛擬機在第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān),第二虛擬機網(wǎng)關(guān)的IP地址與獲取單元獲取的第一虛擬機網(wǎng)關(guān)的IP地址相同,且第二虛擬機網(wǎng)關(guān)的MAC地址與獲取單元獲取的第一虛擬機網(wǎng)關(guān)的MAC地址相同;還用于創(chuàng)建第一流表項,第一流表項中包含第二物理網(wǎng)關(guān)的VTEP IP地址、第二虛擬機網(wǎng)關(guān)的IP地址、第二虛擬機網(wǎng)關(guān)的MAC地址和虛擬機的IP地址之間的映射關(guān)系以及虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLAN ID。
[0171]發(fā)送器43,用于發(fā)送處理器42創(chuàng)建的第一流表項至第二物理網(wǎng)關(guān),以使得第二物理網(wǎng)關(guān)根據(jù)第一流表項所指示的數(shù)據(jù)轉(zhuǎn)發(fā)策略為虛擬機轉(zhuǎn)發(fā)數(shù)據(jù),虛擬機的VxLAN ID用于標識虛擬機所在的網(wǎng)段。
[0172]存儲器44,用于存儲接收器41和處理器42得到的數(shù)據(jù),如第一虛擬機網(wǎng)關(guān)的IP地址、第一虛擬機網(wǎng)關(guān)的MAC地址和第二物理服務(wù)器的VTEP IP地址、第二虛擬機網(wǎng)關(guān)的IP地址、第二虛擬機網(wǎng)關(guān)的MAC地址以及第一流表項等。
[0173]其中,接收器41和發(fā)送器43可以為SDN控制器與其他設(shè)備進行通信時的通信接口。接收器41、處理器42、發(fā)送器43和存儲器44通過總線連接并完成相互間的通信。
[0174]其中,總線可以是工業(yè)標準體系結(jié)構(gòu)(Industry Standard Architecture, ISA)總線、夕卜部設(shè)備互連(Peripheral Component Interconnect, PCI)總線或擴展工業(yè)標準體系結(jié)構(gòu)(Extended Industry Standard Architecture, EISA)總線等。該總線可以分為地址總線、數(shù)據(jù)總線、控制總線等。為便于表示,圖10中僅用一條粗線表示,但并不表示僅有一根總線或一種類型的總線。
[0175]需要說明的是,在本發(fā)明實施例中,所述處理器42可以為所述SDN控制器的控制中心,如中央處理器(Central Processing Unit, CPU),該控制中心可以利用各種接口和線路連接整個所述SDN控制器的各個部分。該處理器42可以由集成電路(IntegratedCircuit, IC)或者特定集成電路(Applicat1n Specific Integrated Circuit, ASIC)組成(例如,該處理器42可以由單顆封裝的IC所組成),也可以由連接多顆相同功能或不同功能的封裝IC組成。舉例來說,處理器42可以僅包括CPU,也可以是CPU、圖像處理器(Graphic Processing Unit, GPU)、數(shù)字信號處理器(Digital Signal Processor, DSP)以及通信單元中的控制芯片(例如基帶芯片)的組合。在本發(fā)明實施方式中,CPU可以是單運算核心,也可以包括多運算核心。
[0176]進一步的,處理器42,還用于根據(jù)第二物理服務(wù)器的VTEP IP地址確定第二物理網(wǎng)關(guān)的VTEP IP地址;根據(jù)第二物理網(wǎng)關(guān)的VTEP IP地址,控制第二物理網(wǎng)關(guān)為虛擬機在第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān)。
[0177]進一步的,處理器42,還用于根據(jù)第二物理網(wǎng)關(guān)的VTEP IP地址,發(fā)送第一虛擬機網(wǎng)關(guān)的IP地址和第一虛擬機網(wǎng)關(guān)的MAC地址至第二物理網(wǎng)關(guān),以使得第二物理網(wǎng)關(guān)根據(jù)第一虛擬機網(wǎng)關(guān)的IP地址和第一虛擬機網(wǎng)關(guān)的MAC地址在第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān)。
[0178]進一步的,處理器42,還用于根據(jù)接收器41獲取的虛擬機的IP地址和虛擬機的MAC地址確定第一虛擬機網(wǎng)關(guān)的IP地址和第一虛擬機網(wǎng)關(guān)的MAC地址。
[0179]進一步的,處理器42,還用于在創(chuàng)建第一流表項之后,刪除第二流表項,第二流表項中包含第一物理網(wǎng)關(guān)的VTEP IP地址、第一虛擬機網(wǎng)關(guān)的IP地址、第一虛擬機網(wǎng)關(guān)的MAC地址和虛擬機的IP地址之間的映射關(guān)系以及虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLAN ID。
[0180]進一步的,處理器42,還用于在創(chuàng)建第一流表項之前,接收器41獲取虛擬機遷移信息之后,根據(jù)虛擬機的IP地址和虛擬機的MAC地址確定虛擬機的VxLAN ID。
[0181]進一步的,處理器42,還用于在創(chuàng)建第一流表項之后,判斷虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),是否存在其他虛擬機使用第一虛擬機網(wǎng)關(guān);若虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),不存在其他虛擬機使用第一虛擬機網(wǎng)關(guān),則控制第一物理網(wǎng)關(guān)刪除第一物理網(wǎng)關(guān)上配置的第一虛擬機網(wǎng)關(guān)。
[0182]需要說明的是,本發(fā)明實施例提供的SDN控制器中部分功能模塊的具體描述可以參考方法實施例中的對應(yīng)內(nèi)容,本實施例這里不再詳細贅述。
[0183]本發(fā)明實施例提供的SDN控制器,在虛擬機遷移后的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上配置了與虛擬機遷移前的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上配置的虛擬機的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))具有相同的IP地址和MAC地址的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān)),保證了虛擬機遷移前后的虛擬機網(wǎng)關(guān)地址(虛擬機網(wǎng)關(guān)的IP地址和虛擬機網(wǎng)關(guān)的MAC地址)不變;并且,可以發(fā)送記錄物理網(wǎng)關(guān)、虛擬機網(wǎng)關(guān)和虛擬機的映射關(guān)系的流表項至第二物理網(wǎng)關(guān),以使虛擬機在進行數(shù)據(jù)傳輸時,可以直接通過虛擬機遷移后的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上配置的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān),即與虛擬機遷移前的虛擬機網(wǎng)關(guān)具有相同的IP地址和MAC地址的虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),不需要迂回到虛擬機遷移前所處的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上配置的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),可以減少設(shè)備之間進行數(shù)據(jù)傳輸?shù)臄?shù)據(jù)流量,進而減少設(shè)備之間進行數(shù)據(jù)傳輸所占用的帶寬,可以在一定程度上減少帶寬資源的浪費。
[0184]實施例5
[0185]本發(fā)明實施例提供一種基于虛擬機遷移的網(wǎng)關(guān)控制系統(tǒng),第一物理網(wǎng)關(guān)為第一物理服務(wù)器的物理網(wǎng)關(guān),第二物理網(wǎng)關(guān)為第二物理服務(wù)器的物理網(wǎng)關(guān),應(yīng)用于虛擬機由第一物理服務(wù)器遷移至第二物理服務(wù)器的過程中,如圖12所示,該系統(tǒng)可以包括:SDN控制51、虛擬機52、第一物理服務(wù)器53、第一物理網(wǎng)關(guān)54、第一虛擬機網(wǎng)關(guān)55、第二物理服務(wù)器56、第二物理網(wǎng)關(guān)57和第二虛擬機網(wǎng)關(guān)58。
[0186]第一虛擬機網(wǎng)關(guān)55為配置在第一物理網(wǎng)關(guān)54上的虛擬機52的虛擬機網(wǎng)關(guān);第二虛擬機網(wǎng)關(guān)58為配置在第二物理網(wǎng)關(guān)57上的虛擬機52的虛擬機網(wǎng)關(guān)。
[0187]SDN控制51,用于執(zhí)行如權(quán)利要求1_7中任一項所述的基于虛擬機遷移的網(wǎng)關(guān)控制方法。
[0188]第二物理網(wǎng)關(guān)57,用于根據(jù)SDN控制51的控制,在第二物理網(wǎng)關(guān)57上配置第二虛擬機網(wǎng)關(guān)58。
[0189]其中,第二虛擬機網(wǎng)關(guān)58的IP地址與第一虛擬機網(wǎng)關(guān)55的IP地址相同,且第二虛擬機網(wǎng)關(guān)58的MAC地址與第一虛擬機網(wǎng)關(guān)55的MAC地址相同。
[0190]本發(fā)明實施例提供的基于虛擬機遷移的網(wǎng)關(guān)控制系統(tǒng),在虛擬機遷移后的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上配置了與虛擬機遷移前的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上配置的虛擬機的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))具有相同的IP地址和MAC地址的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān)),保證了虛擬機遷移前后的虛擬機網(wǎng)關(guān)地址(虛擬機網(wǎng)關(guān)的IP地址和虛擬機網(wǎng)關(guān)的MAC地址)不變;并且,可以發(fā)送記錄物理網(wǎng)關(guān)、虛擬機網(wǎng)關(guān)和虛擬機的映射關(guān)系的流表項至第二物理網(wǎng)關(guān),以使虛擬機在進行數(shù)據(jù)傳輸時,可以直接通過虛擬機遷移后的物理服務(wù)器(第二物理服務(wù)器)的物理網(wǎng)關(guān)(第二物理網(wǎng)關(guān))上配置的虛擬機網(wǎng)關(guān)(第二虛擬機網(wǎng)關(guān),即與虛擬機遷移前的虛擬機網(wǎng)關(guān)具有相同的IP地址和MAC地址的虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),不需要迂回到虛擬機遷移前所處的物理服務(wù)器(第一物理服務(wù)器)的物理網(wǎng)關(guān)(第一物理網(wǎng)關(guān))上配置的虛擬機網(wǎng)關(guān)(第一虛擬機網(wǎng)關(guān))進行數(shù)據(jù)轉(zhuǎn)發(fā),可以減少設(shè)備之間進行數(shù)據(jù)傳輸?shù)臄?shù)據(jù)流量,進而減少設(shè)備之間進行數(shù)據(jù)傳輸所占用的帶寬,可以在一定程度上減少帶寬資源的浪費。
[0191]通過以上的實施方式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,僅以上述各功能模塊的劃分進行舉例說明,實際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。上述描述的系統(tǒng),裝置和單元的具體工作過程,可以參考前述方法實施例中的對應(yīng)過程,在此不再贅述。
[0192]在本申請所提供的幾個實施例中,應(yīng)該理解到,所揭露的系統(tǒng),裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述模塊或單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
[0193]所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上。可以根據(jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
[0194]另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。
[0195]所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)或處理器(processor)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(ROM, Read-Only Memory)、隨機存取存儲器(RAM, Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
[0196]以上所述,僅為本發(fā)明的【具體實施方式】,但本發(fā)明的保護范圍并不局限于此,任何熟悉本【技術(shù)領(lǐng)域】的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)以所述權(quán)利要求的保護范圍為準。
【權(quán)利要求】
1.一種基于虛擬機遷移的網(wǎng)關(guān)控制方法,其特征在于,第一物理網(wǎng)關(guān)為第一物理服務(wù)器的物理網(wǎng)關(guān),第二物理網(wǎng)關(guān)為第二物理服務(wù)器的物理網(wǎng)關(guān),當虛擬機由所述第一物理服務(wù)器遷移至所述第二物理服務(wù)器時,所述方法包括: 軟件定義網(wǎng)絡(luò)SDN控制器獲取第一虛擬機網(wǎng)關(guān)的網(wǎng)際協(xié)議IP地址、所述第一虛擬機網(wǎng)關(guān)的媒體接入控制MAC地址和第二物理服務(wù)器的虛擬隧道終端節(jié)點VTEP IP地址,所述第一虛擬機網(wǎng)關(guān)為配置在所述第一物理網(wǎng)關(guān)上的所述虛擬機的虛擬機網(wǎng)關(guān); 所述SDN控制器根據(jù)所述第二物理服務(wù)器的VTEP IP地址,控制所述第二物理網(wǎng)關(guān)為所述虛擬機在所述第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān),所述第二虛擬機網(wǎng)關(guān)的IP地址與所述第一虛擬機網(wǎng)關(guān)的IP地址相同,且所述第二虛擬機網(wǎng)關(guān)的MAC地址與所述第一虛擬機網(wǎng)關(guān)的MAC地址相同; 所述SDN控制器創(chuàng)建第一流表項,所述第一流表項中包含所述第二物理網(wǎng)關(guān)的VTEPIP地址、所述第二虛擬機網(wǎng)關(guān)的IP地址、所述第二虛擬機網(wǎng)關(guān)的MAC地址和所述虛擬機的IP地址之間的映射關(guān)系以及所述虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLAN ID,并發(fā)送所述第一流表項至所述第二物理網(wǎng)關(guān),以使得所述第二物理網(wǎng)關(guān)根據(jù)所述第一流表項所指示的數(shù)據(jù)轉(zhuǎn)發(fā)策略為所述虛擬機轉(zhuǎn)發(fā)數(shù)據(jù),所述虛擬機的VxLAN ID用于標識所述虛擬機所在的網(wǎng)段。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述SDN控制器根據(jù)所述第二物理服務(wù)器的VTEP IP地址,控制所述第二物理網(wǎng)關(guān)為所述虛擬機在所述第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān),包括: 所述SDN控制器根據(jù)所述第二物理服務(wù)器的VTEP IP地址確定所述第二物理網(wǎng)關(guān)的VTEP IP 地址; 所述SDN控制器根據(jù)所述第二物理網(wǎng)關(guān)的VTEP IP地址,控制所述第二物理網(wǎng)關(guān)為所述虛擬機在所述第二物理網(wǎng)關(guān)上配置所述第二虛擬機網(wǎng)關(guān)。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述SDN控制器根據(jù)所述第二物理網(wǎng)關(guān)的VTEP IP地址,控制所述第二物理網(wǎng)關(guān)為所述虛擬機在所述第二物理網(wǎng)關(guān)上配置所述第二虛擬機網(wǎng)關(guān),包括: 所述SDN控制器根據(jù)所述第二物理網(wǎng)關(guān)的VTEP IP地址,發(fā)送所述第一虛擬機網(wǎng)關(guān)的IP地址和所述第一虛擬機網(wǎng)關(guān)的MAC地址至所述第二物理網(wǎng)關(guān),以使得所述第二物理網(wǎng)關(guān)根據(jù)所述第一虛擬機網(wǎng)關(guān)的IP地址和所述第一虛擬機網(wǎng)關(guān)的MAC地址在所述第二物理網(wǎng)關(guān)上配置所述第二虛擬機網(wǎng)關(guān)。
4.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述軟件定義網(wǎng)絡(luò)SDN控制器獲取第一虛擬機網(wǎng)關(guān)的網(wǎng)際協(xié)議IP地址、所述第一虛擬機網(wǎng)關(guān)的媒體接入控制MAC地址和第二物理服務(wù)器的虛擬隧道終端節(jié)點VTEP IP地址,包括: 所述SDN控制器獲取虛擬機遷移信息,所述虛擬機遷移信息包括:所述虛擬機的IP地址、所述虛擬機的MAC地址和所述第二物理服務(wù)器的VTEP IP地址; 所述SDN控制器根據(jù)所述虛擬機的IP地址和所述虛擬機的MAC地址確定所述第一虛擬機網(wǎng)關(guān)的IP地址和所述第一虛擬機網(wǎng)關(guān)的MAC地址。
5.根據(jù)權(quán)利要求1-4中任一項所述的方法,其特征在于,在所述SDN控制器創(chuàng)建第一流表項之后,所述方法還包括: 刪除第二流表項,所述第二流表項中包含所述第一物理網(wǎng)關(guān)的VTEPIP地址、第一虛擬機網(wǎng)關(guān)的IP地址、所述第一虛擬機網(wǎng)關(guān)的MAC地址和所述虛擬機的IP地址之間的映射關(guān)系以及所述虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLAN ID。
6.根據(jù)權(quán)利要求4所述的方法,其特征在于,在所述SDN控制器創(chuàng)建第一流表項之前,所述SDN控制器獲取虛擬機遷移信息之后,所述方法還包括: 根據(jù)所述虛擬機的IP地址和所述虛擬機的MAC地址確定所述虛擬機的VxLAN ID。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,在所述創(chuàng)建第一流表項之后,所述方法還包括: 判斷所述虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),是否存在其他虛擬機使用所述第一虛擬機網(wǎng)關(guān); 若所述虛擬機的VxLAN ID所標識的網(wǎng)段內(nèi),不存在所述其他虛擬機使用所述第一虛擬機網(wǎng)關(guān),則控制所述第一物理網(wǎng)關(guān)刪除所述第一物理網(wǎng)關(guān)上配置的所述第一虛擬機網(wǎng)關(guān)。
8.一種軟件定義網(wǎng)絡(luò)SDN控制器,其特征在于,第一物理網(wǎng)關(guān)為第一物理服務(wù)器的物理網(wǎng)關(guān),第二物理網(wǎng)關(guān)為第二物理服務(wù)器的物理網(wǎng)關(guān),應(yīng)用于虛擬機由所述第一物理服務(wù)器遷移至所述第二物理服務(wù)器的過程中,所述SDN控制器包括: 獲取單元,用于獲取第一虛擬機網(wǎng)關(guān)的網(wǎng)際協(xié)議IP地址、所述第一虛擬機網(wǎng)關(guān)的媒體接入控制MAC地址和第二物理服務(wù)器的虛擬隧道終端節(jié)點VTEP IP地址,所述第一虛擬機網(wǎng)關(guān)為配置在所述第一物理網(wǎng)關(guān)上的所述虛擬機的虛擬機網(wǎng)關(guān); 配置單元,用于根據(jù)所述獲取單元獲取的所述第二物理服務(wù)器的VTEP IP地址,控制所述第二物理網(wǎng)關(guān)為所述虛擬機在所述第二物理網(wǎng)關(guān)上配置第二虛擬機網(wǎng)關(guān),所述第二虛擬機網(wǎng)關(guān)的IP地址與所述獲取單元獲取的所述第一虛擬機網(wǎng)關(guān)的IP地址相同,且所述第二虛擬機網(wǎng)關(guān)的MAC地址與所述獲取單元獲取的所述第一虛擬機網(wǎng)關(guān)的MAC地址相同; 創(chuàng)建單元,用于創(chuàng)建第一流表項,所述第一流表項中包含所述第二物理網(wǎng)關(guān)的VTEP IP地址、所述第二虛擬機網(wǎng)關(guān)的IP地址、所述第二虛擬機網(wǎng)關(guān)的MAC地址和所述虛擬機的IP地址之間的映射關(guān)系以及所述虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLAN ID ; 發(fā)送單元,用于發(fā)送創(chuàng)建單元創(chuàng)建的所述第一流表項至所述第二物理網(wǎng)關(guān),以使得所述第二物理網(wǎng)關(guān)根據(jù)所述第一流表項所指示的數(shù)據(jù)轉(zhuǎn)發(fā)策略為所述虛擬機轉(zhuǎn)發(fā)數(shù)據(jù),所述虛擬機的VxLAN ID用于標識所述虛擬機所在的網(wǎng)段。
9.根據(jù)權(quán)利要求8所述的SDN控制器,其特征在于,所述配置單元,包括: 第一確定子單元,用于根據(jù)所述第二物理服務(wù)器的VTEP IP地址確定所述第二物理網(wǎng)關(guān)的VTEP IP地址; 配置子單元,用于根據(jù)所述第一確定子單元確定的所述第二物理網(wǎng)關(guān)的VTEP IP地址,控制所述第二物理網(wǎng)關(guān)為所述虛擬機在所述第二物理網(wǎng)關(guān)上配置所述第二虛擬機網(wǎng)關(guān)。
10.根據(jù)權(quán)利要求8或9所述的SDN控制器,其特征在于,所述配置單元,具體用于根據(jù)所述第二物理網(wǎng)關(guān)的VTEP IP地址,發(fā)送所述第一虛擬機網(wǎng)關(guān)的IP地址和所述第一虛擬機網(wǎng)關(guān)的MAC地址至所述第二物理網(wǎng)關(guān),以使得所述第二物理網(wǎng)關(guān)根據(jù)所述第一虛擬機網(wǎng)關(guān)的IP地址和所述第一虛擬機網(wǎng)關(guān)的MAC地址在所述第二物理網(wǎng)關(guān)上配置所述第二虛擬機網(wǎng)關(guān)。
11.根據(jù)權(quán)利要求8或9所述的SDN控制器,其特征在于,所述獲取單元,包括: 獲取子單元,用于獲取虛擬機遷移信息,所述虛擬機遷移信息包括:所述虛擬機的IP地址、所述虛擬機的MAC地址和所述第二物理服務(wù)器的VTEP IP地址; 第二確定子單元,用于根據(jù)所述獲取子單元獲取的所述虛擬機的IP地址和所述虛擬機的MAC地址確定所述第一虛擬機網(wǎng)關(guān)的IP地址和所述第一虛擬機網(wǎng)關(guān)的MAC地址。
12.根據(jù)權(quán)利要求8-11中任一項所述的SDN控制器,其特征在于,還包括: 刪除單元,用于在所述創(chuàng)建單元創(chuàng)建所述創(chuàng)建第一流表項之后,刪除第二流表項,所述第二流表項中包含所述第一物理網(wǎng)關(guān)的VTEP IP地址、第一虛擬機網(wǎng)關(guān)的IP地址、所述第一虛擬機網(wǎng)關(guān)的MAC地址和所述虛擬機的IP地址之間的映射關(guān)系以及所述虛擬機的擴展虛擬局域網(wǎng)絡(luò)VxLAN ID0
13.根據(jù)權(quán)利要求11所述的SDN控制器,其特征在于,還包括: 確定單元,用于在所述創(chuàng)建單元創(chuàng)建所述第一流表項之前,所述獲取單元獲取所述虛擬機遷移信息之后,根據(jù)所述虛擬機的IP地址和所述虛擬機的MAC地址確定所述虛擬機的VxLAN ID。
14.根據(jù)權(quán)利要求10所述的SDN控制器,其特征在于,還包括: 判斷單元,用于在所述創(chuàng)建單元創(chuàng)建所述第一流表項之后,判斷所述虛擬機的VxLANID所標識的網(wǎng)段內(nèi),是否存在其他虛擬機使用所述第一虛擬機網(wǎng)關(guān); 所述刪除單元,還用于若所述判斷單元判斷得到所述虛擬機的VxLANID所標識的網(wǎng)段內(nèi),不存在所述其他虛擬機使用所述第一虛擬機網(wǎng)關(guān),則控制所述第一物理網(wǎng)關(guān)刪除所述第一物理網(wǎng)關(guān)上配置的所述第一虛擬機網(wǎng)關(guān)。
15.一種基于虛擬機遷移的網(wǎng)關(guān)控制系統(tǒng),其特征在于,第一物理網(wǎng)關(guān)為第一物理服務(wù)器的物理網(wǎng)關(guān),第二物理網(wǎng)關(guān)為第二物理服務(wù)器的物理網(wǎng)關(guān),應(yīng)用于虛擬機由所述第一物理服務(wù)器遷移至所述第二物理服務(wù)器的過程中,所述系統(tǒng)包括:軟件定義網(wǎng)絡(luò)SDN控制器、所述虛擬機、所述第一物理服務(wù)器、所述第一物理網(wǎng)關(guān)、第一虛擬機網(wǎng)關(guān)、所述第二物理服務(wù)器、所述第二物理網(wǎng)關(guān)和第二虛擬機網(wǎng)關(guān); 所述第一虛擬機網(wǎng)關(guān)為配置在所述第一物理網(wǎng)關(guān)上的所述虛擬機的虛擬機網(wǎng)關(guān);所述第二虛擬機網(wǎng)關(guān)為配置在所述第二物理網(wǎng)關(guān)上的所述虛擬機的虛擬機網(wǎng)關(guān); 所述SDN控制器,用于執(zhí)行如權(quán)利要求1-7中任一項所述的基于虛擬機遷移的網(wǎng)關(guān)控制方法; 第二物理網(wǎng)關(guān),用于根據(jù)所述SDN控制器的控制,在所述第二物理網(wǎng)關(guān)上配置所述第二虛擬機網(wǎng)關(guān); 其中,所述第二虛擬機網(wǎng)關(guān)的網(wǎng)際協(xié)議IP地址與所述第一虛擬機網(wǎng)關(guān)的IP地址相同,且所述第二虛擬機網(wǎng)關(guān)的MAC地址與所述第一虛擬機網(wǎng)關(guān)的媒體接入控制MAC地址相同。
【文檔編號】G06F9/48GK104243265SQ201410449715
【公開日】2014年12月24日 申請日期:2014年9月5日 優(yōu)先權(quán)日:2014年9月5日
【發(fā)明者】張辛波, 劉萬來 申請人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
军事| 荆州市| 依兰县| 锦州市| 沙河市| 阳江市| 泰顺县| 扶沟县| 上犹县| 浠水县| 武鸣县| 施秉县| 囊谦县| 漯河市| 芮城县| 宁海县| 甘泉县| 邹城市| 三门县| 郧西县| 深圳市| 大埔县| 恩平市| 浮梁县| 通化县| 渝北区| 昌邑市| 黄骅市| 新宾| 会同县| 油尖旺区| 吉林省| 临夏县| 安新县| 桦川县| 孟村| 沙坪坝区| 龙泉市| 富源县| 巨野县| 两当县|