專利名稱:一種以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于數(shù)據(jù)傳輸技術(shù)領(lǐng)域,更具體地,涉及一種以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化方法和系統(tǒng)。
背景技術(shù):
存儲(chǔ)區(qū)域網(wǎng)(Storage Area Network,簡稱SAN)是一種廣泛應(yīng)用于大型數(shù)據(jù)中心的存儲(chǔ)專用網(wǎng)絡(luò)。SAN提供了服務(wù)器與存儲(chǔ)設(shè)備的高速訪問 通道。SAN目前的傳輸實(shí)現(xiàn)技術(shù)主要依托光纖通道(Fiber Channel,簡稱FC)和iSCSI傳輸技術(shù),前者實(shí)現(xiàn)的SAN簡稱FC-SAN,而后者實(shí)現(xiàn)的SAN又稱IP-SAN。目前FC-SAN應(yīng)用非常廣泛。為保留FC-SAN優(yōu)點(diǎn)及保護(hù)已有投資,業(yè)界提出一種運(yùn)行在無損以太網(wǎng)上的FC-SAN,即以太網(wǎng)光纖通道(FiberChannel over Ethernet,簡稱FCoE)。無損以太網(wǎng)的部署可以大大簡化數(shù)據(jù)中心的布局布線。FCoE的實(shí)現(xiàn)使得SAN和以太網(wǎng)統(tǒng)一成為現(xiàn)實(shí)。圖1為典型的FCoE無損以太網(wǎng)架構(gòu)示意圖。在本領(lǐng)域中,支持FCoE的主機(jī)或者板卡設(shè)備稱為FCoE端點(diǎn)設(shè)備(FCoE Node,簡稱ENode),而支持FCoE的交換機(jī)稱為FCoE交換機(jī)(FCoE Forwarder,簡稱FCF)。在現(xiàn)有技術(shù)中,F(xiàn)CoE端點(diǎn)設(shè)備可以通過一個(gè)或多個(gè)FCoE交換機(jī)與存儲(chǔ)設(shè)備交換數(shù)據(jù),各FCoE交換機(jī)可以有不同的優(yōu)先級,并且在某一 FCoE交換機(jī)出現(xiàn)故障時(shí)可以動(dòng)態(tài)調(diào)整到另一 FCoE交換機(jī)建立鏈路并繼續(xù)傳輸數(shù)據(jù)。但是在現(xiàn)有技術(shù)中,通常的FCoE網(wǎng)絡(luò)的建立是由FCoE交換機(jī)動(dòng)態(tài)決定,F(xiàn)CoE端點(diǎn)設(shè)備只是被動(dòng)接收FCoE交換機(jī)的控制和安排,沒有被賦予更多的權(quán)利,因此針對FCoE端點(diǎn)設(shè)備中虛擬鏈路的數(shù)據(jù)傳輸并不一定處于優(yōu)化狀態(tài),可能造成的情況是數(shù)據(jù)傳輸量大的虛擬鏈路和數(shù)據(jù)傳輸量小的虛擬鏈路消耗了相當(dāng)?shù)腇CoE端點(diǎn)設(shè)備處理資源,造成處理資源分配不合理,使得數(shù)據(jù)傳輸量大的虛擬鏈路的數(shù)據(jù)不能及時(shí)被處理,造成數(shù)據(jù)傳輸延遲或丟失;同時(shí)也使得整個(gè)以太網(wǎng)光纖通道系統(tǒng)數(shù)據(jù)傳輸負(fù)載不均衡。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)的缺陷,本發(fā)明的目的在于提供一種以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化方法,旨在解決現(xiàn)有方法中存在的虛擬鏈路處理資源分配不合理的問題。為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化方法,包括以下步驟(I)FCoE端點(diǎn)設(shè)備產(chǎn)生初始化優(yōu)先級值,并寫入FCoE登錄報(bào)文,并將該報(bào)文單播至目標(biāo)FCoE交換機(jī);(2)FCoE端點(diǎn)設(shè)備判斷從目標(biāo)FCoE交換機(jī)接收到的是應(yīng)答報(bào)文還是拒絕報(bào)文,如果是應(yīng)答報(bào)文,則說明虛擬鏈路建立成功,并進(jìn)入步驟(3),如果接收到拒絕報(bào)文,則進(jìn)入步驟⑷;(3) FCoE端點(diǎn)設(shè)備為該新建立的虛擬鏈路分配數(shù)據(jù)收發(fā)緩沖區(qū),并將優(yōu)先級寫入與該虛擬鏈路關(guān)聯(lián)的優(yōu)先級表項(xiàng)之中;
(4) FCoE端點(diǎn)設(shè)備接收來自用戶的請求,并根據(jù)該請求判斷是否需要建立新的虛擬鏈路,如果是則返回步驟(1),否則進(jìn)入步驟(5);(5) FCoE端點(diǎn)設(shè)備判斷其中是否存在有虛擬鏈路,如果有則進(jìn)入步驟(6),否則返回步驟(4);(6)FCoE端點(diǎn)設(shè)備對FCoE端點(diǎn)設(shè)備中的所有虛擬鏈路進(jìn)行監(jiān)控,以獲取每條虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷;(7)FCoE端點(diǎn)設(shè)備根據(jù)所獲取的數(shù)據(jù)傳輸負(fù)荷動(dòng)態(tài)調(diào)整每條虛擬鏈路對應(yīng)的優(yōu)先級,調(diào)整的原則是高傳輸負(fù)荷對應(yīng)高的優(yōu)先級,并將調(diào)整后的優(yōu)先級放置到每條虛擬鏈路的保持報(bào)文中;
(S)FCoE目標(biāo)交換機(jī)從虛擬鏈路的保持報(bào)文中提取優(yōu)先級并根據(jù)優(yōu)先級利用每個(gè)虛擬鏈路進(jìn)行數(shù)據(jù)傳輸;(9) FCoE端點(diǎn)設(shè)備根據(jù)優(yōu)先級利用每個(gè)虛擬鏈路進(jìn)行數(shù)據(jù)傳輸;(10)FCoE端點(diǎn)設(shè)備在數(shù)據(jù)傳輸結(jié)束后,判斷是否需要釋放虛擬鏈路,如果是,則轉(zhuǎn)入步驟(11),否則返回步驟(4);(Il)FCoE端點(diǎn)設(shè)備向FCoE目標(biāo)交換機(jī)發(fā)出虛擬鏈路清除幀,并將虛擬鏈路對應(yīng)的優(yōu)先級寫入虛擬鏈路清除幀中;(12) FCoE目標(biāo)交換機(jī)根據(jù)虛擬鏈路清除幀將該虛擬鏈路對應(yīng)的優(yōu)先級和緩沖區(qū)清除。FCoE端點(diǎn)設(shè)備是帶有FCoE網(wǎng)卡的終端設(shè)備。初始化優(yōu)先級值是寫入在FCoE登錄報(bào)文頭部的FLOGI描述符的保留字段中。步驟(6)中的數(shù)據(jù)傳輸負(fù)荷是以為每條虛擬鏈路分配的數(shù)據(jù)收發(fā)緩沖區(qū)中當(dāng)前有效數(shù)據(jù)占整個(gè)數(shù)據(jù)收發(fā)緩沖區(qū)的比例來衡量的。步驟(I)包括以下子步驟(1-1)FCoE端點(diǎn)設(shè)備檢查其自身是否存在優(yōu)先級表,如果存在,則轉(zhuǎn)入步驟(1-3),否則轉(zhuǎn)入步驟(1-2);(1-2)建立優(yōu)先級表,其中至少包括優(yōu)先級和虛擬鏈路的編號兩個(gè)字段;( 1-3)判斷優(yōu)先級表中的優(yōu)先級是否為手動(dòng)配置,若是則進(jìn)入步驟(1-4),否則進(jìn)入步驟(1-5);(l-4)FCoE端點(diǎn)設(shè)備從用戶端接收手動(dòng)配置程序的輸入,該輸入中包括有優(yōu)先級,然后轉(zhuǎn)入步驟(1-6);(1-5) FCoE端點(diǎn)設(shè)備自動(dòng)初始化一個(gè)優(yōu)先級,其值等于當(dāng)前系統(tǒng)中所有虛擬鏈路優(yōu)先級的最大值;(l-6)FCoE端點(diǎn)設(shè)備將優(yōu)先級放入登錄報(bào)文中,并將登錄報(bào)文發(fā)送到FCoE目標(biāo)交換機(jī)。步驟(6)包括以下子步驟(6-l)FCoE端點(diǎn)設(shè)備定時(shí)統(tǒng)計(jì)各條虛擬鏈路對應(yīng)的數(shù)據(jù)收發(fā)緩沖區(qū)的數(shù)據(jù)傳輸負(fù)荷;(6-2) FCoE端點(diǎn)設(shè)備得到所有虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷之后,按大小對所有傳輸負(fù)荷進(jìn)行排序。
統(tǒng)計(jì)的周期可以是虛擬鏈路維持周期的整數(shù)倍,統(tǒng)計(jì)的方法是計(jì)算每個(gè)虛擬鏈路數(shù)據(jù)收發(fā)緩沖區(qū)中當(dāng)前有效數(shù)據(jù)占整個(gè)數(shù)據(jù)收發(fā)緩沖區(qū)的比例。步驟(7)包括以下子步驟(7-1)根據(jù)所有虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷動(dòng)態(tài)調(diào)整每條虛擬鏈路對應(yīng)的優(yōu)先級,原則是高的數(shù)據(jù)傳輸負(fù)荷對應(yīng)高優(yōu)先級,低的數(shù)據(jù)傳輸符合對應(yīng)低優(yōu)先級;(7-2)將每條虛擬鏈路的優(yōu)先級寫入對應(yīng)優(yōu)先級表中,并將該優(yōu)先級寫入每條虛擬鏈路對應(yīng)的保持報(bào)文中。通過本發(fā)明所構(gòu)思的以上技術(shù)方案,與現(xiàn)有技術(shù)相比,本發(fā) 明的方法具有以下的優(yōu)點(diǎn)( I)虛擬鏈路具有動(dòng)態(tài)優(yōu)先級由于采用了步驟(I)、步驟(6 )、步驟(7 ),因此每一條虛擬鏈路具有與之對應(yīng)的動(dòng)態(tài)優(yōu)先級;(2)資源分配合理由于采用了步驟(3)、步驟(6)、步驟(7)、步驟(8)、步驟(9),因此FCoE端點(diǎn)設(shè)備和FCoE交換機(jī)可以根據(jù)虛擬鏈路優(yōu)先級進(jìn)程數(shù)據(jù)收發(fā)處理,使得資源分配更加合理。本發(fā)明的另一目的在于提供一種以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化系統(tǒng),旨在解決現(xiàn)有系統(tǒng)中存在的虛擬鏈路數(shù)據(jù)傳輸負(fù)荷不均衡的問題。為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化系統(tǒng),包括優(yōu)先級值產(chǎn)生模塊、報(bào)文判斷模塊、數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊、虛擬鏈路新建判斷模塊、虛擬鏈路存在判斷模塊、數(shù)據(jù)傳輸負(fù)荷獲取模塊、虛擬鏈路優(yōu)先級調(diào)整模塊、優(yōu)先級獲取并按優(yōu)先級數(shù)據(jù)傳輸模塊、按優(yōu)先級數(shù)據(jù)傳輸模塊、虛擬鏈路釋放判斷模塊、清除幀發(fā)出模塊、資源清除模塊,優(yōu)先級值產(chǎn)生模塊、報(bào)文判斷模塊、數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊、虛擬鏈路新建判斷模塊、虛擬鏈路存在判斷模塊、數(shù)據(jù)傳輸負(fù)荷獲取模塊、虛擬鏈路優(yōu)先級調(diào)整模塊、按優(yōu)先級數(shù)據(jù)傳輸模塊、虛擬鏈路釋放判斷模塊、清除幀發(fā)出模塊是設(shè)置于FCoE端點(diǎn)設(shè)備中,優(yōu)先級獲取并按優(yōu)先級數(shù)據(jù)傳輸模塊和資源清除模塊是設(shè)置于FCoE目標(biāo)交換機(jī)中,優(yōu)先級值產(chǎn)生模塊用于產(chǎn)生初始化優(yōu)先級值,并寫入FCoE登錄報(bào)文,并將該報(bào)文單播至目標(biāo)FCoE交換機(jī),報(bào)文判斷模塊用于判斷從目標(biāo)FCoE交換機(jī)接收到的是應(yīng)答報(bào)文還是拒絕報(bào)文,如果是應(yīng)答報(bào)文,則說明虛擬鏈路建立成功,并進(jìn)入數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊,如果接收到拒絕報(bào)文,則進(jìn)入虛擬鏈路新建判斷模塊,數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊用于FCoE端點(diǎn)設(shè)備為新建的虛擬鏈路分配對應(yīng)的數(shù)據(jù)收發(fā)緩沖區(qū)并將優(yōu)先級寫入與該虛擬鏈路關(guān)聯(lián)的優(yōu)先級表項(xiàng)之中,虛擬鏈路新建判斷模塊用于判斷是否需要新建一條虛擬鏈路。如果需要?jiǎng)t進(jìn)入優(yōu)先級值產(chǎn)生模塊,否則進(jìn)入虛擬鏈路存在判斷模塊,虛擬鏈路存在判斷模塊用于FCoE判斷當(dāng)前是否存在虛擬鏈路,如果有則進(jìn)入數(shù)據(jù)傳輸負(fù)荷獲取模塊,否則進(jìn)入虛擬鏈路新建判斷模塊,數(shù)據(jù)傳輸負(fù)荷獲取模塊用于FCoE端點(diǎn)設(shè)備中的所有虛擬鏈路進(jìn)行監(jiān)控,以獲取每條虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷,虛擬鏈路優(yōu)先級調(diào)整模塊用于FCoE端點(diǎn)設(shè)備根據(jù)所獲取的數(shù)據(jù)傳輸負(fù)荷動(dòng)態(tài)調(diào)整每條虛擬鏈路對應(yīng)的優(yōu)先級并將調(diào)整后的優(yōu)先級放置到每條虛擬鏈路的保持報(bào)文中,優(yōu)先級獲取并按優(yōu)先級數(shù)據(jù)傳輸模塊用于FCoE目標(biāo)交換機(jī)從虛擬鏈路的保持報(bào)文中提取優(yōu)先級,并且根據(jù)優(yōu)先級利用每個(gè)虛擬鏈路進(jìn)行數(shù)據(jù)傳輸,虛擬鏈路釋放判斷模塊用于FCoE端點(diǎn)設(shè)備在數(shù)據(jù)傳輸結(jié)束后,判斷是否需要釋放虛擬鏈路,如果是,則進(jìn)入清除幀發(fā)出模塊模塊,否則進(jìn)入虛擬鏈路新建判斷模塊,按優(yōu)先級數(shù)據(jù)傳輸模塊用于FCoE端點(diǎn)設(shè)備根據(jù)優(yōu)先級利用每個(gè)虛擬鏈路進(jìn)行數(shù)據(jù)傳輸,清除幀發(fā)出模塊用于FCoE目標(biāo)交換機(jī)發(fā)出虛擬鏈路清除幀,并將虛擬鏈路對應(yīng)的優(yōu)先級寫入虛擬鏈路清除幀中,資源清除模塊用于FCoE目標(biāo)交換機(jī)根據(jù)虛擬鏈路清除幀將該虛擬鏈路對應(yīng)的優(yōu)先級和緩沖區(qū)清除。通過本發(fā)明所構(gòu)思的以上技術(shù)方案,與現(xiàn)有技術(shù)相比,本發(fā)明的系統(tǒng)具有以下的優(yōu)點(diǎn)(I)資源分配合理由于采用了優(yōu)先級產(chǎn)生模塊、數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊、數(shù)據(jù)傳輸負(fù)荷獲取模塊、虛擬鏈路優(yōu)先級調(diào)整模塊,優(yōu)先級獲取并按優(yōu)先級數(shù)據(jù)傳輸模塊、按優(yōu)先級數(shù)據(jù)傳輸模塊,因此FCoE端點(diǎn)設(shè)備以及FCoE交換機(jī)可以根據(jù)每條虛擬鏈路的實(shí)際傳輸負(fù)荷合理分配資源,進(jìn)行數(shù)據(jù)收發(fā)處理;(2)系統(tǒng)負(fù)載更均衡由于采用了優(yōu)先級產(chǎn)生模塊、數(shù)據(jù) 收發(fā)緩沖區(qū)分配模塊、數(shù)據(jù)傳輸負(fù)荷獲取模塊、虛擬鏈路優(yōu)先級調(diào)整模塊,優(yōu)先級獲取并按優(yōu)先級數(shù)據(jù)傳輸模塊、按優(yōu)先級數(shù)據(jù)傳輸模塊,因此由FCoE端點(diǎn)設(shè)備和FCoE交換機(jī)組成的以太網(wǎng)光纖通道系統(tǒng)的數(shù)據(jù)傳輸負(fù)荷可以根據(jù)系統(tǒng)中虛擬鏈路的實(shí)際傳輸負(fù)荷進(jìn)行優(yōu)化,從而使得系統(tǒng)負(fù)載更加均衡。
圖1為現(xiàn)有技術(shù)典型的FCoE無損以太網(wǎng)架構(gòu)示意圖。圖2為本發(fā)明以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化方法的流程圖。圖3為本發(fā)明中登錄/應(yīng)答/拒絕描述符的結(jié)構(gòu)。圖4為本發(fā)明方法中步驟(I)的細(xì)化流程圖。圖5為本發(fā)明方法中步驟(6)的細(xì)化流程圖。圖6為本發(fā)明方法中步驟(7)的細(xì)化流程圖。圖7為本發(fā)明以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化系統(tǒng)中FCoE端點(diǎn)設(shè)備示意框圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。如圖2所示,本發(fā)明以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化方法包括以下步驟(I)FCoE端點(diǎn)設(shè)備產(chǎn)生初始化優(yōu)先級值,并寫入FCoE登錄報(bào)文,并將該報(bào)文單播至目標(biāo)FCoE交換機(jī);在本實(shí)施方式中,F(xiàn)CoE端點(diǎn)設(shè)備是帶有FCoE網(wǎng)卡的終端設(shè)備;如圖3所示,初始化優(yōu)先級值是寫入在FCoE登錄報(bào)文頭部的FLOGI (Fabric Login)描述符的保留字段(即0至15比特位)中,應(yīng)該注意的是,在本實(shí)施例中,將16比特位保留字段全部用于表示優(yōu)先級,在其它實(shí)施方式中,使用保留字段的任意位數(shù)來表示優(yōu)先級都滿足本發(fā)明的要求,也可以在報(bào)文頭部以后任意增加比特位來表示優(yōu)先級。(2)FCoE端點(diǎn)設(shè)備判斷從目標(biāo)FCoE交換機(jī)接收到的是應(yīng)答報(bào)文還是拒絕報(bào)文,如果是應(yīng)答報(bào)文,則說明虛擬鏈路建立成功,并進(jìn)入步驟(3),如果接收到拒絕報(bào)文,則進(jìn)入步驟⑷;
(3) FCoE端點(diǎn)設(shè)備為該新建立的虛擬鏈路分配數(shù)據(jù)收發(fā)緩沖區(qū),并將優(yōu)先級寫入與該虛擬鏈路關(guān)聯(lián)的優(yōu)先級表項(xiàng)之中;需要注意的是,數(shù)據(jù)收發(fā)緩沖區(qū)設(shè)立的最優(yōu)大小本發(fā)明并沒有考慮,但是有一點(diǎn)必須滿足所有數(shù)據(jù)收發(fā)緩沖區(qū)大小應(yīng)該一致,這樣才能在計(jì)算各數(shù)據(jù)收發(fā)緩沖區(qū)數(shù)據(jù)負(fù)荷時(shí)有可比性;(4) FCoE端點(diǎn)設(shè)備接收來自用戶的請求,并根據(jù)該請求判斷是否需要建立新的虛擬鏈路,如果是則返回步驟(1),否則進(jìn)入步驟(5);(5) FCoE端點(diǎn)設(shè)備判斷其中是否存在有虛擬鏈路,如果有則進(jìn)入步驟(6),否則返回步驟(4);(6)FCoE端點(diǎn)設(shè)備對FCoE端點(diǎn)設(shè)備中的所有虛擬鏈路進(jìn)行監(jiān)控,以獲取每條虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷;具體而言,數(shù)據(jù)傳輸負(fù)荷是以為每條虛擬 鏈路分配的數(shù)據(jù)收發(fā)緩沖區(qū)中當(dāng)前有效數(shù)據(jù)占整個(gè)數(shù)據(jù)收發(fā)緩沖區(qū)的比例來衡量的;(7)FCoE端點(diǎn)設(shè)備根據(jù)所獲取的數(shù)據(jù)傳輸負(fù)荷動(dòng)態(tài)調(diào)整每條虛擬鏈路對應(yīng)的優(yōu)先級,調(diào)整的原則是高傳輸負(fù)荷對應(yīng)高的優(yōu)先級,并將調(diào)整后的優(yōu)先級放置到每條虛擬鏈路的保持報(bào)文中;(S)FCoE目標(biāo)交換機(jī)從虛擬鏈路的保持報(bào)文中提取優(yōu)先級并根據(jù)優(yōu)先級利用每個(gè)虛擬鏈路進(jìn)行數(shù)據(jù)傳輸;(9) FCoE端點(diǎn)設(shè)備根據(jù)優(yōu)先級利用每個(gè)虛擬鏈路進(jìn)行數(shù)據(jù)傳輸;(10)FCoE端點(diǎn)設(shè)備在數(shù)據(jù)傳輸結(jié)束后,判斷是否需要釋放虛擬鏈路,如果是,則轉(zhuǎn)入步驟(11),否則返回步驟(4);(Il)FCoE端點(diǎn)設(shè)備向FCoE目標(biāo)交換機(jī)發(fā)出虛擬鏈路清除幀,并將虛擬鏈路對應(yīng)的優(yōu)先級寫入虛擬鏈路清除幀中;(12) FCoE目標(biāo)交換機(jī)根據(jù)虛擬鏈路清除幀將該虛擬鏈路對應(yīng)的優(yōu)先級和緩沖區(qū)清除。如圖4所示,本發(fā)明方法的步驟(I)包括以下子步驟(1-1)FCoE端點(diǎn)設(shè)備檢查其自身是否存在優(yōu)先級表,如果存在,則轉(zhuǎn)入步驟(1-3),否則轉(zhuǎn)入步驟(1-2);該優(yōu)先級表作為各虛擬鏈路優(yōu)先級的載體,與虛擬鏈路一一對應(yīng);(1-2)建立優(yōu)先級表,其中至少包括優(yōu)先級和虛擬鏈路的編號兩個(gè)字段;( 1-3)判斷優(yōu)先級表中的優(yōu)先級是否為手動(dòng)配置,若是則進(jìn)入步驟(1-4),否則進(jìn)入步驟(1-5);(l-4)FCoE端點(diǎn)設(shè)備從用戶端接收手動(dòng)配置程序的輸入,該輸入中包括有優(yōu)先級,然后轉(zhuǎn)入步驟(1-6);(1-5) FCoE端點(diǎn)設(shè)備自動(dòng)初始化一個(gè)優(yōu)先級,其值等于當(dāng)前系統(tǒng)中所有虛擬鏈路優(yōu)先級的最大值;(l-6)FCoE端點(diǎn)設(shè)備將優(yōu)先級放入登錄報(bào)文中,并將登錄報(bào)文發(fā)送到FCoE目標(biāo)交換機(jī)。如圖5所示,本發(fā)明方法的步驟(6)包括以下子步驟(6-l)FCoE端點(diǎn)設(shè)備定時(shí)統(tǒng)計(jì)各條虛擬鏈路對應(yīng)的數(shù)據(jù)收發(fā)緩沖區(qū)的數(shù)據(jù)傳輸負(fù)荷;其中統(tǒng)計(jì)的周期可以是虛擬鏈路維持周期的整數(shù)倍,統(tǒng)計(jì)的方法是計(jì)算每個(gè)虛擬鏈路數(shù)據(jù)收發(fā)緩沖區(qū)中當(dāng)前有效數(shù)據(jù)占整個(gè)數(shù)據(jù)收發(fā)緩沖區(qū)的比例;(6-2) FCoE端點(diǎn)設(shè)備得到所有虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷之后,按大小對所有傳輸負(fù)荷進(jìn)行排序。如圖6所示,本發(fā)明方法的步驟(7)包括以下子步驟(7-1)根據(jù)所有虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷動(dòng)態(tài)調(diào)整每條虛擬鏈路對應(yīng)的優(yōu)先級,原則是高的數(shù)據(jù)傳輸負(fù)荷對應(yīng)高優(yōu)先級,低的數(shù)據(jù)傳輸符合對應(yīng)低優(yōu)先級;(7-2)將每條虛擬鏈路的優(yōu)先級寫入對應(yīng)優(yōu)先級表中,并將該優(yōu)先級寫入每條虛擬鏈路對應(yīng)的保持報(bào)文中;寫入的位置可以參考其在登錄報(bào)文的位置。在本發(fā)明的另一個(gè)實(shí)施方式中,上述步驟(1-1)和(1-2)也可以設(shè)置于步驟(1-5)之后,這完全取決于實(shí)際的應(yīng)用。 本發(fā)明以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化系統(tǒng)包括優(yōu)先級值產(chǎn)生模塊1、報(bào)文判斷模塊2、數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊3、虛擬鏈路新建判斷模塊4、虛擬鏈路存在判斷模塊5、數(shù)據(jù)傳輸負(fù)荷獲取模塊6、虛擬鏈路優(yōu)先級調(diào)整模塊7、優(yōu)先級獲取并按優(yōu)先級數(shù)據(jù)傳輸模塊8、按優(yōu)先級數(shù)據(jù)傳輸模塊9、虛擬鏈路釋放判斷模塊10、清除幀發(fā)出模塊11、資源清除模塊12,其中,優(yōu)先級值產(chǎn)生模塊1、報(bào)文判斷模塊2、數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊3、虛擬鏈路新建判斷模塊4、虛擬鏈路存在判斷模塊5、數(shù)據(jù)傳輸負(fù)荷獲取模塊6、虛擬鏈路優(yōu)先級調(diào)整模塊
7、按優(yōu)先級數(shù)據(jù)傳輸模塊9、虛擬鏈路釋放判斷模塊10、清除幀發(fā)出模塊11是設(shè)置于FCoE端點(diǎn)設(shè)備中,優(yōu)先級獲取并按優(yōu)先級數(shù)據(jù)傳輸模塊8和資源清除模塊12是設(shè)置于FCoE目標(biāo)交換機(jī)中。優(yōu)先級值產(chǎn)生模塊I用于產(chǎn)生初始化優(yōu)先級值,并寫入FCoE登錄報(bào)文,并將該報(bào)文單播至目標(biāo)FCoE交換機(jī)。報(bào)文判斷模塊2用于判斷從目標(biāo)FCoE交換機(jī)接收到的是應(yīng)答報(bào)文還是拒絕報(bào)文,如果是應(yīng)答報(bào)文,則說明虛擬鏈路建立成功,并進(jìn)入數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊3,如果接收到拒絕報(bào)文,則進(jìn)入虛擬鏈路新建判斷模塊4。數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊3用于FCoE端點(diǎn)設(shè)備為新建的虛擬鏈路分配對應(yīng)的數(shù)據(jù)收發(fā)緩沖區(qū)并將優(yōu)先級寫入與該虛擬鏈路關(guān)聯(lián)的優(yōu)先級表項(xiàng)之中。虛擬鏈路新建判斷模塊4用于判斷是否需要新建一條虛擬鏈路。如果需要?jiǎng)t進(jìn)入優(yōu)先級值產(chǎn)生模塊1,否則進(jìn)入虛擬鏈路存在判斷模塊5。虛擬鏈路存在判斷模塊5用于FCoE判斷當(dāng)前是否存在虛擬鏈路,如果有則進(jìn)入數(shù)據(jù)傳輸負(fù)荷獲取模塊6,否則進(jìn)入虛擬鏈路新建判斷模塊4。數(shù)據(jù)傳輸負(fù)荷獲取模塊6用于FCoE端點(diǎn)設(shè)備中的所有虛擬鏈路進(jìn)行監(jiān)控,以獲取每條虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷。虛擬鏈路優(yōu)先級調(diào)整模塊7用于FCoE端點(diǎn)設(shè)備根據(jù)所獲取的數(shù)據(jù)傳輸負(fù)荷動(dòng)態(tài)調(diào)整每條虛擬鏈路對應(yīng)的優(yōu)先級并將調(diào)整后的優(yōu)先級放置到每條虛擬鏈路的保持報(bào)文中。優(yōu)先級獲取并按優(yōu)先級數(shù)據(jù)傳輸模塊8用于FCoE目標(biāo)交換機(jī)從虛擬鏈路的保持報(bào)文中提取優(yōu)先級,并且根據(jù)優(yōu)先級利用每個(gè)虛擬鏈路進(jìn)行數(shù)據(jù)傳輸。虛擬鏈路釋放判斷模塊10用于FCoE端點(diǎn)設(shè)備在數(shù)據(jù)傳輸結(jié)束后,判斷是否需要釋放虛擬鏈路,如果是,則進(jìn)入清除幀發(fā)出模塊模塊11,否則進(jìn)入虛擬鏈路新建判斷模塊4。
按優(yōu)先級數(shù)據(jù)傳輸模塊9用于FCoE端點(diǎn)設(shè)備根據(jù)優(yōu)先級利用每個(gè)虛擬鏈路進(jìn)行數(shù)據(jù)傳輸。清除幀發(fā)出模塊11用于FCoE目標(biāo)交換機(jī)發(fā)出虛擬鏈路清除幀,并將虛擬鏈路對應(yīng)的優(yōu)先級寫入虛擬鏈路清除幀中。資源清除模塊12用于FCoE目標(biāo)交換機(jī)根據(jù)虛擬鏈路清除幀將該虛擬鏈路對應(yīng)的優(yōu)先級和緩沖區(qū)清除。圖7為本發(fā)明光纖通道端點(diǎn)設(shè)備的結(jié)構(gòu)示意圖,該結(jié)構(gòu)只展現(xiàn)了與本發(fā)明直接相關(guān)的模塊。FCoE端點(diǎn)設(shè)備包括虛擬鏈路初始化模塊701、處理模塊702、虛擬鏈路保持模塊703,該三個(gè)模塊的工作圍繞虛擬鏈路初始優(yōu)先級值的初始化、虛擬鏈路的建立、虛擬鏈路的維持、動(dòng)態(tài)優(yōu)先級的生成、與FCoE交換機(jī)之間優(yōu)先級的同步等。本實(shí)施例將FCoE端點(diǎn)設(shè)備的關(guān)于多優(yōu)先級虛擬鏈路建立及動(dòng)態(tài)調(diào)整的功能部分抽象為三個(gè)模 塊。該三個(gè)模塊相互協(xié)作、并結(jié)合必要的一些資源,如處理器、存儲(chǔ)資源,完成本發(fā)明中FCoE端點(diǎn)設(shè)備所具有的功能。本實(shí)施例提供的實(shí)際FCoE端點(diǎn)設(shè)備應(yīng)該至少包含上述圖中所示模塊。同時(shí)可以看至IJ,本結(jié)構(gòu)示意圖同樣適用于表示本發(fā)明中的FCF中關(guān)于優(yōu)先級獲取與處理的部分。本發(fā)明提供了一種以太網(wǎng)光纖通道虛擬鏈路優(yōu)化方法及系統(tǒng),F(xiàn)CoE端點(diǎn)設(shè)備在初始化虛擬鏈路時(shí),為其分配一個(gè)初始化優(yōu)先級值作為初始優(yōu)先級,處理模塊根據(jù)各虛擬鏈路的優(yōu)先級分配處理資源,使得優(yōu)先級高的虛擬鏈路獲得更多的資源;在處理的同時(shí),F(xiàn)CoE端點(diǎn)設(shè)備還需監(jiān)控每條鏈路的數(shù)據(jù)傳輸負(fù)荷,根據(jù)負(fù)荷高低動(dòng)態(tài)調(diào)整對應(yīng)優(yōu)先級,使得高負(fù)荷虛擬鏈路的優(yōu)先級被提高,低負(fù)荷虛擬鏈路優(yōu)先級被降低;FCoE交換機(jī)可以從FCoE端點(diǎn)設(shè)備發(fā)出的登錄報(bào)文和虛擬鏈路維持報(bào)文中提取該鏈路優(yōu)先級值,并按優(yōu)先級進(jìn)行轉(zhuǎn)發(fā)處理;以上方法及設(shè)備可有效按照虛擬鏈路的負(fù)荷動(dòng)態(tài)調(diào)整處理資源,避免了處理資源分配不合理,最大優(yōu)化了處理資源的使用。本領(lǐng)域的技術(shù)人員容易理解,以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化方法,其特征在于,包括以下步驟(1)FCoE端點(diǎn)設(shè)備產(chǎn)生初始化優(yōu)先級值,并寫入FCoE登錄報(bào)文,并將該報(bào)文單播至目標(biāo)FCoE交換機(jī);(2)FCoE端點(diǎn)設(shè)備判斷從目標(biāo)FCoE交換機(jī)接收到的是應(yīng)答報(bào)文還是拒絕報(bào)文,如果是應(yīng)答報(bào)文,則說明虛擬鏈路建立成功,并進(jìn)入步驟(3),如果接收到拒絕報(bào)文,則進(jìn)入步驟(4);(3)FCoE端點(diǎn)設(shè)備為該新建立的虛擬鏈路分配數(shù)據(jù)收發(fā)緩沖區(qū),并將優(yōu)先級寫入與該虛擬鏈路關(guān)聯(lián)的優(yōu)先級表項(xiàng)之中;(4)FCoE端點(diǎn)設(shè)備接收來自用戶的請求,并根據(jù)該請求判斷是否需要建立新的虛擬鏈路,如果是則返回步驟(1),否則進(jìn)入步驟(5);(5)FCoE端點(diǎn)設(shè)備判斷其中是否存在有虛擬鏈路,如果有則進(jìn)入步驟(6),否則返回步驟⑷;(6)FCoE端點(diǎn)設(shè)備對FCoE端點(diǎn)設(shè)備中的所有虛擬鏈路進(jìn)行監(jiān)控,以獲取每條虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷;(7)FCoE端點(diǎn)設(shè)備根據(jù)所獲取的數(shù)據(jù)傳輸負(fù)荷動(dòng)態(tài)調(diào)整每條虛擬鏈路對應(yīng)的優(yōu)先級, 調(diào)整的原則是高傳輸負(fù)荷對應(yīng)高的優(yōu)先級,并將調(diào)整后的優(yōu)先級放置到每條虛擬鏈路的保持報(bào)文中;(S)FCoE目標(biāo)交換機(jī)從虛擬鏈路的保持報(bào)文中提取優(yōu)先級并根據(jù)優(yōu)先級利用每個(gè)虛擬鏈路進(jìn)行數(shù)據(jù)傳輸;(9)FCoE端點(diǎn)設(shè)備根據(jù)優(yōu)先級利用每個(gè)虛擬鏈路進(jìn)行數(shù)據(jù)傳輸;(10)FCoE端點(diǎn)設(shè)備在數(shù)據(jù)傳輸結(jié)束后,判斷是否需要釋放虛擬鏈路,如果是,則轉(zhuǎn)入步驟(11),否則返回步驟(4);(11)FCoE端點(diǎn)設(shè)備向FCoE目標(biāo)交換機(jī)發(fā)出虛擬鏈路清除幀,并將虛擬鏈路對應(yīng)的優(yōu)先級寫入虛擬鏈路清除幀中;(12)FCoE目標(biāo)交換機(jī)根據(jù)虛擬鏈路清除幀將該虛擬鏈路對應(yīng)的優(yōu)先級和緩沖區(qū)清除。
2.根據(jù)權(quán)利要求1所述的優(yōu)化方法,其特征在于,F(xiàn)CoE端點(diǎn)設(shè)備是帶有FCoE網(wǎng)卡的終端設(shè)備。
3.根據(jù)權(quán)利要求1所述的優(yōu)化方法,其特征在于,初始化優(yōu)先級值是寫入在FCoE登錄報(bào)文頭部的FLOGI描述符的保留字段中。
4.根據(jù)權(quán)利要求1所述的優(yōu)化方法,其特征在于,步驟(6)中的數(shù)據(jù)傳輸負(fù)荷是以為每條虛擬鏈路分配的數(shù)據(jù)收發(fā)緩沖區(qū)中當(dāng)前有效數(shù)據(jù)占整個(gè)數(shù)據(jù)收發(fā)緩沖區(qū)的比例來衡量的。
5.根據(jù)權(quán)利要求1所述的優(yōu)化方法,其特征在于,步驟(I)包括以下子步驟(1-DFCoE端點(diǎn)設(shè)備檢查其自身是否存在優(yōu)先級表,如果存在,則轉(zhuǎn)入步驟(1-3),否則轉(zhuǎn)入步驟(1-2);(1-2)建立優(yōu)先級表,其中至少包括優(yōu)先級和虛擬鏈路的編號兩個(gè)字段;(1-3)判斷優(yōu)先級表中的優(yōu)先級是否為手動(dòng)配置,若是則進(jìn)入步驟(1-4),否則進(jìn)入步驟(1-5);(l-4)FCoE端點(diǎn)設(shè)備從用戶端接收手動(dòng)配置程序的輸入,該輸入中包括有優(yōu)先級,然后轉(zhuǎn)入步驟(1-6);(1-5) FCoE端點(diǎn)設(shè)備自動(dòng)初始化一個(gè)優(yōu)先級,其值等于當(dāng)前系統(tǒng)中所有虛擬鏈路優(yōu)先級的最大值;(1-6) FCoE端點(diǎn)設(shè)備將優(yōu)先級放入登錄報(bào)文中,并將登錄報(bào)文發(fā)送到FCoE目標(biāo)交換機(jī)。
6.根據(jù)權(quán)利要求1所述的優(yōu)化方法,其特征在于,步驟(6)包括以下子步驟(6-1) FCoE端點(diǎn)設(shè)備定時(shí)統(tǒng)計(jì)各條虛擬鏈路對應(yīng)的數(shù)據(jù)收發(fā)緩沖區(qū)的數(shù)據(jù)傳輸負(fù)荷; (6-2) FCoE端點(diǎn)設(shè)備得到所有虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷之后,按大小對所有傳輸負(fù)荷進(jìn)行排序。
7.根據(jù)權(quán)利要求6所述的優(yōu)化方法,其特征在于,統(tǒng)計(jì)的周期可以是虛擬鏈路維持周期的整數(shù)倍,統(tǒng)計(jì)的方法是計(jì)算每個(gè)虛擬鏈路數(shù)據(jù)收發(fā)緩沖區(qū)中當(dāng)前有效數(shù)據(jù)占整個(gè)數(shù)據(jù)收發(fā)緩沖區(qū)的比例。
8.根據(jù)權(quán)利要求1所述的優(yōu)化方法,其特征在于,步驟(7)包括以下子步驟(7-1)根據(jù)所有虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷動(dòng)態(tài)調(diào)整每條虛擬鏈路對應(yīng)的優(yōu)先級,原則是高的數(shù)據(jù)傳輸負(fù)荷對應(yīng)高優(yōu)先級,低的數(shù)據(jù)傳輸符合對應(yīng)低優(yōu)先級;(7-2)將每條虛擬鏈路的優(yōu)先級寫入對應(yīng)優(yōu)先級表中,并將該優(yōu)先級寫入每條虛擬鏈路對應(yīng)的保持報(bào)文中。
9.一種以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化系統(tǒng),其特征在于,包括優(yōu)先級值產(chǎn)生模塊、報(bào)文判斷模塊、數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊、虛擬鏈路新建判斷模塊、虛擬鏈路存在判斷模塊、數(shù)據(jù)傳輸負(fù)荷獲取模塊、虛擬鏈路優(yōu)先級調(diào)整模塊、優(yōu)先級獲取并按優(yōu)先級數(shù)據(jù)傳輸模塊、按優(yōu)先級數(shù)據(jù)傳輸模塊、虛擬鏈路釋放判斷模塊、清除幀發(fā)出模塊、資源清除模塊;優(yōu)先級值產(chǎn)生模塊、報(bào)文判斷模塊、數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊、虛擬鏈路新建判斷模塊、虛擬鏈路存在判斷模塊、數(shù)據(jù)傳輸負(fù)荷獲取模塊、虛擬鏈路優(yōu)先級調(diào)整模塊、按優(yōu)先級數(shù)據(jù)傳輸模塊、虛擬鏈路釋放判斷模塊、清除幀發(fā)出模塊是設(shè)置于FCoE端點(diǎn)設(shè)備中,優(yōu)先級獲取并按優(yōu)先級數(shù)據(jù)傳輸模塊和資源清除模塊是設(shè)置于FCoE目標(biāo)交換機(jī)中;優(yōu)先級值產(chǎn)生模塊用于產(chǎn)生初始化優(yōu)先級值,并寫入FCoE登錄報(bào)文,并將該報(bào)文單播至目標(biāo)FCoE交換機(jī);報(bào)文判斷模塊用于判斷從目標(biāo)FCoE交換機(jī)接收到的是應(yīng)答報(bào)文還是拒絕報(bào)文,如果是應(yīng)答報(bào)文,則說明虛擬鏈路建立成功,并進(jìn)入數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊,如果接收到拒絕報(bào)文,則進(jìn)入虛擬鏈路新建判斷模塊;數(shù)據(jù)收發(fā)緩沖區(qū)分配模塊用于FCoE端點(diǎn)設(shè)備為新建的虛擬鏈路分配對應(yīng)的數(shù)據(jù)收發(fā)緩沖區(qū)并將優(yōu)先級寫入與該虛擬鏈路關(guān)聯(lián)的優(yōu)先級表項(xiàng)之中;虛擬鏈路新建判斷模塊用于判斷是否需要新建一條虛擬鏈路。如果需要?jiǎng)t進(jìn)入優(yōu)先級值產(chǎn)生模塊,否則進(jìn)入虛擬鏈路存在判斷模塊;虛擬鏈路存在判斷模塊用于FCoE判斷當(dāng)前是否存在虛擬鏈路,如果有則進(jìn)入數(shù)據(jù)傳輸負(fù)荷獲取模塊,否則進(jìn)入虛擬鏈路新建判斷模塊;數(shù)據(jù)傳輸負(fù)荷獲取模塊用于FCoE端點(diǎn)設(shè)備中的所有虛擬鏈路進(jìn)行監(jiān)控,以獲取每條虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷;虛擬鏈路優(yōu)先級調(diào)整模塊用于FCoE端點(diǎn)設(shè)備根據(jù)所獲取的數(shù)據(jù)傳輸負(fù)荷動(dòng)態(tài)調(diào)整每條虛擬鏈路對應(yīng)的優(yōu)先級并將調(diào)整后的優(yōu)先級放置到每條虛擬鏈路的保持報(bào)文中;優(yōu)先級獲取并按優(yōu)先級數(shù)據(jù)傳輸模塊用于FCoE目標(biāo)交換機(jī)從虛擬鏈路的保持報(bào)文中提取優(yōu)先級,并且根據(jù)優(yōu)先級利用每個(gè)虛擬鏈路進(jìn)行數(shù)據(jù)傳輸;虛擬鏈路釋放判斷模塊用于FCoE端點(diǎn)設(shè)備在數(shù)據(jù)傳輸結(jié)束后,判斷是否需要釋放虛擬鏈路,如果是,則進(jìn)入清除幀發(fā)出模塊模塊,否則進(jìn)入虛擬鏈路新建判斷模塊;按優(yōu)先級數(shù)據(jù)傳輸模塊用于FCoE 端點(diǎn)設(shè)備根據(jù)優(yōu)先級利用每個(gè)虛擬鏈路進(jìn)行數(shù)據(jù)傳輸;清除幀發(fā)出模塊用于FCoE目標(biāo)交換機(jī)發(fā)出虛擬鏈路清除幀,并將虛擬鏈路對應(yīng)的優(yōu)先級寫入虛擬鏈路清除幀中;資源清除模塊用于FCoE目標(biāo)交換機(jī)根據(jù)虛擬鏈路清除幀將該虛擬鏈路對應(yīng)的優(yōu)先級和緩沖區(qū)清除。
全文摘要
本發(fā)明公開了一種以太網(wǎng)光纖通道虛擬鏈路的優(yōu)化方法,包括FCoE端點(diǎn)設(shè)備產(chǎn)生初始化優(yōu)先級值,并寫入FCoE登錄報(bào)文,并將該報(bào)文單播至同一網(wǎng)絡(luò)的目標(biāo)FCoE交換機(jī),F(xiàn)CoE端點(diǎn)設(shè)備判斷從目標(biāo)FCoE交換機(jī)接收到的是應(yīng)答報(bào)文還是拒絕報(bào)文,如果接收到拒絕報(bào)文,則FCoE端點(diǎn)設(shè)備接收來自用戶的請求,根據(jù)該請求判斷是否需要建立新的虛擬鏈路,如果不是,則FCoE端點(diǎn)設(shè)備判斷其中是否存在有虛擬鏈路,如果有則FCoE端點(diǎn)設(shè)備對其中的所有虛擬鏈路進(jìn)行監(jiān)控,以獲取每條虛擬鏈路的數(shù)據(jù)傳輸負(fù)荷,F(xiàn)CoE端點(diǎn)設(shè)備根據(jù)所獲取的數(shù)據(jù)傳輸負(fù)荷動(dòng)態(tài)調(diào)整每條虛擬鏈路對應(yīng)的優(yōu)先級,并將優(yōu)先級放置到每條虛擬鏈路的保持報(bào)文中。本發(fā)明解決現(xiàn)有方法中存在的虛擬鏈路處理資源分配不合理的問題。
文檔編號H04L12/911GK103023803SQ201210537578
公開日2013年4月3日 申請日期2012年12月12日 優(yōu)先權(quán)日2012年12月12日
發(fā)明者周功業(yè), 陳進(jìn)才, 張寅 , 彭畢雨, 侯君健, 陳濤 申請人:華中科技大學(xué)