專利名稱:航空電信網(wǎng)的動態(tài)負(fù)載分配方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種基于航空電信網(wǎng)(Aeronautical TelecommunicationsNetwork,簡稱ATN)路由器與路由器之間合理利用相等最小代價(jià)的多條路徑的動態(tài)負(fù)載分配方法,屬于網(wǎng)絡(luò)通信領(lǐng)域。
背景技術(shù):
在鏈路狀態(tài)路由協(xié)議中,存在相等最小代價(jià)路徑的問題。路由區(qū)域中的每個(gè)結(jié)點(diǎn)都周期性地泛洪鏈路狀態(tài)信息,使得區(qū)域中的每一個(gè)結(jié)點(diǎn)都維持著一個(gè)相同的鏈路狀態(tài)數(shù)據(jù)庫。鏈路狀態(tài)路由協(xié)議根據(jù)鏈路狀態(tài)數(shù)據(jù)庫,采用迪杰斯特拉算法(Dijkstra’s algorithm,用于解決有向圖中最短路徑問題),計(jì)算最短路徑。但在實(shí)際應(yīng)用中,對于到達(dá)同一個(gè)目的地址的數(shù)據(jù)包可能計(jì)算出多條最短路徑。當(dāng)沒有算法控制時(shí),多條最短路徑被認(rèn)為是一種冗余,數(shù)據(jù)包被任意地從某個(gè)路徑轉(zhuǎn)發(fā)。然而隨著網(wǎng)絡(luò)負(fù)載的增加,合理地利用相等最小代價(jià)的多條路徑已變得非常重要。
目前解決路由域中存在多個(gè)最短路徑時(shí)選路的問題時(shí)通常采用的是等代價(jià)多路徑(Equal Cost Multi-path,簡稱ECMP)技術(shù)和優(yōu)化的多路徑(Optimized Multi-path,簡稱OMP)技術(shù)。
1、ECMP技術(shù)ECMP是一種在出現(xiàn)多路徑的結(jié)點(diǎn)上均勻分配流量的算法。ECMP算法不根據(jù)鏈路負(fù)載來進(jìn)行流量分配,即不考慮路徑下游的情況,只是簡單地把數(shù)據(jù)包均勻分配給各路徑。目前,實(shí)現(xiàn)ECMP的方法有三種(1)數(shù)據(jù)包循環(huán)轉(zhuǎn)發(fā)(Round Robin)數(shù)據(jù)包循環(huán)轉(zhuǎn)發(fā)(Round Robin)算法的優(yōu)點(diǎn)是實(shí)現(xiàn)了流量在各個(gè)等價(jià)最短路徑的均勻分配,但由于輪換地從每個(gè)路徑轉(zhuǎn)發(fā),不能保證數(shù)據(jù)包原有的順序。對于在傳輸層采用面向連接的協(xié)議來說,各條等價(jià)路徑的延遲差較長時(shí),傳輸層的數(shù)據(jù)包順序被打亂,將影響協(xié)議的性能。但當(dāng)各條等價(jià)鏈路的時(shí)延相近,或路由協(xié)議的鏈路代價(jià)尺度采用時(shí)延尺度時(shí),Round Robin算法仍舊可以實(shí)現(xiàn)流量的均勻分配。在航空電信網(wǎng)ATN中,當(dāng)代價(jià)尺度采用時(shí)延尺度時(shí),或各個(gè)等價(jià)路徑的時(shí)延相近時(shí),包循環(huán)轉(zhuǎn)發(fā)(Round Robin)算法可以很好地實(shí)現(xiàn)流量分配。
(2)在轉(zhuǎn)發(fā)目錄表中,根據(jù)目的地址前綴選擇下一跳根據(jù)目的地址前綴選擇下一跳方法,這種方法進(jìn)行的流量分配很粗略。由于地址前綴很短,在一個(gè)有多個(gè)路徑的結(jié)點(diǎn)處,容易使大量數(shù)據(jù)分組從同一個(gè)路徑轉(zhuǎn)發(fā),從而不能達(dá)到流量的最佳分配。
(3)基于源地址、目的地址對的哈希(Hash)函數(shù)法轉(zhuǎn)發(fā)該算法將Hash函數(shù)作用于數(shù)據(jù)包的源地址和目的地址,生成一個(gè)2個(gè)字節(jié)的數(shù)值,根據(jù)該數(shù)值確定轉(zhuǎn)發(fā)路徑。這樣,對于有相同源地址、目的地址的數(shù)據(jù)包來說,在有多個(gè)最短徑的結(jié)點(diǎn)處可保證從同一條路徑轉(zhuǎn)發(fā),避免了接收端的數(shù)據(jù)包失序問題。基于源地址、目的地址對的Hash函數(shù)循環(huán)冗余校驗(yàn)碼(Cyclic Redundancy Check,簡稱CRC)轉(zhuǎn)發(fā)的具體方法如下首先,在存在等價(jià)多路徑的結(jié)點(diǎn)上,Hash函數(shù)算法將兩個(gè)字節(jié)的CRC的取值范圍0~65535均勻分配給每一個(gè)路徑,使得每個(gè)路徑有一個(gè)相等的取值空間。當(dāng)一個(gè)分組到達(dá)時(shí),查找轉(zhuǎn)發(fā)路由表,如果有多于一個(gè)下一跳轉(zhuǎn)發(fā)地址,基于源地址和目的地址用Hash函數(shù)計(jì)算一下CRC校驗(yàn)值,然后找出CRC值落在哪一個(gè)路徑空間,該分組就從哪個(gè)路徑轉(zhuǎn)發(fā)。
基于源地址、目的地址對的Hash函數(shù)轉(zhuǎn)發(fā)的方法在統(tǒng)計(jì)上實(shí)現(xiàn)各路徑均勻轉(zhuǎn)發(fā),并且考慮到了相同源地址、目的地址數(shù)據(jù)包的順序性,但是,該算法沒有考慮到網(wǎng)絡(luò)的實(shí)時(shí)變化情況,只是實(shí)現(xiàn)了均勻流量分配,而不能根據(jù)網(wǎng)絡(luò)狀況分配流量,不能實(shí)現(xiàn)最佳流量分配。
2、OMP技術(shù)當(dāng)多條等價(jià)路徑出現(xiàn)時(shí),在各等價(jià)路徑上平均分配數(shù)據(jù)流往往不是最佳的方法。由于它沒有考慮到下游結(jié)點(diǎn)和鏈路負(fù)載的動態(tài)變化情況,就可能造成在多條等價(jià)路徑結(jié)點(diǎn)的下游一些路徑擁塞時(shí),另一些路徑卻閑置的情況。
OMP技術(shù)正是基于這種考慮,在網(wǎng)絡(luò)運(yùn)行中采用了一種動態(tài)地分配數(shù)據(jù)流的方法。該方法可以根據(jù)網(wǎng)絡(luò)的動態(tài)流量變化,非均勻地轉(zhuǎn)發(fā)數(shù)據(jù)包。在開放最短路徑優(yōu)先(Open shortest path first,簡稱OSPF)OMP協(xié)議中,通過泛洪鏈路狀態(tài)來通告區(qū)域內(nèi)的鏈路負(fù)載情況;通過泛洪路徑狀態(tài)來通告區(qū)域間的鏈路負(fù)載狀況。
但是,OMP算法的缺點(diǎn)是每隔15秒一次的泛洪對網(wǎng)絡(luò)流量的估測并不精確,對于15秒之內(nèi)的突發(fā)業(yè)務(wù)流,OMP技術(shù)顯得無能為力,此外,泛洪加重了網(wǎng)絡(luò)的負(fù)擔(dān),額外地占用了網(wǎng)絡(luò)資源。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于ATN路由器與路由器之間合理地利用相等最小代價(jià)的多條路徑的動態(tài)負(fù)載分配方法,以解決路由域中存在多個(gè)等價(jià)最短路徑時(shí)選路的問題,克服現(xiàn)有技術(shù)不能根據(jù)鏈路負(fù)載來進(jìn)行流量分配或不能實(shí)時(shí)根據(jù)下游結(jié)點(diǎn)和鏈路負(fù)載的動態(tài)變化情況分配網(wǎng)絡(luò)流量的缺點(diǎn),從而合理地利用相等最小代價(jià)的多條路徑,有效地調(diào)節(jié)網(wǎng)絡(luò)流量,更好地利用網(wǎng)絡(luò)資源。
為實(shí)現(xiàn)上述目的,本發(fā)明的下述實(shí)施例包括在一個(gè)路由區(qū)域中包括一個(gè)或一個(gè)以上具有多條等效最短路徑的上游結(jié)點(diǎn)和位于所述上游結(jié)點(diǎn)下游路徑中一個(gè)或一個(gè)以上具有一條或多條等效最短路徑的下游結(jié)點(diǎn);所述上游結(jié)點(diǎn)收到所述下游結(jié)點(diǎn)發(fā)來的擁塞發(fā)生報(bào)告后,將此后收到的、具有同一目的地的無連接網(wǎng)絡(luò)協(xié)議(Connectionless Network Protocol,簡稱CLNP)數(shù)據(jù)包更多地由所述上游結(jié)點(diǎn)其他等效最短路徑發(fā)送。
本發(fā)明實(shí)施例所述的航空電信網(wǎng)的動態(tài)負(fù)載分配方法還包括所述上游結(jié)點(diǎn)在所述下游結(jié)點(diǎn)的擁塞狀態(tài)解除后,將此后收到的、具有同一目的地的CLNP數(shù)據(jù)包由所述上游結(jié)點(diǎn)擁塞前的等效最短路徑發(fā)送。
所述下游結(jié)點(diǎn)處于偽擁塞狀態(tài)時(shí)向其上游結(jié)點(diǎn)報(bào)告擁塞發(fā)生。
所述下游結(jié)點(diǎn)偽擁塞狀態(tài)解除后,則所述下游結(jié)點(diǎn)向其上游結(jié)點(diǎn)報(bào)告擁塞解除。
若所述上游結(jié)點(diǎn)為此路由區(qū)域中第一個(gè)上游結(jié)點(diǎn),則所述第一個(gè)上游結(jié)點(diǎn)對經(jīng)過的所述CLNP包的選項(xiàng)部分進(jìn)行擴(kuò)展,添加結(jié)點(diǎn)參數(shù),并將擴(kuò)展后的CLNP包繼續(xù)轉(zhuǎn)發(fā)給下游結(jié)點(diǎn);所述結(jié)點(diǎn)參數(shù)至少包括所述上游結(jié)點(diǎn)的地址以及經(jīng)過的所述上游結(jié)點(diǎn)一個(gè)下游路徑的編號值。
若所述上游結(jié)點(diǎn)不是此路由區(qū)域中第一個(gè)上游結(jié)點(diǎn),則CLNP包經(jīng)過所述上游結(jié)點(diǎn)時(shí)刷新包中的結(jié)點(diǎn)參數(shù)選項(xiàng)為當(dāng)前的上游結(jié)點(diǎn)地址和經(jīng)過的當(dāng)前上游結(jié)點(diǎn)的下游路徑的編號值。
上述方案中,上游結(jié)點(diǎn)收到所述下游結(jié)點(diǎn)發(fā)來的擁塞發(fā)生報(bào)告后,將此后收到的、具有同一目的地的CLNP數(shù)據(jù)包由所述上游結(jié)點(diǎn)其他等效最短路徑發(fā)送前還包括所述下游結(jié)點(diǎn)所在的路徑擁塞時(shí),根據(jù)收到的CLNP包的結(jié)點(diǎn)參數(shù),生成一擁塞匯報(bào)數(shù)據(jù)信息;所述下游結(jié)點(diǎn)將生成的擁塞匯報(bào)數(shù)據(jù)信息發(fā)送給所述上游結(jié)點(diǎn)。
將此后收到的、具有同一目的地的CLNP數(shù)據(jù)包由所述上游結(jié)點(diǎn)擁塞前的等效最短路徑發(fā)送前包括所述下游結(jié)點(diǎn)根據(jù)收到的CLNP包的結(jié)點(diǎn)參數(shù),生成一擁塞匯報(bào)數(shù)據(jù)信息;所述下游結(jié)點(diǎn)將生成的擁塞匯報(bào)數(shù)據(jù)信息發(fā)送給所述上游結(jié)點(diǎn)。
其中擁塞匯報(bào)數(shù)據(jù)信息用于下游結(jié)點(diǎn)向上游結(jié)點(diǎn)匯報(bào)下游狀況;所述擁塞匯報(bào)數(shù)據(jù)信息至少包括類型模塊、結(jié)點(diǎn)地址模塊、目的地址模塊及路徑模塊,其中類型為擁塞發(fā)生或擁塞解除,結(jié)點(diǎn)地址模塊為所述下游結(jié)點(diǎn)最鄰近的所述上游結(jié)點(diǎn)地址,即所述CLNP包中結(jié)點(diǎn)參數(shù)的地址,目的地址模塊為所述CLNP包的目的地址,路徑模塊為擁塞發(fā)生或擁塞解除的所述下游結(jié)點(diǎn)所在路徑的編號值,即所述CLNP包中結(jié)點(diǎn)參數(shù)中的路徑編號。
上述方案中,向其上游結(jié)點(diǎn)報(bào)告擁塞發(fā)生前包括所述下游結(jié)點(diǎn)根據(jù)收到的CLNP包的結(jié)點(diǎn)參數(shù),在刷新所述結(jié)點(diǎn)參數(shù)前生成一擁塞匯報(bào)數(shù)據(jù)信息;所述下游結(jié)點(diǎn)將生成的擁塞匯報(bào)數(shù)據(jù)信息發(fā)送給所述上游結(jié)點(diǎn)。
下游結(jié)點(diǎn)向其上游結(jié)點(diǎn)發(fā)送擁塞解除報(bào)告包括所述下游結(jié)點(diǎn)根據(jù)收到的CLNP包的結(jié)點(diǎn)參數(shù),在刷新所述結(jié)點(diǎn)參數(shù)前生成一擁塞匯報(bào)數(shù)據(jù)信息;所述下游結(jié)點(diǎn)將生成的擁塞匯報(bào)數(shù)據(jù)信息發(fā)送給所述上游結(jié)點(diǎn)。
其中擁塞匯報(bào)數(shù)據(jù)信息至少包括類型模塊、結(jié)點(diǎn)地址模塊、目的地址模塊及路徑模塊,其中類型為擁塞發(fā)生或擁塞解除,地址模塊為收到的所述CLNP包刷新前的結(jié)點(diǎn)參數(shù)中的結(jié)點(diǎn)地址,即所述上游結(jié)點(diǎn)的地址,目的地址模塊為所述CLNP包的目的地址,路徑模塊為擁塞發(fā)生或擁塞解除的所述下游結(jié)點(diǎn)所在路徑的編號值,即所述CLNP包中刷新前的結(jié)點(diǎn)參數(shù)中的路徑編號。
本發(fā)明實(shí)施例所述的航空電信網(wǎng)的動態(tài)負(fù)載分配方法還包括在所述路由區(qū)域內(nèi),還包括中間結(jié)點(diǎn),所述中間結(jié)點(diǎn)收到CLNP包時(shí),不添加結(jié)點(diǎn)參數(shù)選項(xiàng),擁塞控制采用通常的ATN擁塞控制方法;所述中間結(jié)點(diǎn)是指在所述第一個(gè)上游結(jié)點(diǎn)之前,不具有多條等價(jià)下游路徑的結(jié)點(diǎn)。
所述路由區(qū)域內(nèi)的第一個(gè)上游結(jié)點(diǎn)擁塞時(shí),所述第一個(gè)上游結(jié)點(diǎn)向其源端系統(tǒng)通告。
若CLNP包在所述路由區(qū)域內(nèi)傳輸時(shí)沒有發(fā)生擁塞,則在所述路由區(qū)域的最后一個(gè)收到所述CLNP包的結(jié)點(diǎn)處刪除結(jié)點(diǎn)參數(shù)選項(xiàng)。
因此,本發(fā)明的一個(gè)實(shí)施例在網(wǎng)絡(luò)中有多條等價(jià)路徑出現(xiàn)時(shí),充分考慮到下游結(jié)點(diǎn)和鏈路負(fù)載的動態(tài)變化情況,合理地利用相等最小代價(jià)的多條路徑,調(diào)節(jié)了網(wǎng)絡(luò)流量,避免了擁塞,有效地提高了網(wǎng)絡(luò)資源利用率。
下面通過附圖和實(shí)施例,對本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
圖1為本發(fā)明具體實(shí)施例對于某一個(gè)數(shù)據(jù)流的通路拓?fù)鋱D;圖2為本發(fā)明具體實(shí)施例一對于結(jié)點(diǎn)2的擁塞處理方法流程圖;圖3為本發(fā)明具體實(shí)施例一對于結(jié)點(diǎn)5的擁塞處理方法流程圖;圖4為本發(fā)明具體實(shí)施例一基于循環(huán)轉(zhuǎn)發(fā)算法的擁塞處理方法示意圖;圖5為本發(fā)明具體實(shí)施例二基于Hash函數(shù)的ECMP的擁塞處理方法示意圖;圖6為本發(fā)明具體實(shí)施例仿真用流量拓?fù)鋱D;圖7為不采用本發(fā)明具體實(shí)施例一的方法沒有擁塞時(shí)隊(duì)列長度仿真圖;圖8為采用本發(fā)明具體實(shí)施例一的方法沒有擁塞時(shí)隊(duì)列長度仿真圖;圖9為不采用本發(fā)明具體實(shí)施例一的擁塞方法時(shí)隊(duì)列長度仿真圖;圖10為采用本發(fā)明具體實(shí)施例一的方法擁塞時(shí)隊(duì)列長度仿真圖;圖11為不采用本發(fā)明具體實(shí)施例二的方法沒有擁塞時(shí)隊(duì)列長度仿真圖;圖12為采用本發(fā)明具體實(shí)施例二的方法沒有擁塞時(shí)隊(duì)列長度仿真圖;圖13為不采用本發(fā)明具體實(shí)施例二的方法擁塞時(shí)隊(duì)列長度仿真圖;圖14為采用本發(fā)明具體實(shí)施例二的方法擁塞時(shí)隊(duì)列長度仿真圖。
具體實(shí)施例方式
針對網(wǎng)絡(luò)中對一個(gè)CLNP包的目的地址具有多條等價(jià)最短路徑的情況,本發(fā)明給出了兩個(gè)具體的實(shí)施例,下面分別描述。
具體實(shí)施例一具體實(shí)施例一將Round Robin ECMP與本發(fā)明的航空電信網(wǎng)的動態(tài)負(fù)載分配方法相結(jié)合,如圖1所示為一個(gè)路由區(qū)域內(nèi)對于某一個(gè)數(shù)據(jù)流的通路拓?fù)鋱D,本發(fā)明針對圖1的通路拓?fù)鋱D的具體實(shí)施例的技術(shù)方案為在一個(gè)路由區(qū)域中,包括一個(gè)或一個(gè)以上具有多條等效最短路徑的上游結(jié)點(diǎn)和位于所述上游結(jié)點(diǎn)下游路徑中一個(gè)或一個(gè)以上具有一條或多條等效最短路徑的下游結(jié)點(diǎn)。圖1中結(jié)點(diǎn)2和結(jié)點(diǎn)5即為所述的上游結(jié)點(diǎn),結(jié)點(diǎn)3、結(jié)點(diǎn)4、結(jié)點(diǎn)5和結(jié)點(diǎn)8為所述上游結(jié)點(diǎn)2的所述下游結(jié)點(diǎn),結(jié)點(diǎn)6和結(jié)點(diǎn)7為所述上游結(jié)點(diǎn)5的所述下游結(jié)點(diǎn),結(jié)點(diǎn)1是中間結(jié)點(diǎn),所謂中間結(jié)點(diǎn)是指在所述第一個(gè)上游結(jié)點(diǎn)之前,不具有多條等價(jià)下游路徑的結(jié)點(diǎn),中間結(jié)點(diǎn)不是本發(fā)明實(shí)施例定義的上游結(jié)點(diǎn)或下游結(jié)點(diǎn)。
在圖1所示的路由區(qū)域內(nèi),中間結(jié)點(diǎn)1收到CLNP包時(shí),還沒有經(jīng)過所述上游結(jié)點(diǎn)2或結(jié)點(diǎn)5,所以在結(jié)點(diǎn)1處不添加結(jié)點(diǎn)參數(shù)選項(xiàng),擁塞控制采用通常的ATN擁塞控制方法。
CLNP包在經(jīng)過第一個(gè)上游結(jié)點(diǎn)即圖1中結(jié)點(diǎn)2時(shí),對所述CLNP包的選項(xiàng)部分進(jìn)行擴(kuò)展,添加結(jié)點(diǎn)參數(shù),擴(kuò)展后的CLNP包繼續(xù)向下游轉(zhuǎn)發(fā);所述結(jié)點(diǎn)參數(shù)至少包括結(jié)點(diǎn)地址和結(jié)點(diǎn)下游路徑編號。結(jié)點(diǎn)地址為結(jié)點(diǎn)2的地址;下游路徑編號是一個(gè)0~255之間的正整數(shù),用于在所述上游結(jié)點(diǎn)處有多個(gè)等價(jià)最短路徑時(shí)記錄該CLNP包所選擇的路徑,這里即為所述CLNP包經(jīng)過的所述結(jié)點(diǎn)2的下游路徑的編號值。上述結(jié)點(diǎn)地址和下游路徑編號統(tǒng)稱為參數(shù)值模塊。
上述結(jié)點(diǎn)參數(shù)除參數(shù)值模塊外還包括參數(shù)代碼、參數(shù)長度等內(nèi)容。所述參數(shù)代碼用于指定結(jié)點(diǎn)參數(shù)的類型,這里設(shè)為二進(jìn)制數(shù)“11111111”,所述參數(shù)長度用于指示參數(shù)值部分的長度,這里參數(shù)長度為3,指示參數(shù)值部分有3個(gè)字節(jié)。
以后當(dāng)又遇到一個(gè)所述上游結(jié)點(diǎn)即圖1中結(jié)點(diǎn)5時(shí),刷新包中的結(jié)點(diǎn)參數(shù)選項(xiàng)為當(dāng)前的結(jié)點(diǎn)5的地址和經(jīng)過的當(dāng)前結(jié)點(diǎn)5的下游路徑的編號值。這樣,CLNP包中的結(jié)點(diǎn)參數(shù)始終保持為經(jīng)過的最鄰近的一個(gè)所述上游結(jié)點(diǎn)的信息。
若CLNP包在圖1的路由區(qū)域內(nèi)傳輸時(shí)沒有發(fā)生擁塞,則在所述路由區(qū)域的最后一個(gè)收到所述CLNP包的結(jié)點(diǎn)處刪除結(jié)點(diǎn)參數(shù)選項(xiàng)。
若CLNP包在圖1的路由區(qū)域內(nèi)傳輸時(shí)發(fā)生了擁塞,根據(jù)擁塞發(fā)生的位置不同,有不同的處理方法。由于本發(fā)明的航空電信網(wǎng)的動態(tài)負(fù)載分配方法針對路由區(qū)域中存在多條等價(jià)最短路徑的情況,因此只分析圖1中與具有多條等價(jià)最短路徑的結(jié)點(diǎn)2和結(jié)點(diǎn)5有關(guān)的擁塞處理方法,下面分別詳細(xì)說明。
如圖2所示,與結(jié)點(diǎn)2有關(guān)的擁塞處理步驟為步驟11上游結(jié)點(diǎn)2收到其一個(gè)下游路徑中的結(jié)點(diǎn)3發(fā)來的擁塞發(fā)生報(bào)告后,將此后收到的、具有同一目的地的CLNP數(shù)據(jù)包更多地由結(jié)點(diǎn)2的其他等效最短路徑2-4-8發(fā)送;步驟13上游結(jié)點(diǎn)2在下游結(jié)點(diǎn)3的擁塞狀態(tài)解除后,將此后收到的、具有同一目的地的CLNP數(shù)據(jù)包由上游結(jié)點(diǎn)2的等效最短路徑發(fā)送2-3-5或2-4-8正常發(fā)送;步驟15結(jié)點(diǎn)2處于偽擁塞狀態(tài)且又收到去往下游路徑的CLNP數(shù)據(jù)包時(shí),由于結(jié)點(diǎn)2是所述路由區(qū)域中第一個(gè)具有多條等價(jià)最短下游路徑的結(jié)點(diǎn),故結(jié)點(diǎn)2采用隨機(jī)早期檢測(Random Early Detecting,簡稱RED)算法或其它擁塞控制算法,向源端端系統(tǒng)通告。
結(jié)點(diǎn)2處于偽擁塞狀態(tài)是指雖然結(jié)點(diǎn)2沒有擁塞發(fā)生,但結(jié)點(diǎn)2的所有下游等價(jià)路徑即路徑2-3-5與路徑2-4-8中都有結(jié)點(diǎn)向結(jié)點(diǎn)2報(bào)告擁塞發(fā)生。
其中步驟13前包括步驟12結(jié)點(diǎn)2判斷結(jié)點(diǎn)3的擁塞是否解除,是則執(zhí)行步驟13,否則執(zhí)行步驟14;步驟14在步驟15前,具體為步驟14判斷結(jié)點(diǎn)2是否處于偽擁塞狀態(tài),是則執(zhí)行步驟15,否則繼續(xù)執(zhí)行步驟11。
上述與結(jié)點(diǎn)2有關(guān)的處理方法中,步驟11前包括步驟111結(jié)點(diǎn)3發(fā)生擁塞時(shí),根據(jù)收到的CLNP包的結(jié)點(diǎn)參數(shù),生成一擁塞匯報(bào)數(shù)據(jù)信息;步驟112結(jié)點(diǎn)3將生成的擁塞匯報(bào)數(shù)據(jù)信息發(fā)送給結(jié)點(diǎn)2。
步驟12前包括步驟121結(jié)點(diǎn)3根據(jù)收到的CLNP包的結(jié)點(diǎn)參數(shù),生成一擁塞匯報(bào)數(shù)據(jù)信息;步驟122結(jié)點(diǎn)3將生成的擁塞匯報(bào)數(shù)據(jù)信息發(fā)送給結(jié)點(diǎn)2。
其中,所述擁塞匯報(bào)數(shù)據(jù)信息用于所述下游結(jié)點(diǎn)向所述上游結(jié)點(diǎn)匯報(bào)下游狀況,所述擁塞匯報(bào)數(shù)據(jù)信息至少包括類型模塊、結(jié)點(diǎn)地址模塊、目的地址模塊及路徑模塊,其中類型為擁塞發(fā)生或擁塞解除,結(jié)點(diǎn)地址模塊為所述下游結(jié)點(diǎn)最鄰近的所述上游結(jié)點(diǎn)地址,即所述CLNP包中結(jié)點(diǎn)參數(shù)的地址,目的地址模塊為所述CLNP包的目的地址,路徑模塊為擁塞發(fā)生或擁塞解除的所述下游結(jié)點(diǎn)所在路徑的編號值,即所述CLNP包中結(jié)點(diǎn)參數(shù)中的路徑編號,上述幾個(gè)模塊分別位于所述擁塞匯報(bào)數(shù)據(jù)信息的三個(gè)部分,即固定部分、地址部分和選項(xiàng)部分中,下面分別詳細(xì)介紹。
擁塞匯報(bào)數(shù)據(jù)信息的固定部分采取與CLNP包相同的報(bào)文格式,包括協(xié)議標(biāo)識、長度指示、版本號、生存時(shí)間、類型、數(shù)據(jù)包長、校驗(yàn)和等字段,其中協(xié)議標(biāo)識為二進(jìn)制“10000001”,特指此為一擁塞匯報(bào)數(shù)據(jù)信息,類型即上述類型模塊,其為二進(jìn)制“00000”時(shí)用于向上游結(jié)點(diǎn)報(bào)告擁塞解除,為“00001”時(shí)用于向上游結(jié)點(diǎn)報(bào)告擁塞發(fā)生;地址部分包括所述上游結(jié)點(diǎn)地址和CLNP包目的地址,均由20字節(jié)組成,上游結(jié)點(diǎn)地址即上述結(jié)點(diǎn)地址模塊,其為所述下游結(jié)點(diǎn)最鄰近的所述上游結(jié)點(diǎn)地址,獲得方法是將本地?fù)砣Y(jié)點(diǎn)處的地址替換成最鄰近的所述上游結(jié)點(diǎn)的地址,上游最鄰近結(jié)點(diǎn)地址可以從上游發(fā)來的CLNP包的結(jié)點(diǎn)參數(shù)中獲得;CLNP包目的地址即上述目的地址模塊,其為上游結(jié)點(diǎn)發(fā)來的所述下游結(jié)點(diǎn)收到的CLNP包的目的地址;選項(xiàng)部分為結(jié)點(diǎn)參數(shù)模塊,其從所述下游結(jié)點(diǎn)收到的CLNP包中的結(jié)點(diǎn)參數(shù)得到,參數(shù)值部分包括上述路徑模塊,其為CLNP包中結(jié)點(diǎn)參數(shù)的參數(shù)值模塊中下游路徑的編號值,即CLNP包所經(jīng)過的所述下游結(jié)點(diǎn)所在路徑的編號值,結(jié)點(diǎn)參數(shù)模塊還包括參數(shù)代碼和參數(shù)長度信息,參數(shù)代碼與CLNP包中的結(jié)點(diǎn)參數(shù)代碼相同為二進(jìn)制“11111111”,參數(shù)長度為二進(jìn)制“00000001”,指示參數(shù)值部分長度為1字節(jié)。
步驟111-112中,擁塞匯報(bào)數(shù)據(jù)信息的類型為擁塞發(fā)生,步驟121-122中,若結(jié)點(diǎn)3的擁塞解除,則擁塞匯報(bào)數(shù)據(jù)信息的類型為擁塞解除,若結(jié)點(diǎn)3的擁塞仍然沒有解除,則擁塞匯報(bào)數(shù)據(jù)信息的類型仍為擁塞發(fā)生。
如圖3所示,與結(jié)點(diǎn)5有關(guān)的處理流程為步驟21結(jié)點(diǎn)5收到其一個(gè)下游路徑中的結(jié)點(diǎn)6發(fā)來的擁塞發(fā)生報(bào)告后,將以后收到的同目的地的CLNP包更多地從所述結(jié)點(diǎn)5的其它等價(jià)路徑即路徑5-7發(fā)送;步驟23結(jié)點(diǎn)5在下游結(jié)點(diǎn)6的擁塞狀態(tài)解除后,將此后收到的、具有同一目的地的CLNP數(shù)據(jù)包由結(jié)點(diǎn)5的等效最短路徑5-6或5-7正常發(fā)送;步驟25結(jié)點(diǎn)5處于偽擁塞狀態(tài)時(shí)向其上游結(jié)點(diǎn)2發(fā)送擁塞發(fā)生報(bào)告;經(jīng)過步驟25后,結(jié)點(diǎn)2收到結(jié)點(diǎn)5的擁塞發(fā)生報(bào)告,將以后應(yīng)發(fā)往結(jié)點(diǎn)5所在路徑的數(shù)據(jù)包更多地從結(jié)點(diǎn)2的其它下游路徑即2-4-8發(fā)送,這樣經(jīng)過路徑2-5-8轉(zhuǎn)發(fā)的數(shù)據(jù)包減少,結(jié)點(diǎn)5的擁塞情況得到緩解。此時(shí)若結(jié)點(diǎn)5仍然收到所有下游路徑的擁塞發(fā)生報(bào)告,則偽擁塞狀態(tài)沒有解除,結(jié)點(diǎn)5繼續(xù)向其上游結(jié)點(diǎn)2發(fā)送擁塞發(fā)生報(bào)告;否則若結(jié)點(diǎn)5收到其中一個(gè)下游路徑的擁塞解除報(bào)告,則所述結(jié)點(diǎn)5的偽擁塞狀態(tài)解除,執(zhí)行下述步驟27;步驟27結(jié)點(diǎn)5偽擁塞狀態(tài)解除后,向其上游結(jié)點(diǎn)2報(bào)告擁塞解除。
其中,步驟23前還包括步驟22結(jié)點(diǎn)5根據(jù)收到的擁塞報(bào)告判斷結(jié)點(diǎn)6的擁塞是否解除,是則執(zhí)行步驟23,否則執(zhí)行步驟24。
其中步驟24在步驟25前,具體為步驟24判斷結(jié)點(diǎn)5是否處于偽擁塞狀態(tài),是則執(zhí)行步驟25,否則執(zhí)行步驟21。
步驟27前還包括
步驟26結(jié)點(diǎn)5根據(jù)收到的下游路徑的擁塞報(bào)告判斷偽擁塞狀態(tài)是否解除,是則執(zhí)行步驟27,否則執(zhí)行步驟25。
上述與結(jié)點(diǎn)5有關(guān)的處理方法中,步驟21前包括與步驟11前相同的步驟,步驟22前包含與步驟12前相同的步驟,這里不再贅述。
步驟25具體為結(jié)點(diǎn)5根據(jù)收到的CLNP包中的結(jié)點(diǎn)參數(shù)選項(xiàng),在刷新該CLNP包的結(jié)點(diǎn)參數(shù)前生成一擁塞匯報(bào)數(shù)據(jù)信息;結(jié)點(diǎn)5將所述擁塞匯報(bào)數(shù)據(jù)信息向上游結(jié)點(diǎn)2發(fā)送。
步驟27具體為結(jié)點(diǎn)5根據(jù)收到的CLNP包中的結(jié)點(diǎn)參數(shù)選項(xiàng),在刷新該CLNP包的結(jié)點(diǎn)參數(shù)前生成一擁塞匯報(bào)數(shù)據(jù)信息;所述結(jié)點(diǎn)5將所述擁塞匯報(bào)數(shù)據(jù)信息向上游結(jié)點(diǎn)2發(fā)送。
其中所述擁塞匯報(bào)數(shù)據(jù)信息與前面描述的相同,但需注意的是由于結(jié)點(diǎn)5是一具有多條等效下游路徑的結(jié)點(diǎn),因此CLNP包在經(jīng)過所述結(jié)點(diǎn)5時(shí)會刷新所述CLNP包的結(jié)點(diǎn)參數(shù)為結(jié)點(diǎn)5的信息,所以上述步驟中生成擁塞匯報(bào)數(shù)據(jù)信息應(yīng)在所述CLNP包的結(jié)點(diǎn)參數(shù)被刷新前進(jìn)行,即結(jié)點(diǎn)參數(shù)中的信息必須是所述結(jié)點(diǎn)5的上游結(jié)點(diǎn)2的信息,其中擁塞匯報(bào)數(shù)據(jù)信息的類型根據(jù)所述結(jié)點(diǎn)5的狀態(tài)確定,若所述結(jié)點(diǎn)5處于偽擁塞狀態(tài),則類型為擁塞發(fā)生,否則為擁塞解除;地址模塊為所述結(jié)點(diǎn)5的上游結(jié)點(diǎn)2的地址;路徑為所述上游結(jié)點(diǎn)2的下游結(jié)點(diǎn)5所在的路徑編號。
綜上所述可以推出,當(dāng)結(jié)點(diǎn)2的下游所有等價(jià)最短路徑都報(bào)告擁塞,且結(jié)點(diǎn)2不是路由區(qū)域中的第一個(gè)所述上游結(jié)點(diǎn),則結(jié)點(diǎn)2繼續(xù)向它的上游結(jié)點(diǎn)報(bào)告擁塞發(fā)生,這樣,經(jīng)過層層疊代,一直追溯到該區(qū)域的第一個(gè)上游結(jié)點(diǎn)。如果第一個(gè)上游結(jié)點(diǎn)也擁塞,則所述第一個(gè)上游結(jié)點(diǎn)向源端端系統(tǒng)通告。
上述本發(fā)明的具體實(shí)施例一中,結(jié)點(diǎn)2和結(jié)點(diǎn)5的等價(jià)最短路徑都是2條,如圖4所示,為進(jìn)一步說明本發(fā)明的具體實(shí)施例一,假設(shè)在結(jié)點(diǎn)2或結(jié)點(diǎn)5處去往某一目的地的等價(jià)路徑有n條,在下游結(jié)點(diǎn)不發(fā)生擁塞時(shí),采用循環(huán)分配算法,將CLNP包均勻地從每一個(gè)路徑發(fā)出。
當(dāng)結(jié)點(diǎn)2或結(jié)點(diǎn)5的下游路徑,例如路徑1發(fā)生擁塞時(shí),根據(jù)上述設(shè)定,步驟11或步驟21具體為所述結(jié)點(diǎn)2或結(jié)點(diǎn)5收到下游路徑1中結(jié)點(diǎn)的擁塞匯報(bào)數(shù)據(jù)信息后,為所述路徑1加一個(gè)初始為狀態(tài)1和狀態(tài)2兩個(gè)狀態(tài)的狀態(tài)循環(huán)轉(zhuǎn)換表;以后來的CLNP包需要從所述路徑1發(fā)送時(shí),如果所述路徑1處在狀態(tài)1,則從所述路徑1發(fā)送數(shù)據(jù)包,并跳到狀態(tài)2;否則不發(fā)送數(shù)據(jù)包,跳到狀態(tài)1,同時(shí)從所述結(jié)點(diǎn)2或結(jié)點(diǎn)5的其它等價(jià)路徑轉(zhuǎn)發(fā)數(shù)據(jù)包;判斷所述擁塞路徑1的擁塞是否解除,是則去掉狀態(tài)循環(huán)轉(zhuǎn)換表,從路徑1正常發(fā)送數(shù)據(jù);否則若還收到路徑1的擁塞發(fā)生報(bào)告,就在所述路徑1的狀態(tài)循環(huán)表中再加一個(gè)狀態(tài)3,只在其中一個(gè)狀態(tài)從所述路徑1轉(zhuǎn)發(fā)數(shù)據(jù)包,其余狀態(tài)從其他路徑轉(zhuǎn)發(fā)數(shù)據(jù),這樣會有更多應(yīng)該從所述路徑1轉(zhuǎn)發(fā)的數(shù)據(jù)從其它非擁塞路徑轉(zhuǎn)發(fā);重復(fù)上述過程直到擁塞解除正常轉(zhuǎn)發(fā)數(shù)據(jù),或直到所述結(jié)點(diǎn)2或結(jié)點(diǎn)5的每一個(gè)下游路徑都報(bào)告擁塞發(fā)生,則停止增加狀態(tài)循環(huán)表。
其中,從所述結(jié)點(diǎn)2或結(jié)點(diǎn)5的其它等價(jià)路徑轉(zhuǎn)發(fā)數(shù)據(jù)包具體為檢查所述結(jié)點(diǎn)2或結(jié)點(diǎn)5的下一路徑,即路徑2,若所述結(jié)點(diǎn)2或結(jié)點(diǎn)5沒有收到路徑2的擁塞發(fā)生報(bào)告,則從所述路徑2轉(zhuǎn)發(fā)CLNP包;否則采用上述同樣的方法處理。
綜上所述可知,若所述上游結(jié)點(diǎn)的多個(gè)下游路徑擁塞,則在每一個(gè)擁塞路徑處設(shè)立狀態(tài)循環(huán)轉(zhuǎn)換表。若所述上游結(jié)點(diǎn)每一個(gè)下游路徑的結(jié)點(diǎn)都有多個(gè)狀態(tài),達(dá)到設(shè)定的狀態(tài)極限時(shí),則所述下游結(jié)點(diǎn)向其上游結(jié)點(diǎn)報(bào)告擁塞發(fā)生,直到該區(qū)域內(nèi)的第一個(gè)結(jié)點(diǎn)。
具體實(shí)施例二不同于具體實(shí)施例一將基于Round Robin算法的ECMP與本發(fā)明的航空電信網(wǎng)的動態(tài)負(fù)載分配方法相結(jié)合,具體實(shí)施例二是將本發(fā)明的航空電信網(wǎng)的動態(tài)負(fù)載分配方法用于基于Hash函數(shù)的ECMP中。
由于在采用鏈路狀態(tài)算法的路由協(xié)議中,Hash函數(shù)ECMP被廣泛應(yīng)用?;贖ash函數(shù)ECMP,并且利用本發(fā)明的航空電信網(wǎng)的動態(tài)負(fù)載分配方法,也可以達(dá)到最佳分配網(wǎng)絡(luò)流量的效果。
具體實(shí)施例二的其它部分與具體實(shí)施例一相同,不同的是當(dāng)擁塞發(fā)生時(shí)采用的轉(zhuǎn)發(fā)策略,下面詳細(xì)說明。
采用與具體實(shí)施例一相同的方法,圖1中結(jié)點(diǎn)2或結(jié)點(diǎn)5處去往某一目的地的等價(jià)路徑有n條,如圖5所示,路由器對收到的CLNP包計(jì)算源地址與目的地址的CRC校驗(yàn)值,由于路由器所收到的CLNP包源地址和目的地址的隨機(jī)性,所以所述結(jié)點(diǎn)2或結(jié)點(diǎn)5可以實(shí)現(xiàn)將流量均勻地分配給各個(gè)等價(jià)路徑。
若結(jié)點(diǎn)2或結(jié)點(diǎn)5收到其一個(gè)下游路徑,例如路徑1中的結(jié)點(diǎn)發(fā)來的擁塞發(fā)生報(bào)告后,具體實(shí)施例一中步驟11或步驟21在具體實(shí)施例二中為結(jié)點(diǎn)2或結(jié)點(diǎn)5收到下游路徑1的擁塞發(fā)生報(bào)告,則將路徑1標(biāo)記為1,以后再收到CLNP包計(jì)算其CRC校驗(yàn)碼,當(dāng)CRC校驗(yàn)碼的數(shù)值落在路徑1轉(zhuǎn)發(fā)的范圍內(nèi)時(shí),按下式計(jì)算轉(zhuǎn)發(fā)路徑α[2]=(α[1]*k)mod 65536(1)其中,α[1]=α,α即該CLNP包的CRC校驗(yàn)值;K=n,即該結(jié)點(diǎn)的等價(jià)路徑的個(gè)數(shù);將α[1]乘以k后,對模65536取余數(shù),得到α[2]的值,根據(jù)α[2]的值落入的區(qū)間范圍決定轉(zhuǎn)發(fā)路徑,這樣就把下游出現(xiàn)擁塞的路徑1的數(shù)據(jù)包均勻的分在了路徑1、路徑2、直到路徑n上;根據(jù)收到的下游路徑1的擁塞匯報(bào)數(shù)據(jù)信息判斷擁塞是否解除,是則去掉路徑標(biāo)記,正常發(fā)送數(shù)據(jù);否則將路徑1標(biāo)記為2,按下式計(jì)算轉(zhuǎn)發(fā)路徑α[3]=(α[2]*k)mod 65536(2)其中,α[2]從公式(1)計(jì)算得到,根據(jù)α[3]的值落入的區(qū)間范圍決定轉(zhuǎn)發(fā)路徑,這樣,將有更多地應(yīng)該從路徑1轉(zhuǎn)發(fā)的數(shù)據(jù)包從其它路徑轉(zhuǎn)發(fā);重復(fù)上述過程,當(dāng)路徑1的標(biāo)記為i時(shí),按下式計(jì)算轉(zhuǎn)發(fā)路徑
α[i+1]=(α[i]*k)mod 65536,其中i代表擁塞的路徑標(biāo)記。
可見,某個(gè)路徑的標(biāo)記越多,從該路徑轉(zhuǎn)發(fā)的數(shù)據(jù)包就越少,該路徑的擁塞情況也就得到了緩解。
重復(fù)上述過程直到擁塞解除恢復(fù)正常數(shù)據(jù)傳輸,或直到所述結(jié)點(diǎn)2或結(jié)點(diǎn)5的所有等價(jià)路徑都報(bào)告擁塞發(fā)生時(shí),所述結(jié)點(diǎn)停止增加標(biāo)記,采用與具體實(shí)施例一同樣的方法向上游結(jié)點(diǎn)通告路徑狀況。
由上述具體實(shí)施例一和二可以看出,本發(fā)明在網(wǎng)絡(luò)中有多條等價(jià)路徑出現(xiàn)時(shí),充分考慮到下游結(jié)點(diǎn)和鏈路負(fù)載的動態(tài)變化情況,合理地利用相等最小代價(jià)的多條路徑,調(diào)節(jié)了網(wǎng)絡(luò)流量,避免了擁塞,有效地提高了網(wǎng)絡(luò)資源利用率。
為了更進(jìn)一步說明采用本發(fā)明航空電信網(wǎng)的動態(tài)負(fù)載分配方法的效果,對上述具體實(shí)施例的處理結(jié)果進(jìn)行了仿真,說明如下。
仿真網(wǎng)絡(luò)數(shù)據(jù)流的通路拓?fù)浼版溌窌r(shí)延如圖6所示。在某一區(qū)域內(nèi),按Dijkstra算法,數(shù)據(jù)流經(jīng)A-R1.....D,有兩個(gè)等價(jià)鏈路A-R1-R2-D和A-R1-R3-D。
1、仿真沒有導(dǎo)致?lián)砣耐话l(fā)業(yè)務(wù)流時(shí),本發(fā)明實(shí)施例一對隊(duì)列的改善情況。
在結(jié)點(diǎn)A下一跳為R1且經(jīng)過D點(diǎn)的數(shù)據(jù)包隊(duì)列的到達(dá)為λ=0.1的泊松分布,平均到達(dá)間隔為10毫秒;在結(jié)點(diǎn)C下一跳為R2且經(jīng)過D點(diǎn)的數(shù)據(jù)包隊(duì)列的到達(dá)為λ=0.0625的泊松分布,平均到達(dá)間隔為16毫秒,仿真時(shí)間為6秒。
仿真結(jié)果分別如圖7、圖8所示,當(dāng)不采用本發(fā)明的航空電信網(wǎng)的動態(tài)負(fù)載分配方法時(shí),在6s內(nèi),隊(duì)列長度呈上升趨勢;當(dāng)采用本發(fā)明的動態(tài)負(fù)載分配方法時(shí),隊(duì)列長度控制在20%以內(nèi),可見在沒有導(dǎo)致?lián)砣耐话l(fā)業(yè)務(wù)流時(shí),采用本發(fā)明實(shí)施例的技術(shù)方案對隊(duì)列有相當(dāng)?shù)母纳啤?br>
2、仿真有導(dǎo)致?lián)砣耐话l(fā)業(yè)務(wù)流時(shí),本發(fā)明實(shí)施例一對隊(duì)列擁塞的避免情況。
在結(jié)點(diǎn)A下一跳為R1且經(jīng)過D點(diǎn)的數(shù)據(jù)包隊(duì)列的到達(dá)為λ=0.1的泊松分布,平均到達(dá)間隔為10毫秒;在結(jié)點(diǎn)C下一跳為R2且經(jīng)過D點(diǎn)的數(shù)據(jù)包隊(duì)列的到達(dá)為λ=0.083的泊松分布,平均到達(dá)間隔為12毫秒,仿真時(shí)間為6秒。
仿真結(jié)果如圖9、圖10所示,當(dāng)不采用本發(fā)明的動態(tài)流量分配方法,C點(diǎn)流量加大時(shí),在1.8秒開始丟棄數(shù)據(jù)包,隊(duì)列占有率100%;而當(dāng)采用本發(fā)明航空電信網(wǎng)的動態(tài)負(fù)載分配方法時(shí),數(shù)據(jù)包不會被丟棄,而隊(duì)列占有率不到20%,采用本發(fā)明的航空電信網(wǎng)的動態(tài)負(fù)載分配方法有效地避免了擁塞,提高了網(wǎng)絡(luò)資源利用效率。
3、仿真沒有導(dǎo)致?lián)砣耐话l(fā)業(yè)務(wù)流時(shí),本發(fā)明實(shí)施例二對隊(duì)列的改善情況。
在結(jié)點(diǎn)A下一跳為R1且經(jīng)過D點(diǎn)的數(shù)據(jù)包隊(duì)列的到達(dá)為λ=0.1的泊松分布,平均到達(dá)間隔為10毫秒;在結(jié)點(diǎn)C下一跳為R2且經(jīng)過D點(diǎn)的數(shù)據(jù)包隊(duì)列的到達(dá)為λ=0.0625的泊松分布,平均到達(dá)間隔為16毫秒,仿真時(shí)間6秒。
如圖11所示,當(dāng)不采用本發(fā)明的航空電信網(wǎng)的動態(tài)負(fù)載分配方法時(shí),在6s內(nèi),隊(duì)列長度呈上升趨勢;當(dāng)采用航空電信網(wǎng)的動態(tài)負(fù)載分配方法時(shí),仿真結(jié)果如圖12所示,隊(duì)列長度控制在20%以內(nèi)。
4、仿真有導(dǎo)致?lián)砣耐话l(fā)業(yè)務(wù)流時(shí),本發(fā)明實(shí)施例二對隊(duì)列擁塞的避免情況。
在結(jié)點(diǎn)A下一跳為R1且經(jīng)過D點(diǎn)的數(shù)據(jù)包隊(duì)列的到達(dá)為λ=0.1的泊松分布,平均到達(dá)間隔為10毫秒;在結(jié)點(diǎn)C下一跳為R2且經(jīng)過D點(diǎn)的數(shù)據(jù)包隊(duì)列的到達(dá)為λ=0.083的泊松分布,平均到達(dá)間隔為12毫秒,仿真時(shí)間為6秒。
如圖13所示,當(dāng)不采用本發(fā)明的動態(tài)負(fù)載分配方法,C點(diǎn)流量加大時(shí),在1.3秒開始丟棄數(shù)據(jù)包,隊(duì)列擁塞;而當(dāng)采用本發(fā)明的動態(tài)負(fù)載分配方法時(shí),仿真結(jié)果如圖14所示,數(shù)據(jù)包不會被丟棄,而隊(duì)列占有率控制在20%以內(nèi),可見,在路由域內(nèi)存在多條等價(jià)路徑時(shí),采用本發(fā)明具體實(shí)施例的航空電信網(wǎng)的動態(tài)負(fù)載分配方法有效地避免了擁塞,提高了網(wǎng)絡(luò)資源利用效率。
最后所應(yīng)說明的是,以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非限制,盡管參照較佳實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的精神和范圍。
權(quán)利要求
1.一種航空電信網(wǎng)的動態(tài)負(fù)載分配方法,其特征在于包括在一個(gè)路由區(qū)域中包括一個(gè)或一個(gè)以上具有多條等效最短路徑的上游結(jié)點(diǎn)和位于所述上游結(jié)點(diǎn)下游路徑中一個(gè)或一個(gè)以上具有一條或多條等效最短路徑的下游結(jié)點(diǎn);所述上游結(jié)點(diǎn)收到所述下游結(jié)點(diǎn)發(fā)來的擁塞發(fā)生報(bào)告后,將此后收到的、具有同一目的地的CLNP數(shù)據(jù)包更多地由所述上游結(jié)點(diǎn)其他等效最短路徑發(fā)送。
2.根據(jù)權(quán)利要求1所述的航空電信網(wǎng)的動態(tài)負(fù)載分配方法,其特征在于,還包括所述上游結(jié)點(diǎn)在所述下游結(jié)點(diǎn)的擁塞狀態(tài)解除后,將此后收到的、具有同一目的地的CLNP數(shù)據(jù)包由所述上游結(jié)點(diǎn)擁塞前的等效最短路徑發(fā)送。
3.根據(jù)權(quán)利要求2所述的航空電信網(wǎng)的動態(tài)負(fù)載分配方法,其特征在于,還包括所述下游結(jié)點(diǎn)處于偽擁塞狀態(tài)時(shí)向其上游結(jié)點(diǎn)報(bào)告擁塞發(fā)生或所述下游結(jié)點(diǎn)偽擁塞狀態(tài)解除后,所述下游結(jié)點(diǎn)向其上游結(jié)點(diǎn)報(bào)告擁塞解除。
4.根據(jù)權(quán)利要求1所述的航空電信網(wǎng)的動態(tài)負(fù)載分配方法,其特征在于,若所述上游結(jié)點(diǎn)為此路由區(qū)域中第一個(gè)上游結(jié)點(diǎn),則所述第一個(gè)上游結(jié)點(diǎn)對經(jīng)過的所述CLNP包的選項(xiàng)部分進(jìn)行擴(kuò)展,添加結(jié)點(diǎn)參數(shù),并將擴(kuò)展后的CLNP包繼續(xù)轉(zhuǎn)發(fā)給下游結(jié)點(diǎn);所述結(jié)點(diǎn)參數(shù)至少包括所述上游結(jié)點(diǎn)的地址以及經(jīng)過的所述上游結(jié)點(diǎn)一個(gè)下游路徑的編號值;若所述上游結(jié)點(diǎn)不是此路由區(qū)域中第一個(gè)上游結(jié)點(diǎn),則CLNP包經(jīng)過所述上游結(jié)點(diǎn)時(shí)刷新包中的結(jié)點(diǎn)參數(shù)選項(xiàng)為當(dāng)前的上游結(jié)點(diǎn)地址和經(jīng)過的當(dāng)前上游結(jié)點(diǎn)的下游路徑的編號值。
5.根據(jù)權(quán)利要求1或4所述的航空電信網(wǎng)的動態(tài)負(fù)載分配方法,其特征在于,所述上游結(jié)點(diǎn)收到所述下游結(jié)點(diǎn)發(fā)來的擁塞發(fā)生報(bào)告后,將此后收到的、具有同一目的地的CLNP數(shù)據(jù)包由所述上游結(jié)點(diǎn)其他等效最短路徑發(fā)送前還包括所述下游結(jié)點(diǎn)所在的路徑擁塞時(shí),根據(jù)收到的CLNP包的結(jié)點(diǎn)參數(shù),生成一擁塞匯報(bào)數(shù)據(jù)信息;所述下游結(jié)點(diǎn)將生成的擁塞匯報(bào)數(shù)據(jù)信息發(fā)送給所述上游結(jié)點(diǎn)。
6.根據(jù)權(quán)利要求2或4所述的航空電信網(wǎng)的動態(tài)負(fù)載分配方法,其特征在于,所述將此后收到的、具有同一目的地的CLNP數(shù)據(jù)包由所述上游結(jié)點(diǎn)擁塞前的等效最短路徑發(fā)送前包括所述下游結(jié)點(diǎn)根據(jù)收到的CLNP包的結(jié)點(diǎn)參數(shù),生成一擁塞匯報(bào)數(shù)據(jù)信息;所述下游結(jié)點(diǎn)將生成的擁塞匯報(bào)數(shù)據(jù)信息發(fā)送給所述上游結(jié)點(diǎn)。
7.根據(jù)權(quán)利要求3所述的航空電信網(wǎng)的動態(tài)負(fù)載分配方法,其特征在于,所述向其上游結(jié)點(diǎn)報(bào)告擁塞發(fā)生前或所述下游結(jié)點(diǎn)向其上游結(jié)點(diǎn)報(bào)告擁塞解除包括所述下游結(jié)點(diǎn)根據(jù)收到的CLNP包的結(jié)點(diǎn)參數(shù),在刷新所述結(jié)點(diǎn)參數(shù)前生成一擁塞匯報(bào)數(shù)據(jù)信息;所述下游結(jié)點(diǎn)將生成的擁塞匯報(bào)數(shù)據(jù)信息發(fā)送給所述上游結(jié)點(diǎn)。
8.根據(jù)權(quán)利要求1-3任一所述的航空電信網(wǎng)的動態(tài)負(fù)載分配方法,其特征在于,還包括在所述路由區(qū)域內(nèi),還包括中間結(jié)點(diǎn),所述中間結(jié)點(diǎn)收到CLNP包時(shí),不添加結(jié)點(diǎn)參數(shù)選項(xiàng),擁塞控制采用通常的ATN擁塞控制方法。
9.根據(jù)權(quán)利要求1-3任一所述的航空電信網(wǎng)的動態(tài)負(fù)載分配方法,其特征在于,還包括所述路由區(qū)域內(nèi)的第一個(gè)上游結(jié)點(diǎn)擁塞時(shí),所述第一個(gè)上游結(jié)點(diǎn)向其源端系統(tǒng)通告。
10.根據(jù)權(quán)利要求1-3任一所述的航空電信網(wǎng)的動態(tài)負(fù)載分配方法,其特征在于,還包括若CLNP包在所述路由區(qū)域內(nèi)傳輸時(shí)沒有發(fā)生擁塞,則在所述路由區(qū)域的最后一個(gè)收到所述CLNP包的結(jié)點(diǎn)處刪除結(jié)點(diǎn)參數(shù)選項(xiàng)。
全文摘要
本發(fā)明涉及一種航空電信網(wǎng)的動態(tài)負(fù)載分配方法,包括在一個(gè)路由區(qū)域中包括一個(gè)或一個(gè)以上具有多條等效最短路徑的上游結(jié)點(diǎn)和位于所述上游結(jié)點(diǎn)下游路徑中一個(gè)或一個(gè)以上具有一條或多條等效最短路徑的下游結(jié)點(diǎn);所述上游結(jié)點(diǎn)收到所述下游結(jié)點(diǎn)發(fā)來的擁塞發(fā)生報(bào)告后,將此后收到的、具有同一目的地的CLNP數(shù)據(jù)包由所述上游結(jié)點(diǎn)其他等效最短路徑發(fā)送。本發(fā)明在網(wǎng)絡(luò)中有多條等價(jià)路徑出現(xiàn)時(shí),充分考慮到下游結(jié)點(diǎn)和鏈路負(fù)載的動態(tài)變化情況,有效地提高了網(wǎng)絡(luò)資源利用率。
文檔編號H04L12/28GK101018203SQ200710062848
公開日2007年8月15日 申請日期2007年1月18日 優(yōu)先權(quán)日2007年1月18日
發(fā)明者張軍, 劉鋒, 楊驥 申請人:北京航空航天大學(xué)