# mlx5 Ethtool Counters Linux カーネル公式ドキュメント(kernel.org、6.7 系、[[Mellanox|NVIDIA/Mellanox]] 提供、著作権表記 2023 年)の一ページ。[[Mellanox]] ConnectX シリーズ NIC のドライバ `mlx5` が公開する `ethtool -S` / `ip -s link show` カウンタ群を、計測点(どのコンポーネントで数えているか)と種別(何を意味するか)の 2 軸で体系的に定義した仕様書である。個々のカウンタ名・意味・エラー時の対処指針まで含む一次資料であり、[[RDMAネットワーク監視]] concept が集約する各研究(Lumina・CorrOpt・Hostping 等)が実際に参照・言及する具体的なカウンタ名の出典として機能する。 ## 計測点(コンポーネント)の階層 ドキュメント冒頭の ASCII 図は、Hypervisor/VM それぞれの Ethernet driver・RDMA driver が共有する PF/VF から eSwitch を経て Uplink・MPFS(いずれもカウンタなし)を通り、最終的に物理ポートへ至る経路を示す。この経路上のどこで数えているかによってカウンタが 5 グループに分かれる。 - **Ring**: ドライバスタックが個々のリング(キュー)単位で数えるソフトウェアカウンタ。 - **Netdev**: Ring カウンタの集約(software port 単位、`[i]` インデックスなし)。 - **vPort counters**: eSwitch に接続された NIC ポート上のトラフィックカウンタ・ステアリング/バッファ起因のドロップ。Ethernet(Raw Ethernet 含む)と RDMA/RoCE トラフィック双方を含む。 - **Physical port counters**: アダプタとネットワークをつなぐ外部ポート上の統計。IEEE 802.3・RFC2863・RFC 2819・RFC 3635 などの標準カウンタとフロー制御・FEC 等の拡張カウンタを含む。仮想マシンには公開されない。 - **Priority Port Counters**: Physical port counters のうち L2 優先度 (0-7) ごとに分解した集合。PFC が有効な優先度でのみ意味を持つカウンタがある。 これとは別に **Device Counters**(PCIe 信号品質・バッファ管理)がある。 ## カウンタの 3 種別 - **Traffic Informative Counters**: 負荷推定や一般的なデバッグに使う純粋なトラフィックカウント。 - **Traffic Acceleration Counters**: NIC ハードウェアやドライバでアクセラレーションされたトラフィックを数える。対応する Informative カウンタと**二重計上**される(アクセラレーションされたトラフィックは両方でカウントされる)。 - **Error Counters**: 増加が問題を示唆するカウンタ。それぞれに説明と対処のヒントが付与されている。 XSK・PTP・QoS カウンタのうち既存カウンタと同型のもの(例: `ptp_tx[i]_packets`)は個別に文書化されず、対応する基本カウンタ(`tx[i]_packets`)の説明を PTP 使用時にのみ計上するものとして流用する。 ## 主要カウンタの抜粋(障害切り分けに直結するもの) RDMA/RoCE 運用の障害切り分けで頻出するカウンタを抜粋する(全カウンタは `.raw/articles/mlx5-ethtool-counters-2026-08-19.md` を参照)。 **輻輳・バッファ不足**: - `rx_discards_phy`: 物理ポートでのバッファ不足によるドロップ。増加はアダプタ側の輻輳(ネットワークからの流入を吸収しきれない)を示唆する。 - `tx_discards_phy`: 送信時の破棄。リンクダウン・head of line drop・ネットワークからの pause 等が原因になりうる。 - `rx_pause_ctrl_phy` / `tx_pause_ctrl_phy`: リンク層 pause の送受信数。増加はネットワーク側/アダプタ側いずれかの輻輳を示す。 - `rx_prio[p]_pause` 系: PFC が有効な優先度単位の pause カウンタ(受信・送信・遷移回数・duration)。 - `rx_out_of_buffer` / `dev_out_of_buffer`: 受信キュー/デバイス所有キューのソフトウェアバッファ不足。 **リンク品質・光モジュール劣化**: - `rx_crc_errors_phy`: FCS エラーによるドロップ。高頻度なら `rx_symbol_error_phy` と `rx_corrected_bits_phy` でリンク品質を追加確認するよう明記。 - `rx_pcs_symbol_err_phy`: FEC で訂正しきれなかったシンボルエラー数。`rx_bits_phy` との比でエラーレートを算出でき、増加はケーブル/トランシーバ交換を示唆。 - `rx_corrected_bits_phy`: アクティブな FEC (RS/FC) による訂正ビット数。増加は高 BER を示唆。 - `rx_err_lane_[l]_phy`: レーン単位の FEC 訂正前物理エラー数。 - `module_bus_stuck` / `module_high_temp` / `module_bad_shorted` / `module_unplug`: モジュール(トランシーバ)固有の障害・状態カウンタ。 - `link_down_events_phy`: リンクダウン遷移回数。増加はポートフラッピングを示唆しケーブル/トランシーバ交換を促す。 **ホスト内部(PCIe)**: - `rx_pci_signal_integrity` / `tx_pci_signal_integrity`: PCIe 物理層の信号品質エラー(リカバリ遷移回数)。増加時はスロット変更・ファームウェア/BIOS 更新を推奨。 - `outbound_pci_buffer_overflow` / `outbound_pci_stalled_rd` / `outbound_pci_stalled_wr`: PCIe バス側の輻輳・クレジット不足による滞留を示す。 ## RDMA ネットワーク監視研究との接点 この仕様書が定義するカウンタ名の一部は、[[RDMAネットワーク監視]] concept が集約する既存研究が実際に参照・言及している。 - [[@2023__SIGCOMM__Understanding the Micro-Behaviors of Hardware Offloaded Network Stacks with Lumina]] は CX4 Lx で観測した noisy neighbor 現象の根拠として `rx_discards_phy` カウンタの急増を挙げ、RNIC パイプライン全体のストールを示唆すると報告する。同論文はまた「複数の NIC カウンタ不整合」を発見バグの一つとして挙げており、本ドキュメントはそのカウンタ仕様の一次資料にあたる。 - [[@2017__SIGCOMM__Understanding and Mitigating Packet Corruption in Data Center Networks]](CorrOpt)が根本原因診断に使う RxPower/TxPower の光パワー水準は、本ドキュメントの `rx_pcs_symbol_err_phy`・`rx_corrected_bits_phy`・`rx_err_lane_[l]_phy` といった FEC/BER 系カウンタと同じ物理層の診断対象を扱う(CorrOpt 自体はこの kernel doc を直接引用してはいないが、両者は同一の光層診断語彙を共有する)。 - [[@2026__arXiv__Resilient AI Supercomputer Networking using MRC and SRv6]] の「NIC 側光モジュールが唯一 ride out できない障害」という議論(`RDMAネットワーク監視` concept の横断的知見に既出)は、`module_bus_stuck` 等のモジュール障害カウンタや `ethtool -I --show-fec` 相当の訂正ブロック数で検知できる劣化のクラスに対応する。 ## 備考 - WebFetch(defuddle 変換込み)では本文中の HTML `<table>` 5 個(合計 90 カウンタ超)が抽出されず、概要のみのサマリになった。生 HTML を `curl` で取得し、`BeautifulSoup` でテーブルを Markdown 表へ手動変換して全文を復元した。 - ドキュメントの著作権表記は 2023 年(NVIDIA CORPORATION & AFFILIATES)。対象カーネルバージョンは 6.7 系。 ## 関連 - エンティティ: [[Mellanox]] - 概念: [[RDMAネットワーク監視]] / [[テレメトリ]] / [[データセンター輻輳制御]] - ソース: [[@2017__SIGCOMM__Understanding and Mitigating Packet Corruption in Data Center Networks]] / [[@2023__SIGCOMM__Understanding the Micro-Behaviors of Hardware Offloaded Network Stacks with Lumina]] / [[@2023__NSDI__Hostping - Diagnosing Intra-host Network Bottlenecks in RDMA Servers]]