0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

以太網(wǎng)存儲(chǔ)網(wǎng)絡(luò)的擁塞管理連載案例(六)

Linux閱碼場(chǎng) ? 來(lái)源:Linux閱碼場(chǎng) ? 2024-03-06 16:35 ? 次閱讀

消除或減少無(wú)損以太網(wǎng)網(wǎng)絡(luò)擁塞的高級(jí)方法與光纖通道結(jié)構(gòu)相同。幾十年來(lái),不同的傳輸類型都采用了類似的方法,只是略有不同。第6 章已詳細(xì)介紹了在光纖通道Fabric 中防止擁塞的方法。由于逐跳流量控制在兩種網(wǎng)絡(luò)中都會(huì)導(dǎo)致?lián)砣麛U(kuò)散,因此盡管在實(shí)現(xiàn)上存在差異,但相同的概念也適用于無(wú)損以太網(wǎng)網(wǎng)絡(luò)。

Eliminating or Reducing Congestion — An Overview

回想一下,"罪魁禍?zhǔn)?是指造成存儲(chǔ)網(wǎng)絡(luò)擁塞的任何設(shè)備。受害者是受網(wǎng)絡(luò)擁塞不利影響的任何設(shè)備。

為了讓存儲(chǔ)網(wǎng)絡(luò)在發(fā)生擁塞時(shí)自動(dòng)消除或減少擁塞,以下是高級(jí)方法:

斷開(kāi)故障設(shè)備:斷開(kāi)慢速設(shè)備的連接可消除擁塞源,從而恢復(fù)網(wǎng)絡(luò)擁塞。這通常需要監(jiān)控來(lái)自終端設(shè)備的入口暫停幀,并在邊緣交換端口長(zhǎng)時(shí)間(如幾百毫秒)無(wú)法傳輸時(shí)禁用(或關(guān)閉)該端口。目前,許多生產(chǎn)網(wǎng)絡(luò)都采用這種方法,但這是一種"大錘"方法,因?yàn)閿嚅_(kāi)連接的設(shè)備無(wú)法實(shí)現(xiàn)其目的,也無(wú)法對(duì)其進(jìn)行監(jiān)控以了解問(wèn)題是否繼續(xù)存在。請(qǐng)參閱第6 章"通過(guò)斷開(kāi)罪魁禍?zhǔn)自O(shè)備的連接來(lái)恢復(fù)擁塞"一節(jié),了解更多注意事項(xiàng)以及必要時(shí)如何斷開(kāi)連接。

提前丟棄幀:丟棄幀可釋放緩沖區(qū),使其可重新使用,從而恢復(fù)擁塞狀態(tài)。后面的章節(jié)將使用Cisco Nexus 9000 交換機(jī)上的暫停幀超時(shí)和PFC 看門(mén)狗功能解釋這種方法。

流量隔離:將流向罪魁禍?zhǔn)自O(shè)備的流量與其他流量隔離,可以避免擁塞對(duì)其他設(shè)備的影響??梢酝ㄟ^(guò)創(chuàng)建多個(gè)VLAN 并將ISL 專用于VLAN 來(lái)隔離流量。另一種方法是創(chuàng)建多個(gè)無(wú)損類,并將流量分配給不同的類。在撰寫(xiě)本文時(shí),這些方法在無(wú)損以太網(wǎng)網(wǎng)絡(luò)中的使用情況尚不清楚。如果您想在無(wú)損以太網(wǎng)網(wǎng)絡(luò)中嘗試使用類似方法,請(qǐng)參閱第6 章"流量隔離"一節(jié),了解更多詳情。

通知終端設(shè)備擁塞情況:向終端設(shè)備發(fā)出擁塞通知可使其采取預(yù)防措施,如降低流量速率。本章將介紹在路由無(wú)損以太網(wǎng)網(wǎng)絡(luò)上使用顯式擁塞通知(ECN) 進(jìn)行RoCEv2 擁塞管理(RCM)。IEEE 802.1Qau 標(biāo)準(zhǔn)化了第2 層域內(nèi)的類似方法,后來(lái)又將其納入IEEE 802.1Q。這種方法在RoCEv1(非路由)和FCoE 網(wǎng)絡(luò)中可能很有用,但在撰寫(xiě)本文時(shí),這種方法的實(shí)施并不常見(jiàn),而且在未來(lái)發(fā)展的可能性也很小。因此,本章不對(duì)第2 層域內(nèi)的IEEE 802.1Qau 擁塞通知進(jìn)行解釋。

限制流向擁塞設(shè)備的流量:限制流向慢速設(shè)備或過(guò)度使用鏈路的流量可以消除擁塞。

可在終端設(shè)備上配置流量速率限制器。在撰寫(xiě)本文時(shí),這種方法在無(wú)損以太網(wǎng)網(wǎng)絡(luò)中的應(yīng)用尚不清楚。當(dāng)有了這種實(shí)施方法后,第6 章"在存儲(chǔ)陣列上使用速率限制器防止擁塞"一節(jié)中的詳細(xì)信息也將適用于無(wú)損以太網(wǎng)網(wǎng)絡(luò)。

另外,網(wǎng)絡(luò)交換機(jī)還可以檢測(cè)擁塞情況,并動(dòng)態(tài)調(diào)整流量速率,使其適應(yīng)擁塞設(shè)備。Cisco MDS 交換機(jī)使用這種動(dòng)態(tài)入口速率限制(DIRL)方法來(lái)防止光纖通道結(jié)構(gòu)中的擁塞。雖然從理論上講,DIRL 也可以在無(wú)損以太網(wǎng)網(wǎng)絡(luò)中使用,但在本文撰寫(xiě)時(shí)還沒(méi)有實(shí)現(xiàn)。有關(guān)詳細(xì)信息,請(qǐng)參閱第6 章"使用動(dòng)態(tài)入口速率限制防止擁塞"一節(jié)。

重新設(shè)計(jì)網(wǎng)絡(luò):重新設(shè)計(jì)網(wǎng)絡(luò)可以消除或降低擁塞的嚴(yán)重程度或蔓延范圍。例如,將擁有數(shù)千臺(tái)設(shè)備的大型網(wǎng)絡(luò)轉(zhuǎn)換為較小的網(wǎng)絡(luò)孤島,可限制故障設(shè)備僅在孤島內(nèi)產(chǎn)生影響。有關(guān)詳細(xì)信息,請(qǐng)參閱第6 章"網(wǎng)絡(luò)設(shè)計(jì)注意事項(xiàng)"部分。

升級(jí):很多時(shí)候,升級(jí)故障設(shè)備是解決擁塞的最終辦法。例如,當(dāng)鏈路使用率很高(可能因使用率過(guò)高而導(dǎo)致?lián)砣r(shí),最終的解決方案是提高鏈路速度或增加額外的鏈路。詳情請(qǐng)參閱第6 章"鏈路容量"一節(jié)。

Congestion Recovery by Dropping Frames

在擁塞期間,幀在交換機(jī)中停留的時(shí)間比典型的端口到端口交換延遲時(shí)間要長(zhǎng)得多。當(dāng)故障設(shè)備長(zhǎng)時(shí)間無(wú)法接收幀時(shí),與其讓幀永遠(yuǎn)停留在交換機(jī)內(nèi),不如在超時(shí)后丟棄幀。丟棄這些幀后,緩沖區(qū)就可以重新使用,從而有助于從擁塞中恢復(fù)。丟棄這些幀至少有兩種方法。

Dropping Frames Based on their Age in the Switch

使用這種方法進(jìn)行擁塞恢復(fù)時(shí),如果幀在超時(shí)持續(xù)時(shí)間內(nèi)沒(méi)有離開(kāi)出口端口,交換機(jī)就會(huì)丟棄該幀。

Cisco MDS 交換機(jī)的FCoE 端口可采用這種方法??梢允褂肕DS NX-OS 命令system timeout fcoe pause-drop 進(jìn)行配置。這與光纖通道端口的擁塞-中斷超時(shí)類似。有關(guān)其優(yōu)缺點(diǎn),請(qǐng)參閱第6 章"根據(jù)幀在交換機(jī)中的時(shí)間丟棄幀"一節(jié)。

