国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      流量整形方法和流量整形設(shè)備的制作方法

      文檔序號:7853949閱讀:152來源:國知局
      專利名稱:流量整形方法和流量整形設(shè)備的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及流量整形方法和流量整形設(shè)備。
      背景技術(shù)
      在通信芯片中,常常需要對待轉(zhuǎn)發(fā)報文進行流量整形,流量整形(TrafficShaping)的作用是限制待轉(zhuǎn)發(fā)報文從通信芯片發(fā)送的流量與速度,使待轉(zhuǎn)發(fā)報文以比較均勻的速度向外發(fā)送。具體的,通信芯片中配置至少一個用于進行流量整形的緩存單元,每個緩存單元均被分配一個令牌桶,令牌桶存放用于指示通信芯片轉(zhuǎn)發(fā)報文的令牌,緩存單元周期性為令牌桶補充令牌,通信芯片將待轉(zhuǎn)發(fā)報文放入相應(yīng)緩存單元中,當該緩存單元的令牌桶中的令牌數(shù)大于等于待轉(zhuǎn)發(fā)數(shù)據(jù)的字節(jié)數(shù)時,則發(fā)送待轉(zhuǎn)發(fā)報文,同時,令牌桶中的令牌被扣除,被扣除的令牌數(shù)量為待轉(zhuǎn)發(fā)報文的字節(jié)數(shù);當令牌桶中令牌的數(shù)量小于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù)時,則等待令牌桶中的令牌被補充到數(shù)量大于等于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù)后再發(fā)送,或丟棄待轉(zhuǎn)發(fā)報文。公式T0kenfill*8/Tfm可以用于計算緩存單元的帶寬,其中,Tfill為補充周期,Tokenfill為每個Tfill向相應(yīng)的令牌桶補充的令牌數(shù),在流量整形前,通信芯片根據(jù)該公式為每個緩存單元設(shè)置Tfill和Tokenfill,使得設(shè)置后的根據(jù)公式T0kenfill*8/Tfill計算出的緩存單元的實際帶寬等于該緩存單元預設(shè)的配置帶寬Rateav6。但是,由于在實際取值過程中,Tfill的取值必須為系統(tǒng)時鐘頻率與緩存單元的數(shù)量的比值的正整數(shù)倍,且Tokenfill的取值必須為正整數(shù),則有時無法設(shè)置出能夠滿足公式 Tokenfill*8/Tfill=Rateave 的 Tfill 和 Tokenfill,為了使 Tokenfill*8/Tfill 的值盡可能接近Rateave,現(xiàn)有技術(shù)中,人們將Tfill的數(shù)值增大,這樣,根據(jù)公式T0kenfill*8/Tfill=Rateave可以看出,在Rateave不變、Tfill增大后,由于,Tokenfill與Tfill呈正比關(guān)系,因此,Tokenfill增大,Tokenfill*8/Tfill的值可能更接近Rateavej,即增加了設(shè)置的Tfill、和Tokenfill的準確性。下面對Tfill增大,使得Tokenfill*8/Tfill的值更接近Rateave進行舉例說明。例如,當Rateave = a, Tfill = b, Tokenfill=C 時,根據(jù)公式 Tokenfill*8/Tfill 計算出的值小于a,且最接近a,與的a誤差為2% ;當Rateave = a, Tfill = b, Tokenfill=c+l時,根據(jù)公式T0kenfill*8/Tfill計算出的值大于a,且最接近a,與的a誤差為2% ;當Tfill增大5倍即Tfill=5b時,由于,Rateave不變,Tokenfill與Tfill呈正比關(guān)系,因此,Tokenfill也變?yōu)樵瓉淼?倍,當Tokenfill=5c時,根據(jù)公式Tokenfill*8/Tfill計算出的值仍小于a,且與的a誤差仍為2% ;當Tokenfill=5 (c+1) =5c+5時,根據(jù)公式Tokenfill*8/Tfill計算出的值仍大于a,與的a誤差仍為2%,但是,由于此時5c+5與5c不為相鄰的整數(shù),因此Tokenfill還可以取小于5c+5且大于5c范圍內(nèi)的其他整數(shù),使得根據(jù)公式T0kenfill*8/Tfill計算出的值更接近a。在實現(xiàn)上述流量整形的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題當為了減小設(shè)置的Tfill、和Tokenfill的誤差而增大Tfill后,Tokenfill也隨之增大,即每個Tfill補充令牌的數(shù)量增加,導致緩存單元可轉(zhuǎn)發(fā)的最多字節(jié)數(shù)增加,緩存單元轉(zhuǎn)發(fā)報文的突發(fā)變大。

      發(fā)明內(nèi)容
      本發(fā)明的實施例提供一 種流量整形方法和流量整形設(shè)備,解決了當為了減小設(shè)置的Tfill、和Tokenfill的誤差而增大Tfill后,緩存單元發(fā)送報文的突發(fā)變大的問題。為達到上述目的,本發(fā)明的實施例采用如下技術(shù)方案一方面,提供一種流量整形設(shè)備,包括報文接收模塊,用于接收發(fā)送端發(fā)送的報文,并將所述報文存儲在緩存單元中;報文轉(zhuǎn)發(fā)模塊,用于將所述緩存單元中存儲的所述報文轉(zhuǎn)發(fā)至接收端;令牌管理模塊,用于周期性的為每個緩存單元補充令牌,并且在所述報文轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā)報文時,根據(jù)待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),將待轉(zhuǎn)發(fā)報文所在緩存單元的令牌減少指定數(shù)量,所述指定數(shù)量大于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),所述令牌用于指示所述報文轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā)所述緩存單元中存儲的相應(yīng)字節(jié)數(shù)的報文。另一方面,提供一種流量整形方法,包括流量整形設(shè)備接收發(fā)送端發(fā)送的報文,并存儲所述報文;將所述報文轉(zhuǎn)發(fā)至接收端;周期性的為每個緩存單元補充令牌,并且在轉(zhuǎn)發(fā)待轉(zhuǎn)發(fā)報文時,根據(jù)待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),將待轉(zhuǎn)發(fā)報文所在緩存單元的令牌減少指定數(shù)量,所述指定數(shù)量大于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),所述令牌用于指示所述流量整形設(shè)備轉(zhuǎn)發(fā)所述緩存單元中存儲的相應(yīng)字節(jié)數(shù)的報文。采用上述方案后,當前情景為報文轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā)待轉(zhuǎn)發(fā)數(shù)據(jù)時,令牌管理模塊扣除待轉(zhuǎn)發(fā)報文所在緩存單元的指定數(shù)量的令牌,指定數(shù)量大于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),也就是說,轉(zhuǎn)發(fā)一個字節(jié)的報文扣除一個令牌的參照情境中的I個令牌,相當于,當前情境中的n個令牌,其中,n為指定數(shù)量與待轉(zhuǎn)發(fā)報文的字節(jié)數(shù)的比值且大于1,假設(shè)當前情景與參照情景中,每個Tfill補充的令牌數(shù)均為Tokenfill,則相對于參照情境來說,當前情景中每個Tfill補充的令牌數(shù)已經(jīng)變?yōu)門okenfill/n,當前情景中實際帶寬的計算公式相對于參照情景
      8*Tokenjm In8*Tokenp! /n
      中的公式 Toknfill*8/Tfill 變?yōu)?Tp-由于,公式-Z-和 Toknfm*8/Tfill 中
      , 、
      的Tokenfill的取值粒度相同,n大于I,則Tokenfill/n比Tokenfill的取值粒度更加小,進而8*Tokefi.w /n
      使得根據(jù)公式——ZTjl~計算出的值更加接近或等于Rateare (其中,參照情景中將公式
      中的n替換為I),即減小設(shè)置Tfill、和Tokenfill的誤差,由于,Tfill未增加,因此,還避免了為減小設(shè)置Tfill、和Tokenfill的誤差,而使緩存單元轉(zhuǎn)發(fā)報文的突發(fā)變大。


      為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
      圖I為本發(fā)明實施例提供的一種流量整形設(shè)備結(jié)構(gòu)示意圖;圖2為本發(fā)明實施例提供的另一種流量整形設(shè)備結(jié)構(gòu)示意圖;圖3為本發(fā)明實施例提供的一種流量整形方法流程圖;圖4為本發(fā)明實施例提供的另一種流量整形方法流程圖。
      具體實施例方式下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。實施例一
      本發(fā)明實施例提供一種流量整形設(shè)備,如圖I所示,可以包括報文接收模塊I、報文轉(zhuǎn)發(fā)模塊2、令牌管理模塊3 ;報文接收模塊1,用于接收發(fā)送端發(fā)送的報文,并將報文存儲在緩存單元中;報文轉(zhuǎn)發(fā)模塊2,用于將緩存單元中存儲的報文轉(zhuǎn)發(fā)至接收端;令牌管理模塊3,用于周期性的為每個緩存單元補充令牌,并且在報文轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā)報文時,根據(jù)待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),將待轉(zhuǎn)發(fā)報文所在緩存單元的令牌減少指定數(shù)量,指定數(shù)量大于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),令牌用于指示報文轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā)緩存單元中存儲的相應(yīng)字節(jié)數(shù)的報文。采用上述方案后,當前情景為報文轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā)待轉(zhuǎn)發(fā)數(shù)據(jù)時,令牌管理模塊扣除待轉(zhuǎn)發(fā)報文所在緩存單元的指定數(shù)量的令牌,指定數(shù)量大于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),也就是說,轉(zhuǎn)發(fā)一個字節(jié)的報文扣除一個令牌的參照情境中的I個令牌,相當于,當前情境中的n個令牌,其中,n為指定數(shù)量與待轉(zhuǎn)發(fā)報文的字節(jié)數(shù)的比值且大于1,假設(shè)當前情景與參照情景中,每個Tfill補充的令牌數(shù)均為Tokenfill,則相對于參照情境來說,當前情景中每個Tfill補充的令牌數(shù)已經(jīng)變?yōu)門okenfill/n,當前情景中實際帶寬的計算公式相對于參照情景
      8 * Token 即 In8* Token m / n
      中的公式Toknfill*8/Tfill變?yōu)?^-由于,公式-〒-和Toknfm*8/Tfill中
      I",1M、
      的Tokenfill的取值粒度不變,n大于I,則Tokenfill/n比Tokenfill的取值粒度更加小,進而% ^ Tokentm / n
      使得根據(jù)公式——^計算出的值更加接近或等于Rateare (其中,參照情景中將公式
      1M
      中的n替換為I),即減小設(shè)置Tfill、和Tokenfill的誤差,由于,Tfill未增加,因此,還避免了為減小設(shè)置Tfill、和Tokenfill的誤差,而使緩存單元轉(zhuǎn)發(fā)報文的突發(fā)變大。實施例二為了更清晰的描述上述實施例,本實施例提供另一種流量整形設(shè)備,如圖2所示,可以包括報文接收模塊I、報文轉(zhuǎn)發(fā)模塊2、令牌管理模塊3 ;報文接收模塊1,用于接收發(fā)送端發(fā)送的報文,并將報文存儲在緩存單元中;報文轉(zhuǎn)發(fā)模塊2,用于將緩存單元中存儲的報文轉(zhuǎn)發(fā)至接收端;令牌管理模塊3,用于周期性的為每個緩存單元補充令牌,并且在報文轉(zhuǎn)發(fā)模塊2轉(zhuǎn)發(fā)報文時,根據(jù)待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),將待轉(zhuǎn)發(fā)報文所在緩存單元的令牌減少指定數(shù)量,指定數(shù)量大于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),令牌用于指示報文轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā)緩存單元中存儲的相應(yīng)字節(jié)數(shù)的報文。由于,只有當待轉(zhuǎn)發(fā)報文所在的緩存單元中的令牌數(shù)量大于等于指定數(shù)量時,報文轉(zhuǎn)發(fā)模塊2才轉(zhuǎn)發(fā)待轉(zhuǎn)發(fā)報文,因此,報文轉(zhuǎn)發(fā)模塊2在轉(zhuǎn)發(fā)待轉(zhuǎn)發(fā)報文前,判斷待轉(zhuǎn)發(fā)報文所在緩存單元的令牌數(shù),是否大于等于指定數(shù)量。進一步可選的,報文轉(zhuǎn)發(fā)模塊2用于將緩存單元中存儲的報文轉(zhuǎn)發(fā)至接收端為報文轉(zhuǎn)發(fā)模塊2用于在判斷出緩存單元中的令牌數(shù)量大于等于指定數(shù)量后,將緩存單元中存儲的報文轉(zhuǎn)發(fā)至接收端。作為本實施例的一種實施方式,流量整形設(shè)備可以包括至少一個緩存單元,報文接收模塊I接收待轉(zhuǎn)發(fā)報文后,將待轉(zhuǎn)發(fā)報文存放在相應(yīng)的緩存單元中,每個緩存單元可以分別包含一個用于存儲令牌的令牌桶。令牌管理模塊3周期性的為每個緩存單元補充令牌,即可以為周期性的向每個緩存單元的令牌桶中補充令牌。 本實施例對令牌的存放位置不作限定,可以根據(jù)實際需要進行設(shè)定,在此不再贅述。進一步的,令牌管理模塊3可以包括配置單元31 ;配置單元31用于根據(jù)每個緩存單元的配置帶寬Rateav6為每個緩存單元設(shè)置補充周期Tfill、和每個Tfill向?qū)?yīng)緩存單元補充令牌的數(shù)量Tokenfill。
      8 * Token / n進一步可選的,配置單元31具體用于根據(jù)公式——Tfill、和
      1Jill
      Tokenfill,其中,n為指定數(shù)量與待轉(zhuǎn)發(fā)報文的字節(jié)數(shù)的比值Jokenfill為大于0的整數(shù)。
      8 * Token In下面對公式——-Tj-^進行說明。當前情景為報文轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā)待轉(zhuǎn)發(fā)數(shù)據(jù)時,令牌管理模塊3扣除待轉(zhuǎn)發(fā)報文所在緩存單元的指定數(shù)量的令牌,指定數(shù)量大于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),則轉(zhuǎn)發(fā)一個字節(jié)的報文扣除一個令牌的參照情境中的I個令牌,相當于,當前情境中的n個令牌,其中,n為指定數(shù)量與待轉(zhuǎn)發(fā)報文的字節(jié)數(shù)的比值且大于1,假設(shè)當前情景與參照情景中,每個Tfill補充的令牌數(shù)均為Tokenfill,則相對于參照情境來說,當前情景中每個Tfill#充的令牌數(shù)已經(jīng)變?yōu)門okenfill/n,當前情景中實際帶寬的計算公式相對于參照情景中的公式Tokenfill*8/Tfill變
      8 * Token m In8* Token m / n
      為——Tfjl^(參照情景與當前情景均可以根據(jù)公式——^計算實際帶寬,只是在
      1Till1Ali
      參照情景中將公式中的n替換為I)。
      8 * IOkcn !;;1! n由于,公式 ~和Tokenfill*8/Tfill中的Tokenfill的取值粒度不變,n大
      1M、
      8 * Token,," / n
      于1,則Tokenfill/n比Tokenfill的取值粒度更加小,進而使得根據(jù)公式i十算出
      J- JilJ
      Jlll
      的值更加接近或等于Rateave。
      8 * Token r / n下面分別對在當前情景中、或在參照情景中,根據(jù)公式——設(shè)置
      1MTfill和Tokenfill進行舉例說明。例如,在參照情景中,若Rateave=IOO時,假設(shè)Tfill=3,Tokenfill=37時,根據(jù)公式Tokenfill*8/Tfill計算出的實際帶寬98. 7與Rateave的誤差最??;在發(fā)送一個字節(jié)的報文扣
      8 * Token , / / on/r
      除296/100個令牌的當前情景中,公式-^rj-^ 中的,且Rateave和Tfill
      1 f⑴ 100
      E J oken ..,.! n
      與參照情景中的取值相同時,則Tokenfill=Ill時,公式-~=RateaH
      1 fill根據(jù)上述例子可以說明,相對于參照情景來說,采用當前情景中的方法,即轉(zhuǎn)發(fā)待
      8^7'okcnr;l / n
      轉(zhuǎn)發(fā)報文時扣除的令牌的數(shù)量大于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),使得根據(jù)公式——^^計算
      出的值更加接近或等于Rateave(其中,參照情景中將公式中的n替換為1),即可以減小設(shè)置Tfm、和 Tokenfill 的誤差。進一步可選的,當配置單元31設(shè)置出的任意Tfill、和Tokenfill均不能滿足公
      8 * Token m / n8* Token m / n
      式——ZTj-^=R^eave,則配置單元31還可以具體根據(jù)公式——ZTj-^設(shè)置Tfill、和
      I JiH^ flu
      % ^ Tokenrn / n
      Tokenfill,使根據(jù)所公式"——計算出的實際帶寬與相應(yīng)的Rateav6的誤差小于誤差
      1 rm
      預設(shè)值。作為本實施例的一種優(yōu)選實施方式,配置單元31設(shè)置Tfill、和Tokenfill完成后,使
      8 I okcn / //
      根據(jù)所公式——T fiU 計算出的實際帶寬與相應(yīng)的Rate-的誤差為最小。
      1 fill
      8 * / okcn、/ /7本實施例對根據(jù)所公式-~計算出的實際帶寬與相應(yīng)的Rateave的誤差
      J.
      fill
      不作限定,可以根據(jù)實際需要進行設(shè)定,在此不再贅述。下面分別對在當前情景中、和在參照情景中,配置單元31采用上述方法設(shè)置Tfill、和Tokenfill進行舉例說明和比較。例如,在每轉(zhuǎn)發(fā)一個字節(jié)的報文扣除兩個令牌的當前情景中,n=2,且乙砠被設(shè)置為Tfill = 0. 5,Rateave=55,誤差預設(shè)值為2%時;當Tokenfill = 7時,則根據(jù)公式
      Tokenm / n\Rate -實際帶寬I
      ^計算出最接近Rateave的實際帶寬為56,此時,根據(jù)公式J丨計算 lfiuRateare
      出的實際帶寬56與Rateave的最小誤差為1/55=1. 8%,小于2% ;在參照情景中,Tfill = 0. 5,
      Rateave=55,當Tokenfill = 3時,則根據(jù)公式Tokenfill*8/Tfill計算出最接近Rateave的實際帶
      寬為48,此時,實際帶寬48與Rateave的最小誤差為7/55=12. 7%,大于當前情景中的誤差,
      且大于2%。根據(jù)上述例子可以說明,相對于參照情景來說,采用當前情景中的方法,即轉(zhuǎn)發(fā)待轉(zhuǎn)發(fā)報文時扣除的令牌的數(shù)量大于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),可以減小實際帶寬與Rate■的誤差,即可以減小設(shè)置Tfill、和Tokenfill的誤差。進一步可選的,流量整形設(shè)備還可以通過增大Tfill來減小設(shè)置Tfill、和Tokenfill的誤差??梢詤⒄毡尘凹夹g(shù)中所列舉的例子,在此不再贅述。本實施例對減小設(shè)置Tfill、和Tokenfill的誤差的方法不作限定,可以根據(jù)實際需要進行設(shè)定,例如,可以單獨采用本實施例提供任意一種方法、或可以同時使用至少兩種方法,在此不再贅述。進一步的,令牌管理模塊2不僅通過配置單元31設(shè)置Tfill、Tokenfill、和n等,而且還存儲 Tfill、Tokenfill、n 等。令牌管理模塊2存儲的數(shù)據(jù)均為二進制數(shù),采用十進制形式存儲所占用的空間,大于采用以2為底的指數(shù)函數(shù)的形式所占用的空間。例如,以二進制形式進行存儲64,當采用十進制形式存儲時,即存儲64,則需要占用7比特空間;當采用以2為底的指數(shù)函數(shù)的形式時,即存儲6,只需要占用3比特空間(因為,64=26,只需要記錄指數(shù)部分6,因此,只需要占用3比特空間)。
      為了節(jié)省存儲空間,令牌管理模塊2可以采用以2為底的指數(shù)函數(shù)的形式存儲n、Tfill> Tokenfill,指數(shù)可以為不小于0的整數(shù)。配置單元31在為各緩存單元設(shè)置Tfill時,不僅需要滿足根據(jù)設(shè)置后的Tfill、和Tokenfill計算出的實際功率與Rateave的誤差為最小,而且還要滿足不同緩存單元之間的要求。不同的緩存單元的之間的Rateave可能不同,如果,Rateave大的緩存單元的Tfill與
      Rateave小的緩存單元的Tfill相同,則根據(jù)公式‘ Ir Jnr可以看出,Tfill不變時,
      1 fill
      Tokenfill與Rateave呈正比關(guān)系,因此,Rateave大的緩存單元的Tokenfill較大,且大于Rateave小的緩存單元的Tokenfill,這樣,可能導致Rateavfj大的緩存單元的突發(fā)較大。因此,Rateave不同的緩存單元不宜被設(shè)置相同的Tfill,優(yōu)選的,可以為Rateave較大的緩存單元設(shè)置較小的Tfill,以使Tokenfill不過大,可以為Rateav6較小的緩存單元設(shè)置較大的Tfill。進一步的,Tfill是配置單元31根據(jù)相應(yīng)的Rateave、和系統(tǒng)時鐘頻率、和緩存單元的數(shù)量設(shè)置的。由于,采用十進制形式存儲所占用的空間,大于采用以2為底的指數(shù)函數(shù)的形式所占用的空間,因此,為了減小存儲Tfill所占用的空間,則Tfill是配置單元31根據(jù)公式Tfill = 2X*T、和相應(yīng)的Rateave設(shè)置的;其中,x為指數(shù)變量,且Rate■越大的緩存單元,配置單元31設(shè)置的X越小,或者,Rateave越小的緩存單元,配置單元31設(shè)置的x越大;T_緩存單元數(shù)量
      系統(tǒng)時鐘頻率°進一步可選的,X可以為大于等于0的正整數(shù)。作為本實施例的一種實施方式,當T = 10. 24 ii s時,由于,Tfill為T的正整數(shù)倍,則按照Rateave由大到小的順序,相對應(yīng)的緩存單元的Tfill依次可以為10. 24 y s(=10. 24*2。)、或 20. 48 ii s (=10. 24*20、或 40. 96 y s (=10. 24*22)等。由于,Tfill與T之間的可變系數(shù)為2'因此,可以直接存儲可變系數(shù)2X的指數(shù)部分x,進而減少了存儲Tfill所占用的空間。為了更清晰的描述采用本實施例后所帶來的有益效果,下面針對上述實施例中提供的流量整形設(shè)備設(shè)置Tfill、和Tokenfill列舉一些具體的例子。首先,對當前場景進行說明以下的例子中的指定數(shù)量為待轉(zhuǎn)發(fā)數(shù)據(jù)的字節(jié)數(shù)乘以26_m,其中,06,也就是說,每轉(zhuǎn)發(fā)一個字節(jié)的報文扣除26_-個令牌。
      因此,以下例子中的計算實際帶寬的公式,相對于參照情景中的公式Tokenfill*8/
      Token m/26-m
      Tfill 變?yōu)?Raterfg=:-—^xNxSxfrequency 其中,Rateefg 為實際帶寬;
      ^ueJmmber X Z
      ,level
      q Jumbe'.-為補充周期Tfill ;quenumbCT緩存單元數(shù)量;N為帶寬的粒度,且N=I !frequency
      jreqh'ency
      為系統(tǒng)時鐘頻率;leVel為補充周期Tfill的調(diào)節(jié)因子,可以通過調(diào)節(jié)level來增加或減小補充周期Tfill。例I :假設(shè)不增大Tfill,且轉(zhuǎn)發(fā)一個字節(jié)的報文扣除64個令牌時,則Ievel=O ;m=0,且
      level
      qtie h X 2
      frequency, =10 24^ . Rateave=l (Mbps),誤差預設(shè)數(shù)值為 1% ;
      Token mn6-m當Tokenfill = 81 時,根據(jù)公式 Ratecf 二---xiVx8x frequency
      —腳—x2
      計算出的實際帶寬Rateefg = 0. 989 (Mbps),當Tokenfill = 82時,根據(jù)公式
      TokenfJtm一
      Rate k =---;^XiVx8x/r—/e cj;計算出的實際帶寬 Raterfg=L 001 (Mbps)??梢钥?br> 《U2
      出,上述計算出的兩個Raterfg均與Rateave的誤差小于1%,且未增大Tfill。例2 假設(shè)將Tfill增大為原來的兩倍,且轉(zhuǎn)發(fā)一個字節(jié)的報文扣除32個令牌時,則
      rk level
      Ievel=I ;m=l,且.X^ 二 20.48/ ; Rateave=I (Mbps),誤差預設(shè)數(shù)值為 1%; frequency
      Tokenm 126-m當Tokenfill = 81 時,根據(jù)公式 Ratecf 二-;~—jxNx^xfreipmicy
      —酬^x2
      計算出的實際帶寬Rateefg = 0. 989 (Mbps),當Tokenfill = 82時,根據(jù)公式
      Token m 116—m一
      Rate ' =-L~;;^jxA^x8x/re識/値y計算出的實際帶寬 Raterfg=L 001 (Mbps)??梢钥?br> <iuenumber x2-
      出,上述計算出的兩個Raterfg均與Rateave的誤差小于1%。有上述兩個例子可以看出,當桶管理模塊3在轉(zhuǎn)發(fā)待轉(zhuǎn)發(fā)報文時,扣除比待轉(zhuǎn)發(fā)報文字節(jié)數(shù)多的令牌時,可以相應(yīng)的減小設(shè)置的Tfill、和Tokenfill的誤差。
      Tokenmi I l6-m根據(jù)例I、和例2、和公式Rate =-:~xNxSx frequency,還可以分析
      Vtemmber X 2
      出若參照情景中某緩存單元的令牌桶中最多可以存儲t個令牌,則在當前情景中,該令牌桶實際最多可以存儲的令牌雖然還是t個,但相對于參照情景來說,該令牌桶中最多可以存儲t/26_mf令牌。
      根據(jù)公式七/26_-可以看出,在當前情景中,26_-與七/26_-呈反比,26_m越小,則t/26_m越大,且令牌桶中最多存儲的令牌數(shù)t/26_m與緩存單元最大門限帶寬(PBS)呈正比關(guān)系,也就是說,26_m減小,PBS便增大,則可以通過調(diào)節(jié)貶值系數(shù)26_m,來滿足不同PBS需求的情景。其中,由于,例2中的貶值系數(shù)小于例I中的貶值系數(shù),因此,例2提供的情景可滿足的PBS,大于例I提供的情景可滿足的PBS。

      在不同的場景下,公式
      權(quán)利要求
      1.一種流量整形設(shè)備,其特征在于,包括 報文接收模塊,用于接收發(fā)送端發(fā)送的報文,并將所述報文存儲在緩存單元中; 報文轉(zhuǎn)發(fā)模塊,用于將所述緩存單元中存儲的所述報文轉(zhuǎn)發(fā)至接收端; 令牌管理模塊,用于周期性的為每個緩存單元補充令牌,并且在所述報文轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā)報文時,根據(jù)待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),將待轉(zhuǎn)發(fā)報文所在緩存單元的令牌減少指定數(shù)量,所述指定數(shù)量大于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),所述令牌用于指示所述報文轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā)所述緩存單元中存儲的相應(yīng)字節(jié)數(shù)的報文。
      2.根據(jù)權(quán)利要求I所述的流量整形設(shè)備,其特征在于,所述令牌管理模塊包括 配置單元,用于根據(jù)每個緩存單元的配置帶寬Rate·為每個緩存單元設(shè)置補充周期Tfill、和每個Tfill向?qū)?yīng)緩存單元補充令牌的數(shù)量Tokenfill。
      3.根據(jù)權(quán)利要求2所述的流量整形設(shè)備,其特征在于,所述配置單元用于根據(jù)每個緩存單元的配置帶寬Rateave為每個緩存單元設(shè)置補充周期Tfill、和每個Tfill向?qū)?yīng)緩存單元補充令牌的數(shù)量Tokenfill為%^Tokenm In 所述配置單元用于根據(jù)公式——Tfx^=Itre設(shè)置Tfm、和Tokenfill,其中,η為所 1 β 述指定數(shù)量與待轉(zhuǎn)發(fā)報文的字節(jié)數(shù)的比值Jokenfill為大于O的整數(shù)。
      4.根據(jù)權(quán)利要求2所述的流量整形設(shè)備,其特征在于,所述配置單元用于根據(jù)每個緩存單元的配置帶寬Rateave為每個緩存單元設(shè)置補充周期Tfill、和每個Tfill向?qū)?yīng)緩存單元補充令牌的數(shù)量Tokenfill為8 * Token/ η 所述配置單元用于根據(jù)公式——Tfji^設(shè)置Tfill、和Tokenfill,使根據(jù)公式lfin8* I okenrr I /;——T f 計算出的實際帶寬與相應(yīng)的Rateara的誤差小于誤差預設(shè)值,其中,η為所述指 fill定數(shù)量與所述待轉(zhuǎn)發(fā)報文的字節(jié)數(shù)的比值Jokenfill為大于O的整數(shù)。
      5.根據(jù)權(quán)利要求3或4所述的流量整形設(shè)備,其特征在于,所述令牌管理模塊還用于采用以2為底的指數(shù)函數(shù)的形式存儲所述η、所述Tfill、所述Tokenfilltl
      6.根據(jù)權(quán)利要求2所述的流量整形設(shè)備,其特征在于,所述配置單元用于根據(jù)每個緩存單元的配置帶寬Rateave為每個緩存單元設(shè)置補充周期Tfill、和每個Tfill向?qū)?yīng)緩存單元補充令牌的數(shù)量Tokenfill為所述配置單元用于根據(jù)相應(yīng)的Rate·、和系統(tǒng)時鐘頻率、和緩存單元的數(shù)量設(shè)置Tfill、和Tokenfill。
      7.根據(jù)權(quán)利要求6所述的流量整形設(shè)備,其特征在于,所述配置單元用于根據(jù)相應(yīng)的Rate·、和系統(tǒng)時鐘頻率、和緩存單元的數(shù)量設(shè)置Tfill、和Tokenfill為 所述配置單元根據(jù)公式Tfill = 2X*T、和相應(yīng)的Rateave設(shè)置Tfill ;其中,χ為指數(shù)變量,且Rateave越大的緩存單元,所述配置單元設(shè)置的X越小,或者,Rateave越小的緩存單元,所 -±Ικ . τ 緩存單元數(shù)量偷4秦白勺X獻*系統(tǒng)時鐘頻率。
      8.根據(jù)權(quán)利要求I所述的流量整形設(shè)備,其特征在于,所述報文轉(zhuǎn)發(fā)模塊用于將所述緩存單元中存儲的所述報文轉(zhuǎn)發(fā)至接收端為所述報文轉(zhuǎn)發(fā)模塊用于在判斷出所述緩存單元中的令牌數(shù)量大于等于所述指定數(shù)量后,將所述緩存單元中存儲的所述報文轉(zhuǎn)發(fā)至接收端。
      9.根據(jù)權(quán)利要求7所述的流量整形設(shè)備,其特征在于,所述X為大于等于O的正整數(shù)。
      10.一種流量整形方法,其特征在于,包括 流量整形設(shè)備接收發(fā)送端發(fā)送的報文,并存儲所述報文; 將所述報文轉(zhuǎn)發(fā)至接收端; 周期性的為每個緩存單元補充令牌,并且在轉(zhuǎn)發(fā)待轉(zhuǎn)發(fā)報文時,根據(jù)待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),將待轉(zhuǎn)發(fā)報文所在緩存單元的令牌減少指定數(shù)量,所述指定數(shù)量大于待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),所述令牌用于指示所述流量整形設(shè)備轉(zhuǎn)發(fā)所述緩存單元中存儲的相應(yīng)字節(jié)數(shù)的報文。
      11.根據(jù)權(quán)利要求10所述的流量整形方法,其特征在于,在所述周期性的為每個緩存單元補充令牌之前,所述方法還包括 根據(jù)每個緩存單元的配置帶寬Rate·為每個緩存單元設(shè)置補充周期Tfill、和每個Tfill向?qū)?yīng)緩存單元補充令牌的數(shù)量Tokenfill。
      12.根據(jù)權(quán)利要求11所述的流量整形方法,其特征在于,所述根據(jù)每個緩存單元的配置帶寬Rateara為每個緩存單元設(shè)置補充周期Tfill、和每個Tfill向?qū)?yīng)緩存單元補充令牌的8 * / okcii 11 數(shù)量Tokenfill為:根據(jù)公式’:只! '設(shè)置Tfill、和Tokenfill,其中,η為所述指定 1An數(shù)量與待轉(zhuǎn)發(fā)報文的字節(jié)數(shù)的比值Jokenfill為大于O的整數(shù);或者, 根據(jù)公式——^設(shè)置Tfill、和Tokenfill,使根據(jù)公式——^^計算出的實際 帶寬與相應(yīng)的Rate·的誤差小于誤差預設(shè)值,其中,η為所述指定數(shù)量與所述待轉(zhuǎn)發(fā)報文的字節(jié)數(shù)的比值Jokenfill為大于O的整數(shù);或者, 根據(jù)相應(yīng)的Rate·、和系統(tǒng)時鐘頻率、和緩存單元的數(shù)量設(shè)置Tfill、和Tokenfill。
      13.根據(jù)權(quán)利要求12所述的流量整形方法,其特征在于,所述根據(jù)相應(yīng)的Rate·、和系統(tǒng)時鐘頻率、和緩存單元的數(shù)量設(shè)置Tfill、和Tokenfill為根據(jù)公式Tfill = 2X*T、和相應(yīng)的Rateave設(shè)置Tfill ;其中,X為指數(shù)變量,且Rateave越大的緩存單元,所述χ越小,或者,Rateave 刪獅4τπ,戶誠χ獻-J=麵麵率。
      14.根據(jù)權(quán)利要求13所述的流量整形方法,其特征在于,采用以2為底的指數(shù)函數(shù)的形式存儲所述η、所述Tfill、所述Tokenfill。
      全文摘要
      本發(fā)明提供一種流量整形方法和流量整形設(shè)備。涉及通信技術(shù)領(lǐng)域。解決了當為了減小設(shè)置的Tfill、和Tokenfill的誤差而增大Tfill后,緩存單元發(fā)送報文的突發(fā)變大的問題。該設(shè)備具體可以包括報文接收模塊,用于接收發(fā)送端發(fā)送的報文,并將報文存儲在緩存單元中;報文轉(zhuǎn)發(fā)模塊,用于將緩存單元中存儲的報文轉(zhuǎn)發(fā)至接收端;令牌管理模塊,用于周期性的為每個緩存單元補充令牌,并且在報文轉(zhuǎn)發(fā)模塊轉(zhuǎn)發(fā)報文時,根據(jù)待轉(zhuǎn)發(fā)報文的字節(jié)數(shù),將待轉(zhuǎn)發(fā)報文所在緩存單元的令牌減少指定數(shù)量??蓱?yīng)用于流量整形中。
      文檔編號H04L12/56GK102739531SQ20121020347
      公開日2012年10月17日 申請日期2012年6月19日 優(yōu)先權(quán)日2012年6月19日
      發(fā)明者侯鵬, 卞云峰, 張喜全 申請人:華為技術(shù)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1