Skip to main content
QUICK REVIEW

[論文レビュー] A Survey on Data Plane Programming with P4: Fundamentals, Advances, and Applied Research

Frederik Hauser, Marco Häberle|arXiv (Cornell University)|Jan 26, 2021
Software-Defined Networks and 5G被引用数 6
ひとこと要約

本調査は、プログラマブルデータプレーンのP4プログラミングについて包括的なチュートリアルを提供し、その基盤、進展、および応用研究をカバーしている。245件のP4ベースの研究論文をさまざまな分野で分析し、P4のコア機能がデータセンターや5G、ネットワーク機能仮想化において柔軟で高パフォーマンスなネットワークカスタマイズを可能にする仕組みを示している。

ABSTRACT

Programmable data planes allow users to define their own data plane algorithms for network devices including appropriate data plane application programming interfaces (APIs) which may be leveraged by user-defined software-defined networking (SDN) control. This offers great flexibility for network customization, be it for specialized, commercial appliances, e.g., in 5G or data center networks, or for rapid prototyping in industrial and academic research. Programming protocol-independent packet processors (P4) has emerged as the currently most widespread abstraction, programming language, and concept for data plane programming. It is developed and standardized by an open community, and it is supported by various software and hardware platforms. In the first part of this paper we give a tutorial of data plane programming models, the P4 programming language, architectures, compilers, targets, and data plane APIs. We also consider research efforts to advance P4 technology. In the second part, we categorize a large body of literature of P4-based applied research into different research domains, summarize the contributions of these papers, and extract prototypes, target platforms, and source code availability. For each research domain, we analyze how the reviewed works benefit from P4's core features. Finally, we discuss potential next steps based on our findings.

研究の動機と目的

  • P4プログラミングの詳細なチュートリアルを提供すること。これには、言語、アーキテクチャ、コンパイラ、データプレーンAPIが含まれる。
  • 2021年までに発表された245件のP4ベースの応用研究論文を、さまざまなネットワーキング分野にわたって調査・分類すること。
  • P4のコア機能(例:プロトコル独立性、ユーザー定義パケット処理)が、ネットワークカスタマイズ分野でのイノベーションをどのように可能にするかを分析すること。
  • P4開発における研究ギャップと今後の方向性を特定すること。特に、ハードウェア支援、デバッグ、コントロールプレーン統合の分野で。
  • P4がネットワークの非統合化を促進し、ベンダーロックインを軽減し、学術界および産業界におけるプロトタイプ開発を加速する役割を評価すること。

提案手法

  • 2020年末までおよび2021年の選定論文を含む、ジャーナル、会議、ワークショップ、規格、ソースコードリポジトリからのP4ベースの研究論文に対する体系的文献レビュー。
  • データセンター、5G、ネットワーク機能、セキュリティを含む10の研究分野に245件の論文を分類し、プロトタイプ、ターゲットプラットフォーム、ソースコードの可用性について分析。
  • P4のコア機能(例:プロトコル独立性、拡張可能なヘッダーパースィング、extern関数)を分野ごとに評価し、実装におけるその促進的役割を特定。
  • コンパイラ、bmv2ソフトウェアスイッチ、Tofino ASICターゲットを含むP4ツールチェーンの調査により、展開とポータビリティのトレードオフを評価。
  • P4ベースのシステムにおけるテスト、デバッグ、コントロールプレーン操作の最適化などのP4開発分野の進展を分析。
  • P4と代替データプレーンプログラミングモデル(例:Click、VPP、NPL)を比較し、P4が研究分野および産業界で現在なぜ支配的であるかを文脈づけて分析。

実験結果

リサーチクエスチョン

  • RQ1P4はSDNや他のデータプレーンプログラミングモデルとどのように進化してきたのか。今日、P4が支配的抽象化として機能する理由は何か?
  • RQ2P4のコア機能(例:プロトコル独立性、ユーザー定義ヘッダー、extern関数)の中で、応用研究におけるイノベーションを最も顕著に可能にしているのはどれか?
  • RQ3P4ベースの研究の主な応用分野は何か。また、それらはターゲットプラットフォームやプロトタイプ展開の観点からP4の能力をどのように活用しているか?
  • RQ4P4ベースのプロトタイプは、bmv2などのソフトウェアエミュレータにどれほど依存しているのか。また、現在のハードウェア支援の限界は何か?
  • RQ5P4技術の発展において、特にコントロールプレーン統合、テスト、ハードウェアポータビリティの分野で、主な課題と機会は何か?

主な発見

  • 2018年から2021年にかけてP4は学術的および産業的分野での研究で著しく成長し、245件のP4ベースの研究論文が調査された。これは、迅速なプロトタイピングへの強い採用傾向を示している。
  • bmv2ソフトウェアスイッチが最も広く使用されているターゲットプラットフォームであり、現在のハードウェアでextern関数のサポートが不足していることや複雑さのため、P4プロトタイプの大多数がソフトウェアで実装されている。
  • Tofino ASICは、特にデータセンターとワイドアレイアネットワークで高スルーレートで運用される生産環境向けP4展開のリーディングハードウェアプラットフォームである。
  • extern関数(例:暗号化、浮動小数点演算、カスタムハッシュ)は、P4の標準的なパケット処理を超えた能力拡張に不可欠であるが、ポータビリティを低下させる。
  • P4はネットワークの非統合化を促進し、組織がベンダーロックインを回避し、市販のプログラマブルコンponentsを用いてカスタマイズ可能でコスト効率の良い装置を構築できるという顕著な利点を提供する。
  • 本調査では、デバッグ、テスト、コントロールプレーン統合のためのより優れたツールの必要性が高まっていることが明らかになった。これにより、P4の採用がプロトタイピングを越えて加速されるだろう。

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

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

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

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