Dropping the Frames based on Slow-Drain on an Edge Port

使用這種方法進(jìn)行擁塞恢復(fù)時(shí),交換機(jī)會(huì)丟棄發(fā)送到慢速設(shè)備的幀。通常,這種方法需要監(jiān)控邊緣交換端口因接收到連接設(shè)備的暫停幀而無(wú)法傳輸?shù)某掷m(xù)時(shí)間。如果該持續(xù)時(shí)間超過(guò)超時(shí)時(shí)間,則會(huì)丟棄前往該設(shè)備的幀。當(dāng)幀被丟棄時(shí),緩沖區(qū)利用率最終會(huì)低于接收流量的端口的恢復(fù)閾值,這些流量將從與慢耗設(shè)備相連的端口發(fā)送出去。因此,交換機(jī)會(huì)停止向上游直接連接的設(shè)備發(fā)送暫停幀,允許其開(kāi)始傳輸。罪魁禍?zhǔn)自O(shè)備的流量可能仍然會(huì)被丟棄,但受害者可能會(huì)從中受益。

從理論上講,這種方法類似于Cisco MDS 交換機(jī)上光纖通道端口的無(wú)credit-drop 超時(shí)功能。有關(guān)受害設(shè)備如何從中受益的詳細(xì)解釋,請(qǐng)參閱第6 章"基于邊緣端口的慢排空丟棄幀"一節(jié)。本節(jié)不再重復(fù)所有這些細(xì)節(jié)。

無(wú)損以太網(wǎng)交換機(jī)上丟棄幀的實(shí)現(xiàn)方式(何時(shí)開(kāi)始丟棄、何時(shí)停止丟棄以及粒度)各不相同。本節(jié)將介紹基于這種方法的兩種實(shí)現(xiàn)方式。

1. 暫停超時(shí):針對(duì)FCoE 流量。

2. PFC 看門(mén)狗:主要針對(duì)RoCEv2 流量,但任何無(wú)損以太網(wǎng)流量(包括FCoE)都可能從中受益。

Pause Timeout

使用暫停超時(shí)功能,如果端口在超時(shí)時(shí)間內(nèi)因接收到暫停幀而無(wú)法傳輸,則會(huì)丟棄所有出口流量。此外,只要該端口一直處于Rx 暫停狀態(tài),交換機(jī)上其他端口上所有新到達(dá)的、注定要從該端口出去的幀都會(huì)被立即丟棄。如前所述,丟棄邊緣端口上的罪魁禍?zhǔn)琢髁靠勺屔嫌卧O(shè)備開(kāi)始傳輸,從而使受害設(shè)備擺脫擁塞影響。

請(qǐng)注意以下幾點(diǎn):

1. 在撰寫(xiě)本文時(shí),暫停超時(shí)僅適用于思科交換機(jī)上的FCoE 端口,但在不同平臺(tái)上的實(shí)施有所不同,下文將對(duì)此進(jìn)行說(shuō)明。

2.盡管使用了PFC,但暫停超時(shí)功能會(huì)丟棄端口上的所有流量,而不僅僅是FCoE 使用的無(wú)損類中的流量。如果端口專門(mén)用于無(wú)損類流量,如Cisco MDS 交換機(jī)上的FCoE 端口,那么這種行為是可以接受的。但如果端口承載的流量屬于無(wú)損類和其他類,則這種行為可能不可接受。

該功能的具體實(shí)現(xiàn)可能因交換機(jī)類型而異。例如:

1. Cisco MDS 交換機(jī):對(duì)于Cisco MDS 交換機(jī)上的FCoE 端口,該功能稱為Pause-Drop超時(shí),默認(rèn)為500 ms。如有需要,可使用MDS NX-OS 命令system timeout fcoe pause-drop 進(jìn)行更改。

2. Cisco Nexus 交換機(jī):對(duì)于Cisco Nexus 交換機(jī)上的FCoE 端口,該功能稱為"暫停超時(shí)",默認(rèn)情況下已禁用。使用NX-OS 命令系統(tǒng)默認(rèn)接口暫停模式邊緣啟用時(shí),超時(shí)值為500ms??梢允褂妹顂ystem default interface pause timeout mode edge 在100ms 至500ms 之間以100ms 為增量更改超時(shí)值。

3. 思科UCS:在Cisco UCS 服務(wù)器中,可通過(guò)慢耗計(jì)時(shí)器啟用此功能。默認(rèn)超時(shí)值為500 毫秒,可在100 毫秒至1000 毫秒之間以100 毫秒為增量進(jìn)行自定義。在早期版本的Cisco UCS Manager 中,該功能默認(rèn)啟用500 毫秒超時(shí)值。后續(xù)版本默認(rèn)禁用此功能并啟用PFC 看門(mén)狗。有關(guān)詳細(xì)信息,請(qǐng)參閱Cisco UCS Manager 發(fā)行說(shuō)明。

PFC Watchdog

PFC 進(jìn)程看門(mén)狗的工作原理與暫停超時(shí)類似,但它只會(huì)丟棄隊(duì)列中因收到PFC 暫停幀而無(wú)法在超時(shí)時(shí)間內(nèi)連續(xù)傳輸?shù)牧髁俊?/p>

根據(jù)實(shí)施情況,PFC 看門(mén)狗可觸發(fā)以下操作:

1. 端口翻轉(zhuǎn)或關(guān)閉:當(dāng)檢測(cè)到隊(duì)列上存在PFC 進(jìn)程看門(mén)狗時(shí),端口將被翻轉(zhuǎn)或關(guān)閉,從而影響該端口上的所有流量類別。這與暫停超時(shí)功能的作用相同。有人稱其為破壞性看門(mén)狗。

2. 僅警報(bào):當(dāng)檢測(cè)到PFC 看門(mén)狗時(shí),它會(huì)生成警報(bào)(如Syslog),但不會(huì)采取任何進(jìn)一步措施來(lái)丟棄流量。有人稱其為日志看門(mén)狗。

3. 關(guān)閉隊(duì)列:這是本文撰寫(xiě)時(shí)最常見(jiàn)的實(shí)現(xiàn)方式。當(dāng)檢測(cè)到PFC 看門(mén)狗處于無(wú)損隊(duì)列中時(shí),將采取以下操作:

a. 該隊(duì)列中的所有幀都會(huì)被丟棄。

b. 只要該隊(duì)列仍處于Rx Pause(接收暫停)狀態(tài),該交換機(jī)其他端口上所有新到達(dá)的、注定要從該隊(duì)列流出的幀都會(huì)被立即丟棄。

c. 該端口上屬于相同流量類別(如出口無(wú)損類別)的所有入口流量也會(huì)被丟棄。所有入口暫停幀也會(huì)被丟棄。這是PFC 看門(mén)狗的獨(dú)特區(qū)別。請(qǐng)注意,暫停超時(shí)(在Cisco MDS、Nexus 和UCS 的FCoE 端口上可用)和無(wú)損信元超時(shí)(在Cisco MDS 交換機(jī)的FC 端口上可用)不會(huì)影響端口上的入口流量。這些功能無(wú)損入口流量的理由是,擁塞是定向的,因此反向流量不應(yīng)受到影響。與此相反,PFC 看門(mén)狗拒絕接收入口流量的理由是,在慢排空設(shè)備上運(yùn)行的應(yīng)用程序不會(huì)因?yàn)閱蜗蛄髁浚趴赵O(shè)備的出口流量與啟用了PFC 看門(mén)狗的交換端口的入口流量相同)而受益。事實(shí)上,如前面"I/O 操作、流量模式和網(wǎng)絡(luò)擁塞的相關(guān)性"一節(jié)所述,慢排空設(shè)備的出口流量可能會(huì)增加擁塞的持續(xù)時(shí)間和嚴(yán)重程度。

PFC 看門(mén)狗功能的具體實(shí)現(xiàn)可能因開(kāi)關(guān)類型而異。例如:

