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

多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法

文檔序號(hào):9474215閱讀:428來源:國(guó)知局
多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,特別是涉及一種多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法。
【背景技術(shù)】
[0002]數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)性能是產(chǎn)品競(jìng)爭(zhēng)時(shí)的一個(gè)非常重要的指標(biāo),通過提升數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)性能可以有效提升產(chǎn)品的競(jìng)爭(zhēng)力。
[0003]現(xiàn)有技術(shù)中,數(shù)通產(chǎn)品為了提高數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)性能,如吞吐量,會(huì)采用包含多個(gè)內(nèi)核的多核平臺(tái)。但是,多核平臺(tái)存在以下缺陷:
[0004]I)需要加鎖防止并發(fā);
[0005]2)板卡能集合的核數(shù)有限制。
[0006]因此,如何在多核平臺(tái)的基礎(chǔ)上再提升數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)性能以達(dá)到運(yùn)營(yíng)商或廠家的要求,則成為當(dāng)前亟待解決的問題。
[0007]現(xiàn)有技術(shù)中,通過以下方式來多核平臺(tái)下數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)性能:
[0008]I)直接更換更高效的核數(shù)更多的硬件平臺(tái)
[0009]這種方法雖然可以直接地提高數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)性能,但卻極大地提高成本預(yù)算,實(shí)用性較差。
[0010]2)通過堆加板卡數(shù)量來彌補(bǔ)單個(gè)板卡在數(shù)據(jù)轉(zhuǎn)發(fā)性能上的不足
[0011]但是,該方法需要處理多塊板卡之間的數(shù)據(jù)同步問題,即要解決類似分布式系統(tǒng)的問題,從而增加了更多的人力成本和資源成本。

【發(fā)明內(nèi)容】

