亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

緩沖區(qū)數(shù)的調(diào)整方法和裝置的制作方法

文檔序號(hào):7858589閱讀:437來(lái)源:國(guó)知局
專(zhuān)利名稱:緩沖區(qū)數(shù)的調(diào)整方法和裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信技術(shù),尤其涉及一種緩沖區(qū)數(shù)的調(diào)整方法和裝置。
背景技術(shù)
網(wǎng)絡(luò)設(shè)備(如交換機(jī)、路由器、防火墻和網(wǎng)關(guān)等)作為計(jì)算機(jī)互連的數(shù)據(jù)交換節(jié)點(diǎn),其數(shù)據(jù)轉(zhuǎn)發(fā)性能決定了整個(gè)網(wǎng)絡(luò)的質(zhì)量。隨著用戶連接數(shù)的急劇增長(zhǎng)和各種高帶寬應(yīng)用的出現(xiàn),主頻提升受限的單核處理器越來(lái)越難以滿足高速數(shù)據(jù)轉(zhuǎn)發(fā)網(wǎng)絡(luò)設(shè)備的性能需求,而多核處理器憑借其較低成本的可擴(kuò)展能力和并行計(jì)算的特性,逐漸在網(wǎng)絡(luò)通信領(lǐng)域得到廣泛應(yīng)用。所謂多核處理器,是指在一個(gè)硬件芯片上集成多個(gè)核心處理器(Core-CPU,簡(jiǎn)稱為Core),通常是共享內(nèi)存式結(jié)構(gòu)。多核處理器具備相對(duì)獨(dú)立的多個(gè)計(jì)算處理核心,可以并行地執(zhí)行報(bào)文轉(zhuǎn)發(fā)處理程序,報(bào)文轉(zhuǎn)發(fā)性能得到較大幅度提高,從而提高了系統(tǒng)整體的吞吐率。但是,多核處理器由于共享許多硬件和軟件資源,在數(shù)據(jù)轉(zhuǎn)發(fā)繁忙時(shí),如何減少彼此之間的相互等待,充分發(fā)揮并行處理能力卻有很大挑戰(zhàn)。再者,由于各個(gè)Core處理一個(gè)報(bào)文·的時(shí)長(zhǎng)是隨機(jī)的,若不采用專(zhuān)門(mén)技術(shù)有可能造成先進(jìn)入設(shè)備轉(zhuǎn)發(fā)序列的報(bào)文,反而后到達(dá)輸出序列,出現(xiàn)報(bào)文亂序現(xiàn)象。對(duì)于同一條數(shù)據(jù)流,相關(guān)標(biāo)準(zhǔn)是不允許出現(xiàn)報(bào)文亂序的。為了提高處理并行性,網(wǎng)絡(luò)設(shè)備常采用典型的流水線技術(shù)。采用流水線技術(shù),典型的報(bào)文處理流程為將報(bào)文散列到各條流水線,同一條數(shù)據(jù)流的報(bào)文通常散列到同一條流水線,流水線對(duì)報(bào)文處理完成后,再分發(fā)到各個(gè)報(bào)文隊(duì)列,最后經(jīng)由出接口從物理線路發(fā)送出去。若采用傳統(tǒng)標(biāo)準(zhǔn)流水線技術(shù),不僅要求將報(bào)文均衡散列到各條流水線,為了避免單條流水線出現(xiàn)性能瓶頸,還要求能夠?qū)Ω骷?jí)任務(wù)進(jìn)行均衡劃分。在改進(jìn)流水線方案中,流水線各級(jí)處理任務(wù)不再與固定Core綁定,且各級(jí)處理任務(wù)的劃分也不必完全均衡,盡管改進(jìn)流水線方案可以提高報(bào)文轉(zhuǎn)發(fā)模型的平臺(tái)適應(yīng)性,但由于各個(gè)處理器核亂序調(diào)度各條流水線的不同處理階段,會(huì)增加緩存不命中(Cache Miss)率,影響設(shè)備轉(zhuǎn)發(fā)性能。為了降低Cache Miss率,現(xiàn)有技術(shù)中除了采用常規(guī)的優(yōu)化數(shù)據(jù)結(jié)構(gòu)和程序設(shè)計(jì)等方法外,另一個(gè)對(duì)網(wǎng)絡(luò)設(shè)備性能影響非常大的是報(bào)文緩沖區(qū)的設(shè)計(jì)?,F(xiàn)有技術(shù)中通常采用靜態(tài)設(shè)置的方式來(lái)設(shè)置報(bào)文緩沖區(qū)數(shù)量,通過(guò)分配充足的內(nèi)存空閑作為報(bào)文緩沖區(qū),從而提聞報(bào)文處理效率。然而,現(xiàn)有技術(shù)中的設(shè)置方式通常不能滿足各種網(wǎng)絡(luò)設(shè)備的需求,且過(guò)量的報(bào)文緩沖區(qū)設(shè)計(jì)會(huì)導(dǎo)致Cache Miss率的增加,降低網(wǎng)絡(luò)設(shè)備的轉(zhuǎn)發(fā)性能。

發(fā)明內(nèi)容
本發(fā)明提供一種緩沖區(qū)數(shù)的調(diào)整方法和裝置,通過(guò)動(dòng)態(tài)調(diào)整報(bào)文緩沖區(qū)的數(shù)量,適應(yīng)各種網(wǎng)絡(luò)設(shè)備的需求,避免因報(bào)文緩沖區(qū)的過(guò)多設(shè)置而造成Cache Miss率的增加,提高網(wǎng)絡(luò)設(shè)備的轉(zhuǎn)發(fā)性能。本發(fā)明的第一個(gè)方面是提供一種緩沖區(qū)數(shù)的調(diào)整方法,包括根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲取報(bào)文緩沖區(qū)數(shù)閾值;根據(jù)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和所述報(bào)文緩沖區(qū)數(shù)閾值,調(diào)整報(bào)文緩沖區(qū)數(shù)。本發(fā)明的另一個(gè)方面是提供一種緩沖區(qū)數(shù)的調(diào)整裝置,包括獲取模塊,用于根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲取報(bào)文緩沖區(qū)數(shù)閾值;調(diào)整模塊,用于根據(jù)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和所述報(bào)文緩沖區(qū)數(shù)閾值,調(diào)整報(bào)文緩沖區(qū)數(shù)。本發(fā)明的技術(shù)效果是根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲取報(bào)文緩沖區(qū)數(shù)閾值, 根據(jù)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和所述報(bào)文緩沖區(qū)數(shù)閾值,調(diào)整報(bào)文緩沖區(qū)數(shù);本實(shí)施例通過(guò)動(dòng)態(tài)調(diào)整報(bào)文緩沖區(qū)的數(shù)量,以適應(yīng)各種網(wǎng)絡(luò)設(shè)備的需求,避免了因報(bào)文緩沖區(qū)的過(guò)多設(shè)置而造成Cache Miss率的增加,提高了網(wǎng)絡(luò)設(shè)備的轉(zhuǎn)發(fā)性能。


