# ドメイン別クレジットベースフロー制御
## 定義
ドメインごとのクレジットベースフロー制御(domain-by-domain credit-based flow control)とは、ホストネットワーク(プロセッサ・メモリ・周辺機器インターコネクトを統合しホスト内のデータ転送を担う経路)を複数の「ドメイン」(ホストネットワーク内のサブネットワーク)に論理的に分解し、各ドメインが独立したクレジットベースフロー制御機構を持つとみなす概念的抽象化である。各ドメインの送信側にはクレジットが割り当てられ、1リクエストの送信につき1クレジットを消費し、ドメインの受信側でリクエストの受信が確認されるとクレジットが補充される。この抽象化は、TCP等のエンドツーエンド型フロー制御(パス全体が単一ドメインとなる特殊ケース)と、ATM/PFC対応RDMA等のホップバイホップ型フロー制御(経路上の各ホップが1ドメインとなる特殊ケース)を一般化したものと位置づけられる。あるドメインの最大スループット $T$ は $T \leq C \times 64 / L$ で上界が与えられる($C$: クレジット数、$L$: ドメインレイテンシ)。(Source: [[@2024__SIGCOMM__Understanding the Host Network]])
## 横断的知見
- **ドメイン境界の非対称性が資源に余裕があっても性能劣化を引き起こす**: [[@2024__SIGCOMM__Understanding the Host Network]] は、C2M(compute-to-memory)-WriteドメインがMC(メモリコントローラ)を含まない一方P2M(peripheral-to-memory)-WriteドメインはMCを含む、C2M-Readドメインの無負荷レイテンシが約70nsと極めて短いためわずかな遅延にも敏感、といったドメイン設計上の非対称性を実測で明らかにした。この非対称性のため、メモリ帯域やPCIe帯域といった集約資源が飽和していなくても、特定のトラフィック種別だけが性能劣化する(青レジーム)。競合の根本原因は資源の絶対的な不足ではなく、インターコネクト間の相互作用の設計にある。(Source: [[@2024__SIGCOMM__Understanding the Host Network]])
- **ホストネットワーク内競合には、既存研究で報告済みの現象と正反対の現象が存在する**: 既存研究([1, 2, 42, 44]等、Google/Alibaba Pangu/Hostpingが報告した現象)は「P2Mトラフィックがメモリ帯域飽和時にC2Mトラフィックを圧迫する」(赤レジーム)ことを示していたが、[[@2024__SIGCOMM__Understanding the Host Network]] はメモリ帯域が未飽和の段階でC2Mトラフィックのみが劣化しP2Mトラフィックが無傷という逆方向の現象(青レジーム)を新たに発見した。単一の抽象化(ドメインごとのクレジットベースフロー制御)で両方向の現象を統一的に説明できる。(Source: [[@2024__SIGCOMM__Understanding the Host Network]])
- **ホストネットワーク内競合は、ネットワークアプリケーションの文脈を超えて生じる**: [[@2024__SIGCOMM__Understanding the Host Network]] の観測結果はすべて、ネットワーク越しの転送を一切介さずローカルストレージのみを用いた単一ホスト内実験で再現されており、[[ホスト内ネットワークボトルネック]](Hostping が扱うRNIC-エンドポイント間パスの診断)や[[データセンター輻輳制御]](RoCE/PFC・DCTCP等のデータセンタースケールの輻輳制御)が主に対象としてきた「ネットワーク越しの通信」という文脈を超えて、単一ホスト内で完結するアプリケーション間の競合としても現れることを示す。
- **Hostpingの症状ベース診断と、本論文の根本原因メカニズムは補完関係にある**: [[ホスト内ネットワークボトルネック]] が扱う Hostping([[@2023__NSDI__Hostping - Diagnosing Intra-host Network Bottlenecks in RDMA Servers]])は、RNIC-エンドポイント間のループバックテストにより「帯域劣化」「レイテンシ増加」という2種類の症状からリンク単位の異常を推論する診断ツールである。一方 [[@2024__SIGCOMM__Understanding the Host Network]] は、なぜ・どのように性能が劣化するのかというメカニズム(MCでの行ミス・バンク負荷不均衡によるキューイング、CHA/MCからのバックプレッシャー)を、Intel uncore performance counters による測定と解析式で定量的に裏付ける。両者は「症状の検知」と「根本原因の説明」という異なる階層を担っており、統合すれば診断からメカニズム解明までを一貫して行えるはずだが、現時点でこの wiki が持つソースからはそのような統合事例は確認できていない。
## 未解決の問い
- DDIO(Intel Data Direct I/O)を有効化すると、単独実行時点で既にキャッシュミス率が約100%であるC2Mワークロード(理論上はDDIOの影響を受けないはず)の性能劣化がなぜ悪化するのか、著者ら自身が説明できていない(§2.1)。この二次的相互作用のメカニズムは未解明である。
- マルチソケット・マルチIIO構成、CXL/NVLink等の新しいインターコネクト、AMDプロセッサにおいても、ドメインごとのクレジットベースフロー制御という抽象化と青・赤レジームの分類が成立するかは、著者ら自身が今後の課題として挙げているが、この wiki が持つソースからはまだ検証結果を確認できていない。
- ホストネットワーク内競合を、Hostping のようなホスト内診断ツールや [[RDMAネットワーク監視]] が扱うデータセンタースケールの監視パイプラインへどう統合すべきかは、具体的な設計が示されていない。
- ロッシーネットワーク(パケットドロップを伴う輻輳制御)下でのホストネットワーク競合を定量的に予測する解析モデルは、著者ら自身が「複雑なモデリング課題」として今後の拡張に位置づけており、現時点では未解決である。