專利名稱:一種以太環(huán)網(wǎng)中動(dòng)態(tài)進(jìn)行組播流快速切換的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)通信領(lǐng)域,尤其涉及一種環(huán)網(wǎng)結(jié)構(gòu)下動(dòng)態(tài)進(jìn)行組播流快速切換的 技術(shù)。
背景技術(shù):
IGMP snooping (Internet Group Management Protocol Snooping,互聯(lián)網(wǎng)組管理 協(xié)議窺探)協(xié)議的功能是通過(guò)監(jiān)聽用戶和組播源之間IGMP交互報(bào)文,形成二層組播轉(zhuǎn)發(fā)表 項(xiàng),從而指導(dǎo)組播流量監(jiān)聽,控制組播不再依據(jù)交換機(jī)轉(zhuǎn)發(fā)原理而泛洪。STP(Spanning Tree Protocol,生成樹協(xié)議)是IEEE定義的一種以太網(wǎng)環(huán)路防 止協(xié)議,當(dāng)其應(yīng)用于一個(gè)以太環(huán)網(wǎng)結(jié)構(gòu)中時(shí),它首先根據(jù)各節(jié)點(diǎn)的BPDU(Bridge Protocol Data Unit,網(wǎng)橋協(xié)議數(shù)據(jù)單元)交互比較出根節(jié)點(diǎn),再通過(guò)生成樹算法,邏輯阻斷環(huán)上的端 口,計(jì)算出一個(gè)邏輯上的樹結(jié)構(gòu)。STP用于以太環(huán)網(wǎng)結(jié)構(gòu),是防止出現(xiàn)二層環(huán)路和保障快速 切換的技術(shù)。目前,以太環(huán)網(wǎng)結(jié)構(gòu)和組播都得到廣泛應(yīng)用,但所遇到的問(wèn)題是,當(dāng)在STP (以下 所敘述的STP特指快速生成樹協(xié)議)保護(hù)的以太環(huán)網(wǎng)結(jié)構(gòu)上運(yùn)行組播業(yè)務(wù)時(shí),將發(fā)生組播 流量切換速度遠(yuǎn)大于STP切換的現(xiàn)象,以圖Ia和圖Ib所示的以太環(huán)網(wǎng)拓?fù)浣Y(jié)構(gòu)為例圖Ia所示組網(wǎng)中,A是連接組播源的節(jié)點(diǎn),假設(shè)組地址是230. 0. 0. 0。A與D之間邏 輯阻塞,A向環(huán)上各節(jié)點(diǎn)轉(zhuǎn)發(fā)來(lái)自組播源的組查詢報(bào)文,依次產(chǎn)生組播路由端口 2、4、6(收 到組查詢報(bào)文的端口為組播路由口,節(jié)點(diǎn)收到的組加入報(bào)文只沿著組播路由口轉(zhuǎn)發(fā))。假設(shè) 節(jié)點(diǎn)C上有一個(gè)用戶進(jìn)行組加入,加入報(bào)文將沿著路徑C-B-A最后發(fā)給組播源,此時(shí),在各 節(jié)點(diǎn)上產(chǎn)生的組播轉(zhuǎn)發(fā)表如下在A 上生成 IGMPsnooping 表項(xiàng)230· 0. 0. 0 出口 1 ;在B 上生成 IGMPsnooping 表項(xiàng)230. 0. 0. O 出口 3 ;在C 上生成 IGMPsnooping 表項(xiàng)230. 0. 0. O 出口 20。節(jié)點(diǎn)根據(jù)各自的組播轉(zhuǎn)發(fā)表,轉(zhuǎn)發(fā)組播源下發(fā)的組播流量,組播流量路徑為 A-B-C-用戶。如若發(fā)生環(huán)鏈路B-C之間中斷,則根據(jù)STP的機(jī)制,環(huán)迅速切換,A-D之間的邏輯 阻塞被放開,如圖Ib所示。此時(shí)A仍然將組播流量依據(jù)組播轉(zhuǎn)發(fā)表從1 口發(fā)送出去,該流 量到達(dá)B節(jié)點(diǎn)后,由于B-C之間中斷,組播流量將終結(jié)在B上。直到下一個(gè)通用查詢到來(lái)后 (IGMPv2的通用查詢默認(rèn)125s—個(gè)),再?gòu)男碌穆窂?,即A-D-C最后到達(dá)用戶,用戶回復(fù)組 加入后才能夠生成新的組播轉(zhuǎn)發(fā)路徑,使用戶再次收到組播流量。可以看到,STP是迅速收 斂的,即新的通路馬上可以形成,但是由于IGMP機(jī)制導(dǎo)致用戶的組播流量中斷時(shí)間最多可 以達(dá)到125s,使組播業(yè)務(wù)的實(shí)時(shí)性下降。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種在以太環(huán)網(wǎng)下動(dòng)態(tài)進(jìn)行組播流快速切換的方法和系統(tǒng),本發(fā)明通過(guò)在環(huán)切換發(fā)生時(shí),把要發(fā)生切換的組播組動(dòng)態(tài)告知環(huán)上連接組播源節(jié)點(diǎn),觸發(fā)該節(jié)點(diǎn)代理發(fā)送特定的組查詢報(bào)文,從而實(shí)現(xiàn)組播流快速切換。根據(jù)本發(fā)明的一個(gè)方面,提供的在以太環(huán)網(wǎng)下動(dòng)態(tài)進(jìn)行組播流快速切換的方法包 括A)以太環(huán)網(wǎng)中所有節(jié)點(diǎn)通過(guò)其被監(jiān)控端口對(duì)以太環(huán)網(wǎng)鏈路狀態(tài)進(jìn)行檢測(cè);B)當(dāng)連接組播源節(jié)點(diǎn)檢測(cè)到鏈路中斷時(shí),連接組播源節(jié)點(diǎn)代理組播源向用戶發(fā)送 組查詢報(bào)文;C)當(dāng)非連接組播源節(jié)點(diǎn)檢測(cè)到鏈路中斷時(shí),非連接組播源節(jié)點(diǎn)生成中斷通告報(bào) 文,并發(fā)送至連接組播源節(jié)點(diǎn),以便觸發(fā)所述連接組播源節(jié)點(diǎn)代理組播源向用戶發(fā)送組查 詢報(bào)文。其中,所述步驟B)包括通過(guò)將本地存儲(chǔ)的組地址與配置的組播源組地址比較,連接組播源節(jié)點(diǎn)代理組播 源向用戶發(fā)送組查詢報(bào)文。進(jìn)一步地,本地存儲(chǔ)的組地址與配置的組播源組地址匹配時(shí),連接組播源節(jié)點(diǎn)代 理其連接的組播源向用戶發(fā)送本地存儲(chǔ)的組地址的組查詢報(bào)文。進(jìn)一步地,本地存儲(chǔ)的組地址與配置的組播源組地址不匹配時(shí),連接組播源節(jié)點(diǎn) 生成含有本地存儲(chǔ)組地址的中斷通告報(bào)文,并發(fā)送至其它連接組播源節(jié)點(diǎn),以便使其它連 接組播源節(jié)點(diǎn)代理其連接的組播源向用戶發(fā)送組查詢報(bào)文。其中,所述步驟C)包括非連接組播源節(jié)點(diǎn)生成包含本地存儲(chǔ)組地址的中斷通告 報(bào)文,并發(fā)送至連接組播源節(jié)點(diǎn),以便觸發(fā)所述連接組播源節(jié)點(diǎn)代理其連接的組播源向用 戶發(fā)送組查詢報(bào)文。進(jìn)一步地,連接組播源節(jié)點(diǎn)收到中斷通告報(bào)文后,將所述中斷通告報(bào)文攜帶的組 地址與其組播轉(zhuǎn)發(fā)表的組地址比較,連接組播源節(jié)點(diǎn)代理其連接的組播源向用戶發(fā)送匹配 組地址的組查詢報(bào)文,并生成回復(fù)報(bào)文,將所述匹配組地址放入所述回復(fù)報(bào)文中發(fā)送至生 成中斷通告報(bào)文的節(jié)點(diǎn)。進(jìn)一步地,若生成中斷通告報(bào)文的節(jié)點(diǎn)收到所述回復(fù)報(bào)文,將回復(fù)報(bào)文攜帶的組 地址與本地存儲(chǔ)的組地址比較,并刪除匹配的組地址;若其它節(jié)點(diǎn)收到所述回復(fù)報(bào)文,則按 照交換機(jī)轉(zhuǎn)發(fā)原理,廣播所述回復(fù)報(bào)文。進(jìn)一步地,非連接組播源節(jié)點(diǎn)收到中斷通告報(bào)文后,轉(zhuǎn)發(fā)所述中斷通告報(bào)文。上述本地存儲(chǔ)的組地址是生成中斷通告報(bào)文的節(jié)點(diǎn)依據(jù)組播轉(zhuǎn)發(fā)表得到的狀態(tài) 變化的被監(jiān)控端口的所有組地址。根據(jù)本發(fā)明的另一方面,提供的在以太環(huán)網(wǎng)下動(dòng)態(tài)進(jìn)行組播流快速切換的系統(tǒng)包 括連接組播源節(jié)點(diǎn)和非連接組播源節(jié)點(diǎn),用于對(duì)其被監(jiān)控端口的鏈路狀態(tài)進(jìn)行檢 測(cè);其中,當(dāng)連接組播源節(jié)點(diǎn)檢測(cè)到鏈路中斷時(shí),連接組播源節(jié)點(diǎn)代理組播源向用戶 發(fā)送組查詢報(bào)文;其中,當(dāng)非連接組播源節(jié)點(diǎn)檢測(cè)到鏈路中斷時(shí),非連接組播源節(jié)點(diǎn)生成中斷通告 報(bào)文,并發(fā)送至連接組播源節(jié)點(diǎn),以便觸發(fā)所述連接組播源節(jié)點(diǎn)代理組播源向用戶發(fā)送組查詢報(bào)文。所述連接組播源節(jié)點(diǎn)包括 檢測(cè)模塊,用于通過(guò)被監(jiān)控端口檢測(cè)以太環(huán)網(wǎng)鏈路狀態(tài);查找存儲(chǔ)模塊,用于檢測(cè)到以太環(huán)網(wǎng)鏈路中斷后,依據(jù)組播轉(zhuǎn)發(fā)表查找并存儲(chǔ)狀 態(tài)變化的被監(jiān)控端口的所有組地址;組地址匹配模塊,用于比較本地存儲(chǔ)的組地址與配置的組播源組地址,或比較接 收的中斷通告報(bào)文攜帶的組地址與其組播轉(zhuǎn)發(fā)表的組地址;代理組查詢模塊,用于代理組播源向用戶發(fā)送匹配組地址的組查詢報(bào)文;中斷通告報(bào)文模塊,用于接收其它節(jié)點(diǎn)發(fā)送的中斷通告報(bào)文,或生成并發(fā)送含有 與配置的組播源組地址不匹配的本地存儲(chǔ)組地址的中斷通告報(bào)文;回復(fù)報(bào)文模塊,用于生成包含匹配組地址的回復(fù)報(bào)文,發(fā)送至生成中斷通告報(bào)文 的節(jié)點(diǎn),或接收并處理來(lái)自其他連接組播源節(jié)點(diǎn)的回復(fù)報(bào)文。所述非連接組播源節(jié)點(diǎn)包括鏈路狀態(tài)檢測(cè)模塊,用于通過(guò)被監(jiān)控端口檢測(cè)以太環(huán)網(wǎng)鏈路狀態(tài);組地址查找與存儲(chǔ)模塊,用于檢測(cè)到以太環(huán)網(wǎng)鏈路中斷后,依據(jù)組播轉(zhuǎn)發(fā)表查找 并存儲(chǔ)狀態(tài)變化的被監(jiān)控端口的所有組地址;中斷通告報(bào)文生成與發(fā)送模塊,用于生成包含本地存儲(chǔ)組地址的中斷通告報(bào)文, 并發(fā)送至連接組播源節(jié)點(diǎn);回復(fù)報(bào)文處理模塊,用于接收并處理回復(fù)報(bào)文。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于本發(fā)明通過(guò)采用報(bào)文消息交互的方式, 在環(huán)切換發(fā)生時(shí)觸發(fā)完成組查詢報(bào)文的代理發(fā)送,而不用被動(dòng)等待,從而實(shí)現(xiàn)了組播流的 快速切換。
圖Ia是現(xiàn)有技術(shù)提供的以太環(huán)網(wǎng)中鏈路正常時(shí)的組查詢報(bào)文轉(zhuǎn)發(fā)路徑拓?fù)鋱D;圖Ib是現(xiàn)有技術(shù)提供的以太環(huán)網(wǎng)中鏈路中斷時(shí)的組查詢報(bào)文轉(zhuǎn)發(fā)路徑拓?fù)鋱D;圖2是本發(fā)明提供的以太環(huán)網(wǎng)中動(dòng)態(tài)進(jìn)行組播流快速切換的方法流程圖;圖3是本發(fā)明實(shí)施例提供的節(jié)點(diǎn)檢測(cè)到環(huán)網(wǎng)發(fā)生中斷后的處理流程圖;圖4是本發(fā)明實(shí)施例提供的中斷通告報(bào)文的處理流程圖;圖5是本發(fā)明是實(shí)施例提供的回復(fù)報(bào)文的處理流程圖;圖6是本發(fā)明提供的連接組播源節(jié)點(diǎn)結(jié)構(gòu)框圖;圖7是本發(fā)明提供的非連接組播源節(jié)點(diǎn)結(jié)構(gòu)框圖;圖8是本發(fā)明實(shí)施例提供的以太環(huán)網(wǎng)中動(dòng)態(tài)進(jìn)行組播流快速切換的系統(tǒng)拓?fù)鋱D。
具體實(shí)施例方式以下結(jié)合附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行詳細(xì)說(shuō)明,應(yīng)當(dāng)理解,以下所說(shuō)明的優(yōu) 選實(shí)施例僅用于說(shuō)明和解釋本發(fā)明,并不用于限制本發(fā)明。本發(fā)明以太環(huán)網(wǎng)下動(dòng)態(tài)進(jìn)行組播流快速切換的方法和系統(tǒng),將環(huán)網(wǎng)上的節(jié)點(diǎn)分為 連接組播源節(jié)點(diǎn)和非連接組播源節(jié)點(diǎn),并為連接組播源節(jié)點(diǎn)配置組播源組地址。環(huán)網(wǎng)上連接環(huán)結(jié)構(gòu)的節(jié)點(diǎn)的端口為被監(jiān)控端口,所述被監(jiān)控端口配置為組播路由口。此外,還定義了 一種報(bào)文格式,其格式和內(nèi)容(不包含二層頭部)如下
權(quán)利要求
1.一種以太環(huán)網(wǎng)中動(dòng)態(tài)進(jìn)行組播流快速切換的方法,所述以太環(huán)網(wǎng)包括連接組播源節(jié) 點(diǎn)和非連接組播源節(jié)點(diǎn),其特征在于,所述方法包括以下步驟A)以太環(huán)網(wǎng)中所有節(jié)點(diǎn)通過(guò)其被監(jiān)控端口對(duì)以太環(huán)網(wǎng)鏈路狀態(tài)進(jìn)行檢測(cè);B)當(dāng)連接組播源節(jié)點(diǎn)檢測(cè)到鏈路中斷時(shí),連接組播源節(jié)點(diǎn)代理組播源向組用戶發(fā)送組 查詢報(bào)文;C)當(dāng)非連接組播源節(jié)點(diǎn)檢測(cè)到鏈路中斷時(shí),非連接組播源節(jié)點(diǎn)生成中斷通告報(bào)文,并 發(fā)送至連接組播源節(jié)點(diǎn),以便觸發(fā)所述連接組播源節(jié)點(diǎn)代理組播源向組用戶發(fā)送組查詢報(bào) 文。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟B)包括通過(guò)將本地存儲(chǔ)的組地址與配置的組播源組地址比較,連接組播源節(jié)點(diǎn)代理組播源向 組用戶發(fā)送組查詢報(bào)文。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,本地存儲(chǔ)的組地址與配置的組播源組地 址匹配時(shí),連接組播源節(jié)點(diǎn)代理其連接的組播源向組用戶發(fā)送本地存儲(chǔ)的組地址的組查詢 報(bào)文。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,本地存儲(chǔ)的組地址與配置的組播源組地 址不匹配時(shí),連接組播源節(jié)點(diǎn)生成含有本地存儲(chǔ)組地址的中斷通告報(bào)文,并發(fā)送至其它連 接組播源節(jié)點(diǎn),以便使其它連接組播源節(jié)點(diǎn)代理其連接的組播源向組用戶發(fā)送組查詢報(bào) 文。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟C)包括非連接組播源節(jié)點(diǎn)生 成包含本地存儲(chǔ)組地址的中斷通告報(bào)文,并發(fā)送至連接組播源節(jié)點(diǎn),以便觸發(fā)所述連接組 播源節(jié)點(diǎn)代理其連接的組播源向組用戶發(fā)送組查詢報(bào)文。
6.根據(jù)權(quán)利要求1-5任意一項(xiàng)所述的方法,其特征在于,所述本地存儲(chǔ)的組地址是生 成所述中斷通告報(bào)文的節(jié)點(diǎn)依據(jù)組播轉(zhuǎn)發(fā)表得到的狀態(tài)變化的被監(jiān)控端口的所有組地址。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,連接組播源節(jié)點(diǎn)收到中斷通告報(bào)文后,將 所述中斷通告報(bào)文攜帶的組地址與其組播轉(zhuǎn)發(fā)表的組地址比較,連接組播源節(jié)點(diǎn)代理其連 接的組播源向組用戶發(fā)送匹配組地址的組查詢報(bào)文,并生成回復(fù)報(bào)文,將所述匹配組地址 放入所述回復(fù)報(bào)文中發(fā)送至生成所述中斷通告報(bào)文的節(jié)點(diǎn)。
8.一種以太環(huán)網(wǎng)中動(dòng)態(tài)進(jìn)行組播流快速切換的系統(tǒng),其特征在于,包括連接組播源節(jié)點(diǎn)和非連接組播源節(jié)點(diǎn),用于對(duì)其被監(jiān)控端口的鏈路狀態(tài)進(jìn)行檢測(cè);其中,當(dāng)連接組播源節(jié)點(diǎn)檢測(cè)到鏈路中斷時(shí),連接組播源節(jié)點(diǎn)代理組播源向組用戶發(fā) 送組查詢報(bào)文;其中,當(dāng)非連接組播源節(jié)點(diǎn)檢測(cè)到鏈路中斷時(shí),非連接組播源節(jié)點(diǎn)生成中斷通告報(bào)文, 并發(fā)送至連接組播源節(jié)點(diǎn),以便觸發(fā)所述連接組播源節(jié)點(diǎn)代理組播源向組用戶發(fā)送組查詢 報(bào)文。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述連接組播源節(jié)點(diǎn)包括檢測(cè)模塊,用于通過(guò)被監(jiān)控端口檢測(cè)以太環(huán)網(wǎng)鏈路狀態(tài);查找存儲(chǔ)模塊,用于檢測(cè)到以太環(huán)網(wǎng)鏈路中斷后,依據(jù)組播轉(zhuǎn)發(fā)表查找并存儲(chǔ)狀態(tài)變 化的被監(jiān)控端口的所有組地址;組地址匹配模塊,用于比較本地存儲(chǔ)的組地址與配置的組播源組地址,或比較接收的中斷通告報(bào)文攜帶的組地址與其組播轉(zhuǎn)發(fā)表的組地址;代理組查詢模塊,用于代理組播源向組用戶發(fā)送匹配組地址的組查詢報(bào)文; 中斷通告報(bào)文模塊,用于接收其它節(jié)點(diǎn)發(fā)送的中斷通告報(bào)文,或生成并發(fā)送含有與配 置的組播源組地址不匹配的本地存儲(chǔ)組地址的中斷通告報(bào)文;回復(fù)報(bào)文模塊,用于生成包含匹配組地址的回復(fù)報(bào)文,并發(fā)送至生成中斷通告報(bào)文的 節(jié)點(diǎn),或接收并處理來(lái)自其他連接組播源節(jié)點(diǎn)的回復(fù)報(bào)文。
10.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述非連接組播源節(jié)點(diǎn)包括 鏈路狀態(tài)檢測(cè)模塊,用于通過(guò)被監(jiān)控端口檢測(cè)以太環(huán)網(wǎng)鏈路狀態(tài); 組地址查找與存儲(chǔ)模塊,用于檢測(cè)到以太環(huán)網(wǎng)鏈路中斷后,依據(jù)組播轉(zhuǎn)發(fā)表查找并存 儲(chǔ)狀態(tài)變化的被監(jiān)控端口的所有組地址;中斷通告報(bào)文生成與發(fā)送模塊,用于生成包含本地存儲(chǔ)組地址的中斷通告報(bào)文,并發(fā) 送至連接組播源節(jié)點(diǎn);回復(fù)報(bào)文處理模塊,用于接收并處理回復(fù)報(bào)文。
全文摘要
本發(fā)明公開了一種以太環(huán)網(wǎng)中動(dòng)態(tài)進(jìn)行組播流快速切換的方法和系統(tǒng),所述方法包括以太環(huán)網(wǎng)中的所有節(jié)點(diǎn)對(duì)其被監(jiān)控端口的鏈路狀態(tài)進(jìn)行檢測(cè);當(dāng)連接組播源節(jié)點(diǎn)檢測(cè)到鏈路中斷時(shí),連接組播源節(jié)點(diǎn)代理組播源向組用戶發(fā)送組查詢報(bào)文;當(dāng)非連接組播源節(jié)點(diǎn)檢測(cè)到鏈路中斷時(shí),非連接組播源節(jié)點(diǎn)生成中斷通告報(bào)文,并發(fā)送至連接組播源節(jié)點(diǎn),以便觸發(fā)所述連接組播源節(jié)點(diǎn)代理組播源向組用戶發(fā)送組查詢報(bào)文。本發(fā)明以太環(huán)網(wǎng)發(fā)生中斷時(shí),觸發(fā)連接組播源節(jié)點(diǎn)代理其連接的組播源發(fā)送組查詢報(bào)文,提高了組播流的切換速度。
文檔編號(hào)H04L12/56GK102075413SQ20101056896
公開日2011年5月25日 申請(qǐng)日期2010年12月1日 優(yōu)先權(quán)日2010年12月1日
發(fā)明者劉顯東 申請(qǐng)人:中興通訊股份有限公司