欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置及方法

文檔序號(hào):7627462閱讀:131來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):一種實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置及方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種報(bào)文處理技術(shù),特別涉及一種實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置及方法。
背景技術(shù)
通信網(wǎng)絡(luò)在傳送報(bào)文的過(guò)程中,接入設(shè)備往往要對(duì)所接收的報(bào)文進(jìn)行轉(zhuǎn)發(fā)。為了實(shí)現(xiàn)高速信元或報(bào)文的轉(zhuǎn)發(fā),通常接入設(shè)備利用硬件獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息。對(duì)所述轉(zhuǎn)發(fā)信息查詢(xún)的時(shí)間,在通常情況下用多少個(gè)系統(tǒng)時(shí)鐘周期(cycle)表示。為了達(dá)到報(bào)文處理設(shè)備的線(xiàn)速處理能力,對(duì)轉(zhuǎn)發(fā)信息查詢(xún)的時(shí)間要求很高,例如千兆比特率以太網(wǎng)(GE,Gigabit Ethernet)接口的處理設(shè)備,若報(bào)文以1Gbit/s的速率到達(dá),系統(tǒng)時(shí)鐘為62.5M,對(duì)于一個(gè)64比特(Byte)的數(shù)據(jù)包來(lái)說(shuō),當(dāng)一個(gè)GE接口時(shí),留給硬件設(shè)備處理的時(shí)間有32cycles(62.5M×64×8/1G);若2個(gè)GE接口,留給硬件設(shè)備處理的時(shí)間則只有16cycles,顯然對(duì)每個(gè)報(bào)文轉(zhuǎn)發(fā)信息的查詢(xún)時(shí)間有很高的要求。
在接入設(shè)備中,通常基于永久虛連接(PVC,Permanent Virtual Connection)來(lái)獲取轉(zhuǎn)發(fā)信息,硬件根據(jù)PVC連接索引查詢(xún)相應(yīng)的存儲(chǔ)轉(zhuǎn)發(fā)信息的屬性表獲取該轉(zhuǎn)發(fā)信息,實(shí)現(xiàn)報(bào)文的轉(zhuǎn)發(fā)。在實(shí)際的應(yīng)用過(guò)程中接入設(shè)備需要接入許多用戶(hù),因此需要維護(hù)大量的連接信息表項(xiàng),這些信息表項(xiàng)通常存儲(chǔ)在同步靜態(tài)隨機(jī)存儲(chǔ)器(SSRAM,Synchronous Static Random Access Memory)芯片中,所述連接信息表項(xiàng);相應(yīng)的,報(bào)文的處理過(guò)程則是在現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA,F(xiàn)ield programmable Gate Array)或者專(zhuān)門(mén)集成電路(ASIC,Application Specific Integrated Circuit)芯片中完成的。
通常情況下大部分轉(zhuǎn)發(fā)信息基于連接索引可以直接查詢(xún)出來(lái),這是必需的查詢(xún)時(shí)間,還有一些轉(zhuǎn)發(fā)信息在得到連接索引后還需要對(duì)所述信息進(jìn)行線(xiàn)性的查詢(xún)比較。例如互聯(lián)網(wǎng)協(xié)議(IP,Internet Protocol)綁定功能的實(shí)現(xiàn),其含義是對(duì)某條PVC連接,配置多個(gè)IP地址,接收?qǐng)?bào)文后,檢查所述報(bào)文的源IP地址,如果不能在共享媒質(zhì)SSRAM配置的轉(zhuǎn)發(fā)信息中找到匹配的IP表項(xiàng),則判定所述報(bào)文是非法報(bào)文,進(jìn)行丟棄。
現(xiàn)有的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置如圖1所示,包括接收待轉(zhuǎn)發(fā)報(bào)文的接收單元1a、查詢(xún)所述待轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的查詢(xún)單元2a以及根據(jù)所述轉(zhuǎn)發(fā)信息發(fā)送待轉(zhuǎn)發(fā)報(bào)文的發(fā)送單元3a。其中所述查詢(xún)單元包括SSRAM存儲(chǔ)器21a用于存儲(chǔ)所有報(bào)文的轉(zhuǎn)發(fā)信息,報(bào)文信息獲取單元22a用于獲取待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字(Key)(例如報(bào)文IP、介質(zhì)訪(fǎng)問(wèn)MAC地址信息等)以及SSRAM訪(fǎng)問(wèn)控制接口23a用于實(shí)現(xiàn)對(duì)SSRAM存儲(chǔ)器21a的訪(fǎng)問(wèn)控制,。
參考圖2,該圖為現(xiàn)有技術(shù)查詢(xún)轉(zhuǎn)發(fā)信息的處理流程圖。
報(bào)文對(duì)應(yīng)的永久虛連接索引以Pvc_idx表示,也就是用于查詢(xún)SSRAM中的線(xiàn)性信息表的查表索引,查詢(xún)關(guān)鍵字以key表示,所述Key可以是報(bào)文的IP、介質(zhì)訪(fǎng)問(wèn)MAC、虛擬局域網(wǎng)VLAN或其它屬性,存儲(chǔ)于SSRAM中的線(xiàn)性表中信息項(xiàng)以Item_0,Item_1,.....,Item_k表示,所述存儲(chǔ)于SSRAM中的線(xiàn)性表中信息與key的屬性相同。
步驟1,獲取待轉(zhuǎn)發(fā)報(bào)文的Pvc_idx和key;步驟2,查詢(xún)所述Pvc_idx在SSRAM中的線(xiàn)性信息表中所對(duì)應(yīng)的所有信息項(xiàng)的第一個(gè)信息項(xiàng)Item_0;步驟3,判斷所述報(bào)文的key值與第一個(gè)信息項(xiàng)Item_0是否匹配,若是,則執(zhí)行步驟4,否則,執(zhí)行步驟5;步驟4,判定查詢(xún)成功,獲取Item_0中的轉(zhuǎn)發(fā)信息;
步驟5,判斷是否查詢(xún)完P(guān)vc_idx對(duì)應(yīng)的所有信息項(xiàng),若是,則執(zhí)行步驟6,否則,執(zhí)行步驟7;步驟6,判定所述報(bào)文為非法報(bào)文,查詢(xún)失敗,丟棄所述報(bào)文;步驟7,查詢(xún)所述Pvc_idx對(duì)應(yīng)的所有信息項(xiàng)中的下一個(gè)信息項(xiàng)Item_i,比較所述Item_i是否與所述報(bào)文的key匹配,若是,則獲取查詢(xún)結(jié)果,否則,返回步驟5。
綜上,上述現(xiàn)有轉(zhuǎn)發(fā)報(bào)文的方案雖然可以查詢(xún)報(bào)文的轉(zhuǎn)發(fā)信息從而實(shí)現(xiàn)報(bào)文的轉(zhuǎn)發(fā),但還存在以下問(wèn)題由于所述SSRAM存儲(chǔ)器中存儲(chǔ)有大量的信息項(xiàng),查詢(xún)待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息是通過(guò)對(duì)SSRAM存儲(chǔ)器進(jìn)行線(xiàn)性查詢(xún)來(lái)實(shí)現(xiàn)的,如果一條連接索引對(duì)應(yīng)8個(gè)信息項(xiàng)的話(huà),則平均需要查詢(xún)比較4個(gè)信息項(xiàng)。特別是對(duì)于不能命中的情況,需要將8個(gè)信息項(xiàng)均進(jìn)行比較后才能做出判斷。通常對(duì)SSRAM存儲(chǔ)器進(jìn)行一次讀操作需要5個(gè)時(shí)鐘Cycles或以上的時(shí)間,加上1個(gè)Cycle比較時(shí)間,則平均查詢(xún)時(shí)間最少是4×6=24個(gè)Cycles,而SSRAM存儲(chǔ)了很多信息項(xiàng),其它功能模塊也需要讀取或者寫(xiě)入,因此常常需要等待服務(wù),則處理一個(gè)報(bào)文的時(shí)間會(huì)更長(zhǎng),顯然現(xiàn)有技術(shù)在進(jìn)行轉(zhuǎn)發(fā)信息的查詢(xún)時(shí)需要逐一查詢(xún)信息項(xiàng),占用太多的硬件查詢(xún)時(shí)間,不利于線(xiàn)速處理,因而延長(zhǎng)了報(bào)文的處理時(shí)間,造成了較大的轉(zhuǎn)發(fā)延時(shí),影響了系統(tǒng)帶寬的利用率和處理性能。

