[發明專利]基于RTT的結合比例積分微分控制的擁塞控制方法及設備有效
| 申請號: | 202110590992.8 | 申請日: | 2021-05-28 |
| 公開(公告)號: | CN113364701B | 公開(公告)日: | 2022-11-25 |
| 發明(設計)人: | 金天成;王曉亮;陸桑璐;段衛國;王李明;彭浩;陳力林 | 申請(專利權)人: | 南京大學;南方電網深圳數字電網研究院有限公司 |
| 主分類號: | H04L47/12 | 分類號: | H04L47/12;H04L47/283;H04L47/25 |
| 代理公司: | 南京泉為知識產權代理事務所(特殊普通合伙) 32408 | 代理人: | 許丹丹 |
| 地址: | 210093 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 rtt 結合 比例 積分 微分 控制 擁塞 方法 設備 | ||
1.一種基于RTT的結合比例積分微分控制的擁塞控制方法,其特征在于,包括以下步驟:
1)發送方判斷是否發生RTT反饋超時,并測量當前時刻網絡路徑的RTT時延;
2)若RTT反饋超時,則發送方進行主動降速,直接將速率調整為允許的最小速率;若RTT反饋未超時,則發送方根據當前RTT是否在設定的可容忍的隊列震蕩范圍之內,采用不同的方式更新速率,其中,在當前RTT處于可容忍的隊列震蕩范圍之外的情況下,采用基于固定閾值的方法調整速率,在當前RTT處于可容忍的隊列震蕩范圍之內的情況下,采用比例積分微分控制的方法更新速率;
3)發送方將步驟2)中得到的速率作為當前的目標速率,控制數據包之間發送的時間間隔,以達到目標速率;
其中,所述步驟2)中在當前RTT處于可容忍的隊列震蕩范圍之外的情況下,采用基于固定閾值的方法調整速率包括:
21)計算當前鏈路RTT值newRTT和設定的目標時延targetRTT之間的差值比例Perror,公式為Perror=(newRTT-targetRTT)/targetRTT;
22)令設定的可容忍的隊列震蕩范圍為[-k,k],k取值在0和1之間,當Perror-k時,newRate=rate+δ;當Perrork時,newRate=rate(1-β(1-targetRTT(1+k)/newRTT)),其中δ為速率加速步長,β為降速調節比,newRate為調整后的速率,rate為當前速率;
所述步驟2)中在當前RTT處于可容忍的隊列震蕩范圍之內的情況下,采用比例積分微分控制的方法更新速率包括:
2a)計算當前鏈路RTT值newRTT和設定的目標時延targetRTT之間的差值比例Perror,公式為Perror=(newRTT-targetRTT)/targetRTT;
2b)令設定的可容忍的隊列震蕩范圍為[-k,k],k取值在0和1之間,當-k=Perror=k時,計算比例部分Perror、微分部分Derror、積分部分Ierror,三者相加得到降速的指標值error,然后根據該error值進行速率調整,計算公式如下:newRate=rate(1-β*error)。
2.根據權利要求1所述的基于RTT的結合比例積分微分控制的擁塞控制方法,其特征在于,所述步驟1)中判斷RTT反饋超時和測量RTT的具體方法包括以下步驟:
11)發送方在每次發出數據包時,記錄當前系統時間戳或網卡硬件時間戳;
12)若在設定的RTT反饋超時閾值FEEDBACK_TIMEOUT之內沒有收到ACK,說明當前網絡上已經發生擁塞,直接跳到步驟2)進行主動降速;
13)若在FEEDBACK_TIMEOUT時間之內收到ACK,則記錄收到ACK時的系統時間戳或網卡硬件時間戳,將該時間戳與步驟11)中得到的時間戳作差值,得到的值即為當前端到端的時延;
14)將步驟13)中得到的端到端時延,減去當前速率下數據包的序列化時間,得到當前鏈路的RTT值,記為newRTT。
3.根據權利要求1所述的基于RTT的結合比例積分微分控制的擁塞控制方法,其特征在于,所述比例部分為Perror;
所述微分部分Derror實際為每次測量的RTT之間的差值,即RTT變化的梯度值,計算公式為rttGradient=(1-α)rttGradient+α(newRTT-prevRTT)/minRTT;
所述積分部分Ierror實際為每次Perror的累計值的平均值,計算方法如下:
accumulated_Perror=(1-α)accumulated_Perror+α*Perror;
accumulated_num+=1;
Ierror=accumulated_Perror/accumulated_num;
其中α為指數平均移動的平滑因子,β為降速調節比,minRTT為標準化時延,用于將RTT梯度標準化;newRTT為當前的RTT值,prevRTT為上一次測得的RTT值,rttGradient為梯度累加值,初始值為0;accumulated_Perror為每輪Perror的累計和,相當于積分值,初始值亦為0,accumulated_num為進行比例積分微分控制的次數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京大學;南方電網深圳數字電網研究院有限公司,未經南京大學;南方電網深圳數字電網研究院有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110590992.8/1.html,轉載請聲明來源鉆瓜專利網。





