本發明專利技術公開了一種適用于多級多平面結構網絡的同向交換調度方法,在度為2的滿配業務矩陣中,逐行遍歷各個元素,將第一次找到的非零值1的元素作為起點,分別在該元素的行方向和列方向尋找非零值1,在找到的兩個非零值1中,分別在同行非零值1的列方向、同列非零值1的行方向尋找非零值1,在本次找到的兩個非零值1中,在同列非零值1的行方向、同行非零值1的列方向尋找非零值1,依次類推。每次找到非零值元素時,則更新連接矩陣的業務矩陣中的相應元素,直到將業務矩陣中所有非零值元素處理完畢。本發明專利技術中,在確定起點后的每個步驟可以返回兩條業務分配結果,從而將業務矩陣的分配時間縮短為現有單向環形算法的一半左右。
【技術實現步驟摘要】
本專利技術屬于網絡交換調度
,更為具體地講,涉及一種基于環形算法的雙向交換調度方法。
技術介紹
多級多平面(Multi-Plane?and?Multi-Stage,MPMS)結構網絡是目前一種常用的交換網絡結構。圖1是MPMS結構網絡示意圖。如圖1所示,MPMS結構網絡包括輸入模塊、交換平面和輸出模塊,交換平面即輸入模塊和輸出模塊之間的中間級模塊。在MPMS結構網絡的交換調度中,環形算法是一種常用的交換調度算法。為了更好地說明環形算法,首先定義幾個名詞概念:定義1:矩陣的度:矩陣中每行元素之和與每列元素之和的最大值m是矩陣的度。假設有A×B的矩陣Matrix[i,j],0≤i≤A-1,0≤j≤B-1,矩陣Matrix[i,j]的度即為maxi(Σj=0B-1Matrix[i,j])]]>和maxj(Σi=0A-1Matrix[i,j])]]>兩者中的較大值。定義2:業務矩陣Hm,其中每個元素Hm[i,j],0≤i,j≤N-1,表示輸入模塊序號i連接到輸出模塊序號j的業務數,m表示業務矩陣的度,即中間級模塊個數,代表多級多平面結構中最大可支持的業務數量;N表示輸入/輸出模塊的個數??梢姡瑯I務矩陣中的元素Hm[i,j]的值僅能從0,1,2......m-1,m中選一個。定義3:連接矩陣1≤k≤m,其中每個元素0≤i,j≤N-1,代表輸入模塊i是否有業務經過中間級模塊k連接到輸出模塊j,其元素值為1代表有連接,元素值為0代表無連接。其中下標1表示連接矩陣的度,即每個中間級模塊k中每個輸入模塊到每個輸出模塊最多只存在一個業務。在文獻[S.Andresen,?“The?looping?algorithm?extended?to?base?2t?rearrangeable?switching?networks,”?IEEE?Trans.?Commun.?vol.?COM-25,?pp.1057-1063,?Oct.?1977]中Andresen首次在可重排無阻塞結構中采用環形算法,基本步驟是先在業務矩陣中尋找一個未標記元素并標記為0;其次在同列尋找最后一個未標記元素并標記為1;緊接著在同行尋找最后一個未標記元素并標記為0,若此時未找到最后一個未標記元素則重新選擇其他行的未標記元素。環形算法一次處理業務矩陣能得到兩個子矩陣,即環形算法適用于度為2的業務矩陣。其具體實現步驟包括:步驟1、根據業務流量到達情況,初始化業務矩陣各個元素H2[i,j],0≤i,j≤N-1。初始化所有連接矩陣1≤k≤2,標記連接矩陣中每個元素值為0。步驟2、在業務矩陣H2中從元素H2[0,0]開始逐行逐列遍歷各個元素。2.1)若尋找所有行未找到非零元素,則環形算法結束。2.2)若尋找到元素H2[i,j]為非零值2,則更新連接矩陣和業務矩陣相應元素H2[i,j]=0后,重新執行步驟2。2.3)若尋找到元素H2[i,j]為非零值1,則更新連接矩陣和業務矩陣相應元素H2[i,j]=0后,繼續執行步驟3。步驟3、在行i中尋找非零元素值1,若找到元素H2[i,l]為非零值1,則更新連接矩陣和業務矩陣相應元素H2[i,l]=0,繼續執行步驟4;反之則回到步驟2。步驟4、在列l中尋找非零元素值1,若找到元素H2[r,l]為非零值1,則更新連接矩陣和業務矩陣相應元素H2[r,l]=0,i=r,返回步驟3;反之則返回步驟2。可見,環形算法在步驟2中選取一個起點,接著在步驟3和4之間循環跳轉執行,最終以回到起點結束。環形算法處理業務矩陣H2得到兩個子矩陣根據業務到達是否滿配,環形算法處理略有不同。在到達業務滿配情況下,業務矩陣H2每行和每列的元素之和都等于常數2,那么環形算法整個處理過程以環的起點開始,并以環的起點結束,從步驟4回到步驟2開始尋找下一個環開始的起點,直到步驟2中未找到非零元素才結束環形算法。在到達業務非滿配情況下,業務矩陣H2每行每列的元素之和小于或等于常數2,同樣可以采用環形算法處理。在環遍歷矩陣中,若出現從步驟3或4回到步驟2時的列(或行)并不是起始列(或行),那么一個環的處理還需從起始列(或行)的反方向開始遍歷環,直到再次回到步驟2才開始尋找下一個環開始的起點,直到步驟2中未找到非零元素才結束環形算法。下面以滿配業務矩陣H2為例,對環形算法的實現步驟進行說明。H2=0001000101010000001001001000001000101000000010101000010001000001]]>圖2是環形算法對業務矩陣H2的處理示意圖。如圖2所示,環形算法處理業務矩陣H2,標號“①、②”分別代表分配給兩個連接矩陣實線箭頭和虛線箭頭表示步驟走向,其上標示的數字表示步驟序號。首先,執行步驟2尋找到一個非零值1作為環開始的起點Start,箭頭指向代表了處理順序,最終回到起始點的相鄰非零值,一個環遍歷結束End,再執行步驟2尋找下一個環的起點。從圖2可看出,該業務矩陣H2的環形算法處理過程中有兩個環(實線和虛線),一共用了14步處理完成。由以上分析可以看出,在現有的環形算法中,算法處理方向是單向的,每一次搜索只能返回一條業務分配結果,而且由于業務矩陣的隨機性,每條業務的分配必須順序完成,當業務矩陣度較大或中間模塊數量較大時,現有環形算法需要采用較長的時間才能得到連接矩陣,完成業務矩陣的分配。
技術實現思路
本專利技術的目的在于克服現有技術的不足,提供一種雙向交換調度方法,針對度為2的滿配業務矩陣進行設計,在確定起點后的每個分配步驟可以得到兩條業務分配結果,從而將業務矩陣的分配時間縮短為現有單向環形算法的一半左右。為實現上述專利技術目的,本專利技術雙向交換調度方法包括以下步驟:S1:對于度為2的業務矩陣H2,將其中各個元素記為H2[i,j],i和j的取值范圍分別為0≤i≤N-1、0≤j≤N-1,N表示輸入/輸出模塊的個數;初始化所有連接矩陣k表示中間模塊序號,取值范圍為1≤k≤2,標記每個元素值為0;S2:在業務矩陣H2中從元素H2[0,0]開始逐行逐列遍歷各個元素,如果尋找所有行未找到非零元素,則環形算法結束;如果在第i1行中尋找到元素H2[i1,j1]為非零值2,則更新連接矩陣和業務矩陣相應元素:H2[i1,j1]=0,重復步驟S2;如果在第i1行中尋找到一個元素H2[i1,j1]為非零值1,則更新連接矩陣和業務矩陣相應元素:H2[i1,j1]=0,進入步驟S3;S3:在本文檔來自技高網...

