欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

令牌添加方法及裝置與流程

文檔序號:11279204閱讀:283來源:國知局
令牌添加方法及裝置與流程

本發(fā)明涉及通信技術(shù)領(lǐng)域的擁塞控制技術(shù),尤其涉及一種令牌添加方法及裝置。



背景技術(shù):

隨著網(wǎng)絡(luò)應(yīng)用的不斷發(fā)展,新型業(yè)務(wù)的不斷推出,例如交互式網(wǎng)絡(luò)電視(iptv)、網(wǎng)絡(luò)電話(voip,voiceoverinternetprotocol)、視頻會議等非傳統(tǒng)數(shù)據(jù)通信業(yè)務(wù),對網(wǎng)絡(luò)的服務(wù)質(zhì)量(qos,qualityofservice)提出了更高的時延、丟包率和抖動控制要求;為了保證qos的實(shí)現(xiàn),通常在網(wǎng)絡(luò)處理器或路由器中設(shè)置專門的擁塞管理模塊,擁塞管理模塊用于控制幀、信元或分組如何離開一個設(shè)備。

擁塞管理模塊的一個功能是限速,這個功能由整形控制組件完成,整形控制組件控制的對象是隊列,隊列內(nèi)存儲的是同一類型的數(shù)據(jù)包;整形控制組件以用戶配置的整形速率添加令牌到隊列的令牌桶內(nèi),令牌桶內(nèi)有令牌的隊列可以調(diào)度數(shù)據(jù)包離開設(shè)備,隊列調(diào)度數(shù)據(jù)包離開設(shè)備時會消耗隊列令牌桶內(nèi)的令牌;現(xiàn)有的整塊控制組件一般采用加權(quán)分配算法給隊列分配服務(wù)機(jī)會,加權(quán)分配算法,例如加權(quán)公平隊列(wfq,weightedfairqueuing),或者加權(quán)循環(huán)調(diào)度算法(wrr,weightedroundrobin),每次服務(wù)添加一定數(shù)目的令牌,令牌數(shù)可以轉(zhuǎn)化為帶寬,單次服務(wù)添加的令牌數(shù)等于所有隊列的權(quán)重之和/基準(zhǔn)權(quán)重,設(shè)備的基準(zhǔn)權(quán)重對應(yīng)設(shè)備的基準(zhǔn)整形值,也就是將用戶配置的整形速率轉(zhuǎn)化為一個權(quán)重值分配給隊列,每個隊列根據(jù)自身的權(quán)重,獲得令牌添加的機(jī)會,權(quán)重大的隊列獲得令牌添加的機(jī)會多,權(quán)重小的隊列獲得令牌添加的機(jī)會少。

然而,系統(tǒng)中權(quán)重較大的隊列會拉高系統(tǒng)所有隊列的權(quán)重之和,使得單次 服務(wù)添加的令牌數(shù)也較大,權(quán)重小的隊列在一段時間內(nèi)獲得的令牌數(shù)是固定的,權(quán)重小的隊列在這段時間內(nèi),只能獲得很少的服務(wù)機(jī)會,每次服務(wù)獲得比較多的令牌,使得權(quán)重小的隊列突發(fā)式的獲得令牌,然而,權(quán)重小的隊列在系統(tǒng)內(nèi)能占用的緩存是有限的,權(quán)重小的隊列承受突發(fā)的能力比較差,在一段時間內(nèi),如果流量突發(fā)超過權(quán)重小的隊列承受突發(fā)能力時,就會發(fā)生數(shù)據(jù)包丟棄,如此,會影響業(yè)務(wù)的服務(wù)質(zhì)量。



技術(shù)實(shí)現(xiàn)要素:

有鑒于此,本發(fā)明實(shí)施例期望提供一種令牌添加方法及裝置,能在保證隊列的整形速率準(zhǔn)確的前提下,減少權(quán)重小的隊列的流量突發(fā),提高業(yè)務(wù)的服務(wù)質(zhì)量。

為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:

本發(fā)明實(shí)施例提供一種令牌添加方法,包括:

基于對應(yīng)于目標(biāo)端口的各個隊列的整形權(quán)重,對各所述隊列中滿足預(yù)設(shè)條件的隊列的整形權(quán)重進(jìn)行壓縮,確定各所述隊列的壓縮權(quán)重;

確定各所述隊列中分配到服務(wù)機(jī)會的目標(biāo)隊列,基于基準(zhǔn)權(quán)重、各所述隊列的壓縮權(quán)重及所述目標(biāo)隊列的整形權(quán)重,確定向所述目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù)并添加。

本發(fā)明實(shí)施例還提供一種令牌添加裝置,包括:

確定模塊,用于基于對應(yīng)于目標(biāo)端口的各個隊列的整形權(quán)重,對各所述隊列中滿足預(yù)設(shè)條件的隊列的整形權(quán)重進(jìn)行壓縮,確定各所述隊列的壓縮權(quán)重;

所述確定模塊,還用于確定各所述隊列中分配到服務(wù)機(jī)會的目標(biāo)隊列,基于基準(zhǔn)權(quán)重、各所述隊列的壓縮權(quán)重及所述目標(biāo)隊列的整形權(quán)重,確定向所述目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù);

分發(fā)模塊,用于向所述目標(biāo)隊列對應(yīng)的令牌桶中添加所述確定模塊確定的添加的令牌數(shù)。