發(fā)明內(nèi)容
本發(fā)明解決的技術(shù)問(wèn)題是提供一種實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置及方法,該裝置及方法能夠減少報(bào)文的處理時(shí)間,提高系統(tǒng)帶寬的利用率和處理性能。
為解決上述問(wèn)題,本發(fā)明實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置,包括接收待轉(zhuǎn)發(fā)報(bào)文的接收單元;
查詢(xún)所述待轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的查詢(xún)單元,以及根據(jù)所述查詢(xún)獲取的轉(zhuǎn)發(fā)信息發(fā)送待轉(zhuǎn)發(fā)報(bào)文的發(fā)送單元,其特征在于,所述查詢(xún)單元包括第一存儲(chǔ)器,用于存儲(chǔ)所有報(bào)文的轉(zhuǎn)發(fā)信息;第二存儲(chǔ)器,用于存儲(chǔ)已轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;查詢(xún)控制單元,查詢(xún)第二存儲(chǔ)器中是否存儲(chǔ)有待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,若是,則獲取第二存儲(chǔ)器存儲(chǔ)的所述轉(zhuǎn)發(fā)信息,否則,查詢(xún)第一存儲(chǔ)器獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息并將所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ)。
其中,所述查詢(xún)控制單元包括第二存儲(chǔ)器查詢(xún)判斷單元,用于判斷第二存儲(chǔ)器中是否存儲(chǔ)有待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,并在判斷為是后獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;第一存儲(chǔ)器查詢(xún)判斷單元,在第二存儲(chǔ)器查詢(xún)判斷單元判斷為否后,查詢(xún)第一存儲(chǔ)器獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;存儲(chǔ)轉(zhuǎn)移控制單元,用于將從第一存儲(chǔ)器查詢(xún)獲取的所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ)。
其中,所述查詢(xún)控制單元還包括第二存儲(chǔ)器控制單元,用于直接或按照預(yù)設(shè)的間隔時(shí)間將第二存儲(chǔ)器中的所有轉(zhuǎn)發(fā)信息置為無(wú)效。
其中,所述第二存儲(chǔ)器還存儲(chǔ)有連接索引和查詢(xún)關(guān)鍵字信息,所述第二存儲(chǔ)器查詢(xún)判斷單元包括報(bào)文信息獲取單元,用于獲取待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字;查詢(xún)地址確定單元,用于根據(jù)獲取的待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定在第二存儲(chǔ)器查詢(xún)待轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的查詢(xún)地址;信息項(xiàng)獲取單元,用于獲取所述查詢(xún)地址空間中第二存儲(chǔ)器存儲(chǔ)的所有信息項(xiàng);查詢(xún)結(jié)果獲取單元,用于檢測(cè)所述獲取的所有信息項(xiàng)中的連接索引和查詢(xún)關(guān)鍵字與所述待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字是否一致,并在判斷為是后,獲取與所述待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字一致的信息項(xiàng)中的轉(zhuǎn)發(fā)信息。
其中,所述存儲(chǔ)轉(zhuǎn)移控制單元包括存儲(chǔ)地址確定單元,用于根據(jù)待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定第二存儲(chǔ)器中用于存儲(chǔ)從第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)地址;轉(zhuǎn)移控制單元,用于控制將從所述第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字緩存到所述確定的第二存儲(chǔ)器的存儲(chǔ)地址空間中進(jìn)行存儲(chǔ)。
其中,所述存儲(chǔ)轉(zhuǎn)移控制單元還包括選擇單元,當(dāng)用于存儲(chǔ)從第一存儲(chǔ)器查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的所述存儲(chǔ)地址空間已經(jīng)被存滿(mǎn)時(shí),選擇最早被存儲(chǔ)到所述存儲(chǔ)地址空間中的信息項(xiàng)所在的位置作為所述從第一存儲(chǔ)器中查詢(xún)的轉(zhuǎn)發(fā)信息以及與該轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)位置。
其中,所述第一存儲(chǔ)器采用共享媒質(zhì),所述共享媒質(zhì)為同步靜態(tài)隨機(jī)存儲(chǔ)器,所述第二存儲(chǔ)器采用現(xiàn)場(chǎng)可編程門(mén)陣列或者專(zhuān)用集成電路芯片的內(nèi)部緩存。
其中,所述連接索引為永久虛連接索引,所述查詢(xún)關(guān)鍵字包括報(bào)文的互聯(lián)網(wǎng)協(xié)議地址,介質(zhì)訪(fǎng)問(wèn)地址,虛擬局域網(wǎng)地址。
相應(yīng)地,本發(fā)明的一種實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的方法,包括a、接收待轉(zhuǎn)發(fā)報(bào)文;b、查詢(xún)用于存儲(chǔ)已轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的第二存儲(chǔ)器中是否存儲(chǔ)有所述待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,若是,則獲取第二存儲(chǔ)器存儲(chǔ)的所述轉(zhuǎn)發(fā)信息,執(zhí)行e,否則,執(zhí)行c;c、查詢(xún)用于存儲(chǔ)所有報(bào)文轉(zhuǎn)發(fā)信息的第一存儲(chǔ)器中是否存儲(chǔ)有所述待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,并在判斷為是后,獲取所述待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,并執(zhí)行d;d、將從第一存儲(chǔ)器查詢(xún)獲取的所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ),然后執(zhí)行e;e、根據(jù)所述轉(zhuǎn)發(fā)信息發(fā)送待轉(zhuǎn)發(fā)報(bào)文。
其中,所述步驟a之前還包括a1、判斷是否有報(bào)文輸入,若是,則執(zhí)行a;否則,執(zhí)行a2;a2、判斷預(yù)設(shè)的用于將第二存儲(chǔ)器中的所有信息項(xiàng)置為無(wú)效的間隔時(shí)間是否到達(dá),并在判斷為是后,將所述第二存儲(chǔ)器中的所有信息項(xiàng)置為無(wú)效。
其中,所述第二存儲(chǔ)器還存儲(chǔ)有連接索引和查詢(xún)關(guān)鍵字信息,所述步驟b包括b1、獲取待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字;b2、根據(jù)獲取的待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定在第二存儲(chǔ)器查詢(xún)待轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的查詢(xún)地址;b3、獲取所述查詢(xún)地址空間中第二存儲(chǔ)器存儲(chǔ)的所有信息項(xiàng);b4、檢測(cè)所述獲取的所有信息項(xiàng)中的連接索引和查詢(xún)關(guān)鍵字與所述待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字是否一致,并在判斷為是后,獲取與所述待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字一致的信息項(xiàng)中的轉(zhuǎn)發(fā)信息。
其中,所述步驟d包括d1、根據(jù)待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定第二存儲(chǔ)器中用于存儲(chǔ)從第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)地址;d2、將從所述第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字緩存到所述確定的第二存儲(chǔ)器的存儲(chǔ)地址空間中進(jìn)行存儲(chǔ)。
其中,當(dāng)用于存儲(chǔ)從第一存儲(chǔ)器查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的所述存儲(chǔ)地址空間已經(jīng)被存滿(mǎn)時(shí),所述步驟d1和d2之間還包括選擇最早被存儲(chǔ)到所述存儲(chǔ)地址空間中的信息項(xiàng)所在的位置作為所述從第一存儲(chǔ)器中查詢(xún)的轉(zhuǎn)發(fā)信息以及與該轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)位置。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果本發(fā)明將已轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息存儲(chǔ)在第二存儲(chǔ)器中,并通過(guò)查詢(xún)控制單元對(duì)待轉(zhuǎn)發(fā)信息的查詢(xún)進(jìn)行控制,當(dāng)接收到待轉(zhuǎn)發(fā)報(bào)文時(shí),所述查詢(xún)控制單元首先查詢(xún)第二存儲(chǔ)器中是否存儲(chǔ)有待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,若是,則1到2個(gè)cycles就可以獲取查詢(xún)結(jié)果,否則,查詢(xún)用于存儲(chǔ)全部報(bào)文的轉(zhuǎn)發(fā)信息第一存儲(chǔ)器,因而,減少了報(bào)文的處理時(shí)間,減輕了第一存儲(chǔ)器的負(fù)擔(dān),提高了系統(tǒng)帶寬的利用率和處理性能。


