專利名稱:網(wǎng)絡流量控制方法及控制裝置的制作方法
技術領域:
本發(fā)明屬于網(wǎng)絡處理技術領域,具體的,是涉及網(wǎng)絡數(shù)據(jù)流的處理,更具體地,是涉及網(wǎng)絡流量控制方法及控制裝置。
背景技術:
為了保證網(wǎng)絡中各節(jié)點用戶的網(wǎng)絡應用,對于多用戶使用ー個總網(wǎng)絡帶寬的網(wǎng)絡、尤其是大型網(wǎng)絡來說,網(wǎng)絡流量的控制顯得尤為重要。目前,業(yè)內(nèi)采用的流控技術主要有兩種,ー種是基于類的隊列技術CBQ,另ー種是基于應用的技木。對于基于類的隊列技術CBQ,是在隊列中建立數(shù)據(jù)類別,比如FTP、P2P等,隊列中的數(shù)據(jù)根據(jù)這些類別自動分類,然后按照不同數(shù)據(jù)類別的優(yōu)先級別進行處理。采用CBQ技術的優(yōu)點是可以通過優(yōu)先級控制隊列中的數(shù)據(jù)流,確保高優(yōu)先級的數(shù)據(jù)流總是比低優(yōu)先級的數(shù)據(jù)流要先處理,比如,重要的應用如ERP、VPN等優(yōu)先處理,而P2P等滯后處理,從而達到優(yōu)化網(wǎng)絡流量的目的。而CBQ技術的劣勢也非常明顯一方面,由于需要對數(shù)據(jù)進行分類,將產(chǎn)生一定的延時,對于大型網(wǎng)絡如校園網(wǎng)或ISP等,控制成千上百個數(shù)據(jù)類別所帯來的延時是無法接受的;另一方面,CBQ技術需要采用輪詢的方式處理隊列,隊列中的數(shù)據(jù)流越多,處理的效率就越低,因此,CBQ技術通常只適用于小型網(wǎng)絡,應用領域受到限制。基于應用的流控技術也是現(xiàn)今網(wǎng)絡流量管理的ー個主要技術,其核心是通過流量分析識別出“好”的應用于“不好”的應用,然后通過流量管理策略將網(wǎng)絡流量重新進行分配,以提高“好”的應用的流量閾值或優(yōu)先級、降低“不好”的應用的流量閾值或優(yōu)先級。這種流控技術存在的缺陷是首先,應用識別容易出現(xiàn)誤差,進而導致流量控制不準確。例如,P2P軟件KaZZa在數(shù)據(jù)包中包含了ニ進制字符“KaZZa”,大部分流量管理設備通過這個字符識別出KaZZa應用。如果用戶下載ー個關于KaZZa的WORD文檔,該應用是不同于KaZZa的ー個應用,而基于應用的技術很可能也將這個文檔識別為KaZZa流量,進而將WORD文檔下載的應用作為ー個KaZZa應用進行控制。其次,應用識別經(jīng)常會無法執(zhí)行而導致無法實現(xiàn)流量控制。例如,當應用進行了加密或壓縮,該技術無法進行識別,導致所有制定的流量管理策略都失效了。再次,基于應用的流量管理的使用依賴于應用的協(xié)議,如果出現(xiàn)了新的應用、或者原有應用的協(xié)議特征碼發(fā)生了變化,需要重新進行應用識別。由于應用本身會不斷變化,導致網(wǎng)絡不斷發(fā)生變化,這就要求網(wǎng)絡管理員不斷地監(jiān)測網(wǎng)絡中各種應用的流量,不斷的升級各種新的應用的協(xié)議特征碼,并及時更新流控策略,導致該技術進行流量控制時使用及其復雜。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種網(wǎng)絡流量控制方法,該方法將網(wǎng)絡中各網(wǎng)絡節(jié)點的網(wǎng)絡流量使用作為分析和控制依據(jù),實現(xiàn)基于行為特征的網(wǎng)絡流量控制,有效解決了現(xiàn)有技術存在的上述缺陷。為實現(xiàn)上述發(fā)明目的,本發(fā)明采用下述技術方案予以實現(xiàn)、一種網(wǎng)絡流量控制方法,包括對網(wǎng)絡中的網(wǎng)絡節(jié)點進行接收數(shù)據(jù)流量控制的過程,所述接收數(shù)據(jù)流量控制的過程包括下述步驟al、檢測并獲取網(wǎng)絡節(jié)點的接收數(shù)據(jù)流速;
bl、計算網(wǎng)絡節(jié)點的接收數(shù)據(jù)流速在第一設定時間內(nèi)的平均接收流速,并將平均接收流速與設定接收流速閾值進行比較;
Cl、若平均接收流速大于設定接收流速閾值,則判定相應的網(wǎng)絡節(jié)點為流控對象; dl、對流控對象進行帶寬峰值的控制。如上所述的方法,為實現(xiàn)網(wǎng)絡流量的動態(tài)平均分配、提高網(wǎng)絡帶寬的利用率,在所述步驟dl中,網(wǎng)絡帶寬的利用率為C,流控對象的數(shù)量為D,網(wǎng)絡總帶寬為E,則控制每個流控對象的基準帶寬峰值F為F=(E/D)*(1_C%);然后,以基準帶寬峰值為基準對流控對象的實際帶寬峰值進行控制。
如上所述的方法,為保證用戶使用網(wǎng)絡的舒適性,若所述流控對象的基準帶寬峰值F不大于設定峰值閾值,則取流控對象的基準帶寬峰值為設定峰值閾值。如上所述的方法,為實現(xiàn)網(wǎng)絡帶寬的合理分配和有效利用,若所述流控對象在其基準帶寬峰值上持續(xù)運行時間超過第二設定時間,則控制流控對象的實際帶寬峰值小于其基準帶寬峰值。如上所述的方法,所述流控對象以小于其基準帶寬峰值的實際帶寬峰值持續(xù)運行超過第三設定時間后,恢復流控對象的實際帶寬峰值為其基準帶寬峰值,以實現(xiàn)對流控對象的動態(tài)流量控制、保證流控對象的正常網(wǎng)絡訪問。如上所述的方法,為保證網(wǎng)絡使用的暢通,若所述網(wǎng)絡帶寬的利用率C大于設定利用率閾值,則降低網(wǎng)絡中所有流控對象的實際帶寬峰值。如上所述的方法,為限制網(wǎng)絡節(jié)點對外的非正常發(fā)包,所述方法還包括對網(wǎng)絡中的網(wǎng)絡節(jié)點進行發(fā)送數(shù)據(jù)流量控制的過程,所述發(fā)送數(shù)據(jù)流量控制的過程包括下述步驟
a2、檢測并獲取網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速;
b2、計算網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速在第四設定時間內(nèi)的平均發(fā)送流速,并將平均發(fā)送流速與設定發(fā)送流速閾值進行比較;
c2、若平均發(fā)送流速大于設定發(fā)送流速閾值,則控制網(wǎng)絡節(jié)點以設定發(fā)送流速閾值作為發(fā)送數(shù)據(jù)流速發(fā)送數(shù)據(jù)。本發(fā)明的目的之ニ是提供一種網(wǎng)絡流量控制裝置,以實現(xiàn)網(wǎng)絡流量快速、準確、有效地控制。為實現(xiàn)上述技術目的,本發(fā)明采用下述技術方案來實現(xiàn)
一種網(wǎng)絡流量控制裝置,所述裝置包括
網(wǎng)絡節(jié)點接收數(shù)據(jù)流速檢測與獲取單元,用于檢測并獲取網(wǎng)絡節(jié)點的接收數(shù)據(jù)流速;接收數(shù)據(jù)流速計算單元,用于計算網(wǎng)絡節(jié)點接收數(shù)據(jù)流速檢測與獲取單元所獲取的接收數(shù)據(jù)流速在第一設定時間內(nèi)的平均接收流速;
接收數(shù)據(jù)流速比較單元,用于將接收數(shù)據(jù)流速計算單元輸出的平均接收流速與設定接收流速閾值進行比較;
流控對象判定単元,用于根據(jù)接收數(shù)據(jù)流速比較單元的比較結果判定網(wǎng)絡節(jié)點是否為流控對象;以及流控對象帶寬峰值控制単元,用于對流控對象進行帶寬峰值的控制。如上所述的裝置,為實現(xiàn)網(wǎng)絡流量的動態(tài)平均分配、提高網(wǎng)絡帶寬的利用率,所述裝置還包括
網(wǎng)絡總帶寬獲取単元,用于檢測并獲取網(wǎng)絡總帶寬;
網(wǎng)絡帶寬利用率計算單元,用于根據(jù)所述接收數(shù)據(jù)流速計算單元、所述流控對象判定単元及網(wǎng)絡總帶寬獲取単元的輸出結果計算網(wǎng)絡帶寬的利用率;
基準帶寬峰值計算単元,用于根據(jù)網(wǎng)絡總帶寬獲取単元、網(wǎng)絡帶寬利用率計算單元及流控對象判定単元的輸出結果計算每個流控對象的基準帶寬峰值;
所述流控對象帶寬峰值控制單元根據(jù)基準帶寬峰值計算単元的輸出結果對流控對象進行帶寬峰值的控制。
如上所述的裝置,為限制網(wǎng)絡節(jié)點對外的非正常發(fā)包,實現(xiàn)對網(wǎng)絡節(jié)點發(fā)送數(shù)據(jù)的控制,所述裝置還包括
網(wǎng)絡節(jié)點發(fā)送數(shù)據(jù)流速檢測與獲取單元,用于檢測并獲取網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速;發(fā)送數(shù)據(jù)流速計算單元,用于計算網(wǎng)絡節(jié)點發(fā)送數(shù)據(jù)流速檢測與獲取單元所獲取的發(fā)送數(shù)據(jù)流速在第四設定時間內(nèi)的平均發(fā)送流速;
發(fā)送數(shù)據(jù)流速比較單元,用于將發(fā)送數(shù)據(jù)流速計算單元輸出的平均發(fā)送流速與設定發(fā)送流速閾值進行比較;以及
發(fā)送數(shù)據(jù)流速控制單元,用于根據(jù)發(fā)送數(shù)據(jù)流速比較單元的比較結果控制網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速。與現(xiàn)有技術相比,本發(fā)明的優(yōu)點和積極效果是本發(fā)明將網(wǎng)絡中網(wǎng)絡節(jié)點的網(wǎng)絡流量使用情況作為分析和控制的依據(jù),對網(wǎng)絡用戶進行帶寬峰值的控制,實現(xiàn)了基于網(wǎng)絡節(jié)點使用行為特征的網(wǎng)絡流量控制,無需依賴于應用協(xié)議,也不需要對數(shù)據(jù)進行分類識別,控制過程簡單,實時性強,控制效率和準確率高。結合附圖閱讀本發(fā)明的具體實施方式
后,本發(fā)明的其他特點和優(yōu)點將變得更加清
TL·, ο
圖I是本發(fā)明網(wǎng)絡流量控制裝置第一個實施例的結構框 圖2是本發(fā)明網(wǎng)絡流量控制裝置第二個實施例的結構框 圖3是本發(fā)明網(wǎng)絡流量控制裝置第三個實施例的結構框 圖4是本發(fā)明網(wǎng)絡流量控制方法第一個實施例的流程 圖5是本發(fā)明網(wǎng)絡流量控制方法第二個實施例的流程 圖6是本發(fā)明網(wǎng)絡流量控制方法第三個實施例的流程圖。
具體實施例方式下面結合附圖和具體實施方式
對本發(fā)明的技術方案作進ー步詳細的說明。請參考圖1,該圖I所示為本發(fā)明網(wǎng)絡流量控制裝置第一個實施例的結構框圖,圖中箭頭方向表示裝置中各単元的連接關系及工作順序。如圖I所示,該實施例的網(wǎng)絡流量控制裝置包括依次連接的網(wǎng)絡節(jié)點接收數(shù)據(jù)流速檢測與獲取單元101、接收數(shù)據(jù)流速計算單元102、接收數(shù)據(jù)流速比較單元103、流控對象判定単元104及流控對象帶寬峰值控制単元105,各単元的功能具體如下
網(wǎng)絡節(jié)點接收數(shù)據(jù)流速檢測與獲取單元101用來檢測并獲取網(wǎng)絡中某個網(wǎng)絡節(jié)點的接收數(shù)據(jù)流速。接收數(shù)據(jù)流速計算單元102是用來計算網(wǎng)絡節(jié)點接收數(shù)據(jù)流速檢測與獲取單元101所獲取的某個網(wǎng)絡節(jié)點的接收數(shù)據(jù)流速在第一設定時間內(nèi)的平均接收流速。第一設定時間可以根據(jù)實際情況進行選擇,例如,選為I分鐘。接收數(shù)據(jù)流速比較單元103,用來將接收數(shù)據(jù)流速計算單元102所輸出的平均接收流速與設定接收流速閾值進行比較。設定接收流速閾值可以根據(jù)網(wǎng)絡總帶寬、網(wǎng)絡中網(wǎng)絡節(jié)點數(shù)量等實際應用選擇設定。流控對象判定単元104,用于根據(jù)接收數(shù)據(jù)流速比較單元103的比較結果判定網(wǎng)絡節(jié)點是否為流控對象。
·
流控對象帶寬峰值控制單元105,用于對流控對象判定單元104所判定的流控對象進行帶寬峰值的控制。也就是說,該實施例的網(wǎng)絡控制裝置將一定時間內(nèi)平均接收流速超過設定值的網(wǎng)絡節(jié)點作為流控對象,而對于臨時性的、瞬間流量激發(fā)的網(wǎng)絡節(jié)點不作流量控制,這樣更符合網(wǎng)絡節(jié)點的實際應用,不會對暫時訪問流量増加的正常網(wǎng)絡節(jié)點進行流量控制。而且,對于流控對象進行流量控制時是通過控制其帶寬峰值實現(xiàn)對其最高可用流量進行限制,有效解決了惡意流量占用導致其他進行正常網(wǎng)絡訪問的網(wǎng)絡節(jié)點使用上的不便。流控對象帶寬峰值控制単元105對流控對象進行帶寬峰值控制時可以采用各種不同的控制單元執(zhí)行不同的控制過程,具體可以參考圖2的實現(xiàn)結構及下述對圖2的描述。請參考圖2,該圖2示出了本發(fā)明網(wǎng)絡流量控制裝置第二個實施例的結構框圖,圖中箭頭方向表示裝置中各単元的連接關系及工作順序。如圖2所示,該第二個實施例的控制裝置與圖I第一個實施例相比,也包括有網(wǎng)絡節(jié)點接收數(shù)據(jù)流速檢測與獲取單元201、接收數(shù)據(jù)流速計算單元202、接收數(shù)據(jù)流速比較單元203、流控對象判定單元204及流控對象帶寬峰值控制單元208,這些單元的功能與圖I實施例類似,在此不作贅述。與第一個實施例不同的是,在該第二個實施例中,網(wǎng)絡流量控制裝置還包括有網(wǎng)絡總帶寬獲取單元205、網(wǎng)絡帶寬利用率計算單元206及基準帶寬峰值計算單元207,各單元在整個控制裝置中的作用及與其他単元部分的協(xié)作關系如下
網(wǎng)絡總帶寬獲取單元205,用于檢測并獲取某個網(wǎng)絡的總帶寬,也即網(wǎng)絡總入口(或出ロ)的帶寬。網(wǎng)絡帶寬利用率計算單元206,其輸入端分別與接收數(shù)據(jù)流速計算單元202和網(wǎng)絡總帶寬獲取単元205相連接,用來計算網(wǎng)絡當前的帶寬利用率。也即計算接收數(shù)據(jù)流速計算單元202所計算的每個網(wǎng)絡節(jié)點的平均接收流速所對應的帶寬之和占網(wǎng)絡總帶寬獲取單元205所獲取的總帶寬的比率?;鶞蕩挿逯涤嬎銌卧?07,其輸入端分別與流控對象判定單元204、網(wǎng)絡總帶寬獲取單元205及網(wǎng)絡帶寬利用率計算單元206相連接,用來計算每個流控對象的基準帶寬峰值,也即流控對象所允許使用的最高帶寬。具體來說,需要根據(jù)網(wǎng)絡總帶寬獲取單元205、網(wǎng)絡帶寬利用率計算單元206及流控對象判定単元204的輸出結果來計算。例如,網(wǎng)絡帶寬的利用率為C,流控對象的數(shù)量為D,網(wǎng)絡總帶寬為E,每個流控對象的基準帶寬峰值F用下述公式 計算F=(E/D)*(1-C%),從而實現(xiàn)了對流控對象網(wǎng)絡流量的動態(tài)平均分配,有效提高了網(wǎng)絡帶寬的利用率。流控對象帶寬峰值控制單元208與基準帶寬峰值計算單元207相連接,用于根據(jù)基準帶寬峰值計算単元207的輸出結果對流控對象進行帶寬峰值的控制。具體控制過程可參考圖5的流程及下述對圖5流程的描述。對于網(wǎng)絡流量控制裝置,除了可以控制網(wǎng)絡節(jié)點接收數(shù)據(jù)的流量、也即網(wǎng)絡下載的流量之外,還可以控制網(wǎng)絡節(jié)點發(fā)送數(shù)據(jù)的流量、也即上傳數(shù)據(jù)的流量。圖3所示出了本發(fā)明網(wǎng)絡流量控制裝置第三個實施例即是對網(wǎng)絡節(jié)點發(fā)送數(shù)據(jù)流量進行控制的結構框圖。如圖3所示,為了對網(wǎng)絡節(jié)點發(fā)送數(shù)據(jù)流量進行控制,該實施例的控制裝置包括有依次連接的網(wǎng)絡節(jié)點發(fā)送數(shù)據(jù)流速檢測與獲取單元301、發(fā)送數(shù)據(jù)流速計算單元302、發(fā)送數(shù)據(jù)流速比較單元303及發(fā)送數(shù)據(jù)流速控制單元304,各単元的功能具體如下
網(wǎng)絡節(jié)點發(fā)送數(shù)據(jù)流速檢測與獲取單元301主要用來檢測并獲取網(wǎng)絡中某個網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速。發(fā)送數(shù)據(jù)流速計算單元302是用來計算網(wǎng)絡節(jié)點發(fā)送數(shù)據(jù)流速檢測與獲取單元301所獲取的某個網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速在設定時間內(nèi)的平均發(fā)送流速,例如,計算某個網(wǎng)絡節(jié)點每秒鐘內(nèi)發(fā)送數(shù)據(jù)包的速度。發(fā)數(shù)據(jù)流速比較單元303,用來將發(fā)送數(shù)據(jù)流速計算單元302所輸出的平均發(fā)送流速與設定發(fā)送流速閾值進行比較。設定接收流速閾值可以根據(jù)網(wǎng)絡總帶寬、網(wǎng)絡中網(wǎng)絡節(jié)點數(shù)量等實際應用選擇設定。發(fā)送數(shù)據(jù)流速控制單元304,用于根據(jù)發(fā)送數(shù)據(jù)流速比較單元303的比較結果控制網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速。具體來說,如果發(fā)送數(shù)據(jù)流速比較單元303判定某個網(wǎng)絡節(jié)點的平均發(fā)送流速大于設定發(fā)送流速閾值,為了控制發(fā)送速度、實現(xiàn)對惡意發(fā)送流量的控制,則控制網(wǎng)絡節(jié)點的最大發(fā)送速度為設定發(fā)送流速閾值。圖3實施例的網(wǎng)絡流量控制裝置可以與圖I或圖2的控制裝置結合起來,構成能夠對網(wǎng)絡上傳及下載流量均進行控制的網(wǎng)絡流量控制裝置。而且,通過上述描述可知,這樣的網(wǎng)絡流量控制裝置不管是實現(xiàn)上傳流量控制還是下載流量控制,均是通過網(wǎng)絡節(jié)點的實際流速為分析和控制依據(jù),既不需要對數(shù)據(jù)進行分類、構成隊列,也不依賴于應用協(xié)議,控制過程簡単,實時性強,控制效率和準確率高。上述各實施例的控制裝置的工作過程可參考圖4、圖5、圖6所示的流程圖及下述對各流程圖的描述。請參考圖4,該圖4示出了本發(fā)明網(wǎng)絡流量控制方法第一個實施例的流程圖,而且,該流程圖所示為對網(wǎng)絡中的網(wǎng)絡節(jié)點進行接收數(shù)據(jù)流量控制的過程。如圖4所示,該第一個實施例對網(wǎng)絡節(jié)點進行接收數(shù)據(jù)流量控制的流程如下 步驟401 :流程開始。步驟402 :檢測并獲取網(wǎng)絡節(jié)點的接收數(shù)據(jù)流速。一個網(wǎng)絡中會存在多個網(wǎng)絡節(jié)點,ー個網(wǎng)絡節(jié)點一般對應著一臺客戶端,也即ー個上網(wǎng)用戶。本發(fā)明為了對網(wǎng)絡節(jié)點進行流量控制,首先檢測、獲取網(wǎng)絡節(jié)點的接收數(shù)據(jù)流速。步驟403 :計算接收數(shù)據(jù)流速在第一設定時間內(nèi)的平均接收流速。如上對網(wǎng)絡流量控制裝置的描述,第一設定時間可以根據(jù)實際情況進行選擇,例如,選擇為I分鐘。步驟404 :判斷平均接收流速是否大于設定接收流速閾值。若是,轉至步驟407 ;若否,執(zhí)行步驟405。考慮到在一個網(wǎng)絡中,如果網(wǎng)絡節(jié)點非正常使用網(wǎng)絡,例如在網(wǎng)絡上下載或收看娛樂節(jié)目、玩網(wǎng)絡游戲等非工作需求,這樣的網(wǎng)絡節(jié)點由于 會產(chǎn)生持續(xù)性大流量而導致網(wǎng)絡中其他正常訪問網(wǎng)絡的網(wǎng)絡節(jié)點的流量降低,進而影響其網(wǎng)絡訪問,該實施例將要對這種異常的網(wǎng)絡節(jié)點流量進行控制??刂魄靶枰紫扰袛喑瞿男┚W(wǎng)絡節(jié)點為需要控制的對象,也即流控對象。該實施例采用了根據(jù)網(wǎng)絡節(jié)點的行為特征、也即網(wǎng)絡流量使用情況作為分析和判斷的依據(jù)。而且,考慮到產(chǎn)生持續(xù)性流量的網(wǎng)絡節(jié)點是潛在的對帶寬產(chǎn)生擠占的對象,因而將網(wǎng)絡節(jié)點在一定時間內(nèi)的平均接收流速與ー個設定接收流速閾值進行比較,而對臨時性、瞬間流量激増的網(wǎng)絡節(jié)點不作為控制對象,以避免對臨時下載可用文件而導致流量短時間內(nèi)増加的網(wǎng)絡節(jié)點也誤判為非正常使用網(wǎng)絡節(jié)點。對于設定接收流速閾值,可以根據(jù)網(wǎng)絡總帶寬、網(wǎng)絡中網(wǎng)絡節(jié)點數(shù)量等實際應用選擇設定,例如,選擇為150kbps。步驟405 :如果平均接收流速不大于設定接收流速閾值,則判定相應的網(wǎng)絡節(jié)點為非流控對象。步驟406 :對非流控對象不作帶寬峰值的控制。對于非流控對象,這類網(wǎng)絡節(jié)點一般不會對網(wǎng)絡帶寬產(chǎn)生惡意占有,從減少流控網(wǎng)絡節(jié)點數(shù)量,簡化流控過程方面考慮,不對其進行帶寬峰值的控制,可以按需分配相應的流量。步驟407 :如果平均接收流速大于設定接收流速閾值,則判定相應的網(wǎng)絡節(jié)點為流控對象,是很可能產(chǎn)生帶寬惡意占用的網(wǎng)絡節(jié)點,需要進行流量控制。步驟408 :對流控對象進行帶寬峰值的控制。在對流控對象進行控制時,主要是限制其帶寬的占用,也即控制其帶寬峰值,使其可能的帶寬被限制在帶寬峰值之下的一定范圍之內(nèi)。對流控對象帶寬峰值的控制可以采用各種不同的控制方法,舉例來說,可以采用圖5實施例所示的方法。請參考圖5,該圖5所示為本發(fā)明網(wǎng)絡流量控制方法第二個實施例的流程圖。具體地說,該實施例是按照圖4實施例的方法判定出流控對象之后、對流控對象進行網(wǎng)絡流量控制的過程。如圖5所示,該實施例對網(wǎng)絡流量進行控制的流程如下
步驟501 :流程開始。步驟502 :判定網(wǎng)絡節(jié)點為流控對象。步驟503 :獲取網(wǎng)絡總帶寬。網(wǎng)絡總帶寬可以直接從運營商處獲得,然后手動輸入。步驟504 :根據(jù)網(wǎng)絡總帶寬、網(wǎng)絡帶寬利用率及流控對象數(shù)量計算每個網(wǎng)絡節(jié)點的基準帶寬峰值。為了對網(wǎng)絡中的流控對象進行帶寬峰值控制,首先設置ー個基準帶寬峰值,該基準帶寬峰值為流控對象可用的最大帶寬。在該實施例中,基準帶寬峰值采用下述方法來獲得
網(wǎng)絡帶寬利用率為C,流控對象數(shù)量為D,網(wǎng)絡總帶寬為E,則每個流控對象的基準帶寬峰值F為F=(E/D)*(1-C%)。其中,網(wǎng)絡總帶寬通過步驟503獲得,流控對象的數(shù)量為通過圖4實施例所判定出的流控對象的總數(shù),而網(wǎng)絡帶寬利用率是圖4實施例中獲得的每個網(wǎng)絡節(jié)點的平均接收流速所對應的帶寬之和占網(wǎng)絡總帶寬E的比率。利用上述公式所獲得的基準帶寬峰值是與流控對象數(shù)量D及網(wǎng)絡帶寬利用率C相關的ー個動態(tài)變化的值,能夠充分反映網(wǎng)絡實際使用情況,實現(xiàn)了流控對象對網(wǎng)絡流量的動態(tài)平均分配,能提高對網(wǎng)絡帶寬的利用率。在獲得基準帶寬峰值之后,將根據(jù)流控對象的行為及基準帶寬峰值對其實際可用的帶寬峰值進行控制,具體如下各步驟所述。 步驟505 :判斷基準帶寬峰值是否大于設定峰值閾值。若是,執(zhí)行步驟506 ;若否,轉至步驟507。如果ー個網(wǎng)絡節(jié)點可使用的帶寬過小,會影響用戶使用網(wǎng)絡的舒適性。鑒于此,該實施例設置了一個設定峰值閾值,根據(jù)基準帶寬峰值與設定峰值閾值的大小確定基準帶寬峰值。設定峰值閾值可以根據(jù)網(wǎng)絡總帶寬及目前網(wǎng)絡節(jié)點正常使用時的帶寬需求來設定,例如,設定為256Kbps。步驟506 :若所計算的基準帶寬峰值大于設定峰值閾值,則取流控對象的基準帶寬峰值為步驟504中的實際計算值。然后,執(zhí)行步驟508。例如,步驟504計算出的帶寬峰值大于256Kbps,則以實際計算值作為流控對象的
基準帶寬峰值。步驟507 :若所計算的基準帶寬峰值不大于設定峰值閾值,為保證用戶使用網(wǎng)絡的流暢性,取流控對象的基準帶寬峰值為設定峰值閾值。例如,步驟504計算出的帶寬峰值小于256Kbps,則取流控對象的基準帶寬峰值為256Kbps。步驟508 :判斷流控對象在基準帶寬峰值上持續(xù)運行是否超過第二設定時間。若是,執(zhí)行步驟509 ;否則,轉至步驟511。對于持續(xù)產(chǎn)生大流量的網(wǎng)絡節(jié)點如果不加以限制的話,可能會因為其占用帶寬而影響其他網(wǎng)絡節(jié)點的正常網(wǎng)絡訪問,因此,該實施例增設了對流控對象進行帶寬打壓的過程。具體來說,是判斷流控對象是否以其基準帶寬峰值持續(xù)運行超過了第二設定時間,而第ニ設定時間可以根據(jù)實際情況設定,例如,設定為10分鐘。步驟509 :如果流控對象在其基準帶寬峰值上持續(xù)運行超過了第二設定時間,則控制流控對象的實際帶寬峰值小于其基準帶寬峰值。也就是說,對于這類流控對象,降低其可用的最大帶寬,達到限制其網(wǎng)絡流量的目的。例如,可以控制其實際帶寬峰值為其基準帶寬峰值的1/2。步驟510 :判斷流控對象以降低后的帶寬峰值持續(xù)運行是否超過第三設定時間。若是,執(zhí)行步驟511 ;否則,轉至步驟509,繼續(xù)以降低后的帶寬峰值運行。
第三設定時間可以根據(jù)實際情況設定,例如,設定為30分鐘。步驟511 :如果流控對象以降低后的帶寬峰值持續(xù)運行超過了第三設定時間,則控制流控對象的實際帶寬峰值為其基準帶寬峰值,也即恢復其可用的帶寬峰值至基準帶寬峰值。設置上述步驟510及步驟511的目的是恢復流控對象的帶寬峰值,實現(xiàn)對流控對象帶寬的動態(tài)控制,以保證其正常網(wǎng)絡訪問的流量需求。通過上述步驟508至步驟511的動態(tài)流量控制過程,使得如果流控對象一直是惡意占用流量,則對其網(wǎng)絡帶寬進行打壓,而如果其恢復正常網(wǎng)絡訪問,則提高其網(wǎng)絡帶寬。而且,這個動態(tài)控制過程是循環(huán)進行的,該實施例為了便于說明僅表示了ー個流程,實際應用時這個過程將不斷執(zhí)行。此外,該實施例在動態(tài)控制流控對象網(wǎng)絡流量的一個過程中采用的是對其帶寬峰值進行一次打壓的控制方式,但并不局限于此,還可以是在一個過程中打壓多次。例如,采 用二次打壓,即在對流控對象第一次打壓、以基準帶寬峰值1/2的峰值運行超過第三設定時間之后,再對流控對象進行第二次打壓,控制其實際帶寬峰值為基準帶寬峰值的1/4,然后再運行ー個設定時間,在設定時間到達后再恢復至基準帶寬峰值。同樣,這種多次打壓的過程也是ー個循環(huán)執(zhí)行的過程。步驟512 :判斷網(wǎng)絡帶寬利用率是否大于設定利用率閾值。若是,執(zhí)行步驟513 ;若否,轉至步驟516。步驟513 :如果網(wǎng)絡帶寬利用率大于設定利用率閾值,設定延時,降低網(wǎng)絡中所有流控對象的實際帶寬峰值。設置上述步驟512和513的目的是防止網(wǎng)絡擁塞。由于網(wǎng)絡擁塞一般情況都是由持續(xù)性網(wǎng)絡流量占用引起的,所以為防止網(wǎng)絡擁塞而對流控對象進行強制帶寬打壓。如果網(wǎng)絡帶寬利用率超過了設定利用率閾值,例如,超過了 80%,極容易出現(xiàn)網(wǎng)絡擁塞而影響網(wǎng)絡節(jié)點的使用。在這種情況下,將強制降低所有流控對象的實際帶寬峰值,例如,以每個流控對象的當前帶寬峰值為基準,分別降低50%,作為每個流控對象的實際帶寬峰值。設定的延時可以根據(jù)實際情況進行選擇,例如,延時I分鐘。步驟514 :流控對象以降低后的實際帶寬峰值為實際帶寬峰值。步驟515 :判斷延時時間是否到。若到,執(zhí)行步驟516 ;若否,則轉至步驟514,繼續(xù)以降低后的實際帶寬峰值運行。步驟516 :若延時時間到,則恢復網(wǎng)絡中所有流控對象的實際帶寬峰值,以便保證其網(wǎng)絡訪問。步驟517:流程結束。該實施例對流控對象進行防止網(wǎng)絡擁塞而強制降低峰值帶寬的步驟512至步驟516的過程是在對單個流控對象執(zhí)行步驟508至步驟511的單獨控制的過程之后進行的,但并不局限于該控制順序。也可以是先判斷網(wǎng)絡利用率、判斷是否需要對所有流控對象統(tǒng)ー強制打壓控制。而且,這些控制步驟在網(wǎng)絡流量控制過程中是不斷進行的。上述圖4及圖5實施例的方法均是對網(wǎng)絡中的網(wǎng)絡節(jié)點進行接收數(shù)據(jù)流量控制的過程,除此之外,還可以對網(wǎng)絡節(jié)點發(fā)生數(shù)據(jù)流量進行控制,具體可參考圖6所示。如圖6所示,該圖6示出了本發(fā)明網(wǎng)絡流量控制方法第三個實施例的流程圖,該流程時對網(wǎng)絡中的網(wǎng)絡節(jié)點進行發(fā)生數(shù)據(jù)流量進行控制的過程,具體控制流程如下
步驟601 :流程開始。步驟602 :檢測并獲取網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速。ー個網(wǎng)絡中會存在多個網(wǎng)絡節(jié)點,ー個網(wǎng)絡節(jié)點一般對應著一臺客戶端,也即ー個上網(wǎng)用戶。本發(fā)明為了對網(wǎng)絡節(jié)點進行發(fā)送流量控制,也即控制其發(fā)包速度,首先檢測、獲取網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速。步驟603 :計算發(fā)送數(shù)據(jù)流速在第四設定時間內(nèi)的平均發(fā)送流速。第四設定時間可以根據(jù)實際情況進行選擇,例如,選擇為I秒。步驟604 :判斷平均發(fā)送流速是否大于設定發(fā)送流速閾值。若是,轉至步驟606 ;若 否,執(zhí)行步驟605。設定發(fā)送流速閾值可以根據(jù)網(wǎng)絡狀況進行選擇,例如,選擇為lmbps。步驟605 :如果網(wǎng)絡節(jié)點的平均發(fā)送流速不大于設定發(fā)送流速閾值,則控制網(wǎng)絡節(jié)點以實際發(fā)送流速作為發(fā)送數(shù)據(jù)流速來發(fā)送數(shù)據(jù)。然后,執(zhí)行步驟607。步驟606 :如果網(wǎng)絡節(jié)點的平均發(fā)送流速大于設定發(fā)送流速閾值,則控制網(wǎng)絡節(jié)點以設定發(fā)送流速閾值作為發(fā)送數(shù)據(jù)流速來發(fā)送數(shù)據(jù)。也即對超過一定速度的網(wǎng)絡節(jié)點進行發(fā)包速度的控制,實現(xiàn)對惡意流量的控制。上述圖6實施例的流程可以與圖4或圖5的流程結合起來,構成能夠對網(wǎng)絡上傳及下載流量均進行控制的網(wǎng)絡流量控制方法。而且,通過上述描述可知,這樣的網(wǎng)絡流量控制方法不管是實現(xiàn)上傳流量控制還是下載流量控制,均是通過網(wǎng)絡節(jié)點的實際流速為分析和控制依據(jù),既不需要對數(shù)據(jù)進行分類、構成隊列,也不依賴于應用協(xié)議,控制過程簡單,實時性強,控制效率和準確率高。以上實施例僅用以說明本發(fā)明的技術方案,而非對其進行限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,對于本領域的普通技術人員來說,依然可以對前述實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或替換,并不使相應技術方案的本質(zhì)脫離本發(fā)明所要求保護的技術方案的精神和范圍。
權利要求
1.一種網(wǎng)絡流量控制方法,包括對網(wǎng)絡中的網(wǎng)絡節(jié)點進行接收數(shù)據(jù)流量控制的過程,其特征在于,所述接收數(shù)據(jù)流量控制的過程包括下述步驟 al、檢測并獲取網(wǎng)絡節(jié)點的接收數(shù)據(jù)流速; bl、計算網(wǎng)絡節(jié)點的接收數(shù)據(jù)流速在第一設定時間內(nèi)的平均接收流速,并將平均接收流速與設定接收流速閾值進行比較; Cl、若平均接收流速大于設定接收流速閾值,則判定相應的網(wǎng)絡節(jié)點為流控對象; dl、對流控對象進行帶寬峰值的控制。
2.根據(jù)權利要求I所述的方法,其特征在于,在所述步驟dl中,網(wǎng)絡帶寬的利用率為C,流控對象的數(shù)量為D,網(wǎng)絡總帶寬為E,則控制每個流控對象的基準帶寬峰值F為F= (E/D)*(1_C%);然后,以基準帶寬峰值為基準對流控對象的實際帶寬峰值進行控制。
3.根據(jù)權利要求2所述的方法,其特征在于,若所述流控對象的基準帶寬峰值F不大于設定峰值閾值,則取流控對象的基準帶寬峰值為設定峰值閾值。
4.根據(jù)權利要求2所述的方法,其特征在干,若所述流控對象在其基準帶寬峰值上持續(xù)運行時間超過第二設定時間,則控制流控對象的實際帶寬峰值小于其基準帶寬峰值。
5.根據(jù)權利要求4所述的方法,其特征在于,所述流控對象以小于其基準帶寬峰值的實際帶寬峰值持續(xù)運行超過第三設定時間后,恢復流控對象的實際帶寬峰值為其基準帶寬峰值。
6.根據(jù)權利要求2所述的方法,其特征在于,若所述網(wǎng)絡帶寬的利用率C大于設定利用率閾值,則降低網(wǎng)絡中所有流控對象的實際帶寬峰值。
7.根據(jù)權利要求I至6中任一項所述的方法,其特征在于,所述方法還包括對網(wǎng)絡中的網(wǎng)絡節(jié)點進行發(fā)送數(shù)據(jù)流量控制的過程,所述發(fā)送數(shù)據(jù)流量控制的過程包括下述步驟 a2、檢測并獲取網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速; b2、計算網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速在第四設定時間內(nèi)的平均發(fā)送流速,并將平均發(fā)送流速與設定發(fā)送流速閾值進行比較; c2、若平均發(fā)送流速大于設定發(fā)送流速閾值,則控制網(wǎng)絡節(jié)點以設定發(fā)送流速閾值作為發(fā)送數(shù)據(jù)流速發(fā)送數(shù)據(jù)。
8.—種網(wǎng)絡流量控制裝置,其特征在于,所述裝置包括 網(wǎng)絡節(jié)點接收數(shù)據(jù)流速檢測與獲取單元,用于檢測并獲取網(wǎng)絡節(jié)點的接收數(shù)據(jù)流速;接收數(shù)據(jù)流速計算單元,用于計算網(wǎng)絡節(jié)點接收數(shù)據(jù)流速檢測與獲取單元所獲取的接收數(shù)據(jù)流速在第一設定時間內(nèi)的平均接收流速; 接收數(shù)據(jù)流速比較單元,用于將接收數(shù)據(jù)流速計算單元輸出的平均接收流速與設定接收流速閾值進行比較; 流控對象判定単元,用于根據(jù)接收數(shù)據(jù)流速比較單元的比較結果判定網(wǎng)絡節(jié)點是否為流控對象;以及 流控對象帶寬峰值控制単元,用于對流控對象進行帶寬峰值的控制。
9.根據(jù)權利要求8所述的裝置,其特征在于,所述裝置還包括 網(wǎng)絡總帶寬獲取単元,用于檢測并獲取網(wǎng)絡總帶寬; 網(wǎng)絡帶寬利用率計算單元,用于根據(jù)所述接收數(shù)據(jù)流速計算單元、所述流控對象判定単元及網(wǎng)絡總帶寬獲取単元的輸出結果計算網(wǎng)絡帶寬的利用率;基準帶寬峰值計算単元,用于根據(jù)網(wǎng)絡總帶寬獲取単元、網(wǎng)絡帶寬利用率計算單元及流控對象判定単元的輸出結果計算每個流控對象的基準帶寬峰值; 所述流控對象帶寬峰值控制單元根據(jù)基準帶寬峰值計算単元的輸出結果對流控對象進行帶寬峰值的控制。
10.根據(jù)權利要求8或9所述的裝置,其特征在于,所述裝置還包括 網(wǎng)絡節(jié)點發(fā)送數(shù)據(jù)流速檢測與獲取單元,用于檢測并獲取網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速;發(fā)送數(shù)據(jù)流速計算單元,用于計算網(wǎng)絡節(jié)點發(fā)送數(shù)據(jù)流速檢測與獲取單元所獲取的發(fā)送數(shù)據(jù)流速在第四設定時間內(nèi)的平均發(fā)送流速; 發(fā)送數(shù)據(jù)流速比較單元,用于將發(fā)送數(shù)據(jù)流速計算單元輸出的平均發(fā)送流速與設定發(fā)送流速閾值進行比較;以及 發(fā)送數(shù)據(jù)流速控制單元,用于根據(jù)發(fā)送數(shù)據(jù)流速比較單元的比較結果控制網(wǎng)絡節(jié)點的發(fā)送數(shù)據(jù)流速。
全文摘要
本發(fā)明公開了一種網(wǎng)絡流量控制方法及控制裝置。所述控制方法包括對網(wǎng)絡中的網(wǎng)絡節(jié)點進行接收數(shù)據(jù)流量控制的過程,所述接收數(shù)據(jù)流量控制的過程包括下述步驟檢測并獲取網(wǎng)絡節(jié)點的接收數(shù)據(jù)流速;計算網(wǎng)絡節(jié)點的接收數(shù)據(jù)流速在第一設定時間內(nèi)的平均接收流速,并將平均接收流速與設定接收流速閾值進行比較;若平均接收流速大于設定接收流速閾值,則判定相應的網(wǎng)絡節(jié)點為流控對象;對流控對象進行帶寬峰值的控制。本發(fā)明通過將網(wǎng)絡節(jié)點的網(wǎng)絡流量使用情況作為分析和控制的依據(jù),對網(wǎng)絡用戶進行帶寬峰值的控制,無需依賴于應用協(xié)議,也不需要對數(shù)據(jù)進行分類識別,控制過程簡單,實時性強,控制效率和準確率高。
文檔編號H04L12/56GK102724123SQ201210214770
公開日2012年10月10日 申請日期2012年6月27日 優(yōu)先權日2012年6月27日
發(fā)明者鐘鋼 申請人:青島上鋒科技有限公司