FreeBSD Daily Topics

2012年10月5日pf、マルチコアスケーラブル改善

pf

SMP-friendly pf

FreeBSDには3つのファイアウォール実装が存在します。その中でもFreeBSDネイティブなファイアウォールであるipfwと、最後発でOpenBSDで開発されたpf(packet filter)に人気があります。ipfwはネイティブ開発されているだけあって性能が高く、機能もFreeBSDとよく統合されています。

pfは最後発だったということもあってシンタックスが扱いやすいとされており、多くの管理者がユーザが好んで使っています。しかし、pfは単一の排他制御で動作しているため、マルチコアに対して性能がスケールしにくいという問題を抱えていました。マルチコアが標準となった現在、pfは性能が発揮できないと指摘されることが増えていました。

2012年第二四半期あたりから、pfをマルチコアに対してスケールするように改善する取り組みがnet@やpf@のメーリングリストに報告されていましたが、マルチコアに対するスケールと処理性能の向上などを実現できたという報告がメーリングリストに投稿されました。

マージ先は10-CURRENTです。pfからipfwへの移行を検討していた方も多いかと思いますが、一度この改善後のpfで性能を調査してみるのがよいのではないかと思います。FreeBSD 10.0-RELEASEはこれまでよりも性能が向上し、マルチコアに対してスケールするpfを利用できることになりそうです。

おすすめ記事

記事・ニュース一覧