欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種光突發(fā)環(huán)網(wǎng)動態(tài)帶寬分配方法及裝置與流程

文檔序號:11959909閱讀:216來源:國知局
一種光突發(fā)環(huán)網(wǎng)動態(tài)帶寬分配方法及裝置與流程

本發(fā)明涉及一種子波長全光交換網(wǎng)絡(luò),特別涉及一種光突發(fā)環(huán)網(wǎng)動態(tài)帶寬分配方法及裝置。



背景技術(shù):

全球范圍內(nèi)數(shù)據(jù)業(yè)務(wù)的迅猛增長,對核心骨干網(wǎng)的傳輸能力提出了更高的要求。隨著密集波分復(fù)用技術(shù)的進(jìn)一步成熟,單根光纖上的帶寬越來越大,現(xiàn)有的基于電處理的分組交換速度與單根光纖上的帶寬相比顯得很低,為了提高交換速度和帶寬利用率,光分組交換是必然的發(fā)展方向。但由于光緩存技術(shù)不成熟,在全光域無法采用存儲轉(zhuǎn)發(fā)機(jī)制,使得全光分組交換難以實現(xiàn),光分組交換在短期內(nèi)不可能有大的發(fā)展。光突發(fā)環(huán)網(wǎng)采用全光時隙交換技術(shù)和全網(wǎng)同步控制機(jī)制,不需要光緩存,且具備解決資源競爭問題的潛力,是下一代城域網(wǎng)的有力競爭者。

光突發(fā)傳送網(wǎng)(Optical Burst Transport Network,OBTN)采用基于光突發(fā)(Optical Burst,OB)的全光交換技術(shù),具備網(wǎng)絡(luò)任意節(jié)點對間光層帶寬按需提供和快速調(diào)度能力,可實現(xiàn)對各種流量(如南北向突發(fā)流量、東西向突發(fā)流量等)場景的動態(tài)適應(yīng)和良好支持,能夠提升資源利用效率和網(wǎng)絡(luò)靈活性,同時保留光層高速大容量和低成本的優(yōu)點,且適用于星形/樹形/環(huán)形各種網(wǎng)絡(luò)拓?fù)?。圖1是現(xiàn)有技術(shù)提供的OBTN環(huán)網(wǎng)基本結(jié)構(gòu)示意圖,如圖1所示,具體是一種4節(jié)點OBTN單向環(huán)形網(wǎng)絡(luò),每個節(jié)點配置一對快速可調(diào)諧突發(fā)發(fā)射機(jī)和快速可調(diào)諧突發(fā)接收機(jī)(可擴(kuò)展為多個),整網(wǎng)有兩個波長λ0和λ1作為數(shù)據(jù)通道,一個波長λc作為控制通道,節(jié)點A為主節(jié)點。

所述OBTN技術(shù)具有如下特征:

(1)數(shù)據(jù)通道中最基本的傳輸單元為OB。OB間有保護(hù)時間作為間隔,若干OB組成一個數(shù)據(jù)幀,不同波長通道的相應(yīng)OB幀和OB時隙起始位置需要對齊。數(shù)據(jù)通道采用突發(fā)光接收機(jī)/發(fā)射機(jī),光突發(fā)數(shù)據(jù)從源節(jié)點發(fā)送到目的節(jié)點是光層直傳,不需要中間節(jié)點作電層轉(zhuǎn)發(fā)。源端需要將客戶側(cè)數(shù)據(jù)包匯聚并封裝至 OB發(fā)送。

(2)控制通道與數(shù)據(jù)通道相分離。OBTN采用獨(dú)立的波長通道承載控制信息,其中包括操作維護(hù)管理(Operations Administration and Maintenance,OAM)信息、用于搜集各節(jié)點帶寬請求的帶寬報告和指示各節(jié)點發(fā)送/接收數(shù)據(jù)的帶寬地圖??刂茙芍鞴?jié)點發(fā)送到各個從節(jié)點,指示各節(jié)點發(fā)送/接收數(shù)據(jù)的帶寬地圖,再從各個從節(jié)點返回到主節(jié)點,帶有各個從節(jié)點的帶寬請求報告和從節(jié)點的OAM信息??刂茙谥鞴?jié)點先于對應(yīng)的數(shù)據(jù)幀發(fā)送,也先于對應(yīng)的數(shù)據(jù)幀到達(dá)每個從節(jié)點??刂仆ǖ揽梢圆捎闷胀ǖ墓饨邮諜C(jī)/發(fā)射機(jī)作為收發(fā)設(shè)備,在每個節(jié)點都進(jìn)行電域處理,以接收和更新相應(yīng)控制信息。OBTN環(huán)網(wǎng)中控制幀與數(shù)據(jù)幀的時序關(guān)系如圖2所示。

(3)采用快速可調(diào)諧光器件實現(xiàn)基于OB的全光交換。OBTN節(jié)點可以快速調(diào)節(jié)(納秒級)發(fā)射機(jī)/接收機(jī)的發(fā)射/接收波長,以根據(jù)帶寬地圖選擇相應(yīng)的波長和OB時隙進(jìn)行突發(fā)數(shù)據(jù)發(fā)送/接收,以實現(xiàn)基于OB的全光交換。

(4)流量感知的實時光層資源調(diào)度。OBTN采用集中式控制方式,各從節(jié)點通過控制幀周期性上報帶寬請求至主節(jié)點,主節(jié)點根據(jù)當(dāng)前資源狀態(tài)和帶寬分配策略進(jìn)行波長和OB時隙分配,并將分配結(jié)果記入帶寬地圖,再由控制幀分發(fā)至各從節(jié)點,以根據(jù)流量需求實現(xiàn)光層資源快速調(diào)度。

然而,由于突發(fā)數(shù)據(jù)包在源目的節(jié)點對間光層直傳,而不進(jìn)行電處理,因此受到波長一致性和時隙一致性的約束。如圖1所示,節(jié)點A發(fā)往節(jié)點D的一個突發(fā)數(shù)據(jù)包,在節(jié)點A由帶寬地圖指定在波長λ0相應(yīng)數(shù)據(jù)幀的第3個OB時隙上路,由于光層直傳,且沒有波長變換器和光緩存(波長變換器成本高昂,對信號質(zhì)量有嚴(yán)重影響;光緩存技術(shù)未突破),在經(jīng)過節(jié)點B、節(jié)點C至節(jié)點D下路時,此突發(fā)數(shù)據(jù)包必須也占用波長λ0相應(yīng)數(shù)據(jù)幀的第3個OB時隙,而不能更改波長和時隙位置。更進(jìn)一步,由于波長時隙分配受到上述多重約束,且?guī)捹Y源有限,因此,如分配不當(dāng),會導(dǎo)致資源沖突,引起大量丟包,嚴(yán)重降低網(wǎng)絡(luò)性能。OBTN中資源沖突主要包括下列三種:

(1)發(fā)射機(jī)資源沖突。一個源端發(fā)射機(jī)于任意時隙位置能且僅能在一個波長上發(fā)送突發(fā)數(shù)據(jù)。如圖1,節(jié)點A在波長λ0相應(yīng)數(shù)據(jù)幀的第3個OB時隙發(fā)送一個A-->D的突發(fā)數(shù)據(jù)包;此時,如果帶寬地圖中還有一個以A節(jié)點為源節(jié)點的業(yè)務(wù)在波長λ1相應(yīng)數(shù)據(jù)幀的第3個OB時隙上,則產(chǎn)生發(fā)射機(jī)資源沖突。

(2)接收機(jī)資源沖突。一個目的端接收機(jī)于任意時隙位置能且僅能在一個波長上接收突發(fā)數(shù)據(jù)。如圖,節(jié)點D在波長λ0相應(yīng)數(shù)據(jù)幀的第3個OB時隙接收一個A-->D的突發(fā)數(shù)據(jù)包;此時,如果帶寬地圖中還有一個以D節(jié)點為目的節(jié)點的業(yè)務(wù)在波長λ1相應(yīng)數(shù)據(jù)幀的第3個OB時隙上,則產(chǎn)生接收機(jī)資源沖突。

(3)鏈路資源沖突。同一鏈路上任意波長相應(yīng)數(shù)據(jù)幀的任意時隙能且僅能被分配一次。如圖1,業(yè)務(wù)A-->D占用波長λ0相應(yīng)數(shù)據(jù)幀的第3個OB時隙;此時,如果帶寬地圖中還有業(yè)務(wù)B-->A占用波長λ0相應(yīng)數(shù)據(jù)幀的第3個OB時隙,則在鏈路BC和鏈路CD上將產(chǎn)生鏈路資源沖突。

為了防止資源沖突,每個OB時隙的帶寬分配,都需要查詢上述三類資源的使用狀態(tài)。目前業(yè)界采用主節(jié)點對環(huán)網(wǎng)的每個節(jié)點分配帶寬,在主節(jié)點設(shè)立資源狀態(tài)表來記錄上述三類資源的使用狀態(tài),資源表包含:1)源/目的資源狀態(tài)表Src_state[S][m]/Dst_state[D][m],表示源節(jié)點S/目的節(jié)點D的第m個發(fā)送/接收時隙的使用狀態(tài)。2)鏈路資源狀態(tài)表Link_state[(i,j)][w][m],表示鏈路(i,j)上波長通道w的第m個時隙的占用狀態(tài),占用置0,反之置1。3)路由表Route_state[(S,D)][(i,j)]表示源節(jié)點為S目的節(jié)點為D的節(jié)點對(S,D)的路由是否經(jīng)過鏈路(i,j),經(jīng)過置1,反之置0,如圖5所示。

