欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

網絡控制策略的生成方法、裝置及網絡控制器與流程

文檔序號:12182322閱讀:295來源:國知局
網絡控制策略的生成方法、裝置及網絡控制器與流程

本發(fā)明實施例涉及網絡數據路由領域,并且更具體地,涉及網絡控制策略的生成方法、裝置及網絡控制器,以及其應用的網絡數據路由方法及裝置。



背景技術:

傳統(tǒng)網絡控制策略生成過程一般是將問題轉化為一系列的優(yōu)化問題。優(yōu)化問題的輸入為網絡的拓撲結構,網絡中鏈路的帶寬,網絡的流量矩陣等;而優(yōu)化問題的解則一般為優(yōu)化得到的網絡端到端的路徑,或者是發(fā)送端的發(fā)送速率等。傳統(tǒng)網絡控制策略生成方法具有如下的缺陷:1、優(yōu)化問題一般通過線性規(guī)劃或者整數規(guī)劃得到。受限于線性規(guī)劃或者整數規(guī)劃的復雜度,該方法可擴展性比較弱,尤其是隨著網元數量,業(yè)務類型和流量的不斷增加,優(yōu)化求解將變得過于復雜而無法求解或求解代價(如計算時間)過大。同時這種通過離線優(yōu)化的方案難以實現動態(tài)即時的策略調整。2、當網絡狀態(tài)信息,比如拓撲發(fā)生變化(節(jié)點增加或減少),需要重新進行優(yōu)化問題求解。重新求解優(yōu)化問題,一方面具有明顯滯后性,另一方面需要大量的人力配置以使優(yōu)化模型適應新的場景。這些缺陷使得由傳統(tǒng)網絡控制策略生成方法生成的網絡控制策略導致網絡控制效率低下。



技術實現要素:

本發(fā)明實施例提供一種網絡控制策略的生成方法、裝置及網絡控制器,具有自我學習功能,能夠自適應的動態(tài)調整控制策略。

第一方面,本發(fā)明實施例提供,一種網絡控制策略的生成方法,應用于SDN網絡,所述方法包括:

獲取網絡的網絡狀態(tài)數據;

根據所述網絡狀態(tài)數據估計網絡狀態(tài)信息,并根據所述網絡狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息,所述網絡狀態(tài)信息用于描述所述網絡的網絡鏈路情況、所述網絡中網元隊列情況、所述網絡的網絡數據流分布情況;

接收當前進入所述網絡的數據流,對所述數據流進行預處理得到數據流預處理結果;

應用當前網絡控制策略根據所述網絡狀態(tài)信息、所述網絡下一時刻狀態(tài)信息以及所述數據流預處理結果生成控制動作;

根據所述控制動作控制所述網絡,并得到經所述控制動作控制的所述網絡的反饋信 息;

根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。

結合第一方面,在第一方面的第一種可能的實現方式中,所述網絡狀態(tài)數據包括網絡當前狀態(tài)數據,所述網絡狀態(tài)信息包括網絡當前狀態(tài)信息,在所述根據所述網絡狀態(tài)數據估計所述網絡狀態(tài)信息之前,所述方法還包括:

發(fā)送狀態(tài)采集命令;

接收根據所述狀態(tài)采集命令采集得到的網絡當前狀態(tài)數據;

對應地,所述根據所述網絡狀態(tài)數據估計所述網絡狀態(tài)信息具體包括:

根據所述網絡當前狀態(tài)數據估計所述網絡當前狀態(tài)信息,所述網絡當前狀態(tài)信息包括網絡當前鏈路情況、網絡中當前網元隊列情況、網絡當前數據流分布情況。

結合第一方面的第一種可能的實現方式,在第一方面的第二種可能的實現方式中,所述網絡狀態(tài)信息還包括網絡歷史狀態(tài)信息,所述根據所述網絡狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息之前,所述方法還包括:

從數據庫獲取網絡歷史狀態(tài)信息;

對應地,所述根據所述網絡狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息包括:根據所述網絡當前狀態(tài)信息和所述網絡歷史狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息。

結合第一方面、第一方面的第一種可能的實現方式或第一方面的第二種可能的實現方式中任意一種可能的實現方式,在第一方面的第三種可能的實現方式中,

所述根據所述網絡狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息為:

其中表示所述網絡下一時刻狀態(tài)信息,其中St-τ表示所述網絡狀態(tài)信息,且0≤τ≤L;其中L為所述網絡狀態(tài)信息的時間窗口長度,其中f為線性函數或非線性函數。

結合第一方面、第一方面的第一種可能的實現方式至第一方面的第三種可能的實現方式中任意一種可能的實現方式,在第一方面的第四種可能的實現方式中,所述對所述數據流進行預處理得到數據流預處理結果,包括:

提取所述數據流的特征,所述特征包括數據包報頭五元組、數據包長度序列或數據包到達時間間隔序列;

通過所述特征對所述數據流進行時空數據挖掘處理和/或因果關系分析處理,得到處理結果;

根據所述處理結果對所述數據流打標簽得到所述數據流的標簽,所述數據流的標簽為所述數據流預處理結果。

結合第一方面的第四種可能的實現方式,在第二方面的第五種可能的實現方式中,所述應用當前網絡控制策略根據所述網絡狀態(tài)信息、所述網絡下一時刻狀態(tài)信息以及所 述數據流預處理結果生成控制動作為:

其中表示所述網絡下一時刻狀態(tài)信息,其中St表示所述網絡狀態(tài)信息,其中l(wèi)i表示所述數據流的標簽,其中i表示第i個數據流,其中πt表示所述當前網絡控制策略,其中表示以St,li作為條件變量的當前網絡控制策略下a的概率分布,其中a為控制變量,在所述控制變量a的概率分布中隨機采樣得到所述控制動作ai

第二方面,本發(fā)明實施例提供一種網絡控制策略的生成方法,應用于SDN網絡,所述方法包括:

接收網絡的網絡狀態(tài)信息,網絡下一時刻狀態(tài)信息,數據流預處理結果;其中,所述網絡狀態(tài)信息用于描述所述網絡的網絡鏈路情況、所述網絡中網元隊列情況、所述網絡的網絡數據流分布情況,所述網絡下一時刻狀態(tài)信息是根據所述網絡狀態(tài)信息進行預測得到的,所述數據流預處理結果是對當前進入網絡的數據流進行預處理得到的;

應用當前網絡控制策略根據所述網絡狀態(tài)信息、所述網絡下一時刻狀態(tài)信息以及所述數據流預處理結果生成控制動作;所述控制動作用于控制所述網絡并得到經所述控制動作控制的所述網絡的反饋信息;

接收所述網絡的反饋信息,并根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。

結合第二方面,在第二方面的第一種可能的實現方式中,所述網絡下一時刻狀態(tài)信息是根據所述網絡狀態(tài)信息進行預測得到的,其中所述預測的方法為:

其中表示所述網絡下一時刻狀態(tài)信息,其中St-τ表示所述網絡狀態(tài)信息,且0≤τ≤L;其中L為所述網絡狀態(tài)信息的時間窗口長度,其中f為線性函數或非線性函數。

結合第二方面或第二方面的第一種可能的實現方式,在第二方面的第二種可能的實現方式中,所述數據流預處理結果是對當前進入網絡的數據流進行預處理得到的,其中所述預處理的方法包括:

提取所述數據流的特征,所述特征包括數據包報頭五元組、數據包長度序列或數據包到達時間間隔序列;

通過所述特征對所述數據流進行時空數據挖掘處理和/或因果關系分析處理,得到處理結果;

根據所述處理結果對所述數據流打標簽得到所述數據流的標簽,所述數據流的標簽為所述數據流預處理結果。

第三方面,本發(fā)明實施例提供一種網絡控制策略的生成方法,應用于SDN網絡,所述方法包括:從所述SDN網絡接收反饋信息,并將所述反饋信息轉發(fā)給控制模塊,用于使所述控制模塊根據所述反饋信息對當前網絡控制策略進行實時調整得到下一時刻網絡控制策略;其中,所述反饋信息是根據上一時刻網絡運行中所述控制模塊發(fā)出的控制動 作對所述網絡進行控制得到的。