1. Cisco MDS 交換機(jī):在撰寫(xiě)本文時(shí),Cisco MDS 交換機(jī)上不提供PFC 看門(mén)狗功能。使用暫停超時(shí)功能是一種有效的替代方法,因?yàn)镸DS 交換機(jī)只對(duì)FCoE 流量使用單一的無(wú)損類。

2. Cisco Nexus 交換機(jī):Cisco Nexus 9000 和Nexus 3000 交換機(jī)上提供PFC 看門(mén)狗功能。支持和操作(端口翻轉(zhuǎn)、僅警報(bào)、隊(duì)列關(guān)閉)取決于型號(hào)類型和NX-OS 版本。有關(guān)最新信息,請(qǐng)參閱發(fā)布說(shuō)明。

3. 思科UCS:Cisco UCS 服務(wù)器在4.2 版以后的UCS 管理器中支持PFC 看門(mén)狗。暫停超時(shí)和PFC 進(jìn)程監(jiān)控相互排斥。在以后的版本中,PFC 看門(mén)狗默認(rèn)已啟用。

以下是NX-OS 10.3(1) 中Cisco Nexus 9000 交換機(jī)上PFC 看門(mén)狗的配置詳情。

1. 使用NX-OS 命令priority-flow-control watch-dog-interval 啟用PFC 看門(mén)狗。

2. 該命令允許軟件進(jìn)程每隔一段時(shí)間輪詢一次禁丟隊(duì)列。默認(rèn)情況下,輪詢間隔為100 毫秒。要更改輪詢間隔,請(qǐng)使用NX-OS 命令priority-flow-control watch-dog interval <100 - 1000>,在100 ms 和1000 ms 之間以100 ms 為增量。

3. 隊(duì)列關(guān)閉的快慢取決于shutdown-multiplier。默認(rèn)情況下,其值為1,可使用NX-OS 命令priority-flow-control watch-dog shutdown-multiplier <1 - 10> 更改。無(wú)損隊(duì)列的關(guān)閉時(shí)間為(看門(mén)狗間隔x 關(guān)閉乘數(shù))。因此,默認(rèn)情況下,隊(duì)列會(huì)在Rx 暫停狀態(tài)持續(xù)100 毫秒時(shí)關(guān)閉。當(dāng)關(guān)閉乘數(shù)為2 時(shí),隊(duì)列將在200 毫秒時(shí)關(guān)閉,依此類推。

4. 隊(duì)列處于關(guān)閉狀態(tài)后,可以使用NX-OS 命令priority-flow-control recover interface qos-group 手動(dòng)恢復(fù)。qos-group 值標(biāo)識(shí)了與被PFC 進(jìn)程看門(mén)狗關(guān)閉的不丟棄隊(duì)列相關(guān)聯(lián)的流量類別。

5. 另外,還可以使用兩種方案自動(dòng)恢復(fù)隊(duì)列。

a. 固定恢復(fù)倍增器在(看門(mén)狗間隔x 固定恢復(fù)倍增器)之后恢復(fù)隊(duì)列,而與Rx 暫停無(wú)關(guān)。換句話說(shuō),即使設(shè)備仍然是慢耗空設(shè)備,隊(duì)列也會(huì)恢復(fù)。固定恢復(fù)乘數(shù)默認(rèn)為禁用(值為0)。可以使用NX-OS 命令priority-flow-control fixed-restore multiplier <0 - 100> 啟用它。

b. 只有在該隊(duì)列連續(xù)(看門(mén)狗間隔x 自動(dòng)恢復(fù)乘數(shù))未收到Rx Pause 后,自動(dòng)恢復(fù)乘數(shù)才會(huì)恢復(fù)隊(duì)列。換句話說(shuō),只有在設(shè)備停止造成慢排空"之后",隊(duì)列才會(huì)恢復(fù)。自動(dòng)恢復(fù)的默認(rèn)值為10,可以使用NX-OS 命令priority-flow-control auto-restore multiplier <0 - 100> 進(jìn)行更改。

考慮一臺(tái)設(shè)備,該設(shè)備在時(shí)間= T1 時(shí)開(kāi)始造成慢排空。其連接的交換端口配置了PFC 看門(mén)狗,時(shí)間間隔為100ms,關(guān)機(jī)倍率為1,自動(dòng)恢復(fù)倍率為10。設(shè)備連續(xù)發(fā)送暫停幀,從而停止所連接交換端口上的傳輸。當(dāng)交換端口在100 毫秒內(nèi)無(wú)法連續(xù)傳輸時(shí),它會(huì)關(guān)閉隊(duì)列,從而丟棄隊(duì)列中的所有數(shù)據(jù)包,并執(zhí)行前面描述的其他操作。這發(fā)生在T1 + 100ms 時(shí)。時(shí)間= T2 時(shí),設(shè)備停止發(fā)送PFC 暫停幀。如果交換端口在最后1 秒內(nèi)沒(méi)有收到該免丟包類的PFC 暫停幀,隊(duì)列將自動(dòng)恢復(fù)。

如例7-12 所示,要驗(yàn)證Cisco Nexus 9000 交換機(jī)上的PFC 進(jìn)程看門(mén)狗配置和隊(duì)列的當(dāng)前狀態(tài),請(qǐng)使用NX-OS 命令show queuing pfc-queue。如圖所示,以太網(wǎng)1/3 和以太網(wǎng)1/5 啟用了PFC 進(jìn)程監(jiān)視。如VL bmap 所示,兩個(gè)接口上的CoS 1 流量都啟用了PFC。只有在以太網(wǎng)1/5 上,分配給CoS 1 流量的無(wú)損隊(duì)列處于關(guān)閉狀態(tài)。

Example 7-12Verifying PFC watchdog on Cisco Nexus 9000 switches

switch# show queuing pfc-queue

+----------------------------------------------------+

Global watch-dog interval [Enabled]

+----------------------------------------------------+

+----------------------------------------------------+

Global PFC watchdog configuration details

PFC watch-dog poll interval : 100 ms

PFC watch-dog shutdown multiplier : 1

PFC watch-dog auto-restore multiplier : 10

PFC watch-dog fixed-restore multiplier : 0

PFC watchdog internal-interface multiplier : 2

+----------------------------------------------------+

+-------------------------------------------------------------+

| Port PFC Watchdog (VL bmap) State (Shutdown) |

+-------------------------------------------------------------+

Ethernet1/1 Disabled ( 0x0 ) - - - - - - - -

Ethernet1/2 Disabled ( 0x0 ) - - - - - - - -

Ethernet1/3 Enabled ( 0x2 ) - - - - - - N -

Ethernet1/4 Disabled ( 0x0 ) - - - - - - - -

Ethernet1/5 Enabled ( 0x2 ) - - - - - - Y -

Ethernet1/6 Disabled ( 0x0 ) - - - - - - - -

使用NX-OS 命令show queuing pfc-queue interface(顯示隊(duì)列pfc-queue 接口)查找PFC 進(jìn)程看門(mén)狗導(dǎo)致的數(shù)據(jù)包丟棄統(tǒng)計(jì)。例7-13 顯示了該命令的輸出。按以下方式解釋Stats 列:

1.關(guān)閉:分配給QoS 組1 (CoS 1) 流量的隊(duì)列被關(guān)閉的次數(shù)。

2.恢復(fù):分配給QoS 組1 (CoS 1) 流量的隊(duì)列被恢復(fù)的次數(shù)。

3.已排空的數(shù)據(jù)包總數(shù):上次關(guān)閉隊(duì)列時(shí)隊(duì)列中已丟棄的數(shù)據(jù)包數(shù)量。

4.丟棄的總數(shù)據(jù)包數(shù):上次關(guān)閉隊(duì)列后,交換機(jī)上其他端口到達(dá)Eth1/5 上試圖通過(guò)此隊(duì)列退出并被丟棄的數(shù)據(jù)包數(shù)量。

5.排空的總件數(shù)+ 丟失的總件數(shù):排空的數(shù)據(jù)包總數(shù)(3) + 丟失的數(shù)據(jù)包總數(shù)(4)。

6.累計(jì)丟失的pkts:這與(4) 相同,但它顯示的是之前多個(gè)關(guān)閉/未關(guān)閉實(shí)例的總計(jì)數(shù)。

