用于提供網(wǎng)絡(luò)中基于信用的流控制的方法和系統(tǒng)的制作方法
【專利摘要】在一個(gè)實(shí)施例中,系統(tǒng)包括具有一個(gè)或多個(gè)相互連接的設(shè)備的網(wǎng)絡(luò),所述網(wǎng)絡(luò)包括第一設(shè)備,其具有第一端口和集成于第一處理器和/或由第一處理器執(zhí)行邏輯,所述邏輯適用于在所述第一端口和所述網(wǎng)絡(luò)中的第二設(shè)備的第二端口之間交換信用交換能力,從所述第二端口接收信用許可包,所述信用許可包指示許可到所述第一端口的信用;以及從所述第一端口發(fā)送一個(gè)或多個(gè)數(shù)據(jù)包到所述第二端口,所述一個(gè)或多個(gè)包對(duì)應(yīng)于所述許可的信用。根據(jù)更多的實(shí)施例描述了其他用于提供基于信用的流控制的方法和系統(tǒng)。
【專利說(shuō)明】用于提供網(wǎng)絡(luò)中基于信用的流控制的方法和系統(tǒng) 【背景技術(shù)】
[0001] 本發(fā)明涉及數(shù)據(jù)中心基礎(chǔ)結(jié)構(gòu),更具體的,本發(fā)明涉及基于信用的鏈路層流控制 和使用數(shù)據(jù)中心橋接交換(DCBX)的信用交換。
[0002] 基于以太網(wǎng)端口的流控制是基于反應(yīng)的停-走(開-關(guān))機(jī)制,稱為PAUSE,如 Institute of Electrical and Engineers (IEEE)標(biāo)準(zhǔn) 802. 3x 所定義的,其僅用于接收器 的緩沖積壓超過(guò)了特定的高閾值之后,發(fā)送PAUSE (例如,停止)信號(hào)給發(fā)送器,并當(dāng)接收器 的緩沖積壓下降到一個(gè)低閾值以下時(shí)發(fā)送一個(gè)UNPAUSE (例如,啟動(dòng))信號(hào)。為了確保不發(fā) 生由緩沖溢出引起的幀丟失,必須將接收器的高閾值設(shè)置在接收器緩沖能力之下至少一個(gè) 帶寬延時(shí)積(BDP),因此增加了緩沖大小的需求。而且,對(duì)于一個(gè)給定的閾值設(shè)定,例如由于 在發(fā)射器和接收器之間安裝了較長(zhǎng)的電纜,或由于PAUSE幀的延遲處理,BDP的增加可能導(dǎo) 致不想要的幀丟失。線路速率的持續(xù)增加(從原始的lOMb/s每端口增加到100Gb/ S和更快) 導(dǎo)致了 BDP的增加而加劇了這一問(wèn)題。因此,以太網(wǎng)易采用主動(dòng)的基于預(yù)留的流控制和具 有能保證接收器緩沖空間機(jī)制的幀接受方案,以確保不依賴于BDP而不發(fā)生幀丟失將是有 利的。
[0003] 數(shù)據(jù)交換之前在對(duì)等端口之間的交互帶來(lái)了更多的確定性和更好的資源利用。以 太網(wǎng)并沒有用于滿足特定應(yīng)用和聚集以太網(wǎng)無(wú)限帶寬的機(jī)制。
[0004] 因此,以太網(wǎng)的安裝將極大地受益于基于信用的流控制機(jī)制以帶來(lái)更多的傳送穩(wěn) 定性。
[0005] 發(fā)明概述
[0006] 在一個(gè)實(shí)施例中,系統(tǒng)包括具有一個(gè)或多個(gè)相互連接的設(shè)備的網(wǎng)絡(luò),所述網(wǎng)絡(luò)包 括第一設(shè)備,其具有第一端口和集成于第一處理器和/或由第一處理器執(zhí)行的邏輯,所述 邏輯適用于在所述第一端口和網(wǎng)絡(luò)中第二設(shè)備的第二端口之間交換信用交換(CE)能力,從 所述第二端口接受信用許可包,所述信用許可包指示了許可到所述第一端口的信用,并且 從所述第一端口發(fā)送一個(gè)或多個(gè)數(shù)據(jù)包到所述第二端口,所述一個(gè)或多個(gè)包對(duì)應(yīng)于許可的 信用。
[0007] 在另一個(gè)實(shí)施例中,用于在網(wǎng)絡(luò)中提供基于信用的流控制的方法包括在第一端口 和第二端口之間交換CE能力,從所述第二端口發(fā)送信用許可包到所述第一端口,所述信用 許可包指示了許可到第一端口的信用,并且從所述第一端口發(fā)送一個(gè)或多個(gè)包到所述第二 端口,所述一個(gè)或多個(gè)包對(duì)應(yīng)于許可的信用。
[0008] 根據(jù)又另一個(gè)實(shí)施例,系統(tǒng)包括具有一個(gè)或多個(gè)相互連接的設(shè)備的網(wǎng)絡(luò),所述網(wǎng) 絡(luò)包括第一設(shè)備,其具有第一端口和集成于第一處理器和/或由第一處理器執(zhí)行的邏輯, 所述邏輯適用于在所述網(wǎng)絡(luò)的第二端口和所述第一端口之間交換信用交換(CE)能力,發(fā)送 信用請(qǐng)求包到所述第二端口,所述信用請(qǐng)求包指示了至少一個(gè)用于交換的信用的優(yōu)先級(jí)和 至少一個(gè)指示的用于交換的優(yōu)先級(jí)的信用量,從所述第二端口接受信用許可包,所述信用 許可包指示了許可到所述第一端口的信用,以及發(fā)送一個(gè)或多個(gè)數(shù)據(jù)包到所述第二端口, 所述一個(gè)或多個(gè)包對(duì)應(yīng)于許可的信用。系統(tǒng)還包括第二設(shè)備,其具有第二端口和集成于第 二處理器和/或由第二處理器執(zhí)行的第二邏輯,所述第二邏輯適用于從所述第一端口接受 信用請(qǐng)求包,響應(yīng)于所述信用請(qǐng)求包發(fā)送信用許可包到所述第一端口,以及從所述第一端 口接受一個(gè)或多個(gè)數(shù)據(jù)包。
[0009] 本發(fā)明的實(shí)施例和其他方面將在由本發(fā)明主旨的例子說(shuō)明的連同圖一起的下述 【具體實(shí)施方式】中更加清楚。 【專利附圖】
【附圖說(shuō)明】
[0010] 圖1根據(jù)一個(gè)實(shí)施例示出了網(wǎng)絡(luò)結(jié)構(gòu)。
[0011] 圖2根據(jù)一個(gè)實(shí)施例圖示了可以與圖1中的服務(wù)器和/或客戶端關(guān)聯(lián)的代表性的 硬件環(huán)境。
[0012] 圖3是根據(jù)一個(gè)實(shí)施例的簡(jiǎn)化的網(wǎng)絡(luò)系統(tǒng)圖。
[0013] 圖4是根據(jù)一個(gè)實(shí)施例的信用交換(CE)幀圖。
[0014] 圖5是根據(jù)一個(gè)實(shí)施例具有信用交換標(biāo)簽(CE-Tag)的幀圖。
[0015] 圖6是根據(jù)一個(gè)實(shí)施例的方法流程圖。 【具體實(shí)施方式】
[0016] 以下描述是為了說(shuō)明本發(fā)明的主旨,并不意味著限定本發(fā)明到此處權(quán)利要求的概 念。更進(jìn)一步,這里描述的特定性質(zhì)可以用于各種可能的每一個(gè)的描述的其他性質(zhì)的排列 組合的組合。
[0017] 除非此處另有說(shuō)明,給定所有術(shù)語(yǔ)的最廣的解釋包括被本領(lǐng)域技術(shù)人員熟知的和 /或在字典,條約等等中的說(shuō)明及意義所引申的意義。
[0018] 必須注意的是,如在說(shuō)明書和附加權(quán)利要求中使用的,單數(shù)形式"a","an"及"the" 包含復(fù)數(shù)指代除非另有說(shuō)明。
[0019] 在一個(gè)通常的實(shí)施例中,系統(tǒng)包括具有一個(gè)或多個(gè)相互連接的設(shè)備的網(wǎng)絡(luò),所述 網(wǎng)絡(luò)包括第一設(shè)備,其具有第一端口和集成于第一處理器和/或由第一處理器執(zhí)行的邏 輯,所述邏輯適用于在所述第一端口和網(wǎng)絡(luò)中第二設(shè)備的第二端口之間交換信用交換(CE) 能力,從所述第二端口接收信用許可包,信用許可包指示了許可到所述第一端口的信用,并 且從所述第一端口發(fā)送一個(gè)或多個(gè)數(shù)據(jù)包到所述第二端口,所述一個(gè)或多個(gè)包對(duì)應(yīng)于許可 的信用。
[0020] 在另一個(gè)通常的實(shí)施例中,用于在網(wǎng)絡(luò)中提供基于信用的流控制的方法包括在第 一端口和第二端口之間交換CE能力,從所述第二端口發(fā)送信用許可包到所述第一端口,所 述信用許可包指示了許可到所述第一端口的信用,并且從所述第一端口發(fā)送一個(gè)或多個(gè)包 到所述第二端口,所述一個(gè)或多個(gè)包對(duì)應(yīng)于許可信用。
[0021] 根據(jù)另又一個(gè)通常的實(shí)施例,系統(tǒng)包括具有一個(gè)或多個(gè)相互連接的設(shè)備的網(wǎng)絡(luò), 所述網(wǎng)絡(luò)包括第一設(shè)備,其具有第一端口和集成于第一處理器和/或由第一處理器執(zhí)行 的邏輯,所述邏輯適用于在所述第一端口和網(wǎng)絡(luò)中第二設(shè)備的第二端口之間交換信用交換 (CE)能力,發(fā)送信用請(qǐng)求包到所述第二端口,所述信用請(qǐng)求包指示了用于交換的信用的至 少一個(gè)優(yōu)先級(jí)以及用于交換的至少一個(gè)指示的優(yōu)先級(jí)中的每一個(gè)的信用量,從所述第二端 口接受信用許可包,信用許可包指示了許可到所述第一端口的信用,以及發(fā)送一個(gè)或多個(gè) 數(shù)據(jù)包到所述第二端口,所述一個(gè)或多個(gè)包對(duì)應(yīng)于許可的信用。系統(tǒng)還包括第二設(shè)備,其具 有第二端口和集成于第二處理器和/或由第二處理器執(zhí)行的邏輯,所述第二邏輯適用于從 所述第一端口接受信用請(qǐng)求包,響應(yīng)于所述信用請(qǐng)求包發(fā)送信用許可包到所述第一端口, 以及從所述第一端口接受一個(gè)或多個(gè)數(shù)據(jù)包。
[0022] 所屬【技術(shù)領(lǐng)域】的技術(shù)人員知道,本發(fā)明的各個(gè)方面可以實(shí)現(xiàn)為系統(tǒng)、方法或計(jì)算 機(jī)程序產(chǎn)品。因此,本發(fā)明的各個(gè)方面可以具體實(shí)現(xiàn)為以下形式,即:完全的硬件實(shí)施方式、 完全的軟件實(shí)施方式(包括固件、駐留軟件、微代碼等),或硬件和軟件方面結(jié)合的實(shí)施方 式,這里可以統(tǒng)稱為"電路"、"模塊"或"系統(tǒng)"。此外,在一些實(shí)施例中,本發(fā)明的各個(gè)方面 還可以實(shí)現(xiàn)為在一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品的形式,該計(jì)算機(jī)可讀介 質(zhì)中包含計(jì)算機(jī)可讀的程序代碼。
[0023] 可以利用一個(gè)或多個(gè)計(jì)算機(jī)可讀媒介的任何組合。計(jì)算機(jī)可讀媒介可以是計(jì)算機(jī) 可讀單媒介或非晶體管計(jì)算機(jī)可讀存儲(chǔ)媒介。非晶體管計(jì)算機(jī)可讀存儲(chǔ)媒介可以是,例如, 但不限定于電子,磁,光,電磁,紅外,或半導(dǎo)體系統(tǒng)、裝置或設(shè)備,或前述的任何適當(dāng)?shù)慕M 合。非晶體管計(jì)算機(jī)可讀存儲(chǔ)媒介的更多特別的例子(非窮盡列舉)包括如下:便攜式計(jì)算 機(jī)磁盤,硬盤,隨機(jī)存取存儲(chǔ)器(RAM),只讀存儲(chǔ)器(R0M),可擦除可編程只讀存儲(chǔ)器(ERP0M 或閃存存儲(chǔ)器),便攜式光盤只讀存儲(chǔ)器(⑶-R0M),藍(lán)光只讀存儲(chǔ)器(BD-R0M),光學(xué)存儲(chǔ)設(shè) 備,磁存儲(chǔ)設(shè)備,或任何上述的組合。在本文件的情況中,非晶體管計(jì)算機(jī)可讀存儲(chǔ)媒介可 以是任何有形的媒介,其可能是包含,或存儲(chǔ)一段程序或應(yīng)用,由指令執(zhí)行系統(tǒng),裝置或設(shè) 備使用,或與之相聯(lián)系。
[0024] 計(jì)算機(jī)可讀的信號(hào)介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號(hào), 其中承載了計(jì)算機(jī)可讀的程序代碼。這種傳播的數(shù)據(jù)信號(hào)可以采用多種形式,包括--但 不限于--電磁信號(hào)、光信號(hào)或上述的任意合適的組合。計(jì)算機(jī)可讀的信號(hào)介質(zhì)還可以是 計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)以外的任何計(jì)算機(jī)可讀介質(zhì),該計(jì)算機(jī)可讀介質(zhì)可以發(fā)送、傳播或者 傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者設(shè)備使用或者與其結(jié)合使用的程序。
[0025] 計(jì)算機(jī)可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括--但不限 于--無(wú)線、有線、光纜、RF等等,或者上述的任意合適的組合。
[0026] 可以以一種或多種程序設(shè)計(jì)語(yǔ)言的任意組合來(lái)編寫用于執(zhí)行本發(fā)明操作的計(jì)算 機(jī)程序代碼,所述程序設(shè)計(jì)語(yǔ)言包括面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言一諸如Java、Smalltalk、C++ 等,還包括常規(guī)的過(guò)程式程序設(shè)計(jì)語(yǔ)言一諸如"C"語(yǔ)言或類似的程序設(shè)計(jì)語(yǔ)言。程序代碼可 以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為一個(gè)獨(dú)立的軟件包執(zhí)行、 部分在用戶計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。 在涉及遠(yuǎn)程計(jì)算機(jī)的情形中,遠(yuǎn)程計(jì)算機(jī)可以通過(guò)任意種類的網(wǎng)絡(luò)--包括局域網(wǎng)(LAN) 或廣域網(wǎng)(WAN)-連接到用戶計(jì)算機(jī),或者,可以連接到外部計(jì)算機(jī)(例如利用因特網(wǎng)服務(wù) 提供商來(lái)通過(guò)因特網(wǎng)連接)。
[0027] 下面將參照根據(jù)本發(fā)明實(shí)施例的方法、裝置(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖和 /或框圖描述本發(fā)明。應(yīng)當(dāng)理解,流程圖和/或框圖的每個(gè)方框以及流程圖和/或框圖中 各方框的組合,都可以由計(jì)算機(jī)程序指令實(shí)現(xiàn)。這些計(jì)算機(jī)程序指令可以提供給通用計(jì)算 機(jī)、專用計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機(jī)器,使得這些計(jì)算 機(jī)程序指令在通過(guò)計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行時(shí),產(chǎn)生了實(shí)現(xiàn)流程圖 和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作的裝置。
[0028] 也可以把這些計(jì)算機(jī)程序指令存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中,這些指令使得計(jì)算機(jī)、 其它可編程數(shù)據(jù)處理裝置、或其他設(shè)備以特定方式工作,從而,存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中的 指令就產(chǎn)生出包括實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作的指令 的制造品(article of manufacture)〇
[0029] 也可以加載計(jì)算機(jī)程序指令到計(jì)算機(jī),其他可編程的數(shù)據(jù)處理裝置,或其他設(shè)備 上以引起一系列操作步驟在計(jì)算機(jī),其他可編程的數(shù)據(jù)處理裝置,或其他設(shè)備上執(zhí)行,以產(chǎn) 生計(jì)算機(jī)執(zhí)行過(guò)程,使得執(zhí)行在計(jì)算機(jī)或其他可編程裝置上的指令提供執(zhí)行流程圖或方塊 圖中特定的功能。
[0030] 圖1根據(jù)一個(gè)實(shí)施例示出了網(wǎng)絡(luò)結(jié)構(gòu)100。如圖1所示,提供了包括第一遠(yuǎn)程網(wǎng)絡(luò) 104和第二遠(yuǎn)程網(wǎng)絡(luò)106的多個(gè)遠(yuǎn)程網(wǎng)絡(luò)102。網(wǎng)關(guān)101可以連接在遠(yuǎn)程網(wǎng)絡(luò)102和鄰近 網(wǎng)絡(luò)108之間。在本發(fā)明網(wǎng)絡(luò)結(jié)構(gòu)100的情況中,網(wǎng)絡(luò)104, 106可以各自采取任何形式,包 括但不限于LAN,VLAN,WAN例如互聯(lián)網(wǎng),公共開關(guān)電話網(wǎng)絡(luò)(PSTN),內(nèi)部電話網(wǎng)絡(luò)等等。
[0031] 在使用中,網(wǎng)關(guān)101用作從遠(yuǎn)程網(wǎng)絡(luò)102到鄰近網(wǎng)絡(luò)108的入口點(diǎn)。例如,網(wǎng)關(guān)101 可以用作路由器,其能夠指引到達(dá)網(wǎng)關(guān)101的給定的數(shù)據(jù)包,以及可以用作開關(guān),其能夠?yàn)?給定的包提供網(wǎng)關(guān)101的實(shí)際進(jìn)出路徑。
[0032] 進(jìn)一步的還包括連接于鄰近網(wǎng)絡(luò)108的至少一個(gè)數(shù)據(jù)服務(wù)器114,并且其可以通 過(guò)網(wǎng)關(guān)101從遠(yuǎn)程網(wǎng)絡(luò)102訪問(wèn)。應(yīng)當(dāng)注意的是,一個(gè)或多個(gè)數(shù)據(jù)服務(wù)器114可以包括任 何類型的計(jì)算設(shè)備或組件。連接于每個(gè)數(shù)據(jù)服務(wù)器114的是多個(gè)用戶設(shè)備116。這些用戶 設(shè)備116可以包括臺(tái)式計(jì)算機(jī),筆記本計(jì)算機(jī),手持計(jì)算機(jī),打印機(jī),和/或任何類型的含有 邏輯的設(shè)備。應(yīng)當(dāng)注意的是在一些實(shí)施例中,用戶設(shè)備111也可以直接連接到任何網(wǎng)絡(luò)。
[0033] 外部設(shè)備120或一系列外部設(shè)備120 (例如,傳真機(jī),打印機(jī),掃描儀,硬盤驅(qū)動(dòng)器, 聯(lián)網(wǎng)的和/或本地的存儲(chǔ)單元或系統(tǒng)等等)可以連接到網(wǎng)絡(luò)104, 106, 108中的一個(gè)或多個(gè)。 應(yīng)當(dāng)注意,數(shù)據(jù)庫(kù)和/或附加的組件可以與連接到網(wǎng)絡(luò)104, 106, 108的任何類型的網(wǎng)絡(luò)元 件一起使用,或集成到這些網(wǎng)絡(luò)元件中。在本描述的情況中,網(wǎng)絡(luò)元件可以指網(wǎng)絡(luò)的任何組 件。
[0034] 根據(jù)一些方法,此處描述的方法和系統(tǒng)可以用和/或在虛擬系統(tǒng)和/或仿真一個(gè) 或多個(gè)其他系統(tǒng)的系統(tǒng)實(shí)施,例如仿真IBM z/OS環(huán)境的UNIX系統(tǒng),虛擬架設(shè)MICROSOFT WINDOWS環(huán)境的UNIX系統(tǒng),仿真IBM/0S環(huán)境的MICROSOFT WINDOWS系統(tǒng)等等。在一些實(shí)施 例中,可以通過(guò)使用VMWARE軟件來(lái)提高這樣的虛擬和/或仿真。
[0035] 在更多的方法中,一個(gè)或多個(gè)網(wǎng)絡(luò)104, 106, 108可以代表一簇系統(tǒng),通常被稱為 "云"。在云計(jì)算中,共享的資源,例如處理能力,外圍設(shè)備,軟件,數(shù)據(jù),服務(wù)器等等被以按需 關(guān)系提供給云中的任何系統(tǒng),因此允許在多個(gè)計(jì)算系統(tǒng)間訪問(wèn)和分配服務(wù)。云計(jì)算典型的 涉及運(yùn)行在云中的系統(tǒng)間的互聯(lián)網(wǎng)連接,但是如本領(lǐng)域中所知的,也可以使用其他連接系 統(tǒng)的技術(shù)。
[0036] 圖2根據(jù)一個(gè)實(shí)施例示出了與圖1中的用戶設(shè)備116和/或服務(wù)器114相關(guān)聯(lián)的 代表性的硬件環(huán)境。圖2根據(jù)多個(gè)實(shí)施例示出了工作站的典型硬件配置,該工作站具有中 央處理單元(CPU)210,例如微處理器,和通過(guò)一個(gè)或多個(gè)總線212互聯(lián)的多個(gè)其他單元,根 據(jù)各種實(shí)施例,總線可以是不同類型,如局部總線,并行總線,串行總線等等。
[0037] 圖2所示的工作站包括隨機(jī)存取存儲(chǔ)器(RAM) 214,只讀存儲(chǔ)器(ROM) 216, I/O適 配器218,用于連接例如硬盤存儲(chǔ)單元220的外圍設(shè)備到一個(gè)或多個(gè)總線212,用戶接口適 配器222用于連接鍵盤224,鼠標(biāo)226,揚(yáng)聲器228,麥克風(fēng)232,和/或其他用戶接口設(shè)備如 觸摸屏,數(shù)碼相機(jī)(未示出)等到一個(gè)或多個(gè)總線212,通信適配器234用于連接工作站到通 信網(wǎng)絡(luò)235 (例如數(shù)據(jù)處理網(wǎng)絡(luò))以及顯示適配器236用于連接一個(gè)或多個(gè)總線212到顯 示設(shè)備238.
[0038] 工作站可以有駐留于其上的操作系統(tǒng)如MICROSOFT WINDOWS操作系統(tǒng)(OS),MAC 0S,UNIX 0S,等等。應(yīng)當(dāng)理解,可以在除了上述平臺(tái)及操作系統(tǒng)以外的平臺(tái)及操作系統(tǒng)上實(shí) 施優(yōu)選的實(shí)施例??梢杂肑AVA, XML, C和/或C++語(yǔ)g,或其他編程語(yǔ)g連同基于對(duì)象的編 程方法編寫優(yōu)選的實(shí)施例??梢允褂妹嫦?qū)ο蟮木幊蹋?0P),其越來(lái)越多的被使用于開發(fā)復(fù) 雜應(yīng)用。
[0039] 現(xiàn)參照?qǐng)D3,圖示了根據(jù)一個(gè)實(shí)施例的系統(tǒng)300的簡(jiǎn)單的設(shè)備與設(shè)備的交互。第一 設(shè)備302訪問(wèn)和/或支持一個(gè)或多個(gè)端口 306,其適用于接收和/或傳送數(shù)據(jù)。第二設(shè)備 304訪問(wèn)和/或支持一個(gè)或多個(gè)端口 308,其適用于接收和/或傳送數(shù)據(jù)。設(shè)備302, 304可 以是開關(guān),路由器,服務(wù)器或任何其他適當(dāng)?shù)木W(wǎng)絡(luò)設(shè)備(實(shí)質(zhì)的或虛擬的)。設(shè)備302, 304的 其中一個(gè)或兩個(gè)都可以與開關(guān)控制器304 (例如,軟件定義網(wǎng)絡(luò)(SDN)控制器)通信,使得可 以通過(guò)具有網(wǎng)絡(luò)意識(shí)的開關(guān)控制器304提高設(shè)備之間的傳送。
[0040] 為了描述,第一設(shè)備302可以視為數(shù)據(jù)包發(fā)送器,并且第二設(shè)備304可以視為數(shù)據(jù) 包接收器。在一個(gè)實(shí)施例中,為了從第一設(shè)備302發(fā)送數(shù)據(jù)包到第二設(shè)備304,可以有兩種 選擇。第一種選擇是,指示信用請(qǐng)求310的包首先從第一設(shè)備302發(fā)送到第二設(shè)備304。響 應(yīng)于信用請(qǐng)求包310,第二設(shè)備304可以發(fā)送指示信用許可312的包給第一設(shè)備302。請(qǐng)求 的信用量可以基于要發(fā)送幀的大小。
[0041] 第二種選擇是,第二設(shè)備304,在沒有接收到任何提示或請(qǐng)求包的情況下,發(fā)送 信用許可包給任何連接至此的設(shè)備,其可以是發(fā)送包給第二設(shè)備304的設(shè)備,如第一設(shè)備 302。
[0042] 許可的信用量可以基于請(qǐng)求的信用量,可用的發(fā)送緩沖量,可用于交換的信用量, 和/或任何其他合適的因素。在沒有接收到信用請(qǐng)求的一種方法中,由信用許可包許可的 信用量可以是駐留在第二設(shè)備304上的可用信用的全部或一部分。信用單位(交換一個(gè)信 用可以發(fā)送的數(shù)據(jù)量)可以是最小值8位(例如,256位,512位(一份數(shù)據(jù)),1024位等)和一 個(gè)最大傳送單位的最大值(MTU),其可以是很多份數(shù)據(jù)。當(dāng)其有利于優(yōu)化性能、用戶期望等 時(shí),信用單位可以超過(guò)MTU的大小。
[0043] 在一個(gè)實(shí)施例中可以用信用單位的默認(rèn)值512位,其可以是用戶可調(diào)和/或通過(guò) 策略或編程等被修改的。
[0044] 此外,包的優(yōu)先級(jí)值可以與要發(fā)送幀的IEEE802. 1P值相關(guān),或與服務(wù)類(C0S)隊(duì) 列優(yōu)先級(jí)值相關(guān)。另外,在一個(gè)方法中,可選的被包括的通道標(biāo)識(shí)符(ID)可以基于服務(wù)標(biāo) 記(S-Tag),源MAC地址,或其他任何可編程的參數(shù)。
[0045] 為了確定設(shè)備302, 304中的每一個(gè)是否能用于基于信用的流控制,可以在每個(gè)設(shè) 備的端口之間交換信用交換(CE )能力。
[0046] 在一個(gè)實(shí)施例中,可以擴(kuò)展和/或修改數(shù)據(jù)中心橋接交換(DCBX)協(xié)議以允許CE能 力的交換。CE能力可以包括對(duì)等端口之間流控制需要的信息。在一個(gè)實(shí)施例中,可以被交 換的信息包括信用交換單位(每個(gè)信用交換可以發(fā)送多少數(shù)據(jù)),以及設(shè)備是否有交換用于 流控制的信用的能力。可以用大量的位數(shù)塊來(lái)指示單位值,其中塊長(zhǎng)度可以從8位到最大 信用塊大小(MAX_CR_BLK )。
[0047] MAX_CR_BLK可以是所支持的MTU大小,2548字節(jié),或任何其他大于8位的數(shù)字。 2548字節(jié)足夠供給光纜通道以太網(wǎng)(FCoE)幀安全編碼,并且因此可以提供超過(guò)其他大小 的優(yōu)勢(shì)。
[0048] 此外,可選的,交換通道能力或信息的能力也可以在CE能力交換中指示。通道能 力允許在信用交換幀或信用交換標(biāo)簽中添加通道ID。
[0049] 在CE能力交換之后,從第一設(shè)備302發(fā)送信用請(qǐng)求包310到第二設(shè)備304。接下 來(lái),在信用許可包312中許可或拒絕信用。
[0050] 接下來(lái),如果任何信用被許可到第一設(shè)備302,則數(shù)據(jù)以與許可信用量一致的量從 第一設(shè)備302傳送到第二設(shè)備304。然后,第二設(shè)備接收數(shù)據(jù),并且實(shí)施信用計(jì)算以調(diào)整可 用于管理數(shù)據(jù)轉(zhuǎn)發(fā)的信用量。
[0051] 如圖4-5詳細(xì)描述的,被稱為信用交換幀(CE幀)的幀可以被用在具有唯一的媒體 訪問(wèn)控制(MAC)控制以太網(wǎng)類型,例如,0x88XX,其中XX是可編程的。新的層2標(biāo)簽(可被 稱作"CE-TAG"或信用交換標(biāo)簽)可以被用于指定包含信用交換信息的包。為了確保在幀有 不同的優(yōu)先級(jí)(可以從0-15分布)的情況下的幀的低丟失傳輸,發(fā)送器(MAC TX)通過(guò)給對(duì)等 端口發(fā)送新的CE幀來(lái)請(qǐng)求信用。該幀包括用于多個(gè)優(yōu)先級(jí)的信用請(qǐng)求。為了確保一個(gè)特定 優(yōu)先級(jí)的巾貞的低丟失傳輸,發(fā)送器(MAX TX)在發(fā)送邏輯中將CE標(biāo)記巾貞或捎帶(piggyback) 添加在數(shù)據(jù)幀上。CE標(biāo)簽包括用于一個(gè)優(yōu)先級(jí)的信用的請(qǐng)求,并具有低開銷。在另一個(gè)實(shí) 施例中不發(fā)送請(qǐng)求,并且對(duì)等端口提供任何信用,其接收以允許在沒有提示的情況下進(jìn)行 包傳送。
[0052] 對(duì)等端口(接收器或MAC RX)接收CE幀或CE標(biāo)記幀并為了相應(yīng)的優(yōu)先級(jí)或信用優(yōu) 先級(jí)解析這些請(qǐng)求。相應(yīng)的,在返回CE幀中批準(zhǔn)或提供合適的信用量給請(qǐng)求設(shè)備或端口, 或通過(guò)在已經(jīng)被傳送給請(qǐng)求端的下一個(gè)數(shù)據(jù)幀上增加 CE-Tag。
[0053] -旦接收到信用,發(fā)送器以接收的信用指定的合適的和/或允許的優(yōu)先級(jí)發(fā)送幀 或包。
[0054] 現(xiàn)參照?qǐng)D4,根據(jù)一個(gè)實(shí)施例示出了信用交換(CE)幀400。信用幀400可以采用 任何需要的形式,并且如圖4所示的格式僅是舉例目的并且不意在限制可能被使用的幀格 式。
[0055] 在該示例實(shí)施例中,幀400包括目的媒體訪問(wèn)控制(DMAC)地址字段402,源MAC (SMAC)地址字段404,以太類型字段406, MAC控制操作碼(OpCode)字段408,通信類(TC) 選擇矢量410, TC信用矢量412,可選通道號(hào)字段414,以及循環(huán)冗余校驗(yàn)(CRC)字段418。 如果有多余的空間,可以在通道號(hào)字段414和CRC字段418之間放置填充碼416。
[0056] DMAC尋址字段402可以設(shè)置對(duì)于多播包標(biāo)準(zhǔn)的01:80: C2:00:00:01以辨識(shí)包為多 播包。DMAC尋址字段402長(zhǎng)度可以是48位,或其他由用戶確定的合適的長(zhǎng)度。
[0057] SMAC尋址字段404可以用于指定包的源,并且可以是48位長(zhǎng),或其他由用戶確定 的合適的長(zhǎng)度。
[0058] 以太類型字段406可以用于指定包的以太類型。由于CE幀現(xiàn)在沒有任何專用的 以太類型指定,因此只要將要發(fā)送和/或接收這些CE幀的網(wǎng)絡(luò)中的設(shè)備明白以太類型的指 定,則可以使用任何這樣未被占用的以太類型。在一個(gè)這樣的實(shí)施例中,可以設(shè)定以太類型 字段406為0x88XX,其中XX可以是標(biāo)準(zhǔn)的或可編程的,這取決于用戶希望如何使用該字段。
[0059] MAC控制操作編碼(OpCode)字段408可以指定該包是/[目用請(qǐng)求包還是/[目用許可 包。這可以通過(guò)使用還沒有被用于其他指示的位串來(lái)完成。在一個(gè)例子中,可以使用0x0110 來(lái)指定該包是信用請(qǐng)求包,而使用0x0111來(lái)指定該包是信用許可包。
[0060] 在一些實(shí)施例中,為了得到信用許可,可以不發(fā)送信用請(qǐng)求包。相反,只要信用在 任何接收設(shè)備處是可用的,就可以發(fā)送信用許可包給所有可用的設(shè)備。
[0061] 用TC選擇矢量410來(lái)指示信用的哪些優(yōu)先級(jí)正在被請(qǐng)求或許可(基于MAC控制 OpCode字段408)。對(duì)于可用的包的每一個(gè)優(yōu)先級(jí),可以指示是否正在請(qǐng)求/許可該優(yōu)先級(jí) 的信用。例如,有16種可用的優(yōu)先級(jí)來(lái)分配給任何包,并且因此矢量中有16位,每一位代 表了相應(yīng)的優(yōu)先級(jí)的信用是正在被請(qǐng)求還是許可。當(dāng)然,可用的優(yōu)先級(jí)數(shù)可以多于或少于 16,例如 8, 12, 20, 24 等等。
[0062] 可以用TC信用矢量412來(lái)指示正在請(qǐng)求或許可(基于MAC控制OpCode字段408) 每一個(gè)優(yōu)先級(jí)的多少信用。對(duì)于可用的包的每一種優(yōu)先級(jí),可以指示不同的信用量。例如, 可以有16種可用的優(yōu)先級(jí)來(lái)分配給發(fā)送的包,并且因此矢量中有16個(gè)位置,每一個(gè)位置有 許多位來(lái)代表對(duì)于相應(yīng)的優(yōu)先級(jí)正在請(qǐng)求或許可多少信用。
[0063] 可選的,可以使用通道號(hào)字段414來(lái)指示通道號(hào)碼或ID。通道ID可以指示端口上 的多租戶和/或?qū)⒁话l(fā)送的一個(gè)或多個(gè)包的虛擬組。在一個(gè)這樣的例子中,該通道號(hào)可 以涉及和/或基于用于一個(gè)或多個(gè)將要發(fā)送的包的VLAN ID。為了允許在用戶或政策需要 時(shí)對(duì)端口進(jìn)行額外的處理,可以包括關(guān)于端口上的多租戶的信息。在一種方法中,這種字段 的長(zhǎng)度是16位,但是可以按需增大或減少。VLAN ID通常是12位,并且通道ID可以模擬這 12位或可以修改或增加到這12位以包含其他信息。
[0064] 現(xiàn)轉(zhuǎn)向圖5,根據(jù)一個(gè)實(shí)施例,示出了標(biāo)準(zhǔn)以太網(wǎng)幀500中的信用交換標(biāo)簽 (CE-Tag)520。CE-Tag520連同典型的或標(biāo)準(zhǔn)的以太網(wǎng)幀500可以用于指示對(duì)于單一優(yōu)先級(jí) 正在被請(qǐng)求或許可的信用量。CE-Tag520包括CE標(biāo)簽以太類型字段502、TC選擇矢量504、 TC信用字段506和可選的通道號(hào)字段508。
[0065] 可以增加 CE_Tag520到已經(jīng)將要從一個(gè)設(shè)備發(fā)送到另一個(gè)設(shè)備的包。以這種 方式,不必在設(shè)備之間發(fā)送完整的CE幀,并且相反已經(jīng)正在發(fā)送的包可以被修改為包含 CE-Tag520并且因此減少設(shè)備之間發(fā)送的通信量,這是因?yàn)镃E-Tag520可以捎帶在已經(jīng)正 在發(fā)送的通信量上。
[0066] 幀500可以包括許多標(biāo)準(zhǔn)字段,例如DMAC地址字段510,其可以用來(lái)指示包的目的 地址,SMAC地址字段512,其可以用來(lái)指示包的源地址,數(shù)據(jù)字段514,其可以用于攜帶有效 載荷或以太網(wǎng)幀數(shù)據(jù),可選填充516,其可以被包括以填充幀500中的任何剩余空間,以及 CRC518,其可以被包括用于錯(cuò)誤校正,如本領(lǐng)域的技術(shù)人員將會(huì)理解的。
[0067] CE標(biāo)簽以太類型字段502可以用于指示該標(biāo)簽用于信用交換,并且可以是可編程 的或標(biāo)準(zhǔn)的,并且可以指示該包是用于信用請(qǐng)求或信用許可。TC選擇矢量504可以用于指 示可用的優(yōu)先級(jí)中的哪一個(gè)信用優(yōu)先級(jí)正在被請(qǐng)求/許可。在一個(gè)方法中,這種字段的長(zhǎng) 度是16位,但是也可以按需更多或更少。
[0068] 此外,TC信用字段506可以用來(lái)指示多少信用正在從由TC選擇矢量504中指示 的指定優(yōu)先級(jí)被許可或請(qǐng)求。在一個(gè)方法中,這種字段的長(zhǎng)度是16位,但是也可以按需更 多或更少。
[0069] 可選的通道號(hào)字段508可以用于指示通道號(hào)碼或ID。該通道號(hào)可以涉及和/或基 于用于一個(gè)或多個(gè)將要發(fā)送的包的VLAN ID。在一個(gè)方法中,這種字段的長(zhǎng)度是16位,但是 也可以按需更多或更少。
[0070] 可以擴(kuò)展DCBX協(xié)議以公告使用DCBX協(xié)議交換信息的任何設(shè)備的CE能力。根據(jù) 這一過(guò)程,可以定義應(yīng)用協(xié)議類型長(zhǎng)度值(TVL),其被稱為"CET"TLV??梢栽诎l(fā)起端口與可 以進(jìn)行交換的對(duì)等端口之間的點(diǎn)對(duì)點(diǎn)基礎(chǔ)上通過(guò)物理端口來(lái)產(chǎn)生TLV。在可選的實(shí)施例中, 開關(guān)設(shè)備下游可以接著在它們所有DCBX成員端口上交換CE TLV信息給它們的對(duì)等設(shè)備。
[0071] 因此,在網(wǎng)絡(luò)完全收斂之后,從源設(shè)備或端口到目標(biāo)設(shè)備或端口的路徑中的所有 設(shè)備都能夠理解其對(duì)等端口的信用交換能力并與其對(duì)等端口進(jìn)行信用交換。
[0072] 現(xiàn)轉(zhuǎn)向圖6,根據(jù)一個(gè)實(shí)施例示出了網(wǎng)絡(luò)中基于信用的流控制方法600??梢愿鶕?jù) 本發(fā)明在圖1-5描述的任何環(huán)境或其他各種實(shí)施例的任何環(huán)境中實(shí)施方法600。當(dāng)然,本領(lǐng) 域技術(shù)人員在閱讀了本說(shuō)明書后將會(huì)理解,比圖6所具體描述的更多或更少的操作可以被 包括在方法600中。
[0073] 方法600的每一步可以由操作環(huán)境中的任意合適的組件來(lái)實(shí)施。例如,在一個(gè)實(shí) 施例中,通過(guò)終端、由服務(wù)器控制的vSwitch、服務(wù)器、開關(guān)、開關(guān)控制器(例如SDN控制器、 開流控制器等等)、信用管理器、通信控制器、處理器(如CPU,專用集成電路(ASIC)、現(xiàn)場(chǎng)可 編程控門陣列(FPGA)等等)、網(wǎng)絡(luò)接口卡(NIC),虛擬NIC、虛擬化平臺(tái)、或網(wǎng)絡(luò)系統(tǒng)或結(jié)構(gòu) 的任何其他合適的設(shè)備或組件,可以部分或完整地實(shí)施方法600。
[0074] 在操作602中,CE能力在第一(發(fā)送)端口和第二(接收)端口之間交換。在一個(gè)實(shí) 施例中,可以使用DCBX來(lái)交換CE能力。
[0075] 在另一個(gè)實(shí)施例中,CE能力可以包括參與基于信用的流控制和交換信用的能力 (例如,端口是否能夠理解CE)的指示,理解包括在CE幀和/或CE-Tag中的通道ID的能力 (例如端口是否理解何時(shí)包含通道ID)的指示,和信用交換單位(每次信用交換時(shí)發(fā)送的數(shù) 據(jù)量)。
[0076] 在一個(gè)方法中,信用交換單位可以允許每個(gè)信用至少8位數(shù)據(jù)從第一端口發(fā)送到 第二端口,并且允許高達(dá)一個(gè)MTU的數(shù)據(jù)。在特別的實(shí)施例中,每個(gè)信用可以允許發(fā)送2548 字節(jié)的數(shù)據(jù)。
[0077] 在操作604中,信用請(qǐng)求包從第一端口發(fā)送到第二端口。這一操作是可選的,因?yàn)?發(fā)送請(qǐng)求不是必須的。相反,在首先發(fā)送或沒有發(fā)送信用請(qǐng)求包的情況下,第二端口都可以 在任何時(shí)候發(fā)送信用許可包。
[0078] 在一個(gè)方法中,信用請(qǐng)求包可以指示將被交換的信用的至少一個(gè)優(yōu)先級(jí)以及將被 交換的至少一個(gè)指示優(yōu)先級(jí)中的每一個(gè)的信用量。
[0079] 在操作606中,信用許可包從第二端口發(fā)送到第一端口,信用許可包指示了許可 到第一端口的信用。在一個(gè)實(shí)施例中,響應(yīng)于信用請(qǐng)求包發(fā)送信用許可包。
[0080] 在一個(gè)方法中,信用許可包可以指示許可到第一端口的信用的至少一個(gè)優(yōu)先級(jí) (例如16個(gè)可用的優(yōu)先級(jí)中的一個(gè)或多個(gè))以及許可到第一端口的至少一個(gè)指示優(yōu)先級(jí)中 的每一個(gè)的信用量(例如每個(gè)優(yōu)先級(jí)的多少信用正在被許可到第一端口)。
[0081] 在進(jìn)一步的方法中,信用許可包可以包括僅用于具有有效通道ID的那些包的信 用(該信息可以被包括在信用請(qǐng)求包中或以其他方式被發(fā)現(xiàn))。更進(jìn)一步,可以在每一個(gè)虛 擬端口的基礎(chǔ)上授予信用,或在可以在授予第二端口信用之前提供并證實(shí)參數(shù)的基礎(chǔ)上授 予信用。
[0082] 在操作608中,從第一端口發(fā)送一個(gè)或多個(gè)數(shù)據(jù)包到第二端口,所述一個(gè)或多個(gè) 數(shù)據(jù)包對(duì)應(yīng)于許可信用。
[0083] 一個(gè)或多個(gè)數(shù)據(jù)包的量對(duì)應(yīng)于許可到第一端口的至少一個(gè)指示優(yōu)先級(jí)中的每一 個(gè)的信用量。更進(jìn)一步,一個(gè)或多個(gè)包的優(yōu)先級(jí)對(duì)應(yīng)于許可到第一端口的信用的至少一個(gè) 優(yōu)先級(jí)。以這種方式,只有對(duì)應(yīng)于許可的信用量的一定量的數(shù)據(jù)被發(fā)送。更進(jìn)一步,只有具 有與許可信用(一個(gè)或多個(gè))的優(yōu)先級(jí)匹配的優(yōu)先級(jí)的數(shù)據(jù)可以被發(fā)送。
[0084] 在一個(gè)實(shí)施例中,信用許可包和信用請(qǐng)求包可以各自包含DMAC字段,用于指示包 的目的地,SMAC字段,用于指示包的源,以太類型字段,用于指示包是CE包,MAC OpCode,用 于指示包是信用許可包還是信用請(qǐng)求包,TC選擇矢量,用于指示信用的哪些優(yōu)先級(jí)正在被 請(qǐng)求或許可,TC信用矢量,用于指示信用的每個(gè)優(yōu)先級(jí)正在被請(qǐng)求或許可多少,以及CRC字 段,用于校正錯(cuò)誤。
[0085] 在可替換的實(shí)施例中,信用許可包和信用請(qǐng)求包可以各自包含CE-Tag,所述 CE-Tag包括以太類型字段,用于指示包是CE包,TC選擇矢量,用于指示正在被請(qǐng)求或許可 的信用的選擇的優(yōu)先級(jí),TC信用矢量,用于指示信用的所選擇的優(yōu)先級(jí)正在被請(qǐng)求或許可 多少。
[0086] 在一個(gè)實(shí)施例中,信用老化持續(xù)時(shí)間可以在CE能力交換期間在第一端口和第二 端口之間協(xié)商?;谝粋€(gè)或多個(gè)因素決定信用老化持續(xù)時(shí)間,例如第一端口和第二端口之 間的鏈接速度,端口之間的距離,流信用的位大小等等。在另一個(gè)實(shí)施例中,開啟計(jì)時(shí)器計(jì) 時(shí)由第二端口占有的流信用的持續(xù)時(shí)間。
[0087] 如本領(lǐng)域技術(shù)人員將理解的,可以在系統(tǒng)或計(jì)算機(jī)程序產(chǎn)品中實(shí)現(xiàn)方法600。例 如,系統(tǒng)可以包括含有一個(gè)或多個(gè)彼此之間相互連接的設(shè)備的網(wǎng)絡(luò),所述網(wǎng)絡(luò)具有第一設(shè) 備,其包含第一端口和與第一處理器集成和/或可由第一處理器執(zhí)行的邏輯塊。所述邏輯 塊適用于在所述第一端口和在網(wǎng)絡(luò)中的第二端口之間交換CE能力,發(fā)送信用請(qǐng)求包到所 述第二端口,所述信用請(qǐng)求包指示了將被交換的信用的至少一個(gè)優(yōu)先級(jí)和將被交換的至少 一個(gè)指示的優(yōu)先級(jí)中的每一個(gè)的信用量,從所述第二端口接收信用許可包,所述信用許可 包指示了許可到所述第一端口的信用,并且發(fā)送一個(gè)或多個(gè)數(shù)據(jù)包到所述第二端口,所述 一個(gè)或多個(gè)包對(duì)應(yīng)于許可的信用。所述網(wǎng)絡(luò)還包括第二設(shè)備,其包含第二端口和與第二處 理器集成和/或可由第二處理器執(zhí)行的邏輯塊。第二邏輯塊適用于從所述第一端口接收信 用請(qǐng)求包,響應(yīng)于信用請(qǐng)求包發(fā)送信用許可包到所述第一端口,并且從所述第一端口接收 一個(gè)或多個(gè)數(shù)據(jù)包。
[0088] 在一些實(shí)施例中,可以使用DCBX交換CE能力,并且CE能力可以包括參與基于信 用的流控制和交換信用的能力的指示,理解包括在CE幀和/或CE-Tag中的通道ID的能力 的指示,和信用交換單位。信用許可包也可以指示許可到所述第一端口的信用的至少一個(gè) 優(yōu)先級(jí)以及許可到所述第一端口的至少一個(gè)指示的優(yōu)先級(jí)中的每一個(gè)的信用量。
[0089] 在一些實(shí)施例中,在第二端口成功地轉(zhuǎn)發(fā)了由其接收的包之后(包從第一端口轉(zhuǎn) 發(fā)到第二端口),第一端口可以接收與由第二端口成功轉(zhuǎn)發(fā)的包的量成比例的信用量。在一 個(gè)實(shí)施例中,為了追蹤何時(shí)由第二端口成功轉(zhuǎn)發(fā)了包,由第二端口的NIC驅(qū)動(dòng)器成功消耗 的每一份數(shù)據(jù)(其用于從第二端口轉(zhuǎn)發(fā)包,例如到下一跳)可以由開關(guān)控制器或一些其他信 用生成器(例如信用管理器,網(wǎng)關(guān)等等)監(jiān)視。然后所述開關(guān)控制器或信用生成器可以按與 由NIC驅(qū)動(dòng)器消耗的數(shù)據(jù)量成比例的信用補(bǔ)充第一端口。
[0090] 此外,所述第一或第二端口未使用的信用當(dāng)他們的持續(xù)時(shí)間到達(dá)信用老化持續(xù)時(shí) 間時(shí)可以過(guò)期,如在CE能力交換期間協(xié)商的。然后,用于終止過(guò)期信用的計(jì)時(shí)器被重新啟 動(dòng)。
[〇〇91] 盡管上面描述了各種實(shí)施例,應(yīng)該理解僅通過(guò)舉例呈現(xiàn),并不限定。因此,本發(fā)明 的實(shí)施例的范圍和寬度不應(yīng)被上述任何一個(gè)示例的實(shí)施例所限制,但僅根據(jù)下述的權(quán)利要 求和他們的等價(jià)物定義。
【權(quán)利要求】
1. 一種系統(tǒng),包括: 包括一個(gè)或多個(gè)彼此之間相互連接的設(shè)備的網(wǎng)絡(luò),所述網(wǎng)絡(luò)包括: 第一設(shè)備,其包括第一端口和與第一處理器集成和/或可由第一處理器執(zhí)行的邏輯 塊,所述邏輯塊適用于: 在所述第一端口和所述網(wǎng)絡(luò)中的第二設(shè)備的第二端口之間交換信用交換CE能力; 從所述第二端口接收信用許可包,所述信用許可包指示許可到所述第一端口的信用; 以及 從所述第一端口發(fā)送一個(gè)或多個(gè)數(shù)據(jù)包到所述第二端口,所述一個(gè)或多個(gè)包對(duì)應(yīng)于所 許可的信用。
2. 如權(quán)利要求1所述的系統(tǒng),其中所述信用許可包指示: 許可到所述第一端口的信用的至少一個(gè)優(yōu)先級(jí);以及 許可到所述第一端口的至少一個(gè)指示的優(yōu)先級(jí)中的每一個(gè)的信用量。
3. 如權(quán)利要求2所述的系統(tǒng),其中在所述一個(gè)或多個(gè)數(shù)據(jù)包中的數(shù)據(jù)量對(duì)應(yīng)于許可到 所述第一端口的至少一個(gè)指示的優(yōu)先級(jí)中的每一個(gè)的信用量,并且其中所述一個(gè)或多個(gè)包 的優(yōu)先級(jí)對(duì)應(yīng)于許可到所述第一端口的信用的至少一個(gè)優(yōu)先級(jí)。
4. 如權(quán)利要求1所述的系統(tǒng),其中所述CE能力使用數(shù)據(jù)中心橋接交換DCBX來(lái)交換。
5. 如權(quán)利要求1所述的系統(tǒng),其中所述CE能力包括: 參與基于信用的流控制和交換信用的能力的指示; 理解包含在信用交換CE幀和/或信用交換標(biāo)簽CE-Tag中的通道標(biāo)識(shí)符ID的能力的 指示;以及 信用交換單位。
6. 如權(quán)利要求1所述的系統(tǒng),其中所述邏輯塊進(jìn)一步適用于: 發(fā)送信用請(qǐng)求包給所述第二端口,所述信用請(qǐng)求包指示: 將被交換的信用的至少一個(gè)優(yōu)先級(jí);以及 將被交換的至少一個(gè)指示的優(yōu)先級(jí)中的每一個(gè)的信用量。
7. 如權(quán)利要求6所述的系統(tǒng),其中所述信用請(qǐng)求包進(jìn)一步包括通道標(biāo)識(shí)符ID,用于指 示要被發(fā)送的包的虛擬分組和所述第二端口上的多租戶。
8. 如權(quán)利要求6所述的系統(tǒng),其中所述信用許可包和所述信用請(qǐng)求包都包括: 目的媒體訪問(wèn)控制DMAC字段,用于指示所述包的目的地; 源媒體訪問(wèn)控制SMAC字段,用于指示所述包的源; 以太類型字段,用于指示所述包是CE包; 媒體訪問(wèn)控制MAC操作碼OpCode,用于指示所述包是信用許可包還是信用請(qǐng)求包; 通信類TC選擇矢量,用于指示信用的哪些優(yōu)先級(jí)正在被請(qǐng)求或許可; TC信用矢量,用于指示信用的每個(gè)優(yōu)先級(jí)正在被請(qǐng)求或許可多少;以及 循環(huán)冗余校驗(yàn)CRC字段,用于校正錯(cuò)誤。
9. 如權(quán)利要求7所述的系統(tǒng),其中所述信用許可包和所述信用請(qǐng)求包都包括CE-Tag, 所述CE-Tag包括: 以太類型字段,用于指示所述包是CE包; 通信類TC選擇矢量,用于指示正在被請(qǐng)求或許可的信用的選擇的優(yōu)先級(jí); TC信用矢量,用于指示信用的所選擇的優(yōu)先級(jí)正在被請(qǐng)求或許可多少。
10. -種用于提供網(wǎng)絡(luò)中基于信用的流控制的方法,所述方法包括: 在第一端口和第二端口之間交換信用交換CE能力; 從所述第二端口發(fā)送信用許可包到所述第一端口,所述信用許可包指示許可到所述第 一端口的信用;以及 從所述第一端口發(fā)送一個(gè)或多個(gè)數(shù)據(jù)包到所述第二端口,所述一個(gè)或多個(gè)包對(duì)應(yīng)于所 許可的信用。
11. 如權(quán)利要求10所述的方法,其中所述信用許可包指示: 許可到所述第一端口的信用的至少一個(gè)優(yōu)先級(jí);以及 許可到所述第一端口的至少一個(gè)指示的優(yōu)先級(jí)中的每一個(gè)的信用量。
12. 如權(quán)利要求11所述的方法,其中所述一個(gè)或多個(gè)數(shù)據(jù)包的量對(duì)應(yīng)于許可到所述第 一端口的至少一個(gè)指示的優(yōu)先級(jí)中的每一個(gè)的信用量,并且其中一個(gè)或多個(gè)包的優(yōu)先級(jí)對(duì) 應(yīng)于許可到所述第一端口的信用的至少一個(gè)優(yōu)先級(jí)。
13. 如權(quán)利要求10所述的方法,其中所述CE能力使用數(shù)據(jù)中心橋接交換DCBX來(lái)交換。
14. 如權(quán)利要求10所述的方法,其中所述CE能力包括: 參與基于信用的流控制和交換信用的能力的指示; 理解包含在信用交換CE幀和/或信用交換標(biāo)簽CE-Tag中的通道標(biāo)識(shí)符ID的能力的 指示;以及 信用交換單位。
15. 如權(quán)利要求14所述的方法,其中信用交換單位允許每個(gè)信用至少8位數(shù)據(jù)從所述 第一端口發(fā)送到所述第二端口。
16. 如權(quán)利要求10所述的方法,進(jìn)一步包括從所述第一端口發(fā)送信用請(qǐng)求包到所述第 二端口,所述信用請(qǐng)求包指示: 將被交換的信用的至少一個(gè)優(yōu)先級(jí);以及 將被交換的至少一個(gè)指示的優(yōu)先級(jí)中的每一個(gè)的信用量。
17. 如權(quán)利要求16所述的方法,其中所述信用許可包和所述信用請(qǐng)求包都包括: 目的媒體訪問(wèn)控制DMAC字段,用于指示所述包的目的地; 源媒體訪問(wèn)控制SMAC字段,用于指示所述包的源; 以太類型字段,用于指示所述包是CE包; 媒體訪問(wèn)控制MAC操作碼OpCode,用于指示所述包是信用許可包還是信用請(qǐng)求包; 通信類TC選擇矢量,用于指示信用的哪些優(yōu)先級(jí)正在被請(qǐng)求或許可; TC信用矢量,用于指示信用的每個(gè)優(yōu)先級(jí)正在被請(qǐng)求或許可多少;以及 循環(huán)冗余校驗(yàn)CRC字段,用于校正錯(cuò)誤。
18. 如權(quán)利要求16所述的方法,其中所述信用許可包和信用請(qǐng)求包都包括CE-Tag,所 述CE-Tag包括: 以太類型字段,用于指示所述包是CE包; 通信類TC選擇矢量,用于指示正在被請(qǐng)求或許可的信用的選擇的優(yōu)先級(jí); TC信用矢量,用于指示信用的所選擇的優(yōu)先級(jí)正在被請(qǐng)求或許可多少。
19. 一種系統(tǒng),包括: 包括一個(gè)或多個(gè)彼此之間相互連接的設(shè)備的網(wǎng)絡(luò),所述網(wǎng)絡(luò)包括: 包括第一端口和與第一處理器集成和/或由第一處理器執(zhí)行的邏輯塊的第一設(shè)備,所 述邏輯塊適用于: 在所述第一端口和所述網(wǎng)絡(luò)中的第二端口之間交換信用交換CE能力; 發(fā)送信用請(qǐng)求包到所述第二端口,所述信用請(qǐng)求包指示: 將被交換的信用的至少一個(gè)優(yōu)先級(jí);以及 將被交換的至少一個(gè)指示的優(yōu)先級(jí)中的每一個(gè)的信用量; 從所述第二端口接收信用許可包,所述信用許可包指示許可到所述第一端口的信用; 以及 發(fā)送一個(gè)或多個(gè)數(shù)據(jù)包到所述第二端口,所述一個(gè)或多個(gè)包對(duì)應(yīng)于所許可的信用;以 及 包括所述第二端口和與第二處理器集成和/或可由第二處理器執(zhí)行的第二邏輯塊的 第二設(shè)備,所述第二邏輯塊適用于: 從所述第一端口接收所述信用請(qǐng)求包; 響應(yīng)于所述信用請(qǐng)求包發(fā)送所述信用許可包到所述第一端口;以及 從所述第一端口接收所述一個(gè)或多個(gè)數(shù)據(jù)包。
20. 如權(quán)利要求19所述的系統(tǒng), 其中所述信用許可包和所述信用請(qǐng)求包都包括: 以太類型字段,用于指示所述包是CE包; 媒體訪問(wèn)控制MAC操作碼OpCode,用于指示所述包是信用許可包還是信用請(qǐng)求包; 通信類TC選擇矢量,用于指示信用的哪些優(yōu)先級(jí)正在被請(qǐng)求或許可;以及 TC信用矢量,用于指示信用的每個(gè)優(yōu)先級(jí)正在被請(qǐng)求或許可多少, 其中CE能力使用數(shù)據(jù)中心橋接交換DCBX來(lái)交換并且包括: 參與基于信用的流控制和交換信用的能力的指示; 理解包含在信用交換CE幀和/或信用交換標(biāo)簽CE-Tag中的通道標(biāo)識(shí)符ID的能力的 指示;以及 信用交換單位; 其中所述信用許可包指示: 許可到所述第一端口的信用的至少一個(gè)優(yōu)先級(jí);以及 許可到所述第一端口的至少一個(gè)指示的優(yōu)先級(jí)中的每一個(gè)的信用量。
21. -種用于提供網(wǎng)絡(luò)中基于信用的流控制的系統(tǒng),所述系統(tǒng)包括實(shí)施權(quán)利要求 10-18中任何方法的任何步驟的裝置。
【文檔編號(hào)】H04L12/833GK104104609SQ201410140260
【公開日】2014年10月15日 申請(qǐng)日期:2014年4月9日 優(yōu)先權(quán)日:2013年4月9日
【發(fā)明者】卡斯莫·M·德庫(kù)薩蒂斯, M·格撒特, K·G·坎伯, C·J·明肯伯格, V·A·潘迪, R·J·勒西歐 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司