本發(fā)明實(shí)施例中,對滿足預(yù)設(shè)條件的隊列的整形權(quán)重進(jìn)行壓縮,同時保證 不滿足預(yù)設(shè)條件的隊列的整形權(quán)重,根據(jù)隊列的壓縮權(quán)重確定需要向目標(biāo)隊列(得到服務(wù)的隊列)的令牌桶中添加的令牌數(shù),如此,各隊列的壓縮權(quán)重之和小于各隊列的整形權(quán)重之和,由于不滿足預(yù)設(shè)條件的隊列的整形權(quán)重未被壓縮(整形權(quán)重等于壓縮權(quán)重),因此,本實(shí)施例會增加不滿足預(yù)設(shè)條件的隊列的服務(wù)機(jī)會,并降低不滿足預(yù)設(shè)條件的隊列在得到服務(wù)時需要向?qū)?yīng)的令牌桶中添加的令牌數(shù),進(jìn)而減少不滿足預(yù)設(shè)條件的隊列的流量突發(fā),提高業(yè)務(wù)的服務(wù)質(zhì)量。

附圖說明

圖1為本發(fā)明實(shí)施例中令牌添加方法的一個可選的流程示意圖;

圖2為本發(fā)明實(shí)施例中令牌添加方法的另一個可選的流程示意圖;

圖3為本發(fā)明實(shí)施例中令牌添加方法的又一個可選的流程示意圖;

圖4為本發(fā)明實(shí)施例中令牌添加方法的再一個可選的流程示意圖;

圖5為本發(fā)明實(shí)施例中令牌添加裝置的一個可選的結(jié)構(gòu)示意圖;

圖6為本發(fā)明實(shí)施例中令牌添加裝置的另一個可選的結(jié)構(gòu)示意圖。

具體實(shí)施方式

下面將結(jié)合附圖及實(shí)施例,對本發(fā)明的技術(shù)方案進(jìn)行清楚、完整地描述。

下面首先對實(shí)施本發(fā)明實(shí)施例的裝置(在以下各具體實(shí)施例中即為令牌添加裝置)進(jìn)行說明,令牌添加裝置可以采用各種方式來實(shí)施,例如在網(wǎng)絡(luò)處理器、路由器等網(wǎng)絡(luò)設(shè)備中實(shí)施令牌添加裝置的全部組件(比如,令牌添加裝置可以集成于上述的網(wǎng)絡(luò)設(shè)備中的擁塞管理模塊的整形控制組件中),或者,在上述的網(wǎng)絡(luò)設(shè)備側(cè)以耦合的方式實(shí)施令牌添加裝置中的組件。

基于上述記載的令牌添加裝置,提出以下各具體實(shí)施例。

實(shí)施例一

本實(shí)施例記載一種令牌添加方法,可以應(yīng)用于擁塞管理技術(shù)中以解決如下問題:希望能在保證隊列的整形速率準(zhǔn)確的前提下,減少權(quán)重小的隊列的流量 突發(fā),提高業(yè)務(wù)的服務(wù)質(zhì)量;本實(shí)施例針對此情況的處理進(jìn)行說明。

參見圖1,本實(shí)施例記載的令牌添加方法包括以下步驟:

步驟101、基于對應(yīng)于目標(biāo)端口的各個隊列的整形權(quán)重,對各隊列中滿足預(yù)設(shè)條件的隊列的整形權(quán)重進(jìn)行壓縮,確定各隊列的壓縮權(quán)重。

在本實(shí)施例中,目標(biāo)端口可以是指上述網(wǎng)絡(luò)設(shè)備的一個或多個數(shù)據(jù)接口,對于需經(jīng)數(shù)據(jù)接口發(fā)送的報文,網(wǎng)絡(luò)設(shè)備的調(diào)度器基于該報文的特征信息進(jìn)行分析,將該報文分配至對應(yīng)于該報文的特征信息的隊列中;用戶為對應(yīng)于目標(biāo)端口的各個隊列分別配置整形速率,整形速率可以為承諾信息速率(cir,committedinformationrate)或者超出信息速率(eir,excessinformationrate);基準(zhǔn)整形速率是指網(wǎng)絡(luò)設(shè)備所允許的最大數(shù)據(jù)速率,基準(zhǔn)權(quán)重對應(yīng)于基準(zhǔn)整形速率;基于基準(zhǔn)整形速率、基準(zhǔn)權(quán)重及隊列的整形速率,可以確定隊列在網(wǎng)絡(luò)設(shè)備中的整形權(quán)重;可選的,計算隊列的整形速率與基準(zhǔn)整形速率的比值,再計算該比值與基準(zhǔn)權(quán)重的乘積,將得到的乘積值作為隊列的整形權(quán)重。

本實(shí)施例將對應(yīng)于目標(biāo)端口的各個隊列界定(劃分)為至少兩類,即整形權(quán)重較大的隊列、整形權(quán)重較小的隊列;具體地,本實(shí)施例通過預(yù)設(shè)條件界定一個隊列是否屬于整形權(quán)重較大的隊列,將各隊列中滿足預(yù)設(shè)條件的隊列界定為整形權(quán)重較大的隊列,及將不滿足預(yù)設(shè)條件的隊列界定為整形權(quán)重較小的隊列;這里,標(biāo)記對應(yīng)于目標(biāo)端口的各個隊列至少包括第一隊列和第二隊列,假設(shè),第一隊列由于滿足預(yù)設(shè)條件被界定為屬于整形權(quán)重較大的隊列,第二隊列由于不滿足預(yù)設(shè)條件被界定為屬于整形權(quán)重較小的隊列。

