本發(fā)明涉及通信領(lǐng)域,具體而言,涉及數(shù)據(jù)發(fā)送方法及裝置。
背景技術(shù):
隨著網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,用戶對網(wǎng)絡(luò)質(zhì)量與網(wǎng)絡(luò)速度的要求越來越高,因此運營商對承載網(wǎng)的帶寬容量和系統(tǒng)穩(wěn)定性也提出了更高的要求。帶寬容量方面:傳統(tǒng)的路由器進(jìn)行帶寬升級時,大都需要改變路由器的核心交換架構(gòu),即換一臺新的路由器,而被替換下的來的舊設(shè)備無法利用或者是無法有效的利用。為滿足運營商兼容新舊設(shè)備降低成本要求,交換網(wǎng)系統(tǒng)需要兼容新老兩種鏈路速率的板卡。系統(tǒng)穩(wěn)定性方面:為滿足用戶各種需求會設(shè)計不同的板卡,各種板卡硬件設(shè)計上鏈路往往也會不對等;另外由于板材損耗以及外界環(huán)境影響,有些鏈路會因為信號變差而被關(guān)掉,這樣就也會造成一個交換板上芯片到兩個板卡的芯片鏈路不對等。以上所描述的新舊板卡鏈路速率不對等或鏈路數(shù)不對等的板卡之間發(fā)流,容易引起交換板上芯片擁塞,造成信息丟失而引起網(wǎng)絡(luò)質(zhì)量下降。為滿足運營商兼容新舊設(shè)備降低成本要求,同時提高系統(tǒng)的穩(wěn)定性,不同的設(shè)備廠商對系統(tǒng)穩(wěn)定性與兼容性都有各自的解決方案。
交換網(wǎng)系統(tǒng)一般都是由多個交換板以及多個線卡板或業(yè)務(wù)板(下文兩種都簡稱板卡)組成,兩個板卡之間的流量需要借助于板卡上的接入轉(zhuǎn)換(switchaccess,簡稱為sa)芯片和多個交換板上的多片轉(zhuǎn)換網(wǎng)(switchfabric,簡稱為sf)芯片來進(jìn)行轉(zhuǎn)接。目前大多數(shù)設(shè)備商大多采用傳統(tǒng)的權(quán)調(diào)度機(jī)制來實現(xiàn)板間流量調(diào)度,采用流量授權(quán)調(diào)度機(jī)制雖然能通過授權(quán)調(diào)度的方式調(diào)整源端板卡進(jìn)入所有sf的總流量,但無法區(qū)分控制進(jìn)入每一片sf的流量,當(dāng)某一片sf到源端板卡上的sa0芯片與目的板卡sa1芯片鏈路根數(shù)不均衡或鏈路速率不同的情況下,此片sf容易出現(xiàn)擁塞,造成信息丟失。圖1是根據(jù)相關(guān)技術(shù)中的交換網(wǎng)系統(tǒng)的示意圖,如圖1所示,sa0往sa1發(fā)流是通過四片sf進(jìn)行轉(zhuǎn)接,每片sf與每個sa有5條鏈路,假設(shè)每條鏈路的最大轉(zhuǎn)發(fā)性能是10g,則每個sa的最大轉(zhuǎn)發(fā)性能為5*4*10g=200g。只采用傳統(tǒng)的授權(quán)調(diào)度機(jī)制下,當(dāng)sf0與sa1鏈路由5根down為3根時,sa0到sa1的總流量會由200g降低為180g。由于入向sa0采用鏈路負(fù)荷分擔(dān)式進(jìn)行流量分配,則sa0每條鏈路的流量變?yōu)?80g/20=9g,sa0到sf0有五條鏈路,則進(jìn)入sf0的流量是45g。出向sa1與sf0有3根鏈路,其最大出向轉(zhuǎn)發(fā)能力最大為30g,因此入向45g的流量無法從3條鏈路轉(zhuǎn)發(fā)到sa1,會引起sf0產(chǎn)生擁塞,造成信息丟失而引起網(wǎng)絡(luò)質(zhì)量下降。
上述的傳統(tǒng)授權(quán)調(diào)度方案只是調(diào)整進(jìn)入所有交換網(wǎng)芯片的總流量,無法區(qū)分控制進(jìn)入每一個交換網(wǎng)芯片的流量,當(dāng)某一片交換網(wǎng)芯片入向和出向流量不對等時,會引起交 換網(wǎng)出現(xiàn)擁塞,造成信息丟失的缺陷,無法同時實現(xiàn)新舊多種鏈路速率板卡之間的流量自適應(yīng)負(fù)載均衡。
針對相關(guān)技術(shù)中當(dāng)交換網(wǎng)芯片入向和出向數(shù)據(jù)流量不對等時引起交換網(wǎng)出現(xiàn)擁塞,造成信息丟失的問題,還未提出有效的解決方案。
技術(shù)實現(xiàn)要素:
本發(fā)明提供了一種數(shù)據(jù)發(fā)送方法及裝置,以至少解決相關(guān)技術(shù)中交換網(wǎng)系統(tǒng)中交換網(wǎng)芯片的數(shù)據(jù)流量擁塞的問題。
根據(jù)本發(fā)明的一個方面,提供了一種數(shù)據(jù)發(fā)送方法,包括:交換網(wǎng)sf芯片獲取與所述sf芯片相連的各個交換接入sa芯片的鏈路信息;所述sf芯片根據(jù)獲取的各個sa芯片的鏈路信息確定向源sa芯片發(fā)送目的sa芯片的通知消息的鏈路,其中,所述通知消息用于通知所述源sa芯片通過確定的鏈路向所述目的sa芯片發(fā)送數(shù)據(jù)。
進(jìn)一步地,所述sf芯片根據(jù)獲取的各個sa芯片的鏈路信息確定向源sa芯片發(fā)送目的sa芯片的通知消息的鏈路包括:所述sf芯片根據(jù)所述鏈路信息更新sa有效鏈路數(shù)表savl和sa芯片的sa權(quán)重表saw,并更新sa芯片相應(yīng)鏈路的lw表,其中,所述savl表中記錄了所述sf芯片的有效鏈路數(shù),所述sa權(quán)重表中記錄了所有sa芯片的權(quán)重,所述lw表記錄了各個sa芯片的所有鏈路的權(quán)重;所述sf芯片查詢所述目的sa芯片的saw和savl分別獲取所述目的sa芯片的saw值和savl值,并查詢所述源sa芯片的lw表得到所述源sa芯片的鏈路的lw值;所述sf芯片根據(jù)所述saw值、所述savl值以及所述lw值通過計算確定向所述源sa芯片發(fā)送目的sa芯片的通知消息的鏈路。
進(jìn)一步地,所述sf芯片根據(jù)所述saw值、所述savl值以及所述lw值通過計算確定向所述源sa芯片發(fā)送目的sa芯片的通知消息的鏈路包括:將所述目的sa芯片的saw值與所述savl值相乘得到所述saw值與所述savl值的乘積;將所述saw值與所述savl值的乘積與所述源sa芯片的lw值進(jìn)行比較;在所述源sa芯片的鏈路的lw值小于等于所述目的sa芯片的saw值和所述savl值的乘積情況下,所述sf芯片確定通過所述源sa芯片的鏈路發(fā)送所述目的sa芯片的通知消息到所述源sa芯片。
進(jìn)一步地,所述鏈路信息包括物理鏈路總數(shù),鏈路編號,鏈路狀態(tài),鏈路速率。
根據(jù)本發(fā)明的另一方面,提供了一種數(shù)據(jù)發(fā)送方法,包括:源交換接入sa芯片接收交換網(wǎng)sf芯片發(fā)送的通知消息,其中,所述通知消息是所述sf芯片在獲取與所述sf芯片相連的各個sa芯片的鏈路信息之后,通過獲取的各個sa芯片的鏈路信息確定的鏈路發(fā)送的;所述源sa芯片根據(jù)所述通知消息通過所述鏈路向所述目的sa芯片發(fā)送數(shù)據(jù)。
進(jìn)一步地,在所述源sa芯片接收所述sf芯片發(fā)送的通知消息之后,所述方法還包括:所述源sa芯片根據(jù)所述通知消息更新存儲的所述目的sa芯片的轉(zhuǎn)發(fā)表,其中,所述轉(zhuǎn)發(fā)表中記錄了所述目的sa芯片與可用鏈路的對應(yīng)關(guān)系。
進(jìn)一步地,所述源sa芯片根據(jù)所述通知消息通過所述鏈路向所述目的sa芯片發(fā)送數(shù)據(jù)包括:所述源sa芯片通過查找所述轉(zhuǎn)發(fā)表確定向所述目的sa芯片發(fā)送數(shù)據(jù)的鏈路;所述源sa芯片通過確定的鏈路向所述目的sa芯片發(fā)送數(shù)據(jù)。
根據(jù)本發(fā)明的另一方面,還提供了一種數(shù)據(jù)發(fā)送裝置,應(yīng)用于交換網(wǎng)sf芯片,包括:獲取模塊,用于獲取與所述sf芯片相連的各個交換接入sa芯片的鏈路信息;確定模塊,用于根據(jù)獲取的各個sa芯片的鏈路信息確定向源sa芯片發(fā)送目的sa芯片的通知消息的鏈路,其中,所述通知消息用于通知所述源sa芯片通過確定的鏈路向所述目的sa芯片發(fā)送數(shù)據(jù)。
進(jìn)一步地,所述確定模塊包括:更新單元,用于根據(jù)所述鏈路信息更新sa有效鏈路數(shù)表savl和sa芯片的sa權(quán)重表saw,并更新sa芯片相應(yīng)鏈路的lw表,其中,所述savl表中記錄了所述sf芯片的有效鏈路數(shù),所述sa權(quán)重表中記錄了所有sa芯片的權(quán)重,所述lw表記錄了各個sa芯片的所有鏈路的權(quán)重;查詢單元,用于查詢所述目的sa芯片的saw和savl分別獲取所述目的sa芯片的saw值和savl值,并查詢所述源sa芯片的lw表得到所述源sa芯片的鏈路的lw值;確定單元,用于根據(jù)所述saw值、所述savl值以及所述lw值通過計算確定向所述源sa芯片發(fā)送目的sa芯片的通知消息的鏈路。
根據(jù)本發(fā)明的再一方面,還提供了一種數(shù)據(jù)發(fā)送裝置,應(yīng)用于源交換接入sa芯片,包括:接收模塊,用于接收交換網(wǎng)sf芯片發(fā)送的通知消息,其中,所述通知消息是所述sf芯片在獲取與所述sf芯片相連的各個sa芯片的鏈路信息之后,通過獲取的各個sa芯片的鏈路信息確定的鏈路發(fā)送的;發(fā)送模塊,用于根據(jù)所述通知消息通過所述鏈路向所述目的sa芯片發(fā)送數(shù)據(jù)。
通過本發(fā)明,采用交換網(wǎng)sf芯片獲取與所述sf芯片相連的各個交換接入sa芯片的鏈路信息;所述sf芯片根據(jù)獲取的各個sa芯片的鏈路信息確定向源sa芯片發(fā)送目的sa芯片的通知消息的鏈路,其中,所述通知消息用于通知所述源sa芯片通過確定的鏈路向所述目的sa芯片發(fā)送數(shù)據(jù),解決了相關(guān)技術(shù)中交換網(wǎng)系統(tǒng)中交換網(wǎng)芯片的數(shù)據(jù)流量擁塞的問題,避免了數(shù)據(jù)在交換網(wǎng)擁塞,提高了數(shù)據(jù)轉(zhuǎn)發(fā)的成功率。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
圖1是根據(jù)相關(guān)技術(shù)中的交換網(wǎng)系統(tǒng)的示意圖;
圖2是根據(jù)本發(fā)明實施例的數(shù)據(jù)發(fā)送方法的流程圖一;
圖3是根據(jù)本發(fā)明實施例的數(shù)據(jù)發(fā)送方法的流程圖二;
圖4是根據(jù)本發(fā)明實施例的數(shù)據(jù)發(fā)送裝置的框圖一;
圖5是根據(jù)本發(fā)明優(yōu)選實施例的數(shù)據(jù)發(fā)送裝置的框圖;
圖6是根據(jù)本發(fā)明實施例的數(shù)據(jù)發(fā)送裝置的框圖二;
圖7是根據(jù)本發(fā)明優(yōu)選實施例的交換網(wǎng)芯片流量自適應(yīng)負(fù)載均衡調(diào)度方法的示意圖一;
圖8是根據(jù)本發(fā)明優(yōu)選實施例的交換網(wǎng)芯片流量自適應(yīng)負(fù)載均衡調(diào)度方法的示意圖二;
圖9是根據(jù)本發(fā)明優(yōu)選實施例的交換網(wǎng)芯片流量自適應(yīng)負(fù)載均衡調(diào)度方法的示意圖三。
具體實施方式
下文中將參考附圖并結(jié)合實施例來詳細(xì)說明本發(fā)明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。
本發(fā)明實施例提供了一種數(shù)據(jù)發(fā)送方法,圖2是根據(jù)本發(fā)明實施例的數(shù)據(jù)發(fā)送方法的流程圖一,如圖2所示,包括:
步驟s202,交換網(wǎng)sf芯片獲取與該sf芯片相連的各個交換接入sa芯片的鏈路信息;
步驟s204,sf芯片根據(jù)獲取的各個sa芯片的鏈路信息確定向源sa芯片發(fā)送目的sa芯片的通知消息的鏈路,其中,該通知消息用于通知該源sa芯片通過確定的鏈路向該目的sa芯片發(fā)送數(shù)據(jù)。
通過上述步驟,交換網(wǎng)sf芯片獲取與該sf芯片相連的各個交換接入sa芯片的鏈路信息;該sf芯片根據(jù)獲取的各個sa芯片的鏈路信息確定向源sa芯片發(fā)送目的sa芯片的通知消息的鏈路,其中,該通知消息用于通知該源sa芯片通過確定的鏈路向該目的sa芯片發(fā)送數(shù)據(jù),解決了相關(guān)技術(shù)中交換網(wǎng)系統(tǒng)中交換網(wǎng)芯片的數(shù)據(jù)流量擁塞的問題,避免了數(shù)據(jù)在交換網(wǎng)擁塞,提高了數(shù)據(jù)轉(zhuǎn)發(fā)的成功率。
進(jìn)一步地,該sf芯片根據(jù)獲取的各個sa芯片的鏈路信息確定向源sa芯片發(fā)送目的sa芯片的通知消息的鏈路可以包括:該sf芯片根據(jù)該鏈路信息更新sa有效鏈路數(shù)表savl和sa芯片的sa權(quán)重表saw,并更新sa芯片相應(yīng)鏈路的lw表,其中,該savl表中記錄了該sf芯片的有效鏈路數(shù),該sa權(quán)重表中記錄了所有sa芯片的權(quán)重, 該lw表記錄了各個sa芯片的所有鏈路的權(quán)重;該sf芯片查詢該目的sa芯片的saw和savl分別獲取該目的sa芯片的saw值和savl值,并查詢該源sa芯片的lw表得到該源sa芯片的鏈路的lw值;該sf芯片根據(jù)該saw值、該savl值以及該lw值通過計算確定向該源sa芯片發(fā)送目的sa芯片的通知消息的鏈路。
再一個可選的實施例中,該sf芯片根據(jù)該saw值、該savl值以及該lw值通過計算確定向該源sa芯片發(fā)送目的sa芯片的通知消息的鏈路可以包括:將該目的sa芯片的saw值與該savl值相乘得到該saw值與該savl值的乘積;將該saw值與該savl值的乘積與該源sa芯片的lw值進(jìn)行比較;在該源sa芯片的鏈路的lw值小于等于該目的sa芯片的saw值和該savl值的乘積情況下,該sf芯片確定通過該源sa芯片的鏈路發(fā)送該目的sa芯片的通知消息到該源sa芯片。
上述的鏈路信息可以包括物理鏈路總數(shù),鏈路編號,鏈路狀態(tài),鏈路速率。
本發(fā)明實施例還提供了一種數(shù)據(jù)發(fā)送方法,圖3是根據(jù)本發(fā)明實施例的數(shù)據(jù)發(fā)送方法的流程圖二,如圖3所示,包括:
步驟s302,源交換接入sa芯片接收交換網(wǎng)sf芯片發(fā)送的通知消息,其中,該通知消息是該sf芯片在獲取與該sf芯片相連的各個sa芯片的鏈路信息之后,通過獲取的各個sa芯片的鏈路信息確定的鏈路發(fā)送的;
步驟s304,源sa芯片根據(jù)該通知消息通過該鏈路向該目的sa芯片發(fā)送數(shù)據(jù)。
在一個可選的實施例中,在該源sa芯片接收該sf芯片發(fā)送的通知消息之后,該源sa芯片根據(jù)該通知消息更新存儲的該目的sa芯片的轉(zhuǎn)發(fā)表,其中,該轉(zhuǎn)發(fā)表中記錄了該目的sa芯片與可用鏈路的對應(yīng)關(guān)系。
進(jìn)一步地,該源sa芯片根據(jù)該通知消息通過該鏈路向該目的sa芯片發(fā)送數(shù)據(jù)可以包括:該源sa芯片通過查找該轉(zhuǎn)發(fā)表確定向該目的sa芯片發(fā)送數(shù)據(jù)的鏈路;該源sa芯片通過確定的鏈路向該目的sa芯片發(fā)送數(shù)據(jù)。
本發(fā)明實施例提供了一種數(shù)據(jù)發(fā)送裝置,應(yīng)用于交換網(wǎng)sf芯片,圖4是根據(jù)本發(fā)明實施例的數(shù)據(jù)發(fā)送裝置的框圖一,如圖4所示,包括:
獲取模塊42,用于獲取與該sf芯片相連的各個交換接入sa芯片的鏈路信息;
確定模塊44,用于根據(jù)獲取的各個sa芯片的鏈路信息確定向源sa芯片發(fā)送目的sa芯片的通知消息的鏈路,其中,該通知消息用于通知該源sa芯片通過確定的鏈路向該目的sa芯片發(fā)送數(shù)據(jù)。
圖5是根據(jù)本發(fā)明優(yōu)選實施例的數(shù)據(jù)發(fā)送裝置的框圖,如圖5所示,確定模塊44包括:
更新單元52,用于根據(jù)該鏈路信息更新sa有效鏈路數(shù)表savl和sa芯片的sa 權(quán)重表saw,并更新sa芯片相應(yīng)鏈路的lw表,其中,該savl表中記錄了該sf芯片的有效鏈路數(shù),該sa權(quán)重表中記錄了所有sa芯片的權(quán)重,該lw表記錄了各個sa芯片的所有鏈路的權(quán)重;
查詢單元54,用于查詢該目的sa芯片的saw和savl分別獲取該目的sa芯片的saw值和savl值,并查詢該源sa芯片的lw表得到該源sa芯片的鏈路的lw值;
確定單元56,用于根據(jù)該saw值、該savl值以及該lw值通過計算確定向該源sa芯片發(fā)送目的sa芯片的通知消息的鏈路。
本發(fā)明實施例還提供了一種數(shù)據(jù)發(fā)送裝置,應(yīng)用于源交換接入sa芯片,圖6是根據(jù)本發(fā)明實施例的數(shù)據(jù)發(fā)送裝置的框圖二,如圖6所示,包括:
接收模塊62,用于接收交換網(wǎng)sf芯片發(fā)送的通知消息,其中,該通知消息是該sf芯片在獲取與該sf芯片相連的各個sa芯片的鏈路信息之后,通過獲取的各個sa芯片的鏈路信息確定的鏈路發(fā)送的;
發(fā)送模塊64,用于根據(jù)該通知消息通過該鏈路向該目的sa芯片發(fā)送數(shù)據(jù)。
下面結(jié)合具體實施例對本發(fā)明實施例進(jìn)行進(jìn)一步說明。
本發(fā)明實施例提供了一種有效的交換網(wǎng)芯片流量自適應(yīng)負(fù)載均衡調(diào)度方法,包括:通過實時監(jiān)控,自適應(yīng)的控制交換網(wǎng)芯片是否向源端板卡上sa的鏈路發(fā)送目的板卡上sa的可達(dá)信元,來達(dá)到實際控制源端板卡sa上的報文從哪些鏈路經(jīng)過交換網(wǎng)芯片轉(zhuǎn)發(fā)到目的板卡sa,使交換網(wǎng)芯片入向和出向流量均衡,達(dá)到避免交換網(wǎng)芯片擁塞,提高系統(tǒng)穩(wěn)定性的目的。
本方案包括以下模塊:
1)通知記錄模塊對應(yīng)于記錄單元42:接收并記錄主控通知下來的所有遠(yuǎn)端在線板卡信息(包括槽位號、板卡類型、板卡鏈路速率等)。記錄的在線遠(yuǎn)端板卡信息可供鏈路收集與檢測模塊查詢。
2)鏈路信息收集與檢測模塊對應(yīng)于統(tǒng)計單元44:此模塊有兩個功能,一是根據(jù)通知記錄模塊記錄的遠(yuǎn)端板卡信息,查詢記錄本sf到此遠(yuǎn)端板卡上每個sa所有物理鏈路的信息(包括物理鏈路總數(shù),鏈路編號,鏈路狀態(tài),鏈路速率等)。二是實時監(jiān)測sf所有鏈路變化情況,來決定是否啟動表更新模塊和查表處理模塊。
3)表更新模塊對應(yīng)于第一更新單元46和第二更新單元48,根據(jù)通知記錄模塊記錄的所有遠(yuǎn)端在線板卡信息更新設(shè)置其對應(yīng)的各個sa的saw表;根據(jù)鏈路信息收集與檢測模塊記錄的所有遠(yuǎn)端在線板卡上sa的物理鏈路信息更新設(shè)置對應(yīng)sa的savl表;最后根據(jù)鏈路收集與檢測模塊獲得的所有在線板卡上的sa鏈路信息、savl和saw表的值,通過計算更新設(shè)置本sf所有鏈路的lw表。
其中,saw表記錄所有sa的權(quán)重,為系統(tǒng)中每個sa各分配一個值,如系統(tǒng)中設(shè)計最多有m個sa,則此表大小為m。此表設(shè)置規(guī)則如下:假設(shè)本sf支持的最低鏈路速率為l,則此sa對應(yīng)的saw表的值為:此sa鏈路速率/l。
savl表記錄sf與所有sa的有效鏈路數(shù),為系統(tǒng)中每個sa各分配一個值,如系統(tǒng)中有m個sa,則此表大小為m。此表設(shè)置規(guī)則如下:假設(shè)本sf與某一個sa有l(wèi)條物理鏈路,其中l(wèi)條物理鏈路中有p條是有效鏈路,則有l(wèi)-p條是無效鏈路,則此sa對應(yīng)的savl表的值為有效連路數(shù)p。
lw表記錄sf所有鏈路的權(quán)重,為sf所有鏈路都分配一個值,如本sf有k條鏈路,則此表大小即為k。此表設(shè)置規(guī)則如下:假設(shè)本sf支持的最高鏈路速率為h,最低鏈路速率為l,本sf最大鏈路數(shù)為k,若本sf到某sa物理鏈路數(shù)l,l條物理鏈路中有p條是有效鏈路,則l-p條是無效鏈路,則對于這l-p無效的物理鏈路,其對應(yīng)lw的值固定設(shè)置為h*k/l;對于p有效的物理鏈路,其對應(yīng)lw表的值以此sa的saw表的值為間隔從小到大依次設(shè)置,即1*間隔/2*間隔/…../p*間隔。當(dāng)某條有效鏈路變?yōu)闊o效鏈路時,其lw的值固定設(shè)置為h*k/l,其剩余的有效鏈路重新按以上間隔從小到大依次重新設(shè)置。
5)查表處理模塊,其功能由上述的確定模塊32和轉(zhuǎn)發(fā)模塊34一起實現(xiàn),查詢目的sa的saw、savl表的值,兩者相乘的值與本sf到源端sa的所有物理鏈路的lw表值做比較,來決定將目的sa的可達(dá)信元通過哪些物理鏈路發(fā)送給源端sa。判斷規(guī)則如下:假設(shè)目的sa的saw以及savl表的值分別為x和y,源端sa某條物理鏈路的lw表的值z,則當(dāng)z<=x*y時,可以從該條鏈路發(fā)送目的sa的可達(dá)信元。當(dāng)z>x*y時,停止從該鏈路發(fā)送目的sa的可達(dá)信元。
上述各模塊與表之間的調(diào)用協(xié)作關(guān)系如下:通知記錄模塊記錄主控下發(fā)遠(yuǎn)端在線板卡信息供鏈路收集檢測模塊查詢;鏈路信息收集模塊查詢通知記錄模塊記錄的遠(yuǎn)端在線板卡信息,收集記錄所有遠(yuǎn)端在線板卡上sa的物理鏈路信息。同時采用輪詢檢測的方式實時檢測所有在線板卡sa的所有物理鏈路狀態(tài),當(dāng)檢測到有物理鏈路狀態(tài)發(fā)生改變時(對端板卡上下電或鏈路出問題都會引起鏈路狀態(tài)變化),啟動表更新模塊;表更新模塊根據(jù)當(dāng)前的所有在線板卡上sa的物理鏈路信息、本sf支持的最高/鏈路速率和最低鏈路速率等信息,更新saw表和savl表。并根據(jù)更新后的saw表的值與當(dāng)前的所有在線板卡上sa的物理鏈路信息,共同更新lw表,表更新模塊更新完三個表以后,啟動表查找處理模塊;表查找處理模塊查詢saw表、savl表和lw表的值,按照以上的判斷規(guī)則,控制可達(dá)信元的發(fā)送或停止。
圖7是根據(jù)本發(fā)明優(yōu)選實施例的交換網(wǎng)芯片流量自適應(yīng)負(fù)載均衡調(diào)度方法的示意圖一,如圖7所示,包括以下步驟:
第一步,sf芯片初始化完成后,通知記錄模塊記錄更新主控下發(fā)的遠(yuǎn)端板卡信息 (包括對端板卡類型、板卡速率等)。
第二步,sf芯片啟動輪詢掃描線程,鏈路信息收集與檢測模塊根據(jù)第一步中記錄的遠(yuǎn)端板卡信息,輪詢掃描記錄所有在線板卡上sa的所有的物理鏈路信息,同時其實時檢測其鏈路狀態(tài)變化情況,當(dāng)有鏈路狀態(tài)發(fā)生變化時,啟動表更新模塊。
第三步,表更新模塊根據(jù)當(dāng)前的所有在線板卡上sa的物理鏈路信息、本sf支持的最高/鏈路速率和最低鏈路速率等信息,按照上述的兩個表設(shè)置規(guī)則設(shè)置更新saw以及savl表的值。然后根據(jù)更新后的saw表的值以及當(dāng)前的所有在線板卡上sa的物理鏈路信息,根據(jù)lw表的設(shè)置規(guī)則重新設(shè)置本sf所有物理鏈路的lw表的值。lw更新完成后,啟動表查找處理模塊。
第四步,表查找處理模快查詢以上saw、savl和lw三個表的更新后值,根據(jù)上述的判斷規(guī)則,來決定將目的sa的可達(dá)信元從哪些鏈路發(fā)往源端sa。
第五步,源端sa根據(jù)從各鏈路收到的可達(dá)信元情況,更新其路由表。
第六步,源端sa根據(jù)新的路由表,以負(fù)荷分擔(dān)方式將流量通過收到可達(dá)信元的鏈路發(fā)往各個sf,最后發(fā)到目的sa。
圖8是根據(jù)本發(fā)明優(yōu)選實施例的交換網(wǎng)芯片流量自適應(yīng)負(fù)載均衡調(diào)度方法的示意圖二,如圖8所示,一片sf與四個sa相連(sa0/sa1/sa2/sa3),sf支持的最高鏈路速率為12.5g,最低鏈路速率為6.25g,sa0/sa2/sa3三個sa往sa1發(fā)流。
第一步,sf記錄主控下發(fā)的四個sa的對應(yīng)板卡的單板信息(槽位號、單板類型與速率等信息)。
第二步,sf啟動輪詢掃描線程,根據(jù)上一步記錄的板卡信息,獲取4個sa的物理鏈路信息,如四個sa鏈路速率分別為6.25g/6.25g/12.5g/12.5g,其物理連路數(shù)為4/4/4/2等。同時sf實時檢測四個sa的所有鏈路狀態(tài)變化情況,如此時sa1的四條物理鏈路中(a/b/c/d),a/c兩條鏈路down掉了成為無效鏈路,則此時啟動表更新模塊。
第三部,更新saw表:本sf支持的最低鏈路速率為6.25g,四個sa鏈路速率分別為6.25g/6.25g/12.5g/12.5g,則按照設(shè)置規(guī)則四個sa對應(yīng)saw表為的值為1/1/2/2;
更新savl表,四個sa對應(yīng)的物理鏈路數(shù)為4/4/4/2,其中sa1四條鏈路中a/c兩條鏈路down掉了,此時四個sa的有效鏈路數(shù)為4/2/4/2,則根據(jù)設(shè)置規(guī)則四個sa對應(yīng)的savl表的值為4/2/4/2。
更新lw表,sf支持的最高鏈路速率為12.5g,最低鏈路速率為6.25g,
sf最大連路數(shù)為144,則根據(jù)設(shè)置規(guī)則sa1的a/c兩條鏈路對應(yīng)的值固定設(shè)置為288,則此時sa0的四條物理鏈路的lw值為1/2/3/4,sa1的四條物理鏈路的lw值為288/1/288/2,sa2的四條物理鏈路的sw值為2/4/6/8,sa3的兩條物理鏈路的slw值 為2/4。更新完lw表后啟動表查找處理???。
第四步,圖9是根據(jù)本發(fā)明優(yōu)選實施例的交換網(wǎng)芯片流量自適應(yīng)負(fù)載均衡調(diào)度方法的示意圖三,如圖9所示,首先查找sa1的saw以及savl表的值分別為1和2,兩者乘積為2,然后遍歷查找sa0/sa2/sa3所有物理鏈路的lw表的值與2做比較,按照以上所述的判斷規(guī)則只有l(wèi)w值小于等于2的鏈路才能發(fā)送sa1的可達(dá)信元。如sa0只有兩條鏈路發(fā)送sa1可達(dá)信元,sa2與sa3只有一條能發(fā)送sa1的可達(dá)信元。
第五步,sa0/sa2/sa3根據(jù)其物理鏈路收到的可達(dá)信元情況,更新其各自的路由表。
第六步,sa0/sa2/sa3根據(jù)其更新后的路由表,采用鏈路負(fù)載均衡的方式,將數(shù)據(jù)流從能收到sa1可達(dá)信元的鏈路發(fā)往sf,通過sf轉(zhuǎn)發(fā)到達(dá)sa1。即sa0/sa2/sa3發(fā)往sa1數(shù)據(jù)流上行走向如圖3中粗線所示:sa0只有兩條鏈路將sa1的數(shù)據(jù)流發(fā)往sf,sa2和sa3只有一條鏈路將sa1的數(shù)據(jù)流發(fā)往sf。
通過本發(fā)明實施例提供的交換網(wǎng)芯片流量自適應(yīng)均衡調(diào)度方法,通過自適應(yīng)負(fù)載均衡進(jìn)入交換網(wǎng)芯片的流量,解決了傳統(tǒng)授權(quán)調(diào)度方式無法區(qū)分芯片進(jìn)行負(fù)載均衡的而造成交換網(wǎng)擁塞造成網(wǎng)絡(luò)質(zhì)量下降的缺陷,同時其能有效的兼容各種類型新老板卡,同時避免了由于損耗以及其他原因引起的鏈路關(guān)閉所造成的系統(tǒng)穩(wěn)定性降低問題,為用戶節(jié)省了設(shè)備更新?lián)Q代的成本,同時極大提高了整個系統(tǒng)的穩(wěn)定性。
顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。