1.一種跨虛擬可擴(kuò)展局域網(wǎng)VXLAN的組播數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)方法,其特征在于,該方法包括:
VXLAN交換機(jī)的接口板接收VXLAN封裝的組播數(shù)據(jù)報(bào)文,對組播數(shù)據(jù)報(bào)文進(jìn)行VXLAN解封裝,確定VXLAN解封裝后的組播數(shù)據(jù)報(bào)文進(jìn)行三層組播轉(zhuǎn)發(fā),則將VXLAN解封裝后的組播數(shù)據(jù)報(bào)文發(fā)送至所述VXLAN交換機(jī)的網(wǎng)板;
所述VXLAN交換機(jī)的網(wǎng)板接收接口板發(fā)送的組播數(shù)據(jù)報(bào)文,確定接收的組播數(shù)據(jù)報(bào)文由本網(wǎng)板進(jìn)行三層組播轉(zhuǎn)發(fā),則在本網(wǎng)板本地的三層組播組表中找到與組播數(shù)據(jù)報(bào)文的目的IP地址和目的MAC地址匹配的三層組播組表項(xiàng),在所述三層組播組表項(xiàng)中的組播組成員端口為VXLAN隧道口時,將通過所述組播組成員端口發(fā)送的組播數(shù)據(jù)報(bào)文的源MAC地址修改為所述VXLAN交換機(jī)的網(wǎng)關(guān)MAC地址,將修改后的組播數(shù)據(jù)報(bào)文發(fā)送至VXLAN交換機(jī)上與所述組播組成員端口相關(guān)聯(lián)的接口板;
所述VXLAN交換機(jī)上與所述組播組成員端口相關(guān)聯(lián)的接口板接收網(wǎng)板發(fā)送的組播數(shù)據(jù)報(bào)文,對組播數(shù)據(jù)報(bào)文進(jìn)行VXLAN封裝并向VXLAN轉(zhuǎn)發(fā)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,VXLAN交換機(jī)的接口板在對組播數(shù)據(jù)報(bào)文進(jìn)行VXLAN解封裝之前進(jìn)一步包括:從組播數(shù)據(jù)報(bào)文的VXLAN封裝頭中識別出虛擬網(wǎng)絡(luò)標(biāo)識VNID;
所述VXLAN交換機(jī)的接口板確定VXLAN解封裝后的組播數(shù)據(jù)報(bào)文進(jìn)行三層組播轉(zhuǎn)發(fā)包括:
從本接口板本地的MAC表中查找到與所述VNID和所述VXLAN解封裝后的組播數(shù)據(jù)報(bào)文的目的MAC地址匹配的MAC表項(xiàng),
當(dāng)所述MAC表項(xiàng)的出接口為第一虛擬端口,且所述VXLAN解封裝后的組播數(shù)據(jù)報(bào)文的目的MAC地址為組播MAC地址、目的IP地址為組播IP地址,則確定VXLAN解封裝后的組播數(shù)據(jù)報(bào)文進(jìn)行三層組播轉(zhuǎn)發(fā)。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述將VXLAN解封 裝后的組播數(shù)據(jù)報(bào)文發(fā)送至所述VXLAN交換機(jī)的網(wǎng)板包括:
將VXLAN解封裝后的組播數(shù)據(jù)報(bào)文進(jìn)行第一內(nèi)部封裝,第一內(nèi)部封裝包含:第一目的芯片標(biāo)識mod和第一目的端口標(biāo)識port,第一目的mod為第一虛擬芯片的標(biāo)識,第一目的port為第一虛擬端口的標(biāo)識;
在本接口板僅連接一個網(wǎng)板時,通過本接口板連接網(wǎng)板的互連口發(fā)送第一內(nèi)部封裝的組播數(shù)據(jù)報(bào)文;在本接口板連接多個網(wǎng)板時,通過與多個網(wǎng)板分別連接的互連口中的一個互連口發(fā)送第一內(nèi)部封裝的組播數(shù)據(jù)報(bào)文;
所述確定接收的組播數(shù)據(jù)報(bào)文由本網(wǎng)板進(jìn)行三層組播轉(zhuǎn)發(fā)包括:
從接收的組播數(shù)據(jù)報(bào)文的第一內(nèi)部封裝頭中確定出第一目的mod和第一目的port;如果確定出的第一目的mod為所述第一虛擬芯片的標(biāo)識,第一目的port為所述第一虛擬端口的標(biāo)識,則對組播數(shù)據(jù)報(bào)文的第一內(nèi)部封裝進(jìn)行解封裝,如果解封裝后的組播數(shù)據(jù)報(bào)文的目的MAC地址為組播MAC地址、目的IP地址為組播IP地址,則確定接收的組播數(shù)據(jù)報(bào)文由本網(wǎng)板進(jìn)行三層組播轉(zhuǎn)發(fā)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將修改后的組播數(shù)據(jù)報(bào)文發(fā)送至VXLAN交換機(jī)上與所述組播組成員端口相關(guān)聯(lián)的接口板包括:
依據(jù)所述組播組成員端口確定目標(biāo)出端口,選擇所述目標(biāo)出端口所在的接口板為與所述組播組成員端口相關(guān)聯(lián)的接口板;
對修改后的組播數(shù)據(jù)報(bào)文進(jìn)行第二內(nèi)部封裝,將第二內(nèi)部封裝的報(bào)文發(fā)送至所述目標(biāo)出端口所在的接口板;第二內(nèi)部封裝包含:所述組播組成員端口對應(yīng)的VXLAN隧道封裝表項(xiàng)索引和虛擬轉(zhuǎn)發(fā)實(shí)例VFI;
所述對組播數(shù)據(jù)報(bào)文進(jìn)行VXLAN封裝并向VXLAN轉(zhuǎn)發(fā)包括:
從組播數(shù)據(jù)報(bào)文的第二內(nèi)部封裝頭中確定出VXLAN隧道封裝表項(xiàng)索引和VFI并對組播數(shù)據(jù)報(bào)文的第二內(nèi)部封裝進(jìn)行解封裝,依據(jù)所述VXLAN隧道封裝表項(xiàng)索引在本地找到對應(yīng)的VXLAN隧道封裝表項(xiàng),從預(yù)先設(shè)置的VFI和VNID之間的映射關(guān)系中找到與該確定出的VFI具有映射關(guān)系的VNID,利用所述VXLAN隧道封裝表項(xiàng)和找到的VNID對組播數(shù)據(jù)報(bào)文進(jìn)行 VXLAN封裝并通過該找到的VXLAN隧道封裝表項(xiàng)中的出端口發(fā)送。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,依據(jù)所述組播組成員端口確定目標(biāo)出端口包括:
在本地找到與所述組播組成員端口相關(guān)聯(lián)的VXLAN隧道對應(yīng)的下一跳表項(xiàng);
在所述下一跳表項(xiàng)中僅有一個下一跳時,確定所述下一跳表項(xiàng)中所述下一跳為目標(biāo)下一跳,在所述下一跳表項(xiàng)中有兩個以上下一跳時,從所述下一跳表項(xiàng)中的兩個以上下一跳中選擇一個下一跳確定為目標(biāo)下一跳;
在所述下一跳表項(xiàng)中與所述目標(biāo)下一跳對應(yīng)的出端口為單一的物理端口時,確定所述單一的物理端口為目標(biāo)出端口;在所述下一跳表項(xiàng)中與所述目標(biāo)下一跳對應(yīng)的出端口為至少兩個物理端口聚合形成的聚合端口,確定所述聚合端口中一個物理端口為所述目標(biāo)出端口。
6.一種跨虛擬可擴(kuò)展局域網(wǎng)VXLAN中的組播數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)設(shè)備,其特征在于,該設(shè)備應(yīng)用于作為網(wǎng)關(guān)的VXLAN交換機(jī),該設(shè)備包括:
接口板處理單元,處于所述VXLAN交換機(jī)的接口板,用于接收VXLAN封裝的組播數(shù)據(jù)報(bào)文,對組播數(shù)據(jù)報(bào)文進(jìn)行VXLAN解封裝,確定VXLAN解封裝后的組播數(shù)據(jù)報(bào)文進(jìn)行三層組播轉(zhuǎn)發(fā),則將VXLAN解封裝后的組播數(shù)據(jù)報(bào)文發(fā)送至所述VXLAN交換機(jī)的網(wǎng)板;以及,接收網(wǎng)板發(fā)送的組播數(shù)據(jù)報(bào)文,對接收的組播數(shù)據(jù)報(bào)文進(jìn)行VXLAN封裝并向VXLAN轉(zhuǎn)發(fā);
網(wǎng)板處理單元,處于所述VXLAN交換機(jī)的網(wǎng)板,用于接收接口板發(fā)送的組播數(shù)據(jù)報(bào)文,確定接收的組播數(shù)據(jù)報(bào)文由本網(wǎng)板進(jìn)行三層組播轉(zhuǎn)發(fā),則在本網(wǎng)板本地的三層組播組表中找到與組播數(shù)據(jù)報(bào)文的目的IP地址和目的MAC地址匹配的三層組播組表項(xiàng),在所述三層組播組表項(xiàng)中的組播組成員端口為VXLAN隧道口時,將通過所述組播組成員端口發(fā)送的組播數(shù)據(jù)報(bào)文的源MAC地址修改為所述VXLAN交換機(jī)的網(wǎng)關(guān)MAC地址,將修改后的組播數(shù)據(jù)報(bào)文發(fā)送至VXLAN交換機(jī)上與所述組播組成員端口相關(guān)聯(lián)的接口板。
7.根據(jù)權(quán)利要求6所述的設(shè)備,其特征在于,所述接口板處理單元在對 組播數(shù)據(jù)報(bào)文進(jìn)行VXLAN解封裝之前進(jìn)一步包括:從組播數(shù)據(jù)報(bào)文的VXLAN封裝頭中識別出虛擬網(wǎng)絡(luò)標(biāo)識VNID;
所述接口板處理單元通過以下步驟確定VXLAN解封裝后的組播數(shù)據(jù)報(bào)文進(jìn)行三層組播轉(zhuǎn)發(fā):從本接口板本地的MAC表中查找到與所述VNID和所述VXLAN解封裝后的組播數(shù)據(jù)報(bào)文的目的MAC地址匹配的MAC表項(xiàng),
當(dāng)所述MAC表項(xiàng)的出接口為第一虛擬端口,且所述VXLAN解封裝后的組播數(shù)據(jù)報(bào)文的目的MAC地址為組播MAC地址、目的IP地址為組播IP地址,則確定VXLAN解封裝后的組播數(shù)據(jù)報(bào)文進(jìn)行三層組播轉(zhuǎn)發(fā)。
8.根據(jù)權(quán)利要求6或7所述的設(shè)備,其特征在于,所述接口板處理單元通過以下步驟將VXLAN解封裝后的組播數(shù)據(jù)報(bào)文發(fā)送至所述VXLAN交換機(jī)的網(wǎng)板:
將VXLAN解封裝后的組播數(shù)據(jù)報(bào)文進(jìn)行第一內(nèi)部封裝,第一內(nèi)部封裝包含:第一目的芯片標(biāo)識mod和第一目的端口標(biāo)識port,第一目的mod為第一虛擬芯片的標(biāo)識,第一目的port為第一虛擬端口的標(biāo)識;
在本接口板僅連接一個網(wǎng)板時,通過本接口板連接網(wǎng)板的互連口發(fā)送第一內(nèi)部封裝的組播數(shù)據(jù)報(bào)文;在本接口板連接多個網(wǎng)板時,通過與多個網(wǎng)板分別連接的互連口中的一個互連口發(fā)送第一內(nèi)部封裝的組播數(shù)據(jù)報(bào)文;
所述網(wǎng)板處理單元通過以下步驟確定接收的組播數(shù)據(jù)報(bào)文由本網(wǎng)板進(jìn)行三層組播轉(zhuǎn)發(fā):
從接收的組播數(shù)據(jù)報(bào)文的第一內(nèi)部封裝頭中確定出第一目的mod和第一目的port;如果確定出的第一目的mod為所述第一虛擬芯片的標(biāo)識,第一目的port為所述第一虛擬端口的標(biāo)識,則對組播數(shù)據(jù)報(bào)文的第一內(nèi)部封裝進(jìn)行解封裝,如果解封裝后的組播數(shù)據(jù)報(bào)文的目的MAC地址為組播MAC地址、目的IP地址為組播IP地址,則確定接收的組播數(shù)據(jù)報(bào)文由本網(wǎng)板進(jìn)行三層組播轉(zhuǎn)發(fā)。
9.根據(jù)權(quán)利要求6所述的設(shè)備,其特征在于,所述網(wǎng)板處理單元通過以下步驟將修改后的組播數(shù)據(jù)報(bào)文發(fā)送至所述VXLAN交換機(jī)上與所述組播組 成員端口相關(guān)聯(lián)的接口板:依據(jù)所述組播組成員端口確定目標(biāo)出端口,選擇所述目標(biāo)出端口所在的接口板為與所述組播組成員端口相關(guān)聯(lián)的接口板對修改后的組播數(shù)據(jù)報(bào)文進(jìn)行第二內(nèi)部封裝,將第二內(nèi)部封裝的報(bào)文發(fā)送至所述目標(biāo)出端口所在的接口板;第二內(nèi)部封裝包含:所述組播組成員端口對應(yīng)的VXLAN隧道封裝表項(xiàng)索引和虛擬轉(zhuǎn)發(fā)實(shí)例VFI;
所述接口板處理單元通過以下步驟對組播數(shù)據(jù)報(bào)文進(jìn)行VXLAN封裝并向VXLAN轉(zhuǎn)發(fā):從組播數(shù)據(jù)報(bào)文的第二內(nèi)部封裝頭中確定出VXLAN隧道封裝表項(xiàng)索引和VFI并對組播數(shù)據(jù)報(bào)文的第二內(nèi)部封裝進(jìn)行解封裝,依據(jù)所述VXLAN隧道封裝表項(xiàng)索引在本地找到對應(yīng)的VXLAN隧道封裝表項(xiàng),從預(yù)先設(shè)置的VFI和VNID之間的映射關(guān)系中找到與該確定出的VFI具有映射關(guān)系的VNID,利用所述VXLAN隧道封裝表項(xiàng)和找到的VNID對組播數(shù)據(jù)報(bào)文進(jìn)行VXLAN封裝并通過該找到的VXLAN隧道封裝表項(xiàng)中的出端口發(fā)送。
10.根據(jù)權(quán)利要求9所述的設(shè)備,其特征在于,所述網(wǎng)板處理單元通過以下步驟實(shí)現(xiàn)依據(jù)所述組播組成員端口確定目標(biāo)出端口:
在本地找到與所述組播組成員端口相關(guān)聯(lián)的VXLAN隧道對應(yīng)的下一跳表項(xiàng);
在所述下一跳表項(xiàng)中僅有一個下一跳時,確定所述下一跳表項(xiàng)中所述下一跳為目標(biāo)下一跳,在所述下一跳表項(xiàng)中有兩個以上下一跳時,從所述下一跳表項(xiàng)中的兩個以上下一跳中選擇一個下一跳確定為目標(biāo)下一跳;
在所述下一跳表項(xiàng)中與所述目標(biāo)下一跳對應(yīng)的出端口為單一的物理端口時,確定所述單一的物理端口為目標(biāo)出端口;在所述下一跳表項(xiàng)中與所述目標(biāo)下一跳對應(yīng)的出端口為至少兩個物理端口聚合形成的聚合端口,確定所述聚合端口中一個物理端口為所述目標(biāo)出端口。