新四季網

一種二層組播路徑跟蹤方法、裝置及系統的製作方法

2023-12-05 20:18:26 1

專利名稱:一種二層組播路徑跟蹤方法、裝置及系統的製作方法
技術領域:
本發明涉及通信領域,特別涉及一種二層組播路徑跟蹤方法、裝置及系統。
背景技術:
IP組播就是通過使用特定的IP組播地址,按照最大投遞的原則,將IP數據包傳輸到位於一個組播群組的主機;通常把工作在數據鏈路層的IP組播稱為二層組播。在二層組播中,通過偵聽/攔截組播路由器和主機之間交互的IGMP(Internet Group Management Protocol,網際網路組管理協議)報文,可以獲知交換機的哪些埠下連接著一個組播群組的組成員主機,只將組播數據發送至這些埠,從而實現了組播數據在二層網絡中的轉發。 在二層組播中,如果想獲知組播數據在組播路由器和組成員主機之間的組播轉發路徑,主要通過路徑跟蹤的方法來實現。現有技術需通過命令行或逐臺排查設備節點來跟蹤組播數據在組播路由器和組成員主機之間的組播轉發路徑,從而可以獲知組播數據的組播轉發路徑。在實現本發明的過程中,發明人發現現有技術至少存在以下問題龐大的二層組播網絡中涉及的組播設備太多,現有技術中的路徑跟蹤方法使得運維成本增加,效率降低。

發明內容
為了降低運維成本,提高效率,本發明實施例提供了一種二層組播路徑跟蹤方法、 裝置及系統。所述技術方案如下一種二層組播路徑跟蹤方法,所述方法包括獲取路徑跟蹤請求報文;判斷二層組播轉發表中組播成員埠的埠實例狀態;當所述埠實例狀態中存在所述非^erEdge狀態,添加自身設備的介質訪問控制MAC地址至所述路徑跟蹤請求報文,經所述非^erEdge狀態的埠實例發送所述添加了 MAC地址的路徑跟蹤請求報文至下遊設備;當所述埠實例狀態均為所述^erEdge狀態,終結路徑跟蹤請求報文,添加自身設備的MAC地址至所述路徑跟蹤請求報文,從所述路徑跟蹤請求報文中獲取從所述 NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息, 將所述組播路徑信息發送至查詢設備。一種二層組播路徑跟蹤裝置,包括獲取模塊,用於獲取路徑跟蹤請求報文;判斷模塊,用於判斷二層組播轉發表的組播成員埠的埠實例狀態;第一處理模塊,用於當所述埠實例狀態中存在非^erEdge狀態,添加自身設備的介質訪問控制MAC地址至所述路徑跟蹤請求報文,經所述非^erEdge狀態的埠實例發送所述添加了 MAC地址的路徑跟蹤請求報文至下遊設備;第二處理模塊,用於當所述埠實例狀態均為^erEdge狀態,終結路徑跟蹤請求報文,添加自身設備的MAC地址至所述路徑跟蹤請求報文,從所述路徑跟蹤請求報文中獲取從NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息,將所述組播路徑信息發送至查詢設備。一種二層組播路徑跟蹤系統,包括上述二層組播跟蹤裝置和查詢設備,所述查詢設備用於接收從所述NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息。本發明實施例提供的技術方案帶來的有益效果是通過二層組播中的每一跳二層組播設備獲取路徑跟蹤請求報文,經過相應的判斷處理後,將自身設備的MAC地址添加到路徑跟蹤請求報文中進行下發,直到終結路徑跟蹤請求報文,使得請求報文中包含了從 NetEdge狀態埠實例對應設備到^erEdge狀態埠實例對應設備的組播路徑信息;相比較現有技術而言,降低了運維成本,提高了效率。


為了更清楚地說明本發明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。圖1是本發明實施例1中提供的一種二層組播路徑跟蹤方法實施例的流程圖;圖2是本發明實施例2中提供的一種二層組播路徑跟蹤方法實施例的流程圖;圖3是本發明實施例3中提供的一種二層組播路徑跟蹤方法實施例的流程圖;圖4是本發明實施例3中提供的獲取路徑跟蹤請求報文方法實施例的流程圖;圖5是本發明實施例4中提供的一種二層組播路徑跟蹤方法實施例的流程圖;圖6是本發明實施例4中提供的動態設置^erEdge狀態或非^erEdge狀態埠實例的方法實施例的流程圖;圖7是本發明實施例4中提供的IGMPvl Report報文格式示意圖;圖8是本發明實施例4中提供的IGMPv2 Report/Leave報文格式示意圖;圖9是本發明實施例4中提供的IGMPv3 Report報文格式示意圖;圖10是本發明實施例4中提供的動態設置埠實例的組網示意圖;圖11是本發明實施例5中提供的二層組播mtrace報文處理方法實施例的組網示意圖;圖12是本發明實施例6提供的一種二層組播路徑跟蹤裝置實施例的結構示意圖;圖13是本發明實施例7中提供的一種二層組播路徑跟蹤裝置實施例的結構示意圖;圖1 是本發明實施例8中提供的一種二層組播路徑跟蹤裝置實施例的第一結構示意圖;圖14b是本發明實施例8中提供的一種二層組播路徑跟蹤裝置實施例的第二結構示意圖;圖1 是本發明實施例9中提供的一種二層組播路徑跟蹤裝置實施例的結構示意圖; 圖15b是本發明實施例9中提供的一種二層組播路徑跟蹤裝置實施例的結構示意
0036]圖16是本發明實施例10中提供的一種二層組播路徑跟蹤系統實施例的結構示意

