Port-Range Rule Management and Matching-Path Measurement for eBPF-Based Network Functions
本論文は、ポート範囲ルールを下限値に基づいて並べ替え、データパスにおける早期終了を実装することにより、スキャンステップとレイテンシを大幅に削減し、ルール処理の予測可能性を高める、eBPFベースのネットワーク機能であるZFWに対する軽量な最適化を提案する。
原論文は CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
私たちのデジタルライフを運ぶ、広大で目に見えないインフラストラクチャの中に、コンピュータネットワークの門番として機能するソフトウェアのレイヤーが存在します。ネットワーク機能として知られるこのソフトウェアは、どのデータパケットを通過させ、どのパケットを阻止すべきかを決定します。それは、建物の入り口でIDを確認する警備員のようなものです。長年、これらの警備員は固定された硬直的なルールに基づいて運用されてきました。しかし、現代のシステムはeBPFと呼ばれる柔軟なテクノロジーを使用するように進化しており、これにより、コンピュータのコア内部でセキュリティチェックを動的にプログラミングすることが可能になりました。この転換は大きな力を提供し、管理者がシステムを再起動することなく、即座にセキュリティポリシーを更新できるようにします。しかし、この柔軟性は隠れた課題をもたらします。ルールのリストが増えるにつれ、ソフトウェアが適切なルールを見つけ出すのにかかる時間が予測不可能になる可能性があるのです。もしリストが適切に整理されていなければ、システムは目的のルールに到達する前に、数十の無関係なルールをチェックすることに時間を浪費し、ネットワーク全体の速度を低下させてしまうかもしれません。
武漢デジタルエンジニアリング研究所の謝博(Bo Xie)という研究者は、ZFWと呼ばれるオープンソースのネットワークツールにおける、この特定の非効率性の問題を解決しようと取り組みました。特定された核心的な問題は、このツールがポート範囲のルールを論理的に整理するのではなく、追加されたそのままの順序で保持していたことでした。本がタイトルのアルファベット順ではなく、建物に納品された順に棚に置かれている図書館を想像してみてください。もし利用者が最後に納品された本を求めているなら、その本を見つけるために、棚にある他のすべての本を通り過ぎなければなりません。デジタル界においては、これは、人気のインターネットサービスがセキュリティリストに後から追加された場合、そのサービスへのすべてのトラフィックが、正しいルールに到達する前に、あらゆる無関係なルールをスキャンしなければならないことを意味していました。研究者はまた、システムに「停止」信号が欠けていることも発見しました。たとえ後のルールが現在のトラフィックに一致することが数学的に不可能であっても、ソフトウェアはチェックを続けてしまうのです。
これを修正するために、チームはシステムがルールを管理およびチェックする方法に対して、2つのシンプルながらも効果的な変更を導入しました。第一に、管理側の仕組みを修正し、新しいルールが追加されるたびに、単にリストの末尾に付け加えるのではなく、その開始番号に基づいて正しい位置に自動的にソート(整列)されるようにしました。第二に、コンピュータ内部の高速チェックメカニミングを更新し、処理しようとしているトラフィックよりも高い数値で始まるルールに遭遇した瞬間に、スキャンを停止するようにしました。リストがソートされているため、システムはある地点を通過した時点で、将来のルールが一致する可能性がないことを理解でき、探索を即座に終了できるのです。このアプローチは、ルールが混乱を招くような形で重複していないという仮定に基づいています。研究者たちは、ルールがインストールされる前に、ポリシーレイヤーによってこの条件が満たされていることを確認しました。
これらの変更によるテスト結果は、極めて明快なものでした。システムが100個のルールを管理しなければならない制御された実験において、元の方法では、人気のポートに対して一致を見つけるために、ソフトウェアは平均して100個のエントリをスキャンする必要がありました。このソートと早期停止(アーリーストッピング)を組み合わせた新しい方法では、その平均はわずか1エントリにまで減少しました。研究者たちは、ソフトウェアが各データ片を処理するために要する労力を直接反映する指標である、ソフトウェアが取った正確なステップ数をカウントすることでこれを測定しました。対象のルールが元のリストの最後の方に配置されていたシナリオでは、コンピュータが行うべき作業量は99パーセント削減されました。トラフィックがどのルールにも一致しない場合でも、新しいシステムは、トラフィックの数値がリスト内の最小のルールよりも小さい場合、最初のエントリをチェックした直後に停止できることがよくありました。
しかし、この研究は、ソフトウェア自体の効率性と、ネットワーク接続の総速度との間の重要な違いも明らかにしました。研究者がパブリッククラウドサーバー上でシステムをテストした際、インターネットトラフィックが長い距離を移動し、多くのコンピュータを経由するため、リクエストが完了するまでの総時間は約2パーセントしか改善しませんでした。この小さな利得は、インターネット上をデータが移動する時間や、コンピュータが自身の内部タスクを管理する時間が、高速なルールチェックによって得られた微々たる節約分を圧倒してしまったために起こりました。対照的に、データが遠くまで移動する必要のない、厳密に制御されたローカル環境でテストを行った場合、リクエストにかかる総時間は20パーセント近く減少しました。この違いは、ルールチェックのプロセスを劇的に効率化したとしても、接続の全体的な速度は、ネットワークの距離やシステムの負荷といった、ソフトウェアの外側にある要因に大きく左右されるということを証明しました。
研究者たちはまた、一部のリクエストがルールに一致し、他のリクエストは一致しないといった混合トラフィックパターンを含む様々な条件下でシステムをテストし、ソートの効果と早期停止の効果を分離するために、異なるバージョンのソフトウェアを比較しました。彼らは、一般的なトラフィックについてはソートが改善の主な原動力であり、一方で、どのルールにも一致しないトラフィックについては、早期停止機能が大幅なブーストを提供することを発見しました。研究は、この軽量なアプローチが、既存のシステムを完全に刷新することなく、ネットワークセキュリティをより予測可能かつ効率的にする方法として信頼できるものであると結論付けました。ルールを整理し、答えが分かった時点でソフトウェアに探索を停止する許可を与えることで、管理者は、セキュリティルールの数が増えても、ネットワーク機能が一貫したパフォーマンスを発揮できるようにできることを実証しました。この研究は、複雑なデジタルシステムにおいて、物事がどのような順序で配置されているかが、ルールそのものと同じくらい重要であることを示す実用的なデモンストレーションとなっています。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。