一種網絡擁塞控制方法和裝置制造方法
【專利摘要】本發明公開了一種網絡擁塞控制方法:當確定發生網絡擁塞時,根據當前的擁塞情況確定需要調整的TCP數據流以及每個需要調整的TCP數據流的調整目標;根據對應的調整目標分別對各需要調整的TCP數據流進行調整。本發明同時公開了一種網絡擁塞控制裝置。應用本發明所述方案,能夠提高調整時機的準確性。
【專利說明】一種網絡擁塞控制方法和裝置
【技術領域】
[0001]本發明涉及移動網絡技術,特別涉及一種網絡擁塞控制方法和裝置。
【背景技術】
[0002]當移動網絡中存在較多的報文時,網絡的性能就會下降,即發生網絡擁塞。
[0003]相應地,為了提高網絡的性能,就必須采取一定的措施來解決網絡擁塞問題,即進行網絡擁塞控制。
[0004]傳統的網絡擁塞控制方式的核心思想是利用端到端的傳輸反饋信息,如丟包和時延等,反復試探和匹配當前的網絡路徑狀態,不斷調整發送窗口大小。
[0005]但是,無線信道的介質決定了其鏈路極易受到干擾,容易出現臨時的丟包和時延抖動等,因此,基于這些隱式信息的端到端擁塞控制難以保證調整時機的準確性,效率低下。
【發明內容】
[0006]有鑒于此,本發明提供了一種網絡擁塞控制方法和裝置,能夠提高調整時機的準確性。
[0007]為了達到上述目的,本發明的技術方案是這樣實現的:
[0008]一種網絡擁塞控制方法,包括:
[0009]當確定發生網絡擁塞時,根據當前的擁塞情況確定需要調整的傳輸控制協議TCP數據流以及每個需要調整的TCP數據流的調整目標;
[0010]根據對應的調整目標分別對各需要調整的TCP數據流進行調整。
[0011]一種網絡擁塞控制裝置,包括:
[0012]第一處理模塊,用于當確定發生網絡擁塞時,根據當前的擁塞情況確定需要調整的傳輸控制協議TCP數據流以及每個需要調整的TCP數據流的調整目標;
[0013]第二處理模塊,用于根據對應的調整目標分別對各需要調整的TCP數據流進行調難
IF.0
[0014]可見,采用本發明所述方案,無需等待端到端的傳輸反饋信息等,一旦發生了網絡擁塞,即可根據當前的擁塞情況確定需要調整的TCP數據流以及每個需要調整的TCP數據流的調整目標,并相應地進行調整,從而提聞了調整時機的準確性和實時性等,進而提聞了調整效率;而且,本發明所述方案中以單個TCP數據流為單位進行調整,從而使得調整更為精細化,更具針對性,進而提高了系統的有效吞吐量;另外,本發明所述方案實現起來簡單方便,便于普及和推廣。
【專利附圖】
【附圖說明】
[0015]圖1為本發明網絡擁塞控制方法實施例的流程圖。
[0016]圖2為現有終端、基站和分組域網關等之間的關系不意圖。
[0017]圖3為本發明網絡擁塞控制方法第一較佳實施例的流程圖。
[0018]圖4為本發明網絡擁塞控制方法第二較佳實施例的流程圖。
[0019]圖5為本發明網絡擁塞控制裝置實施例的組成結構示意圖。
【具體實施方式】
[0020]針對現有技術中存在的問題,本發明中提出一種改進后的網絡擁塞控制方案,能夠提高調整時機的準確性等。
[0021]為了使本發明的技術方案更加清楚、明白,以下參照附圖并舉實施例,對本發明所述方案作進一步的詳細說明。
[0022]圖1為本發明網絡擁塞控制方法實施例的流程圖。如圖1所示,包括:
[0023]步驟11:當確定發生網絡擁塞時,根據當前的擁塞情況確定需要調整的傳輸控制協議(TCP,Transmiss1n Control Protocol)數據流以及每個需要調整的TCP數據流的調整目標;
[0024]步驟12:根據對應的調整目標分別對各需要調整的TCP數據流進行調整。
[0025]其中,當所述網絡擁塞為上行網絡擁塞時,針對每個需要調整的TCP數據流,可分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的下行ACK報文中的接收窗口進行調整。
[0026]當所述網絡擁塞為下行網絡擁塞時,針對每個需要調整的TCP數據流,可分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的TCP下行數據發送窗口進行調整。
[0027]或者,當所述網絡擁塞為下行網絡擁塞時,針對每個需要調整的TCP數據流,可分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的上行ACK報文中的接收窗口進行調整。
[0028]在實際應用中,上述步驟11?12所示功能可集成到基站和分組域網關等之中,SP可通過對基站或分組域網關等進行改造,使其具備上述功能。
[0029]圖2為現有終端(UE,User Equipment)、基站(eNB)和分組域網關等之間的關系示意圖。如圖2所示,其中的基站、基站控制器(BSC,Base Stat1n Controller)、無線網絡控制器(RNC, Rad1 Network Controller)、通用分組無線業務服務支持節點(SGSN, ServingGeneral Packet Rad1 Service Support Node)、服務網關(SGW, Serving Gateway)、通用分組無線業務網關支持節點(GGSN, Gateway General Packet Rad1 Service SupportNode)、分組數據網網關(PGW, Packet Data Network Gateway)以及 TCP 代理(TCP Proxy)等的現有功能均為本領域公知。其中,PGW和TCP代理等均屬于分組域網關的組成部分。
[0030]圖3為本發明網絡擁塞控制方法第一較佳實施例的流程圖。該較佳實施例對應于下行網絡擁塞的情況,如圖3所示,包括步驟31?步驟33。
[0031]步驟31:基站向分組域網關上報下行無線信道實時信息。
[0032]具體來說,基站可利用與分組域網關之間的隨路數據信道,通過通用分組無線業務隧道用戶面協議(GTP-U,General Packet Rad1 Service Tunneling Protocol for theUser plane)報頭或IP協議報頭等,向分組域網關上報下行無線信道實時信息。
[0033]另外,基站可在每次有上行數據需要發送時,即進行一次上報,或者,可周期性(如果周期設置得很小,則相當于是實時進行上報)地進行上報等,并且,基站在進行上報時,可上報當前的下行無線信道實時信息,即當前情況,也可上報過去一個周期內的平均情況或最差情況等,具體實現方式不限,可根據實際需要而定。
[0034]步驟32:PGW獲取到基站上報的下行無線信道實時信息后,如果確定出下行網絡擁塞,則根據當前的擁塞情況確定出需要調整的TCP數據流以及每個需要調整的TCP數據流的調整目標,并通知TCP代理。
[0035]PGW如何根據下行無線信道實時信息確定是否發生了下行網絡擁塞為現有技術,另外,如何根據當前的擁塞情況確定哪些TCP數據流需要調整以及分別如何進行調整等均可根據實際需要而定。
[0036]比如,為保證一些優先級較高的TCP數據流的順利傳輸,可調整一些優先級較低的TCP數據流,降低其發送速率等;通常,擁塞程度越嚴重,需要調整的TCP數據流就越多,或者,針對單個TCP數據流的調整力度就越大。
[0037]步驟33 =TCP代理根據對應的調整目標分別對各需要調整的TCP數據流進行調整。
[0038]此時,TCP代理作為無線側TCP下行數據發送端,可針對每個需要調整的TCP數據流,分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的TCP下行數據發送窗口進行調整。
[0039]具體來說,該TCP數據流對應的調整目標可為:期望發送速率V ;相應地,調整后的發送窗口可為:min{當前發送窗口,V/ (RTTXS) }。
[0040]其中,RTT表示該TCP數據流對應的下行網絡往返時延(RTT,Round Trip Time),S表示該TCP數據流對應的下行平均IP包大小,min表示取較小值。TCP代理可實時獲取下行數據傳輸參數,其中即包括RTT和S,如何獲取為現有技術。
[0041]或者,該TCP數據流對應的調整目標可為:調整系數;相應地,調整后的發送窗口可為:當前發送窗口 X調整系數。不同TCP數據流對應的調整系數的取值可以相同,也可以不同,具體取值可根據實際需要而定,如0.5,0.6等。
[0042]圖3所示較佳實施例中,以代理方式對各需要調整的TCP數據流進行調整,在實際應用中,也可以采用非代理方式,即針對每個需要調整的TCP數據流,分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的上行ACK報文中的接收窗口進行調整。
[0043]類似地,所述調整目標可為:期望發送速率V ;相應地,所述調整后的接收窗口可為:min{當前接收窗口,V/ (RTTXS) };或者,所述調整目標可為:調整系數;相應地,所述調整后的接收窗口可為:當前接收窗口 X調整系數。
[0044]圖4為本發明網絡擁塞控制方法第二較佳實施例的流程圖。該較佳實施例對應于上行網絡擁塞的情況,如圖4所示,包括步驟41?步驟43。
[0045]步驟41:基站向分組域網關上報上行無線信道實時信息。
[0046]步驟42:PGW獲取到基站上報的上行無線信道實時信息后,如果確定出上行網絡擁塞,則根據當前的擁塞情況確定出需要調整的TCP數據流以及每個需要調整的TCP數據流的調整目標,并通知TCP代理。
[0047]步驟43 =TCP代理根據對應的調整目標分別對各需要調整的TCP數據流進行調整。
[0048]此時,TCP代理作為無線側TCP上行數據接收端,可針對每個需要調整的TCP數據流,分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的下行ACK報文中的接收窗口進行調整。
[0049]具體來說,該TCP數據流對應的調整目標可為:期望發送速率V ;相應地,調整后的接收窗口可為:min{當前接收窗口,V/ (RTT’ XS’)}。
[0050]其中,RTT’表示該TCP數據流對應的上行網絡往返時延,S’表示該TCP數據流對應的上行平均IP包大小,min表示取較小值。
[0051]或者,該TCP數據流對應的調整目標可為:調整系數;相應地,調整后的接收窗口可為:當前接收窗口 X調整系數。
[0052]需要說明的是,圖3和圖4所示較佳實施例中所提到的根據對應的調整目標分別對各需要調整的TCP數據流進行調整的具體實現方式僅為舉例說明,并不用于限制本發明的技術方案,如果采用本領域技術人員能夠想到的其它方式,只要能夠達到同樣的目的,也是可以的。
[0053]另外,在實際應用中,本發明所述方案的其它實現方式也可靈活設定,比如:當確定發生網絡擁塞時,不是直接根據當前的擁塞情況確定需要調整的TCP數據流以及每個需要調整的TCP數據流的調整目標,而是首先確定當前是否滿足調整條件,如果是,則根據當前的擁塞情況確定需要調整的TCP數據流以及每個需要調整的TCP數據流的調整目標,并相應地進行調整等,否則,可不進行任何處理。
[0054]所述滿足調整條件可以是指:擁塞持續時長大于預定閾值等。較佳地,可在當確定發生網絡擁塞時,即進行調整,以確保擁塞問題能夠得到及時解決,進而確保網絡的性能坐寸ο
[0055]再有,本發明所述方案中還提出,當網絡擁塞緩解后,可根據緩解程度確定需要調整的TCP數據流以及每個需要調整的TCP數據流的調整目標,并根據對應的調整目標分別對各需要調整的TCP數據流進行調整。
[0056]具體調整方式可與前述類似,S卩:對于上行方向,針對每個需要調整的TCP數據流,可分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的下行ACK報文中的接收窗口進行調整。
[0057]對于下行方向,針對每個需要調整的TCP數據流,可分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的TCP下行數據發送窗口進行調整;或者,根據該TCP數據流對應的調整目標,對該TCP數據流對應的上行ACK報文中的接收窗口進行調整。
[0058]類似地,以下行方向為例,該TCP數據流對應的調整目標可為:期望發送速率V ;相應地,調整后的發送窗口可為:max{當前發送窗口,V/ (RTTXS)},調整后的接收窗口可為:max{當前接收窗口,V/ (RTT X S)},max表示取較大值;或者,該TCP數據流對應的調整目標可為:調整系數,相應地,調整后的發送窗口可為:當前發送窗口 X調整系數,調整后的接收窗口可為:當前接收窗口 X調整系數,所述調整系數的取值可為1.2、1.4等。
[0059]也就是說,從趨勢上來說,當發生網絡擁塞時,可針對各需要調整的TCP數據流,調小其對應的窗口,而當網絡擁塞緩解時,調大窗口,何時進行調整、需要調整哪些TCP數據流以及如何進行調整等均可根據實際情況而定。
[0060]基于上述介紹,圖5為本發明網絡擁塞控制裝置實施例的組成結構示意圖。如圖5所示,包括:
[0061]第一處理模塊51,用于當確定發生網絡擁塞時,根據當前的擁塞情況確定需要調整的TCP數據流以及每個需要調整的TCP數據流的調整目標;
[0062]第二處理模塊52,用于根據對應的調整目標分別對各需要調整的TCP數據流進行調整。
[0063]其中,當所述網絡擁塞為上行網絡擁塞時,第二處理模塊52針對每個需要調整的TCP數據流,分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的下行ACK報文中的接收窗口進行調整。
[0064]當所述網絡擁塞為下行網絡擁塞時,第二處理模塊52針對每個需要調整的TCP數據流,分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的TCP下行數據發送窗口進行調整。
[0065]或者,當所述網絡擁塞為下行網絡擁塞時,第二處理模塊52針對每個需要調整的TCP數據流,分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的上行ACK報文中的接收窗口進行調整。
[0066]另外,第一處理模塊51還可進一步用于,當網絡擁塞緩解后,根據緩解程度確定需要調整的TCP數據流以及每個需要調整的TCP數據流的調整目標;
[0067]相應地,第二處理模塊52根據對應的調整目標分別對各需要調整的TCP數據流進行調整。
[0068]圖5所示裝置實施例的具體工作流程請參照前述方法實施例以及較佳實施例中的相應說明,此處不再贅述。
[0069]如前所述,在實際應用中,圖5所示裝置可部署在基站中,也可部署在分組域網關中,還可根據實際需要部署在其它設備上,如果需要,也可單獨部署;而且,第一處理模塊51和第二處理模塊52可部署在同一設備上,也可部署在不同的設備上,視實際需要而定。
[0070]總之,采用本發明所述方案,無需等待端到端的傳輸反饋信息等,一旦發生了網絡擁塞,即可根據當前的擁塞情況確定需要調整的TCP數據流以及每個需要調整的TCP數據流的調整目標,并相應地進行調整,從而提聞了調整時機的準確性和實時性等,進而提聞了調整效率;而且,本發明所述方案中以單個TCP數據流為單位進行調整,從而使得調整更為精細化,更具針對性,進而提高了系統的有效吞吐量;另外,本發明所述方案實現起來簡單方便,便于普及和推廣。
[0071]綜上所述,以上僅為本發明的較佳實施例而已,并非用于限定本發明的保護范圍。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。
【權利要求】
1.一種網絡擁塞控制方法,其特征在于,包括: 當確定發生網絡擁塞時,根據當前的擁塞情況確定需要調整的傳輸控制協議TCP數據流以及每個需要調整的TCP數據流的調整目標; 根據對應的調整目標分別對各需要調整的TCP數據流進行調整。
2.根據權利要求1所述的方法,其特征在于, 當所述網絡擁塞為上行網絡擁塞時,所述根據對應的調整目標分別對各需要調整的TCP數據流進行調整包括: 針對每個需要調整的TCP數據流,分別進行以下處理: 根據該TCP數據流對應的調整目標,對該TCP數據流對應的下行ACK報文中的接收窗口進行調整。
3.根據權利要求2所述的方法,其特征在于, 所述調整目標為:期望發送速率V; 所述調整后的接收窗口 = min{當前接收窗口,V/ (RTT’ XS’)}; 其中,所述RTT’表示該TCP數據流對應的上行網絡往返時延,所述S’表示該TCP數據流對應的上行平均IP包大小; 或者,所述調整目標為:調整系數; 所述調整后的接收窗口 =當前接收窗口 X調整系數。
4.根據權利要求1所述的方法,其特征在于, 當所述網絡擁塞為下行網絡擁塞時,所述根據對應的調整目標分別對各需要調整的TCP數據流進行調整包括: 針對每個需要調整的TCP數據流,分別進行以下處理: 根據該TCP數據流對應的調整目標,對該TCP數據流對應的TCP下行數據發送窗口進行調整; 或者,根據該TCP數據流對應的調整目標,對該TCP數據流對應的上行ACK報文中的接收窗口進行調整。
5.根據權利要求4所述的方法,其特征在于, 所述調整目標為:期望發送速率V ; 所述調整后的發送窗口 =min{當前發送窗口,V/ (RTTXS) }; 所述調整后的接收窗口 =min{當前接收窗口,V/ (RTTXS) }; 其中,所述RTT表示該TCP數據流對應的下行網絡往返時延,所述S表示該TCP數據流對應的下行平均IP包大?。? 或者,所述調整目標為:調整系數; 所述調整后的發送窗口 =當前發送窗口 X調整系數; 所述調整后的接收窗口 =當前接收窗口 X調整系數。
6.根據權利要求1所述的方法,其特征在于,該方法進一步包括: 當網絡擁塞緩解后,根據緩解程度確定需要調整的TCP數據流以及每個需要調整的TCP數據流的調整目標;根據對應的調整目標分別對各需要調整的TCP數據流進行調整。
7.—種網絡擁塞控制裝置,其特征在于,包括: 第一處理模塊,用于當確定發生網絡擁塞時,根據當前的擁塞情況確定需要調整的傳輸控制協議TCP數據流以及每個需要調整的TCP數據流的調整目標; 第二處理模塊,用于根據對應的調整目標分別對各需要調整的TCP數據流進行調整。
8.根據權利要求7所述的裝置,其特征在于, 當所述網絡擁塞為上行網絡擁塞時,所述第二處理模塊針對每個需要調整的TCP數據流,分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的下行ACK報文中的接收窗口進行調整。
9.根據權利要求7所述的裝置,其特征在于, 當所述網絡擁塞為下行網絡擁塞時,所述第二處理模塊針對每個需要調整的TCP數據流,分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的TCP下行數據發送窗口進行調整。
10.根據權利要求7所述的裝置,其特征在于, 當所述網絡擁塞為下行網絡擁塞時,所述第二處理模塊針對每個需要調整的TCP數據流,分別進行以下處理:根據該TCP數據流對應的調整目標,對該TCP數據流對應的上行ACK報文中的接收窗口進行調整。
11.根據權利要求7、8、9或10所述的裝置,其特征在于, 所述第一處理模塊進一步用于,當網絡擁塞緩解后,根據緩解程度確定需要調整的TCP數據流以及每個需要調整的TCP數據流的調整目標; 所述第二處理模塊根據對應的調整目標分別對各需要調整的TCP數據流進行調整。
12.根據權利要求7所述的裝置,其特征在于,所述裝置位于基站或分組域網關中。
【文檔編號】H04L12/801GK104426788SQ201310367105
【公開日】2015年3月18日 申請日期:2013年8月21日 優先權日:2013年8月21日
【發明者】鄧靈莉, 房雅丁 申請人:中國移動通信集團公司