【技術保護點】
一種雙向交換調度方法,其特征在于包括以下步驟:S1:對于度為2的業務矩陣H2,將其中各個元素記為H2[i,j],i和j的取值范圍分別為0≤i≤N?1、0≤j≤N?1,N表示輸入/輸出模塊;初始化所有連接矩陣k表示中間模塊序號,取值范圍為1≤k≤2,標記每個元素值為0;S2:在業務矩陣H2中從元素H2[0,0]開始逐行逐列遍歷各個元素,如果尋找所有行未找到非零元素,則環形算法結束;如果在第i1行中尋找到元素H2[i1,j1]為非零值2,則更新連接矩陣和業務矩陣相應元素:H2[i1,j1]=0,重復步驟S2;如果在第i1行中尋找到一個元素H2[i1,j1]為非零值1,則更新連接矩陣和業務矩陣相應元素:H2[i1,j1]=0,進入步驟S3;S3:在元素H2[i1,j1]所在的第i1行和第j1列同時尋找是否存在非零值1,如果未找到則返回步驟S2,若找到元素H2[i1,j2]、H2[i2,j1],則更新連接矩陣和業務矩陣相應元素:H2[i1,j2]=0,H2[i2,j1]=0,進入步驟S4;S4:在元素H2[i1,j2]所在的第j2列和H2[i2,j1]所在的第i2行同時尋找是否存在非零值1,如果未找到則返回步驟S2,若找到元素H2[i3,j2]和H2[i2,j3],則更新連接矩陣和業務矩陣相應元素:H2[i3,j2]=0,H2[i2,j3]=0,判斷元素H2[i3,j2]和H2[i2,j3]是否為同一元素,如果不是進入步驟S5,否則返回步驟S2;S5:在元素H2[i3,j2]所在的第i3行和H2[i2,j3]所在的第j3列同時尋找是否存在非零值1,如果未找到則返回步驟S2,若找到元素H2[i3,j4]和H2[i4,j3],則更新連接矩陣和業務矩陣相應元素:H2[i3,j4]=0,H2[i4,j3]=0,判斷元素H2[i3,j4]和H2[i4,j3]是否為同一元素,如果不是則令i1=i3、i2=i4、j1=j3、j2=j4,返回步驟S4,否則返回步驟S2。...
【技術特征摘要】
1.一種雙向交換調度方法,其特征在于包括以下步驟:
S1:對于度為2的業務矩陣H2,將其中各個元素記為H2[i,j],i和j的取值
范圍分別為0≤i≤N-1、0≤j≤N-1,N表示輸入/輸出模塊;初始化所有連接矩
陣k表示中間模塊序號,取值范圍為1≤k≤2,標記每個元素值為0;
S2:在業務矩陣H2中從元素H2[0,0]開始逐行逐列遍歷各個元素,如果尋找
所有行未找到非零元素,則環形算法結束;如果在第i1行中尋找到元素H2[i1,j1]為
非零值2,則更新連接矩陣和業務矩陣相應元素:H2[i1,j1]=0,重復步驟S2;如果在第i1行中尋找到一個元素H2[i1,j1]為非零值1,
則更新連接矩陣和業務矩陣相應元素:H2[i1,j1]=0,進入步驟S3;
S3:在元素H2[i1,j1]所在的第i1行和第j1列同時尋找是否存在非零值1,如果
未找到則返回步驟S2,若找到元素H2[i1,j2]、H2[i2,j1],則更新連接矩陣和業務矩
陣相應元素:H2[...
【專利技術屬性】
技術研發人員:楊琦,張念,邱昆,許渤,
申請(專利權)人:電子科技大學,
類型:發明
國別省市:四川;51
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。