DPDK User Meetup Tokyo
DPDK概要
Linux Kernelでパケット処理すると2Mppsくらい
DPDKで52Mppsくらい
カーネルバイバス、ユーザ空間で動作、ポール・モード・ドライバで高速化
Linux Kernel StackとDPDKのどっちを使うかはユースケースしだい
*.11はTLSで2年間のABI固定版が出される(バグフィックスのみ行われる)
今後はLTSのタイミングまではABIを変えない予定
利用事例(Kamuee)
Poptrieでルータを作りたかった
300Mpps以上転送可能、大規模経路対応(200万経路)
任意のコア数をポートに割り当てられる
オープンテクノロジーを活用
SpirentでBGPをエミュレートさせてベンチマーク
64btyteで200Gbps, 300Mppsくらい出せる
Poptrie
圧縮された区間trie木
60万経路が3MB
200Mlps(Lookup per sec)
NTTコミュニケーションズが特許を保有
最近
希にPoptrie構築で20~30分かかるバグを修正(回避)
/24 200万経路で動作を確認、400万では壊れた(実装不具合)
構築時間は60万経路で約5秒, 200万で約12秒
NICをTAPして、お好きなルーディングデーモンに渡せる
パケロス問題
0.002%程度パケロスする。負荷、パケットサイズ、継続時間は関係なさそう
testpmdでも0.001 ~ 0.006% パケロスした
Mellanoxの性能公開資料では90Gbpsでゼロパケロスといってるけど
Mellanoxの実験では同一カードで折り返し
PICeストットが同じ
kamueeでも同一カードであったらパケロスしない可能性がある
イベント等はこれで乗り切る
サーバーメーカと密に開発して、解決する
将来
FPGAでIPsecアクセラレータ(DPDK対応)と協力動作
armアーキテクチャへのポーディング、CCIX利用
NFV、クラウド上ルータ利用、Local 5G
機能拡張
フィールド利用
poptrie利用許諾
kamueeベースのミドルボックス開発
共同研究は歓迎
バイナリはdebian pkg
ソースコードの提供可能
Kamueeユーザイベント
10/6(水)
利用事例(VPP-LB)
L3DSRやってる
VPPをLBとして使用している
(正直、障害対応してて聞いてなかった)