一種檢測乙太網組播環路的方法及裝置的製作方法
2023-10-10 08:41:04 2
專利名稱:一種檢測乙太網組播環路的方法及裝置的製作方法
技術領域:
本發明涉及網絡通信技術領域,特別涉及一種4企測乙太網組播環^各的方 法及裝置。
背景技術:
隨著網絡通信技術的迅猛發展,基於乙太網的組播業務也日益廣泛。圖1為乙太網組播業務實現場景圖。如圖l所示,主機H與交換機S1、 S2、 S3及S4在一個乙太網段中,當主機H名夂加入一個組播組Gl時,將發送一 個報告(Report)報文,交換機Sl和S3都將接收到所述報告報文,然後交 換機S1將所述報告報文轉發給交換機S2,再由交換機S2轉發給S4, S4再 轉發給S3, S3再轉發給組播路由器R,最後形成如圖中箭頭所示的轉發路 徑,並在組播路由器R上建立起相應的組播轉發表。當組播數據流到達組播 路由器R時,所述組播路由器R將根據對應的組播轉發表將組播數據流沿 著所述轉發路徑轉發至交換機Sl處,再由交換機Sl發送到主機H連接的 網段中,同時被交換機S3收到。這時交換機S3又會轉發到交換機S4,這 樣就形成環路,並且所述組播數據流會沿環路無限轉發,無法消除。當環路 上無限轉發的組播數據流量越來越大時,就會佔用大量網絡帶寬,導致網絡 擁塞,嚴重影響網絡性能,最後這些組播數據流量將耗盡整個網絡(或鏈路) 的帶寬,導致網絡癱瘓。以上所述就是目前乙太網應用中由組播環路引起的 廣播風暴問題。為解決廣播風暴問題,目前業界常用的方法是使用STP (生成樹協議, Spanning Tree Protocol)技術來消除組播環路,避免廣播風暴的發生。然而, 當網絡發生故障或者網絡拓樸發生變化時,需要使用STP技術重新計算生成樹,而計算生成樹的時間隨著網絡的增大而加長,通常在秒級,比較大的 網絡甚至在幾十秒,上百秒。網絡收斂的時間比較慢,這對運營商網絡,特 別是提供關鍵業務的網絡來說是不可接受的。再者,生成樹需要阻塞一些冗 餘鏈路的埠,人為浪費了帶寬。應用生成樹後,任何兩個設備間的通路只 有唯一的一條,因此無法實施流量工程。發明內容為解決上述現有技術中存在的問題,本發明實施例提供一種檢測乙太網 組播環路的方法及裝置,自動檢測網絡中出現組播環路的情況,從而避免廣 播風暴的發生,提供優良可靠的網絡性能。本發明實施例所提供的檢測乙太網組播環路的方法,包括以下步驟 在待測乙太網內發送第一網際網路組管理協議IGMP查詢報文; 監聽接收到的IGMP查詢報文;判斷所述IGMP查詢報文是否為所述第一 IGMP查詢報文,如果判斷結果為 是,則確定所述乙太網內存在組播環路。本發明實施例所提供的檢測乙太網組播環路的裝置,包括發送單元,用於在待測乙太網內發送第一網際網路組管理協議IGMP查詢報文;監聽單元,用於監聽接收到的IGMP查詢才艮文;以及 判斷單元,用於判斷所述IGMP查詢l艮文是否為所述第一 IGMP查詢報文, 如果判斷結果為是,則確定所述乙太網內存在組播環路。 從以上本發明實施例的技術方案可以看出本發明實施例通過在乙太網內發送IGMP查詢報文並判斷是否能接收到由 本地發送的所述查詢報文的方式,可自動檢測到網絡中出現組播環路的情況, 從而可及時提醒網絡管理員消除網絡隱患,避免廣播風暴的發生,並可防止假 冒攻擊,提供優良可靠的傳輸性能。此外,本發明實施例不需要被檢測的以 太網中其他交換設備提供任何附加功能,也不會影響任何其他交換設備功能的實現,應用廣泛。
圖1是乙太網組播業務實現場景圖。圖2是本發明實施例檢測乙太網組播環路的方法的流程圖。圖3是本發明實施例檢測乙太網組播環路的裝置的模塊圖。
具體實施方式
下面結合附圖和具體實施例對本發明作進一步說明,但本發明不局限於 下面的實施例。本發明實施例提供了一種檢測乙太網組播環路的方法,主要是通過在待測乙太網內發送網際網路組管理協議(IGMP)查詢報文,並根據發送端是否收到由 本地發送的所述IGMP查詢報文來判斷確定所述待測乙太網內是否存在組播環備上實現,由所述交換設備發送IGMP查詢報文,然後通過所述交換設備判斷是否收到由本地發送的所述IGMP查詢報文來確定待測乙太網段內是否存在組播環路。其中,所述IGMP查詢報文承載在IP報文中,可以根據具體應用情況選擇為通用查詢報文或指定組查詢報文。IGMP查詢報文的格式如表1所示0 12 301234567890123456789012345678901 +_+_+—+—+-+_+_+—+——+—+—+_+_+一+一+—一+_+_+一+—+_+_+_+_+_+_+_+—+_+_+I TypeI Max Resp Time I Checksum I+—+_+_+———+_+—+_+_+—+_+_+—+———+_+_+—+_+——+_+_+—+_+_+—+—+_+_+I Group Address I+_+—+——+_+_+——+——+_+—+—+-+_+—+_+_+—_+_+—+—+_+_+—_+_+_+_+—+_+表l在表l中,"Type"為報文類型欄位,0x11表示查詢報文類型;"Max RespTime"為最大響應時間欄位;"Checksum"為16位校驗和欄位;"Group Address" 為32位組播地址欄位。當IGMP查詢報文為指定組查詢報文時,對應的源IP位址為報文發送端的 IP位址,即發送所述IGMP查詢才艮文的交換設備的IP位址;目的IP位址為指 定組的組播地址;IP協議號為2;報文中的組播地址欄位也是指定組的組播地 址。所述指定組查詢報文將發送到指定組的轉發表中所有組播成員所在埠 。當IGMP查詢報文為通用查詢報文時,對應的源IP位址為報文發送端的IP 地址,即發送所述IGMP查詢l艮文的交換設備的IP位址;目的IP位址為 224.0.0.1; IP協議號為2;報文中的組播地址欄位為0。所述通用查詢報文將 被廣播到除路由器埠外的其他所有埠上。如果用於檢測組播環路的交換設備沒有IP位址,則在發送IGMP查詢報文 進行組播環路檢測前先給所述交換設備配置一個IP位址,並且該IP位址在待 測乙太網絡範圍內應是唯一的。請參閱圖2,本發明實施例檢測乙太網組播環路的方法具體包括以下步驟步驟101:在待測乙太網內發送第一IGMP查詢^^艮文。其中,所述第一IGMP 查詢報文對應的源IP位址為發送此報文的交換設備的IP位址,目的IP位址則 可根據實際情況確定。如果所述第一 IGMP查詢報文為指定組查詢報文,則對應 的目的IP位址為指定組的組播地址;如果所述第一 IGMP查詢報文為通用查詢 報文,則對應的目的IP位址為224. 0. 0. 1。所述交換設備在發送所述第一 IGMP 查詢才艮文時,將記錄下所述第一 IGMP查詢報文的源IP位址和目的IP位址。另外,所述交換設備在發送所述第一 IGMP查詢報文時,還可以同時啟動一 個定時器,所述定時器的超時時間設置規則為假設所述第一 IGMP查詢報文在 待測乙太網中經過所有設備的轉發所需要的時間為t,則定時器的超時時間可 以設定為不小於t的任何一個值。為了實現方便,通常直接取t值作為定時器 的超時時間。步驟102:監聽接收到的IGMP查詢報文。所述交換設備將監聽所有埠接 收到的IGMP查詢報文,所述監聽步驟具體為解析獲得所述IGMP查詢才艮文的源IP位址和目的IP位址。當啟動所述定時器時,則所述交換設備將監聽所述超時時間內接收到的所有IGMP查詢報文。步驟103:判斷所述IGMP查詢報文是否為所述第一 IGMP查詢報文,如果 判斷結果為是,則確定所述乙太網內存在組播環路,如果判斷結果為否,則確 定所述乙太網內不存在組播環路。所述判斷的具體過程為比較所述IGMP查詢 才艮文的源IP位址與本地記錄的所述第一 IGMP查詢才艮文的源IP位址是否相同; 如果二者的源IP位址相同,則確定所述IGMP查詢才艮文就是由本地發送的所述 第一IGMP查詢報文,並確定所述乙太網內存在組播環路;反之,如果二者的源 IP位址不同,則確定所述IGMP查詢報文不是所述第一 IGMP查詢報文,並可確 定所述乙太網內不存在組^"環i 各。為防止假冒攻擊的影響,本發明實施例所述檢測方法在上述步驟103中還 提供一種較優的選擇方案比較所述IGMP查詢報文的源IP位址與本地記錄的 所述第一 IGMP查詢報文的源IP位址是否相同,並比較所述IGMP查詢才艮文的目 的IP位址與本地記錄的所述第一 IGMP查詢報文的目的IP位址是否相同;如果 二者的源IP位址和目的IP位址均相同,則說明所述IGMP查詢報文就是由本地 發送的所述第一 IGMP查詢報文,此時便可確定所述乙太網內存在組播環路;反 之,如果所述IGMP查詢報文的源IP位址或目的IP位址與本地記錄的源IP地 址或目的IP位址並不完全相同,亦即二者的源IP位址不同或目的IP位址不同, 則說明所述IGMP查詢才艮文不是所述第一 IGMP查詢報文,此時便可確定所述以 太網內不存在組播環路。在本發明實施例中,可以通過定期發送第一 IGMP查詢才艮文的方式自動才企測 網絡中是否存在組播環路的情況。由於本發明實施例檢測乙太網組播環路的方 法是直接在待測乙太網指定的交換設備上定期發送第一 IGMP查詢報文的方式 來自動檢測網絡中出現組播環路的情況,從而可及時提醒網絡管理員消除環路 問題,避免廣播風暴的發生,並可提供優良可靠的網絡性能。再請參閱圖3,本發明實施例還提供了一種檢測乙太網組播環路的裝置, 所述裝置包括發送單元,用於在待測乙太網內發送第一 IGMP查詢報文;監聽單元,用於監聽接收到的IGMP查詢報文;以及判斷單元,用於判斷所述IGMP 查詢報文是否為所述第一 IGMP查詢報文,如果判斷結果為是,則確定所述以太 網內存在組播環路,如果判斷結果為否,則確定所述乙太網內不存在組播環路。 其中,所述發送單元包括一記錄子單元,用於記錄所述第一 IGMP查詢報文的源 IP位址,或者用於記錄所述第一 IGMP查詢才艮文的源IP位址和目的IP位址。 所述監聽單元包括解析子單元,用於解析獲得所述IGMP查詢報文的源IP位址 和目的IP位址。所述判斷單元包括比較子單元和確定子單元,其中所述比較子 單元用於比較所述IGMP查詢報文的源IP位址與所述記錄子單元記錄的所述第 一 IGMP查詢報文的源IP位址是否相同,或者同時比較所述IGMP查詢報文的源 IP位址和目的IP位址是否分別與所述記錄子單元記錄的所述第一 IGMP查詢報 文的源IP位址和目的IP位址對應相同;所述確定子單元用於根據所述比較子 單元的比較結果確定所述乙太網內是否存在組播環路。另外,本發明實施例所述;f企測裝置還可進一步包括一用於設定超時時間的 定時器,所述監聽單元用於在所述超時時間內監聽接收到的IGMP查詢報文。所 述定時器還可直接設置於所述監聽單元中。本發明實施例所述檢測裝置可設置於所述乙太網內指定的一臺或多臺交換 設備上,以實現自動檢測乙太網組播環路的功能,從而可及時提醒網絡管理員 消除環路問題,避免廣播風暴的發生,並可防止假冒攻擊,提供優良可靠的網 絡性能。以上只是對本發明的優選實施方式進行了描述,本領域的技術人員在本 發明技術的方案範圍內,進行的通常變化和替換,都應包含在本發明的保護 範圍內。
權利要求
1、一種檢測乙太網組播環路的方法,其特徵在於,包括以下步驟在待測乙太網內發送第一網際網路組管理協議IGMP查詢報文;監聽接收到的IGMP查詢報文;判斷所述IGMP查詢報文是否為所述第一IGMP查詢報文,如果判斷結果為是,則確定所述乙太網內存在組播環路。
2、 如權利要求1所述的方法,其特徵在於,所述第一 IGMP查詢報文為通 用查詢報文。
3、 如權利要求l所述的方法,其特徵在於,所述第一 IGMP查詢報文為指 定組查詢報文。
4、 如權利要求l所述的方法,其特徵在於,所述方法是在所述乙太網中指 定的一臺交換設備上實現。
5、 如權利要求4所述的方法,其特徵在於,所述方法進一步包括在所述 發送第一 IGMP查詢報文之前,為所述交換設備配置一個IP位址。
6、 如權利要求l所述的方法,其特徵在於,所述方法進一步包括記錄所 述第一 IGMP查詢報文的源IP位址和目的IP位址。
7、 如權利要求6所述的方法,其特徵在於,所述監聽接收到的IGMP查詢 報文的具體過程為解析獲得所述IGMP查詢報文的源IP位址和目的IP位址。
8、 如權利要求7所述的方法,其特徵在於,所述判斷所述IGMP查詢報文 是否為所述第一 IGMP查詢報文的具體過程為比較所述IGMP查詢報文的源IP 地址與所述第一 IGMP查詢報文的源IP位址是否相同,並比較所述IGMP查詢報 文的目的IP位址與所述第一 IGMP查詢才艮文的目的IP位址是否相同,如果所述 IGMP查詢才艮文和所述第一 IGMP查詢才艮文的源IP位址和目的IP位址均相同, 則確定所述乙太網內存在組#"環路。
9、 如權利要求l所述的方法,其特徵在於,所述方法進一步包括記錄所 述第一 IGMP查詢才艮文的源IP位址。
10、 如權利要求9所述的方法,其特徵在於,所述監聽接收到的IGMP查詢報文的具體過程為解析獲得所述IGMP查詢報文的源IP位址。
11、 如權利要求10所述的方法,其特徵在於,所述判斷所述IGMP查詢報 文是否為所述第一 IGMP查詢報文的具體過程為比較所述IGMP查詢才艮文的源 IP位址與所述第一 IGMP查詢報文的源IP位址是否相同,如果所述IGMP查詢 才艮文和所述第一 IGMP查詢才艮文的源IP位址相同,則確定所述乙太網內存在組 播環路。
12、 如權利要求l所述的方法,其特徵在於,所述監聽接收到的IGMP查詢 報文的步驟具體為監聽預定時間內接收到的IGMP查詢報文,所述預定時間不小 於所述第一 IGMP查詢報文在所述乙太網中經過所有設備的轉發所需要的時間。
13、 一種檢測乙太網組播環路的裝置,其特徵在於,包括發送單元,用於在待測乙太網內發送第一網際網路組管理協議IGMP查詢報文;監聽單元,用於監聽接收到的IGMP查詢報文;以及 判斷單元,用於判斷所述IGMP查詢報文是否為所述第一 IGMP查詢報文, 如果判斷結果為是,則確定所述乙太網內存在組播環路。
14、 如權利要求13所述的裝置,其特徵在於,所述發送單元包括一記錄子 單元,用於記錄所述第一 IGMP查詢才艮文的源IP位址和目的IP位址。
15、 如權利要求14所述的裝置,其特徵在於,所述監聽單元包括解析子單 元,用於解析獲得所述IGMP查詢報文的源IP位址和目的IP位址。
16、 如權利要求15所述的裝置,其特徵在於,所述判斷單元包括比較子單 元和確定子單元,其中所述比較子單元用於比較所述IGMP查詢報文的源IP地 址與記錄在本地的所述第一 IGMP查詢才艮文的源IP位址是否相同,並比4交所述 IGMP查詢報文的目的IP位址與記錄在本地的所述第一 IGMP查詢才艮文的目的IP 地址是否相同;所述確定子單元用於根據所述比較子單元的比較結果確定所述 乙太網內是否存在組播環路。
17、 如權利要求13所述的裝置,其特徵在於,所述發送單元包括一記錄子 單元,用於記錄所述第一 IGMP查詢報文的源IP位址。
18、 如權利要求17所述的裝置,其特徵在於,所述監聽單元包括解析子單元,用於解析獲得所述IGMP查詢報文的源IP位址。
19、 如權利要求18所述的裝置,其特徵在於,所述判斷單元包括比較子單 元和確定子單元,其中所述比較子單元用於比較所述IGMP查詢報文的源IP地 址與記錄在本地的所述第一 IGMP查詢才艮文的源IP位址是否相同;所述確定子 單元用於根據所述比較子單元的比較結果確定所述乙太網內是否存在組播環 路。
20、 如權利要求IO所述的裝置,其特徵在於,還包括一用於設定超時時間 的定時器,所述監聽單元用於在所述超時時間內監聽接收到的IGMP查詢報文。
21、 如權利要求2Q所述的裝置,其特徵在於,所述定時器設置於所述監聽 單元中。
全文摘要
本發明公開了一種檢測乙太網組播環路的方法及裝置,所述方法包括在待測乙太網內發送第一IGMP查詢報文;監聽接收到的IGMP查詢報文;判斷所述IGMP查詢報文是否為所述第一IGMP查詢報文,如果判斷結果為是,則確定所述乙太網內存在組播環路。所述裝置包括用於在待測乙太網內發送第一IGMP查詢報文的發送單元,用於監聽接收到的IGMP查詢報文的監聽單元,以及用於判斷所述IGMP查詢報文是否為所述第一IGMP查詢報文並在判斷結果為是時確定所述乙太網內存在組播環路的判斷單元。通過本發明的實施,可自動檢測到網絡中出現組播環路的情況,從而及時提醒網絡管理員消除網絡隱患,避免發生廣播風暴,提供優良的網絡性能。
文檔編號H04L12/56GK101330496SQ200710076110
公開日2008年12月24日 申請日期2007年6月21日 優先權日2007年6月21日
發明者鵬 周 申請人:華為技術有限公司