两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

基于時(shí)戳更新令牌桶的流量監(jiān)管的方法及系統(tǒng)的制作方法

文檔序號(hào):7971059閱讀:127來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):基于時(shí)戳更新令牌桶的流量監(jiān)管的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)通信領(lǐng)域,具體涉及流量監(jiān)管技術(shù),尤其涉及一種基于時(shí)戳更新令牌桶的流量監(jiān)管的方法及系統(tǒng)。
背景技術(shù)
隨著網(wǎng)絡(luò)的快速發(fā)展,各種應(yīng)用越來(lái)越多,服務(wù)質(zhì)量也越來(lái)越受到重視。從高速鏈路向低速鏈路傳輸數(shù)據(jù)時(shí),帶寬會(huì)在低速鏈路接口處出現(xiàn)擁塞,導(dǎo)致數(shù)據(jù)丟失嚴(yán)重,如果不做任何限制,會(huì)影響到低延時(shí)要求的數(shù)據(jù)如語(yǔ)音等。流量監(jiān)管是一種在入接口或出接口對(duì)進(jìn)入交換機(jī)和路由器的某流量進(jìn)行限制的流量管理技術(shù),其典型作用是限制進(jìn)入或流出某一網(wǎng)絡(luò)的某一流的流量與突發(fā)。在報(bào)文滿(mǎn)足一定的條件時(shí),如某個(gè)流的報(bào)文流量過(guò)大,流量監(jiān)管就可以對(duì)該報(bào)文采取不同的處理動(dòng)作,例如丟棄報(bào)文,或重新設(shè)置報(bào)文的優(yōu)先級(jí)等,以保護(hù)網(wǎng)絡(luò)資源和運(yùn)營(yíng)商的利益。流量監(jiān)管采用承諾訪問(wèn)速率和最大峰值訪問(wèn)速率方法來(lái)對(duì)流量進(jìn)行控制,具體處理流程采用令牌桶來(lái)實(shí)現(xiàn)。用戶(hù)按設(shè)定的速率向令牌桶中放置令牌,當(dāng)報(bào)文到來(lái)時(shí),如果令牌桶中有足夠的令牌可以用來(lái)發(fā)送報(bào)文,則報(bào)文直接通過(guò),同時(shí)令牌桶中的令牌按報(bào)文長(zhǎng)度做相應(yīng)的減少;如果令牌桶中的令牌數(shù)量不足,則對(duì)報(bào)文做丟棄或重新標(biāo)記后再發(fā)送,令牌桶中的令牌數(shù)量不做變化。可以看出,令牌桶的操作有兩種,一種是用戶(hù)按設(shè)定的速率向令牌桶中放置令牌進(jìn)行更新,另一種是流量監(jiān)管測(cè)量當(dāng)報(bào)文到來(lái)時(shí)對(duì)令牌做相應(yīng)的減法或不做操作。目前對(duì)令牌桶的更新一般是用戶(hù)按設(shè)定的速率周期性向令牌桶中放置令牌來(lái)實(shí)現(xiàn)。比如對(duì)某個(gè)流的流量限制是10Mbps,則可以按周期性每秒向這個(gè)流放置10兆比特令牌來(lái)達(dá)到目的,這樣令牌更新的粒度就是10兆比特;或者按周期性每0. 1秒向這個(gè)流放置1 兆比特令牌來(lái)達(dá)到目的,這樣令牌更新的粒度就是1兆比特。周期性對(duì)令牌桶進(jìn)行更新隨著流的條目越來(lái)越大,受到的限制也越來(lái)越大。比如,流的條目達(dá)到16K時(shí),假設(shè)時(shí)鐘頻率是400兆赫茲,時(shí)鐘周期就是2. 5納秒,不考慮對(duì)報(bào)文的處理,對(duì)所有流更新一次的時(shí)間為 16K*2. 5納秒=40Κ納秒,假設(shè)令牌桶用單口 SRAM來(lái)存儲(chǔ),一次更新需要一次讀操作和一次寫(xiě)操作,那么更新周期將達(dá)到80k納秒,如果這條流的速率是1000Mbps,更新粒度最小也變?yōu)?0k比特。如果考慮到報(bào)文還需要對(duì)令牌桶進(jìn)行操作,更新粒度將變的更大,假設(shè)令牌桶的更新占用令牌桶10%的帶寬,那么每次的更新粒度就變?yōu)?00k比特。再考慮到流的條目可能變?yōu)?4K大小,更新粒度將變得更大,這是不可接受的。所以目前的技術(shù)在流的條目變大時(shí),更新粒度也變的很大,甚至到一個(gè)不可接受的地步,而這將耗費(fèi)巨大的存儲(chǔ)帶寬,嚴(yán)重影響流量監(jiān)管測(cè)量的帶寬。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于時(shí)戳更新令牌桶的流量監(jiān)管的方法,其可極大降低周期性令牌桶更新占用的存儲(chǔ)帶寬,從而提升流量監(jiān)管的性能。
本發(fā)明的目的還在于提供一種應(yīng)用上述方法的系統(tǒng)。為實(shí)現(xiàn)上述發(fā)明目的之一,本發(fā)明的提供一種基于時(shí)戳更新令牌桶的流量監(jiān)管的方法,在令牌桶增加一用于記錄上次令牌更新時(shí)間的時(shí)戳變量,該方法包括如下步驟
51、接收?qǐng)?bào)文,獲取所述報(bào)文的長(zhǎng)度;
52、獲取與當(dāng)前報(bào)文相對(duì)應(yīng)的令牌桶;
53、根據(jù)所述時(shí)戳變量來(lái)更新所述令牌桶中的令牌數(shù),并將所述時(shí)戳變量的值更新為當(dāng)前時(shí)間,其中,應(yīng)增令牌數(shù)=(當(dāng)前時(shí)間一當(dāng)前時(shí)戳變量的值)*更新速率,所述令牌桶的令牌數(shù)不超過(guò)令牌桶的容量;
54、比較所述報(bào)文的長(zhǎng)度與當(dāng)前令牌桶中的令牌數(shù),來(lái)決定對(duì)當(dāng)前報(bào)文做相應(yīng)的處
理;
55、保持對(duì)令牌桶按照一定周期進(jìn)行更新,但降低周期性令牌桶更新周期。作為本發(fā)明的進(jìn)一步改進(jìn),所述步驟S3還包括
判斷當(dāng)前令牌桶是否為滿(mǎn),若是,則不更新;若否,則向所述令牌桶加入所述應(yīng)增令牌數(shù),最大加到令牌桶滿(mǎn)容量,對(duì)溢出的令牌做丟棄處理。作為本發(fā)明的進(jìn)一步改進(jìn),所述步驟S4具體為
判斷所述報(bào)文的長(zhǎng)度是否小于當(dāng)前令牌桶中的令牌數(shù),若是,則通過(guò)該報(bào)文,并在令牌桶中減少相應(yīng)的令牌數(shù);若否,則丟棄所述報(bào)文或者重新標(biāo)記后發(fā)送,令牌數(shù)不作更新。作為本發(fā)明的進(jìn)一步改進(jìn),所述令牌桶可包括多個(gè)令牌數(shù)以應(yīng)對(duì)多個(gè)應(yīng)用,所述多個(gè)令牌數(shù)對(duì)應(yīng)不同的令牌更新速率。作為本發(fā)明的進(jìn)一步改進(jìn),所述步驟S5具體為周期性地根據(jù)時(shí)戳來(lái)決定往令牌桶里增加多少令牌,增加的令牌數(shù)為((當(dāng)前時(shí)間-令牌桶里的時(shí)戳變量的值)*更新速率)。為實(shí)現(xiàn)上述另一發(fā)明目的,本發(fā)明提供了一種基于時(shí)戳更新令牌桶的流量監(jiān)管的系統(tǒng),其包括如下單元
報(bào)文接收單元、用于接收?qǐng)?bào)文,獲取所述報(bào)文的長(zhǎng)度; 令牌桶匹配單元、用于獲取與當(dāng)前報(bào)文相對(duì)應(yīng)的令牌桶;
令牌桶更新單元、用于根據(jù)所述時(shí)戳變量來(lái)更新所述令牌桶中的令牌數(shù),并將所述時(shí)戳變量的值更新為當(dāng)前時(shí)間,其中,應(yīng)增令牌數(shù)=(當(dāng)前時(shí)間一當(dāng)前時(shí)戳變量的值)*更新速率,所述令牌桶的令牌數(shù)不超過(guò)令牌桶的容量;
報(bào)文處理單元、用于比較所述報(bào)文的長(zhǎng)度與當(dāng)前令牌桶中的令牌數(shù),來(lái)決定對(duì)當(dāng)前報(bào)文做相應(yīng)的處理;
周期性更新單元、用于保持對(duì)令牌桶按照一定周期進(jìn)行更新,但降低周期性令牌桶更新周期。作為本發(fā)明的進(jìn)一步改進(jìn),所述令牌桶更新單元還用于
判斷當(dāng)前令牌桶是否為滿(mǎn),若是,則不更新;若否,則向所述令牌桶加入所述應(yīng)增令牌數(shù),最大加到令牌桶滿(mǎn)容量,對(duì)溢出的令牌做丟棄處理。作為本發(fā)明的進(jìn)一步改進(jìn),所述報(bào)文處理單元具體用于
判斷所述報(bào)文的長(zhǎng)度是否小于當(dāng)前令牌桶中的令牌數(shù),若是,則通過(guò)該報(bào)文,并在令牌桶中減少相應(yīng)的令牌數(shù);若否,則丟棄所述報(bào)文或者重新標(biāo)記后發(fā)送,令牌數(shù)不作更新。
作為本發(fā)明的進(jìn)一步改進(jìn),所述令牌桶可包括多個(gè)令牌數(shù)以應(yīng)對(duì)多個(gè)應(yīng)用,所述多個(gè)令牌數(shù)對(duì)應(yīng)不同的令牌更新速率。作為本發(fā)明的進(jìn)一步改進(jìn),所述周期性更新單元具體用于周期性地根據(jù)時(shí)戳來(lái)決定往令牌桶里增加多少令牌,增加的令牌數(shù)為((當(dāng)前時(shí)間-令牌桶里的時(shí)戳變量的值) *更新速率)。與現(xiàn)有技術(shù)相比,本發(fā)明通過(guò)時(shí)戳機(jī)制在流量監(jiān)管測(cè)量時(shí)進(jìn)行流量監(jiān)管令牌桶的更新,極大降低周期性令牌桶更新占用的存儲(chǔ)帶寬,且更新粒度更為精確,進(jìn)而使得流量監(jiān)管的性能更好。