本實(shí)施例針對上述界定的整形權(quán)重較大的隊列和整形權(quán)重較小的隊列分別采取不同的處理方法得到各隊列的壓縮權(quán)重:

1)針對上述界定的整形權(quán)重較大的隊列,對該隊列的整形權(quán)重進(jìn)行壓縮,將壓縮得到的權(quán)重確定為該隊列的壓縮權(quán)重;例如,對第一隊列的整形權(quán)重進(jìn)行壓縮,將壓縮得到的權(quán)重確定為第一隊列的壓縮權(quán)重。

2)針對上述界定的整形權(quán)重較小的隊列,將該隊列的整形權(quán)重確定為壓縮權(quán)重;例如,將第二隊列的整形權(quán)重確定為第二隊列的壓縮權(quán)重。

本實(shí)施例在對滿足預(yù)設(shè)條件的隊列的整形權(quán)重進(jìn)行壓縮后,一方面,滿足預(yù)設(shè)條件的隊列的壓縮權(quán)重小于整形權(quán)重,不滿足預(yù)設(shè)條件的隊列的壓縮權(quán)重等于整形權(quán)重,由此可以知曉,上述各隊列的壓縮權(quán)重之和小于上述各隊列的整形權(quán)重之和;另一方面,在本發(fā)明中令牌添加裝置基于上述各隊列的壓縮權(quán)重確定各隊列的服務(wù)機(jī)會,具體地,令牌添加裝置計算各隊列的壓縮權(quán)重之和,再計算隊列與求和值的比值,將計算得到的比值確定為隊列的服務(wù)機(jī)會,各隊列以各自對應(yīng)的服務(wù)機(jī)會(幾率)獲得服務(wù);相比于現(xiàn)有技術(shù)使用各隊列的整形權(quán)重為各隊列分配服務(wù)機(jī)會,本發(fā)明中使用各隊列的壓縮權(quán)重為各隊列分配服務(wù)機(jī)會,由于各隊列的壓縮權(quán)重之和小于各隊列的整形權(quán)重之和,且整形權(quán)重較小的隊列的壓縮權(quán)重等于整形權(quán)重,可以提高整形權(quán)重較小的隊列的服務(wù)機(jī)會。

步驟102、確定各隊列中分配到服務(wù)的目標(biāo)隊列,基于基準(zhǔn)權(quán)重、各隊列的壓縮權(quán)重及目標(biāo)隊列的整形權(quán)重,確定向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù)并添加。

令牌添加裝置確定各隊列中分配到服務(wù)的目標(biāo)隊列后,基于基準(zhǔn)權(quán)重、各隊列的壓縮權(quán)重及目標(biāo)隊列的整形權(quán)重,對目標(biāo)隊列的壓縮權(quán)重進(jìn)行解壓縮,根據(jù)目標(biāo)隊列的整形權(quán)重的壓縮情況,確定單次服務(wù)時向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù),上述確定的單次服務(wù)時向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù)可以保證目標(biāo)隊列的整形速率準(zhǔn)確。

本實(shí)施例中,基于整形權(quán)重的大小區(qū)別對待目標(biāo)端口的各個隊列,對滿足預(yù)設(shè)條件的隊列的整形權(quán)重進(jìn)行壓縮,同時保證不滿足預(yù)設(shè)條件的隊列的整形權(quán)重,根據(jù)隊列的壓縮權(quán)重確定需要向目標(biāo)隊列(得到服務(wù)的隊列)的令牌桶中添加的令牌數(shù),如此,各隊列的壓縮權(quán)重之和小于各隊列的整形權(quán)重之和,由于不滿足預(yù)設(shè)條件的隊列的整形權(quán)重未被壓縮(整形權(quán)重等于壓縮權(quán)重),因此,本實(shí)施例可以增加不滿足預(yù)設(shè)條件的隊列的服務(wù)機(jī)會,并降低不滿足預(yù)設(shè)條件的隊列在得到服務(wù)時需要向?qū)?yīng)的令牌桶中添加的令牌數(shù),進(jìn)而減少不滿足預(yù)設(shè)條件的隊列的流量突發(fā),提高業(yè)務(wù)的服務(wù)質(zhì)量。

實(shí)施例二

本實(shí)施例基于實(shí)施例一,針對具體如何對隊列的整形權(quán)重進(jìn)行壓縮的情況進(jìn)行說明,本實(shí)施例以上述各隊列中的任一隊列為例進(jìn)行說明。

參見圖2,本實(shí)施例記載的令牌添加方法包括以下步驟:

步驟201、獲取對應(yīng)于目標(biāo)端口的隊列的整形權(quán)重。

步驟202、判斷隊列的整形權(quán)重是否大于權(quán)重保留值,若是,則轉(zhuǎn)到步驟203,否則,轉(zhuǎn)到步驟207。

權(quán)重保留值可以根據(jù)實(shí)際需要預(yù)先設(shè)置。

步驟203、根據(jù)權(quán)重壓縮系數(shù)對隊列的整形權(quán)重進(jìn)行壓縮。

權(quán)重壓縮系數(shù)可以根據(jù)實(shí)際需要預(yù)先設(shè)置。

步驟204、判斷壓縮結(jié)果是否大于權(quán)重保留值,若是,則轉(zhuǎn)到步驟205,否則,轉(zhuǎn)到步驟206。

