專(zhuān)利名稱(chēng):一種負(fù)載均衡電路式分組交換結(jié)構(gòu)及其構(gòu)建方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種負(fù)載均衡電路式分組交換結(jié)構(gòu)及 其構(gòu)建方法。
背景技術(shù):
電信應(yīng)用中,所謂的交換結(jié)構(gòu)是一種網(wǎng)絡(luò)設(shè)備,該設(shè)備實(shí)現(xiàn)數(shù)據(jù)單元的路 徑選擇,并將數(shù)據(jù)單元發(fā)送到下一個(gè)目標(biāo)地址。
為保證經(jīng)過(guò)交換結(jié)構(gòu)數(shù)據(jù)流的服務(wù)質(zhì)量,許多交換結(jié)構(gòu)采用接入控制,為 數(shù)據(jù)流分配一定的帶寬,當(dāng)交換結(jié)構(gòu)提供的帶寬不足以滿(mǎn)足一個(gè)數(shù)據(jù)流的需求 時(shí),便拒絕一個(gè)數(shù)據(jù)流的建立。
以電路交換結(jié)構(gòu)為例,基于自路由集線(xiàn)器的多路徑自路由交換結(jié)構(gòu)在進(jìn)行 接入控制時(shí),需要首先計(jì)算這個(gè)數(shù)據(jù)流在交換結(jié)構(gòu)中的傳輸路徑,然后根據(jù)路 徑上各點(diǎn)的剩余可用帶寬來(lái)判斷是否可以建立一個(gè)數(shù)據(jù)流。
但是,由于電路交換結(jié)構(gòu)內(nèi)部容量有限,因此,當(dāng)?shù)竭_(dá)交換結(jié)構(gòu)的數(shù)據(jù)流 量不均衡時(shí),可能有的端口或者內(nèi)部線(xiàn)路已經(jīng)處于飽和狀態(tài),而有的端口或者 內(nèi)部線(xiàn)路處于空閑狀態(tài)。這就可能由于內(nèi)部阻塞問(wèn)題導(dǎo)致一個(gè)數(shù)據(jù)流不能夠被 建立。降低了電路式交換結(jié)構(gòu)的吞吐量。
發(fā)明內(nèi)容
為此,本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種負(fù)載均衡電路式分組交換 結(jié)構(gòu)及其構(gòu)造方法,使得該電路式交換結(jié)構(gòu)能夠解決接入數(shù)據(jù)流量分布不均的 問(wèn)題,進(jìn)而提高電路式交換結(jié)構(gòu)的吞吐量。
于是,本發(fā)明提供了一種負(fù)載均衡電路式分組交換結(jié)構(gòu)的構(gòu)造方法,該方 法包括
將基于自路由集線(xiàn)器的負(fù)載均衡分組交換結(jié)構(gòu)分成具有完成負(fù)載均衡功 能的第 一級(jí)交換模塊和具有完成分組數(shù)據(jù)自路由轉(zhuǎn)發(fā)功能的第二級(jí)交換模塊;
在所述第一級(jí)交換^t塊輸入端前設(shè)置虛擬輸出群組隊(duì)列,在所述第二級(jí)交 換模塊輸出端后設(shè)置重排序緩存,所述虛擬輸出群組隊(duì)列,用于存儲(chǔ)帶有自路 由地址信息的分組數(shù)據(jù)塊,所述重排序緩存,用于將屬于同一個(gè)輸入群組的分
組數(shù)據(jù)塊按自路由地址信息排列,以便后續(xù)處理;
所述虛擬輸出群組隊(duì)列存儲(chǔ)的分組數(shù)據(jù)發(fā)送到第 一級(jí)交換前,組合成預(yù)置 長(zhǎng)度的數(shù)據(jù)塊,然后被分割成等長(zhǎng)的數(shù)據(jù)片,同時(shí)在數(shù)據(jù)片上添加用于實(shí)現(xiàn)自 路由的自^各由才示簽;
擁有自路由地址信息的數(shù)據(jù)片經(jīng)第一級(jí)交換模塊和第二級(jí)交換模塊傳輸 后到達(dá)目的輸出端口的重排序緩存,根據(jù)數(shù)據(jù)片攜帶的自路由標(biāo)簽,把數(shù)據(jù)片 重新組合成所述虛擬輸出群組隊(duì)列組合成的數(shù)據(jù)塊。
其中,在所述第一級(jí)交換模塊和第二級(jí)交換模塊之間設(shè)置中間線(xiàn)群組。
在任意接入控制時(shí)隙內(nèi),輸入群組IGi去往輸出群組OGj的分組個(gè)數(shù)記為入
y,那么,當(dāng)一個(gè)連接請(qǐng)求到達(dá)輸入群組IGi時(shí),根據(jù)banyan網(wǎng)絡(luò)i 各徑唯一性,
計(jì)算出數(shù)據(jù)分組要發(fā)送到的輸出群組OGj ,把帶寬請(qǐng)求轉(zhuǎn)換成相應(yīng)的值加到入
ij上,如果入i,j滿(mǎn)足接入控制條件
1 且1]/,盧,i,j = l...M
那么所述連接請(qǐng)求被允許建立,否則拒絕建立,其中,G代表群組的大小。
本發(fā)明還提供了 一種負(fù)載均衡電路式分組交換結(jié)構(gòu),包括基于自路由集線(xiàn) 器用于完成負(fù)載均衡功能的第一級(jí)交換模塊和用于完成分組數(shù)據(jù)自路由轉(zhuǎn)發(fā) 功能的第二級(jí)交換模塊,其中,在所述第一級(jí)交換模塊輸入端前設(shè)置虛擬輸出
群組隊(duì)列,在所述第二級(jí)交換模塊輸出端后設(shè)置重排序緩存,所述虛擬輸出群 組隊(duì)列,用于存儲(chǔ)帶有自路由地址信息的分組數(shù)據(jù)塊,所述重排序緩存,用于 將屬于同一個(gè)輸入群組的分組數(shù)據(jù)塊按自路由地址信息排列,以便后續(xù)處理, 所述第 一級(jí)交換和第二級(jí)交換之間為中間線(xiàn)群組連接。
可見(jiàn),通過(guò)將基于自路由集線(xiàn)器的負(fù)載均衡分組交換結(jié)構(gòu)分成第一級(jí)交換 模塊和第二級(jí)交換模塊,在第一級(jí)交換模塊輸入端前設(shè)置虛擬輸出群組隊(duì)列,
在第二級(jí)交換模塊輸出端后設(shè)置重排序緩存,并在所述虛擬輸出群組隊(duì)列存儲(chǔ) 的分組發(fā)送到第一級(jí)交換前,將分組組合成預(yù)置長(zhǎng)度的數(shù)據(jù)塊,然后被分割成 等長(zhǎng)的數(shù)據(jù)片,同時(shí)在數(shù)據(jù)片上添加用于實(shí)現(xiàn)自路由的自路由地址信息,在重 排序緩存中,根據(jù)數(shù)據(jù)片攜帶的自路由地址信息,再把數(shù)據(jù)片重新組合成所述 虛擬輸出群組隊(duì)列組合成的數(shù)據(jù)塊。通過(guò)上述結(jié)構(gòu)的變化,可見(jiàn),本發(fā)明提供 的負(fù)載均衡分組交換結(jié)構(gòu)取消了背景技術(shù)中所述的第一級(jí)交換和第二級(jí)交換
之間的虛擬輸出隊(duì)列VOQ這一中間級(jí),使得本發(fā)明所述的負(fù)載均衡電路式分 組交換結(jié)構(gòu),只要接入控制滿(mǎn)足^^''盧(?且1/''盧""=1.",那么連接請(qǐng) 求被允許被建立,解決接入數(shù)據(jù)流量分布不均的問(wèn)題,進(jìn)而提高電路式交換結(jié) 構(gòu)的呑吐量。
圖la為本發(fā)明實(shí)施例所述多路徑自路由交換結(jié)構(gòu)一般構(gòu)造方法流程示意
圖lb為圖la所述多路徑N二128G-8]VN16的多路徑自路由交換結(jié)構(gòu)構(gòu)造 方法流程示意圖2為本發(fā)明實(shí)施例所述負(fù)載均衡分組交換結(jié)構(gòu)模型示意圖3為本發(fā)明實(shí)施例所述算法一示例圖4為本發(fā)明實(shí)施例所述算法二示例圖。
具體實(shí)施例方式
下面,結(jié)合附圖對(duì)本發(fā)明進(jìn)行詳細(xì)描述。
本發(fā)明實(shí)施例采用基于自路由集線(xiàn)器的分組交換結(jié)構(gòu),而該交換結(jié)構(gòu)主要 是利用集線(xiàn)器和線(xiàn)組技術(shù),在可路由多級(jí)互連網(wǎng)絡(luò)的基礎(chǔ)上來(lái)構(gòu)造。
如圖la所示, 一個(gè)MxM可路由的多級(jí)互連網(wǎng)絡(luò)構(gòu)成一個(gè)基于自路由集線(xiàn) 器的分組交換結(jié)構(gòu), 一般的,設(shè)N=2n , N = MxQM=2m,G=2g,先構(gòu)造一個(gè) MxM的可路由網(wǎng)絡(luò)(通常選擇版圖復(fù)雜性最優(yōu)的分治網(wǎng)絡(luò))。然后將網(wǎng)絡(luò)中 各級(jí)2x2路由單元替換為2G-to-G自路由群組集線(xiàn)器,把網(wǎng)絡(luò)中各級(jí)間的連線(xiàn)替
換成G條平行的線(xiàn)束,這樣就建立了一個(gè)擁有M個(gè)輸出(輸入)群組,每群組 包含G個(gè)輸出(輸入)端口的NxN網(wǎng)絡(luò)。2G-to-G集線(xiàn)器具有兩組輸入端口和 兩組輸出端口的,兩個(gè)輸出組中地址d、的稱(chēng)為0-輸出組和地址大的稱(chēng)為1 -輸出 組;同理,兩個(gè)輸入組稱(chēng)為O-輸入組和l-輸入組。同一個(gè)輸出組中的端口是不 用區(qū)分的,這是因?yàn)閷?duì)于一個(gè)信號(hào)而言,交換到同一組中任何一個(gè)端口的效果 都是等價(jià)的。
如圖lb所示,當(dāng)線(xiàn)束大小G為8時(shí),將線(xiàn)組和16-to-8集線(xiàn)器應(yīng)用于圖la所示 的16 x 16網(wǎng)絡(luò),就得到了 一個(gè)128x 128網(wǎng)絡(luò)。
邏輯上,2G-to-G集線(xiàn)器等同于2x2基本路由單元,因?yàn)樗總€(gè)輸入(輸出) 組中的G個(gè)端口的地址是相同的。 一個(gè)2G-to-G集線(xiàn)器是指一個(gè)2Gx2G的排序 交換模塊,它將2G個(gè)輸入信號(hào)中地址最大的G個(gè)信號(hào)交換到具有最大輸出地址 的G個(gè)輸出端口 ,并將其余的G個(gè)信號(hào)路由到具有最小輸出地址的G個(gè)輸出端 o 。
如圖2所示,基于上述構(gòu)造的自路由集線(xiàn)器的分組交換結(jié)構(gòu),通過(guò)疊加2 個(gè)基于自路由集線(xiàn)器的分組交換結(jié)構(gòu)以及在第一級(jí)交換模塊前添置虛擬輸出 群組隊(duì)列(VOGQ:Virtual Output Group Queuing),在第二級(jí)交換才莫塊后面設(shè)置 重排序緩存(RB:Re-sequencing Buffer)便可構(gòu)造負(fù)載均衡的分組交換結(jié)構(gòu)。
實(shí)際上,第一級(jí)交換模塊起到了負(fù)載均衡的作用,它負(fù)責(zé)將輸入的網(wǎng)絡(luò)流 量均勻化后轉(zhuǎn)送到第二級(jí)交換模塊輸入端。之后,通過(guò)數(shù)據(jù)攜帶的自路由標(biāo)簽, 第二級(jí)交換模塊就可利用自路由特性將數(shù)據(jù)送到最終目的端口。每G個(gè)輸入 (輸出)端口組成一個(gè)輸入(輸出)群組,這樣在交換結(jié)構(gòu)的輸入輸出端各形 成了M個(gè)群組。交換結(jié)構(gòu)內(nèi)部共同連接不同集線(xiàn)器的G根內(nèi)部鏈路也相應(yīng)組成 一個(gè)線(xiàn)群組。為了便于表達(dá),設(shè)IGi (OGi)代表一個(gè)特定的輸入(輸出)群組, MGi代表前后兩級(jí)交換模塊之間的線(xiàn)群組(i=0,l,…M-l )。
輛
VOGQ隊(duì)列負(fù)責(zé)存儲(chǔ)來(lái)自G個(gè)輸入端口的數(shù)據(jù),實(shí)質(zhì)上VOGQ由M個(gè)虛擬輸出 隊(duì)列組成。假定VOGQ (i,j)代表存儲(chǔ)來(lái)自輸入群組IGi,目的地為輸出群組OGj
數(shù)據(jù)的隊(duì)列,(i, j=0,l,...M-l),同時(shí)設(shè)當(dāng)前VOGQ (i,j)隊(duì)列長(zhǎng)度為L(zhǎng)g,即有
Lg個(gè)分組在緩存中等待傳送。
一般而言,負(fù)載均衡的分組交換結(jié)構(gòu)按時(shí)隙為單位進(jìn)行調(diào)度,每時(shí)隙對(duì)分 組的處理可大致分為以下幾個(gè)連續(xù)階段,并且應(yīng)盡可能以流水線(xiàn)方式運(yùn)行來(lái)加 快處理速度
1) 到達(dá)階段新的分組在此階段到達(dá)輸入端IGs.其中到達(dá)輸入群組IGi去往輸 出群組OGj的分組被存儲(chǔ)于VOGQ (i,j)隊(duì)列中
2) 封裝階段存儲(chǔ)于VOGQ中的分組首先被組合成最大長(zhǎng)度一定的數(shù)據(jù)塊
(datablock)。然后根據(jù)算法l,這些數(shù)據(jù)塊將在分割和打標(biāo)簽后成為小的 數(shù)據(jù)片(data slice),并等待進(jìn)一步傳輸。參見(jiàn)圖2中的數(shù)據(jù)片格式(a )。
3) 均衡階段通過(guò)使用MG自路由標(biāo)簽,所有輸入群組IG同時(shí)將封裝后的數(shù) 據(jù)片送到兩級(jí)間的線(xiàn)群組。當(dāng)數(shù)據(jù)片到達(dá)中間線(xiàn)群組后,MG地址將作為 MG簽重新插入到IG標(biāo)簽與數(shù)據(jù)負(fù)載之間。參見(jiàn)圖2中的數(shù)據(jù)片格式(卩)。
4) 轉(zhuǎn)發(fā)階段數(shù)據(jù)片將進(jìn)一步使用OG標(biāo)簽自路由地穿越第2級(jí)轉(zhuǎn)發(fā)模塊,并 最終到達(dá)其預(yù)期的輸出群組。當(dāng)數(shù)據(jù)片到達(dá)輸出端OGs的重排序緩存RB時(shí), OG標(biāo)簽將被丟棄。參見(jiàn)圖2中的數(shù)據(jù)片格式(Y)。
5) 離開(kāi)階段在重排序緩存RB中,根據(jù)算法1被分割的數(shù)據(jù)塊將使用算法2進(jìn) 行重組,并離開(kāi)交換結(jié)構(gòu)的輸出端。
下面,針對(duì)所述算法1和算法2進(jìn)行詳細(xì)說(shuō)明。 算法l:
對(duì)于每一個(gè)輸入群組IQ在封裝階段,存儲(chǔ)于VOGQ (i,j)的數(shù)據(jù)塊首先 被均勻地切割成M個(gè)等長(zhǎng)的數(shù)據(jù)片,即為圖2中標(biāo)記出的負(fù)載。之后,自路由 標(biāo)簽MG、 IG和OG被插入到相應(yīng)數(shù)據(jù)片之前,以供穿越兩級(jí)結(jié)構(gòu)路由時(shí)使用。 其中MG將按從小到大的順序依次插入到特定VOGQ所對(duì)應(yīng)的M份數(shù)據(jù)片前。
為了便于理解,下面列出了算法1對(duì)應(yīng)的C語(yǔ)言偽代碼,圖3則給出了當(dāng) M=8, IGs上的VOGQ滿(mǎn)足L5,(T4,L5,產(chǎn)2,L5,^L5,1時(shí)的具體例子。
/*算法1偽代碼,M為總的群組數(shù)"
DataBlock[M][M]; 嚴(yán)DataBlock(i,j)為VOGQ(i,j)內(nèi)存儲(chǔ)的數(shù)據(jù)塊V
SlicePayload[M] [M] [M]; /* SlicePayload(i,j ,k)代表DataBlock(i,j)分割后的 數(shù)據(jù)片負(fù)載*/
DataSlice[M][M][M]; 嚴(yán)DataSlice(i,j,k)代表加標(biāo)記后的數(shù)據(jù)片*/
IG[M]={0, 1,2,3,…,M-1}; OG[M]={0, 1,2,3,…,M-1}; MG[M]={0, 1,2,3,…,M-1}; /* IQOQMG數(shù)組存儲(chǔ)了自路由標(biāo)簽*/
for (i=0;i<M;i++) /*對(duì)每個(gè)輸入群組進(jìn)行處理,實(shí)現(xiàn)時(shí)輸入群組間并行運(yùn)
行*/
for(j=0;j<M;j++){
Segment(DataBlock[i][j]);嚴(yán)將數(shù)據(jù)塊均勻分割為M份負(fù)載,生成未 加自路由標(biāo)簽的數(shù)據(jù)片SlicePayload */
for (k=0;k<M;k++)
AddTag(SlicePayload[i][j][k],IG[i],OG[j],MG[k]); /*為切割后的負(fù)載依次加標(biāo)簽,生成數(shù)據(jù)片DataSlice(i,j,k)*/
圖3中,對(duì)于輸入群組IG5,在封裝階段,存儲(chǔ)于VOGQ(5j)的數(shù)據(jù)塊首 先被均勻地切割成M-8個(gè)等長(zhǎng)數(shù)據(jù)片。之后,自路由標(biāo)簽MQIG和OG被插入
到數(shù)據(jù)片之前。對(duì)于VOGQ (5j) ,8個(gè)數(shù)據(jù)片的IG二5,OG,,而MG則按0到7 依次編號(hào)。這樣便將輸入端去往某輸出群組的流量均勻地導(dǎo)出到所有輸出群 組。
算法2:
具有相同IG標(biāo)簽的數(shù)據(jù)片被重組在一起,MG標(biāo)簽將用于按順序?qū)?shù)據(jù)塊 復(fù)原。然后將數(shù)據(jù)塊按分組大小重新切割為分組。處理后的分組就可被送離輸 出端口。
如圖4所示,算法2的C語(yǔ)言偽代碼如下 /*算法2偽代碼,M為總的群組數(shù)"
DataBlock[M][M]; /承DataBlock(i,j)為VOGQ(i,j)內(nèi)存儲(chǔ)的數(shù)據(jù)塊*/
SlicePayload[M] [M] [M]; /* SlicePayload(i,j,k)代表DataBlock(i j)分割后的 數(shù)據(jù)片負(fù)載*/
DataSlice[M][M][M]; 嚴(yán)DataSlice(i,j,k)代表加標(biāo)簽后的數(shù)據(jù)片*/ IG[M]={0, 1,2,3,…,M-1}; OG[M]={0, 1,2,3,…,M-1};
MG[M]={0, 1 , 2 , 3 ,…,M-1}; /* IQOQMG數(shù)組存儲(chǔ)了自路由標(biāo)簽*/
for(j=0;j<M;j++)/*對(duì)每個(gè)輸出群組進(jìn)行處理,實(shí)現(xiàn)時(shí)輸出群組間并行運(yùn)
行*/
<formula>formula see original document page 10</formula>
嚴(yán)去除DataSlice的自路由標(biāo)簽IQMG,還原成未加標(biāo)簽的SlicePayload; OG 標(biāo)志已在自路由過(guò)程中去除,見(jiàn)圖2格式f/
Recover(DataBlock(i,j), SlicePayload(i,j,k));
/*將數(shù)據(jù)片負(fù)載SlicePayload(i,j,k)按k從小到大依次組合,最終恢復(fù) DataBlock(ij)*/
/*數(shù)據(jù)塊恢復(fù)完成,按分組大小重新分割后可離開(kāi)交換結(jié)構(gòu)輸出端V
圖4中,根據(jù)算法2,在每個(gè)輸出群組OG上,我們首先搜集同屬輸入群組 IGs的數(shù)據(jù)片,然后根據(jù)數(shù)據(jù)片的MG標(biāo)簽,從小到大依次將這些數(shù)據(jù)片組合起 來(lái)。去除多余的自路由標(biāo)簽后,我們就復(fù)原了數(shù)據(jù)塊。再將這些數(shù)據(jù)塊按分組 大小切割后,就可將它們送出輸出端口了。
我們?cè)谪?fù)載均衡的分組交換結(jié)構(gòu)輸入端前置的VOGQ中對(duì)去往每個(gè)輸出 端口的分組進(jìn)行封裝切割,在輸出的后置的重排序緩存中對(duì)這些經(jīng)過(guò)切割的數(shù) 據(jù)片進(jìn)行重排序。由于交換結(jié)構(gòu)的輸出端口為M,即需要把分組組合成數(shù)據(jù)塊 然后平均切割成M個(gè)數(shù)據(jù)片,而一個(gè)2G-to-G自路由集線(xiàn)器的組大小為G,于是 M和G的大小關(guān)系影響著分組組合封裝和輸出的方法。本實(shí)施例給出M和G的 三種關(guān)系的封裝和傳輸方法。
1)M=G:這種情況最簡(jiǎn)單。交換結(jié)構(gòu)的兩個(gè)輸入群組連接到一個(gè)2G-to-G自路 由群組集線(xiàn)器,而2G-to-G自路由集線(xiàn)器的規(guī)模是2Gx2G。在封裝的時(shí)候,把 VOGQ的某一個(gè)虛擬輸出隊(duì)列的一個(gè)數(shù)據(jù)塊切割成了M個(gè)數(shù)據(jù)片,于是一個(gè) 2G-to-G自路由群組集線(xiàn)器的每個(gè)輸入端有M個(gè)數(shù)據(jù)片。由于M-G,所以對(duì)每 個(gè)VOGQ的某一個(gè)虛擬輸出隊(duì)列進(jìn)行封裝切割而成的M個(gè)數(shù)據(jù)片可以在一個(gè) 時(shí)隙全部送到輸入端。由于交換結(jié)構(gòu)中間沒(méi)有緩存,于是這M個(gè)數(shù)據(jù)片在交換 結(jié)構(gòu)中經(jīng)過(guò)相同的傳輸延遲,同一個(gè)時(shí)隙到達(dá)輸出端口后置的重排序緩存,從
而根據(jù)自路由標(biāo)簽重新組合成沒(méi)有切割的數(shù)據(jù)塊,然后送到輸出端的線(xiàn)卡上。
由于G個(gè)輸入的數(shù)據(jù)分組根據(jù)輸出端口地址分別存放到VOGQ相應(yīng)的隊(duì)列中, 而輸出端口有M個(gè),于是一個(gè)輸入群組的前置VOGQ實(shí)際上有M個(gè)虛擬輸出隊(duì) 列組成。這樣每經(jīng)過(guò)M個(gè)時(shí)隙,VOGQ的每一個(gè)虛擬輸出隊(duì)列就可以發(fā)送一次 數(shù)據(jù)分組。
2) M〈G:由于M-2,G:2g,于是G是M的2M咅(x為正整數(shù))。由于VOGQ的每個(gè) 虛擬輸出隊(duì)列的一個(gè)數(shù)據(jù)塊被封裝切割成了M個(gè)數(shù)據(jù)片,而一個(gè)2G-to-G的規(guī) 模是2Gx2G,如果每次只傳輸VOGQ的某一個(gè)虛擬輸出隊(duì)列,則只使用了自路 由集線(xiàn)器的2M個(gè)輸入(或者輸出)端口,而自路由集線(xiàn)器共有2G個(gè)輸入(或 者輸出)端口。為了充分利用自路由集線(xiàn)器的路由交換能力,我們對(duì)每個(gè)VOGQ 的2X個(gè)虛擬輸出隊(duì)列進(jìn)行封裝切割,這樣一個(gè)自路由集線(xiàn)器的兩個(gè)輸入端共輸 入2x2XxM-2G個(gè)數(shù)據(jù)片。這樣每經(jīng)過(guò)M/2X個(gè)時(shí)隙,VOGQ的每一個(gè)虛擬輸出隊(duì) 列就可以發(fā)送一次數(shù)據(jù)分組。
3) M〉G:由于M-2,G-2g,于是M是G的2X倍(x為正整數(shù))。由于VOGQ的每個(gè) 虛擬輸出隊(duì)列的一個(gè)數(shù)據(jù)塊被封裝切割成了 M個(gè)數(shù)據(jù)片,如果每次封裝傳輸 VOGQ的一個(gè)虛擬輸出隊(duì)列,則一個(gè)自路由集線(xiàn)器的兩個(gè)輸入端共產(chǎn)生2M個(gè) 數(shù)據(jù)片,而一個(gè)2G-to-G的規(guī)模是2Gx2G,這樣便超過(guò)了自路由集線(xiàn)器的路由 交換能力。為了解決這個(gè)問(wèn)題,我們把M個(gè)數(shù)據(jù)片分成2X個(gè)部分,這樣每個(gè)部 分有G個(gè)數(shù)據(jù)片。同時(shí)為了防止負(fù)載均衡模塊內(nèi)部的阻塞,我們把負(fù)載均衡交 換結(jié)構(gòu)的輸入組也分成2X個(gè)部分,這樣每部分有G個(gè)輸入組。在一個(gè)時(shí)隙中, 一個(gè)輸入組部分的G個(gè)輸入組分別向O至(G-l ), G至(2G-1),…,(M-l-G) 至(M-l)輸出組發(fā)送數(shù)據(jù),這樣2X個(gè)時(shí)隙便完成了一個(gè)輪轉(zhuǎn),即VOGQ的一 個(gè)虛擬輸出隊(duì)列完成了一次數(shù)據(jù)發(fā)送。于是每經(jīng)過(guò)2XxM個(gè)時(shí)隙,VOGQ中的 每一個(gè)虛擬輸出隊(duì)列完成一次數(shù)據(jù)的傳輸。
假設(shè)任意時(shí)隙內(nèi)輸入群組IGi去往輸出群組OGj的分組個(gè)數(shù)記為入ij,那么, 當(dāng) 一個(gè)連接請(qǐng)求到達(dá)輸入群組lambda i的時(shí)候,可以根據(jù)banyan (榕樹(shù))網(wǎng)絡(luò)路徑 唯一性,計(jì)算出分組要發(fā)送到的輸出群組OGj 。把帶寬請(qǐng)求轉(zhuǎn)換成相應(yīng)的值加
到入y上,如果入u滿(mǎn)足接入控制條件
E義,盧G且^/,盧G, i,j:l…M
那么這個(gè)請(qǐng)求可以被允許,否則拒絕這個(gè)連接的建立。因?yàn)榻粨Q結(jié)構(gòu)沒(méi)有足夠 的處理能力。
下面我們證明這個(gè)條件確實(shí)可以保證交換結(jié)構(gòu)不會(huì)出現(xiàn)阻塞。
我們首先證明第一級(jí)交換模塊的負(fù)載均衡部分不會(huì)出現(xiàn)內(nèi)部阻塞,可以把 流量均衡到第二級(jí)自路由交換模塊的各個(gè)輸入組。
如圖2所示,每個(gè)IG前置的VOQG中的分組都要平均發(fā)送到所有的MG。根 據(jù)前面的封裝和傳輸?shù)慕榻B,第一級(jí)交換模塊的連接方式是周期性和確定的, 一個(gè)時(shí)隙有G個(gè)數(shù)據(jù)片從一個(gè)VOGQ被傳送到2G-to-G自路由集線(xiàn)器的一個(gè)輸 入組,而該集線(xiàn)器的規(guī)模是2Gx2G,于是第一級(jí)交換模塊的第一級(jí)不會(huì)出現(xiàn) 內(nèi)部阻塞。又因?yàn)樽月酚杉€(xiàn)器根據(jù)地址大小進(jìn)行排序,于是最多有G個(gè)數(shù)據(jù) 片從上一級(jí)的一個(gè)輸出端口發(fā)送到下一級(jí)的輸入端口 ,而第一級(jí)交換模塊的輸 入端口沒(méi)有超載,于是所有級(jí)的輸入端口都不會(huì)超載。根據(jù)前面的封裝和傳輸 的介紹,在一個(gè)時(shí)隙中去往各個(gè)中間輸出端口MG的數(shù)據(jù)片個(gè)數(shù)相同,也就是 說(shuō)負(fù)載均衡模塊內(nèi)的各個(gè)中間線(xiàn)組的利用率是相同的。根據(jù)負(fù)載均衡模塊內(nèi)的 各級(jí)的輸入端都沒(méi)有超載,各個(gè)中間線(xiàn)組的利用率相同,并且一個(gè)時(shí)隙中到達(dá) 中間輸出端口 MG的數(shù)據(jù)片相同這三個(gè)結(jié)論,我們得出第一級(jí)交換;f莫塊沒(méi)有內(nèi) 部阻塞,并且所有的lt據(jù)片可以到達(dá)正確的MG端口。
上面我們已經(jīng)得出負(fù)載均衡模塊不會(huì)出現(xiàn)內(nèi)部阻塞的結(jié)論,為了證明這個(gè) 條件可以保證這個(gè)負(fù)載均衡交換結(jié)構(gòu)不會(huì)出現(xiàn)內(nèi)部阻塞,還需要證明第二級(jí)交 換模塊不會(huì)出現(xiàn)內(nèi)部阻塞。
假設(shè)到達(dá)過(guò)程用M x M的流量矩陣A (t)描述,其元素入g代表從輸入群 組IGi去往輸出分組OGj的分組個(gè)數(shù);到達(dá)第二級(jí)交換;f莫塊輸入端的流量分布情 況則用矩陣B (t)表示,其元素ia y代表到達(dá)中間線(xiàn)群組MGj去往輸出群組OGj 的分組數(shù)目,即 <formula>formula see original document page 14</formula>經(jīng)負(fù)載均衡處理,這里用變換矩陣7l《t)來(lái)表示此過(guò)程
<formula>formula see original document page 14</formula>于是<formula>formula see original document page 14</formula>顯然B(t)的流量分布是均勻的。根據(jù)接入控制條件,對(duì)任意i,j, G/M。 考慮最壞的情況,即對(duì)所有的中間線(xiàn)群組,到達(dá)流量滿(mǎn)足^,j二G/M??紤]一個(gè) 一般的多徑自路由結(jié)構(gòu),由于網(wǎng)絡(luò)流量是均勻的,所以對(duì)結(jié)構(gòu)中的任意集線(xiàn)器 而言,其上、下輸出群組的流量恰為兩輸入群組流量的一半。先考慮第l內(nèi)部 級(jí)的集線(xiàn)器,,li殳兩輸入端總流量分別為Ia,Ib ,由于Mi廣G/M,因此
<formula>formula see original document page 14</formula>其中LG (k)為第二級(jí)交換模塊第一內(nèi)部級(jí)集線(xiàn)器某輸出群組k上的分組數(shù)。 同理,第二內(nèi)部級(jí)的集線(xiàn)器的輸入來(lái)自第一內(nèi)部級(jí)的2個(gè)輸出群組;由于上一
級(jí)輸出分組數(shù)都為G,未超負(fù)荷,而流量又是均勻的,因此第二內(nèi)部級(jí)上的集 線(xiàn)器輸出線(xiàn)群組分組數(shù)也都為G,不會(huì)超荷。
依此類(lèi)推,第二級(jí)交換模塊中任意線(xiàn)群組上的分組數(shù)都是G,都不會(huì)超負(fù) 荷。于是對(duì)于一般情況,即k^G/M,第二級(jí)交換模塊的所有內(nèi)部級(jí)的輸出群 組分組數(shù)都小于等于G,因此接入控制條件可以滿(mǎn)足交換結(jié)構(gòu)內(nèi)部無(wú)阻塞,可 以提供100%的吞吐率。
上面已經(jīng)表明了接入控制過(guò)程非常的簡(jiǎn)單,基于自路由集線(xiàn)器的多路徑 自路由交換結(jié)構(gòu)的接入控制問(wèn)題,它不可以滿(mǎn)足第二個(gè)數(shù)據(jù)流的請(qǐng)求。但是基 于自路由集線(xiàn)器的負(fù)載均衡電路式分組交換結(jié)構(gòu)完全可以滿(mǎn)足第二個(gè)數(shù)據(jù)流 的請(qǐng)求,因?yàn)榉衔覀兊慕尤肟刂茥l件。既然可以滿(mǎn)足這個(gè)請(qǐng)求,那么便提高 了本發(fā)明實(shí)施例所述負(fù)載均衡電路式分組交換結(jié)構(gòu)的吞吐量,這也是負(fù)載均衡 交換結(jié)構(gòu)的優(yōu)勢(shì)之一。
本發(fā)明實(shí)施例中的交換結(jié)構(gòu)采用基于自路由集線(xiàn)器的分組交換結(jié)構(gòu),而這 種結(jié)構(gòu)可以遞歸構(gòu)造,于是這個(gè)負(fù)載均衡交換結(jié)構(gòu)的^l^莫不受限制。同時(shí)該交 換結(jié)構(gòu)是完全分布式的自路由,也為該負(fù)載均衡交換結(jié)構(gòu)的大規(guī)模實(shí)現(xiàn)提供了 技術(shù)和物理上的勤出。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā) 明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā) 明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1、一種負(fù)載均衡電路式分組交換結(jié)構(gòu)的構(gòu)造方法,其特征在于,包括將基于自路由集線(xiàn)器的負(fù)載均衡分組交換結(jié)構(gòu)分成具有完成負(fù)載均衡功能的第一級(jí)交換模塊和具有完成分組數(shù)據(jù)自路由轉(zhuǎn)發(fā)功能的第二級(jí)交換模塊;在所述第一級(jí)交換模塊輸入端前設(shè)置虛擬輸出群組隊(duì)列,在所述第二級(jí)交換模塊輸出端后設(shè)置重排序緩存,所述虛擬輸出群組隊(duì)列,用于存儲(chǔ)帶有自路由地址信息的分組數(shù)據(jù)塊,所述重排序緩存,用于將屬于同一個(gè)輸入群組的分組數(shù)據(jù)塊按自路由地址信息排列,以便后續(xù)處理;所述虛擬輸出群組隊(duì)列存儲(chǔ)的分組數(shù)據(jù)發(fā)送到第一級(jí)交換前,組合成預(yù)置長(zhǎng)度的數(shù)據(jù)塊,然后被分割成等長(zhǎng)的數(shù)據(jù)片,同時(shí)在數(shù)據(jù)片上添加用于實(shí)現(xiàn)自路由的自路由標(biāo)簽;擁有自路由地址信息的數(shù)據(jù)片經(jīng)第一級(jí)交換模塊和第二級(jí)交換模塊傳輸后到達(dá)目的輸出端口的重排序緩存,根據(jù)數(shù)據(jù)片攜帶的自路由標(biāo)簽,把數(shù)據(jù)片重新組合成所述虛擬輸出群組隊(duì)列組合成的數(shù)據(jù)塊。
2、 根據(jù)權(quán)利要求l所述的方法,其特征在于,在所述第一級(jí)交換;漠塊和第 二級(jí)交換模塊之間設(shè)置中間線(xiàn)群組。
3、 根據(jù)權(quán)利要求l所述的方法,其特征在于,任意接入控制時(shí)隙內(nèi),輸入 群組IGi去往輸出群組OGj的分組個(gè)數(shù)記為入ij,那么,當(dāng)一個(gè)連接請(qǐng)求到達(dá)輸 入群組IGi時(shí),根據(jù)banyan網(wǎng)絡(luò)路徑唯一性,計(jì)算出數(shù)據(jù)分組要發(fā)送到的輸出 群組OGj ,把帶寬請(qǐng)求轉(zhuǎn)換成相應(yīng)的值加到入y上,如果人g滿(mǎn)足接入控制條件XA盧G且S/,盧,i,j"…M那么所述連接請(qǐng)求被允許建立,否則拒絕建立,其中,G代表群組的大小。
4、 一種負(fù)載均衡電路式分組交換結(jié)構(gòu),包括基于自路由集線(xiàn)器用于完成 負(fù)載均衡功能的第一級(jí)交換模塊和用于完成分組數(shù)據(jù)自路由轉(zhuǎn)發(fā)功能的第二 級(jí)交換模塊,其特征在于,在所述第一級(jí)交換模塊輸入端前設(shè)置虛擬輸出群組 隊(duì)列,在所述第二級(jí)交換模塊輸出端后設(shè)置重排序緩存,所述虛擬輸出群組隊(duì) 列,用于存儲(chǔ)帶有自路由地址信息的分組數(shù)據(jù)塊,所述重排序緩存,用于將屬 :同一個(gè)輸入群組的分組數(shù)據(jù)塊按自路由地址信息排列,以便后續(xù)處理,所述 第 一級(jí)交換和第二級(jí)交換之間為中間線(xiàn)群組連接。
全文摘要
本發(fā)明提供了一種負(fù)載均衡電路式分組交換結(jié)構(gòu)及其構(gòu)建方法,其中所述方法包括將基于自路由集線(xiàn)器的負(fù)載均衡分組交換結(jié)構(gòu)分成第一級(jí)交換模塊和第二級(jí)交換模塊;在第一級(jí)交換模塊輸入端前設(shè)置虛擬輸出群組隊(duì)列,在第二級(jí)交換模塊輸出端后設(shè)置重排序緩存,在分組數(shù)據(jù)發(fā)送到第一級(jí)交換前,將分組數(shù)據(jù)組合成預(yù)置長(zhǎng)度的數(shù)據(jù)塊,再分割成等長(zhǎng)的數(shù)據(jù)片,添加自路由標(biāo)簽,到達(dá)重排序緩存后,把數(shù)據(jù)片重新組合成所述數(shù)據(jù)塊。本發(fā)明所述的一種負(fù)載均衡電路式分組交換結(jié)構(gòu)及其構(gòu)造方法,解決了電路式交換結(jié)構(gòu)能夠接入數(shù)據(jù)流量分布不均的問(wèn)題,提高了電路式交換結(jié)構(gòu)的吞吐量。
文檔編號(hào)H04L12/56GK101388847SQ20081021686
公開(kāi)日2009年3月18日 申請(qǐng)日期2008年10月17日 優(yōu)先權(quán)日2008年10月17日
發(fā)明者鵬 伊, 安輝耀, 揮 李, 汪斌強(qiáng), 王秉睿, 凱 雷 申請(qǐng)人:北京大學(xué)深圳研究生院;上海北京大學(xué)微電子研究院;李 揮