7.丟棄的入口數(shù)據(jù)包總數(shù):屬于同一QoS 組1 (CoS 1) 的數(shù)據(jù)包到達(dá)Eth 1/5 的入口時(shí)被丟棄

8.丟棄的入口pkts 總量:這與(7) 相同,但它顯示的是多個(gè)先前關(guān)閉/未關(guān)閉實(shí)例的總計(jì)數(shù)。

Example 7-13PFC watchdog counters on Cisco Nexus 9000 switches

switch# show queuing pfc-queue interface e1/5 detail

+----------------------------------------------------+

Ethernet1/5 Interface PFC watchdog: [Enabled]

+----------------------------------------------------+

+----------------------------------------------------+

| QOS GROUP 1 [Active] PFC [YES] PFC-COS [1]

+----------------------------------------------------+

| | Stats |

+----------------------------------------------------+

| Shutdown| 4|

| Restored| 4|

| Total pkts drained| 752|

| Total pkts dropped| 2197357321|

| Total pkts drained + dropped| 2197358073|

| Aggregate pkts dropped| 53487546587|

| Total Ingress pkts dropped| 66649|

| Aggregate Ingress pkts dropped| 34987434|

+----------------------------------------------------+

要清除這些計(jì)數(shù)器,請(qǐng)使用NX-OS 命令clear queuing pfc-queue。

Cisco Nexus 9000 交換機(jī)通過(guò)Syslog 消息通知PFC 看門(mén)狗隊(duì)列關(guān)閉/恢復(fù)操作。例7-14 顯示了隊(duì)列關(guān)閉Syslog 消息。

Example 7-14Syslog message when a queue is shut down due to PFC watchdog

2021 Aug 18 1051 N9K %$ VDC-1 %$ %TAHUSD-SLOT1-2-

TAHUSD_SYSLOG_PFCWD_QUEUE_SHUTDOWN: Queue 1 of Ethernet1/5 is shutdown due to PFC

watchdog timer expiring

例7-15 顯示了隊(duì)列恢復(fù)Syslog 消息。請(qǐng)注意入口和出口丟棄數(shù)據(jù)包的數(shù)量。

Example 7-15Syslog message when a queue is restored after being shut down by PFC watchdog

2021 Aug 18 1058 N9K %$ VDC-1 %$ %TAHUSD-SLOT1-2-

TAHUSD_SYSLOG_PFCWD_QUEUE_RESTORED: Queue 1 of Ethernet1/5 is restored due to PFC

watchdog timer expiring; 2197358073 egress packets/66649 ingress packets dropped

during the event

The Granularity of Pause Timeout and PFC Watchdog

暫停超時(shí)的配置粒度為100 毫秒,與PFC 看門(mén)狗間隔相同。這兩個(gè)功能都依賴于軟件每100 毫秒輪詢一次。因此,兩者都會(huì)將動(dòng)作和恢復(fù)時(shí)間延遲長(zhǎng)達(dá)99 毫秒。換句話說(shuō),PFC看門(mén)狗關(guān)機(jī)動(dòng)作可能需要長(zhǎng)達(dá)199 毫秒,而不是在100 毫秒時(shí)準(zhǔn)確執(zhí)行。

請(qǐng)參閱第6 章"行動(dòng)中的無(wú)貸記掉線超時(shí)"一節(jié)和第3 章"TxWait、Slowport-monitor 和Tx-credit-not-available 之間的差異"一節(jié),了解使用軟件輪詢的結(jié)果和基于ASIC 實(shí)現(xiàn)的額外優(yōu)勢(shì)。在Cisco MDS 交換機(jī)上,光纖通道無(wú)credit-drop 超時(shí)功能于2015 年轉(zhuǎn)為基于ASIC 的實(shí)現(xiàn)。在撰寫(xiě)本文時(shí),基于ASIC 的暫停超時(shí)和PFC 進(jìn)程看門(mén)狗實(shí)施尚未推出。

The Benefits and the Limitations

暫停超時(shí)和PFC 看門(mén)狗會(huì)丟棄發(fā)送給慢速設(shè)備的幀,從而釋放緩沖區(qū),使受害設(shè)備擺脫擁塞影響。丟棄幀偏離了無(wú)損網(wǎng)絡(luò)的無(wú)丟棄行為,但當(dāng)罪魁禍?zhǔn)自O(shè)備無(wú)法接收幀時(shí),與其永遠(yuǎn)等待并讓其他設(shè)備受害,不如丟棄罪魁禍?zhǔn)自O(shè)備的幀。由于上述原因,我們建議根據(jù)環(huán)境的可用性和設(shè)備供應(yīng)商推薦的閾值啟用這些功能。

在使用這些方法時(shí),請(qǐng)注意以下限制:

1. 在撰寫(xiě)本文時(shí),暫停超時(shí)和PFC 看門(mén)狗的大多數(shù)實(shí)現(xiàn)都基于軟件輪詢,這可能會(huì)延遲操作并降低恢復(fù)的有效性。請(qǐng)參閱前面的"暫停超時(shí)和PFC 看門(mén)狗的粒度"部分。

2. 暫停超時(shí)和PFC 看門(mén)狗有助于從慢排空造成的擁塞中恢復(fù)。如果擁塞是由邊緣鏈路的過(guò)度使用造成的,這些方法就無(wú)能為力了。

3. 暫停超時(shí)和PFC 看門(mén)狗的最小粒度為100 毫秒。因此,當(dāng)傳輸停止的時(shí)間較短時(shí)(如50 毫秒),這些方法就無(wú)能為力了。

4. 暫停超時(shí)和PFC 看門(mén)狗超時(shí)僅對(duì)連續(xù)停止傳輸?shù)臅r(shí)段起作用。即使暫停幀不連續(xù),慢速設(shè)備也會(huì)造成嚴(yán)重?fù)砣?/p>

這些限制不應(yīng)妨礙使用暫停超時(shí)和PFC 看門(mén)狗。但要注意它們能實(shí)現(xiàn)什么,不能實(shí)現(xiàn)什么。

Congestion Notification in Routed Lossless Ethernet Networks

終端設(shè)備及其應(yīng)用程序可能無(wú)法察覺(jué)網(wǎng)絡(luò)擁塞。肇事設(shè)備可能會(huì)繼續(xù)在網(wǎng)絡(luò)上發(fā)送(或請(qǐng)求)更多流量,使擁塞的嚴(yán)重程度惡化或持續(xù)時(shí)間延長(zhǎng)。為了解決這個(gè)問(wèn)題,網(wǎng)絡(luò)交換機(jī)可以在檢測(cè)到擁塞時(shí)立即"明確"通知終端設(shè)備。作為回應(yīng),肇事設(shè)備可采取預(yù)防措施。

這種通過(guò)通知終端設(shè)備來(lái)防止擁塞的方法適用于各種網(wǎng)絡(luò),其實(shí)施和采用程度各不相同。第6 章"通過(guò)通知終端設(shè)備防止擁塞"一節(jié)詳細(xì)介紹了在光纖通道Fabric 中使用Fabric Performance Impact Notifications (FPIN) 和Congestion Signals 的實(shí)施情況。第8 章"TCP 存儲(chǔ)網(wǎng)絡(luò)中的擁塞通知"一節(jié)介紹了TCP/IP 存儲(chǔ)網(wǎng)絡(luò)中的這種方法。

如前所述,這種方法在FCoE 和RoCE 環(huán)境中的實(shí)施和采用并不常見(jiàn)。因此,本節(jié)不對(duì)其進(jìn)行解釋。本節(jié)的重點(diǎn)是RoCEv2 擁塞管理(RCM) 路由無(wú)損以太網(wǎng)網(wǎng)絡(luò)中的擁塞通知。

Solution Components

通過(guò)通知終端設(shè)備來(lái)防止擁塞的方法是否成功取決于以下因素:

1. 擁塞檢測(cè):交換機(jī)(稱為擁塞點(diǎn))必須能夠檢測(cè)到擁塞癥狀。

