[發(fā)明專(zhuān)利]一種基于改進(jìn)的WRED的擁塞控制方法和裝置在審
| 申請(qǐng)?zhí)枺?/td> | 201410723738.0 | 申請(qǐng)日: | 2014-12-03 |
| 公開(kāi)(公告)號(hào): | CN105721332A | 公開(kāi)(公告)日: | 2016-06-29 |
| 發(fā)明(設(shè)計(jì))人: | 于克東;仲建鋒;王志忠;劉衡祁 | 申請(qǐng)(專(zhuān)利權(quán))人: | 深圳市中興微電子技術(shù)有限公司 |
| 主分類(lèi)號(hào): | H04L12/823 | 分類(lèi)號(hào): | H04L12/823 |
| 代理公司: | 北京派特恩知識(shí)產(chǎn)權(quán)代理有限公司 11270 | 代理人: | 蔣雅潔;張振偉 |
| 地址: | 518085 廣*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 改進(jìn) wred 擁塞 控制 方法 裝置 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)傳輸控制領(lǐng)域,具體涉及一種基于改進(jìn)的WRED的擁塞控制方法和裝置。
背景技術(shù)
網(wǎng)絡(luò)擁塞容易造成延遲和吞吐量等服務(wù)質(zhì)量(QoS,QualityofService)性能指標(biāo)下降,是影響帶寬、系統(tǒng)緩存等資源利用率的關(guān)鍵因素。因此,有效的擁塞避免機(jī)制對(duì)于提高路由器性能具有重要意義。
加權(quán)隨機(jī)早期檢測(cè)(WRED,WeightedRandomEarlyDetection)算法是現(xiàn)有擁塞避免機(jī)制中常用的一種丟棄算法。WRED算法的計(jì)算過(guò)程主要包括:平均隊(duì)列深度計(jì)算、WRED丟棄概率的計(jì)算和WRED丟棄判斷,其丟棄曲線(xiàn)如圖1所示。圖1中,橫軸avg_q_length表示隊(duì)列準(zhǔn)備丟棄數(shù)據(jù)包前隊(duì)列當(dāng)前的平均隊(duì)列深度,該參數(shù)反映出隊(duì)列深度的變化趨勢(shì);縱軸P表示丟棄概率,其反映出數(shù)據(jù)包被丟棄的可能性;min_th表示平均隊(duì)列深度最小門(mén)限;max_th表示平均隊(duì)列深度最大門(mén)限;maxP表示最大丟棄概率;其中,min_th、max_th和maxP的取值可根據(jù)需要進(jìn)行設(shè)置。從圖1可以看出,丟棄數(shù)據(jù)包的可能性隨著平均隊(duì)列深度向最大門(mén)限max_th靠近而不斷上升。當(dāng)平均隊(duì)列深度達(dá)到最大門(mén)限max_th時(shí),數(shù)據(jù)包丟棄概率達(dá)到設(shè)置的最大丟棄概率maxP。當(dāng)平均隊(duì)列深度超過(guò)最大門(mén)限max_th時(shí),所有其它試圖進(jìn)入隊(duì)列的數(shù)據(jù)包都被丟棄;因此,在實(shí)際應(yīng)用中可以調(diào)節(jié)min_th和max_th的取值來(lái)增大或降低丟包程度;而從圖1可以看出maxP的取值是與min_th和max_th的取值直接相關(guān)的,也就是說(shuō),確定了min_th和max_th的取值則maP的值也就確定了;實(shí)際中min_th和max_th的取值與傳輸?shù)臄?shù)據(jù)包的業(yè)務(wù)類(lèi)型相關(guān),例如,電信業(yè)務(wù)、上網(wǎng)業(yè)務(wù)、視頻傳輸業(yè)務(wù)等等,不同的業(yè)務(wù)對(duì)丟包的容忍程度不同,對(duì)于丟包容忍程度低的業(yè)務(wù)來(lái)說(shuō),可以將max_th設(shè)置的相對(duì)較小;對(duì)于丟包容忍程度高的業(yè)務(wù)來(lái)說(shuō),可以將max_th的值設(shè)置的相對(duì)大些。
WRED算法在擁塞控制中的處理流程如圖2所示,主要包括以下處理步驟:
S201:計(jì)算平均隊(duì)列深度;
數(shù)據(jù)包進(jìn)入擁塞控制系統(tǒng)時(shí),首先進(jìn)行平均隊(duì)列深度的計(jì)算。平均隊(duì)列深度能夠從總體變化趨勢(shì)上反映真實(shí)的隊(duì)列深度,同時(shí)可以平滑掉流量突發(fā),不會(huì)因?yàn)榕紶柕牧魉偕呋蚪档投饘?duì)流量總體情況判定的改變。平均隊(duì)列深度的計(jì)算公式為Avg=Avg’+Wq(Q_length-Avg’)。其中,Avg’為上次計(jì)算的隊(duì)列的平均深度,由于在WRED算法中每接收到一個(gè)數(shù)據(jù)包需要需要判斷將該數(shù)據(jù)包加入隊(duì)列或丟棄,因此,當(dāng)將數(shù)據(jù)包加入隊(duì)列時(shí),隊(duì)列的深度將發(fā)生變化,因此,該參數(shù)反映出從接收到第一個(gè)數(shù)據(jù)包到上一次接收到數(shù)據(jù)包時(shí),隊(duì)列深度的變化趨勢(shì);當(dāng)接收到第一個(gè)數(shù)據(jù)包時(shí),Avg’的取值為0,并計(jì)算出當(dāng)前的平均隊(duì)列深度,之后,當(dāng)接收到第二個(gè)數(shù)據(jù)包時(shí),根據(jù)上一次計(jì)算出的隊(duì)列深度、當(dāng)前隊(duì)列深度以及權(quán)重值Wq確定出當(dāng)前的平均隊(duì)列深度,以此類(lèi)推,不斷循環(huán)迭代;Q_length為當(dāng)前隊(duì)列深度,也就是,接收到數(shù)據(jù)包時(shí),當(dāng)前隊(duì)列的深度;Wq為計(jì)算權(quán)重,Avg為當(dāng)前隊(duì)列的平均深度。
步驟S202:判斷平均隊(duì)列深度是否滿(mǎn)足丟棄條件;
具體的,若平均隊(duì)列深度大于等于預(yù)先設(shè)置的平均深度最大門(mén)限max_th,則確定該數(shù)據(jù)包滿(mǎn)足丟棄條件,直接轉(zhuǎn)至步驟S206,丟棄當(dāng)前數(shù)據(jù)包;若不滿(mǎn)足,則轉(zhuǎn)步驟S203繼續(xù)處理。
步驟S203:判斷平均隊(duì)列深度是否滿(mǎn)足入隊(duì)條件;
也就是判斷當(dāng)前的平均隊(duì)列深度是否滿(mǎn)足將該數(shù)據(jù)包直接加入數(shù)據(jù)包隊(duì)列的條件;具體的,當(dāng)平均隊(duì)列深度小于平均數(shù)據(jù)包深度的最小門(mén)限min_th時(shí),可以確定該數(shù)據(jù)包滿(mǎn)足直接加入數(shù)據(jù)包隊(duì)列的條件,則轉(zhuǎn)至步驟S207,將該數(shù)據(jù)包直接入隊(duì);當(dāng)該平均隊(duì)列深度不滿(mǎn)足入隊(duì)條件時(shí),即,當(dāng)前平均隊(duì)列深度屬于[min_th,max_th]區(qū)間范圍內(nèi)時(shí),轉(zhuǎn)至步驟S204繼續(xù)執(zhí)行。
步驟S204:計(jì)算丟棄概率;
具體的,根據(jù)當(dāng)前數(shù)據(jù)包的長(zhǎng)度和平均隊(duì)列深度計(jì)算該數(shù)據(jù)包的丟棄概率P。
步驟205:判斷丟棄概率是否大于R;
確定當(dāng)前數(shù)據(jù)包的丟棄概率之后,將所確定的丟棄概率和系統(tǒng)生成的R[0,1]區(qū)間內(nèi)的隨機(jī)數(shù)R進(jìn)行比較;若丟棄概率大于R,則轉(zhuǎn)至步驟S206直接丟棄該數(shù)據(jù)包;若丟棄概率小于等于R,則轉(zhuǎn)至步驟S207,將該數(shù)據(jù)包加入隊(duì)列。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于深圳市中興微電子技術(shù)有限公司,未經(jīng)深圳市中興微電子技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410723738.0/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。