[0012]鑒于以上所述現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的目的在于提供一種多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法,無需花費(fèi)更多的成本去更換更高效的硬件平臺(tái),僅通過算法上的處理即可提升數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)性能,實(shí)用性強(qiáng)。
[0013]為實(shí)現(xiàn)上述目的及其他相關(guān)目的,本發(fā)明提供一種多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法包括:1)在數(shù)據(jù)報(bào)文的第一次轉(zhuǎn)發(fā)處理過程中創(chuàng)建一個(gè)囊括所有轉(zhuǎn)發(fā)元素的快速轉(zhuǎn)發(fā)表;2)后續(xù)進(jìn)行的數(shù)據(jù)轉(zhuǎn)發(fā),通過查找所述快速轉(zhuǎn)發(fā)表來進(jìn)行。
[0014]根據(jù)上述的多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法,其中:通過在Linux內(nèi)核的HOOK點(diǎn)上注冊(cè)快速轉(zhuǎn)發(fā)表的處理函數(shù)來創(chuàng)建快速轉(zhuǎn)發(fā)表。
[0015]根據(jù)上述的多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法,其中:所述快速轉(zhuǎn)發(fā)表是由數(shù)據(jù)報(bào)文的源IP、目的IP、源端口、目的端口和協(xié)議通過自由組合的方式生成關(guān)鍵字來創(chuàng)建的。
[0016]根據(jù)上述的多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法,其中:將所述快速轉(zhuǎn)發(fā)表的創(chuàng)建注冊(cè)到數(shù)據(jù)轉(zhuǎn)發(fā)的普通處理流程所需要經(jīng)過的鏈路上之后,只要開啟了快速轉(zhuǎn)發(fā)處理功能,則數(shù)據(jù)報(bào)文在第一次轉(zhuǎn)發(fā)時(shí)就會(huì)創(chuàng)建快速轉(zhuǎn)發(fā)表。
[0017]根據(jù)上述的多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法,其中:創(chuàng)建的所述快速轉(zhuǎn)發(fā)表存儲(chǔ)在多核平臺(tái)的共享內(nèi)存中。
[0018]進(jìn)一步地,根據(jù)上述的多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法,其中:每個(gè)內(nèi)核需要應(yīng)用快速轉(zhuǎn)發(fā)表的時(shí)候,需要先拷貝一份快速轉(zhuǎn)發(fā)表到當(dāng)前內(nèi)核所獨(dú)有的隊(duì)列中。
[0019]根據(jù)上述的多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法,其中:一次數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)的流程包括以下步驟:
[0020]步驟S1、接收數(shù)據(jù)報(bào)文;
[0021]步驟S2、判斷是否開啟了數(shù)據(jù)報(bào)文的快速轉(zhuǎn)發(fā)處理功能;若否,按照普通流程進(jìn)行數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā);若是,轉(zhuǎn)入步驟S3 ;
[0022]步驟S3、判斷當(dāng)前內(nèi)核的私有內(nèi)存中是否包含快速轉(zhuǎn)發(fā)表;若是,直接使用快速轉(zhuǎn)發(fā)表進(jìn)行數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā);若否,轉(zhuǎn)入步驟S4 ;
[0023]步驟S4、判斷多核平臺(tái)的共享內(nèi)存中是否包含快速轉(zhuǎn)發(fā)表;若是,將共享內(nèi)存中的快速轉(zhuǎn)發(fā)表拷貝到當(dāng)前內(nèi)核中,并使用快速轉(zhuǎn)發(fā)表進(jìn)行數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā);若否,轉(zhuǎn)入步驟S5 ;
[0024]步驟S5、判斷多核平臺(tái)的共享內(nèi)存中是否包含未完成的快速轉(zhuǎn)發(fā)表;若是,完善快速轉(zhuǎn)發(fā)表,轉(zhuǎn)入步驟S4 ;若否,轉(zhuǎn)入步驟S6 ;
[0025]步驟S6、在多核平臺(tái)的共享內(nèi)存中創(chuàng)建未完成的快速轉(zhuǎn)發(fā)表,轉(zhuǎn)入步驟S5。
[0026]如上所述,本發(fā)明的多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法,具有以下有益效果:
[0027](I)數(shù)據(jù)報(bào)文在第一次轉(zhuǎn)發(fā)處理過程中創(chuàng)建一個(gè)囊括所有轉(zhuǎn)發(fā)元素的快速轉(zhuǎn)發(fā)表,后續(xù)的轉(zhuǎn)發(fā)只需要查找該快速轉(zhuǎn)發(fā)表即可;
[0028](2)根據(jù)數(shù)據(jù)報(bào)文的五元組,即源IP、目的IP、源端口、目的端口和協(xié)議,自由組合成關(guān)鍵字創(chuàng)建數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)時(shí)的快速轉(zhuǎn)發(fā)表;
[0029](3)利用Linux內(nèi)核的HOOK思想,把快速轉(zhuǎn)發(fā)表的創(chuàng)建注冊(cè)到普通處理流程所需要經(jīng)過的鏈路上;只要開啟了快速轉(zhuǎn)發(fā)處理,則數(shù)據(jù)報(bào)文在第一次轉(zhuǎn)發(fā)時(shí)就會(huì)創(chuàng)建快速轉(zhuǎn)發(fā)表;
[0030](4)利用多核處理機(jī)制,快速轉(zhuǎn)發(fā)表創(chuàng)建時(shí)存儲(chǔ)在一個(gè)共享內(nèi)存中,但每個(gè)內(nèi)核應(yīng)用的時(shí)候先拷貝一份到當(dāng)前內(nèi)核所獨(dú)有的隊(duì)列中,使得每個(gè)內(nèi)核在轉(zhuǎn)發(fā)快速查找轉(zhuǎn)發(fā)表時(shí)不需要加鎖,以提高處理效率。
【附圖說明】
[0031]圖1顯示為L(zhǎng)inux的每一層協(xié)議的五個(gè)HOOK點(diǎn)及注冊(cè)處理函數(shù);
[0032]圖2顯示為多核數(shù)據(jù)存儲(chǔ)模型的結(jié)構(gòu)示意圖;
[0033]圖3顯示為本發(fā)明的多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法的一個(gè)實(shí)施例的流程圖。
【具體實(shí)施方式】
[0034]以下通過特定的具體實(shí)例說明本發(fā)明的實(shí)施方式,本領(lǐng)域技術(shù)人員可由本說明書所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點(diǎn)與功效。本發(fā)明還可以通過另外不同的【具體實(shí)施方式】加以實(shí)施或應(yīng)用,本說明書中的各項(xiàng)細(xì)節(jié)也可以基于不同觀點(diǎn)與應(yīng)用,在沒有背離本發(fā)明的精神下進(jìn)行各種修飾或改變。
[0035]需要說明的是,本實(shí)施例中所提供的圖示僅以示意方式說明本發(fā)明的基本構(gòu)想,遂圖式中僅顯示與本發(fā)明中有關(guān)的組件而非按照實(shí)際實(shí)施時(shí)的組件數(shù)目、形狀及尺寸繪制,其實(shí)際實(shí)施時(shí)各組件的型態(tài)、數(shù)量及比例可為一種隨意的改變,且其組件布局型態(tài)也可能更為復(fù)雜。
[0036]參照?qǐng)D1,本發(fā)明的多核平臺(tái)下提高數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā)性能的方法包括:
[0037]I)在數(shù)據(jù)報(bào)文的第一次轉(zhuǎn)發(fā)處理過程中創(chuàng)建一個(gè)囊括所有轉(zhuǎn)發(fā)元素的快速轉(zhuǎn)發(fā)表。
[0038]具體地,通過在Linux內(nèi)核的HOOK點(diǎn)上注冊(cè)快速轉(zhuǎn)發(fā)表的處理函數(shù)來創(chuàng)建快速轉(zhuǎn)發(fā)表,從而無需修改Linux內(nèi)核代碼即可
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1