一種業(yè)務(wù)感知的芯片緩存資源管理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種芯片緩存資源管理技術(shù),尤其是涉及一種業(yè)務(wù)感知的芯片緩存資源管理方法。
【背景技術(shù)】
[0002]網(wǎng)絡(luò)傳輸中存在突發(fā)流量,如果交換機(jī)沒(méi)有足夠的出口緩存區(qū),那么它可能會(huì)拋棄一些流量,或者增加應(yīng)用程序延遲,但交換機(jī)的緩存區(qū)大小是固定的,為了避免丟包并合理的吸收處理突發(fā)流量,需要有效的機(jī)制來(lái)管理緩存。
[0003]如圖1所示,現(xiàn)有技術(shù)中,通過(guò)為每個(gè)端口劃分一塊安全緩存以及所有端口共用的共享緩存;每個(gè)端口優(yōu)先使用與端口對(duì)應(yīng)的安全緩存;若端口的安全緩存被使用完,則使用共享緩存。該方案通過(guò)將交換機(jī)的公共緩存池分為安全緩存和共享緩存兩部分,在端口發(fā)生擁塞時(shí),安全緩存被耗盡后,端口使用共享緩存,而其他端口使用對(duì)應(yīng)的安全緩存,即端口發(fā)生擁塞時(shí),不會(huì)影響其他端口的正常轉(zhuǎn)發(fā),不會(huì)造成整個(gè)緩存被耗盡而導(dǎo)致大面積丟包的問(wèn)題。
[0004]但是,上述緩存方法是基于端口的,并不感知業(yè)務(wù),因?yàn)椴煌臉I(yè)務(wù)對(duì)緩存需求是不一樣的,比如廣播流量和鏡像流量,這些業(yè)務(wù)只需要有限的緩存,如果和單播流量放在一起共享資源,會(huì)導(dǎo)致廣播和鏡像流量搶占緩存,導(dǎo)致單播流量丟包。這樣并不能有效保證業(yè)務(wù)的資源的合理分配。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺陷,提供一種業(yè)務(wù)感知的芯片緩存資源管理方法及裝置,根據(jù)不同的業(yè)務(wù)劃分芯片緩存資源,以保證業(yè)務(wù)資源的合理分配。
[0006]為實(shí)現(xiàn)上述目的,本發(fā)明提出如下技術(shù)方案:一種業(yè)務(wù)感知的芯片緩存資源管理方法,包括:
[0007]將芯片緩存區(qū)按照業(yè)務(wù)類型劃分,每個(gè)業(yè)務(wù)類型對(duì)應(yīng)一塊緩存區(qū),所述業(yè)務(wù)類型包括單播、組播、廣播、鏡像流和協(xié)議流;
[0008]所述單播流為每個(gè)端口劃分出一塊固定緩存和所有端口共用的共享緩存,對(duì)于單播流,優(yōu)先使用與端口對(duì)應(yīng)的所述固定緩存,若所述端口的固定緩存被使用完,則使用所述共享緩存;
[0009]所述組播、廣播、鏡像流和協(xié)議流則使用各自對(duì)應(yīng)的緩存區(qū)。
[0010]優(yōu)選地,所述組播、廣播、鏡像流和協(xié)議流對(duì)應(yīng)的緩存區(qū)為所有端口共享的。
[0011]優(yōu)選地,所述單播、組播、廣播,鏡像流和協(xié)議流對(duì)應(yīng)的緩存區(qū)大小是不同的。
[0012]優(yōu)選地,所述協(xié)議流的緩存區(qū)大于所述廣播流/鏡像流的緩存區(qū)小于所述組播流/單播流的緩存區(qū)。
[0013]優(yōu)選地,將所述單播流的共享緩存劃分為N個(gè)子共享緩存,并將預(yù)定個(gè)數(shù)個(gè)端口對(duì)應(yīng)一個(gè)所述子共享緩存,在端口對(duì)應(yīng)的固定緩存使用完后,使用與所述端口對(duì)應(yīng)的子共享緩存,其中,N為大于等于I的正整數(shù)。
[0014]優(yōu)選地,所述預(yù)定個(gè)數(shù)為I個(gè)。
[0015]本發(fā)明還提出了另外一種技術(shù)方案:一種業(yè)務(wù)感知的芯片緩存資源管理裝置,包括緩存區(qū)劃分模塊和單播緩存區(qū)劃分模塊,
[0016]所述緩存區(qū)劃分模塊用于將芯片緩存區(qū)按照業(yè)務(wù)類型劃分,至少劃分為單播,組播,廣播,鏡像流和協(xié)議流緩存區(qū);
[0017]所述單播緩存區(qū)劃分模塊用于針對(duì)單播流,為每個(gè)端口劃分出一塊固定緩存和所有端口共用的共享緩存。
[0018]優(yōu)選地,還包括共享緩存劃分模塊,所述共享緩存劃分模塊用于將所述單播流的共享緩存劃分為N個(gè)子共享緩存,其中,N為大于等于I的正整數(shù)。
[0019]本發(fā)明的有益效果是:本發(fā)明能夠保證業(yè)務(wù)功能對(duì)緩存資源的充分利用,在芯片緩存資源有限的情況,保證重要業(yè)務(wù)的功能。
【附圖說(shuō)明】
[0020]圖1是現(xiàn)有芯片緩存資源管理方法的原理示意圖;
[0021]圖2是本發(fā)明業(yè)務(wù)感知的芯片緩存資源管理方法的原理示意圖。
【具體實(shí)施方式】
[0022]下面將結(jié)合本發(fā)明的附圖,對(duì)本發(fā)明實(shí)施例的技術(shù)方案進(jìn)行清楚、完整的描述。
[0023]因?yàn)椴煌臉I(yè)務(wù)對(duì)網(wǎng)絡(luò)的延遲、抖動(dòng)、丟包需求是不一樣的,并且產(chǎn)生的突發(fā)量也是不一樣的,因此本發(fā)明把芯片的資源按照業(yè)務(wù)進(jìn)行劃分,對(duì)不同業(yè)務(wù)所占緩存區(qū)(buffer)獨(dú)立控制,從而有效保證業(yè)務(wù)對(duì)緩存資源的合理分配。
[0024]具體地,本方案把業(yè)務(wù)分為單播,組播,廣播,鏡像流和協(xié)議流,相應(yīng)的,如圖2所示,將芯片緩存區(qū)按照業(yè)務(wù)類型,為每個(gè)業(yè)務(wù)類型劃分一塊緩存區(qū),如進(jìn)入芯片的單播流就相應(yīng)進(jìn)入單播流緩存區(qū),組播流就進(jìn)入對(duì)應(yīng)的組播流緩存區(qū)。
[0025]其中,因單播流對(duì)實(shí)時(shí)性要求不高,但其數(shù)據(jù)量大,且對(duì)丟包敏感,因此本發(fā)明將單播流分為固定緩存和共享緩存,即為每個(gè)端口劃分出一塊固定緩存和所有端口共用的共享緩存。這樣進(jìn)入單播流緩存區(qū)的單播流按照端口優(yōu)先使用與端口對(duì)應(yīng)的固定緩存,若端口的固定緩存被使用完,則使用共享緩存。如從端口 I進(jìn)來(lái)的單播流,就優(yōu)先使用端口 I對(duì)應(yīng)的固定緩存,若端口 I對(duì)應(yīng)的固定緩存使用完,則使用共享緩存。
[0026]優(yōu)選地,可將單播流的共享緩存劃分為N個(gè)子共享緩存,并將預(yù)定個(gè)數(shù)個(gè)端口對(duì)應(yīng)一個(gè)子共享緩存,在端口對(duì)應(yīng)的固定緩存使用完后,使用與端口對(duì)應(yīng)的子共享緩存,其中,N為大于等于I的正整數(shù)。
[0027]如預(yù)定個(gè)數(shù)為I,即每個(gè)端口對(duì)應(yīng)一個(gè)子共享?yè)Q緩存,如端口I的單播流對(duì)應(yīng)一個(gè)子共享緩存,這樣其他子共享緩存不會(huì)被使用。
[0028]對(duì)于組播,廣播,鏡像流,協(xié)議流,將它們單獨(dú)分開,組播,廣播,鏡像流和協(xié)議流對(duì)應(yīng)的緩存區(qū),每個(gè)區(qū)有固定的大小。其中,組播流的特點(diǎn)是:實(shí)時(shí)性要求不高,數(shù)據(jù)量大,但相對(duì)于單播,對(duì)丟包相對(duì)不敏感;協(xié)議流的特點(diǎn)是:對(duì)實(shí)時(shí)性、丟包非常敏感,但數(shù)據(jù)有限,分配的buffer相對(duì)鏡像流較大點(diǎn)即可;廣播流,鏡像流對(duì)丟包,延遲和實(shí)時(shí)性不敏感,并數(shù)據(jù)量大,因此buf f er分配相對(duì)較少,只需要占用少量buf f er,超過(guò)buf f er丟棄。
[0029]且組播,廣播,鏡像流和協(xié)議流對(duì)應(yīng)的緩存區(qū)是所有端口共享的,即如進(jìn)入芯片的組播流不管是從哪個(gè)端口進(jìn)入,都進(jìn)入到對(duì)應(yīng)的組播流緩存區(qū)。
[0030]本發(fā)明所揭示的一種業(yè)務(wù)感知的芯片緩存資源管理裝置,包括緩存區(qū)劃分模塊、單播緩存區(qū)劃分模塊和共享緩存劃分模塊,其中,緩存區(qū)劃分模塊用于將芯片緩存區(qū)按照業(yè)務(wù)類型劃分,至少劃分為單播、組播、廣播、鏡像流和協(xié)議流緩存區(qū)。單播緩存區(qū)劃分模塊用于針對(duì)單播流,為每個(gè)端口劃分出一塊固定緩存和所有端口共用的共享緩存。共享緩存劃分模塊用于將單播流的共享緩存劃分為N個(gè)子共享緩存,其中,N為大于等于I的正整數(shù)。
[0031]本發(fā)明的技術(shù)內(nèi)容及技術(shù)特征已揭示如上,然而熟悉本領(lǐng)域的技術(shù)人員仍可能基于本發(fā)明的教示及揭示而作種種不背離本發(fā)明精神的替換及修飾,因此,本發(fā)明保護(hù)范圍應(yīng)不限于實(shí)施例所揭示的內(nèi)容,而應(yīng)包括各種不背離本發(fā)明的替換及修飾,并為本專利申請(qǐng)權(quán)利要求所涵蓋。
【主權(quán)項(xiàng)】
1.一種業(yè)務(wù)感知的芯片緩存資源管理方法,其特征在于,包括: 將芯片緩存區(qū)按照業(yè)務(wù)類型劃分,每個(gè)業(yè)務(wù)類型對(duì)應(yīng)一塊緩存區(qū),所述業(yè)務(wù)類型包括單播、組播、廣播、鏡像流和協(xié)議流; 所述單播流為每個(gè)端口劃分出一塊固定緩存和所有端口共用的共享緩存,對(duì)于單播流,優(yōu)先使用與端口對(duì)應(yīng)的所述固定緩存,若所述端口的固定緩存被使用完,則使用所述共享緩存; 所述組播、廣播、鏡像流和協(xié)議流則使用各自對(duì)應(yīng)的緩存區(qū)。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述組播、廣播、鏡像流和協(xié)議流對(duì)應(yīng)的緩存區(qū)為所有端口共孚的。3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述單播、組播、廣播,鏡像流和協(xié)議流對(duì)應(yīng)的緩存區(qū)大小是不同的。4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述協(xié)議流的緩存區(qū)大于所述廣播流/鏡像流的緩存區(qū)小于所述組播流/單播流的緩存區(qū)。5.根據(jù)權(quán)利要求1所述的方法,其特征在于,將所述單播流的共享緩存劃分為N個(gè)子共享緩存,并將預(yù)定個(gè)數(shù)個(gè)端口對(duì)應(yīng)一個(gè)所述子共享緩存,在端口對(duì)應(yīng)的固定緩存使用完后,使用與所述端口對(duì)應(yīng)的子共享緩存,其中,N為大于等于I的正整數(shù)。6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述預(yù)定個(gè)數(shù)為I個(gè)。7.—種業(yè)務(wù)感知的芯片緩存資源管理裝置,其特征在于,包括緩存區(qū)劃分模塊和單播緩存區(qū)劃分模塊, 所述緩存區(qū)劃分模塊用于將芯片緩存區(qū)按照業(yè)務(wù)類型劃分,至少劃分為單播、組播、廣播、鏡像流和協(xié)議流緩存區(qū); 所述單播緩存區(qū)劃分模塊用于針對(duì)單播流,為每個(gè)端口劃分出一塊固定緩存和所有端口共用的共享緩存。8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,還包括共享緩存劃分模塊,所述共享緩存劃分模塊用于將所述單播流的共享緩存劃分為N個(gè)子共享緩存,其中,N為大于等于I的正整數(shù)。
【專利摘要】本發(fā)明揭示了一種業(yè)務(wù)感知的芯片緩存資源管理方法,包括:將芯片緩存區(qū)按照業(yè)務(wù)類型劃分,每個(gè)業(yè)務(wù)類型對(duì)應(yīng)一塊緩存區(qū),所述業(yè)務(wù)類型包括單播、組播、廣播、鏡像流和協(xié)議流;所述單播流為每個(gè)端口劃分出一塊固定緩存和所有端口共用的共享緩存,對(duì)于單播流,優(yōu)先使用與端口對(duì)應(yīng)的所述固定緩存,若所述端口的固定緩存被使用完,則使用所述共享緩存;所述組播、廣播、鏡像流和協(xié)議流則使用各自對(duì)應(yīng)的緩存區(qū)。本發(fā)明能夠保證業(yè)務(wù)功能對(duì)緩存資源的充分利用,在芯片緩存資源有限的情況,保證重要業(yè)務(wù)的功能。
【IPC分類】H04L29/08, H04L12/24
【公開號(hào)】CN105657031
【申請(qǐng)?zhí)枴?br>【發(fā)明人】許俊, 趙茂聰
【申請(qǐng)人】盛科網(wǎng)絡(luò)(蘇州)有限公司
【公開日】2016年6月8日
【申請(qǐng)日】2016年1月29日