圖I為本發(fā)明緩沖區(qū)數(shù)的調(diào)整方法實(shí)施例一的流程圖;圖2為本發(fā)明緩沖區(qū)數(shù)的調(diào)整方法實(shí)施例二的流程圖;圖3為本發(fā)明緩沖區(qū)數(shù)的調(diào)整方法實(shí)施例二中多核處理器芯片的功能模塊示意圖;圖4為本發(fā)明緩沖區(qū)數(shù)的調(diào)整裝置實(shí)施例一的結(jié)構(gòu)示意圖;圖5為本發(fā)明緩沖區(qū)數(shù)的調(diào)整裝置實(shí)施例二的結(jié)構(gòu)示意圖。
具體實(shí)施例方式此處先對(duì)本發(fā)明所涉及的某些技術(shù)概念進(jìn)行簡(jiǎn)單介紹。緩存命中(Cache Hit)是指訪問(wèn)指令與數(shù)據(jù)存放在高速緩存中,Cache Miss是指指訪問(wèn)指令與數(shù)據(jù)未存放在高速緩存中。采用馮.諾伊曼體系架構(gòu)設(shè)計(jì)的計(jì)算機(jī)(也是目前高性能網(wǎng)絡(luò)處理器多數(shù)采用的硬件體系結(jié)構(gòu)),由于其處理器主頻速度的增長(zhǎng)數(shù)倍于存儲(chǔ)設(shè)備的訪存速度增長(zhǎng),因而兩者之間產(chǎn)生了巨大的差距。為了弱化兩者速度不匹配所帶來(lái)的計(jì)算瓶頸問(wèn)題,幾乎所有處理器都引入了高速緩存技術(shù),即在內(nèi)存與處理器核之間引入I級(jí)、2級(jí),甚至3級(jí)、4級(jí)高速緩存單元,不同處理器實(shí)現(xiàn)的級(jí)數(shù)有一定差異。但高速緩存單元的容量相比于內(nèi)存空間來(lái)說(shuō),是非常有限的,通常都只有幾M(兆)字節(jié),甚至幾K (千)字節(jié)。若處理器核執(zhí)行指令和加工數(shù)據(jù)時(shí),這些數(shù)據(jù)都存放在高速緩存中,則其執(zhí)行速率可接近主頻速率。否則,若還需要從內(nèi)存、甚至外部存儲(chǔ)設(shè)備加載,則處理器核需要等待非常長(zhǎng)的時(shí)間才能繼續(xù)往下執(zhí)行。當(dāng)訪問(wèn)的指令與數(shù)據(jù)存放在高速緩存中時(shí),被稱為Cache Hit,否則被稱為Cache Miss0 CacheHit率越高,則代碼執(zhí)行速度越快,處理器資源利用率越高;反之,Cache Miss率越高,則代碼執(zhí)行速度越慢,處理器資源浪費(fèi)越大。由于高速緩存空間有限,因而在代碼執(zhí)行過(guò)程中,不論是指令緩存(Instruction Cache ;以下簡(jiǎn)稱I_Cache)還是數(shù)據(jù)緩存(Data Cache ;以下簡(jiǎn)稱D-Cache)都需要經(jīng)常與內(nèi)存之間進(jìn)行內(nèi)容置換。由于高速緩沖空間遠(yuǎn)遠(yuǎn)小于內(nèi)存空間,因此硬件設(shè)計(jì)時(shí)會(huì)對(duì)高速緩存空間進(jìn)行單元?jiǎng)澐郑Q為緩存行(Cache Line),并采用多路映射方式進(jìn)行置換,即多個(gè)內(nèi)存地址單元按照固定規(guī)則映射到同一個(gè)或多個(gè)緩存行。
在內(nèi)容置換時(shí),一次置換一個(gè)Cache單兀-Cache Line。例如,若Cache Line大小為128
字節(jié),則置換時(shí)將進(jìn)行128字節(jié)的整體性置換。若數(shù)據(jù)組織的不好,或執(zhí)行指令跳轉(zhuǎn)不存在規(guī)律,就會(huì)產(chǎn)生較高的Cache Miss率,執(zhí)行速度就會(huì)下降,對(duì)網(wǎng)絡(luò)設(shè)備上來(lái)說(shuō)就會(huì)降低數(shù)據(jù)轉(zhuǎn)發(fā)性能。報(bào)文緩沖區(qū)通常在報(bào)文接收和中間處理過(guò)程中用于對(duì)報(bào)文數(shù)據(jù)的臨時(shí)存儲(chǔ),并在報(bào)文處理完成后(如被從接口發(fā)送出去或者被網(wǎng)絡(luò)設(shè)備丟棄)被回收,重新放置在報(bào)文緩沖 區(qū)。對(duì)于緩沖區(qū)的管理有軟件管理,也有硬件管理,同時(shí)受限于高速緩存空間大小,在網(wǎng)絡(luò)通用處理器中只能分配內(nèi)存空間作為報(bào)文緩沖區(qū)。把內(nèi)存空間作為報(bào)文緩沖區(qū),若要對(duì)報(bào)文進(jìn)行路由及安全等業(yè)務(wù)處理,它們最終必然需要把整個(gè)報(bào)文或報(bào)文的局部加載到高速緩存中進(jìn)行業(yè)務(wù)處理的。根據(jù)高速緩存置換規(guī)則,在報(bào)文接收和后續(xù)報(bào)文處理過(guò)程中,可能會(huì)有一些報(bào)文緩沖區(qū)被映射到高速緩存中。若報(bào)文從接收一開(kāi)始就被存放于映射到二級(jí)或三級(jí)高速緩存的報(bào)文緩沖區(qū),那么有可能會(huì)大大加快報(bào)文的處理速度,但其前提是在整個(gè)報(bào)文處理過(guò)程中不進(jìn)行或只進(jìn)行少數(shù)幾次的高速緩存與內(nèi)存之間的置換。通常,若內(nèi)存空間充足,則認(rèn)為報(bào)文緩沖區(qū)越大越好。但事實(shí)上,對(duì)報(bào)文進(jìn)行轉(zhuǎn)發(fā)處理過(guò)程中,若網(wǎng)絡(luò)設(shè)備需要的報(bào)文緩沖區(qū)數(shù)越大,也意味著在網(wǎng)絡(luò)設(shè)備中存儲(chǔ)的待轉(zhuǎn)發(fā)處理的報(bào)文越多,在網(wǎng)絡(luò)流速一定的情況下,表明網(wǎng)絡(luò)設(shè)備對(duì)報(bào)文的處理延遲越大。對(duì)一款網(wǎng)絡(luò)設(shè)備來(lái)說(shuō),由于硬件處理器核的計(jì)算能力是固定的,處理延遲越大意味著或者處理步驟越多,或者每條指令的平均處理時(shí)間越長(zhǎng)。若是前者,可以從優(yōu)化程序設(shè)計(jì)減少指令數(shù)的角度出發(fā)進(jìn)行優(yōu)化,不屬于本專(zhuān)利關(guān)注的范圍。若是后者,平均每條指令的處理時(shí)間長(zhǎng)無(wú)非存在指令緩存不命中(Instruction Cache ;以下簡(jiǎn)稱I-Cache Miss)或數(shù)據(jù)緩存不命中(Data Cache ;以下簡(jiǎn)稱D_Cache Miss)兩種情況,由于非Per-CPU的共享高速緩存不僅用于存放指令也用于存放待加工數(shù)據(jù),因此無(wú)論是指令還是數(shù)據(jù)的置換,若造成Cache Miss,都必然會(huì)影響到每條指令的平均處理時(shí)長(zhǎng)。在網(wǎng)絡(luò)設(shè)備中,指令的數(shù)量通常是確定的,尤其在測(cè)試網(wǎng)絡(luò)設(shè)備性能的時(shí)候,測(cè)試數(shù)據(jù)流通常也是固定的,除流速有所不同外,每個(gè)報(bào)文的加工指令也是固定的,因而相對(duì)指令對(duì)空間的占用來(lái)說(shuō),數(shù)據(jù)占用的存儲(chǔ)空間比重更大。報(bào)文數(shù)據(jù)在設(shè)備中經(jīng)歷的處理時(shí)間越長(zhǎng),占用存儲(chǔ)資源就越多,引起Cache Miss的機(jī)會(huì)也增多。若在減少報(bào)文緩沖區(qū)數(shù)量的情況下,依然可以滿足網(wǎng)絡(luò)設(shè)備轉(zhuǎn)發(fā)要求,那意味著需要與Cache建立映射關(guān)系的內(nèi)存也小,進(jìn)而也會(huì)降低Cache Miss率,提升網(wǎng)絡(luò)設(shè)備數(shù)據(jù)轉(zhuǎn)發(fā)性能。因此,本實(shí)施例旨在對(duì)報(bào)文緩沖區(qū)數(shù)量進(jìn)行動(dòng)態(tài)調(diào)整,在滿足網(wǎng)絡(luò)設(shè)備轉(zhuǎn)發(fā)要求的前提下,盡可能地減少網(wǎng)絡(luò)設(shè)備所使用的報(bào)文緩沖區(qū)數(shù),從而降低Cache Miss率。圖I為本發(fā)明緩沖區(qū)數(shù)的調(diào)整方法實(shí)施例一的流程圖,如圖I所示,本實(shí)施例提供了一種緩沖區(qū)數(shù)的調(diào)整方法,可以具體包括如下步驟步驟101,根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲取報(bào)文緩沖區(qū)數(shù)閾值。本實(shí)施例具體可以根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲取報(bào)文緩沖區(qū)數(shù)閾值。其中,業(yè)務(wù)所需的最大緩沖區(qū)數(shù)為網(wǎng)絡(luò)設(shè)備開(kāi)啟所有業(yè)務(wù)功能時(shí)所需的緩沖區(qū)數(shù)的最大值,網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)為網(wǎng)絡(luò)設(shè)備所允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲所需的緩沖區(qū)數(shù)的最大值,實(shí)際所需的緩沖區(qū)數(shù)為網(wǎng)絡(luò)設(shè)備實(shí)際所需的緩沖區(qū)數(shù),空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)為當(dāng)前可用于緩存報(bào)文數(shù)據(jù)的空閑內(nèi)存資源所允許的緩沖區(qū)數(shù)的最大值。本實(shí)施例綜合考慮網(wǎng)絡(luò)設(shè)備的各種情況,分別獲取到不同情況下所需的緩沖區(qū)數(shù),然后根據(jù)獲取到的這些緩沖區(qū)數(shù)來(lái)獲取初始化報(bào)文緩沖區(qū),具體可以獲取上述不同情況下所需的緩沖區(qū)數(shù)中的最小值作為報(bào)文緩沖區(qū)數(shù)閾值。在網(wǎng)絡(luò)設(shè)備啟動(dòng)時(shí),可以將網(wǎng)絡(luò)設(shè)備啟動(dòng)時(shí)的報(bào)文緩沖區(qū)數(shù)的初始值直接設(shè)置為該報(bào)文緩沖區(qū)數(shù)閾值。步驟102,根據(jù)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和所述報(bào)文緩沖區(qū)數(shù)閾值,調(diào)整報(bào)文緩沖區(qū)數(shù)。在網(wǎng)絡(luò)設(shè)備運(yùn)行過(guò)程中,獲取網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能,并獲取當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù),然后根據(jù)該網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和上述步驟獲取的報(bào)文緩沖區(qū)數(shù)閾值,對(duì)網(wǎng)絡(luò)設(shè)備中設(shè)定的報(bào)文緩沖區(qū)數(shù)進(jìn)行動(dòng)態(tài)調(diào)整。本實(shí)施例通過(guò)動(dòng)態(tài)調(diào)整報(bào)文緩沖區(qū)數(shù),與現(xiàn)有技術(shù)中將報(bào)文緩沖區(qū)數(shù)靜態(tài)設(shè)置為一個(gè)最大值相比,減少了被用于接收?qǐng)?bào)文的報(bào)文緩沖區(qū)數(shù),根據(jù)當(dāng)前的報(bào)文緩沖區(qū)數(shù)在接收?qǐng)?bào)文之前隨機(jī)丟棄超過(guò)設(shè)備吞吐量的報(bào)文,由于接收到的報(bào)文在后續(xù)報(bào)文轉(zhuǎn)發(fā)過(guò)程中需要經(jīng)過(guò)CPU處理,進(jìn)而需要加載映射到共享高速緩存中,從而降低映射到共享高速緩存的內(nèi)存大·小,將無(wú)法及時(shí)處理的報(bào)文丟棄在網(wǎng)絡(luò)設(shè)備接收?qǐng)?bào)文并存儲(chǔ)在報(bào)文緩沖區(qū)之前,以此避免Cache Miss率的過(guò)快增長(zhǎng)。本實(shí)施例提供了一種緩沖區(qū)數(shù)的調(diào)整方法,根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲取報(bào)文緩沖區(qū)數(shù)閾值,并根據(jù)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和所述報(bào)文緩沖區(qū)數(shù)閾值,調(diào)整報(bào)文緩沖區(qū)數(shù);本實(shí)施例通過(guò)動(dòng)態(tài)調(diào)整報(bào)文緩沖區(qū)的數(shù)量,以適應(yīng)各種網(wǎng)絡(luò)設(shè)備的需求,避免了因報(bào)文緩沖區(qū)的過(guò)多設(shè)置而造成Cache Miss率的增加,提高網(wǎng)絡(luò)設(shè)備的轉(zhuǎn)發(fā)性能。圖2為本發(fā)明緩沖區(qū)數(shù)的調(diào)整方法實(shí)施例二的流程圖,如圖2所示,本實(shí)施例提供了一種緩沖區(qū)數(shù)的調(diào)整方法,可以具體包括如下步驟步驟201,統(tǒng)計(jì)網(wǎng)絡(luò)設(shè)備中各業(yè)務(wù)功能所需的最大緩沖區(qū)數(shù),將所有業(yè)務(wù)功能所需的最大緩沖區(qū)數(shù)之和作為業(yè)務(wù)所需的最大緩沖區(qū)數(shù)。本實(shí)施例提供的緩沖區(qū)數(shù)的調(diào)整方法可以具體應(yīng)用于多核處理器中,圖3為本發(fā)明緩沖區(qū)數(shù)的調(diào)整方法實(shí)施例二中多核處理器芯片的功能模塊示意圖,如圖3所示,該多核處理器芯片可以包括網(wǎng)絡(luò)接口單元、空閑緩沖區(qū)管理單元、報(bào)文輸入單元、內(nèi)存控制器和多核處理器。其中,內(nèi)存控制器與內(nèi)存中的空閑緩沖區(qū)設(shè)定模塊相連。網(wǎng)絡(luò)接口單元用于對(duì)數(shù)字信號(hào)與模擬信號(hào)進(jìn)行互轉(zhuǎn),實(shí)現(xiàn)IP報(bào)文的接收和發(fā)送。報(bào)文輸入單元用于向空閑緩沖區(qū)管理單元申請(qǐng)分配報(bào)文緩沖區(qū),從網(wǎng)絡(luò)接口接收?qǐng)?bào)文,并將數(shù)據(jù)存放到所申請(qǐng)的報(bào)文緩沖區(qū),并可配置開(kāi)啟早期隨機(jī)丟棄功能。此處的開(kāi)啟早期隨機(jī)丟棄功能是指當(dāng)有報(bào)文到達(dá),但空閑緩沖區(qū)管理單元中可分配的空閑緩沖區(qū)數(shù)為零時(shí),便直接丟棄該報(bào)文,而不影響正在執(zhí)行的報(bào)文處理程序和其他緩沖區(qū)管理單元。多核處理器用于執(zhí)行相關(guān)的報(bào)文處理程序。網(wǎng)絡(luò)設(shè)備的業(yè)務(wù)功能配置是指網(wǎng)絡(luò)管理員經(jīng)由本地控制臺(tái)、遠(yuǎn)程連接或網(wǎng)頁(yè)方式登錄網(wǎng)絡(luò)設(shè)備管理界面進(jìn)行關(guān)閉或開(kāi)啟業(yè)務(wù)功能,指導(dǎo)網(wǎng)絡(luò)設(shè)備程序執(zhí)行功能的數(shù)據(jù)配置??臻e緩沖區(qū)設(shè)定模塊用于在通過(guò)本實(shí)施例的緩沖區(qū)數(shù)的調(diào)整方法對(duì)緩沖區(qū)數(shù)進(jìn)行調(diào)整之后,將調(diào)整后的緩沖區(qū)數(shù)設(shè)定到空閑緩沖區(qū)管理単元,其可實(shí)現(xiàn)為網(wǎng)絡(luò)設(shè)備軟件驅(qū)動(dòng)的ー個(gè)模塊,通常存儲(chǔ)于內(nèi)存中。本步驟為先計(jì)算業(yè)務(wù)所需的最大緩沖區(qū)數(shù),統(tǒng)計(jì)網(wǎng)絡(luò)設(shè)備中各業(yè)務(wù)功能所需的最大緩沖區(qū)數(shù),將所有業(yè)務(wù)功能所需的最大緩沖區(qū)數(shù)之和作為業(yè)務(wù)所需的最大緩沖區(qū)數(shù)。此處網(wǎng)絡(luò)設(shè)備中各業(yè)務(wù)功能所需的最大緩沖區(qū)數(shù)為網(wǎng)絡(luò)設(shè)備設(shè)計(jì)人員在開(kāi)發(fā)該款設(shè)備時(shí)所確定的業(yè)務(wù)功能所需的報(bào)文緩沖區(qū)數(shù)的最大值,本實(shí)施例中采用參數(shù)Mmax來(lái)表示業(yè)務(wù)功能所需的報(bào)文緩沖區(qū)數(shù)的最大值。例如,若網(wǎng)絡(luò)設(shè)備中一共有40個(gè)業(yè)務(wù)功能在報(bào)文轉(zhuǎn)發(fā)處理過(guò)程中需要對(duì)報(bào)文進(jìn)行緩存處理,若平均每個(gè)業(yè)務(wù)功能最多只允許緩存500個(gè)報(bào)文緩沖區(qū),則一共需要20000個(gè)報(bào)文緩沖區(qū),即計(jì)算得到業(yè)務(wù)所需的最大緩沖區(qū)數(shù)Mmax為20000。步驟202,根據(jù)網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲和平均每個(gè)報(bào)文處理時(shí)長(zhǎng),計(jì)算網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)。