對于一個具有M個節(jié)點,數(shù)據(jù)通道有N個波長,每個波長支持L個OB時隙的環(huán)網(wǎng),環(huán)網(wǎng)每次供分配的OB時隙數(shù)最多為M*N*L個。每為一個節(jié)點對AB分配一個時隙最多的時間復(fù)雜度為:查詢一次發(fā)射機(jī)資源使用狀態(tài)Ο(1),查詢一次接收機(jī)資源使用狀態(tài)Ο(1),查詢一次路由表Ο(M-1),遍歷所有波長的鏈路資源使用狀態(tài)Ο(N*(M-1))。因此,最大時間復(fù)雜度為:Ο(1+1+(M-1)+N*(M-1)),也就是說,節(jié)點對之間一個OB時隙分配的時間復(fù)雜度為Ο((N+1)*(M-1)+2)。綜合上述敘述,可以知道,完成一次環(huán)網(wǎng)的所有OB時隙分配的時間復(fù)雜度為Ο(((N+1)*(M-1)+2)*M*N*L)。因此,很顯然動態(tài)帶寬分配算法是實現(xiàn)光層帶寬按需提供的關(guān)鍵技術(shù),為了實現(xiàn)動態(tài)帶寬按需分配,動態(tài)帶寬分配(Dynamic Bandwidth Allocation,DBA)必需在流量變化時,進(jìn)行快速響應(yīng),即具備快速計算能力,使得每次環(huán)網(wǎng)帶寬分配時間,也就是每個DBA周期的時間很短,以防止算法延時導(dǎo)致的響應(yīng)延時及時延、抖動和丟包等負(fù)面影響。



技術(shù)實現(xiàn)要素:

本發(fā)明的目的在于提供一種光突發(fā)環(huán)網(wǎng)動態(tài)帶寬分配方法及裝置,能更好地解決在光突發(fā)環(huán)網(wǎng)中分配動態(tài)帶寬期間減小DBA周期的問題。

根據(jù)本發(fā)明的一個方面,提供了一種光突發(fā)環(huán)網(wǎng)動態(tài)帶寬分配方法,包括:

在光突發(fā)環(huán)網(wǎng)中,根據(jù)外界輸入的關(guān)于每個節(jié)點對的帶寬請求,生成每個節(jié)點對的以字節(jié)為單位的固定帶寬請求、保證帶寬請求和非保證帶寬請求,并將所述每個節(jié)點對的以字節(jié)為單位的固定帶寬請求、保證帶寬請求和非保證帶寬請求分別轉(zhuǎn)換成以時隙為單位的固定時隙請求、保證時隙請求和非保證時隙請求;

通過對每個節(jié)點對的非保證時隙請求進(jìn)行調(diào)度,確定實際參與非保證時隙分配的非保證時隙請求;

根據(jù)固定時隙請求、保證時隙請求和實際參與非保證時隙分配的非保證時隙請求,為每個節(jié)點對分配固定時隙、保證時隙和非保證時隙,并根據(jù)分配給每個節(jié)點對的固定時隙、保證時隙和非保證時隙生成帶寬地圖。

優(yōu)選地,為每個節(jié)點對分配固定時隙的步驟包括:

對于某一節(jié)點對,根據(jù)固定時隙分配請求,查找所述節(jié)點對的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài);

按照波長進(jìn)行區(qū)分,將所找到的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)的狀態(tài)值進(jìn)行按位邏輯與操作,得到對應(yīng)于不同波長的狀態(tài)值;

根據(jù)對應(yīng)于不同波長的狀態(tài)值,確定波長編號最小/最大的且時隙資源未全部占用的某個波長,并計算其未占用時隙的比特位和未占用時隙數(shù)量;

比較所述未占用時隙數(shù)量與所述節(jié)點對的待分配固定時隙數(shù)量a;

若所述未占用時隙數(shù)量大于或等于所述節(jié)點對的待分配固定時隙數(shù)量a,則按照未占用時隙的比特位由低至高/由高至低的順序,確定參與固定時隙分配的a個未占用時隙;

否則,按照波長編號由小至大/或由大至小的順序,依次取出后續(xù)時隙資源未全部占用的波長,直至未占用時隙數(shù)量的累加結(jié)果大于或等于a,然后再確定參與固定時隙分配的a個未占用時隙。

優(yōu)選地,按照波長進(jìn)行區(qū)分,將所確定的a個未占用時隙作為固定時隙保存至相應(yīng)波長編號的固定時隙分配結(jié)果隨機(jī)存儲器中。

優(yōu)選地,所述的為每個節(jié)點對分配保證時隙的步驟包括:

根據(jù)某一節(jié)點對的保證時隙請求,查找所述節(jié)點對的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài);

按照波長進(jìn)行區(qū)分,將所找到的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)的狀態(tài)值進(jìn)行按位邏輯與操作,得到對應(yīng)于不同波長的狀態(tài)值;

根據(jù)對應(yīng)于不同波長的狀態(tài)值,確定波長編號最小/最大的且時隙資源未全部占用的某個波長,并計算其未占用時隙的比特位和未占用時隙數(shù)量;

比較所述未占用時隙數(shù)量與所述節(jié)點對的待分配保證時隙數(shù)量b;

若所述未占用時隙數(shù)量大于或等于待分配給所述節(jié)點對的待分配保證時隙數(shù)量b,則按照未占用時隙的比特位由低至高/由高至低的順序,確定參與保證時隙分配的b個未占用時隙;

否則,按照波長編號由小至大/由大至小的順序,依次取出后續(xù)時隙資源未全部占用的波長,直至未占用時隙數(shù)量的累加結(jié)果大于或等于b,然后再確定參與保證時隙分配的b個未占用時隙。

優(yōu)選地,所述的確定實際參與非保證時隙分配的非保證時隙請求的步驟包括:

根據(jù)每個節(jié)點對的優(yōu)先級或權(quán)重,選取實際參與非保證時隙分配的節(jié)點對,并將所選取的實際參與非保證時隙分配的節(jié)點對所對應(yīng)的非保證時隙請求作為實際參與非保證時隙分配的非保證時隙請求。

優(yōu)選地,所述的為每個節(jié)點對分配非保證時隙的步驟包括:

根據(jù)某一實際參與非保證時隙分配的節(jié)點對的非保證時隙請求,查找所述節(jié)點對的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài);

按照波長進(jìn)行區(qū)分,將所找到的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)的狀態(tài)值進(jìn)行按位邏輯與操作,得到對應(yīng)于不同波長的狀態(tài)值;

根據(jù)對應(yīng)于不同波長的狀態(tài)值,確定波長編號最小/最大的且時隙資源未全部占用的某個波長,并將比特位最低/最高的未占用時隙作為非保證時隙。

優(yōu)選地,設(shè)置兩個保證時隙請求隨機(jī)存儲器,分別保存兩個不同動態(tài)帶寬分配周期的保證時隙請求。

優(yōu)選地,設(shè)置兩個非保證時隙請求先入先出存儲器,分別保存兩個不同動態(tài)帶寬分配周期的非保證時隙請求。

優(yōu)選地,設(shè)置兩組用來分別保存兩個不同動態(tài)帶寬分配周期的保證和非保證時隙分配結(jié)果的保證和非保證時隙分配結(jié)果隨機(jī)存儲器,其每組具有對應(yīng)于不同波長編號的多個保證和非保證時隙分配結(jié)果隨機(jī)存儲器,從而按照動態(tài)帶寬分配周期和不同的波長,將為每個節(jié)點對分配保證時隙和非保證時隙保存至相應(yīng)組的保證和非保證時隙分配結(jié)果隨機(jī)存儲器。

優(yōu)選地,設(shè)置一個用來保存源節(jié)點資源狀態(tài)表的源節(jié)點資源狀態(tài)表寄存器、用來保存目的節(jié)點資源狀態(tài)表的目的節(jié)點資源狀態(tài)表寄存器、用來保存每段鏈路每個波長的資源狀態(tài)表的鏈路資源狀態(tài)表寄存器、用來保存路由表的路由表雙端口隨機(jī)存儲器,通過查詢源節(jié)點資源狀態(tài)表寄存器得到所述節(jié)點對的源節(jié)點資源狀態(tài)、通過查找目的節(jié)點資源狀態(tài)表寄存器得到所述節(jié)點對的目的節(jié)點資源狀態(tài)、通過查找路由表得到所述節(jié)點對經(jīng)過的每個鏈路,通過查找每段鏈路每個波長的鏈路資源狀態(tài)表寄存器得到路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)。

優(yōu)選地,為某個節(jié)點對分配固定時隙和保證時隙之后或一次分配一個非保證時隙之后,根據(jù)資源使用情況,更新并保存源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、每段鏈路每個波長資源狀態(tài)的狀態(tài)值。

優(yōu)選地,每個節(jié)點對的固定時隙分配在初始化階段完成,以后一直保持不變,每個動態(tài)帶寬分配周期根據(jù)每個節(jié)點對的帶寬請求,為其分配保證帶寬時隙和非保證帶寬時隙。

優(yōu)選地,每個動態(tài)帶寬分配周期的起始階段,每個源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、每段鏈路每個波長的鏈路資源狀態(tài)恢復(fù)到初始化階段固定時隙分配完成之后相應(yīng)的狀態(tài)值。

根據(jù)本發(fā)明的另一方面,提供了一種光突發(fā)環(huán)網(wǎng)動態(tài)帶寬分配裝置,包括:

帶寬請求生成模塊,用于在光突發(fā)環(huán)網(wǎng)中,根據(jù)外界輸入的關(guān)于每個節(jié)點對的帶寬請求,生成每個節(jié)點對的以字節(jié)為單位的固定帶寬請求、保證帶寬請求和非保證帶寬請求,將所生成的每個節(jié)點對的以字節(jié)為單位的固定帶寬請求、保證 帶寬請求和非保證帶寬請求分別轉(zhuǎn)換成以時隙為單位的固定時隙請求、保證時隙請求和非保證時隙請求;

非保證帶寬調(diào)度模塊,用于通過對每個節(jié)點對的非保證時隙請求進(jìn)行調(diào)度,確定實際參與非保證時隙分配的非保證時隙請求;

帶寬地圖生成模塊,用于根據(jù)固定時隙請求、保證時隙請求和實際參與非保證時隙分配的非保證時隙請求,為每個節(jié)點對分配固定時隙、保證時隙和非保證時隙,并根據(jù)分配給每個節(jié)點對的固定時隙、保證時隙和非保證時隙生成帶寬地圖。