第四方面,本發(fā)明實施例提供一種網絡控制策略的生成裝置,應用于SDN網絡,所述裝置包括:

獲取模塊,用于獲取網絡的網絡狀態(tài)數據;

預測模塊,用于根據所述網絡狀態(tài)數據估計網絡狀態(tài)信息,并根據所述網絡狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息,所述網絡狀態(tài)信息用于描述所述網絡的網絡鏈路情況、所述網絡中網元隊列情況、所述網絡的網絡數據流分布情況;

流數據預處理模塊,用于接收當前進入所述網絡的數據流,對所述數據流進行預處理得到數據流預處理結果;

控制模塊,用于應用當前網絡控制策略根據所述網絡狀態(tài)信息、所述網絡下一時刻狀態(tài)信息以及所述數據流預處理結果生成控制動作;

執(zhí)行模塊,用于根據所述控制動作控制所述網絡,并得到經所述控制動作控制的所述網絡的反饋信息;

所述控制模塊還用于接收所述網絡的反饋信息,并根據根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。

結合第四方面,在第四方面的第一種可能的實現方式中,所述網絡狀態(tài)數據包括網絡當前狀態(tài)數據,所述網絡狀態(tài)信息包括網絡當前狀態(tài)信息,所述預測模塊具體用于:

發(fā)送狀態(tài)采集命令;

接收根據所述狀態(tài)采集命令采集得到的網絡當前狀態(tài)數據;

根據所述網絡當前狀態(tài)數據估計所述網絡當前狀態(tài)信息,所述網絡當前狀態(tài)信息包括網絡當前鏈路情況、網絡中當前網元隊列情況、網絡當前數據流分布情況。

結合第四方面的第一種可能的實現方式,在第四方面的第二種可能的實現方式中,所述網絡狀態(tài)信息還包括網絡歷史狀態(tài)信息,所述預測模塊還用于:從數據庫獲取網絡歷史狀態(tài)信息;并根據所述網絡當前狀態(tài)信息和所述網絡歷史狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息。

結合第四方面、第四方面的第一種可能的實現方式或第四方面的第二種可能的實現方式中任意一種可能的實現方式,在第四方面的第三種可能的實現方式中,所述預測模塊具體用于:

其中表示所述網絡下一時刻狀態(tài)信息,其中St-τ表示所述網絡狀態(tài)信息,且0≤τ≤L;其中L為所述網絡狀態(tài)信息的時間窗口長度,其中f為線性函數或非線性函數。

結合第四方面、第四方面的第一種可能的實現方式至第四方面的第三種可能的實現方式中任意一種可能的實現方式,在第四方面的第四種可能的實現方式中,所述流數據預處理模塊包括:

提取單元,用于提取所述數據流的特征,所述特征包括數據包報頭五元組、數據包 長度序列或數據包到達時間間隔序列;

挖掘分析單元,用于通過所述特征對所述數據流進行時空數據挖掘處理和/或因果關系分析處理,得到處理結果;

標識單元,用于根據所述處理結果對所述數據流打標簽得到所述數據流的標簽,所述數據流的標簽為所述數據流預處理結果。

結合第四方面的第四種可能的實現方式,在第四方面的第五種可能的實現方式中,所述控制模塊具體用于:

其中表示所述網絡下一時刻狀態(tài)信息,其中St表示所述網絡狀態(tài)信息,其中l(wèi)i表示所述數據流的標簽,其中i表示第i個數據流,其中πt表示所述當前網絡控制策略,其中表示以St,li作為條件變量的當前網絡控制策略下a的概率分布,其中a為控制變量,在所述控制變量a的概率分布中隨機采樣得到所述控制動作ai。

第五方面,本發(fā)明實施例提供一種網絡控制策略的生成裝置,應用于SDN網絡,所述裝置包括:

接收模塊,用于接收網絡的網絡狀態(tài)信息,網絡下一時刻狀態(tài)信息,數據流預處理結果;其中,所述網絡狀態(tài)信息用于描述所述網絡的網絡鏈路情況、所述網絡中網元隊列情況、所述網絡的網絡數據流分布情況,所述網絡下一時刻狀態(tài)信息是根據所述網絡狀態(tài)信息進行預測得到的,所述數據流預處理結果是對當前進入網絡的數據流進行預處理得到的;

控制模塊,用于應用當前網絡控制策略根據所述網絡狀態(tài)信息、所述網絡下一時刻狀態(tài)信息以及所述數據流預處理結果生成控制動作,所述控制動作用于控制所述網絡并得到經所述控制動作控制的所述網絡的反饋信息;

所述控制模塊還用于接收所述網絡的反饋信息,并根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。

結合第五方面,在第五方面的第一種可能的實現方式中,所述網絡下一時刻狀態(tài)信息是根據所述網絡狀態(tài)信息進行預測得到的具體為:

其中表示所述網絡下一時刻狀態(tài)信息,其中St-τ表示所述網絡狀態(tài)信息,且0≤τ≤L;其中L為所述網絡狀態(tài)信息的時間窗口長度,其中f為線性函數或非線性函數。

結合第五方面或第五方面的第一種可能的實現方式,在第五方面的第二種可能的實現方式中,所述數據流預處理結果是對當前進入網絡的數據流進行預處理得到的具體包括:

提取所述數據流的特征,所述特征包括數據包報頭五元組、數據包長度序列或數據包到達時間間隔序列;

通過所述特征對所述數據流進行時空數據挖掘處理和/或因果關系分析處理,得到處 理結果;

根據所述處理結果對所述數據流打標簽得到所述數據流的標簽,所述數據流的標簽為所述數據流預處理結果。

第六方面,本發(fā)明實施例提供一種網絡控制器,應用于SDN網絡,用于從所述SDN網絡接收反饋信息,并將所述反饋信息轉發(fā)給控制模塊,用于使所述控制模塊根據所述反饋信息對當前網絡控制策略進行實時調整得到下一時刻網絡控制策略;其中,所述反饋信息是根據上一時刻網絡運行中所述控制模塊發(fā)出的控制動作對所述網絡進行控制得到的。

本發(fā)明中根據網絡狀態(tài)信息預測網絡下一時刻狀態(tài)信息,并對當前進入所述網絡的數據流進行預處理得到數據流預處理結果,從而應用當前網絡控制策略根據所述網絡狀態(tài)信息、所述網絡下一時刻狀態(tài)信息以及所述數據流預處理結果生成控制動作,根據該控制動作控制所述網絡以得到反饋信息,所述反饋信息是根據所述控制動作對所述網絡進行控制得到的,最后根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。這樣,網絡控制策略總是動態(tài)的根據當前的數據及網絡情況進行實時的優(yōu)化和調整,即本文所稱自適應。每一個時刻都有針對本時刻網絡及數據所需要的最優(yōu)的網絡控制策略,根據實時更新的網絡控制策略對網絡進行控制以此提高網絡控制效率。

附圖說明

為了更清楚地說明本發(fā)明實施例的技術方案,下面將對本發(fā)明實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面所描述的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。

圖1是部署本發(fā)明實施例提供的網絡控制策略的生成方法的數據傳輸網絡架構圖;

圖2是本發(fā)明實施例提供的網絡控制策略的生成方法200的示意性流程圖;

圖3是本發(fā)明實施例提供的執(zhí)行網絡控制策略的生成方法200的結構圖示例;

圖4是本發(fā)明實施例提供的執(zhí)行網絡控制策略的生成方法200的另一結構圖示例;

圖5是本發(fā)明實施例提供的執(zhí)行網絡控制策略的生成方法200的又一結構圖示例;

圖6是本發(fā)明實施例提供的網絡控制策略的生成方法600的示意性流程圖;

圖7是本發(fā)明實施例提供的執(zhí)行網絡控制策略的生成方法600的結構圖示例;

圖8是本發(fā)明實施例提供的網絡控制策略的生成方法800的示意性流程圖;

圖9是本發(fā)明實施例提供的網絡控制策略的生成裝置900的結構框圖;

圖10是本發(fā)明實施例提供的網絡控制策略的生成裝置1000的結構框圖。

具體實施方式

