ネットワーク プロトコル仮想化またはネットワーク プロトコル スタック仮想化は、アプリケーション開発者が正確な通信スタックの構成を決定することなく、ネットワーク接続をサービスとして提供するという概念です。
コンセプト

ネットワークプロトコル仮想化(NPV)は、2015年にホイシュケルらによって、ネットワークプロトコルスタックの移行コンセプトの一部としてのラフスケッチとして初めて提案されました。 [1]このコンセプトは進化し、2018年に展開可能な状態で公開されました。[2]
重要なアイデアは、アプリケーションを通信スタックから分離することです。現在、ソケット API では、アプリケーション開発者が IPv4/IPv6 と UDP/TCP のいずれかを選択して通信スタックを手動で構成する必要があります。NPV では、ネットワーク プロトコル スタックを、監視対象のネットワーク環境 (リンク層テクノロジ、現在のネットワーク パフォーマンスなど) に合わせて調整することを提案しています。したがって、ネットワーク スタックは開発時に構成するのではなく、実行時に構成し、必要に応じて適応できるようにする必要があります。
さらに、分離によりISO OSIネットワーク層モデルのチェーンが緩和され、通信スタックの代替概念が可能になります。Heuschkelらは、通信スタックに追加のレイヤーを追加して、有用なサービス(HTTP最適化など[3]) で通信を充実させる例として、アプリケーション層ミドルボックスの概念を提案しています。
図はデータ フローを示しています。アプリケーションは、何らかの API を介して NPV ソフトウェアとインターフェイスします。Heuschkel らは、ソケット API と同等の代替案を提案しましたが、将来のアプリケーション向けにはより洗練されたインターフェイスを想定しています。スケジューラは、アプリケーション ペイロードを 1 つの (場合によっては多数の) 通信スタックに割り当て、ネットワーク ハードウェアを使用して送信されるネットワーク パケットに処理します。管理コンポーネントは、通信スタックの構成方法とスケジュール スキームを決定します。決定をサポートするために、ソフトウェア定義のネットワークコンテキストに管理システムを統合するための管理インターフェイスが提供されます。
NPVは、 LPWAN IoT( モノのインターネット)シナリオの中心的要素としてさらに研究されてきました。具体的には、基盤となるトランスポート、ネットワーク、リンク、物理層に依存しないアプリケーションの展開が、2020年にRolando Herreroによって研究されました。[4]この文脈では、NPVは、大規模なIoTアクセスネットワークにおける制約のあるセンサー、アクチュエータ、コントローラーの展開と管理を実現するための非常に効果的で柔軟なツールになります。[5]
実装
現在、この概念を実証できる学術的な実装は1つだけです。Heuschkelらは2016年にこの実装をデモンストレーターとして公開しました。[6] このコードの最新のバージョンは、GithubでAGPLv3の下で入手できます。
参照
参考文献
- ^ Heuschkel, Jens; Schweizer, Immanuel; Zimmermann, Thorsten; Wehrle, Klaus; Mühlhäuser, Max (2015). 「動的ネットワーク スタックによるプロトコル仮想化」。柔軟なネットワーク管理のためのソフトウェア定義ネットワークとネットワーク機能仮想化に関する第 1 回ワークショップ (SDNFlex) の議事録。
- ^ Heuschkel, Jens; Wang, Lin; Fleckstein, Erik; Ofenloch, Michael; Blöcher, Marcel; Crowcroft, Jon; Mühlhäuser, Max (2015). 「VirtualStack: ネットワーク プロトコル仮想化による柔軟なクロスレイヤー最適化」。第 43 回 Local Computer Networks (LCN) IEEE 会議論文集。
- ^ Heuschkel, Jens; Forstmann, Jens; Wang, Lin; Mühlhäuser, Max (2018). 「HTTP のパフォーマンス低下の特定」。第 42 回 Local Computer Networks (LCN) IEEE 会議論文集。
- ^ Herrero, Rolando (2021). 「IoTにおけるプロトコルスタック仮想化サポート」. Transactions on Emerging Telecommunications Technologies . 32 (11). doi :10.1002/ett.4340. S2CID 238717271.
- ^ Herrero , Rolando ( 2021 ). 「大規模な IoT 展開におけるプロトコル スタックの仮想化に向けて」。Internet of Things。14 : 100396。doi :10.1016/j.iot.2021.100396。S2CID 233522611 。
- ^ Heuschkel, Jens; Stein, Michael; Mühlhäuser, Max (2016). 「VirtualStack: エッジでの SDN 制御による透過的なプロトコル遷移」第 41 回 Local Computer Networks (LCN) IEEE 会議論文集。
外部リンク
- 仮想化入門
- マキ
- VirtualStack (NPV プロトタイプ)