具體實施例方式
本發明實施例提供一種二層組播路徑跟蹤方法、裝置及系統。為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明實施方式作進一步地詳細描述。發明實施例中二層組播的mtrace報文包含二層組播的信息欄位,如組播源、組播組、組播介質訪問控制(MAC,Media Access Control)地址和系統MAC地址。所述二層組播的mtrace報文包括路徑跟蹤查詢(Query)報文、路徑跟蹤請求(Request)報文和路徑跟蹤響應(Response)報文。實施例1參考圖1,圖1為本發明實施例1中提供的一種二層組播路徑跟蹤方法實施例的流程圖。所述二層組播路徑跟蹤方法包括SlOl 獲取路徑跟蹤請求報文。當獲取路徑跟蹤請求報文的執行主體是所述NetEdge狀態埠實例對應的二層組播設備時,獲取路徑跟蹤請求報文具體包括接收由查詢設備發送的路徑跟蹤查詢報文;將所述路徑跟蹤查詢報文修改為路徑跟蹤請求報文。或者,當獲取路徑跟蹤請求報文的執行主體不是所述NetEdge狀態埠實例對應的二層組播設備時,獲取路徑跟蹤請求報文具體包括接收由上遊二層組播設備發送的路徑跟蹤請求報文。S102 判斷二層組播轉發表中組播成員埠的埠實例狀態,當所述埠實例狀態中存在非^erEdge狀態時,執行S103 ;當所述埠實例狀態均為^erEdge狀態時,執行 S104。S103 添加自身設備的介質訪問控制MAC地址至所述路徑跟蹤請求報文,經所述 # UserEdge狀態的埠實例發送所述添加了 MAC地址的路徑跟蹤請求報文至下遊設備。S104 終結路徑跟蹤請求報文,添加自身設備的MAC地址至所述路徑跟蹤請求報文,從所述路徑跟蹤請求報文中獲取從NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息,將所述組播路徑信息發送至查詢設備。本實施例中,二層組播中的每一跳二層組播設備獲取路徑跟蹤請求報文,經過相應的判斷處理後,將自身設備的MAC地址添加到路徑跟蹤請求報文中進行下發,直到終結路徑跟蹤請求報文,使得路徑跟蹤請求報文中包含了從NetEdge狀態埠實例對應設備到UserEdge狀態埠實例對應設備的組播路徑信息;相比較現有技術而言,降低了運維成本,提高了效率。實施例2
參考圖2,圖2為本發明實施例2中提供的一種二層組播路徑跟蹤方法實施例的流程圖。所述二層組播路徑跟蹤方法包括S201 設置二層組播設備的埠實例狀態,所述埠實例狀態包括網絡側邊緣 NetEdge狀態、用戶側邊緣^erEdge狀態和非^erEdge狀態。在二層組播中,二層組播設備既可以直接連接主機,又可以直接連接其他的二層組播設備,因此埠或虛擬區域網(Vlan,Virtual local area network)埠可以作為主機或二層組播設備的接口 ;NetEdge狀態、UserEdge狀態和非^erEdge狀態都是基於埠或Vlan埠,為了描述方便,將埠或Vlan埠統稱為埠實例。所述NetEdge狀態的埠實例主要用於終結路徑跟蹤查詢報文,發送路徑跟蹤請求報文,防止路徑查詢報文被無限止的在二層組播網絡中轉發;所述非^erEdge狀態埠實例主要用於轉發二層組播mtrace報文;所述^erEdge狀態埠實例主要用於終結路徑跟蹤請求報文,發送路徑跟蹤響應報文,防止路徑請求報文被無限止的在二層組播網絡中轉發。在實際應用中,由於連接組播源或組播路由器的二層組播設備較少,所以可以直接靜態設置二層組播設備的埠實例為NetEdge狀態,具體地,可以指定直接連接上遊組播源或組播路由器的二層組播設備的埠實例狀態為NetEdge狀態。對於本領域技術人員而言,設置二層組播設備的埠實例狀態為NetEdge狀態的方法不僅僅局限於此方法,在此不作贅述。對於二層組播設備的^erEdge狀態埠實例或非^erEdge狀態埠實例也可以進行靜態設置,具體地,可以指定二層組播設備上直接連接下遊二層組播設備的埠實例狀態為非^erEdge狀態,可以指定二層組播設備上直接連接下遊主機的埠實例狀態為^erEdge狀態;或者,也可以動態設置二層組播設備的^erEdge狀態埠實例或非 UserEdge狀態埠實例。S202 獲取路徑跟蹤請求報文。當獲取路徑跟蹤請求報文的執行主體是所述NetEdge狀態埠實例對應的二層組播設備時,獲取路徑跟蹤請求報文具體包括接收由查詢設備發送的路徑跟蹤查詢報文;將所述路徑跟蹤查詢報文修改為路徑跟蹤請求報文。或者,當獲取路徑跟蹤請求報文的執行主體不是所述NetEdge狀態埠實例對應的二層組播設備時,獲取路徑跟蹤請求報文具體包括接收由上遊二層組播設備發送的路徑跟蹤請求報文。S203 判斷二層組播轉發表中組播成員埠的埠實例狀態,當所述埠實例狀態中存在所述非^erEdge狀態時,執行S204 ;當所述埠實例狀態均為所述^erEdge狀態時,執行S205。每個二層組播設備上都有一個二層組播轉發表,所述二層組播轉發表中存儲著自身設備的組播成員埠,所述組播成員埠直接或間接連接組成員主機。二層組播轉發表的具體形式與現有技術類似,在此不再贅述。所述組播成員埠的埠實例狀態存儲於埠實例狀態集中,所述埠實例狀態集主要用於存儲二層組播設備上所有組播成員埠的埠實例狀態信息。
S204 添加自身設備的介質訪問控制MAC地址至所述路徑跟蹤請求報文,經所述非^erEdge狀態的埠實例發送所述添加了 MAC地址的路徑跟蹤請求報文至下遊設備。實際應用中,下遊設備接收所述添加了 MAC地址的路徑跟蹤請求報文後,再循環執行S203,直至當所述埠實例狀態均為所述^erEdge狀態時,執行S205。S205 終結路徑跟蹤請求報文,添加自身設備的MAC地址至所述路徑跟蹤請求報文,從所述路徑跟蹤請求報文中獲取從所述NetEdge狀態埠實例對應設備到所述 UserEdge狀態埠實例對應設備的組播路徑信息,將所述組播路徑信息發送至查詢設備。實際應用中,獲取從所述NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息,也就表示獲取了從組播源或組播路由器到組成員主機之間的組播轉發路徑信息。本實施例中,二層組播中的每一跳二層組播設備獲取路徑跟蹤請求報文,經過相應的判斷處理後,將自身設備的MAC地址添加到路徑跟蹤請求報文中進行下發,直到終結路徑跟蹤請求報文,使得路徑跟蹤請求報文中包含了從NetEdge狀態埠實例對應設備到^erEdge狀態埠實例對應設備的組播路徑信息;相比較現有技術而言,降低了運維成本,提高了效率。在二層組播網絡中,二層組播設備可以是二層組播交換機,也可以是其他二層組播設備,本發明實施例並不局限於此。下述實施例3和實施例4主要以二層組播交換機為例進行詳細描述。實施例3參考圖3,圖3為本發明實施例3中提供的一種二層組播路徑跟蹤方法實施例的流程圖。所述二層組播路徑跟蹤方法包括S301 設置交換機設備的埠實例狀態,所述埠實例狀態包括=NetEdge狀態、 UserEdge狀態和非^erEdge狀態。在實際應用中,由於連接組播源或組播路由器的交換機設備較少,所以可以直接靜態設置交換機設備的埠實例狀態為NetEdge狀態,具體地,可以指定直接連接上遊組播源或組播路由器的交換機設備的埠實例狀態為NetEdge狀態。對於本領域技術人員而言,設置交換機設備的埠實例狀態為NetEdge狀態的方法不僅僅局限於此方法,在此不作贅述。對於交換機設備的^erEdge狀態埠實例或非^erEdge狀態埠實例也可以進行靜態設置,具體地,可以指定交換機設備上直接連接下遊交換機設備的埠實例狀態為非^erEdge狀態;可以指定交換機設備上直接連接下遊主機的埠實例狀態為^erEdge 狀態。S302 獲取路徑跟蹤請求報文。本實施例中的執行主體可以是二層網絡中的任一交換機設備,如果執行主體是所述NetEdge狀態埠實例對應的交換機設備時,參考圖4,圖4為本發明實施例3中提供的獲取路徑跟蹤請求報文方法實施例的流程圖,所述獲取路徑跟蹤請求報文包括S302a 接收由查詢設備發送的路徑跟蹤查詢報文。二層組播中,查詢設備通過路由器口向上遊交換機設備發送路徑跟蹤查詢報文, 所述路徑跟蹤查詢報文經過二層組播交換機設備通過路由器口一跳一跳地轉發至NetEdge狀態埠實例對應的交換機設備。其中,所述路徑跟蹤查詢報文的二層頭的源MAC為自身設備的MAC地址,即查詢設備的MAC地址;所述路徑跟蹤查詢報文承載的IP報文的源地址為任意地址,目的地址為要查詢的組地址;mtrace報文類型為Query,封裝要查詢的組播信息(S,G)、(*,G)或 (GMAC)。S302b 將所述路徑跟蹤查詢報文修改為路徑跟蹤請求報文。NetEdge狀態埠實例對應的交換機設備收到所述路徑跟蹤查詢報文後,將 mtrace報文類型由Query修改為Request,添加所述查詢設備的MAC地址和本設備的MAC 地址至路徑跟蹤請求報文,將所述路徑跟蹤查詢報文的二層頭的源MAC地址修改為自身設備的MAC地址,所述自身設備的MAC地址為所述NetEdge狀態埠實例對應的交換機設備的MAC地址。如果執行主體不是所述NetEdge狀態埠實例對應的交換機設備時,所述獲取請求報文包括接收由上遊交換機設備發送的路徑跟蹤請求報文。實際應用中,通過上遊交換機設備的非^erEdge狀態埠實例接收路徑跟蹤請求報文,所述路徑跟蹤請求報文中包含從所述NetEdge狀態埠實例對應的交換機設備到自身設備的上一跳交換機的組播路徑信息。S303 判斷二層組播轉發表中組播成員埠的埠實例狀態,當所述埠實例狀態中存在所述非^erEdge狀態時,執行S304 ;當所述埠實例狀態均為所述^erEdge狀態時,執行S305。二層組播中的每一跳交換機設備收到所述路徑跟蹤請求報文後,查詢自身設備上的二層組播轉發表,判斷所述二層組播轉發表中組播成員埠的埠實例狀態,當所述埠實例狀態中存在所述非^erEdge狀態時,執行S304 ;當所述埠實例狀態均為所述 UserEdge狀態時,執行S305。S304 添加自身設備的MAC地址至所述路徑跟蹤請求報文,經所述非^erEdge狀態的埠實例發送所述添加了 MAC地址的路徑跟蹤請求報文至下遊設備。實際應用中,下遊設備接收所述添加了 MAC地址的路徑跟蹤請求報文後,再循環執行S303,直至當所述埠實例狀態均為所述^erEdge狀態時,執行S305。S305 終結路徑跟蹤請求報文,將自身設備的MAC地址添加至所述路徑跟蹤請求報文,從所述路徑跟蹤請求報文中獲取從所述NetEdge狀態埠實例對應設備到所述 UserEdge狀態埠實例對應設備的組播路徑信息,將所述組播路徑信息發送至查詢設備。終結路徑跟蹤請求報文;將自身設備的MAC地址添加到所述請求報文中,即將所述^erEdge狀態埠實例對應的交換機設備的MAC地址添加到所述路徑跟蹤請求報文中, 因此所述路徑跟蹤請求報文包含了從所述NetEdge狀態埠實例對應交換機設備到所述 UserEdge狀態埠實例對應交換機設備的組播路徑信息;從所述請求報文中獲取所述組播路徑信息並發送至查詢設備,由查詢設備將所述組播路徑信息進行顯示。實際應用中,獲取從所述NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息,也就表示獲取了從組播源或組播路由器到組成員主機之間的組播轉發路徑信息。在本實施例中,二層組播中的每一跳交換機設備獲取路徑跟蹤請求報文,經過相應的判斷處理後,將自身設備的MAC地址添加到路徑跟蹤請求報文中進行下發,直到終結路徑跟蹤請求報文,使得路徑跟蹤請求報文中包含了從NetEdge狀態埠實例對應交換機設備到^erEdge狀態埠實例對應交換機設備的組播路徑信息;相比較現有技術而言,降低了運維成本,提高了效率。實施例4參考圖5,圖5為本發明實施例4中提供的一種二層組播路徑跟蹤方法實施例的流程圖,所述二層組播路徑跟蹤方法包括S501 設置交換機設備的埠實例狀態,所述埠實例狀態包括=NetEdge狀態、 UserEdge狀態和非^erEdge狀態。本實施例中交換機設備埠實例的NetEdge狀態、^erEdge狀態或非^erEdge 狀態的設置方法和實施例3中交換機設備埠實例的NetEdge狀態、UserEdge狀態或非 UserEdge狀態的設置方法類似,具體可以參考S301中的方法進行設置,在此不再贅述。對於交換機設備埠實例的^erEdge狀態或非^erEdge狀態的設置也可以進行動態設置。S502 獲取路徑跟蹤請求報文。本實施例中路徑跟蹤請求報文的獲取方法和S302中路徑跟蹤請求報文的獲取方法相似,具體可以參考S302,在此不再贅述。S503:判斷二層組播轉發表中組播成員埠的埠實例狀態中是否存在所述非 UserEdge狀態,如果是,執行S504,如果否,執行S505。二層組播中的每一跳交換機設備收到所述路徑跟蹤請求報文後,查詢二層組播轉發表,判斷所述二層組播轉發表中組播成員埠的埠實例狀態中是否存在所述非 UserEdge狀態,如果存在,執行S504,如果不存在,執行S505。S504 添加自身設備的MAC地址至所述路徑跟蹤請求報文,經所述非^erEdge狀態的埠實例發送所述添加了 MAC地址的路徑跟蹤請求報文至下遊設備。實際應用中,當所述埠實例狀態中存在所述非^erEdge狀態時,添加自身設備的MAC地址至所述路徑跟蹤請求報文,沿著組播轉發表經所述非^erEdge狀態的埠實例向下遊交換機設備發送所述添加了 MAC地址的路徑跟蹤請求報文。由於將自身設備的MAC 地址添加至所述路徑跟蹤請求報文,因此所述路徑跟蹤請求報文包含了從所述NetEdge狀態埠實例對應交換機設備到自身設備的組播路徑信息。如果請求組播的組播成員的埠實例狀態中既有^erEdge狀態,又有非 UserEdge狀態時,則不需要向^erEdge狀態的埠實例轉發所述路徑跟蹤請求報文,防止路徑跟蹤報文被轉發至主機,只需要向非^erEdge狀態的埠實例轉發所述路徑跟蹤請求報文。S505:判斷組播轉發表中請求組播的組播成員的埠實例狀態是否都為所述 UserEdge狀態,如果是,執行S506。S506 終結路徑跟蹤請求報文,將自身設備的MAC地址添加至所述路徑跟蹤請求報文,從所述路徑跟蹤請求報文中獲取從所述NetEdge狀態埠實例對應設備到所述 UserEdge狀態埠實例對應設備的組播路徑信息,將所述組播路徑信息發送至查詢設備。終結路徑跟蹤請求報文;將自身設備的MAC地址添加到所述路徑跟蹤請求報文中,即將所述^erEdge狀態埠實例對應交換機設備的MAC地址添加到所述路徑跟蹤請求報文中,因此所述路徑跟蹤請求報文包含從所述NetEdge狀態埠實例對應交換機設備到所述^erEdge狀態埠實例對應交換機設備的組播路徑信息。將所述路徑跟蹤請求報文修改為路徑跟蹤響應報文,發送所述路徑跟蹤響應報文至查詢設備,由所述查詢設備將從所述NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息進行顯示;具體地,將mtrace報文類型由Request修改為Response,同時將路徑跟蹤響應報文的二層頭的目的MAC地址修改為查詢設備的MAC 地址,向整個二層網絡單播轉發所述路徑跟蹤響應報文,其中,所述路徑跟蹤響應報文中包含了從所述NetEdge狀態埠實例對應交換機設備到所述^erEdge狀態埠實例對應交換機設備的組播路徑信息。查詢設備接收所述路徑跟蹤響應報文後,終結所述路徑跟蹤響應報文;從所述路徑跟蹤響應報文中獲取從所述NetEdge狀態埠實例對應交換機設備到所述^erEdge狀態埠實例對應交換機設備的組播路徑信息,將組播成員信息按照從NetEdge狀態埠實例對應交換機設備到下遊交換機設備的順序進行顯示。實際應用中,獲取從所述NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息,也就表示獲取了從組播源或組播路由器到組成員主機之間的組播轉發路徑信息。對於交換機設備埠實例的^erEdge狀態或非^erEdge狀態的動態設置具體可以參見圖6,圖6為本發明實施例4中提供的動態設置^erEdge狀態或非^erEdge狀態埠實例的方法實施例的流程圖,具體包括S601a 將連接下遊二層組播設備的埠實例狀態均設置為^erEdge狀態。S601b 接收IGMP報告報文或離開報文,根據所述IGMP報告報文或離開報文修改自身設備的二層組播轉發表。在二層組播中,IGMP報告報文或離開報文具體為IGMPVl/v2/v3報告(Iteport)報文或 IGMPv2 離開(Leave)報文,所述 IGMPvl/v2/v3 Report 報文或 IGMPv2 Leave 報文只能由主機發出,並且這類IGMP報文在經過每臺交換機設備時都是線性的,從下到上只有一份,因此最先收到這類IGMP報文的交換機設備就是連接主機最近的二層組播交換機設備。當主機發送IGMP報告報文時,表示主機申請加入組播群組;當主機發送IGMP離開報文時,表示主機申請離開組播群組。每一跳交換機設備接收IGMP報告報文或離開報文後,根據所述IGMP報告報文或離開報文修改自身設備的二層組播轉發表,具體地,如果接收的是IGMP報告報文,則將接收IGMP報告報文的埠添加到自身設備的二層組播轉發表的組播成員埠中;如果接收的IGMP離開報文,則將接收IGMP離開報文的埠從自身設備的二層組播轉發表的組播成員埠中刪除。S601c:判斷所述IGMP報告報文或離開報文中的標記Flag值是否與自身設備默認設置的Flagset值一致,如果是,執行S601d,如果否,執行S601e。所述Flag值可以通過以下任一方式進行存儲,具體為1)在所述IGMP報告報文或離開報文承載的IP報文中新增的Option欄位來存儲所述Flag值,即將所述Flag值存儲於所述新增的Option欄位;其中,所述Option欄位的插入位置位於所述IP報文的報文頭後,用於記錄本節點的系統MAC地址+埠實例。或者,2)復用IGMP報告報文或離開報文的報文頭中的第二個欄位來存儲所述Flag值, 即將所述Flag值存儲於所述IGMP報告報文或離開報文的報文頭中的第二個欄位。參考圖7-圖9,其中,圖7為本發明實施例4中提供的IGMPvl R印ort報文格式示意圖,圖8為本發明實施例4中提供的IGMPv2 Report/Leave報文格式示意圖,圖9為本發明實施例4中提供的IGMPv3 Report報文格式示意圖。圖7中IGMPvl Report報文的報文頭中的第二個欄位在RFC1112中的說明是不使用區域當發送時為0,當接收時忽略。圖8中IGMPv2 R印ort/Leave報文的報文頭中的第二個欄位在RFC2236中的說明是最大響應時間區域僅僅在會員身份查詢消息中有意義, 在其他所有消息中,當發送時置為0,接收時忽略。圖9中IGMPv3 Report報文的報文頭中的第二個欄位在RFC3376中的說明是保留區域當傳送時置為0,當接收時忽略。通過對IGMPvl/v2/v3 R印ort報文或IGMPv2 Leave報文的報文頭中的第二個欄位的分析可知,IGMPvl/v2/v3 R印ort報文或IGMPv2 Leave報文的報文頭中的第二個欄位都是發送時為0,接收時忽略,所以該欄位是可以復用做其他的用途,因此本實施例復用 IGMP報告報文或離開報文的報文頭中的第二個欄位來存儲Flag值。其中,由主機發出的符合協議的IGMP報告報文或離開報文中的Flag值為零。但是,主機設備有可能發出不符合協議的IGMP報告報文或離開報文,其中不符合協議的IGMP 報告報文或離開報文中的Flag值為非零值。所述自身設備默認設置的Flagset值為零,所述Flagset值可以認為是設備可信任的IGMP中Flag值。當所述IGMP報告報文或離開報文中的標記Flag值與自身設備默認設置的Flagset值(零)一致,表示所述IGMP報告報文或離開報文是由主機發出的。S601d:所述埠實例WherEdge狀態保持不變,將所述Flag值修改為第一非零值,發送所述修改後的IGMP報告報文或離開報文至上遊交換機設備。如果所述IGMP報告報文或離開報文中的Flag值是零,也就是說,所述IGMP報告報文或離開報文是由主機發出,由離主機最近的交換機設備埠實例接收到,則將離主機最近的交換機設備埠實例的^erEdge狀態保持不變,將所述Flag值由零修改為第一非零值,發送所述修改後的IGMP報告報文或離開報文至上遊交換機設備。S601e 修改所述Flagset值為預定的Flagset值,判斷所述Flag值與所述預定的 Flagset值是否一致,如果是,執行S601f,如果否,執行S601g。如果所述IGMP報告報文或離開報文中的Flag值不是零,也就是說,所述IGMP報告報文或離開報文有可能是由主機設備發出的不符合協議的IGMP報文,也有可能是經過下遊交換機設備修改後的IGMP報文;所以需要修改所述Flagset值為預定的Flagset值後,再進行判斷,從而執行相應處理。所述預定的Flagset值為由主機發出的不符合協議的IGMP報文中Flag值的經驗值。S601f:所述埠實例WherEdge狀態保持不變,將所述Flag值修改為第二非零值,發送所述修改後的IGMP報告報文或離開報文至上遊交換機設備。如果所述Flag值與所述預定的Flagset值一致,也就是說,所述IGMP報文為由主機發出的不符合協議的IGMP報文,因此所述埠實例的^erEdge狀態保持不變,將所述 Flag值修改為第二非零值,發送所述修改後的IGMP報告報文或離開報文至上遊交換機設備。S601d中的所述第一非零值和S601f中的所述第二非零值為除所述預定的 Flagset值之外的任一非零值。S601g 將所述埠實例的^erEdge狀態修改為非^erEdge狀態,所述Flag值不變,發送所述IGMP報告報文或離開報文至上遊交換機設備。如果所述Flag值與預置的Flagset值不一致,也就是說,所述IGMP報文為經過下遊交換機設備修改後的IGMP報文,因此將所述埠實例的^erEdge狀態修改為非 UserEdge狀態,所述Flag值不變,發送所述IGMP報告報文或離開報文至上遊交換機設備。這樣,IGMP報告報文或離開報文一跳一跳地轉發至NetEdge狀態埠實例,所述 NetEdge狀態埠實例對應交換機設備將IGMP報告報文或離開報文中的Flag還原為零後發送至組播路由器或組播源。本實施例S601c中可以不判斷所述IGMP報告報文或離開報文中的標記Flag值是否與自身設備默認設置的Flagset值一致,而是直接判斷所述IGMP報告報文或離開報文中的標記Flag值是否為零,如果是執行S601d,如果否,執行S601e,相應的S601e也可以用下屬方案來代替,具體的,S601e 判斷所述Flag值與預定值是否一致,如果是,執行S601f,如果否,執行S601g,其中,所述預定值為由主機發出的不符合協議的IGMP報文中Flag值的經驗值。通過上述動態設置,二層組播中的交換機都確定了埠實例的^erEdge狀態或非^erEdge狀態,參考圖10,圖10為本發明實施例4中提供的動態設置埠實例的組網示意圖。在本實施例中,二層組播中的每一跳交換機設備獲取路徑跟蹤請求報文,經過相應的判斷處理後,將自身設備的MAC地址添加到路徑跟蹤請求報文中進行下發,直到終結路徑跟蹤請求報文,使得路徑跟蹤請求報文中包含了從NetEdge狀態埠實例對應交換機設備到^erEdge狀態埠實例對應交換機設備的組播路徑信息;相比較現有技術而言,降低了運維成本,提高了效率。實施例5參考圖11,圖11為本發明實施例5提供的二層組播mtrace報文處理方法實施例的組網示意圖,其中,虛線箭頭表示路徑跟蹤查詢報文的路徑,實線箭頭表示路徑跟蹤請求報文的路徑,點劃線箭頭表示路徑跟蹤響應報文的路徑;交換機1為NetEdge狀態埠實例對應設備,交換機4為查詢設備;用戶包括用戶1、用戶2、用戶3和用戶4,其中,用戶1、 用戶2和用戶3為組成員主機,用戶4不是組成員主機;與用戶1和用戶2直接連接的交換機5的埠實例狀態均為^erEdge狀態,與用戶3直接連接的交換機6的埠實例狀態為 UserEdge狀態,與用戶4連接的交換機2的埠實例狀態為^erEdge狀態。圖11中的路徑跟蹤查詢報文的路徑為由交換機4經過交換機2到交換機1 ;路徑跟蹤請求報文的路徑為由交換機1經交換機2到交換機5,由交換機1經交換機3到交換機6 ;路徑跟蹤響應報文的路徑為由交換機5經交換機2到交換機4,由交換機6經交換機3、交換機1交換機2到交換機4。
對於路徑跟蹤查詢報文、路徑跟蹤請求報文和路徑跟蹤響應報文的詳細處理流程請參見上述本發明實施例的描述,在此不再贅述。在本實施例中,二層組播中的每一跳交換機設備獲取路徑跟蹤請求報文,經過相應的判斷處理後,將自身設備的MAC地址添加到路徑跟蹤請求報文中進行下發,最終由查詢設備將從NetEdge狀態埠實例對應交換機設備到^erEdge狀態埠實例對應交換機設備的組播路徑信息進行顯示;相比較現有技術而言,降低了運維成本,提高了效率。上述本發明實施例主要是針對IGMP-S協議的描述,對於IGMP-P協議的處理過程與IGMP-S協議相似,具體可以參見上述本發明實施例的描述。基於本發明實施例類似的原理,可以對mtrace的參數進行擴展,例如增加IPv6 的信息,實現對IPv6轉發的數據流的跟蹤;或者,在路徑跟蹤Request報文中增加欄位, 用來指明每臺交換機設備上二層組播的狀態(如二層組播設置IGMP/MLD(Multicast Listener Discover,組播偵聽發現協議)Snooping、靜態組;或存在的組播成員信息)來實現組播的操作、管理和維護(0AM,Operation Administration and Maintenance)功能。實施例6參考圖12,圖12為本發明實施例6提供的一種二層組播路徑跟蹤裝置實施例的結構示意圖,所述二層組播路徑跟蹤裝置包括獲取模塊102,用於獲取路徑跟蹤請求報文。判斷模塊103,用於判斷二層組播轉發表的組播成員埠的埠實例狀態。第一處理模塊104,用於當所述埠實例狀態中存在非^erEdge狀態,添加自身設備的介質訪問控制MAC地址至所述路徑跟蹤請求報文,經所述非^erEdge狀態的埠實例發送所述添加了 MAC地址的路徑跟蹤請求報文至下遊設備。第二處理模塊105,用於當所述埠實例狀態均SherEdge狀態,終結路徑跟蹤請求報文,將自身設備的MAC地址添加至所述路徑跟蹤請求報文,從所述路徑跟蹤請求報文中獲取從NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息,將所述組播路徑信息發送至查詢設備。在本實施例中,二層組播中的每一跳二層組播設備獲取路徑跟蹤請求報文,經過相應的判斷處理後,將自身設備的MAC地址添加到路徑跟蹤請求報文中進行下發,使得路徑跟蹤請求報文中包含了從NetEdge狀態埠實例對應設備到^erEdge狀態埠實例對應設備的組播路徑信息;相比較現有技術而言,降低了運維成本,提高了效率。實施例7參考圖13,圖13為本發明實施例7提供的一種二層組播路徑跟蹤裝置實施例的結構示意圖,所述二層組播路徑跟蹤裝置包括設置模塊101,用於設置二層組播設備的埠實例狀態,所述埠實例狀態包括 網絡側邊緣NetEdge狀態、用戶側邊緣^erEdge狀態和非^erEdge狀態。在實際應用中,由於連接組播源或組播路由器的二層組播設備較少,所以可以直接靜態設置二層組播設備的埠實例狀態為NetEdge狀態,具體地,可以指定直接連接上遊組播源或組播路由器的二層組播設備的埠實例狀態為NetEdge狀態。對於本領域技術人員而言,設置二層組播設備的埠實例狀態為NetEdge狀態的方法不僅僅局限於此方法,在此不作贅述。
對於二層組播設備的^erEdge狀態埠實例或非^erEdge狀態埠實例也可以進行靜態設置,具體地,可以指定直接連接下遊二層組播設備的埠實例狀態為非 UserEdge狀態;可以指定直接連接下遊主機的埠實例狀態為^erEdge狀態;或者,也可以動態設置二層組播設備的^erEdge狀態埠實例或非^erEdge狀態埠實例。獲取模塊102,用於獲取路徑跟蹤請求報文。判斷模塊103,用於判斷二層組播轉發表的組播成員埠的埠實例狀態。二層組播中的每一跳二層組播設備收到所述路徑跟蹤請求報文後,查詢二層組播轉發表,判斷所述二層組播轉發表中組播成員埠的埠實例狀態。第一處理模塊104,用於當所述埠實例狀態中存在所述非^erEdge狀態,添加自身設備的介質訪問控制MAC地址至所述路徑跟蹤請求報文,經所述非^erEdge狀態的埠實例發送所述添加了 MAC地址的路徑跟蹤請求報文至下遊設備。第二處理模塊105,用於當所述埠實例狀態均為所述^erEdge狀態,終結路徑跟蹤請求報文,將自身設備的MAC地址添加至所述路徑跟蹤請求報文,從所述路徑跟蹤請求報文中獲取從所述NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息,將所述組播路徑信息發送至查詢設備。在本實施例中,二層組播中的每一跳二層組播設備獲取路徑跟蹤請求報文,經過相應的判斷處理後,將自身設備的MAC地址添加到路徑跟蹤請求報文中進行下發,使得路徑跟蹤請求報文中包含了從NetEdge狀態埠實例對應設備到^erEdge狀態埠實例對應設備的組播路徑信息;相比較現有技術而言,降低了運維成本,提高了效率。實施例8參考圖14a,圖1 是本發明實施例8中提供的一種二層組播路徑跟蹤裝置實施例的第一結構示意圖,所述二層組播路徑跟蹤裝置包括設置模塊101、獲取模塊102、判斷模塊103、第一處理模塊104和第二處理模塊105 ;其中,所述判斷模塊103、第一處理模塊104和第二處理模塊105的功能與實施例 5中所述判斷模塊103、第一處理模塊104和第二處理模塊105的功能類似,在此不再贅述。所述設置模塊101包括第一設置單元1011和第二設置單元1012 所述第一預置單元1011,用於設置二層組播設備的埠實例狀態為NetEdge狀態。其中,所述第一設置單元1011包括NetEdge設置子模塊,用於靜態設置直接連接上遊組播源或組播路由器的埠實例的狀態為NetEdge狀態。所述第二設置單元1012,用於設置二層組播設備的埠實例狀態為^erEdge狀態或非^erEdge狀態。所述第二設置單元1012包括^erEdge設置子模塊101 和非^erEdge設置子模塊1012b 所述^erEdge設置子模塊1012a,用於靜態設置二層組播設備的埠實例狀態為 UserEdge狀態,其中,直接連接下遊主機的埠實例狀態為^erEdge狀態。所述非^erEdge設置子模塊1012b,用於靜態設置二層組播設備的埠實例狀態為非^erEdge狀態,其中,連接下遊二層組播設備的埠實例狀態為非^erEdge狀態。
當執行主體是所述NetEdge狀態埠實例對應設備時,所述獲取模塊102包括第一接收單元1021和第一修改單元1022 所述第一接收單元1021,用於接收由查詢設備發送的路徑跟蹤查詢報文。所述第一修改單元1022,用於將所述路徑跟蹤查詢報文修改為二層組播請求報文。或者,當執行主體不是所述NetEdge狀態埠實例對應設備時,所述獲取模塊102 包括第二接收單元1023,如圖14b所示,圖14b是本發明實施例8中提供的一種二層組播路徑跟蹤裝置實施例的第二結構示意圖所述第二接收單元1023,用於接收由上遊二層組播設備發送的二層組播請求報文。在本實施例中,二層組播中的每一跳二層組播設備獲取路徑跟蹤請求報文,經過相應的判斷處理後,將自身設備的MAC地址添加到路徑跟蹤請求報文中進行下發,使得路徑跟蹤請求報文中包含了從NetEdge狀態埠實例對應設備到^erEdge狀態埠實例對應設備的組播路徑信息;相比較現有技術而言,降低了運維成本,提高了效率。實施例9參考圖1 和15b,圖1 為本發明實施例9中提供的一種二層組播路徑跟蹤裝置實施例的第一結構示意圖;圖1 為本發明實施例9中提供的一種二層組播路徑跟蹤裝置實施例的第二結構示意圖。所述二層組播路徑跟蹤裝置包括設置模塊101、獲取模塊102、判斷模塊103、第一處理模塊104和第二處理模塊105 ;其中,所述判斷模塊103、第一處理模塊104和第二處理模塊105的功能與實施例7中所述判斷模塊103、第一處理模塊104和第二處理模塊105 的功能類似,可參照實施例7中相關描述,在此不再贅述。所述設置模塊101包括第一設置單元1011和第二設置單元1012,其中,所述第一設置單元1011的功能與實施例8中所述第一設置單元1011的功能類似,具體可參照實施例8中相關描述,在此不再贅述。所述獲取模塊102包括第一接收單元1021和第一修改單元1022,其中,所述第一接收單元1021和第一修改單元1022的功能與實施例8中所述第一接收單元1021和第一修改單元1022的功能類似,具體可參照實施例8中相關描述,在此不再贅述;或者,所述獲取模塊102包括第二接收單元1023,其中,所述第二接收單元1023的功能與實施例8中所述第二接收單元1023的功能類似,具體可參照實施例8中相關描述,在此不再贅述。所述第二設置單元1012可以包括初始化子模塊1012c、第一接收子模塊1012d、 第一判斷子模塊1012e、第一處理子模塊1012f、第二判斷子模塊1012g、第二處理子模塊 1012h、第三處理子模塊1012i 初始化子模塊1012c,用於將連接下遊二層組播設備的埠實例狀態均設置為 UserEdge 狀態;第一接收子模塊1012d,用於接收網際網路組管理協議IGMP報告報文或離開報文, 根據所述IGMP報告報文或離開報文修改自身設備的二層組播轉發表;第一判斷子模塊1012e,用於判斷所述IGMP報告報文或離開報文中的標記Flag值是否與自身設備默認設置的Flagset值一致;
第一處理子模塊1012f,用於當第一判斷模塊的判斷結果為是時,所述埠實例的 ^erEdge狀態保持不變,將所述Flag值修改為第一非零值,發送所述修改後的IGMP報告報文或離開報文至上遊二層組播設備,所述第一非零值為除預定的Flagset值之外的任一非零值;第二判斷子模塊1012g,用於第一判斷模塊的判斷結果為否時,修改所述Flagset 值為所述預定的Flagset值,判斷所述Flag值與所述預定的Flagset值是否一致;第二處理子模塊1012h,用於當第二判斷模塊的判斷結果為是時,所述埠實例的 UserEdge狀態不變,將所述Flag值修改為第二非零值,發送所述修改後的IGMP報告報文或離開報文至上遊交換機設備,所述第二非零值為除所述預定的Flagset值之外的任一非零值;第三處理子模塊1012i,用於當第二判斷模塊的判斷結果為否時,將所述埠實例的^erEdge狀態修改為非^erEdge狀態,所述Flag值不變,發送所述IGMP報告報文或離開報文至上遊二層組播設備。在本實施例中,二層組播中的每一跳二層組播設備獲取路徑跟蹤請求報文,經過相應的判斷處理後,將自身設備的MAC地址添加到路徑跟蹤請求報文中進行下發,使得路徑跟蹤請求報文中包含了從NetEdge狀態埠實例對應設備到^erEdge狀態埠實例對應設備的組播路徑信息;相比較現有技術而言,降低了運維成本,提高了效率。實施例10參考圖16,圖16為本發明實施例10提供的一種二層組播路徑跟蹤系統實施例的結構示意圖,所述二層組播路徑跟蹤系統包括二層組播路徑跟蹤裝置11,用於獲取路徑跟蹤請求報文;判斷二層組播轉發表的組播成員埠的埠實例狀態;當所述埠實例狀態中存在非^erEdge狀態,添加自身設備的介質訪問控制MAC地址至所述路徑跟蹤請求報文,經所述非^erEdge狀態的埠實例發送所述添加了 MAC地址的路徑跟蹤請求報文至下遊設備;當所述埠實例狀態均為 UserEdge狀態,終結路徑跟蹤請求報文,添加自身設備的MAC地址至所述路徑跟蹤請求報文,從所述路徑跟蹤請求報文中獲取從NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息,將所述組播路徑信息發送至查詢設備。 查詢設備22,用於接收從NetEdge狀態埠實例對應設備到^erEdge狀態埠實例對應設備的組播路徑信息。所述二層組播路徑跟蹤裝置11還用於設置二層組播設備的埠實例狀態,所述埠實例狀態包括網絡側邊緣NetEdge狀態、用戶側邊緣^erEdge狀態和非^erEdge狀態。所述設置二層組播設備的埠實例狀態包括靜態設置直接連接上遊組播源或組播路由器的埠實例狀態為NetEdge狀態;靜態設置二層組播設備的埠實例狀態為^erEdge狀態或非^erEdge狀態,其中,直接連接下遊主機的埠實例狀態為^erEdge狀態,連接下遊二層組播設備的埠實例狀態為非^erEdge狀態;動態設置二層組播設備的埠實例狀態為^erEdge狀態或非^erEdge狀態,具體包括將連接下遊二層組播設備的埠實例狀態均設置為^erEdge狀態;接收網際網路組管理協議IGMP報告報文或離開報文,根據所述IGMP報告報文或離開報文修改自身設備的二層組播轉發表;判斷所述IGMP報告報文或離開報文中的標記Flag值是否與自身設備默認設置的Flagset值一致,如果是,所述埠實例的^erEdge狀態保持不變,將所述Flag 值修改為第一非零值,發送所述修改後的IGMP報告報文或離開報文至上遊二層組播設備; 如果否,修改所述Flagset值為預定的Flagset值,判斷所述Flag值與所述預定的Flagset 值是否一致,如果是,所述埠實例的^erEdge狀態保持不變,將所述Flag值修改為第二非零值,發送所述修改後的IGMP報告報文或離開報文至上遊二層組播設備;如果否,將所述埠實例的^erEdge狀態修改為非^erEdge狀態,所述Flag值不變,發送所述IGMP報告報文或離開報文至上遊二層組播設備;所述第一非零值和所述第二非零值為除所述預定的Flagset值之外的任一非零值。其中,所述根據所述IGMP報告報文或離開報文修改自身設備的二層組播轉發表具體為將接收IGMP報告報文的埠添加到自身設備的二層組播轉發表的組播成員埠 ;將接收IGMP離開報文的埠從自身設備的二層組播轉發表的組播成員埠中刪除。所述獲取路徑跟蹤請求報文包括NetEdge狀態埠實例對應設備接收由查詢設備發送的路徑跟蹤查詢報文; NetEdge狀態埠實例對應設備將所述路徑跟蹤查詢報文修改為路徑跟蹤請求報文。或者,所述獲取路徑跟蹤請求報文包括非NetEdge狀態埠實例對應設備接收由上遊二層組播設備發送的路徑跟蹤請求報文。所述查詢設備22還用於發送路徑跟蹤查詢報文至二層組播跟蹤裝置。需要說明的是,本說明書中的各個實施例均採用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。 對於裝置類實施例而言,由於其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。需要說明的是,在本文中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。而且,術語「包括」、「包含」或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句「包括一個……」限定的要素,並不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。本領域普通技術人員可以理解實現上述實施例的全部或部分步驟可以通過硬體來完成,也可以通過程序來指令相關的硬體完成,所述的程序可以存儲於一種計算機可讀存儲介質中,上述提到的存儲介質可以是只讀存儲器,磁碟或光碟等。以上所述僅為本發明的較佳實施例,並不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種二層組播路徑跟蹤方法,其特徵在於,所述方法包括獲取路徑跟蹤請求報文;判斷二層組播轉發表中組播成員埠的埠實例狀態;當所述埠實例狀態中存在非用戶側邊緣^erEdge狀態,添加自身設備的介質訪問控制MAC地址至所述路徑跟蹤請求報文,經所述非^erEdge狀態的埠實例發送所述添加了 MAC地址的路徑跟蹤請求報文至下遊設備;當所述埠實例狀態均為^erEdge狀態,終結路徑跟蹤請求報文,添加自身設備的MAC地址至所述路徑跟蹤請求報文,從所述路徑跟蹤請求報文中獲取從網絡側邊緣 NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息, 將所述組播路徑信息發送至查詢設備。
2.根據權利要求1所述的方法,其特徵在於,所述獲取路徑跟蹤請求報文之前進一步包括設置二層組播設備的埠實例狀態,所述埠實例狀態包括網絡側邊緣NetEdge狀態、用戶側邊緣^erEdge狀態和非^erEdge狀態。
3.根據權利要求2所述的方法,其特徵在於,所述設置二層組播設備的埠實例狀態包括靜態設置直接連接上遊組播源或組播路由器的埠實例狀態為NetEdge狀態。
4.根據權利要求2所述的方法,其特徵在於,所述設置二層組播設備的埠實例狀態包括靜態設置二層組播設備的埠實例狀態為^erEdge狀態或非^erEdge狀態,其中,直接連接下遊主機的埠實例狀態為^erEdge狀態,連接下遊二層組播設備的埠實例狀態為非^erEdge狀態。
5.根據權利要求2所述的方法,其特徵在於,所述設置二層組播設備的埠實例狀態包括動態設置二層組播設備的埠實例狀態為^erEdge狀態或非^erEdge狀態,具體包括將連接下遊二層組播設備的埠實例狀態均設置為^erEdge狀態;接收網際網路組管理協議IGMP報告報文或離開報文,根據所述IGMP報告報文或離開報文修改自身設備的二層組播轉發表;判斷所述IGMP報告報文或離開報文中的標記Flag值是否與自身設備默認設置的 Flagset值一致,如果是,所述埠實例的^erEdge狀態保持不變,將所述Flag值修改為第一非零值,發送所述修改後的IGMP報告報文或離開報文至上遊二層組播設備;如果否,修改所述Flagset值為預定的Flagset值,判斷所述Flag值與所述預定的 Flagset值是否一致,如果是,所述埠實例的^erEdge狀態保持不變,將所述Flag值修改為第二非零值,發送所述修改後的IGMP報告報文或離開報文至上遊二層組播設備;如果否,將所述埠實例的^erEdge狀態修改為非^erEdge狀態,所述Flag值不變,發送所述 IGMP報告報文或離開報文至上遊二層組播設備;所述第一非零值和所述第二非零值為除所述預定的Flagset值之外的任一非零值。
6.根據權利要求5所述的方法,其特徵在於,所述Flag值存儲於所述IGMP報告報文或離開報文的報文頭中的第二個欄位; 或者,所述Flag值存儲於所述IGMP報告報文或離開報文承載的IP報文中新增的Option欄位,所述Option欄位的插入位置位於所述IP報文的報文頭後。
7.根據權利要求5所述的方法,其特徵在於,所述根據所述IGMP報告報文或離開報文修改自身設備的二層組播轉發表具體為將接收IGMP報告報文的埠添加到自身設備的二層組播轉發表的組播成員埠 ;將接收IGMP離開報文的埠從自身設備的二層組播轉發表的組播成員埠中刪除。
8.根據權利要求1所述的方法,其特徵在於,所述獲取路徑跟蹤請求報文包括 所述NetEdge狀態埠實例對應設備接收由查詢設備發送的路徑跟蹤查詢報文; 所述NetEdge狀態埠實例對應設備將所述路徑跟蹤查詢報文修改為路徑跟蹤請求報文。
9.根據權利要求1所述的方法,其特徵在於,所述獲取路徑跟蹤請求報文包括非NetEdge狀態埠實例對應設備接收由上遊二層組播設備發送的路徑跟蹤請求報文。
10.一種二層組播路徑跟蹤裝置,其特徵在於,包括 獲取模塊,用於獲取路徑跟蹤請求報文;判斷模塊,用於判斷二層組播轉發表的組播成員埠的埠實例狀態; 第一處理模塊,用於當所述埠實例狀態中存在非^erEdge狀態,添加自身設備的介質訪問控制MAC地址至所述路徑跟蹤請求報文,經所述非^erEdge狀態的埠實例發送所述添加了 MAC地址的路徑跟蹤請求報文至下遊設備;第二處理模塊,用於當所述埠實例狀態均為^erEdge狀態,終結路徑跟蹤請求報文,添加自身設備的MAC地址至所述路徑跟蹤請求報文,從所述路徑跟蹤請求報文中獲取從NetEdge狀態埠實例對應設備到所述^erEdge狀態埠實例對應設備的組播路徑信息,將所述組播路徑信息發送至查詢設備。
11.根據權利要求10所述的裝置,其特徵在於,進一步包括設置模塊,用於設置二層組播設備的埠實例狀態,所述埠實例狀態包括網絡側邊緣NetEdge狀態、用戶側邊緣^erEdge狀態和非^erEdge狀態。
12.根據權利要求11所述的裝置,其特徵在於,所述設置模塊包括第一設置單元,用於設置二層組播設備的埠實例狀態為NetEdge狀態; 第二設置單元,用於設置二層組播設備的埠實例狀態為^erEdge狀態或非 UserEdge 狀態。
13.根據權利要求12所述的裝置,其特徵在於,所述第一設置單元包括NetEdge設置子模塊,用於靜態設置直接連接上遊組播源或組播路由器的埠實例的狀態為NetEdge狀態。
14.根據權利要求12所述的裝置,其特徵在於,所述第二設置單元包括 UserEdge設置子模塊,用於靜態設置二層組播設備的埠實例狀態為^erEdge狀態,其中,直接連接下遊主機的埠實例狀態為^erEdge狀態;非^erEdge設置子模塊,用於靜態設置二層組播設備的埠實例狀態為非^erEdge狀態,其中,連接下遊二層組播設備的埠實例狀態為非^erEdge狀態。
15.根據權利要求12所述的裝置,其特徵在於,所述第二設置單元包括初始化子模塊,用於將連接下遊二層組播設備的埠實例狀態均設置為^erEdge狀態;第一接收子模塊,用於接收網際網路組管理協議IGMP報告報文或離開報文,根據所述 IGMP報告報文或離開報文修改自身設備的二層組播轉發表;第一判斷子模塊,用於判斷所述IGMP報告報文或離開報文中的標記Flag值是否與自身設備默認設置的Flagset值一致;第一處理子模塊,用於當第一判斷模塊的判斷結果為是時,所述埠實例的^erEdge 狀態保持不變,將所述Flag值修改為第一非零值,發送所述修改後的IGMP報告報文或離開報文至上遊二層組播設備,所述第一非零值為除預定的Flagset值之外的任一非零值;第二判斷子模塊,用於第一判斷模塊的判斷結果為否時,修改所述Flagset值為所述預定的Flagset值,判斷所述Flag值與所述預定的Flagset值是否一致;第二處理子模塊,用於當第二判斷模塊的判斷結果為是時,所述埠實例的^erEdge 狀態不變,將所述Flag值修改為第二非零值,發送所述修改後的IGMP報告報文或離開報文至上遊交換機設備,所述第二非零值為除所述預定的Flagset值之外的任一非零值;第三處理子模塊,用於當第二判斷模塊的判斷結果為否時,將所述埠實例的 UserEdge狀態修改為非^erEdge狀態,所述Flag值不變,發送所述IGMP報告報文或離開報文至上遊二層組播設備。
16.根據權利要求10所述的裝置,其特徵在於,所述獲取模塊包括第一接收單元,用於NetEdge狀態埠實例對應設備接收由查詢設備發送的路徑跟蹤查詢報文;第一修改單元,用於NetEdge狀態埠實例對應設備將所述路徑跟蹤查詢報文修改為路徑跟蹤請求報文。
17.根據權利要求10所述的裝置,其特徵在於,所述獲取模塊包括第二接收單元,用於非NetEdge狀態埠實例對應設備接收由上遊二層組播設備發送的路徑跟蹤請求報文。
18.—種二層組播路徑跟蹤系統,其特徵在於,包括如權利要求10-17任一項所述的二層組播跟蹤裝置和查詢設備,所述查詢設備用於接收從NetEdge狀態埠實例對應設備到 UserEdge狀態埠實例對應設備的組播路徑信息。
19.根據權利要求18所述的系統,其特徵在於,所述查詢設備還用於發送路徑跟蹤查詢報文至二層組播跟蹤裝置。
全文摘要
本發明實施例公開了一種二層組播路徑跟蹤方法、裝置及系統,屬於通信領域。二層組播路徑跟蹤方法實施例包括獲取路徑跟蹤請求報文;判斷二層組播轉發表的組播成員埠的埠實例狀態;當埠實例狀態中存在非UserEdge狀態,添加MAC地址至路徑跟蹤請求報文,經非UserEdge狀態的埠實例發送路徑跟蹤請求報文至下遊設備;當埠實例狀態均為UserEdge狀態,終結路徑跟蹤請求報文,將MAC地址添加至路徑跟蹤請求報文,從路徑跟蹤請求報文中獲取從NetEdge狀態埠實例對應設備到UserEdge狀態埠實例對應設備的組播路徑信息,將組播路徑信息發送至查詢設備。本發明實施例可以降低運維成本,提高效率。
文檔編號H04L12/18GK102265554SQ201180000900
公開日2011年11月30日 申請日期2011年6月20日 優先權日2011年6月20日
發明者周正斌 申請人:華為技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