一種軟件定義的多路徑網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài)優(yōu)化方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種軟件定義的多路徑網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài) 優(yōu)化方法。
【背景技術(shù)】
[0002] 隨著急劇膨脹的網(wǎng)絡(luò)規(guī)模,類型豐富多樣的網(wǎng)絡(luò)應(yīng)用,因特網(wǎng)的結(jié)構(gòu)和功能日趨 復(fù)雜,而網(wǎng)絡(luò)管控能力日益減弱,特別作為網(wǎng)絡(luò)的核心的軟件定義的網(wǎng)絡(luò)設(shè)備不堪重負(fù),軟 件定義網(wǎng)絡(luò)(Software Defined Network,SDN)的思想和架構(gòu)應(yīng)運(yùn)而生。
[0003] SDN明確定義在網(wǎng)絡(luò)控制層與轉(zhuǎn)發(fā)層分離的思想體系,將控制邏輯集中在專有設(shè) 備上,而轉(zhuǎn)發(fā)邏輯則按分布方式進(jìn)行部署,各盡所能、各施其責(zé),網(wǎng)絡(luò)系統(tǒng)的靈活性和可擴(kuò) 展性得到充分體現(xiàn)。但是,SDN僅提供了 一個(gè)開源框架,具體功能和實(shí)現(xiàn)細(xì)節(jié)有待發(fā)展,如控 制器保存的網(wǎng)絡(luò)拓?fù)渲环磻?yīng)網(wǎng)絡(luò)設(shè)備的連接狀況,僅能針對(duì)斷開連接的網(wǎng)絡(luò)設(shè)備切換鏈 路;而當(dāng)鏈路出現(xiàn)顯著性延時(shí)或丟包率時(shí),則不能進(jìn)行鏈路選擇或優(yōu)化,未能解決高延時(shí)和 高丟包率鏈路的問題,顯著影響用戶的體驗(yàn)。因此,需要一種軟件定義的多路徑網(wǎng)絡(luò)流優(yōu)化 方法,解決現(xiàn)有技術(shù)存在的上述技術(shù)問題。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明要解決的技術(shù)問題是提供一種軟件定義的多路徑網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài)優(yōu)化方 法,提高了鏈路的傳輸效率,增強(qiáng)了用戶體驗(yàn)。
[0005] 本發(fā)明采用的技術(shù)方案是:
[0006] -種軟件定義的多路徑網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài)優(yōu)化方法,應(yīng)用于廣域網(wǎng)中,包括:多路徑 網(wǎng)絡(luò)架構(gòu)構(gòu)建步驟:在所述廣域網(wǎng)中部署多路徑網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài)優(yōu)化的控制器、智能軟件 定義的網(wǎng)絡(luò)設(shè)備、用戶端和服務(wù)器,其中所述控制器和所述網(wǎng)絡(luò)設(shè)備構(gòu)成控制面和交換面 分離的多路徑網(wǎng)絡(luò)架構(gòu),所述用戶端在所述多路徑網(wǎng)絡(luò)架構(gòu)下通過實(shí)時(shí)動(dòng)態(tài)優(yōu)化的多路徑 網(wǎng)絡(luò)流路徑訪問所述服務(wù)器;實(shí)時(shí)監(jiān)控步驟:所述網(wǎng)絡(luò)設(shè)備自主地對(duì)網(wǎng)絡(luò)進(jìn)行網(wǎng)絡(luò)狀態(tài)的 測(cè)量,并實(shí)時(shí)或者近實(shí)時(shí)地上傳網(wǎng)絡(luò)狀態(tài)信息給控制器;所述控制器存儲(chǔ)所述多路徑網(wǎng)絡(luò) 架構(gòu)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),并且根據(jù)所述網(wǎng)絡(luò)設(shè)備上傳的當(dāng)前網(wǎng)絡(luò)狀態(tài)信息,結(jié)合預(yù)先定義或 者缺省定義的網(wǎng)絡(luò)應(yīng)用場(chǎng)景特性信息,實(shí)時(shí)更新所述網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),并計(jì)算各個(gè)網(wǎng)絡(luò)流在 新的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)下的優(yōu)選路徑和對(duì)應(yīng)的流表,并且將對(duì)應(yīng)的流表下發(fā)至所述網(wǎng)絡(luò)設(shè)備。
[0007] 優(yōu)選地,所述實(shí)時(shí)監(jiān)控步驟之后,所述方法,還包括:所述控制器接受所述用戶端 的注冊(cè)請(qǐng)求;所述用戶端向所述控制器請(qǐng)求發(fā)送第一報(bào)文;所述控制器同意請(qǐng)求后,為所述 用戶端指定所述網(wǎng)絡(luò)設(shè)備中的一臺(tái),并且計(jì)算所述用戶端至所述服務(wù)器的最優(yōu)路徑;所述 用戶端對(duì)所述第一報(bào)文進(jìn)行第一隧道操作后,將所述第一報(bào)文發(fā)送至所述網(wǎng)絡(luò)設(shè)備;所述 網(wǎng)絡(luò)設(shè)備接收到所述第一報(bào)文后,對(duì)所述第一報(bào)文進(jìn)行第二隧道操作后查找是否存有所述 第一報(bào)文的流表;若所述網(wǎng)絡(luò)設(shè)備存有所述第一報(bào)文的流表,則所述網(wǎng)絡(luò)設(shè)備根據(jù)所述第 一報(bào)文的流表轉(zhuǎn)發(fā)所述第一報(bào)文,直至所述第一報(bào)文到達(dá)所述服務(wù)器;所述服務(wù)器收到所 述第一報(bào)文后,按照所述用戶端發(fā)送所述第一報(bào)文至所述服務(wù)器的路徑返回第二報(bào)文至所 述用戶端。
[0008] 優(yōu)選地,所述網(wǎng)絡(luò)設(shè)備查找是否存有所述第一報(bào)文的流表之后,所述方法,還包 括:若所述網(wǎng)絡(luò)設(shè)備不存有所述第一報(bào)文的流表,則所述網(wǎng)絡(luò)設(shè)備將所述第一報(bào)文轉(zhuǎn)發(fā)至 所述控制器,所述控制器計(jì)算所述用戶端與服務(wù)器之間的最優(yōu)路徑和所述第一報(bào)文的流 表,并將所述第一報(bào)文的流表發(fā)送至所述網(wǎng)絡(luò)設(shè)備。
[0009] 優(yōu)選地,所述控制器計(jì)算所述第一報(bào)文的流表,具體包括:所述控制器根據(jù)所述網(wǎng) 絡(luò)設(shè)備上傳的當(dāng)前網(wǎng)絡(luò)狀態(tài)信息和所述網(wǎng)絡(luò)應(yīng)用場(chǎng)景特性信息計(jì)算所述第一報(bào)文的流表。
[0010] 優(yōu)選地,所述控制器為所述用戶端指定所述網(wǎng)絡(luò)設(shè)備中的一臺(tái),具體包括:
[0011] 所述控制器根據(jù)所述當(dāng)前網(wǎng)絡(luò)狀態(tài)信息和所述網(wǎng)絡(luò)應(yīng)用場(chǎng)景特性信息向所述用 戶端指定一臺(tái)網(wǎng)絡(luò)設(shè)備;或者,所述控制器根據(jù)IP地址相似度,或者網(wǎng)絡(luò)可用帶寬為所述用 戶端指定一臺(tái)網(wǎng)絡(luò)設(shè)備。
[0012] 優(yōu)選地,所述網(wǎng)絡(luò)設(shè)備對(duì)所述第一報(bào)文進(jìn)行第二隧道操作,具體包括:所述網(wǎng)絡(luò)設(shè) 備對(duì)所述第一報(bào)文先后進(jìn)行解報(bào)頭操作和加報(bào)頭操作。
[0013] 優(yōu)選地,所述服務(wù)器按照所述用戶端發(fā)送所述第一報(bào)文至所述服務(wù)器的路徑返回 第二報(bào)文至所述用戶端,具體包括:所述網(wǎng)絡(luò)設(shè)備對(duì)所述第二報(bào)文進(jìn)行加報(bào)頭操作后,按照 所述用戶端發(fā)送所述第一報(bào)文至所述服務(wù)器的路徑返回所述第二報(bào)文至所述用戶端。
[0014] 優(yōu)選地,所述服務(wù)器收到所述第一報(bào)文后,按照所述用戶端發(fā)送所述第一報(bào)文至 所述服務(wù)器的路徑返回第二報(bào)文至所述用戶端,還包括,鄰近服務(wù)器的鄰近網(wǎng)絡(luò)設(shè)備透明 代理步驟:所述鄰近網(wǎng)絡(luò)設(shè)備接收到所述第一報(bào)文時(shí),保存所述第一報(bào)文的源IP地址和源 TCP端口至專門列表,并將所述第一報(bào)文中的源IP地址和源TCP端口替換為所述鄰近軟件定 義網(wǎng)絡(luò)設(shè)備的IP地址和指定端口號(hào);所述鄰近軟件定義網(wǎng)絡(luò)設(shè)備接收到所述第二報(bào)文時(shí), 根據(jù)所述第二報(bào)文的目的TCP端口號(hào)在所述專門列表中搜索對(duì)應(yīng)表項(xiàng)替換所述第二報(bào)文中 的目的IP地址和目的TCP端口號(hào)。
[0015] 采用以上技術(shù)方案,本發(fā)明至少具有以下效果:本發(fā)明提供的軟件定義的多路徑 網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài)優(yōu)化方法,通過拓展網(wǎng)絡(luò)設(shè)備和所述控制器的功能,提高了高延時(shí)和高丟 包率鏈路的傳輸效率,增強(qiáng)了用戶體驗(yàn)。
【附圖說明】
[0016] 圖1為本發(fā)明第一實(shí)施例軟件定義的多路徑網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài)優(yōu)化方法的流程圖;
[0017] 圖2為本發(fā)明第二實(shí)施例軟件定義的多路徑網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài)優(yōu)化方法的示意圖;
[0018] 圖3為本發(fā)明第三實(shí)施例軟件定義的多路徑網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài)優(yōu)化方法的流程圖;
[0019] 圖4為圖2所示軟件定義的多路徑網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài)優(yōu)化方法中控制器與用戶端交 互的流程圖;
[0020] 圖5為圖3所示軟件定義的多路徑網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài)優(yōu)化方法中控制器更新流表規(guī) 則的不意圖;
[0021 ]圖6為本發(fā)明第四實(shí)施例軟件定義的多路徑網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài)優(yōu)化方法中網(wǎng)絡(luò)設(shè)備 轉(zhuǎn)發(fā)報(bào)文時(shí)報(bào)文頭部變化的示意圖;
[0022]圖7為圖1所示軟件定義的多路徑網(wǎng)絡(luò)流優(yōu)化方法中控制器實(shí)時(shí)監(jiān)控的示意圖。
【具體實(shí)施方式】
[0023]為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加明白,以下參照附圖并舉實(shí)施例,對(duì)本 發(fā)明做進(jìn)一步的詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不限 定于本發(fā)明。
[0024] 第一實(shí)施例
[0025]如圖1所示,本實(shí)施例提供的軟件定義的多路徑網(wǎng)絡(luò)流實(shí)時(shí)動(dòng)態(tài)優(yōu)化方法,應(yīng)用于 廣域網(wǎng)中,具體步驟包括:多路徑網(wǎng)絡(luò)架構(gòu)構(gòu)建步驟S10:在廣域網(wǎng)中部署多路徑網(wǎng)絡(luò)流實(shí) 時(shí)動(dòng)態(tài)優(yōu)化的控制器,智能軟件定義的網(wǎng)絡(luò)設(shè)備、用戶端和服務(wù)器,其中控制器和網(wǎng)絡(luò)設(shè)備 構(gòu)成控制面和交換面分離的多路徑網(wǎng)絡(luò)架構(gòu),用戶端在多路徑網(wǎng)絡(luò)架構(gòu)通過實(shí)時(shí)動(dòng)態(tài)優(yōu)化 的多路徑網(wǎng)絡(luò)流路徑訪問服務(wù)器。還包括,實(shí)時(shí)監(jiān)控步驟S20:網(wǎng)絡(luò)設(shè)備自主地對(duì)網(wǎng)絡(luò)進(jìn)行 網(wǎng)絡(luò)狀態(tài)的測(cè)量,并實(shí)時(shí)或者近實(shí)時(shí)地上傳網(wǎng)絡(luò)狀態(tài)信息給控制器;控制器存儲(chǔ)該多路徑 網(wǎng)絡(luò)架構(gòu)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),并且根據(jù)網(wǎng)絡(luò)設(shè)備上傳的當(dāng)前網(wǎng)絡(luò)狀態(tài)信息,結(jié)合預(yù)先定義或 者缺省定義的網(wǎng)絡(luò)應(yīng)用場(chǎng)景特性信息,實(shí)時(shí)更新網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),并計(jì)算各個(gè)網(wǎng)絡(luò)流在新的 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)下的優(yōu)選路徑和對(duì)應(yīng)的流表,并且將對(duì)應(yīng)的流表下發(fā)至網(wǎng)絡(luò)設(shè)備。
[0026]具體地,本實(shí)施例在云端部署了 1個(gè)控制器Floodlight和多個(gè)智能軟件