專利名稱:虛擬機的mac地址配置方法、裝置及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種虛擬機的媒體訪問控制(MediaAccessControl,簡稱為MAC)地址配置方法、裝置及系統(tǒng)。
背景技術(shù):
隨著云計算技術(shù)的飛速發(fā)展,數(shù)據(jù)中心的地位越來越重要,而未來的數(shù)據(jù)中心中虛擬化技術(shù)的使用將是必然趨勢。在虛擬化技術(shù)中,虛擬機(Virtual Machine,簡稱為VM)技術(shù)將在服務器中廣泛運用。這樣一個服務器中就不像以前只需要一個MAC,而是需要更多的地址,有可能一個服務器需要上百個MAC地址,而大型數(shù)據(jù)中心可能有上百萬的服務器,MAC地址的管理、分配將是巨大的工作量,同時MAC地址在全球不僅是需要買,而且也有不夠使用的憂慮。因此需要一種有效利用MAC地址,減少浪費,方便管理的方式。圖1是根據(jù)相關(guān)技術(shù)的傳統(tǒng)主機與虛擬化主機的示意圖,傳統(tǒng)主機與虛擬化主機的區(qū)別是,在傳統(tǒng)主機中,只有一個網(wǎng)卡接口(Network Interface Card,簡稱為NIC),只需要一個MAC地址,采用手工配置沒有問題。但是虛擬化主機中,包括一個內(nèi)部VM監(jiān)視/控制單元Hypervisor,多個邊緣中繼單元ER和多個VM,每個VM需要一個或多個MAC地址,手工配置是很繁瑣的,而且,VM是可以動態(tài)創(chuàng)建、刪除的,管理很不方便。如果由系統(tǒng)隨機指定MAC地址,就會造成MAC地址的沖突,在主機較少時,這個問題并不嚴重,但是當主機和VM增加時,問題就比較嚴重,因此需要引入一種MAC地址自動配置機制。動態(tài)主機配置協(xié)議(Dynamic Host Configuration Protocol,簡稱為DHCP)本身是用來自動配置IP地址的,經(jīng)過擴展,可以用來支持MAC地址的自動配置,作者的一篇專利已經(jīng)對每個主機,或者VM采用DHCP擴展單獨申請MAC的機制進行了描述。但是可以看出,在虛擬化主機中,會存在很多的VM,如果每個VM都單獨進行MAC地址的申請、續(xù)租的話,會有很多的DHCP報文,增加網(wǎng)絡負擔。針對相關(guān)技術(shù)中MAC地址的申請需要很多報文,使網(wǎng)絡負擔加重的問題,目前尚未提出有效的解決方案。
發(fā)明內(nèi)容
針對相關(guān)技術(shù)中MAC地址的申請需要很多報文,使網(wǎng)絡負擔加重的問題,本發(fā)明提供了一種虛擬機的MAC地址配置方法及系統(tǒng)、虛擬機管理裝置和MAC地址管理服務器,以至少解決上述問題。根據(jù)本發(fā)明的一個方面,提供了一種虛擬機的MAC地址配置方法,包括:虛擬機管理裝置根據(jù)配置策略確定申請MAC地址的數(shù)目;該虛擬機管理裝置向MAC地址管理服務器申請上述數(shù)目的MAC地址;該虛擬機管理裝置接收MAC地址管理服務器返回的MAC地址;該虛擬機管理裝置將接收的MAC地址配置給虛擬機。優(yōu)選地,上述虛擬機管理裝置根據(jù)配置策略確定申請MAC地址的數(shù)目包括:該虛擬機管理裝置根據(jù)管理的虛擬機的數(shù)量,確定本次申請MAC地址的數(shù)目;或者,該虛擬機管理裝置根據(jù)預先配置的申請數(shù)目確定本次申請的MAC地址數(shù)目,再根據(jù)管理的虛擬機的數(shù)量,確定繼續(xù)申請的MAC地址數(shù)目。優(yōu)選地,上述虛擬機管理裝置向MAC地址管理服務器申請上述數(shù)目的MAC地址包括:該虛擬機管理裝置向MAC地址管理服務器發(fā)送MAC地址請求報文,其中,該MAC地址請求報文攜帶有請求上述數(shù)目的MAC地址的指示信息,以及指示該MAC地址管理服務器按照該虛擬機管理裝置所在分組分配MAC地址的分組標識信息。優(yōu)選地,上述虛擬機管理裝置將接收的MAC地址配置給虛擬機之后,當該虛擬機的MAC地址到期時,虛擬機或虛擬機管理裝置向上述MAC地址管理服務器發(fā)起MAC地址續(xù)租請求或者發(fā)起釋放MAC地址的請求。優(yōu)選地,上述虛擬機管理裝置將接收的上述MAC地址配置給虛擬機之后,當該虛擬機刪除時,該虛擬機管理裝置向上述MAC地址管理服務器發(fā)起釋放虛擬機被分配的MAC地址請求。優(yōu)選地,上述虛擬機管理裝置與上述MAC地址管理服務器之間交互的信息基于以下協(xié)議報文之一:動態(tài)主機配置協(xié)議DHCPV4、DHCPV6、虛擬站點發(fā)現(xiàn)與配置協(xié)議VDP。根據(jù)本發(fā)明的另一方面,提供了一種虛擬機的MAC地址配置方法,包括:MAC地址管理服務器接收虛擬機管理裝置發(fā)送的MAC地址申請,該申請攜帶有為虛擬機請求的MAC地址數(shù)目;上述MAC地址管理服務器根據(jù)該申請確定該數(shù)目的MAC地址;上述MAC地址管理服務器將確定的上述MAC地址配置給上述虛擬機管理裝置。優(yōu)選地,上述申請還攜帶有上述虛擬機管理裝置所在分組的分組標識信息;上述MAC地址管理服務器根據(jù)申請確定上述數(shù)目的MAC地址包括:該MAC地址管理服務器根據(jù)上述申請為分組標識信息對應的分組分配上述數(shù)目的MAC地址。根據(jù)本發(fā)明的另一方面,提供了一種虛擬機管理裝置,包括:數(shù)目確定模塊,用于根據(jù)配置策略確定申請MAC地址的數(shù)目;申請模塊,用于向MAC地址管理服務器申請上述數(shù)目的MAC地址;接收模塊,用于接收上述MAC地址管理服務器返回的MAC地址;配置模塊,用于將該接收模塊接收的上述MAC地址配置給虛擬機。優(yōu)選地,申請模塊包括:報文發(fā)送單元,用于向MAC地址管理服務器發(fā)送MAC地址請求報文,其中,該MAC地址請求報文攜帶有請求上述數(shù)目的MAC地址的指示信息,以及待分配MAC地址所屬分組標識信息。根據(jù)本發(fā)明的另一方面,提供了一種MAC地址管理服務器,包括:申請接收模塊,用于接收虛擬機管理裝置發(fā)送MAC地址申請,該申請攜帶有為虛擬機請求的MAC地址數(shù)目;地址確定模塊,用于根據(jù)上述申請接收模塊接收的上述申請確定上述數(shù)目的MAC地址;地址配置模塊,用于將地址確定模塊確定的MAC地址配置給上述虛擬機管理裝置。優(yōu)選地,地址確定模塊包括:第一信息確定單元,用于確定上述申請是否攜帶有上述虛擬機管理裝置所在分組的分組標識信息;第二信息確定單元,用于第一信息確定單元的確定結(jié)果為是時,根據(jù)該申請為上述分組標識信息對應的分組分配上述數(shù)目的MAC地址。根據(jù)本發(fā)明的另一方面,提供了一種虛擬機的MAC地址配置系統(tǒng),包括:上述的虛擬機管理裝置,還包括上述的MAC地址管理服務器。通過本發(fā)明,虛擬機管理裝置根據(jù)管理的虛擬機確定申請MAC地址的數(shù)目后向MAC地址管理服務器申請上述數(shù)目的MAC地址,該虛擬機管理裝置接收MAC地址管理服務器返回的MAC地址,再將其接收的MAC地址配置給上述虛擬機,解決了相關(guān)技術(shù)中MAC地址的申請需要很多報文,使網(wǎng)絡負擔加重的問題,進而達到了減輕網(wǎng)絡負擔的效果。
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中:圖1是根據(jù)相關(guān)技術(shù)的傳統(tǒng)主機與虛擬化主機的示意圖;圖2是根據(jù)本發(fā)明實施例的虛擬機的MAC地址配置方法的流程圖;圖3是根據(jù)本發(fā)明實施例的虛擬機的MAC地址配置方法的另一種流程圖;圖4是根據(jù)本發(fā)明實施例的虛擬機管理裝置的結(jié)構(gòu)框圖;圖5是根據(jù)本發(fā)明實施例的虛擬機管理裝置的另一種結(jié)構(gòu)框圖;圖6是根據(jù)本發(fā)明實施例的MAC地址管理服務器的結(jié)構(gòu)框圖;圖7是根據(jù)本發(fā)明實施例的MAC地址管理服務器的另一種結(jié)構(gòu)框圖;圖8是根據(jù)本發(fā)明實施例的虛擬機的MAC地址配置系統(tǒng)的結(jié)構(gòu)框圖;圖9是根據(jù)本發(fā)明實施例的MAC地址分配的網(wǎng)絡結(jié)構(gòu)的示意圖;圖10是根據(jù)本發(fā)明實施例的虛擬機和MAC地址管理服務器交互的流程圖;圖11是根據(jù)本發(fā)明實施例的MAC地址的選項報文格式的示意圖;圖12是根據(jù)本發(fā)明實施例的基于DHCP V4協(xié)議的報文交互方法的流程圖;圖13是根據(jù)本發(fā)明實施例的基于DHCP V6協(xié)議的報文交互方法的流程圖;圖14是根據(jù)本發(fā)明實施例的基于VDP協(xié)議的報文交互方法的流程圖。
具體實施例方式下文中將參考附圖并結(jié)合實施例來詳細說明本發(fā)明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。考慮到服務器上可能有多個VM,若每個VM各自申請MAC地址,將會增加網(wǎng)絡的負荷,本發(fā)明實施例提供了 一種虛擬機的MAC地址配置方法、裝置(虛擬機管理裝置和MAC地址管理服務器)及系統(tǒng),下面通過實施例進行描述。本實施例提供了一種虛擬機的MAC地址配置方法,該方法以從虛擬機管理裝置側(cè)進行描述為例進行說明,該虛擬機管理裝置可以是集成多個VM的服務器上的一個管理裝置。如圖2所示的是根據(jù)本發(fā)明實施例的虛擬機的MAC地址配置方法流程圖,該方法包括以下步驟(步驟S202-步驟S208):步驟S202,虛擬機管理裝置根據(jù)配置策略確定申請MAC地址的數(shù)目;步驟S204,虛擬機管理裝置向MAC地址管理服務器申請上述數(shù)目的MAC地址;步驟S206,虛擬機管理裝置接收上述MAC地址管理服務器返回的MAC地址;步驟S208,虛擬機管理裝置將接收的上述MAC地址配置給虛擬機。本實施例中,虛擬機管理裝置根據(jù)管理的虛擬機確定申請MAC地址的數(shù)目后向MAC地址管理服務器申請上述數(shù)目的MAC地址,該虛擬機管理裝置接收MAC地址管理服務器返回的MAC地址,再將其接收的MAC地址配置給上述虛擬機,解決了相關(guān)技術(shù)中MAC地址的申請需要很多報文,使網(wǎng)絡負擔加重的問題,進而達到了減輕網(wǎng)絡負擔的效果。上述配置策略可以是按照需要管理的虛擬機數(shù)量確定申請的MAC地址數(shù)目,也可以是按照設定的每次允許申請的MAC地址數(shù)據(jù)和管理的虛擬機數(shù)量確定申請的MAC地址數(shù)目,例如:虛擬機管理裝置根據(jù)預先配置的申請數(shù)目確定本次申請的MAC地址數(shù)目,再根據(jù)管理的虛擬機的數(shù)量,確定繼續(xù)申請的MAC地址數(shù)目。在上述實施例中,上述虛擬機管理裝置確定申請MAC地址的數(shù)目等于管理的虛擬機的個數(shù),然后該虛擬機管理裝置向MAC地址管理服務器發(fā)送MAC地址請求報文,其中該MAC地址請求報文攜帶有請求上述數(shù)目的MAC地址的指示信息,另外,該報文中還可以攜帶指示上述MAC地址管理服務器按照上述虛擬機管理裝置所在分組分配MAC地址的分組標識信息。在上述虛擬機管理裝置將接收的MAC地址配置給虛擬機之后,當該虛擬機的MAC地址到期時,該虛擬機或該虛擬機管理裝置向上述MAC地址管理服務器發(fā)起MAC地址續(xù)租請求或者發(fā)起釋放MAC地址的請求;當該虛擬機刪除時,該虛擬機管理裝置還可以向上述MAC地址管理服務器發(fā)起釋放該虛擬機被分配的MAC地址請求。上述虛擬機管理裝置與上述MAC地址管理服務器之間交互的信息可以基于以下協(xié)議報文之一:動態(tài)主機配置協(xié)議DHCP V4、DHCP V6和虛擬站點發(fā)現(xiàn)與配置協(xié)議(VSIdiscovery and configuration protocol,簡稱為 VDP)。圖3是根據(jù)本發(fā)明實施例的虛擬機的MAC地址配置方法的另一種流程圖,該方法以從MAC地址管理服務器側(cè)進行描述為例進行說明,對應與上述圖2所示的流程圖,該方法包括以下步驟(步驟S302-步驟S306):步驟S302,MAC地址管理服務器接收虛擬機管理裝置發(fā)送的MAC地址申請,該申請攜帶有為虛擬機請求的MAC地址數(shù)目,其中,該數(shù)目是上述虛擬機管理裝置根據(jù)上述配置策略確定的;步驟S304,MAC地址管理服務器根據(jù)上述申請確定上述數(shù)目的MAC地址;步驟S306,MAC地址管理服務器將確定的上述MAC地址配置給上述虛擬機管理裝
置管理。本實施例中,MAC地址管理服務器接收虛擬機管理裝置發(fā)送的MAC地址申請,該申請攜帶有請求的MAC地址數(shù)目,然后MAC地址管理服務器根據(jù)上述申請確定上述數(shù)目的MAC地址后,將確定的上述MAC地址配置給上述虛擬機管理裝置,解決了相關(guān)技術(shù)中MAC地址的申請需要很多報文,使網(wǎng)絡負擔加重的問題,進而達到了減輕網(wǎng)絡負擔的效果。上述申請不僅攜帶有請求的MAC地址數(shù)目,還攜帶有上述虛擬機管理裝置所在分組的分組標識信息。上述MAC地址管理服務器根據(jù)該申請確定數(shù)目的MAC地址包括:該MAC地址管理服務器根據(jù)該申請為上述分組標識信息對應的分組分配上述數(shù)目的MAC地址,例如,對于同一個分組內(nèi),分配的各個MAC地址可以不相同。對應于上面描述的虛擬機的MAC地址的第一種配置方法,本實施例提供了一種虛擬機管理裝置,該裝置用于實現(xiàn)上述實施例。圖4是根據(jù)本發(fā)明實施例的虛擬機管理裝置的結(jié)構(gòu)框圖,如圖4所示,該裝置包括:數(shù)目確定模塊42、申請模塊44、接收模塊46和配置模塊48。下面對該結(jié)構(gòu)進行說明。數(shù)目確定模塊42,用于根據(jù)配置策略確定申請MAC地址的數(shù)目;
申請模塊44,連接至數(shù)目確定模塊42,用于向MAC地址管理服務器申請上述數(shù)目的MAC地址;接收模塊46,連接至申請模塊44,用于接收上述MAC地址管理服務器返回的MAC地址;配置模塊48,連接至接收模塊46,用于將接收模塊46接收的上述MAC地址配置給虛擬機。本實施例中,申請模塊44向MAC地址管理服務器申請由數(shù)目確定模塊42確定的申請MAC地址數(shù)目的MAC地址,配置模塊48將接收模塊46接收的上述MAC地址管理服務器返回的MAC地址配置給上述虛擬機,解決了相關(guān)技術(shù)中MAC地址的申請需要很多報文,使網(wǎng)絡負擔加重的問題,進而達到了減輕網(wǎng)絡負擔的效果。圖5是根據(jù)本發(fā)明實施例的虛擬機管理裝置的另一種結(jié)構(gòu)框圖,如圖5所示,上述裝置中的申請模塊44包括:報文發(fā)送單元442,用于向MAC地址管理服務器發(fā)送MAC地址請求報文,其中,該MAC地址請求報文攜帶有請求數(shù)目的MAC地址的指示信息,以及待分配MAC地址的分組標識信息(例如,上述虛擬機管理裝置所在分組的分組標識信息)。對應于上面描述的虛擬機的MAC地址的第二種配置方法,本實施例還提供了一種MAC地址管理服務器,該服務器用于實現(xiàn)上述實施例。圖6是根據(jù)本發(fā)明實施例的MAC地址管理服務器的結(jié)構(gòu)框圖,如圖6所示,該服務器包括:申請接收模塊62、地址確定模塊64、地址發(fā)送模塊66。下面對該結(jié)構(gòu)進行說明。申請接收模塊62,用于接收虛擬機管理裝置發(fā)送的MAC地址申請,該申請攜帶有為虛擬機請求的MAC地址數(shù)目;地址確定模塊64,連接至申請接收模塊62,用于根據(jù)申請接收模塊62接收的上述申請確定上述數(shù)目的MAC地址;地址配置模塊66,連接至地址確定模塊64,用于將地址確定模塊64確定的上述MAC地址配置給上述虛擬機管理裝置。本實施例中,申請接收模塊62接收虛擬機管理裝置發(fā)送的MAC地址申請,該申請攜帶有請求的MAC地址數(shù)目,然后地址配置模塊66向上述虛擬機管理裝置返回地址確定模塊64確定的上述數(shù)目的MAC地址,解決了相關(guān)技術(shù)中MAC地址的申請需要很多報文,使網(wǎng)絡負擔加重的問題,進而達到了減輕網(wǎng)絡負擔的效果。圖7是根據(jù)本發(fā)明實施例的MAC地址管理服務器的另一種結(jié)構(gòu)框圖,如圖7所示,上述服務器中的地址確定模塊64包括第一信息確定單元642和第二信息確定單元644,下面對該結(jié)構(gòu)進行說明。第一信息確定單元642,用于確定申請是否攜帶有虛擬機管理裝置所在分組的分組標識信息;第二信息確定單元644,連接至第一信息確定單元642,用于在第一信息確定單元642的確定結(jié)果為是時,根據(jù)上述申請為上述分組標識信息對應的分組分配相應數(shù)目的MAC地址,例如,對于同一分組內(nèi)分配的各個MAC地址可以不相同。對應于上面描述的虛擬機的MAC地址的兩種配置方法,本實施例又提供了一種虛擬機的MAC地址配置系統(tǒng),該系統(tǒng)用于實現(xiàn)上述實施例。圖8是根據(jù)本發(fā)明實施例的虛擬機的MAC地址配置系統(tǒng)的結(jié)構(gòu)框圖,如圖8所示,該系統(tǒng)除包括虛擬機管理裝置40和MAC地址管理服務器60。其中,虛擬機管理裝置40可以采用上述圖4或圖5所示的方式實現(xiàn),本實施例以虛擬機管理裝置40采用上述圖4中的各個模塊實現(xiàn)為例進行說明,MAC地址管理服務器60可以采用上述圖6或圖7所示的方式實現(xiàn),,本實施例以MAC地址管理服務器60采用上述圖6中的各個模塊實現(xiàn)為例進行說明。下面結(jié)合優(yōu)選實施例和附圖對上述實施例的實現(xiàn)過程進行詳細說明。本發(fā)明提供了一種在虛擬化主機和網(wǎng)絡MAC地址管理服務器之間進行交互的方法和系統(tǒng),涉及虛擬化主機行為和網(wǎng)絡側(cè)協(xié)議處理服務器及MAC地址管理單元的行為,以及它們之間的交互方法。圖9是本實施例提供的MAC地址分配的網(wǎng)絡結(jié)構(gòu)的示意圖,其中,包括DHCP服務器(也稱為協(xié)議處理服務器)和Hypervisor(內(nèi)部VM監(jiān)視/控制單元),當該DHCP服務器用于對MAC地址進行管理時,可以在該DHCP服務器上設置MAC地址管理單元;當然,當不需要該DHCP服務器對MAC地址進行管理時,其上也可以不包含MAC地址管理單元。不包含時,這個MAC地址管理單元可以是一個獨立的設備,例如,上述實施例中的MAC地址管理服務器。上述虛擬機管理裝置相當于Hypervisor,圖9中的主機包括Hypervisor和多個VM,Hypervisor用于對各個VM進行管理。下面以圖9所示的網(wǎng)絡結(jié)構(gòu)為例進行說明。實施例一本實施例提供了一種虛擬化主機和網(wǎng)絡MAC地址管理服務器之間的交互流程,本實施例以MAC地址管理單元作為獨立的設備實現(xiàn)為例進行說明,該方式下,協(xié)議處理服務器僅用于配合虛擬機管理裝置(本實施例即Hypervisor)完成向MAC地址管理單元申請MAC地址,如圖10所示的虛擬機和MAC地址管理服務器交互的流程圖,該方法包括如下步驟(步驟 S1002-步驟 S1022):步驟S1002,當Hypervisor啟動完成,可以進行MAC地址請求的處理,向MAC地址管理單元申請MAC地址,本實施例即向協(xié)議處理服務器發(fā)送包含MAC地址請求的報文。步驟S1004,協(xié)議處理服務器接收到上述包含MAC地址請求的報文后,向MAC地址管理單元申請MAC地址。步驟S1006,MAC地址管理單元根據(jù)上述申請,分配并下發(fā)MAC地址。步驟S1008,協(xié)議處理服務器接收到MAC地址管理單元下發(fā)的MAC地址后,向Hypervisor回應包含分配的MAC地址報文。步驟S1010,這一步是可選動作,VM向Hypervisor申請MAC地址。也可以沒有這個步驟,Hypervisor感知到VM創(chuàng)建后,直接轉(zhuǎn)向步驟S1012。步驟S1012,Hypervisor向VM分配MAC地址,即向VM告知相應的MAC地址。步驟S1014,這一步是可選動作,與步驟S1016任選一種,是進行MAC地址的續(xù)租處理。此步驟是由Hypervisor發(fā)起,VM不做處理。即Hypervisor發(fā)送MAC地址續(xù)租處理的報文至協(xié)議處理服務器,然后協(xié)議處理服務器回應此報文至Hypervisor。步驟S1016,與步驟S1014任選一種,是進行MAC地址的續(xù)租處理。此步驟是由VM發(fā)起,Hypervisor不做處理。即VM發(fā)送MAC地址續(xù)租處理的報文至至協(xié)議處理服務器,然后協(xié)議處理服務器回應此報文至VM,完成MAC地址的續(xù)租。步驟S1018,當VM要刪除MAC地址時,Hypervisor發(fā)起MAC地址釋放處理的報文,報文包含將要釋放的MAC地址的選項信息。協(xié)議處理服務器可以回應一個MAC地址釋放確認的報文,也可以不做回應。步驟S1020,協(xié)議處理服務器通知MAC地址管理單元釋放MAC地址。步驟S1022,這一步是可選動作,協(xié)議處理服務器將MAC地址釋放確認的報文通知給 Hypervisor。上述的交互協(xié)議報文,可以靈活的分配多個指定數(shù)目的MAC地址,分配時可以根據(jù)選項包中的分組標識來對MAC分別處理,MAC地址池管理可以根據(jù)管理需要靈活的配置MAC地址,甚至對于不同的分組,MAC地址可以重復,減少地址的消耗。上述選項報文的格式見圖11,圖11所示的是交互協(xié)議中關(guān)于MAC地址的選項報文格式的示意圖,圖中的G是是否全局分配標識,決定報文中是否出現(xiàn)分組標識內(nèi)容。當G為O時,表示全局分配MAC地址,分配的MAC地址均不同;當G為I時,表示根據(jù)分組標識分配MAC地址,即組內(nèi)的MAC地址可以相同,組間的MAC地址不同。圖11中的子選項類型可以取不同的值,當子選項類型為I時,表示請求分配MAC地址,此時報文中的信息體部分不會出現(xiàn),此時信息體個數(shù)表示主機需要多少個相應的信息體分配,比如子選項類型為I時,就表示需要多少個MAC地址。當子選項類型為別的類型時,信息體個數(shù)表示后面信息體個數(shù),比如為子選項類型為2時,信息體個數(shù)就表示后面信息體部分包含多少個MAC,信息體部分包含相應的信息內(nèi)容。另外,子選項類型為2時表示分配的MAC地址響應;子選項類型為3時表示請求釋放MAC地址;子選項類型為O或者4-127時表示保留此MAC地址。分組標識中,標識類型決定了后面標識值的意義和編碼方式。目前定義了 3種標識類型:客戶vlan(c-vlan)、服務vlan(s-vlan)、IPV4子網(wǎng)。后續(xù)可以根據(jù)需要進行擴展。當標識類型值為I時,是針對客戶VLAN(C-VLAN),其格式是2字節(jié)大小vlan_id值;當標識類型值為2時,是針對服務VLAN(S-VLAN),其格式是2字節(jié)大小vlan_id值;當標識類型值為3時,是針對IPV4子網(wǎng),其格式是4字節(jié),IP子網(wǎng)地址,主機部分為O ;當標識類型值為O或者4-127時,其針對的類型保留,其格式待定。上面的選項也可以放到DHCP V4、DHCP V6、VDP等協(xié)議報文。在報文中的G、子選項類型、信息體個數(shù)以及分組標識分別取不同的值時,就代表了此報文不同的作用。上面的協(xié)議處理可以是DHCP V4,也可以是DHCP V6,也可以是VDP,不限定特定的協(xié)議。以下實施例二至四是針對基于DHCP V4、DHCP V6和VDP三種協(xié)議的報文交互方式。實施例二在本實施例中,交互協(xié)議采用的是DHCP協(xié)議V4版本的協(xié)議報文,支持DHCP V4的主機包括VM和Hypervisor,本實施例與實施例一的不同之處在于,VM與Hypervisor之間是Hypervisor直接將申請到的MAC地址分配給VM使用。主機側(cè)MAC地址續(xù)租的處理、MAC地址釋放的處理都是Hypervisor自行完成。本實施例以MAC地址管理單元作為獨立的設備實現(xiàn)為例進行說明,該方式下,DHCPV4SERVER(相當于上述實施例中的協(xié)議處理服務器)僅用于配合虛擬機管理裝置(本實施例即Hypervisor)完成向MAC地址管理單元申請MAC地址,如圖12所示的是基于DHCP V4協(xié)議的報文交互方法的流程圖,該方法包括如下步驟(步驟S1202-步驟S1218):步驟S1202,Hypervisor向MAC地址管理單元申請MAC地址,本實施例即Hypervisor向DHCP V4 SERVER發(fā)送包含MAC地址請求選項的DHCP REQUEST報文。步驟S1204,DHCP V4 SERVER接收到上述包含MAC地址請求選項的DHCP REQUEST報文后,向MAC地址管理單元申請MAC地址。步驟S1206,MAC地址管理單元根據(jù)上述請求,分配并下發(fā)MAC地址。步驟S1208,DHCP V4 SERVER接收到MAC地址管理單元下發(fā)的MAC地址后,向Hypervisor回應包含分配的MAC地址選項的DHCP ACK報文。步驟S1210,Hypervisor感知到VM創(chuàng)建后,Hypervisor向VM告知一個MAC地址。步驟S1212, Hypervisor進行MAC地址的續(xù)租處理。此步驟是由Hypervisor發(fā)起,VM不做處理。即Hypervisor發(fā)送包含MAC地址續(xù)租選項的DHCP REQUEST報文至DHCPV4SERVER。步驟S1214,DHCP V4 SERVER將包含MAC地址續(xù)租選項的DHCP ACK報文發(fā)送至Hypervisor。步驟S1216,當VM要刪除MAC地址時,Hypervisor將包含MAC地址釋放處理的DHCPREQUEST報文發(fā)送至DHCP V4 SERVER,報文包含將要釋放的MAC地址的選項信息。步驟S1218,DHCP V4 SERVER通知MAC地址管理單元釋放MAC地址。實施例三在本實施例中,交互協(xié)議采用的是DHCP協(xié)議V6版本的協(xié)議報文,支持DHCP V6的主機包括VM和Hypervisor,本實施例與實施例一的不同之處在于,VMl與Hypervisor之間是Hypervisor直接將申請到的多個MAC地址分配給VMl使用,因為VMl只需要一個地址。而VM2需要2個地址,就可以自已主動向Hypervisor要2個地址,然后Hypervisor響應2個MAC地址給VM2。主機側(cè)MAC地址續(xù)租的處理、MAC地址釋放的處理都是由Hypervisor自行完成。本實施例以MAC地址管理單元作為獨立的設備實現(xiàn)為例進行說明,該方式下,DHCPV6SERVER(相當于上述實施例中的協(xié)議處理服務器)僅用于配合虛擬機管理裝置(本實施例即Hypervisor)完成向MAC地址管理單元申請MAC地址,如圖13所示的是基于DHCP V6協(xié)議的報文交互方法的流程圖,該方法包括如下步驟(步驟S1302-步驟S1322):步驟S1302, Hypervisor向MAC地址管理單元申請MAC地址,本實施例即Hypervisor向DHCP V6 SERVER發(fā)送包含MAC地址請求選項的DHCP SOLICIT報文。步驟S1304,DHCP V6 SERVER接收到上述包含MAC地址請求選項的DHCP SOLICIT報文后,向MAC地址管理單元申請MAC地址。步驟S1306,MAC地址管理單元根據(jù)上述請求,分配并下發(fā)MAC地址。步驟S1308,DHCP V6 SERVER接收到MAC地址管理單元下發(fā)的MAC地址后,向Hypervisor回應包含分配的MAC地址選項的DHCP ADVRETI SE報文。步驟S1310, Hypervisor 感知到 VMl 創(chuàng)建后,Hypervisor 向 VMl 告知一個 MAC 地址。步驟S1312,VM2 向 Hypervisor 申請二個 MAC 地址。
步驟S1314, Hypervisor進行MAC地址的續(xù)租處理,即Hypervisor將包含MAC地址續(xù)租選項的DHCP REQUEST報文發(fā)送至DHCP V6 SERVER。步驟S1316,DHCP V6 SERVER將包含MAC地址續(xù)租選項的DHCP REPLY報文發(fā)送至Hypervisor。步驟S1318,Hypervisor將二個續(xù)租的MAC地址告知給VM2。步驟S1320,當VM2要刪除上述二個MAC地址時,Hypervisor將包含MAC地址釋放處理的DHCP REQUEST報文發(fā)送至DHCP V6 SERVER,報文包含將要釋放的MAC地址的選項信
肩、O步驟S1322,DHCP V6 SERVER通知MAC地址管理單元釋放MAC地址。實施例四在本實施例中,交互協(xié)議采用的是VDP協(xié)議報文,支持DHCP V6的主機包括VM和Hypervisor,本實施例與實施例一的不同之處在于,VM與Hypervisor之間是Hypervisor直接將申請到的MAC地址分配給VM使用。主機側(cè)MAC地址續(xù)租的處理、MAC地址釋放的處理也都是Hypervisor自行完成。本實施例以MAC地址管理單元作為獨立的設備實現(xiàn)為例進行說明,該方式下,VDP橋(相當于上述實施例中的協(xié)議處理服務器)僅用于配合虛擬機管理裝置(本實施例即Hypervisor)完成向MAC地址管理單元申請MAC地址,如圖14所示的是基于VDP協(xié)議的報文交互方法的流程圖,該方法包括如下步驟(步驟S1402-步驟S1420):步驟S1402, Hypervisor向MAC地址管理單元申請MAC地址,本實施例即Hypervisor向VDP橋發(fā)送包含MAC地址請求選項的Pre-Assoc (預關(guān)聯(lián))請求報文。步驟S1404, VDP橋接收到上述包含MAC地址請求選項的Pre-Assoc (預關(guān)聯(lián))請求報文后,向MAC地址管理單元申請MAC地址。步驟S1406,MAC地址管理單元根據(jù)上述請求,分配并下發(fā)MAC地址。步驟S1408, VDP橋接收到MAC地址管理單元下發(fā)的MAC地址后,向Hypervisor發(fā)送包含分配的MAC地址請求選項的Pre-Assoc (預關(guān)聯(lián))響應報文。步驟S1410,Hypervisor感知到VM創(chuàng)建后,Hypervisor向VM告知一個MAC地址。步驟S1412, Hypervisor進行MAC地址的續(xù)租處理。此步驟是由Hypervisor發(fā)起,VM不做處理。即Hypervisor發(fā)送包含MAC地址續(xù)租選項的Assoc (關(guān)聯(lián))保持報文至VDP 橋。步驟S1414,VDP橋?qū)琈AC地址續(xù)租選項的Assoc (關(guān)聯(lián))保持響應報文發(fā)送至 Hypervisor。步驟S1416,當VM要刪除MAC地址時,Hypervisor將包含MAC地址釋放處理的De-Assoc請求報文發(fā)送至VDP橋,報文包含將要釋放的MAC地址的選項信息。步驟S1418,VDP橋通知MAC地址管理單元釋放MAC地址。步驟S1420,VDP橋?qū)琈AC地址釋放處理的De-Assoc響應報文發(fā)送至Hypervisor。從以上的描述中可以看出,上述實施例通過這些報文的交互及主機和協(xié)議處理服務器、MAC地址管單元的參與,可以完成多個MAC地址的申請、分配、釋放,因為通過管理VM的虛擬機管理裝置進行MAC地址的申請等操作,使交互的報文比較少,減輕了網(wǎng)絡負擔。
顯然,本領(lǐng)域的技術(shù)人員應該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種虛擬機的媒體訪問控制MAC地址配置方法,其特征在于包括: 虛擬機管理裝置根據(jù)配置策略確定申請MAC地址的數(shù)目; 所述虛擬機管理裝置向MAC地址管理服務器申請所述數(shù)目的MAC地址; 所述虛擬機管理裝置接收所述MAC地址管理服務器返回的MAC地址; 所述虛擬機管理裝置將接收的所述MAC地址配置給虛擬機。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述虛擬機管理裝置根據(jù)配置策略確定申請MAC地址的數(shù)目包括: 所述虛擬機管理裝置根據(jù)管理的虛擬機的數(shù)量,確定本次申請MAC地址的數(shù)目;或者,所述虛擬機管理裝置根據(jù)預先配置的申請數(shù)目確定本次申請的MAC地址數(shù)目,再根據(jù)管理的虛擬機的數(shù)量,確定繼續(xù)申請的MAC地址數(shù)目。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述虛擬機管理裝置向MAC地址管理服務器申請所述數(shù)目的MAC地址包括: 所述虛擬機管理裝置向MAC地址管理服務器發(fā)送MAC地址請求報文,其中,所述MAC地址請求報文攜帶有請求所述數(shù)目的MAC地址的指示信息,以及指示所述MAC地址管理服務器按照所述虛擬機管理裝置所在分組分配MAC地址的分組標識信息。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述虛擬機管理裝置將接收的所述MAC地址配置給所述虛擬機之后,所述方法還包括: 當所述虛擬機的MAC地址到期時,所述虛擬機或所述虛擬機管理裝置向所述MAC地址管理服務器發(fā)起MAC地址續(xù)租請求或者發(fā)起釋放MAC地址的請求。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述虛擬機管理裝置將接收的所述MAC地址配置給所述虛擬機之后,所述方法還包括: 當所述虛擬機刪除時,所述虛擬機管理裝置向所述MAC地址管理服務器發(fā)起釋放所述虛擬機被分配的MAC地址請求。
6.根據(jù)權(quán)利要求1-5任一項所述的方法,其特征在于,所述虛擬機管理裝置與所述MAC地址管理服務器之間交互的信息基于以下協(xié)議報文之一:動態(tài)主機配置協(xié)議DHCP V4、DHCPV6、虛擬站點發(fā)現(xiàn)與配置協(xié)議VDP。
7.一種虛擬機的媒體訪問控制MAC地址配置方法,其特征在于包括: MAC地址管理服務器接收虛擬機管理裝置發(fā)送的MAC地址申請,所述申請攜帶有為虛擬機請求的MAC地址數(shù)目; 所述MAC地址管理服務器根據(jù)所述申請確定所述數(shù)目的MAC地址; 所述MAC地址管理服務器將確定的所述MAC地址配置給所述虛擬機管理裝置。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述申請還攜帶有所述虛擬機管理裝置所在分組的分組標識信息; 所述MAC地址管理服務器根據(jù)所述申請確定所述數(shù)目的MAC地址包括:所述MAC地址管理服務器根據(jù)所述申請為所述分組標識信息對應的分組分配所述數(shù)目的MAC地址。
9.一種虛擬機管理裝置,其特征在于包括: 數(shù)目確定模塊,用于根據(jù)配置策略確定申請媒體訪問控制MAC地址的數(shù)目; 申請模塊,用于向MAC地址管理服務器申請所述數(shù)目的MAC地址; 接收模塊,用于接收所述MAC地址管理服務器返回的MAC地址;配置模塊,用于將所述接收模塊接收的所述MAC地址配置給虛擬機。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述申請模塊包括: 報文發(fā)送單元,用于向MAC地址管理服務器發(fā)送MAC地址請求報文,其中,所述MAC地址請求報文攜帶有請求所述數(shù)目的MAC地址的指示信息,以及待分配MAC地址所屬分組標識息。
11.一種媒體訪問控制MAC地址管理服務器,其特征在于包括: 申請接收模塊,用于接收虛擬機管理裝置發(fā)送MAC地址申請,所述申請攜帶有為虛擬機請求的MAC地址數(shù)目; 地址確定模塊,用于根據(jù)所述申請接收模塊接收的所述申請確定所述數(shù)目的MAC地址; 地址配置模塊,用于將所述地址確定模塊確定的所述MAC地址配置給所述虛擬機管理裝置
12.根據(jù)權(quán)利要求11所述的MAC地址管理服務器,其特征在于,所述地址確定模塊包括: 第一信息確定單元,用于確定所述申請是否攜帶有所述虛擬機管理裝置所在分組的分組標識信息; 第二信息確定單元,用于所述第一信息確定單元的確定結(jié)果為是時,根據(jù)所述申請為所述分組標識信息對應的分組分配所述數(shù)目的MAC地址。
13.一種虛擬機的媒體訪問控制MAC地址配置系統(tǒng),其特征在于包括:權(quán)利要求9或10所述的虛擬機管理裝置,還包括權(quán)利要求11或12所述的MAC地址管理服務器。
全文摘要
本發(fā)明公開了一種虛擬機的MAC地址配置方法、裝置及系統(tǒng)。其中,該方法包括虛擬機管理裝置根據(jù)配置策略確定申請MAC地址的數(shù)目;該虛擬機管理裝置向MAC地址管理服務器申請上述數(shù)目的MAC地址;然后接收MAC地址管理服務器返回的MAC地址;再將接收的MAC地址配置給上述虛擬機。通過本發(fā)明,解決了相關(guān)技術(shù)中MAC地址的申請需要很多報文,使網(wǎng)絡負擔加重的問題,進而減輕了網(wǎng)絡負擔。
文檔編號H04L29/12GK103108053SQ20111035452
公開日2013年5月15日 申請日期2011年11月10日 優(yōu)先權(quán)日2011年11月10日
發(fā)明者喻敬海, 趙真富, 劉大宇 申請人:中興通訊股份有限公司