優(yōu)選地,對于某一節(jié)點對,根據(jù)固定時隙請求,所述帶寬地圖生成模塊查找所述節(jié)點對的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài),并按照波長進(jìn)行區(qū)分,將所找到的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)的狀態(tài)值進(jìn)行按位邏輯與操作,得到對應(yīng)于不同波長的狀態(tài)值;根據(jù)對應(yīng)于不同波長的狀態(tài)值,確定波長編號最小/最大的且時隙資源未全部占用的某個波長,并計算其未占用時隙的比特位和未占用時隙數(shù)量,比較所述未占用時隙數(shù)量與所述節(jié)點對的待分配固定時隙數(shù)量a,若所述未占用時隙數(shù)量大于或等于所述節(jié)點對的待分配固定時隙數(shù)量a,則按照未占用時隙的比特位由低至高/由高至低的順序,確定參與固定時隙分配的a個未占用時隙,否則,按照波長編號由小至大/由大至小的順序,依次取出后續(xù)時隙資源未全部占用的波長,直至未占用時隙數(shù)量的累加結(jié)果大于或等于a,然后再確定參與固定時隙分配的a個未占用時隙。

優(yōu)選地,所述帶寬地圖生成模塊具有多個分別對應(yīng)于不同波長編號的固定時隙分配結(jié)果隨機(jī)存儲器,所述帶寬地圖生成模塊按照波長進(jìn)行區(qū)分,將所確定的a個未占用時隙作為固定時隙保存至相應(yīng)波長編號的固定時隙分配結(jié)果隨機(jī)存儲器中。

優(yōu)選地,所述帶寬地圖生成模塊根據(jù)某一節(jié)點對的保證時隙請求,查找所述節(jié)點對的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài),按照波長進(jìn)行區(qū)分,將所找到的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)的狀態(tài)值進(jìn)行按位邏輯與操作,得到對應(yīng)于不同波長的狀態(tài)值,根據(jù)對應(yīng)于不同波長的狀態(tài)值,確定波長編 號最小/最大的且時隙資源未全部占用的某個波長,并計算其未占用時隙的比特位和未占用時隙數(shù)量,比較所述未占用時隙數(shù)量與所述節(jié)點對的待分配保證時隙數(shù)量b,若所述未占用時隙數(shù)量大于或等于待分配給所述節(jié)點對的待分配保證時隙數(shù)量b,則按照未占用時隙的比特位由低至高/由高至低的順序,確定參與保證時隙分配的b個未占用時隙,否則,按照波長編號由小至大/由大至小的順序,依次取出后續(xù)時隙資源未全部占用的波長,直至未占用時隙數(shù)量的累加結(jié)果大于或等于b,然后再確定參與保證時隙分配的b個未占用時隙。

優(yōu)選地,所述非保證帶寬調(diào)度模塊根據(jù)每個節(jié)點對的優(yōu)先級或權(quán)重,選取實際參與非保證時隙分配的節(jié)點對,并將所選取的實際參與非保證時隙分配的節(jié)點對所對應(yīng)的非保證時隙請求作為實際參與非保證時隙分配的非保證時隙請求。

優(yōu)選地,所述帶寬地圖生成模塊根據(jù)某一實際參與非保證時隙分配的節(jié)點對的非保證時隙請求,查找所述節(jié)點對的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài),按照波長進(jìn)行區(qū)分,將所找到的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)的狀態(tài)值進(jìn)行按位邏輯與操作,得到對應(yīng)于不同波長的狀態(tài)值,根據(jù)對應(yīng)于不同波長的狀態(tài)值,確定波長編號最小/最大的且時隙資源未全部占用的某個波長,并將比特位最低/最高的未占用時隙作為非保證時隙。

優(yōu)選地,所述帶寬地圖生成模塊具有兩個保證時隙請求隨機(jī)存儲器,分別保存兩個不同動態(tài)帶寬分配周期的保證時隙請求。

優(yōu)選地,所述帶寬地圖生成模塊具有兩個非保證時隙請求先入先出存儲器,分別保存兩個不同動態(tài)帶寬分配周期的非保證時隙請求。

優(yōu)選地,所述帶寬地圖生成模塊具有兩組用來分別保存兩個不同動態(tài)帶寬分配周期的保證和非保證時隙分配結(jié)果的保證和非保證時隙分配結(jié)果隨機(jī)存儲器,其每組具有對應(yīng)于不同波長編號的多個保證和非保證時隙分配結(jié)果隨機(jī)存儲器,從而按照動態(tài)帶寬分配周期和不同的波長,將為每個節(jié)點對分配的保證時隙和非保證時隙保存至相應(yīng)組的保證和非保證時隙分配結(jié)果隨機(jī)存儲器。

優(yōu)選地,所述帶寬地圖生成模塊具有一個用來保存源節(jié)點資源狀態(tài)表的源節(jié)點資源狀態(tài)表寄存器、用來保存目的節(jié)點資源狀態(tài)表的目的節(jié)點資源狀態(tài)表寄存器、用來保存每段鏈路每個波長的鏈路資源狀態(tài)表的鏈路資源狀態(tài)表寄存器、用 來保存路由表的路由表雙端口隨機(jī)存儲器,通過查詢源節(jié)點資源狀態(tài)表寄存器得到所述節(jié)點對的源節(jié)點資源狀態(tài)、通過查找目的節(jié)點資源狀態(tài)表寄存器得到所述節(jié)點對的目的節(jié)點資源狀態(tài)、通過查找路由表得到所述節(jié)點對經(jīng)過的每個鏈路,通過查找每段鏈路每個波長的鏈路資源狀態(tài)表寄存器得到路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)。

優(yōu)選地,為某個節(jié)點對分配固定時隙和保證時隙之后或一次分配一個非保證時隙之后,根據(jù)資源使用情況,更新并保存源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、按照波長區(qū)分的每段鏈路每個波長資源狀態(tài)的狀態(tài)值。

優(yōu)選地,每個節(jié)點對的固定時隙分配在初始化階段完成,以后一直保持不變,每個動態(tài)帶寬分配周期根據(jù)每個節(jié)點對的帶寬請求,為其分配保證帶寬時隙和非保證帶寬時隙。

優(yōu)選地,每個動態(tài)帶寬分配周期的起始階段,每個源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、按照波長區(qū)分的每段鏈路每個波長資源狀態(tài)恢復(fù)到初始化階段固定時隙分配完成之后相應(yīng)的狀態(tài)值。

與現(xiàn)有技術(shù)相比較,本發(fā)明的有益效果在于:

1、現(xiàn)有技術(shù)為每個節(jié)點對分配固定帶寬和保證帶寬時,一次源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、鏈路資源狀態(tài)和路由表查詢之后只分配一個固定時隙或一個保證時隙給相應(yīng)的節(jié)點對,如果每個節(jié)點對分配的固定時隙或保證時隙數(shù)為N,就需要進(jìn)行N次上述資源和路由查詢,而本發(fā)明提供的方法和裝置,在為任何一個節(jié)點對分配所需的固定帶寬和保證帶寬時,一次源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、鏈路資源狀態(tài)和路由表查詢之后,就將其所需的所有固定時隙或保證時隙全部一次性分配給相應(yīng)的節(jié)點對,不再需要進(jìn)行第二次資源和路由查詢,因而大大減少了資源狀態(tài)查詢的次數(shù),大大縮短了動態(tài)帶寬分配的時鐘周期,能夠快速響應(yīng)各個節(jié)點對的帶寬請求。

2、由于每次資源和路由查詢都需要消耗能量,本發(fā)明通過減少資源和路由查詢次數(shù),降低了功耗。

3、由于分別采用兩個保證時隙請求隨機(jī)存儲器、兩個非保證時隙請求先入先出存儲器和兩組保證和非保證時隙分配結(jié)果隨機(jī)存儲器,使得兩個動態(tài)帶寬分配周期能夠?qū)崿F(xiàn)流水切換,大大地縮短了動態(tài)帶寬分配周期。

附圖說明

圖1是現(xiàn)有技術(shù)提供的OBTN環(huán)網(wǎng)基本結(jié)構(gòu)的示意圖;

圖2是現(xiàn)有技術(shù)提供的OBTN環(huán)網(wǎng)中控制幀與數(shù)據(jù)幀相對時序的示意圖;

圖3是本發(fā)明實施例提供的光突發(fā)環(huán)網(wǎng)動態(tài)帶寬分配方法原理框圖;

圖4是本發(fā)明實施例提供的光突發(fā)環(huán)網(wǎng)動態(tài)帶寬分配裝置結(jié)構(gòu)框圖;

圖5是圖4中帶寬地圖生成模塊的結(jié)構(gòu)框圖;

圖6a本發(fā)明實施例提供的帶寬地圖生成模塊中路由表的初始化示意圖;

圖6b本發(fā)明實施例提供的帶寬地圖生成模塊中源節(jié)點資源狀態(tài)表的初始化示意圖;

圖6c本發(fā)明實施例提供的帶寬地圖生成模塊中目的節(jié)點資源狀態(tài)表的初始化示意圖;

圖6d本發(fā)明實施例提供的帶寬地圖生成模塊中波長0鏈路資源狀態(tài)表初始化示意圖;

圖6e本發(fā)明實施例提供的帶寬地圖生成模塊中波長1鏈路資源狀態(tài)表初始化示意圖;

圖7a本發(fā)明實施例提供的帶寬請求模塊輸入的帶寬請求報告示意圖;

圖7b本發(fā)明實施例提供的帶寬請求模塊輸出的固定時隙請求示意圖;

圖7c本發(fā)明實施例提供的帶寬請求模塊輸出的保證時隙請求示意圖;

圖7d本發(fā)明實施例提供的帶寬請求模塊輸出的非保證時隙請求示意圖;

圖8a本發(fā)明實施例提供的帶寬地圖生成模塊生成的波長0固定時隙帶寬地圖示意圖;

圖8b本發(fā)明實施例提供的帶寬地圖生成模塊生成的波長1固定時隙帶寬地圖示意圖;

圖8c本發(fā)明實施例提供的帶寬地圖生成模塊生成的波長0保證和非保證時隙帶寬地圖示意圖;

圖8d本發(fā)明實施例提供的帶寬地圖生成模塊生成的波長1保證和非保證時隙帶寬地圖示意圖;

圖9a本發(fā)明實施例提供的帶寬地圖生成模塊生成帶寬地圖之后的源節(jié)點資 源狀態(tài)表;

圖9b本發(fā)明實施例提供的帶寬地圖生成模塊生成帶寬地圖之后的目的節(jié)點資源狀態(tài)表;