2. 發(fā)送通知:檢測(cè)到擁塞后,交換機(jī)必須能夠?qū)⑵渫ㄖK端設(shè)備。為此,光纖通道交換機(jī)會(huì)發(fā)送特殊幀(稱為FPIN)和擁塞信號(hào)。相比之下,RoCEv2 和TCP/IP 網(wǎng)絡(luò)通過(guò)在報(bào)頭中標(biāo)記特殊位,將此信息編碼到數(shù)據(jù)包中。

3. 接收通知:終端設(shè)備必須能夠理解交換機(jī)發(fā)出的通知。這取決于終端設(shè)備的硬件和/或軟件能力。

4. 預(yù)防擁塞行動(dòng):在收到網(wǎng)絡(luò)擁塞通知后,終端設(shè)備必須采取預(yù)防措施,如降低速率。這是最重要的組成部分。

以下各節(jié)將使用RoCEv2 擁塞管理(RCM) 對(duì)這些組件進(jìn)行說(shuō)明。

RoCEv2 Transport Overview

RoCEv2 數(shù)據(jù)包有一個(gè)IP 報(bào)頭,因此可以使用IPv4 或IPv6 報(bào)頭中的DSCP 字段進(jìn)行分類。請(qǐng)參閱前面的"優(yōu)先級(jí)流量控制"一節(jié),了解在路由第3 層網(wǎng)絡(luò)中如何對(duì)流量進(jìn)行分類并將其分配到無(wú)損類。第1 章圖1-10 顯示了RoCEv2 數(shù)據(jù)包格式。

為了通知終端設(shè)備擁塞情況,使用了IP 報(bào)頭中的"顯式擁塞通知"(ECN)字段。

請(qǐng)注意以下幾點(diǎn):

1. 通常,以太網(wǎng)VLAN CoS 值會(huì)映射到IP 報(bào)頭中的DSCP 字段。表7-1 提供了這種映射。

2. 在路由網(wǎng)絡(luò)中,以太網(wǎng)報(bào)頭在每一跳都會(huì)改變,因此除非另行配置,否則不會(huì)保留CoS 值。但I(xiàn)P 報(bào)頭中的DSCP 字段在源和目的地之間保持不變。

3. 在不使用VLAN 的網(wǎng)絡(luò)中,使用IP 標(biāo)頭中的DSCP 字段是對(duì)流量進(jìn)行分類的唯一選擇,因?yàn)镃oS 是VLAN 標(biāo)頭的一部分。

4. 重疊網(wǎng)絡(luò)(如虛擬可擴(kuò)展局域網(wǎng)(VXLAN))通常會(huì)在封裝原始數(shù)據(jù)包之前將DSCP 和ECN 值復(fù)制到外部IP 標(biāo)頭,并將這些值從外部標(biāo)頭復(fù)制到解封裝數(shù)據(jù)包,因此在使用IP 標(biāo)頭對(duì)流量進(jìn)行分類時(shí),會(huì)保留不丟棄行為和ECN。有關(guān)詳情,請(qǐng)參閱"使用VXLAN 的無(wú)損以太網(wǎng)"一節(jié)。

RoCEv2 Congestion Management

交換機(jī)檢測(cè)到擁塞時(shí),會(huì)在IP 報(bào)頭的ECN 字段中標(biāo)記擁塞。目的地接收到帶有ECN 標(biāo)記的數(shù)據(jù)包后,會(huì)將此信息反映給信源,信源會(huì)通過(guò)限制流量速率做出反應(yīng)。RFC 3168 解釋了使用TCP 作為第4 層協(xié)議的顯式擁塞通知(ECN)。RCM 依賴于相同的機(jī)制,但由于RoCEv2 使用的是UDP(而非TCP),因此有一些不同之處,下文將對(duì)此進(jìn)行說(shuō)明。

請(qǐng)參考圖7-17,它是圖7-8 所解釋的脊葉網(wǎng)絡(luò)的一個(gè)子集。以下是概要步驟:

e1acd61e-db92-11ee-a297-92fbcf53809c.png

Figure 7-17RoCEv2 Congestion Management (RCM)

1.是否愿意使用RCM:終端設(shè)備(Target-1 和Host-1)支持RCM 時(shí),會(huì)在IPv4 或IPv6 標(biāo)頭中設(shè)置ECN-capable Transport(ECT)標(biāo)志。ECT 標(biāo)志在IP 報(bào)頭的ECN 字段中用b'01' 或b'10' 設(shè)置。ECN 字段中的b'00' 表示端點(diǎn)不支持ECN,也不支持RCM。

2. 擁塞檢測(cè):當(dāng)隊(duì)列利用率超過(guò)配置的閾值時(shí),端到端數(shù)據(jù)路徑中的交換機(jī)(Leaf-6)會(huì)檢測(cè)到擁塞。隊(duì)列利用率增加的原因是慢排空(出口交換端口上的Rx 暫停)或交換端口利用率過(guò)高。

3. 發(fā)送通知:交換機(jī)檢測(cè)到隊(duì)列擁塞時(shí),會(huì)在IPv4 或IPv6 報(bào)頭中設(shè)置擁塞體驗(yàn)(CE) 標(biāo)志。CE 標(biāo)志在ECN 字段中用b'11' 設(shè)置。擁塞交換端口只為啟用了ECT 標(biāo)志(b'01' 或b'10')的數(shù)據(jù)包設(shè)置CE 標(biāo)志。非ECN 功能數(shù)據(jù)包(ECN 值為b'00')將保持不變地轉(zhuǎn)發(fā)。與光纖通道不同,在RoCEv2 網(wǎng)絡(luò)中,交換機(jī)不會(huì)發(fā)送任何特殊數(shù)據(jù)包(或幀或信號(hào))來(lái)通知終端設(shè)備。

4. 接收通知:目的地(主機(jī)-1)在收到帶有CE 標(biāo)志的數(shù)據(jù)包時(shí)會(huì)檢測(cè)到網(wǎng)絡(luò)擁塞。由于CE 標(biāo)志是標(biāo)準(zhǔn)IP 報(bào)頭的一部分,因此主機(jī)-1 不需要任何特殊機(jī)制來(lái)解釋新型數(shù)據(jù)包。但是,它必須能夠檢測(cè)到CE 標(biāo)志并對(duì)其采取行動(dòng)。當(dāng)主機(jī)-1 接收到CE 標(biāo)記數(shù)據(jù)包時(shí),它會(huì)向啟用了CE 標(biāo)記的入口數(shù)據(jù)包的源端(目標(biāo)-1)發(fā)送擁塞通知數(shù)據(jù)包(CNP),從而向源端反映擁塞情況。由于CNP 是一種特殊的數(shù)據(jù)包,因此目標(biāo)和源都必須能夠發(fā)送和接收CNP,以及發(fā)送CNP 的頻率、停止發(fā)送的時(shí)間和內(nèi)容等其他細(xì)節(jié)。此外,還要配置網(wǎng)絡(luò)QoS 策略,以高優(yōu)先級(jí)對(duì)CNP 進(jìn)行分類和轉(zhuǎn)發(fā)。

5. 預(yù)防擁塞行動(dòng):發(fā)送方(目標(biāo)-1)收到CNP 后,會(huì)降低發(fā)送CNP 的目的地的流量。如前所述,由于CNP 是一種特殊數(shù)據(jù)包,發(fā)送方必須能夠監(jiān)聽(tīng)并采取行動(dòng)。此外,在初始降低速率行動(dòng)后,發(fā)送方必須能夠調(diào)整其速率,以便在未充分利用和過(guò)度利用之間達(dá)到最佳平衡。

RoCEv2 Congestion Management Considerations

圖7-17 對(duì)RCM 進(jìn)行了過(guò)于簡(jiǎn)化的解釋。但是,在生產(chǎn)環(huán)境中,成百上千臺(tái)設(shè)備可能會(huì)以多對(duì)一的流量模式連接到同一個(gè)Fabric。

本節(jié)介紹了RoCEv2 網(wǎng)絡(luò)的一些重要注意事項(xiàng)。這些注意事項(xiàng)在新建環(huán)境中可能并不明顯,但隨著網(wǎng)絡(luò)的發(fā)展或成熟,應(yīng)了解其局限性并采取積極措施。