下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所述的實施例是本發(fā)明的一部分實施例,而不是全部實施例。基于本發(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都應屬于本發(fā)明保護的范圍。

本發(fā)明所提供的網絡控制策略的生成方法可以在如圖1所述的數據傳輸網絡100中部署和實施。所述數據傳輸網絡100包括有中央控制服務器110,源服務器120,網絡交換機130,傳輸網絡140,客戶端設備150,預測服務器160,及訓練服務器170。

所述中央控制服務器110為所述傳輸網絡100的核心處理設備,其分別與網絡交換機130,傳輸網絡140,客戶端設備150,預測服務器160及訓練服務器170相互連接,用于與網絡交換機130,傳輸網絡140,訓練服務器170及預測服務器160進行信息交流,指令傳遞及網絡數據傳輸。同時,源服務器120,網絡交換機130,傳輸網絡140,客戶端設備150,訓練服務器170及預測服務器160之間可以根據不同的業(yè)務需求及功能需求相互連接,進行信息及指令的交互。以下,將詳細介紹各個設備的功能及組成。

中央控制服務器110主要由處理器、存儲器及數據接口等主要部件組成,處理器主要通過調用存儲在存儲設備中的處理程序以完成相應處理功能,而數據接口則主要負責中央服務器110內部的各個器件之間以及中央處理服務器110與外部組件之間的數據收發(fā)。所述的處理器,可以是通用處理器、數字信號處理器(Digital Signal Processor,DSP)、專用集成電路(Application Specific Integrated Circuit,ASIC)、現成可編程門陣列(Field Programmable Gate Array,FPGA)或者其他可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬件組件。可以實現或者執(zhí)行本發(fā)明以下實施例中的公開的各方法、步驟及邏輯框圖。通用處理器可以是微處理器或者該處理器也可以是任何常規(guī)的處理器等。結合本發(fā)明實施例所公開的方法中的步驟可以直接體現為硬件譯碼處理器執(zhí)行完成,或者用譯碼處理器中的硬件及軟件模塊組合執(zhí)行完成。軟件模塊可以位于隨機存取存儲器(Random Access Memory,RAM)、閃存、只讀存儲器(Read-Only Memory,ROM)、可編程只讀存儲器或者電可擦寫可編程存儲器、寄存器等本領域成熟的存儲介質中。

所述中央控制服務器110通過數據接口接受網絡交互機130上報的路由請求,該路由請求中包括了將要路由的當前數據流信息,并將所述路由請求中的當前數據流信息通過數據接口發(fā)送至預測服務器160。預測服務器160根據當前數據流的信息,將網絡下一時刻狀態(tài)信息作為預測結果發(fā)送給中央控制服務器110,中央控制服務器110的中央處理器將調用存儲器中預存的處理程序,根據預測服務器160返回的預測結果及調用的存儲器中存儲的當前網絡控制策略,生成控制動作該控制動作中包含與當前數據流的類型匹配的最優(yōu)的傳輸路徑,隨后,中央控制服務器110將根據所述最優(yōu)的傳輸路徑配置針對當前數據流的路由,并將配置好的路由發(fā)送給網絡交換機130。此外,所述中央控制服務器110還用于通過其數據接口收集由所述網絡交換機130上報的已經完成路由的歷史數據流信息,并根據路由前數據和路由后數據得到反饋信息,并將反饋信息發(fā)送給訓練服務器170,訓練服務器170根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。

源服務器120主要由處理器、存儲器及數據接口等主要部件組成,處理器主要用于通過數據接口將存儲在存儲器內的數據經過網絡交換機130及傳輸網絡140發(fā)送給客戶端設備150。

網絡交換機130,其主要任務是對新進入網絡的數據流,即當前數據流,提取數據流第一個數據包的報頭,并上報給中央控制服務器110,等待并根據中央控制服務器110計算和配置的路由對當前數據流的數據包進行轉發(fā)。同時,網絡交換機130還將收集已完成路由的歷史數據流信息的收集,并上報給中央控制服務器110。

傳輸網絡140,其由傳輸線纜和多個網絡節(jié)點構成,主要用于根據網絡交換機130的指令進行數據傳輸。

客戶端設備150,由處理器、存儲器及數據接口等主要部件組成,處理器主要用于將客戶的數據請求通過數據接口及網絡交換機130發(fā)送至源服務器120,并將源服務器120通過網絡交換機130及傳輸網絡140發(fā)送的數據內容存儲在存儲器中。

預測服務器160,可以是獨立的處理設備,例如由獨立的處理器,存儲器,數據接口組成,所述處理器主要用于調用存儲在所述存儲器中的處理程序對通過數據接口接收到的當前數據流的信息進行處理,以對網絡下一時刻狀態(tài)信息進行預測,并將預測得到的網絡下一時刻狀態(tài)信息通過數據接口發(fā)送至中央控制服務器110。其中,所述當前數據流的信息來自于中央控制服務器110。此外,預測服務器160,也可以是依附于中央控制服務器110的一個工作單元,即與中央控制服務器110共用相同存儲器,數據接口,但 采用不同的處理器,此時,預測服務器160與所述中央控制服務器110之間的數據傳輸主要通過中央控制服務器110內部的數據總線完成。此外,所述預測服務器160也可以和中央控制服務器110共用相同的處理器,所述共用的方式可以是通過利用處理器中不同的處理資源進行同步(并行處理)或者異步(分時處理)數據處理,或者是利用處理器中相同的處理資源進行異步(分時處理)處理。此外,所述預測服務器160也可以通過虛擬機來實現,即由中央控制服務器110利用自身的處理器,存儲器,數據接口,通過調用存儲在存儲器中的程序模擬出具有完整的硬件系統(tǒng)功能的、運行在一個完全隔離環(huán)境中的完整計算機系統(tǒng),該計算機系統(tǒng)可以獨立完成所有預測服務器160所需完成的工作而不影響中央控制服務器110自身的運行。可以理解,所述預測服務器160可以進一步簡化為存儲在中央控制服務器110的存儲器中的一個軟件程序,該軟件程序由中央控制服務器110在適合的時機調用,以實現上述的網絡下一時刻狀態(tài)信息預測功能。

訓練服務器170,可以是獨立的處理設備,由處理器、存儲器及數據接口等主要部件組成,所述處理器主要用于根據接收到的反饋信息對調用的存儲于所述存儲器中的當前網絡控制策略進行實時調整得到下一時刻網絡控制策略,,并將該下一時刻網絡控制策略存儲在存儲器中供下一次循環(huán)的調用。與預測服務器160相同,所述訓練服務器170也可以是依附于中央控制服務器110的一個工作單元,即與中央控制服務器110共用相同存儲器,數據接口,但采用不同的處理器,此時,訓練服務器170與中央控制服務器110之間的數據傳輸主要通過中央控制服務器110內部的數據總線完成。此外,訓練服務器170也可以和中央控制服務器110共用相同的處理器,所述共用的方式可以是通過利用處理器的不同的處理資源進行同步(并行處理)或者異步(分時處理)的數據處理,或者是利用處理器中相同的處理資源進行異步(分時處理)數據處理。此外,訓練服務器170也可以通過虛擬機來實現,即由中央控制服務器110利用自身的處理器,存儲器,數據接口,通過調用存儲在所述存儲器中的程序模擬出具有完整的硬件系統(tǒng)功能的、運行在一個完全隔離環(huán)境中的完整計算機系統(tǒng),該計算機系統(tǒng)可以獨立完成所有訓練服務器170所需完成的工作??梢岳斫?,訓練服務器170可以進一步簡化為存儲在中央控制服務器110的存儲器中的一個軟件程序,該軟件程序由所述中央控制服務器110在適合的時機調用,以實現上述的對當前網絡控制策略的實時調整及實時更新。

以上為實現本發(fā)明網絡數據流類型檢測的硬件環(huán)境,但需要注意的是,上述硬件環(huán)境并不是執(zhí)行本發(fā)明的唯一方式,其可以根據硬件資源,以及業(yè)務需求,即數據傳輸需求動態(tài)的調整,例如將央控制服務器110,網絡交換機130,預測服務器160及訓練服務 器170集中在一個數據控制中心,以提高處理效率。

即,本發(fā)明的方法可以基于上述的應用環(huán)境來進行部署及實施。以下將結合附圖來介紹本發(fā)明網絡數據流類型檢測方法。

實施例一:

圖2是根據本發(fā)明實施例提供的網絡控制策略的生成方法200的示意性流程圖。該網絡控制策略的生成方法200應用于SDN網絡。

S201,獲取網絡的網絡狀態(tài)數據。

所述網絡狀態(tài)數據是用于表示網絡狀態(tài)的原始數據。

S203,根據所述網絡狀態(tài)數據估計網絡狀態(tài)信息,并根據所述網絡狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息,所述網絡狀態(tài)信息用于描述所述網絡的網絡鏈路情況、所述網絡中網元隊列情況、所述網絡的網絡數據流分布情況。

需要說明書的,我們從具有低層次物理含義的網絡狀態(tài)數據中估計出具有高層次物理含義的網絡狀態(tài)信息,這個網絡狀態(tài)信息是帶有時效性的,即t時刻(我們可以稱之為當前時刻)下的網絡狀態(tài)信息描述的是t時刻的網絡鏈路情況、網絡中網元隊列情況、網絡數據流分布等情況;在t-1時刻(我們可以稱之為歷史時刻)下的網絡狀態(tài)信息描述的是t-1時刻的網絡鏈路情況、網絡中網元隊列情況、網絡數據流分布等情況;在t+1時刻(我們可以稱之為下一時刻或將來時刻)下的網絡狀態(tài)信息描述的是t+1時刻的網絡鏈路情況、網絡中網元隊列情況、網絡數據流分布等情況,此處不再贅述。

S205,接收當前進入所述網絡的數據流,對所述數據流進行預處理得到數據流預處理結果。

具體的,所述預處理可以包括但不限于通過聚類、分類、回歸或因果分析等方式進行處理。

S207,應用當前網絡控制策略根據所述網絡狀態(tài)信息、所述網絡下一時刻狀態(tài)信息以及所述數據流預處理結果生成控制動作。

S209,根據所述控制動作控制所述網絡,并得到經所述控制動作控制的所述網絡的反饋信息。

S211,根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。

需要說明的是,本發(fā)明實施例提供的網絡控制策略的生成方法200中雖然以S201、S203、S205……等依次增大的數字進行步驟描述,但這些數字并不對本方案中的具體步驟順序進行限制,例如,在本方案中S203與S205就沒有這樣的順序限制,它們可以同時發(fā)生,也可以S203早于S205,還可以S203晚于S205發(fā)生。即本發(fā)明實施例中的步驟順序只與數據流的走向相關,不與描述的先后相關。

本發(fā)明實施例根據網絡狀態(tài)信息預測網絡下一時刻狀態(tài)信息,并對當前進入所述網絡的數據流進行預處理得到數據流預處理結果,從而應用當前網絡控制策略根據所述網絡狀態(tài)信息、所述網絡下一時刻狀態(tài)信息以及所述數據流預處理結果生成控制動作,根據該控制動作控制所述網絡以得到反饋信息,所述反饋信息是根據所述控制動作對所述網絡進行控制得到的,最后根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。在下一次網絡數據過來時,循環(huán)此過程,最后基于下一次的反饋信息對本次實時調整后得到的下一時刻網絡控制策略再進行相應地實時調整,并由此循環(huán)下去。這樣,網絡控制策略總是動態(tài)的根據當前的數據及網絡情況進行實時的優(yōu)化和調整,即本文所稱自適應。每一個時刻都有針對本時刻網絡及數據所需要的最優(yōu)的網絡控制策略,根據實時更新的網絡控制策略對網絡進行控制以此提高網絡控制效率。

具體的,上述實施例可以在圖3所示的結構上實現。例如,在控制系統(tǒng)300中,通過周期性的或者隨機觸發(fā)的向網絡中發(fā)出采集網絡狀態(tài)數據命令(圖中用線段①表示),SDN控制器基于命令收集這些網絡狀態(tài)數據命令并轉發(fā)(圖中用線段②表示)給相應的處理裝置,由相應的處理裝置根據網絡狀態(tài)數據估計出網絡狀態(tài)信息,并由網絡狀態(tài)信息預測出網絡下一時刻的狀態(tài)信息,值得說明的是,對應于網絡下一時刻的狀態(tài)信息,此處的網絡狀態(tài)信息用于描述與下一時刻不同的網絡狀態(tài)信息,比如網絡歷史時刻狀態(tài)信息或者網絡當前狀態(tài)信息。同時的,或者早于,或者晚于網絡狀態(tài)數據收集及網絡狀態(tài)信息估計等動作的時序,SDN控制器將進入網絡的當前數據流實時的轉發(fā)(圖中用線段③表示)給另一個相應的處理裝置,這個相應的處理裝置對當前進入網絡的數據流進行預處理從而得到數據流預處理結果,之所以要強調數據流預處理的動作與網絡狀態(tài)信息估計及網絡下一時刻狀態(tài)信息預測動作的先后順序可以是同時,或早于或晚于,是因為在現實方案的運行中,原本對此處并不做額外限定,因此無論以何順序執(zhí)行上述動作均在本發(fā)明實施例的保護范圍之內,不再贅述。網絡狀態(tài)信息、網絡下一時刻的狀態(tài)信 息及數據流預處理結果作為控制模塊的輸入信息,并且,控制模塊將調用緩存設備中或存儲器中的當前網絡控制策略,利用網絡狀態(tài)信息、網絡下一時刻的狀態(tài)信息及數據流預處理結果這些信息根據當前網絡控制策略生成控制動作,并將該控制動作輸出給SDN控制器(圖中用線段④表示),SDN控制器根據該控制動作對網絡執(zhí)行具體的控制命令。網絡將根據該控制動作產生的控制效果作為反饋信息反饋(圖中用線段⑤表示)給SDN控制器,SDN控制器將該反饋信息轉發(fā)(圖中用線段⑤表示)給控制模塊,控制模塊根據反饋信息對當前網絡控制策略進行實時調整得到下一時刻網絡控制策略,并由控制模塊的緩存設備對該實時的網絡控制策略進行緩存或將其存儲在存儲器中留待下一次循環(huán)的備用。這樣,第一次循環(huán)生成的控制動作是針對該次循環(huán)時刻或時期下網絡所需要的最優(yōu)的控制動作,這個控制動作被執(zhí)行之后產生本次反饋信息,由反饋信息得到的下一時刻網絡控制策略,這個下一時刻網絡控制策略將作為下一次循環(huán)中的當前網絡控制策略進入下一次循環(huán),由此展開接下來第二次循環(huán),第三次循環(huán),第四次循環(huán)……以保證在每一個當前時刻都有針對該當前時刻下的網絡狀態(tài)及數據流信息進行最優(yōu)的控制從而提高整個控制系統(tǒng)的控制效率,不再贅述。

值得說明的是,上述圖3所示的結構是本方法的一種示例,并不作為唯一的結構限制,凡是依本發(fā)明實施例提供的網絡控制策略的生成方法200進行網絡控制策略的生成或網絡控制等,就應該被納入本發(fā)明保護范圍內,不再贅述。

具體的,如S203步驟所解釋,網絡狀態(tài)信息是帶有時效性的,對應地,網絡狀態(tài)數據也應該是帶有時效性的,即可以有當前時刻的網絡狀態(tài)數據及網絡狀態(tài)信息,還可以有歷史時刻的網絡狀態(tài)數據和網絡狀態(tài)信息。

具體來看,所述網絡狀態(tài)數據包括網絡當前狀態(tài)數據,所述網絡狀態(tài)信息包括網絡當前狀態(tài)信息,在上述實施例提供的方法的基礎上,本發(fā)明實施例提供另一種可選的實施方式:

在S203根據所述網絡狀態(tài)數據估計所述網絡狀態(tài)信息之前,所述方法還包括:

發(fā)送狀態(tài)采集命令;

接收根據所述狀態(tài)采集命令采集得到的網絡當前狀態(tài)數據;

對應地,S203、所述根據所述網絡狀態(tài)數據估計所述網絡狀態(tài)信息具體包括:

根據所述網絡當前狀態(tài)數據估計所述網絡當前狀態(tài)信息,所述網絡當前狀態(tài)信息包括網絡當前鏈路情況、網絡中當前網元隊列情況、網絡當前數據流分布情況。

如上所述,所述網絡狀態(tài)信息還可以包括網絡歷史狀態(tài)信息(同理,所述網絡狀態(tài) 數據也還可以包括網絡歷史狀態(tài)數據),所述根據所述網絡狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息之前,所述方法還可以包括:

從數據庫獲取網絡歷史狀態(tài)信息;這里的數據庫可以是預存在存儲器中數據信息。

對應地,所述根據所述網絡狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息包括:根據所述網絡當前狀態(tài)信息和所述網絡歷史狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息。

具體的,根據網絡狀態(tài)數據估計網絡狀態(tài)信息,并根據網絡狀態(tài)信息預測網絡下一時刻狀態(tài)信息可以通過如下方式實現:

其中表示所述網絡下一時刻狀態(tài)信息,其中St-τ表示所述網絡狀態(tài)信息,且0≤τ≤L;其中L為所述網絡狀態(tài)信息的時間窗口長度,其中f為線性函數或非線性函數。

其中,需要說明的是,根據網絡狀態(tài)數據估計網絡狀態(tài)信息的方法,現實中比較常見,我們通過舉例來說明,例如:我們可以根據采集到的交換機端口計數器數據,估計交換機的鏈路利用率;又比如可以通過采集到的交換機隊列計數器數據,估計交換機延遲;再比如通過采集到的交換機流表數據,估計網絡中的活躍數據流數量等等。具體的估計方法細節(jié)此處無需贅述,本領域相關技術人員應該理解。

具體的,上述方案可以在圖4所示的結構上實現,例如,SDN控制器實時的、或周期性的、亦或由事件觸發(fā)型的向網絡發(fā)出網絡狀態(tài)數據采集命令(圖中用線段①表示),SDN控制器收集該采集得到的網絡狀態(tài)數據Dt并將Dt轉發(fā)(圖中用線段②表示)給相應的處理裝置,在圖4的示例中我們叫它狀態(tài)估計器,該狀態(tài)估計器根據Dt估計出網絡狀態(tài)信息St,此處的St用來表示網絡當前狀態(tài)信息,St作為狀態(tài)預測器的輸入(在另一種實施例中St和來自數據庫中的網絡歷史狀態(tài)信息St-1,St-2,...一起作為狀態(tài)預測器的輸入),狀態(tài)預測器根據上述輸入信息進行預測得到網絡下一時刻狀態(tài)信息具體的預測方法可以為上述方法,此處的f具體表示的函數形式此處不做限定。值得說明的是,我們根據當前時刻或根據當前時刻及歷史時刻的網絡狀態(tài)信息預測得到不一定只能是下一時刻的網絡狀態(tài)信息,即上文所述的網絡下一時刻狀態(tài)信息,還有可能是下兩個時刻,三個時刻……,我們可以管這個狀態(tài)信息叫做未來時刻的狀態(tài)信息,其預測思路與預測下一時刻的思路一致,另外,如圖4所示,我們將估計得到的St存儲在數據庫中,具體可以存儲在數據庫緩存設備中或存儲器中,以形成下一時刻的網絡歷史狀態(tài)信息留待備用。

值得說明的是,上述圖4所示的結構是本方法的一種示例,并不作為唯一的結構限制,凡是依本發(fā)明實施例提供的網絡控制策略的生成方法200進行網絡控制策略的生成或網絡控制等,就應該被納入本發(fā)明保護范圍內,不再贅述。

具體的,S205、對所述數據流進行預處理得到數據流預處理結果可以按如下方法實 施:

提取所述數據流的特征,所述特征包括但不限于數據包報頭五元組、數據包長度序列或數據包到達時間間隔序列;

通過所述特征對所述數據流進行時空數據挖掘處理和/或因果關系分析處理,得到處理結果;

根據所述處理結果對所述數據流打標簽得到所述數據流的標簽,所述數據流的標簽為所述數據流預處理結果,該預處理結果可以是標簽本身,此處所述的標簽可以是標識,或者別的相關的用于區(qū)分流類型和/或流間關系的標記。

具體的,所述步驟S207,應用當前網絡控制策略根據所述網絡狀態(tài)信息、所述網絡下一時刻狀態(tài)信息以及所述數據流預處理結果生成控制動作具體可以以下述方式實現:

其中表示所述網絡下一時刻狀態(tài)信息,其中St表示所述網絡狀態(tài)信息,其中l(wèi)i表示所述數據流的標簽,其中i表示第i個數據流,其中πt表示所述當前網絡控制策略,其中表示以St,li作為條件變量的當前網絡控制策略下a的概率分布,其中a為控制變量,在所述控制變量a的概率分布中隨機采樣得到所述控制動作ai。

具體的,上述方案可以在圖5所示的結構上實現,例如,SDN控制器將當前進入網絡的數據流轉發(fā)給相應的處理裝置,在圖5示例中我們叫它特征提取模塊,特征提取模塊提取所述數據流的特征,并利用提取的特征進行時空數據挖掘處理和/或因果關系分析處理。具體可以如下操作:

對數據流進行特征提取,具體可以通過Xi=F(fi)進行特征提取,其中fi表示第i個數據流,F表示特征提取函數,Xi表示從數據流i中提取到的特征向量。將提取到的特征用x表示。x是一個高維的向量,如下所示:X={x1,x2...xn}T

例如,一個從數據流中提取到的特征中,其所包含的時空信息可以包括但不限于:

源端地址(Source IP),32位二進制串;目的端地址(Destination IP),32位二進制串;服務器端口(Server Port),16位二進制串;客戶端端口(Client Port),16位二進制串;傳輸協議(Protocol),類別類型;發(fā)送時間(Starting time),實數類型;數據包長度序列(Packet length),整數類型;數據包到達時間間隔序列(Packet inter-arrival time):實數類型等。

所述預處理的具體方法包括:關于數據流的時空數據挖掘和/或因果關系挖掘。

其中,所述時空數據挖掘具體包括但不限于:

聚類(Clustering):以數據流提取的特征全集或者是部分特征集合,作為特征向量,代表該數據流,對特征向量進行聚類,可以獲得數據流的時空信息。比如,通過聚類,可以獲得協同流信息(Co-flow information),即是可以分析哪一些數據流可能屬于同一個任務。

分類(Classification):數據流往往可以根據其本身的性質,進行分類。比如,根據數據流長度(flow size)或者持續(xù)時間(duration),可以將數據流分為大象流(elephant flow)和老鼠流(mice flow)。又比如,根據數據流產生的應用,可以將數據流分為視頻流(video stream),數據備份(data backup)等等。通過離線人工標簽的方式,我們可以獲得訓練數據,根據訓練數據訓練分類器(Classifier)。利用分類器,在線實時地對數據流進行分類。

回歸(Regression):回歸與分類有類似的地方,即是根據訓練數據學習得到函數g,函數g將特征作為輸入,函數g輸出數據流某個特征,比如我們可以建立一個回歸模型,利用數據流的特征,估計數據流的長度。

其中,所述因果關系挖掘包括但不限于:

因果分析(Causal analysis):數據流之間可能還存在因果關系。比如,某些客戶端可能通過向服務器端發(fā)送一些請求,而服務器端則相應地做出響應。在這種情形下,客戶端發(fā)送到服務器端以及服務器端發(fā)送到客戶端的數據流存在因果關系。假設我們研究網絡中頻繁交流的IP地址對(Source IP,Destination IP)之間發(fā)送的數據流之間是否有因果關系,我們可以將研究的時間劃分為多個時間段,定義為t時間段內,從SourceIP發(fā)送到DestinnaItPio的數據流數量。我們研究與τ≥0是否有因果關系:

通過上述處理,得到處理結果,并根據所述處理結果對所述數據流打標簽得到即圖中所示標簽li,即所述數據流預處理結果。

值得說明的是,上述圖5所示的結構是本方法的一種示例,并不作為唯一的結構限制,凡是依本發(fā)明實施例提供的網絡控制策略的生成方法200進行網絡控制策略的生成或網絡控制等,就應該被納入本發(fā)明保護范圍內,不再贅述。

實施例二:

圖6是根據本發(fā)明實施例提供的網絡控制策略的生成方法600的示意性流程圖。該網絡控制策略的生成方法600應用于SDN網絡。

S601,接收網絡的網絡狀態(tài)信息,網絡下一時刻狀態(tài)信息,數據流預處理結果。

其中,所述網絡狀態(tài)信息用于描述所述網絡的網絡鏈路情況、所述網絡中網元隊列情況、所述網絡的網絡數據流分布情況,所述網絡下一時刻狀態(tài)信息是根據所述網絡狀態(tài)信息進行預測得到的,所述數據流預處理結果是對當前進入網絡的數據流進行預處理得到的。

S603,應用當前網絡控制策略根據所述網絡狀態(tài)信息、所述網絡下一時刻狀態(tài)信息以及所述數據流預處理結果生成控制動作。

所述控制動作用于控制所述網絡并得到經所述控制動作控制的所述網絡的反饋信息。

S605,接收所述網絡的反饋信息,并根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。

具體的,所述網絡下一時刻狀態(tài)信息是根據所述網絡狀態(tài)信息進行預測得到的,其中所述預測的方法具體可以為:

其中表示所述網絡下一時刻狀態(tài)信息,其中St-τ表示所述網絡狀態(tài)信息,且0≤τ≤L;其中L為所述網絡狀態(tài)信息的時間窗口長度,其中f為線性函數或非線性函數。

具體的,所述數據流預處理結果是對當前進入網絡的數據流進行預處理得到的,其中所述預處理的方法具體可以為:

提取所述數據流的特征,所述特征包括數據包報頭五元組、數據包長度序列或數據包到達時間間隔序列;

通過所述特征對所述數據流進行時空數據挖掘處理和/或因果關系分析處理,得到處理結果;

根據所述處理結果對所述數據流打標簽,得到所述數據流預處理結果。

本發(fā)明實施例通過接收網絡狀態(tài)信息,網絡下一時刻狀態(tài)信息,數據流預處理結果,從而基于網絡狀態(tài)信息、網絡下一時刻狀態(tài)信息和數據流預處理結果,并根據當前網絡控制策略生成控制動作,所述控制動作用于控制所述網絡以得到根據所述控制動作對所述網絡進行控制得到的反饋信息,最后,接收所述反饋信息,并根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。在下一次網絡數據過來 時,循環(huán)此過程,最后基于下一次的反饋信息對本次實時調整后的網絡控制策略再進行實時調整得到再下一個時刻網絡控制策略,并由此循環(huán)下去。這樣,網絡控制策略總是動態(tài)的根據當前的數據及網絡情況進行實時的優(yōu)化和調整,即本文所稱自適應。每一個時刻都有針對本時刻網絡及數據所需要的最優(yōu)的網絡控制策略,根據實時更新的網絡控制策略對網絡進行控制以此提高網絡控制效率。

具體的,上述實施例可以在圖3所示的結構上實現。例如,在控制系統(tǒng)300中完整的方案實現過程應該是:通過周期性的或者隨機觸發(fā)的向網絡中發(fā)出采集網絡狀態(tài)數據命令,SDN控制器基于命令收集這些網絡狀態(tài)數據命令并轉發(fā)給相應的處理裝置,由相應的處理裝置根據網絡狀態(tài)數據估計出網絡狀態(tài)信息,并由網絡狀態(tài)信息預測出網絡下一時刻的狀態(tài)信息,值得說明的是,對應于網絡下一時刻的狀態(tài)信息,此處的網絡狀態(tài)信息用于描述與下一時刻不同的網絡狀態(tài)信息,比如網絡歷史時刻狀態(tài)信息或者網絡當前狀態(tài)信息。同時的,或者早于,或者晚于網絡狀態(tài)數據收集及網絡狀態(tài)信息估計等動作的時序,SDN控制器將進入網絡的當前數據流實時的轉發(fā)給另一個相應的處理裝置,這個相應的處理裝置對當前進入網絡的數據流進行預處理從而得到數據流預處理結果,之所以要強調數據流預處理的動作與網絡狀態(tài)信息估計及網絡下一時刻狀態(tài)信息預測動作的先后順序可以是同時,或早于或晚于,是因為在現實方案的運行中,原本對此處并不做額外限定,因此無論以何順序執(zhí)行上述動作均在本發(fā)明實施例的保護范圍之內,不再贅述。網絡狀態(tài)信息、網絡下一時刻的狀態(tài)信息及數據流預處理結果作為控制模塊的輸入信息,并且,控制模塊將調用緩存設備中或存儲器中的當前網絡控制策略,利用網絡狀態(tài)信息、網絡下一時刻的狀態(tài)信息及數據流預處理結果這些信息根據當前網絡控制策略生成控制動作,并將該控制動作輸出給SDN控制器,SDN控制器根據該控制動作對網絡執(zhí)行具體的控制命令。網絡將根據該控制動作產生的控制效果作為反饋信息反饋給SDN控制器,SDN控制器將該反饋信息轉發(fā)給控制模塊,控制模塊根據反饋信息對當前網絡控制策略進行實時調整得到下一時刻網絡控制策略,并由控制模塊的緩存設備對該下一時刻網絡控制策略進行緩存或將其存儲在存儲器中留待下一次循環(huán)的備用。這樣,第一次循環(huán)生成的控制動作是針對該次循環(huán)時刻或時期下網絡所需要的最優(yōu)的控制動作,這個控制動作被執(zhí)行之后產生本次反饋信息,由反饋信息得到下一時刻網絡控制 策略,這個下一時刻網絡控制策略將作為下一次循環(huán)中的當前網絡控制策略進入下一次循環(huán),由此展開接下來第二次循環(huán),第三次循環(huán),第四次循環(huán)……以保證在每一個當前時刻都有針對該當前時刻下的網絡狀態(tài)及數據流信息進行最優(yōu)的控制從而提高整個控制系統(tǒng)的控制效率,不再贅述。本發(fā)明實施例所提供的方法執(zhí)行主體可以是結構300中的控制模塊。

更具體的,上述方案還可以在圖7所示的結構上實現,例如,控制模塊接收網絡狀態(tài)信息,網絡下一時刻狀態(tài)信息以及數據流預處理結果,根據調用的策略πt及接收的信息生成控制動作ai,具體的通過如下方式進行:其中表示所述網絡下一時刻狀態(tài)信息,其中St表示所述網絡狀態(tài)信息,其中l(wèi)i表示所述數據流的標簽,其中i表示第i個數據流,其中πt表示所述當前網絡控制策略,其中表示以St,li作為條件變量的當前網絡控制策略下a的概率分布,其中a為控制變量,在所述控制變量a的概率分布中隨機采樣得到所述控制動作ai,所述控制動作ai服從的概率分布。具體的,可以如圖中所示采用Q學習的方法,或MDP(馬爾科夫決策過程),或POMDP(部分可觀察馬爾科夫決策過程)進行??刂苿幼鱝i被發(fā)送給SDN控制器,用于使SDN控制器去執(zhí)行該控制動作。網絡在接受控制動作ai,從狀態(tài)st轉移到實際的狀態(tài)st+1時,反饋給控制模塊該控制動作所產生的回報Rt=R(st,ai,st+1),我們把該回報叫做反饋信息。進一步的,控制模塊根據該反饋信息相應地對策略πt進行實時調整得到下一時刻網絡控制策略:πt+1=L(πt,Rt),其中L表示利用反饋對策略進行調整的學習算法,其中πt+1為下一時刻網絡控制策略。具體的,S為有限網絡狀態(tài)信息集合,A為有限控制動作集合,J(π)表示衡量策略優(yōu)越性的目標函數,P(st+1|st,at)為系統(tǒng)在動作at的作用下,從狀態(tài)st轉移到狀態(tài)st+1的概率,R(st,at,st+1)為系統(tǒng)從狀態(tài)st轉移到st+1獲得的回報,π(a|s)為策略函數,表示在網絡狀態(tài)信息所描述的網絡狀態(tài)s采用控制動作a的概率,μπ(s)為在策略π下狀態(tài)s的分布,則最佳的策略可以由如下的有限制優(yōu)化問題獲得:

假設在初始化的時候,我們通過離線收集到的數據:

(s0,a0,s′0,R0),(s1,a1,s′1,R1),…,(sn,an,s′n,Rn)

并學習得到初始化的網絡控制策略π0,系統(tǒng)在初始化運轉的時候通過網絡控制策略π0控制網絡運行,等收集足夠多新的數據集時,我們用新的數據集,重新學習得到新的網絡控制策略π1,如此不斷循環(huán)(這個循環(huán)的過程可以離線進行也可以在線進行),直到我們認為一個足夠好的網絡控制策略可以被當作上述方法200或600中的當前網絡控制策略,則進入上述提供的實施例中的第一個循環(huán)。

可選的,如圖7所示,在本方案實施例中,我們可以將該反饋信息存儲在控制模塊的緩存設備中或存儲器中,此處不做贅述。

值得說明的是,上述圖3和圖7所示的結構是本方法的示例,并不作為唯一的結構限制,凡是依本發(fā)明實施例提供的網絡控制策略的生成方法600進行網絡控制策略的生成或網絡控制等,就應該被納入本發(fā)明保護范圍內,不再贅述。

實施例三:

圖8是根據本發(fā)明實施例提供的網絡控制策略的生成方法800的示意性流程圖。該網絡控制策略的生成裝置800應用于SDN網絡。

S801,從所述網絡接收反饋信息。

S803,將所述反饋信息轉發(fā)給控制模塊,用于使所述控制模塊根據所述反饋信息對當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。

本發(fā)明實施例接收反饋信息,并將所述反饋信息轉發(fā)給控制模塊,用于使所述控制模塊根據所述反饋信息對當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。在下一次網絡數據過來時,循環(huán)此過程,最后基于下一次的反饋信息對本次實時調整后網絡控制策略再進行實時調整得到再下一個時刻網絡控制策略,并由此循環(huán)下去。這樣,網絡控制策略總是動態(tài)的根據當前的數據及網絡情況進行實時的優(yōu)化和調整,即本文所稱自適應。每一個時刻都有針對本時刻網絡及數據所需要的最優(yōu)的網絡控制策略,根據實時更新的網絡控制策略對網絡進行控制以此提高網絡控制效率。

具體的,上述實施例可以在圖3所示的結構上實現。例如,在控制系統(tǒng)300中完整 的方案實現過程應該是:通過周期性的或者隨機觸發(fā)的向網絡中發(fā)出采集網絡狀態(tài)數據命令,SDN控制器基于命令收集這些網絡狀態(tài)數據命令并轉發(fā)給相應的處理裝置,由相應的處理裝置根據網絡狀態(tài)數據估計出網絡狀態(tài)信息,并由網絡狀態(tài)信息預測出網絡下一時刻的狀態(tài)信息,值得說明的是,對應于網絡下一時刻的狀態(tài)信息,此處的網絡狀態(tài)信息用于描述與下一時刻不同的網絡狀態(tài)信息,比如網絡歷史時刻狀態(tài)信息或者網絡當前狀態(tài)信息。同時的,或者早于,或者晚于網絡狀態(tài)數據收集及網絡狀態(tài)信息估計等動作的時序,SDN控制器將進入網絡的當前數據流實時的轉發(fā)給另一個相應的處理裝置,這個相應的處理裝置對當前進入網絡的數據流進行預處理從而得到數據流預處理結果,之所以要強調數據流預處理的動作與網絡狀態(tài)信息估計及網絡下一時刻狀態(tài)信息預測動作的先后順序可以是同時,或早于或晚于,是因為在現實方案的運行中,原本對此處并不做額外限定,因此無論以何順序執(zhí)行上述動作均在本發(fā)明實施例的保護范圍之內,不再贅述。網絡狀態(tài)信息、網絡下一時刻的狀態(tài)信息及數據流預處理結果作為控制模塊的輸入信息,并且,控制模塊將調用緩存設備中或存儲器中的當前網絡控制策略,利用網絡狀態(tài)信息、網絡下一時刻的狀態(tài)信息及數據流預處理結果這些信息根據當前網絡控制策略生成控制動作,并將該控制動作輸出給SDN控制器,SDN控制器根據該控制動作對網絡執(zhí)行具體的控制命令。網絡將根據該控制動作產生的控制效果作為反饋信息反饋給SDN控制器,SDN控制器將該反饋信息轉發(fā)給控制模塊,控制模塊根據反饋信息對當前網絡控制策略進行實時調整得到下一時刻網絡控制策略,并由控制模塊的緩存設備對該下一時刻網絡控制策略進行緩存或將其存儲在存儲器中留待下一次循環(huán)的備用。這樣,第一次循環(huán)生成的控制動作是針對該次循環(huán)時刻或時期下網絡所需要的最優(yōu)的控制動作,這個控制動作被執(zhí)行之后產生本次反饋信息,由反饋信息得到下一時刻網絡控制策略,這個下一時刻網絡控制策略將作為下一次循環(huán)中的當前網絡控制策略進入下一次循環(huán),由此展開接下來第二次循環(huán),第三次循環(huán),第四次循環(huán)……以保證在每一個當前時刻都有針對該當前時刻下的網絡狀態(tài)及數據流信息進行最優(yōu)的控制從而提高整個控制系統(tǒng)的控制效率,不再贅述。本發(fā)明實施例所提供的方法執(zhí)行主體可以是結構300中的SDN控制器。

實施例四:

圖9是根據本發(fā)明實施例提供的網絡控制策略的生成裝置900的結構框圖。該網絡控制策略的生成裝置900應用于SDN網絡。

獲取模塊901,用于獲取網絡的網絡狀態(tài)數據。

所述網絡狀態(tài)數據是用于表示網絡狀態(tài)的原始數據。

預測模塊903,用于根據所述網絡狀態(tài)數據估計網絡狀態(tài)信息,并根據所述網絡狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息,所述網絡狀態(tài)信息用于描述所述網絡的網絡鏈路情況、所述網絡中網元隊列情況、所述網絡的網絡數據流分布情況。

需要說明書的,我們從具有低層次物理含義的網絡狀態(tài)數據中估計出具有高層次物理含義的網絡狀態(tài)信息,這個網絡狀態(tài)信息是帶有時效性的,即t時刻(我們可以稱之為當前時刻)下的網絡狀態(tài)信息描述的是t時刻的網絡鏈路情況、網絡中網元隊列情況、網絡數據流分布等情況;在t-1時刻(我們可以稱之為歷史時刻)下的網絡狀態(tài)信息描述的是t-1時刻的網絡鏈路情況、網絡中網元隊列情況、網絡數據流分布等情況;在t+1時刻(我們可以稱之為下一時刻或將來時刻)下的網絡狀態(tài)信息描述的是t+1時刻的網絡鏈路情況、網絡中網元隊列情況、網絡數據流分布等情況,此處不再贅述。

流數據預處理模塊905,用于接收當前進入所述網絡的數據流,對所述數據流進行預處理得到數據流預處理結果。

控制模塊907,用于應用當前網絡控制策略根據所述網絡狀態(tài)信息、所述網絡下一時刻狀態(tài)信息以及所述數據流預處理結果生成控制動作。

執(zhí)行模塊909,用于根據所述控制動作控制所述網絡,并得到經所述控制動作控制的所述網絡的反饋信息。

所述控制模塊907還用于接收所述網絡的反饋信息,并根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。

值得說明的是,執(zhí)行模塊909與獲取模塊901的關系,可以是同一個硬件來實現,也可以是不同硬件實現。獲取模塊901可以由獨立的軟件實現,執(zhí)行模塊909可以為設置在SDN控制器內的功能單元。

本發(fā)明實施例根據網絡狀態(tài)信息預測網絡下一時刻狀態(tài)信息,并對當前進入所述網絡的數據流進行預處理得到數據流預處理結果,從而基于網絡狀態(tài)信息、網絡下一時刻狀態(tài)信息和數據流預處理結果,根據當前網絡控制策略生成控制動作,根據該控制動作控制所述網絡以得到反饋信息,所述反饋信息是根據所述控制動作對所述網絡進行控制得到的,最后根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。在下一次網絡數據過來時,循環(huán)此過程,最后基于下一次的反饋信息對本次實時調整后的網絡控制策略再進行實時調整得到再下一個時刻網絡控制策略,并由此 循環(huán)下去。這樣,網絡控制策略總是動態(tài)的根據當前的數據及網絡情況進行實時的優(yōu)化和調整,即本文所稱自適應。每一個時刻都有針對本時刻網絡及數據所需要的最優(yōu)的網絡控制策略,根據實時更新的網絡控制策略對網絡進行控制以此提高網絡控制效率。

具體的,所述網絡狀態(tài)數據可以包括網絡當前狀態(tài)數據,相應的,所述網絡狀態(tài)信息可以包括網絡當前狀態(tài)信息,則上述預測模塊903具體可以用于:發(fā)送狀態(tài)采集命令;接收根據所述狀態(tài)采集命令采集得到的網絡當前狀態(tài)數據;并根據所述網絡當前狀態(tài)數據估計所述網絡當前狀態(tài)信息,所述網絡當前狀態(tài)信息包括網絡當前鏈路情況、網絡中當前網元隊列情況、網絡當前數據流分布情況。

具體的,所述網絡狀態(tài)信息還可以包括網絡歷史狀態(tài)信息(相應的,所述網絡狀態(tài)數據還可以包括網絡歷史狀態(tài)數據),則所述預測模塊903還用于:從數據庫獲取網絡歷史狀態(tài)信息;并根據所述網絡當前狀態(tài)信息和所述網絡歷史狀態(tài)信息預測所述網絡下一時刻狀態(tài)信息。

具體的,所述預測模塊具體可以用于執(zhí)行運算;

其中表示預測的所述網絡下一時刻狀態(tài)信息,其中St-τ表示所述網絡狀態(tài)信息,且0≤τ≤L;其中L為所述網絡狀態(tài)信息的時間窗口長度,其中f為線性函數或非線性函數。

作為一種可選的實施方案,所述流數據預處理模塊905具體可以包括:

提取單元,用于提取所述數據流的特征,所述特征包括數據包報頭五元組、數據包長度序列或數據包到達時間間隔序列;

挖掘分析單元,用于通過所述特征對所述數據流進行時空數據挖掘處理和/或因果關系分析處理,得到處理結果;

標識單元,用于根據所述處理結果對所述數據流打標簽得到所述數據流的標簽,所述數據流的標簽為所述數據流預處理結果。

作為一種可選的實施方案,所述控制模塊具體可以用于進行如下操作:

其中表示所述網絡下一時刻狀態(tài)信息,其中St表示所述網絡狀態(tài)信息,其中l(wèi)i表示所述數據流的標簽,其中i表示第i個數據流,其中πt表示所述當前網絡控制策略,其中表示以St,li作為條件變量的當前網絡控制策略下a的概率分布,其中a為控制變量,在所述控制變量a的概率分布中隨機采樣得到所述控制動作ai。

實施例五:

圖10是根據本發(fā)明實施例提供的網絡控制策略的生成裝置1000的結構框圖。

接收模塊1001,用于接收網絡的網絡狀態(tài)信息,網絡下一時刻狀態(tài)信息,數據流預處理結果;其中,所述網絡狀態(tài)信息用于描述所述網絡的網絡鏈路情況、所述網絡中網元隊列情況、所屬網絡的網絡數據流分布情況,所述網絡下一時刻狀態(tài)信息是根據所述 網絡狀態(tài)信息進行預測得到的,所述數據流預處理結果是對當前進入網絡的數據流進行預處理得到的。

控制模塊1003,用于應用當前網絡控制策略根據所述網絡狀態(tài)信息、所述網絡下一時刻狀態(tài)信息以及所述數據流預處理結果生成控制動作,所述控制動作用于控制所述網絡并得到經所述控制動作控制的所述網絡的反饋信息。

所述控制模塊1003還用于接收所述網絡的反饋信息,并根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。

本發(fā)明實施例通過接收網絡狀態(tài)信息,網絡下一時刻狀態(tài)信息,數據流預處理結果,從而基于網絡狀態(tài)信息、網絡下一時刻狀態(tài)信息和數據流預處理結果,并根據當前網絡控制策略生成控制動作,所述控制動作用于控制所述網絡以得到根據所述控制動作對所述網絡進行控制得到的反饋信息,最后,接收所述反饋信息,并根據所述反饋信息對所述當前網絡控制策略進行實時調整得到下一時刻網絡控制策略。在下一次網絡數據過來時,循環(huán)此過程,最后基于下一次的反饋信息對本次實時調整后的網絡控制策略再進行與當時的網絡狀態(tài)信息及數據流情況相應地實時調整,并由此循環(huán)下去。這樣,網絡控制策略總是動態(tài)的根據當前的數據及網絡情況進行實時的優(yōu)化和調整,即本文所稱自適應。每一個時刻都有針對本時刻網絡及數據所需要的最優(yōu)的網絡控制策略,根據實時更新的網絡控制策略對網絡進行控制以此提高網絡控制效率。

其中,所述網絡下一時刻狀態(tài)信息是根據所述網絡狀態(tài)信息進行預測得到的具體為:

其中表示預測的所述網絡下一時刻狀態(tài)信息,其中St-τ表示所述網絡狀態(tài)信息,且0≤τ≤L;其中L為所述網絡狀態(tài)信息的時間窗口長度,其中f為線性函數或非線性函數。

所述數據流預處理結果是對當前進入網絡的數據流進行預處理得到的具體包括:

提取所述數據流的特征,所述特征包括數據包報頭五元組、數據包長度序列或數據包到達時間間隔序列;

通過所述特征對所述數據流進行時空數據挖掘處理和/或因果關系分析處理,得到處理結果;

根據所述處理結果對所述數據流打標簽得到所述數據流的標簽,所述數據流的標簽為所述數據流預處理結果。

實施例五:

本發(fā)明實施例提供一種網絡控制器,應用于SDN網絡,其特征在于,用于從所述SDN網絡接收反饋信息,并將所述反饋信息轉發(fā)給控制模塊,用于使所述控制模塊根據所述反饋信息對當前網絡控制策略進行實時調整得到下一時刻網絡控制策略;其中,所述反饋信息是根據上一時刻網絡運行中所述控制模塊發(fā)出的控制動作對所述網絡進行控制得到的。

需要說明的是,上述所有裝置實施例中提供的裝置都可以用于實現上述所有方法實施例中的方法,同理,上述所有方法實施例中提供的方法都可以在上述所有裝置實施例中提供的裝置上運行。方法實施例中詳述的方案中細節(jié)信息可以用于解釋裝置實施例中相應特征。

本領域普通技術人員可以意識到,結合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計算機軟件和電子硬件的結合來實現。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術方案的特定應用和設計約束條件。專業(yè)技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出本發(fā)明的范圍。

所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng)、裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。

在本申請所提供的幾個實施例中,應該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。

所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上??梢愿鶕嶋H的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。

另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。

所述功能如果以軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中?;谶@樣的理解,本發(fā)明的技術方案本質上或者說 對現有技術做出貢獻的部分或者該技術方案的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)或處理器(processor)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。

以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到的變化或替換,都應涵蓋在本發(fā)明的保護范圍之內,因此本發(fā)明的保護范圍應以權利要求的保護范圍為準。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
团风县| 广州市| 宕昌县| 花莲县| 全南县| 正定县| 阳泉市| 汾西县| 柏乡县| 溆浦县| 科尔| 兴和县| 炎陵县| 陇西县| 潼关县| 弋阳县| 双峰县| 开化县| 竹山县| 南部县| 台中县| 义马市| 辽宁省| 赫章县| 建瓯市| 慈利县| 玛多县| 福建省| 隆子县| 峡江县| 丰台区| 九台市| 佛学| 衢州市| 田林县| 枣庄市| 绥江县| 北辰区| 洛扎县| 松原市| 无极县|