亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種組播報文處理方法、線卡及通信設(shè)備的制作方法

文檔序號:7910094閱讀:132來源:國知局
專利名稱:一種組播報文處理方法、線卡及通信設(shè)備的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信技術(shù)領(lǐng)域中的 PCIE (Peripheral Component Interconnect Express,增強的外部組件互聯(lián)標(biāo)準(zhǔn))總線技術(shù)領(lǐng)域,尤其涉及一種組播報文處理方法、線卡及通信設(shè)備。
背景技術(shù)
PCIE總線是用于互連通信設(shè)備中各線卡的第三代I/O高性能總線,是基于 PCI (Peripheral Component Interconnect,外部組件互聯(lián)標(biāo)準(zhǔn))總線而發(fā)展起來的。PCI 總線采用共享并行連接方式,同一時間在PCI總線上僅能有一個線卡進行通信,如果PCI總線上掛接的線卡增多,每個線卡的實際傳輸速率就會下降,性能得不到保證;而PCIE總線采用點對點串行連接方式,每一個線卡都擁有自己獨立的數(shù)據(jù)連接,各線卡之間并發(fā)的數(shù)據(jù)傳輸互不影響,從而保證了數(shù)據(jù)傳輸通道的專有性,避免其他線卡的干擾,提高了數(shù)據(jù)傳輸速率。在采用PCIE交換技術(shù)的通信設(shè)備中,一般包括一個主控卡、若干個線卡和PCIE交換器,也可將PCIE交換器集成于主控卡,主控卡控制PCIE交換器實現(xiàn)對各線卡之間需要傳輸?shù)膱笪牡霓D(zhuǎn)發(fā),各線卡之間進行報文傳輸?shù)慕涌诜Q為PCIE接口,與PCIE接口相區(qū)分,線卡中用于與其他通信設(shè)備之間傳輸報文的接口稱為通信接口。目前,按照內(nèi)部線卡對報文處理方式的不同,通信設(shè)備主要有兩種類型,一種是集中式通信設(shè)備,其中主控卡上設(shè)置有CPU,用于負(fù)責(zé)多個線卡的報文處理,另一種是分布式通信設(shè)備,除主控卡上設(shè)置有CPU外,每個線卡上也都設(shè)置有CPU,每個線卡對于自身的報文處理由各自的CPU負(fù)責(zé)。隨著網(wǎng)絡(luò)技術(shù)的快速發(fā)展,分布式通信設(shè)備已經(jīng)在越來越多的網(wǎng)絡(luò)環(huán)境中使用。 分布式通信設(shè)備中各線卡之間的數(shù)據(jù)交換通道叫做背板交換網(wǎng)絡(luò),在目前分布式通信設(shè)備中,PCIE交換和以太交換是兩種較為常見的背板交換技術(shù)。以太網(wǎng)在MAC層支持組播地址,所以基于以太交換的分布式設(shè)備中,線卡間傳輸組播報文比較簡單,只需要將報文的目的MAC地址修改為組播地址,然后發(fā)送到以太交換芯片,就可以由交換芯片將該組播報文同時轉(zhuǎn)發(fā)給多個目的線卡。然而在PCIE交換方式中,主要采用根據(jù)報文的目的地址進行路由,不同的線卡擁有不同的PCIE基地址,通過向不同的PCIE地址寫數(shù)據(jù)即可完成報文轉(zhuǎn)發(fā)。但是在這種方式中,不支持將一個報文一次發(fā)送給多個目的線卡,所以PCIE交換本身不能實現(xiàn)類似于以太交換的組播報文跨線卡轉(zhuǎn)發(fā)。下面以圖1所示的基于PCIE交換的分布式通信設(shè)備為例,對采用PCIE交換方式的設(shè)備內(nèi)部報文傳輸?shù)姆桨高M行介紹。在圖1中,分布式通信設(shè)備中包括了兩種板卡,一種是帶有PCIE交換器的主控卡, 也可稱為核心交換卡,另一種是有通信接口的線卡,每個線卡都擁有各自的CPU,并設(shè)置有數(shù)量不等或種類不同的通信接口,用于與其它通信設(shè)備進行報文傳輸,例如,線卡1上設(shè)置有接口 1/0和接口 1/1共計兩個通信接口,且每個線卡均通過PCIE接口與主控卡中的PCIE 交換器相連,用于在線卡之間進行報文傳輸。由于每個線卡均具有報文處理能力,所以相比集中式通信設(shè)備,設(shè)備整機的處理能力為各線卡的處理能力的線性疊加,從而提升了整機性能和容量。按照報文轉(zhuǎn)發(fā)路徑的不同可以分為本卡轉(zhuǎn)發(fā)和跨卡轉(zhuǎn)發(fā),其中,在同一線卡上的不同通信接口之間的報文轉(zhuǎn)發(fā)稱為本卡轉(zhuǎn)發(fā),本卡轉(zhuǎn)發(fā)不需要其它線卡的CPU參與轉(zhuǎn)發(fā)處理;在不同線卡的通信接口之間的報文轉(zhuǎn)發(fā)稱為跨卡轉(zhuǎn)發(fā),跨卡轉(zhuǎn)發(fā)時報文需要經(jīng)過PCIE 交換器,且需要兩個線卡的CPU的參與才能完成。對于本卡轉(zhuǎn)發(fā)單播報文的處理流程,以從線卡1的接口 1/0接收的報文通過接口 1/1轉(zhuǎn)發(fā)為例,如圖2所示,包括步驟S201、線卡1從接口 1/0接收報文,并將該報文存放在本卡內(nèi)存的bufferl中 (通信設(shè)備接口接收的報文一般由接口硬件負(fù)責(zé)將報文存入buffer中,不需要CPU干預(yù), CPU只需要通過中斷或者查詢方式去發(fā)現(xiàn)報文是否已經(jīng)成功存放到內(nèi)存中即可)。步驟S202、線卡1解析該報文,根據(jù)該報文中攜帶的目的地址,查找該報文的目的接口為本卡的接口 1/1。步驟S203、線卡1對該報文進行必要的修改(例如修改二層協(xié)議頭,修改TTL值)。步驟S204、線卡1通過接口 1/1發(fā)送報文,報文發(fā)送后釋放bufferl。對于跨卡轉(zhuǎn)發(fā)單播報文的處理流程,以從線卡1的接口 1/0接收的報文通過線卡 2的接口 2/0轉(zhuǎn)發(fā)為例,線卡1為源線卡,線卡2為目的線卡,如圖3所示,包括步驟S301、線卡1從接口 1/0接收報文,并將該報文存放在線卡1內(nèi)存的bufferl 中。步驟S302、線卡1解析該報文,根據(jù)該報文中攜帶的目的地址,查找該報文的目的接口為線卡2的接口 2/0。步驟S303、線卡1通過內(nèi)部PCIE接口把該報文發(fā)送給線卡2,發(fā)送成功后,釋放線卡 1 的 bufferl。步驟S304、線卡2通過內(nèi)部PCIE接口接收該報文,并將該報文存放在線卡2內(nèi)存的 buffer2 中。步驟S305、線卡2對該報文進行必要的修改。步驟S306、線卡2通過接口 2/0發(fā)送報文,報文發(fā)送后釋放線卡2的bufferf。對于跨卡轉(zhuǎn)發(fā)組播報文的處理流程,以從線卡1的接口 1/0接收的報文需要分別通過線卡2的接口 2/0、線卡3的接口 3/0和線卡η的接口 η/0進行轉(zhuǎn)發(fā)為例,線卡1為源線卡,線卡2、線卡3和線卡η為目的線卡,如圖4所示,包括步驟S401、線卡1從接口 1/0接收報文,并將該報文存放在線卡1內(nèi)存的bufferl 中。步驟S402、線卡1解析該報文,根據(jù)該報文中攜帶的目的地址,確定該報文是組播報文,并查找該組播報文的目的接口為線卡2的2/0、線卡3的3/0和線卡η的η/0。步驟S403、線卡1將該報文復(fù)制到線卡1內(nèi)存的buffer2和buffer3中。步驟S404、線卡1將bufferl中的報文通過PCIE接口發(fā)送給線卡2,發(fā)送成功后釋放buffer 1,并將buffer2中的報文通過PCIE接口發(fā)送給線卡3,發(fā)送成功后釋放buffer2,以及將buf f er3中的報文通過PCIE接口發(fā)送給線卡n,發(fā)送成功后釋放buf f er3。步驟S405、線卡2通過內(nèi)部PCIE接口接收該報文,并將該報文存放在線卡2內(nèi)存的bufferf中,并對該報文進行必要的修改,然后通過接口 2/0發(fā)送該報文,報文發(fā)送后釋放線卡2的buffer4。步驟S406、線卡3通過內(nèi)部PCIE接口接收該報文,并將該報文存放在線卡3內(nèi)存的bufferf中,并對該報文進行必要的修改,然后通過接口 3/0發(fā)送該報文,報文發(fā)送后釋放線卡3的buffer5。步驟S407、線卡η通過內(nèi)部PCIE接口接收該報文,并將該報文存放在線卡η內(nèi)存的buffere中,并對該報文進行必要的修改,然后通過接口 η/0發(fā)送該報文,報文發(fā)送后釋放線卡η的buffer6。按照上述圖4所示的處理流程,跨卡組播報文在線卡之間的傳輸過程如圖5所示, 組播報文在從接口 1/0進入線卡1后,線卡1需要將該組播報文分別傳輸給該組播報文的其它目的線卡,如果其它目的線卡的數(shù)量為m,則需要進行m-1次報文的復(fù)制,并通過PCIE 接口發(fā)送m次組播報文,并釋放m次buffer。對于每一次報文復(fù)制和發(fā)送,均需要耗費CPU 的處理資源,尤其是報文復(fù)制,需要耗費大量的CPU指令才能完成。所以,當(dāng)需要接收組播報文的目的線卡的數(shù)量較大時,源線卡由于需要進行大量的報文復(fù)制和發(fā)送處理,需要大量的CPU處理資源,從而使得源線卡的負(fù)擔(dān)較重而導(dǎo)致源線卡的性能下降。而目的線卡僅通過PCIE接口接收組播報文,并將該組播報文通過自身的通信接口進行轉(zhuǎn)發(fā),所以,相比源線卡,目的線卡的CPU的利用率則較低。并且,由于源線卡在進行組播報文傳輸處理時的負(fù)擔(dān)較重,將因其性能下降導(dǎo)致設(shè)備整機的整體性能下降。