圖9c本發(fā)明實施例提供的帶寬地圖生成模塊生成帶寬地圖之后的波長0鏈路資源狀態(tài)表;

圖9d本發(fā)明實施例提供的帶寬地圖生成模塊生成帶寬地圖之后的波長1鏈路資源狀態(tài)表。

具體實施方式

以下結(jié)合附圖對本發(fā)明的優(yōu)選實施例進(jìn)行詳細(xì)說明,應(yīng)當(dāng)理解,以下所說明的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。

光突發(fā)環(huán)網(wǎng)具有一個主節(jié)點和一個或一個以上的從節(jié)點,主節(jié)點根據(jù)收集到的包括自己在內(nèi)的每個節(jié)點的帶寬請求,負(fù)責(zé)動態(tài)帶寬分配。在光突發(fā)環(huán)網(wǎng)中,在系統(tǒng)初始化階段,系統(tǒng)管理員在主節(jié)點為每個節(jié)點對配置固定帶寬字節(jié)數(shù)和每個時隙的負(fù)載長度,系統(tǒng)將以字節(jié)為單位的帶寬請求,轉(zhuǎn)換為以時隙為單位的帶寬請求,并為每個節(jié)點對分配相應(yīng)的時隙。

圖3是本發(fā)明實施例提供的光突發(fā)環(huán)網(wǎng)動態(tài)帶寬分配方法原理框圖,如圖3所示,步驟包括:

步驟S101:在光突發(fā)環(huán)網(wǎng)中,根據(jù)外界輸入的關(guān)于每個節(jié)點對的帶寬請求,生成每個節(jié)點對的以字節(jié)為單位的固定帶寬請求、保證帶寬請求和非保證帶寬請求,并將所述每個節(jié)點對的以字節(jié)為單位的固定帶寬請求、保證帶寬請求和非保證帶寬請求分別轉(zhuǎn)換成以時隙為單位的固定時隙請求、保證時隙請求和非保證時隙請求。

步驟S102:通過對每個節(jié)點對的非保證時隙請求進(jìn)行調(diào)度,確定實際參與非保證時隙分配的非保證時隙請求。

具體地說,若節(jié)點對有非保證時隙請求,則根據(jù)每個節(jié)點對的優(yōu)先級或權(quán)重,選取實際參與非保證時隙分配的節(jié)點對,并將所選取的實際參與非保證時隙分配的節(jié)點對所對應(yīng)的非保證時隙請求作為實際參與非保證時隙分配的非保證時隙請求。

步驟S103:根據(jù)固定時隙請求、保證時隙請求和實際參與非保證時隙分配的非保證時隙請求,為每個節(jié)點對分配固定時隙、保證時隙和非保證時隙,并根據(jù)分配給每個節(jié)點對的固定時隙、保證時隙和非保證時隙,生成帶寬地圖。

本發(fā)明是關(guān)于子波長全光交換網(wǎng)絡(luò),光突發(fā)傳送網(wǎng)的動態(tài)帶寬分配技術(shù),三類資源使用狀態(tài)的查詢是帶寬動態(tài)分配算法的關(guān)鍵,具體包括對源節(jié)點資源狀態(tài)表、目的節(jié)點資源狀態(tài)表、鏈路資源狀態(tài)表、路由表的查詢。

運(yùn)行商為用戶提供的帶寬通常區(qū)分成三類,一類是固定帶寬,一類是保證帶寬,一類是非保證帶寬。固定帶寬和保證帶寬具有高優(yōu)先級,由于采用規(guī)劃和接入控制機(jī)制,能確保固定帶寬和保證帶寬完全分配;非保證帶寬為共享帶寬,優(yōu)先級較低,在分配階段各節(jié)點對存在資源沖突的情況下,需要考慮分配的公平性問題。一般情況下,固定帶寬在系統(tǒng)初始化階段就完成分配,之后一直保持不變,保證帶寬和非保證帶寬都需要根據(jù)網(wǎng)絡(luò)運(yùn)行情況進(jìn)行實時分配,消耗的時間比較多。

具體地說,在初始化階段,為每個節(jié)點對分配并記錄固定時隙,具體步驟包括:對于某一節(jié)點對的固定時隙分配請求,查找所述節(jié)點對的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài);按照波長進(jìn)行區(qū)分,將所找到的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)的狀態(tài)值進(jìn)行按位邏輯與操作,得到對應(yīng)于不同波長的狀態(tài)值;根據(jù)對應(yīng)于不同波長的狀態(tài)值,確定波長編號最小/最大的且時隙資源未全部占用的某個波長,并計算其未占用時隙的比特位和未占用時隙數(shù)量;比較所述未占用時隙數(shù)量與所述節(jié)點對的待分配固定時隙數(shù)量a;若所述未占用時隙數(shù)量大于或等于所述節(jié)點對的待分配固定時隙數(shù)量a,則按照未占用時隙的比特位由低至高/由高至低的順序,確定參與固定時隙分配的a個未占用時隙;否則,按照波長編號由小至大/由大至小的順序,依次取出后續(xù)時隙資源未全部占用的波長,直至未占用時隙數(shù)量的累加結(jié)果大于或等于a,然后再確定參與固定時隙分配的a個未占用時隙。其中,按照波長進(jìn)行區(qū)分,將所確定的a個未占用時隙作為已分配的固定時隙保存至相應(yīng)波長編號的固定時隙分配結(jié)果隨機(jī)存儲器中。

具體地說,為每個節(jié)點對分配保證時隙的步驟包括:根據(jù)某一節(jié)點對的保證時隙請求,查找所述節(jié)點對的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的 每段鏈路每個波長的鏈路資源狀態(tài);按照波長進(jìn)行區(qū)分,將所找到的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)的狀態(tài)值進(jìn)行按位邏輯與操作,得到對應(yīng)于不同波長的狀態(tài)值;根據(jù)對應(yīng)于不同波長的狀態(tài)值,確定波長編號最小/最大的且時隙資源未全部占用的某個波長,并計算其未占用時隙的比特位和未占用時隙數(shù)量;比較所述未占用時隙數(shù)量與所述節(jié)點對的待分配保證時隙數(shù)量b;若所述未占用時隙數(shù)量大于或等于待分配給所述節(jié)點對的待分配保證時隙數(shù)量b,則按照未占用時隙的比特位由低至高/由高至低的順序,確定參與保證時隙分配的b個未占用時隙;否則,按照波長編號由小至大/由大至小的順序,依次取出后續(xù)時隙資源未全部占用的波長,直至未占用時隙數(shù)量的累加結(jié)果大于或等于b,然后再確定參與保證時隙分配的b個未占用時隙,將其作為保證時隙分配給該節(jié)點對。其中,設(shè)置兩個保證時隙請求隨機(jī)存儲器,分別保存兩個不同動態(tài)帶寬分配周期的保證時隙請求,設(shè)置兩個保證時隙請求隨機(jī)存儲器,是為了從上一次動態(tài)帶寬分配切換到下一次動態(tài)帶寬分配的時候,能形成流水操作,縮短每次動態(tài)帶寬分配所需的時間。此外,為了節(jié)約資源,在初始化階段,每個節(jié)點對的固定帶寬時隙分配請求也保存在一個保證時隙請求隨機(jī)存儲器中。

具體地說,為每個節(jié)點對分配非保證時隙的步驟包括:根據(jù)某一實際參與非保證時隙分配的節(jié)點對的非保證時隙請求,查找所述節(jié)點對的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài);按照波長進(jìn)行區(qū)分,將所找到的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)的狀態(tài)值進(jìn)行按位邏輯與操作,得到對應(yīng)于不同波長的狀態(tài)值;根據(jù)對應(yīng)于不同波長的狀態(tài)值,確定波長編號最小/最大的且時隙資源未全部占用的某個波長,并將比特位最低/最高的未占用時隙作為非保證時隙,將其分配給該節(jié)點對,如果根據(jù)所有的波長狀態(tài)值都找不到未占用時隙,則該節(jié)點此次非保證時隙分配沒有成功。其中,設(shè)置兩個非保證時隙請求先入先出存儲器,分別保存兩個不同動態(tài)帶寬分配周期的非保證時隙請求。

具體地說,設(shè)置兩組用來分別保存兩個不同動態(tài)帶寬分配周期的保證和非保證時隙分配結(jié)果的保證和非保證時隙分配結(jié)果隨機(jī)存儲器,其每組具有對應(yīng)于不同波長編號的多個保證和非保證時隙分配結(jié)果隨機(jī)存儲器,(即每組中具有多個 保證和非保證時隙分配結(jié)果隨機(jī)存儲器,其每個保證和非保證時隙分配結(jié)果隨機(jī)存儲器與一個波長編號相對應(yīng))從而按照動態(tài)帶寬分配周期和不同的波長,將為每個節(jié)點對分配的作為保證時隙的b個時隙和非保證時隙保存至相應(yīng)組的保證和非保證時隙分配結(jié)果隨機(jī)存儲器。

具體地說,設(shè)置一個用來保存源節(jié)點資源狀態(tài)表的源節(jié)點資源狀態(tài)表寄存器、用來保存目的節(jié)點資源狀態(tài)表的目的節(jié)點資源狀態(tài)表寄存器、按照波長進(jìn)行區(qū)分的用來保存每段鏈路每個波長的鏈路資源狀態(tài)表的鏈路資源狀態(tài)表寄存器、用來保存路由表的路由表雙端口隨機(jī)存儲器,通過查詢源節(jié)點資源狀態(tài)表寄存器得到所述節(jié)點對的源節(jié)點資源狀態(tài)、通過查找目的節(jié)點資源狀態(tài)表寄存器得到所述節(jié)點對的目的節(jié)點資源狀態(tài)、通過查找路由表得到所述節(jié)點對經(jīng)過的每個鏈路,通過查找每段鏈路每個波長對應(yīng)的鏈路資源狀態(tài)表寄存器得到路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)。

圖4是本發(fā)明實施例提供的光突發(fā)環(huán)網(wǎng)動態(tài)帶寬分配裝置結(jié)構(gòu)框圖,如圖4所示,包括帶寬請求生成模塊10、非保證帶寬調(diào)度模塊20、帶寬地圖生成模塊30,以及CPU接口模塊40。