本步驟為計(jì)算網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù),具體根據(jù)網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲和平均每個(gè)報(bào)文處理時(shí)長(zhǎng),在不超過(guò)網(wǎng)絡(luò)設(shè)備的吞吐量和滿足突發(fā)性流量要求的情況下,來(lái)計(jì)算網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)。其中,平均每個(gè)報(bào)文處理時(shí)長(zhǎng)是指ー個(gè)報(bào)文從網(wǎng)絡(luò)接ロ單元進(jìn)入,經(jīng)由網(wǎng)絡(luò)設(shè)備當(dāng)前開(kāi)啟的業(yè)務(wù)功能處理,到離開(kāi)網(wǎng)絡(luò)設(shè)備所經(jīng)過(guò)的平均時(shí)間長(zhǎng)度。具體可以采用下述公式(I)來(lái)計(jì)算網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)N霉^x(l卄xfc)(I )
Avg per packet其中,Nmax為網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù),Tmax為網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,TAvg krt*平均每個(gè)報(bào)文處理時(shí)長(zhǎng),r為允許突發(fā)性流量達(dá)到吞吐量時(shí)流速的比例,Tper為突發(fā)性流量的持續(xù)時(shí)間。例如,假設(shè)網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值為64Bytes IP報(bào)文為4G bps,該網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲Tmax為1ms,允許突發(fā)性流量達(dá)到吞吐量時(shí)流速的比例r為10%,且突發(fā)性流量的持續(xù)時(shí)間Tpot為1ms,統(tǒng)計(jì)得到在不超過(guò)網(wǎng)絡(luò)設(shè)備的吞吐量和滿足突發(fā)性流量要求的情況下平均每個(gè)報(bào)文處理時(shí)長(zhǎng)TAvg, pac;krt為O. 15us,因此通過(guò)上述公式(I)計(jì)算得到網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)Nmax為7333。步驟203,根據(jù)所述網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值、每個(gè)報(bào)文平均長(zhǎng)度和所述網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,計(jì)算實(shí)際所需的緩沖區(qū)數(shù)。本步驟為計(jì)算實(shí)際所需的緩沖區(qū)數(shù),具體根據(jù)網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值、每個(gè)報(bào)文平均長(zhǎng)度和所述網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,計(jì)算實(shí)際所需的緩沖區(qū)數(shù)。具體可以采用下述公式(2)計(jì)算實(shí)際所需的緩沖區(qū)數(shù)
,TNneed = --X 'ImK I )
packet其中,Nneed為實(shí)際所需的緩沖區(qū)數(shù),Tmax為網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,C為網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值,Lpacker為每個(gè)報(bào)文平均長(zhǎng)度。仍以上述假設(shè)為例,網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值C為4G bps,該值為毎秒傳輸?shù)磨诉M(jìn)制比特位,単位G為23°的數(shù)值,IP報(bào)文長(zhǎng)度為64字節(jié),假設(shè)以太網(wǎng)幀頭及前導(dǎo)等長(zhǎng)度的字節(jié)數(shù)為20,然后可以得到每個(gè)報(bào)文平均長(zhǎng)度Lpaeket為(64+20) X8,其中8為每字節(jié)所占位數(shù)。然后通過(guò)上述公式(2)便可以計(jì)算得到實(shí)際所需的緩沖區(qū)數(shù)Nneed為6391,即若要達(dá)到性能目標(biāo),在Ims轉(zhuǎn)發(fā)延遲內(nèi),最多允許有6391個(gè)報(bào)文被網(wǎng)絡(luò)設(shè)備緩存,也意味著實(shí)際上最多只需要6391個(gè)報(bào)文緩沖區(qū)。步驟204,根據(jù)當(dāng)前可用于緩存報(bào)文數(shù)據(jù)的內(nèi)存空間大小和每個(gè)緩沖區(qū)長(zhǎng)度,計(jì)算空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)。本步驟為計(jì)算空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),具體根據(jù)當(dāng)前可用于緩存報(bào)文數(shù)據(jù)的內(nèi)存空間大小和每個(gè)緩沖區(qū)長(zhǎng)度,計(jì)算空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)。具體可以采用下述公式(3)來(lái)計(jì)算空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)Pm=-T^い)
cache其中,Pmax為空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),Vidle為當(dāng)前可用于緩存報(bào)文數(shù)據(jù) 的內(nèi)存空間大小,Lcache為每個(gè)緩沖區(qū)長(zhǎng)度。仍以上述假設(shè)為例,假設(shè)當(dāng)前可用于緩存報(bào)文數(shù)據(jù)的內(nèi)存空間大小Vidle為3211,若存放報(bào)文的每個(gè)緩沖區(qū)長(zhǎng)度Leaehe為2048字節(jié),則通過(guò)上述公式(3)計(jì)算得到空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)Pmax為16384。對(duì)于現(xiàn)在高性能網(wǎng)絡(luò)設(shè)備中幾個(gè)G的內(nèi)存空間來(lái)說(shuō),Pfflax通常不會(huì)成為報(bào)文緩沖區(qū)數(shù)的主要限制條件。需要指出的是,上述步驟201-204之間并不存在嚴(yán)格的時(shí)序關(guān)系,可以按照實(shí)際情況來(lái)選擇各步驟的執(zhí)行順序。步驟205,將業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)中的最小值,作為報(bào)文緩沖區(qū)數(shù)閾值。在通過(guò)上述計(jì)算,獲取到業(yè)務(wù)所需的最大緩沖區(qū)數(shù)Mmax、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)Nmax、實(shí)際所需的緩沖區(qū)數(shù)Nnrad和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)Pmax之后,將業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)中的最小值,作為報(bào)文緩沖區(qū)數(shù)閾值,即獲取報(bào)文緩沖區(qū)數(shù)閾值為min {^ax, Nmax, Nneed, PmaJ,即 6391。步驟206,判斷網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)是否大于或等于報(bào)文緩沖區(qū)數(shù)閾值,如果是,則執(zhí)行步驟207,否則執(zhí)行步驟208。在網(wǎng)絡(luò)設(shè)備運(yùn)行過(guò)程中,獲取網(wǎng)絡(luò)設(shè)備當(dāng)前的業(yè)務(wù)功能設(shè)置,即獲取該網(wǎng)絡(luò)設(shè)備當(dāng)前開(kāi)啟的業(yè)務(wù)功能,并計(jì)算當(dāng)前運(yùn)行環(huán)境下開(kāi)啟的業(yè)務(wù)功能所需要的報(bào)文緩沖區(qū)數(shù)M·,判斷網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)是否大于或等于報(bào)文緩沖區(qū)數(shù)閾值,如果是,則執(zhí)行步驟207,否則執(zhí)行步驟208。步驟207,將報(bào)文緩沖區(qū)數(shù)設(shè)置為報(bào)文緩沖區(qū)數(shù)閾值。當(dāng)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)Mcot大于或等于上述步驟205獲取的報(bào)文緩沖區(qū)數(shù)閾值min {Mfflax, Nfflax, Nneed, PfflaJ吋,將報(bào)文緩沖區(qū)數(shù)設(shè)置為報(bào)文緩沖區(qū)數(shù)閾值。例如,假設(shè)在網(wǎng)絡(luò)設(shè)備啟動(dòng)之后,檢測(cè)網(wǎng)絡(luò)設(shè)備當(dāng)前的業(yè)務(wù)功能配置,發(fā)現(xiàn)當(dāng)前網(wǎng)絡(luò)設(shè)備開(kāi)啟了 15個(gè)業(yè)務(wù)功能,則當(dāng)前開(kāi)啟的業(yè)務(wù)功能最多需要7500個(gè)報(bào)文緩沖區(qū),即Μ·=7500,可見(jiàn)Meur大于6391,則將報(bào)文緩沖區(qū)數(shù)設(shè)置為6391。步驟208,將報(bào)文緩沖區(qū)數(shù)設(shè)置為所述網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)。當(dāng)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)Mcot不大于上述步驟205獲取的報(bào)文緩沖區(qū)數(shù)閾值min {Mmax,Nfflax, Nneed, PfflaJ時(shí),將報(bào)文緩沖區(qū)數(shù)設(shè)置為所述網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)。例如,假設(shè)在網(wǎng)絡(luò)設(shè)備啟動(dòng)之后,檢測(cè)網(wǎng)絡(luò)設(shè)備當(dāng)前的業(yè)務(wù)功能配置,發(fā)現(xiàn)當(dāng)前網(wǎng)絡(luò)設(shè)備開(kāi)啟了 10個(gè)業(yè)務(wù)功能,則當(dāng)前開(kāi)啟的業(yè)務(wù)功能最多只需要5000個(gè)報(bào)文緩沖區(qū),即Meur = 5000,可見(jiàn)Meur小于6391,則將報(bào)文緩沖區(qū)數(shù)調(diào)整為minim
in {Mmax, Nmax, Nnee d, PmaJ,M。ur},即 5000。本實(shí)施例提供了一種緩沖區(qū)數(shù)的調(diào)整方法,根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲取報(bào)文緩沖區(qū)數(shù)閾值,根據(jù)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和報(bào)文緩沖區(qū)數(shù)閾值,調(diào)整報(bào)文緩沖區(qū)數(shù);本實(shí)施例根據(jù)網(wǎng)絡(luò)設(shè)備的業(yè)務(wù)處理需求和硬件資源的特點(diǎn)動(dòng)態(tài)調(diào)整報(bào)文緩沖區(qū)的數(shù)量,以適應(yīng)各種網(wǎng)絡(luò)設(shè)備的需求,避免了因報(bào)文緩沖區(qū)的過(guò)多設(shè)置而造成Cache Miss率的増加,提高了網(wǎng)絡(luò)設(shè)備的轉(zhuǎn)發(fā)性能,從而縮小了性能峰值與穩(wěn)定值之間的差距,提高了網(wǎng)絡(luò)設(shè)備的性能穩(wěn)定性。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述各方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成。前述的程序可以存儲(chǔ)于ー計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。該程序在執(zhí)行時(shí),執(zhí)行包括上述各方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括R0M、RAM、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)。圖4為本發(fā)明緩沖區(qū)數(shù)的調(diào)整裝置實(shí)施例一的結(jié)構(gòu)示意圖,如圖4所示,本實(shí)施例提供了一種緩沖區(qū)數(shù)的調(diào)整裝置,可以具體執(zhí)行上述方法實(shí)施例一中的各個(gè)步驟,此處不再贅述。本實(shí)施例提供的緩沖區(qū)數(shù)的調(diào)整裝置可以具體包括獲取模塊401和調(diào)整模塊402。其中,獲取模塊401用于根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲取報(bào)文緩沖區(qū)數(shù)閾值。調(diào)整模塊402用于根據(jù)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和所述報(bào)文緩沖區(qū)數(shù)閾值,調(diào)整報(bào)文緩沖區(qū)數(shù)。圖5為本發(fā)明緩沖區(qū)數(shù)的調(diào)整裝置實(shí)施例ニ的結(jié)構(gòu)示意圖,如圖5所示,本實(shí)施例提供了一種緩沖區(qū)數(shù)的調(diào)整裝置,可以具體執(zhí)行上述方法實(shí)施例ニ中的各個(gè)步驟,此處不再贅述。本實(shí)施例提供的緩沖區(qū)數(shù)的調(diào)整裝置在上述圖4所示的基礎(chǔ)之上,獲取模塊401可以具體包括第一計(jì)算單元411、第二計(jì)算單元421、第三計(jì)算單元431、第四計(jì)算單元441和獲取單元451。其中,第一計(jì)算單元411用于統(tǒng)計(jì)網(wǎng)絡(luò)設(shè)備中各業(yè)務(wù)功能所需的最大緩沖區(qū)數(shù),將所有業(yè)務(wù)功能所需的最大緩沖區(qū)數(shù)之和作為業(yè)務(wù)所需的最大緩沖區(qū)數(shù)。第二計(jì)算単元421用于根據(jù)網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲和平均每個(gè)報(bào)文處理時(shí)長(zhǎng),計(jì)算網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)。第三計(jì)算單元431用于根據(jù)所述網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值、每個(gè)報(bào)文平均長(zhǎng)度和所述網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,計(jì)算實(shí)際所需的緩沖區(qū)數(shù)。第四計(jì)算単元441用于根據(jù)當(dāng)前可用于緩存報(bào)文數(shù)據(jù)的內(nèi)存空間大小和每個(gè)緩沖區(qū)長(zhǎng)度,計(jì)算空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)。獲取單元451用于將所述業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、所述網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、所述實(shí)際所需的緩沖區(qū)數(shù)和所述空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)中的最小值,作為報(bào)文緩沖區(qū)數(shù)閾值。具體地,調(diào)整模塊402可以具體包括第一調(diào)整單元412和第二調(diào)整單元422。其中,第一調(diào)整單元412用于當(dāng)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)大于或等于所述報(bào)文緩沖區(qū)數(shù)閾值時(shí),將報(bào)文緩沖區(qū)數(shù)設(shè)置為所述報(bào)文緩沖區(qū)數(shù)閾值。第二調(diào)整單元422用于當(dāng)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)小于所述報(bào)文緩沖區(qū)數(shù)閾值時(shí),將報(bào)文緩沖區(qū)數(shù)設(shè)置為所述網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)。具體地,本實(shí)施例中的第二計(jì)算單元421具體用于根據(jù)網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲和平均每個(gè)報(bào)文處理時(shí)長(zhǎng),采用上述公式(I)計(jì)算網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)。具體地,本實(shí)施例中的第三計(jì)算單元431具體用于根據(jù)所述網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值和所述網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,采用上述公式(2)計(jì)算實(shí)際所需的緩沖區(qū)數(shù)。具體地,本實(shí)施例中的第四計(jì)算單元441具體用于根據(jù)當(dāng)前可用于緩存報(bào)文數(shù)據(jù)的內(nèi)存空間大小和每個(gè)緩沖區(qū)長(zhǎng)度,采用上述公式(3)計(jì)算空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)。本實(shí)施例提供了一種緩沖區(qū)數(shù)的調(diào)整裝置,根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲 取報(bào)文緩沖區(qū)數(shù)閾值,根據(jù)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和所述報(bào)文緩沖區(qū)數(shù)閾值,調(diào)整報(bào)文緩沖區(qū)數(shù);本實(shí)施例根據(jù)網(wǎng)絡(luò)設(shè)備的業(yè)務(wù)處理需求和硬件資源的特點(diǎn)動(dòng)態(tài)調(diào)整報(bào)文緩沖區(qū)的數(shù)量,以適應(yīng)各種網(wǎng)絡(luò)設(shè)備的需求,避免了因報(bào)文緩沖區(qū)的過(guò)多設(shè)置而造成Cache Miss率的増加,提高了網(wǎng)絡(luò)設(shè)備的轉(zhuǎn)發(fā)性能,從而縮小了性能峰值與穩(wěn)定值之間的差距,提高了網(wǎng)絡(luò)設(shè)備的性能穩(wěn)定性。最后應(yīng)說(shuō)明的是以上各實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。
權(quán)利要求
1.一種緩沖區(qū)數(shù)的調(diào)整方法,其特征在于,包括 根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲取報(bào)文緩沖區(qū)數(shù)閾值; 根據(jù)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和所述報(bào)文緩沖區(qū)數(shù)閾值,調(diào)整報(bào)文緩沖區(qū)數(shù)。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲取報(bào)文緩沖區(qū)數(shù)閾值包括 統(tǒng)計(jì)網(wǎng)絡(luò)設(shè)備中各業(yè)務(wù)功能所需的最大緩沖區(qū)數(shù),將所有業(yè)務(wù)功能所需的最大緩沖區(qū)數(shù)之和作為業(yè)務(wù)所需的最大緩沖區(qū)數(shù); 根據(jù)網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲和平均每個(gè)報(bào)文處理時(shí)長(zhǎng),計(jì)算網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù); 根據(jù)所述網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值、每個(gè)報(bào)文平均長(zhǎng)度和所述網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,計(jì)算實(shí)際所需的緩沖區(qū)數(shù); 根據(jù)當(dāng)前可用于緩存報(bào)文數(shù)據(jù)的內(nèi)存空間大小和每個(gè)緩沖區(qū)長(zhǎng)度,計(jì)算空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù); 將所述業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、所述網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、所述實(shí)際所需的緩沖區(qū)數(shù)和所述空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)中的最小值,作為報(bào)文緩沖區(qū)數(shù)閾值。
3.根據(jù)權(quán)利要求I或2所述的方法,其特征在于,所述根據(jù)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和所述報(bào)文緩沖區(qū)數(shù)閾值,調(diào)整報(bào)文緩沖區(qū)數(shù)包括 當(dāng)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)大于或等于所述報(bào)文緩沖區(qū)數(shù)閾值時(shí),將報(bào)文緩沖區(qū)數(shù)設(shè)置為所述報(bào)文緩沖區(qū)數(shù)閾值; 當(dāng)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)小于所述報(bào)文緩沖區(qū)數(shù)閾值時(shí),將報(bào)文緩沖區(qū)數(shù)設(shè)置為所述網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述根據(jù)網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲和平均每個(gè)報(bào)文處理時(shí)長(zhǎng),計(jì)算網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)包括 根據(jù)網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲和平均每個(gè)報(bào)文處理時(shí)長(zhǎng),采用下述公式計(jì)算網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)^x(l+rXfc); Avg _ per _ packet 其中,Nmax為網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù),Tmax為網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,Tavsper_packet為平均每個(gè)報(bào)文處理時(shí)長(zhǎng),r為允許突發(fā)性流量達(dá)到吞吐量時(shí)流速的比例,Tper為突發(fā)性流量的持續(xù)時(shí)間。
5.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述根據(jù)所述網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值、每個(gè)報(bào)文平均長(zhǎng)度和所述網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,計(jì)算實(shí)際所需的緩沖區(qū)數(shù)包括 根據(jù)所述網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值和所述網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,采用下述公式計(jì)算實(shí)際所需的緩沖區(qū)數(shù)其中,N■!為實(shí)際所需的緩沖區(qū)數(shù),Tmax為網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,C為網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值,Lpacket為每個(gè)報(bào)文平均長(zhǎng)度。
6.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述根據(jù)當(dāng)前可用于緩存報(bào)文數(shù)據(jù)的內(nèi)存空間大小和每個(gè)緩沖區(qū)長(zhǎng)度,計(jì)算空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)包括 根據(jù)當(dāng)前可用于緩存報(bào)文數(shù)據(jù)的內(nèi)存空間大小和每個(gè)緩沖區(qū)長(zhǎng)度,采用下述公式計(jì)算空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù) 其中,P_為空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),Vidle為當(dāng)前可用于緩存報(bào)文數(shù)據(jù)的內(nèi)存空間大小,Lcache為每個(gè)緩沖區(qū)長(zhǎng)度。
7.一種緩沖區(qū)數(shù)的調(diào)整裝置,其特征在于,包括 獲取模塊,用于根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲取報(bào)文緩沖區(qū)數(shù)閾值; 調(diào)整模塊,用于根據(jù)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和所述報(bào)文緩沖區(qū)數(shù)閾值,調(diào)整報(bào)文緩沖區(qū)數(shù)。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述獲取模塊包括 第一計(jì)算單元,用于統(tǒng)計(jì)網(wǎng)絡(luò)設(shè)備中各業(yè)務(wù)功能所需的最大緩沖區(qū)數(shù),將所有業(yè)務(wù)功能所需的最大緩沖區(qū)數(shù)之和作為業(yè)務(wù)所需的最大緩沖區(qū)數(shù); 第二計(jì)算單元,用于根據(jù)網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲和平均每個(gè)報(bào)文處理時(shí)長(zhǎng),計(jì)算網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù); 第三計(jì)算單元,用于根據(jù)所述網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值、每個(gè)報(bào)文平均長(zhǎng)度和所述網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,計(jì)算實(shí)際所需的緩沖區(qū)數(shù); 第四計(jì)算單元,用于根據(jù)當(dāng)前可用于緩存報(bào)文數(shù)據(jù)的內(nèi)存空間大小和每個(gè)緩沖區(qū)長(zhǎng)度,計(jì)算空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù); 獲取單元,用于將所述業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、所述網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、所述實(shí)際所需的緩沖區(qū)數(shù)和所述空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)中的最小值,作為報(bào)文緩沖區(qū)數(shù)閾值。
9.根據(jù)權(quán)利要求7或8所述的裝置,其特征在于,所述調(diào)整模塊包括 第一調(diào)整單元,用于當(dāng)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)大于或等于所述報(bào)文緩沖區(qū)數(shù)閾值時(shí),將報(bào)文緩沖區(qū)數(shù)設(shè)置為所述報(bào)文緩沖區(qū)數(shù)閾值; 第二調(diào)整單元,用于當(dāng)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)小于所述報(bào)文緩沖區(qū)數(shù)閾值時(shí),將報(bào)文緩沖區(qū)數(shù)設(shè)置為所述網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)。
10.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述第二計(jì)算單元具體用于根據(jù)網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲和平均每個(gè)報(bào)文處理時(shí)長(zhǎng),采用下述公式計(jì)算網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)
11.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述第三計(jì)算單元具體用于根據(jù)所述網(wǎng)絡(luò)設(shè)備的預(yù)定性能目標(biāo)值和所述網(wǎng)絡(luò)設(shè)備允許的網(wǎng)絡(luò)轉(zhuǎn)發(fā)延遲,采用下述公式計(jì)算實(shí)際所需的緩沖區(qū)數(shù)
12.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述第四計(jì)算單元具體用于根據(jù)當(dāng)前可用于緩存報(bào)文數(shù)據(jù)的內(nèi)存空間大小和每個(gè)緩沖區(qū)長(zhǎng)度,釆用下述公式計(jì)算空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù)
全文摘要
本發(fā)明提供一種緩沖區(qū)數(shù)的調(diào)整方法和裝置,方法包括根據(jù)業(yè)務(wù)所需的最大緩沖區(qū)數(shù)、網(wǎng)絡(luò)設(shè)備允許的最大緩沖區(qū)數(shù)、實(shí)際所需的緩沖區(qū)數(shù)和空閑內(nèi)存資源允許的最大緩沖區(qū)數(shù),獲取報(bào)文緩沖區(qū)數(shù)閾值;根據(jù)網(wǎng)絡(luò)設(shè)備中當(dāng)前開(kāi)啟的業(yè)務(wù)功能所需的緩沖區(qū)數(shù)和報(bào)文緩沖區(qū)數(shù)閾值,調(diào)整報(bào)文緩沖區(qū)數(shù)。本發(fā)明還提供了一種緩沖區(qū)數(shù)的調(diào)整裝置。本發(fā)明提高了網(wǎng)絡(luò)設(shè)備的轉(zhuǎn)發(fā)性能。
文檔編號(hào)H04L12/56GK102833162SQ201210300979
公開(kāi)日2012年12月19日 申請(qǐng)日期2012年8月22日 優(yōu)先權(quán)日2012年8月22日
發(fā)明者林鏡華, 李淑萍 申請(qǐng)人:北京星網(wǎng)銳捷網(wǎng)絡(luò)技術(shù)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1