圖1是現(xiàn)有技術(shù)轉(zhuǎn)發(fā)報(bào)文的裝置示意圖;圖2是現(xiàn)有技術(shù)查詢(xún)報(bào)文轉(zhuǎn)發(fā)信息的處理流程圖;
圖3是本發(fā)明實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置的組成示意圖;圖4是本發(fā)明第二存儲(chǔ)器內(nèi)沖突項(xiàng)的結(jié)構(gòu)關(guān)系示意圖;圖5是本發(fā)明實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置中的查詢(xún)控制單元具體實(shí)現(xiàn)第一實(shí)施例示意圖;圖6是本發(fā)明實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置中的查詢(xún)控制單元具體實(shí)現(xiàn)第二實(shí)施例示意圖;圖7是本發(fā)明實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置中的第二存儲(chǔ)器查詢(xún)判斷單元具體實(shí)現(xiàn)示意圖;圖8是本發(fā)明實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置中的存儲(chǔ)轉(zhuǎn)移控制單元具體實(shí)現(xiàn)第一
具體實(shí)施例方式
本發(fā)明的核心在于采用第二存儲(chǔ)器存儲(chǔ)已轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息并通過(guò)查詢(xún)控制單元對(duì)轉(zhuǎn)發(fā)信息的查詢(xún)進(jìn)行控制,查詢(xún)待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息時(shí),所述查詢(xún)控制單元首先查詢(xún)第二存儲(chǔ)器中是否存儲(chǔ)有待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,若是,則獲取第二存儲(chǔ)器存儲(chǔ)的所述轉(zhuǎn)發(fā)信息,否則,查詢(xún)用于存儲(chǔ)全部報(bào)文轉(zhuǎn)發(fā)信息的第一存儲(chǔ)器獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息并將所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ),從而減少了報(bào)文的處理時(shí)間,提高了系統(tǒng)帶寬的利用率和處理性能。
參考圖3,該圖是本發(fā)明實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置的組成示意圖,所述裝置主要包括接收待轉(zhuǎn)發(fā)報(bào)文的接收單元10;查詢(xún)所述待轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的查詢(xún)單元20,以及根據(jù)所述轉(zhuǎn)發(fā)信息發(fā)送待轉(zhuǎn)發(fā)報(bào)文的發(fā)送單元30,其中所述查詢(xún)單元包括第一存儲(chǔ)器21,用于存儲(chǔ)所有報(bào)文的轉(zhuǎn)發(fā)信息;第二存儲(chǔ)器22,用于存儲(chǔ)已轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;查詢(xún)控制單元23,查詢(xún)第二存儲(chǔ)器中是否存儲(chǔ)有待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,若是,則獲取第二存儲(chǔ)器存儲(chǔ)的所述轉(zhuǎn)發(fā)信息,否則,查詢(xún)第一存儲(chǔ)器獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息并將所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ)。
下面進(jìn)行詳細(xì)說(shuō)明,以第二存儲(chǔ)器采用現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA,F(xiàn)ieldprogrammable Gate Array)或者專(zhuān)門(mén)集成電路(ASIC,Application SpecificIntegrated Circuit)芯片的內(nèi)部緩存為例,所述第二存儲(chǔ)器除存儲(chǔ)有轉(zhuǎn)發(fā)信息外還存儲(chǔ)有用于查詢(xún)待轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的連接索引和查詢(xún)關(guān)鍵字,所述第一存儲(chǔ)器為現(xiàn)有技術(shù),這里不再詳細(xì)說(shuō)明。
所述第二存儲(chǔ)器存儲(chǔ)能力受限于FPGA或ASIC內(nèi)部可用RAM資源,因此當(dāng)前一般不可能做到連接索引和Key值的一個(gè)線(xiàn)性存儲(chǔ),比如連接索引14bit,IP地址32bit,要做到線(xiàn)性,則需要246的存儲(chǔ)空間,當(dāng)前是不可能的,需要收斂,因此所述第二存儲(chǔ)器采用哈希(Hash)算法進(jìn)行設(shè)計(jì),Hash算法可以采用循環(huán)冗余檢驗(yàn)(CRC,Cyclic Redundancy Check),比特(Bit)異或等,或其它Hash算法,主要是提供一個(gè)收斂功能??紤]到Hash沖突(沖突是不可避免的,因?yàn)榈诙鎯?chǔ)器的大小遠(yuǎn)小于第一存儲(chǔ)器),每個(gè)地址存放多個(gè)連接索引、Key值及轉(zhuǎn)發(fā)信息,一個(gè)連接索引、Key值和轉(zhuǎn)發(fā)信息稱(chēng)為一項(xiàng)沖突項(xiàng),一般一個(gè)查詢(xún)地址至少包含兩項(xiàng)沖突項(xiàng),具體的沖突項(xiàng)的數(shù)量受限于FPGA或ASIC內(nèi)部可用RAM資源情況。如圖4,該圖是所述第二存儲(chǔ)器內(nèi)沖突項(xiàng)的結(jié)構(gòu)關(guān)系示意圖,以所述第二存儲(chǔ)器中一個(gè)地址空間存儲(chǔ)三項(xiàng)沖突項(xiàng)為例,所述沖突項(xiàng)具體包括如下字段Valid讀數(shù)據(jù)有效信號(hào);學(xué)習(xí)-Ind為學(xué)習(xí)指針,用于指示將從第一存儲(chǔ)器查詢(xún)獲取的所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ)的存儲(chǔ)位置;轉(zhuǎn)發(fā)信息項(xiàng),用于存儲(chǔ)從第一存儲(chǔ)器查詢(xún)待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;Pvc_idx永久虛連接連接索引;Key查詢(xún)關(guān)鍵字。
當(dāng)?shù)诙鎯?chǔ)器查詢(xún)轉(zhuǎn)發(fā)信息時(shí),通過(guò)待轉(zhuǎn)發(fā)信息的連接索引Pvc_idx和查詢(xún)關(guān)鍵字Key進(jìn)行Hash來(lái)獲取第二存儲(chǔ)器的查詢(xún)地址,并將所述第二存儲(chǔ)器的查詢(xún)地址中的三個(gè)沖突項(xiàng)在一個(gè)時(shí)鐘周期中讀出,然后將所述待轉(zhuǎn)發(fā)報(bào)文的Pvc-idx和Key與讀數(shù)據(jù)有效信號(hào)(Valid)的沖突項(xiàng)的連接索引Pvc-idx和Key進(jìn)行比較,獲取與所述待轉(zhuǎn)發(fā)報(bào)文的Pvc-idx和Key完全一致的沖突項(xiàng),進(jìn)而獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息。
當(dāng)將從第一存儲(chǔ)器查詢(xún)獲取的所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ)時(shí),通過(guò)有效學(xué)習(xí)-Ind指針在三個(gè)沖突項(xiàng)中循環(huán)右移,將所述從第一存儲(chǔ)器查詢(xún)的存轉(zhuǎn)發(fā)信息緩存到所述第二存儲(chǔ)器的存儲(chǔ)地址中進(jìn)行存儲(chǔ),這樣總是覆蓋最老的沖突項(xiàng)。
參考圖5,該圖是本發(fā)明實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置中的查詢(xún)控制單元具體實(shí)現(xiàn)第一實(shí)施例示意圖,所述查詢(xún)控制單元可包括第二存儲(chǔ)器查詢(xún)判斷單元232,用于判斷第二存儲(chǔ)器中是否存儲(chǔ)有待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,并在判斷為是后獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;第一存儲(chǔ)器查詢(xún)判斷單元231,在第二存儲(chǔ)器查詢(xún)判斷單元判斷為否后,查詢(xún)第一存儲(chǔ)器獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;存儲(chǔ)轉(zhuǎn)移控制單元233,用于將從第一存儲(chǔ)器查詢(xún)獲取的所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ)。
參考圖6,該圖是本發(fā)明實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置中的查詢(xún)控制單元具體實(shí)現(xiàn)第二實(shí)施例示意圖。
本實(shí)施例考慮到在實(shí)際應(yīng)用中存儲(chǔ)于第一存儲(chǔ)器中的信息項(xiàng)可能由于軟件的修改而動(dòng)態(tài)改變,因此需要對(duì)存儲(chǔ)于第二存儲(chǔ)器中的信息項(xiàng)進(jìn)行定期的老化處理,所述老化處理為將第二存儲(chǔ)中的所有信息項(xiàng)置為無(wú)效,以防止第一存儲(chǔ)器與第二存儲(chǔ)器相對(duì)于同一報(bào)文的轉(zhuǎn)發(fā)信息不一致的現(xiàn)象。老化的時(shí)間間隔越長(zhǎng),對(duì)第一存儲(chǔ)器的訪(fǎng)問(wèn)次數(shù)就越少,但同時(shí)兩個(gè)存儲(chǔ)器內(nèi)的轉(zhuǎn)發(fā)信息不一致的時(shí)間就越長(zhǎng),因此可以配置用于設(shè)計(jì)老化時(shí)間長(zhǎng)度的軟件,這樣可以根據(jù)用戶(hù)的需要,通過(guò)修改相應(yīng)的設(shè)置來(lái)設(shè)定不同的老化時(shí)間長(zhǎng)度實(shí)現(xiàn)定期老化。另外所述老化軟件也可以設(shè)計(jì)一個(gè)快速老化標(biāo)志,由軟件進(jìn)行觸發(fā),在不影響報(bào)文處理的情況下以最快的速度老化,完成老化處理后硬件再自動(dòng)切換到正常老化時(shí)間長(zhǎng)度,達(dá)到快速老化的要求。具體實(shí)現(xiàn)時(shí),本實(shí)施例中所述查詢(xún)控制單元同樣包括第二存儲(chǔ)器查詢(xún)判斷單元232,用于判斷第二存儲(chǔ)器中是否存儲(chǔ)有待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,并在判斷為是后獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;第一存儲(chǔ)器查詢(xún)判斷單元231,在第二存儲(chǔ)器查詢(xún)判斷單元判斷為否后,查詢(xún)第一存儲(chǔ)器獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;
存儲(chǔ)轉(zhuǎn)移控制單元233,用于將從第一存儲(chǔ)器查詢(xún)獲取的所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ)。
另外,與第一實(shí)施例不同的,本實(shí)施例中所述查詢(xún)控制單元還包括第二存儲(chǔ)器控制單元234,用于直接或按照預(yù)設(shè)的間隔時(shí)間將所述第二存儲(chǔ)器的所有轉(zhuǎn)發(fā)信息項(xiàng)置為無(wú)效。
參考圖7,該圖是本發(fā)明實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置中的第二存儲(chǔ)器查詢(xún)判斷單元具體實(shí)現(xiàn)示意圖,所述第二存儲(chǔ)器查詢(xún)判斷單元可包括報(bào)文信息獲取單元2321,用于獲取待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字;查詢(xún)地址確定單元2322,用于根據(jù)獲取的待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定查詢(xún)待轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的查詢(xún)地址;信息項(xiàng)獲取單元2323,用于獲取所述查詢(xún)地址空間中存儲(chǔ)的所有信息項(xiàng);查詢(xún)結(jié)果獲取單元2324,用于檢測(cè)所述獲取的查詢(xún)地址空間中存儲(chǔ)的各信息項(xiàng)中的連接索引和查詢(xún)關(guān)鍵字與所述待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字是否一致,并在判斷為是后,獲取與所述待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字一致的信息項(xiàng)。
參考圖8,該圖是本發(fā)明實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置中的存儲(chǔ)轉(zhuǎn)移控制單元具體實(shí)現(xiàn)第一實(shí)施例示意圖,所述存儲(chǔ)轉(zhuǎn)移控制單元包括存儲(chǔ)地址確定單元2331,用于根據(jù)待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定第二存儲(chǔ)器中用于存儲(chǔ)從第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)地址;轉(zhuǎn)移控制單元2332,用于控制將從所述第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字緩存到所述確定的第二存儲(chǔ)器的存儲(chǔ)地址空間中進(jìn)行存儲(chǔ)。
參考圖9,該圖是本發(fā)明實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置中的存儲(chǔ)轉(zhuǎn)移控制單元具體實(shí)現(xiàn)第二實(shí)施例示意圖。
具體實(shí)現(xiàn)時(shí),本實(shí)施例中所述存儲(chǔ)轉(zhuǎn)移單元同樣包括存儲(chǔ)地址確定單元2331,用于根據(jù)待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定第二存儲(chǔ)器中用于存儲(chǔ)從第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)地址;轉(zhuǎn)移控制單元2332,用于控制將從所述第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字緩存到所述確定的第二存儲(chǔ)器的存儲(chǔ)地址空間中進(jìn)行存儲(chǔ)。
另外,與第一實(shí)施例不同的,本實(shí)施例中所述存儲(chǔ)轉(zhuǎn)移控制單元還包括選擇單元2333,當(dāng)用于存儲(chǔ)從第一存儲(chǔ)器查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的所述存儲(chǔ)地址空間已經(jīng)被存滿(mǎn)時(shí),選擇最早被存儲(chǔ)到所述存儲(chǔ)地址空間內(nèi)的信息項(xiàng)所在的位置作為所述從第一存儲(chǔ)器中查詢(xún)的轉(zhuǎn)發(fā)信息以及與該查詢(xún)結(jié)果相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)位置。
下面說(shuō)明本發(fā)明的另一方面。
參考圖10,該圖是本發(fā)明一種實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的方法的處理流程圖。
步驟s1,等待接收?qǐng)?bào)文,并判斷是否有報(bào)文輸入,若判斷為是,則執(zhí)行步驟s2,否則,執(zhí)行步驟s5;步驟s2,查詢(xún)用于存儲(chǔ)已轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的第二存儲(chǔ)器中是否存儲(chǔ)有所述待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,若是,則步驟s3,否則,執(zhí)行步驟s7;步驟s3,獲取第二存儲(chǔ)器存儲(chǔ)的所述轉(zhuǎn)發(fā)信息;步驟s4,根據(jù)所述轉(zhuǎn)發(fā)信息發(fā)送待轉(zhuǎn)發(fā)報(bào)文;步驟s5,判斷預(yù)設(shè)的用于將第二存儲(chǔ)器中的所有信息項(xiàng)置為無(wú)效的間隔時(shí)間是否到達(dá),若判斷為是,執(zhí)行步驟s6,否則,返回步驟s1;
步驟s6,將所述第二存儲(chǔ)器的所有信息項(xiàng)置為無(wú)效;步驟s7,查詢(xún)用于存儲(chǔ)所有報(bào)文轉(zhuǎn)發(fā)信息的第一存儲(chǔ)器中是否存儲(chǔ)有所述待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,若判斷為是,則執(zhí)行步驟s8,否則,執(zhí)行步驟s10;步驟s8,獲取所述待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;步驟s9,將從第一存儲(chǔ)器查詢(xún)獲取的所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ),并執(zhí)行步驟s4;步驟s10,丟棄所接收的報(bào)文。
下面詳細(xì)敘述對(duì)第二存儲(chǔ)器進(jìn)行查詢(xún)和存儲(chǔ)的過(guò)程,不失一般性,以所述第二存儲(chǔ)器存儲(chǔ)有轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字為例。
參考圖11,該圖是本發(fā)明轉(zhuǎn)發(fā)報(bào)文的方法對(duì)第二存儲(chǔ)器進(jìn)行查詢(xún)的處理流程圖。
步驟s201,獲取待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字;步驟s202,根據(jù)獲取的待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定在第二存儲(chǔ)器中查詢(xún)待轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的查詢(xún)地址;步驟s203,獲取所述查詢(xún)地址空間中存儲(chǔ)的所有信息項(xiàng);步驟s204,檢測(cè)所述獲取的查詢(xún)地址空間中存儲(chǔ)的各信息項(xiàng)中的連接索引和查詢(xún)關(guān)鍵字與所述待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字是否一致,并在判斷為是后,獲取與所述待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字一致的信息項(xiàng)的轉(zhuǎn)發(fā)信息。
參考圖12,該圖是本發(fā)明轉(zhuǎn)發(fā)報(bào)文的方法中向第二存儲(chǔ)器中存儲(chǔ)信息的處理流程圖。
步驟s301,根據(jù)待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定第二存儲(chǔ)器中用于存儲(chǔ)從第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)地址;步驟s302,判斷用于存儲(chǔ)從第一存儲(chǔ)器查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的所述存儲(chǔ)地址空間已經(jīng)被存滿(mǎn),若是,則執(zhí)行,步驟s303,否則,執(zhí)行步驟s304;步驟s303,選擇最早被存儲(chǔ)到所述存儲(chǔ)地址空間內(nèi)的信息項(xiàng)所在的位置作為所述從第一存儲(chǔ)器中查詢(xún)的轉(zhuǎn)發(fā)信息以及與該轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)位置;步驟s304,將從所述第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字緩存到所述確定的存儲(chǔ)地址空間中進(jìn)行存儲(chǔ)。
另外,對(duì)第一存儲(chǔ)進(jìn)行查詢(xún)的處理方法是現(xiàn)有技術(shù),此處不再進(jìn)行詳細(xì)說(shuō)明。
以上所述公開(kāi)的是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以作出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置,包括接收待轉(zhuǎn)發(fā)報(bào)文的接收單元;查詢(xún)所述待轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的查詢(xún)單元,以及根據(jù)所述查詢(xún)獲取的轉(zhuǎn)發(fā)信息發(fā)送待轉(zhuǎn)發(fā)報(bào)文的發(fā)送單元,其特征在于,所述查詢(xún)單元包括第一存儲(chǔ)器,用于存儲(chǔ)所有報(bào)文的轉(zhuǎn)發(fā)信息;第二存儲(chǔ)器,用于存儲(chǔ)已轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;查詢(xún)控制單元,查詢(xún)第二存儲(chǔ)器中是否存儲(chǔ)有待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,若是,則獲取第二存儲(chǔ)器存儲(chǔ)的所述轉(zhuǎn)發(fā)信息,否則,查詢(xún)第一存儲(chǔ)器獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息并將所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ)。
2.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置,其特征在于,所述查詢(xún)控制單元包括第二存儲(chǔ)器查詢(xún)判斷單元,用于判斷第二存儲(chǔ)器中是否存儲(chǔ)有待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,并在判斷為是后獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;第一存儲(chǔ)器查詢(xún)判斷單元,在第二存儲(chǔ)器查詢(xún)判斷單元判斷為否后,查詢(xún)第一存儲(chǔ)器獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息;存儲(chǔ)轉(zhuǎn)移控制單元,用于將從第一存儲(chǔ)器查詢(xún)獲取的所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ)。
3.根據(jù)權(quán)利要求2所述的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置,其特征在于,所述查詢(xún)控制單元還包括第二存儲(chǔ)器控制單元,用于直接或按照預(yù)設(shè)的間隔時(shí)間將第二存儲(chǔ)器中的所有轉(zhuǎn)發(fā)信息置為無(wú)效。
4.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置,其特征在于,所述第二存儲(chǔ)器還存儲(chǔ)有連接索引和查詢(xún)關(guān)鍵字信息,所述第二存儲(chǔ)器查詢(xún)判斷單元包括報(bào)文信息獲取單元,用于獲取待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字;查詢(xún)地址確定單元,用于根據(jù)獲取的待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定在第二存儲(chǔ)器查詢(xún)待轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的查詢(xún)地址;信息項(xiàng)獲取單元,用于獲取所述查詢(xún)地址空間中第二存儲(chǔ)器存儲(chǔ)的所有信息項(xiàng);查詢(xún)結(jié)果獲取單元,用于檢測(cè)所述獲取的所有信息項(xiàng)中的連接索引和查詢(xún)關(guān)鍵字與所述待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字是否一致,并在判斷為是后,獲取與所述待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字一致的信息項(xiàng)中的轉(zhuǎn)發(fā)信息。
5.根據(jù)權(quán)利要求4所述的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置,其特征在于,所述存儲(chǔ)轉(zhuǎn)移控制單元包括存儲(chǔ)地址確定單元,用于根據(jù)待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定第二存儲(chǔ)器中用于存儲(chǔ)從第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)地址;轉(zhuǎn)移控制單元,用于控制將從所述第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字緩存到所述確定的第二存儲(chǔ)器的存儲(chǔ)地址空間中進(jìn)行存儲(chǔ)。
6.根據(jù)權(quán)利要求5所述的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置,其特征在于,所述存儲(chǔ)轉(zhuǎn)移控制單元還包括選擇單元,當(dāng)用于存儲(chǔ)從第一存儲(chǔ)器查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的所述存儲(chǔ)地址空間已經(jīng)被存滿(mǎn)時(shí),選擇最早被存儲(chǔ)到所述存儲(chǔ)地址空間中的信息項(xiàng)所在的位置作為所述從第一存儲(chǔ)器中查詢(xún)的轉(zhuǎn)發(fā)信息以及與該轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)位置。
7.根據(jù)權(quán)利要求1-6任一項(xiàng)所述的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置,其特征在于,所述第一存儲(chǔ)器采用共享媒質(zhì),所述共享媒質(zhì)為同步靜態(tài)隨機(jī)存儲(chǔ)器,所述第二存儲(chǔ)器采用現(xiàn)場(chǎng)可編程門(mén)陣列或者專(zhuān)用集成電路芯片的內(nèi)部緩存。
8.根據(jù)權(quán)利要求7所述的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置,其特征在于,所述連接索引為永久虛連接索引,所述查詢(xún)關(guān)鍵字包括報(bào)文的互聯(lián)網(wǎng)協(xié)議地址,介質(zhì)訪(fǎng)問(wèn)地址,虛擬局域網(wǎng)地址。
9.一種實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的方法,用于上述權(quán)利要求1-8所述的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置中,其特征在于,包括如下步驟a、接收待轉(zhuǎn)發(fā)報(bào)文;b、查詢(xún)用于存儲(chǔ)已轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的第二存儲(chǔ)器中是否存儲(chǔ)有所述待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,若是,則獲取第二存儲(chǔ)器存儲(chǔ)的所述轉(zhuǎn)發(fā)信息,執(zhí)行e,否則,執(zhí)行c;c、查詢(xún)用于存儲(chǔ)所有報(bào)文轉(zhuǎn)發(fā)信息的第一存儲(chǔ)器中是否存儲(chǔ)有所述待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,并在判斷為是后,獲取所述待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,并執(zhí)行d;d、將從第一存儲(chǔ)器查詢(xún)獲取的所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ),然后執(zhí)行e;e、根據(jù)所述轉(zhuǎn)發(fā)信息發(fā)送待轉(zhuǎn)發(fā)報(bào)文。
10.根據(jù)權(quán)利要求9所述的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的方法,其特征在于,所述步驟a之前還包括a1、判斷是否有報(bào)文輸入,若是,則執(zhí)行a;否則,執(zhí)行a2;a2、判斷預(yù)設(shè)的用于將第二存儲(chǔ)器中的所有信息項(xiàng)置為無(wú)效的間隔時(shí)間是否到達(dá),并在判斷為是后,將所述第二存儲(chǔ)器中的所有信息項(xiàng)置為無(wú)效。
11.根據(jù)權(quán)利要10所述的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的方法,其特征在于,所述第二存儲(chǔ)器還存儲(chǔ)有連接索引和查詢(xún)關(guān)鍵字信息,所述步驟b包括b1、獲取待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字;b2、根據(jù)獲取的待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定在第二存儲(chǔ)器查詢(xún)待轉(zhuǎn)發(fā)報(bào)文轉(zhuǎn)發(fā)信息的查詢(xún)地址;b3、獲取所述查詢(xún)地址空間中第二存儲(chǔ)器存儲(chǔ)的所有信息項(xiàng);b4、檢測(cè)所述獲取的所有信息項(xiàng)中的連接索引和查詢(xún)關(guān)鍵字與所述待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字是否一致,并在判斷為是后,獲取與所述待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字一致的信息項(xiàng)中的轉(zhuǎn)發(fā)信息。
12.根據(jù)權(quán)利要求11所述的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的方法,其特征在于,所述步驟d包括d1、根據(jù)待轉(zhuǎn)發(fā)報(bào)文的連接索引和查詢(xún)關(guān)鍵字,確定第二存儲(chǔ)器中用于存儲(chǔ)從第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)地址;d2、將從所述第一存儲(chǔ)器中查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字緩存到所述確定的第二存儲(chǔ)器的存儲(chǔ)地址空間中進(jìn)行存儲(chǔ)。
13.根據(jù)權(quán)利要求12所述的實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的方法,其特征在于,當(dāng)用于存儲(chǔ)從第一存儲(chǔ)器查詢(xún)獲取的轉(zhuǎn)發(fā)信息以及與所述轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的所述存儲(chǔ)地址空間已經(jīng)被存滿(mǎn)時(shí),所述步驟d1和d2之間還包括選擇最早被存儲(chǔ)到所述存儲(chǔ)地址空間中的信息項(xiàng)所在的位置作為所述從第一存儲(chǔ)器中查詢(xún)的轉(zhuǎn)發(fā)信息以及與該轉(zhuǎn)發(fā)信息相匹配的連接索引和查詢(xún)關(guān)鍵字的存儲(chǔ)位置。
全文摘要
本發(fā)明公開(kāi)了一種實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的裝置,通過(guò)采用第二存儲(chǔ)器存儲(chǔ)已轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,第一存儲(chǔ)器存儲(chǔ)全部報(bào)文的轉(zhuǎn)發(fā)信息,并通過(guò)查詢(xún)控制單元對(duì)轉(zhuǎn)發(fā)信息的查詢(xún)進(jìn)行控制,當(dāng)接收到待轉(zhuǎn)發(fā)報(bào)文時(shí),所述查詢(xún)控制單元首先查詢(xún)第二存儲(chǔ)器中是否存儲(chǔ)有待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,若是,則獲取第二存儲(chǔ)器存儲(chǔ)的所述轉(zhuǎn)發(fā)信息,否則,查詢(xún)第一存儲(chǔ)器獲取待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息并將所述轉(zhuǎn)發(fā)信息緩存到第二存儲(chǔ)器中進(jìn)行存儲(chǔ),進(jìn)而獲取所述待轉(zhuǎn)發(fā)報(bào)文的轉(zhuǎn)發(fā)信息,最終實(shí)現(xiàn)報(bào)文的轉(zhuǎn)發(fā)。另外,本發(fā)明還公開(kāi)了一種相應(yīng)的方法。本發(fā)明減少了對(duì)報(bào)文進(jìn)行處理的時(shí)間,提高了系統(tǒng)帶寬的利用率和處理性能。
文檔編號(hào)H04L12/56GK1859293SQ20051012134
公開(kāi)日2006年11月8日 申請(qǐng)日期2005年12月30日 優(yōu)先權(quán)日2005年12月30日
發(fā)明者羅俊, 伊學(xué)文 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
鹤庆县| 凤冈县| 马尔康县| 巴林右旗| 平罗县| 平安县| 卓资县| 海林市| 九龙县| 左权县| 长丰县| 东方市| 安达市| 淮滨县| 柘城县| 三明市| 文登市| 盘锦市| 永川市| 班戈县| 泽库县| 昌乐县| 清流县| 合江县| 浮山县| 柏乡县| 南宫市| 海门市| 馆陶县| 大田县| 温州市| 龙门县| 白河县| 克拉玛依市| 邵阳县| 武安市| 日照市| 泾阳县| 东台市| 池州市| 县级市|