請(qǐng)參考圖7-8,并思考圖7-17 所解釋的RCM 如何運(yùn)行。然后,考慮以下幾點(diǎn):

1. 混合環(huán)境:根據(jù)RoCEv2 標(biāo)準(zhǔn),RCM 是可選項(xiàng)。需要特別注意支持RCM 和不支持RCM 終端設(shè)備的混合環(huán)境。當(dāng)許多設(shè)備向同一設(shè)備發(fā)送流量時(shí),如果少數(shù)發(fā)送方不支持RCM,它們的流量不會(huì)被CE 標(biāo)記,而來(lái)自其他支持RCM 的設(shè)備的流量則會(huì)被CE 標(biāo)記。因此,慢耗設(shè)備(目的地)只向支持RCM 的設(shè)備發(fā)送CNP。因此,支持RCM 的設(shè)備會(huì)降低流量速率,而不支持RCM 的設(shè)備則不會(huì)。這種情況可能會(huì)導(dǎo)致支持RCM 的設(shè)備流量不足,因?yàn)樗鼈兛赡軙?huì)不斷降低速率,而不支持RCM 的設(shè)備可能會(huì)消耗掉所有鏈路容量。在混合TCP 和UDP 流量的IP 網(wǎng)絡(luò)中,這種情況類似于UDP 流量導(dǎo)致的TCP 饑餓。通常情況下,較新的設(shè)備更有可能支持RCM。如果現(xiàn)有設(shè)備不支持RCM,較新的設(shè)備可能會(huì)受到更多懲罰。

2. 速率降低算法:RoCEv2 標(biāo)準(zhǔn)提到,發(fā)送方應(yīng)在收到CNP 后降低流量速率,但沒(méi)有解釋速率降低或恢復(fù)的算法。由于缺乏標(biāo)準(zhǔn)方法,供應(yīng)商只能開(kāi)發(fā)不同的實(shí)施方案,在相同的環(huán)境中做出不同的反應(yīng)。用戶只能承受非統(tǒng)一實(shí)施的結(jié)果,或被迫鎖定供應(yīng)商以實(shí)現(xiàn)統(tǒng)一。

3. 同步:接收CNP 的流量源不知道其他向同一目的地發(fā)送流量的流量源。多個(gè)此類源的集體行動(dòng)可能會(huì)導(dǎo)致反應(yīng)過(guò)度或反應(yīng)不足。例如,在圖7-8 中,如果每個(gè)目標(biāo)將速率降低5%,則五個(gè)目標(biāo)的集體速率降低行動(dòng)會(huì)導(dǎo)致速率降低25%(反應(yīng)過(guò)度)。之后,當(dāng)目標(biāo)調(diào)整/提高速率時(shí),五個(gè)獨(dú)立工作的此類設(shè)備可能會(huì)再次導(dǎo)致最初的問(wèn)題,從而引發(fā)最初的擁塞事件。在TCP/IP 網(wǎng)絡(luò)中,這種情況類似于TCP 全局同步。

4. 延遲行動(dòng):在某些突發(fā)流量模式的存儲(chǔ)環(huán)境中,RCM(以及其他通過(guò)通知終端設(shè)備來(lái)防止擁塞的方法)可能無(wú)法奏效,因?yàn)閺臋z測(cè)到擁塞到采取預(yù)防措施之間存在延遲。在圖7-17 中,Leaf-6 檢測(cè)到擁塞,Host-1 接收到CE 標(biāo)記數(shù)據(jù)包,向源發(fā)送CNP,最后源降低速率。這些步驟在Leaf-6 觀察到變化時(shí)都會(huì)產(chǎn)生延遲。此時(shí),原來(lái)的擁塞癥狀可能會(huì)自行消失。引用RFC 3168(這與RCM 使用的機(jī)制相同)的一句話:"CE 數(shù)據(jù)包表示持續(xù)性擁塞,而不是瞬時(shí)性擁塞,因此收到CE 數(shù)據(jù)包時(shí)的反應(yīng)應(yīng)與持續(xù)性擁塞相適應(yīng)"。

5.配置復(fù)雜:RCM 的成功與否取決于其在網(wǎng)絡(luò)中的配置。在交換機(jī)上標(biāo)記CE 標(biāo)志通常使用加權(quán)隨機(jī)早期檢測(cè)(WRED) 等檢測(cè)方案。有關(guān)詳細(xì)信息,請(qǐng)參閱第8 章"主動(dòng)隊(duì)列管理"一節(jié)。應(yīng)配置這些機(jī)制的閾值,以便在隊(duì)列滿之前在交換機(jī)上觀察到降低速率的操作。這些值還取決于交換機(jī)的類型,因?yàn)椴煌慕粨Q機(jī)有不同的架構(gòu)和緩沖區(qū)容量。在終端設(shè)備上,CNP 的頻率是一個(gè)重要的考慮因素。過(guò)多的CNP 可能會(huì)增加終端設(shè)備的負(fù)載,而過(guò)少的CNP 可能會(huì)延遲終端設(shè)備的操作。此外,速率降低算法也可能存在變數(shù)。

這些問(wèn)題不應(yīng)妨礙RCM 的啟用。請(qǐng)遵循供應(yīng)商的建議,并根據(jù)您的環(huán)境完善配置。需要記住的重要一點(diǎn)是,不能因?yàn)槟承〇|西在較新(新建環(huán)境)中運(yùn)行良好,就不再需要監(jiān)控?fù)砣Y狀。

打個(gè)比方,新車(chē)的輪胎充有氮?dú)?。起初,它們可能幾個(gè)月甚至一年都不需要充氣。這些新車(chē)工作得非常好,以至于有些司機(jī)幾乎忘記了輪胎需要?dú)鈮簷z查,結(jié)果導(dǎo)致他們的不太新的汽車(chē)爆胎。他們本可以通過(guò)每月主動(dòng)檢查來(lái)避免這一問(wèn)題。不要成為這樣的司機(jī)。問(wèn)題會(huì)隨著環(huán)境的成長(zhǎng)或成熟而顯現(xiàn)。如果您已經(jīng)意識(shí)到潛在的問(wèn)題,那么當(dāng)問(wèn)題出現(xiàn)時(shí),就能幫助您更快地解決問(wèn)題。

PFC and ECN

PFC 是一種逐跳流量控制機(jī)制。相比之下,ECN 會(huì)通知目的地,而目的地又會(huì)通知發(fā)送方降低流量速率以防止擁塞。如前所述,從檢測(cè)到擁塞(標(biāo)記CE 標(biāo)志時(shí))到擁塞交換端口觀察到降低的速率之間存在延遲。這大約是往返時(shí)間和終端設(shè)備處理延遲的兩倍。在此期間,擁塞交換端口上的隊(duì)列可能會(huì)填滿。逐跳PFC 可能會(huì)被激活,而不是丟棄數(shù)據(jù)包,從而導(dǎo)致?lián)砣诓粊G棄類中擴(kuò)散。

同時(shí)使用ECN 和PFC 可以發(fā)揮兩者的優(yōu)勢(shì)。ECN 基于流量,但其效果可能會(huì)延遲。與此相反,PFC 基于優(yōu)先級(jí)(類別或類型),但其及時(shí)行動(dòng)可避免丟包。同時(shí)使用這兩種方法,可以使操作既迅速又基于流量。

Configuring PFC and ECN Parameters

通知終端設(shè)備(通過(guò)ECN 和CNP)后的速率降低操作應(yīng)消除擁塞原因。沒(méi)有擁塞時(shí),就沒(méi)有必要調(diào)用PFC。因此,正常工作的ECN 應(yīng)能很快減少PFC 暫停。但在交換機(jī)上配置ECN 門(mén)限需要特別考慮。具體數(shù)值取決于交換機(jī)類型,請(qǐng)參考供應(yīng)商文檔。本節(jié)僅解釋概念性概述。

Note the following points.請(qǐng)注意以下幾點(diǎn)。

