一種組播轉發表查找方法和裝置的製作方法
2023-04-24 17:25:56
專利名稱:一種組播轉發表查找方法和裝置的製作方法
技術領域:
本發明涉及通信技術領域,尤其涉及一種組播轉發表查找方法和裝置。
技術背景隨著網際協議(IP, International Protocol)網絡的發展,網絡應用也越來 越豐富。出現了會議電視、電子白板等一類新型應用,這些應用與傳統IP應 用相比,數據量較大,並且每個發送點存在多個接收點,但又不是所有的網 絡節點。在這樣的需求背景下,產生了IP多播技術,IP多4番,也稱為多址廣 播或組播,是一種允許一臺或多臺主機作為多播源, 一次性地、同時向多臺 主機發送單一數據包的傳輸控制協議(TCP, Transfer Control Protocol) /IP網 絡技術。組播需要完成的功能是讓發送端向一個組發送數據。與重複點對點 通信方式和廣播方式相比,在組播應用中,使用單一的數據流替代多個數據 流,能夠實現點到多點的通信同時避免不必要的帶寬與處理時間浪費,從而 在有限的網絡資源上滿足多播應用需求。以下通過在乙太網中的應用,來說明組播在交換設備中的具體處理過程在乙太網交換設備中, 一般包含多個快速轉發單元(EFU, Express Forwarding Unit)和流量管理器(TM, Traffic Manager), EFU由EFU上行單 元和EFU下行單元組成。EFU與設備埠交互,負責轉發動作執行;TM分 割轉發的上下行數據,從EFU接收流量,負責流量的調度複製並將流量發送 回EFU。為簡便起見,以網絡交換設備包含1個EFU和1個TM來簡要說明 網絡交換設備的流量處理過程,參照圖1,為現有技術中網絡交換設備結構示 意圖,Pl、 P2、 P3為i殳備埠號以下結合圖1,分三步簡要闡述交換設備中的組播處理過程第一步,快速轉發單元(EFU, Express Forwarding Unit)上行單元處理 EFU與設備埠交互,接收線路上過來的流量。首先假設P2、 P3埠側用戶 加入了某一個組播組G。當組播報文從PI埠進入後,會去查找組播i某體訪問控制(MAC, Media Access Control)表,根據數據報文的目的mac地址查 找到組播MAC表後,返回一個多播標識(MID, Multicast Identification ),將 該MID封裝在幀頭髮送到TM;第二步,TM處理TM預先保存一個MID的出埠號和複製份數的鏈 表,來管理TM晶片的表項,它具有對報文進行複製的功能。EFU將封裝MID 後的報文發送到TM後,TM會根據該MID得到對應的出埠號和該埠的 複製份數,然後向該埠複製多份報文依次發送到EFU的下行,每一份複製 後的數據報文對應 一 個複製份數序號;第三步,EFU下行單元處理TM按照MID對應的埠號和複製份數, 對才艮文進行複製後重新發回到EFU; EFU下行會根據MID,對應埠號和復 制後的每一個數據報文對應的複製份數序號去查找下行連結表(ELB, Egress Link Block),從而得到該報文的轉發信息。通常,假設交換設備可支持8K個MID, 64個埠,每個埠對應一個 埠號,每個埠的最大複製能力為128份,則在EFU下行,根據MID、端 口號和複製份數序號去查找ELB表,則該ELB的規格就是8K*64*128=64M條表項。由於ELB相對較大,達到十兆級的容量,將其放在三態存儲器(TCAM, Ternary Content Addressable Memory)中無法滿足要求,只能i文在有較大存儲 容量的"t爭態隨才幾存卡者器(SRAM, Synchronous Random Access Memory)和動 態隨機存儲器(DRAM, Dynamic Content Addressable Memory)中。乂人成本 上考慮, 一般將該表放在比較廉價的DRAM中。參照圖2,為現有技術中ELB 示意圖,查找該ELB的關鍵字由MID、埠號、複製份數序號構成。在對現有技術的研究和實踐過程中,發明人發現現有技術中,將ELB作 為線性表存放在DRAM中,需要很大的存儲空間,成本較高;同時,在進行 組播大規格表項查找時,釆用上述線性查找方法耗時較大,且很難維護。並 且,即使MID或者PORT有一個增大的話,ELB的空間則會呈128的倍數增 長,因此,可通用性和可擴展性差。而如果將ELB作為非線性表,通:^7合希 算法並採用二叉樹的方法查找的話,則會大大增加微碼操作的複雜度,尤其對於指令空間非常緊張的網絡處理器(NP, Network Processor ),很難實現。 發明內容本發明實施例提供一種組播轉發表查找方法和裝置,能夠節約存儲空間, 減少查找時間,提高可擴展性和可通用性。為解決上述技術問題,本發明所提供的組播轉發表查找方法和裝置實施 例是通過以下技術方案實現的本發明實施例提供了一種組播轉發表查找方法,該方法包括從所接收的數據報文幀頭中獲取至少兩個關鍵字,所述關鍵字至少包括 第 一級關鍵字和第二級關鍵字;根據所述第一級關鍵字,查找第一級組播轉發表,從所述第一級組4番轉 發表中查找獲得與所述第 一級關鍵字對應的第二級組播轉發表的地址索引;根據所述第二級組播轉發表的地址索引和所述第二級關鍵字,查找第二 級組播轉發表,從所述第二級組播轉發表中查找獲得與所述第二級組播轉發 表的地址索引和所述第二級關鍵字對應的表項內容。本發明實施例提供了 一種組播轉發表查找裝置,該裝置包括關鍵字獲取單元,用於從所接收的數據報文幀頭中獲取至少兩個關鍵字, 所述關鍵字至少包括第一級關鍵字和第二級關鍵字;第一查找單元,用於根據所述第一級關鍵字,查找第一級組播轉發表, 從所述第 一級組播轉發表中查找獲得與所述第 一級關^:字對應第二級組4番轉 發表的地址索引;第二查找單元,用於根據所述第二級組播轉發表的地址索引和所述第二 級關鍵字,查找第二級組播轉發表,從所述第二級組播轉發表中查找獲得所 述第二級組播轉發表的地址索引以及第二級關鍵字對應的表項內容。本發明實施例還提供了一種交換設備,該交換設備包括TM單元和EFU 下行單元,所述EFU下行單元與TM單元進行數據交互,所述EFU下行單元 包括關鍵字獲取單元,用於從所接收的數據報文幀頭中獲取至少兩個關4建字,所述關鍵字至少包括第一級關鍵字和第二級關鍵字;第一查找單元,用於根據所述第一級關鍵字查找第一級組播轉發表,從 所述第 一級組播轉發表中查找獲得與所述第 一級關鍵字對應的第二級組^"轉發表的地址索引;第二查找單元,用於根據所述第二級組播轉發表的地址索引和所述第二 級關鍵字查找第二級組播轉發表,從所述第二級組播轉發表中查找獲得所述 第二級組播轉發表的地址索引和第二級關鍵字所對應的表項內容。本發明實施例的技術方案通過獲取至少兩個關鍵字,且所述關鍵字至少 包括第一級關鍵字和第二級關鍵字,根據所述第一級關鍵字查找第一級組播 轉發表,獲取第二級組播轉發表的地址索引,根據獲取的第二級組播轉發表 的地址索引和所述第二級關鍵字,查找第二級組播轉發表,獲取所述第二級 組播轉發表的地址索引和第二級關鍵字對應的表項內容;由於上述技術方案 中的組播轉發表查找是通過將組播轉發表分級實現的,將所查找的關鍵字分 在至少兩個組播轉發表中並通過地址索引來表示其中的映射關係,對於大規 格的組播轉發表,通過分級表表示後,可以根據業務需要靈活分配除第一級 組播轉發表外的各級組播轉發表中的關鍵字的數目,不需要所有關鍵字的數 目都按照最大規格設置,因此可以節約存儲空間,降低成本;同時,由於可 以靈活配置組播轉發表中關鍵字對應的個數,組播轉發表的規格大大減小, 因此可以極大地節約查找時間,而且不需要很大的微碼操作複雜度,可以節 約指令空間,適合於指令空間較緊張的網絡處理器;並且,由於每個組播轉 發表都較小,因此易於維護,而且,根據實際需要分配各級組播轉發表中所 支持的關鍵字的個數,具有更好的通用性和可擴展性。
圖1為現有技術中網絡交換設備結構示意圖;圖2為現有技術中ELB示意圖;圖3為本發明實施例中組播轉發表查找方法流程圖;圖4a為本發明實施例中第一級組播轉發表查找示意圖;圖4b為本發明實施例中第二級組播轉發表查找示意圖; 圖5為本發明實施例中組播轉發表查找裝置實施例一結構示意圖; 圖6為本發明實施例中組播轉發表查找裝置實施例二結構示意圖; 圖7為本發明實施例中交換設備實施例一結構示意圖; 圖8為本發明實施例中交換設備實施例二結構示意圖。
具體實施方式
本發明實施例提供了 一種組播轉發表查找方法和裝置,該組播轉發表查 找方法中,通過獲取至少兩個關鍵字,所述關鍵字至少包括第一級關鍵字和 第二級關鍵字;根據獲取的第一級關鍵字,查找第一級組播轉發表,從第一 級組播轉發表中查找獲得與第一級關鍵字對應的地址索引;然後根據所獲取 的地址索引和已獲取的第二級關鍵字,查找第二級組播轉發表,從第二級組 播轉發表中查找獲得與所述地址索引和第二級關鍵字對應的表項內容;當所 述表項內容為所述第二級組播轉發表的下一級組播轉發表的地址索引時,依 照上述查找所述第二級組播轉發表的方式從所述第二級組播轉發表的下一級 組播轉發表開始,逐級向下查找所述第二級組播轉發表後的各級組播轉發表, 直至查找獲得組播轉發信息。這種組播轉發表查找方法可以節約存儲空間, 減少查找時間,提高可擴展性和可通用性。為使本發明實施例的目的、技術方案及優點更加清楚明了,以下參照附 圖,以應用在交換網設備中組播轉發表的查找和轉發為例進行詳細說明參照圖3,為本發明實施例中組播轉發表查找方法實施例流程圖,以下通 過具體步驟進行詳細說明步驟31、從對數據報文進行封裝的幀頭中獲取MID、埠號和複製份數序號;應用在交換網設備時,組播數據淨艮文進入EFU上行單元後,可以通過查 找組播MAC表來獲得與所述組播數據才艮文的目的MAC地址對應的MID,然 後將該MID封裝在幀頭中發送到TM, TM根據該MID獲取到對應的埠號 和複製份數序號後封裝在幀頭中發送到EFU下行單元。EFU下行單元解析該幀頭獲取MID、埠號和複製份數序號。幀頭通常是在數據報文進入交換設備後在數據報文的前邊添加的一定字 節的信息,所添加的信息為交換設備所私有的信息,用以標誌報文在處理時 的一些信息,如該報文的出埠號,報文為單播還是組播等私有標誌,只在 交換設備內部有效。在報文被處理完畢後從交換設備發出時,該信息被刪除。步驟32、根據獲取的MID和埠號,查找第一級組播轉發表,獲取所述 MID和埠號對應的地址索引;將獲得的MID和埠號作為第一級關鍵字,查找第一級組播轉發表,從 所述第 一級組播轉發表中查找獲取該MID和埠號所對應的第二級組播轉發 表的地址索引,參照圖4a,為本發明實施例中第一級組播轉發表查找示意圖, 根據MID和埠號PORT,查找到對應的下行鏈路表偏移地址ELB Offset Address;步驟33、根據獲取的地址索引以及已獲取的複製份數序號,查找第二級 組播轉發表,從第二級組播轉發表中查找獲取該地址索引和複製份數序號所 對應的表項內容。利用從第 一級組播轉發表中獲取的地址索引以及之前獲取的複製份數序 號查找第二級組播轉發表,參照圖4b,為本發明實施例中第二級組播轉發表 查找示意圖,複製份數序號作為第二級關鍵字,根據ELB Offset Address和復 制份數序號,可以查找到對應的ELB數據,獲取到報文的處理內容。該表項包含該報文從該交換設備發送出去時的一些轉發信息,如該報文 是普通二層轉發還是入虛擬私有網絡月良務(VPLS, Virtual Private LAN Service ) 及從該設備出去時封裝的是虛擬網絡標識vlanID或是鏈路轉換協議(LSP, Link Switching Protocol)標識等。假設MID個數有8K,仍支持64個埠 ,那麼第 一級組播轉發表的規格 為8K*64=512K,而對於第二級組播轉發表,可以根據設備實際需求來設置 ELB表的規格,例如在實際環境中,並不需要所有的埠都複製128份,則 可以通過第一級組播轉發表中的ELB Offset Address值與第二級組播轉發表中 表項的映射關係以及複製份數序號來配置第二級組播轉發表,實現第二級組播轉發表的動態分配。例如,設備支持8K個MID, 64個埠,所以第一級 組播轉發表的規格就是8K*64 = 512K條表項,即多播標識與埠號對應關係 有512K種,而實際場景中假設只要支持512K中的72K就足夠了,假設在場 景中僅有部分埠要求複製128份,其他埠最大支持複製8份,其中複製 128份的最大需求是8K,複製8份的最大需求是64K,那麼ELB表的規格為 8K*128 + 64*8=1536K條表項,與單一線性ELB表的64M相比,從容量上來 說減少了近40倍的存儲空間。可見,對於一個交換設備,在實際應用中,雖 然它支持8K個組〗番標識,但可能並不要求每一個組糹番標識都對應64個埠 且每個埠都複製128份,因此,採用分級組播轉發表進行查找,可以節約 存儲空間,減少查找時間消耗。可見,通過獲取的MID和埠號,查找第一級組播轉發表,獲取該MID 和埠號對應的地址索引,並根據獲取的地址索引及已獲取的複製份數序號,查找第二級組播轉發表,獲取該多播標識、埠號和複製份數序號所對應的 表項內容,並可以根據表項內容對數據報文進行處理。這種組播轉發表查找 方法是通過兩級表實現的,由於將所查找的關鍵字分在兩個表中並通過地址 索引來表示其中的映射關係,對於大規格的組播轉發表,通過兩級表表示後, 可以靈活分配除第 一級組播轉發表外的各級組播轉發表中相應關鍵字的個 數,因此,除第一級組播轉發表外的各級組播轉發表都不需要用最大規格表 示,使得組播轉發表總體規格大大減小,因此可以節約存儲空間,降低成本; 同時,由於組播轉發表的規格大大減小,因此可以極大地節約查找時間,而 且不需要很大的微碼操作複雜度,可以節約指令空間,適合於指令空間較緊 缺的網絡處理器;而且,根據實際需要靈活分配第一級組播轉發表中所支持 的埠數和第二級組播轉發表所支持的複製份數,具有更好的通用性和可擴 展性。可以理解的是,對於兩個關鍵字的情況,這兩個關鍵字將被劃分為兩級, 分別作為第一級關鍵字和第二級關鍵字,假設這兩個關鍵字為A、 B,則可將 A定義為第一級關鍵字,而B定主義為第二級關鍵字,也可將B定義為第一 級關鍵字,而A定義為第二級關鍵字。根據所述第一級關鍵字,查找第一級 組播轉發表,獲取發表中獲取的地址索引和第二級關鍵字,查找第二級組播轉發表,從第二級 組播轉發表中查找獲取所述第二級組播轉發表的地址索引和第二級關鍵字對 應的表項內容。可以根據需要設置第二級組播轉發表中每個地址索引對應的 第二級關鍵字的數目,因此可以減小組播轉發表的規格,節約存儲空間和查 找時間,並提高所述組播轉發表的通用性和可擴展性。同樣,對於三個以上關鍵字的情況,也可以將所述關鍵字劃分為兩級,假設所述關鍵字包括Al、 Bl、 Cl、 Dl,則可根據實際需要將這四個關鍵字 劃分為兩級,例如可以將A1、或A1和B1、 Cl、 Dl中的任一個或兩個作為 第一級關鍵字,剩下的關鍵字則作為第二級關鍵字;當然,也可選擇A1、或 A1和B1、 Cl、 Dl中的任一個或兩個作為第二級關鍵字,剩下的關鍵字則作 為第一級關鍵字。根據所述第一級關鍵字,查找第一級組播轉發表,獲取第 二級組播轉發表的地址索引;然後根據從第一級組播轉發表中獲取的所述第 二級組播轉發表的地址索引和第二級關鍵字,查找第二級組播轉發表,從第 二級組播轉發表中查找獲取所述第二級組播轉發表的地址索引和第二級關鍵 字對應的表項內容,可以根據需要設置第二級組播轉發表中每個地址索引對 應的第二級關鍵字的數目,因此可以減小組播轉發表的規格,節約存儲空間 和查找時間,並提高所述組播轉發表的通用性和可擴展性。可以理解的是,當關鍵字數目較多時,也可以按照上述組播轉發表查找 方法查找,首先獲取關鍵字,這些關鍵字被劃分為至少三級,例如,當有三 級組播轉發表時,每級組播轉發表對應的關鍵字依次可以用第 一級關鍵字、 第二級關鍵字、第三級關鍵字表示,當有四級組播轉發表時,每級組播轉發 表對應的關鍵字依次可以用第一級關鍵字、第二級關鍵字、第三級關鍵字、 第四級關鍵字,對應的,組播轉發表可稱為第一級組播轉發表、第二級組播 轉發表、第三級組播轉發表、第四級組播轉發表,依此類推。例如,對於三級組播轉發表的情況,可以根據獲取的第一級關鍵字,查 找第一級組播轉發表,從第 一級組播轉發表中查找獲取第二級組播轉發表的 地址索引;然後根據所述第二級組播轉發表的地址索引和第二級關鍵字,查 找第二級組播轉發表,從所述第二級組播轉發表中查找獲取第三級組^^轉發 表的地址索引;根據所述第三級組播轉發表的地址索引和第三級關鍵字,查找第三級組播轉發表,從所述第三級組播轉發表中查找獲取對應的表項內容, 所述表項內容為組播轉發信息。對於四級組播轉發表的情況,則從上述第三 級組播轉發表中查找獲取的不是組播轉發信息,而是第四級組播轉發表的地 址索引,根據所述第四級組播轉發表的地址索引和第四級關鍵字,繼續查找 第四級組播轉發表,最後從所述第四級組播轉發表中查找獲取對應的表項內 容,即組播轉發信息。因此,對於ELB等較大規格的組播轉發表,可以分為兩級或兩級以上的 組播轉發表來表示,第一級組播轉發表存放第二級組播轉發表的地址索引, 依次類推,通過查找上一級組播轉發表獲取本級組播轉發表的地址索引,才艮 據從上一級組播轉發表獲取的地址索引和本級關鍵字,查找本級組播轉發表, 從而獲得本級具體的表項內容,當從本級組播轉發表中查找獲得的表項內容 為本級組播轉發表的下一級組播轉發表的地址索引,而不是組播轉發信息時, 則可依照上述查找本級組播轉發表的方式從本級組播轉發表的下一級組播轉 發表開始,逐級向下查找本級組播轉發表後的各級組播轉發表,直至查找獲 得組播轉發信息。由於可以靈活分配除第 一級組播轉發表外的各級組播轉發 表中相應級關鍵字的個數,決定各級組播轉發表的規格,使得組播轉發表總 的規格大大減小,進而可以節約存儲空間和查找時間,並提高所述組播轉發 表的通用性和可擴展性。以上對本發明實施例所採用的組播轉發表查找方法進行了詳細描述,為 使本領域技術人員更好地理解和實現本發明實施例,以下對上述方法中所採 用的裝置進行對應描述。參照圖5,為本發明實施例中組播轉發表查找裝置實施例一結構示意圖, 該裝置包括關鍵字獲取單元51,用於從所接收的數據報文幀頭中獲取至少兩個關鍵 字,所述關鍵字至少包括第一級關鍵字和第二級關鍵字;第一查找單元52,用於根據關鍵字獲取單元51獲取的第一級關鍵字,查 找第一級組播轉發表,從所述第 一級組播轉發表中查找獲取與所述第一級關 鍵字對應的第二級組播轉發表的地址索引;第二查找單元53,用於根據第一查找單元52獲取的地址索引和第二級關 鍵字,查找第二級組播轉發表,從所述第二級組播轉發表中查找獲取所述第 二級組播轉發表的地址索引和第二級關鍵字對應的表項內容。此外,本發明實施例的組播轉發表查找裝置,還可以包括第三查找單元, 用於在上述表項內容為所述第二級組播轉發表的下一級組播轉發表的地址索 引時,依照上述查找所述第二級組播轉發表的方式從所述第二級組播轉發表 的下一級組播轉發表開始,逐級向下查找所述第二級組播轉發表後的各級組 播轉發表,直至查找獲得組播轉發信息。所述關鍵字獲取單元51所獲取的第一級關鍵字可以為MID、埠號,第 二級關鍵字可以為複製份數序號。該組播轉發表查找裝置由於可以根據獲取的第 一級關鍵字查找第 一級組 播轉發表,獲取第二級組播轉發表的地址索引,並根據獲取的第二級組播轉 發表的地址索引和已獲取的第二級關鍵字,查找第二級組播轉發表,獲取所 述第二級組播轉發表的地址索引和第二級關鍵字對應的表項內容。由於通過 分級查找,可以根據業務需要靈活分配第二級組播轉發表中相應關鍵字的個 數,只要滿足業務需要即可,不需要每個關鍵字的數目都按照最大規格設置, 因此可以節約存儲空間,降低成本;同時,由於組播轉發表的規格大大減小, 可以極大地節約查找時間,而且不需要很大的微碼操作複雜度,可以節約指 令空間,適合於指令空間較緊張的網絡處理器;並且,由於每個組播轉發表 都較小,因此易於維護,而且,根據實際需要分配各級組播轉發表中所應用 的關鍵字的個數,具有更好的通用性和可擴展性。參照圖6,為本發明實施例中組播轉發表查找裝置實施例二結構示意圖, 該裝置包括關鍵字獲取單元61,用於獲取至少三個關鍵字,所述關鍵字至少包括第 一級關鍵字、第二級關鍵字和第三級關鍵字;第一查找單元62,用於根據關鍵字獲取單元61獲取的第一級關鍵字,查 找第一級組播轉發表,從所述第一級組播轉發表中查找獲取與所述第一級關 鍵字對應的第二級組播轉發表的地址索引;第二查找單元63,用於根據第一查找單元62獲取的地址索引和關鍵字獲 取單元61獲取的第二級關鍵字,查找第二級組播轉發表,從所述第二級組播轉發表中查找獲取與所述第二級組播轉發表的地址索引和第二級關鍵字對應 的第三級組播轉發表的地址索引;第三查找單元64,用於根據第二查找單元63獲取的第三級組播轉發表的 地址索引和關鍵字獲取單元61獲取的第三級關鍵字,查找第三級組播轉發表, 從所述第三級組播轉發表中查找獲取與所述第三級組播轉發表的地址索引以 及第三級關鍵字對應的表項內容,所述表項內容為組播轉發信息。可以看出,在該組播轉發表查找裝置中,根據不同的關鍵字將組播轉發 表分級表示,對於除第一級組播轉發表之外的各級組播轉發表,可以根據需 要設置各級關鍵字的數目,不需要將所有的關鍵字都按照最大數目設置,因 此,可以大大減小組播轉發表的規格,進而可以節約存儲空間,降低成本; 同時,由於組播轉發表的規格大大減小,可以極大地節約查找時間,而且不 需要很大的微碼操作複雜度,可以節約指令空間,適合於指令空間較緊張的 網絡處理器;並且,由於每個組播轉發表都較小,因此易於維護,而且,根 據實際需要分配各級組播轉發表中所支持的關鍵字的個數,具有更好的通用 性和可擴展性。參照圖7,為本發明實施例中交換設備實施例一結構示意圖,該交換設備 包括TM單元71和EFU下行單元72, EFU下行單元72和TM單元71進 行數據交互,其中,EFU下行單元72包括關鍵字獲取單元721,用於從來自TM的數據報文幀頭中獲取至少兩個關 鍵字,所述關鍵字至少包括第一級關鍵字和第二級關鍵字; '一般,通過對數據報文帕頭解析可獲得MID、埠號和複製份數序號等 三個關鍵字。在本發明實施例中,所述MID和埠號為第一級關鍵字,所述 複製份數序號為第二級關鍵字。第一查找單元722,用於根據關鍵字獲取單元721所獲取的MID和埠 號查找第一級組播轉發表,從所述第一級組播轉發表中查找獲取所述MID和 埠號對應的地址索引;第二查找單元723,用於根據第一查找單元722所獲取的地址索引和關鍵 字獲取單元721所獲取的複製份數序號,查找第二級組播轉發表,從所述第 二級組播轉發表中查找獲取所述地址索SI和複製份數序號所對應的表項內 容,即組播轉發信息。可見,該交換設備通過獲取的第一級關鍵字,查找第一級組播轉發表, 從所述第一級組播轉發表中查找獲取第二級組播轉發表的地址索引,並根據 獲取的地址索引以及第二級關鍵字,查找第二級組播轉發表,從所述第二級 組播轉發表中查找獲取對應的表項內容,用於處理數據報文的轉發。由此可 知,本發明實施例的交換設備查找組播轉發信息的方法是通過分級組播轉發 表實現的,由於將所查找的關鍵字分在兩級組播轉發表中並通過地址索引來 表示其中的映射關係,對於大規格的組播轉發表,通過分級表表示後,由於 可以靈活分配第二級組播轉發表中相應關鍵字的個數,使得組播轉發表規格 大大減小,因此可以節約存儲空間,降低成本;同時,由於組播轉發表的規 格大大減小,因此可以極大地節約查找時間,而且不需要很大的微碼操作復 雜度,可以節約指令空間,適合於指令空間較緊缺的網絡處理器;並且,由 於每個組播轉發表都較小,因此易於維護,還可以根據實際需要擴展組播轉 發表中所支持的多播標識個數和埠數,具有更好的通用性和可擴展性。以下對 一種支持三級及三級以上的組播轉發表查找的交換設備通過具體 實施例進行詳細描述參照圖8,為本發明實施例中交換設備實施例二結構示意圖,該交換設備 包括TM單元81和EFU下行單元82,所述EFU下行單元82與TM單元81 進行數據交互,其特徵在於,所述EFU下4於單元82包括關4定字獲取單元821,用於從來自TM單元81的數據報文幀頭中獲取至 少三個關鍵字,所述關鍵字至少包括第一級關鍵字、第二級關鍵字和第三級 關鍵字;第一查找單元822,用於根據關鍵字獲取單元821獲取的第一級關鍵字, 查找第一級組播轉發表,從所述第一級組播轉發表中查找獲取與所述第一級 關鍵字對慶的第二級組播轉發表的地址索引;第二查找單元823,用於根據第一查找單元822獲取的地址索引和關鍵字 獲取單元821獲取的第二級關鍵字,查找第二級組播轉發表,從所述第二級 組播轉發表中查找獲取與所述第二級組播轉發表的地址索引和第二級關鍵字 對應的第三級組播轉發表的地址索引;第三查找單元824,用於根據第二查找單元823獲取的第三級組播轉發表 的地址索引和關鍵字獲取單元821獲取的第三級關鍵字,查找第三級組播轉 發表,從所述第三級組播轉發表中查找獲取與所述第三級組播轉發表的地址 索引以及第三級關鍵字對應的表項內容,所述表項內容為組播轉發信息。由上可知,對於三級以上的組播轉發表查找情況,本發明實施例交換設 備的第三查找單元,用於在第二查找單元查找獲得的表項內容為所述第二級 組播轉發表的下一級組播轉發表的地址索引時,依照上述查找所述第二級組 播轉發表的方式從所述第二級組播轉發表的下一級組播轉發表開始,逐級向 下查找所述第二級組播轉發表後的各級組播轉發表,直至查找獲得組播轉發 信息。是可以通過程序來指令相關的硬體完成,所述的程序可以存儲於一種計算機 可讀存儲介質中,該程序在執行時,包括如下步驟從來自TM的數據報文幀頭中獲取至少兩個關鍵字,所述關鍵字至少包 括第 一級關鍵字和第二級關鍵字;根據所述第一級關鍵字,查找第一級組播轉發表,從所述第一級組播轉 發表中查找獲取與所述第 一級關鍵字對應的第二級組播轉發表的地址索引;根據所第二級組播轉發表的地址索引和所述第二級關鍵字,查找第二級 組播轉發表,從所述第二級組播轉發表中查找獲取所述第二級組播轉發表的 地址索引和所述第二級關鍵字對應的表項內容;當所述表項內容為所述第二級組播轉發表的下一級組播轉發表的地址索 引時,依照上述查找所述第二級組播轉發表的方式從所述第二級組播轉發表 的下一級組播轉發表開始,逐級向下查找所述第二級組播轉發表後的各級組 播轉發表,直至查找獲得組播轉發信息。上述提到的存儲介質可以是只讀存儲器,磁碟或光碟等(-貝是可以通過程序來指令相關的硬體完成,所述的程序可以存儲於一種計算機可讀存儲介質中,該程序在執行時,包括如下步驟從來自TM的數據報文幀頭中獲取至少三個關鍵字,所述關鍵字至少包 括第一級關鍵字、第二級關鍵字和第三級關鍵字;根據獲取的第一級關鍵字,查找第一級組播轉發表,從所述第一級組播 轉發表中查找獲取與所述第一級關鍵字對應的第二級組播轉發表的地址索 引;根據所述第二級組播轉發表的地址索引和第二級關鍵字,查找第二級組 播轉發表,從所述第二級組播轉發表中查找獲取與所述第二級組播轉發表的 地址索51和第二級關鍵字對應的第三級組播轉發表的地址索引;根據所獲取的第三級組播轉發表的地址索引和第三級關鍵字,查找第三 級組播轉發表,從所述第三級組播轉發表中查找獲取與所述第三級組播轉發 表的地址索引以及第三級關鍵字對應的表項內容,所述表項內容為組播轉發4呂息。上述提到的存儲介質可以是只讀存儲器,磁碟或光碟等。以上對本發明所提供的一種組播轉發表查找方法和裝置進行了詳細介 紹,對於本領域的一般技術人員,依據本發明實施例的思想,在具體實施方 式及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本 發明的限制。
權利要求
1、一種組播轉發表查找方法,其特徵在於,包括從所接收的數據報文幀頭中獲取至少兩個關鍵字,所述關鍵字至少包括第一級關鍵字和第二級關鍵字;根據所述第一級關鍵字,查找第一級組播轉發表,從所述第一級組播轉發表中查找獲得與所述第一級關鍵字對應的第二級組播轉發表的地址索引;根據所述第二級組播轉發表的地址索引和所述第二級關鍵字,查找第二級組播轉發表,從所述第二級組播轉發表中查找獲得與所述第二級組播轉發表的地址索引和所述第二級關鍵字對應的表項內容。
2、 如權利要求1所述的組播轉發表查找方法,其特徵在於,所述方法還 包括當所述表項內容為所述第二級組播轉發表的下一級組播轉發表的地址 索引時,依照上述查找所述第二級組播轉發表的方式從所述第二級組播轉發 表的下一級組播轉發表開始,逐級向下查找所述第二級組播轉發表後的各級 組播轉發表,直至查找獲得組播轉發信息。
3、 如權利要求2所述的組播轉發表查找方法,其特徵在於,當所述關鍵 字至少包括第一級關鍵字、第二級關鍵字和第三級關鍵字時,所述組播轉發 表查找方法具體為從來自流量管理器TM的數據報文幀頭中獲取所述第一級關鍵字、第二 級關鍵字和第三級關鍵字;根據所述第一級關鍵字,查找第一級組播轉發表,從所述第一級組播轉 發表中查找獲得與所述第一級關鍵字對應的第二級組播轉發表的地址索引;根據所述第二級組播轉發表的地址索引和所述第二級關鍵字,查找第二 級組播轉發表,從所述第二級組播轉發表中查找獲得與所述第二級組播轉發 表的地址索引和所述第二級關鍵字對應的第三級組播轉發表的地址索引;根據所述第三級組播轉發表的地址索引和所述第三級關鍵字,查找第三 級組播轉發表,從所述第三級組播轉發表中查找獲得與所述第三級組播轉發 表的地址索引和所述第三級關鍵字對應的所述組播轉發信息。
4、 如權利要求1或2所述的組播轉發表查找方法,其特徵在於,當所述關鍵字包括多播標識、埠號和複製份數序號時,所述組播轉發表查找方法具體為從來自TM的數據報文幀頭中獲取所述多播標識、所述埠號和所述復 制份數序號,所述多播標識和埠號為所述第一級關鍵字,所述複製份數序 號為所述第二級關鍵字;根據所述多播標識和埠號,查找第一級組播轉發表,從所述第一級組 播轉發表中查找獲得與所述多播標識和埠號對應的第二級組播轉發表的地 址索引;根據所述第二級組播轉發表的地址索引和所述複製份數序號,查找第二 級組播轉發表,從所述第二級組播轉發表中查找獲得與所述複製份數序號對 應的組播轉發信息。
5、 一種組播轉發表查找裝置,其特徵在於,包括關鍵字獲取單元,用於從所接收的數據報文幀頭中獲取至少兩個關鍵字, 所述關鍵字至少包括第一級關鍵字和第二級關鍵字;第一查找單元,用於根據所述第一級關鍵字,查找第一級組播轉發表, 從所述第 一級組播轉發表中查找獲得與所述第 一級關鍵字對應的第二級組播 轉發表的地址索引;第二查找單元,用於根據所述第二級組播轉發表的地址索引和所述第二 級關鍵字,查找第二級組播轉發表,從所述第二級組播轉發表中查找獲得所 述第二級組播轉發表的地址索引以及第二級關鍵字對應的表項內容。
6、 如權利要求5所述的組播轉發表查找裝置,其特徵在於,所述裝置還 包括第三查找單元,用於在所述表項內容為所述第二級組播轉發表的下一級 組播轉發表的地址索引時,依照上述查找所述第二級組播轉發表的方式從所 述第二級組播轉發表的下一級組播轉發表開始,逐級向下查找所述第二級組 播轉發表後的各級組播轉發表,直至查找獲得組播轉發信息。
7、 如權利要求5或6所述的組播轉發表查找裝置,其特徵在於,所述關 鍵字獲取單元用於從所接收的數據報文幀頭中獲取三個所述關鍵字,所述三個關鍵字分別為多播標識、埠號和複製份數序號,其中所述多播標識和埠號為所述第一級關鍵字,所述複製份數序號為所述第二級關鍵字;所述第二查找單元,用於根據所述第二級組播轉發表的地址索引和所述第二級關鍵 字,從所述第二級組播轉發表中查找獲得所述第二級組播轉發表的地址索引 以及第二級關鍵字對應的組播轉發信息。
8、 一種交換設備,包括流量管理器TM單元,其特徵在於,還包括與所 包括關鍵字獲取單元,用於從所接收的數據報文幀頭中獲取至少兩個關鍵字, 所述關鍵字至少包括第一級關鍵字和第二級關鍵字;第一查找單元,用於根據所述第一級關鍵字,查找第一級組播轉發表, 從所述第 一級組播轉發表中查找獲得與所述第 一級關鍵字對應的第二級組播 轉發表的地址索引;第二查找單元,用於根據所述第二級組播轉發表的地址索引和所述第二 級關鍵字,查找第二級組播轉發表,從所述第二級組播轉發表中查找獲得所 述第二級組播轉發表的地址索引以及第二級關鍵字對應的表項內容。
9、 如權利要求8所述的交換設備,其特徵在於,所述EFU下行單元還包 括第三查找單元,用於在所述表項內容為所述第二級組播轉發表的下一級組 播轉發表的地址索引時,依照上述查找所述第二級組播轉發表的方式從所述 第二級組播轉發表的下一級組播轉發表開始,逐級向下查找所述第二級組播 轉發表後的各級組播轉發表,直至查找獲得組播轉發信息。
10、 如權利要求8或9所述的交換設備,其特徵在於,所述關鍵字獲取 單元用於從所接收的數據報文幀頭中獲取三個所述關鍵字,所述三個關鍵字 分別為多播標識、埠號和複製份數序號,其中所述多播標識和埠號為所 述第一級關鍵字,所述複製份數序號為所述第二級關鍵字;所述第二查找單 元,用於根據所述第二級組播轉發表的地址索引和所述第二級關鍵字,從所 述第二級組播轉發表中查找獲得所述第二級組播轉發表的地址索引以及第二 級關鍵字對應的組播轉發信息。
全文摘要
本發明實施例公開了一種組播轉發表查找方法和裝置,主要是從所接收的數據報文幀頭中獲取至少兩個關鍵字,所述關鍵字至少包括第一級關鍵字和第二級關鍵字;根據所述第一級關鍵字,從第一級組播轉發表中查找獲得與第一級關鍵字對應的第二級組播轉發表的地址索引;根據第二級組播轉發表的地址索引和第二級關鍵字,從第二級組播轉發表中查找獲得與所述第二級組播轉發表的地址索引和所述第二級關鍵字對應的表項內容。採用上述技術方案,可以節約存儲空間,減少查找時間,並具有更好的通用性和可擴展性。
文檔編號H04L12/56GK101267331SQ20081009502
公開日2008年9月17日 申請日期2008年4月23日 優先權日2008年4月23日
發明者磊 李 申請人:華為技術有限公司