Skip to main content
QUICK REVIEW

[論文レビュー] Towards a Stateful Forwarding Abstraction to Implement Scalable Network Functions in Software and Hardware

Luca Petrucci, Nicola Bonelli|arXiv (Cornell University)|Nov 9, 2016
Software-Defined Networks and 5G参考文献 34被引用数 4
ひとこと要約

本稿では、拡張有限状態機械(EFSM)モデルに基づくステートフル転送抽象化を提案し、Open Packet Processor(OPP)フレームワークを介して実装することで、ソフトウェアおよびハードウェアの両方における高パフォーマンスなネットワーク関数の効率的かつスケーラブルなデプロイを可能にする。フローレベルの状態一貫性が、ソフトウェアにおけるマルチコアスケーリングと、ファイアウォールやNATなどの関数におけるハードウェアオフロードを円滑に実現できることを示している。

ABSTRACT

An effective packet processing abstraction that leverages software or hardware acceleration techniques can simplify the implementation of high-performance virtual network functions. In this paper, we explore the suitability of SDN switches' stateful forwarding abstractions to model accelerated functions in both software and hardware accelerators, such as optimized software switches and FPGA-based NICs. In particular, we select an Extended Finite State Machine abstraction and demonstrate its suitability by implementing the Linux's iptables interface. By doing so, we provide the acceleration of functions such as stateful firewalls, load balancers and dynamic NATs. We find that supporting a flow-level programming consistency model is an important feature of a programming abstraction in this context. Furthermore, we demonstrate that such a model simplifies the scaling of the system when implemented in software, enabling efficient multi-core processing without harming state consistency.

研究の動機と目的

  • マルチテナントかつコンmodityサーバ環境における、高パフォーマンスでスケーラブルな仮想ネットワーク関数(VNF)の実装という課題に対処すること。
  • ステートフル操作およびハードウェアアクセラレーションをサポートしない既存のSDN抽象化(例:OpenFlow)の制限を克服すること。
  • ステートフルファイアウォール、ロードバランサーやダイナミックNATなどの複雑なネットワーク関数の、ソフトウェアおよびハードウェア両方のアクセラレーションを円滑に可能にすること。
  • 実行時再構成およびマルチコアスケーリングを損なわず、状態一貫性を保証するフローレベルのプログラミングモデルを提供すること。

提案手法

  • ネットワーク関数プログラミングのための拡張有限状態機械(EFSM)抽象化を公開するため、OpenStateの拡張であるOpen Packet Processor(OPP)フレームワークを採用する。
  • 一般的なステートフルネットワーク関数のサポートを実証するため、Linux iptablesインタフェースをOPP抽象化にマッピングする。
  • フローレベルの状態追跡を伴うマッチアドンテーブル(MAT)のパイプラインを用いてEFSMモデルを実装し、パケットフロー全体にわたる一貫性のある状態管理を可能にする。
  • ソフトウェアアクセラレーション技術(例:DPDK、Netmap)およびスマートNIC(例:FPGAベースのNIC)を介したハードウェアオフロードを活用し、ラインレート性能を達成する。
  • 実行時再構成およびVNFの動的移行を可能にするよう抽象化を設計し、アクティブなフローに影響を与えないようにする。
  • MATおよびEFSMの意味論に基づく標準的で拡張可能なプログラミングモデルを採用することで、既存のソフトウェアスイッチおよびハードウェアアクセラレータとの互換性を確保する。

実験結果

リサーチクエスチョン

  • RQ1EFSMに基づくステートフル転送抽象化は、ソフトウェアおよびハードウェアアクセラレータの両方で効率的に実装可能か?
  • RQ2フローレベルの一貫性モデルは、状態の整合性を損なわず、ステートフルネットワーク関数のマルチコアスケーリングを効率的に行えるか?
  • RQ3OPP抽象化モデルは、ファイアウォール、ロードバランサーやダイナミックNATといった実世界のネットワーク関数をどの程度正確にモデル化できるか?
  • RQ4表現力、パフォーマンス、ハードウェアオフロード支援の観点から、OpenFlow、SoftFlow、Click、NetBricksといった既存ソリューションと比較して、本提案抽象化はどのように差別化されるか?
  • RQ5本抽象化は、将来のハードウェアアクセラレータの拡張に対応可能か? また、コアプログラミングモデルの変更を必要としないか?

主な発見

  • OPPベースのEFSM抽象化は、iptablesベースのファイアウォール、ロードバランサーやダイナミックNATといった複雑なステートフルネットワーク関数を効果的にモデル化できた。
  • フローレベルの状態一貫性モデルにより、ソフトウェアにおけるロックフリーなマルチコアスケーリングが実現され、コア間での状態一貫性が維持された。
  • コンmodityハードウェア上でも高いパフォーマンスを達成でき、OPPソフトウェアスイッチは10 Gbps以上のラインレート転送を実現した。
  • スマートNICを介したハードウェアオフロードがネイティブにサポートされており、パケット分類およびステートフル操作がFPGAベースのNICにオフロード可能である。
  • DPDKやNetmapといった既存のソフトウェアアクセラレータと互換性があり、OPP実装はOFSoftSwitchとの統合を想定して公開されている。
  • OPP API の一部(主にOpenState)は、OpenFlow v1.6 への統合が検討されており、標準化への関心が高まっていることが示唆されている。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。