本發(fā)明涉及移動通信技術(shù)領(lǐng)域,尤其涉及一種流量整形方法及網(wǎng)絡(luò)設(shè)備。
背景技術(shù):
在移動通信技術(shù)領(lǐng)域,基站設(shè)備部署于運營商核心網(wǎng)絡(luò)之下,用于處理空中接口與網(wǎng)絡(luò)之間報文的交換與轉(zhuǎn)發(fā)?;驹O(shè)備可通過流量整形,控制報文的交換與轉(zhuǎn)發(fā)的速率。
令牌桶算法為現(xiàn)有技術(shù)中一種常用的流量整形方法,其采用定時定量轉(zhuǎn)發(fā)策略來控制基站設(shè)備轉(zhuǎn)發(fā)報文的速率。具體來說,基站設(shè)備以一定速率向令牌桶中增加令牌,基站設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)包時會消耗令牌桶中的令牌,且消耗的令牌的數(shù)量與報文的數(shù)據(jù)量成正比。當(dāng)待轉(zhuǎn)發(fā)報文的數(shù)據(jù)量小于令牌桶中令牌的數(shù)量時,基站設(shè)備可正常向下游設(shè)備發(fā)送待轉(zhuǎn)發(fā)報文,而當(dāng)待轉(zhuǎn)發(fā)報文的數(shù)據(jù)量大于令牌桶中令牌的數(shù)量時,則等待令牌桶中積累了足夠多的令牌后,再將待轉(zhuǎn)發(fā)報文發(fā)送給下游設(shè)備。然而,由于大部分報文的數(shù)據(jù)較大,當(dāng)基站設(shè)備在短時間內(nèi)接收到大量的報文時,會導(dǎo)致基站設(shè)備的緩存被待轉(zhuǎn)發(fā)報文迅速占滿,若待轉(zhuǎn)發(fā)報文的數(shù)據(jù)量遠大于令牌桶中令牌的最大容量,則可能會由于沒有足夠的令牌,而使得基站設(shè)備將部分報文丟棄,流量整形的效果較差,并因此影響數(shù)據(jù)傳輸性能。
綜上,目前亟需要一種流量整形方法,用以有效提高基站流量整形的效果,提升數(shù)據(jù)傳輸性能。
技術(shù)實現(xiàn)要素:
本發(fā)明提供一種流量整形方法及網(wǎng)絡(luò)設(shè)備,用于有效提高基站流量整形的效果,提升數(shù)據(jù)傳輸性能。
本發(fā)明實施例提供的一種流量整形方法,包括:
網(wǎng)絡(luò)設(shè)備獲取當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的待處理報文;
所述網(wǎng)絡(luò)設(shè)備確定所述待處理報文為第一類型TCP應(yīng)答報文后,計算所述網(wǎng)絡(luò)設(shè)備在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率;
所述網(wǎng)絡(luò)設(shè)備確定所述當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率小于等于第一閾值后,發(fā)送所述第一類型TCP應(yīng)答報文。
可選地,所述方法還包括:
所述網(wǎng)絡(luò)設(shè)備若確定所述當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率大于第一閾值,則將所述第一類型TCP應(yīng)答報文設(shè)置為當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的已處理報文。
可選地,所述方法還包括:
所述網(wǎng)絡(luò)設(shè)備若確定所述待處理報文為TCP數(shù)據(jù)報文后,則發(fā)送所述TCP數(shù)據(jù)報文。
可選地,所述網(wǎng)絡(luò)設(shè)備計算所述網(wǎng)絡(luò)設(shè)備在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率,包括:
所述網(wǎng)絡(luò)設(shè)備計算在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)通過一個或多個第一類型TCP連接發(fā)送的第一類型TCP應(yīng)答報文的應(yīng)答號總跨度;
所述網(wǎng)絡(luò)設(shè)備根據(jù)所述應(yīng)答號總跨度和所述當(dāng)前時間對應(yīng)的設(shè)定時間段的長度,確定所述網(wǎng)絡(luò)設(shè)備在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率。
可選地,所述第一類型TCP應(yīng)答報文為上行TCP應(yīng)答報文,所述第一類型TCP連接為下載TCP連接;或者,
所述第一類型報文為下行TCP應(yīng)答報文,所述第一類型TCP連接為上傳TCP連接。本發(fā)明實施例提供的一種網(wǎng)絡(luò)設(shè)備,包括:
獲取模塊,用于獲取當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的待處理報文;
處理模塊,用于確定所述待處理報文為第一類型TCP應(yīng)答報文后,計算所述網(wǎng)絡(luò)設(shè)備在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率;
發(fā)送模塊,用于確定所述當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率小于等于第一閾值后,發(fā)送所述第一類型TCP應(yīng)答報文。
可選地,所述處理模塊還用于:
若確定所述當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率大于第一閾值,則將所述第一類型TCP應(yīng)答報文設(shè)置為當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的已處理報文。
可選地,所述發(fā)送模塊還用于:
若所述處理模塊確定所述待處理報文為TCP數(shù)據(jù)報文后,發(fā)送所述TCP數(shù)據(jù)報文。
可選地,所述處理模塊具體用于:
計算在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)通過一個或多個第一類型TCP連接發(fā)送的第一類型TCP應(yīng)答報文的應(yīng)答號總跨度;
根據(jù)所述應(yīng)答號總跨度和所述當(dāng)前時間對應(yīng)的設(shè)定時間段的長度,確定所述網(wǎng)絡(luò)設(shè)備在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率。
可選地,所述第一類型TCP應(yīng)答報文為上行TCP應(yīng)答報文,所述第一類型TCP連接為下載TCP連接;或者,
所述第一類型報文為下行TCP應(yīng)答報文,所述第一類型TCP連接為上傳TCP連接。
本發(fā)明實施例中,網(wǎng)絡(luò)設(shè)備通過獲取當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的待處理報文,確定待處理報文為第一類型TCP應(yīng)答報文后,計算當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率,并在確定報文轉(zhuǎn)發(fā)速率小于等于第一閾值后,發(fā)送第一類型TCP應(yīng)答報文。由于網(wǎng)絡(luò)設(shè)備在獲取到待處理報文后,確定計算得到的當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率小于等于第一閾值后,才發(fā)送第一類型TCP應(yīng)答報文,從而調(diào)整下游設(shè)備響應(yīng)接收到的應(yīng)答報文而發(fā)送數(shù)據(jù)報文的速率,避免由于網(wǎng)絡(luò)上突發(fā)流量過多而發(fā)生的網(wǎng)絡(luò)擁堵的情況,因而,有效提高了網(wǎng)絡(luò)設(shè)備的流量整形的效果,提升了數(shù)據(jù)傳輸性能。
附圖說明
為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡要介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域的普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例適用的系統(tǒng)架構(gòu)圖;
圖2為本發(fā)明實施例中的一種流量整形方法所對應(yīng)的流程示意圖;
圖3為本發(fā)明實施例中的計算報文轉(zhuǎn)發(fā)速率的方法所對應(yīng)的流程示意圖;
圖4為本發(fā)明實施例中的一種網(wǎng)絡(luò)設(shè)備的結(jié)構(gòu)示意圖。
具體實施方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明作進一步地詳細(xì)描述,顯然,所描述的實施例,僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范圍。
下面結(jié)合說明書附圖對本發(fā)明實施例做進一步詳細(xì)描述。
圖1為本發(fā)明實施例適用的一種系統(tǒng)架構(gòu)示意圖,如圖1所示,該系統(tǒng)架構(gòu)中包括服務(wù)器101,網(wǎng)絡(luò)設(shè)備102,一個或多個終端(如圖1中的第一終端1031、第二終端1032、第三終端1033),其中,服務(wù)器101通過運營商的核心網(wǎng)與網(wǎng)絡(luò)設(shè)備102連接,網(wǎng)絡(luò)設(shè)備102通過無線網(wǎng)絡(luò)與其覆蓋范圍內(nèi)的一個或多個終端連接。
本發(fā)明實施例中,服務(wù)器101與終端(例如:第一終端1031、第二終端1032、第三終端1033)可通過網(wǎng)絡(luò)設(shè)備102的轉(zhuǎn)發(fā)功能實現(xiàn)通信。其中,服務(wù)器101向終端發(fā)送報文的過程為下行通信過程,具體為,服務(wù)器將下行報文通過核心網(wǎng)發(fā)送給網(wǎng)絡(luò)設(shè)備,網(wǎng)絡(luò)設(shè)備接收到該報文后,進一步將下行報文轉(zhuǎn)發(fā)給終端,在此過程中,服務(wù)器為上游設(shè)備,終端為下游設(shè)備;終端向服務(wù)器101發(fā)送報文的過程為上行通信過程,具體為,終端通過無線網(wǎng)絡(luò)向為其提供無線信號服務(wù)的網(wǎng)絡(luò)設(shè)備發(fā)送上行報文,網(wǎng)絡(luò)設(shè)備接收到終端發(fā)送的上行報文后,將此上行報文轉(zhuǎn)發(fā)給服務(wù)器101,在此過程中,終端為上游設(shè)備,服務(wù)器為下游設(shè)備。
下面具體說明在上行通信過程或下行通信過程中,網(wǎng)絡(luò)設(shè)備的轉(zhuǎn)發(fā)過程。
本發(fā)明實施例中,網(wǎng)絡(luò)設(shè)備中可設(shè)置有用于存儲報文的緩存單元,緩存單元中可存儲多種類型的報文,例如,TCP數(shù)據(jù)報文和TCP應(yīng)答報文。其中,TCP數(shù)據(jù)報文包括上游設(shè)備向下游設(shè)備發(fā)送的具體數(shù)據(jù),TCP應(yīng)答報文為下游設(shè)備接收到上游設(shè)備發(fā)送的TCP數(shù)據(jù)報文后向上游設(shè)備返回的,用于表示已收到該TCP數(shù)據(jù)報文的確認(rèn)消息,每個TCP應(yīng)答報文可對應(yīng)一個應(yīng)答號。TCP應(yīng)答報文的應(yīng)答號為對應(yīng)的TCP數(shù)據(jù)報文的最后一個字節(jié)對應(yīng)的序列號加1的數(shù)值,用于表示該應(yīng)答號以前的數(shù)據(jù)已被接收。
由于不同類型的報文中包含的數(shù)據(jù)量不同,因而,網(wǎng)絡(luò)設(shè)備的緩存單元中可存儲的報文的數(shù)量由網(wǎng)絡(luò)設(shè)備的緩存單元的容量和每個報文的數(shù)據(jù)量大小共同決定。
網(wǎng)絡(luò)設(shè)備接收上游設(shè)備發(fā)送的報文后,判斷網(wǎng)絡(luò)設(shè)備中緩存單元的狀態(tài),若確定緩存未滿,則緩存接收到的報文,以便于后續(xù)轉(zhuǎn)發(fā)給對應(yīng)的下游設(shè)備;若確定緩存已滿,則可直接丟棄接收到的報文。具體來說,網(wǎng)絡(luò)設(shè)備可監(jiān)控經(jīng)由自身透傳的終端與服務(wù)器建立的一個或多個TCP連接(又可稱為TCP線程),包括其向下游設(shè)備轉(zhuǎn)發(fā)接收到的報文的整個過程。
本發(fā)明實施例中,網(wǎng)絡(luò)設(shè)備中的TCP連接包括上傳TCP連接和下載TCP連接,其中,上傳TCP連接用于發(fā)送上行TCP數(shù)據(jù)報文和下行TCP應(yīng)答報文,下載TCP連接用于發(fā)送下行TCP數(shù)據(jù)報文和上行TCP應(yīng)答報文。
本發(fā)明實施例中,網(wǎng)絡(luò)設(shè)備可以是基站,基站是指一種部署在無線接入網(wǎng)用以提供無線通信功能的裝置。例如在2G網(wǎng)絡(luò)中提供基站功能的設(shè)備包括基地?zé)o線收發(fā)站(base transceiver station,BTS)和基站控制器(base station controller,BSC),3G網(wǎng)絡(luò)中提供基站功能的設(shè)備包括節(jié)點B(NodeB)和無線網(wǎng)絡(luò)控制器(radio network controller,RNC),在4G網(wǎng)絡(luò)中提供基站功能的設(shè)備包括演進的節(jié)點B(evolved NodeB,eNB),在5G網(wǎng)絡(luò)中提供基站功能的設(shè)備包括新無線節(jié)點B(New Radio NodeB,gNB),集中單元(Centralized Unit,CU),分布式單元(Distributed Unit)和新無線控制器。
本發(fā)明實施例中,終端可以是各種類型的移動終端,例如,移動終端可以是移動電話、平板電腦、移動互聯(lián)網(wǎng)設(shè)備(mobile Internet device,縮寫:MID)、可穿戴設(shè)備等,又如,移動終端也可以是便攜式、袖珍式、手持式、計算機內(nèi)置的或者車載的移動設(shè)備。
基于圖1所示的系統(tǒng)架構(gòu),圖2為本發(fā)明實施例提供的一種流量整形方法所對應(yīng)的流程示意圖,如圖2所示,包括以下步驟201至步驟204:
步驟201:網(wǎng)絡(luò)設(shè)備獲取當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的待處理報文;
步驟202:所述網(wǎng)絡(luò)設(shè)備確定所述待處理報文為第一類型TCP應(yīng)答報文后,計算所述網(wǎng)絡(luò)設(shè)備在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率;
步驟203:所述網(wǎng)絡(luò)設(shè)備確定所述當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率小于等于第一閾值后,發(fā)送所述第一類型TCP應(yīng)答報文;
由于網(wǎng)絡(luò)設(shè)備在獲取到待處理報文后,確定計算得到的當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率小于等于第一閾值后,才發(fā)送第一類型TCP應(yīng)答報文,從而間接調(diào)整了下游設(shè)備響應(yīng)接收到的應(yīng)答報文而發(fā)送數(shù)據(jù)報文的節(jié)奏,避免由于網(wǎng)絡(luò)上突發(fā)流量過多而發(fā)生的網(wǎng)絡(luò)擁堵的情況,因而,有效提高了網(wǎng)絡(luò)設(shè)備的流量整形的效果,提升了移動數(shù)據(jù)接入網(wǎng)的數(shù)據(jù)傳輸性能。
本發(fā)明實施例中,可設(shè)置計時器,用于按照設(shè)定周期觸發(fā)網(wǎng)絡(luò)設(shè)備執(zhí)行上述步驟201至步驟203,實現(xiàn)對緩存單元中存儲的各個報文的處理。其中,設(shè)定周期的時間長度可由本領(lǐng)域技術(shù)人員根據(jù)實際情況具體設(shè)置,例如設(shè)置為1毫秒。
需要說明的是,上述步驟201至步驟203為網(wǎng)絡(luò)設(shè)備對緩存單元中一個待處理報文的處理過程,本發(fā)明實施例中,由于緩存單元中可能會存儲有一個或一個以上的待處理報文,因此,在一個設(shè)定周期內(nèi),網(wǎng)絡(luò)設(shè)備可根據(jù)緩存單元中存儲的該設(shè)定周期內(nèi)的待處理報文的接收時間的先后順序,循環(huán)執(zhí)行上述步驟201至步驟203,從而對多個待處理報文進行處理。其中,一個設(shè)定周期內(nèi)的待處理報文是指網(wǎng)絡(luò)設(shè)備在該設(shè)定周期起始時間之前接收到的尚未處理的報文。
具體來說,步驟201和步驟202中,當(dāng)前時間對應(yīng)的設(shè)定時間段即為當(dāng)前時間對應(yīng)的設(shè)定周期,網(wǎng)絡(luò)設(shè)備獲取當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的待處理報文后,可通過多種方式確定待處理報文的類型??紤]到TCP應(yīng)答報文和TCP數(shù)據(jù)報文的數(shù)據(jù)量大小存在明顯差異,即TCP應(yīng)答報文的數(shù)據(jù)量較小,而TCP數(shù)據(jù)報文的數(shù)據(jù)量較大,因此,網(wǎng)絡(luò)設(shè)備可根據(jù)待處理報文的數(shù)據(jù)量大小,判斷待處理報文是TCP應(yīng)答報文或TCP數(shù)據(jù)報文。
具體來說,網(wǎng)絡(luò)設(shè)備若確定待處理報文的數(shù)據(jù)量較大,如100字節(jié),則可確定待處理報文為TCP數(shù)據(jù)報文,此時,網(wǎng)絡(luò)設(shè)備可直接根據(jù)TCP數(shù)據(jù)報文的地址信息,將TCP數(shù)據(jù)報文發(fā)送給下游設(shè)備。即,若TCP數(shù)據(jù)報文為上行TCP數(shù)據(jù)報文,則將該TCP數(shù)據(jù)報文發(fā)送給服務(wù)器;若TCP數(shù)據(jù)報文為下行數(shù)據(jù)報文,則將該TCP數(shù)據(jù)報文發(fā)送給終端。
網(wǎng)絡(luò)設(shè)備若確定待處理報文的數(shù)據(jù)量較小,如1字節(jié),則可確定待處理報文為TCP應(yīng)答報文,則網(wǎng)絡(luò)設(shè)備可計算在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率;進一步地,網(wǎng)絡(luò)設(shè)備可根據(jù)TCP應(yīng)答報文的地址信息,判斷該TCP應(yīng)答報文為上行TCP應(yīng)答報文或下行TCP應(yīng)答報文,若網(wǎng)絡(luò)設(shè)備確定TCP應(yīng)答報文為上行TCP應(yīng)答報文,則網(wǎng)絡(luò)設(shè)備計算的報文轉(zhuǎn)發(fā)速率為上行報文轉(zhuǎn)發(fā)速率,若網(wǎng)絡(luò)設(shè)備確定TCP應(yīng)答報文為下行TCP應(yīng)答報文,則網(wǎng)絡(luò)設(shè)備計算的報文轉(zhuǎn)發(fā)速率為下行報文轉(zhuǎn)發(fā)速率。
本發(fā)明實施例中,報文轉(zhuǎn)發(fā)速率用于衡量網(wǎng)絡(luò)設(shè)備的報文轉(zhuǎn)發(fā)能力,以及預(yù)測網(wǎng)絡(luò)設(shè)備在當(dāng)前時間對應(yīng)的設(shè)定周期內(nèi)已轉(zhuǎn)發(fā)的TCP應(yīng)答報文成功到達下游設(shè)備后,下游設(shè)備在下一設(shè)定周期內(nèi)向網(wǎng)絡(luò)設(shè)備發(fā)送的報文的數(shù)量或速率。
進一步地,在步驟203中,網(wǎng)絡(luò)設(shè)備若確定當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率小于等于第一閾值,則將TCP應(yīng)答報文發(fā)送給對應(yīng)的下游設(shè)備,具體為:若TCP應(yīng)答報文為終端發(fā)送給服務(wù)器的上行TCP應(yīng)答報文,則網(wǎng)絡(luò)設(shè)備將上行TCP應(yīng)答報文發(fā)送給服務(wù)器;若TCP應(yīng)答報文為服務(wù)器發(fā)送給終端的下行TCP應(yīng)答報文,則網(wǎng)絡(luò)設(shè)備將下行TCP應(yīng)答報文發(fā)送給終端。
本發(fā)明實施例中,第一閾值可由本領(lǐng)域技術(shù)人員根據(jù)網(wǎng)絡(luò)設(shè)備的傳輸帶寬來設(shè)置,例如,第一閾值可等于網(wǎng)絡(luò)設(shè)備的傳輸帶寬,若為上行通信過程,則第一閾值為網(wǎng)絡(luò)設(shè)備的下行傳輸帶寬,若為下行通信過程,則第一閾值為網(wǎng)絡(luò)設(shè)備的上行傳輸帶寬。網(wǎng)絡(luò)設(shè)備的上行傳輸帶寬與下行傳輸帶寬可以相等,也可以不相等,此處不做具體限制。
進一步地,網(wǎng)絡(luò)設(shè)備將TCP應(yīng)答報文發(fā)送給對應(yīng)的下游設(shè)備后,可以以TCP連接為記錄單位,以當(dāng)前時間對應(yīng)的設(shè)定時間段為時間單位,將發(fā)送TCP應(yīng)答報文的應(yīng)答號記錄在已發(fā)應(yīng)答號隊列中。
下面對本發(fā)明實施例中報文轉(zhuǎn)發(fā)速率的具體計算過程進行說明。
圖3為網(wǎng)絡(luò)設(shè)備計算應(yīng)答報文轉(zhuǎn)發(fā)速率的流程示意圖,如圖3所示,包括如下步驟301至步驟303:
步驟301:網(wǎng)絡(luò)設(shè)備計算在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)不同方向(上行和下行)上,通過每個TCP連接已發(fā)送的TCP應(yīng)答報文的應(yīng)答號跨度。
具體來說,針對于每個下載TCP連接,網(wǎng)絡(luò)設(shè)備從應(yīng)答號隊列中獲取到在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)通過每個下載TCP連接已發(fā)送的上行TCP應(yīng)答報文的應(yīng)答號,例如,下載TCP連接A已發(fā)送的上行TCP應(yīng)答報文的應(yīng)答號分別為100,200,300,400,400,500,600,則該TCP連接A的上行應(yīng)答號跨度為500,這意味著TCP連接A在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的轉(zhuǎn)發(fā)可拉動該TCP連接未來數(shù)據(jù)流的速率為500字節(jié)/周期。
以此反推,針對于每個上傳TCP連接,網(wǎng)絡(luò)設(shè)備從應(yīng)答號隊列中獲取到在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)通過每個上傳TCP連接已發(fā)送的下行TCP應(yīng)答報文的應(yīng)答號,例如,上傳TCP連接B已發(fā)送的下行TCP應(yīng)答報文的應(yīng)答號分別為100,200,300,400,400,500,600,則該TCP連接B的下行應(yīng)答號跨度為500,這意味著TCP連接B在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的轉(zhuǎn)發(fā)可拉動該TCP連接未來數(shù)據(jù)流的速率為500字節(jié)/周期。
步驟302:網(wǎng)絡(luò)設(shè)備計算在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)不同方向(上行和下行)上,通過一個或多個TCP連接發(fā)送的TCP應(yīng)答報文的應(yīng)答號總跨度。
例如,若網(wǎng)絡(luò)設(shè)備中包括2個下載TCP連接,TCP連接A的上行應(yīng)答號跨度為500,TCP連接B的上行應(yīng)答號跨度為700,則網(wǎng)絡(luò)設(shè)備確定的上行應(yīng)答號總跨度為1200。若網(wǎng)絡(luò)設(shè)備中包括2個上傳TCP連接,TCP連接C的下行應(yīng)答號跨度為500,TCP連接D的下行應(yīng)答號跨度為700,則網(wǎng)絡(luò)設(shè)備確定的下行應(yīng)答號總跨度為1200。
步驟303:網(wǎng)絡(luò)設(shè)備將應(yīng)答號總跨度除以設(shè)定時間段的長度(即計時器的設(shè)定周期),得到所述網(wǎng)絡(luò)設(shè)備在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)不同方向上的報文轉(zhuǎn)發(fā)速率。
本發(fā)明實施例中,網(wǎng)絡(luò)設(shè)備可直接將緩存單元中TCP數(shù)據(jù)報文直接轉(zhuǎn)發(fā)給下游設(shè)備,而對緩存單元中的TCP應(yīng)答報文的轉(zhuǎn)發(fā)根據(jù)當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率進行控制,由于TCP應(yīng)答報文的數(shù)據(jù)量通常遠小于TCP數(shù)據(jù)報文,因而,可大幅減小網(wǎng)絡(luò)設(shè)備對報文的緩存成本,以及網(wǎng)絡(luò)設(shè)備在流量整形的過程中的控制粒度,提高流量整形的效果。
本發(fā)明實施例中,由于網(wǎng)絡(luò)設(shè)備確定當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率小于等于網(wǎng)絡(luò)設(shè)備相應(yīng)地的傳輸帶寬后,才將TCP應(yīng)答報文轉(zhuǎn)發(fā)給下游設(shè)備,從而可以保證下游設(shè)備在接收到網(wǎng)絡(luò)設(shè)備在當(dāng)前周期內(nèi)轉(zhuǎn)發(fā)的TCP應(yīng)答報文后,因響應(yīng)接收到的TCP應(yīng)答報文而向網(wǎng)絡(luò)設(shè)備發(fā)送的TCP數(shù)據(jù)報文的速率仍小于網(wǎng)絡(luò)設(shè)備相應(yīng)的傳輸帶寬,進而規(guī)范了下游設(shè)備響應(yīng)接收到的TCP應(yīng)答報文而發(fā)送TCP數(shù)據(jù)報文的速率,使其符合網(wǎng)絡(luò)設(shè)備在相應(yīng)方向上的傳輸帶寬,提高了網(wǎng)絡(luò)設(shè)備的流量整形效果和抗突發(fā)能力。
網(wǎng)絡(luò)設(shè)備若確定當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率大于第一閾值,則說明當(dāng)前時間對應(yīng)的報文轉(zhuǎn)發(fā)速率已大于網(wǎng)絡(luò)設(shè)備相應(yīng)方向上的傳輸帶寬,若將TCP應(yīng)答報文發(fā)送給下游設(shè)備,則可能使得下游設(shè)備接收到該TCP應(yīng)答報文后,因響應(yīng)該報文而向上游設(shè)備發(fā)送的數(shù)據(jù)存在著超載而發(fā)生網(wǎng)絡(luò)擁堵的可能。因此,網(wǎng)絡(luò)設(shè)備可將該TCP報文繼續(xù)存儲在網(wǎng)絡(luò)設(shè)備的緩存中,并在下一設(shè)定周期處理該TCP應(yīng)答報文,從而避免流量擁堵,提高流量整形的效果。進一步地,網(wǎng)絡(luò)設(shè)備還可將該TCP應(yīng)答報文設(shè)置為當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的已處理報文,以使網(wǎng)絡(luò)設(shè)備在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)不會重復(fù)處理該第一類型TCP應(yīng)答報文。
針對上述方法流程,本發(fā)明實施例還提供一種網(wǎng)絡(luò)設(shè)備,該網(wǎng)絡(luò)設(shè)備的具體內(nèi)容可以參照上述方法實施。如圖4所示,所述網(wǎng)絡(luò)設(shè)備400包括:
獲取模塊401,用于獲取當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的待處理報文;
處理模塊402,用于確定所述待處理報文為第一類型TCP應(yīng)答報文后,計算所述網(wǎng)絡(luò)設(shè)備在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率;
發(fā)送模塊403,用于確定所述當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率小于等于第一閾值后,發(fā)送所述第一類型TCP應(yīng)答報文。
可選地,所述處理模塊402還用于:
若確定所述當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率大于第一閾值,則將所述第一類型TCP應(yīng)答報文設(shè)置為當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的已處理報文。
可選地,所述發(fā)送模塊403還用于:
若所述處理模塊確定所述待處理報文為TCP數(shù)據(jù)報文后,發(fā)送所述TCP數(shù)據(jù)報文。
可選地,所述處理模塊402具體用于:
計算在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)通過一個或多個第一類型TCP連接發(fā)送的第一類型TCP應(yīng)答報文的應(yīng)答號總跨度;
根據(jù)所述應(yīng)答號總跨度和所述當(dāng)前時間對應(yīng)的設(shè)定時間段的長度,確定所述網(wǎng)絡(luò)設(shè)備在當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率。
可選地,所述第一類型TCP應(yīng)答報文為上行TCP應(yīng)答報文,所述第一類型TCP連接為下載TCP連接;或者,
所述第一類型報文為下行TCP應(yīng)答報文,所述第一類型TCP連接為上傳TCP連接。
由上述內(nèi)容可以看出:
本發(fā)明實施例中,網(wǎng)絡(luò)設(shè)備通過獲取當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的待處理報文,確定待處理報文為第一類型TCP應(yīng)答報文后,計算當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率,并在確定報文轉(zhuǎn)發(fā)速率小于等于第一閾值后,發(fā)送第一類型TCP應(yīng)答報文。由于網(wǎng)絡(luò)設(shè)備在獲取到待處理報文后,確定計算得到的當(dāng)前時間對應(yīng)的設(shè)定時間段內(nèi)的報文轉(zhuǎn)發(fā)速率小于等于第一閾值后,才發(fā)送第一類型TCP應(yīng)答報文,從而間接調(diào)整了下游設(shè)備響應(yīng)接收到的應(yīng)答報文而發(fā)送數(shù)據(jù)報文的節(jié)奏,避免由于網(wǎng)絡(luò)上突發(fā)流量過多而發(fā)生的網(wǎng)絡(luò)擁堵的情況,因而,有效提高了網(wǎng)絡(luò)設(shè)備的流量整形的效果,提升了移動數(shù)據(jù)接入網(wǎng)的數(shù)據(jù)傳輸性能。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或兩個以上其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學(xué)存儲器等)上實施的計算機程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或兩個以上流程和/或方框圖一個方框或兩個以上方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導(dǎo)計算機或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或兩個以上流程和/或方框圖一個方框或兩個以上方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或兩個以上流程和/或方框圖一個方框或兩個以上方框中指定的功能的步驟。
盡管已描述了本發(fā)明的優(yōu)選實施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。
顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。