軟件定義衛(wèi)星網(wǎng)絡中的流表更新及流表一致性優(yōu)化的方法
【專利摘要】本發(fā)明公開了軟件定義衛(wèi)星網(wǎng)絡的流表更新及流表一致性優(yōu)化方法,涉及軟件定義衛(wèi)星網(wǎng)絡領域。本發(fā)明的流表一致性優(yōu)化方法首先通過網(wǎng)絡感知實時監(jiān)測衛(wèi)星網(wǎng)絡全局狀態(tài),維護衛(wèi)星網(wǎng)絡中不同時刻的拓撲圖,并及時更新網(wǎng)絡的拓撲狀態(tài)及事件;然后將基于下發(fā)時延的路由決策和基于路徑相似度的路由決策結合,所需的下發(fā)延時以及寫入延時都較小,從而降低流表更新過程的總延時;最后通過調整交換機的下發(fā)順序,減少交換機到控制器的時延對流表不一致的影響,通過對新舊流表進行分類處理,減少下發(fā)流表項的數(shù)目來達到減少流表項的寫入時間,從而減少流表更新的總時延。本發(fā)明更好的改善了軟件定義衛(wèi)星網(wǎng)絡流表更新的不一致性問題。
【專利說明】
軟件定義衛(wèi)星網(wǎng)絡中的流表更新及流表一致性優(yōu)化的方法
技術領域
[0001 ]本發(fā)明涉及軟件定義衛(wèi)星網(wǎng)絡(Software Defined Satellite Network,SDSN)領 域,特別是涉及到改善軟件定義衛(wèi)星網(wǎng)絡流表更新的不一致性問題。
【背景技術】
[0002] 近年來軟件定義網(wǎng)絡(Software Defined Network,SDN)作為一種新的技術理念 受到了越來越多的關注。它通過將網(wǎng)絡中的管理功能從交換機或路由器等傳統(tǒng)網(wǎng)絡設備上 剝離,從而實現(xiàn)了控制平面與數(shù)據(jù)平面的完全獨立。SDN中控制平面可以實時監(jiān)控和收集網(wǎng) 絡信息,及時反饋網(wǎng)絡狀態(tài),包括網(wǎng)絡設備工作狀態(tài)和鏈路連接狀態(tài)。這種集中控制功能應 用到衛(wèi)星網(wǎng)絡中,能夠很好地解決衛(wèi)星網(wǎng)絡由于拓撲時變性引起的控制信息發(fā)布和收斂時 效性差等問題。在SDN控制機制中,提出了流表的概念。流表是對傳統(tǒng)網(wǎng)絡中二層轉發(fā)表、三 層路由表的抽象,對網(wǎng)絡中鏈路層、網(wǎng)絡層、以及傳輸層的網(wǎng)絡配置信息進行了整合。該機 制弱化了協(xié)議在衛(wèi)星網(wǎng)絡中概念,達到同時處理與響應衛(wèi)星網(wǎng)絡中并存的各個層次的協(xié)議 的目的,進而能夠解決衛(wèi)星網(wǎng)絡中存在的協(xié)議異構性問題。基于上述分析,SDN為解決衛(wèi)星 網(wǎng)絡的協(xié)議異構性、拓撲時變性都提供了一個新的方向。
[0003]在SDN技術中,控制平面與數(shù)據(jù)平面的分離、網(wǎng)絡狀態(tài)分發(fā)機制和時延的影響,都 對SDN流表的一致性需求提出了挑戰(zhàn)。SDN數(shù)據(jù)平面不運行任何協(xié)議,通過控制器下發(fā)控制 指令對數(shù)據(jù)進行處理。由于數(shù)據(jù)平面的分布式結構以及網(wǎng)絡時延的存在,在下發(fā)流表時,不 同網(wǎng)絡設備中的流表不可能同時到達。這種情況下可能會造成網(wǎng)絡設備中同時存在新舊兩 種流表,引起流表的不一致。流表的不一致可能導致數(shù)據(jù)平面對同一個業(yè)務的不同的處理, 影響網(wǎng)絡性能造成網(wǎng)絡出現(xiàn)斷路、丟包、環(huán)路等現(xiàn)象。尤其在衛(wèi)星網(wǎng)絡中,動態(tài)拓撲使得網(wǎng) 絡狀態(tài)頻繁發(fā)生變化,控制器需要不斷的對網(wǎng)絡狀態(tài)進行收集,頻繁更改路由策略并對路 由表進行下發(fā)。這些狀態(tài)的頻繁改變使得軟件定義衛(wèi)星網(wǎng)絡中流表不一致性問題更加突 出。為了提高衛(wèi)星網(wǎng)絡的穩(wěn)定性和可靠性,對衛(wèi)星網(wǎng)絡的SDN流表一致性進行研究具有重要 意義。
[0004]流表的更新延時是影響流表一致性的主要因素,而流表在更新過程中時延包括兩 部分:下發(fā)時延和流表寫入時延。下發(fā)時延是控制器將流表發(fā)送到交換機上所需的下發(fā)時 延,該時延受控制器到交換機之間的控制鏈路的時延的影響,又被稱為控制延時。寫入時延 是指SDN中流表安裝到交換機上的時延。更新時延則是流表下發(fā)時延與流表寫入時延之和。 在控制器在對網(wǎng)絡中交換機進行流表更新時,交換機更新的先后順序也會對流表的一致性 產生影響。同時流表的更新策略不同,流表的寫入時間也不同。
[0005]目前對流表一致性的研究大多集中于流表的下發(fā)規(guī)則,這是因為針對地面網(wǎng)絡, 網(wǎng)絡的節(jié)點數(shù)目多,業(yè)務量大,在網(wǎng)絡控制規(guī)則發(fā)生變化時,需要大量的更新流表。而在衛(wèi) 星網(wǎng)絡中,衛(wèi)星節(jié)點的數(shù)目不多,且衛(wèi)星網(wǎng)絡所承擔的業(yè)務量相對地面網(wǎng)絡來說較少,此外 由于衛(wèi)星網(wǎng)絡特殊的網(wǎng)絡環(huán)境,衛(wèi)星節(jié)點間的相對距離較大,使得衛(wèi)星網(wǎng)絡相比地面網(wǎng)絡 具有較大的網(wǎng)絡延時。如衛(wèi)星網(wǎng)絡中GE0(高軌衛(wèi)星網(wǎng)絡)節(jié)點對地面的延時多達一百多毫 秒,而且衛(wèi)星網(wǎng)絡的惡劣的空間環(huán)境使得網(wǎng)絡中的延遲問題加劇。同時衛(wèi)星網(wǎng)絡的動態(tài)拓 撲,使得網(wǎng)絡環(huán)境不穩(wěn)定,星間、星地間鏈路的切換使得業(yè)務傳輸過程中所經路徑切換頻 繁,會造成網(wǎng)絡控制規(guī)則頻繁變化,控制器需要不斷的收集網(wǎng)絡狀態(tài),制定路由策略以及更 新流表規(guī)則。
[0006] 不一致時延是用來判斷計算的路徑中各交換機節(jié)點是否存在邏輯不一致的情況, 若交換機m到控制器的延時^大于路徑中源交換機節(jié)點到控制器的延時 C1與路徑中前m個節(jié) 點的鏈路延遲之和,則認為交換機m存在不一致時延,則不一致時延At = cm-ci-前m個節(jié)點 鏈路之和,那么在網(wǎng)絡對該路徑更新流表時,交換機m的流表生效所需要的時間較長,會發(fā) 生在數(shù)據(jù)包到達交換機m時,交換機m的流表仍然沒有生效的情況;若不存在不一致時延,A t = 0〇
【發(fā)明內容】
[0007] 針對衛(wèi)星網(wǎng)絡的網(wǎng)絡延遲大,動態(tài)拓撲的特性,本發(fā)明分別從控制時延、流表寫入 時延以及切換來考慮在衛(wèi)星網(wǎng)絡中的流表一致性優(yōu)化問題,進一步優(yōu)化了流表一致性,提 高了衛(wèi)星網(wǎng)絡的可靠性和穩(wěn)定性。
[0008] 本發(fā)明通過以下技術放案來實現(xiàn):
[0009] 一種基于軟件定義衛(wèi)星網(wǎng)絡的流表更新方法,包括以下步驟:
[0010] (101)控制器計算新路徑中各交換機的不一致時延,若新路徑中存在不一致時延, 則控制器按照不一致時延的降序來調整下發(fā)流表到交換機的順序;若新路徑中各交換機均 不存在不一致時延,則控制器按照新路徑中各交換機的先后順序依次下發(fā)流表到各交換 機;
[0011] (102)把各交換機的流表項分為新增流表項、刪除流表項、更改流表項以及共同流 表項四類;
[0012] (103)將新路徑與原始路徑對比分析,通過判斷交換機的流表項屬于哪一類并執(zhí) 行相應的下發(fā)流表策略。
[0013] 其中,步驟(101)中控制器按照不一致時延的降序來調整下發(fā)流表到交換機的順 序,具體為:控制器按照不一致時延的由大到小的順序對新路徑中的交換機下發(fā)流表。
[0014] 一種基于軟件定義衛(wèi)星網(wǎng)絡的流表一致性優(yōu)化方法,包括路由決策方法和所述的 一種基于軟件定義衛(wèi)星網(wǎng)絡的流表更新方法;將路由決策方法所得的最優(yōu)路徑作為流表更 新方法的新路徑。
[0015] 其中,所述的路由決策方法具體包括步驟:
[0016] (201)將最小下發(fā)時延路徑與最大相似度路徑結合,構造雙目標函數(shù);
[0017] 所述的雙目標函數(shù)為:min( EmePCm+ A tmax)與maxRi,其中,Cm為交換機m至丨」控制器的 控制時延,P為軟件定義衛(wèi)星網(wǎng)絡中源節(jié)點到目的節(jié)點的可達路徑集,A tmax為可達路徑中 各個交換機不一致時延的最大值,Ri為路徑i與原始路徑的路徑相似度;
[0018] (202)將雙目標函數(shù)轉換為單目標函數(shù),將滿足單目標函數(shù)的路徑作為最優(yōu)路徑;
[0019] 所述的單目標函數(shù)為:min[a( EmePcm+A tmax)+邱'(1-Ri)],其中,f為歸一化因 子,a和0分別為兩個目標的權重系數(shù),代表兩個目標的相對重要程度,且a+P= 1。
[0020] 其中,所述的最小下發(fā)時延路徑的獲得包括以下步驟:
[0021] (301)軟件定義衛(wèi)星網(wǎng)絡中的控制器根據(jù)當前網(wǎng)絡拓撲和當前網(wǎng)絡參數(shù)計算源節(jié) 點到目的節(jié)點的所有可達路徑,并將所有可達路徑生成可達路徑集;所述的網(wǎng)絡參數(shù)包含 各個節(jié)點信息和延遲信息,網(wǎng)絡拓撲包含鏈路連接關系、鏈路延遲以及網(wǎng)絡中交換機和控 制器之間的控制延遲;
[0022] (302)分別計算各可達路徑的中的每個交換機的不一致時延;
[0023] (303)找出可達路徑中所有滿足目標函數(shù)min( EmePcm+ A tmax)的路徑;其中,~為 交換機m到控制器的控制時延,P為軟件定義衛(wèi)星網(wǎng)絡中源節(jié)點到目的節(jié)點的可達路徑集, A tmax為可達路徑中各個交換機不一致時延的最大值;
[0024] (304)判斷步驟(303)所得路徑的傳播延時是否小于等于路徑時延指標,并將小于 等于路徑時延指標的路徑作為最小下發(fā)時延路徑。
[0025]其中,所述的最大相似度路徑的獲得具體包括以下步驟:
[0026] (401)軟件定義衛(wèi)星網(wǎng)絡中的控制器根據(jù)當前網(wǎng)絡拓撲和當前網(wǎng)絡參數(shù)計算源節(jié) 點到目的節(jié)點的所有可達路徑,并將所有可達路徑生成可達路徑集;
[0027] (402)分別計算原始路徑與各可達路徑中表示每個交換機狀態(tài)的節(jié)點狀態(tài)矩陣; 所述的節(jié)點狀態(tài)矩陣為:在路徑中經過的交換機,在節(jié)點狀態(tài)矩陣的對應元素為1;在路徑 中不經過的交換機,在節(jié)點狀態(tài)矩陣的對應元素為0;
[0028] (403)分別計算各可達路徑與原始路徑之間的相似矩陣;所述的相似矩陣為:可達 路徑與原始路徑都經過同一交換機或者都不經過同一交換機,在相似矩陣的對應元素為1; 否則,在相似矩陣的對應元素為〇;
[0029] (404)根據(jù)相似矩陣計算各可達路徑與原始路徑的路徑相似度,將路徑相似度最 大的路徑作為最大相似度路徑。
[0030] 其中,步驟(404)所述的路徑相似度計算具體為:其中,心為路徑i與 原始路徑的路徑相似度,對為路徑i與原始路徑的相似矩陣,n為軟件定義衛(wèi)星網(wǎng)絡中的交 換機個數(shù)。
[0031]本發(fā)明具有以下創(chuàng)新點:
[0032] (1)將基于下發(fā)時延的流表一致性優(yōu)化方法和基于路徑相似度的流表一致性優(yōu)化 方法結合,在判斷一致性的基礎上求出從源交換機節(jié)點到目的交換機節(jié)點的具有最短下發(fā) 延遲的路徑,同時在衛(wèi)星網(wǎng)絡發(fā)生切換時,新舊路徑相似度較高,從而在對路徑中交換機更 新流表時,所需的下發(fā)延時以及寫入延時都較小,從而降低流表更新過程的總延時;
[0033] (2)通過調整交換機的下發(fā)順序,減少交換機到控制器的時延對流表不一致的影 響,通過對新舊流表進行分類處理,減少下發(fā)流表項的數(shù)目來達到減少流表項的寫入時間, 從而減少流表更新的總時延。
【附圖說明】
[0034] 圖1為本發(fā)明的最優(yōu)路徑選擇流程圖;
[0035] 圖2為本發(fā)明的流表更新流程圖;
[0036]圖3為本發(fā)明基于最短下發(fā)時延的路由決策中的網(wǎng)絡物理拓撲圖;
[0037]圖4為本發(fā)明基于路徑相似度的路由決策中的網(wǎng)絡切換前后路徑差異圖;
[0038]圖5為本發(fā)明的流表更新示意圖。 具體實施方案
[0039] 為了便于本領域普通技術人員理解和實施本發(fā)明,下面結合附圖和實施例對本發(fā) 明作進一步的詳細描述,應當理解,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全 部的實施例。
[0040] I、軟件定義衛(wèi)星網(wǎng)絡中基于下發(fā)延時的路由決策方法,具體包括以下步驟:
[0041] 步驟1:控制器根據(jù)網(wǎng)絡物理拓撲,計算網(wǎng)絡鏈路延遲矩陣以及各個交換機到控制 器的延遲集合,將鏈路延遲標識在鏈路上,節(jié)點上標識的是節(jié)點號以及該節(jié)點到交換機的 延遲;
[0042] 實施例:如圖3所示,該衛(wèi)星網(wǎng)絡中共有7個節(jié)點,9條鏈路(eneneAe^e^e^, e46,e57,e67),圖3中給出了各條鏈路的延遲,以及交換機到控制器的延時。
[0043]步驟2:軟件定義衛(wèi)星網(wǎng)絡中的控制器根據(jù)當前網(wǎng)絡參數(shù)計算源節(jié)點到目的節(jié)點 的所有可達路徑,并將所有可達路徑生成可達路徑集;
[0044] 所述的網(wǎng)絡參數(shù)包含各個節(jié)點信息和延遲信息,網(wǎng)絡拓撲包含鏈路的連接關系、 鏈路延遲以及網(wǎng)絡中交換機節(jié)點和控制器之間的控制延遲。
[0045] 實施例:假設源節(jié)點和目的節(jié)點分別為節(jié)點1和節(jié)點7,則根據(jù)當前網(wǎng)絡參數(shù)利用 深度遍歷算法計算節(jié)點1與節(jié)點7之間所有可達路徑,有(1,2,5,7,0,0,0),(1,2,3,7,0,0, 0),(1,2,3,6,7,0,0),(1,4,6,7,0,0,0),(1,4,6,3,7,0,0),(1,4,6,3,2,5,7)。
[0046] 步驟3:計算所有可達路徑中的每個交換機是否存在不一致時延At;
[0047] 實施例:所有可達路徑中只有路徑(1,2,5,7,0,0,0)存在不一致時延,不一致時延 的最大值A tmax值為4,其他可達路徑的A tmaxS〇。
[0048] 步驟4:計算每條可達路徑中所有節(jié)點到控制器的控制時延之和;
[0049]實施例:所有可達路徑的控制時延之和分別為25,21,27,21,29,43。
[0050] 步驟5:結合步驟3和步驟4計算滿足min( EmePCm+ A tmax)的路徑;
[0051] 實施例:選擇結果為路徑(1,2,3,7,0,0,0)和(1,4,6,7,0,0,0)。
[0052] 步驟6:判斷步驟5所得路徑的傳播延時是否小于等于路徑時延指標,并將小于等 于路徑時延指標的路徑作為最小下發(fā)時延路徑。
[0053] n、軟件定義衛(wèi)星網(wǎng)絡中基于路徑相似度的路由決策方法,具體步驟如下:
[0054] 步驟1:控制器根據(jù)當前網(wǎng)絡拓撲和當前網(wǎng)絡參數(shù)計算源節(jié)點到目的節(jié)點的所有 可達路徑,并將所有可達路徑生成可達路徑集;
[0055] 所述的網(wǎng)絡參數(shù)包含各個節(jié)點信息和延遲信息,網(wǎng)絡拓撲包含鏈路的連接關系、 鏈路延遲以及網(wǎng)絡中交換機節(jié)點和控制器之間的控制延遲。
[0056] 步驟2:分別計算原始路徑與各可達路徑中表示每個交換機狀態(tài)的節(jié)點狀態(tài)矩陣;
[0057] 假設網(wǎng)絡中共有n個節(jié)點,則心=(茍,尨,。.,沒)表示網(wǎng)絡切換前的原始路徑中各 交換機狀態(tài),右=(對,對(1彡i彡q)表示網(wǎng)絡切換后的可達路徑i中各交換機狀態(tài),q 為可達路徑的個數(shù);若路徑經過交換機k( 1 <k<n),則讀=1,&fc=U反之,若路徑不經過交 換機k,則4=0,對=0;
[0058] 實施例:如圖4所示,假設從節(jié)點Si到節(jié)點S14切換前的原始路徑為(Si,S3,S4, S5,S6, 310,311,312,313,314),則原始路徑的節(jié)點狀態(tài)矩陣父4=(1,0,1,1,1,1,0,0,0,1,1,1,1,1)。
[0059] 當51與53斷開連接后,控制器根據(jù)收到的數(shù)據(jù)包中業(yè)務源和目的IP以及網(wǎng)絡拓撲 結構計算3 1節(jié)點與S14節(jié)點之間的新的所有可達路徑集有兩種,分別為路徑一 (&,&々,&〇, Sn,S12,S13,Sw)和路徑二(Si,S2,S7,S8,S 9,S1Q,Sn,S12,S13,Sw),則各可達路徑節(jié)點狀態(tài)矩陣
[0060] 步驟3:分別計算各可達路徑與原始路徑之間的相似矩陣;
[0061 ]相似矩陣S = [ Si,S2,…,Sq],&=兩,減,,免],當衫=對,即當可達路徑與原始路徑 都經過交換機k或都不經過交換機k時,Sf=1,否則Sf=0;
[0062] 實施例:對比可知路徑一、路徑二分別于原始路徑的相似矩陣分別SSiidJ,。, 0,1,1,1,1,1,1,1,1,1,1)、S 2=(1,0,0,0,0,0,0,0,0,1,1,1,1,1)〇
[0063] 步驟4:根據(jù)相似矩陣計算各可達路徑與原始路徑的路徑相似度,將路徑相似度最 大的路徑作為最大相似度路徑。
[0064] 路徑相似度和=EL:L^/n;其中,#為路徑i與原始路徑的相似矩陣,n為軟件定義 衛(wèi)星網(wǎng)絡中的交換機個數(shù)。
[0065] 實施例:計算路徑一、路徑二的路徑相似度分別為心=6/7、1?2 = 3/7,所以,選擇路 徑一為最大相似度路徑。
[0066] m、一種基于軟件定義衛(wèi)星網(wǎng)絡的路由決策方法,具體包括步驟:
[0067]步驟1:將I得到的最小下發(fā)時延路徑與n得到的最大相似度路徑結合,構造雙目 標函數(shù);
[0068] 所述的雙目標函數(shù)為:min( Emepcm+ a tmax)與maxRi,其中,Cm為交換機m到控制器的 控制時延,P為軟件定義衛(wèi)星網(wǎng)絡中軟件定義衛(wèi)星網(wǎng)絡中源節(jié)點到目的節(jié)點的可達路徑集, A tmax為可達路徑中各個交換機不一致時延的最大值,h為路徑i與原始路徑的路徑相似 度。
[0069] 其中,最小下發(fā)時延路徑的獲得方式還可以采用現(xiàn)有技術中的基于平均時延的 SDN控制邏輯一致性解決方案(CLCBAD) XLCBAD方法的中心思想是首先對網(wǎng)絡節(jié)點間、節(jié)點 與SDN控制器之間的網(wǎng)絡時延進行平均測量,然后通過改變下發(fā)控制規(guī)則的次序和時間而 使SDN網(wǎng)絡到達邏輯控制一致。考慮延時對流表一致性的影響,根據(jù)交換機的不一致延時建 立了路由優(yōu)化模型,通過選取不存在不一致性問題的交換機,得到SDN網(wǎng)絡邏輯一致的時延 最小路由路徑。
[0070] 步驟2:將雙目標函數(shù)轉換為單目標函數(shù),將滿足單目標函數(shù)的路徑作為最優(yōu)路 徑;
[0071 ] 所述的單目標函數(shù)為:min [ a ( E mePcm+ A tmax) +ef(l-Ri)],其中,為歸一化因 子,a和0分別為兩個目標的權重系數(shù),代表兩個目標的相對重要程度,且a+P= 1。
[0072] IV、一種基于軟件定義衛(wèi)星網(wǎng)絡的流表更新方法,包括以下步驟:
[0073] 步驟1:由I、n、m或者常規(guī)方法確定最優(yōu)路徑;
[0074] 實施例:如圖5所不,網(wǎng)絡路徑從原始路徑S14S2-S34S5-S6切換到最優(yōu)路徑S1 -S2-S4-S6。
[0075] 步驟2:控制器檢查最優(yōu)路徑是否存在不一致時延問題,若存在,則控制器需要對 交換機下發(fā)流表的順序進行調整,并按照調整后的順序下發(fā)流表;若不存在,則按照路徑節(jié) 點的先后順序依次下發(fā)流表;
[0076] 控制器需要對交換機下發(fā)流表的順序進行調整,并按照調整后的順序下發(fā)流表, 具體包括步驟:
[0077] (201)將最優(yōu)路徑中所有交換機的不一致時延A tk按從大到小的順序依次放入隊 列L中;
[0078] (202)設置一個定時器T,初始化T= A tkmax;
[0079] (203)定時器T開始工作,判斷定時器T的值是否為0,若T = 0,轉到步驟3;否則若T =A tk,則轉到步驟(204),否則轉到步驟(205);
[0080] (204)對交換機k下發(fā)流表,并刪除隊列L中的第一個元素;
[00811 (205)定時器遞減一個時鐘周期,轉到步驟(203)。
[0082] 步驟3:把各交換機的流表項分為新增流表項、刪除流表項、更改流表項以及共同 流表項四類;
[0083] 實施例:交換機S4需要增加一條將數(shù)據(jù)包轉給S6的流表項,交換機S3、S5需要刪除 舊路由流表項,交換機S2則需要將原先的操作更改為將數(shù)據(jù)包轉發(fā)給S4。
[0084] 步驟4:將最優(yōu)路徑與原始路徑對比分析,通過判斷交換機的流表項屬于哪一類并 執(zhí)行相應的下發(fā)流表策略。
[0085] 可以把交換機的流表項分為新增、刪除、更改以及共同流表項四類,通過判斷交換 機的流表項屬于哪一類并執(zhí)行相應的下發(fā)流表策略,如果屬于新增流表項,則執(zhí)行新增操 作,同理可類比于刪除與更改流表項,如果屬于共同流表項,則不更新該交換機的流表項。
[0086] 實施例:當發(fā)生切換后,數(shù)據(jù)包到達交換機S2,S2將數(shù)據(jù)上傳給控制器,控制器根 據(jù)下發(fā)順序,增加 S4中的流表項,然后等待一個S2到S6的延時,刪除S3、S5的流表項,然后更 改S2的流表操作,最后控制器將原先從S2接收到的數(shù)據(jù)包再發(fā)回給S2,該數(shù)據(jù)包就會按照 新的流表進行轉發(fā)。
[0087] V、一種針對軟件定義衛(wèi)星網(wǎng)絡的流表一致性優(yōu)化方法,包括網(wǎng)絡感知、路由決策 和流表更新三個部分。
[0088]網(wǎng)絡感知包括鏈路發(fā)現(xiàn)和拓撲管理,實時監(jiān)測衛(wèi)星網(wǎng)絡全局狀態(tài),維護衛(wèi)星網(wǎng)絡 中不同時刻的拓撲圖,并及時更新網(wǎng)絡的拓撲狀態(tài)及事件。
[0089] 路由決策的方法提出了兩種,分別為基于下發(fā)延時的路由決策方法和基于路徑相 似度的路由決策方法。
[0090] 基于下發(fā)延時的流表一致性優(yōu)化根據(jù)網(wǎng)絡參數(shù)計算源節(jié)點和目的節(jié)點之間的所 有可達路徑集,在判斷一致性的基礎上求出從源交換機節(jié)點到目的交換機節(jié)點的具有最短 下發(fā)延時的路徑,從而在對路徑中交換機更新流表時,所需的下發(fā)延時最小;基于路徑相似 度的流表一致性優(yōu)化是當網(wǎng)絡發(fā)生切換后重新計算源節(jié)點和目的節(jié)點之間的所有可達路 徑,從中選擇路徑相似度最大的路徑作為最優(yōu)路徑,從而在網(wǎng)絡發(fā)生切換更新流表時需要 更新的節(jié)點數(shù)目最少,所需的寫入時延也最小。
[0091] 流表更新從調整路徑中交換機的下發(fā)先后順序和對新舊流表進行分類兩個方面 減小更新延時。
[0092] 流表更新策略中,一是調整路徑中交換機的下發(fā)先后順序,流表下發(fā)的先后順序 與路徑中各交換機的不一致時延的大小相關,先對路徑中不一致時延最大的交換機下發(fā)流 表;二是對新舊流表進行分類,將流表項分為新增流表項、刪除流表項、更改流表項以及共 同流表項四類。
[0093]應當理解的是,以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡 在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保 護范圍之內。
【主權項】
1. 一種基于軟件定義衛(wèi)星網(wǎng)絡的流表更新方法,其特征在于,包括以下步驟: (101) 控制器計算新路徑中各交換機的不一致時延,若新路徑中存在不一致時延,則控 制器按照不一致時延的降序來調整下發(fā)流表到交換機的順序;若新路徑中各交換機均不存 在不一致時延,則控制器按照新路徑中各交換機的先后順序依次下發(fā)流表到各交換機; (102) 把各交換機的流表項分為新增流表項、刪除流表項、更改流表項以及共同流表項 四類; (103) 將新路徑與原始路徑對比分析,通過判斷交換機的流表項屬于哪一類并執(zhí)行相 應的下發(fā)流表策略。2. 根據(jù)權利要求1所述的一種基于軟件定義衛(wèi)星網(wǎng)絡的流表更新方法,其特征在于,步 驟(101)中控制器按照不一致時延的降序來調整下發(fā)流表到交換機的順序,具體為:控制器 按照不一致時延的由大到小的順序對新路徑中的交換機下發(fā)流表。3. -種基于軟件定義衛(wèi)星網(wǎng)絡的流表一致性優(yōu)化方法,其特征在于,包括路由決策方 法和如權利要求1所述的一種基于軟件定義衛(wèi)星網(wǎng)絡的流表更新方法;將路由決策方法所 得的最優(yōu)路徑作為流表更新方法的新路徑。4. 根據(jù)權利要求3所述的一種基于軟件定義衛(wèi)星網(wǎng)絡的流表一致性優(yōu)化方法,其特征 在于,所述的路由決策方法具體包括步驟: (201) 將最小下發(fā)時延路徑與最大相似度路徑結合,構造雙目標函數(shù); 所述的雙目標函數(shù)為:m i η ( Σ mePCm+ Λ tmax )與maxRi,其中,Cm為交換機m到控制器的控制 時延,P為軟件定義衛(wèi)星網(wǎng)絡中源節(jié)點到目的節(jié)點的可達路徑集,Atmax為可達路徑中各個 交換機不一致時延的最大值,心為路徑i與原始路徑的路徑相似度; (202) 將雙目標函數(shù)轉換為單目標函數(shù),將滿足單目標函數(shù)的路徑作為最優(yōu)路徑; 所述的單目標函數(shù)為:min[a( EmePCm+AtmaxHP^ (1-Ri)],其中,f為歸一化因子,α和β 分別為兩個目標的權重系數(shù),代表兩個目標的相對重要程度,且α+β= 1。5. 根據(jù)權利要求4所述的一種基于軟件定義衛(wèi)星網(wǎng)絡的流表一致性優(yōu)化方法,其特征 在于,所述的最小下發(fā)時延路徑的獲得包括以下步驟: (301) 軟件定義衛(wèi)星網(wǎng)絡中的控制器根據(jù)當前網(wǎng)絡拓撲和當前網(wǎng)絡參數(shù)計算源節(jié)點到 目的節(jié)點的所有可達路徑,并將所有可達路徑生成可達路徑集;所述的網(wǎng)絡參數(shù)包含各個 節(jié)點信息和延遲信息,網(wǎng)絡拓撲包含鏈路連接關系、鏈路延遲以及網(wǎng)絡中交換機和控制器 之間的控制延遲; (302) 分別計算各可達路徑的中的每個交換機的不一致時延; (303) 找出可達路徑中所有滿足目標函數(shù)min( ΣmePCm+Atmax)的路徑;其中,^為交換機 m到控制器的控制時延,P為軟件定義衛(wèi)星網(wǎng)絡中源節(jié)點到目的節(jié)點的可達路徑集,八丨_為 可達路徑中各個交換機不一致時延的最大值; (304) 判斷步驟(303)所得路徑的傳播延時是否小于等于路徑時延指標,并將小于等于 路徑時延指標的路徑作為最小下發(fā)時延路徑。6. 根據(jù)權利要求4所述的一種基于軟件定義衛(wèi)星網(wǎng)絡的流表一致性優(yōu)化方法,其特征 在于,所述的最大相似度路徑的獲得具體包括以下步驟: (401)軟件定義衛(wèi)星網(wǎng)絡中的控制器根據(jù)當前網(wǎng)絡拓撲和當前網(wǎng)絡參數(shù)計算源節(jié)點到 目的節(jié)點的所有可達路徑,并將所有可達路徑生成可達路徑集; (402) 分別計算原始路徑與各可達路徑中表示每個交換機狀態(tài)的節(jié)點狀態(tài)矩陣;所述 的節(jié)點狀態(tài)矩陣為:在路徑中經過的交換機,在節(jié)點狀態(tài)矩陣的對應元素為1;在路徑中不 經過的交換機,在節(jié)點狀態(tài)矩陣的對應元素為0; (403) 分別計算各可達路徑與原始路徑之間的相似矩陣;所述的相似矩陣為:可達路徑 與原始路徑都經過同一交換機或者都不經過同一交換機,在相似矩陣的對應元素為1;否 貝1J,在相似矩陣的對應元素為〇; (404) 根據(jù)相似矩陣計算各可達路徑與原始路徑的路徑相似度,將路徑相似度最大的 路徑作為最大相似度路徑。7.根據(jù)權利要求6所述的一種基于軟件定義衛(wèi)星網(wǎng)絡的流表一致性優(yōu)化方法,其特征 在于,步驟(404)所述的路徑相似度計算具體為:其中,R,為路徑i與原始路徑 的路徑相似度,筇為路徑i與原始路徑的相似矩陣,η為軟件定義衛(wèi)星網(wǎng)絡中的交換機個數(shù)。
【文檔編號】H04B7/185GK105959221SQ201610488363
【公開日】2016年9月21日
【申請日】2016年6月29日
【發(fā)明人】汪春霆, 張翠平, 盧寧寧, 付文亮, 張海鵬, 楊悅
【申請人】中國電子科技集團公司第五十四研究所