[發(fā)明專利]緩存調(diào)整方法及裝置有效
| 申請?zhí)枺?/td> | 201210411981.X | 申請日: | 2012-10-25 |
| 公開(公告)號: | CN102916903A | 公開(公告)日: | 2013-02-06 |
| 發(fā)明(設計)人: | 曹學成 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | H04L12/861 | 分類號: | H04L12/861 |
| 代理公司: | 廣州三環(huán)專利代理有限公司 44202 | 代理人: | 郝傳鑫;熊永強 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 緩存 調(diào)整 方法 裝置 | ||
技術領域
本發(fā)明涉及通信領域,尤其涉及一種緩存調(diào)整方法及裝置。
背景技術
在通信系統(tǒng)中,設備通常具有多個出口,而且每個出口的速率是可變的(如以太網(wǎng)口、低速的同步串口等),在報文從設備的入口進入后,會分發(fā)到該設備的多個速率不同的出口而發(fā)送出去。當報文從設備入口進入后,緩存到一個出口對應的緩存隊列中,如果該出口緩存隊列中的報文達到一定數(shù)量時,新發(fā)往該出口的報文將被丟棄。在確定每個出口對應的緩存隊列大小時,需要考慮該設備的總緩存量以及該設備中出口的數(shù)量、各出口的出口速率以及不同出口的優(yōu)先級等。通常在設備初始化時會配置每個出口緩存隊列大小,且以后不再改變。如果出口緩存隊列配置得太小,在有數(shù)據(jù)突發(fā)時,會造成大量丟包,影響整體性能;如果出口緩存隊列配置得太大,則會占用更多緩存,這會增加設備硬件成本。當出口的出口速率為低速且是傳輸語音之類對延遲要求較高的業(yè)務時,如果該出口的緩存空間太大的話會增加數(shù)據(jù)傳輸延遲,使得該出口的緩存隊列的尾部數(shù)據(jù)經(jīng)常需要超時重傳,浪費了入口有效帶寬以及緩存空間。
現(xiàn)有動態(tài)調(diào)整緩存的技術是檢測設備每個出口處報文的駐留時長,對于設備中每個出口來說,當存在每個出口出口處報文的駐留時長超過預設駐留時長閾值的報文時,則從該出口對應的緩存隊列中刪除駐留時長超過預設駐留時長閾值的報文,釋放已刪除的報文占用的緩存,并將因釋放共享緩存而節(jié)省出來的緩存給其它出口使用。
發(fā)明人在實現(xiàn)本發(fā)明的過程中發(fā)現(xiàn),現(xiàn)有技術至少存在以下缺陷:
只是給出了每個出口釋放共享緩存的條件,并未給出如何分配釋放出的緩存,因而不能實現(xiàn)對于有多個出口的設備中,在緩存總量不變的前提下,如何為多個出口動態(tài)地調(diào)整緩存空間。因此現(xiàn)有技術存在設備緩存利用率不高的問題。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種緩存調(diào)整方法及裝置,能夠?qū)τ谟卸鄠€出口的設備,在緩存總量不變的前提下,根據(jù)每個出口當前實際速率自動調(diào)整出口緩存隊列深度,實現(xiàn)為多個出口動態(tài)地調(diào)整緩存空間。
第一方面,提供一種緩存調(diào)整方法,包括:
根據(jù)設備中每個出口的預定出口速率,確定每個出口對應的緩存隊列的初始值;
根據(jù)每個出口的預先設定的最大時延值,確定每個出口對應的緩存隊列的最大緩存值;
檢測設備中每個出口的當前實際速率,在當前實際速率高于該出口的預定出口速率時,從動態(tài)緩存中為該出口分配緩存,分配緩存后該出口對應的緩存隊列的緩存值小于或等于該出口的最大緩存值,所述動態(tài)緩存的大小不大于設備總緩存值減去所有出口對應的緩存隊列的初始值之和得到的差值。
在所述第一方面的第一種可能的實現(xiàn)方式中,所述根據(jù)設備中每個出口的預定出口速率,確定每個出口對應的緩存隊列的初始值,包括:
將用于分配的固定緩存值除以預設系統(tǒng)速率精度與出口數(shù)的乘積得到的結果,作為所述系統(tǒng)速率精度下的緩存數(shù);
針對每個出口,當所述系統(tǒng)速率精度下的緩存數(shù)大于或等于預置的該出口的最小緩存數(shù)時,將所述系統(tǒng)速率精度下的緩存數(shù)乘以該出口的預定出口速率,得到該出口對應的緩存隊列的初始值。
在所述第一方面的第二種可能的實現(xiàn)方式中,所述檢測設備中每個出口的當前實際速率,在當前實際速率高于該出口的預定出口速率時,從動態(tài)緩存中為該出口分配緩存,包括:
檢測設備中每個出口的當前實際速率,若當前實際速率高于該出口的預定出口速率,判斷該出口對應的緩存隊列的當前緩存值與固定步長之和是否小于該出口的最大緩存值;
若是,按照所述固定步長從動態(tài)緩存中為該出口分配緩存。
在所述第一方面的第二種可能的實現(xiàn)方式中,還提供了所述第一方面的第三種可能的實現(xiàn)方式,若當前實際速率低于該出口的預定出口速率,根據(jù)該出口當前實際速率計算該出口實際所需的緩存值;
判斷所述出口實際所需的緩存值是否大于該出口對應的緩存隊列的初始值;
若大于該出口對應的緩存隊列的初始值,則在所述出口對應的緩存隊列中超出所述出口實際所需的緩存值的部分空間已被占用的情況下,在發(fā)送完數(shù)據(jù)后,將所述部分空間釋放給動態(tài)緩存;在所述出口對應的緩存隊列中超出所述出口實際所需的緩存值的部分空間未占用的情況下,將所述部分空間釋放給動態(tài)緩存;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經(jīng)華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210411981.X/2.html,轉載請聲明來源鉆瓜專利網(wǎng)。





