概要
OpenBSDのPFパケットフィルタでHFSCトラフィックシェーピングの帯域幅上限が32ビット制限から64ビットに拡張 10G以上の高速ネットワークインターフェースに対応 pftop(1)の表示バグも修正 既存設定はそのまま利用可能 パッチは2026年3月20日までにコミット予定
OpenBSD PFのHFSC帯域幅制限の64ビット化
- OpenBSDの PFパケットフィルタ は、 HFSCトラフィックシェーピング をサポート
- これまで struct hfsc_sc の内部32ビット制限により、 帯域幅指定が約4.29Gbps で上限
- 10G、25G、100G などの高速NIC普及により、この制限が問題化
- 10G 以上を設定すると、値がサイレントにラップアラウンドし、 予測不能なスケジューリング 挙動に
- 新パッチにより、 カーネルのHFSCスケジューラ内部の帯域幅フィールドが64ビット整数 に拡張
- この変更で 現行・将来の高速インターフェース に十分対応可能
pftop(1)の表示バグ修正
- 旧仕様では 4Gbps超の帯域幅 が pftop(1) で正しく表示されないバグ
- 今回のパッチで 正しい帯域幅表示 が可能に
実際のユーザー影響
- PFキューの帯域幅設定 が、 10G や 100G などの現代的なインターフェースで 正しく機能
- 設定例:
- queue rootq on em0 bandwidth 10G
- queue defq parent rootq bandwidth 8G default
- 最大999G までサポート、将来的な拡張性も確保
- 4G未満の既存設定 はそのまま利用可能、 変更不要
今後の展望とコミット予定
- -currentスナップショットのテスト や OpenBSD Foundationへの寄付 が推奨
- 技術メーリングリスト「 PF Queue bandwidth now 64bit for >4Gbps queues」スレッドで議論
- パッチは 2026年3月20日(金)までにコミット予定