400GbE RoCEv2ファブリック設計PFC-ECN輻輳制御とパケットロスゼロ運用の実務
1. RoCEv2とPFC(優先度ベースフロー制御)の基礎
RoCEv2(RDMA over Converged Ethernet version 2)は、UDP/IPを介してRoCEをルーティング可能にしたプロトコルであり、GPUクラスタ間の低遅延・高スループット通信を実現する。しかし、RoCEv2は無損失イーサネット(Lossless Ethernet)を前提とし、輻輳時のパケットロスを許容しない。PFC(IEEE 802.1Qbb)は、優先度(PCP)単位でフローコントロールを行い、バッファが閾値に達した際にPauseフレームを送信して送信側を一時停止させる。
2. ECN(明示的輻輳通知)とWRED閾値チューニング
ECN(IEEE 802.1Q、DiffServ Code PointのECNフィールド使用)は、輻輳が発生した際にパケットをドロップせず、ECNマーキング(CE:Congestion Experienced)を行うことで送信側に輻輳を通知する。WRED(Weighted Random Early Detection)により、キューの充填率に応じた確率的マーキングを行い、TCPの輻輳ウィンドウを段階的に減少させる。ECN閾値(min-th、max-th)は、400GbEポートのバッファ深度に応じてチューニングが必要。
3. PFCデッドロック防止とPFC Storm対策
PFCの連鎖的な停止(PFC Deadlock)は、複数の優先度キューが相互にPauseフレームを送信し合い、ネットワーク全体の転送が停止する現象である。防止策として、PFCタイムアウト(PFC Watchdog)の設定、PFC Storm防止機能(指定時間内のPauseフレーム送信回数制限)、そしてHeadroomバッファの適切な割り当てを実施する。また、ECNとPFCの連動により、PFCに依存しすぎない輻輳制御を実現する。
4. 日本国内データセンターでの運用実務
印西や大手町のデータセンターでは、高温多湿な夏期におけるスイッチ筐体内温度上昇がバッファ動作に影響を与える可能性がある。400GbEトランシーバ(QSFP112、OSFP)の光学レベル監視と、ファン異常時の自動スロットリング設定を併せて実施。定期的にPFC PauseカウンターとECNマーキング率を収集し、基準値(Pause回数:1秒あたり100回未満、ECNマーキング率:1%未満)を超過した場合はファブリック設計の見直しを行う。