[論文レビュー] DTLS Performance - How Expensive is Security?
本論文では、DPDKおよびOpenSSLを基盤とする高速でオープンソースのVPNゲートウェイ(MoonSec)を用いて、ネットワーク特性とセキュリティパラメータの影響を測定・定量するためのDTLS対応アプリケーションのパフォーマンスモデルを提示する。主な発見は、1コネクションあたりのセットアップコストが1パケットあたりのコストの368倍にのぼり、楕円曲線ベースのDHE暗号スイートおよびChaCha20暗号がオーバーヘッドを顕著に低減することである。
Secure communication is an integral feature of many Internet services. The widely deployed TLS protects reliable transport protocols. DTLS extends TLS security services to protocols relying on plain UDP packet transport, such as VoIP or IoT applications. In this paper, we construct a model to determine the performance of generic DTLS-enabled applications. Our model considers basic network characteristics, e.g., number of connections, and the chosen security parameters, e.g., the encryption algorithm in use. Measurements are presented demonstrating the applicability of our model. These experiments are performed using a high-performance DTLS-enabled VPN gateway built on top of the well-established libraries DPDK and OpenSSL. This VPN solution represents the most essential parts of DTLS, creating a DTLS performance baseline. Using this baseline the model can be extended to predict even more complex DTLS protocols besides the measured VPN. Code and measured data used in this paper are publicly available at https://git.io/MoonSec and https://git.io/Sdata.
研究の動機と目的
- ネットワーク特性とセキュリティパラメータを考慮した、DTLS対応アプリケーションの汎用的パフォーマンスモデルの構築を目的とする。
- 実世界のハイパフォーマンス環境におけるDTLS導入に伴うパフォーマンスオーバーヘッドを測定・定量することを目的とする。
- DTLS処理における主要コスト要因を特定し、さまざまな暗号アルゴリズムの影響を評価することを目的とする。
- 将来的なパフォーマンスモデリングのための再現可能でモジュラーなオープンソースDTLS VPNゲートウェイ(MoonSec)を用いた基準を提供することを目的とする。
提案手法
- 高速パケットI/OのためのDPDKと、DTLSおよび暗号操作のためのOpenSSLを用いて、モジュラーでハイパフォーマンスなDTLSベースのVPNゲートウェイ「MoonSec」を開発した。
- パケットI/O、ステート管理、暗号ハッシュ処理、暗号化/復号化といった個々の処理ステップを分離し、ベンチマークを実施できるように設計した。
- 4つの構成要素(1パケットあたりのコスト:6323サイクル/バイト、1コネクションあたりのセットアップコスト:5.76Mサイクル、コネクションステート管理)を用いてパフォーマンスモデルを構築した。
- 主要な式を導出:overallPerPacket(p) = 6323·p および overallPerCon(c,p) = 5,761,437 + 2,326,558·c であり、最終的なモデルは overallC(c,p) = 5,761,437 + 2,326,558·c + 6,323·p である。
- 長期間にわたるコネクションを用いて、固定コストと変動コストを分離・測定するため、ハイエンドサーバー上で広範な測定を実施し、モデルの妥当性を検証した。
- MoonSecのソースコード、測定データ、プロットスクリプトをオープンソースライセンスの下で公開し、再現可能性と拡張性を確保した。
実験結果
リサーチクエスチョン
- RQ1DTLS対応アプリケーションにおける主要なパフォーマンスコスト要因は何か。また、コネクション数およびパケットサイズに伴い、そのコストはどのようにスケーリングするか。
主な発見
- DTLSにおける1コネクションあたりのセットアップコストは、1パケットあたりの処理コストの368倍に上昇しており、コネクションのライフタイムがパフォーマンス効率に大きな影響を与えることが判明した。
- 楕円曲線ベースのDHE暗号スイートを用いることで、従来のmodpベースのDHE暗号スイートと比較してハンドシェイクコストがほぼ4分の1にまで低減された。
- 暗号化アルゴリズムの選択がパフォーマンスに顕著な影響を与える:非アクセcelerated環境では、最もコストの高い暗号スイートが最も安価なものと比べてほぼ2倍のコストを要した。
- ChaCha20-Poly1305暗号スイートが最も低い全体的な処理コストを達成し、AESベースの代替手法と比較して暗号処理のオーバーヘッドを最大50%まで低減した。
- パフォーマンスモデルは、異なるコネクション数およびパケットサイズの下でMoonSecの挙動を正確に予測でき、パフォーマンスの基準としての有効性が裏付けられた。
- このモデルはCPUアーキテクチャに依存するが、一般化可能である。新しいプラットフォームで再測定すれば、モデルはモバイル機器やIoTデバイスを含むさまざまなハードウェアのパフォーマンスを予測するために適応可能である。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。