專利名稱:用于在基于度量路由的網(wǎng)絡(luò)中執(zhí)行流量工程的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及網(wǎng)絡(luò)領(lǐng)域,并且在示例性實(shí)施例中,本發(fā)明涉及在基 于度量路由的網(wǎng)絡(luò)中執(zhí)行流量工程的方法和系統(tǒng)。
背景技術(shù):
在各種數(shù)據(jù)網(wǎng)絡(luò)中,使用最短路徑優(yōu)先(SPF)路由方法來確定數(shù)據(jù) 應(yīng)該在網(wǎng)絡(luò)中從任意源節(jié)點(diǎn)路由到任意目的節(jié)點(diǎn)的路徑。使用SPF路由方 法的數(shù)據(jù)網(wǎng)絡(luò)的示例是使用內(nèi)部網(wǎng)關(guān)協(xié)議(IGP)的OSPF或IS-IS版本的 因特網(wǎng)協(xié)議(IP)網(wǎng)絡(luò)。在基于SPF路由的網(wǎng)絡(luò)中的節(jié)點(diǎn)由單向鏈路連接。為每條鏈路分配一 個(gè)被稱為度量(metric)的正數(shù)。任意穿過網(wǎng)絡(luò)的路徑的長度都被定義為 組成該路徑的鏈路上的度量的和。根據(jù)該定義,從源節(jié)點(diǎn)行進(jìn)到目的節(jié)點(diǎn) 的數(shù)據(jù)在這兩個(gè)節(jié)點(diǎn)之間的最短路徑上行進(jìn)。如果多于一條路徑具有相同 代價(jià),則在這些相同代價(jià)的路徑之間以某種方式共享數(shù)據(jù)負(fù)載或帶寬。然后,網(wǎng)絡(luò)度量的選擇確定數(shù)據(jù)穿過網(wǎng)絡(luò)的路由。穿過給定的網(wǎng)絡(luò)路 由中的某些選擇可能比其他選擇更令人滿意?;诙攘康牧髁抗こ淌沁x擇 度量以實(shí)現(xiàn)所需路由的過程。出于以下多個(gè)原因中的任意原因,某些路由 可能比其他路由更優(yōu)選,所述原因例如是1. 為了使網(wǎng)絡(luò)中的每條鏈路都將帶寬利用率(例如所利用的網(wǎng)絡(luò) 容量的百分比)保持在某個(gè)百分比之下,或者盡可能的低,以 防止擁塞。2. 為了使網(wǎng)絡(luò)中的每條鏈路即使在網(wǎng)絡(luò)中的某些元件發(fā)生故障, 或者被有目的地禁用,并且必須將帶寬路由到網(wǎng)絡(luò)中別處的時(shí) 候,也可以將帶寬利用率保持在某個(gè)百分比之下,或者盡可能 的低。本領(lǐng)域中的這兩個(gè)方面已經(jīng)作為一些之前的學(xué)術(shù)研究的主題1. 從鏈路利用率的測量中估計(jì)網(wǎng)絡(luò)中的點(diǎn)到點(diǎn)帶寬需求(例如參見ACM SIGCOMM 2003中由Yin Zhang、 Matthew Roughen、 Carsten Lund禾口 David Donoho編寫的"An Information-Theoretic Approach to Traffic Matrix Estimation")。點(diǎn)到點(diǎn)帶寬需求的知識(shí)對(duì)于在修 改網(wǎng)絡(luò)的度量和/或拓?fù)涞那闆r下計(jì)算未來的鏈路利用率是必需 的。2. 用于基于正常網(wǎng)絡(luò)操作下的鏈路利用率來選擇網(wǎng)絡(luò)中的度量,從而 避免擁塞的算法(例如參見"Traffic engineering with traditional IP routing protocols" , IEEE通信雜志,40(10): 118-124,2002)。發(fā)明內(nèi)容根據(jù)本發(fā)明的一個(gè)方面,提供了 一種用于估計(jì)網(wǎng)絡(luò)內(nèi)的點(diǎn)到點(diǎn)帶寬需 求的系統(tǒng),所述網(wǎng)絡(luò)包括多個(gè)節(jié)點(diǎn)以及在多個(gè)節(jié)點(diǎn)之間的多條鏈路。所述系統(tǒng)包括網(wǎng)絡(luò)控制器,用于確定網(wǎng)絡(luò)中一組鏈路的鏈路流量量度,以及 確定網(wǎng)絡(luò)中一組節(jié)點(diǎn)之間的點(diǎn)到點(diǎn)帶寬需求量度,所述鏈路流量量度每個(gè) 都指示出各條鏈路的測定利用率,所述點(diǎn)到點(diǎn)帶寬需求量度每個(gè)都指示出 這組節(jié)點(diǎn)中包括的源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的測定需求。耦合到網(wǎng)絡(luò)控制器 的需求估計(jì)模塊處理來自網(wǎng)絡(luò)控制器的鏈路流量量度和點(diǎn)到點(diǎn)帶寬需求量 度,并且利用鏈路流量量度和點(diǎn)到點(diǎn)帶寬需求量度來計(jì)算用于多個(gè)節(jié)點(diǎn)的 多個(gè)點(diǎn)到點(diǎn)帶寬需求估計(jì)。根據(jù)本發(fā)明的另一方面,提供了一種用于估計(jì)網(wǎng)絡(luò)內(nèi)的點(diǎn)到點(diǎn)帶寬需求的方法,所述網(wǎng)絡(luò)包括多個(gè)節(jié)點(diǎn)以及在多個(gè)節(jié)點(diǎn)之間的多條鏈路。所述 方法包括確定網(wǎng)絡(luò)中一組鏈路的鏈路流量量度,所述鏈路流量量度每個(gè)都 指示出各條鏈路的測定利用率。確定網(wǎng)絡(luò)中一組節(jié)點(diǎn)之間的點(diǎn)到點(diǎn)帶寬需 求量度,所述點(diǎn)到點(diǎn)帶寬需求量度每個(gè)都指示出這組節(jié)點(diǎn)中包括的源節(jié)點(diǎn) 和目的節(jié)點(diǎn)之間的測定需求。利用鏈路流量量度和點(diǎn)到點(diǎn)帶寬需求量度來 計(jì)算用于多個(gè)節(jié)點(diǎn)的多個(gè)點(diǎn)到點(diǎn)帶寬需求估計(jì)。所述多個(gè)點(diǎn)到點(diǎn)需求估計(jì)可以用來仿真在網(wǎng)絡(luò)路由狀態(tài)改變情況下 (例如網(wǎng)絡(luò)拓?fù)涓淖?、由于網(wǎng)絡(luò)組件故障所產(chǎn)生的改變,或者在基于最短 路徑優(yōu)先來路由的網(wǎng)絡(luò)中的度量改變)的網(wǎng)絡(luò)路由。所述多個(gè)點(diǎn)到點(diǎn)需求估計(jì)還可以用來執(zhí)行網(wǎng)絡(luò)的路由仿真,以便在多 個(gè)點(diǎn)到點(diǎn)需求估計(jì)中的每一個(gè)點(diǎn)到點(diǎn)需求估計(jì)下識(shí)別出網(wǎng)絡(luò)內(nèi)的每條鏈路 的鏈路利用率。在一個(gè)實(shí)施例中,所述多個(gè)點(diǎn)到點(diǎn)需求估計(jì)可以用來使多個(gè)點(diǎn)到點(diǎn)需 求估計(jì)上以及多個(gè)網(wǎng)絡(luò)故障情形上的鏈路利用率最優(yōu)化。鏈路流量量度的確定可以包括利用網(wǎng)絡(luò)控制器來執(zhí)行對(duì)一組鏈路的流點(diǎn)到點(diǎn)帶寬需求量度的確定可以包括利用網(wǎng)絡(luò)控制器來執(zhí)行對(duì)一組節(jié) 點(diǎn)中的節(jié)點(diǎn)之間的帶寬需求的測量。在一個(gè)實(shí)施例中,如果鏈路流量量度和點(diǎn)到點(diǎn)帶寬需求量度不一致, 則計(jì)算點(diǎn)到點(diǎn)帶寬需求估計(jì)來調(diào)和所述不一致性。所述方法還包括對(duì)多個(gè)節(jié)點(diǎn)的在先點(diǎn)到點(diǎn)帶寬需求估計(jì),并且在點(diǎn)到 點(diǎn)帶寬需求估計(jì)的計(jì)算中使用所述在先點(diǎn)到點(diǎn)帶寬需求估計(jì)。所述計(jì)算可 以包括識(shí)別出一組鏈路流量值,使得存在這樣一組有效的點(diǎn)到點(diǎn)帶寬需求 水平當(dāng)通過網(wǎng)絡(luò)路由時(shí),假設(shè)網(wǎng)絡(luò)中沒有故障,這組有效的點(diǎn)到點(diǎn)帶寬 需求水平產(chǎn)生上述一組鏈路流量值。在一個(gè)示例性實(shí)施例中,上述一組鏈路流量值的識(shí)別使得上述一組有 效的點(diǎn)到點(diǎn)帶寬需求水平緊密匹配點(diǎn)到點(diǎn)帶寬需求量度。上述一組有效的 點(diǎn)到點(diǎn)帶寬需求水平與點(diǎn)到點(diǎn)帶寬需求量度之間的差別可以被最小化。在另一示例性實(shí)施例中,上述一組鏈路流量值的識(shí)別使得上述一組鏈路流量值緊密匹配鏈路流量量度。
所述計(jì)算可以包括識(shí)別出 一組靠近所述點(diǎn)到點(diǎn)帶寬需求量度的點(diǎn)到點(diǎn) 帶寬需求水平。所述計(jì)算還可以包括識(shí)別出 一組點(diǎn)到點(diǎn)需求帶寬水平,使得計(jì)算出的 一組鏈路流量值與識(shí)別出的這組點(diǎn)到點(diǎn)帶寬需求水平相對(duì)應(yīng),所述計(jì)算出 的這組鏈路流量值是基于識(shí)別出的這組點(diǎn)到點(diǎn)帶寬需求水平而計(jì)算出的。所述計(jì)算還可以包括識(shí)別出一組點(diǎn)到點(diǎn)需求帶寬水平,使得識(shí)別出的 這組點(diǎn)到點(diǎn)需求水平緊密匹配在先點(diǎn)到點(diǎn)需求帶寬水平。.根據(jù)本發(fā)明的另一方面,提供了一種用于使與網(wǎng)絡(luò)的鏈路相關(guān)聯(lián)的度 量最優(yōu)化的系統(tǒng),所述網(wǎng)絡(luò)利用最短路徑優(yōu)先(SPF)的路由方法來路 由。所述系統(tǒng)包括度量流量工程模塊,用于識(shí)別出至少一種可應(yīng)用于該 網(wǎng)絡(luò)的故障情形,識(shí)別出至少一種可應(yīng)用于通過該網(wǎng)絡(luò)路由的點(diǎn)到點(diǎn)需求 的帶寬水平情形,并且自動(dòng)計(jì)算網(wǎng)絡(luò)的多條鏈路中的每條鏈路的度量,從 而使通過網(wǎng)絡(luò)的需求路由在所述至少一種故障情形中以及在所述至少一種 帶寬水平情形中最優(yōu)化。耦合到所述度量流量工程模塊的轉(zhuǎn)換模塊,根據(jù) 計(jì)算出的網(wǎng)絡(luò)的多條鏈路中的每條鏈路的度量,將網(wǎng)絡(luò)配置改變發(fā)送到網(wǎng) 絡(luò)控制器。根據(jù)本發(fā)明的又一方面,提供了一種用于使與網(wǎng)絡(luò)的鏈路相關(guān)聯(lián)的度 量最優(yōu)化的方法,所述網(wǎng)絡(luò)利用最短路徑優(yōu)先(SPF)的路由方法來路 由。所述方法包括識(shí)別出至少一種可應(yīng)用于該網(wǎng)絡(luò)的故障情形。還識(shí)別出 至少一種可應(yīng)用于通過該網(wǎng)絡(luò)路由的點(diǎn)到點(diǎn)需求的帶寬水平情形。自動(dòng)計(jì) 算網(wǎng)絡(luò)的多條鏈路中的每條鏈路的度量,從而使通過該網(wǎng)絡(luò)的需求路由對(duì) 于所述至少一種故障情形以及所述至少一種帶寬水平情形最優(yōu)化。該方法還可以包括識(shí)別出可應(yīng)用于該網(wǎng)絡(luò)的多種故障情形和多種帶寬 水平情形,并且自動(dòng)計(jì)算該網(wǎng)絡(luò)的多條鏈路中的每條鏈路的度量,從而使 由度量確定的需求路由所產(chǎn)生的鏈路利用率對(duì)于網(wǎng)絡(luò)的多條鏈路中的每條 鏈路,對(duì)于所述多種故障情形中的每種故障情形,以及對(duì)于所述多種帶寬 水平情形中的每種帶寬水平情形,都可以在預(yù)定閾值以下。所述自動(dòng)計(jì)算可以是計(jì)算網(wǎng)絡(luò)的多條鏈路中的每條鏈路的度量,從而使多條鏈路中的每條鏈路的最大鏈路利用率最小化,所述最大鏈路利用率 是在所述多條鏈路上、所述多種故障情形上以及所述多種帶寬水平情形上 的最大鏈路利用率,并且所述最小化在鏈路度量的所有可能選擇上被執(zhí) 行。所述至少一種故障情形可以是由于網(wǎng)絡(luò)操作者為了禁止網(wǎng)絡(luò)中的至少 一部分而采取的自發(fā)動(dòng)作的結(jié)果。所述方法還可以包括應(yīng)用在最短路徑優(yōu)先的路由方法中計(jì)算出的用于 多條鏈路中的每條鏈路的度量,以便根據(jù)計(jì)算出的度量來路由網(wǎng)絡(luò)內(nèi)的流所述方法還可以包括將由于自動(dòng)計(jì)算出的用于至少一條鏈路的度量的 應(yīng)用而產(chǎn)生的,在至少一種故障情形以及至少一種帶寬水平情形上的最大 鏈路利用率傳送到用戶。在一個(gè)示例性實(shí)施例中,所述最大鏈路利用率的傳送包括指出是否有 至少一個(gè)最大鏈路利用率超過預(yù)定的閾值鏈路利用率。所述最大鏈路利用 率的傳送可以包括產(chǎn)生用戶界面,在該用戶界面中,直觀地指出至少一個(gè) 最大鏈路利用率。所述方法還可以包括將計(jì)算出的度量存儲(chǔ)在網(wǎng)絡(luò)內(nèi),以便根據(jù)所存儲(chǔ) 的度量,利用最短路徑優(yōu)先的路由方法來路由網(wǎng)絡(luò)。所述方法還可以包括識(shí)別出為其分別計(jì)算度量的網(wǎng)絡(luò)中的多條鏈路, 以作為網(wǎng)絡(luò)的核心鏈路。在一個(gè)實(shí)施例中,對(duì)于核心鏈路的任意度量選 擇,識(shí)別出沿著通過網(wǎng)絡(luò)核心的公共路由的多組點(diǎn)到點(diǎn)需求,并且將這些 需求聚集起來,并且在自動(dòng)計(jì)算中將其看作單個(gè)需求。根據(jù)本發(fā)明的又一方面,提供了一種用于將基于最短路徑優(yōu)先 (SPF)來路由的網(wǎng)絡(luò)從第一路由狀態(tài)遷移到第二路由狀態(tài)的系統(tǒng)。所述 系統(tǒng)包括轉(zhuǎn)換模塊,用于產(chǎn)生中間網(wǎng)絡(luò)規(guī)劃的序列,所述中間網(wǎng)絡(luò)規(guī)劃 中的每一個(gè)都修改根據(jù)在前的網(wǎng)絡(luò)規(guī)劃的在前的網(wǎng)絡(luò)狀態(tài),從而改變至少 一種需求在網(wǎng)絡(luò)中的路由,所述中間網(wǎng)絡(luò)規(guī)劃的序列用于將網(wǎng)絡(luò)從第一路 由狀態(tài)遷移到第二路由狀態(tài)。網(wǎng)絡(luò)控制器根據(jù)中間網(wǎng)絡(luò)規(guī)劃的序列來順序 配置網(wǎng)絡(luò),從而將網(wǎng)絡(luò)從第一路由狀態(tài)遷移到第二路由狀態(tài)。序列中的每個(gè)中間網(wǎng)絡(luò)規(guī)劃都將網(wǎng)絡(luò)配置為在至少一種預(yù)定限制內(nèi)進(jìn)行操作。本發(fā)明的另一方面提供了一種用于將基于最短路徑優(yōu)先(SPF)來路由的網(wǎng)絡(luò)從第一路由規(guī)劃遷移到第二路由規(guī)劃的方法,所述第一路由規(guī)劃使第一組度量與網(wǎng)絡(luò)的鏈路相關(guān)聯(lián),所述第二路由規(guī)劃使第二組度量與網(wǎng)絡(luò)的鏈路相關(guān)聯(lián)。所述方法包括產(chǎn)生中間網(wǎng)絡(luò)規(guī)劃的序列,所述中間網(wǎng)絡(luò)規(guī)劃中的每一個(gè)都修改根據(jù)在前的網(wǎng)絡(luò)規(guī)劃的在前的網(wǎng)絡(luò)狀態(tài),從而改變至少一種需求在網(wǎng)絡(luò)中的路由,中間網(wǎng)絡(luò)規(guī)劃的序列用于將網(wǎng)絡(luò)從依照第一網(wǎng)絡(luò)規(guī)劃的第一路由狀態(tài)遷移到依照第二網(wǎng)絡(luò)規(guī)劃的第二路由狀態(tài)。然后,根據(jù)中間網(wǎng)絡(luò)規(guī)劃的序列來順序配置網(wǎng)絡(luò),從而將網(wǎng)絡(luò)從第一路由狀態(tài)遷移到第二路由狀態(tài)。所述序列中的每個(gè)中間網(wǎng)絡(luò)規(guī)劃都將網(wǎng)絡(luò)配置為在至少一種預(yù)定限制內(nèi)進(jìn)行操作。所述至少一種預(yù)定限制可以是使在前的網(wǎng)絡(luò)狀態(tài)和所產(chǎn)生的網(wǎng)絡(luò)狀態(tài)之間的收斂時(shí)間小于預(yù)定的最大時(shí)間、不超過網(wǎng)絡(luò)的至少一條鏈路的預(yù)定容量的帶寬需求的最大百分比增長,或者與網(wǎng)絡(luò)內(nèi)的點(diǎn)到點(diǎn)需求相關(guān)聯(lián)的最大需求延遲。在一個(gè)實(shí)施例中,最大需求延遲被指定為與點(diǎn)到點(diǎn)需求相關(guān)聯(lián)的現(xiàn)有需求延遲上的百分比增長。所述至少一種預(yù)定限制還可以是網(wǎng) 絡(luò)的至少一條鏈路的最大鏈路帶寬利用率,其中所述最大鏈路帶寬利用率是在網(wǎng)絡(luò)的至少一種故障情形上。所述至少一種預(yù)定限制還可以是將在網(wǎng) 絡(luò)上提供的最小服務(wù)質(zhì)量,或者在多種故障情形上的最大鏈路帶寬利用"所述中間網(wǎng)絡(luò)規(guī)劃序列的產(chǎn)生可以包括定義網(wǎng)絡(luò)路由狀態(tài)樹,該樹以 第一路由狀態(tài)作為根,以及在該樹中識(shí)別出從根到第二網(wǎng)絡(luò)路由狀態(tài)的路 徑,從而作為路徑中的每個(gè)節(jié)點(diǎn)的各個(gè)網(wǎng)絡(luò)狀態(tài)將網(wǎng)絡(luò)配置為在至少一種 預(yù)定限制內(nèi)進(jìn)行操作。所述中間網(wǎng)絡(luò)規(guī)劃序列的產(chǎn)生可以包括確定中間網(wǎng)絡(luò)規(guī)劃的第一序列 超過第一限制,并且然后修改第一限制,以產(chǎn)生至少一種預(yù)定限制,其中 根據(jù)該至少一種預(yù)定限制來產(chǎn)生中間網(wǎng)絡(luò)規(guī)劃的序列。在一個(gè)示例性實(shí)施例中,中間網(wǎng)絡(luò)規(guī)劃序列中的特定中間網(wǎng)絡(luò)規(guī)劃可 以只在單個(gè)度量上與在前中間網(wǎng)絡(luò)規(guī)劃不同。在另一實(shí)施例中,中間網(wǎng)絡(luò)規(guī)劃序列中的特定中間網(wǎng)絡(luò)規(guī)劃可以有至少一個(gè)度量與在前中間網(wǎng)絡(luò)規(guī)劃 不同,或者網(wǎng)絡(luò)的至少一條鏈路的狀態(tài)與由在前中間網(wǎng)絡(luò)規(guī)劃指定的在前 狀態(tài)不同。例如,所述狀態(tài)可以是活動(dòng)狀態(tài),并且在前狀態(tài)是非活動(dòng)狀 態(tài),或者所述狀態(tài)是非活動(dòng)狀態(tài),并且在前狀態(tài)是活動(dòng)狀態(tài)。所述方法可以包括識(shí)別出第一組鏈路,并且其中序列中的第一中間網(wǎng) 絡(luò)規(guī)劃與在前中間網(wǎng)絡(luò)規(guī)劃的不同之處在于第一組鏈路內(nèi)的每條鏈路的狀 態(tài)與由在前中間網(wǎng)絡(luò)規(guī)劃指定的在前狀態(tài)不同。所述網(wǎng)絡(luò)的順序配置可以包括順序?qū)⒅虚g網(wǎng)絡(luò)規(guī)劃序列中的每個(gè)中間 網(wǎng)絡(luò)規(guī)劃從轉(zhuǎn)換序列模塊傳送到網(wǎng)絡(luò)控制器,其中所述轉(zhuǎn)換序列模塊接收 來自網(wǎng)絡(luò)控制器的確認(rèn),該確認(rèn)表明特定的中間網(wǎng)絡(luò)規(guī)劃在傳送后續(xù)中間 網(wǎng)絡(luò)規(guī)劃之前已經(jīng)被配置。本發(fā)明的另一方面在于提供了一種用于產(chǎn)生界面來顯示關(guān)于網(wǎng)絡(luò)的信 息的自動(dòng)化方法,該方法包括識(shí)別出網(wǎng)絡(luò)節(jié)點(diǎn)的至少一個(gè)集合,以構(gòu)成網(wǎng) 絡(luò)站點(diǎn)。產(chǎn)生所述界面將包括的第一顯示,該第一顯示描繪了代表網(wǎng)絡(luò)內(nèi) 的各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)和網(wǎng)絡(luò)鏈路的圖形節(jié)點(diǎn)和圖形鏈路,其中網(wǎng)絡(luò)節(jié)點(diǎn)的至少 一個(gè)集合由所述顯示內(nèi)的單個(gè)圖形節(jié)點(diǎn)來代表。產(chǎn)生所述界面將包括的第 二顯示,所述第二顯示描繪了網(wǎng)絡(luò)節(jié)點(diǎn)的至少一個(gè)集合,以及所述至少一 個(gè)集合中的節(jié)點(diǎn)之間的網(wǎng)絡(luò)鏈路。所述界面的產(chǎn)生是與將第一和第二顯示 提供到用戶同步發(fā)生的。所述網(wǎng)絡(luò)節(jié)點(diǎn)的集合的識(shí)別可以包括將網(wǎng)絡(luò)節(jié)點(diǎn)的至少一個(gè)集合識(shí)別 為位于公共的物理位置。所述第二顯示的產(chǎn)生可以包括還在第二顯示內(nèi)描繪出所述至少一個(gè)集 合中的節(jié)點(diǎn)與所述至少一個(gè)集合外的節(jié)點(diǎn)之間的網(wǎng)絡(luò)鏈路。在網(wǎng)絡(luò)中的一對(duì)節(jié)點(diǎn)之間的至少兩條鏈路可以被顯示為構(gòu)成回路,以 便于這對(duì)節(jié)點(diǎn)之間的雙向通信,所述第一顯示的產(chǎn)生包括代表了節(jié)點(diǎn)對(duì)之 間的回路的圖形回路。所述方法可以包括產(chǎn)生圖形回路,從而直觀地指出節(jié)點(diǎn)對(duì)之間的帶寬可以產(chǎn)生圖形回路,從而描繪出構(gòu)成所代表的網(wǎng)絡(luò)回路的網(wǎng)絡(luò)鏈路,以直觀地指示出所代表的網(wǎng)絡(luò)回路的帶寬利用率(例如通過根據(jù)顏色/利用 率索引對(duì)圖形鏈路著色,或者通過與所述帶寬利用率成比例地對(duì)圖形鏈路 的一部分著色)??梢援a(chǎn)生所述界面,以給出對(duì)關(guān)于網(wǎng)絡(luò)的故障情形的用戶說明,并且 提供對(duì)響應(yīng)于故障情形的通過網(wǎng)絡(luò)的重路由需求的顯示??梢援a(chǎn)生所述界面,以給出對(duì)關(guān)于網(wǎng)絡(luò)的帶寬需求水平的用戶說明, 并且提供對(duì)響應(yīng)于指定的帶寬需求水平的網(wǎng)絡(luò)內(nèi)帶寬利用率的顯示。甚至還可以產(chǎn)生所述界面,以給出對(duì)網(wǎng)絡(luò)流量服務(wù)等級(jí)的用戶說明, 并且提供一種或多種指定的網(wǎng)絡(luò)流量服務(wù)等級(jí)特有的帶寬需求和帶寬利用 率信息。在一個(gè)示例性實(shí)施例中,可以產(chǎn)生所述界面,以提供對(duì)與網(wǎng)絡(luò)中屬于 指定的網(wǎng)絡(luò)流量服務(wù)等級(jí)的網(wǎng)絡(luò)流量可獲得的容量總量相等的容量的指 示,并且以容量的比例示出帶寬利用率信息。還可以產(chǎn)生所述界面,以顯示在所定義的最壞情況的故障情形中,對(duì) 于網(wǎng)絡(luò)中至少一條鏈路的帶寬需求和帶寬利用率信息中的至少一種??梢曰诙喾N故障情形和多種需求帶寬水平中的最高利用率對(duì)將顯示 在界面內(nèi)的每條鏈路著色,從而將多條鏈路描繪為具有多種故障情形和多 種需求帶寬水平中的至少一種所表現(xiàn)出的利用率。本發(fā)明的又一方面在于,提供了一種用于使基于最短路徑優(yōu)先來路由 的網(wǎng)絡(luò)內(nèi)的路由最優(yōu)化的方法。該方法包括估計(jì)網(wǎng)絡(luò)內(nèi)的帶寬需求。利用 估計(jì)出的帶寬需求來確定當(dāng)前狀態(tài)中網(wǎng)絡(luò)內(nèi)的帶寬利用率。執(zhí)行與網(wǎng)絡(luò)的 鏈路相關(guān)聯(lián)的度量的最優(yōu)化,從而識(shí)別出網(wǎng)絡(luò)的所需狀態(tài),在所述所需狀 態(tài)內(nèi),相對(duì)于當(dāng)前狀態(tài)降低了網(wǎng)絡(luò)內(nèi)的帶寬利用率。產(chǎn)生轉(zhuǎn)換序列,從而 將網(wǎng)絡(luò)從當(dāng)前狀態(tài)遷移到所需狀態(tài)。本發(fā)明的其他特征將從以下的附圖和詳細(xì)描述中顯現(xiàn)出來。
在附圖的圖形中,以示例的方式,而不是限制的方式示出了本發(fā)明, 在附圖中相同的標(biāo)號(hào)指示相似的元件,在附圖中圖1根據(jù)本發(fā)明的示例性實(shí)施例示出了流量工程系統(tǒng)的框圖。圖2A和2B根據(jù)本發(fā)明的示例性實(shí)施例,示出了網(wǎng)絡(luò)規(guī)劃數(shù)據(jù)結(jié)構(gòu)的圖形表示,所述網(wǎng)絡(luò)規(guī)劃數(shù)據(jù)結(jié)構(gòu)可以用于存儲(chǔ)關(guān)于現(xiàn)有以及所需網(wǎng)絡(luò)規(guī)劃的信息。圖3是圖2所示的網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)所涉及的示例性網(wǎng)絡(luò)的圖形表示。圖4根據(jù)本發(fā)明的示例性實(shí)施例,示出了用于計(jì)算網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)的帶寬利用率結(jié)構(gòu)的方法的流程圖。圖5根據(jù)本發(fā)明的示例性實(shí)施例,示出了度量流量工程模塊的體系結(jié)構(gòu)細(xì)節(jié)的框圖。圖6是示例性網(wǎng)絡(luò)的圖形表示,并且示出了示例性核心網(wǎng)絡(luò)規(guī)劃模塊 如何創(chuàng)建核心網(wǎng)絡(luò)規(guī)劃。圖7根據(jù)本發(fā)明的示例性實(shí)施例,示出了可以由核心網(wǎng)絡(luò)規(guī)劃創(chuàng)建模 塊實(shí)現(xiàn)的,用于創(chuàng)建需求結(jié)構(gòu)的方法的流程圖。圖8是兩種示例性需求結(jié)構(gòu)的圖形表示。圖9根據(jù)本發(fā)明的示例性實(shí)施例,示出了用于在度量最優(yōu)化模塊中使 度量最優(yōu)化的方法的流程圖。圖10根據(jù)本發(fā)明的示例性實(shí)施例,示出了轉(zhuǎn)換模塊(changeover module)的體系結(jié)構(gòu)的框圖。圖11根據(jù)本發(fā)明的示例性實(shí)施例,示出了可以由轉(zhuǎn)換序列產(chǎn)生模塊 創(chuàng)建的轉(zhuǎn)換序列的數(shù)據(jù)結(jié)構(gòu)的框圖。圖12根據(jù)本發(fā)明的示例性實(shí)施例,示出了可以由轉(zhuǎn)換序列產(chǎn)生模塊 實(shí)現(xiàn)的,用于產(chǎn)生轉(zhuǎn)換序列的方法的流程圖。圖13根據(jù)本發(fā)明的示例性實(shí)施例,示出了可以由轉(zhuǎn)換信令模塊利用 網(wǎng)絡(luò)控制器實(shí)現(xiàn)來執(zhí)行轉(zhuǎn)換序列的方法的流程圖。圖14是根據(jù)本發(fā)明一個(gè)示例性實(shí)施例的轉(zhuǎn)換序列結(jié)構(gòu)的圖形表示, 以及網(wǎng)絡(luò)中的鏈路利用率表和轉(zhuǎn)換序列的每個(gè)步驟。圖15根據(jù)本發(fā)明的示例性實(shí)施例,示出了需求估計(jì)模塊與流量工程 系統(tǒng)中的其他元件進(jìn)行交互的框圖。圖16根據(jù)本發(fā)明的示例性實(shí)施例,示出了可以由基本需求估計(jì)器實(shí)現(xiàn)的,用于計(jì)算基本需求的方法的流程圖。圖17根據(jù)本發(fā)明的示例性實(shí)施例,示出了可以由需求變化估計(jì)器實(shí) 現(xiàn)的,用于計(jì)算需求變化的方法的流程圖。圖18到圖21示出了在本發(fā)明一個(gè)示例性實(shí)施例中,可以由GUI產(chǎn)生并表示的示例性界面。圖22以計(jì)算機(jī)系統(tǒng)的示例性形式示出了機(jī)器的圖形表示,在所述計(jì) 算機(jī)系統(tǒng)內(nèi),可以執(zhí)行用于致使機(jī)器執(zhí)行這里所述的方法和算法中的任意 一個(gè)或多個(gè)的一組指令。
具體實(shí)施方式
這里將描述示例性流量工程系統(tǒng),以及由系統(tǒng)執(zhí)行的各種示例性方法 和功能。在以下描述中,出于解釋的目的而提出了大量具體細(xì)節(jié),以便對(duì) 本發(fā)明提供全面的理解。但是,本領(lǐng)域的技術(shù)人員顯而易見,沒有這些具 體細(xì)節(jié)也可以實(shí)施本發(fā)明。圖1根據(jù)本發(fā)明的一個(gè)示例性實(shí)施例,示出了流量工程系統(tǒng)10的框 圖。圖中的箭頭表示穿過系統(tǒng)10的數(shù)據(jù)流的方向。示例性網(wǎng)絡(luò)100是基于SPF路由的電信網(wǎng)絡(luò),在該網(wǎng)絡(luò)上,系統(tǒng)10 通過操作鏈路度量和/或激活或禁止網(wǎng)絡(luò)100中的各種元件或元件集合, 來執(zhí)行流量工程。網(wǎng)絡(luò)控制器105進(jìn)行操作,從而從網(wǎng)絡(luò)100中提取出配置和利用率測 量結(jié)果,并且在網(wǎng)絡(luò)IOO上執(zhí)行配置改變。網(wǎng)絡(luò)控制器105例如可以是下 列形式中的一種或多種1. 用于自動(dòng)執(zhí)行這些任務(wù)的專用軟件和/或硬件,2. 能夠手工與網(wǎng)絡(luò)100進(jìn)行交互,從而提取出必要信息或修改網(wǎng)絡(luò) 配置的人工網(wǎng)絡(luò)控制者,或者3. 網(wǎng)絡(luò)100本身中能夠執(zhí)行測量和控制所需功能的軟件和/或硬件。 網(wǎng)絡(luò)控制器105建立被方便地稱為現(xiàn)有網(wǎng)絡(luò)規(guī)劃115的數(shù)據(jù)結(jié)構(gòu)?,F(xiàn)有網(wǎng) 絡(luò)規(guī)劃115由圖形用戶界面(GUI) 140和度量流量工程模塊125用來建 立所需網(wǎng)絡(luò)規(guī)劃130。現(xiàn)有網(wǎng)絡(luò)規(guī)劃115和所需網(wǎng)絡(luò)規(guī)劃130兩者都被輸入到轉(zhuǎn)換模塊135,該轉(zhuǎn)換模塊135建立轉(zhuǎn)換序列(例如用于將網(wǎng)絡(luò)100從現(xiàn)有配置改變到所需配置的網(wǎng)絡(luò)拓?fù)浜投攘颗渲酶淖兊男蛄?。然后,由轉(zhuǎn)換模塊135創(chuàng)建的轉(zhuǎn)換序列被發(fā)送到網(wǎng)絡(luò)控制器105,該網(wǎng)絡(luò)控制器 105在網(wǎng)絡(luò)100上逐步實(shí)現(xiàn)改變?,F(xiàn)有網(wǎng)絡(luò)規(guī)劃115是一種使用以下信息 建立的數(shù)據(jù)結(jié)構(gòu)1. 直接從網(wǎng)絡(luò)控制器105獲得的,關(guān)于網(wǎng)絡(luò)100的拓?fù)涞男畔ⅰ?. 關(guān)于網(wǎng)絡(luò)100中的點(diǎn)到點(diǎn)帶寬需求的信息,該信息如果無法經(jīng)由 網(wǎng)絡(luò)控制器105而直接從網(wǎng)絡(luò)100中讀取,則從需求估計(jì)模塊110 中獲得。否則,該信息可以從網(wǎng)絡(luò)控制器105中獲得。3. 被方便地標(biāo)注為擴(kuò)充網(wǎng)絡(luò)數(shù)據(jù)120的額外網(wǎng)絡(luò)規(guī)劃信息,該信息 無法經(jīng)由網(wǎng)絡(luò)控制器105而直接從網(wǎng)絡(luò)100中獲得。該擴(kuò)充網(wǎng)絡(luò)數(shù) 據(jù)120例如可以由網(wǎng)絡(luò)100中的各種共享風(fēng)險(xiǎn)鏈路組(SRLG)(例如已經(jīng)確定具有某種一起發(fā)生故障的合理可能性的鏈路組) 組成。GUI 140為用戶提供現(xiàn)有網(wǎng)絡(luò)規(guī)劃115的表示,從而使用戶了解網(wǎng)絡(luò) 100的當(dāng)前狀態(tài)。GUI 140還協(xié)助創(chuàng)建所需網(wǎng)絡(luò)規(guī)劃130。所需網(wǎng)絡(luò)規(guī)劃 130例如可以以下列方式而不同于現(xiàn)有網(wǎng)絡(luò)規(guī)劃115:1. 在現(xiàn)有網(wǎng)絡(luò)規(guī)劃115中處于活動(dòng)狀態(tài)(例如所有組件都處于正 確地工作中)的一些SRLG在所需網(wǎng)絡(luò)規(guī)劃130中處于非活動(dòng) 狀態(tài)(例如所述組件都未在工作中)。所需網(wǎng)絡(luò)規(guī)劃130中的 這種改變是由用戶通過GUI 140來執(zhí)行的。例如,如果用戶出 于維護(hù)的目的而想要從網(wǎng)絡(luò)IOO中除去一個(gè)節(jié)點(diǎn),用戶則可以 創(chuàng)建所需網(wǎng)絡(luò)規(guī)劃130,在該所需網(wǎng)絡(luò)規(guī)劃130中,相應(yīng)節(jié)點(diǎn) 被禁止,并且使用度量流量工程模塊125來確定一組用于所需 網(wǎng)絡(luò)規(guī)劃130的度量,在這組度量下,相應(yīng)節(jié)點(diǎn)的禁止對(duì)鏈路 利用率具有最小影響。然后,轉(zhuǎn)換模塊135確定度量改變以及 發(fā)生節(jié)點(diǎn)禁止的順序,從而以對(duì)網(wǎng)絡(luò)IOO的最小擾亂而改變到 所需網(wǎng)絡(luò)規(guī)劃130。2. 在現(xiàn)有網(wǎng)絡(luò)規(guī)劃115中處于非活動(dòng)狀態(tài)的一些SRLG在所需網(wǎng)絡(luò)規(guī)劃130中處于活動(dòng)狀態(tài)。所需網(wǎng)絡(luò)規(guī)劃130中的這種改變可以由用戶通過GUI 140來執(zhí)行的。例如,假設(shè)用戶已經(jīng)如以上l.中所述而禁止了一個(gè)節(jié)點(diǎn),并且一旦維護(hù)完成,用戶就想要重新激活該節(jié)點(diǎn)?,F(xiàn)有網(wǎng)絡(luò)規(guī)劃115是在l.中的所需網(wǎng)絡(luò)規(guī) 劃130,并且所需網(wǎng)絡(luò)規(guī)劃130是在l.中的現(xiàn)有網(wǎng)絡(luò)規(guī)劃 115。然后,轉(zhuǎn)換模塊135將確定應(yīng)該執(zhí)行度量改變和節(jié)點(diǎn)重 新激活的順序,以便使網(wǎng)絡(luò)100變回其初始配置。 3. —些度量在現(xiàn)有網(wǎng)絡(luò)規(guī)劃115中可能與在所需網(wǎng)絡(luò)規(guī)劃130中 有所不同。這可能是度量流量工程模塊125改變所需網(wǎng)絡(luò)規(guī)劃 130的度量,以提高網(wǎng)絡(luò)100的利用率特性的結(jié)果,或者也可 以由GUI 140的用戶來手工改變度量。然后,轉(zhuǎn)換模塊135可 以確定應(yīng)該在網(wǎng)絡(luò)IOO本身上改變這些度量的順序。 圖2A和2B根據(jù)本發(fā)明的示例性實(shí)施例,示出了網(wǎng)絡(luò)規(guī)劃數(shù)據(jù)結(jié)構(gòu) 200,該網(wǎng)絡(luò)規(guī)劃數(shù)據(jù)結(jié)構(gòu)200用于存儲(chǔ)關(guān)于現(xiàn)有網(wǎng)絡(luò)規(guī)劃115和所需網(wǎng) 絡(luò)規(guī)劃130兩者的信息。示例性網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)200包括拓?fù)浣Y(jié)構(gòu)205、需求結(jié)構(gòu)220、共享風(fēng) 險(xiǎn)鏈路組結(jié)構(gòu)230和帶寬利用率結(jié)構(gòu)235。拓?fù)浣Y(jié)構(gòu)205包含關(guān)于網(wǎng)絡(luò)拓?fù)涞男畔?,例如網(wǎng)絡(luò)100的物理結(jié)構(gòu)及 其內(nèi)部配置。示出的拓?fù)浣Y(jié)構(gòu)205還包含鏈路數(shù)據(jù)結(jié)構(gòu)210和節(jié)點(diǎn)數(shù)據(jù)結(jié) 構(gòu)215。鏈路數(shù)據(jù)結(jié)構(gòu)210列出了網(wǎng)絡(luò)100中的鏈路。網(wǎng)絡(luò)鏈路是單向 的,從網(wǎng)絡(luò)100中的一個(gè)節(jié)點(diǎn)到另一節(jié)點(diǎn)。對(duì)于網(wǎng)絡(luò)100中的每條鏈路, 鏈路數(shù)據(jù)結(jié)構(gòu)210記錄了鏈路名稱、鏈路發(fā)起的節(jié)點(diǎn)(From節(jié)點(diǎn))、鏈 路終止的節(jié)點(diǎn)(To節(jié)點(diǎn))、例如以兆位每秒(Mb/s)表示的鏈路容量、 鏈路度量、鏈路延遲以及該鏈路是否是核心鏈路。鏈路延遲是數(shù)據(jù)穿過相 應(yīng)鏈路所花費(fèi)的時(shí)間(例如以毫秒(ms)表示)。核心網(wǎng)絡(luò)的概念將在 下文中詳細(xì)解釋。節(jié)點(diǎn)數(shù)據(jù)結(jié)構(gòu)215列出了網(wǎng)絡(luò)100中的節(jié)點(diǎn)。對(duì)于網(wǎng)絡(luò)100中的每個(gè) 節(jié)點(diǎn),節(jié)點(diǎn)數(shù)據(jù)結(jié)構(gòu)215列出了節(jié)點(diǎn)名稱以及該節(jié)點(diǎn)是否是核心節(jié)點(diǎn)。核 心節(jié)點(diǎn)的概念也將在下文中詳細(xì)描述?,F(xiàn)在轉(zhuǎn)到需求結(jié)構(gòu)220,該結(jié)構(gòu)220包含穿過網(wǎng)絡(luò)100的一列帶寬需 求。帶寬需求可以是確實(shí)(或可能)從網(wǎng)絡(luò)100中的一個(gè)源節(jié)點(diǎn)或一組源 節(jié)點(diǎn)流到網(wǎng)絡(luò)100中的一個(gè)目的節(jié)點(diǎn)或一組目的節(jié)點(diǎn)的真實(shí)的或者假設(shè)的 帶寬水平。每個(gè)帶寬需求包含一組源節(jié)點(diǎn)和一組目的節(jié)點(diǎn),以及一個(gè)或多 個(gè)與需求相關(guān)聯(lián)的帶寬水平225。每個(gè)帶寬水平225包含帶寬水平名稱以 及以兆位每秒(Mb/s)表示的帶寬水平本身。需求可以包含多于一個(gè)帶寬 水平225,以例如代表在一天中不同時(shí)間上的帶寬水平,或者如果需求帶 寬不是確切已知的,而是從對(duì)網(wǎng)絡(luò)100的測量中估計(jì)出來的,則需求可以 包含多于一個(gè)帶寬水平225可以代表不同的假設(shè)帶寬水平。共享風(fēng)險(xiǎn)鏈路組(SRLG)結(jié)構(gòu)230包含網(wǎng)絡(luò)100上的一個(gè)或多個(gè) SRLG的定義。在示例性實(shí)施例中,SRLG是多組網(wǎng)絡(luò)鏈路,這些網(wǎng)絡(luò)鏈 路具有某種在同一時(shí)間同時(shí)發(fā)生故障的不可忽略的可能性。例如,SRLG可以是網(wǎng)絡(luò)100中的一個(gè)回路,該回路連接兩個(gè)節(jié)點(diǎn)并包含兩條鏈路,一 條鏈路在一個(gè)方向上連接節(jié)點(diǎn),而另一條鏈路在相反方向上連接節(jié)點(diǎn)。在 典型的IP網(wǎng)絡(luò)中,如果這些鏈路中的一條發(fā)生故障(例如由于在鏈路發(fā) 起節(jié)點(diǎn)上的鏈路接口卡發(fā)生故障),另一條也將發(fā)生故障。這樣,應(yīng)該考 慮這兩條鏈路一起發(fā)生故障的情況。SRLG的另一示例是在特定節(jié)點(diǎn)處發(fā) 起和終止的所有鏈路。如果該特定節(jié)點(diǎn)將發(fā)生故障或被禁止,所有這些鏈 路將同時(shí)變?yōu)榉腔顒?dòng)狀態(tài)。SRLG的又一示例是沿著同一物理管道(conduit)放置的一組回路內(nèi)的一組鏈路。如果該管道在物理上被切斷, 所有這些鏈路則將同時(shí)發(fā)生故障。SRLG結(jié)構(gòu)230這樣列出了多個(gè)SRLG,并且指示出在這些SRLG中 包括哪些鏈路。在用于示出示例性網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)200的示例數(shù)據(jù)中,存在 四個(gè)回路、 一條管道和一個(gè)可以發(fā)生故障的節(jié)點(diǎn)。在圖3中將對(duì)此進(jìn)行描 述。對(duì)于SRLG結(jié)構(gòu)230中列出的每個(gè)SRLG,用一個(gè)標(biāo)志指示出相應(yīng) SRLG是否處于活動(dòng)狀態(tài)。這些標(biāo)志能夠指示出具有相同拓?fù)浣Y(jié)構(gòu)的兩個(gè) 不同網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)(例如現(xiàn)有網(wǎng)絡(luò)規(guī)劃115和所需網(wǎng)絡(luò)規(guī)劃130)之間的 拓?fù)洳町?。如果SRLG沒有被激活,那么出于路由的目的,則指示SRLG中的鏈路在網(wǎng)絡(luò)100中不存在。在本發(fā)明的一個(gè)示例性實(shí)施例中,在SRLG結(jié)構(gòu)中列出的一個(gè)SRLG 可以被看作特殊情況,并且總是被列出"無故障"SRLG。這個(gè)特殊情 況的SRLG可以是空的SRLG,即不包含鏈路。特殊情況的SRLG是為了 方便而提供的,因此在不同故障情形下,以一次通過一個(gè)SRLG的方式執(zhí) 行循環(huán)來計(jì)算網(wǎng)絡(luò)行為的操作將包括作為這些情形之一的無故障的情形。在本發(fā)明的一個(gè)示例性實(shí)施例中,帶寬利用率結(jié)構(gòu)235可以以如下參 考圖4將描述的方式從網(wǎng)絡(luò)規(guī)劃數(shù)據(jù)結(jié)構(gòu)200的其余部分中計(jì)算出來。對(duì) 于需求結(jié)構(gòu)220中命名的每個(gè)帶寬水平,將帶寬水平利用率結(jié)構(gòu)240包括 在帶寬利用率結(jié)構(gòu)235中。對(duì)于網(wǎng)絡(luò)100中的每條鏈路,以及對(duì)于SRLG 結(jié)構(gòu)230中列出的每個(gè)SRLG,帶寬利用率結(jié)構(gòu)235記錄了特定鏈路的百 分比帶寬利用率,其中需求結(jié)構(gòu)220中的需求被路由通過SRLG中的鏈路 在其中是非活動(dòng)的網(wǎng)絡(luò)100。圖3示出了圖2所示的網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)200中的數(shù)據(jù)所涉及的示例性網(wǎng) 絡(luò)301。網(wǎng)絡(luò)301中的三個(gè)節(jié)點(diǎn)A、 B和C被圖示為325、 335和330。在 鏈路數(shù)據(jù)結(jié)構(gòu)210中列出的每條鏈路在這里被圖示為從鏈路的發(fā)起節(jié)點(diǎn)到 終止節(jié)點(diǎn)的箭頭。這里以兩對(duì)的形式示出了連接節(jié)點(diǎn)A和節(jié)點(diǎn)B的四條 鏈路。第一鏈路對(duì)300包括圖2所示的SRLG結(jié)構(gòu)230中的SRLG列表中 的回路1。第二鏈路對(duì)305相似地包括回路2?;芈?和屈路4被示為鏈 路對(duì)310和315。由于在310和315中的四條鏈路是在節(jié)點(diǎn)C處發(fā)起和終 止的一組鏈路,因此它們構(gòu)成了被標(biāo)注為節(jié)點(diǎn)C的SRLG,并且因此如果 節(jié)點(diǎn)C發(fā)生故障,這四條鏈路也將發(fā)生故障。由于組成300和305的四條 鏈路沿著相同的物理路由連接節(jié)點(diǎn)A和節(jié)點(diǎn)B,因此它們還一起構(gòu)成了 SRLG 320,該SRLG 320代表兩個(gè)回路300和305 —起位于的單個(gè)管道。圖4示出了根據(jù)本發(fā)明的示例性實(shí)施例的方法401的流程圖,該方法 401用于從網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)200中除了帶寬利用率結(jié)構(gòu)235之外的其他組 件,即拓?fù)浣Y(jié)構(gòu)205、需求結(jié)構(gòu)220和共享風(fēng)險(xiǎn)鏈路組結(jié)構(gòu)230中計(jì)算帶 寬利用率結(jié)構(gòu)235。在方框400中,指定符號(hào)來代表給定的網(wǎng)絡(luò)規(guī)劃。該網(wǎng)絡(luò)規(guī)劃具有被編號(hào)為]^=1,..^的鏈路,其中每條鏈路具有容量C(k)。需求結(jié)構(gòu)220包含 需求i-l,…,n,其中每個(gè)需求具有b個(gè)帶寬水平,b=l,...,B。源節(jié)點(diǎn)和目 的節(jié)點(diǎn)被指定為S(i)和D(i), i=l,...,n。用bw(i,b)給出第i個(gè)需求的第b個(gè) 帶寬水平。在SRLG結(jié)構(gòu)230中的SRLG被編號(hào)為j=l,...,m。在方框405中,將存儲(chǔ)帶寬利用率結(jié)構(gòu)235的數(shù)組U被初始化為0。 就是說,將對(duì)于所有SRLG j=l,...m、鏈路k4,…,p和帶寬水平b-l,...,B 的B(j,k,b)都設(shè)置為0。計(jì)數(shù)器i、 j和b被設(shè)置為1。這些將分別索引需 求、SRLG和帶寬水平。在方框410中,計(jì)算出穿過網(wǎng)絡(luò)100從源節(jié)點(diǎn)S(i)到目的節(jié)點(diǎn)D(i)的 需求i的最短路徑路由,在所述網(wǎng)絡(luò)100中己經(jīng)除去了與SRLG j相關(guān)聯(lián) 的鏈路。最短路徑是使用拓?fù)渲墟溌分械拿織l鏈路上的度量而計(jì)算出的。 對(duì)于該過程,可以使用多個(gè)公知算法中的任意算法,所述公知算法例如包 括Dijkstra算法。如果從源節(jié)點(diǎn)到目的節(jié)點(diǎn)之間存在多于一條最短路徑, 則在這些最短路徑之間存在各種分流方法,并且方法401在這里模仿被建 模的網(wǎng)絡(luò)100所使用的方法。例如,可以使用等代價(jià)多路徑(ECMP)算 法,.在該算法中,將數(shù)據(jù)流平均分流到具有相等長度的所有路徑中。由該需求所采用的路由確定該需求在網(wǎng)絡(luò)100中的每條鏈路上的利用 率。將D(k) (k從1到p)設(shè)置為該需求i通過鏈路k的利用率 (Mb/s)。在方框415中,將需求i的利用率的向量D添加到帶寬水平利用率結(jié) 構(gòu)240中,所述需求i具有發(fā)生故障的SRLGj以及帶寬水平b。方框420、 425、 430、 435、 440和445協(xié)助執(zhí)行通過方框410的循 環(huán),該循環(huán)對(duì)于i從l到n、 j從l到m和b從l到B的每種組合(即對(duì)于 每個(gè)需求、SRLG和帶寬水平)都執(zhí)行一次。最后, 一旦所有循環(huán)結(jié)束,方框450就將以U (Mb/s)表示的利用率 轉(zhuǎn)換到以每條鏈路的容量的百分比表示的利用率。U中的每個(gè)條目除以網(wǎng) 絡(luò)中相應(yīng)鏈路的容量。于是所得到的U就是所需的利用率結(jié)構(gòu)。圖5根據(jù)本發(fā)明的示例性實(shí)施例,提供了關(guān)于度量流量工程模塊125 的體系結(jié)構(gòu)的更多細(xì)節(jié)的框圖?,F(xiàn)在將參考圖5來描述關(guān)于由度量流量工程模塊125執(zhí)行的各種功能的更多細(xì)節(jié)?,F(xiàn)有網(wǎng)絡(luò)規(guī)劃500被輸入到度量流量工程模塊125中。度量流量工程 模塊125進(jìn)行操作,以替換現(xiàn)有網(wǎng)絡(luò)規(guī)劃500中的一些或全部鏈路度量, 從而改善規(guī)劃需求所產(chǎn)生的路由。出于解釋的目的,認(rèn)為典型電信網(wǎng)絡(luò)的鏈路可以被劃分為核心節(jié)點(diǎn)和 非核心節(jié)點(diǎn)。連接兩個(gè)核心節(jié)點(diǎn)的鏈路是核心鏈路,否則就是非核心鏈 路。在本發(fā)明的一個(gè)示例性實(shí)施例中,由度量流量工程模塊125執(zhí)行的流 量工程過程通過只改變核心鏈路中的度量進(jìn)行操作。這可以通過減少可以 被修改的變量數(shù)目來降低最優(yōu)化任務(wù)的復(fù)雜性。而且,通常情況是這樣 的整個(gè)網(wǎng)絡(luò)上的非核心鏈路(例如邊緣鏈路或?qū)Φ孺溌?的度量都被標(biāo)準(zhǔn)化,并且如果不破壞網(wǎng)絡(luò)的配置方針,就無法改變它。而且,通過限制 網(wǎng)絡(luò)核心的最優(yōu)化,可以將從核心外發(fā)起的需求聚集成通過核心的較小量 需求,從而進(jìn)一步降低最優(yōu)化任務(wù)的復(fù)雜性。因此,所示度量流量工程模 塊125包括核心網(wǎng)絡(luò)規(guī)劃創(chuàng)建模塊510,該模塊以在圖6、 7和8中將描述 的方式將現(xiàn)有網(wǎng)絡(luò)規(guī)劃500轉(zhuǎn)換成只包含核心節(jié)點(diǎn)、鏈路和需求的核心網(wǎng) 絡(luò)規(guī)劃515。應(yīng)該注意,在本發(fā)明的其他實(shí)施例中,或許可以將整個(gè)網(wǎng)絡(luò)定義為核 心,在這種情況下,模塊510和525變得不相關(guān)。如上所述,核心網(wǎng)絡(luò)規(guī)劃創(chuàng)建模塊510創(chuàng)建核心網(wǎng)絡(luò)規(guī)劃515,為了 解釋的目的,將核心網(wǎng)絡(luò)規(guī)劃515看作以上參考圖2所描述的網(wǎng)絡(luò)規(guī)劃結(jié) 構(gòu)200。根據(jù)本發(fā)明的示例性實(shí)施例,度量最優(yōu)化模塊520將核心網(wǎng)絡(luò)規(guī) 劃515用作輸入,并且將核心網(wǎng)絡(luò)規(guī)劃515中的度量改變?yōu)楦觾?yōu)選的一 組度量。然后,相應(yīng)的核心鏈路度量被初始網(wǎng)絡(luò)規(guī)劃500中的核心度量修 改模塊525所改變。核心網(wǎng)絡(luò)規(guī)劃創(chuàng)建模塊510還可以以某種方式創(chuàng)建核 心網(wǎng)絡(luò)規(guī)劃515,所述方式是使有益于核心網(wǎng)絡(luò)規(guī)劃515的路由的度量改 變也同樣有益于通過初始網(wǎng)絡(luò)規(guī)劃500的核心組件的路由。圖6是示例性網(wǎng)絡(luò)601的圖形表示,并且示出了核心網(wǎng)絡(luò)規(guī)劃創(chuàng)建模 塊510如何根據(jù)本發(fā)明的一個(gè)示例性實(shí)施例創(chuàng)建核心網(wǎng)絡(luò)規(guī)劃515。圖6 還示出了示例性電信網(wǎng)絡(luò)中的各種非核心元件。在網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)200中,網(wǎng)絡(luò)601中的每個(gè)節(jié)點(diǎn)都被定義為核心節(jié)點(diǎn)或非核心節(jié)點(diǎn)。在圖6中,在網(wǎng)絡(luò)核心600中包圍的節(jié)點(diǎn)已經(jīng)被定義為核 心節(jié)點(diǎn),而在網(wǎng)絡(luò)核心600外的那些節(jié)點(diǎn)是非核心節(jié)點(diǎn)。例如,節(jié)點(diǎn)615 是非核心節(jié)點(diǎn),而節(jié)點(diǎn)605是核心節(jié)點(diǎn)。諸如箭頭610之類的雙向箭頭代 表包含兩條鏈路的回路,在每個(gè)方向上各有一條。諸如箭頭635之類的單 向箭頭示出了鏈路。連接兩個(gè)核心節(jié)點(diǎn)的鏈路被定義為核心鏈路(例如在 610中的兩條鏈路);其他的相關(guān)鏈路是非核心鏈路(例如鏈路635)。每個(gè)靠近回路或鏈路的圈形數(shù)字(例如圈形數(shù)字640)都代表回路中 的鏈路或鏈路自身的度量。諸如節(jié)點(diǎn)615之類的邊緣節(jié)點(diǎn)充當(dāng)在示例性網(wǎng) 絡(luò)601內(nèi)發(fā)起和終止的需求的源和目的地。電信網(wǎng)絡(luò)通常是彼此對(duì)等的,因此每個(gè)電信網(wǎng)絡(luò)運(yùn)載發(fā)起于另一網(wǎng)絡(luò) 的流量,或者去往其他網(wǎng)絡(luò)的流量。網(wǎng)絡(luò)管理員能夠改變它們的對(duì)等安 排,從而在一定程度上控制來自其他網(wǎng)絡(luò)的數(shù)據(jù)在何處進(jìn)入其網(wǎng)絡(luò),以及 控制來自其網(wǎng)絡(luò)的數(shù)據(jù)在何處進(jìn)入其他網(wǎng)絡(luò)。在網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)200中,可以通過包括代表每個(gè)對(duì)等網(wǎng)絡(luò)的特殊節(jié)點(diǎn) 來表示網(wǎng)絡(luò)對(duì)等。節(jié)點(diǎn)620是代表對(duì)等網(wǎng)絡(luò)的"特殊節(jié)點(diǎn)"的示例。具體 而言,節(jié)點(diǎn)620代表對(duì)等網(wǎng)絡(luò),在示例性網(wǎng)絡(luò)601中,可以通過節(jié)點(diǎn)625 或節(jié)點(diǎn)630來訪問該對(duì)等網(wǎng)絡(luò)。在示例性網(wǎng)絡(luò)601中,去往對(duì)等網(wǎng)絡(luò)中的 目的地的需求將從節(jié)點(diǎn)630或節(jié)點(diǎn)625出去,至于從哪個(gè)節(jié)點(diǎn)出去,則依 賴于其中哪個(gè)節(jié)點(diǎn)在從源到目的地620的最短路徑上。這樣,通過改變網(wǎng) 絡(luò)601內(nèi)的度量,可以影響到去往對(duì)等網(wǎng)絡(luò)的數(shù)據(jù)流在其路徑上的最后一 個(gè)節(jié)點(diǎn)是節(jié)點(diǎn)625還是節(jié)點(diǎn)630。但是,如果對(duì)等網(wǎng)絡(luò)是進(jìn)入示例性網(wǎng)絡(luò)601的需求的源,那么利用網(wǎng) 絡(luò)601內(nèi)的度量改變則不會(huì)影響到數(shù)據(jù)流在網(wǎng)絡(luò)601中通過的第一個(gè)節(jié) 點(diǎn)。在該示例中,在節(jié)點(diǎn)620處發(fā)起的數(shù)據(jù)可以通過節(jié)點(diǎn)630或節(jié)點(diǎn)625 流入網(wǎng)絡(luò)601中,但是這不能通過改變網(wǎng)絡(luò)601內(nèi)的度量來改變。得出一個(gè)結(jié)論為了對(duì)發(fā)起于例如由網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)200中的節(jié)點(diǎn)620 代表的對(duì)等網(wǎng)絡(luò)的需求建模,往往依賴于流量從何處進(jìn)入網(wǎng)絡(luò)601而將源 節(jié)點(diǎn)指定為節(jié)點(diǎn)630或節(jié)點(diǎn)625。但是,為了對(duì)以由節(jié)點(diǎn)620代表的對(duì)等網(wǎng)絡(luò)為目的地的需求建模,可以將目的節(jié)點(diǎn)指定為節(jié)點(diǎn)630,并且網(wǎng)絡(luò)601中的度量選擇將決定采用到對(duì)等網(wǎng)絡(luò)(節(jié)點(diǎn)620)的兩條路徑中的哪圖7示出了根據(jù)本發(fā)明的示例性實(shí)施例的算法701的流程圖,算法 701可以由核心網(wǎng)絡(luò)規(guī)劃創(chuàng)建模塊510用來構(gòu)建新的需求結(jié)構(gòu)220,該需 求結(jié)構(gòu)220替代網(wǎng)絡(luò)規(guī)劃500中的現(xiàn)有需求結(jié)構(gòu)220。新的網(wǎng)絡(luò)需求結(jié)構(gòu) 220將需求的源和目的地看作核心節(jié)點(diǎn)。這樣可以構(gòu)建核心網(wǎng)絡(luò)規(guī)劃 515,從而除去所有非核心節(jié)點(diǎn)和非核心鏈路,因此可以將520中的度量 最優(yōu)化僅僅限制在核心鏈路中的度量上。方框700描述了用于代表流程圖中的輸入(例如現(xiàn)有)網(wǎng)絡(luò)需求結(jié)構(gòu) 220的符號(hào)。對(duì)于每個(gè)i-l,...,n, NS(i)、 ND(i)和NBW(i)分別是現(xiàn)有網(wǎng)絡(luò) 需求結(jié)構(gòu)220中的每個(gè)需求的源節(jié)點(diǎn)、目的節(jié)點(diǎn)和帶寬水平。在方框705 中,計(jì)數(shù)器i被設(shè)置為1。方框710將CS(i)設(shè)置為在主體網(wǎng)絡(luò)中,到節(jié)點(diǎn)NS(i)的度量距離最短 的核心節(jié)點(diǎn)的集合。例如,如果NS(i)是圖6中的節(jié)點(diǎn)630,那么CS(i)被 設(shè)置為集合(CR1.A, CR2.A},這是因?yàn)檫@兩個(gè)核心節(jié)點(diǎn)距離節(jié)點(diǎn)630的 距離都是5,并且因此它們是距離630最近的核心節(jié)點(diǎn)。方框710還將CD(i)設(shè)置為在主體網(wǎng)絡(luò)中,到節(jié)點(diǎn)ND(i)的度量距離 最短的核心節(jié)點(diǎn)的集合。例如,如果ND(i)是圖6中的節(jié)點(diǎn)620,那么 CD(i)被設(shè)置為集合(CRl.A, CR2,A, CR1.C, CR2.Q,這是因?yàn)檫@四個(gè) 核心節(jié)點(diǎn)距離節(jié)點(diǎn)620的距離都是10,并且因此它們是距離620最近的核 心節(jié)點(diǎn)。方框715檢查計(jì)數(shù)器i是否已經(jīng)到達(dá)n,即網(wǎng)絡(luò)需求的總數(shù)。如果沒 有,方框720則增加i,并且繼續(xù)執(zhí)行通過710的循環(huán)。如果i二n,流程則 進(jìn)入方框725。方框725構(gòu)建源和目的地對(duì)的列表KCS(l), CD(l)),…,(CS(n),CD(n)》 中的所有唯一對(duì)的集合。m被設(shè)置為該唯一對(duì)列表的長度,該唯一對(duì)列表 被記作(S(j),D(j)), j=l,...,m。對(duì)于j從1到m的每個(gè)唯一對(duì)(S(j), D(j)),方框730計(jì)算帶寬BW(j),該BW(j)是對(duì)應(yīng)于與(S(j), D(j))相同的所有源和目的地對(duì)(CS(i),CD(i))的所 有帶寬NBW(i)的和。這樣一來,構(gòu)建了具有唯一的源和目的節(jié)點(diǎn)集合的m個(gè)需求,這些 需求是從相同核心節(jié)點(diǎn)的集合進(jìn)入和離開網(wǎng)絡(luò)核心600的所有輸入網(wǎng)絡(luò)需 求的聚集。在方框735中,向量S、 D和BW代表這些聚集需求中的每個(gè) 需求的源節(jié)點(diǎn)集合、目的節(jié)點(diǎn)集合和聚集帶寬。這樣,在流程圖中代表的 算法701結(jié)束。圖8示出了兩個(gè)示例性需求結(jié)構(gòu)800和805,它們在結(jié)構(gòu)上與以上參 考圖2所描述的需求結(jié)構(gòu)220相對(duì)應(yīng)。第一需求結(jié)構(gòu)800包含了通過圖6 所代表的示例性網(wǎng)絡(luò)601的需求的示例列表。第二需求結(jié)構(gòu)805包含了在 例如使用圖7所述的算法701而由核心網(wǎng)絡(luò)規(guī)劃創(chuàng)建模塊510將這些需求 聚集到核心路由器的集合之間的需求中時(shí),所形成的這些需求的列表。由于在示例性網(wǎng)絡(luò)601中,CR1.A是最靠近ER1.A的單個(gè)核心節(jié) 點(diǎn),因此第一需求結(jié)構(gòu)800中的從ER1.A到CR1.B的第一需求被轉(zhuǎn)換成 第二需求結(jié)構(gòu)805中的從CR1.A到CR1.B的需求。后面三個(gè)需求都具有最靠近相同的核心路由器集合,即(CR1.A, cr2.a;i的源。它們的目的節(jié)點(diǎn)也都最靠近(例如在平常感覺上)相同的 核心路由器CR1.B。這些需求以總帶寬30 (即這三個(gè)需求的帶寬和)被 聚集到805中的單個(gè)核心需求中。在800中的第五需求具有距離四個(gè)核心路由器(CR1.A, CR2.A, CR1.C, CR2.C》距離相等(距離=10)的目的節(jié)點(diǎn)。因此在805中,這些核心路由 器都是相應(yīng)需求的目的節(jié)點(diǎn)。圖9示出了根據(jù)本發(fā)明的一個(gè)示例性實(shí)施例的方法901的流程圖,方 法901用于在度量最優(yōu)化模塊520中使度量最優(yōu)化。示例性方法901的具體最優(yōu)化目標(biāo)是在網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)200指定的所有 鏈路上、所有SRLG故障上以及所有帶寬水平上采用最大鏈路利用率的情 形下,使最大鏈路利用率最小化。鏈路利用率越高,鏈路就越可能經(jīng)歷擁 塞,并且因此導(dǎo)致穿過該鏈路的數(shù)據(jù)傳輸中斷。通過確保在所有鏈路上、 SRLG故障上以及帶寬水平上的最大鏈路利用率盡可能的低,方法901試圖在以下多種操作狀況下,提供對(duì)主體網(wǎng)絡(luò)601的所有鏈路的低利用率,所述操作狀況包括 1. "無故障"SRLG操作模式,在該操作模式中,網(wǎng)絡(luò)601的所 有元件都正常工作。2. 在網(wǎng)絡(luò)規(guī)劃500中列出的任意其他SRLG故障下的操作,所述 SRLG故障包括(如果包括在列表中)回路故障、節(jié)點(diǎn)故障以 及諸如管道故障的其他SRLG故障。.3. 在不同帶寬水平下的操作,所述不同帶寬水平可以代表在一 天或一星期中不同時(shí)間的帶寬。4. 在不同帶寬水平下的操作,所述不同帶寬水平可以代表關(guān)于 網(wǎng)絡(luò)中每個(gè)需求的實(shí)際帶寬水平是什么的不同假設(shè)。這些假 設(shè)例如可以由需求估計(jì)模塊(110)創(chuàng)建。注意,如果只將網(wǎng)絡(luò)規(guī)劃500中節(jié)點(diǎn)的子集定義為核心節(jié)點(diǎn),那么該 最優(yōu)化將只在這些核心節(jié)點(diǎn)之間的核心鏈路上發(fā)生。這意味著將不會(huì)嘗試 使非核心鏈路的利用率最小化。除了將最優(yōu)化限制到核心上的計(jì)算優(yōu)點(diǎn)之 外,這種限制還具有忽略接入到網(wǎng)絡(luò)601的小接入鏈路中的擁塞的優(yōu)點(diǎn), 在網(wǎng)絡(luò)601中,或許因?yàn)橹荒芾靡粭l接入鏈路將某些帶寬需求帶入核心 網(wǎng)絡(luò),因此在此處擁塞可能是無法避免的。在第一方框900中,將網(wǎng)絡(luò)規(guī)劃500定義為利用p條鏈路ky,...,p和 m個(gè)SRLG j^,…,m來索引。對(duì)于每個(gè)k,將m(k)定義為鏈路k上的當(dāng)前 度量。兩個(gè)計(jì)數(shù)器t—1和t—2被設(shè)置為0。在方框905中,對(duì)于9個(gè)帶寬水平1=1,...,9中的每個(gè)帶寬水平,使用 從度量m計(jì)算的路由來計(jì)算網(wǎng)絡(luò)規(guī)劃500中的帶寬水平結(jié)構(gòu)。這些帶寬 水平結(jié)構(gòu)例如可以使用以上參考圖4所描述的方法401來計(jì)算。找到三元 組(j—0, k—0, 1—0),從而使在帶寬水平1—0、 SRLGj—0、鏈路k—O中的利 用率在網(wǎng)絡(luò)規(guī)劃中的所有帶寬水平中的所有鏈路和SRLG中的所有利用率 中最高。將B—max設(shè)置為該最大帶寬水平。在方框910中,將兩個(gè)計(jì)數(shù)器t—1和t一2加1 。在判斷框915中,對(duì)計(jì)數(shù)器進(jìn)行測試。在示例性實(shí)施例中,對(duì)方法901中可以執(zhí)行的最大疊代次數(shù)設(shè)置一個(gè)界限max—tries—no_progress,而 不會(huì)在降低這一目標(biāo)上取得進(jìn)展。如果t—1超過該界限,則終止最優(yōu)化循 環(huán)。而且,無論取得進(jìn)展與否都對(duì)該算法中的最大疊代次數(shù)也設(shè)置一個(gè)界 限total—tries。如果t—2超過該界限,則終止最優(yōu)化循環(huán)。如果在判斷框915中的條件都不滿足,方框920則增大鏈路k—0的度 量,所述鏈路k一0是在方框905中找到的具有最高利用率的鏈路。通過增 大該度量,則存在通過鏈路k—O路由的一些需求現(xiàn)在將被路由到別處的可 能性,這是因?yàn)楝F(xiàn)在存在通過網(wǎng)絡(luò)的新的更短路徑。方框925執(zhí)行與方框905相同的計(jì)算,從而找到在新的度量設(shè)置下產(chǎn) 生最高利用率的三元組(j一O, k—0, l一0)。該最高利用率被存儲(chǔ)在 B—newmax中。判斷框930檢查新的利用率B一newmax是否小于之前的最大利用率 B—max。如果是,則在降低最大利用率方面己經(jīng)取得進(jìn)展。在這種情況 下,方框935重新將計(jì)數(shù)器t_l設(shè)置到0,并且將B一max設(shè)置到新的最大 利用率Bjiewmax,并且流程從方框905處繼續(xù)。如果不是,流程則直接 從方框905處繼續(xù)。在判斷框915中的測試之一滿足之后,方法901終止。向量m包含了 新的最優(yōu)度量,并且獲得了新的最小的最大利用率B—max。圖10示出了根據(jù)本發(fā)明的示例性實(shí)施例的轉(zhuǎn)換模塊135的框圖。在 轉(zhuǎn)換模塊135中的子模塊之間的數(shù)據(jù)流被示出。圖10示出了轉(zhuǎn)換模塊135的兩個(gè)輸入,艮卩1. 現(xiàn)有網(wǎng)絡(luò)規(guī)劃115,將會(huì)想起,該現(xiàn)有網(wǎng)絡(luò)規(guī)劃115是代表了 主體網(wǎng)絡(luò)的當(dāng)前狀態(tài)的網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)(如圖2所示)。2. 所需網(wǎng)絡(luò)規(guī)劃130,該所需網(wǎng)絡(luò)規(guī)劃130代表了主體網(wǎng)絡(luò)的所 需新狀態(tài)的網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)。這兩種規(guī)劃除了在拓?fù)渲械拿織l 鏈路上(可能)具有不同的度量之外,具有相同的拓?fù)浣Y(jié)構(gòu) 205。它們除了在一種規(guī)劃中處于活動(dòng)狀態(tài)的一些SRLG可能 在另一種規(guī)劃中處于非活動(dòng)狀態(tài)(反之亦然)之外,這兩種 規(guī)劃具有相同的需求結(jié)構(gòu)220和相同的SRLG結(jié)構(gòu)230。轉(zhuǎn)換模塊135可以執(zhí)行兩種任務(wù)。第一種由轉(zhuǎn)換序列產(chǎn)生模塊1015執(zhí)行,該任務(wù)用于產(chǎn)生逐步改變的轉(zhuǎn)換序列1020,從而將主體網(wǎng)絡(luò)從現(xiàn) 有網(wǎng)絡(luò)規(guī)劃115中反映出的狀態(tài)遷移到所需網(wǎng)絡(luò)規(guī)劃130中反映出的狀 態(tài)。在轉(zhuǎn)換序列1020中的每個(gè)步驟例如可以是SRLG的激活、SRLG的 禁止或者單個(gè)鏈路的度量改變。然后,由轉(zhuǎn)換信令模塊1025在主體網(wǎng)絡(luò)上執(zhí)行轉(zhuǎn)換序列1020。轉(zhuǎn)換 信令模塊1025將信號(hào)發(fā)送到網(wǎng)絡(luò)控制器1030,從而指示控制器1030應(yīng) 對(duì)主體網(wǎng)絡(luò)1035執(zhí)行哪些改變。在己經(jīng)成功地執(zhí)行了轉(zhuǎn)換序列1020中的 每個(gè)改變之后,網(wǎng)絡(luò)控制器1030回復(fù)轉(zhuǎn)換信令模塊1025改變己被成功執(zhí) 行,并且轉(zhuǎn)換信令模塊1025將轉(zhuǎn)換序列1020中的下一改變發(fā)送到網(wǎng)絡(luò)控 制器1030。圖ll示出了根據(jù)本發(fā)明的示例性實(shí)施例的轉(zhuǎn)換序列1020的數(shù)據(jù)結(jié)構(gòu) 1100的框圖,該數(shù)據(jù)結(jié)構(gòu)可以由轉(zhuǎn)換序列產(chǎn)生模塊1015來創(chuàng)建。轉(zhuǎn)換序列數(shù)據(jù)結(jié)構(gòu)IIOO包含一列轉(zhuǎn)換步驟結(jié)構(gòu)1105,這些轉(zhuǎn)換步驟 結(jié)構(gòu)1105被編號(hào)為從1到轉(zhuǎn)換序列1020中的步驟總數(shù)。每個(gè)轉(zhuǎn)換步驟結(jié) 構(gòu)1105由三種可能的子結(jié)構(gòu)(記作1115、 U20和1125)之一所組成。具體而言,如果由轉(zhuǎn)換步驟結(jié)構(gòu)1105代表的步驟是網(wǎng)絡(luò)規(guī)劃中的 SRLG的激活,轉(zhuǎn)換步驟結(jié)構(gòu)1105則包含結(jié)構(gòu)1115。結(jié)構(gòu)1115包含了激 活命令,以及當(dāng)前處于非活動(dòng)狀態(tài)并且在轉(zhuǎn)換序列的該步驟中必須被激活 的SRLG的索引。如果由轉(zhuǎn)換步驟結(jié)構(gòu)1105代表的步驟是網(wǎng)絡(luò)規(guī)劃中的SRLG的禁 止,轉(zhuǎn)換步驟結(jié)構(gòu)1105則包含結(jié)構(gòu)1120。結(jié)構(gòu)1120包含了禁止命令, 以及當(dāng)前處于活動(dòng)狀態(tài)并且在轉(zhuǎn)換序列的該步驟中必須被禁止的SRLG的 索引。如果由轉(zhuǎn)換步驟結(jié)構(gòu)1105代表的步驟是改變網(wǎng)絡(luò)規(guī)劃中的鏈路度 量,轉(zhuǎn)換步驟結(jié)構(gòu)1105則包含結(jié)構(gòu)1125。結(jié)構(gòu)1125包含了改變度量的 命令,以及其度量必須被改變的鏈路的索引和該鏈路的度量必須改變到的圖12示出了根據(jù)本發(fā)明的示例性實(shí)施例的方法1201的流程圖,轉(zhuǎn)換序列產(chǎn)生模塊1015可以使用該方法1201來產(chǎn)生轉(zhuǎn)換序列1020。該方法由于以下原因而有助于找到在網(wǎng)絡(luò)中應(yīng)該執(zhí)行的改變的順序1. 改變沒必要一次全部執(zhí)行。基于最短路徑路由的網(wǎng)絡(luò)在每次 執(zhí)行度量改變,或者激活或禁止主體網(wǎng)絡(luò)的元件時(shí),都需要 時(shí)間來重新找到通過主體網(wǎng)絡(luò)的最短路徑路由。在這段時(shí)間 中,主體網(wǎng)絡(luò)可能被擾亂,其中主體網(wǎng)絡(luò)的一些部分己經(jīng)更 新到新的路由,而其他部分還未更新。諸如單個(gè)度量改變或 者激活或禁止單個(gè)元件之類的小改變將更快地收斂到網(wǎng)絡(luò)中 的一組新的路由,而不會(huì)引起像大量改變同時(shí)發(fā)生時(shí)那樣的 擾亂。2. 假設(shè)隨后必須順序執(zhí)行多個(gè)小改變,則期望應(yīng)該可以接受中間路由(例如在轉(zhuǎn)換序列1020的步驟中的部分而非全部步驟已經(jīng)完成時(shí)產(chǎn)生的那些路由)。例如,在主體網(wǎng)絡(luò)的正常操 作下,在通過主體網(wǎng)絡(luò)的需求當(dāng)前使用的帶寬水平下,這些 中間路由不應(yīng)導(dǎo)致過高的利用率。其他考慮可能也是非常重要的。例如,可能需要這些中間階段中的利用率在一個(gè)SRLG 發(fā)生故障的情況下不會(huì)過高,從而如果該故障發(fā)生在執(zhí)行轉(zhuǎn) 換序列的中間,主體網(wǎng)絡(luò)也不會(huì)發(fā)生擁塞。而且,可能需要 確保網(wǎng)絡(luò)中的路由延遲在中間步驟的任意步驟中都不會(huì)過 高,從而對(duì)主體網(wǎng)絡(luò)中的所有用戶都可以滿足一定的服務(wù)質(zhì)在開始框1200中,由轉(zhuǎn)換序列產(chǎn)生模塊1015接收到現(xiàn)有和所需網(wǎng)絡(luò) 規(guī)劃115和130。這些規(guī)劃115和130在圖12的流程圖中被記作P1 (現(xiàn) 有網(wǎng)絡(luò))和P2 (所需網(wǎng)絡(luò))。在方框1205中,將集合V設(shè)置為空集合,所述集合V將包含已經(jīng)檢 查過可接受性的所有可能的部分轉(zhuǎn)換序列。計(jì)數(shù)器i被設(shè)置為1,并且當(dāng) 前中間網(wǎng)絡(luò)規(guī)劃P被設(shè)置為現(xiàn)有網(wǎng)絡(luò)規(guī)劃Pl。在方框1210中,搜索適當(dāng)?shù)霓D(zhuǎn)換步驟,當(dāng)應(yīng)用到當(dāng)前中間網(wǎng)絡(luò)規(guī)劃 P時(shí),該轉(zhuǎn)換步驟將使網(wǎng)絡(luò)規(guī)劃在更靠近所需網(wǎng)絡(luò)規(guī)劃P2的方向上移動(dòng)一步,并且該轉(zhuǎn)換步驟將提供可接受的中間網(wǎng)絡(luò)規(guī)劃。搜索到的轉(zhuǎn)換步驟 A(l)應(yīng)該使得部分轉(zhuǎn)換序列A(l),...,A(i)不在V中。這樣可以確保已經(jīng)檢查 過的可能的轉(zhuǎn)換序列不會(huì)被再次檢查。A(i)應(yīng)該是下列轉(zhuǎn)換步驟之一1. 在P中處于非活動(dòng)狀態(tài)而在P2中處于活動(dòng)狀態(tài)的SRLG的激活,2. 在P中處于活動(dòng)狀態(tài)而在P2中處于非活動(dòng)狀態(tài)的SRLG的禁止,3. 鏈路度量從其P中的值到P2中的(不同)值的改變。在方框1215中,流程依賴于是否可以找到這樣的A(i)而被分開。如 果否,則無法找到可接受的轉(zhuǎn)換序列,并且方法1201在方框1220處結(jié) 束。如果可以找到這樣的A(i),則將部分轉(zhuǎn)換序列A(l),...,A(i)添加到V 中,并且利用在A(i)中指定的改變來更新當(dāng)前中間網(wǎng)絡(luò)規(guī)劃P。然后,使 用例如以上參考圖4所描述的方法401來計(jì)算當(dāng)前中間網(wǎng)絡(luò)規(guī)劃P的帶寬 利用率結(jié)構(gòu)。在方框1230中,當(dāng)前中間網(wǎng)絡(luò)規(guī)劃P的帶寬利用率結(jié)構(gòu)被檢査,以 判斷該帶寬利用率是否可接受。而且,檢查在P中路由的需求的延遲,判 斷該延遲是否可接受。如果當(dāng)前中間網(wǎng)絡(luò)規(guī)劃P可接受,方框1235則推 進(jìn)計(jì)數(shù)器i。方框1240檢查當(dāng)前中間網(wǎng)絡(luò)規(guī)劃P是否與所需網(wǎng)絡(luò)規(guī)劃P2 相同,在相同的情況下,A(l),...,A(i)就是從Pl到P2的完整轉(zhuǎn)換序列 1020,并且方法1201在方框1245處終止。如果不相同,方法1201則返 回1210,并且找到下一個(gè)A(i)。如果在方框1230處沒有發(fā)現(xiàn)當(dāng)前中間網(wǎng)絡(luò)規(guī)劃P具有合適的利用率 水平和/或路由延遲,方法1201則返回。在方框1250處,i減1。如果在 判斷框1255處確定i等于0,則無法找到合適的序列,并且方法1201在 結(jié)束框1220處不成功地結(jié)束。如果不是,方法1201則返回方框1210, 以嘗試找到將會(huì)合適的另一 A(i)。圖13是根據(jù)本發(fā)明的示例性實(shí)施例描述方法1301的流程圖,轉(zhuǎn)換信 令模塊1025可以利用網(wǎng)絡(luò)控制器1030而使用方法1301來執(zhí)行轉(zhuǎn)換序列 1020。在開始框1300處,轉(zhuǎn)換信令模塊1025接收到轉(zhuǎn)換序列1020。將該序列中的n個(gè)步驟標(biāo)注為A(l),...,A(n)。在方框1305中,計(jì)數(shù)器i被初始化為l。在方框1310中,轉(zhuǎn)換序列步驟A(i)的與轉(zhuǎn)換序列1020相關(guān)聯(lián)的轉(zhuǎn)換 序列數(shù)據(jù)結(jié)構(gòu)1100被發(fā)送到網(wǎng)絡(luò)控制器1030,以用于在主體網(wǎng)絡(luò)1035 上實(shí)現(xiàn)轉(zhuǎn)換。在方框1315中,方法1301等待接收來自網(wǎng)絡(luò)控制器1030的確認(rèn), 該確認(rèn)表明轉(zhuǎn)換序列步驟已被成功執(zhí)行,并且網(wǎng)絡(luò)1035已經(jīng)對(duì)其自身進(jìn) 行了完全的重新配置,以根據(jù)新的度量或者由轉(zhuǎn)換序列步驟發(fā)送的元件活 動(dòng)來重新路由數(shù)據(jù)。在方框1320中,來自轉(zhuǎn)換信令模塊1025的確認(rèn)被檢査。如果該動(dòng)作 成功地完成,則在1325中累加計(jì)數(shù)器i。在方框1330中,.如果i大于n, 則轉(zhuǎn)換已經(jīng)成功完成,并且方法1301在1335處結(jié)束。如果在1325處i不 大于n,則方法1301返回1310,以將下一步驟發(fā)送到網(wǎng)絡(luò)控制器1030。如果在方框1320處確定動(dòng)作沒有成功完成,則轉(zhuǎn)換未成功,并且方 法1301在方框1340處結(jié)束。圖14是在轉(zhuǎn)換序列1020的每個(gè)步驟下的轉(zhuǎn)換序列結(jié)構(gòu)1405和網(wǎng)絡(luò) 1035中的鏈路利用率表1400的圖形表示。對(duì)于圖14所提供的示例,產(chǎn)生轉(zhuǎn)換序列1020的現(xiàn)有網(wǎng)絡(luò)規(guī)劃115是 圖2中的網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)200。所需網(wǎng)絡(luò)規(guī)劃130除了以下兩點(diǎn)之外,都與 現(xiàn)有網(wǎng)絡(luò)規(guī)劃115相同1. SRLG "回路2"被禁止,2. 兩條鏈路3.1和4.1的度量已經(jīng)從10改變到5。 在現(xiàn)有網(wǎng)絡(luò)規(guī)劃115下,在"無故障"的故障情形下,如帶寬水平利用率結(jié)構(gòu)240中,標(biāo)注為"無故障"的行中以及在轉(zhuǎn)換步驟0下,在圖 14中標(biāo)注為1400的利用率表的行中所示,只有兩條鏈路被利用鏈路 1.1和鏈路2.1,這兩條鏈路的利用率都是75%。這是因?yàn)樵诰W(wǎng)絡(luò)規(guī)劃中, 從節(jié)點(diǎn)A到節(jié)點(diǎn)B的單個(gè)需求以其帶寬(750Mb/s)的一半沿著鏈路1.1 被路由,并且以其帶寬的另一半沿著鏈路2.1被路由,其中鏈路1.1是從 A到B的最短路徑之一,而鏈路2.1是從A到B的另一最短路徑。在轉(zhuǎn)換序列結(jié)構(gòu)1405的步驟1下,鏈路3.1的度量從10改變到5。 該改變對(duì)于從A到B的最短路由沒有影響,并且如表1400的步驟1中所 示,利用率保持不變。在轉(zhuǎn)換序列結(jié)構(gòu)1405的步驟2下,鏈路4.1的度量從10改變到5。 在該改變之后,存在三個(gè)從A到B的最短路由兩個(gè)之前的路由,以及 通過鏈路3.1和4.1的路徑,它們也具有總的路由長度10。如表1400的步 驟2所示,鏈路利用率反映出從A到B的需求現(xiàn)在被沿著這三個(gè)路由 中的每一個(gè)所傳輸?shù)?00Mb/s所滿足,從而致使鏈路1.1、 2.1、 3.1禾n 4.1 中的每一條上的利用率都為50%。最后,在轉(zhuǎn)換序列結(jié)構(gòu)1405的步驟3中,標(biāo)注為"回路2"的SRLG 被禁止。現(xiàn)在只存在兩個(gè)從A到B的最短路由。 一個(gè)是通過鏈路l.l,另 一個(gè)是通過鏈路3.1和4.1。由于鏈路2.1是回路2的一部分,因此不再可 以通過被禁止的鏈路2.1來路由流量。因此鏈路利用率如表1400的行3所 示。注意,轉(zhuǎn)換序列結(jié)構(gòu)1405的三個(gè)轉(zhuǎn)換步驟的執(zhí)行順序可能是非常重 要的。例如,如果首先執(zhí)行禁止步驟,則將只存在從A到B的單個(gè)最短 路徑,即通過鏈路1.1。這樣鏈路利用率將是150%=1500/100,這將導(dǎo)致 網(wǎng)絡(luò)中的嚴(yán)重?fù)砣D15根據(jù)本發(fā)明的示例性實(shí)施例,示出了之前參考圖1所描述的需 求估計(jì)模塊110與系統(tǒng)10的其余部分的交互過程的框圖。需求估計(jì)模塊 110被描繪為圖15中的方框1500。需求估計(jì)模塊110構(gòu)建了表示網(wǎng)絡(luò)100的當(dāng)前狀態(tài)的網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu) 200,并且將該結(jié)構(gòu)存儲(chǔ)為"現(xiàn)有網(wǎng)絡(luò)規(guī)劃"115。需求估計(jì)模塊110從不 同的源得到網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)200的各個(gè)組件,并且將它們集成在一起。由于拓?fù)浣Y(jié)構(gòu)1510中的信息通常可以從網(wǎng)絡(luò)配置中讀取,因此由網(wǎng) 絡(luò)控制器105來提供拓?fù)浣Y(jié)構(gòu)1510。共享風(fēng)險(xiǎn)鏈路組結(jié)構(gòu)由擴(kuò)充網(wǎng)絡(luò)數(shù) 據(jù)1525提供。擴(kuò)充網(wǎng)絡(luò)數(shù)據(jù)1525通常使用網(wǎng)絡(luò)IOO的外部知識(shí)來構(gòu)建, 并且無法從網(wǎng)絡(luò)控制器105本身獲得。例如,兩條回路是否位于相同的管 道中,以及兩條鏈路是否將因此共同構(gòu)成一個(gè)SRLG不是網(wǎng)絡(luò)控制器105能夠通過讀取網(wǎng)絡(luò)配置而檢測到的信息。網(wǎng)絡(luò)規(guī)劃結(jié)構(gòu)200中的需求結(jié)構(gòu)220是使用以下三個(gè)分離的輸入而由需求估計(jì)模塊110來構(gòu)建,這三個(gè)輸入即1. 鏈路利用率測量1515 (例如被表示為鏈路容量的百分比);以及2. 通過網(wǎng)絡(luò)控制器105獲得的需求測量1520 (例如以Mb/s表示);以及3. 在先需求結(jié)構(gòu)1535,該在先需求結(jié)構(gòu)1535是擴(kuò)充網(wǎng)絡(luò)數(shù)據(jù)1525 的一部分。在先需求結(jié)構(gòu)1535是如圖2所示的需求結(jié)構(gòu)220形式 的數(shù)據(jù)結(jié)構(gòu),并且包含了單個(gè)帶寬水平225。在先需求結(jié)構(gòu)1535 列出了網(wǎng)絡(luò)100中存在的所有需求源和目的地。這些需求中的每 種需求的相應(yīng)帶寬水平是需求帶寬水平的在先估計(jì)。該估計(jì)可以 通過需求水平的歷史測量,或者通過使用基于網(wǎng)絡(luò)的利用率測量 的一些外部估計(jì)程序,或者通過一些其他的估計(jì)方法來獲得。需求測量1520是在先需求結(jié)構(gòu)1535中的需求的子集,連同直接從網(wǎng) 絡(luò)100中獲得的這些需求帶寬水平的測量的列表。如果需求測量1520的 該列表包括在先需求結(jié)構(gòu)1535中的所有需求,那么所有需求帶寬水平都 是已知的,并且需求估計(jì)模塊110變得多余。如果在先需求結(jié)構(gòu)中的需求 都沒有或者只有一些包含在需求測量1520的列表中,那么需求估計(jì)模塊 110的任務(wù)是使用鏈路利用率測量1515、已知的需求測量和在先需求對(duì)那 些還沒有對(duì)其進(jìn)行測量的鏈路提供估計(jì)。需求估計(jì)模塊110利用代表需求帶寬的最好估計(jì)的單個(gè)帶寬水平(例 如以Mb/s表示),或者利用每個(gè)都具有對(duì)需求帶寬的不同估計(jì)的多個(gè)帶 寬水平來產(chǎn)生需求結(jié)構(gòu)220。這些多個(gè)帶寬水平一起表示需求帶寬估計(jì)中 的變化。每個(gè)帶寬水平代表不同的帶寬水平情形,因此系統(tǒng)10的GUI 140和其他組件可以評(píng)估不同帶寬水平情形下的拓?fù)浜投攘扛淖兊挠绊懀?或者執(zhí)行度量流量工程來迎合最壞情況的帶寬水平情形。在示例性實(shí)施例中,所示需求估計(jì)模塊110包括子模塊。第一子模塊 是基本需求估計(jì)器1550,該基本需求估計(jì)器1550進(jìn)行操作,從而在假定 的在先需求結(jié)構(gòu)、鏈路利用率測量和需求測量的情況下,產(chǎn)生單個(gè)需求帶寬水平。圖16描繪了可以由基本需求估計(jì)器1550實(shí)現(xiàn)的算法方法1601 的流程圖。第二子模塊是需求變化估計(jì)器1545,該需求變化估計(jì)器1545 進(jìn)行操作,從而構(gòu)建在先需求結(jié)構(gòu)1535中的帶寬水平的變化,并且然后 利用這些變化來調(diào)用基本需求估計(jì)器1550,從而基本需求估計(jì)器1550將 帶寬水平估計(jì)中的變化返回需求變化估計(jì)器1545。從這些變化中,需求 變化估計(jì)器1545構(gòu)建一組用于需求結(jié)構(gòu)220的帶寬水平225,這組帶寬 水平將被插入到現(xiàn)有網(wǎng)絡(luò)規(guī)劃115中。圖17示出了根據(jù)本發(fā)明的示例性 實(shí)施例的可以由需求變化估計(jì)器1545實(shí)現(xiàn)的算法方法1701。如上所述,圖16示出了可以由基本需求估計(jì)器1550實(shí)現(xiàn)的,用于估 計(jì)需求結(jié)構(gòu)的帶寬水平的算法方法1601。在方框1600中,示出了輸入數(shù)據(jù)的符號(hào)。以p條鏈路來指定拓?fù)浣Y(jié) 構(gòu)。以n個(gè)需求來指定需求結(jié)構(gòu),并且相應(yīng)的帶寬水平 bw_prior(l),...,bw—prior(n)代表n個(gè)需求中的每個(gè)需求的在先帶寬水平。鏈 路利用率測量由鏈路的子集l(l),...,l(a) (a<=p),連同一組相應(yīng)的鏈路利 用率測量u—m(l),...,u—m(a)來 一 起代表。需求測量由需求的子集 d(l),…,d(b) (b<=n),連同一組相應(yīng)的測定帶寬水平bw—m(l),…,bw—m(b) 來一起代表。需求帶寬和鏈路利用率的測量可能彼此不完全一致,這是因?yàn)殄e(cuò)誤的 測量系統(tǒng),或者因?yàn)樵谏杂胁煌臅r(shí)刻采用了不同的測量。因此,在方框 1605中執(zhí)行的估計(jì)的第一步驟是找到一組完全一致的鏈路和需求測量, 這組鏈路和需求測量盡可能靠近給定的測量。具體而言,方框1605找到 被稱為u(l),...,u(p)的每條鏈路的鏈路利用率,使得1. 假設(shè)在網(wǎng)絡(luò)100中沒有故障,并且因此網(wǎng)絡(luò)100在"無故障" SRLG下運(yùn)行時(shí),存在至少一組通過使用了給定拓?fù)浜投攘吭O(shè) 置的網(wǎng)絡(luò)100進(jìn)行路由的需求帶寬水平,該組需求帶寬水平將 產(chǎn)生利用率u(l),…,u(p)。2. 這些需求的子集d(l),...,d(b)的帶寬水平盡可能緊密地匹配測 定的需求帶寬水平bw一m(l),...,bw—m(b)。3. 這些鏈路利用率的子集l(l),...l(a)的鏈路利用率盡可能緊密地匹配測定的鏈路利用率u一m( 1),...,u—m(a)。一種找到這樣一組利用率的方法是解下述線性規(guī)劃。令A(yù)是用于網(wǎng)絡(luò) 的nxp維路由矩陣,即假定利用率u的p維向量和需求帶寬水平bw的n 維向量,Axbw^u。然后該線性規(guī)劃以Axbw二u為條件使如下表達(dá)式最小化正實(shí)數(shù)s一l和s—2的相對(duì)大小決定了如下第一匹配相對(duì)于第二匹配的相對(duì) 重要性,所述第一匹配是使給定的鏈路利用率測量匹配所產(chǎn)生的向量u, 所述第二匹配是使給定的需求測量匹配產(chǎn)生u的潛在需求bw。這些例如 將依賴于某人對(duì)這兩組測量中的每組測量所具有的相對(duì)置信度而變化。一旦已經(jīng)計(jì)算出向量u,方框1610就執(zhí)行實(shí)際的需求估計(jì)。具體而 言,基本需求估計(jì)器1450試圖找到一組緊密地匹配所述數(shù)據(jù)(例如測定 的鏈路利用率和需求帶寬水平)的需求帶寬水平,并且這組需求帶寬水平 接近指定的在先帶寬水平bwj3rior。這樣,基本需求估計(jì)器1550尋找滿 足如下條件的估計(jì)帶寬水平bw一base(l),…,bw—base(n)的集合1. 這些需求的子集d(l),...,d(b)等于bw(l),...,bw(b),2. 這些需求產(chǎn)生的鏈路利用率(S卩向量Axbw—base )等于 u(l),…,u(n),3. 帶寬水平 bw—base(l),…,bw—base(n)盡可能接近 bw_prior( 1),... ,bwjprior(n)。注意,因?yàn)閡滿足方框1605中的需求,因此將至少存在一個(gè)滿足1. 和2.的向量bw—base。 一種找到這樣一個(gè)向量的方法是在形式上重寫以上三個(gè)需求如下1 bw—base(d(i)) = bw(i),其中i = 1,...,n,2. Axbw一base = u,3. f吏t(Zw—6me(0 —戶,z'o,'(0)2最小化并且使用二次規(guī)劃來解bw一base。方框1615結(jié)束了方法1601。所需帶寬 估計(jì)是bw一base(l),…,bw—base(n)。圖17根據(jù)本發(fā)明的示例性實(shí)施例示出了可以由圖15所示的需求變化估計(jì)器1545實(shí)現(xiàn)的算法方法1701,該算法方法1701用于估計(jì)網(wǎng)絡(luò)規(guī)劃 結(jié)構(gòu)200的需求結(jié)構(gòu)220的帶寬水平范圍,即在假定可獲得的利用率測量 以及可以通過網(wǎng)絡(luò)控制器105從網(wǎng)絡(luò)中獲得的需求帶寬的情況下的所有可 行的需求帶寬水平估計(jì)。方框1700示出了方法1701的輸入。這些輸入除了兩個(gè)附加輸入之外 都與圖16中方法1601的輸入相同。 一個(gè)附加輸入是B,即將估計(jì)的多組 帶寬水平的數(shù)目。另一個(gè)附加輸入是正數(shù)V,該正數(shù)V是對(duì)已指定的在先 置信度bwjrior的量度。V二O的值表明完全相信在先帶寬,并且在這種情 況下,所有帶寬水平集合l,...,B都將等于在先帶寬本身。V越大,對(duì)在先 帶寬的置信度越小,并且將由方法1701產(chǎn)生的多組帶寬水平的范圍越大 (但是,受限于利用率和帶寬需求估計(jì))。在方框1705中,從1到B的計(jì)數(shù)器被設(shè)置為1 。在方框1710中,構(gòu)建新的在先帶寬向量bw』rior—var。該向量的每個(gè) 值bw_prior—var(i) (i=l,...,n)被設(shè)置為bw_prior(i)+N(i)。這里,每個(gè)N(i) 是從具有均值0和方差V的正態(tài)分布中產(chǎn)生的隨機(jī)變量。這里可以使用除 這些正態(tài)分布之外的其他分布來產(chǎn)生在先帶寬中的可變性。在方框1715中,利用在方框1700中指定的所有輸入l-4來調(diào)用圖16 所示的的方法1601,但是用在先帶寬向量bwjrior—var來代替bwjrior。 該程序產(chǎn)生帶寬水平的估計(jì),即向量bw一var一b。在方框1720和1725中,檢查疊代是否已經(jīng)完成,并且如果疊代沒有 完成,則累加計(jì)數(shù)器b。 一旦疊代完成,流程就前進(jìn)至方框1730,并且方 法1701結(jié)束。向量bw—var—l,...,bw—var—B是由該程序估計(jì)出的B個(gè)帶寬 水平。如上所述,GUI 140為用戶提供現(xiàn)有網(wǎng)絡(luò)規(guī)劃115的直觀表示,以便 幫助用戶了解網(wǎng)絡(luò)的當(dāng)前狀態(tài)。以下描述的圖18到圖22示出了在本發(fā)明 的一個(gè)示例性實(shí)施例中可以由GUI 140產(chǎn)生和提供的示例性界面。首先轉(zhuǎn)到圖18,界面1800在主要窗口 1804中提供主體網(wǎng)絡(luò)的站點(diǎn)外 視圖1802,并在次要窗口 1808中提供主體網(wǎng)絡(luò)的一部分的站點(diǎn)內(nèi)視圖1806。站點(diǎn)外視圖1802描繪了網(wǎng)絡(luò)站點(diǎn)的位置,每個(gè)站點(diǎn)可能包括位于 公共物理位置的節(jié)點(diǎn)的集合。在站點(diǎn)外視圖1802中,連接兩個(gè)不同站點(diǎn) 1810中的兩個(gè)節(jié)點(diǎn)的回路(例如兩條或多條鏈路)被示為連接相應(yīng)的兩 個(gè)站點(diǎn)1810。站點(diǎn)外視圖1802還允許用戶選擇將特定站點(diǎn)1810顯示在次 要窗口 1808中,以作為站點(diǎn)內(nèi)視圖1806。具體而言,對(duì)于被選站點(diǎn),站 點(diǎn)內(nèi)視圖1806示出了該站點(diǎn)內(nèi)包括的節(jié)點(diǎn)以及在該站點(diǎn)處的節(jié)點(diǎn)之間的 回路連接。站點(diǎn)內(nèi)視圖1806還示出了被連接到被選站點(diǎn)內(nèi)的節(jié)點(diǎn)的回 路,該回路如同在朝著相應(yīng)節(jié)點(diǎn)所連接的另一站點(diǎn)的節(jié)點(diǎn)的方向上離開次 要窗口 1808 —樣。通過提供視圖的兩級(jí)層次結(jié)構(gòu),界面1800提供了對(duì)復(fù) 雜的網(wǎng)絡(luò)拓?fù)?、高利用率區(qū)域或者站點(diǎn)外路由的容易理解的概觀。從圖18中還要注意,主體網(wǎng)絡(luò)內(nèi)的示例性回路是雙向的,并且包含 兩條鏈路,每條鏈路在特定方向上運(yùn)載網(wǎng)絡(luò)流量。在一個(gè)實(shí)施例中,回路 容量是這些鏈路的組合容量。站點(diǎn)外視圖1802和站點(diǎn)內(nèi)視圖1806兩者將 回路描繪為連接節(jié)點(diǎn)或站點(diǎn)的長方形。這些長方形中的每一個(gè)都利用與相 應(yīng)回路的容量成比例的寬度,或者利用與相應(yīng)回路的容量相關(guān)的物理尺寸 來描繪。例如,回路的容量越高,相應(yīng)長方形的寬度就越寬。此外,所示 代表回路的長方形中的每一個(gè)都在中間被劃分為兩個(gè)更細(xì)的長方形,更細(xì) 的長方形中的每一個(gè)代表回路內(nèi)的各個(gè)鏈路。箭頭與這些更細(xì)長方形中的 每一個(gè)相關(guān)聯(lián),從而示出網(wǎng)絡(luò)流量沿著由各個(gè)更細(xì)長方形表示的鏈路行進(jìn) 的方向。在一個(gè)示例性實(shí)施例中,代表鏈路的更細(xì)長方形中的每一個(gè),或者代 表回路的復(fù)合長方形中的每一個(gè)都可以被著色(或者直觀地進(jìn)行區(qū)分), 從而提供對(duì)相應(yīng)鏈路或回路的百分比利用率的直觀表示。例如,與長方形 相關(guān)聯(lián)的顏色可以依賴于利用率水平而變化,從而對(duì)不可接受的高利用率 提供清晰的直觀信號(hào)。例如,可以依賴于利用率是低(例如小于50%)、 中或者高(例如大于100%)而以綠色、橙色或紅色來描繪利用率。長方 形也可以通過對(duì)與帶寬利用率成比例的圖此外,可以對(duì)代表這些站點(diǎn)1810中的每個(gè)站點(diǎn)的方框著色,或者直 觀地進(jìn)行區(qū)分,以識(shí)別相應(yīng)站點(diǎn)1810內(nèi)的任意站點(diǎn)內(nèi)鏈路的最大利用率。例如,如果特定站點(diǎn)1810內(nèi)的鏈路之一具有大于100%的利用率,則 可以至少將描繪站點(diǎn)1810的方框部分地涂成紅色。這樣一來,在用戶查 看站點(diǎn)外試圖1802時(shí),就為用戶提供了方便的直觀提示,以識(shí)別問題站 點(diǎn)。由GUI 140提供的界面還可以用于直觀地描繪在一種或多種故障情形 下通過主體網(wǎng)絡(luò)的需求的路由。因此,圖19示出了示例性界面1900,在 該界面1900中,示出了在被選故障情形下通過網(wǎng)絡(luò)的需求的路由。例 如,在主要窗口 1804中示出的站點(diǎn)外視圖1802內(nèi),用戶可以選擇發(fā)生故 障的特定回路。在圖19所示的示例性界面1900中,回路1904被選為故 障回路。所示界面1900還包括表窗口 1902,該表窗口 1902提供了用戶可選擇 的通過網(wǎng)絡(luò)的各種帶寬需求(例如在SIC禾n WDC之間的帶寬需求)的列 表。在表窗口 1902中示出的任意需求的用戶選擇致使通過主體網(wǎng)絡(luò)的被 選需求所采用的實(shí)際路由被示出在站點(diǎn)外視圖1802內(nèi)。在用戶選擇了特定故障情形(例如將一條或多條回路選為故障回路) 之后,界面1900描繪出被選需求(例如從表窗口 1902內(nèi)示出的各種需求 中選出的)的重路由,以及利用顏色(或者其他可視區(qū)別)指示出的在故 障情形下的帶寬利用率。此外,重路由還可以被直觀地描繪在站點(diǎn)外視圖 1802和站點(diǎn)內(nèi)視圖1806兩者內(nèi)。例如,在圖19中,以虛線示出了被選需 求的重路由。此外,可以用紅色示出超過相應(yīng)回路性鏈路的最大容量的任 意鏈路或回路的利用率。在示例性實(shí)施例中,界面1900還提供了在不同帶寬水平下被路由的 需求的視圖。因此,提供了不詞帶寬水平的下拉菜單1908,并且用戶可 以從這些不同的帶寬水平中進(jìn)行選擇。然后,被選帶寬水平被應(yīng)用于界面 1900內(nèi)的站點(diǎn)外視圖1802和站點(diǎn)內(nèi)視圖1806中所描繪的路由。可以利用不同的服務(wù)等級(jí)來標(biāo)注網(wǎng)絡(luò)(例如IP網(wǎng)絡(luò))內(nèi)的分組,所 述服務(wù)等級(jí)確定了分組的相關(guān)優(yōu)先級(jí)。網(wǎng)絡(luò)可以賦予一個(gè)等級(jí)的分組比另一等級(jí)的分組更高的優(yōu)先級(jí),從而較低優(yōu)先級(jí)的分組只能利用鏈路帶寬中 不需要服務(wù)于較高優(yōu)先級(jí)分組的那部分。例如考慮1000 Mb/S的鏈路,其50%裝滿來自較低優(yōu)先級(jí)服務(wù)等級(jí)的分組,并且另50%裝滿來自較高優(yōu)先 級(jí)服務(wù)等級(jí)的分組。從較低優(yōu)先級(jí)數(shù)據(jù)流的角度來看,鏈路的帶寬容量被 完全利用。但是,從較高優(yōu)先級(jí)數(shù)據(jù)流的角度來看,還可獲得鏈路帶寬容 量的50%,這是因?yàn)檩^高優(yōu)先級(jí)數(shù)據(jù)流可以按需要取代較低優(yōu)先級(jí)數(shù)據(jù) 流。在本發(fā)明的一個(gè)示例性實(shí)施例中,在網(wǎng)絡(luò)對(duì)來自多于一個(gè)服務(wù)等級(jí)的 分組進(jìn)行路由的情況下,GUI 140提供從特定服務(wù)等級(jí)的視點(diǎn)(或角度) 査看網(wǎng)絡(luò)的便利性。在一個(gè)實(shí)施例中,由GUI 140提供的用戶界面可以允 許用戶從下拉菜單中選擇服務(wù)等級(jí)視圖。因此,圖19所示的示例性界面 1900包括服務(wù)等級(jí)菜單下拉菜單1910,該下拉菜單1910提供了用戶可將 其選為服務(wù)等級(jí)視圖的多個(gè)服務(wù)等級(jí)。在圖19所示的狀態(tài)中,已經(jīng)選擇 了 "所有"服務(wù)等級(jí)。 一旦從下拉菜單1910中選出一個(gè)服務(wù)等級(jí),就可 以改變界面1900中提供的視圖內(nèi)的鏈路尺寸(例如由更細(xì)長方形來表 示),從而表示從被選服務(wù)等級(jí)的角度來看的相應(yīng)鏈路的容量(例如扣除 所有更高優(yōu)先級(jí)服務(wù)等級(jí)的利用率之后的鏈路的全部容量)。因此,所顯 示出的利用率是來自被選服務(wù)等級(jí)的分組對(duì)鏈路的利用率,該利用率是作 為"所看見的"利用率的一部分。如以上示例所述,例如考慮網(wǎng)絡(luò)支持兩 種服務(wù)等級(jí)的情況,每種服務(wù)等級(jí)使用鏈路容量的50%。從以下三種角度 來看,特定鏈路的表現(xiàn)有所不同1. 從"所有"服務(wù)等級(jí)的角度這時(shí),鏈路寬度代表1000 Mb/s,并且鏈路被示為完全利用(例如被涂成紅色)。2. 從"較低優(yōu)先級(jí)"服務(wù)等級(jí)的角度相應(yīng)鏈路的寬度較小, 代表500 Mb/s,并且鏈路被示為完全利用(例如被涂成紅 色)。3. 從"較高優(yōu)先級(jí)"服務(wù)等級(jí)的角度相應(yīng)鏈路的寬度示出其 具有1000 Mb/s的容量,并且鏈路容量的50%被示為可用(例 如鏈路被涂成橙色)。以上論述了 "故障情形"的概念。將會(huì)了解,故障情形可以包括一組 鏈路同時(shí)發(fā)生故障的情形(例如,由于如果回路發(fā)生故障,則相應(yīng)回路內(nèi) 的鏈路也都將發(fā)生故障,因此回路中的兩條鏈路可以形成故障情形)。如 上所述,由GUI140提供的用于仿真和最優(yōu)化的界面考慮了在一列指定的 故障情形上的主體網(wǎng)絡(luò)的行為。對(duì)于主體網(wǎng)絡(luò)中的任意特定鏈路,感興趣的是在多種不同的故障情形 上的特定鏈路的最大利用率。如果特定鏈路的最大利用率超過預(yù)定容量 (例如利用率超過鏈路容量的100%),則意味著存在一種或多種故障情 形, 一旦出現(xiàn)這些故障情形,就將導(dǎo)致網(wǎng)絡(luò)的重路由,這將導(dǎo)致相應(yīng)鏈路中的擁塞。因此,GUI 140可以提供一種"最壞情況"顯示模式,該"最壞情況"顯示模式同時(shí)示出在導(dǎo)致特定鏈路達(dá)到其最大利用率的特定故障情形下的不同鏈路的利用率。圖20示出了示例性界面2000,該界面2000 直觀地標(biāo)識(shí)在一種或多種故障情形下發(fā)生擁塞的鏈路2002。界面2000還 允許用戶回顧導(dǎo)致例鏈路擁塞的情形。例如,通過用戶選擇擁塞鏈路之 一,可以由界面2000 (例如以與圖19所示的界面1900中描繪故障情形 相似的方式)顯示導(dǎo)致被選鏈路擁塞的一種或多種故障情形。最后,GUI 140還可以以表格形式提供以上參考圖18到圖20所描述 的,以圖形形式示出的信息。圖21示出了顯示逐條鏈路細(xì)節(jié)的表格報(bào)告 2100。具體而言,可以對(duì)于上述界面1800、 1900和2000中的每一個(gè),產(chǎn) 生示例性表格報(bào)告2100的列表,該報(bào)告的一行用于提供關(guān)于特定鏈路的 信息。此外,報(bào)告2100內(nèi)的行可以按照"最壞情況"利用率進(jìn)行排序。 例如,參考界面2000提供的"最壞情況"信息,在表格報(bào)告2100內(nèi),直 觀地區(qū)分出在示例性界面2000中識(shí)別為導(dǎo)致?lián)砣娜龡l鏈路2002 (例如 利用紅色的"WC Util(%)"值)。表格報(bào)告2100顯示關(guān)于鏈路的信息, 并且顯示哪種SRLG故障致使相應(yīng)鏈路構(gòu)成"最壞情況"故障,以及哪種 "最壞情況"帶寬水平造成這種狀態(tài)。該顯示允許用戶方便地識(shí)別問題鏈 路,以及識(shí)別導(dǎo)致該問題的情況(例如SRLG故障和帶寬水平),以便可 以采取適當(dāng)?shù)膭?dòng)作(例如通過利用度量流量工程模塊125來執(zhí)行度量最優(yōu) 化,或者通過加大識(shí)別出的問題鏈路的容量)。圖22以計(jì)算機(jī)系統(tǒng)2200的示例性形式示出了機(jī)器的圖形表示,在所 述計(jì)算機(jī)系統(tǒng)2200內(nèi),可以執(zhí)行一組指令,這組指令用于致使機(jī)器執(zhí)行 這里所描述的方法和算法中的任意一種或多種。在其他實(shí)施例中,機(jī)器作 為獨(dú)立設(shè)備進(jìn)行操作,或者可以連接(例如通過網(wǎng)絡(luò)連接)到其他機(jī)器。 在通過網(wǎng)絡(luò)連接的部署中,機(jī)器可以作為服務(wù)器-客戶機(jī)網(wǎng)絡(luò)環(huán)境中的服 務(wù)器或客戶機(jī)進(jìn)行操作,或者作為對(duì)等(分布式)網(wǎng)絡(luò)環(huán)境中對(duì)等機(jī)器進(jìn) 行操作。所述機(jī)器可以是服務(wù)器計(jì)算機(jī)、個(gè)人計(jì)算機(jī)(PC)、平板PC、 機(jī)頂盒(STB)、個(gè)人數(shù)字助理(PDA)、蜂窩電話、網(wǎng)絡(luò)設(shè)備、網(wǎng)絡(luò)路 由器、交換機(jī)或橋,或者能夠執(zhí)行指定該機(jī)器所采取的動(dòng)作的一組指令 (順序的或其他的)的任意機(jī)器。此外,雖然只示出單個(gè)機(jī)器,但是術(shù)語 "機(jī)器"也將用來包括多個(gè)機(jī)器的任意集合,這些機(jī)器獨(dú)立或共同執(zhí)行一 組(或多組)指令,從而執(zhí)行這里所描述的方法中的任意一種或多種。
示例性計(jì)算機(jī)系統(tǒng)2200包括處理器2202 (例如中央處理單元 (CPU)、圖形處理單元(GPU)或其兩者)、主存儲(chǔ)器2204和靜態(tài)存 儲(chǔ)器2206,它們彼此之間經(jīng)由總線2208進(jìn)行通信。計(jì)算機(jī)系統(tǒng)2200還可 以包括視頻顯示單元2210 (例如液晶顯示(LCD)或者陰極射線管 (CRT))。計(jì)算機(jī)系統(tǒng)2200還包括混合輸入設(shè)備2212 (例如鍵盤)、 用戶界面(UI)導(dǎo)航設(shè)備2214 (例如鼠標(biāo))、盤驅(qū)動(dòng)單元2216、信號(hào)產(chǎn) 生設(shè)備2218 (例如揚(yáng)聲器)和網(wǎng)絡(luò)接口設(shè)備2220。
盤驅(qū)動(dòng)單元2216包括機(jī)器可讀介質(zhì)2222,在該機(jī)器可讀介質(zhì)2222上 存儲(chǔ)了一組或多組指令(例如軟件2224),這些指令包含了這里所描述 的方法、功能或算法中的一種或多種。在計(jì)算機(jī)系統(tǒng)2200執(zhí)行軟件2224 期間,軟件2224還可以全部或至少部分位于主存儲(chǔ)器2204和/或處理器 2202內(nèi),這時(shí)主存儲(chǔ)器2204和處理器2202也構(gòu)成機(jī)器可讀介質(zhì)。
軟件2224還可以經(jīng)由網(wǎng)絡(luò)接口設(shè)備2220發(fā)送到網(wǎng)絡(luò)2226上,或者 從網(wǎng)絡(luò)2226上被接收。
雖然在示例性實(shí)施例中,機(jī)器可讀介質(zhì)2222被示為單個(gè)介質(zhì),但是 術(shù)語"機(jī)器可讀介質(zhì)"可以用于包括存儲(chǔ)了一組或多組指令的單個(gè)介質(zhì)或 多個(gè)介質(zhì)(例如集中式或分布式數(shù)據(jù)庫和/或相關(guān)聯(lián)的緩存和服務(wù)器)。術(shù)語"機(jī)器可讀介質(zhì)"還將被用于包括能夠存儲(chǔ)、編碼或運(yùn)載用于由機(jī)器 執(zhí)行的一組指令,并且致使機(jī)器執(zhí)行本發(fā)明的方法中的一種或多種的任意 介質(zhì)。因此,術(shù)語"機(jī)器可讀介質(zhì)"將被用于包括,但不局限于,固態(tài)存 儲(chǔ)器、光和磁介質(zhì)以及載波信號(hào)。
總之,本發(fā)明的上述示例性實(shí)施例提供了有益于實(shí)現(xiàn)基于度量的流量 工程的增強(qiáng)和附加功能。例如,各個(gè)示例性實(shí)施例試圖解決下列實(shí)際任 務(wù)
1. 點(diǎn)到點(diǎn)的需求信息通常只能從網(wǎng)絡(luò)利用率的測量中部分推斷 出來。流量工程系統(tǒng)10應(yīng)該能夠?qū)@些需求的不確定知識(shí)起 作用。流量的智能路由通常在網(wǎng)絡(luò)發(fā)生故障的情況下,例如 當(dāng)網(wǎng)絡(luò)中的一個(gè)或多個(gè)元件(鏈路或節(jié)點(diǎn))發(fā)生故障時(shí)最有 用。于是,通常通過這些元件路由的流量將通過不包含這些 元件的最短路徑而被路由,從而致使沒有發(fā)生故障的元件具 有更高的利用率。網(wǎng)絡(luò)度量選擇不僅適用于正常操作下的網(wǎng) 絡(luò),還適用于大量故障情形中的任意一種故障情形下的網(wǎng) 絡(luò)。
2. 大網(wǎng)絡(luò)將附接很多邊緣設(shè)備和對(duì)等設(shè)備,所有這些設(shè)備都充 當(dāng)單獨(dú)的流量源和目的地。這會(huì)導(dǎo)致路由表的大小和復(fù)雜性 呈指數(shù)增長。流量工程算法的增強(qiáng)有益于使這些算法在這種 復(fù)雜性有巨大增長的情況下,也能保持其有效性。
3. 雖然諸如利用率水平之類的客觀標(biāo)準(zhǔn)可以用于引導(dǎo)流量工程 程序,但是可能也需要考慮更多主觀標(biāo)準(zhǔn),并且出于這個(gè)原 因,網(wǎng)絡(luò)可視化系統(tǒng)是非常有用的,這種網(wǎng)絡(luò)可視化系統(tǒng)即 使對(duì)于大的復(fù)雜網(wǎng)絡(luò),也能夠以人類可懂的方式提供重要判 斷標(biāo)準(zhǔn)的視圖。
4. 即使在找到滿足流量工程需求的一組新的度量后,用于將當(dāng) 前網(wǎng)絡(luò)配置逐步轉(zhuǎn)換到所需配置的方法也會(huì)提供某種益處,所 述將當(dāng)前網(wǎng)絡(luò)配置逐步轉(zhuǎn)換到所需配置的過程無需中斷網(wǎng)絡(luò)活 動(dòng),并且在該過程的中間步驟期間,網(wǎng)絡(luò)具有可預(yù)測并且可接 受的性能。上述示例性轉(zhuǎn)換系統(tǒng)試圖解決這個(gè)問題。
權(quán)利要求
1. 一種用于使與網(wǎng)絡(luò)的鏈路相關(guān)聯(lián)的度量最優(yōu)化的系統(tǒng),所述網(wǎng)絡(luò)利用最短路徑優(yōu)先的路由方法來路由,所述系統(tǒng)包括度量流量工程模塊,用于識(shí)別出至少一種可應(yīng)用于所述網(wǎng)絡(luò)的故障情形,識(shí)別出至少一種可應(yīng)用于通過所述網(wǎng)絡(luò)路由的點(diǎn)到點(diǎn)需求的帶寬水平情形,并且自動(dòng)計(jì)算網(wǎng)絡(luò)的多條鏈路中的每條鏈路的度量,從而使通過所述網(wǎng)絡(luò)的需求路由在所述至少一種故障情形中以及在所述至少一種帶寬水平情形中最優(yōu)化;以及耦合到所述度量流量工程模塊的轉(zhuǎn)換模塊,用于根據(jù)所述計(jì)算出的所述網(wǎng)絡(luò)的多條鏈路中的每條鏈路的度量,將網(wǎng)絡(luò)配置改變發(fā)送到網(wǎng)絡(luò)控制器。
2. —種用于使與網(wǎng)絡(luò)的鏈路相關(guān)聯(lián)的度量最優(yōu)化的方法,所述網(wǎng)絡(luò)利用最短路徑優(yōu)先的路由方法來路由,所述方法包括識(shí)別出至少一種可應(yīng)用于所述網(wǎng)絡(luò)的故障情形;識(shí)別出至少 一種可應(yīng)用于通過所述網(wǎng)絡(luò)路由的點(diǎn)到點(diǎn)需求的帶寬水平 情形;并且自動(dòng)計(jì)算網(wǎng)絡(luò)的多條鏈路中的每條鏈路的度量,從而使通過所述網(wǎng)絡(luò) 的需求路由對(duì)于所述至少一種故障情形以及所述至少一種帶寬水平情形最 優(yōu)化。
3. 如權(quán)利要求2所述的方法,包括識(shí)別出可應(yīng)用于所述網(wǎng)絡(luò)的多種故 障情形和多種帶寬水平情形,并且自動(dòng)計(jì)算所述網(wǎng)絡(luò)的多條鏈路中的每條 鏈路的度量,從而使由所述度量確定的需求路由所產(chǎn)生的鏈路利用率對(duì)于 所述網(wǎng)絡(luò)的多條鏈路中的每條鏈路,對(duì)于所述多種故障情形中的每種故障 情形,以及對(duì)于所述多種帶寬水平情形中的每種帶寬水平情形,都在預(yù)定 閾值以下。
4. 如權(quán)利要求3所述的方法,其中所述自動(dòng)計(jì)算用于計(jì)算所述網(wǎng)絡(luò)的 多條鏈路中的每條鏈路的度量,從而使所述多條鏈路中的每條鏈路的最大 鏈路利用率最小化,所述最大鏈路利用率是在所述多條鏈路上、所述多種故障情形上以及所述多種帶寬水平情形上的最大鏈路利用率,并且所述最 小化在鏈路度量的所有可能選擇上被執(zhí)行。
5. 如權(quán)利要求2所述的方法,其中所述至少一種故障情形是由于網(wǎng)絡(luò) 操作者為了禁止所述網(wǎng)絡(luò)中的至少一部分而采取的自發(fā)動(dòng)作而產(chǎn)生的。
6. 如權(quán)利要求2所述的方法,包括應(yīng)用在所述最短路徑優(yōu)先的路由方法中計(jì)算出的用于所述多條鏈路中的每條鏈路的度量,以便根據(jù)所述計(jì)算 出的度量來路由所述網(wǎng)絡(luò)內(nèi)的流量。
7. 如權(quán)利要求2所述的方法,包括將由于自動(dòng)計(jì)算出的用于至少一條 鏈路的度量的應(yīng)用而產(chǎn)生的,在所述至少一種故障情形以及所述至少一種 帶寬水平情形上的所述最大鏈路利用率傳送到用戶。
8. 如權(quán)利要求7所述的方法,其中所述最大鏈路利用率的傳送包括指 出是否有至少一個(gè)最大鏈路利用率超過預(yù)定的閾值鏈路利用率。
9. 如權(quán)利要求7所述的方法,其中所述最大鏈路利用率的傳送包括產(chǎn) 生用戶界面,在該用戶界面中,直觀地指出至少一個(gè)最大鏈路利用率。
10. 如權(quán)利要求2所述的方法,包括將所述計(jì)算出的度量存儲(chǔ)在所述 網(wǎng)絡(luò)內(nèi),以便根據(jù)所存儲(chǔ)的度量,利用所述最短路徑優(yōu)先的路由方法來路 由所述網(wǎng)絡(luò)。
11. 如權(quán)利要求2所述的方法,包括識(shí)別出為其分別計(jì)算度量的所述 網(wǎng)絡(luò)中的多條鏈路,以作為所述網(wǎng)絡(luò)的核心鏈路。
12. 如權(quán)利要求11所述的方法,其中對(duì)于所述核心鏈路的任意度量選 擇,識(shí)別出沿著通過所述網(wǎng)絡(luò)核心的公共路由的多組點(diǎn)到點(diǎn)需求,并且將 這些需求聚集起來,并且在所述自動(dòng)計(jì)算中看作單個(gè)需求。
13. —種用于將基于最短路徑優(yōu)先來路由的網(wǎng)絡(luò)從第一路由狀態(tài)遷移 到第二路由狀態(tài)的系統(tǒng),所述系統(tǒng)包括轉(zhuǎn)換模塊,用于產(chǎn)生中間網(wǎng)絡(luò)規(guī)劃的序列,所述中間網(wǎng)絡(luò)規(guī)劃中的每 一個(gè)都修改根據(jù)在前的網(wǎng)絡(luò)規(guī)劃的在前網(wǎng)絡(luò)狀態(tài),從而改變至少一種需求 在所述網(wǎng)絡(luò)的路由,所述中間網(wǎng)絡(luò)規(guī)劃的序列用于將所述網(wǎng)絡(luò)從所述第一 路由狀態(tài)遷移到所述第二路由狀態(tài);以及網(wǎng)絡(luò)控制器,該網(wǎng)絡(luò)控制器根據(jù)所述中間網(wǎng)絡(luò)規(guī)劃的序列來順序配置所述網(wǎng)絡(luò),從而將所述網(wǎng)絡(luò)從所述第一路由狀態(tài)遷移到所述第二路由狀 態(tài), 其中所述序列中的每個(gè)中間網(wǎng)絡(luò)規(guī)劃都將所述網(wǎng)絡(luò)配置為在至少一種 預(yù)定限制內(nèi)進(jìn)行操作。
14. 一種用于將基于最短路徑優(yōu)先來路由的網(wǎng)絡(luò)從第一路由規(guī)劃轉(zhuǎn)換 到第二路由規(guī)劃的方法,所述第一路由規(guī)劃使第一組度量與所述網(wǎng)絡(luò)的鏈 路相關(guān)聯(lián),所述第二路由規(guī)劃使第二組度量與所述網(wǎng)絡(luò)的鏈路相關(guān)聯(lián),所 述方法包括產(chǎn)生中間網(wǎng)絡(luò)規(guī)劃的序列,所述中間網(wǎng)絡(luò)規(guī)劃中的每一個(gè)都修改根據(jù) 在前的網(wǎng)絡(luò)規(guī)劃的在前網(wǎng)絡(luò)狀態(tài),從而改變至少一種需求在所述網(wǎng)絡(luò)的路 由,所述中間網(wǎng)絡(luò)規(guī)劃的序列用于將所述網(wǎng)絡(luò)從依照所述第一網(wǎng)絡(luò)規(guī)劃的 第一路由狀態(tài)轉(zhuǎn)換到依照所述第二網(wǎng)絡(luò)規(guī)劃的第二路由狀態(tài);并且根據(jù)所述中間網(wǎng)絡(luò)規(guī)劃的序列來順序配置所述網(wǎng)絡(luò),從而將所述網(wǎng)絡(luò) 從所述第一路由狀態(tài)轉(zhuǎn)換到所述第二路由狀態(tài),其中所述序列中的每個(gè)中間網(wǎng)絡(luò)規(guī)劃都將所述網(wǎng)絡(luò)配置為在至少一種 預(yù)定限制內(nèi)進(jìn)行操作。
15. 如權(quán)利要求14所述的方法,其中所述預(yù)定限制是所述在前的網(wǎng)絡(luò)狀態(tài)和所產(chǎn)生的網(wǎng)絡(luò)狀態(tài)之間的收斂時(shí)間小于預(yù)定的最大時(shí)間。
16. 如權(quán)利要求14所述的方法,其中所述至少一種預(yù)定限制是帶寬需求的最大百分比增長不超過所述網(wǎng)絡(luò)的至少一條鏈路的預(yù)定容量。
17. 如權(quán)利要求14所述的方法,其中所述至少一種預(yù)定限制是與所述 網(wǎng)絡(luò)內(nèi)的點(diǎn)到點(diǎn)需求相關(guān)聯(lián)的最大需求延遲。
18. 如權(quán)利要求17所述的方法,其中所述最大需求延遲被指定為與所 述點(diǎn)到點(diǎn)需求相關(guān)聯(lián)的現(xiàn)有需求延遲上的百分比增長。
19. 如權(quán)利要求14所述的方法,其中所述至少一種預(yù)定限制是所述網(wǎng) 絡(luò)的至少一條鏈路的最大鏈路帶寬利用率,其中所述最大鏈路帶寬利用率 是在所述網(wǎng)絡(luò)的至少 一種故障情形上。
20. 如權(quán)利要求14所述的方法,其中所述至少一種預(yù)定限制是將在所
21. 如權(quán)利要求14所述的方法,其中所述至少一種預(yù)定限制是在多種 故障情形上的最大鏈路帶寬利用率。
22. 如權(quán)利要求14所述的方法,其中所述中間網(wǎng)絡(luò)規(guī)劃序列的產(chǎn)生包 括定義網(wǎng)絡(luò)路由狀態(tài)樹,該樹以所述第一路由狀態(tài)作為根,以及在該樹中 識(shí)別出從所述根到所述第二網(wǎng)絡(luò)路由狀態(tài)的路徑,從而作為所述路徑中的 每個(gè)節(jié)點(diǎn)的各個(gè)網(wǎng)絡(luò)狀態(tài)將所述網(wǎng)絡(luò)配置為在所述至少一種預(yù)定限制內(nèi)進(jìn) 行操作。
23. 如權(quán)利要求14所述的方法,其中所述中間網(wǎng)絡(luò)規(guī)劃序列的產(chǎn)生包 括確定中間網(wǎng)絡(luò)規(guī)劃的第一序列超過第一限制,并且然后修改所述第一限 制,以產(chǎn)生所述至少一種預(yù)定限制,其中根據(jù)所述至少一種預(yù)定限制來產(chǎn) 生所述中間網(wǎng)絡(luò)規(guī)劃的序列。
24. 如權(quán)利要求14所述的方法,其中所述中間網(wǎng)絡(luò)規(guī)劃序列中的特定 中間網(wǎng)絡(luò)規(guī)劃只有單個(gè)度量與在前中間網(wǎng)絡(luò)規(guī)劃不同。
25. 如權(quán)利要求14所述的方法,其中所述中間網(wǎng)絡(luò)規(guī)劃序列中的特定 中間網(wǎng)絡(luò)規(guī)劃有至少一個(gè)度量與在前中間網(wǎng)絡(luò)規(guī)劃不同。
26. 如權(quán)利要求14所述的方法,其中所述中間網(wǎng)絡(luò)規(guī)劃序列中的特定 中間網(wǎng)絡(luò)規(guī)劃與在前中間網(wǎng)絡(luò)規(guī)劃的不同之處在于所述網(wǎng)絡(luò)的至少一條鏈 路的狀態(tài)與由所述在前中間網(wǎng)絡(luò)規(guī)劃指定的在前狀態(tài)不同。
27. 如權(quán)利要求26所述的方法,其中所述狀態(tài)是活動(dòng)狀態(tài),并且所述 在前狀態(tài)是非活動(dòng)狀態(tài),或者所述狀態(tài)是非活動(dòng)狀態(tài),并且所述在前狀態(tài) 是活動(dòng)狀態(tài)。
28. 如權(quán)利要求14所述的方法,包括識(shí)別出第一組鏈路,并且其中所 述序列中的第一中間網(wǎng)絡(luò)規(guī)劃與在前中間網(wǎng)絡(luò)規(guī)劃的不同之處在于所述第 一組鏈路內(nèi)的每條鏈路的狀態(tài)與由所述在前中間網(wǎng)絡(luò)規(guī)劃指定的在前狀態(tài) 不同。
29. 如權(quán)利要求14所述的方法,其中所述網(wǎng)絡(luò)的順序配置包括順序?qū)?所述中間網(wǎng)絡(luò)規(guī)劃序列中的每個(gè)中間網(wǎng)絡(luò)規(guī)劃從轉(zhuǎn)換序列模塊傳送到網(wǎng)絡(luò) 控制器,其中所述轉(zhuǎn)換序列模塊接收來自所述網(wǎng)絡(luò)控制器的確認(rèn),該確認(rèn) 表明特定的中間網(wǎng)絡(luò)規(guī)劃在傳送后續(xù)中間網(wǎng)絡(luò)規(guī)劃之前已經(jīng)被配置。
30. —種用于產(chǎn)生界面來顯示關(guān)于網(wǎng)絡(luò)的信息的自動(dòng)化方法,該方法 包括 識(shí)別出網(wǎng)絡(luò)節(jié)點(diǎn)的至少一個(gè)集合,以構(gòu)成網(wǎng)絡(luò)站點(diǎn);產(chǎn)生所述界面將包括的第一顯示,所述第一顯示描繪了代表所述網(wǎng)絡(luò)內(nèi)的各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)和網(wǎng)絡(luò)鏈路的圖形節(jié)點(diǎn)和圖形鏈路,其中所述網(wǎng)絡(luò)節(jié)點(diǎn) 的至少一個(gè)集合由所述顯示內(nèi)的單個(gè)圖形節(jié)點(diǎn)來代表;產(chǎn)生所述界面將包括的第二顯示,所述第二顯示描繪了所述網(wǎng)絡(luò)節(jié)點(diǎn) 的至少一個(gè)集合,以及所述至少一個(gè)集合中的節(jié)點(diǎn)之間的網(wǎng)絡(luò)鏈路;以及 與將所述第一和第二顯示提供到用戶同步地產(chǎn)生所述界面。
31. 如權(quán)利要求30所述的方法,其中所述網(wǎng)絡(luò)節(jié)點(diǎn)的集合的識(shí)別包括 將所述網(wǎng)絡(luò)節(jié)點(diǎn)的至少 一個(gè)集合識(shí)別為位于公共的物理位置。
32. 如權(quán)利要求30所述的方法,其中所述第二顯示的產(chǎn)生包括還在所述第二顯示內(nèi)描繪出所述至少一個(gè)集合中的節(jié)點(diǎn)與所述至少一個(gè)集合外的 節(jié)點(diǎn)之間的網(wǎng)絡(luò)鏈路。
33. 如權(quán)利要求30所述的方法,其中在所述網(wǎng)絡(luò)中的一對(duì)節(jié)點(diǎn)之間的 至少兩條鏈路構(gòu)成回路,以便于所述對(duì)的節(jié)點(diǎn)之間的雙向通信,所述第一 顯示的產(chǎn)生包括代表了所述節(jié)點(diǎn)對(duì)之間的回路的圖形回路。
34. 如權(quán)利要求33所述的方法,包括產(chǎn)生所述圖形回路,以直觀地指 出所述節(jié)點(diǎn)對(duì)之間的帶寬容量。
35. 如權(quán)利要求34所述的方法,其中所述產(chǎn)生圖形回路,以直觀地指 出帶寬容量的步驟包括標(biāo)出所述圖形回路的尺寸,以指示出所述帶寬容
36. 如權(quán)利要求33所述的方法,包括產(chǎn)生所述圖形回路,以描繪構(gòu)成 所代表的網(wǎng)絡(luò)回路的網(wǎng)絡(luò)鏈路。
37. 如權(quán)利要求33所述的方法,包括產(chǎn)生所述圖形回路,以直觀地指 出所代表的網(wǎng)絡(luò)回路的帶寬利用率。
38. 如權(quán)利要求37所述的方法,其中所述產(chǎn)生圖形鏈路,以直觀地指 出帶寬利用率的步驟包括根據(jù)顏色/利用率索引對(duì)所述圖形鏈路著色。
39. 如權(quán)利要求37所述的方法,其中所述產(chǎn)生圖形鏈路,以直觀地指出帶寬利用率的步驟包括與所述帶寬利用率成比例地對(duì)所述圖形鏈路的一 部分著色。
40. 如權(quán)利要求30所述的方法,包括產(chǎn)生所述界面,以給出對(duì)關(guān)于所 述網(wǎng)絡(luò)的故障情形的用戶說明,并且提供對(duì)響應(yīng)于所述故障情形的通過所 述網(wǎng)絡(luò)的重路由需求的顯示。
41. 如權(quán)利要求30所述的方法,包括產(chǎn)生所述界面,以給出對(duì)關(guān)于所述網(wǎng)絡(luò)的帶寬需求水平的用戶說明,并且提供對(duì)響應(yīng)于所述指定的帶寬需 求水平的所述網(wǎng)絡(luò)內(nèi)帶寬利用率的顯示。
42. 如權(quán)利要求30所述的方法,包括產(chǎn)生所述界面,以給出對(duì)網(wǎng)絡(luò)流 量服務(wù)等級(jí)的用戶說明,并且提供一種或多種所述指定的網(wǎng)絡(luò)流量服務(wù)等 級(jí)特有的帶寬需求和帶寬利用率信息。
43. 如權(quán)利要求30所述的方法,包括產(chǎn)生所述界面,以提供對(duì)與所述 網(wǎng)絡(luò)中屬于所述指定的網(wǎng)絡(luò)流量服務(wù)等級(jí)的網(wǎng)絡(luò)流量可獲得的容量總量相 等的容量的指示,并且以容量的比例示出所述帶寬利用率信息。
44. 如權(quán)利要求30所述的方法,包括產(chǎn)生所述界面,.以顯示在所定義 的最壞情況的故障情形中,對(duì)于所述網(wǎng)絡(luò)中至少一條鏈路的帶寬需求和帶 寬利用率信息中的至少一種。
45. 如權(quán)利要求44所述的方法,其中基于多種故障情形和多種需求帶 寬水平中的最高利用率對(duì)將顯示在所述界面內(nèi)每條鏈路著色,從而將所述 多條鏈路描繪為具有對(duì)所述多種故障情形和多種需求帶寬水平中的至少一 種所表現(xiàn)出的利用率。
46. —種用于使基于最短路徑優(yōu)先來路由的網(wǎng)絡(luò)內(nèi)的路由最優(yōu)化的方 法,該方法包括估計(jì)所述網(wǎng)絡(luò)內(nèi)的帶寬需求;利用估計(jì)出的帶寬需求來確定當(dāng)前狀態(tài)中所述網(wǎng)絡(luò)內(nèi)的帶寬利用率; 執(zhí)行與所述網(wǎng)絡(luò)的鏈路相關(guān)聯(lián)的度量的最優(yōu)化,從而識(shí)別出所述網(wǎng)絡(luò)的所需狀態(tài),在所述所需狀態(tài)內(nèi),相對(duì)于所述當(dāng)前狀態(tài)降低了所述網(wǎng)絡(luò)內(nèi)的帶寬利用率;并且產(chǎn)生轉(zhuǎn)換序列,從而將所述網(wǎng)絡(luò)從所述當(dāng)前狀態(tài)遷移到所述所需狀
全文摘要
一種系統(tǒng),用于將基于最短路徑優(yōu)先來路由的網(wǎng)絡(luò)從第一路由狀態(tài)遷移到第二路由狀態(tài),該系統(tǒng)包括用于產(chǎn)生中間網(wǎng)絡(luò)規(guī)劃的轉(zhuǎn)換模塊,所述中間網(wǎng)絡(luò)規(guī)劃中的每一個(gè)修改根據(jù)在先網(wǎng)絡(luò)規(guī)劃的在先網(wǎng)絡(luò)狀態(tài),從而使網(wǎng)絡(luò)中至少一種需求的路由改變。中間網(wǎng)絡(luò)規(guī)劃的序列將網(wǎng)絡(luò)從第一路由狀態(tài)遷移到第二路由狀態(tài)。網(wǎng)絡(luò)控制器根據(jù)中間網(wǎng)絡(luò)規(guī)劃的序列來順序配置網(wǎng)絡(luò),從而將網(wǎng)絡(luò)從第一路由狀態(tài)遷移到第二路由狀態(tài)。該序列中的每個(gè)中間網(wǎng)絡(luò)規(guī)劃都將網(wǎng)絡(luò)配置為在至少一種預(yù)定限制內(nèi)進(jìn)行操作。
文檔編號(hào)H04L12/56GK101277220SQ200810094090
公開日2008年10月1日 申請日期2003年10月17日 優(yōu)先權(quán)日2002年10月18日
發(fā)明者艾倫·古斯 申請人:卡里德恩科技有限公司