步驟205、將壓縮結(jié)果作為隊列的壓縮權(quán)重;跳轉(zhuǎn)到步驟208。

步驟206、將權(quán)重保留值作為隊列的壓縮權(quán)重;跳轉(zhuǎn)到步驟208。

步驟207、將隊列的整形權(quán)重作為隊列的壓縮權(quán)重。

步驟208、判斷是否為對應(yīng)于目標(biāo)端口的所有隊列均已確定壓縮權(quán)重,若是,則轉(zhuǎn)到步驟209,否則轉(zhuǎn)到步驟201。

步驟209、確定各隊列中分配到服務(wù)機(jī)會的目標(biāo)隊列,基于基準(zhǔn)權(quán)重、各隊列的壓縮權(quán)重及目標(biāo)隊列的整形權(quán)重,確定向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù)并添加。

本實(shí)施例中,上述預(yù)設(shè)條件為:隊列的整形權(quán)重大于權(quán)重保留值;本領(lǐng)域技術(shù)人員可以理解,上述預(yù)設(shè)條件并不限于此處記載的示例,只要是能夠?qū)⒏麝犃械恼螜?quán)重進(jìn)行分類的條件或方法都在本發(fā)明的保護(hù)范圍之內(nèi)。

本實(shí)施例區(qū)別對待整形權(quán)重大的隊列和整形權(quán)重小的隊列,壓縮整形權(quán)重大的隊列的整形權(quán)重,少壓縮或者不壓縮整形權(quán)重小的隊列的整形權(quán)重。

實(shí)施例三

本實(shí)施例基于實(shí)施例一,針對具體如何確定向獲得服務(wù)的隊列對應(yīng)的令牌桶中添加的令牌數(shù)的情況進(jìn)行說明,本實(shí)施例以上述各隊列中的任一隊列為例進(jìn)行說明。

參見圖3,本實(shí)施例記載的令牌添加方法包括以下步驟:

步驟301、獲取對應(yīng)于目標(biāo)端口的隊列的整形權(quán)重。

步驟302、基于對應(yīng)于目標(biāo)端口的各個隊列的整形權(quán)重,對各隊列中滿足預(yù)設(shè)條件的隊列的整形權(quán)重進(jìn)行壓縮,確定各隊列的壓縮權(quán)重。

步驟303、確定各隊列中分配到服務(wù)機(jī)會的目標(biāo)隊列。

步驟304、基于基準(zhǔn)權(quán)重及各隊列的壓縮權(quán)重確定單次服務(wù)添加的最少令牌數(shù)。

確定單次服務(wù)添加的最少令牌數(shù)的實(shí)現(xiàn)方式可以包括:計算各隊列的壓縮權(quán)重之和;再計算求和值與基準(zhǔn)權(quán)重的比值;將計算得到的比值確定為單次服務(wù)添加的最少令牌數(shù)。

步驟305、判斷目標(biāo)隊列的整形權(quán)重是否小于等于權(quán)重保留值;若是,則轉(zhuǎn)到步驟306,否則轉(zhuǎn)到步驟307。

權(quán)重保留值可以根據(jù)實(shí)際需要預(yù)先設(shè)置。

步驟306、將單次服務(wù)添加的最少令牌數(shù)確定為需要向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù);跳轉(zhuǎn)到步驟311。

步驟307、根據(jù)權(quán)重壓縮系數(shù)對目標(biāo)隊列的整形權(quán)重進(jìn)行壓縮。

步驟308、判斷壓縮結(jié)果是否小于等于權(quán)重保留值,若是,則轉(zhuǎn)到步驟309,否則轉(zhuǎn)到步驟310。

步驟309、計算目標(biāo)隊列的整形權(quán)重與權(quán)重保留值的比值,再計算比值與單次服務(wù)添加的最少令牌數(shù)的乘積,將計算得到的乘積值確定為需要向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù);跳轉(zhuǎn)到步驟311。

步驟310、計算權(quán)重壓縮系數(shù)與單次服務(wù)添加的最少令牌數(shù)的乘積,將計算得到的乘積值確定為需要向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù)。

步驟311、基于所確定的令牌數(shù),向目標(biāo)隊列對應(yīng)的令牌桶中添加相應(yīng)的令牌。

權(quán)重壓縮系數(shù)可以根據(jù)實(shí)際需要預(yù)先設(shè)置。

本實(shí)施例中由于各隊列的壓縮權(quán)重之和小于各隊列的整形權(quán)重之和,基于各隊列的壓縮權(quán)重及基準(zhǔn)權(quán)重確定的單次服務(wù)添加的最少令牌數(shù)與現(xiàn)有技術(shù)相比有所減小,一方面,令牌添加裝置向分配到服務(wù)機(jī)會的整形權(quán)重小的隊列對應(yīng)的令牌桶中添加的令牌數(shù)為單次服務(wù)添加的最少令牌數(shù),即與現(xiàn)有技術(shù)相比有所減小,進(jìn)而可減少整形權(quán)重小的隊列的流量突發(fā);另一方面,令牌添加裝置結(jié)合權(quán)重壓縮系數(shù)及權(quán)重值對壓縮權(quán)重進(jìn)行解壓縮,將單次服務(wù)添加的最少令牌數(shù)乘以權(quán)重壓縮系數(shù)或整形權(quán)重與權(quán)重保留值的比值,確定為分配到服務(wù)機(jī)會的整形權(quán)重大的隊列對應(yīng)的令牌桶中添加的令牌數(shù),使得整形權(quán)重大的隊列對應(yīng)的令牌桶中添加的令牌數(shù)與現(xiàn)有技術(shù)中的數(shù)目接近,如此可以保證隊列的整形速率準(zhǔn)確。

