專利名稱:基于流方式的多業(yè)務(wù)轉(zhuǎn)發(fā)和處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種網(wǎng)絡(luò)設(shè)備數(shù)據(jù)處理技術(shù),具體涉及一種基于流方式的多業(yè)務(wù)實(shí)現(xiàn)方法。
背景技術(shù):
隨著計(jì)算機(jī)網(wǎng)絡(luò)的日益擴(kuò)展和豐富,目前的網(wǎng)絡(luò)設(shè)備中,需要支持的業(yè)務(wù)越來越多,相應(yīng)的各類應(yīng)用程序也越來越多。如果只是單一的執(zhí)行某種應(yīng)用,整機(jī)性能不會(huì)收到太大影響。但是如果是很多應(yīng)用一起執(zhí)行,每個(gè)應(yīng)用都獨(dú)立完成自己的從報(bào)文解析、查表、建表、報(bào)文處理、內(nèi)部處理、發(fā)送一系列流程,那么對(duì)整機(jī)轉(zhuǎn)發(fā)性能會(huì)有很大的影響。
發(fā)明內(nèi)容
本發(fā)明針對(duì)現(xiàn)有網(wǎng)絡(luò)設(shè)備在同時(shí)執(zhí)行多種應(yīng)用的能力方面所存在的不足,而提供一種基于流方式的多業(yè)務(wù)轉(zhuǎn)發(fā)和處理方法,該方法能夠有效提升整機(jī)轉(zhuǎn)發(fā)性能。為了達(dá)到上述目的,本發(fā)明采用如下的技術(shù)方案:基于流方式的多業(yè)務(wù)轉(zhuǎn)發(fā)和處理方法,所述方法中抽象各個(gè)應(yīng)用程序的處理共同點(diǎn),并由負(fù)責(zé)管理流表項(xiàng)和轉(zhuǎn)發(fā)流數(shù)據(jù)的流模塊統(tǒng)一完成;同時(shí)由流模塊來觸發(fā)和管理每個(gè)應(yīng)用在數(shù)據(jù)流轉(zhuǎn)發(fā)過程中進(jìn)一步的私有操作;分布式環(huán)境下,通過流方式鏈接起跨板卡的轉(zhuǎn)發(fā)應(yīng)用。在本發(fā)明的實(shí)施例中,所述流方式的具體流程如下:(I)根據(jù)所有應(yīng)用程序的處理共同點(diǎn),將所有應(yīng)用程序分為不同的流處理域;(2)在每個(gè)流處理域中,流模塊針對(duì)每條流進(jìn)行查流表操作,若查找到相應(yīng)的流表項(xiàng),流模塊會(huì)根據(jù)流表項(xiàng)里的內(nèi)容,將報(bào)文做處理;若沒有查找到相應(yīng)的流表項(xiàng),流模塊將建立臨時(shí)流表項(xiàng),并將報(bào)文交由傳統(tǒng)流程轉(zhuǎn)發(fā);(3)在傳統(tǒng)流程轉(zhuǎn)發(fā)過程中,各個(gè)應(yīng)用程序?qū)⒆约横槍?duì)該流的操作方法和需要修改的內(nèi)部數(shù)據(jù)掛接到臨時(shí)流表項(xiàng)里,該臨時(shí)流表項(xiàng)將提供一些公共操作的數(shù)據(jù)和接口讓各應(yīng)用程序統(tǒng)一注冊(cè);(4)轉(zhuǎn)發(fā)路徑上最后的應(yīng)用程序通知流模塊流表項(xiàng)建立完畢,流模塊將建立完畢的流表項(xiàng)插入正式流表;(5)進(jìn)行流的報(bào)文進(jìn)入,并進(jìn)行查表,查到相應(yīng)的流表項(xiàng),進(jìn)入流轉(zhuǎn)發(fā)流程;(6)流模塊執(zhí)行公共接口,并根據(jù)各應(yīng)用程序的掛接信息,完成各應(yīng)用程序的操作,并最終發(fā)出。進(jìn)一步的,所述各個(gè)應(yīng)用程序的處理共同點(diǎn)包括以下幾點(diǎn):(I)根據(jù)數(shù)據(jù)流的內(nèi)容索引本地表項(xiàng);(2)簡單的vpn頭部增加剝離處理;(3)將路由查詢結(jié)構(gòu)和acl查詢結(jié)果存貯在流表項(xiàng)公共部分里。進(jìn)一步的,所述步驟(3)中的掛接操作是將應(yīng)用程序的私有信息和回調(diào)接口存儲(chǔ)到臨時(shí)流表項(xiàng)對(duì)應(yīng)的內(nèi)存位置。進(jìn)一步的,所述流模塊在查表時(shí),所采用的索引方式與當(dāng)前網(wǎng)絡(luò)設(shè)備的配置相對(duì)應(yīng);在當(dāng)前索引方式無法滿足需要時(shí),由應(yīng)用程序在掛接到流的私用信息里建立小表,以擴(kuò)展元組為索引。進(jìn)一步的,通過流方式鏈接起跨板卡的轉(zhuǎn)發(fā)應(yīng)用時(shí),針對(duì)線卡上對(duì)應(yīng)的流表項(xiàng),流模塊會(huì)根據(jù)路由信息決定報(bào)文的走向,如果是要進(jìn)行轉(zhuǎn)發(fā),在最終發(fā)送時(shí),判斷報(bào)文的轉(zhuǎn)發(fā)方式。再進(jìn)一步的,所述報(bào)文的轉(zhuǎn)發(fā)方式包括如下三種:a、直接通過本線卡出口發(fā)出;b、發(fā)到另一塊線卡,并且通過交換矩陣直接硬件轉(zhuǎn)發(fā);C、發(fā)到另一塊線卡,并通過interconn交給流模塊,繼續(xù)處理并最終發(fā)送。根據(jù)上述方案得到的本發(fā)明與傳統(tǒng)的轉(zhuǎn)發(fā)流程相比,其根據(jù)網(wǎng)絡(luò)報(bào)文流的特性,將多種應(yīng)用整合起來,抽象出各個(gè)應(yīng)用相同的處理部分,將其一次性完成,從而提高整機(jī)轉(zhuǎn)發(fā)性能。本發(fā)明加快了設(shè)備轉(zhuǎn)發(fā)速度,應(yīng)用業(yè)務(wù)越多,性能提高幅度越大;同時(shí)簡化了部分應(yīng)用程序的實(shí)現(xiàn),比如netflow之類的應(yīng)用,完全不在再保留自己的表項(xiàng),全部依靠流模塊來實(shí)現(xiàn)。
以下結(jié)合附圖和具體實(shí)施方式
來進(jìn)一步說明本發(fā)明。
圖1為流方式的區(qū)域劃分實(shí)現(xiàn)示意圖。圖2為流表構(gòu)造示意圖。圖3為流表項(xiàng)構(gòu)造示意圖。圖4為流方式處理流程示意圖。圖5為建表流程示意圖。圖6為建立的私有表項(xiàng)的構(gòu)造不意圖。圖7為應(yīng)用程序內(nèi)部彳目息和流表項(xiàng)為一對(duì)多關(guān)系時(shí),相關(guān)表項(xiàng)定位的不意圖。圖8為分布式環(huán)境示意圖。
具體實(shí)施例方式為了使本發(fā)明實(shí)現(xiàn)的技術(shù)手段、創(chuàng)作特征、達(dá)成目的與功效易于明白了解,下面結(jié)合具體圖示,進(jìn)一步闡述本發(fā)明。為了提升整機(jī)轉(zhuǎn)發(fā)性能,本發(fā)明提供一種基于流方式的多業(yè)務(wù)轉(zhuǎn)發(fā)和處理方案,該方案中抽象各個(gè)應(yīng)用程序的處理共同點(diǎn),并由流模塊統(tǒng)一完成;同時(shí)由流模塊來觸發(fā)和管理每個(gè)應(yīng)用在數(shù)據(jù)流轉(zhuǎn)發(fā)過程中進(jìn)一步的私有操作;分布式環(huán)境下,通過流方式鏈接起跨板卡的轉(zhuǎn)發(fā)應(yīng)用。本發(fā)明中涉及的流模塊使用于負(fù)責(zé)管理流表項(xiàng)和轉(zhuǎn)發(fā)流數(shù)據(jù)的模塊。對(duì)于流模塊的觸發(fā)作用:參見圖2和3,根據(jù)其所示的流表項(xiàng)的構(gòu)成可知,每個(gè)應(yīng)用模塊會(huì)將自己的私有數(shù)據(jù),和回調(diào)接口注冊(cè)到流表項(xiàng)里,數(shù)據(jù)包經(jīng)過路由器,進(jìn)行流轉(zhuǎn)發(fā)時(shí),會(huì)進(jìn)入這些接口,由應(yīng)用程序的代碼進(jìn)行私有操作。對(duì)于流模塊的管理作用:各個(gè)應(yīng)用程序在注冊(cè)流表項(xiàng)刪除時(shí),通知他們的回調(diào)接口。流表項(xiàng)刪除的時(shí)候,會(huì)通過這些接口讓各個(gè)模塊處理相關(guān)事務(wù)。當(dāng)應(yīng)用模塊的內(nèi)部發(fā)生變化時(shí),可以對(duì)相關(guān)的表項(xiàng)做刪除或修改,而相應(yīng)的定位相關(guān)表項(xiàng)的方法有3種:1.最簡單的方法,應(yīng)用提供索引方式,遍歷某個(gè)域里整個(gè)流表,定位相關(guān)的表項(xiàng),做操作;2.在應(yīng)用程序內(nèi)部信息和流表項(xiàng)是一對(duì)多的關(guān)系時(shí),如圖7所示,在建立表項(xiàng)時(shí),用鏈表做關(guān)聯(lián),同步的時(shí)候,只遍歷該鏈表,不用整體遍歷;3.當(dāng)不是就簡單的一對(duì)多的關(guān)系,又不希望遍歷整個(gè)流表,應(yīng)用可以自行在內(nèi)部建立私有表,記錄自己使用的表項(xiàng)。參見圖8,本發(fā)明中涉及的分布式環(huán)境指核心網(wǎng)的多板卡路由設(shè)備,由主控、備控和多個(gè)線卡組成,各個(gè)板卡可以獨(dú)立工作,也可以協(xié)同工作。本發(fā)明中分布式環(huán)境所構(gòu)成的分布式系統(tǒng)的基本設(shè)計(jì)是控制和協(xié)議報(bào)文多在主控處理,業(yè)務(wù)轉(zhuǎn)發(fā)多在線卡處理。板卡間協(xié)同工作時(shí),通過板間交換矩陣和Hig通道來進(jìn)行數(shù)據(jù)交互,軟件層面有專門的interconn模塊負(fù)責(zé)通道和報(bào)文交互時(shí)的管理。若某線卡收到報(bào)文,該線卡上有對(duì)應(yīng)的流表項(xiàng),那么流模塊會(huì)根據(jù)路由信息決定報(bào)文的走向,如果是要進(jìn)行轉(zhuǎn)發(fā),那么在最終發(fā)送時(shí),判斷報(bào)文是:I)直接通過本線卡出口發(fā)出(路由信息決定);2)還是發(fā)到另一塊線卡,并且通過交換矩陣直接硬件轉(zhuǎn)發(fā)(判斷目的線卡沒有任何應(yīng)用操作需求);3)發(fā)到另一塊線卡,并通過interconn交給流模塊,繼續(xù)處理并最終發(fā)送。對(duì)于狀態(tài)防火墻之類的需要將雙向流量做關(guān)聯(lián)操作的,會(huì)將流建立在主控上,所有的跨線卡轉(zhuǎn)發(fā)報(bào)文,就必須從入線卡進(jìn)入主控,再從主控到出線卡。本發(fā)明利用流方式實(shí)現(xiàn)網(wǎng)絡(luò)設(shè)備多業(yè)務(wù)支持,就是根據(jù)網(wǎng)絡(luò)報(bào)文流的特性,將多種應(yīng)用整合起來,抽象出各個(gè)應(yīng)用相同的處理部分,將其一次性完成,從而提高整機(jī)轉(zhuǎn)發(fā)性倉泛。基于上述原理,本發(fā)明提供的流方式具有如下四個(gè)特點(diǎn):(I)Data Plane,即應(yīng)用在數(shù)據(jù)/報(bào)文處理層面;(2)Diverse Protocol,即支持多種協(xié)議;(3)Dynamic Tuple,即元組可以動(dòng)態(tài)調(diào)整;(4)Distributed System,即支持分布式系統(tǒng)。Data Plane網(wǎng)絡(luò)設(shè)備往往分為控制層面和數(shù)據(jù)層面來實(shí)現(xiàn),即本發(fā)明中的流轉(zhuǎn)發(fā)主要針對(duì)數(shù)據(jù)層面。對(duì)于普通的轉(zhuǎn)發(fā)流程,假如有以下一些應(yīng)用:攻擊檢測(cè)、acl、nat、狀態(tài)防火墻、流量工程、gre。
由此,當(dāng)一個(gè)報(bào)文要經(jīng)過這臺(tái)設(shè)備轉(zhuǎn)發(fā)時(shí),如果符合所有應(yīng)用的判斷標(biāo)準(zhǔn),該報(bào)文就要先經(jīng)過物理層,鏈路層的解析,到達(dá)網(wǎng)絡(luò)層,在網(wǎng)絡(luò)層完成報(bào)文的解析、檢查、路由查詢工作,并且經(jīng)過以上所列模塊的處理,無論網(wǎng)絡(luò)的層次處理還是應(yīng)用模塊自己的處理,完全獨(dú)立,即前者處理后的信息,后者無法使用。每個(gè)模塊都要查詢自己內(nèi)部的表來尋找處理所用的控制塊,一圈跑下來,耗時(shí)很厲害。利用本發(fā)明提供的流方式在data plane,相對(duì)傳統(tǒng)轉(zhuǎn)發(fā)具有如下優(yōu)點(diǎn):(I)壓縮了鏈路層和網(wǎng)絡(luò)層,在某些情況下省去鏈路層的操作;(2)整合了所有應(yīng)用的公共操作,比如查表,流量統(tǒng)計(jì);(3)前后應(yīng)用程序的聯(lián)動(dòng),比如進(jìn)出口都配置了 acl,進(jìn)口 Permit,出口 deny,那么對(duì)于指定的流,在進(jìn)口就可以做deny操作。除非后續(xù)路徑上有修改報(bào)文流屬性的應(yīng)用,(nat,狀態(tài)防火墻)?;谏鲜鲈?,本發(fā)明的具體實(shí)施過程如下:首先根據(jù)現(xiàn)實(shí)的應(yīng)用將流方式分為6個(gè)區(qū)域?qū)崿F(xiàn),由流模塊完成鏈路層對(duì)報(bào)文的初步分析,并將報(bào)文交到相關(guān)域里做后續(xù)操作。如圖1所示,這6個(gè)域是邏輯上的概念,分別為IPv4Unicast、IPv6Unicast、IPv4Multicast、IPv6Multicast、L2、MPLS。在代碼實(shí)現(xiàn)上,為每個(gè)域提供單獨(dú)的域數(shù)據(jù)結(jié)構(gòu)和表數(shù)據(jù)結(jié)構(gòu)以及不同的報(bào)文進(jìn)入?yún)^(qū)域進(jìn)行處理的接口。本發(fā)明之所以分成這6個(gè)域,是因?yàn)樗鼈兏髯杂兄?dú)特的報(bào)文特性和業(yè)務(wù)組成,分開便于流程控制上的靈活。其具體理由如下:1、減少流表的大小,比如在v4的表有很多節(jié)點(diǎn),而v6表節(jié)點(diǎn)很少的情況下,如果只是收發(fā)v6報(bào)文,查表速度不會(huì)被v4拖累。2、如果不分區(qū)域,在一個(gè)流程里做報(bào)文分析,hash計(jì)算,沖突時(shí)的內(nèi)容比較等等,都需要做類型判斷而進(jìn)行不同的操作,多次判斷在分區(qū)域后就變成各區(qū)域入口前唯一的一次判斷。3、每個(gè)區(qū)域里對(duì)報(bào)文可能會(huì)有特殊的操作,分區(qū)域后,擴(kuò)展性比較好,比如有些區(qū)域需要考慮分片,有些不需要。有些區(qū)域需要對(duì)入端口做檢查??紤]到以后可能會(huì)將部分應(yīng)用程序的操作整合到流轉(zhuǎn)發(fā)里進(jìn)行。區(qū)分區(qū)域會(huì)比較靈活。4、考慮到轉(zhuǎn)發(fā)性能問題,可能會(huì)某些域做特殊的快速轉(zhuǎn)發(fā)流程。本發(fā)明中流模塊在完成鏈路層對(duì)報(bào)文的初步分析時(shí)所采用的分析方法有兩種:一種是報(bào)文控制塊里會(huì)攜帶硬件預(yù)處理后的信息,比如可以通過硬件處理后設(shè)置的信息,知道報(bào)文是ipv4,還是ipv6 ;是unicast,還是multicast ;另一種是解析報(bào)文頭,通過頭部的信息,判斷報(bào)文的類型。比如udp,gre, ipsec等都可以通過頭部判斷出來。針對(duì)ipv4域,其具體流的建立和轉(zhuǎn)發(fā)流程如下(參見圖4):1、流模塊針對(duì)每條流進(jìn)行查流表操作,若查找到相應(yīng)的流表項(xiàng),流模塊會(huì)根據(jù)流表項(xiàng)里的內(nèi)容,將報(bào)文做處理;若沒有查找到相應(yīng)的流表項(xiàng),流模塊將建立臨時(shí)流表項(xiàng),并將報(bào)文交由傳統(tǒng)流程轉(zhuǎn)發(fā)。該步驟涉及的流表項(xiàng)為相同特性的報(bào)文建立起來的節(jié)點(diǎn),一個(gè)數(shù)據(jù)結(jié)構(gòu)的實(shí)例,流表是這些流表項(xiàng)組織在一起形成的表。
參見圖5,每個(gè)報(bào)文經(jīng)過路由器會(huì)在流模塊里查流表,確定是否已經(jīng)有對(duì)應(yīng)的表項(xiàng)?若有,流模塊會(huì)根據(jù)表項(xiàng)里的內(nèi)容,將報(bào)文做處理;若沒有,就分配內(nèi)存建立表項(xiàng)這個(gè)數(shù)據(jù)結(jié)構(gòu)實(shí)例,然后這個(gè)報(bào)文會(huì)交給路由器傳統(tǒng)的協(xié)議棧轉(zhuǎn)發(fā)流程。參見圖3,該步驟中建立的臨時(shí)流表項(xiàng)只有公共信息,其沒有加入轉(zhuǎn)發(fā)路徑上各個(gè)應(yīng)用程序的信息(如圖3中左邊開始的4塊部分)。2、在傳統(tǒng)流程轉(zhuǎn)發(fā)過程中,各個(gè)應(yīng)用將自己針對(duì)這條流(即報(bào)文)的操作方法和需要修改的內(nèi)部數(shù)據(jù)掛接到流表項(xiàng)里,流表項(xiàng)還會(huì)提供一些公共操作的數(shù)據(jù)和接口讓各模塊統(tǒng)一注冊(cè)。3、轉(zhuǎn)發(fā)路徑上最后的模塊通知流模塊表項(xiàng)建立完畢,流模塊將表項(xiàng)插入正式流表?;谏鲜鰞刹?,對(duì)于ipv4報(bào)文,ipv4協(xié)議棧模塊轉(zhuǎn)發(fā)過程中,會(huì)根據(jù)配置經(jīng)過各種應(yīng)用程序的模塊,如acl,nat, status firewall等等,這些模塊會(huì)將自己的信息填入到表項(xiàng)里,并在所有模塊處理完之后,將這個(gè)信息完整的表項(xiàng)插入到流表,這樣之后相同索引方式的報(bào)文進(jìn)入后,就能夠查到表項(xiàng),并通過流模塊來轉(zhuǎn)發(fā),而不是傳統(tǒng)的轉(zhuǎn)發(fā)流程。4、流的報(bào)文進(jìn)入,查表成功,進(jìn)入流轉(zhuǎn)發(fā)流程。5、流模塊執(zhí)行公共接口,并根據(jù)各模塊的掛接信息,完成各模塊的操作,并最終發(fā)出。6、對(duì)于6to4之類的應(yīng)用會(huì)跨過不同的域,一次流轉(zhuǎn)發(fā)無法完成。7、vpn —對(duì)多方向的轉(zhuǎn)發(fā),在一個(gè)域內(nèi)也需要走多次流轉(zhuǎn)發(fā)流程。對(duì)于Diverse ProtocolIPv4-Unicast 協(xié)議族路由器當(dāng)前在Data-Plane層面需要處理協(xié)議最多的是IPv4_Unicast協(xié)議族:routing、PBR、uRPFACL、狀態(tài)防火墻、防攻擊、應(yīng)用層識(shí)別NATQos、各種限速功能NetFlow> IP-AccountingL2TP、PPTP, IPSec, GRE/IPIP 及各種 Tunnel 協(xié)議、mGREVRF-ware鏈路層支持Ether、PPP、Vlan, QinQIPv4_Multicast 協(xié)議族已知的IPv4_Multicast 協(xié)議族:mroutingACL限速功能MVPNIPv6_Unicast 協(xié)議族已知的IPv6_Unicast 協(xié)議族:routingv6
ACLv6IPSecv6、各種 Tunnel 協(xié)議QosIpv6-multicast 目前應(yīng)用不多.
L2域主要為了支持以mac地址做為流標(biāo)識(shí)的應(yīng)用,比如pppoeMpls是一種獨(dú)立于ipv4、ipv6的特殊網(wǎng)絡(luò)層架構(gòu),單獨(dú)支持上述的應(yīng)用都納入到流的管理里,其具體實(shí)施如上述的的建流和轉(zhuǎn)發(fā)的流程,此處不加以贅述。對(duì)于本發(fā)明的Dynamic Tuple流模式的實(shí)現(xiàn)中,查表是最關(guān)鍵的.因?yàn)樗械膽?yīng)用共用一張流表來取代各自的表.所以流表的構(gòu)建必須符合兩點(diǎn): 1.能夠滿足各種應(yīng)用對(duì)自身信息的索引;2.查詢必須足夠快。對(duì)于第一點(diǎn),不同的應(yīng)用對(duì)流有著不同的索引方式,比如普通的路由查找,只關(guān)注目的地址,而組播會(huì)關(guān)注源地址和目的地址,nat會(huì)關(guān)注地址、協(xié)議和協(xié)議端口,qos會(huì)關(guān)注除了 5元組以外的cos等字段,ipsec之類的特殊應(yīng)用會(huì)關(guān)注spi之類的私有標(biāo)識(shí)。以ipv4_unicast域里應(yīng)用為例IPv4-unicast域中,各種協(xié)議所需的元組數(shù)表1:表I
權(quán)利要求
1.基于流方式的多業(yè)務(wù)轉(zhuǎn)發(fā)和處理方法,其特征在于,所述方法中抽象各個(gè)應(yīng)用程序的處理共同點(diǎn),并由負(fù)責(zé)管理流表項(xiàng)和轉(zhuǎn)發(fā)流數(shù)據(jù)的流模塊統(tǒng)一完成;同時(shí)由流模塊來觸發(fā)和管理每個(gè)應(yīng)用在數(shù)據(jù)流轉(zhuǎn)發(fā)過程中進(jìn)一步的私有操作;分布式環(huán)境下,通過流方式鏈接起跨板卡的轉(zhuǎn)發(fā)應(yīng)用。
2.根據(jù)權(quán)利要求1所述的基于流方式的多業(yè)務(wù)轉(zhuǎn)發(fā)和處理方法,其特征在于,所述流方式的具體流程如下: (1)根據(jù)所有應(yīng)用程序的處理共同點(diǎn),將所有應(yīng)用程序分為不同的流處理域; (2)在每個(gè)流處理域中,流模塊針對(duì)每條流進(jìn)行查流表操作,若查找到相應(yīng)的流表項(xiàng),流模塊會(huì)根據(jù)流表項(xiàng)里的內(nèi)容,將報(bào)文做處理;若沒有查找到相應(yīng)的流表項(xiàng),流模塊將建立臨時(shí)流表項(xiàng),并將報(bào)文交由傳統(tǒng)流程轉(zhuǎn)發(fā); (3)在傳統(tǒng)流程轉(zhuǎn)發(fā)過程中,各個(gè)應(yīng)用程序?qū)⒆约横槍?duì)該流的操作方法和需要修改的內(nèi)部數(shù)據(jù)掛接到臨時(shí)流表項(xiàng)里,該臨時(shí)流表項(xiàng)將提供一些公共操作的數(shù)據(jù)和接口讓各應(yīng)用程序統(tǒng)一注冊(cè); (4)轉(zhuǎn)發(fā)路徑上最后的應(yīng)用程序通知流模塊流表項(xiàng)建立完畢,流模塊將建立完畢的流表項(xiàng)插入正式流表; (5)進(jìn)行流的報(bào)文進(jìn)入,并進(jìn)行查表,查到相應(yīng)的流表項(xiàng),進(jìn)入流轉(zhuǎn)發(fā)流程; (6)流模塊執(zhí)行公共接口,并根據(jù)各應(yīng)用程序的掛接信息,完成各應(yīng)用程序的操作,并最終發(fā)出。
3.根據(jù)權(quán)利要求1所述的基于流方式的多業(yè)務(wù)轉(zhuǎn)發(fā)和處理方法,其特征在于,所述各個(gè)應(yīng)用程序的處理共同點(diǎn)包括以下幾點(diǎn): (1)根據(jù)數(shù)據(jù)流的內(nèi)容索引本地表項(xiàng); (2)簡單的vpn頭部增加剝離處理; (3)將路由查詢結(jié)構(gòu)和acl查詢結(jié)果存貯在流表項(xiàng)公共部分里。
4.根據(jù)權(quán)利要求2所述的基于流方式的多業(yè)務(wù)轉(zhuǎn)發(fā)和處理方法,其特征在于,所述步驟(3)中的掛接操作是將應(yīng)用程序的私有信息和回調(diào)接口存儲(chǔ)到臨時(shí)流表項(xiàng)對(duì)應(yīng)的內(nèi)存位置。
5.根據(jù)權(quán)利要求2所述的基于流方式的多業(yè)務(wù)轉(zhuǎn)發(fā)和處理方法,其特征在于,所述流模塊在查表時(shí),所采用的索引方式與當(dāng)前網(wǎng)絡(luò)設(shè)備的配置相對(duì)應(yīng);在當(dāng)前索引方式無法滿足需要時(shí),由應(yīng)用程序在掛接到流的私用信息里建立小表,以擴(kuò)展元組為索引。
6.根據(jù)權(quán)利要求1所述的基于流方式的多業(yè)務(wù)轉(zhuǎn)發(fā)和處理方法,其特征在于,通過流方式鏈接起跨板卡的轉(zhuǎn)發(fā)應(yīng)用時(shí),針對(duì)線卡上對(duì)應(yīng)的流表項(xiàng),流模塊會(huì)根據(jù)路由信息決定報(bào)文的走向,如果是要進(jìn)行轉(zhuǎn)發(fā),在最終發(fā)送時(shí),判斷報(bào)文的轉(zhuǎn)發(fā)方式。
7.根據(jù)權(quán)利要求6所述的基于流方式的多業(yè)務(wù)轉(zhuǎn)發(fā)和處理方法,其特征 在于,所述報(bào)文的轉(zhuǎn)發(fā)方式包括如下三種: a、直接通過本線卡出口發(fā)出; b、發(fā)到另一塊線卡,并且通過交換矩陣直接硬件轉(zhuǎn)發(fā); C、發(fā)到另一塊線卡,并通過interconn交給流模塊,繼續(xù)處理并最終發(fā)送。
全文摘要
本發(fā)明公開了基于流方式的多業(yè)務(wù)轉(zhuǎn)發(fā)和處理方法,該方法中抽象各個(gè)應(yīng)用程序的處理共同點(diǎn),并由流模塊統(tǒng)一完成;同時(shí)由流模塊來觸發(fā)和管理每個(gè)應(yīng)用在數(shù)據(jù)流轉(zhuǎn)發(fā)過程中進(jìn)一步的私有操作;分布式環(huán)境下,通過流方式鏈接起跨板卡的轉(zhuǎn)發(fā)應(yīng)用。本發(fā)明利用流方式實(shí)現(xiàn)網(wǎng)絡(luò)設(shè)備多業(yè)務(wù)支持,就是根據(jù)網(wǎng)絡(luò)報(bào)文流的特性,將多種應(yīng)用整合起來,抽象出各個(gè)應(yīng)用相同的處理部分,將其一次性完成,從而提高整機(jī)轉(zhuǎn)發(fā)性能。
文檔編號(hào)H04L12/701GK103179031SQ20111043988
公開日2013年6月26日 申請(qǐng)日期2011年12月23日 優(yōu)先權(quán)日2011年12月23日
發(fā)明者汪革, 彭雙庭, 方昊, 傅鑫泉 申請(qǐng)人:上海博達(dá)數(shù)據(jù)通信有限公司