專利名稱:組播協(xié)議報文發(fā)送方法及裝置的制作方法
技術領域:
本發(fā)明涉及通信領域,具體而言,涉及ー種組播協(xié)議報文發(fā)送方法及裝置。
背景技術:
多鏈接透明互連(TransparentInterconnection over Lots of Links,簡稱為TRILL),是互聯(lián)網(wǎng)工程任務組(Internet Engineering Task Force,簡稱為IETF)推薦的連接層(L2)網(wǎng)絡的標準。TRILL通過將中間系統(tǒng)到中間系統(tǒng)(Intermediate System toIntermediate System,簡稱為IS_IS、ISIS)路由協(xié)議引入到L2網(wǎng)絡,作為控制面實現(xiàn)。在TRILL網(wǎng)絡的數(shù)據(jù)面,運行TRILL協(xié)議的設備稱為路由網(wǎng)橋(Router Bridge,簡稱為RB),其中與終端連接的稱為邊界路由網(wǎng)橋(Edge RB,簡稱為ERB)。邊界路由網(wǎng)橋部署在數(shù)據(jù)中心網(wǎng)絡的邊界,對原始數(shù)據(jù)報文進行特定技術的封裝解封裝,比如TRILL或最短路徑橋(Shortest Path Bridging,簡稱為SPB)等。在TRILL網(wǎng)絡,邊界路由網(wǎng)橋入口稱為IngressRB,出ロ稱為Egress RB, Ingress RB會將原始報文另行封裝ー層TRILL頭及外部MAC頭,這就形成TRILL的數(shù)據(jù)幀在TRILL網(wǎng)絡傳輸,其他負責將TRILL數(shù)據(jù)幀從Ingress RB 一跳一跳地傳送到Egress RB的路由網(wǎng)橋稱為傳輸路由網(wǎng)橋,在Egress RB上會將數(shù)據(jù)報文解封裝,還原成原始報文向終端傳輸。圖I是相關技術中協(xié)議報文傳輸?shù)木W(wǎng)絡架構(gòu)圖,如圖I所示,ERB1-ERB3為邊界路由網(wǎng)橋,中間RB1-RB3為傳輸路由網(wǎng)橋,Hostl及HI、Hn為數(shù)據(jù)中心網(wǎng)絡中的主機,加入了不同的組播組。Router為路由器,維護下行組播組成員關系。在TRILL網(wǎng)絡中,將所有報文區(qū)分為五種,即ニ層控制幀(例如,BPDU及VLAN注冊幀等),原始幀(即,非TRILL封裝幀),TRILL數(shù)據(jù)幀,TRILL控制幀(例如,ISIS報文)和TRILL其它幀。對于接入側(cè)進來的原始幀,邊界路由網(wǎng)橋會對其源和目的等有效信息進行學習,并將學習結(jié)果在ISIS控制報文中洪泛出去,而原始幀將被封裝成TRILL數(shù)據(jù)報文在TRILL網(wǎng)絡透傳,一般中間傳輸路由網(wǎng)橋?qū)υ紟械脑春湍康牟粫信d趣,即并不需要對這些信息進行維護。因此,邊界路由網(wǎng)橋比傳輸路由網(wǎng)橋需要額外維護ー些終端MAC等信息。在相關技術中,對于終端傳送過來的數(shù)據(jù)報文和協(xié)議報文,邊界路由網(wǎng)橋并無區(qū)分處理,都當原始幀來處理。對于組播協(xié)議報文來說,因為需要所有終端可達,所以TRILL網(wǎng)絡會沿樹轉(zhuǎn)發(fā)至所有邊界路由網(wǎng)橋。圖2是相關技術中Internet組管理協(xié)議(Internet GroupManagement Protocol,簡稱為IGMP)的協(xié)議報文在TRILL網(wǎng)絡內(nèi)傳輸?shù)氖疽鈭D,如圖2所示,在TRILL網(wǎng)絡內(nèi)存在著大量的IGMP查詢報文(IGMP Query),以及IGMP回復報文(IGMPReport)。對于原始查詢及回復報文來說,需要將該報文在整棵樹上轉(zhuǎn)發(fā)一次。圖3是相關技術中在TRILL網(wǎng)絡內(nèi)存在的ー棵以RB2為根的樹的示意圖,如圖3所示,以該RB2為根的樹存在很多的分支,組播報文默認沿樹轉(zhuǎn)發(fā)。因此,對于有大量組成員存在于不同組的大型ニ層組播網(wǎng)絡來說,存在著大量的IGMP協(xié)議報文,這些協(xié)議報文會在整個TRILL網(wǎng)絡中轉(zhuǎn)發(fā)至所有RB節(jié)點。而大量報文的傳輸,對于網(wǎng)絡帶寬,將是較大的浪費。另外,隨著服務器虛擬化技術的成熟,數(shù)據(jù)中心部署虛擬機服務器應用越來越多?;趥浞荨⒐?jié)能等方面原因,虛擬機遷移的應用也越來越多。關于虛擬機的遷移涉及的內(nèi)容較多,例如,虛擬機及上行路由網(wǎng)橋資源的預留,以及上行路由網(wǎng)橋節(jié)點感知到虛擬機物理位置切換。組播收集組播組及其成員信息是通過IGMP的Query及Report以及Leave報文來定期更新的通過Query報文的周期發(fā)送,收到Query的主機回復Report報文后,由此進行更新維護。而IGMP的Query報文周期發(fā)送間隔默認為125s,組成員信息的老化時間ー般為260s。當虛擬機發(fā)生遷移時,虛擬機上正好有組播業(yè)務的存在,依賴組播協(xié)議自己的收斂時間,不可避免的會導致長時間的流量中斷。例如,在一個邊界路由網(wǎng)橋剛收到虛擬機的Iteport回復時,虛擬機就發(fā)生遷移,由路由網(wǎng)橋I下遷移接入路由網(wǎng)橋2。對于路由網(wǎng)橋2來說,并不知道虛擬機上有組播業(yè)務,需要等待新的Query發(fā)送,但下ー個Query發(fā)送在125s鐘之后,虛擬機通過收到的Query報文回復相應的Iteport信息,路由網(wǎng)橋2上收到該R印ort后才會知道有該組播成員的存在,之后流量才可以正常抵達,這么長時間的流量中斷,對于用戶來說是不可接受的。另外,對于路由網(wǎng)橋I來說,表項會在260s后老化,給虛擬機投遞的組播流量仍會往路由網(wǎng)橋I投遞這么長時間,也是帶寬的浪費。尤其在IGMP snooping網(wǎng)絡,由于IGMP的Query報文發(fā)送周期可能更長,表項的老化周期也可能更長,流量丟失的情況會更嚴重。因此,現(xiàn)有技術中存在感知到虛擬機的遷移后,組播業(yè)務切換過慢的問題。因此,現(xiàn)有技術中存在網(wǎng)絡節(jié)點間組播協(xié)議報文交互浪費帶寬資源,以及組播業(yè)務切換過慢的問題。
發(fā)明內(nèi)容
本發(fā)明提供了一種組播協(xié)議報文發(fā)送方法及裝置,以至少解決現(xiàn)有技術中網(wǎng)絡節(jié)點間組播協(xié)議報文交互浪費帶寬資源,以及組播業(yè)務切換過慢的問題。根據(jù)本發(fā)明的ー個方面,提供了一種組播協(xié)議報文發(fā)送方法,包括邊界路由網(wǎng)橋接收用于查詢組播信息的觸發(fā)信息;所述邊界路由網(wǎng)橋根據(jù)所述觸發(fā)信息查詢所述組播信息;所述邊界路由網(wǎng)橋根據(jù)查詢到的所述組播信息,發(fā)送組播協(xié)議報文。優(yōu)選地,用于查詢所述組播信息的所述觸發(fā)信息為以下至少之ー第一查詢報文,其中,所述第一查詢報文用于向所述邊界路由網(wǎng)橋查詢組播成員信息或組播業(yè)務信息、虛擬機遷移的通告信息,其中,所述通告信息用于通告所述邊界路由網(wǎng)橋所述虛擬機的遷入或遷出。優(yōu)選地,所述邊界路由網(wǎng)橋根據(jù)查詢到的所述組播信息,發(fā)送所述組播協(xié)議報文包括,在所述觸發(fā)信息為所述第一查詢報文的情況下,所述邊界路由網(wǎng)橋發(fā)送組播協(xié)議報文,其中,所述組播協(xié)議報文為所述邊界路由網(wǎng)橋根據(jù)查詢到的所述組播信息構(gòu)建的回復報文。優(yōu)選地,所述邊界路由網(wǎng)橋根據(jù)查詢到的所述組播信息,發(fā)送所述組播協(xié)議報文包括,在所述觸發(fā)信息為所述虛擬機遷移的通告信息的情況下,所述邊界路由網(wǎng)橋向遷移的虛擬機發(fā)送所述組播協(xié)議報文,其中,所述組播協(xié)議報文為用于查詢所述遷移的虛擬機上是否存在組播業(yè)務的第二查詢報文。優(yōu)選地,所述邊界路由網(wǎng)橋向遷移的虛擬機發(fā)送所述組播協(xié)議報文包括,虛擬機遷入方向的邊界路由網(wǎng)橋在接收到虛擬機遷入的通告信息時,根據(jù)所述通告信息查詢到的所述組播信息;根據(jù)所述組播信息,在所述遷入方向的邊界路由網(wǎng)橋接收到所述虛擬機發(fā)出的第一個報文之后,向所述虛擬機發(fā)送所述第二查詢報文;和/或,虛擬機遷出方向的邊界路由網(wǎng)橋在接收到虛擬機遷出的通告信息時,定期向所述虛擬機發(fā)送所述第二查詢報文,直到虛擬機遷出方向的邊界路由網(wǎng)橋接收不到所述第二查詢報文對應的回復報文。優(yōu)選地,所述第一查詢報文和所述第二查詢報文為組播普通查詢報文或組播特定組查詢報文,其中,所述組播普通查詢報文為向所有組播組查詢的報文,所述組播特定組查詢報文為向特定標識組查詢的報文。優(yōu)選地,還包括,在所述邊界路由網(wǎng)橋根據(jù)所述組播標識查詢所述組播信息之前,所述邊界路由網(wǎng)橋向所述TRILL網(wǎng)絡中的網(wǎng)絡節(jié)點發(fā)送第三查詢報文,其中,所述邊界路由網(wǎng)橋根據(jù)所述第三查詢報文對所述組播信息進行更新。優(yōu)選地,所述邊界路由網(wǎng)橋在預定的周期內(nèi)向所述TRILL網(wǎng)絡中的網(wǎng)絡節(jié)點發(fā)送所述第三查詢報文。 根據(jù)本發(fā)明的另一方面,提供了一種組播協(xié)議報文發(fā)送裝置,位于邊界路由網(wǎng)橋中,包括接收模塊,用于接收用于查詢組播信息的觸發(fā)信息;查詢模塊,用于根據(jù)所述觸發(fā)信息查詢所述組播信息;發(fā)送模塊,用于根據(jù)查詢到的所述組播信息,發(fā)送組播協(xié)議報文。優(yōu)選地,所述發(fā)送模塊包括第一發(fā)送模塊,用于在所述觸發(fā)信息為所述第一查詢報文的情況下,發(fā)送組播協(xié)議報文,其中,所述組播協(xié)議報文為所述邊界路由網(wǎng)橋根據(jù)查詢到的所述組播信息構(gòu)建的回復報文。優(yōu)選地,所述發(fā)送模塊包括第二發(fā)送模塊,用于在所述觸發(fā)信息為所述虛擬機遷移的通告信息的情況下,所述邊界路由網(wǎng)橋向遷移的虛擬機發(fā)送所述組播協(xié)議報文,其中,所述組播協(xié)議報文為用于查詢所述遷移的虛擬機上是否存在組播業(yè)務的第二查詢報文。優(yōu)選地,還包括第三發(fā)送模塊,用于向多鏈接透明互連TRILL網(wǎng)絡中的網(wǎng)絡節(jié)點發(fā)送第三查詢報文,其中,所述邊界路由網(wǎng)橋根據(jù)所述第三查詢報文對所述組播信息進行更新。通過本發(fā)明,采用邊界路由網(wǎng)橋接收用于查詢組播信息的觸發(fā)信息;所述邊界路由網(wǎng)橋根據(jù)所述觸發(fā)信息查詢所述組播信息;所述邊界路由網(wǎng)橋根據(jù)查詢到的所述組播信息,發(fā)送組播協(xié)議報文。解決了現(xiàn)有技術中網(wǎng)絡節(jié)點間組播業(yè)務交互浪費帶寬資源,以及業(yè)務切換過慢的問題,進而達到了節(jié)約網(wǎng)絡帶寬,提高業(yè)務切換效率以及用戶體驗的效果。
此處所說明的附圖用來提供對本發(fā)明的進ー步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中圖I是相關技術中協(xié)議報文傳輸?shù)木W(wǎng)絡架構(gòu)圖;圖2是相關技術中IGMP協(xié)議報文在TRILL網(wǎng)絡內(nèi)傳輸?shù)氖疽鈭D;圖3是相關技術中在TRILL網(wǎng)絡內(nèi)存在的ー棵以RB2為根的樹的示意圖;圖4是根據(jù)本發(fā)明實施例的組播協(xié)議報文發(fā)送方法的流程圖;圖5是根據(jù)本發(fā)明實施例的組播協(xié)議報文發(fā)送裝置的結(jié)構(gòu)框圖6是根據(jù)本發(fā)明實施例的組播協(xié)議報文發(fā)送裝置中發(fā)送模塊56的結(jié)構(gòu)框7是根據(jù)本發(fā)明實施例的組播協(xié)議報文發(fā)送裝置中發(fā)送模塊56的結(jié)構(gòu)框圖-* ,圖8是根據(jù)本發(fā)明優(yōu)選實施例的組播協(xié)議報文發(fā)送裝置的結(jié)構(gòu)框圖;圖9是根據(jù)本發(fā)明實施例的IGMP協(xié)議報文在TRILL傳輸?shù)氖疽鈭D;圖10是根據(jù)本發(fā)明實施例的虛擬機遷移時資源處理的示意圖;圖11是根據(jù)本發(fā)明實施例的虛擬機遷移的示意圖。
具體實施方式
下文中將參考附圖并結(jié)合實施例來詳細說明本發(fā)明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。對于組播協(xié)議報文來說,而其實根據(jù)TRILL控制幀傳遞的信息,邊界路由網(wǎng)橋已收集到組播成員所有有效信息。例如,協(xié)議(Internet Group Management Protocol,簡稱為IGMP)報文,邊界路由網(wǎng)橋在學習到報文的有效信息(例如,VLAN、源MAC、組播MAC)之后,控制面會將該有效信息洪泛到所有節(jié)點,因此,該邊界路由網(wǎng)橋存有該組播信息。對于原始查詢報文來說,與之相連的路由網(wǎng)橋已經(jīng)通過控制面收集到是否有無組播組成員存在,根據(jù)結(jié)果直接進行回復即可,無需在整顆樹上將該報文轉(zhuǎn)發(fā)一次。對于有大量組成員存在于不同組的大型ニ層組播網(wǎng)絡來說,也存在著大量的IGMP協(xié)議報文,而由ERB進行IGMP的查詢和回復,將會有效節(jié)約TRILL網(wǎng)絡的帶寬。另外,基于上述所分析的,如何進行組播流量的快速切換,有非常重要的意義。而對于具體虛擬機遷移時所攜帯的組播業(yè)務,如何進行有效即時的切換,未有太多研究。在感知到虛擬機遷移的時候,通過ERB的及時Query觸發(fā),對虛擬機上可能運行的組播業(yè)務也能進行即時的感知,由此流量得以及時的進行切換。因此,由ERB實現(xiàn)IGMP的查詢和回復,同時可以解決虛擬機遷移時的組播流量及時切換的問題。在本實施例中提供了一種組播協(xié)議報文發(fā)送方法,圖4是根據(jù)本發(fā)明實施例的組播協(xié)議報文發(fā)送方法的流程圖,如圖4所示,該流程包括如下步驟步驟S402,邊界路由網(wǎng)橋接收用于查詢組播信息的觸發(fā)信息;步驟S404,該邊界路由網(wǎng)橋根據(jù)上述觸發(fā)信息查詢組播信息;步驟S406,該邊界路由網(wǎng)橋根據(jù)查詢到的上述組播信息,發(fā)送組播協(xié)議報文。通過上述步驟,通過邊界路由網(wǎng)橋ERB來實施對組播信息的查詢與處理,相對于現(xiàn)有技術中在進行組播信息交互吋,該ERB所起的作用只是對報文進行轉(zhuǎn)發(fā),或者是透傳,而不會對接收的報文進行任何的處理,根據(jù)上述方案依據(jù)觸發(fā)信息不同,該ERB根據(jù)觸發(fā)信息從該ERB本地查詢到該組播信息,在查詢到該組播信息時就直接依據(jù)該組播信息對組播協(xié)議報文進行處理,因而也有效地避免了現(xiàn)有技術中需要在整個網(wǎng)絡中傳送報文而帶來的帶寬資源浪費,以及組播業(yè)務切換感知過慢,影響用戶體驗的問題,不僅大大節(jié)約了網(wǎng)絡帶寬,而且,提高了業(yè)務切換效率,從而使用戶體驗也得到了提升。依據(jù)上述ERB查詢組播業(yè)務信息可以應用于多種的業(yè)務需求,S卩,用于查詢組播信息的觸發(fā)信息依據(jù)業(yè)務需求的不同而不同,例如,該觸發(fā)信息可以為第一查詢報文,其中,該查詢報文用于向上述ERB查詢組播成員信息或組播業(yè)務信息(該第一查詢報文可以來自TRILL網(wǎng)絡外的任何網(wǎng)元,例如,可以來自路由器)、又例如,該觸發(fā)信息也可以為虛擬機遷移的通告信息,其中,該通告信息用于通告ERB虛擬機的遷入或遷出。下面針對上述兩種不同的業(yè)務需求ERB完成查詢組播信息之后所進行的后續(xù)處理進行說明。(I)在上述觸發(fā)信息為查詢報文的情況下,依據(jù)第一查詢報文的所要查詢的內(nèi)容的不同,該ERB根據(jù)查詢到的組播信息構(gòu)建相應的回復報文,然后向發(fā)送該第一查詢報文的網(wǎng)元發(fā)送該回復報文。例如,當?shù)谝徊樵儓笪挠糜诓樵兘M播成員信息吋,ERB將根據(jù)組播標識查詢到的組播成員信息構(gòu)建回復報文,然后將該回復報文向發(fā)送該第一查詢報文的網(wǎng)元發(fā)送該回復報文,該回復報文包含有上述查詢到的組播成員信息(例如,某成員是否屬于該組播內(nèi)的組播成員)。通過上述處理,實現(xiàn)了 ERB上接收協(xié)議報文(例如,IGMP查詢報文)和回復報文的發(fā)送,例如,在路由器向ERB發(fā)送查詢報文吋,ERB根據(jù)組播信息的查詢結(jié)果進行報文回復。(2)在上述觸發(fā)信息為虛擬機遷移的通告信息的情況下,該ERB根據(jù)查詢到的上 述組播信息判斷遷入或遷出的虛擬機上是否存在組播業(yè)務;在遷入或遷出的虛擬機上存在組播業(yè)務的情況下,該ERB向遷移的虛擬機發(fā)送上述組播協(xié)議報文,上述組播協(xié)議報文為用于查詢上述遷移的虛擬機上是否存在組播業(yè)務的第二查詢報文,該第二查詢報文是ERB是在根據(jù)從本地查詢到遷移的虛擬上存在組播業(yè)務之后,對該發(fā)生遷移的虛擬機上是否存在組播業(yè)務進行確認,以便后續(xù)對組播關系的更新。其中,上述所指的邊界路由網(wǎng)橋包括了虛擬機遷入方向上的邊界路由網(wǎng)橋和虛擬機遷出方向上的邊界路由網(wǎng)橋,在實施吋,ERB可以向虛擬機發(fā)送查詢報文,該查詢報文用于對該虛擬機上是否存在組播業(yè)務進行確認,例如,對于虛擬機遷出方向的邊界路由網(wǎng)橋在接收到虛擬機遷出的通告信息時,定期向虛擬機發(fā)送上述第二查詢報文,當收到該虛擬機的回復報文時則確認該虛擬機上存在組播業(yè)務,然而,如果沒有收到相應的回復報文,則認為需要對該虛擬機上是否存在組播業(yè)務進行再次確認,直到虛擬機遷出方向的邊界路由網(wǎng)橋接收不到上述第二查詢報文對應的回復報文,此時說明了該虛擬機已遷出,即可以對該虛擬機占用的組播資源進行釋放。對于遷出方向的邊界路由網(wǎng)橋,在收到遷移的通告消息的時候就定時觸發(fā),收不到回復的時候不再發(fā)送了。而對于遷入方向的邊界路由網(wǎng)橋,感知到虛擬機遷移進來才發(fā)上述第二查詢報文(例如,虛擬機遷移過來后向虛擬機發(fā)出,遷入方向邊界路由網(wǎng)橋接收到的虛擬機發(fā)出的第一個報文后,向虛擬機發(fā)出第二查詢報文);即,虛擬機遷入方向的邊界路由網(wǎng)橋在接收到虛擬機遷入的通告信息時,根據(jù)接收通告信息查詢到的組播信息;根據(jù)組播信息,在遷入方向的邊界路由網(wǎng)橋接收到虛擬機發(fā)出的第一個報文時,向虛擬機發(fā)送上述第二查詢報文,需要說明的是,上述第一查詢報文和第二查詢報文都可以為組播普通查詢報文或組播特定組查詢報文,其中,組播普通查詢報文為向所有組播組查詢的報文,即是對所有組播組發(fā)送的報文,所有組播組都會對該報文進行回復。而上述組播特定組查詢報文為向特定標識組查詢的報文,即該查詢只針對該特定標識組,也只是該特定標識組進行相應的回復。優(yōu)選地,在確認該虛擬機上存在上述組播業(yè)務時,對組播業(yè)務進行切換可以采用以下處理方式在遷入或遷出的虛擬機上存在組播業(yè)務的情況下,該ERB將遷入或遷出的虛擬機上的組播關系進行更新;該ERB將更新后的虛擬機的組播關系通告網(wǎng)絡中的節(jié)點;ERB通過更新后的組播關系切換組播業(yè)務。另外,邊界路由網(wǎng)橋中所存儲的組播信息可以來自多種途徑,例如,該ERB可以預先通過控制面收集網(wǎng)絡節(jié)點的該組播信息,而通過控制面收集到該組播信息并不需要多層報文的轉(zhuǎn)發(fā),從而在一定程度上節(jié)約了網(wǎng)絡帶寬。當然,在ERB根據(jù)組播標識查詢組播信息之前,ERB向TRILL網(wǎng)絡中的網(wǎng)絡節(jié)點發(fā)送第三查詢報文,其中,ERB根據(jù)所述第三查詢報文對組播信息進行更新。較優(yōu)地,可以在預定的時間內(nèi)對所述ERB收集存儲的該組播信息進行更新,即,對ERB上所存儲的組播信息進行周期性的更新,更新的方式可以是預先設置,例如,可以在網(wǎng)絡節(jié)點中的組播關系發(fā)生改變時,觸發(fā)更新;當然也可以通過設置預定的更新時間,在預定的更新時間到達時,就發(fā)送查詢報文,根據(jù)收到的對應回復報文對收集到的組播信息進行更新。在本實施例中還提供了一種組播協(xié)議報文發(fā)送裝置,該裝置用于實現(xiàn)上述實施例及優(yōu)選實施方式,已經(jīng)進行過說明的不再贅述。如以下所使用的,術語“模塊”可以實現(xiàn)預定功能的軟件和/或硬件的組合。盡管以下實施例所描述的裝置較佳地以軟件來實現(xiàn),但是硬件,或者軟件和硬件的組合的實現(xiàn)也是可能并被構(gòu)想的。
圖5是根據(jù)本發(fā)明實施例的組播協(xié)議報文發(fā)送裝置的結(jié)構(gòu)框圖,如圖5所示,該裝置位于邊界路由網(wǎng)橋中,包括接收模塊52、查詢模塊54和發(fā)送模塊56,下面對該裝置進行說明。接收模塊52,用于接收用于查詢組播信息的觸發(fā)信息,其中,該觸發(fā)信息攜帶有用于查詢組播信息的組播標識;查詢模塊54,連接至上述接收模塊52,用于根據(jù)上述組播標識查詢組播信息;發(fā)送模塊56,連接至上述查詢模塊54,用于根據(jù)查詢到的組播信息,發(fā)送組播協(xié)議報文。圖6是根據(jù)本發(fā)明實施例的組播協(xié)議報文發(fā)送裝置中發(fā)送模塊56的結(jié)構(gòu)框圖一,如圖6所示,該發(fā)送模塊56包括第一發(fā)送模塊62,用于在上述觸發(fā)信息為第一查詢報文的情況下,發(fā)送組播協(xié)議報文,其中,該組播協(xié)議報文為上述ERB根據(jù)查詢到的組播信息構(gòu)建的回復報文。圖7是根據(jù)本發(fā)明實施例的組播協(xié)議報文發(fā)送裝置中發(fā)送模塊56的結(jié)構(gòu)框圖二,如圖7所示,該發(fā)送模塊56包括第二發(fā)送模塊72,用于在上述觸發(fā)信息為虛擬機遷移的通告信息的情況下,該ERB向遷移的虛擬機發(fā)送組播協(xié)議報文,其中,該組播協(xié)議報文為用于查詢遷移的虛擬機上是否存在組播業(yè)務的第二查詢報文。圖8是根據(jù)本發(fā)明優(yōu)選實施例的組播協(xié)議報文發(fā)送裝置的結(jié)構(gòu)框圖,如圖8所示,該裝置除包括圖5中的所有模塊外,還包括第三發(fā)送模塊82,連接至上述查詢模塊54,用于在ERB根據(jù)組播標識查詢組播信息之前,向TRILL網(wǎng)絡中的網(wǎng)絡節(jié)點發(fā)送第三查詢報文,其中,ERB根據(jù)該第三查詢報文對組播信息進行更新,即在在用戶側(cè),由ERB來周期的發(fā)送查詢報文,從而根據(jù)用戶側(cè)的反饋來對組播信息進行及時的更新。上述實施例及優(yōu)選實施方式在于提供一種在數(shù)據(jù)中心尤其是網(wǎng)絡中(例如,TRILL網(wǎng)絡)組播流量優(yōu)化方法,其主要思想在于在數(shù)據(jù)中心的TRILL網(wǎng)絡,利用TRILL的控制面ISIS協(xié)議,以及ERB上的IGMP Snooping模塊維護的組播信息,將過來的IGMP協(xié)議報文進行有效的學習后,根據(jù)ISIS協(xié)議接收洪泛的組播有效信息,ERB根據(jù)這些信息可對組播報文直接進行查詢和回復,無需將IGMP報文進行TRILL數(shù)據(jù)封裝之后,在TRILL網(wǎng)絡中沿組播樹進行轉(zhuǎn)發(fā)。即將原本只是由IGMP Snooping收集的有效信息通告給TRILL的ISIS模塊,現(xiàn)在需要ISIS模塊將收集的有效信息通知給IGMP模塊,以便當過來Query報文時,可以根據(jù)已經(jīng)收集到的信息直接回復Import報文,當然為了維護本地的一個組播成員狀態(tài),ERB需要主動周期發(fā)送Query報文來定期更新本地表項。而當ERB得到本地將有虛擬機遷移進來的信息時,可以根據(jù)控制面收集的信息,對用戶攜帶的信息是否與已收集到的組播信息進行比較,然后感知到虛擬機遷移進來時觸發(fā)ERB上IGMP Query報文的發(fā)送,得到虛擬機的Import回復后進行本地數(shù)據(jù)庫的更新維護,以及通過控制面新信息報文對數(shù)據(jù)中心其它節(jié)點進行及時洪泛。由此對于整個數(shù)據(jù)中心來講,到該虛擬機的組播業(yè)務流量是新的邊界路由網(wǎng)橋可達的?;谏鲜鏊枷耄W(wǎng)絡中的EBR在接收到針對不同的查詢組播信息的觸發(fā)信息時,所采取的處理方式也存在較大差異,下面針對幾種觸發(fā)信息分別進行說明。(I)當TRILL網(wǎng)絡某一邊界路由網(wǎng)橋收到IGMP的Query消息時(即該觸發(fā)信息為查詢報文,該報文用于查詢組播信息,例如,查詢組播成員信息),根據(jù)TRILL控制面ISIS收集的組播成員信息情況,直接進行IGMP R印ort回復。而對于用戶接入側(cè)而言,邊界路由網(wǎng) 橋周期發(fā)送Query報文,根據(jù)下行存在的組播成員回復的Iteport信息,維護更新本地的組播成員信息情況,當然也可以設置在組播成員發(fā)生改變時,就對ERB收集的組播成員信息進行更新。(2)對于得到通知說將有虛擬機遷移到本地的ERB (即,此時的觸發(fā)信息為虛擬機遷移通告,該遷移通告用于通告虛擬機的遷入或遷出),ERB將根據(jù)通知消息中的虛擬機的VLAN、MAC來判斷數(shù)據(jù)庫中是否已有該成員相關的組播信息存在。如果數(shù)據(jù)庫中存在該成員的組播信息的話,則在感知到虛擬機遷移進來時觸發(fā)一個IGMP Query查詢報文的發(fā)送,該IGMPQuery查詢報文用于對組播成員是否存在組播業(yè)務進行確認,根據(jù)虛擬機回復的IGMPReport報文,進行數(shù)據(jù)庫控制面信息的更新,并觸發(fā)更新報文通知其它節(jié)點。根據(jù)更新后的組播關系,該ERB與網(wǎng)絡中的其它節(jié)點進行組播業(yè)務。另外,對于收到通知說有虛擬機遷移出本地的ERB來說,同樣根據(jù)通知中的虛擬機信息,查詢到該虛擬機在本地有組播信息存在,則調(diào)整該ERB上的Query發(fā)送間隔,當有Query發(fā)出無R印ort回復時,則即時對該虛擬機占用的組播資源進行釋放。這樣在一定程度上避免了組播資源的浪費,也有效地節(jié)省了網(wǎng)絡帶寬資源。需要說明的是,網(wǎng)絡中進行傳輸報文所依據(jù)的協(xié)議不同時,所采用的協(xié)議報文也可以不同,例如,當網(wǎng)絡傳輸報文所采用的協(xié)議為IGMP協(xié)議時,所傳輸?shù)膱笪臑镮GMP協(xié)議報文,而采用的協(xié)議為MLD協(xié)議時,依據(jù)該協(xié)議所傳輸?shù)膱笪臑镸LD協(xié)議報文。不管采用什么其它不同的協(xié)議報文,只要不脫離本發(fā)明的思想,對協(xié)議報文并不具體限定,即,只要采用了本發(fā)明實施例或優(yōu)選實施方式的技術手段,就可以在一定程度上解決相關技術中所存在的類似問題。下面以IGMP協(xié)議報文在TRILL網(wǎng)絡中的傳輸為例進行說明。在本優(yōu)選實施例中提供了一種協(xié)議報文在網(wǎng)絡中的優(yōu)化傳輸方法,下面對IGMP協(xié)議報文在TRILL網(wǎng)絡傳輸?shù)膬?yōu)化(以IGMPV2版本為例)進行說明?;趫DI所示出的網(wǎng)絡架構(gòu),以ERBl為邊界路由網(wǎng)橋為例進行說明,當ERBl收到Hostl發(fā)送來的IGMP Report報文后,解析report報文,提取出report報文中攜帶的有效信息(如VLANJi MAC、主機源MAC),本地維護一張接收端口與有效信息的對應關系表,其后通過GADDR-TLV142進行封裝在ISIS的LSP報文內(nèi)進行洪泛,這樣對于遠端和Router相連的ERB3來講,就已經(jīng)知道本網(wǎng)絡中有組成員Hostl存在,因此該IGMP Report報文將完全無需在中間RB上進行傳遞,ERBl在記錄了有效信息后,刷新本地維護的對應關系表。當Router上過來IGMP Query消息時,ERB3根據(jù)已知信息進行封裝答復,同時ERB3也不再將該Query報文給其它RB、ERB傳遞。一般路由器側(cè)只需要收到下行有接收者接收就行,所以這種情況,由ERB3隨機生成一個合法的ip作為源ip地址回復出報文即可。若路由器端收到的回復需要與代理前的完全一致,則需要組成員的各個源ip地址來逐個回復r印ort,這時可以根據(jù)需要將GADDR-TLV擴展攜帶源IP地址信息在數(shù)據(jù)庫中攜帶。圖9是根據(jù)本發(fā)明實施例的IGMP協(xié)議報文在TRILL傳輸?shù)氖疽鈭D,如圖9所示,TRILL域內(nèi)不再有IGMP協(xié)議報文的傳遞了。
而對于本地表項的更新,默認可以根據(jù)host端過來的report報文或leave報文,進行表項的更新維護,若想定期刷新,可以根據(jù)表項生存時間,進行周期的查詢報文發(fā)送,根據(jù)返回的report報文進行狀態(tài)的更新。若Hostl發(fā)出leave報文,貝U本地表項以及ISISLSP將更新信息及時發(fā)布出去,在整個TRILL域內(nèi)洪泛。需要說明的是,MLD協(xié)議報文在TRILL網(wǎng)絡傳輸與上述優(yōu)選實施例中IGMP協(xié)議報文在TRILL網(wǎng)絡內(nèi)的傳輸類似,所不同的是,協(xié)議報文由IGMP協(xié)議報文的查詢、回復變?yōu)镸LD協(xié)議報文的查詢、回復。當然還可以是其它協(xié)議的報文,在此并不一一舉例說明。在本實施例中還提供了一種虛擬機遷移基于ERB查詢虛擬機上的組播業(yè)務信息來實現(xiàn)虛擬機上組播業(yè)務轉(zhuǎn)換。在本實施例中提供了一種虛擬機遷移時結(jié)合VDP協(xié)議通告信息來實現(xiàn)的方式。圖10是根據(jù)本發(fā)明實施例的虛擬機遷移時資源處理的示意圖,如圖10所示,虛擬機遷移時,IEEE的標準協(xié)議VDP會將邊需要準備的資源以及釋放的資源攜帶虛擬機VM的信息通知給邊界交換機。虛擬機VMl將由ERBl遷入到ERB2的覆蓋范圍。虛擬機遷移時通過虛擬發(fā)現(xiàn)配置協(xié)議(VSI (Virtual station interface)Discovery and Configuration Protocol,簡稱為VDP)通知邊界交換機(結(jié)合TRILL網(wǎng)絡),有虛擬機進行遷移的動作發(fā)生。對于實施虛擬機遷移的管理者來說,會讓連接VM的Vswitch通告VDP消息給邊界交換機,本示例以TRILL網(wǎng)絡的邊界路由交換機ERB為例進行說明。步驟①,VDP通知ERB2預留資源,有虛擬機VMl要遷移過來VDP消息由Vswitch2上發(fā)送通告給ERB2,將有虛擬機VMl遷移進來,請預留資源。該VDP消息中會攜帶有VMl的VSIid, VLAN、MAC三元組信息,記錄為虛擬機信息;步驟②,VDP通知ERBl準備釋放資源,VMl要遷移出去在通知資源預分配后,發(fā)VDP消息給ERBl,攜帶虛擬機信息表明,該虛擬機將要離開,請釋放資源;步驟③,ERB2與Vswitch2通過VDP協(xié)議進行的資源協(xié)商在ERB2和Vswitch2間通過VDP協(xié)商需要為該虛擬機進行資源協(xié)商;步驟④,VMl進行遷移在資源協(xié)商成功后,虛擬機將在該數(shù)據(jù)中心TRILL網(wǎng)絡進行遷移。圖11是根據(jù)本發(fā)明實施例的虛擬機遷移的示意圖,如圖11所示,該圖示出了虛擬機遷移結(jié)合數(shù)據(jù)中心的TRILL網(wǎng)絡圖,圖中VM (Virtual Machine) I…VMn為同一個虛擬交換機下的多個虛擬機,其中VMl發(fā)生遷移,由虛擬交換機Vswitch (Virtual Switch)!接入ERB1,遷移發(fā)生后,由虛擬交換機Vswitch2接入ERB2。TRILL網(wǎng)絡的控制面協(xié)議為ISIS(Intermediate System to Intermediate System Routing Protocol)協(xié)議。VMl 開始接入了 ERB1,則在接入時ERBl生成的ISIS LSP (Link-state Packet)消息中,由于虛擬機上有組播業(yè)務存在,發(fā)出的組播報文中,其VLAN信息、組播MAC (GMAC)以及源虛擬機MAC將會在ISIS LSP報文中攜帶泛洪出去,由此TRILL網(wǎng)絡的其它RB及ERB節(jié)點在收到ERBl的LSP信息后,就知道ERBl下面的虛擬機VMl上面有組播信息存在。下面對該實施方式進行說明步驟①,ERB2收到遷入通知,比較數(shù)據(jù)庫,對應有組播條目,將組播信息放緩存VDP消息通告ERB2預留資源時,虛擬機VMl的三元組信息ERB2上會感知到,根據(jù)虛擬機信息VSIid,拿VMl的MAC去組播數(shù)據(jù)庫中進行查找,會知道該MAC攜帶在ERBl的GMAC下面;步驟②,ERBl收到遷出消息,比較數(shù)據(jù)庫,有組播條目,發(fā)Query報文ERB1收到VDP關于VMl將要離開,釋放資源的申請。則利用虛擬機三元組中的MAC信息,查找本地數(shù)據(jù)庫,發(fā)現(xiàn)在本地加入過組播組GMAC,則觸發(fā)一個Query查詢,由于已知GMAC,可以優(yōu)選發(fā)特定組查詢報文,在接收不到Import回復的延時后,及時將VMl的組成員信息在本地刪除, 并觸發(fā)更新ISIS的LSP,洪泛TRILL網(wǎng)絡其它節(jié)點,本地沒有VMl這個組成員存在;步驟③,VMl發(fā)生遷移,由Vswitchl遷入Vswitch2 :虛擬機VMl發(fā)生遷移;步驟④,ERB2感知到VMl存在,發(fā)Query報文虛擬機VMl遷入ERB2后,啟動的時候會有報文發(fā)出,這時ERB2可以及時感知,通過對報文源MAC的學習,比較步驟I的緩存結(jié)果,發(fā)出一個IGMP Query報文,以便及時確認該VM是不是確實還有該組播業(yè)務存在,當?shù)玫絍Ml的Iteport回復時,更新本地的組播成員信息表,并觸發(fā)更新ISIS的LSP,洪泛TRILL網(wǎng)絡其他節(jié)點。由此,整個TRILL網(wǎng)絡的節(jié)點都知道僅有ERB2攜帶了 VMl的信息,后續(xù)流量即可正常轉(zhuǎn)發(fā)到ERB2上,再準確送達VM1,由此,組播流量中斷情況可有效得到緩解。顯然,本領域的技術人員應該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領域的技術人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種組播協(xié)議報文發(fā)送方法,其特征在于,包括 邊界路由網(wǎng)橋接收用于查詢組播信息的觸發(fā)信息; 所述邊界路由網(wǎng)橋根據(jù)所述觸發(fā)信息查詢所述組播信息; 所述邊界路由網(wǎng)橋根據(jù)查詢到的所述組播信息,發(fā)送組播協(xié)議報文。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,用于查詢所述組播信息的所述觸發(fā)信息為以下至少之一 第一查詢報文,其中,所述第一查詢報文用于向所述邊界路由網(wǎng)橋查詢組播成員信息或組播業(yè)務信息、 虛擬機遷移的通告信息,其中,所述通告信息用于通告所述邊界路由網(wǎng)橋所述虛擬機的遷入或遷出。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述邊界路由網(wǎng)橋根據(jù)查詢到的所述組播信息,發(fā)送所述組播協(xié)議報文包括,在所述觸發(fā)信息為所述第一查詢報文的情況下,所述邊界路由網(wǎng)橋發(fā)送組播協(xié)議報文,其中,所述組播協(xié)議報文為所述邊界路由網(wǎng)橋根據(jù)查詢到的所述組播信息構(gòu)建的回復報文。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述邊界路由網(wǎng)橋根據(jù)查詢到的所述組播信息,發(fā)送所述組播協(xié)議報文包括,在所述觸發(fā)信息為所述虛擬機遷移的通告信息的情況下,所述邊界路由網(wǎng)橋向遷移的虛擬機發(fā)送所述組播協(xié)議報文,其中,所述組播協(xié)議報文為用于查詢所述遷移的虛擬機上是否存在組播業(yè)務的第二查詢報文。
5.根據(jù)權(quán)利要求4所述的方法,其特征在干,所述邊界路由網(wǎng)橋向遷移的虛擬機發(fā)送所述組播協(xié)議報文包括, 虛擬機遷入方向的邊界路由網(wǎng)橋在接收到虛擬機遷入的通告信息時,根據(jù)所述通告信息查詢到的所述組播信息;根據(jù)所述組播信息,在所述遷入方向的邊界路由網(wǎng)橋接收到所述虛擬機發(fā)出的第一個報文之后,向所述虛擬機發(fā)送所述第二查詢報文;和/或, 虛擬機遷出方向的邊界路由網(wǎng)橋在接收到虛擬機遷出的通告信息時,定期向所述虛擬機發(fā)送所述第二查詢報文,直到虛擬機遷出方向的邊界路由網(wǎng)橋接收不到所述第二查詢報文對應的回復報文。
6.根據(jù)權(quán)利要求1-5中任一項所述的方法,其特征在于,所述第一查詢報文和所述第ニ查詢報文為組播普通查詢報文或組播特定組查詢報文,其中,所述組播普通查詢報文為向所有組播組查詢的報文,所述組播特定組查詢報文為向特定標識組查詢的報文。
7.根據(jù)權(quán)利要求1-5中任一項所述的方法,其特征在于,還包括,所述邊界路由網(wǎng)橋向多鏈接透明互連TRILL網(wǎng)絡中的網(wǎng)絡節(jié)點發(fā)送第三查詢報文,其中,所述邊界路由網(wǎng)橋根據(jù)所述第三查詢報文對所述組播信息進行更新。
8.根據(jù)權(quán)利要求7所述的方法,其特征在干,所述邊界路由網(wǎng)橋在預定的周期內(nèi)向所述TRILL網(wǎng)絡中的網(wǎng)絡節(jié)點發(fā)送所述第三查詢報文。
9.一種組播協(xié)議報文發(fā)送裝置,其特征在于,位于邊界路由網(wǎng)橋中,包括 接收模塊,用于接收用于查詢組播信息的觸發(fā)信息; 查詢模塊,用于根據(jù)所述觸發(fā)信息查詢所述組播信息; 發(fā)送模塊,用于根據(jù)查詢到的所述組播信息,發(fā)送組播協(xié)議報文。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述發(fā)送模塊包括第一發(fā)送模塊,用于在所述觸發(fā)信息為所述第一查詢報文的情況下,發(fā)送組播協(xié)議報文,其中,所述組播協(xié)議報文為所述邊界路由網(wǎng)橋根據(jù)查詢到的所述組播信息構(gòu)建的回復報文。
11.根據(jù)權(quán)利要求9所述的裝置,其特征在干,所述發(fā)送模塊包括第二發(fā)送模塊,用于在所述觸發(fā)信息為所述虛擬機遷移的通告信息的情況下,所述邊界路由網(wǎng)橋向遷移的虛擬機發(fā)送所述組播協(xié)議報文,其中,所述組播協(xié)議報文為用于查詢所述遷移的虛擬機上是否存在組播業(yè)務的第二查詢報文。
12.根據(jù)權(quán)利要求9-11中任一項所述的裝置,其特征在于,還包括第三發(fā)送模塊,用于向多鏈接透明互連TRILL網(wǎng)絡中的網(wǎng)絡節(jié)點發(fā)送第三查詢報文,其中,所述邊界路由網(wǎng)橋根據(jù)所述第三查詢報文對所述組播信息進行更新。
全文摘要
本發(fā)明提供了一種組播協(xié)議報文發(fā)送方法及裝置,該方法包括邊界路由網(wǎng)橋接收用于查詢組播信息的觸發(fā)信息;該邊界路由網(wǎng)橋根據(jù)觸發(fā)信息查詢組播信息;該邊界路由網(wǎng)橋根據(jù)查詢到的組播信息,發(fā)送組播協(xié)議報文。通過本發(fā)明,解決了現(xiàn)有技術中網(wǎng)絡節(jié)點間組播業(yè)務交互浪費帶寬資源,以及業(yè)務切換過慢的問題,進而達到了節(jié)約網(wǎng)絡帶寬,提高業(yè)務切換效率以及用戶體驗的效果。
文檔編號H04L12/18GK102761477SQ20121014061
公開日2012年10月31日 申請日期2012年5月8日 優(yōu)先權(quán)日2012年5月8日
發(fā)明者吳波, 廖婷, 翟洪軍, 肖敏 申請人:中興通訊股份有限公司