實(shí)施例四

基于上述各實(shí)施例,本實(shí)施例記載一種令牌添加方法,可以應(yīng)用于以下場景中:在擁塞管理過程中,希望能在保證隊列的整形速率準(zhǔn)確的前提下,減少權(quán)重小的隊列的流量突發(fā),提高業(yè)務(wù)的服務(wù)質(zhì)量;本實(shí)施例針對此情況的處理進(jìn)行說明。

現(xiàn)有技術(shù)中,系統(tǒng)(如目標(biāo)端口)中存在一些權(quán)重較大的隊列,存在一些權(quán)重較小的隊列,權(quán)重較大的隊列拉高了系統(tǒng)所有隊列的權(quán)重之和,使得單次服務(wù)添加的令牌數(shù)較大,權(quán)重小的隊列在一段時間內(nèi)獲得的令牌數(shù)是固定的,當(dāng)單次服務(wù)添加的令牌數(shù)較大時,權(quán)重小的隊列在這段時間內(nèi),只能獲得很少的服務(wù)機(jī)會,每次服務(wù)獲得比較多的令牌,這樣會導(dǎo)致權(quán)重小的隊列突發(fā)式的獲得令牌,權(quán)重小的隊列在系統(tǒng)內(nèi)能占用的緩存是有限的,這就導(dǎo)致權(quán)重小的隊列承受突發(fā)的能力比較差,在一段時間內(nèi),如果流量突發(fā)超過權(quán)重小的隊列緩存的承受能力的話,就會發(fā)生數(shù)據(jù)包丟棄。

本實(shí)施例為了解決該問題,區(qū)別對待權(quán)重大的隊列和權(quán)重小的隊列,壓縮權(quán)重大的隊列的權(quán)重值,同時保證權(quán)重小的隊列的權(quán)重值,減小了所有隊列的權(quán)重之和,減小了單次服務(wù)令牌添加數(shù);根據(jù)壓縮后的權(quán)重進(jìn)行帶寬分配;為了保證用戶配置的整形速率準(zhǔn)確,當(dāng)隊列被服務(wù)時,需要對壓縮權(quán)重進(jìn)行解壓縮,計算得到壓縮倍數(shù)k(k為正整數(shù),是2的冪次方,用于表示隊列的整形權(quán)重被壓縮的倍數(shù)),向隊列對應(yīng)的令牌桶中添加的令牌數(shù)等于單次服務(wù)添加的最少令牌數(shù)乘以壓縮倍數(shù)k。

參見圖4,本實(shí)施例記載的令牌添加方法包括以下步驟:

步驟401、獲取對應(yīng)于目標(biāo)端口的各隊列的整形速率,獲取權(quán)重壓縮系數(shù)a及權(quán)重保留值b,其中,a為正整數(shù),a是2的冪次方,b為正整數(shù),b是2的冪次方。

下面分別計算各隊列的壓縮權(quán)重d,其中d為正整數(shù),在令牌分配時使用。

步驟402、對于任意一個隊列,根據(jù)隊列的整形速率,確定隊列的整形權(quán)重c;計算公式如下:

c=(隊列的整形速率/基準(zhǔn)整形速率)*基準(zhǔn)權(quán)重。

步驟403、判斷隊列的整形權(quán)重c是否小于等于權(quán)重保留值b:若是,則轉(zhuǎn)到步驟406,否則轉(zhuǎn)到步驟404。

步驟404、將整形權(quán)重c除以權(quán)重壓縮系數(shù)a,判斷比值是否小于等于權(quán)重保留值b,若是,則轉(zhuǎn)到步驟405,否則轉(zhuǎn)到步驟407。

步驟405、隊列的壓縮權(quán)重d等于權(quán)重保留值b;轉(zhuǎn)到步驟408。

步驟406、隊列的壓縮權(quán)重d等于整形權(quán)重值c;轉(zhuǎn)到步驟408。

步驟407、隊列的壓縮權(quán)重d等于計算結(jié)果,即整形權(quán)重c除以權(quán)重壓縮系數(shù)a得到的比值。

步驟408、判斷是否為對應(yīng)于目標(biāo)端口的所有隊列均已確定壓縮權(quán)重,若是,則轉(zhuǎn)到步驟409,否則轉(zhuǎn)到步驟402。

步驟409、基于加權(quán)算法及各隊列的壓縮權(quán)重確定各隊列的服務(wù)機(jī)會。

加權(quán)算法,例如wfq或dwrr等;針對任意隊列a,首先計算各隊列的 壓縮權(quán)重之和,再計算隊列a與求和值的比值,將計算得到的比值確定為隊列a的服務(wù)機(jī)會;各隊列以各自對應(yīng)的服務(wù)機(jī)會(幾率)獲得令牌分發(fā)機(jī)會。

步驟410、基于基準(zhǔn)權(quán)重及各隊列的壓縮權(quán)重確定單次服務(wù)添加的最少令牌數(shù)n1。

單次服務(wù)添加的最少令牌數(shù)n1等于所有隊列的壓縮權(quán)重之和除以基準(zhǔn)權(quán)重。