帶寬請求生成模塊10用于在光突發(fā)環(huán)網(wǎng)中,根據(jù)外界輸入的關(guān)于每個節(jié)點對的帶寬請求,生成每個節(jié)點對的以字節(jié)為單位的固定帶寬請求、保證帶寬請求、和非保證帶寬請求,將所生成的每個節(jié)點對的以字節(jié)為單位的固定帶寬請求、保證帶寬請求、和非保證帶寬請求分別轉(zhuǎn)換成以時隙為單位的固定時隙請求、保證時隙請求和非保證時隙請求,并將所述固定時隙請求和保證時隙請求發(fā)送至帶寬地圖生成模塊,將所述非保證時隙請求發(fā)送至非保證帶寬調(diào)度模塊。

非保證帶寬調(diào)度模塊20用于通過對每個節(jié)點對的非保證時隙請求進(jìn)行調(diào)度,確定實際參與非保證時隙分配的非保證時隙請求。具體地說,非保證帶寬調(diào)度模塊20在節(jié)點對有非時隙分配請求時,根據(jù)每個節(jié)點對的優(yōu)先級或權(quán)重,選取實際參與非保證時隙分配的節(jié)點對,并將所選取的實際參與非保證時隙分配的節(jié)點對所對應(yīng)的非保證時隙請求作為實際參與非保證時隙分配的非保證時隙請求。

帶寬地圖生成模塊30用于根據(jù)固定時隙請求、保證時隙請求和實際參與非保證時隙分配的非保證時隙請求,為每個節(jié)點對分配固定時隙、保證時隙和非保 證時隙,并根據(jù)分配給每個節(jié)點對的固定時隙、保證時隙和非保證時隙生成帶寬地圖。具體地說,在初始化階段,對于某一節(jié)點對,根據(jù)固定時隙請求,帶寬地圖生成模塊30查找所述節(jié)點對的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài),并按照波長進(jìn)行區(qū)分,將所找到的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)的狀態(tài)值進(jìn)行按位邏輯與操作,得到對應(yīng)于不同波長的狀態(tài)值;根據(jù)對應(yīng)于不同波長的狀態(tài)值,確定波長編號最小/最大的且時隙資源未全部占用的某個波長,并計算其未占用時隙的比特位和未占用時隙數(shù)量,比較所述未占用時隙數(shù)量與所述節(jié)點對的待分配固定時隙數(shù)量a,若所述未占用時隙數(shù)量大于或等于所述節(jié)點對的待分配固定時隙數(shù)量a,則按照未占用時隙的比特位由低至高/由高至低的順序,確定參與固定時隙分配的a個未占用時隙,否則,按照波長編號由小至大/由大至小的順序,依次取出后續(xù)時隙資源未全部占用的波長,直至未占用時隙數(shù)量的累加結(jié)果大于或等于a,然后再確定參與固定時隙分配的a個未占用時隙,將其作為固定時隙分配給該節(jié)點對。在初始化階段結(jié)束之后,啟動系統(tǒng)正常運(yùn)行,每個節(jié)點將自己的帶寬請求發(fā)送至主節(jié)點,主節(jié)點利用帶寬請求生成模塊10生存保證時隙請求,主節(jié)點利用帶寬請求生成模塊10和非保證帶寬調(diào)度模塊20生成實際參與非保證時隙分配的請求。帶寬地圖生成模塊30根據(jù)某一節(jié)點對的保證時隙請求,查找所述節(jié)點對的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài),按照波長進(jìn)行區(qū)分,將所找到的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)的狀態(tài)值進(jìn)行按位邏輯與操作,得到對應(yīng)于不同波長的狀態(tài)值,根據(jù)對應(yīng)于不同波長的狀態(tài)值,確定波長編號最小/最大的且時隙資源未全部占用的某個波長,并計算其未占用時隙的比特位和未占用時隙數(shù)量,比較所述未占用時隙數(shù)量與所述節(jié)點對的待分配保證時隙數(shù)量b,若所述未占用時隙數(shù)量大于或等于待分配給所述節(jié)點對的待分配保證時隙數(shù)量b,則按照未占用時隙的比特位由低至高/由高至低的順序,確定參與保證時隙分配的b個未占用時隙,否則,按照波長編號由小至大/由大至小的順序,依次取出后續(xù)時隙資源未全部占用的波長,直至未占用時隙數(shù)量的累加結(jié)果大于或等于b,然后再確定參與保證時隙分配的b個未占用時隙。帶寬地圖生成模塊30根據(jù)某一實際參與非保證時隙分配的節(jié)點對的非 保證時隙請求,查找所述節(jié)點對的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài),按照波長進(jìn)行區(qū)分,將所找到的源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、路由經(jīng)過的每段鏈路每個波長的鏈路資源狀態(tài)的狀態(tài)值進(jìn)行按位邏輯與操作,得到對應(yīng)于不同波長的狀態(tài)值,根據(jù)對應(yīng)于不同波長的狀態(tài)值,確定波長編號最小/最大的且時隙資源未全部占用的某個波長,并將比特位最低/最高的未占用時隙作為非保證時隙,如果根據(jù)所有的波長狀態(tài)值都找不到未占用時隙,則該節(jié)點此次非保證時隙分配沒有成功。進(jìn)一步地,帶寬地圖生成模塊30具有多個分別對應(yīng)于不同波長編號的固定時隙分配結(jié)果隨機(jī)存儲器(即對應(yīng)于每個波長編號,具有一個固定時隙分配結(jié)果隨機(jī)存儲器),所述帶寬地圖生成模塊按照波長進(jìn)行區(qū)分,將所確定的a個未占用時隙作為固定時隙保存至相應(yīng)波長編號的固定時隙分配結(jié)果隨機(jī)存儲器中。帶寬地圖生成模塊30還具有兩個保證時隙請求隨機(jī)存儲器,分別保存兩個不同動態(tài)帶寬分配周期的保證時隙請求。帶寬地圖生成模塊30還具有兩個非保證時隙請求先入先出存儲器,分別保存兩個不同動態(tài)帶寬分配周期的非保證時隙請求。帶寬地圖生成模塊30還具有兩組用來分別保存兩個不同動態(tài)帶寬分配周期的保證和非保證時隙分配結(jié)果的保證和非保證時隙分配結(jié)果隨機(jī)存儲器,其每組具有對應(yīng)于不同波長編號的多個保證和非保證時隙分配結(jié)果隨機(jī)存儲器(即對應(yīng)于每個波長編號,具有一個保證和非保證時隙分配結(jié)果隨機(jī)存儲器),從而按照動態(tài)帶寬分配周期和不同的波長,將為每個節(jié)點對分配的作為保證時隙的b個時隙和非保證時隙保存至相應(yīng)組的保證和非保證時隙分配結(jié)果隨機(jī)存儲器。帶寬地圖生成模塊30還具有一個用來保存源節(jié)點資源狀態(tài)表的源節(jié)點資源狀態(tài)表寄存器、用來保存目的節(jié)點資源狀態(tài)表的目的節(jié)點資源狀態(tài)表寄存器、用來保存每段鏈路每個波長的鏈路資源狀態(tài)表的鏈路資源狀態(tài)表寄存器、用來保存路由表的路由表雙端口隨機(jī)存儲器,通過查詢源節(jié)點資源狀態(tài)表寄存器得到所述節(jié)點對的源節(jié)點資源狀態(tài)、通過查找目的節(jié)點資源狀態(tài)表寄存器得到所述節(jié)點對的目的節(jié)點資源狀態(tài)、通過查找路由表得到所述節(jié)點對經(jīng)過的每個鏈路,通過查找每段鏈路每個波長對應(yīng)的鏈路資源狀態(tài)表寄存器得到路由經(jīng)過的每段鏈路每個波長資源狀態(tài)。

為某個節(jié)點對分配固定時隙和保證時隙之后或一次分配一個非保證時隙之后,根據(jù)資源使用情況,更新并保存源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、按照 波長區(qū)分的每段鏈路每個波長資源狀態(tài)的狀態(tài)值。也就是說,每為一個節(jié)點對完成一次時隙分配,不管分配的是固定時隙、保證時隙還是非保證時隙,都要更新源節(jié)點資源狀態(tài)表寄存器、目的節(jié)點資源狀態(tài)表寄存器和每段鏈路每個波長鏈路資源狀態(tài)表寄存器,以反應(yīng)每個資源的使用狀態(tài)。

每個動態(tài)帶寬分配周期的起始階段,每個源節(jié)點資源狀態(tài)、目的節(jié)點資源狀態(tài)、按照波長區(qū)分的每段鏈路每個波長資源狀態(tài)恢復(fù)到初始化階段固定時隙分配完成之后相應(yīng)的狀態(tài)值。也就是說,每次動態(tài)帶寬分配周期開始階段,源節(jié)點資源狀態(tài)表寄存器、目的節(jié)點資源狀態(tài)表寄存器和每段鏈路每個波長鏈路資源狀態(tài)表寄存器,他們的狀態(tài)值都要恢復(fù)到初始化階段固定時隙分配完成之后的狀態(tài)值。

所述光突發(fā)環(huán)網(wǎng)動態(tài)帶寬分配裝置結(jié)構(gòu)簡單,不論一個光突發(fā)環(huán)形網(wǎng)絡(luò)支持多少個時隙,只需要8個時鐘周期主節(jié)點就能完成一個節(jié)點對的固定帶寬或保證帶寬分配,只需要5個時鐘周期能為一個節(jié)點對分配一個非保證時隙,大大地減少了保證帶寬和非保證帶寬分配所消耗的時間,減少了每個動態(tài)帶寬分配周期消耗的狀態(tài)查詢時間,確保光突發(fā)環(huán)形網(wǎng)絡(luò)帶寬實時分配。

