Skip to main content
QUICK REVIEW

[論文レビュー] WNetKAT: A Weighted SDN Programming and Verification Language

Kim G. Larsen, Stefan Schmid|arXiv (Cornell University)|Aug 30, 2016
Software-Defined Networks and 5G参考文献 37被引用数 6
ひとこと要約

WNetKAT は、ソフトウェア定義ネットワーク(SDN)における帯域幅、遅延、コスト制約をモデル化するための重み付き意味論を拡張した、ネットワークプログラミングおよび検証言語である。この言語は、容量に配慮した到達可能性、サービス品質(QoS)、サービスチェーンに関する形式的推論を可能にし、重み付き有限オートマトン理論との関連から、完全な同値性が undecidable であるにもかかわらず、空集合問題(ゼロへの同値性)の decidability を示している。

ABSTRACT

Programmability and verifiability lie at the heart of the software-defined networking paradigm. While OpenFlow and its match-action concept provide primitive operations to manipulate hardware configurations, over the last years, several more expressive network programming languages have been developed. This paper presents WNetKAT, the first network programming language accounting for the fact that networks are inherently weighted, and communications subject to capacity constraints (e.g., in terms of bandwidth) and costs (e.g., latency or monetary costs). WNetKAT is based on a syntactic and semantic extension of the NetKAT algebra. We demonstrate several relevant applications for WNetKAT, including cost- and capacity-aware reachability, as well as quality-of-service and fairness aspects. These applications do not only apply to classic, splittable and unsplittable (s; t)-flows, but also generalize to more complex network functions and service chains. For example, WNetKAT allows to model flows which need to traverse certain waypoint functions, which may change the traffic rate. This paper also shows the relation between the equivalence problem of WNetKAT and the equivalence problem of the weighted finite automata, which implies undecidability of the former. However, this paper also succeeds to prove the decidability of another useful problem, which is sufficient in many practical scnearios: whether an expression equals to 0. Moreover, we initiate the discussion of decidable subsets of the whole language.

研究の動機と目的

  • SDN における帯域幅、遅延、金銭的コストといった重み付きネットワーク特性を形式的にモデル化するための言語の不足に対処すること。
  • フローゲート、レート変更、仮想化ネットワーク関数によるウェイポイント指定を含む、重み付き演算をサポートする代数的構成を NetKAT に拡張すること。
  • 容量制約およびコストに配慮したルーティングを含むネットワークポリシーの形式的検証を可能にすること。
  • 特に同値性と空集合問題を含む、重要な検証問題の決定可能性を、重み付き設定において分析すること。
  • 実用的展開を念頭に、空集合問題に特に注目した、WNetKAT の決定的サブセットの探索。

提案手法

  • 半環および双モノイドを用いて、NetKAT の代数的基盤に重み付き演算を拡張し、特にトロピカル半環と min-plus 代数を採用する。
  • 半環上の重み付きオートマトンモデルを導入して WNetKAT 式を表現し、形式的意味論と検証を可能にする。
  • WNetKAT 同値性と重み付き有限オートマトン(WFA)同値性の対応関係を用いて、決定可能性を分析する。
  • 照合テーブルとグループテーブルを用いて、WNetKAT 式を OpenFlow 互換のフローテーブルにコンパイルする技術を採用する。
  • スイッチ変数と状態依存論理の実装に、既存の OpenFlow 機能(グループテーブル、カウンタ、メーター)を活用する。
  • 未決定的でないサブセット(unambiguous subsets)を特定し、同値性の決定可能性への道筋を示す。これは、未決定的オートマトンに関する先行研究にインspiredされている。

実験結果

リサーチクエスチョン

  • RQ1ネットワークプログラミング言語として、現実のネットワークに内在する容量およびコスト制約を形式的にモデル化できるか?
  • RQ2重み付きネットワーク式の同値性問題は決定可能か? もし非決定的であれば、有用な部分問題として決定可能なものは何か?
  • RQ3WNetKAT は、レート変更を行うミドルボックス(例:ファイアウォール、WAN オプティマイザー)を含む、サービスチェーンのような複雑なネットワーク機能をどのように表現できるか?
  • RQ4WNetKAT は、OpenFlow などの既存の SDN プラットフォームに、意味論を保持したままコンパイル可能か?
  • RQ5WNetKAT のどのサブセットが、特に空集合問題と同値性の検証において決定可能になるか?

主な発見

  • WNetKAT 式の同値性問題は undecidable である。これは、一般の半環上の重み付き有限オートマトンの同値性問題に還元可能であるためである。
  • 空集合問題(WNetKAT 式がゼロに評価されるか否かを判定する問題)は決定可能である。これは、対応する重み付きオートマトンの空集合性に対応するためである。
  • トロピカル半環や min-plus 双モノイドといった主要構造において、空集合の決定可能性は保たれる。これらは容量およびコストのモデル化に用いられる。
  • WNetKAT は、ウェイポイント指定やレート変更を行うミドルボックス(例:ファイアウォール、WAN オプティマイザー)を含む、複雑なネットワーク機能のモデル化を可能にする。
  • この言語は、容量およびコスト制約下での分割可能・非分割可能なフローに関する形式的推論を可能にし、到達可能性および QoS 分析を一般化する。
  • 照合テーブル、グループテーブル、カウンタなどの既存機能を活用することで、WNetKAT を OpenFlow にコンパイルすることが可能であり、実用的展開が可能である。

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

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

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

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