專利名稱:交換式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)及數(shù)據(jù)包轉(zhuǎn)發(fā)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種交換式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)及數(shù)據(jù)包轉(zhuǎn)發(fā)方法。
背景技術(shù):
數(shù)據(jù)中心是企業(yè)各種應(yīng)用服務(wù)的提供中心,是對(duì)數(shù)據(jù)進(jìn)行運(yùn)算、交換以及存儲(chǔ)的中心。它結(jié)合了先進(jìn)的網(wǎng)絡(luò)技術(shù)和存儲(chǔ)技術(shù),承載了網(wǎng)絡(luò)中80%以上的服務(wù)請(qǐng)求和數(shù)據(jù)存 儲(chǔ)量,為客戶業(yè)務(wù)體系的健康運(yùn)轉(zhuǎn)提供了服務(wù)和運(yùn)行平臺(tái)。隨著數(shù)據(jù)中心規(guī)模的日益擴(kuò)大,現(xiàn)有的樹(shù)形網(wǎng)絡(luò)拓?fù)浼軜?gòu)在網(wǎng)絡(luò)核心層不可避免地會(huì)出現(xiàn)帶寬瓶頸問(wèn)題,導(dǎo)致網(wǎng)絡(luò)在傳輸時(shí)產(chǎn)生延遲、傳輸效率等方面整體性能的下降。為了解決網(wǎng)絡(luò)核心層帶寬通信的瓶頸問(wèn)題,目前主要采用Clos網(wǎng)絡(luò)或者胖樹(shù)(Fat Tree)拓?fù)涞男问浇M成無(wú)阻塞網(wǎng)絡(luò),并根據(jù)拓?fù)浣Y(jié)構(gòu)的特點(diǎn),提出相應(yīng)的路由/交換方法,比如=FatTree結(jié)構(gòu)、Clos網(wǎng)絡(luò)、多分支胖樹(shù)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)以及交換式矩陣網(wǎng)絡(luò)結(jié)構(gòu)等。與其他網(wǎng)絡(luò)結(jié)構(gòu)相比,交換式矩陣網(wǎng)絡(luò)具備結(jié)構(gòu)簡(jiǎn)單、配置靈活、易于維護(hù)、擴(kuò)展性好和路由算法簡(jiǎn)單的優(yōu)點(diǎn)。目前的交換式矩陣網(wǎng)絡(luò)的路由算法中,一般采用三層交換機(jī)作為行首和列首接入交換機(jī),這樣在對(duì)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)的過(guò)程中,在行首和列首需要對(duì)數(shù)據(jù)包進(jìn)行網(wǎng)絡(luò)層的解析處理,從而降低了數(shù)據(jù)包轉(zhuǎn)發(fā)的效率,也增加了數(shù)據(jù)包轉(zhuǎn)發(fā)的復(fù)雜性。針對(duì)上述的問(wèn)題,目前尚未提出有效的解決方案。
發(fā)明內(nèi)容
本發(fā)明提供了一種交換式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)及數(shù)據(jù)包轉(zhuǎn)發(fā)方法,以至少解決現(xiàn)有技術(shù)中采用三層交換機(jī)作為行首和列首接入交換機(jī)而導(dǎo)致的數(shù)據(jù)包的轉(zhuǎn)發(fā)效率降低,數(shù)據(jù)包轉(zhuǎn)發(fā)的復(fù)雜性增加的技術(shù)問(wèn)題。根據(jù)本發(fā)明的一個(gè)方面,提供了一種交換式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng),包括交換機(jī)和多個(gè)主機(jī)服務(wù)器,交換機(jī)包括行首交換機(jī)、列首交換機(jī)以及接入交換機(jī);其中,行首交換機(jī)與列首交換機(jī)是二層交換機(jī),行首交換機(jī)用于將與行首交換機(jī)位于同一行的接入交換機(jī)連接在一起,列首交換機(jī)用于將與列首交換機(jī)位于同一列的接入交換機(jī)連接在一起;接入交換機(jī)為三層交換機(jī),用于將一個(gè)或多個(gè)主機(jī)服務(wù)器接入網(wǎng)絡(luò)中。優(yōu)選地,每一行設(shè)置多個(gè)行首交換機(jī)和/或每一列設(shè)置多個(gè)列首交換機(jī)。優(yōu)選地,位于同一行的多個(gè)行首交換機(jī)通過(guò)鏈路聚合技術(shù)聚合成一個(gè)虛擬交換機(jī),位于同一列的多個(gè)列首交換機(jī)通過(guò)鏈路聚合技術(shù)聚合成一個(gè)虛擬交換機(jī)。根據(jù)本發(fā)明的另一方面,提供了一種上述的交換式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)的數(shù)據(jù)包轉(zhuǎn)發(fā)方法,包括接入交換機(jī)確定接收到的需要轉(zhuǎn)發(fā)的數(shù)據(jù)包的目的主機(jī)是否在與接入交換機(jī)所對(duì)應(yīng)的子網(wǎng)中;如果不是,則接入交換機(jī)通過(guò)與接入交換機(jī)位于同一行或者同一列的接入交換機(jī)對(duì)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)。
優(yōu)選地,接入交換機(jī)存儲(chǔ)有網(wǎng)絡(luò)系統(tǒng)中各個(gè)接入交換機(jī)的鏈路狀態(tài),其中,鏈路狀態(tài)用于指示與該接入交換機(jī)位于同一行或者同一列的接入交換機(jī)的數(shù)據(jù)包是否可以直接被轉(zhuǎn)發(fā)到該接入交換機(jī)。優(yōu)選地,接入交換機(jī)通過(guò)與接入交換機(jī)位于同一行或者同一列的接入交換機(jī)對(duì)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)包括接入交換機(jī)確定通過(guò)位于同一行或者同一列的接入交換機(jī)將數(shù)據(jù)包轉(zhuǎn)發(fā)到目的主機(jī)所需經(jīng)過(guò)的路徑;通過(guò)確定的路徑將數(shù)據(jù)包轉(zhuǎn)發(fā)到目的主機(jī)。優(yōu)選地,接入交換機(jī)確定通過(guò)位于同一行或者同一列的接入交換機(jī)將數(shù)據(jù)包轉(zhuǎn)發(fā)到目的主機(jī)所需經(jīng)過(guò)的路徑包括如果與接入交換機(jī)位于同一行或者同一列的接入交換機(jī)存在行不可達(dá)或者列不可達(dá)的接入交換機(jī);則接入交換機(jī)重新確定將數(shù)據(jù)包轉(zhuǎn)發(fā)到目的主機(jī)所經(jīng)過(guò)的路徑。優(yōu)選地,上述方法還包括當(dāng)接入交換機(jī)確定自身的鏈路狀態(tài)發(fā)生變化時(shí),接入交換機(jī)將鏈路狀態(tài)廣播給與該接入交換位于同一行或者同一列的接入交換機(jī);位于同一行或 者同一列的接入交換機(jī)將接收到的鏈路狀態(tài)與自身存儲(chǔ)的對(duì)應(yīng)于該接入交換機(jī)的鏈路狀態(tài)進(jìn)行比較,如果不相同,則更新本地存儲(chǔ)的對(duì)應(yīng)于該接入交換機(jī)的鏈路狀態(tài)。優(yōu)選地,接入交換機(jī)通過(guò)接收到的PDU狀態(tài)報(bào)文確定自身的鏈路狀態(tài)。優(yōu)選地,在位于同一行或者同一列的接入交換機(jī)將接收到的鏈路狀態(tài)與自身存儲(chǔ)的對(duì)應(yīng)于該接入交換機(jī)的鏈路狀態(tài)進(jìn)行比較的過(guò)程中,上述方法還包括位于同一行或者同一列的接入交換機(jī)將接收到的鏈路狀態(tài)廣播給與自身位于同一行或者同一列的接入交換機(jī)。在本發(fā)明中,采用二層交換機(jī)作為行首和列首的交換機(jī),從而在對(duì)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)的過(guò)程中,在行首和列首交換機(jī)中可以直接通過(guò)鏈路層進(jìn)行轉(zhuǎn)發(fā)而不需要對(duì)數(shù)據(jù)包進(jìn)行網(wǎng)絡(luò)層的解析,解決了現(xiàn)有技術(shù)中采用三層交換機(jī)作為行首和列首接入交換機(jī)而導(dǎo)致的數(shù)據(jù)包的轉(zhuǎn)發(fā)效率降低,數(shù)據(jù)包轉(zhuǎn)發(fā)的復(fù)雜性增加的技術(shù)問(wèn)題,從而達(dá)到了簡(jiǎn)化路由選擇的過(guò)程,提高數(shù)據(jù)包轉(zhuǎn)發(fā)的效率的技術(shù)效果。
此處所說(shuō)明的附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說(shuō)明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中圖I是根據(jù)本發(fā)明實(shí)施例的交換式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)的一種優(yōu)選示意圖;圖2是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)包轉(zhuǎn)發(fā)方法的一種優(yōu)選流程圖;圖3是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)包轉(zhuǎn)發(fā)方法的另一種優(yōu)選流程圖;圖4是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)包轉(zhuǎn)發(fā)方法的又一種優(yōu)選流程圖。
具體實(shí)施例方式下文中將參考附圖并結(jié)合實(shí)施例來(lái)詳細(xì)說(shuō)明本發(fā)明。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。本發(fā)明實(shí)施例提供了一種交換式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng),如圖I所示,包括交換機(jī)和多個(gè)主機(jī)服務(wù)器,上述的交換機(jī)包括行首交換機(jī)、列首交換機(jī)以及接入交換機(jī);其中,
行首交換機(jī)與列首交換機(jī)是二層交換機(jī),行首交換機(jī)用于將與行首交換機(jī)位于同一行的接入交換機(jī)連接在一起,列首交換機(jī)用于將與列首交換機(jī)位于同一列的接入交換機(jī)連接在一起;接入交換機(jī)為三層交換機(jī),用于將一個(gè)或多個(gè)主機(jī)服務(wù)器接入網(wǎng)絡(luò)中。在上述優(yōu)選實(shí)施方式中,采用二層交換機(jī)作為行首和列首的交換機(jī),從而在對(duì)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)的過(guò)程中,在行首和列首交換機(jī)中可以直接通過(guò)鏈路層進(jìn)行轉(zhuǎn)發(fā)而不需要對(duì)數(shù)據(jù)包進(jìn)行網(wǎng)絡(luò)層的解析,解決了現(xiàn)有技術(shù)中采用三層交換機(jī)作為行首和列首接入交換機(jī)而導(dǎo)致的數(shù)據(jù)包的轉(zhuǎn)發(fā)效率降低,數(shù)據(jù)包轉(zhuǎn)發(fā)的復(fù)雜性增加的技術(shù)問(wèn)題,從而達(dá)到了簡(jiǎn)化路由選擇的過(guò)程,提高數(shù)據(jù)包轉(zhuǎn)發(fā)的效率的技術(shù)效果??紤]到在實(shí)際的應(yīng)用中,某些交換機(jī)會(huì)出現(xiàn)故障,為了減少因交換機(jī)出現(xiàn)故障而造成的數(shù)據(jù)包難以被正常轉(zhuǎn)發(fā)的問(wèn)題,可以設(shè)置多個(gè)行首或者列首交換機(jī)。在一個(gè)優(yōu)選實(shí)施方式中,每一行設(shè)置多個(gè)行首交換機(jī)和/或每一列設(shè)置多個(gè)列首交換機(jī)。 對(duì)于上述的多個(gè)行首列首的交換機(jī)可以采用鏈路聚合技術(shù)聚合為一個(gè)虛擬交換機(jī),即,將對(duì)應(yīng)于每一行的行首交換機(jī)作為一個(gè)交換機(jī)使用,或者是將每一列的多個(gè)列首交換機(jī)作為一個(gè)交換機(jī)使用,從而可以避免因一個(gè)交換機(jī)出現(xiàn)問(wèn)題而導(dǎo)致的數(shù)據(jù)轉(zhuǎn)發(fā)異常,也提高了數(shù)據(jù)包轉(zhuǎn)發(fā)的能力?;谏鲜龅慕粨Q式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng),本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)包轉(zhuǎn)發(fā)方法,如圖2所示,包括以下步驟步驟S202 :接入交換機(jī)確定接收到的需要轉(zhuǎn)發(fā)的數(shù)據(jù)包的目的主機(jī)是否在與接入交換機(jī)所對(duì)應(yīng)的子網(wǎng)中;步驟S204 :如果不是,則接入交換機(jī)通過(guò)與接入交換機(jī)位于同一行或者同一列的接入交換機(jī)對(duì)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)。在上述優(yōu)選實(shí)施方式中,通過(guò)本發(fā)明所提供的交互式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)在接收到需要進(jìn)行轉(zhuǎn)發(fā)的時(shí)候,直接通過(guò)位于同一行或列的接入交換機(jī)作為中間設(shè)備進(jìn)行轉(zhuǎn)發(fā)即可,在行首和列首的交換機(jī)處將不要對(duì)數(shù)據(jù)包進(jìn)行解析,從而解決了現(xiàn)有技術(shù)中采用三層交換機(jī)作為行首和列首接入交換機(jī)而導(dǎo)致的數(shù)據(jù)包的轉(zhuǎn)發(fā)效率降低,數(shù)據(jù)包轉(zhuǎn)發(fā)的復(fù)雜性增加的技術(shù)問(wèn)題,從而達(dá)到了簡(jiǎn)化路由選擇的過(guò)程,提高數(shù)據(jù)包轉(zhuǎn)發(fā)的效率的技術(shù)效果。在網(wǎng)絡(luò)系統(tǒng)中的每個(gè)接入交換機(jī)都可能出現(xiàn)故障,為了保證可以知道系統(tǒng)中每個(gè)接入交換機(jī)的鏈路狀態(tài),可以在每個(gè)接入交換機(jī)中存儲(chǔ)系統(tǒng)中各個(gè)接入交換機(jī)的鏈路狀態(tài),對(duì)于設(shè)定的鏈路狀態(tài)主要有行不可達(dá)、列不可達(dá)或者是行列都不可達(dá),還有就是狀態(tài)正常即行列都可達(dá)。其中,列不可達(dá)就指代當(dāng)該接入交換機(jī)作為下一跳地址或者是目的主機(jī)所對(duì)應(yīng)的接入交換機(jī)時(shí),數(shù)據(jù)包無(wú)法通過(guò)與其在同一列的接入交換機(jī)直接轉(zhuǎn)發(fā)給該接入交換機(jī)。同理,行不可達(dá)也是類似的意思,在此不再贅述。在一個(gè)優(yōu)選實(shí)施方式中,接入交換機(jī)存儲(chǔ)有網(wǎng)絡(luò)系統(tǒng)中各個(gè)接入交換機(jī)的鏈路狀態(tài),其中,鏈路狀態(tài)用于指示與該接入交換機(jī)位于同一行或者同一列的接入交換機(jī)的數(shù)據(jù)包是否可以直接被轉(zhuǎn)發(fā)到該接入交換機(jī)。對(duì)于處于同一子網(wǎng)的目的主機(jī),可以直接通過(guò)二層轉(zhuǎn)發(fā)協(xié)議進(jìn)行數(shù)據(jù)包的轉(zhuǎn)發(fā),對(duì)于不處于同一子網(wǎng)的目的主機(jī)則需要通過(guò)位于同一行或者同一列的接入交換機(jī)進(jìn)行中間轉(zhuǎn)發(fā)從而實(shí)現(xiàn)將數(shù)據(jù)包轉(zhuǎn)發(fā)到目的主機(jī)的目的。這樣在轉(zhuǎn)發(fā)數(shù)據(jù)包前,就需要確定對(duì)該數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)的路由,在一個(gè)優(yōu)選實(shí)施方式中,接入交換機(jī)通過(guò)與接入交換機(jī)位于同一行或者同一列的接入交換機(jī)對(duì)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)的步驟如圖3所示,包括以下步驟步驟S302 :接入交換機(jī)確定通過(guò)位于同一行或者同一列的接入交換機(jī)將數(shù)據(jù)包轉(zhuǎn)發(fā)到目的主機(jī)所需經(jīng)過(guò)的路徑;步驟S304 :通過(guò)確定的路徑將數(shù)據(jù)包轉(zhuǎn)發(fā)到目的主機(jī)。如果選擇的路徑中有行不可達(dá)或者是列不可達(dá)的接入交換機(jī),則需要對(duì)這些交換機(jī)的轉(zhuǎn)發(fā)理由進(jìn)行擴(kuò)展,以使得可以通過(guò)其它路徑對(duì)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā),在一個(gè)優(yōu)選實(shí)施方式中,接入交換機(jī)確定通過(guò)位于同一行或者同一列的接入交換機(jī)將數(shù)據(jù)包轉(zhuǎn)發(fā)到目的主機(jī)所需經(jīng)過(guò)的路徑包括如果與接入交換機(jī)位于同一行或者同一列的接入交換機(jī)存在行不可達(dá)或者列不可達(dá)的接入交換機(jī);則接入交換機(jī)重新確定將數(shù)據(jù)包轉(zhuǎn)發(fā)到目的主機(jī)所經(jīng)過(guò)的路徑。對(duì)于位于該交換式矩陣拓?fù)浣Y(jié)構(gòu)的網(wǎng)絡(luò)系統(tǒng)中的各個(gè)接入交換機(jī)可以獲取到該系統(tǒng)中其他所有接入交換機(jī)的鏈路狀態(tài),這樣便可以及時(shí)判斷是否對(duì)應(yīng)的接入交換機(jī)處于正常狀態(tài)。在一個(gè)優(yōu)選實(shí)施方式中,如圖4所示,上述方法還包括 步驟S402 :當(dāng)接入交換機(jī)確定自身的鏈路狀態(tài)發(fā)生變化時(shí),接入交換機(jī)將鏈路狀態(tài)廣播給與該接入交換位于同一行或者同一列的接入交換機(jī);步驟S404:位于同一行或者同一列的接入交換機(jī)將接收到的鏈路狀態(tài)與自身存儲(chǔ)的對(duì)應(yīng)于該接入交換機(jī)的鏈路狀態(tài)進(jìn)行比較;步驟S406 :如果不相同,則更新本地存儲(chǔ)的對(duì)應(yīng)于該接入交換機(jī)的鏈路狀態(tài)。在上述實(shí)施方式中,就是采用當(dāng)接入交換機(jī)確定自身的鏈路狀態(tài)發(fā)生變化的情況下,就將自身的鏈路狀態(tài)廣播給和自己位于同一行或者同一列的接入交換機(jī)以使得其他接入交換機(jī)可以獲知自身鏈路狀態(tài)的一個(gè)變化情況。優(yōu)選地,接入交換機(jī)可以通過(guò)接收到的PDU狀態(tài)報(bào)文來(lái)確定自身的鏈路狀態(tài)。為了使得該接入交換機(jī)的鏈路狀態(tài)可以被全網(wǎng)的所有接入交換機(jī)獲知,在與該接入交換機(jī)位于同一行或者列的接入交換機(jī)獲知該接入交換機(jī)的鏈路狀態(tài)后,可以在將該鏈路狀態(tài)進(jìn)行廣播,以實(shí)現(xiàn)整個(gè)網(wǎng)絡(luò)的自學(xué)習(xí)。在一個(gè)優(yōu)選實(shí)施方式中,在位于同一行或者同一列的接入交換機(jī)將接收到的鏈路狀態(tài)與自身存儲(chǔ)的對(duì)應(yīng)于該接入交換機(jī)的鏈路狀態(tài)進(jìn)行比較的過(guò)程中,上述方法還包括位于同一行或者同一列的接入交換機(jī)將接收到的鏈路狀態(tài)廣播給與自身位于同一行或者同一列的接入交換機(jī)。本發(fā)明實(shí)施例還提供了一下具體的實(shí)施例來(lái)對(duì)上述發(fā)明進(jìn)行具體的描述。該發(fā)明的具體思想如下在本發(fā)明實(shí)施例所提供的方案中,可以對(duì)因?yàn)楣收纤绊懙慕尤虢粨Q機(jī)的路由路徑進(jìn)行重新計(jì)算,通過(guò)這種方式可以充分發(fā)揮交換式矩陣網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的特點(diǎn)和優(yōu)勢(shì),以解決數(shù)據(jù)中心網(wǎng)絡(luò)中的通信瓶頸問(wèn)題,同時(shí)路由算法高效簡(jiǎn)單,并具備很好的容錯(cuò)性。該路由算法所基于的交換式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)主要包括交換機(jī)和服務(wù)器兩類設(shè)備,其中,交換機(jī)包括行首交換機(jī)、列首交換機(jī)以及呈矩陣排列的接入交換機(jī)。矩陣的每行行首至少部署一個(gè)行首交換機(jī),每列列首至少部署一個(gè)列首交換機(jī),服務(wù)器(即主機(jī))與接入交換機(jī)相連接,每個(gè)接入交換機(jī)與其所在行的所有行首交換機(jī)及其所在列的所有列首交換機(jī)相連接,任意行首交換機(jī)和列首交換機(jī)之間、以及各接入交換機(jī)之間不直接相連。
同時(shí),在本優(yōu)選實(shí)施方式中,行首交換機(jī)和列首交換機(jī)為二層交換機(jī),只需要具備二層交換功能,不需要三層路由功能,同時(shí),位于同一行或位于同一列的行首或列首交換機(jī)采用設(shè)備和鏈路聚合技術(shù)組成一臺(tái)虛擬交換機(jī)。在該網(wǎng)絡(luò)結(jié)構(gòu)中,所有網(wǎng)絡(luò)設(shè)備和服務(wù)器都可以按照其在網(wǎng)絡(luò)中的位置配置IP地址。第i行第j列的接入交換機(jī)可以簡(jiǎn)記為A (i,j),其IP地址配置為10. i. j. I。連接到A (i,j)的服務(wù)器簡(jiǎn)記為H (i,j,x),其IP地址配置為10. i. j.x,其中,l〈x〈255。行首和和列首交換機(jī)作為二層交換機(jī),不需要為其配置IP地址。 本發(fā)明的數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)的路由功能完全由接入交換機(jī)提供,路由算法主要包括兩部分一個(gè)是基本路由算法,另一個(gè)是擴(kuò)展的路由算法。在基本路由算法中,不考慮網(wǎng)絡(luò)故障的情況,按照基本路由算法,接入交換機(jī)按照如下方式轉(zhuǎn)發(fā)數(shù)據(jù)包
I)當(dāng)目的主機(jī)在本子網(wǎng)內(nèi)時(shí),A (i,j)收到目的主機(jī)為H (i,j,k)的數(shù)據(jù)包,然
后直接通過(guò)二層交換轉(zhuǎn)發(fā)給目的地址;2)當(dāng)目的主機(jī)與A (i,j)在同一行內(nèi)時(shí),A (i,j)收到目的主機(jī)為H (i,j’,k)的數(shù)據(jù)包,A (i,j)將該數(shù)據(jù)包轉(zhuǎn)發(fā)給下一跳路由器A (i,j’);3)當(dāng)目的主機(jī)與A (i,j)在同一列內(nèi)時(shí),A (i,j)收到目的主機(jī)為H (i’,j, k)的數(shù)據(jù)包,A (i,j)將該數(shù)據(jù)包轉(zhuǎn)發(fā)給下一跳路由器A (i’,j);4)當(dāng)目的主機(jī)與A (i,j)屬于不同行不同列時(shí),A (i,j)收到主機(jī)地址為H (i’,j’,k)的數(shù)據(jù)包,A (i, j)將該數(shù)據(jù)包轉(zhuǎn)發(fā)給A (i, j’)或A (i’,j)。如果網(wǎng)絡(luò)中某些鏈路和節(jié)點(diǎn)出現(xiàn)故障時(shí),按照上述規(guī)則轉(zhuǎn)發(fā)數(shù)據(jù)包就有可能碰到故障鏈路或節(jié)點(diǎn),從而導(dǎo)致整個(gè)通信過(guò)程失敗。在節(jié)點(diǎn)A (i,j)或連接A (i,j)的鏈路出現(xiàn)故障時(shí),就需要采用擴(kuò)展路由算法重新計(jì)算如下路由,主要有以下幾種情況I)對(duì)于同行的節(jié)點(diǎn)A (i,j’)如果節(jié)點(diǎn)A (i,j)行不可達(dá),則重新計(jì)算目的地址為10. i. j. 0/24的路由表項(xiàng);如果節(jié)點(diǎn)A (k,j’)部分可達(dá)或不可達(dá),則重新計(jì)算目的地址為10. k. j. 0/24的路由表項(xiàng)。2)對(duì)于同列的節(jié)點(diǎn)A如果節(jié)點(diǎn)A (i,j)列不可達(dá),則重新計(jì)算目的地址為10. i. j. 0/24的路由表項(xiàng);對(duì)于同列的節(jié)點(diǎn)A (i’,j),如果節(jié)點(diǎn)A (i’,k)部分可達(dá)或不可達(dá),則重新計(jì)算目的地址為10. i.k. 0/24的路由表項(xiàng)。3)對(duì)于不同行列的節(jié)點(diǎn)A (i’,j’),如果節(jié)點(diǎn)A (i,j)部分可達(dá),則重新計(jì)算目的地址為10. i. j. 0/24的路由表項(xiàng)。在重新計(jì)算路由表項(xiàng)的過(guò)程中,可以采用A*算法來(lái)計(jì)算,A*算法的估價(jià)函數(shù)f(n)=g (n)+h (n),其中,路徑代價(jià)為從當(dāng)前的接入交換機(jī)卿,源節(jié)點(diǎn))開(kāi)始到目的節(jié)點(diǎn)需要經(jīng)過(guò)的接入交換機(jī)數(shù)量。其中,f (n)是從源節(jié)點(diǎn)經(jīng)由節(jié)點(diǎn)n到目的節(jié)點(diǎn)的估價(jià)函數(shù),g (n)是從源節(jié)點(diǎn)到節(jié)點(diǎn)n的實(shí)際代價(jià),h (n)是從n到目的節(jié)點(diǎn)最佳路徑的估計(jì)代價(jià),對(duì)于指定的節(jié)點(diǎn),可以選擇同行和同列的其他節(jié)點(diǎn)作為其相鄰節(jié)點(diǎn)(子節(jié)點(diǎn)),估價(jià)函數(shù)h (n)根據(jù)n和目的節(jié)點(diǎn)的相對(duì)位置關(guān)系取值如下
|2,n和H的節(jié)點(diǎn)分屬于不同行列 [1, n和目的節(jié)點(diǎn)屬于網(wǎng)行或NJ列
為了計(jì)算路由,每個(gè)接入交換機(jī)都需要獲得全網(wǎng)其他接入交換機(jī)的鏈路狀態(tài)(包括正常狀態(tài)或故障狀態(tài))。因此,每個(gè)接入交換機(jī)需要把自己的狀態(tài)廣播給本行和本列其他接入交換機(jī),任一接入交換機(jī)在收到本行/列其他接入交換機(jī)的狀態(tài)報(bào)文后,比對(duì)保存在本地該節(jié)點(diǎn)的狀態(tài),如果狀態(tài)改變則更新?tīng)顟B(tài)矩陣,同時(shí)廣播到其自身所在的行或者列,優(yōu)選地,從行收到的報(bào)文可以只廣播到列,從列收到的報(bào)文可以只廣播到行。通過(guò)本發(fā)明所提供的上述優(yōu)選的實(shí)施方式行首和列首交換機(jī)采用二層交換機(jī),簡(jiǎn)化了路由選擇過(guò)程,基本路由算法更簡(jiǎn)單;采用交換機(jī)和鏈路聚合技術(shù),支持鏈路層等價(jià)多路徑路由(Equal-Cost Multipath Routing,簡(jiǎn)稱為ECMP),具備二層鏈路負(fù)載均衡能力;采用擴(kuò)展的路由算法解決了網(wǎng)絡(luò)出現(xiàn)故障時(shí)的路由問(wèn)題,具有良好的容錯(cuò)性能;和一般路由算法(0SPF,SIP)相比,通過(guò)節(jié)點(diǎn)鏈路狀態(tài)的學(xué)習(xí)能力充分利用了交換式矩陣的拓?fù)浣Y(jié)構(gòu)特點(diǎn),使得需要交換的報(bào)文數(shù)量更少,收斂速度更快?;谏鲜龅陌l(fā)明思想,本發(fā)明實(shí)施例還給出了具體的實(shí)現(xiàn)方式,基于上述交換式的矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng),可以采用規(guī)則化的拓?fù)浣Y(jié)構(gòu),并按照一定的規(guī)則進(jìn)行編址。
數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)由一組行首交換機(jī)、列首交換機(jī)、接入交換機(jī)(編址為10. i. j. I)和連接到接入交換機(jī)上的各種服務(wù)器(編址為10. i. j. X)構(gòu)成,其中,1〈X〈255,i為接入交換機(jī)或服務(wù)器所在行的行號(hào),j為接入交換機(jī)或服務(wù)器所在列的列號(hào)。所有設(shè)備的子網(wǎng)掩碼均設(shè)為255. 255. 255. O。為了完成路由轉(zhuǎn)發(fā)功能,在每個(gè)接入交換機(jī)上都維護(hù)一張路由表,數(shù)據(jù)分組根據(jù)路由表進(jìn)行轉(zhuǎn)發(fā)。同行或同列的接入交換機(jī)之間互相交換信息(包括本機(jī)IP地址和MAC地址),并學(xué)習(xí)鄰接關(guān)系和設(shè)備或者鏈路的狀態(tài),從而獲得全網(wǎng)的拓?fù)湫畔?,進(jìn)一步計(jì)算出路由表。在本優(yōu)選實(shí)施方式中,數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)由交換機(jī)和服務(wù)器兩類設(shè)備組成。交換機(jī)設(shè)備提供二層(鏈路層)和三層(網(wǎng)絡(luò)層)網(wǎng)絡(luò)交換功能,服務(wù)器設(shè)備提供數(shù)據(jù)運(yùn)算和存儲(chǔ)服務(wù)。其中,交換機(jī)又分為三種類型,稱為行首交換機(jī)、列首交換機(jī)和接入交換機(jī)。行首交換機(jī)和列首交換機(jī)二層交換機(jī),負(fù)責(zé)把接入交換機(jī)連接在一起;接入交換機(jī)屬于三層交換機(jī),負(fù)責(zé)路由和把服務(wù)器接入到網(wǎng)絡(luò)中。行首交換機(jī)、列首交換機(jī)和接入交換機(jī)連接在一起構(gòu)成了交換式矩陣拓?fù)浣Y(jié)構(gòu)。通常情況下,為了避免通信瓶頸和提高網(wǎng)絡(luò)可靠性,每一行或者列可以配置多個(gè)行首或者列首交換機(jī),接入交換機(jī)連接到本行或者本列的所有行首或者列首交換機(jī)上。同行或者同列的行首或者列首交換機(jī)采用設(shè)備聚合技術(shù)組成一臺(tái)大的虛擬交換機(jī)。為了避免網(wǎng)絡(luò)阻塞,可以把接入交換機(jī)的帶寬均分成3部分,一部分帶寬用來(lái)連接行首交換機(jī),一部分用來(lái)連接列首交換機(jī),剩下的帶寬用來(lái)連接服務(wù)器。例如接入交換機(jī)采用48端口的三層交換機(jī),可以用16個(gè)端口連接行首交換機(jī),16個(gè)端口連接列首交換機(jī),剩下16個(gè)端口用于連接服務(wù)器。考慮到可以同時(shí)接入更多的服務(wù)器,也可以采用I :1 2的比例分配接入交換機(jī)的端口。對(duì)于目前市場(chǎng)上大多數(shù)的交換機(jī)產(chǎn)品,一般都可以提供更高帶寬的上聯(lián)端口用于交換機(jī)級(jí)聯(lián),上聯(lián)端口和下聯(lián)端口的帶寬比例一般為10 :1。例如一個(gè)40端口的千兆交換機(jī),一般同時(shí)提供4個(gè)萬(wàn)兆上聯(lián)端口,在交換機(jī)矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)中,也可以使用上聯(lián)端口連接行首和列首交換機(jī),下聯(lián)端口專門用來(lái)連接服務(wù)器。
在使用的過(guò)程中,如圖I所示,可以采用以下的網(wǎng)絡(luò)編址方案進(jìn)行編址接入交換機(jī)的IP地址配置為10. i. j. I,其中,i為接入交換機(jī)所在的行號(hào),j為接入交換機(jī)所在的列號(hào),0〈i <總行數(shù),0〈j <總列數(shù)。服務(wù)器的IP地址配置為10. i. j.X,其中,i為該服務(wù)器所在的行號(hào),j為該服務(wù)器所在的列號(hào),其中,0〈i <總行數(shù),0〈j <總列數(shù),1〈X〈255,在規(guī)定的這個(gè)范圍內(nèi),服務(wù)器的地址可以任意配置(其中,X可以任意指定)。在上述的編址方案中,可以根據(jù)設(shè)備的IP地址判斷出設(shè)備在網(wǎng)絡(luò)中的位置,這有助于簡(jiǎn)化路由方案。根據(jù)編址方案和設(shè)備之間的連接關(guān)系,可以看出每一個(gè)接入交換機(jī)和其連接的全部服務(wù)器構(gòu)成一個(gè)物理子網(wǎng),對(duì)應(yīng)的子網(wǎng)掩碼為255. 255. 255. O。通過(guò)上述的網(wǎng)絡(luò)架構(gòu)以及其對(duì)應(yīng)的編址方式進(jìn)行路由的方式如下 在本實(shí)施例提出的交換式矩陣網(wǎng)絡(luò)中,路由功能完全由接入交換機(jī)提供,路由算法包括兩部分基本路由算法和擴(kuò)展路由算法。其中,基本路由算法不考慮網(wǎng)絡(luò)故障的情況,也不需要獲得全網(wǎng)拓?fù)洌镁W(wǎng)絡(luò)拓?fù)涞囊?guī)則性計(jì)算出路由表項(xiàng)。擴(kuò)展路由算法是對(duì)基本路由算法的補(bǔ)充,主要解決網(wǎng)絡(luò)故障時(shí)的路由問(wèn)題。本發(fā)明采用標(biāo)準(zhǔn)的IP路由表實(shí)現(xiàn)路由轉(zhuǎn)發(fā)。路由表結(jié)構(gòu)如表I所示表I
權(quán)利要求
1.一種交換式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng),其特征在于,包括交換機(jī)和多個(gè)主機(jī)服務(wù)器,所述交換機(jī)包括行首交換機(jī)、列首交換機(jī)以及接入交換機(jī);其中, 所述行首交換機(jī)與所述列首交換機(jī)是二層交換機(jī),所述行首交換機(jī)用于將與所述行首交換機(jī)位于同一行的接入交換機(jī)連接在一起,所述列首交換機(jī)用于將與所述列首交換機(jī)位于同一列的接入交換機(jī)連接在一起; 所述接入交換機(jī)為三層交換機(jī),用于將一個(gè)或多個(gè)所述主機(jī)服務(wù)器接入網(wǎng)絡(luò)中。
2.根據(jù)權(quán)利要求I所述的系統(tǒng),其特征在于,每一行設(shè)置多個(gè)行首交換機(jī)和/或每一列設(shè)置多個(gè)列首交換機(jī)。
3.根據(jù)權(quán)利要求2所述的系統(tǒng),其特征在于,位于同一行的多個(gè)行首交換機(jī)通過(guò)鏈路聚合技術(shù)聚合成一個(gè)虛擬交換機(jī),位于同一列的多個(gè)列首交換機(jī)通過(guò)鏈路聚合技術(shù)聚合成一個(gè)虛擬交換機(jī)。
4.一種基于權(quán)利要求I至3中任一項(xiàng)所述的交換式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)的數(shù)據(jù)包轉(zhuǎn)發(fā)方法,其特征在于,包括 接入交換機(jī)確定接收到的需要轉(zhuǎn)發(fā)的數(shù)據(jù)包的目的主機(jī)是否在與所述接入交換機(jī)所對(duì)應(yīng)的子網(wǎng)中; 如果不是,則所述接入交換機(jī)通過(guò)與所述接入交換機(jī)位于同一行或者同一列的接入交換機(jī)對(duì)所述數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述接入交換機(jī)存儲(chǔ)有所述網(wǎng)絡(luò)系統(tǒng)中各個(gè)接入交換機(jī)的鏈路狀態(tài),其中,所述鏈路狀態(tài)用于指示與該接入交換機(jī)位于同一行或者同一列的接入交換機(jī)的數(shù)據(jù)包是否可以直接被轉(zhuǎn)發(fā)到該接入交換機(jī)。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述接入交換機(jī)通過(guò)與所述接入交換機(jī)位于同一行或者同一列的接入交換機(jī)對(duì)所述數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)包括 所述接入交換機(jī)確定通過(guò)位于同一行或者同一列的接入交換機(jī)將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到目的主機(jī)所需經(jīng)過(guò)的路徑; 通過(guò)確定的所述路徑將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到所述目的主機(jī)。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述接入交換機(jī)確定通過(guò)位于同一行或者同一列的接入交換機(jī)將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到目的主機(jī)所需經(jīng)過(guò)的路徑包括 如果與所述接入交換機(jī)位于同一行或者同一列的接入交換機(jī)存在行不可達(dá)或者列不可達(dá)的接入交換機(jī); 則所述接入交換機(jī)重新確定將所述數(shù)據(jù)包轉(zhuǎn)發(fā)到所述目的主機(jī)所經(jīng)過(guò)的路徑。
8.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述方法還包括 當(dāng)所述接入交換機(jī)確定自身的鏈路狀態(tài)發(fā)生變化時(shí),所述接入交換機(jī)將所述鏈路狀態(tài)廣播給與該接入交換位于同一行或者同一列的接入交換機(jī); 所述位于同一行或者同一列的接入交換機(jī)將接收到的鏈路狀態(tài)與自身存儲(chǔ)的對(duì)應(yīng)于該接入交換機(jī)的鏈路狀態(tài)進(jìn)行比較,如果不相同,則更新本地存儲(chǔ)的對(duì)應(yīng)于該接入交換機(jī)的鏈路狀態(tài)。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,所述接入交換機(jī)通過(guò)接收到的PDU狀態(tài)報(bào)文確定自身的鏈路狀態(tài)。
10.根據(jù)權(quán)利要求8所述的方法,其特征在于,在所述位于同一行或者同一列的接入交換機(jī)將接收到的鏈路狀態(tài)與自身存儲(chǔ)的對(duì)應(yīng)于該接入交換機(jī)的鏈路狀態(tài)進(jìn)行比較的過(guò)程中, 所述方法還包括 所述位于同一行或者同一列的接入交換機(jī)將接收到的鏈路狀態(tài)廣播給與自身位于同一行或者同一列的接入交換機(jī)。
全文摘要
本發(fā)明公開(kāi)了一種交換式矩陣數(shù)據(jù)中心網(wǎng)絡(luò)系統(tǒng)及數(shù)據(jù)包轉(zhuǎn)發(fā)方法,其中,該系統(tǒng)包括交換機(jī)和多個(gè)主機(jī)服務(wù)器,交換機(jī)包括行首交換機(jī)、列首交換機(jī)以及接入交換機(jī);其中,行首交換機(jī)與列首交換機(jī)是二層交換機(jī),行首交換機(jī)用于將與行首交換機(jī)位于同一行的接入交換機(jī)連接在一起,列首交換機(jī)用于將與列首交換機(jī)位于同一列的接入交換機(jī)連接在一起;接入交換機(jī)為三層交換機(jī),用于將一個(gè)或多個(gè)主機(jī)服務(wù)器接入網(wǎng)絡(luò)中。本發(fā)明解決了現(xiàn)有技術(shù)中采用三層交換機(jī)作為行首和列首接入交換機(jī)而導(dǎo)致的數(shù)據(jù)包的轉(zhuǎn)發(fā)效率降低,數(shù)據(jù)包轉(zhuǎn)發(fā)的復(fù)雜性增加的技術(shù)問(wèn)題,達(dá)到了簡(jiǎn)化路由選擇的過(guò)程,提高數(shù)據(jù)包轉(zhuǎn)發(fā)的效率的技術(shù)效果。
文檔編號(hào)H04L12/56GK102769569SQ20121025884
公開(kāi)日2012年11月7日 申請(qǐng)日期2012年7月25日 優(yōu)先權(quán)日2012年7月25日
發(fā)明者孫延濤, 羅鑒, 陳志偉 申請(qǐng)人:中興通訊股份有限公司