步驟411、針對分配到服務(wù)機(jī)會的目標(biāo)隊列,判斷目標(biāo)隊列的整形權(quán)重c是否小于等于權(quán)重保留值b;若是,則轉(zhuǎn)到步驟412,否則轉(zhuǎn)到步驟413。

步驟412、該步驟中,壓縮倍數(shù)k=1,即需要向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù)n=單次服務(wù)添加的最少令牌數(shù)n1;跳轉(zhuǎn)到步驟416;

步驟413、計算目標(biāo)隊列的整形權(quán)重c與權(quán)重壓縮系數(shù)a的比值c/a,判斷比值c/a是否小于等于權(quán)重保留值b,若是則轉(zhuǎn)到步驟414,否則轉(zhuǎn)到步驟415;

步驟414、計算目標(biāo)隊列的整形權(quán)重c與權(quán)重保留值b的比值c/b,再計算比值c/b與單次服務(wù)添加的最少令牌數(shù)n1的乘積(c/b*n1),該步驟中,壓縮倍數(shù)k=c/b,即需要向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù)n=c/b*n1;跳轉(zhuǎn)到步驟416。

步驟415、計算權(quán)重壓縮系數(shù)a與單次服務(wù)添加的最少令牌數(shù)n1的乘積(a*n1),該步驟中,壓縮倍數(shù)k=a,即需要向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù)n=a*n1。

步驟416、基于所確定的令牌數(shù)n,向目標(biāo)隊列對應(yīng)的令牌桶中添加相應(yīng)的令牌。

本實(shí)施例在保證用戶配置整形速率準(zhǔn)確前提下,增加一段時間內(nèi)整形速率較小的隊列服務(wù)的機(jī)會,減小整形速率較小的隊列的突發(fā),在不增加整形速率小的隊列系統(tǒng)內(nèi)存占用量的前提下,增加了整形速率小的隊列承受突發(fā)的能力,減小了整形速率小的隊列丟包的可能性。提供更好的整形效果,提高系統(tǒng)的qos性能。

實(shí)施例五

與實(shí)施例四對應(yīng),本實(shí)施例記載一種令牌添加裝置,可以用于執(zhí)行實(shí)施例四的方案,令牌添加裝置可以是為實(shí)施本發(fā)明實(shí)施例而專門設(shè)置的設(shè)備,也可以內(nèi)置于網(wǎng)絡(luò)設(shè)備內(nèi)部,網(wǎng)絡(luò)設(shè)備可以包括網(wǎng)絡(luò)處理器、路由器,參見圖5,本實(shí)施例記載的令牌添加裝置包括:

配置模塊501、整形壓縮計算模塊502、整形解壓縮計算模塊503、令牌分發(fā)模塊504、令牌消耗模塊505、存儲模塊506,其中:

配置模塊501,用于配置(獲取)權(quán)重壓縮系數(shù)、權(quán)重保留值及隊列的整形權(quán)重,配置其它的必要信息;

整形壓縮計算模塊502,用于執(zhí)行步驟401至步驟408的權(quán)重壓縮運(yùn)算,計算得到隊列的最終權(quán)重值(隊列的壓縮權(quán)重);

整形解壓縮計算模塊503,用于執(zhí)行步驟411至步驟415的權(quán)重解壓縮運(yùn)算,計算得到令牌添加數(shù);

令牌分發(fā)模塊504,根據(jù)加權(quán)算法和隊列的最終權(quán)重值(隊列的壓縮權(quán)重),分配令牌服務(wù)機(jī)會給各個隊列,并根據(jù)整形解壓縮計算模塊503中計算得到的令牌添加個數(shù),向隊列的令牌桶中添加相應(yīng)的令牌。

令牌消耗模塊505,當(dāng)隊列調(diào)度數(shù)據(jù)包離開設(shè)備時,消耗相應(yīng)的令牌個數(shù)。

存儲模塊506,存儲權(quán)重壓縮系數(shù)、權(quán)重保留值及隊列的整形權(quán)重值等信息和其它的必要信息。

本實(shí)施例在保證用戶配置整形速率準(zhǔn)確前提下,增加一段時間內(nèi)整形速率較小的隊列服務(wù)的機(jī)會,減小整形速率較小的隊列的突發(fā),在不增加整形速率小的隊列系統(tǒng)內(nèi)存占用量的前提下,增加了整形速率小的隊列承受突發(fā)的能力,減小了整形速率小的隊列丟包的可能性。提供更好的整形效果,提高系統(tǒng)的qos性能。

實(shí)施例六

與前述實(shí)施例對應(yīng),本實(shí)施例針對前述的令牌添加裝置進(jìn)行說明,令牌添 加裝置可以用于執(zhí)行本發(fā)明實(shí)施例的令牌添加方法,令牌添加裝置可以是為實(shí)施本發(fā)明實(shí)施例而專門設(shè)置的設(shè)備,也可以內(nèi)置于網(wǎng)絡(luò)設(shè)備內(nèi)部,網(wǎng)絡(luò)設(shè)備可以包括網(wǎng)絡(luò)處理器、路由器,參見圖6,本實(shí)施例記載的令牌添加裝置包括:

確定模塊601,用于基于對應(yīng)于目標(biāo)端口的各個隊列的整形權(quán)重,對各隊列中滿足預(yù)設(shè)條件的隊列的整形權(quán)重進(jìn)行壓縮,確定各隊列的壓縮權(quán)重;

