一種消除鏈路擁塞的骨干網(wǎng)絡(luò)流量調(diào)度方法
【專利摘要】本發(fā)明公開(kāi)了一種消除鏈路擁塞的骨干網(wǎng)絡(luò)流量調(diào)度方法,通過(guò)將原路由的擁塞部分轉(zhuǎn)移到該擁塞部分的代替路徑上,從而繞過(guò)擁塞鏈路。在具體針對(duì)某條擁塞鏈路,該擁塞鏈路上的一些流量會(huì)因?yàn)樘蠖也坏胶线m的備選路徑,算法此時(shí)會(huì)暫時(shí)跳過(guò)這一條流量,處理下一條流量;當(dāng)算法遍歷完一遍該條擁塞鏈路上的流量,并且將能遷移出去的流量都遷移之后,鏈路的擁塞狀態(tài)還未消除,算法就會(huì)對(duì)鏈路上剩余的所有匯聚流進(jìn)行拆分,將一條較大的匯聚流拆分成幾條較小的匯聚流,但最多達(dá)到拆分的最大條數(shù)限制,這樣增加流量找到備選路徑的幾率,實(shí)現(xiàn)了擁塞鏈路的調(diào)整。
【專利說(shuō)明】
-種消除鏈路擁塞的骨干網(wǎng)絡(luò)流量調(diào)度方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明屬于網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,更為具體地講,設(shè)及一種消除鏈路擁塞的骨干網(wǎng) 絡(luò)流量調(diào)度方法統(tǒng)。
【背景技術(shù)】
[0002] 隨著計(jì)算機(jī)網(wǎng)絡(luò)線路類型W及網(wǎng)絡(luò)產(chǎn)品和技術(shù)的發(fā)展,在骨干網(wǎng)上進(jìn)行流量控制 的技術(shù)主要是DifferServ方式。
[0003] DifferServ方式即區(qū)分服務(wù)方式,區(qū)分服務(wù)方式具有無(wú)連接的特性,主要通過(guò)緩 沖管理和優(yōu)先級(jí)調(diào)度機(jī)制來(lái)實(shí)現(xiàn),無(wú)需進(jìn)行QoS協(xié)商和保留帶寬等控制。由于IP網(wǎng)絡(luò)的發(fā)展 仍然是基于無(wú)連接的,區(qū)分服務(wù)方式與之相適應(yīng),更適合在大型IP網(wǎng)絡(luò)中應(yīng)用。
[0004] 在DiffServ方式中,業(yè)務(wù)流被劃分為不同的區(qū)分服務(wù)類,一個(gè)的業(yè)務(wù)流的區(qū)分服 務(wù)類是由IP包頭中區(qū)分不同服務(wù)的字段(Different Service Code Point,DSCP)所表示。 在實(shí)施DiffServ網(wǎng)絡(luò)中,每一節(jié)點(diǎn)路由都會(huì)根據(jù)數(shù)據(jù)包的DSCP字段執(zhí)行相應(yīng)的PHB(Per Hop Behavior)行為,目前IETF已定義了Ξ個(gè)標(biāo)準(zhǔn)的P皿:
[000日]1.快速轉(zhuǎn)發(fā)化邱edited化rwarding):能夠充分滿足流量對(duì)帶寬、延遲與丟包的 要求,嚴(yán)格保證所承諾的QoS,主要用于低時(shí)延、抖動(dòng)和丟包率的業(yè)務(wù)。
[0006] 2.保證轉(zhuǎn)發(fā)(Assured化rwarding):能夠容忍流量速率在一定范圍的波動(dòng),在沒(méi) 有超過(guò)最大網(wǎng)絡(luò)帶寬時(shí)可W保證數(shù)據(jù)轉(zhuǎn)發(fā),一旦發(fā)生網(wǎng)絡(luò)阻塞,將根據(jù)不同的丟棄級(jí)別丟 棄報(bào)文。
[0007] 3.盡力服務(wù)(Best Effcxrt):不提供任何的QoS保證,主要應(yīng)用于對(duì)時(shí)延、抖動(dòng)和丟 包不敏感的業(yè)務(wù)。
[000引可W看出,DiffServ方式包含的業(yè)務(wù)級(jí)別,信息狀態(tài)的數(shù)量少,因此具有較好的擴(kuò) 展性,目前是業(yè)界認(rèn)同的IP骨干網(wǎng)QoS解決方案。
[0009] 骨干網(wǎng)流量控制方案總體來(lái)說(shuō)技術(shù)比較簡(jiǎn)單,但是卻不夠靈活,雖然可W保證一 些關(guān)鍵業(yè)務(wù)的傳輸質(zhì)量,但是隨著骨干網(wǎng)上業(yè)務(wù)流量類型的增加,也逐漸顯現(xiàn)出一些不足, 主要表現(xiàn)在W下幾點(diǎn):
[0010] 1.不能全局協(xié)調(diào)
[0011] 在傳統(tǒng)IP網(wǎng)中,每個(gè)節(jié)點(diǎn)獨(dú)立的執(zhí)行流量控制策略,運(yùn)是一種單節(jié)點(diǎn),單鏈路的控 制方式。當(dāng)出現(xiàn)某些鏈路過(guò)載時(shí),不能主動(dòng)使用其他鏈路進(jìn)行路由,而是選擇丟包。運(yùn)樣即 使其他路由有空閑的帶寬資源,擁塞路由的流量也不會(huì)分擔(dān)到空閑路由上,導(dǎo)致網(wǎng)絡(luò)帶寬 資源沒(méi)有充分利用。
[0012] 2.不能精細(xì)化控制
[0013] 在傳統(tǒng)IP骨干網(wǎng)中,通常由聚合掩碼表項(xiàng)匹配進(jìn)行路由,在每個(gè)路由器上不能知 道所有IP流的信息,不能主動(dòng)的對(duì)匯聚流進(jìn)行拆分,控制匯聚流中IP流的具體路由方式。例 如,當(dāng)兩個(gè)節(jié)點(diǎn)之間需要4G的流量,而沒(méi)有一條路徑存在4G的剩余帶寬,則運(yùn)時(shí)會(huì)宣告請(qǐng)求 失敗,但其實(shí)可W將流量拆分為幾條小流量需求的匯聚流,分別在多條路由上得到流量滿 足。
【發(fā)明內(nèi)容】
[0014] 本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供一種消除鏈路擁塞的骨干網(wǎng)絡(luò)流量 調(diào)度方法,對(duì)骨干網(wǎng)絡(luò)流量實(shí)現(xiàn)全局協(xié)調(diào),具有流控響應(yīng)更快、流控目標(biāo)更準(zhǔn)確、擁塞緩解 成功率更高等優(yōu)點(diǎn)。
[0015] 為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明為一種消除鏈路擁塞的骨干網(wǎng)絡(luò)流量調(diào)度方法,其 特征在于,包括W下步驟:
[0016] (1)、根據(jù)網(wǎng)絡(luò)反饋的擁塞鏈路信息,形成擁塞鏈路列表,遍歷擁塞鏈路列表中的 每條擁塞鏈路c_linkk,k=l,2,···,再執(zhí)行步驟(2);
[0017] (2)、對(duì)擁塞鏈路C_linkk進(jìn)行處理
[001引(2.1)、設(shè)置擁塞鏈路c_l inkk的拆分粒度g,并初始化為0;
[0019] (2.2)、將擁塞鏈路c_linkk上的所有流量按從大到小排序,形成流量列表;
[0020] (2.3)遍歷流量列表中的每條流量門〇¥1,1 = 1,2,,,,,再執(zhí)行步驟(3)
[0021] (3)、通過(guò)對(duì)交換機(jī)流表項(xiàng)的count字段進(jìn)行統(tǒng)計(jì),獲知流量flowi的大小為 S izef i?_i;再?gòu)穆酚尚畔?shù)據(jù)庫(kù)中檢索,獲取流量f lowi的原路由路徑為route_pathf i〇w_i;
[0022] 設(shè)置流量f lowi的延伸鏈路1;[]14_6義16]1(1|1。~_:1,用5、1'表示延伸鏈路的源節(jié)點(diǎn)和目 的節(jié)點(diǎn);設(shè)置延伸鏈路集合extend_l ink_setfi?_i;
[0023] (3.1)將流量flowi的延伸鏈路link_extendfi?_i初始化為擁塞鏈路;將延伸鏈路 集合extend_l ink_setf i?_i初始化為擁塞鏈路;
[0024] (3.2)在5、1'之間尋找跳數(shù)小于預(yù)設(shè)的扣1119_1;[1]1;[1:、可用帶寬大于該流量^0機(jī)的 大小sizefi?_i、且不經(jīng)過(guò)延伸鏈路集合extend_link_setfi?_i的所有鏈路作為備選路徑,從 而得到備選路徑列表;再判斷該備選路徑列表是否為空,如果為空,則執(zhí)行步驟(3.3);如果 非空,則執(zhí)行步驟(3.5);
[002引 (3.3)、判斷延伸鏈路集合extend_link_setfi?_^否包含了流量flowi的原路由 路徑route_pathfi?_i中的所有鏈路,如果包含,則執(zhí)行步驟(6);否則執(zhí)行步驟(3.4);
[00%] (3.4)、從流量f lowi的原路由路徑;route_pathfi?_i減去延伸鏈路集合extend_ link_setfi〇w_i得到一個(gè)新鏈路集合,再?gòu)脑撔骆溌芳现羞x出利用率最高的鏈路 linkmDst_used,并將利用率最高的鏈路linkmDst_used到擁塞鏈路的運(yùn)段路徑設(shè)置為新延伸鏈 路,新延伸鏈路的兩端點(diǎn)設(shè)置為S、T,最后將利用率最高的鏈路linkmDst_used加入延伸鏈路集 合extend_link_setfi?_i集合中,再執(zhí)行步驟(3.2);
[0027] ( 3.5 )、從備選路徑列表中選出可用帶寬最大的備選路徑pathmax_volumn,將流量 floWi在延伸鏈路上的運(yùn)段路由改為pathmax_vol皿n,并將流量floWi從擁塞鏈路的流量列表中 刪除,執(zhí)行步驟(4);
[002引(4)、判斷擁塞鏈路c_linkk上的擁塞是否消除,如果擁塞已經(jīng)消除,則執(zhí)行步驟 (5);否則執(zhí)行步驟(6);
[0029] (5)、判斷擁塞鏈路列表中所有的擁塞鏈路是否完成遍歷,如果是,則結(jié)束處理;否 貝ljc_linkk+i,再執(zhí)行步驟(2);
[0030] (6)、判斷流量列表中所有流量是否遍歷完成,如果沒(méi)有遍歷結(jié)束,則floww,再執(zhí) 行步驟(3);如果遍歷結(jié)束,則執(zhí)行步驟(7);
[0031] (7)、判斷拆分粒度g是否小于等于預(yù)設(shè)的拆分粒度上限gmax,如果滿足,則執(zhí)行步 驟(8),否則執(zhí)行步驟(5);
[0032] (8)、處理流量列表中的剩余流量;
[0033] (8.1)、遍歷流量列表中的某一條剩余流量,查看其源、目的IP地址,選取范圍較大 的地址 acMresswide;
[0034] 化.2)、將a加 resswide地址劃分成2spiit-index個(gè)網(wǎng)段[化W/v.v.v…,J, 并將該條剩余流量按照運(yùn)些地址拆分成2split-ind6x條細(xì)流.
[0035] (8.3、在骨干網(wǎng)絡(luò)邊緣交換機(jī)的netflow采集器中設(shè)置,統(tǒng)計(jì)出運(yùn)2spllt-lndeχ條流量 的大小,并用運(yùn)2sPlit-ind6x條流量替換流量列表中該條剩余流量;判斷流量列表的剩余流量 是否遍歷完畢,如果遍歷完畢,執(zhí)行步驟(8.4),否則執(zhí)行步驟(8.1)
[0036] (8.4)、拆分粒度旨=旨+1,執(zhí)行步驟(2.2)。
[0037] 本發(fā)明的發(fā)明目的是運(yùn)樣實(shí)現(xiàn)的:
[0038] 本發(fā)明一種消除鏈路擁塞的骨干網(wǎng)絡(luò)流量調(diào)度方法,通過(guò)將原路由的擁塞部分轉(zhuǎn) 移到該擁塞部分的代替路徑上,從而繞過(guò)擁塞鏈路。在具體針對(duì)某條擁塞鏈路,該擁塞鏈路 上的一些流量會(huì)因?yàn)樘蠖也坏胶线m的備選路徑,算法此時(shí)會(huì)暫時(shí)跳過(guò)運(yùn)一條流量,處 理下一條流量;當(dāng)算法遍歷完一遍該條擁塞鏈路上的流量,并且將能遷移出去的流量都遷 移之后,鏈路的擁塞狀態(tài)還未消除,算法就會(huì)對(duì)鏈路上剩余的所有匯聚流進(jìn)行拆分,將一條 較大的匯聚流拆分成幾條較小的匯聚流,但最多達(dá)到拆分的最大條數(shù)限制,運(yùn)樣增加流量 找到備選路徑的幾率,實(shí)現(xiàn)了擁塞鏈路的調(diào)整。
[0039] 同時(shí),本發(fā)明一種消除鏈路擁塞的骨干網(wǎng)絡(luò)流量調(diào)度方法還具有W下有益效果:
[0040] (1)、相較于傳統(tǒng)的ECMP在固定路徑之間進(jìn)行流量均衡,本發(fā)明根據(jù)網(wǎng)絡(luò)的擁塞情 況,靈活選取網(wǎng)絡(luò)擁塞部分的備選路徑,對(duì)擁塞進(jìn)行繞行,針對(duì)局部擁塞處理能力強(qiáng)。
[0041] (2)流量遷移時(shí),多數(shù)情況直接對(duì)網(wǎng)絡(luò)中的匯聚流進(jìn)行調(diào)整,特殊情況下需要對(duì)匯 聚流進(jìn)行拆分,通過(guò)netf low的方式,獲取較細(xì)粒度流量信息。算法整體對(duì)流信息粒度要求 不局。
[0042] (3)在處理鏈路擁塞的時(shí)候,只需知道網(wǎng)絡(luò)局部的流量和鏈路信息,所需信息少, 收斂速度快,適應(yīng)聯(lián)通度高、信息量大的骨干網(wǎng)。
【附圖說(shuō)明】
[0043] 圖1是本發(fā)明一種消除鏈路擁塞的骨干網(wǎng)絡(luò)架構(gòu)圖;
[0044] 圖2表示擁塞鏈路DG附近鏈路的利用率和可用帶寬;
[0045] 圖3是流量WDG為延伸鏈路尋找備選路徑的示意圖;
[0046] 圖4是流量將"延伸鏈路"段的路由改道為備選路徑后的流量狀態(tài)圖。
【具體實(shí)施方式】
[0047] 下面結(jié)合附圖對(duì)本發(fā)明的【具體實(shí)施方式】進(jìn)行描述,W便本領(lǐng)域的技術(shù)人員更好地 理解本發(fā)明。需要特別提醒注意的是,在W下的描述中,當(dāng)已知功能和設(shè)計(jì)的詳細(xì)描述也許 會(huì)淡化本發(fā)明的主要內(nèi)容時(shí),運(yùn)些描述在運(yùn)里將被忽略。
[004引實(shí)施例
[0049] 圖1是本發(fā)明一種消除鏈路擁塞的骨干網(wǎng)絡(luò)架構(gòu)圖。
[0050] 在本實(shí)施例中,如圖1所示,在任意一個(gè)骨干網(wǎng)絡(luò)中,字母代表網(wǎng)絡(luò)節(jié)點(diǎn),網(wǎng)絡(luò)節(jié)點(diǎn) 間被叉掉的鏈路代表?yè)砣溌罚總€(gè)網(wǎng)絡(luò)節(jié)點(diǎn)對(duì)應(yīng)的網(wǎng)段如表1所示;
[0051] 表1是網(wǎng)絡(luò)節(jié)點(diǎn)對(duì)應(yīng)的網(wǎng)段;
[0化2]
[0化3] 表1
[0054] 下面結(jié)合圖1,對(duì)本發(fā)明一種消除鏈路擁塞的骨干網(wǎng)絡(luò)流量調(diào)度方法進(jìn)行詳細(xì)說(shuō) 明,具體包括W下步驟:
[0055] S1、根據(jù)網(wǎng)絡(luò)反饋的擁塞鏈路信息,形成擁塞鏈路列表,如表2所示,在擁塞鏈路表 中包括:鏈路名稱、鏈路編號(hào)、鏈路已用帶寬、鏈路利用率和鏈路總帶寬;遍歷擁塞鏈路列表 中的每條擁塞鏈路c_linkk,k= 1,2,…,再執(zhí)行步驟S2;在本實(shí)施例中,有CF和DG兩條擁塞 鏈路;
[0056] 表2是擁塞鏈路表;
[0化7]
[0化引表2
[0化9] S2、對(duì)擁塞鏈路c_linkk進(jìn)行處理
[0060] S2.1、設(shè)置擁塞鏈路c_linkk的拆分粒度g,并初始化為0;
[0061] S2.2、將擁塞鏈路c_linkk上的所有流量按從大到小排序,形成流量列表;
[0062] 在本實(shí)施例中,W擁塞鏈路DG為例,形成表3所示的流量列表;
[0063]
[00化]表3
[0066] S2.3、遍歷流量列表中的每條流量f lowi,i = 1,2,…,再執(zhí)行步驟S3;
[0067] S3、通過(guò)對(duì)交換機(jī)流表項(xiàng)的count字段進(jìn)行統(tǒng)計(jì),獲知流量flowi的大小為 S i zef i?_i;再?gòu)穆酚尚畔?shù)據(jù)庫(kù)中檢索,獲取流量f lowi的原路由路徑為route_pathf i〇w_i; [006引設(shè)置流量flowi的延伸鏈路link_extendfiDw_i,用S、T表示延伸鏈路的源節(jié)點(diǎn)和目 的節(jié)點(diǎn);設(shè)置延伸鏈路集合extend_l ink_setfi?_i;
[0069] S3.1將流量flowi的延伸鏈路link_extendfi?_i初始化為擁塞鏈路;將延伸鏈路集 合extend_l ink_setf i?_i初始化為擁塞鏈路;
[0070] 在本實(shí)施例中,W表格3中的流量flowl5為例,通過(guò)初始化設(shè)置后,形成表4所示的 初始化數(shù)據(jù)表。
[0071]
[0072] 表 4
[0073] 53.2在5、1'之間尋找跳數(shù)小于預(yù)設(shè)的化1119_1;[1]1;[1:、可用帶寬大于該流量門0機(jī)的大 小sizefi?_i、且不經(jīng)過(guò)延伸鏈路集合extend_link_setfi?_i的所有鏈路作為備選路徑,從而 得到備選路徑列表;再判斷該備選路徑列表是否為空,如果為空,則執(zhí)行步驟S3.3;如果非 空,則執(zhí)行步驟S3.5;
[0074] 在本實(shí)施例中,Wflowl5的初始化數(shù)據(jù)為例,如圖2所示,擁塞鏈路DG附近鏈路的 利用率和可用帶寬的狀況,虛線表示fl〇wl5在拓?fù)渲性瓉?lái)的流經(jīng)路徑,W此為基礎(chǔ),flowlS WDG為延伸鏈路,找到了延伸鏈路的備選路徑0-述-〉6,形成了備選路徑列表。列出表5所示 的延伸鏈路的備選路徑;
[0075]
[0076] 表 5
[0077] 83.3、判斷延伸鏈路集合〇義1611(1_1;[證_361|1。~_:1是否包含了流量;^10機(jī)的原路由路 徑;route_pathfi?_i中的所有鏈路,如果包含,則執(zhí)行步驟S6;否則執(zhí)行步驟S3.4;
[007引 S3.4、從流量f lowi的原路由路徑;route_pathfi0w_i減去延伸鏈路集合extend_ link_setfi0w_i得到一個(gè)新鏈路集合,再?gòu)脑撔骆溌芳现羞x出利用率最高的鏈路 linkmDst_used,并將利用率最高的鏈路linkmDst_used到擁塞鏈路的運(yùn)段路徑設(shè)置為新延伸鏈 路,新延伸鏈路的兩端點(diǎn)設(shè)置為S、T,最后將利用率最高的鏈路linkmDst_used加入延伸鏈路集 合extend_link_setfi?_i集合中,再執(zhí)行步驟S3.2;
[0079] S3.5、從備選路徑列表中選出可用帶寬最大的備選路徑pathmax_v。l?n,將流量fl0Wi 在延伸鏈路上的運(yùn)段路由改為pathmax_volumn,并將流量flowi從擁塞鏈路的流量列表中刪除, 執(zhí)行步驟S4;
[0080] 在本實(shí)施例中,如圖3所示,flowl5在WDG為延伸鏈路的迭代中,找到的滿足條件 的備選路徑D-〉E-〉G。
[0081] S4、判斷擁塞鏈路c_linkk上的擁塞是否消除,如果擁塞已經(jīng)消除,則執(zhí)行步驟S5; 否則執(zhí)行步驟S6;
[0082] 在本實(shí)施例中,如圖4所示,flowl5將"延伸鏈路"段的路由改道備選路徑后的流量 狀態(tài),和相關(guān)鏈路的利用率。從圖4中可W看出被遷出流量的擁塞鏈路利用率從原來(lái)的92% 下降到90%,備選路徑上的鏈路的利用率則是有所提升。表明流量從擁塞部分轉(zhuǎn)移到了空 閑部分。
[0083] S5、判斷擁塞鏈路列表中所有的擁塞鏈路是否完成遍歷,如果是,則結(jié)束處理;否 貝ljc_l inkk+i,再執(zhí)行步驟S2;
[0084] S6、判斷流量列表中所有流量是否遍歷完成,如果沒(méi)有遍歷結(jié)束,則flowi+i,再執(zhí) 行步驟S3;如果遍歷結(jié)束,則執(zhí)行步驟S7;
[0085] S7、判斷拆分粒度g是否小于等于預(yù)設(shè)的拆分粒度上限gmax,如果滿足,則執(zhí)行步驟 S8,否則執(zhí)行步驟S5;
[0086] S8、對(duì)流量列表中的每一條剩余流量進(jìn)行處理;
[0087] S8.1、遍歷流量列表中的某一條剩余流量,查看其源、目的IP地址,選取范圍較大 的地址 acMresswide;
[008引 S8.2、將ad化esswide地址劃分成2spiit-index個(gè)網(wǎng)段[α舶化巧,α波/化財(cái)2,...,化姑化、'V..,,.], 并將該條剩余流量按照運(yùn)些地址拆分成2split-ind6x條細(xì)流.
[0089] S8.3、在骨干網(wǎng)絡(luò)邊緣交換機(jī)的netflow采集器中設(shè)置,統(tǒng)計(jì)出運(yùn)2spiit-index條流量 的大小,并用運(yùn)2split-ind6x條流量替換流量列表中該條剩余流量;判斷流量列表的剩余流量 是否遍歷完畢,如果遍歷完畢,執(zhí)行步驟S8.4,否則執(zhí)行步驟S8.1;
[0090] S8.4、拆分粒度g = g+l,執(zhí)行步驟S2.2。
[0091] 盡管上面對(duì)本發(fā)明說(shuō)明性的【具體實(shí)施方式】進(jìn)行了描述,W便于本技術(shù)領(lǐng)域的技術(shù) 人員理解本發(fā)明,但應(yīng)該清楚,本發(fā)明不限于【具體實(shí)施方式】的范圍,對(duì)本技術(shù)領(lǐng)域的普通技 術(shù)人員來(lái)講,只要各種變化在所附的權(quán)利要求限定和確定的本發(fā)明的精神和范圍內(nèi),運(yùn)些 變化是顯而易見(jiàn)的,一切利用本發(fā)明構(gòu)思的發(fā)明創(chuàng)造均在保護(hù)之列。
【主權(quán)項(xiàng)】
1. 一種消除鏈路擁塞的骨干網(wǎng)絡(luò)流量調(diào)度方法,其特征在于,包括以下步驟: (1) 、根據(jù)網(wǎng)絡(luò)反饋的擁塞鏈路信息,形成擁塞鏈路列表,遍歷擁塞鏈路列表中的每條 擁塞鏈路(:_1;[111^,1^=1,2,"_,再執(zhí)行步驟(2) ; (2) 、對(duì)擁塞鏈路c_linkk進(jìn)行處理 (2.1) 、設(shè)置擁塞鏈路c_l inkk的拆分粒度g,并初始化為0; (2.2) 、將擁塞鏈路c_l inkk上的所有流量按從大到小排序,形成流量列表; (2.3) 遍歷流量列表中的每條流量f lowi,i = 1,2,…,再執(zhí)行步驟(3) (3) 、通過(guò)對(duì)交換機(jī)流表項(xiàng)的count字段進(jìn)行統(tǒng)計(jì),獲知流量flowi的大小為sizefi?_i;再 從路由信息數(shù)據(jù)庫(kù)中檢索,獲取流量f lowi的原路由路徑為route_pathf i?_i; 設(shè)置流量£1〇'^的延伸鏈路1;[111^_61〖611(1|1?!穇:1,用3、1'表示延伸鏈路的源節(jié)點(diǎn)和目的節(jié) 點(diǎn);設(shè)置延伸鏈路集合extend_l ink_setf i?_i; (3.1) 將流量fl〇Wi的延伸鏈路linkjxtendfiii初始化為擁塞鏈路;將延伸鏈路集合 extend_l ink_setf i?_i初始化為擁?yè)砣溌罚? (3.2) 在5、1'之間尋找跳數(shù)小于預(yù)設(shè)的扣11^1_1;[111;[1:、可用帶寬大于該流量£1€^的大小 sizefi?_i、且不經(jīng)過(guò)延伸鏈路集合extend_link_setfi?_i的所有鏈路作為備選路徑,從而得 到備選路徑列表;再判斷該備選路徑列表是否為空,如果為空,則執(zhí)行步驟(3.3);如果非 空,則執(zhí)行步驟(3.5); (3.3) 、判斷延伸鏈路集合extend_link_setfi?_i是否包含了流量f lowi的原路由路徑 route_pathfi?_i中的所有鏈路,如果包含,則執(zhí)行步驟(6);否則執(zhí)行步驟(3.4); (3 · 4)、從流量f lowi的原路由路徑route_pathfi〇w_i減去延伸鏈路集合extend jink_ setf i?_i得到一個(gè)新鏈路集合,再?gòu)脑撔骆溌芳现羞x出利用率最高的鏈路1 inkm〇st_use3d,并 將利用率最高的鏈路linkMst_ used到擁塞鏈路的這段路徑設(shè)置為新延伸鏈路,新延伸鏈路的 兩端點(diǎn)設(shè)置為S、T,最后將利用率最高的鏈路linkmost+used加入延伸鏈路集合extend_link_ setfi?_i集合中,再執(zhí)行步驟(3.2); (3.5)、從備選路徑列表中選出可用帶寬最大的備選路徑?&他_^。1_,將流量^〇%在 延伸鏈路上的這段路由改為pathmax_?i_,并將流量fl〇Wi從擁塞鏈路的流量列表中刪除,執(zhí) 行步驟(4); (4) 、判斷擁塞鏈路c_linkk上的擁塞是否消除,如果擁塞已經(jīng)消除,則執(zhí)行步驟(5);否 則執(zhí)行步驟(6); (5) 、判斷擁塞鏈路列表中所有的擁塞鏈路是否完成遍歷,如果是,則結(jié)束處理;否則c_ linkk+i,再執(zhí)行步驟(2); (6) 、判斷流量列表中所有流量是否遍歷完成,如果沒(méi)有遍歷結(jié)束,則flow+i,再執(zhí)行步 驟(3);如果遍歷結(jié)束,則執(zhí)行步驟(7); (7) 、判斷拆分粒度g是否小于等于預(yù)設(shè)的拆分粒度上限gmax,如果滿足,則執(zhí)行步驟 (8),否則執(zhí)行步驟(5); (8 )、處理流量列表中的剩余流量; (8.1)、遍歷流量列表中的某一條剩余流量,查看其源、目的IP地址,選取范圍較大的地 址 addresswide; (8 · 2)、將addresswide地址劃分成2split-index個(gè)網(wǎng)段. .. . ..], 并將該條剩余流量按照這些地址拆分成2spllt_inde3X條細(xì)流; (8.3) 、在骨干網(wǎng)絡(luò)邊緣交換機(jī)的11的〇0?采集器中設(shè)置,統(tǒng)計(jì)出這2#11^111(^條流量的 大小,并用這2 spllt-indM條流量替換流量列表中該條剩余流量;判斷流量列表的剩余流量是 否遍歷完畢,如果遍歷完畢,執(zhí)行步驟(8.4),否則執(zhí)行步驟(8.1); (8.4) 、拆分粒度8 = 8+1,執(zhí)行步驟(2.2)。2.根據(jù)權(quán)利要求1所述的一種消除鏈路擁塞的骨干網(wǎng)絡(luò)流量調(diào)度方法,其特征在于,所 述的擁塞鏈路表中包括:鏈路名稱、鏈路編號(hào)、鏈路已用帶寬、鏈路利用率和鏈路總帶寬。
【文檔編號(hào)】H04L12/801GK106059941SQ201610554922
【公開(kāi)日】2016年10月26日
【申請(qǐng)日】2016年7月14日
【發(fā)明人】章雨鵬, 鄭少平, 虞紅芳, 譚凌鏘
【申請(qǐng)人】電子科技大學(xué)