一種虛擬可擴(kuò)展局域網(wǎng)的通信方法、裝置和系統(tǒng)的制作方法
【專利摘要】本發(fā)明實施例提出了一種虛擬可擴(kuò)展局域網(wǎng)的通信方法、裝置和系統(tǒng),發(fā)送端VTEP能夠攔截發(fā)送端虛擬機(jī)發(fā)送的無目的地址的廣播報文,并獲取與發(fā)送端屬于同一VxLAN網(wǎng)絡(luò)中的接收端VTEP的IP地址列表,根據(jù)接收端VTEP的IP地址將廣播報文封裝為單播報文,以單播報文的形式將原始報文發(fā)送到同一VxLAN網(wǎng)絡(luò)中的其他接收端VTEP,能夠避免VxLAN網(wǎng)絡(luò)中VTEP之間采用組播方式進(jìn)行通信,從而使得VxLAN網(wǎng)絡(luò)的構(gòu)建不再依賴于隧道終端的組播組數(shù)量或者能力,擴(kuò)展了VxLAN網(wǎng)絡(luò)的應(yīng)用。
【專利說明】一種虛擬可擴(kuò)展局域網(wǎng)的通信方法、裝置和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明實施例涉及通信技術(shù),特別是一種虛擬可擴(kuò)展局域網(wǎng)的通信方法、裝置和系統(tǒng)。
【背景技術(shù)】
[0002]隨著虛擬技術(shù)的廣泛應(yīng)用,數(shù)據(jù)中心網(wǎng)絡(luò)中的VLAN (Virtual Local AreaNetwork,虛擬局域網(wǎng))空間已經(jīng)不能滿足數(shù)據(jù)中心網(wǎng)絡(luò)對虛擬局域網(wǎng)的需求,虛擬可擴(kuò)展局域網(wǎng)(Virtual extensible Local Area Network, VXLAN)技術(shù)擴(kuò)展網(wǎng)絡(luò)虛擬化,用以得到足夠數(shù)量的虛擬網(wǎng)絡(luò),來滿足用戶使用。
[0003]VxLAN通過在源虛擬機(jī)端使用隧道端口技術(shù),在物理三層網(wǎng)絡(luò)上構(gòu)建虛擬化二層網(wǎng)絡(luò),在現(xiàn)有網(wǎng)絡(luò)架構(gòu)上創(chuàng)建大量的虛擬可擴(kuò)展局域網(wǎng),不同的虛擬可擴(kuò)展局域網(wǎng)使用VNI(VXLAN Network Identifier,虛擬可擴(kuò)展局域網(wǎng)網(wǎng)絡(luò)標(biāo)識符)進(jìn)行標(biāo)識,每個VNI最多可以包含4094個VLAN,擴(kuò)展了虛擬局域網(wǎng)的數(shù)量。
[0004]現(xiàn)有的VxLAN通信方式是,每個虛擬機(jī)所屬的隧道終端(VxLAN Tunnel Endpoint,VTEP)通過PIM (Protocol Independent Multicast,協(xié)議無關(guān)組播)組播方式,實現(xiàn)目的虛擬機(jī)的MAC地址和隧道終端IP地址的學(xué)習(xí),源虛擬機(jī)的VTEP接收到報文后,構(gòu)造因特網(wǎng)組管理協(xié)議(Internet Group Management Protocol, IGMP)報文,然后將該IGMP報文通過PIM組播方式發(fā)送至與目的VM對應(yīng)的目的VTEP,若該目的VTEP接收到該IGMP報文,則該目的VTE2會對該IGMP報文進(jìn)行解析,并將解析結(jié)果廣播至與目的VTEP對應(yīng)的目的VM中。由于隧道終端的PM組播規(guī)格比較小,一般支持500-2000個組播組,并且有的隧道終端可能還不支持P頂組播,而VxLAN在標(biāo)準(zhǔn)上可以支持16M個VNI,故現(xiàn)有的VxLAN網(wǎng)絡(luò)中,由于隧道終端組播組數(shù)量不足或者不支持組播,會導(dǎo)致創(chuàng)建的VNI數(shù)量受限,影響數(shù)據(jù)中心網(wǎng)絡(luò)中創(chuàng)建虛擬局域網(wǎng)的數(shù)量,并且隧道終端在虛擬局域網(wǎng)中采用組播方式進(jìn)行通信,需要使用較多的網(wǎng)絡(luò)流量,網(wǎng)絡(luò)資源占用較多。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實施例提出了一種虛擬可擴(kuò)展局域網(wǎng)的通信方法、裝置和系統(tǒng),能夠避免VxLAN網(wǎng)絡(luò)中VTEP之間采用組播方式進(jìn)行通信。
[0006]第一方面,本發(fā)明實施例提出了一種虛擬可擴(kuò)展局域網(wǎng)的通信方法,所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,所述方法包括:
[0007]發(fā)送端VTEP攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文;
[0008]所述發(fā)送端VTEP確定所述廣播報文是否無目的地址,如果確定所述廣播報文無目的地址,所述發(fā)送端VTEP從所述VxLAN集中控制器獲取所述VxLAN中的接收端VTEP的IP地址;
[0009]所述發(fā)送端VTEP根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述單播報文到所述接收端VTEP,以使得所述接收端VTEP向接收端廣播接收到的單播報文。
[0010]結(jié)合第一方面,在第一種可能的實現(xiàn)方式中,所述發(fā)送端VTEP向所述VxLAN集中控制器發(fā)送查詢請求;
[0011]所述發(fā)送端VTEP接收所述VxLAN集中控制器返回的查詢響應(yīng),所述查詢響應(yīng)攜帶所述VxLAN中的所有的VTEP的IP地址。
[0012]結(jié)合第一方面,在第二種可能的實現(xiàn)方式中,所述發(fā)送端VTEP從所述VxLAN集中控制器獲取所述VxLAN中的接收端VTEP的IP地址包括:
[0013]所述發(fā)送端VTEP向所述VxLAN集中控制器發(fā)送查詢請求;
[0014]所述發(fā)送端VTEP接收所述VxLAN集中控制器返回的查詢響應(yīng),所述查詢響應(yīng)攜帶所述VxLAN中的多個接收端VTEP的IP地址,所述多個接收端VTEP為所述VxLAN集中控制器根據(jù)所述廣播報文的類型或發(fā)送端VTEP的位置信息從所述VxLAN中的所有的VTEP中篩選出的。
[0015]結(jié)合第一方面或者第一方面的第一或二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述廣播報文為免費地址解析協(xié)議ARP廣播報文,所述方法還包括:
[0016]所述發(fā)送端VTEP向所述VxLAN的集中控制器上報所述免費ARP廣播報文攜帶的源IP地址和源媒體接入控制MAC地址。
[0017]結(jié)合第一方面或者第一方面的第一或二種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述廣播報文為DHCP廣播報文,所述方法還包括:
[0018]所述發(fā)送端VTEP攔截DHCP服務(wù)器對所述單播報文發(fā)送的響應(yīng)報文,所述響應(yīng)報文攜帶所述DHCP服務(wù)器為所述發(fā)送端虛擬機(jī)分配的IP地址和MAC地址,所述發(fā)送端VTEP向所述VxLAN的集中控制器上報所述發(fā)送端虛擬機(jī)新分配的所述IP地址和MAC地址。
[0019]第二方面,本發(fā)明實施例提出了一種手勢操作轉(zhuǎn)換方法,虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信方法,所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,所述方法包括:
[0020]所述VxLAN集中控制器接收發(fā)送端VTEP發(fā)送的查詢請求,所述查詢請求是所述發(fā)送端VTEP攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文,并確定所述廣播報文無目的地址之后向所述VxLAN集中控制器發(fā)送的,所述查詢請求攜帶所述發(fā)送端VTEP所在的VxLAN的標(biāo)識;[0021 ] 所述VxLAN集中控制器根據(jù)所述VxLAN的標(biāo)識,確定所述VxLAN中的接收端VTEP的IP地址;
[0022]所述VxLAN集中控制器向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述接收端VTEP的IP地址,以使得所述發(fā)送端VTEP根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述單播報文到所述接收端VTEP。
[0023]結(jié)合第二方面,在第一種可能的實現(xiàn)方式中,還包括:
[0024]所述VxLAN集中控制器預(yù)先配置所述VxLAN網(wǎng)絡(luò)的標(biāo)識與所述VxLAN網(wǎng)絡(luò)中所有的VTEP的IP地址的對應(yīng)關(guān)系;
[0025]相應(yīng)地,所述VxLAN集中控制器根據(jù)所述VxLAN的標(biāo)識查詢所述對應(yīng)關(guān)系,確定所述VxLAN中的所有的VTEP的IP地址,向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述所有的VTEP的IP地址。
[0026]結(jié)合第二方面,在第二種可能的實現(xiàn)方式中,還包括:[0027]所述VxLAN集中控制器確定所述廣播報文的類型,根據(jù)所述廣播報文的類型或發(fā)送端VTEP的位置信息從所述VxLAN中的所有的VTEP中篩選出多個接收端VTEP。
[0028]結(jié)合第二方面或者第二方面的第一或二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,還包括:
[0029]所述廣播報文為免費ARP廣播報文,所述方法還包括:
[0030]所述VxLAN集中控制器接收所述發(fā)送端VTEP上報的所述免費ARP廣播報文攜帶的源IP地址和源媒體接入控制MAC地址;
[0031]所述VxLAN集中控制器保存所述源IP地址和MAC地址。
[0032]結(jié)合第二方面或第二方面的第一或二種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,還包括:
[0033]所述廣播報文為DHCP廣播報文,所述方法還包括:
[0034]所述VxLAN集中控制器接收所述發(fā)送端VTEP上報的DHCP服務(wù)器為所述發(fā)送端虛擬機(jī)分配的IP地址和媒體接入控制MAC地址;
[0035]所述VxLAN集中控制器保存所述發(fā)送端虛擬機(jī)新分配的IP地址和MAC地址。
[0036]第三方面,本發(fā)明實施例提出了一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信系統(tǒng),所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,每個VTEP與其所管轄的至少一個虛擬機(jī)組成所述VxLAN中的一個子網(wǎng)絡(luò);
[0037]發(fā)送端VTEP用于攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文,確定所述廣播報文是否無目的地址,如果確定所述廣播報文無目的地址,從所述VxLAN集中控制器獲取所述VxLAN中的接收端VTEP的IP地址,根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述單播報文到所述接收端VTEP ;
[0038]所述VxLAN集中控制器用于接收所述發(fā)送端VTEP發(fā)送的查詢請求,確定所述VxLAN中的所述接收端VTEP的IP地址,向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述接收端VTEP的IP地址;
[0039]所述接收端VTEP用于接收所述發(fā)送端VTEP發(fā)送的單播報文,向接收端廣播接收到的所述單播報文。
[0040]第四方面,本發(fā)明實施例提出了一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信裝置,所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,所述VTEP包括:
[0041]攔截單元,用于攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文;
[0042]確定單元,用于確定所述廣播報文是否無目的地址,如果確定所述廣播報文無目的地址,從所述VxLAN集中控制器獲取所述VxLAN中的接收端VTEP的IP地址;
[0043]發(fā)送單元,用于根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并分別發(fā)送所述單播報文到所述接收端VTEP,以使得所述接收端VTEP向接收端廣播接收到的單播報文。
[0044]第五方面,本發(fā)明實施例提出了一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信裝置,所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,所述VxLAN集中控制器包括:
[0045]接收單元,用于接收發(fā)送端VTEP發(fā)送的查詢請求,所述查詢請求是所述發(fā)送端VTEP攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文,并確定所述廣播報文無目的地址之后向所述VxLAN集中控制器發(fā)送的,所述查詢請求攜帶所述發(fā)送端VTEP所在的VxLAN的標(biāo)識;
[0046]確定單元,用于根據(jù)所述VxLAN的標(biāo)識,確定所述VxLAN中的接收端VTEP的IP地址;
[0047]發(fā)送單元,用于向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述接收端VTEP的IP地址,以使得所述發(fā)送端VTEP根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述單播報文到所述接收端VTEP。
[0048]本發(fā)明實施例提供的方法、裝置和系統(tǒng),發(fā)送端VTEP能夠攔截發(fā)送端虛擬機(jī)發(fā)送的無目的地址的廣播報文,并獲取與發(fā)送端屬于同一 VxLAN網(wǎng)絡(luò)中的接收端VTEP的IP地址列表,根據(jù)接收端VTEP的IP地址將廣播報文封裝為單播報文,以單播報文的形式將原始報文發(fā)送到同一 VxLAN網(wǎng)絡(luò)中的其他接收端VTEP,能夠避免VxLAN網(wǎng)絡(luò)中VTEP之間采用組播方式進(jìn)行通信,從而使得VxLAN網(wǎng)絡(luò)的構(gòu)建不再依賴于隧道終端的組播組數(shù)量或者能力,擴(kuò)展了 VxLAN網(wǎng)絡(luò)的應(yīng)用。
【專利附圖】
【附圖說明】
[0049]為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0050]圖1是本發(fā)明實施例數(shù)據(jù)中心網(wǎng)絡(luò)的組成圖;
[0051]圖2是根據(jù)本發(fā)明實施例提供的一種方法流程圖;
[0052]圖3是根據(jù)本發(fā)明實施例提供的又一種方法流程圖;
[0053]圖4是根據(jù)本發(fā)明實施例提供的又一種方法流程圖;
[0054]圖5是根據(jù)本發(fā)明實施例提供的一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信裝置的組成圖;
[0055]圖6是根據(jù)本發(fā)明實施例提供的又一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信裝置的組成圖;
[0056]圖7是根據(jù)本發(fā)明實施例提供的一種計算機(jī)的組成圖。
【具體實施方式】
[0057]本發(fā)明實施例提出了一種虛擬可擴(kuò)展局域網(wǎng)的通信方法、裝置和系統(tǒng),能夠避免VxLAN網(wǎng)絡(luò)中VTEP之間采用組播方式進(jìn)行通信,從而使得VxLAN網(wǎng)絡(luò)的構(gòu)建不再依賴于隧道終端的組播組數(shù)量或者能力,擴(kuò)展了 VxLAN網(wǎng)絡(luò)的應(yīng)用。
[0058]如圖1所示為本發(fā)明實施例提供的數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)圖,圖1中物理服務(wù)器1-4和交換端點I (包含VTEPl)、交換端點2 (包含VTEP2)和交換端點3 (包含VTEP3)位于一個VxLAN網(wǎng)絡(luò),物理服務(wù)器2和3中分別包含了多臺虛擬機(jī),物理服務(wù)器2中抽象出虛擬機(jī)
1、2和3,物理服務(wù)器3中抽象出虛擬機(jī)4、5和6,物理服務(wù)器4是一臺動態(tài)主機(jī)配置協(xié)議(Dynamic Host Configuration Protocol,DHCP)服務(wù)器,用于為網(wǎng)絡(luò)中的節(jié)點動態(tài)分配IP地址。交換設(shè)備1、物理服務(wù)器I和物理服務(wù)器2中的虛擬機(jī)構(gòu)成所述VxLAN網(wǎng)絡(luò)的一個子網(wǎng)絡(luò),交換設(shè)備2和物理服務(wù)器3中的虛擬機(jī)構(gòu)成所述VxLAN網(wǎng)絡(luò)的另一個子網(wǎng)絡(luò),交換設(shè)備3和物理服務(wù)器4構(gòu)成所述VxLAN網(wǎng)絡(luò)的另一個子網(wǎng)絡(luò)。每個交換設(shè)備上的VTEP用于為其所屬的VxLAN子網(wǎng)絡(luò)中的各個主機(jī)節(jié)點提供封裝以及解封裝能力,并記錄每個主機(jī)節(jié)點所屬的VxLAN網(wǎng)絡(luò)的標(biāo)識。本實施例中,當(dāng)VTEP所在子網(wǎng)絡(luò)中的主機(jī)節(jié)點均為虛擬機(jī)時,每個VTEP管轄其所在子網(wǎng)絡(luò)中的虛擬機(jī)。
[0059]本發(fā)明實施例中VxLAN網(wǎng)絡(luò)中還設(shè)置有一 VxLAN集中控制器,該集中控制器中保存VxLAN網(wǎng)絡(luò)中各個主機(jī)節(jié)點(本發(fā)明實施例的主機(jī)節(jié)點可以是物理機(jī),也可以是虛擬機(jī))所在的虛擬可擴(kuò)展局域網(wǎng)的標(biāo)識VNI,各主機(jī)節(jié)點的地址與其對應(yīng)的VTEP地址的對應(yīng)關(guān)系,所述的地址可以是IP地址和/或媒體接入控制MAC地址。當(dāng)主機(jī)節(jié)點啟動時,各主機(jī)節(jié)點的MAC地址與其對應(yīng)的VTEP的IP地址的對應(yīng)關(guān)系會更新到VxLAN集中控制器上。當(dāng)主機(jī)節(jié)點需要與其它主機(jī)節(jié)點通信時,主機(jī)節(jié)點所在交換設(shè)備通過查詢VxLAN集中控制器,獲得目的主機(jī)的MAC地址,以及目的主機(jī)所在交換設(shè)備的VTEP的IP和MAC地址,從而實現(xiàn)通信。進(jìn)一步,VxLAN集中控制器還可以記錄每個主機(jī)節(jié)點的IP地址與MAC地址的對應(yīng)關(guān)系。
[0060]本發(fā)明實施例中,以主機(jī)節(jié)點為虛擬機(jī)的形式為例。
[0061]由于虛擬化場景中,虛擬機(jī)會經(jīng)常動態(tài)遷移,如果跨二層遷移,需要修改虛擬機(jī)的IP地址。虛擬機(jī)IP地址的動態(tài)變化,會產(chǎn)生一些無目的地址的廣播報文,例如DHCP廣播報文,用于請求發(fā)生了遷移的DHCP服務(wù)器為發(fā)生了遷移的虛擬機(jī)分配新的IP地址,或者免費地址解析協(xié)議(Address Resolution Protocol, APR)廣播報文,用于通知同一 VxLAN網(wǎng)絡(luò)中的其他主機(jī)節(jié)點本端改變后的地址。對于此類無目的地址的廣播報文,如果按照現(xiàn)有技術(shù)采用組播的方式進(jìn)行發(fā)送,會遇到隧道終端組播組數(shù)量不足或者不支持組播的問題,本發(fā)明實施例能夠?qū)o目的地址的廣播報文轉(zhuǎn)換為單播報文進(jìn)行轉(zhuǎn)發(fā)。
[0062]結(jié)合圖1所示系統(tǒng),如圖2所示,本發(fā)明實施例所提供的虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信方法包括:
[0063]S201:發(fā)送端VTEP攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文;
[0064]具體地,當(dāng)虛擬機(jī)I發(fā)送無目的地址的廣播報文后,所述虛擬機(jī)I所在子網(wǎng)絡(luò)的VTEPl接收到所述廣播報文之后,不再采用組播方式發(fā)送所述廣播報文。
[0065]S202:所述發(fā)送端VTEP確定所述廣播報文是否無目的地址,如果確定所述廣播報文無目的地址,所述發(fā)送端VTEP從所述VxLAN集中控制器獲取所述VxLAN中的接收端VTEP的IP地址;
[0066]具體地,VTEPl向VxLAN集中控制器發(fā)送查詢請求,所述查詢請求攜帶所述虛擬機(jī)I所在的VxLAN網(wǎng)絡(luò)的標(biāo)識VNI,VxLAN集中控制器根據(jù)所述VNI,獲取所述VxLAN網(wǎng)絡(luò)中的接收端VTEP的IP地址列表,并將所述接收端VTEP的IP地址列表返回給所述VTEPl。
[0067]優(yōu)選地,所述VxLAN控制器可以確定VxLAN網(wǎng)絡(luò)中的多個接收端VTEP的IP地址列表,并將所述多個接收端VTEP的IP地址列表返回給所述VTEPl
[0068]優(yōu)選地,所述VxLAN網(wǎng)絡(luò)中的多個接收端VTEP可以比較靈活,例如可以是所述VxLAN網(wǎng)絡(luò)中的所有的VTEP,或者是集中控制器中記錄的VTEP,或者是集中控制器確定的當(dāng)前處于激活狀態(tài)的VTEP,或者是集中控制器根據(jù)預(yù)設(shè)選擇策略確定的位置與源虛擬機(jī)所在的VTEP接近的VTEP等等,或者是根據(jù)廣播報文的類型篩選的VTEP。
[0069]S203:所述發(fā)送端VTEP根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述多個單播報文到接收端VTEP,以使得所述接收端VTEP向接收端廣播接收到的單播報文。[0070]優(yōu)選地,若返回多個接收端VTEP的地址,所述發(fā)送端VTEP根據(jù)所述多個接收端VTEP的IP地址,將所述廣播報文封裝為多個單播報文,并分別發(fā)送所述多個單播報文到每個接收端VTEP,以使得所述每個接收端VTEP向接收端廣播接收到的單播報文。
[0071]具體地,VTEPl將所述廣播報文的內(nèi)容和每個接收端VTEP的IP地址封裝為一個單播報文,每個單播報文對應(yīng)一個接收端VTEP,并分別向每個接收端VTEP發(fā)送每個接收端VTEP地址對應(yīng)的所述單播報文,每個接收端VTEP接收到所述單播報文后,會向其所在的子網(wǎng)絡(luò)中的各主機(jī)節(jié)點廣播所述單播報文。
[0072]本發(fā)明實施例中,發(fā)送端VTEP能夠攔截發(fā)送端虛擬機(jī)發(fā)送的無目的地址的廣播報文,并獲取與發(fā)送端屬于同一 VxLAN網(wǎng)絡(luò)中的接收端VTEP的IP地址列表,根據(jù)接收端VTEP的IP地址將廣播報文封裝為單播報文,以單播報文的形式將原始報文發(fā)送到同一VxLAN網(wǎng)絡(luò)中的其他接收端VTEP,能夠避免VxLAN網(wǎng)絡(luò)中VTEP之間采用組播方式進(jìn)行通信,從而使得VxLAN網(wǎng)絡(luò)的構(gòu)建不再依賴于隧道終端的組播組數(shù)量或者能力,擴(kuò)展了 VxLAN網(wǎng)絡(luò)的應(yīng)用。
[0073]另外,當(dāng)所述集中控制器返回的多個接收端VTEP的IP地址列表為所述VxLAN網(wǎng)絡(luò)中所有VTEP的IP地址列表時,可以保證發(fā)送的應(yīng)該接收廣播報文的接收端,保證收發(fā)的準(zhǔn)確性。當(dāng)所述VxLAN集中控制器進(jìn)一步對所述廣播報文進(jìn)行解析,并根據(jù)解析結(jié)果和一定的預(yù)設(shè)選擇策略選擇多個接收端VTEP時,例如根據(jù)位置信息、激活信息、廣播報文的類型等進(jìn)行選擇接收端VTEP,保證了廣播變更為單播后,有目的的進(jìn)行單播發(fā)送,避免了資源的浪費。
[0074]如圖3所示,所述廣播報文為動態(tài)主機(jī)配置協(xié)議廣播DHCP報文,當(dāng)虛擬機(jī)I發(fā)生遷移后,虛擬機(jī)I發(fā)起DHCP廣播報文,以請求網(wǎng)絡(luò)中的DHCP服務(wù)器為其分配新的IP地址,本發(fā)明實施例所提供的虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信方法包括:
[0075]S300:在VxLAN集中控制器中預(yù)先配置VxLAN網(wǎng)絡(luò)對應(yīng)的VTEP ;
[0076]具體地,在VxLAN集中控制器中預(yù)先預(yù)先配置所述VxLAN網(wǎng)絡(luò)的標(biāo)識與所述VxLAN網(wǎng)絡(luò)中所有的VTEP的IP地址的對應(yīng)關(guān)系。
[0077]S301:虛擬機(jī)I發(fā)起DHCP廣播報文,接收端VTEPl攔截該DHCP廣播報文,所述DHCP廣播報文不包含目的IP地址;
[0078]具體地,當(dāng)虛擬機(jī)I發(fā)送無目的地址的廣播報文后,所述虛擬機(jī)I所在子網(wǎng)絡(luò)的VTEPI接收到所述廣播報文之后,不再采用組播方式發(fā)送所述廣播報文,本發(fā)明實施例稱之為“攔截廣播報文”。
[0079]S302:發(fā)送端VTEPl確定所述DHCP廣播請求報文是否包含目的IP地址,如果所述DHCP廣播請求報文不包含所述目的IP地址,從VxLAN集中控制器獲取所述虛擬機(jī)I所在的虛擬可擴(kuò)展局域網(wǎng)絡(luò)中的接收端VTEP的IP地址,即DHCP服務(wù)器所在子網(wǎng)絡(luò)的VTEP3 ;
[0080]具體地,發(fā)送端VTEPl向VxLAN集中控制器發(fā)送查詢請求,所述查詢請求攜帶所述虛擬機(jī)I所在的VxLAN網(wǎng)絡(luò)的標(biāo)識VNI,VxLAN集中控制器根據(jù)所述VNI,查詢預(yù)先配置的對應(yīng)關(guān)系,獲取所述對應(yīng)關(guān)系中保存的所述VxLAN網(wǎng)絡(luò)中的所有的VTEP的IP地址列表。
[0081]VxLAN集中控制器可以將所述對應(yīng)關(guān)系中配置的所有的VTEP的IP地址列表都返回給VTEPl ;VxLAN集中控制器還可以進(jìn)一步分析所述發(fā)送端VTEPl的位置信息(例如分析VTEPl的IP地址),確定與所述發(fā)送端VTEPl位置接近的接收端VTEP,并將確定的與所述發(fā)送端VTEPl位置接近的接收端VTEP的IP地址列表返回給發(fā)送端VTEPl ;VxLAN集中控制器還可以進(jìn)一步分析所述廣播報文的類型,根據(jù)所述廣播報文的類型進(jìn)一步篩選獲得接收端VTEP,并將篩選得到的接收端VTEP的IP地址列表返回給所述發(fā)送端VTEPl,在本實施例中,VxLAN集中控制器分析所述DHCP廣播報文請求,篩選得到管轄所述VxLAN網(wǎng)絡(luò)中的DHCP服務(wù)器的接收端VTEP3,并將篩選得到的接收端VTEP3的IP地址返回給VTEPl。
[0082]S303:發(fā)送端VTEPl根據(jù)所述DHCP服務(wù)器所在的VTEP3的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述單播報文到所述DHCP服務(wù)器所在的VTEP3。
[0083]S304 =DHCP服務(wù)器所在的VTEP3將所述DHCP報文請求轉(zhuǎn)發(fā)給所述DHCP服務(wù)器,DHCP服務(wù)器所在的接收端VTEP接收DHCP報文響應(yīng)消息,所述DHCP報文響應(yīng)消息攜帶所述DHCP服務(wù)器為發(fā)送端虛擬機(jī)新分配的IP地址以及所述發(fā)送端虛擬機(jī)的MAC地址,并將接收到的DHCP報文響應(yīng)消息轉(zhuǎn)發(fā)給VTEPl。
[0084]S305:發(fā)送端VTEPl接收DHCP服務(wù)器發(fā)送的DHCP報文響應(yīng)消息,所述DHCP報文響應(yīng)消息中攜帶的DHCP服務(wù)器分配的發(fā)送端虛擬機(jī)的IP地址和MAC地址。
[0085]S306:發(fā)送端VTEPl攔截所述DHCP報文響應(yīng)消息,并將所述發(fā)送端虛擬機(jī)的IP地址和MAC地址上報給VxLAN集中控制器,以使得VxLAN集中控制器對所述發(fā)送端虛擬機(jī)的IP地址和MAC地址進(jìn)行保存。
[0086]S307:發(fā)送端VTEPl向虛擬機(jī)I返回DHCP報文響應(yīng)消息,以告知所述虛擬機(jī)I新分配的IP地址。
[0087]本發(fā)明實施例中,發(fā)送端VTEPl能夠攔截發(fā)送端虛擬機(jī)發(fā)送的無目的地址的DHCP廣播報文請求,并獲取與發(fā)送端屬于同一 VxLAN網(wǎng)絡(luò)中的接收端VTEP的IP地址,根據(jù)接收端VTEP的IP地址將廣播報文封裝為單播報文,以單播報文的形式將原始報文發(fā)送到管轄DHCP服務(wù)器的接收端VTEP,能夠避免VxLAN網(wǎng)絡(luò)中VTEP之間采用組播方式進(jìn)行通信,從而使得VxLAN網(wǎng)絡(luò)的構(gòu)建不再依賴于隧道終端的組播組數(shù)量或者能力,擴(kuò)展了 VxLAN網(wǎng)絡(luò)的應(yīng)用。進(jìn)一步,本實施例中,發(fā)送端VTEPl還可以攔截DHCP報文響應(yīng)消息,并將所述報文響應(yīng)消息攜帶的發(fā)送端虛擬機(jī)的IP地址和MAC地址上報給VxLAN集中控制器進(jìn)行保存,使得VxLAN集中控制器保存了更新的信息,保證信息的準(zhǔn)確性并保障了后續(xù)通信的高效進(jìn)行。
[0088]如圖4所示,所述廣播報文為免費ARP廣播報文,當(dāng)虛擬機(jī)I發(fā)生遷移后,虛擬機(jī)I發(fā)起DHCP廣播報文并獲取了新的IP地址,虛擬機(jī)I發(fā)起免費ARP報文,所述免費ARP報文中攜帶虛擬機(jī)I的MAC地址與新分配的IP地址以通知其他主機(jī)節(jié)點,本發(fā)明實施例所提供的虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信方法包括:
[0089]S400:在VxLAN集中控制器中預(yù)先為VxLAN網(wǎng)絡(luò)配置其對應(yīng)的VTEP ;
[0090]具體地,在VxLAN集中控制器中預(yù)先配置VxLAN網(wǎng)絡(luò)的VNI標(biāo)識與該VxLAN網(wǎng)絡(luò)中配置的VTEP的IP地址的對應(yīng)關(guān)系。
[0091]S401:發(fā)送端虛擬機(jī)I發(fā)起免費ARP廣播報文,發(fā)送端VTEPl攔截該免費ARP廣播報文,所述免費ARP廣播報文包含源IP地址和源MAC地址,但不包含目的IP地址;
[0092]具體地,當(dāng)發(fā)送端虛擬機(jī)I發(fā)送無目的地址的廣播請求報文后,所述發(fā)送端虛擬機(jī)I所在子網(wǎng)絡(luò)的VTEPl接收到所述廣播請求報文之后,不再采用組播方式發(fā)送所述廣播請求報文,本發(fā)明實施例稱之為“攔截廣播報文”。
[0093]S402:發(fā)送端VTEPl確定所述免費ARP廣播報文包含源地址但不目的地址,將所述源IP地址和源MAC地址上報給所述VxLAN集中控制器;
[0094]具體地,發(fā)送端VTEPl將所述源IP地址和源MAC地址上報給所述VxLAN集中控制器,以使得所述VxLAN集中控制器建立所述所述源IP地址和源MAC地址的對應(yīng)關(guān)系,并保存所述對應(yīng)關(guān)系。
[0095]S403:發(fā)送端VTEPl從VxLAN集中控制器獲取所述虛擬機(jī)I所在的虛擬可擴(kuò)展局域網(wǎng)絡(luò)中的多個VTEP的IP地址;
[0096]具體地,發(fā)送端VTEPl向VxLAN集中控制器發(fā)送查詢請求,所述查詢請求攜帶所述發(fā)送端虛擬機(jī)I所在的VxLAN網(wǎng)絡(luò)的標(biāo)識VNI,VxLAN集中控制器根據(jù)所述VNI,查詢預(yù)先配置的對應(yīng)關(guān)系,獲取所述對應(yīng)關(guān)系中保存的所述VxLAN網(wǎng)絡(luò)中的已經(jīng)配置的VTEP的IP地址列表。本實施例中VxLAN集中控制器可以將所述對應(yīng)關(guān)系中配置的所有的VTEP的IP地址列表都返回給發(fā)送端VTEPl。
[0097]S404:發(fā)送端VTEPl將所述免費ARP廣播報文封裝為單播報文,并分別向所述多個接收端VTEP中的每個接收端VTEP發(fā)送所述單播報文。
[0098]具體地,VTEPl將所述免費ARP廣播報文的內(nèi)容和每個接收端VTEP的IP地址封裝為一個單播報文,每個單播報文對應(yīng)一個接收端VTEP,并分別向每個接收端VTEP發(fā)送每個接收端VTEP地址對應(yīng)的所述單播報文,每個接收端VTEP接收到所述單播報文后,會向其所在的子網(wǎng)絡(luò)中的各主機(jī)節(jié)點廣播所述單播報文。
[0099]S405:所述每個接收端VTEP中將所述單播報文廣播發(fā)送給自身管轄的虛擬機(jī),以通知自身管轄的虛擬機(jī)所述虛擬機(jī)I的新的IP地址和MAC地址。
[0100]本發(fā)明實施例中,發(fā)送端VTEPl能夠攔截虛擬機(jī)發(fā)送的無目的地址的免費ARP廣播報文,并獲取與發(fā)送端屬于同一 VxLAN網(wǎng)絡(luò)中的所有VTEP的IP地址,根據(jù)VTEP的IP地址將廣播報文封裝為單播報文,以單播報文的形式將原始報文發(fā)送到所有的VTEP,能夠避免VxLAN網(wǎng)絡(luò)中VTEP之間采用組播方式進(jìn)行通信,從而使得VxLAN網(wǎng)絡(luò)的構(gòu)建不再依賴于隧道終端的組播組數(shù)量或者能力,擴(kuò)展了 VxLAN網(wǎng)絡(luò)的應(yīng)用。進(jìn)一步,本實施例中,發(fā)送端VTEPl還可以將所述免費ARP廣播報文攜帶的虛擬機(jī)I的IP地址和MAC地址上報給VxLAN集中控制器,使得VxLAN集中控制器可以獲取最新的虛擬機(jī)的IP地址和MAC地址的對應(yīng)關(guān)系并進(jìn)行保存,保證VxLAN集中控制器信息的準(zhǔn)確性,使得后續(xù)流程不受到影響,保證通信效率。
[0101]如圖5所示,本發(fā)明實施例提供的一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的VTEP,所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,所述VTEP50包括:
[0102]攔截單元501,用于攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文;
[0103]確定單元503,用于確定所述廣播報文是否無目的地址,如果確定所述廣播報文無目的地址,從所述VxLAN集中控制器獲取所述VxLAN中的接收端VTEP的IP地址;
[0104]發(fā)送單元505,用于根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述單播報文到所述接收端VTEP,以使得所述接收端VTEP向接收端廣播接收到的單播報文。
[0105]當(dāng)所述廣播報文為免費地址解析協(xié)議ARP廣播報文,所述發(fā)送單元505還用于向所述VxLAN的集中控制器上報所述免費ARP廣播報文攜帶的源IP地址和源媒體接入控制MAC地址。[0106]當(dāng)所述廣播報文為動態(tài)主機(jī)配置協(xié)議廣播DHCP報文,所述攔截單元501還用于攔截DHCP服務(wù)器對所述單播報文發(fā)送的響應(yīng)報文,所述響應(yīng)報文攜帶所述DHCP服務(wù)器為所述發(fā)送端虛擬機(jī)分配的IP地址和MAC地址;所述發(fā)送單元505還用于向所述VxLAN的集中控制器上報所述攔截單元獲取的所述發(fā)送端虛擬機(jī)新分配的所述IP地址和MAC地址。
[0107]如圖6所示,本發(fā)明實施例提供的一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的VxLAN集中控制器,所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,所述VxLAN集中控制器60包括:
[0108]接收單元601,用于接收發(fā)送端VTEP發(fā)送的查詢請求,所述查詢請求是所述發(fā)送端VTEP攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文,并確定所述廣播報文無目的地址之后向所述VxLAN集中控制器發(fā)送的,所述查詢請求攜帶所述發(fā)送端VTEP所在的VxLAN的標(biāo)識;
[0109]確定單元603,用于根據(jù)所述VxLAN的標(biāo)識,確定所述VxLAN中的接收端VTEP的IP地址;
[0110]發(fā)送單元605,用于向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述接收端VTEP的IP地址,以使得所述發(fā)送端VTEP根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述單播報文到所述接收端VTEP。
[0111]所述VxLAN集中控制器還包括配置單元607,用于預(yù)先配置所述VxLAN網(wǎng)絡(luò)的標(biāo)識與所述VxLAN網(wǎng)絡(luò)中所有的VTEP的IP地址的對應(yīng)關(guān)系;
[0112]則,所述確定單元603具體用于根據(jù)所述發(fā)送端虛擬機(jī)所在的VxLAN標(biāo)識查詢所述對應(yīng)關(guān)系,確定所述VxLAN中的所有的VTEP的IP地址;所述發(fā)送單元605具體用于向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述所有的VTEP的IP地址。
[0113]優(yōu)選地,所述確定單元603還用于確定所述廣播報文的類型,根據(jù)所述廣播報文的類型或發(fā)送端VTEP的位置信息從所述VxLAN中的所有的VTEP中篩選出多個接收端VTEP0
[0114]進(jìn)一步,所述廣播報文為免費地址解析協(xié)議ARP廣播報文,所述接收單元601還用于接收并保存所述發(fā)送端VTEP上報的所述免費ARP廣播報文攜帶的源IP地址和源媒體接入控制MAC地址;或者,
[0115]所述廣播報文為動態(tài)主機(jī)配置協(xié)議廣播DHCP報文,所述接收單元601還用于接收并保存所述發(fā)送端VTEP上報的DHCP服務(wù)器為所述發(fā)送端虛擬機(jī)分配的IP地址和媒體接入控制MAC地址。
[0116]結(jié)合圖1,本發(fā)明實施例提供一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信系統(tǒng),所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,每個VTEP與其所管轄的至少一個虛擬機(jī)組成所述VxLAN中的一個子網(wǎng)絡(luò);
[0117]發(fā)送端VTEP用于攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文,確定所述廣播報文是否無目的地址,如果確定所述廣播報文無目的地址,從所述VxLAN集中控制器獲取所述VxLAN中的接收端VTEP的IP地址,根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述單播報文到所述接收端VTEP ;
[0118]所述VxLAN集中控制器用于接收所述發(fā)送端VTEP發(fā)送的查詢請求,確定所述VxLAN中的接收端VTEP的IP地址,向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述接收端VTEP的IP地址;[0119]所述接收端VTEP用于接收所述發(fā)送端VTEP發(fā)送的單播報文,向接收端廣播接收到的所述單播報文。
[0120]進(jìn)一步,所述VxLAN集中控制器還用于預(yù)先配置所述VxLAN網(wǎng)絡(luò)的標(biāo)識與所述VxLAN網(wǎng)絡(luò)中所有的VTEP的IP地址的對應(yīng)關(guān)系;
[0121]則,所述VxLAN集中控制器具體用于根據(jù)所述發(fā)送端虛擬機(jī)所在的VxLAN標(biāo)識查詢所述對應(yīng)關(guān)系,確定所述VxLAN中的所有的VTEP的IP地址,向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述所有的VTEP的IP地址。
[0122]進(jìn)一步,所述VxLAN集中控制器還用于確定所述廣播報文的類型,根據(jù)所述廣播報文的類型或發(fā)送端VTEP的位置信息從所述VxLAN中的所有的VTEP中篩選出多個接收端VTEP0
[0123]優(yōu)選地,所述廣播報文為免費地址解析協(xié)議ARP廣播報文,所述發(fā)送端VTEP還用于向所述VxLAN的集中控制器上報所述免費ARP廣播報文攜帶的源IP地址和源媒體接入控制MAC地址;所述VxLAN集中控制器用于接收并保存所述所述源IP地址和MAC地址。
[0124]優(yōu)選地,所述廣播報文為動態(tài)主機(jī)配置協(xié)議廣播DHCP報文;所述發(fā)送端VTEP還用于攔截DHCP服務(wù)器對所述單播報文發(fā)送的響應(yīng)報文,所述響應(yīng)報文攜帶所述DHCP服務(wù)器為所述發(fā)送端虛擬機(jī)分配的IP地址和MAC地址,向所述VxLAN的集中控制器上報所述發(fā)送端虛擬機(jī)新分配的所述IP地址和MAC地址;所述VxLAN集中控制器還用于接收并保存所述發(fā)送端虛擬機(jī)新分配的IP地址和MAC地址。
[0125]如圖7,為本發(fā)明實施例的計算機(jī)的結(jié)構(gòu)組成示意圖。本發(fā)明實施例的計算機(jī)可包括:
[0126]處理器701、存儲器702、系統(tǒng)總線704和通信接口 705。CPU701、存儲器702和通信接口 705之間通過系統(tǒng)總線704連接并完成相互間的通信。
[0127]處理器701可能為單核或多核中央處理單元,或者為特定集合成電路,或者為被配置成實施本發(fā)明實施例的一個或多個集合成電路。
[0128]存儲器702可以為高速RAM存儲器,也可以為非易失性存儲器(non-volatilememory),例如至少一個磁盤存儲器。
[0129]存儲器702用于計算機(jī)執(zhí)行指令703。具體的,計算機(jī)執(zhí)行指令703中可以包括程序代碼。
[0130]當(dāng)計算機(jī)運行時,處理器701運行計算機(jī)執(zhí)行指令703,可以執(zhí)行本發(fā)明實施例任意一個實施例所提供的方法。
[0131]本領(lǐng)域普通技術(shù)人員將會理解,本發(fā)明的各個方面、或各個方面的可能實現(xiàn)方式可以被具體實施為系統(tǒng)、方法或者計算機(jī)程序產(chǎn)品。因此,本發(fā)明的各方面、或各個方面的可能實現(xiàn)方式可以采用完全硬件實施例、完全軟件實施例(包括固件、駐留軟件等等),或者組合軟件和硬件方面的實施例的形式,在這里都統(tǒng)稱為“電路”、“模塊”或者“系統(tǒng)”。此夕卜,本發(fā)明的各方面、或各個方面的可能實現(xiàn)方式可以采用計算機(jī)程序產(chǎn)品的形式,計算機(jī)程序產(chǎn)品是指存儲在計算機(jī)可讀介質(zhì)中的計算機(jī)可讀程序代碼。
[0132]計算機(jī)可讀介質(zhì)可以是計算機(jī)可讀信號介質(zhì)或者計算機(jī)可讀存儲介質(zhì)。計算機(jī)可讀存儲介質(zhì)包含但不限于電子、磁性、光學(xué)、電磁、紅外或半導(dǎo)體系統(tǒng)、設(shè)備或者裝置,或者前述的任意適當(dāng)組合,如隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、可擦除可編程只讀存儲器(EPROM或者快閃存儲器)、光纖、便攜式只讀存儲器(CD-ROM)。
[0133]計算機(jī)中的處理器讀取存儲在計算機(jī)可讀介質(zhì)中的計算機(jī)可讀程序代碼,使得處理器能夠執(zhí)行在流程圖中每個步驟、或各步驟的組合中規(guī)定的功能動作;生成實施在框圖的每一塊、或各塊的組合中規(guī)定的功能動作的裝置。
[0134]計算機(jī)可讀程序代碼可以完全在用戶的計算機(jī)上執(zhí)行、部分在用戶的計算機(jī)上執(zhí)行、作為單獨的軟件包、部分在用戶的計算機(jī)上并且部分在遠(yuǎn)程計算機(jī)上,或者完全在遠(yuǎn)程計算機(jī)或者服務(wù)器上執(zhí)行。也應(yīng)該注意,在某些替代實施方案中,在流程圖中各步驟、或框圖中各塊所注明的功能可能不按圖中注明的順序發(fā)生。例如,依賴于所涉及的功能,接連示出的兩個步驟、或兩個塊實際上可能被大致同時執(zhí)行,或者這些塊有時候可能被以相反順序執(zhí)行。
【權(quán)利要求】
1.一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信方法,其特征在于,所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,所述方法包括: 發(fā)送端VTEP攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文; 所述發(fā)送端VTEP確定所述廣播報文是否無目的地址,如果確定所述廣播報文無目的地址,所述發(fā)送端VTEP從所述VxLAN集中控制器獲取所述VxLAN中的接收端VTEP的IP地址; 所述發(fā)送端VTEP根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述單播報文到所述接收端VTEP,以使得所述接收端VTEP向接收端廣播接收到的單播報文。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述發(fā)送端VTEP從所述VxLAN集中控制器獲取所述VxLAN中的接收端VTEP的IP地址包括: 所述發(fā)送端VTEP向所述VxLAN集中控制器發(fā)送查詢請求; 所述發(fā)送端VTEP接收所述VxLAN集中控制器返回的查詢響應(yīng),所述查詢響應(yīng)攜帶所述VxLAN中的所有的VTEP的IP地址。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述發(fā)送端VTEP從所述VxLAN集中控制器獲取所述VxLAN中的接收端VTEP的IP地址包括: 所述發(fā)送端VTEP向所述VxLAN集中控制器發(fā)送查詢請求; 所述發(fā)送端VTEP接收所述VxLAN集中控制器返回的查詢響應(yīng),所述查詢響應(yīng)攜帶所述VxLAN中的多個接收端VTEP的IP地址,所述多個接收端VTEP為所述VxLAN集中控制器根據(jù)所述廣播報文的類型或發(fā)送端VTEP的位置信息從所述VxLAN中的所有的VTEP中篩選出的。
4.根據(jù)權(quán)利要求1-3任一項所述的方法,其特征在于,所述廣播報文為免費地址解析協(xié)議ARP廣播報文,所述方法還包括: 所述發(fā)送端VTEP向所述VxLAN的集中控制器上報所述免費ARP廣播報文攜帶的源IP地址和源媒體接入控制MAC地址。
5.根據(jù)權(quán)利要求1-3任一項所述的方法,其特征在于,所述廣播報文為動態(tài)主機(jī)配置協(xié)議DHCP廣播報文,所述方法還包括: 所述發(fā)送端VTEP攔截DHCP服務(wù)器對所述單播報文發(fā)送的響應(yīng)報文,所述響應(yīng)報文攜帶所述DHCP服務(wù)器為所述發(fā)送端虛擬機(jī)分配的IP地址和MAC地址,所述發(fā)送端VTEP向所述VxLAN的集中控制器上報所述發(fā)送端虛擬機(jī)新分配的所述IP地址和MAC地址。
6.一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信方法,其特征在于,所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,所述方法包括: 所述VxLAN集中控制器接收發(fā)送端VTEP發(fā)送的查詢請求,所述查詢請求是所述發(fā)送端VTEP攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文,并確定所述廣播報文無目的地址之后向所述VxLAN集中控制器發(fā)送的,所述查詢請求攜帶所述發(fā)送端VTEP所在的VxLAN的標(biāo)識; 所述VxLAN集中控 制器根據(jù)所述VxLAN的標(biāo)識,確定所述VxLAN中的接收端VTEP的IP地址; 所述VxLAN集中控制器向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述接收端VTEP的IP地址,以使得所述發(fā)送端VTEP根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述單播報文到所述接收端VTEP。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,還包括: 所述VxLAN集中控制器預(yù)先配置所述VxLAN網(wǎng)絡(luò)的標(biāo)識與所述VxLAN網(wǎng)絡(luò)中所有的VTEP的IP地址的對應(yīng)關(guān)系; 相應(yīng)地,所述VxLAN集中控制器根據(jù)所述VxLAN的標(biāo)識查詢所述對應(yīng)關(guān)系,確定所述VxLAN中的所有的VTEP的IP地址,向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述所有的VTEP的IP地址。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,確定所述VxLAN中的所有的VTEP的IP地址之后,還包括: 所述VxLAN集中控制器確定所述廣播報文的類型,根據(jù)所述廣播報文的類型或發(fā)送端VTEP的位置信息從所述VxLAN中的所有的VTEP中篩選出多個接收端VTEP。
9.根據(jù)權(quán)利要求6-8任一項所述的方法,其特征在于,所述廣播報文為免費地址解析協(xié)議ARP廣播報文,所述方法還包括: 所述VxLAN集中控制器接收所述發(fā)送端VTEP上報的所述免費ARP廣播報文攜帶的源IP地址和源媒體接入控制MAC地址; 所述VxLAN集中控制器保存所述源IP地址和MAC地址。
10.根據(jù)權(quán)利要求6-8任一項所述的方法,其特征在于,所述廣播報文為動態(tài)主機(jī)配置協(xié)議廣播DHCP廣播報文,所述方法還包括: 所述VxLAN集中控制器接收所述發(fā)送端VTEP上報的DHCP服務(wù)器為所述發(fā)送端虛擬機(jī)分配的IP地址和媒體接入控制MAC地址; 所述VxLAN集中控制器保存所述發(fā)送端虛擬機(jī)新分配的IP地址和MAC地址。
11.一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信系統(tǒng),其特征在于,所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,每個VTEP與其所管轄的至少一個虛擬機(jī)組成所述VxLAN中的一個子網(wǎng)絡(luò); 發(fā)送端VTEP用于攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文,確定所述廣播報文是否無目的地址,如果確定所述廣播報文無目的地址,從所述VxLAN集中控制器獲取所述VxLAN中的接收端VTEP的IP地址,根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述單播報文到所述接收端VTEP ; 所述VxLAN集中控制器用于接收所述發(fā)送端VTEP發(fā)送的查詢請求,確定所述VxLAN中的所述接收端VTEP的IP地址,向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述接收端VTEP的IP地址; 所述接收端VTEP用于接收所述發(fā)送端VTEP發(fā)送的單播報文,向接收端廣播接收到的所述單播報文。
12.根據(jù)權(quán)利要求11所述的系統(tǒng),其特征在于,所述VxLAN集中控制器還用于預(yù)先配置所述VxLAN網(wǎng)絡(luò)的標(biāo)識與所述VxLAN網(wǎng)絡(luò)中所有的VTEP的IP地址的對應(yīng)關(guān)系; 貝U,所述VxLAN集中控制器具體用于根據(jù)所述發(fā)送端虛擬機(jī)所在的VxLAN標(biāo)識查詢所述對應(yīng)關(guān)系,確定所述VxLAN中的所有的VTEP的IP地址,向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述所有的VTEP的IP地址。
13.根據(jù)權(quán)利要求12所述的系統(tǒng),其特征在于,所述VxLAN集中控制器還用于確定所述廣播報文的類型,根據(jù)所述廣播報文的類型或發(fā)送端VTEP的位置信息從所述VxLAN中的所有的VTEP中篩選出多個接收端VTEP。
14.根據(jù)權(quán)利要求11-13任一項所述的系統(tǒng),其特征在于,所述廣播報文為免費地址解析協(xié)議ARP廣播報文; 所述發(fā)送端VTEP還用于向所述VxLAN的集中控制器上報所述免費ARP廣播報文攜帶的源IP地址和源媒體接入控制MAC地址; 所述VxLAN集中控制器用于接收并保存所述所述源IP地址和MAC地址。
15.根據(jù)權(quán)利要求11-13任一項所述的系統(tǒng),其特征在于,所述廣播報文為動態(tài)主機(jī)配置協(xié)議廣播DHCP報文; 所述發(fā)送端VTEP還用于攔截DHCP服務(wù)器對所述單播報文發(fā)送的響應(yīng)報文,所述響應(yīng)報文攜帶所述DHCP服務(wù)器為所述發(fā)送端虛擬機(jī)分配的IP地址和MAC地址,向所述VxLAN的集中控制器上報所述發(fā)送端虛擬機(jī)新分配的所述IP地址和MAC地址; 所述VxLAN集中控制器還用于接收并保存所述發(fā)送端虛擬機(jī)新分配的IP地址和MAC地址。
16.一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信裝置,其特征在于,所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,所述VTEP包括: 攔截單元,用于攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文; 確定單元,用于確定所述廣播報文是否無目的地址,如果確定所述廣播報文無目的地址,從所述VxLAN集中控制器獲取所述VxLAN中的接收端VTEP的IP地址; 發(fā)送單元,用于根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并分別發(fā)送所述單播報文到所述接收端VTEP,以使得所述接收端VTEP向接收端廣播接收到的單播報文。
17.根據(jù)權(quán)利要求16所述的通信裝置,其特征在于,所述廣播報文為免費地址解析協(xié)議ARP廣播報文; 所述發(fā)送單元還用于向所述VxLAN的集中控制器上報所述免費ARP廣播報文攜帶的源IP地址和源媒體接入控制MAC地址。
18.根據(jù)權(quán)利要求17所述的通信裝置,其特征在于,所述廣播報文為動態(tài)主機(jī)配置協(xié)議廣播DHCP報文; 所述攔截單元還用于攔截DHCP服務(wù)器對所述單播報文發(fā)送的響應(yīng)報文,所述響應(yīng)報文攜帶所述DHCP服務(wù)器為所述發(fā)送端虛擬機(jī)分配的IP地址和MAC地址; 所述發(fā)送單元還用于向所述VxLAN的集中控制器上報所述攔截單元獲取的所述發(fā)送端虛擬機(jī)新分配的所述IP地址和MAC地址。
19.一種虛擬可擴(kuò)展局域網(wǎng)絡(luò)的通信裝置,其特征在于,所述虛擬可擴(kuò)展局域網(wǎng)絡(luò)VxLAN包括VxLAN集中控制器和多個隧道終端VTEP,所述VxLAN集中控制器包括: 接收單元,用于接收發(fā)送端VTEP發(fā)送的查詢請求,所述查詢請求是所述發(fā)送端VTEP攔截發(fā)送端虛擬機(jī)發(fā)送的廣播報文,并確定所述廣播報文無目的地址之后向所述VxLAN集中控制器發(fā)送的,所述查詢請求攜帶所述發(fā)送端VTEP所在的VxLAN的標(biāo)識; 確定單元,用于根據(jù)所 述VxLAN的標(biāo)識,確定所述VxLAN中的接收端VTEP的IP地址; 發(fā)送單元,用于向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述接收端VTEP的IP地址,以使得所述發(fā)送端VTEP根據(jù)所述接收端VTEP的IP地址,將所述廣播報文封裝為單播報文,并發(fā)送所述單播報文到所述接收端VTEP。
20.根據(jù)權(quán)利要求19所述的通信裝置,其特征在于,所述VxLAN集中控制器還包括配置單元,用于預(yù)先配置所述VxLAN網(wǎng)絡(luò)的標(biāo)識與所述VxLAN網(wǎng)絡(luò)中所有的VTEP的IP地址的對應(yīng)關(guān)系; 貝1J,所述確定單元具體用于根據(jù)所述發(fā)送端虛擬機(jī)所在的VxLAN標(biāo)識查詢所述對應(yīng)關(guān)系,確定所述VxLAN中的所有的VTEP的IP地址; 所述發(fā)送單元具體用于向所述發(fā)送端VTEP發(fā)送查詢響應(yīng),所述查詢響應(yīng)攜帶所述所有的VTEP的IP地址。
21.根據(jù)權(quán)利要求20所述的通信裝置,其特征在于,所述確定單元還用于確定所述廣播報文的類型,根據(jù)所述廣播報文的類型或發(fā)送端VTEP的位置信息從所述VxLAN中的所有的VTEP中篩選出多個接收端VTEP。
22.根據(jù)權(quán)利要求19-21任一項所述的通信裝置,其特征在于,所述廣播報文為免費地址解析協(xié)議ARP廣播報文,所述接收單元還用于接收并保存所述發(fā)送端VTEP上報的所述免費ARP廣播報文攜帶的源IP地址和源媒體接入控制MAC地址;或者, 所述廣播報文為動態(tài)主機(jī)配置協(xié)議廣播DHCP報文,所述接收單元還用于接收并保存所述發(fā)送端VTEP上報的DHCP服務(wù)器為所述發(fā)送端虛擬機(jī)分配的IP地址和媒體接入控制MAC地址。
23.一種計算機(jī),其特征在于,包括:處理器、存儲器、總線和通信接口 ; 所述存儲器用于存儲計算機(jī)執(zhí)行指令,所述處理器與所述存儲器通過所述總線連接,當(dāng)所述計算機(jī)運行時,所述處理器執(zhí)行所述存儲器存儲的所述計算機(jī)執(zhí)行指令,以使所述計算機(jī)執(zhí)行如權(quán)利要求1-12任意一項所述的方法。
24.一種計算機(jī)可讀介質(zhì),其特征在于,包括計算機(jī)執(zhí)行指令,當(dāng)計算機(jī)的處理器執(zhí)行所述計算機(jī)執(zhí)行指令時,所述計算機(jī)執(zhí)行如權(quán)利要求1-12任意一項所述的方法。
【文檔編號】H04L12/46GK103814554SQ201380002632
【公開日】2014年5月21日 申請日期:2013年12月11日 優(yōu)先權(quán)日:2013年12月11日
【發(fā)明者】宋宇, 熊志強(qiáng) 申請人:華為技術(shù)有限公司