確定模塊601,還用于確定各隊列中分配到服務(wù)機(jī)會的目標(biāo)隊列,基于基準(zhǔn)權(quán)重、各隊列的壓縮權(quán)重及目標(biāo)隊列的整形權(quán)重,確定向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù);

分發(fā)模塊602,用于向目標(biāo)隊列對應(yīng)的令牌桶中添加確定模塊確定的添加的令牌數(shù)。

本實(shí)施例中,基于整形權(quán)重的大小區(qū)別對待目標(biāo)端口的各個隊列,對滿足預(yù)設(shè)條件的隊列的整形權(quán)重進(jìn)行壓縮,同時保證不滿足預(yù)設(shè)條件的隊列的整形權(quán)重,根據(jù)隊列的壓縮權(quán)重確定需要向目標(biāo)隊列(得到服務(wù)的隊列)的令牌桶中添加的令牌數(shù),如此,各隊列的壓縮權(quán)重之和小于各隊列的整形權(quán)重之和,由于不滿足預(yù)設(shè)條件的隊列的整形權(quán)重未被壓縮(整形權(quán)重等于壓縮權(quán)重),因此,本實(shí)施例可以增加不滿足預(yù)設(shè)條件的隊列的服務(wù)機(jī)會,并降低不滿足預(yù)設(shè)條件的隊列在得到服務(wù)時需要向?qū)?yīng)的令牌桶中添加的令牌數(shù),進(jìn)而減少不滿足預(yù)設(shè)條件的隊列的流量突發(fā),提高業(yè)務(wù)的服務(wù)質(zhì)量。

可選的,確定模塊601,具體用于判斷隊列的整形權(quán)重是否大于權(quán)重保留值;若是,則根據(jù)權(quán)重壓縮系數(shù)對隊列的整形權(quán)重進(jìn)行壓縮,當(dāng)確定壓縮結(jié)果大于權(quán)重保留值時將壓縮結(jié)果作為隊列的壓縮權(quán)重,當(dāng)確定壓縮結(jié)果不大于權(quán)重保留值時將權(quán)重保留值作為隊列的壓縮權(quán)重;

否則,將隊列的整形權(quán)重作為隊列的壓縮權(quán)重。

可選的,確定模塊601,還用于在確定各隊列中分配到服務(wù)機(jī)會的目標(biāo)隊列之前,根據(jù)各隊列的壓縮權(quán)重,確定各隊列的服務(wù)機(jī)會。

可選的,確定模塊601,具體用于計算各隊列的壓縮權(quán)重之和;再計算隊列與求和值的比值;將計算得到的比值確定為隊列的服務(wù)機(jī)會。

可選的,確定模塊601,具體用于:基于基準(zhǔn)權(quán)重及各隊列的壓縮權(quán)重確定單次服務(wù)添加的最少令牌數(shù);判斷目標(biāo)隊列的整形權(quán)重是否不大于權(quán)重保留值;

若是,則將單次服務(wù)添加的最少令牌數(shù)確定為需要向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù);

否則,根據(jù)權(quán)重壓縮系數(shù)對目標(biāo)隊列的整形權(quán)重進(jìn)行壓縮,當(dāng)確定壓縮結(jié)果不大于權(quán)重保留值時,計算目標(biāo)隊列的整形權(quán)重與權(quán)重保留值的比值,再計算比值與單次服務(wù)添加的最少令牌數(shù)的乘積,將計算得到的乘積值確定為需要向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù);當(dāng)確定壓縮結(jié)果大于權(quán)重保留值時,計算權(quán)重壓縮系數(shù)與單次服務(wù)添加的最少令牌數(shù)的乘積,將計算得到的乘積值確定為需要向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù)。

可選的,確定模塊601,具體用于計算各隊列的壓縮權(quán)重之和;再計算求和值與基準(zhǔn)權(quán)重的比值;將計算得到的比值確定為單次服務(wù)添加的最少令牌數(shù)。

在實(shí)際應(yīng)用中,確定模塊601、分發(fā)模塊602,均可由位于網(wǎng)絡(luò)設(shè)備的中央處理器(cpu)、微處理器(mpu)、數(shù)字信號處理器(dsp)、或現(xiàn)場可編程門陣列(fpga)等實(shí)現(xiàn)。

實(shí)施例七

實(shí)體實(shí)施例

本實(shí)施例記載一種計算機(jī)可讀介質(zhì),可以為rom(例如,只讀存儲器、flash存儲器、轉(zhuǎn)移裝置等)、磁存儲介質(zhì)(例如,磁帶、磁盤驅(qū)動器等)、光學(xué)存儲介質(zhì)(例如,cd-rom、dvd-rom、紙卡、紙帶等)以及其他熟知類型的程序存儲器;計算機(jī)可讀介質(zhì)中存儲有計算機(jī)可執(zhí)行指令,當(dāng)執(zhí)行指令時,引起至少一個處理器執(zhí)行包括以下的操作:

基于對應(yīng)于目標(biāo)端口的各個隊列的整形權(quán)重,對各隊列中滿足預(yù)設(shè)條件的隊列的整形權(quán)重進(jìn)行壓縮,確定各隊列的壓縮權(quán)重;

確定各隊列中分配到服務(wù)機(jī)會的目標(biāo)隊列,基于基準(zhǔn)權(quán)重、各隊列的壓縮 權(quán)重及目標(biāo)隊列的整形權(quán)重,確定向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù)并添加。

