Table of Contents
Fetching ...

Bridge the Future: High-Performance Networks in Confidential VMs without Trusted I/O devices

Mengyuan Li, Shashvat Srivastava, Mengjia Yan

TL;DR

Confidential VMs (CVMs) suffer network I/O overhead from virtualization and memory encryption, and while Trusted I/O (TIO) could mitigate this, it is not widely available and expands the Trusted Computing Base (TCB). The authors analyze SNP overhead, finding routing overhead dominant and encryption overhead modest, and propose Folio, a DPDK-based, CPU-trust-first solution that uses a constrained I/O interface, shadow memory, and CPU crypto acceleration to approach TIO-level performance without new hardware. Through extensive evaluation with UDP, IPsec, and real-world DPDK-based applications (e.g., nginx on F-Stack), Folio achieves performance within a small gap (less than $6\%$) of the projected optimal and maintains end-to-end security under the same threat model as VirtIO, while incurring modest memory overhead. This work provides a practical, software-only pathway to high-performance confidential networking today and offers a stepping stone toward hardware-assisted TIO in the future.

Abstract

Trusted I/O (TIO) is an appealing solution to improve I/O performance for confidential VMs (CVMs), with the potential to eliminate broad sources of I/O overhead. However, this paper emphasizes that not all types of I/O can derive substantial benefits from TIO, particularly network I/O. Given the obligatory use of encryption protocols for network traffic in CVM's threat model, TIO's approach of I/O encryption over the PCIe bus becomes redundant. Furthermore, TIO solutions need to expand the Trusted Computing Base (TCB) to include TIO devices and are commercially unavailable. Motivated by these insights, the goal of this paper is to propose a software solution that helps CVMs immediately benefit from high-performance networks, while confining trust only to the on-chip CVM. We present FOLIO, a software solution crafted from a secure and efficient Data Plane Development Kit (DPDK) extension compatible with the latest version of AMD Secure Encrypted Virtualization (SEV), a.k.a., Secure Nested Paging (SNP). Our design is informed by a thorough analysis of all possible factors that impact SNP VM's network performance. By extensively removing overhead sources, we arrive at a design that approaches the efficiency of an optimal TIO-based configuration. Evaluation shows that FOLIO has a performance dip less than 6% relative to the optimal TIO configuration, while only relying on off-the-shelf CPUs.

Bridge the Future: High-Performance Networks in Confidential VMs without Trusted I/O devices

TL;DR

Confidential VMs (CVMs) suffer network I/O overhead from virtualization and memory encryption, and while Trusted I/O (TIO) could mitigate this, it is not widely available and expands the Trusted Computing Base (TCB). The authors analyze SNP overhead, finding routing overhead dominant and encryption overhead modest, and propose Folio, a DPDK-based, CPU-trust-first solution that uses a constrained I/O interface, shadow memory, and CPU crypto acceleration to approach TIO-level performance without new hardware. Through extensive evaluation with UDP, IPsec, and real-world DPDK-based applications (e.g., nginx on F-Stack), Folio achieves performance within a small gap (less than ) of the projected optimal and maintains end-to-end security under the same threat model as VirtIO, while incurring modest memory overhead. This work provides a practical, software-only pathway to high-performance confidential networking today and offers a stepping stone toward hardware-assisted TIO in the future.

Abstract

Trusted I/O (TIO) is an appealing solution to improve I/O performance for confidential VMs (CVMs), with the potential to eliminate broad sources of I/O overhead. However, this paper emphasizes that not all types of I/O can derive substantial benefits from TIO, particularly network I/O. Given the obligatory use of encryption protocols for network traffic in CVM's threat model, TIO's approach of I/O encryption over the PCIe bus becomes redundant. Furthermore, TIO solutions need to expand the Trusted Computing Base (TCB) to include TIO devices and are commercially unavailable. Motivated by these insights, the goal of this paper is to propose a software solution that helps CVMs immediately benefit from high-performance networks, while confining trust only to the on-chip CVM. We present FOLIO, a software solution crafted from a secure and efficient Data Plane Development Kit (DPDK) extension compatible with the latest version of AMD Secure Encrypted Virtualization (SEV), a.k.a., Secure Nested Paging (SNP). Our design is informed by a thorough analysis of all possible factors that impact SNP VM's network performance. By extensively removing overhead sources, we arrive at a design that approaches the efficiency of an optimal TIO-based configuration. Evaluation shows that FOLIO has a performance dip less than 6% relative to the optimal TIO configuration, while only relying on off-the-shelf CPUs.
Paper Structure (35 sections, 12 figures, 3 tables)

This paper contains 35 sections, 12 figures, 3 tables.

Figures (12)

  • Figure 1: Two I/O data flow in confidential VMs.
  • Figure 2: Folio overview. All components within the TEE private memory are trusted. Meanwhile, the hypervisor, NIC, and all data within the shared memory are untrusted. The DPDK library and the shared region management module strictly control VM's interaction with shared memory.
  • Figure 3: Shadow packet buffer pool design.
  • Figure 4: Three crypto offload methods.
  • Figure 5: Tail latency between SNP and non-TEE VMs.
  • ...and 7 more figures