。
[0037]在本實施方式中,接收模塊100和發(fā)送模塊104還分別用于獲取和發(fā)送各個底層設(shè)備30之間的連接拓撲,當(dāng)設(shè)計跨底層設(shè)備30間的轉(zhuǎn)發(fā)時,根據(jù)實際拓撲情況進行計算,對各個底層設(shè)備30的轉(zhuǎn)發(fā)流表進行配置,使得數(shù)據(jù)包跨底層設(shè)備30轉(zhuǎn)發(fā)。
[0038]圖3是本發(fā)明網(wǎng)絡(luò)裝置10虛擬配置網(wǎng)絡(luò)設(shè)備方法一實施方式的流程圖。其中本方法通過圖2所示的功能模塊實現(xiàn)所述方法。
[0039]在步驟S300,接收模塊100接收底層設(shè)備30的屬性參數(shù)。在SDN網(wǎng)絡(luò)中,一旦底層設(shè)備30接入網(wǎng)絡(luò)中后,底層設(shè)備30會將其一些屬性參數(shù)通過開放流(openflow)協(xié)議發(fā)給控制器20,其中包括底層設(shè)備30的網(wǎng)絡(luò)協(xié)議(Internet protocol, IP)地址、媒體訪問控制(Media access control, MAC)地址、數(shù)據(jù)路徑識別號(Datapath Identify, dpid)、端口數(shù)量、端口名稱、端口號等信息。在本實施方式中,底層設(shè)備30相關(guān)屬性參數(shù)中的數(shù)據(jù)路徑識別號(后文我們將稱之為dpid)唯一代表了該底層設(shè)備30。在本實施方式中,接收模塊100接收的相應(yīng)屬性參數(shù)以數(shù)據(jù)表的形式加以存儲,該數(shù)據(jù)表以dpid為索引,直接對應(yīng)該底層設(shè)備30的所有其他相關(guān)屬性參數(shù),比如端口號。
[0040]在步驟S302,虛擬配置模塊102依據(jù)網(wǎng)絡(luò)屬性參數(shù)對底層設(shè)備30進行虛擬化配置。在本實施方式中,對底層設(shè)備30的虛擬化配置具體表現(xiàn)為針對接收模塊100所接收的屬性參數(shù)加以虛擬。針對步驟S302,具體流程參閱圖4,其中圖4是本發(fā)明針對圖3進一步說明的流程圖,同樣其方法也是通過圖2所示的功能模塊加以實現(xiàn)的。
[0041]在步驟S400,接收模塊102接收用戶的虛擬配置需求。在本實施方式中,由于用戶的需求不同,SDN網(wǎng)絡(luò)中的底層設(shè)備30的數(shù)量也不盡相同,可能為一臺,也可能是多臺,其與控制器20共同組成了 SDN網(wǎng)絡(luò),所以用戶的虛擬配置需求可能是將其中某一臺底層設(shè)備30虛擬配置為多臺虛擬的底層設(shè)備,也可能是將多臺底層設(shè)備30虛擬為一臺虛擬的底層設(shè)備。
[0042]在步驟S402,虛擬配置模塊102判斷用戶的虛擬配置需求是否是將某一臺底層設(shè)備30虛擬配置為多臺虛擬的底層設(shè)備。
[0043]在步驟S404,當(dāng)用戶的虛擬配置需求是將某一臺底層設(shè)備30虛擬配置為多臺虛擬的底層設(shè)備時,虛擬配置模塊102將接收的屬性參數(shù)中的dpid虛擬成多個虛擬的dpid,并以多個虛擬的dpid為索引建立虛擬數(shù)據(jù)表。
[0044]在步驟S406,虛擬配置模塊102將屬性參數(shù)中具體的參數(shù)值不重復(fù)分配至多個虛擬dpid并存儲至虛擬數(shù)據(jù)表中。舉例而言,依據(jù)用戶需要,將一個底層設(shè)備30虛擬成2個虛擬底層設(shè)備時,則將I個底層設(shè)備30的dpid虛擬成2個虛擬的dpid,同時將底層設(shè)備30端口屬性的端口不重復(fù)的分配給兩個虛擬底層設(shè)備并存儲至所述兩個以虛擬dpid為索引的虛擬數(shù)據(jù)表中。
[0045]在步驟S408,虛擬配置模塊102判斷用戶的虛擬配置需求是否是將多臺底層設(shè)備30虛擬配置為一臺虛擬的底層設(shè)備。
[0046]在步驟S410,當(dāng)用戶的虛擬配置需求是將多臺底層設(shè)備30虛擬配置為一臺虛擬的底層設(shè)備時,虛擬配置模塊102將接收的多個dpid虛擬為一個dpid,并以該虛擬的dpid為索引建立數(shù)據(jù)表,同時將接收的多個底層設(shè)備30的屬性參數(shù)的具體參數(shù)值存儲到以虛擬dpid為索引的虛擬數(shù)據(jù)表中,即將多個底層設(shè)備30虛擬為一個虛擬底層設(shè)備。
[0047]在步驟S412,虛擬配置模塊102將多個底層設(shè)備30的端口不重復(fù)的分配給一個虛擬的底層設(shè)備。舉例而言,當(dāng)該SDN網(wǎng)絡(luò)中存在兩個底層設(shè)備30時,接收模塊100獲取到兩個底層設(shè)備30的屬性參數(shù)。通過虛擬配置模塊102的虛擬配置,多個底層設(shè)備30被虛擬為一個虛擬底層設(shè)備,并以虛擬的dpid為索引建立數(shù)據(jù)表,同時將兩個底層設(shè)備30端口屬性中的端口數(shù)量進行累加以作為虛擬底層設(shè)備的端口,端口編號按底層設(shè)備30編號順序從I開始單個遞增(如第一個底層設(shè)備有48個端口,第二個底層設(shè)備有24個端口,則將第一個底層設(shè)備30的端口按I到48編號,將第二個底層設(shè)備30的端口按49到72編號,依次類推,將其作為虛擬底層設(shè)備的端口編號)。
[0048]回歸步驟S304,發(fā)送模塊104將虛擬配置模塊104虛擬配置的虛擬配置信息發(fā)送至控制器20,所述控制器20接收虛擬配置信息后便判斷其連接了虛擬配置信息所代表的虛擬底層設(shè)備。在本實施方式中,控制器軟件(如Ryu、OpenDaylight、Floodlight等等)在解析過程中接收的配置信息時優(yōu)先對底層設(shè)備30的虛擬化配置進行讀取,再根據(jù)虛擬化的配置解析openflow協(xié)議數(shù)據(jù)包。換而言之,控制器20控制虛擬配置的虛擬底層設(shè)備。
[0049]在本實施方式中,接收模塊100和發(fā)送模塊104還分別用于獲取和發(fā)送各個底層設(shè)備30之間的連接拓撲,當(dāng)設(shè)計跨底層設(shè)備30間的轉(zhuǎn)發(fā)時,根據(jù)實際拓撲情況進行計算,對各個底層設(shè)備30的轉(zhuǎn)發(fā)流表進行配置,使得數(shù)據(jù)包跨底層設(shè)備30轉(zhuǎn)發(fā)。
[0050]綜上所述,網(wǎng)絡(luò)裝置10通過對SDN網(wǎng)絡(luò)中的底層設(shè)備30進行虛擬化配置,可實現(xiàn)一個設(shè)備虛擬成多個,多個設(shè)備虛擬成一個。也就是說,在實際網(wǎng)絡(luò)部署過程中,小規(guī)模網(wǎng)絡(luò)可將一個SDN設(shè)備可以虛擬成多個獨立的邏輯設(shè)備使用,大規(guī)模的網(wǎng)絡(luò)中亦可將多個SDN設(shè)備虛擬成一個SDN設(shè)備來實現(xiàn)網(wǎng)絡(luò)部署。使得網(wǎng)絡(luò)部署更加靈活,SDN設(shè)備資源能更為充分的被利用。
[0051]最后應(yīng)說明的是:以上實施方式僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實施方式對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實施方式所記載的技術(shù)方案進行修改,或者對其中部分技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施方式技術(shù)方案的精神和范圍。
【主權(quán)項】
1.一種虛擬配置底層設(shè)備的方法,應(yīng)用于軟件定義網(wǎng)絡(luò),所述軟件定義網(wǎng)絡(luò)包括控制器,所述底層設(shè)備至少為一個,其特征在于: 接收所述底層設(shè)備傳送的網(wǎng)絡(luò)屬性參數(shù); 依據(jù)所述網(wǎng)絡(luò)屬性參數(shù)對所述底層設(shè)備進行虛擬化配置并生成虛擬化配置信息;及 將所述底層設(shè)備的虛擬化配置信息發(fā)送至所述控制器,所述控制器根據(jù)所述虛擬化配置信息控制所述底層設(shè)備。
2.如權(quán)利要求1所述的虛擬配置底層設(shè)備的方法,其特征在于,所述虛擬配置底層設(shè)備的方法還包括: 接收用戶的虛擬配置需求,所述虛擬配置需求為將一個所述底層設(shè)備虛擬為多個虛擬的底層設(shè)備或?qū)⒍鄠€底層設(shè)備虛擬為一個虛擬的底層設(shè)備,所述網(wǎng)絡(luò)屬性參數(shù)包括所述底層設(shè)備的標(biāo)志號和所述底層設(shè)備的端口號。
3.如權(quán)利要求2所述的虛擬配置底層設(shè)備的方法,其特征在于,所述依據(jù)網(wǎng)絡(luò)屬性參數(shù)對所述底層設(shè)備進行虛擬化配置的步驟具體包括: 當(dāng)所述虛擬配置需求為將一個所述底層設(shè)備虛擬為多個虛擬的底層設(shè)備時,將所述底層設(shè)備的標(biāo)志號配置為多個虛擬的標(biāo)志號,所述多個虛擬的標(biāo)志號代表多個虛擬的底層設(shè)備; 當(dāng)所述虛擬配置需求為將多個底層設(shè)備虛擬為一個虛擬的底層設(shè)備時,將所述底層設(shè)備的標(biāo)志號配置為一個虛擬的標(biāo)志號,所述一個虛擬的標(biāo)志號代表一個虛擬的底層設(shè)備。
4.如權(quán)利要求3所述的虛擬配置底層設(shè)備的方法,其特征在于,所述依據(jù)網(wǎng)絡(luò)屬性參數(shù)對所述底層設(shè)備進行虛擬化配置的步驟進一步包括: 將所述底層設(shè)備的端口號不重復(fù)的分配給所述虛擬的底層設(shè)備。
5.如權(quán)利要求4所述的虛擬配置底層設(shè)備的方法,其特征在于,所述虛擬化配置信息包括所述虛擬的底層設(shè)備的標(biāo)志號和端口號。
6.—種網(wǎng)絡(luò)裝置,應(yīng)用于軟件定義網(wǎng)絡(luò),所述軟件定義網(wǎng)絡(luò)包括控制器和至少一個底層設(shè)備,其特征在于: 接收模塊,用于接收所述底層設(shè)備傳送的網(wǎng)絡(luò)屬性參數(shù); 虛擬配置模塊,用于依據(jù)所述網(wǎng)絡(luò)屬性參數(shù)對所述底層設(shè)備進行虛擬化配置并生成虛擬化配置信息;及 發(fā)送模塊,用于將所述底層設(shè)備的虛擬化配置信息發(fā)送至所述控制器,所述控制器根據(jù)所述虛擬化配置信息控制所述底層設(shè)備。
7.如權(quán)利要求6所述的網(wǎng)絡(luò)裝置,其特征在于,所述接收模塊還用于接收用戶的虛擬配置需求,所述虛擬配置需求為將一個所述底層設(shè)備虛擬為多個虛擬的底層設(shè)備或?qū)⒍鄠€底層設(shè)備虛擬為一個虛擬的底層設(shè)備,所述網(wǎng)絡(luò)屬性參數(shù)包括所述底層設(shè)備的標(biāo)志號和所述底層設(shè)備的端口號。
8.如權(quán)利要求7所述的網(wǎng)絡(luò)裝置,其特征在于: 當(dāng)所述虛擬配置需求為將一個所述底層設(shè)備虛擬為多個虛擬的底層設(shè)備時,所述虛擬配置模塊將所述底層設(shè)備的標(biāo)志號配置為多個虛擬的標(biāo)志號,所述多個虛擬的標(biāo)志號代表多個虛擬的底層設(shè)備; 當(dāng)所述虛擬配置需求為將多個底層設(shè)備虛擬為一個虛擬的底層設(shè)備時,所述虛擬配置模塊將所述底層設(shè)備的標(biāo)志號配置為一個虛擬的標(biāo)志號,所述一個虛擬的標(biāo)志號代表一個虛擬的底層設(shè)備。
9.如權(quán)利要求8所述的網(wǎng)絡(luò)裝置,其特征在于: 所述虛擬配置模塊還用于將所述底層設(shè)備的端口號不重復(fù)的分配給所述虛擬的底層設(shè)備,所述虛擬的底層設(shè)備的標(biāo)志號和端口號構(gòu)成了所述虛擬化配置信息。
10.如權(quán)利要求1所述的網(wǎng)絡(luò)裝置,其特征在于,所述網(wǎng)絡(luò)裝置位于所述控制器處或所述底層設(shè)備處。
【專利摘要】一種網(wǎng)絡(luò)裝置,包括接收模塊、虛擬配置模塊和發(fā)送模塊。接收模塊用于接收底層設(shè)備傳送的網(wǎng)絡(luò)屬性參數(shù);虛擬配置模塊用于依據(jù)所述網(wǎng)絡(luò)屬性參數(shù)對所述底層設(shè)備進行虛擬化配置并生產(chǎn)虛擬化配置信息;發(fā)送模塊用于將所述底層設(shè)備的虛擬化配置信息發(fā)送至所述控制器,所述控制器根據(jù)所述虛擬化配置信息控制所述底層設(shè)備。本發(fā)明還提供了虛擬配置底層設(shè)備的方法。本發(fā)明可讓網(wǎng)絡(luò)底層設(shè)備的部署更加靈活。
【IPC分類】H04L29-06, H04L12-24
【公開號】CN104836688
【申請?zhí)枴緾N201510239441
【發(fā)明人】劉昱, 程盼, 李澤鵬
【申請人】深圳市泰信通信息技術(shù)有限公司
【公開日】2015年8月12日
【申請日】2015年5月12日