1.入口隊(duì)列/緩沖區(qū)只有在出口隊(duì)列被大量使用后才會(huì)開(kāi)始填滿。這一點(diǎn)在前面的"入口和出口隊(duì)列及微突發(fā)檢測(cè)"一節(jié)中已有解釋。

2.ECN 標(biāo)記(如WRED)的閾值應(yīng)用于出口隊(duì)列,而PFC 暫停閾值和恢復(fù)閾值則應(yīng)用于入口隊(duì)列/緩沖區(qū)。

3.暫停閾值和恢復(fù)閾值應(yīng)根據(jù)前面"暫停閾值和恢復(fù)閾值"一節(jié)中的詳細(xì)說(shuō)明進(jìn)行配置。對(duì)于距離較短的數(shù)據(jù)中心內(nèi)鏈路,通常不需要更改默認(rèn)的暫停閾值和恢復(fù)閾值。

4. ECN 門(mén)限應(yīng)足夠低,以便更早地標(biāo)記CE 標(biāo)志,從而有足夠的時(shí)間在擁塞端口上觀察到速率降低操作。

5. 閾值應(yīng)足夠大,至少能容納幾個(gè)數(shù)據(jù)包。例如,在啟用巨型幀時(shí),9000 字節(jié)的最小大小甚至無(wú)法在隊(duì)列中保留一個(gè)完整大小的巨型數(shù)據(jù)包。

圖7-18 至圖7-23 展示了PFC 和ECN 的共同功能。需要了解的一個(gè)要點(diǎn)是,即使調(diào)整了閾值,也不能完全消除逐跳擁塞傳播。如果瞬間調(diào)用PFC,擁塞擴(kuò)散是可以接受的。PFC 本身是有益的,因?yàn)樗梢员苊鈹?shù)據(jù)包丟棄,但它的副作用是會(huì)降低所有具有相同優(yōu)先級(jí)的流量的速度。如果ECN 能盡快降低部分流量的傳輸速率,就能限制PFC 造成的逐跳擁塞擴(kuò)散和持續(xù)時(shí)間。如前所述,配置時(shí)應(yīng)力求兩種方法的最佳效果,而不是以消除PFC 為目標(biāo)。

e1cde0d4-db92-11ee-a297-92fbcf53809c.png

Figure 7-18PFC and ECN working together in a RoCEv2 network — Step — 1

e1da2286-db92-11ee-a297-92fbcf53809c.png

Figure 7-19PFC and ECN working together in a RoCEv2 network — Step — 2

e1f062ee-db92-11ee-a297-92fbcf53809c.png

Figure 7-20PFC and ECN working together in a RoCEv2 network — Step — 3

e2001cfc-db92-11ee-a297-92fbcf53809c.png

Figure 7-21PFC and ECN working together in a RoCEv2 network — Step — 4

e21603aa-db92-11ee-a297-92fbcf53809c.png

Figure 7-22PFC and ECN working together in a RoCEv2 network — Step — 5

e221ac14-db92-11ee-a297-92fbcf53809c.png

Figure 7-23PFC and ECN working together in a RoCEv2 network — Step — 6

Lossless Traffic with VXLAN

虛擬可擴(kuò)展局域網(wǎng)(VXLAN)可傳輸無(wú)損流量,與任何其他路由IP/ 以太網(wǎng)網(wǎng)絡(luò)類似。因此,擁塞檢測(cè)、故障排除和預(yù)防都與此類似。

VXLAN Overview

虛擬可擴(kuò)展局域網(wǎng)(VXLAN)將第2 層域擴(kuò)展到第3 層數(shù)據(jù)中心網(wǎng)絡(luò)。這樣就可以靈活部署需要跨第3 層邊界的第2 層鄰接的工作負(fù)載。VXLAN 的另一個(gè)優(yōu)點(diǎn)是規(guī)模更大。以太網(wǎng)VLAN ID 是一個(gè)12 位字段,這將VLAN 的數(shù)量限制在4096 個(gè)。相比之下,VXLAN 網(wǎng)絡(luò)標(biāo)識(shí)符(VNI)是一個(gè)24 位字段,允許多達(dá)1600 萬(wàn)個(gè)第2 層域。VXLAN 還得益于第3 層底層網(wǎng)絡(luò)的等成本多路徑(ECMP)路由,從而實(shí)現(xiàn)第2 層域之間的高速無(wú)阻塞連接。

VXLAN Transport

VXLAN 采用MAC-in-UDP 封裝,將第2 層域擴(kuò)展到第3 層網(wǎng)絡(luò)。有關(guān)VXLAN 幀格式,請(qǐng)參閱圖7-24。兩個(gè)獨(dú)立的第2 層網(wǎng)絡(luò)通過(guò)VXLAN 隧道端點(diǎn)(VTEP)連接到第3 層網(wǎng)絡(luò)。顧名思義,VTEP 通過(guò)VXLAN 隧道連接。它們知道本地第2 層域中可到達(dá)的MAC 地址以及通過(guò)遠(yuǎn)程VTEP 可到達(dá)的MAC 地址。當(dāng)VTEP 接收到要發(fā)送給遠(yuǎn)程第2 層域中設(shè)備的第2 層幀時(shí),它會(huì)將第2 層幀封裝到IP/UDP 數(shù)據(jù)包中,并通過(guò)路由網(wǎng)絡(luò)發(fā)送給遠(yuǎn)程VTEP。遠(yuǎn)程VTEP 對(duì)數(shù)據(jù)包進(jìn)行解封裝,并將底層第2 層幀發(fā)送到目的地。

e22a4e3c-db92-11ee-a297-92fbcf53809c.png

Figure 7-24VXLAN frame format

Physical Topology

VXLAN 第3 層網(wǎng)絡(luò)通常采用脊葉拓?fù)洳渴穑愃朴趫D7-8)。這就是所謂的底層網(wǎng)絡(luò)。底層網(wǎng)絡(luò)中的數(shù)據(jù)包轉(zhuǎn)發(fā)由IS-IS 和OSPF 等IP 路由協(xié)議之一啟用。

Cisco Nexus 9000 等葉子交換機(jī)可充當(dāng)基于硬件的VTEP。每個(gè)VTEP 有兩個(gè)接口。一個(gè)是第2 層接口,用于連接本地端點(diǎn)通信的本地第2 層域。另一個(gè)是路由底層網(wǎng)絡(luò)上的第3 層接口。

兩個(gè)VTEP 之間的流量通過(guò)多個(gè)骨干交換機(jī)使用ECMP。終端設(shè)備可能不知道,VTEP 會(huì)將發(fā)往目的地的數(shù)據(jù)包封裝在VXLAN 數(shù)據(jù)包中。同樣,位于入口和出口VTEP 之間的脊柱交換機(jī)也可能不知道數(shù)據(jù)包屬于VXLAN 隧道。它只會(huì)查找外部IP 報(bào)頭,然后發(fā)送到目的地VTEP。




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 以太網(wǎng)
    +關(guān)注

    關(guān)注

    40

    文章

    5425

    瀏覽量

    171715
  • 看門(mén)狗
    +關(guān)注

    關(guān)注

    10

    文章

    562

    瀏覽量

    70808
  • 交換機(jī)
    +關(guān)注

    關(guān)注

    21

    文章

    2640

    瀏覽量

    99640
  • VLAN
    +關(guān)注

    關(guān)注

    1

    文章

    278

    瀏覽量

    35658
  • 存儲(chǔ)網(wǎng)絡(luò)

    關(guān)注

    0

    文章

    31

    瀏覽量

    8105

原文標(biāo)題:以太網(wǎng)存儲(chǔ)網(wǎng)絡(luò)的擁塞管理連載(六)