發(fā)明內(nèi)容
本發(fā)明實施例提供一種組播報文處理方法、線卡,用以解決現(xiàn)有技術(shù)中存在的在分布式通信設(shè)備中源線卡在進行組播報文傳輸處理時負(fù)擔(dān)較重的問題。本發(fā)明實施例還提供一種組播報文處理方法、線卡,用以解決現(xiàn)有技術(shù)中存在的在分布式通信設(shè)備中目的線卡在進行組播報文傳輸處理時CPU利用率較低的問題。本發(fā)明實施例還提供一種通信設(shè)備,用以解決現(xiàn)有技術(shù)中存在的分布式通信設(shè)備在進行組播報文傳輸處理時性能較低的問題。本發(fā)明實施例提供一種組播報文處理方法,包括源線卡對通過通信接口接收的組播報文進行處理,得到處理后報文,所述處理后報文中攜帶所述組播報文的目的線卡的指示信息;將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中的第一個目的線卡。本發(fā)明實施例還提供一種組播報文處理方法,包括目的線卡接收對組播報文進行處理得到的處理后報文,所述處理后報文中攜帶所述組播報文的目的線卡的指示信息;根據(jù)所述指示信息,將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。本發(fā)明實施例還提供一種線卡,包括
第一處理單元,用于對通過通信接口接收的組播報文進行處理,得到處理后報文, 所述處理后報文中攜帶所述組播報文的目的線卡的指示信息;第一發(fā)送單元,用于將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中的第一個目的線卡。本發(fā)明實施例還提供一種線卡,包括接收單元,用于接收對組播報文進行處理得到的處理后報文,所述處理后報文中攜帶所述組播報文的目的線卡的指示信息;第二發(fā)送單元,用于根據(jù)所述指示信息,將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。本發(fā)明實施例還提供一種通信設(shè)備,包括源線卡和目的線卡,所述源線卡為上述包括第一處理單元和第一發(fā)送單元的線卡,所述目的線卡為上述包括接收單元和第二發(fā)送單元的線卡,其中所述源線卡,用于對通過通信接口接收的組播報文進行處理,得到處理后報文,所述處理后報文中攜帶所述組播報文的所述目的線卡的指示信息;以及將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中的第一個目的線卡;所述目的線卡,用于接收對組播報文進行處理得到的所述處理后報文,所述處理后報文中攜帶所述組播報文的目的線卡的指示信息;并根據(jù)所述指示信息,將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。本發(fā)明有益效果包括本發(fā)明實施例提供的組播報文處理方法中,源線卡在通過通信接口接收到組播報文后,將對該組播報文進行處理得到處理后報文,且該處理后報文中攜帶需要接收該組播報文的目的線卡的指示信息,然后將該處理后報文通過PCIE接口,發(fā)送給按照指定順序排列的需要接收該組播報文的目的線卡中的第一個目的線卡。相比現(xiàn)有技術(shù),不再需要將該組播報文發(fā)送給需要接收該組播報文的每個目的線卡,而是發(fā)送給一個目的線卡即可,所以減少了對組播報文的復(fù)制和發(fā)送的處理,從而減輕了進行組播報文傳輸處理時的負(fù)擔(dān)。本發(fā)明實施例提供的組播報文處理方法中,目的線卡在接收到對組播報文進行處理得到的處理后報文后,根據(jù)該處理后報文中攜帶的需要接收該組播報文的目的線卡的指示信息,將該處理后報文通過PCIE接口,發(fā)送給按照指定順序排列的需要接收該組播報文的目的線卡中位于自身后面的第一個目的線卡。相比現(xiàn)有技術(shù),目的線卡參與了該組播報文在各目的線卡之間的傳輸處理,而不再是僅將該組播報文從自身的通信接口進行轉(zhuǎn)發(fā)處理,所以在進行組播報文傳輸處理時提高了其CPU的利用率。本發(fā)明實施例提供的通信設(shè)備中,相比現(xiàn)有技術(shù),源線卡不再需要將該組播報文發(fā)送給需要接收該組播報文的每個目的線卡,而是發(fā)送給一個目的線卡即可,相應(yīng)的,由其它目的線卡參與該組播報文在各目的線卡之間的傳輸處理,從而實現(xiàn)了在源線卡和目的線卡之間,對該組播報文的傳輸處理操作的均衡,進而避免了因源線卡的性能下降而導(dǎo)致設(shè)備整機的整體性能下降,即提高了在進行組播報文傳輸處理時設(shè)備整機的性能。