本發(fā)明的帶寬分配實際上是根據(jù)每個(S,D)節(jié)點對實時請求的帶寬,為它們分配需要的時隙,其中S為數(shù)據(jù)出發(fā)的源節(jié)點,D為數(shù)據(jù)需要到達(dá)的目的節(jié)點。對于節(jié)點對(S,D),帶寬請求生成模塊10將外界輸入的(S,D)節(jié)點對帶寬請求分為三類:固定帶寬請求、保證帶寬請求和非保證帶寬請求。以字節(jié)為單位的固定帶寬請求和保證帶寬請求又被換算成以時隙為單位的固定時隙請求和保證時隙請求,一個時隙可以傳輸若干個字節(jié),每個時隙以字節(jié)為單位的負(fù)載長度通過CPU接口模塊40配置,固定時隙請求和保證時隙請求發(fā)送給帶寬地圖生成模塊30。以字節(jié)為單位的非保證帶寬請求被換算成以時隙為單位的非保證時隙請求,非保證時隙請求必須發(fā)送給非保證帶寬調(diào)度模塊20。非保證帶寬調(diào)度模塊20在確保公平性的情況下,將非保證時隙帶寬請求轉(zhuǎn)化為實際參與非保證時隙分配的非保證時隙請求,并發(fā)送到帶寬地圖生成模塊30。帶寬地圖生成模塊30根據(jù)接收的每個(S,D)節(jié)點對的固定時隙請求、保證時隙請求和非保證時隙請求,對光突發(fā)環(huán)形網(wǎng)絡(luò)的時隙資源進(jìn)行查詢和選擇,分配實際的時隙,生成帶寬地圖,并根據(jù)主節(jié)點的要求將生成的帶寬地圖輸出給主節(jié)點使用。

圖5是圖4中帶寬地圖生成模塊30的結(jié)構(gòu)框圖,帶寬地圖生成模塊30具體包括:源節(jié)點資源狀態(tài)表、目的節(jié)點資源狀態(tài)表、路由表、鏈路資源狀態(tài)表、保證時隙請求隨機(jī)存儲器0、保證時隙請求隨機(jī)存儲器1、非保證時隙請求先進(jìn)先出FIFO存儲器0、非保證時隙請求先進(jìn)先出FIFO存儲器1、固定時隙分配結(jié)果隨機(jī)存儲器組、保證和非保證時隙分配結(jié)果隨機(jī)存儲器組以及時隙分配與運(yùn)行控制模塊組成。

進(jìn)一步說,源節(jié)點資源狀態(tài)表和目的節(jié)點資源狀態(tài)表都采用寄存器實現(xiàn),每個源節(jié)點資源狀態(tài)Src_State采用一個寄存器(即源節(jié)點資源狀態(tài)表寄存器)保存,每個目的節(jié)點資源狀態(tài)Dst_State也采用一個寄存器(即目的節(jié)點資源狀態(tài)表寄存器)保存,寄存器的位寬為W,W為正整數(shù),表示每次帶寬分配的最大時隙數(shù)。

進(jìn)一步說,在主節(jié)點,節(jié)點與節(jié)點之間的鏈路資源狀態(tài)表采用寄存器(即鏈路資源狀態(tài)表寄存器)保存,數(shù)據(jù)通道每個波長的每一段鏈路資源狀態(tài)Wave_n_Link_State采用一個位寬為W的寄存器保存,n為相應(yīng)的波長編號,對于有N個波長的光突發(fā)環(huán)形網(wǎng)絡(luò)來說,其值為[0,N-1]之間的整數(shù),下文n的定義也一樣。

進(jìn)一步說,路由表采用一個雙端口隨機(jī)存儲器(即路由表雙端口隨機(jī)存儲器)保存,每個存儲單元表示從某一個源節(jié)點到某一個目的節(jié)點需要經(jīng)過的鏈路集,對于一個節(jié)點數(shù)為M的光突發(fā)環(huán)形網(wǎng)絡(luò),路由表的存儲單元數(shù)為M2,存儲單元的位寬為M。存儲單元的每一位對應(yīng)數(shù)據(jù)從源節(jié)點到目的節(jié)點需要經(jīng)過的一段鏈路,數(shù)據(jù)從源節(jié)點到目的節(jié)點經(jīng)過相應(yīng)鏈路時置1,不經(jīng)過時置0。任意一個(S,D)節(jié)點對在路由表中的存儲地址由源節(jié)點S編號和目的節(jié)點D編號組合而成,路由表存儲地址高位為源節(jié)點S的二進(jìn)行編號,地址低位為目的節(jié)點D的二進(jìn)制編號。

圖6a本發(fā)明實施例提供的帶寬地圖生成模塊中路由表的初始化示意圖,如圖6a所示,由4個節(jié)點A0、A1、A2和A3組成的光突發(fā)環(huán)形光網(wǎng)絡(luò)的路由表,任意一個(S,D)節(jié)點對路由的存儲地址ADDR[3:0]由源節(jié)點S的節(jié)點編號和目的節(jié)點D的節(jié)點編號組合而成,其中ADDR[3:2]等于源節(jié)點S的編號,ADDR[1:0]是目的節(jié)點D的編號,其中(A0,A0)的路由存儲地址為0,(A0,A1)的路由存儲地址為1;路由表每個存儲單元中的bit0表示(A0,A1)路徑,bit1表示(A1,A2) 路徑,bit2表示(A2,A3)路徑,bit3表示(A3,A0)路徑。

保證時隙請求利用兩個雙端口存儲器保存,雙端口存儲器,一個端口供寫入數(shù)據(jù),一個端口供讀出數(shù)據(jù)。這兩個存儲器分別稱為保證時隙請求隨機(jī)存儲器0和保證時隙請求隨機(jī)存儲器1,它們的存儲器地址線根數(shù)以及地址數(shù)據(jù)結(jié)構(gòu)和路由表完全一樣。之所以采用兩個保證時隙請求隨機(jī)存儲器,是為了確保時隙分配一個DBA周期接著一個DBA周期流水進(jìn)行:一個保存了所有節(jié)點對保證時隙帶寬請求的存儲器在供時隙分配與運(yùn)行控制模塊在當(dāng)前DBA周期使用時,另一個沒有保存任何節(jié)點對保證時隙帶寬請求,或保存的所有節(jié)點對的保證時隙帶寬請求已經(jīng)被時隙分配與運(yùn)行控制模塊在上一個DBA周期遍歷,并且分配了相應(yīng)的時隙,當(dāng)下一個DBA時隙分配周期各個節(jié)點對的保證時隙請求數(shù)據(jù)到來時,就用后者來保存。

非保證時隙請求采用二個先入先出FIFO存儲器保存,它們分別為非保證時隙請求FIFO存儲器0和非保證時隙請求FIFO存儲器1,F(xiàn)IFO存儲器保存的是每個(S,D)節(jié)點對的二進(jìn)制編碼,每個存儲單元高位為源節(jié)點S的二進(jìn)行編號,低位為目的節(jié)點D的二進(jìn)制編號。之所以采用兩個非保證時隙請求FIFO存儲器,是為了確保時隙分配一個DBA周期接著一個DBA周期流水進(jìn)行,一個供時隙分配與運(yùn)行控制模塊進(jìn)行當(dāng)前DBA周期非保證時隙分配使用的時候,另一空閑的非保證時隙請求FIFO存儲器可以用來保存下一個DBA周期時隙分配所需的非保證時隙請求數(shù)據(jù)。帶寬地圖生成模塊在寫入一次DBA周期非保證時隙請求數(shù)據(jù)之前,先將準(zhǔn)備用來保存數(shù)據(jù)的FIFO清空,然后才寫入當(dāng)前DBA周期所有節(jié)點對的非保證時隙請求數(shù)據(jù)。

固定時隙分配結(jié)果采用一組雙端口隨機(jī)存儲器(即固定時隙分配結(jié)果隨機(jī)存儲器0,1,…,N-1)保存,存儲器的位寬為W,存儲器地址線根數(shù)以及地址數(shù)據(jù)結(jié)構(gòu)和路由表完全一樣。數(shù)據(jù)通道有N個波長的光突發(fā)環(huán)形網(wǎng),需要N個此類存儲器來保存固定帶寬分配結(jié)果,一個波長對應(yīng)一個,波長0對應(yīng)固定時隙分配結(jié)果隨機(jī)存儲器0,波長n對應(yīng)固定時隙分配結(jié)果隨機(jī)存儲器n。

保證時隙和非保證時隙分配結(jié)果采用雙端口隨機(jī)存儲器保存,該類存儲器的位寬為W,存儲器地址線根數(shù)以及地址數(shù)據(jù)結(jié)構(gòu)和路由表完全一樣。數(shù)據(jù)通道有N個波長的光突發(fā)環(huán)形網(wǎng),需要N組雙端口隨機(jī)存儲器來保存保證時隙和非保證 時隙分配結(jié)果,一個波長對應(yīng)一組雙端口存儲器。每組利用兩個存儲器來保存,它們分別為保證和非保證時隙分配結(jié)果隨機(jī)存儲器n0和保證和非保證時隙分配結(jié)果隨機(jī)存儲器n1。之所以每組采用兩個保證和非保證時隙分配結(jié)果隨機(jī)存儲器,是為了確保時隙分配一個DBA周期接著一個DBA周期流水進(jìn)行:一個保存了所有節(jié)點對保證和非保證時隙分配結(jié)果的隨機(jī)存儲器供主節(jié)點在當(dāng)前DBA帶寬分配周期中讀取帶寬地圖,另一個沒有保存保證和非保證時隙分配結(jié)果或雖然保存有保證和非保證時隙分配結(jié)果,但該分配結(jié)果已經(jīng)被主節(jié)點在前一個DBA周期中完全讀取,后者用來保存下一個DBA時隙分配周期保證和非保證時隙分配結(jié)果。換句話說,數(shù)據(jù)通道有N個波長的光突發(fā)環(huán)形網(wǎng)需要兩組用來分別保存兩個不同動態(tài)帶寬分配周期的保證和非保證時隙分配結(jié)果的雙端口隨機(jī)存儲器來保存保證時隙和非保證時隙分配結(jié)果,每組雙端口隨機(jī)存儲器具有對應(yīng)于不同N個波長的N個雙端口隨機(jī)存儲器。

結(jié)合圖4和圖5,動態(tài)帶寬分配過程如下:

系統(tǒng)啟動的時候,首先對所有的寄存器進(jìn)行復(fù)位,然后通過CPU接口模塊40對裝置的各組成模塊進(jìn)行初始化工作。