圖1是現(xiàn)有技術(shù)的流量監(jiān)管中令牌桶更新的原理圖2是本發(fā)明一實(shí)施方式中基于時(shí)戳更新令牌桶的流量監(jiān)管的方法的流程圖; 圖3是本發(fā)明一實(shí)施方式中基于時(shí)戳的令牌桶更新的原理圖; 圖4是本發(fā)明一實(shí)施方式中基于時(shí)戳更新令牌桶的流量監(jiān)管的系統(tǒng)的模塊示意圖。
具體實(shí)施例方式以下將結(jié)合附圖所示的具體實(shí)施方式
對(duì)本發(fā)明進(jìn)行詳細(xì)描述。但這些實(shí)施方式并不限制本發(fā)明,本領(lǐng)域的普通技術(shù)人員根據(jù)這些實(shí)施方式所做出的結(jié)構(gòu)、方法、或功能上的變換均包含在本發(fā)明的保護(hù)范圍內(nèi)。本發(fā)明主要揭露一種應(yīng)用于網(wǎng)絡(luò)通信領(lǐng)域的流量監(jiān)管的方法,其主要還是沿用產(chǎn)業(yè)所常用的令牌桶監(jiān)測(cè)管理的技術(shù),首先介紹下令牌桶,如圖1所示,令牌桶(Token Bucket)是一種常見(jiàn)的流量測(cè)量技術(shù),常用于對(duì)業(yè)務(wù)板得流量進(jìn)行限制和整形,還能夠?qū)α髁康乃俾蔬M(jìn)行測(cè)量。其工作原理是,令牌桶按用戶(hù)設(shè)定的速度向桶中放置令牌,當(dāng)桶中令牌滿(mǎn)時(shí),就不再增加。當(dāng)報(bào)文到來(lái)時(shí),令牌桶中有足夠的令牌可以用于發(fā)送報(bào)文,則報(bào)文直接通過(guò)并繼續(xù)發(fā)送,同時(shí)令牌數(shù)作相應(yīng)減少;反之,則不予通過(guò)。其中,令牌桶的容量為額定的,其可包括保證令牌桶容量(CBS )、突發(fā)令牌桶容量(PBS )等。參圖2和圖3所示,在本實(shí)施方式中,所述基于時(shí)戳更新令牌桶的流量監(jiān)管的方法,首先,需要在令牌桶增加一用于記錄上次令牌更新時(shí)間的時(shí)戳變量,即,每作一次令牌更新的動(dòng)作后,都會(huì)把當(dāng)前更新的時(shí)間點(diǎn)記錄為一個(gè)時(shí)戳變量的值,以方便下一次更新的進(jìn)行。該方法包括如下步驟
Si、接收?qǐng)?bào)文,獲取所述報(bào)文的長(zhǎng)度;
優(yōu)選地,從網(wǎng)絡(luò)上接收?qǐng)?bào)文,所述報(bào)文是以一定格式組織起來(lái)的數(shù)據(jù),比如,其可包括報(bào)文類(lèi)型、報(bào)文版本、報(bào)文長(zhǎng)度、報(bào)文實(shí)體等等信息,系統(tǒng)在接收到此報(bào)文的同時(shí)便獲取報(bào)文的長(zhǎng)度。S2、獲取與當(dāng)前報(bào)文相對(duì)應(yīng)的令牌桶;
報(bào)文對(duì)應(yīng)一種報(bào)文類(lèi)型,于是,需要首先識(shí)別該報(bào)文的報(bào)文類(lèi)型,然后根據(jù)此報(bào)文所屬的類(lèi)別去匹配得到與該報(bào)文所對(duì)應(yīng)的令牌桶,顯而易見(jiàn)地,不同的報(bào)文對(duì)應(yīng)的流量監(jiān)管標(biāo)準(zhǔn)也會(huì)不一樣,所以需要對(duì)應(yīng)不同的令牌桶來(lái)實(shí)現(xiàn)本發(fā)明的流量監(jiān)管。
6
S3、根據(jù)所述時(shí)戳變量來(lái)更新所述令牌桶中的令牌數(shù),并將所述時(shí)戳變量的值更新為當(dāng)前時(shí)間,其中,應(yīng)增令牌數(shù)=(當(dāng)前時(shí)間一當(dāng)前時(shí)戳變量的值)*更新速率,所述令牌桶的令牌數(shù)不超過(guò)令牌桶的容量;
于本發(fā)明的實(shí)施方式中,在接收?qǐng)?bào)文信息的同時(shí)記錄下當(dāng)前時(shí)間,接下來(lái),便開(kāi)始更新令牌桶里面的令牌,此時(shí),需要首先判斷令牌桶是否為滿(mǎn),若是,則不做更新;否則,則往令牌桶里面加((當(dāng)前時(shí)間-當(dāng)前時(shí)戳變量的值)*更新速率)個(gè)令牌,需要注意的是,令牌數(shù)不超過(guò)令牌桶的容量(最大加到令牌桶滿(mǎn)),將溢出的令牌做丟棄處理,在更新令牌的動(dòng)作結(jié)束的同時(shí),還需把令牌桶里的時(shí)戳變量的值更新為當(dāng)前時(shí)間,以方便下一次令牌桶更新的完成。S4、比較所述報(bào)文的長(zhǎng)度與當(dāng)前令牌桶中的令牌數(shù),來(lái)決定對(duì)當(dāng)前報(bào)文做相應(yīng)的處理。此步驟中,判斷所述報(bào)文的長(zhǎng)度是否小于當(dāng)前令牌桶中的令牌數(shù),若是,則通過(guò)該報(bào)文繼續(xù)發(fā)送到其它處理單元,并在令牌桶中減少相應(yīng)的令牌數(shù)(減少的令牌數(shù)按照?qǐng)?bào)文的長(zhǎng)度來(lái)確定);若否,則丟棄所述報(bào)文或者重新標(biāo)記后發(fā)送到其它處理單元,同時(shí),令牌桶中的令牌數(shù)不作更新。S5、保持對(duì)令牌桶按照一定周期進(jìn)行更新,但降低周期性令牌桶更新周期。此步驟中,也需要周期性地根據(jù)時(shí)戳來(lái)決定往令牌桶里增加多少令牌,增加的令牌數(shù)為((當(dāng)前時(shí)間-令牌桶里的時(shí)戳變量的值)*更新速率)。因?yàn)橛涗洉r(shí)戳的信號(hào)會(huì)翻轉(zhuǎn),只根據(jù)報(bào)文到來(lái)的時(shí)間來(lái)更新,可能那個(gè)時(shí)間剛好和上次報(bào)文的時(shí)間相差一個(gè)周期, 會(huì)造成不更新或者少更新。而本發(fā)明在報(bào)文到來(lái)的時(shí)候會(huì)更新令牌桶,同時(shí)還會(huì)周期性的更新令牌桶,這樣不會(huì)有少更新或不更新的情況。基于時(shí)戳更新令牌桶的同時(shí),保持但降低周期性令牌桶更新周期,防止時(shí)戳翻轉(zhuǎn)造成少更新,并極大降低周期性令牌桶更新占用的帶寬。 上述各步驟便完成了本發(fā)明的基于時(shí)戳更新令牌桶的流量監(jiān)管的工作。特別地,所述令牌桶可包括多個(gè)令牌數(shù)以應(yīng)對(duì)多個(gè)應(yīng)用,所述多個(gè)令牌數(shù)對(duì)應(yīng)不同的令牌更新速率。也就是說(shuō),令牌桶里可能會(huì)有不止一種令牌數(shù)來(lái)應(yīng)對(duì)各種應(yīng)用,一般會(huì)有承諾訪問(wèn)速率和最大峰值訪問(wèn)速率,都可以根據(jù)上文提到的時(shí)戳方法進(jìn)行更新,只需要對(duì)應(yīng)不用的更新速率即可。接下來(lái),將結(jié)合圖4來(lái)詳細(xì)介紹下本發(fā)明的一實(shí)施方式中基于時(shí)戳更新令牌桶的流量監(jiān)管的系統(tǒng)的工作原理,首先,需要在令牌桶增加一用于記錄上次令牌更新時(shí)間的時(shí)戳變量,即,每作一次令牌更新的動(dòng)作后,都會(huì)把當(dāng)前更新的時(shí)間點(diǎn)記錄為一個(gè)時(shí)戳變量的值,以方便下一次更新的進(jìn)行。該系統(tǒng)包括如下各個(gè)單元
報(bào)文接收單元10、用于接收?qǐng)?bào)文,獲取所述報(bào)文的長(zhǎng)度;
優(yōu)選地,該單元從網(wǎng)絡(luò)上接收?qǐng)?bào)文,所述報(bào)文是以一定格式組織起來(lái)的數(shù)據(jù),比如,其可包括報(bào)文類(lèi)型、報(bào)文版本、報(bào)文長(zhǎng)度、報(bào)文實(shí)體等等信息,系統(tǒng)在接收到此報(bào)文的同時(shí)便獲取報(bào)文的長(zhǎng)度。令牌桶匹配單元20、用于獲取與當(dāng)前報(bào)文相對(duì)應(yīng)的令牌桶;
報(bào)文對(duì)應(yīng)一種報(bào)文類(lèi)型,于是,需要首先識(shí)別該報(bào)文的報(bào)文類(lèi)型,然后根據(jù)此報(bào)文所屬的類(lèi)別去匹配得到與該報(bào)文所對(duì)應(yīng)的令牌桶,顯而易見(jiàn)地,不同的報(bào)文對(duì)應(yīng)的流量監(jiān)管標(biāo)準(zhǔn)也會(huì)不一樣,所以需要對(duì)應(yīng)不同的令牌桶來(lái)實(shí)現(xiàn)本發(fā)明的流量監(jiān)管。令牌桶更新單元30、此單元用于根據(jù)所述時(shí)戳變量來(lái)更新所述令牌桶中的令牌數(shù),并將所述時(shí)戳變量的值更新為當(dāng)前時(shí)間,其中,應(yīng)增令牌數(shù)=(當(dāng)前時(shí)間一當(dāng)前時(shí)戳變量的值)*更新速率,所述令牌桶的令牌數(shù)不超過(guò)令牌桶的容量;
于本發(fā)明的實(shí)施方式中,該單元在接收?qǐng)?bào)文信息的同時(shí)記錄下當(dāng)前時(shí)間,接下來(lái),便開(kāi)始更新令牌桶里面的令牌,此時(shí),需要首先判斷令牌桶是否為滿(mǎn),若是,則不做更新;否則, 則往令牌桶里面加((當(dāng)前時(shí)間-當(dāng)前時(shí)戳變量的值)*更新速率)個(gè)令牌,需要注意的是,令牌數(shù)不超過(guò)令牌桶的容量(最大加到令牌桶滿(mǎn)),將溢出的令牌做丟棄處理,在更新令牌的動(dòng)作結(jié)束的同時(shí),還需把令牌桶里的時(shí)戳變量的值更新為當(dāng)前時(shí)間,以方便下一次令牌桶更新的完成。報(bào)文處理單元40、用于比較所述報(bào)文的長(zhǎng)度與當(dāng)前令牌桶中的令牌數(shù),來(lái)決定對(duì)當(dāng)前報(bào)文做相應(yīng)的處理。此單元中,需要判斷所述報(bào)文的長(zhǎng)度是否小于當(dāng)前令牌桶中的令牌數(shù),若是,則通過(guò)該報(bào)文繼續(xù)發(fā)送到其它處理單元,并在令牌桶中減少相應(yīng)的令牌數(shù)(減少的令牌數(shù)按照?qǐng)?bào)文的長(zhǎng)度來(lái)確定);若否,則丟棄所述報(bào)文或者重新標(biāo)記后發(fā)送到其它處理單元,同時(shí),令牌桶中的令牌數(shù)不作更新。周期性更新單元50、用于保持對(duì)令牌桶按照一定周期進(jìn)行更新,但降低周期性令牌桶更新周期。此單元中,也需要周期性地根據(jù)時(shí)戳來(lái)決定往令牌桶里增加多少令牌,增加的令牌數(shù)為((當(dāng)前時(shí)間-令牌桶里的時(shí)戳變量的值)*更新速率)。因?yàn)橛涗洉r(shí)戳的信號(hào)會(huì)翻轉(zhuǎn),只根據(jù)報(bào)文到來(lái)的時(shí)間來(lái)更新,可能那個(gè)時(shí)間剛好和上次報(bào)文的時(shí)間相差一個(gè)周期, 會(huì)造成不更新或者少更新。而本發(fā)明在報(bào)文到來(lái)的時(shí)候會(huì)更新令牌桶,同時(shí)還會(huì)周期性的更新令牌桶,這樣不會(huì)有少更新或不更新的情況?;跁r(shí)戳更新令牌桶的同時(shí),保持但降低周期性令牌桶更新周期,防止時(shí)戳翻轉(zhuǎn)造成少更新,并極大降低周期性令牌桶更新占用的帶寬。上述各單元便完成了本發(fā)明的基于時(shí)戳更新令牌桶的流量監(jiān)管的工作,需要提及的是,本發(fā)明通過(guò)流量監(jiān)管測(cè)量時(shí)進(jìn)行更新令牌桶操作的同時(shí),還可以保持對(duì)令牌桶的周期性更新。在周期性進(jìn)行更新時(shí),也需要根據(jù)時(shí)戳來(lái)決定往令牌桶里增加多少令牌,增加的令牌數(shù)為((當(dāng)前時(shí)間-令牌桶里的時(shí)戳變量的值)*更新速率)。特別地,所述令牌桶可包括多個(gè)令牌數(shù)以應(yīng)對(duì)多個(gè)應(yīng)用,所述多個(gè)令牌數(shù)對(duì)應(yīng)不同的令牌更新速率。也就是說(shuō),令牌桶里可能會(huì)有不止一種令牌數(shù)來(lái)應(yīng)對(duì)各種應(yīng)用,一般會(huì)有承諾訪問(wèn)速率和最大峰值訪問(wèn)速率,都可以根據(jù)上文提到的時(shí)戳方法進(jìn)行更新,只需要對(duì)應(yīng)不用的更新速率即可。與現(xiàn)有技術(shù)相比,本發(fā)明通過(guò)時(shí)戳機(jī)制在流量監(jiān)管測(cè)量時(shí)進(jìn)行流量監(jiān)管令牌桶的更新,極大降低周期性令牌桶更新占用的存儲(chǔ)帶寬,更新粒度可以更精確,而且不隨流的條目增加占用更多的帶寬,降低更新粒度,進(jìn)而使得流量監(jiān)管的性能更好。為了描述的方便,描述以上裝置時(shí)以功能分為各種單元分別描述。當(dāng)然,在實(shí)施本申請(qǐng)時(shí)可以把各單元的功能在同一個(gè)或多個(gè)軟件和/或硬件中實(shí)現(xiàn)。
通過(guò)以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請(qǐng)可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn)?;谶@樣的理解,本申請(qǐng)的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如ROM/RAM、磁碟、光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備 (可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請(qǐng)各個(gè)實(shí)施方式或者實(shí)施方式的某些部分所述的方法。以上所描述的裝置實(shí)施方式僅僅是示意性的,其中所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本實(shí)施方式方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。本申請(qǐng)可用于眾多通用或?qū)S玫挠?jì)算系統(tǒng)環(huán)境或配置、或通訊系統(tǒng)環(huán)境或設(shè)備中。例如個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、多處理器系統(tǒng)、 基于微處理器的系統(tǒng)、置頂盒、可編程的消費(fèi)電子設(shè)備、網(wǎng)絡(luò)PC、小型計(jì)算機(jī)、大型計(jì)算機(jī)、 包括以上任何系統(tǒng)或設(shè)備的分布式計(jì)算環(huán)境等等,以及交換機(jī)、路由器、包括以上任何設(shè)備的通訊系統(tǒng)環(huán)境等等。本申請(qǐng)可以在由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類(lèi)型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計(jì)算環(huán)境中實(shí)踐本申請(qǐng),在這些分布式計(jì)算環(huán)境中,由通過(guò)通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來(lái)執(zhí)行任務(wù)。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲(chǔ)設(shè)備在內(nèi)的本地和遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)介質(zhì)中。應(yīng)當(dāng)理解,雖然本說(shuō)明書(shū)按照實(shí)施方式加以描述,但并非每個(gè)實(shí)施方式僅包含一個(gè)獨(dú)立的技術(shù)方案,說(shuō)明書(shū)的這種敘述方式僅僅是為清楚起見(jiàn),本領(lǐng)域技術(shù)人員應(yīng)當(dāng)將說(shuō)明書(shū)作為一個(gè)整體,各實(shí)施方式中的技術(shù)方案也可以經(jīng)適當(dāng)組合,形成本領(lǐng)域技術(shù)人員可以理解的其他實(shí)施方式。上文所列出的一系列的詳細(xì)說(shuō)明僅僅是針對(duì)本發(fā)明的可行性實(shí)施方式的具體說(shuō)明,它們并非用以限制本發(fā)明的保護(hù)范圍,凡未脫離本發(fā)明技藝精神所作的等效實(shí)施方式或變更均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種基于時(shí)戳更新令牌桶的流量監(jiān)管的方法,其特征在于,在令牌桶增加一用于記錄上次令牌更新時(shí)間的時(shí)戳變量,該方法包括如下步驟51、接收?qǐng)?bào)文,獲取所述報(bào)文的長(zhǎng)度;52、獲取與當(dāng)前報(bào)文相對(duì)應(yīng)的令牌桶;53、根據(jù)所述時(shí)戳變量來(lái)更新所述令牌桶中的令牌數(shù),并將所述時(shí)戳變量的值更新為當(dāng)前時(shí)間,其中,應(yīng)增令牌數(shù)=(當(dāng)前時(shí)間一當(dāng)前時(shí)戳變量的值)*更新速率,所述令牌桶的令牌數(shù)不超過(guò)令牌桶的容量;54、比較所述報(bào)文的長(zhǎng)度與當(dāng)前令牌桶中的令牌數(shù),來(lái)決定對(duì)當(dāng)前報(bào)文做相應(yīng)的處理;55、保持對(duì)令牌桶按照一定周期進(jìn)行更新,但降低周期性令牌桶更新周期。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟S3還包括判斷當(dāng)前令牌桶是否為滿(mǎn),若是,則不更新;若否,則向所述令牌桶加入所述應(yīng)增令牌數(shù),最大加到令牌桶滿(mǎn)容量,對(duì)溢出的令牌做丟棄處理。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟S4具體為判斷所述報(bào)文的長(zhǎng)度是否小于當(dāng)前令牌桶中的令牌數(shù),若是,則通過(guò)該報(bào)文,并在令牌桶中減少相應(yīng)的令牌數(shù);若否,則丟棄所述報(bào)文或者重新標(biāo)記后發(fā)送,令牌數(shù)不作更新。
4.根據(jù)權(quán)利要求1至3任意一項(xiàng)所述的方法,其特征在于,所述令牌桶可包括多個(gè)令牌數(shù)以應(yīng)對(duì)多個(gè)應(yīng)用,所述多個(gè)令牌數(shù)對(duì)應(yīng)不同的令牌更新速率。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟S5具體為周期性地根據(jù)時(shí)戳來(lái)決定往令牌桶里增加多少令牌,增加的令牌數(shù)為((當(dāng)前時(shí)間-令牌桶里的時(shí)戳變量的值)*更新速率)。
6.一種基于時(shí)戳更新令牌桶的流量監(jiān)管的系統(tǒng),其特征在于,其包括如下單元報(bào)文接收單元、用于接收?qǐng)?bào)文,獲取所述報(bào)文的長(zhǎng)度;令牌桶匹配單元、用于獲取與當(dāng)前報(bào)文相對(duì)應(yīng)的令牌桶;令牌桶更新單元、用于根據(jù)所述時(shí)戳變量來(lái)更新所述令牌桶中的令牌數(shù),并將所述時(shí)戳變量的值更新為當(dāng)前時(shí)間,其中,應(yīng)增令牌數(shù)=(當(dāng)前時(shí)間一當(dāng)前時(shí)戳變量的值)*更新速率,所述令牌桶的令牌數(shù)不超過(guò)令牌桶的容量;報(bào)文處理單元、用于比較所述報(bào)文的長(zhǎng)度與當(dāng)前令牌桶中的令牌數(shù),來(lái)決定對(duì)當(dāng)前報(bào)文做相應(yīng)的處理;周期性更新單元、用于保持對(duì)令牌桶按照一定周期進(jìn)行更新,但降低周期性令牌桶更新周期。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述令牌桶更新單元還用于判斷當(dāng)前令牌桶是否為滿(mǎn),若是,則不更新;若否,則向所述令牌桶加入所述應(yīng)增令牌數(shù),最大加到令牌桶滿(mǎn)容量,對(duì)溢出的令牌做丟棄處理。
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述報(bào)文處理單元具體用于判斷所述報(bào)文的長(zhǎng)度是否小于當(dāng)前令牌桶中的令牌數(shù),若是,則通過(guò)該報(bào)文,并在令牌桶中減少相應(yīng)的令牌數(shù);若否,則丟棄所述報(bào)文或者重新標(biāo)記后發(fā)送,令牌數(shù)不作更新。
9.根據(jù)權(quán)利要求6至8中任意一項(xiàng)所述的系統(tǒng),其特征在于,所述令牌桶可包括多個(gè)令牌數(shù)以應(yīng)對(duì)多個(gè)應(yīng)用,所述多個(gè)令牌數(shù)對(duì)應(yīng)不同的令牌更新速率。
10.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述周期性更新單元具體用于周期性地根據(jù)時(shí)戳來(lái)決定往令牌桶里增加多少令牌,增加的令牌數(shù)為((當(dāng)前時(shí)間-令牌桶里的時(shí)戳變量的值)*更新速率)。
全文摘要
本發(fā)明揭示了一種基于時(shí)戳更新令牌桶的流量監(jiān)管的方法及系統(tǒng),在令牌桶增加一用于記錄上次令牌更新時(shí)間的時(shí)戳變量,該方法包括如下步驟S1、接收?qǐng)?bào)文,獲取所述報(bào)文的長(zhǎng)度;S2、獲取與當(dāng)前報(bào)文相對(duì)應(yīng)的令牌桶;S3、根據(jù)所述時(shí)戳變量來(lái)更新所述令牌桶中的令牌數(shù),并將所述時(shí)戳變量的值更新為當(dāng)前時(shí)間,其中,應(yīng)增令牌數(shù)=(當(dāng)前時(shí)間—當(dāng)前時(shí)戳變量的值)*更新速率,所述令牌桶的令牌數(shù)不超過(guò)令牌桶的容量;S4、比較所述報(bào)文的長(zhǎng)度與當(dāng)前令牌桶中的令牌數(shù),來(lái)決定對(duì)當(dāng)前報(bào)文做相應(yīng)的處理;S5、保持但降低周期性令牌桶更新周期。本發(fā)明通過(guò)時(shí)戳機(jī)制在流量監(jiān)管測(cè)量時(shí)進(jìn)行流量監(jiān)管令牌桶的更新,極大降低周期性令牌桶更新占用的存儲(chǔ)帶寬,且更新粒度更為精確,進(jìn)而使得流量監(jiān)管的性能更好。
文檔編號(hào)H04L12/56GK102413042SQ201110358119
公開(kāi)日2012年4月11日 申請(qǐng)日期2011年11月14日 優(yōu)先權(quán)日2011年11月14日
發(fā)明者孫劍勇, 徐昌發(fā) 申請(qǐng)人:盛科網(wǎng)絡(luò)(蘇州)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
祁门县| 新邵县| 寿光市| 梅河口市| 武功县| 合川市| 建德市| 抚松县| 东莞市| 玉门市| 盐边县| 陆良县| 南城县| 新郑市| 新闻| 永州市| 南漳县| 曲周县| 萝北县| 南溪县| 顺平县| 绥德县| 颍上县| 漯河市| 安宁市| 常州市| 广宗县| 务川| 桐梓县| 明光市| 武城县| 洪雅县| 沾化县| 滨海县| 海阳市| 自贡市| 湖南省| 抚松县| 南投县| 博客| 平顶山市|