圖1為基于PCIE交換的分布式通信設(shè)備的結(jié)構(gòu)示意圖;圖2為現(xiàn)有技術(shù)中本卡轉(zhuǎn)發(fā)單播報文的處理流程圖;圖3為現(xiàn)有技術(shù)中跨卡轉(zhuǎn)發(fā)單播報文的處理流程圖;圖4為現(xiàn)有技術(shù)中跨卡轉(zhuǎn)發(fā)組播報文的處理流程圖;圖5為現(xiàn)有技術(shù)中跨卡轉(zhuǎn)發(fā)組播報文時組播報文在線卡之間的傳輸過程示意圖;圖6為本發(fā)明實施例提供的應(yīng)用于源線卡的組播報文處理方法的流程圖;圖7為本發(fā)明實施例提供的應(yīng)用于目的線卡的組播報文處理方法的流程圖;圖8為本發(fā)明實施例1中跨卡轉(zhuǎn)發(fā)組播報文的處理流程圖;圖9為本發(fā)明實施例1中封裝報文的字段結(jié)構(gòu)示意圖;圖10為本發(fā)明實施例1中跨卡轉(zhuǎn)發(fā)組播報文時組播報文在線卡之間的傳輸過程示意圖;圖11為本發(fā)明實施例2中提供的一種線卡的結(jié)構(gòu)示意圖之一;圖12為本發(fā)明實施例2中提供的一種線卡的結(jié)構(gòu)示意圖之二 ;圖13為本發(fā)明實施例2中提供的一種通信設(shè)備的結(jié)構(gòu)示意圖。
具體實施例方式為了給出在進行組播報文傳輸處理時,減輕源線卡的負(fù)擔(dān),提高目的線卡的CPU 利用率,以及提高設(shè)備整機性能的實現(xiàn)方案,本發(fā)明實施例提供了一種組播報文處理方法、 線卡及通信設(shè)備,以下結(jié)合說明書附圖對本發(fā)明的優(yōu)選實施例進行說明,應(yīng)當(dāng)理解,此處所描述的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。并且在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。本發(fā)明實施例提供一種組播報文處理方法,應(yīng)用于分布式通信設(shè)備中的源線卡, 如圖6所示,包括步驟S601、源線卡對通過通信接口接收的組播報文進行處理,得到處理后報文,該處理后報文中攜帶該組播報文的目的線卡的指示信息。步驟S602、將該處理后報文通過PCIE接口,發(fā)送給該組播報文的按照指定順序排列的目的線卡中的第一個目的線卡。相應(yīng)的,本發(fā)明實施例還提供一種組播報文處理方法,應(yīng)用于分布式通信設(shè)備中的目的線卡,如圖7所示,包括步驟S701、目的線卡接收對組播報文進行處理得到的處理后報文,該處理后報文中攜帶該組播報文的目的線卡的指示信息。步驟S702、根據(jù)該指示信息,將該處理后報文通過PCIE接口,發(fā)送給該組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。下面結(jié)合附圖,用具體實施例對本發(fā)明提供的方法、線卡及通信設(shè)備進行詳細(xì)描述。實施例1 本發(fā)明實施例1中,通過對組播報文在分布式通信設(shè)備中各線卡之間的傳輸處理流程的描述,對本發(fā)明實施例提供的組播報文處理方法進行詳細(xì)介紹。以在圖1所示結(jié)構(gòu)的分布式通信設(shè)備中,從線卡1的接口 1/0接收的報文需要分別通過線卡2的接口 2/0、線卡3的接口 3/0和線卡η的接口 η/0進行轉(zhuǎn)發(fā)為例,線卡1為源線卡,線卡2、線卡3和線卡η為目的線卡,本發(fā)明實施例1中提供的對于跨卡轉(zhuǎn)發(fā)組播報文的處理流程如圖8所示,具體包括如下處理步驟步驟S801、線卡1從接口 1/0接收報文,并將該報文存放在線卡1內(nèi)存的bufferl 中;并解析該報文,確定該報文是組播報文;以及根據(jù)該組播報文中攜帶的目的地址,查找出該組播報文的目的接口,從而確定需要接收該組播報文的目的線卡,例如,目的接口為線卡2的2/0、線卡3的3/0和線卡η的η/0,相應(yīng)的,則該組播報文的目的線卡為線卡2、線卡 3和線卡η。步驟S802、線卡1對該組播報文進行處理,得到處理后報文,且處理后報文中攜帶該組播報文的目的線卡的指示信息。具體的,對組播報文的處理,可以是在組播報文的報文頭的保留字段中,添加該組播報文的目的線卡的指示信息,也可以是對該組播報文進行封裝,封裝報文的報文頭中攜帶有該組播報文的目的線卡的指示信息,下面以對組播報文進行封裝的處理為例進行詳細(xì)描述。如圖9所示為封裝報文的字段結(jié)構(gòu)示意圖,其中,封裝報文的報文頭中,除攜帶有目的線卡的指示信息外,還可以攜帶通過接口 1/0接收的報文的類型信息,以及該報文的長度信息。類型信息具體可以包括單播報文和組播報文兩種,長度信息最大值可以為 65535。其中,攜帶的該組播報文的目的線卡的指示信息,具體可以包括與該組播報文的各目的線卡分別對應(yīng)的指示信息,即每個目的線卡對應(yīng)一個指示信息。例如,可以針對該通信設(shè)備中的每個線卡分別設(shè)置對應(yīng)的指示位,當(dāng)該指示位為1時,表示該指示位對應(yīng)線卡為目的線卡,如果通信設(shè)備中攻擊有32個線卡,則可以使用4字節(jié)共計32bit (bit0-bit32) 的字段用于攜帶每個線卡對應(yīng)的指示信息。則本步驟中,具體為對bufferl中的組播報文進行封裝,得到的封裝報文的報文頭中,類型字段中攜帶組播類型信息,長度字段中攜帶該組播報文的長度信息,指示信息字段中線卡2、線卡3和線卡η分別對應(yīng)的指示位為1,其它線卡的指示位為0。由于每個線卡對應(yīng)的指示位在指示信息字段存在排列順序,所以每個線卡存在排列順序,相應(yīng)的,各目的線卡也存在排列順序。后續(xù)以從線卡1到線卡η的排列順序作為指定排列順序為例進行描述。步驟S803、線卡1將處理后報文通過PCIE接口,發(fā)送給該組播報文的按照指定順序排列的目的線卡中的第一個目的線卡。具體的,線卡1將bufferl中的封裝報文,傳輸給線卡1中的PCIE驅(qū)動模塊,PCIE 驅(qū)動模塊解析封裝報文的報文頭,按照指示位從低到高的順序(也可以是從高到低的順序,只需要是按照指定順序即可)對指示信息字段的各指示位進行識別,在首次識別出為 1的指示位后,即通過PCIE接口將存放在bufferl中的封裝報文,發(fā)送給識別出的為1的該指示位對應(yīng)的線卡。以該組播報文為例,即將該封裝報文發(fā)送給線卡2,發(fā)送成功后釋放
bufferlo步驟S804、線卡2(目的線卡)通過PCIE接口接收到該封裝報文,并將該封裝報文存放在線卡2的buffer2中。
步驟S805、線卡2根據(jù)該封裝報文中攜帶的指示信息,將該封裝報文通過PCIE接口,發(fā)送給該組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡?;谏鲜龇庋b報文的報文頭所攜帶信息的具體表征方式,線卡2首先解析該封裝報文的報文頭,根據(jù)其中的類型字段確定該封裝報文中封裝的是組播報文,然后由線卡2 的PCIE驅(qū)動模塊轉(zhuǎn)發(fā)給下一個目的線卡,具體可以采用如下兩種方式第一種方式線卡2的PCIE驅(qū)動模塊,將buffer2中封裝報文的報文頭中指示信息字段中與自身對應(yīng)的指示位的值設(shè)置為0,然后按照指示位從低到高的順序?qū)χ甘拘畔⒆侄蔚母髦甘疚贿M行識別,在首次識別出為1的指示位后,即通過PCIE接口將存放在 buffer2中的線卡2的指示位已設(shè)置為0的封裝報文,發(fā)送給識別出的為1的該指示位對應(yīng)的線卡,該指示位對應(yīng)的線卡即為按照指定排列順序在本線卡2后面的第一個目的線卡。 以該組播報文為例,即將該封裝報文發(fā)送給線卡3。第二種方式線卡2的PCIE驅(qū)動模塊,按照指示位從低到高的順序,從自身對應(yīng)指示位開始,對指示信息字段中線卡2對應(yīng)指示位后面的各指示位進行識別,在首次識別出為1的指示位后,即通過PCIE接口將存放在buffer2中的封裝報文,發(fā)送給識別出的為1 的該指示位對應(yīng)的線卡,該指示位對應(yīng)的線卡即為按照指定排列順序在本線卡2后面的第一個目的線卡。以該組播報文為例,即將該封裝報文發(fā)送給線卡3。步驟S806、線卡2在將封裝報文通過PCIE接口發(fā)送給線卡3后,還將對接收的該封裝報文進行解封裝處理,得到該組播報文,并將該組播報文通過自身的與該組播報文的目的地址對應(yīng)的通信接口進行轉(zhuǎn)發(fā),即通過接口 2/0進行轉(zhuǎn)發(fā),組播報文轉(zhuǎn)發(fā)成功后釋放 buffer20本步驟中通過接口 2/0轉(zhuǎn)發(fā)該組播報文的處理,與上述步驟S805中通過PCIE接口將封裝報文發(fā)送給線卡3的處理,兩者之間沒有嚴(yán)格的先后順序。步驟S807、線卡3(目的線卡)通過PCIE接口接收到該封裝報文,并將該封裝報文存放在線卡3的buffer3中,然后采用與上述步驟S805和步驟S806中相同的報文處理方式,將該封裝報文通過PCIE接口發(fā)送給線卡n,并將該封裝報文中封裝的該組播報文通過接口 3/0進行轉(zhuǎn)發(fā),詳細(xì)處理流程在此不再進行詳細(xì)描述。步驟S808、線卡η(目的線卡)通過PCIE接口接收到該封裝報文,并將該封裝報文存放在線卡η的buffer4中,然后確定自身位于上述指定順序的最后一位,則取消通過PCIE 接口對該封裝報文的發(fā)送,可以采用如下兩種方式第一種方式線卡η的PCIE驅(qū)動模塊,將buffer4中封裝報文的報文頭中指示信息字段中與自身對應(yīng)的指示位的值設(shè)置為0,然后按照指示位從低到高的順序?qū)χ甘拘畔⒆侄蔚母髦甘疚贿M行識別,在未識別出為1的指示位后,即確定線卡η為按照上述指定排列順序的各目的線卡中的最后一個目的線卡,取消通過PCIE接口對該封裝報文的發(fā)送。第二種方式線卡η的PCIE驅(qū)動模塊,按照指示位從低到高的順序,從自身對應(yīng)指示位開始,對指示信息字段中線卡η對應(yīng)指示位后面的各指示位進行識別,在未識別出為1 的指示位后,即線卡η為按照上述指定排列順序的各目的線卡中的最后一個目的線卡,取消通過PCIE接口對該封裝報文的發(fā)送。并且,本步驟中,線卡η還采用與上述步驟S806中相同的報文處理方式,將該封裝報文中封裝的該組播報文通過接口 η/0進行轉(zhuǎn)發(fā),詳細(xì)處理流程在此不再進行詳細(xì)描述。采用上述圖8所示的組播報文的處理流程,跨卡組播報文在線卡之間的傳輸過程如圖10所示,組播報文在從接口 1/0進入線卡1后,線卡1在對該組播報文進行封裝后,僅將封裝后該組播報文的封裝后報文通過PCIE接口發(fā)送給一個目的線卡,即線卡2,再由線卡2將該封裝報文通過PCIE接口發(fā)送給下一個目的線卡,即線卡3,再由線卡3將該封裝報文通過PCIE接口發(fā)送給最后一個目的線卡,即線卡η,從而實現(xiàn)了組播報文從源線卡到其它各目的線卡之間的跨卡組播報文的傳輸。相比現(xiàn)有技術(shù),源線卡不再需要對組播報文進行復(fù)制和多次發(fā)送,從而減輕了源線卡的負(fù)擔(dān),而目的線卡參與了組播報文在通信設(shè)備內(nèi)部的各目的線卡之間的傳輸處理, 從而提高了目的線卡的CPU利用率,進而實現(xiàn)了在源線卡和目的線卡之間,對該組播報文的傳輸處理操作的均衡,進而避免了因源線卡的性能下降而導(dǎo)致設(shè)備整機的整體性能下降,即提高了在進行組播報文傳輸處理時設(shè)備整機的性能。實施例2:基于同一發(fā)明構(gòu)思,根據(jù)本發(fā)明上述實施例提供的組播報文處理方法,相應(yīng)地,本發(fā)明實施例2還提供了一種線卡,其結(jié)構(gòu)示意圖如圖11所示,具體包括第一處理單元1101,用于對通過通信接口接收的組播報文進行處理,得到處理后報文,所述處理后報文中攜帶所述組播報文的目的線卡的指示信息;第一發(fā)送單元1102,用于將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中的第一個目的線卡。本發(fā)明實施例2還提供了一種線卡,其結(jié)構(gòu)示意圖如圖12所示,具體包括接收單元1201,用于接收對組播報文進行處理得到的處理后報文,所述處理后報文中攜帶所述組播報文的目的線卡的指示信息;第二發(fā)送單元1202,用于根據(jù)所述指示信息,將所述處理后報文通過PCIE接口, 發(fā)送給所述組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。較佳的,還包括第二處理單元1203,用于當(dāng)自身位于所述指定順序的最后一位時,取消通過PCIE 接口對所述處理后報文的發(fā)送。較佳的,還包括第二處理單元1203 ;所述指示信息具體包括與所述組播報文的各目的線卡分別對應(yīng)的指示信息;所述第二處理單元1203,用于從所述處理后報文中刪除與自身對應(yīng)的指示信息, 得到未攜帶與自身對應(yīng)的指示信息的處理后報文;所述第二發(fā)送單元1202,具體用于將所述未攜帶與自身對應(yīng)的指示信息的處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。較佳的,還包括第二處理單元1203,用于對接收的所述處理后報文進行恢復(fù)處理,得到所述組播報文;所述第二發(fā)送單元1202,用于將所述組播報文通過自身的與所述組播報文的目的地址對應(yīng)的通信接口進行轉(zhuǎn)發(fā)。
11
本發(fā)明實施例2還提供了一種通信設(shè)備,其結(jié)構(gòu)示意圖如圖13所示,具體包括源線卡1301和目的線卡1302,源線卡1301可以為上述圖11所示的線卡,目的線卡1302可以為上述圖12所示的線卡,其中源線卡1301,用于對通過通信接口接收的組播報文進行處理,得到處理后報文,所述處理后報文中攜帶所述組播報文的所述目的線卡的指示信息;以及將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中的第一個目的線卡;目的線卡1302,用于接收對組播報文進行處理得到的所述處理后報文,所述處理后報文中攜帶所述組播報文的目的線卡的指示信息;并根據(jù)所述指示信息,將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。綜上所述,本發(fā)明實施例提供的方案,包括源線卡對通過通信接口接收的組播報文進行處理,得到處理后報文,該處理后報文中攜帶該組播報文的目的線卡的指示信息;并將該處理后報文通過PCIE接口,發(fā)送給該組播報文的按照指定順序排列的目的線卡中的第一個目的線卡。相應(yīng)的,目的線卡接收對組播報文進行處理得到的處理后報文;并根據(jù)該指示信息,將該處理后報文通過PCIE接口,發(fā)送給該組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。采用本發(fā)明實施例提供的方案,在進行組播報文傳輸處理時,減輕了源線卡的負(fù)擔(dān),提高了目的線卡的CPU利用率,以及提高了設(shè)備整機的性能。顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
權(quán)利要求
1.一種組播報文處理方法,其特征在于,包括源線卡對通過通信接口接收的組播報文進行處理,得到處理后報文,所述處理后報文中攜帶所述組播報文的目的線卡的指示信息;將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中的第一個目的線卡。
2.一種組播報文處理方法,其特征在于,包括目的線卡接收對組播報文進行處理得到的處理后報文,所述處理后報文中攜帶所述組播報文的目的線卡的指示信息;根據(jù)所述指示信息,將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。
3.如權(quán)利要求2所述的方法,其特征在于,還包括所述目的線卡當(dāng)自身位于所述指定順序的最后一位時,取消通過PCIE接口對所述處理后報文的發(fā)送。
4.如權(quán)利要求2所述的方法,其特征在于,所述指示信息具體包括與所述組播報文的各目的線卡分別對應(yīng)的指示信息;在將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡之前,還包括從所述處理后報文中刪除與自身對應(yīng)的指示信息,得到未攜帶與自身對應(yīng)的指示信息的處理后報文;在將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡,具體為將所述未攜帶與自身對應(yīng)的指示信息的處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。
5.如權(quán)利要求2所述的方法,其特征在于,還包括所述目的線卡對接收的所述處理后報文進行恢復(fù)處理,得到所述組播報文; 將所述組播報文通過自身的與所述組播報文的目的地址對應(yīng)的通信接口進行轉(zhuǎn)發(fā)。
6.一種線卡,其特征在于,包括第一處理單元,用于對通過通信接口接收的組播報文進行處理,得到處理后報文,所述處理后報文中攜帶所述組播報文的目的線卡的指示信息;第一發(fā)送單元,用于將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中的第一個目的線卡。
7.一種線卡,其特征在于,包括接收單元,用于接收對組播報文進行處理得到的處理后報文,所述處理后報文中攜帶所述組播報文的目的線卡的指示信息;第二發(fā)送單元,用于根據(jù)所述指示信息,將所述處理后報文通過PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。
8.如權(quán)利要求7所述的線卡,其特征在于,還包括第二處理單元,用于當(dāng)自身位于所述指定順序的最后一位時,取消通過PCIE接口對所述處理后報文的發(fā)送。
9.如權(quán)利要求7所述的線卡,其特征在于,還包括第二處理單元;所述指示信息具體包括與所述組播報文的各目的線卡分別對應(yīng)的指示信息; 所述第二處理單元,用于從所述處理后報文中刪除與自身對應(yīng)的指示信息,得到未攜帶與自身對應(yīng)的指示信息的處理后報文;所述第二發(fā)送單元,具體用于將所述未攜帶與自身對應(yīng)的指示信息的處理后報文通過 PCIE接口,發(fā)送給所述組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。
10.如權(quán)利要求7所述的線卡,其特征在于,還包括第二處理單元,用于對接收的所述處理后報文進行恢復(fù)處理,得到所述組播報文; 所述第二發(fā)送單元,用于將所述組播報文通過自身的與所述組播報文的目的地址對應(yīng)的通信接口進行轉(zhuǎn)發(fā)。
11.一種通信設(shè)備,其特征在于,包括如權(quán)利要求6所述的線卡和如權(quán)利要求7-10任一所述的目的線卡。
全文摘要
本發(fā)明公開了一種組播報文處理方法、線卡及通信設(shè)備,包括源線卡對通過通信接口接收的組播報文進行處理,得到處理后報文,該處理后報文中攜帶該組播報文的目的線卡的指示信息;并將該處理后報文通過PCIE接口,發(fā)送給該組播報文的按照指定順序排列的目的線卡中的第一個目的線卡。相應(yīng)的,目的線卡接收對組播報文進行處理得到的處理后報文;并根據(jù)該指示信息,將該處理后報文通過PCIE接口,發(fā)送給該組播報文的按照指定順序排列的目的線卡中位于自身后面的第一個目的線卡。采用本發(fā)明實施例提供的方案,在進行組播報文傳輸處理時,減輕了源線卡的負(fù)擔(dān),提高了目的線卡的CPU利用率,以及提高了設(shè)備整機的性能。
文檔編號H04L12/18GK102299857SQ20111027329
公開日2011年12月28日 申請日期2011年9月15日 優(yōu)先權(quán)日2011年9月15日
發(fā)明者彭凱 申請人:福建星網(wǎng)銳捷網(wǎng)絡(luò)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1