在初始化階段,首先通過CPU接口模塊40對帶寬請求生成模塊10進(jìn)行配置,為每個(S,D)節(jié)點對配置以字節(jié)為單位的固定帶寬,配置每個時隙以字節(jié)為單位的負(fù)載長度。此時,帶寬請求生成10模塊輸出給主節(jié)點的固定帶寬分配完成信號無效,主節(jié)點因而不會給光突發(fā)環(huán)網(wǎng)動態(tài)帶寬分配裝置輸入帶寬請求。

在初始化階段,通過CPU接口模塊40為非保證帶寬調(diào)度模塊20配置必要的參數(shù),例如優(yōu)先級、權(quán)重等,使得非保證帶寬調(diào)度模塊20能夠在初始化完成后按照要求進(jìn)行非保證帶寬調(diào)度工作。

本實施例以4節(jié)點光突發(fā)環(huán)形網(wǎng)絡(luò)為例。

在初始化階段,對帶寬地圖生成模塊30也需要進(jìn)行初始化,將每個源節(jié)點資源狀態(tài)寄存器和目的節(jié)點資源狀態(tài)寄存器的每一位都置為1,表示相應(yīng)的時隙都空閑,如圖圖6b所示的本發(fā)明實施例提供的帶寬地圖生成模塊30中源節(jié)點資源狀態(tài)表的初始化示意圖和圖6c所示的本發(fā)明實施例提供的帶寬地圖生成模塊30中目的節(jié)點資源狀態(tài)表的初始化示意圖;將每個波長的每段鏈路對應(yīng)的鏈路資源狀態(tài)寄存器的每一位都置1,表示相應(yīng)鏈路相關(guān)時隙也空閑,如圖6d所示 的本發(fā)明實施例提供的帶寬地圖生成模塊30中波長0鏈路資源狀態(tài)表初始化示意圖和圖6e所示的本發(fā)明實施例提供的帶寬地圖生成模塊30中波長1鏈路資源狀態(tài)表初始化示意圖。此外,對路由表進(jìn)行初始化,路由表每個存儲單元對應(yīng)一個(S,D)節(jié)點對的路由,存儲單元的每一位對應(yīng)數(shù)據(jù)從源節(jié)點S到目的節(jié)點D需要經(jīng)過的每一段鏈路,經(jīng)過的鏈路置1,不經(jīng)過的鏈路置0,如圖6a所示的本發(fā)明實施例提供的帶寬地圖生成模塊30中路由表的初始化示意圖。

在初始化配置完成之后,CPU接口模塊40向帶寬請求生成模塊10發(fā)出指示,啟動固定帶寬時隙分配工作。帶寬請求生成模塊10將CPU配置的以字節(jié)為單位的固定帶寬換算為以時隙為單位的固定時隙請求數(shù)據(jù),如圖7b所示的本發(fā)明實施例提供的帶寬請求模塊輸出的固定時隙請求示意圖(其中的數(shù)字以16進(jìn)制表示),并將該請求數(shù)據(jù)發(fā)送給帶寬地圖生成模塊30,帶寬地圖生成模塊30將該數(shù)據(jù)保存在保證時隙請求隨機(jī)存儲器0,一個(S,D)節(jié)點對占用一個存儲單元。帶寬地圖生成模塊30接收完所有(S,D)節(jié)點對的固定時隙請求之后,啟動固定時隙的分配工作。固定時隙分配的結(jié)果,也就是固定帶寬地圖以波長分組,分別保存在固定時隙分配結(jié)果隨機(jī)存儲器0至固定帶寬時隙分配結(jié)果隨機(jī)存儲器N-1中。

固定帶寬時隙分配完成之后,系統(tǒng)的初始化就完成了。此時,帶寬地圖生成模塊30告知帶寬請求生成模塊10,帶寬請求生成模塊10將固定帶寬分配完成指示信號置為有效。主節(jié)點將各個(S,D)節(jié)點對以字節(jié)為單位的帶寬請求報告發(fā)送到帶寬請求生成模塊10,帶寬請求報告如圖7a所示(其中的數(shù)字以10進(jìn)制表示)。帶寬請求生成模塊10根據(jù)每個節(jié)點對的帶寬請求生成保證時隙請求和非保證時隙請求,保證時隙請求如圖7c所示(其中的數(shù)字以16進(jìn)制表示),非保證時隙請求如圖7d所示(其中的數(shù)字以16進(jìn)制表示)。保證時隙請求直接發(fā)送到帶寬地圖生成模塊30的保證時隙請求隨機(jī)存儲器0,非保證時隙請求發(fā)送到非保證帶寬調(diào)度模塊20,非保證帶寬請求模塊10根據(jù)初始化配置的參數(shù),按照公平性原則,對所有(S,D)節(jié)點對非保證時隙請求進(jìn)行調(diào)度,選取參加非保證時隙分配的節(jié)點對,每次給予某個選中的節(jié)點對一個非保證時隙請求機(jī)會,由于每個機(jī)會只代表某個(S,D)節(jié)點對的一個非保證時隙請求,所以FIFO存儲器保存的是該節(jié)點對的二進(jìn)制編號組合成的二進(jìn)制數(shù)據(jù){S,D},非保證帶寬調(diào)度 模塊20先將非保證時隙請求FIFO存儲器0清空,然后將每個調(diào)度得到的二進(jìn)制數(shù)據(jù){S,D}發(fā)送到帶寬地圖生成模塊30的非保證時隙請求FIFO存儲器0中。

當(dāng)光突發(fā)環(huán)形網(wǎng)絡(luò)的所有(S,D)節(jié)點對的保證時隙請求保存到帶寬地圖生成模塊30之后,帶寬請求生成模塊10向帶寬地圖生成模塊30發(fā)出帶寬地圖生成啟動信號,帶寬地圖生成模塊30的時隙分配與運(yùn)行控制模塊收到帶寬地圖生成啟動信號之后,啟動保證時隙分配。為了縮短運(yùn)行時間,保證時隙采用批量分配的方法,一次調(diào)度就按照需求將某個節(jié)點對請求的保證時隙分配給該節(jié)點對,并將分配的結(jié)果按照波長保存在保證和非保證時隙分配結(jié)果隨機(jī)存儲器n0中,其中,n代表所分配到的時隙占用的波長編號,所有節(jié)點對的保證時隙分配完畢之后,時隙分配與運(yùn)行控制模塊讀取非保證時隙請求FIFO存儲器,一次從該FIFO存儲器中讀取一個節(jié)點對的一個非保證時隙請求,然后時隙分配與運(yùn)行控制模塊進(jìn)行資源狀態(tài)查詢,如果找到合適的時隙就給該節(jié)點對分配一個時隙,并將相應(yīng)的時隙按照波長保存在保證和非保證時隙分配結(jié)果存儲器n0中,如果找不到合適的時隙給請求的節(jié)點對,分配就失敗。不管某個節(jié)點對的非保證時隙分配成功還是失敗,如果非保證時隙請求FIFO不為空,時隙分配與運(yùn)行控制模塊會繼續(xù)讀取該FIFO,為別的節(jié)點對分配非保證時隙。時隙分配與運(yùn)行控制模塊按照上述方式繼續(xù)非保證時隙的分配,只有兩種情況才完成或停止非保證時隙的分配,一種情況是是FIFO為空,該種情況是所有的非保證時隙已經(jīng)分配完畢了;一種情況是保證時隙請求隨機(jī)存儲器1已經(jīng)接收到所有(S,D)節(jié)點對下一個DBA周期帶寬分配的保證時隙請求數(shù)據(jù),這種情況說明下一個DBA分配的時間到了,當(dāng)前DBA周期被強(qiáng)行結(jié)束。一次帶寬分配結(jié)果實例如圖8a至圖8d所示(其中的數(shù)字以16進(jìn)制表示),一次DBA帶寬分配之后各狀態(tài)寄存器值如圖9a至圖9d所示。非保證時隙分配完畢之后,時隙分配與運(yùn)行控制模塊發(fā)出帶寬地圖準(zhǔn)備好信號,主節(jié)點接收到該信號之后,讀取固定時隙分配結(jié)果存儲器0至固定時隙分配結(jié)果存儲器N-1的數(shù)據(jù),取走固定帶寬分配結(jié)果,讀取保證時隙和非保證時隙分配結(jié)果存儲器00至保證時隙和非保證時隙分配結(jié)果存儲器(N-1)0的數(shù)據(jù),取走保證時隙和非保證時隙分配結(jié)果。

下一個DBA周期的帶寬分配在保證時隙請求隨機(jī)存儲器1已經(jīng)接收到所有(S,D)節(jié)點對下一個DBA周期帶寬分配的保證時隙請求數(shù)據(jù)之后啟動,時隙分 配與運(yùn)行控制模塊先讀取保證時隙請求隨機(jī)存儲器1啟動保證時隙的分配,并將分配的結(jié)果按照波長區(qū)分保存在保證時隙和非保證時隙分配結(jié)果存儲器n1中(n為波長編號)。在保證時隙分配完畢之后,讀取非保證時隙請求FIFO存儲器1,啟動非保證時隙分配,同樣也將分配的結(jié)果按照波長區(qū)分保存在保證時隙和非保證時隙分配結(jié)果存儲器n1中(n為波長編號)。時隙分配與運(yùn)行控制模塊只有兩種情況下才會停止非保證時隙分配,一種是FIFO為空,一種是保證時隙請求隨機(jī)存儲器0已經(jīng)接收到所有(S,D)節(jié)點對下一個DBA周期帶寬分配的保證時隙請求數(shù)據(jù)。按照上述規(guī)則,本裝置為光突發(fā)環(huán)形網(wǎng)絡(luò)循環(huán)進(jìn)行帶寬分配工作。

每個(S,D)節(jié)點對的分配時隙分成三類:固定帶寬、保證帶寬和非保證帶寬。固定帶寬和保證帶寬采用批量分配的方式,一次分配就將所有需求的時隙分配完。非保證帶寬時隙分配,為了確保公平性,一次只給請求的(S,D)節(jié)點對分配一個請求的時隙,非保證帶寬需要多次分配才能分配完。固定帶寬在初始化階段完成,以后系統(tǒng)在運(yùn)行過程中不再進(jìn)行固定帶寬的分配工作。

