專利名稱:一種數(shù)據(jù)流量約束控制的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)流量約束控制的實(shí)現(xiàn)方法。
背景技術(shù):
CAR(Committed Access Rate)是允許訪問速率技術(shù),用于約束用戶流量,它是IP網(wǎng)的一種有效的帶寬管理方式。CAR主要應(yīng)用于通信領(lǐng)域,針對客戶進(jìn)行流量限制。
依賴用戶自覺按服務(wù)規(guī)則發(fā)送數(shù)據(jù)流是不現(xiàn)實(shí)的,用戶的流量很可能超過與服務(wù)提供商簽定的服務(wù)水平協(xié)議(SLA),就會擠占其它用戶的帶寬,導(dǎo)致其它合法的流量不能得到正常的服務(wù)。在此情況下,為保證網(wǎng)絡(luò)的正常運(yùn)行,需在網(wǎng)絡(luò)入口處對用戶流量進(jìn)行限制,以保證用戶流量不違規(guī),以及用戶得不到超過協(xié)議規(guī)定的額外服務(wù)。
CAR可以針對單個用戶,也可以針對一群用戶進(jìn)行流量限制。這一群用戶必須是可以劃分到一個類別的用戶。例如限制某個上網(wǎng)用戶出口帶寬為512kbps,也可以限制某個小區(qū)所有用戶的總出口帶寬為512kbps。通常,在網(wǎng)絡(luò)的邊沿接口處,可通過配置CAR來限制突發(fā)數(shù)據(jù)流,控制IP流量以特定的速率進(jìn)出網(wǎng)絡(luò),以便于網(wǎng)絡(luò)經(jīng)營,提供有保障的網(wǎng)絡(luò)服務(wù)質(zhì)量(QoS)。
CAR允許在路由網(wǎng)絡(luò)上定義流量收縮的策略,可以定義在進(jìn)入接口上的分類和流量策略,還可以在當(dāng)被管理的通信超過固定帶寬分配的限度時采取措施。CAR還可以在擴(kuò)展訪問列表上設(shè)置優(yōu)先級,所以它可以對應(yīng)用內(nèi)容、端口號、源目標(biāo)地址等等提供規(guī)則管理。CAR本身就具備管理通信量的能力,所以也可以對擁塞進(jìn)行預(yù)防和控制。
目前CAR主要是以令牌桶的方式來實(shí)現(xiàn)的控制器根據(jù)分配給用戶的流量往令牌桶中加令牌,同時,根據(jù)用戶實(shí)際的流量從令牌桶里減令牌?;蛘呦喾?,控制器根據(jù)分配給用戶的流量往令牌桶中減令牌,同時,根據(jù)用戶實(shí)際的流量從令牌桶里加令牌。
以控制器根據(jù)分配給用戶的流量往令牌桶中加令牌,同時,根據(jù)用戶實(shí)際的流量從令牌桶里減令牌為例進(jìn)行說明,現(xiàn)有技術(shù)采用的令牌桶數(shù)據(jù)結(jié)構(gòu)如下
說明MAXToken單位時間最大流量,即帶寬,單位令牌個數(shù)(通常1令牌=1字節(jié))舉個例子說構(gòu)造一個令牌桶,這個令牌桶最多可以容納A個令牌,A和一段時間T內(nèi)交換機(jī)的允許通過的流量B是匹配的。對于1G令牌流量,一個令牌桶最多占用大約(60+n-1)bit存儲空間,由于1G=109≈230,就是說需要用30位二進(jìn)制數(shù)才能表示完全。每循環(huán)添加令牌數(shù)最多等價于1G流量,需要30bit二進(jìn)制表示,桶深為2倍1G流量,需要31bit二進(jìn)制表示,所以共需要61bit二進(jìn)制數(shù)表示。
例設(shè)定1個令牌代表1個字節(jié)(1Byte),約定某個用戶的流量不超過100兆字節(jié)每秒(100MegaByte/S),那么,在一秒時間內(nèi)(即T=1S),交換機(jī)允許通過的流量是100MegaByte/S*1 S=100MegaByte,也就是說,有100MegaByte的流量可以通過交換機(jī),每循環(huán)需要添加100MegaByte/1Byte=100M個令牌。
上述例子中,A等于200M個令牌,B等于100MegaByte,T等于1S。A和B是成正比的。這個令牌桶的深度是200M個令牌。
令牌桶用一個數(shù)據(jù)來表示深度,令牌桶深度用來平衡平穩(wěn)流量和突發(fā)流量?,F(xiàn)有技術(shù)的令牌桶深度為固定值,通常為兩倍的最大流量,如果令牌桶深度大大,意味著控制突發(fā)流量的能力降低,即如果用戶前一段時間沒有流量,令牌桶就會積累很多令牌,如果用戶突發(fā)大流量,令牌桶都會讓流量通過,如果多個用戶都是這種情況,那么就會造成網(wǎng)絡(luò)擁塞。如果令牌桶深度比較淺,則令牌桶很容易溢出,溢出的流量就被浪費(fèi)了,用戶得不到相應(yīng)服務(wù),此外,如果分配給用戶的帶寬較小,令牌桶中的令牌不足發(fā)送一個最長數(shù)據(jù)包,不論用戶數(shù)據(jù)平穩(wěn)還是突發(fā),長數(shù)據(jù)包都無法通過。
加令牌并不是隨時進(jìn)行的,而是周期性添加的,即在一個時間段內(nèi)只會加一次,如果這個時間段內(nèi)數(shù)據(jù)包很多,相應(yīng)減去的令牌就多,那么令牌桶就很容易空,一旦令牌桶處于空狀態(tài),在下一次添加令牌操作來臨之前,用戶數(shù)據(jù)包都無法通過。
減令牌是根據(jù)用戶數(shù)據(jù)進(jìn)行的,用戶數(shù)據(jù)到達(dá)的時間和數(shù)據(jù)包長度是不可預(yù)知的,所以減令牌的時間隨機(jī)、數(shù)量隨機(jī)。CAR控制器需要在一定時間內(nèi)對令牌桶加一次令牌,單位時間內(nèi)得到的令牌數(shù)目就是單位時間流量,也就是帶寬,通過控制單位時間添加的令牌數(shù)目就控制了流量,令牌桶中沒有令牌,用戶數(shù)據(jù)就無法通過。
短數(shù)據(jù)包對應(yīng)減去的令牌數(shù)目少,長數(shù)據(jù)包對應(yīng)的令牌就多,根據(jù)計算單位時間添加的令牌數(shù)目,可以對應(yīng)很多個短數(shù)據(jù)包,對應(yīng)長數(shù)據(jù)包的數(shù)目不會太多。
現(xiàn)有技術(shù)CAR控制器一般每1秒操作令牌桶一次,每次根據(jù)“每循環(huán)添加令牌數(shù)”向令牌桶加令牌。在接下來的這1秒內(nèi),根據(jù)通過的用戶流量減去相應(yīng)的令牌數(shù),直到令牌桶中沒有令牌為止。這種方案實(shí)現(xiàn)和操作比較簡單,但存在以下兩方面的缺點(diǎn)1、令牌桶對短時的突發(fā)流量控制有缺陷,而且對于帶寬較小的用戶長數(shù)據(jù)包通過率比較低。
現(xiàn)有技術(shù)令牌桶在一定時間內(nèi)添加的令牌是固定的,深度與帶寬無關(guān),也是固定的,固定的令牌桶深度對突發(fā)流量控制有缺陷(如果用戶前一段時間沒有流量,令牌桶就會積累很多令牌,如果用戶突發(fā)大流量,令牌桶都會讓流量通過,如果多個用戶都是這種情況,那么就會造成網(wǎng)絡(luò)擁塞)。對于短數(shù)據(jù)包來說,需要減的令牌數(shù)較少,比較容易通過,長數(shù)據(jù)包需要減去較多的令牌數(shù),令牌桶中如果沒有足夠的令牌,這個長數(shù)據(jù)包就無法通過,只有加的令牌數(shù)目大于現(xiàn)有數(shù)據(jù)包長度才可以通過。
對于加令牌周期比較短的應(yīng)用和用戶約定流量比較低的情況,這種現(xiàn)象會更突出,這兩種情況令牌桶都不會很深,每周期添加的令牌都不多,就是說,通過一個長報文后,通常要等多個周期后才能加滿一個長報文所需的令牌,這期間的長報文全部被丟棄。
2、由于令牌桶比較深,如果需要進(jìn)行流量約束用戶數(shù)量比較大,就需要占用較多的存儲空間,這樣可能需要增加額外的成本。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是克服現(xiàn)有技術(shù)進(jìn)行數(shù)據(jù)流量約束時,令牌桶占用存儲空間大、對短時的突發(fā)流量控制有缺陷、長數(shù)據(jù)包通過率比較低的不足,提供一種數(shù)據(jù)流量約束控制的實(shí)現(xiàn)方法,提高長數(shù)據(jù)包的通過率,對短時的突發(fā)流量進(jìn)行有效控制,并減小令牌桶占用的存儲空間。
本發(fā)明為解決上述技術(shù)問題所采用的技術(shù)方案為這種數(shù)據(jù)流量約束控制的實(shí)現(xiàn)方法,包括以下步驟構(gòu)造一個令牌桶,包括令牌桶深度參數(shù)和帶寬參數(shù),所述的令牌桶深度為一個固定令牌桶深度值加上一個動態(tài)令牌桶深度值;根據(jù)分配給用戶的流量,周期性地在令牌桶中加上相應(yīng)令牌數(shù)目,同時,根據(jù)用戶實(shí)際的流量從令牌桶減令牌,固定令牌桶深度在動態(tài)令牌桶深度下方,在減令牌前若令牌桶中的令牌數(shù)小于所述的固定令牌桶深度值時,流量不舍法;在下一次添加令牌時,先將固定令牌桶深度值補(bǔ)充滿,然后用戶流量才可以通過;或者,根據(jù)分配給用戶的流量,周期性地從令牌桶中減去相應(yīng)令牌數(shù)目,同時,根據(jù)用戶實(shí)際的流量往令牌桶加令牌,固定令牌桶深度在動態(tài)令牌桶深度上方,在加令牌前若令牌桶中的令牌數(shù)大于所述的動態(tài)令牌桶深度值時,流量不合法;在下一次減令牌時,先將超過動態(tài)令牌桶深度值的令牌減掉,然后用戶流量才可以通過。
一個令牌可以代表至少一個字節(jié)。周期性加或減令牌的時間間隔可以為不到1秒。所述的動態(tài)令牌桶深度值為最大帶寬的若干倍,并根據(jù)最大帶寬的變化而變化。最好為最大帶寬的2倍,并在帶寬不為0的情況下,至少為5個最大數(shù)據(jù)包所對應(yīng)的令牌數(shù)。所述的固定令牌桶深度值最好為一個最長數(shù)據(jù)包的長度所對應(yīng)的令牌數(shù)。
本發(fā)明的有益效果為本發(fā)明對令牌桶數(shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計,增加欠費(fèi)機(jī)制,允許預(yù)支令牌,長數(shù)據(jù)包可以使用欠費(fèi)桶令牌,提高了長數(shù)據(jù)包通過率;而且由于令牌桶的深度根據(jù)最大帶寬進(jìn)行變化,因此可以對流量進(jìn)行整形輸出,兼顧突發(fā)和平穩(wěn)流量,對短期突發(fā)和長期平均流量都進(jìn)行控制,保證了流量整形的效果。而且本發(fā)明采用一個令牌對應(yīng)多個字節(jié),并使操作令牌的周期縮短,因而可以減少令牌桶占用的存儲空間。
圖1為本發(fā)明工作原理示意圖。
具體實(shí)施例方式
下面根據(jù)附圖和實(shí)施例對本發(fā)明作進(jìn)一步詳細(xì)說明本發(fā)明提供一種數(shù)據(jù)流量約束控制的實(shí)現(xiàn)方法,構(gòu)造一個令牌桶,包括令牌桶深度參數(shù)和帶寬參數(shù),令牌桶深度為一個固定令牌桶深度值加上一個動態(tài)令牌桶深度值,固定令牌桶深度在動態(tài)令牌桶深度下方。根據(jù)分配給用戶的流量,周期性地在令牌桶中加上相應(yīng)令牌數(shù)目,同時,根據(jù)用戶實(shí)際的流量從令牌桶減令牌,在減令牌前若令牌桶中的令牌數(shù)小于所述的固定令牌桶深度值時,流量不合法;在下一次添加令牌時,先將固定令牌桶深度值補(bǔ)充滿,然后用戶流量才可以通過。動態(tài)令牌桶深度值可以采用最大帶寬的2倍,并根據(jù)最大帶寬的變化而變化,在帶寬不為0的情況下,至少為5個最大數(shù)據(jù)包所對應(yīng)的令牌數(shù)。固定令牌桶深度值可以采用一個最長數(shù)據(jù)包的長度所對應(yīng)的令牌數(shù)。
本發(fā)明令牌桶數(shù)據(jù)結(jié)構(gòu)設(shè)計為
說明如下MAXDataLength最長數(shù)據(jù)包的長度,單位令牌;MAXDepth令牌桶最大深度,單位令牌;MAXBand最大帶寬即每循環(huán)添加令牌數(shù)目,單位n字節(jié)/秒本發(fā)明添加令牌改為每八千分之一秒一次,另外,1令牌可以等價于4字節(jié),那么令牌桶最大深度桶深和每循環(huán)添加令牌數(shù)都減少為原來的三十二分之一,這樣對于1G比特數(shù)據(jù)流量,一個令牌桶只需占用不超過30bit的存儲空間,這樣相對于現(xiàn)有技術(shù)的61bit,而極大地減少了令牌桶占用的存儲空間。
所需存儲空間計算過程如下因?yàn)?G=109≈230,就是說需要用30位二進(jìn)制數(shù)才能表示完全,1G比特是1秒的流量,由于單位時間為1/8000秒,1/8000G≈217,這里只需要17位表示。每循環(huán)添加令牌數(shù)最多等價于1/8000G流量,需要17bit二進(jìn)制表示。由于令牌桶最大深度為2倍1G流量,因此需要18bit二進(jìn)制表示。這樣,共需要35bit二進(jìn)制數(shù)表示。又因?yàn)?個令牌代表4字節(jié),換算為4*8比特,減少為原來的1/32,令牌桶最大深度桶深和每循環(huán)添加令牌數(shù)還可以分別節(jié)省5bit,所以最終令牌桶占用35-5-5=25bit空間。
這樣,每八千分之一秒添加一個令牌,1個令牌代表4字節(jié),即4*8=32比特,這樣每秒添加32比特/(1/8000)=256k比特每秒。以1G比特最大流量看,最大帶寬為1G比特/秒,這樣最大流量為最大帶寬/單字節(jié)帶寬=(1G)/256k<10E4。
假設(shè)1個令牌等價于N字節(jié)(Byte),總流量為Fbit/s,帶寬分配的最小粒度為Kbit/s,最大數(shù)據(jù)包長Mbyte/s,共有S條流需要做CAR。那么MAXBand=F÷K,這表示最大帶寬參數(shù),用來確定存儲“帶寬參數(shù)”的空間大??;MAXDepth=MAXBand×2;這表示令牌桶最大深度,用來確定存儲“令牌桶深度”的空間大小。
這兩個參數(shù)是用來確定最大存儲空間的,在物理實(shí)現(xiàn)上,不論大小,通常按最大空間靜態(tài)分配,這樣做令牌桶尋址簡單,便于管理。實(shí)際令牌桶深是隨帶寬參數(shù)變化而變化的,實(shí)際桶深隱含在帶寬參數(shù)中。
下面說明一下令牌桶實(shí)際深度,假設(shè)分配給某一條數(shù)據(jù)流的帶寬為B個最小粒度,即B×Kbit/s,那么,當(dāng)M×5≤(B×K)×2,這表示兩次添加的令牌之和大于5個最大數(shù)據(jù)包長時,令牌桶實(shí)際深度=(B×K)×2;否則,令牌桶實(shí)際深度=M×5。
在實(shí)現(xiàn)中,實(shí)際桶深是動態(tài)變化的,由于最大帶寬是可以配置的,桶深根據(jù)最大帶寬進(jìn)行變化,這樣可以很好地對短時的突發(fā)流量進(jìn)行控制。但是為避免桶深過小,規(guī)定了令牌桶的最小深度,這里設(shè)為5個最大數(shù)據(jù)包長,從而可以保證最長數(shù)據(jù)包的通過,同時兼顧對突發(fā)流量的控制,可以平穩(wěn)流量。
這里之所以把令牌桶的深度設(shè)計成為帶寬的兩倍并且不小于5倍最長數(shù)據(jù)包,是為了允許各條連接根據(jù)PCR(峰值速率)的不同而具有不同的突發(fā)度。這里2和5可以變,2和5是比較合理的經(jīng)驗(yàn)值。但是,并不是說每循環(huán)內(nèi)至少可以連續(xù)突發(fā)5個最長包。因?yàn)檫@里有個欠費(fèi)機(jī)制(DEFICIT),當(dāng)桶中的令牌數(shù)小于等于最大數(shù)據(jù)包長等價的令牌數(shù)后,通過CAR的流量就不合法了,這樣報文可能被丟棄。
當(dāng)令牌桶中的令牌略小于最大數(shù)據(jù)包長等價的令牌時,如果到來的是一個短包,CAR就可以通過,如果是一個長包,CAR就不通過,這部分帶寬就浪費(fèi)了。這樣造成的后果就是線速發(fā)送時,長包通過率很低。線速即物理設(shè)備的物理傳送速率,如千兆以太網(wǎng)的線速就是1Gbit=1000Mbit。本發(fā)明使用欠費(fèi)機(jī)制(DEFICIT),把令牌桶底部提高到一個最大數(shù)據(jù)包長深度。各類通信協(xié)議對最長數(shù)據(jù)包有不同規(guī)定,如IP是65535byte,以太網(wǎng)(ETH2)最長為1518byte等等。針對上述長包情況,做CAR后流量是合法的,在令牌桶中減去相應(yīng)令牌。此時的令牌桶中的令牌低于最大包長等價的令牌數(shù),差值就是欠費(fèi)數(shù)目,在這個循環(huán)內(nèi),桶中的令牌數(shù)小于等于最大數(shù)據(jù)包長等價的令牌數(shù),以后的流量都是不合法的。在下一個循環(huán)添加令牌時,必須補(bǔ)充欠費(fèi)。這樣,在線速發(fā)送時,無論長包短包,通過率都不會降低,而且由于欠費(fèi)發(fā)生在連續(xù)兩個循環(huán)周期內(nèi),流量還是基本穩(wěn)定的。
可以將令牌桶中最大數(shù)據(jù)包長等價的令牌數(shù)對應(yīng)的桶看作欠費(fèi)桶,其余的桶深部分看作有效桶。如圖1所示,令牌桶中剩余令牌如A所示,這時有一個數(shù)據(jù)塊到來,控制器判斷有效桶中有令牌,從有效桶中取出令牌,發(fā)現(xiàn)不足,就從欠費(fèi)桶中提取需要的差值,如B所示。此后,由于有效桶中沒有令牌了,這個循環(huán)中,后續(xù)的流量做CAR都不合法。到下個循環(huán)添加令牌,要先添滿欠費(fèi)桶,剩余部分添加到有效桶中,如C所示。那么此時的令牌桶如D所示,長包通過了,帶寬沒有浪費(fèi),也沒有超過CAR的流量,流量也比較平穩(wěn)。
假設(shè)令牌桶中有500個令牌,包括380個欠費(fèi)桶令牌(380*4=1518byte)和120個有效桶中的令牌(120*4=480byte)。對短數(shù)據(jù)包64字節(jié)(64/4=16令牌),有欠費(fèi)桶500>16,允許通過,無欠費(fèi)桶120>16都可以通過;如果此時來一個1000字節(jié)的長報文(1000/4=250令牌),如果沒有欠費(fèi)桶,120<250,就無法通過,有了欠費(fèi)桶500>250,允許通過。欠費(fèi)可以下次償還,總的來說不會超出預(yù)定流量。
上文提到的CAR控制器是“加令牌”方式,實(shí)際操作中還可以用“減令牌”方式構(gòu)造一個令牌桶,包括令牌桶深度參數(shù)和帶寬參數(shù),令牌桶深度為一個固定令牌桶深度值加上一個動態(tài)令牌桶深度值,固定令牌桶深度在動態(tài)令牌桶深度上方。根據(jù)分配給用戶的流量,周期性地從令牌桶中減去相應(yīng)令牌數(shù)目,同時,根據(jù)用戶實(shí)際的流量往令牌桶加令牌,在加令牌前若令牌桶中的令牌數(shù)大于所述的動態(tài)令牌桶深度值時,流量不合法;在下一次減令牌時,先將超過動態(tài)令牌桶深度值的令牌減掉,然后用戶流量才可以通過。操作原理與“加令牌”方式相同,這里不再贅述。
本發(fā)明對令牌桶數(shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計,增加欠費(fèi)機(jī)制,允許預(yù)支令牌,長數(shù)據(jù)包可以使用欠費(fèi)桶令牌,提高了長數(shù)據(jù)包通過率;而且由于令牌桶的深度根據(jù)最大帶寬進(jìn)行變化,因此可以對流量進(jìn)行整形輸出,兼顧突發(fā)和平穩(wěn)流量,對短期突發(fā)和長期平均流量都進(jìn)行控制,保證了流量整形的效果。而且本發(fā)明采用一個令牌對應(yīng)多個字節(jié),并使操作令牌的周期縮短,因而可以減少令牌桶占用的存儲空間。
本領(lǐng)域技術(shù)人員不脫離本發(fā)明的實(shí)質(zhì)和精神,可以有多種變形方案實(shí)現(xiàn)本發(fā)明,以上所述僅為本發(fā)明較佳可行的實(shí)施例而已,并非因此局限本發(fā)明的權(quán)利范圍,凡運(yùn)用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)變化,均包含于本發(fā)明的權(quán)利范圍之內(nèi)。
權(quán)利要求
1.一種數(shù)據(jù)流量約束控制的實(shí)現(xiàn)方法,其特征在于,包括以下步驟構(gòu)造一個令牌桶,包括令牌桶深度參數(shù)和帶寬參數(shù),所述的令牌桶深度為一個固定令牌桶深度值加上一個動態(tài)令牌桶深度值;根據(jù)分配給用戶的流量,周期性地在令牌桶中加上相應(yīng)令牌數(shù)目,同時,根據(jù)用戶實(shí)際的流量從令牌桶減令牌,固定令牌桶深度在動態(tài)令牌桶深度下方,在減令牌前若令牌桶中的令牌數(shù)小于所述的固定令牌桶深度值時,流量不合法;在下一次添加令牌時,先將固定令牌桶深度值補(bǔ)充滿,然后用戶流量才可以通過;或者,根據(jù)分配給用戶的流量,周期性從令牌桶中減去相應(yīng)令牌數(shù)目,同時,根據(jù)用戶實(shí)際的流量往令牌桶加令牌,固定令牌桶深度在動態(tài)令牌桶深度上方,在加令牌前若令牌桶中的令牌數(shù)大于所述的動態(tài)令牌桶深度值時,流量不合法;在下一次減令牌時,先將超過動態(tài)令牌桶深度值的令牌減掉,然后用戶流量才可以通過。
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)流量約束控制的實(shí)現(xiàn)方法,其特征在于一個令牌代表至少一個字節(jié)。
3.根據(jù)權(quán)利要求2所述的數(shù)據(jù)流量約束控制的實(shí)現(xiàn)方法,其特征在于周期性加或減令牌的時間間隔為不到1秒。
4.根據(jù)權(quán)利要求1、2或3所述的數(shù)據(jù)流量約束控制的實(shí)現(xiàn)方法,其特征在于所述的動態(tài)令牌桶深度值為最大帶寬的若干倍,并根據(jù)最大帶寬的變化而變化。
5.根據(jù)權(quán)利要求4所述的數(shù)據(jù)流量約束控制的實(shí)現(xiàn)方法,其特征在于所述的動態(tài)令牌桶深度值為最大帶寬的2倍,并在帶寬不為0的情況下,至少為5個最大數(shù)據(jù)包所對應(yīng)的令牌數(shù)。
6.根據(jù)權(quán)利要求4所述的數(shù)據(jù)流量約束控制的實(shí)現(xiàn)方法,其特征在于所述的固定令牌桶深度值為一個最長數(shù)據(jù)包的長度所對應(yīng)的令牌數(shù)。
全文摘要
一種數(shù)據(jù)流量約束控制的實(shí)現(xiàn)方法,構(gòu)造一個令牌桶,包括令牌桶深度參數(shù)和帶寬參數(shù),令牌桶深度為一個固定令牌桶深度值加上一個動態(tài)令牌桶深度值;根據(jù)分配給用戶的流量在令牌桶中加上相應(yīng)令牌數(shù),同時,根據(jù)用戶實(shí)際流量從令牌桶減令牌,在減令牌前若令牌桶中的令牌數(shù)小于固定令牌桶深度值時流量不合法;在下一次添加令牌時,先將固定令牌桶深度值補(bǔ)充滿,然后用戶流量才可以通過;也可以采用根據(jù)流量加令牌的方式實(shí)現(xiàn),動態(tài)令牌桶深度值根據(jù)最大帶寬而變化,固定令牌桶深度值可為一個最長數(shù)據(jù)包的長度所對應(yīng)的令牌數(shù)。本發(fā)明可提高長數(shù)據(jù)包的通過率,可對短時的突發(fā)流量進(jìn)行有效控制,并減小令牌桶占用的存儲空間。
文檔編號H04L12/56GK1835447SQ20051003369
公開日2006年9月20日 申請日期2005年3月16日 優(yōu)先權(quán)日2005年3月16日
發(fā)明者胡容國 申請人:華為技術(shù)有限公司