文章出處:【微信號(hào):LinuxDev,微信公眾號(hào):Linux閱碼場(chǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    以太網(wǎng)存儲(chǔ)網(wǎng)絡(luò)擁塞管理連載方案(一)

    鏈路級(jí)流量控制(LLFC):LLFC 可在直接連接的設(shè)備之間對(duì)鏈路上的所有流量進(jìn)行流量控制。LLFC 是一項(xiàng) IEEE 標(biāo)準(zhǔn)(IEEE 802.3x)。
    的頭像 發(fā)表于 02-26 10:52 ?1315次閱讀
    <b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>網(wǎng)絡(luò)</b>的<b class='flag-5'>擁塞</b><b class='flag-5'>管理</b><b class='flag-5'>連載</b>方案(一)

    以太網(wǎng)存儲(chǔ)網(wǎng)絡(luò)擁塞管理連載方案(二)

    本節(jié)將從學(xué)術(shù)角度解釋如何計(jì)算無(wú)損以太網(wǎng)鏈路的headroom大小。該解釋基于 IEEE 802.1Qbb 優(yōu)先級(jí)流量控制標(biāo)準(zhǔn)。
    的頭像 發(fā)表于 02-27 09:12 ?1173次閱讀
    <b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>網(wǎng)絡(luò)</b>的<b class='flag-5'>擁塞</b><b class='flag-5'>管理</b><b class='flag-5'>連載</b>方案(二)

    以太網(wǎng)存儲(chǔ)網(wǎng)絡(luò)擁塞管理連載方案(三)

    在 OSI 模型的第 3 層,流量由 IPv4 或 IPv6 源地址和目標(biāo)地址標(biāo)識(shí)。如圖 7-5 所示,IP 標(biāo)頭(v4 和 v6)包含一個(gè) 6 位 DSCP 字段,允許多達(dá) 64 種分類,但并非所有分類都被使用。
    的頭像 發(fā)表于 02-28 09:16 ?1251次閱讀
    <b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>網(wǎng)絡(luò)</b>的<b class='flag-5'>擁塞</b><b class='flag-5'>管理</b><b class='flag-5'>連載</b>方案(三)

    以太網(wǎng)存儲(chǔ)網(wǎng)絡(luò)擁塞管理連載案例(五)

    解決無(wú)損以太網(wǎng)網(wǎng)絡(luò)擁塞問(wèn)題的方法與光纖通道結(jié)構(gòu)相同。兩者都使用逐跳流量控制機(jī)制,只是實(shí)現(xiàn)方式不同而已。
    的頭像 發(fā)表于 03-04 11:17 ?869次閱讀
    <b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>網(wǎng)絡(luò)</b>的<b class='flag-5'>擁塞</b><b class='flag-5'>管理</b><b class='flag-5'>連載</b>案例(五)

    以太網(wǎng)存儲(chǔ)網(wǎng)絡(luò)擁塞管理連載案例(七)

    學(xué)習(xí)連接到遠(yuǎn)程 VTEP 的設(shè)備的 MAC 地址有兩種常見(jiàn)方法。第一種方法使用基于組播的泛洪學(xué)習(xí)機(jī)制。
    的頭像 發(fā)表于 03-08 09:29 ?858次閱讀
    <b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>網(wǎng)絡(luò)</b>的<b class='flag-5'>擁塞</b><b class='flag-5'>管理</b><b class='flag-5'>連載</b>案例(七)

    車(chē)載以太網(wǎng)基礎(chǔ)培訓(xùn)——車(chē)載以太網(wǎng)的鏈路層#車(chē)載以太網(wǎng)

    車(chē)載以太網(wǎng)
    北匯信息POLELINK
    發(fā)布于 :2023年09月19日 16:25:21

    車(chē)載以太網(wǎng)基礎(chǔ)培訓(xùn)——網(wǎng)絡(luò)層#車(chē)載以太網(wǎng)

    車(chē)載以太網(wǎng)
    北匯信息POLELINK
    發(fā)布于 :2023年09月20日 08:51:32

    以太網(wǎng)和工業(yè)以太網(wǎng)的不同

    以太網(wǎng)媒體訪問(wèn)控制的物理層和數(shù)據(jù)鏈路層。這些標(biāo)準(zhǔn)也說(shuō)明子配置以太網(wǎng)網(wǎng)絡(luò)的規(guī)則,以及各種網(wǎng)絡(luò)元件如何彼此協(xié)作。以太網(wǎng)支持多臺(tái)計(jì)算機(jī)通過(guò)一個(gè)網(wǎng)絡(luò)
    發(fā)表于 10-23 14:20

    以太網(wǎng)供電新標(biāo)準(zhǔn)促熱網(wǎng)絡(luò)化電源管理應(yīng)用市場(chǎng)

    以太網(wǎng)供電新標(biāo)準(zhǔn)促熱網(wǎng)絡(luò)化電源管理應(yīng)用市場(chǎng) 日前,相關(guān)國(guó)際標(biāo)準(zhǔn)組織批準(zhǔn)了IEEE802.3at以太網(wǎng)供電(PoE)技術(shù)標(biāo)準(zhǔn),使遠(yuǎn)程電源通過(guò)以
    發(fā)表于 12-29 15:25 ?468次閱讀

    以太網(wǎng)光纖通道(FCoE)技術(shù)問(wèn)答

    以太網(wǎng)光纖通道技術(shù)(FCoE),能壓縮光纖通道存儲(chǔ)數(shù)據(jù),使之通向以太網(wǎng)的LAN(局域網(wǎng)),消除了數(shù)據(jù)中心分離存儲(chǔ)
    發(fā)表于 12-01 15:51 ?1092次閱讀

    以太網(wǎng)的分類及靜態(tài)以太網(wǎng)交換和動(dòng)態(tài)以太網(wǎng)交換、介紹

    以太網(wǎng)交換技術(shù)具有許多類型,各自宣傳其具有不同的優(yōu)點(diǎn);通過(guò)簡(jiǎn)單的鼠標(biāo)即可增加、移動(dòng)和改變往來(lái)落的結(jié)構(gòu);比網(wǎng)橋和路由器更為有效地進(jìn)行網(wǎng)絡(luò)分段;為高性能工作站或服務(wù)器提供高寬帶。網(wǎng)絡(luò)管理
    的頭像 發(fā)表于 10-07 10:06 ?6470次閱讀

    萬(wàn)兆以太網(wǎng)和IP SAN的融合

    IP SAN存儲(chǔ)網(wǎng)融合到萬(wàn)兆以太網(wǎng)絡(luò)中,將大大增加了IP SAN網(wǎng)絡(luò)的通信帶寬,提高主機(jī)訪問(wèn)存儲(chǔ)的速度,同時(shí)由于
    的頭像 發(fā)表于 01-24 15:16 ?3213次閱讀

    光纖通道到以太網(wǎng)存儲(chǔ)結(jié)構(gòu)解析

    行業(yè)專家認(rèn)為,以太網(wǎng)存儲(chǔ)結(jié)構(gòu)(ESF)是下一代存儲(chǔ)網(wǎng)絡(luò)的理想選擇,因?yàn)槠渚哂凶吭降男阅?、智能和效率?/div>
    發(fā)表于 07-21 15:59 ?1195次閱讀

    以太網(wǎng)光模你了解多少

    什么是以太網(wǎng)光模塊? 用于以太網(wǎng)的光模塊。什么是以太網(wǎng)?通過(guò)信息管理(MIB)與公共物理媒介地址控制(MAC)可支持局域網(wǎng)(LAN)的
    的頭像 發(fā)表于 02-14 09:27 ?1296次閱讀

    優(yōu)化網(wǎng)絡(luò)管理與監(jiān)控——工業(yè)以太網(wǎng)交換機(jī)的智能化之路

    隨著工業(yè)互聯(lián)網(wǎng)的迅速發(fā)展,工業(yè)以太網(wǎng)交換機(jī)在現(xiàn)代工業(yè)網(wǎng)絡(luò)中扮演著越來(lái)越重要的角色。作為工業(yè)網(wǎng)絡(luò)的核心設(shè)備,工業(yè)以太網(wǎng)交換機(jī)不僅需要支持高速、穩(wěn)定的數(shù)據(jù)傳輸,還需要具備智能化的
    的頭像 發(fā)表于 11-21 10:24 ?709次閱讀
    優(yōu)化<b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>管理</b>與監(jiān)控——工業(yè)<b class='flag-5'>以太網(wǎng)</b>交換機(jī)的智能化之路