帶寬地圖生成模塊30的時隙分配采用流水線工作,不論是固定帶寬、保證帶寬還是非保證帶寬,一個(S,D)節(jié)點對的一次帶寬分配都分成六個步驟,但由于保證帶寬和非保證帶寬每次分配的時隙數(shù)不一樣,運(yùn)行需要的時鐘周期不一樣,為任意一個(S,D)節(jié)點對一次分配num_slots(num_slots大于1)個固定帶寬或保證帶寬時隙需要花費(fèi)八個時鐘周期,為任意一個(S,D)節(jié)點對分配一個非保證帶寬時隙只需要花費(fèi)五個時鐘周期。

對于固定帶寬和保證帶寬來說,每次帶寬請求num_slots個時隙,帶寬地圖生成模塊30的固定帶寬或保證帶寬時隙分配過程包括如下六個步驟:

步驟一:查詢路由表,得到(S,D)節(jié)點對經(jīng)過的所有鏈路。

步驟二:首先,查詢源/目的節(jié)點資源狀態(tài)寄存器,得到源節(jié)點S的資源狀態(tài)Src_State,和目的節(jié)點D的資源狀態(tài)Dst_State。查詢鏈路資源狀態(tài)表,查詢到(S,D)節(jié)點對經(jīng)過的每一段鏈路(i,j)的資源狀態(tài)。

步驟三:對于(S,D)節(jié)點對路由經(jīng)過的每一段鏈路(i,j)的資源狀態(tài)、源節(jié)點S的資源狀態(tài)Src_State和目的節(jié)點D的資源狀態(tài)Dst_State,按照波長進(jìn)行區(qū)分,依次分別進(jìn)行按位與操作并將結(jié)果分別保存。

也就是說,上述波長0的按位與操作結(jié)果保存在Wave_0_State,波長1的 按位與操作結(jié)果保存在Wave_1_State,波長n的按位邏輯與操作結(jié)果保存在Wave_n_State,n為非負(fù)整數(shù)。

步驟四:判斷波長編號最小/最大的波長對應(yīng)的狀態(tài)值是否為0,為便于敘述,假設(shè)該波長為a,它的狀態(tài)值為Wave_a_State。如果Wave_a_State大于0,從Wave_a_State最高位開始,尋找所有為1的比特位,并記下它們的序列號,同時計算為1的位的個數(shù)N。

(1)如果N等于(S,D)的num_slots,則確保時隙分配結(jié)束,否則,如果N大于(S,D)的num_slots,轉(zhuǎn)向(2),否則轉(zhuǎn)向(3)。

(2)若N大于(S,D)的num_slots,從最低/最高比特位開始的num_slots個為1的位表示的時隙參與時隙分配,其它的所有位代表的時隙都不參與時隙分配,時隙分配成功,轉(zhuǎn)向步驟五。

也就是說,若所述未占用時隙數(shù)量大于或等于待分配給所述節(jié)點對的待分配時隙數(shù)量,則按照未占用時隙的比特位由低至高/由高至低的順序,確定參與保證時隙分配的num_slots個未占用時隙;

(3)令num_slots=num_slots-N。

取波長編號比上一個可用波長序號大/小的下一個波長對應(yīng)的狀態(tài)值,如果它的狀態(tài)值等于0,就再取下一個編號更大的波長對應(yīng)的狀態(tài)值,如果取不到狀態(tài)值不為0的波長,則該(S,D)時隙分配結(jié)束,轉(zhuǎn)向步驟五,否則將取到下一個狀態(tài)值不為0的波長b進(jìn)行下列運(yùn)算,為了便于描述,假設(shè)其狀態(tài)值為Wave_b_State,令:

State_temp=Wave_a_State^1111…1;

State=State_temp&Wave_b_State;

即,將Wave_a_State與二進(jìn)制數(shù)1111…1進(jìn)行按位邏輯異或運(yùn)算,得到State_temp,然后將State_temp與Wave_b_State進(jìn)行按位邏輯與運(yùn)算,得到State。

上式中每位都為1的二進(jìn)制數(shù)1111…1中1的個數(shù)為W。從所得到的State的最高位開始,尋找所有為1的位,并記下它們的序列號,同時計算為1的位的個數(shù)M,M就是該波長可以為本次的(S,D)節(jié)點對時隙分配貢獻(xiàn)的最大時隙數(shù)。令N=M,Wave_a_State=Wave_a_State+State,轉(zhuǎn)向(1)。

也就是說,如果所述未占用時隙數(shù)量小于待分配給所述節(jié)點對的待分配時隙數(shù)量,就需要按照波長編號由小至大/由小至大的順序,依次取出后續(xù)時隙資源未全部占用的波長,直至未占用時隙數(shù)量的累加結(jié)果滿足所請求的固定帶寬或保證帶寬時隙的時隙數(shù)量num_slots。

步驟五:將(S,D)節(jié)點對時隙分配的結(jié)果更新到隨機(jī)存儲器中,即對于固定時隙分配結(jié)果,按照波長保存至固定時隙分配結(jié)果隨機(jī)存儲器中;對于保證時隙分配結(jié)果,按照波長保存至保證和非保證時隙分配結(jié)果隨機(jī)存儲器中。

進(jìn)一步地,當(dāng)某個波長參與時隙分配成功,貢獻(xiàn)了時隙時,更新源節(jié)點資源狀態(tài)寄存器、目的節(jié)點資源狀態(tài)寄存器和該波長相應(yīng)的鏈路資源狀態(tài)寄存器,將使用的時隙置0,表示該時隙已經(jīng)被占用,使之不能在下次時隙分配時再次被分配,從而避免資源沖突。本次(S,D)節(jié)點對的時隙分配結(jié)束。

步驟六:分配失敗,沒有一個波長成功參與時隙分配,不需要更新帶寬地圖,不需要更新(S,D)節(jié)點對的源節(jié)點資源狀態(tài)寄存器、目的節(jié)點資源狀態(tài)寄存器和所有波長的鏈路資源狀態(tài)寄存器。本次(S,D)節(jié)點對的時隙分配結(jié)束。

對于非保證帶寬來說,每次費(fèi)保證時隙請求為一個時隙,帶寬地圖生成模塊30的非保證時隙分配過程包括如下六個步驟:

步驟一:查詢路由表,得到(S,D)節(jié)點對經(jīng)過的所有鏈路。

步驟二:查詢源/目的節(jié)點資源狀態(tài)寄存器,得到源節(jié)點S的資源狀態(tài)Src_State,和目的節(jié)點D的資源狀態(tài)Dst_State。查詢鏈路資源狀態(tài)表,查詢到(S,D)節(jié)點對經(jīng)過的每一段鏈路(i,j)的資源狀態(tài)。

步驟三:對于(S,D)節(jié)點對路由經(jīng)過的每一段鏈路(i,j)的資源狀態(tài)、源節(jié)點S資源狀態(tài)Src_State和目的節(jié)點D資源狀態(tài)Dst_State,按照波長進(jìn)行區(qū)分,依次分別進(jìn)行按位與操作并將結(jié)果分別保存。

也就是說,上述波長0的按位與操作結(jié)果保存在Wave_0_State,波長1的按位與操作結(jié)果保存在Wave_1_State,波長n的按位邏輯與操作結(jié)果保存在Wave_n_State,n為非負(fù)整數(shù)。

步驟四:判斷波長編號最小/最大的波長對應(yīng)的狀態(tài)值是否為0,為便于敘述,假設(shè)該波長為a,它的狀態(tài)值為Wave_a_State。如果Wave_a_State大于0,從Wave_a_State最低/最高位開始,尋找數(shù)據(jù)為1的第一個數(shù)據(jù)的位置,并記下 它的序列號,它對應(yīng)的時隙就是本次非保證時隙帶寬分配到的時隙,轉(zhuǎn)向步驟五。如果Wave_a_State等于0,就取波長編號比上一個可用波長序號大/小的下一個波長對應(yīng)的狀態(tài)值,如果沒有波長可供選擇了,則轉(zhuǎn)向步驟六,否則重復(fù)本步驟。

步驟五:將(S,D)節(jié)點對時隙分配的結(jié)果更新到保證和非保證時隙分配結(jié)果隨機(jī)存儲器中,如果有某個波長參與時隙分配成功,貢獻(xiàn)了時隙,就更新源節(jié)點資源狀態(tài)寄存器、目的節(jié)點資源狀態(tài)寄存器和該波長相應(yīng)的鏈路資源狀態(tài)寄存器,將使用的時隙置0,表示該時隙已經(jīng)被占用,使之不能在下次時隙分配再次被分配。本次(S,D)節(jié)點對的時隙分配結(jié)束。

步驟六:分配失敗,沒有一個波長成功參與時隙分配,不需要更新帶寬地圖,不需要更新(S,D)節(jié)點對的源節(jié)點資源狀態(tài)寄存器、目的節(jié)點資源狀態(tài)寄存器和所有波長的鏈路資源狀態(tài)寄存器。本次(S,D)節(jié)點對的時隙分配結(jié)束。

本發(fā)明具有以下技術(shù)效果:

本發(fā)明在光突發(fā)環(huán)網(wǎng)的動態(tài)帶寬按需分配時,具備快速計算能力,響應(yīng)快速,減少了每次環(huán)網(wǎng)帶寬分配時間,也就是每個DBA周期的時間很短,避免了算法延時導(dǎo)致的響應(yīng)延時及時延、抖動和丟包等負(fù)面影響。

盡管上文對本發(fā)明進(jìn)行了詳細(xì)說明,但是本發(fā)明不限于此,本技術(shù)領(lǐng)域技術(shù)人員可以根據(jù)本發(fā)明的原理進(jìn)行各種修改。因此,凡按照本發(fā)明原理所作的修改,都應(yīng)當(dāng)理解為落入本發(fā)明的保護(hù)范圍。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
德安县| 平阴县| 章丘市| 米林县| 贡山| 蓝山县| 集安市| 景德镇市| 麦盖提县| 株洲市| 南充市| 鲁甸县| 遵义县| 大关县| 东乡县| 西青区| 万盛区| 青州市| 香港| 文登市| 肇东市| 延长县| 准格尔旗| 淳化县| 贺兰县| 临湘市| 驻马店市| 雷波县| 绥阳县| 屏南县| 全椒县| 梨树县| 银川市| 甘孜县| 高安市| 韶关市| 保康县| 保康县| 宁都县| 朝阳市| 微山县|