可選的,基于對應(yīng)于目標(biāo)端口的各個隊列的整形權(quán)重,對各隊列中滿足預(yù)設(shè)條件的隊列的整形權(quán)重進(jìn)行壓縮,確定各隊列的壓縮權(quán)重,包括:判斷隊列的整形權(quán)重是否大于權(quán)重保留值;若是,則根據(jù)權(quán)重壓縮系數(shù)對隊列的整形權(quán)重進(jìn)行壓縮,當(dāng)確定壓縮結(jié)果大于權(quán)重保留值時將壓縮結(jié)果作為隊列的壓縮權(quán)重,當(dāng)確定壓縮結(jié)果不大于權(quán)重保留值時將權(quán)重保留值作為隊列的壓縮權(quán)重;

否則,將隊列的整形權(quán)重作為隊列的壓縮權(quán)重。

可選的,確定各隊列中分配到服務(wù)機(jī)會的目標(biāo)隊列之前,方法還包括:根據(jù)各隊列的壓縮權(quán)重,確定各隊列的服務(wù)機(jī)會。

可選的,根據(jù)各隊列的壓縮權(quán)重,確定各隊列的服務(wù)機(jī)會,包括:計算各隊列的壓縮權(quán)重之和;再計算隊列與求和值的比值;將計算得到的比值確定為隊列的服務(wù)機(jī)會。

可選的,基于基準(zhǔn)權(quán)重、各隊列的壓縮權(quán)重及目標(biāo)隊列的整形權(quán)重,確定向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù),包括:基于基準(zhǔn)權(quán)重及各隊列的壓縮權(quán)重確定單次服務(wù)添加的最少令牌數(shù);判斷目標(biāo)隊列的整形權(quán)重是否不大于權(quán)重保留值;若是,則將單次服務(wù)添加的最少令牌數(shù)確定為需要向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù);否則,根據(jù)權(quán)重壓縮系數(shù)對目標(biāo)隊列的整形權(quán)重進(jìn)行壓縮,當(dāng)確定壓縮結(jié)果不大于權(quán)重保留值時,計算目標(biāo)隊列的整形權(quán)重與權(quán)重保留值的比值,再計算比值與單次服務(wù)添加的最少令牌數(shù)的乘積,將計算得到的乘積值確定為需要向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù);當(dāng)確定壓縮結(jié)果大于權(quán)重保留值時,計算權(quán)重壓縮系數(shù)與單次服務(wù)添加的最少令牌數(shù)的乘積,將計算得到的乘積值確定為需要向目標(biāo)隊列對應(yīng)的令牌桶中添加的令牌數(shù)。

可選的,基于基準(zhǔn)權(quán)重及各隊列的壓縮權(quán)重確定單次服務(wù)添加的最少令牌數(shù),包括:計算各隊列的壓縮權(quán)重之和;再計算求和值與基準(zhǔn)權(quán)重的比值;將計算得到的比值確定為單次服務(wù)添加的最少令牌數(shù)。

綜上,本發(fā)明實(shí)施例中通過對滿足預(yù)設(shè)條件的隊列的整形權(quán)重進(jìn)行壓縮,同時保證不滿足預(yù)設(shè)條件的隊列的整形權(quán)重,根據(jù)隊列的壓縮權(quán)重確定需要向目標(biāo)隊列(得到服務(wù)的隊列)的令牌桶中添加的令牌數(shù),如此,各隊列的壓縮權(quán)重之和小于各隊列的整形權(quán)重之和,由于不滿足預(yù)設(shè)條件的隊列的整形權(quán)重未被壓縮(整形權(quán)重等于壓縮權(quán)重),因此,本實(shí)施例會增加不滿足預(yù)設(shè)條件的隊列的服務(wù)機(jī)會,并降低不滿足預(yù)設(shè)條件的隊列在得到服務(wù)時需要向?qū)?yīng)的令牌桶中添加的令牌數(shù),進(jìn)而減少不滿足預(yù)設(shè)條件的隊列的流量突發(fā),提高業(yè)務(wù)的服務(wù)質(zhì)量。

本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用硬件實(shí)施例、軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機(jī)可用程序代碼的計算機(jī)可用存儲介質(zhì)(包括但不限于磁盤存儲器和光學(xué)存儲器等)上實(shí)施的計算機(jī)程序產(chǎn)品的形式。

本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機(jī)程序指令到通用計算機(jī)、專用計算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機(jī)器,使得通過計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。

這些計算機(jī)程序指令也可存儲在能引導(dǎo)計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機(jī)可讀存儲器中,使得存儲在該計算機(jī)可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。

這些計算機(jī)程序指令也可裝載到計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機(jī)實(shí)現(xiàn)的處理,從而在計算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個流程 或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。

以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
延吉市| 玉门市| 浦县| 盖州市| 普安县| 永兴县| 绿春县| 田东县| 略阳县| 灌阳县| 威远县| 津南区| 郎溪县| 桑植县| 徐闻县| 香格里拉县| 鄂伦春自治旗| 综艺| 抚松县| 平山县| 山丹县| 开远市| 甘德县| 忻州市| 镇江市| 德庆县| 沂南县| 云阳县| 紫金县| 秦皇岛市| 册亨县| 洛隆县| 乌兰县| 榆林市| 东兰县| 大丰市| 元阳县| 义乌市| 拜城县| 丰顺县| 宝清县|