米Facebook、ネットワークロードバランサー「Katran」をオープンソースに

 米Facebookは5月23日、レイヤー4のロードバランサーソフトウェア「Katran」をオープンソースソフトウェアとして公開したことを発表した。eXpress Data Path(XDP)などの最新技術を利用することで高性能を実現する。

 Katranはパケットフォワーディングを行うフォワーディングプレーンソフトウェアで、ネットワークの負荷分散を行う。それまで利用していたロードバランサーに代わるものとして、性能、メンテナンス性、Linuxで動くこと、ほかのサービスと共存することなどを条件に開発した。

 カーネルにおけるeXpress Data Path(XDP)とeBPF(extended Berkeley Packet Filter)仮想マシンの2種類の新技術を活用した。これにより、性能、ネットワークインターフェイスカード(NIC)のRXキューの数の増加に合わせたリニアな拡張を実現するという。

 現在Facebook社内のPoints of Presence(PoPs)バックエンドサーバー上で実装しており、ネットワークの負荷分散の性能を改善し、非効率な作業を削減のするのに役立っているという。

 一方で、DSR(Direct Server Return)モードでしか動かない点、分断化したパケットはフォワードできないこと、IPオプションセットのあるパケットには対応していないこと、3.5KB以上のパケットサイズが上限であることなどの制限があるという。

 Katranはプロジェクトのページよりダウンロードできる。ライセンスはGPLv2。

Katran
https://github.com/facebookincubator/katran