vPipe: One Pipe to Connect Them All!
summary
vPipe implements a VMM-level “pipe” that shortcuts data paths by offloading whole file-to-socket transfers and creating a shadow TCP socket in the driver domain, using a shared ring buffer and kernel modules in guest and driver domain on Xen/Linux. Prototype pins domains to cores, supports file→socket now (other directions work in progress), and reports up to 2.4× file transfer speedups, 3.9× with lighty, and about 38% CPU savings while avoiding VM scheduling delays.
AI-written summary · about
chapters (14)
- 0:00Introduction
- 0:33Cloud Applications
- 2:23Simple Example
- 4:22Data Crossing
- 4:50VM Consolidation
- 6:12vPipe
- 7:13vPipe Components
- 8:46File IO offload
- 9:53Socket IO offload
- 12:03vPipe prototype
- 13:28Testbed setup
- 13:56Application setup
- 15:17CPU utilization
- 18:48Application level evaluation
related talks
37mEfficient and Flexible Virtual Machine Networking Through eBPF
38mVSOCK: From Convenience to Performant VirtIO Communication
51mAccelerate containers and VMs networking with vDPA
31mFlow-based Packet Processing Framework on DPDK and VPP
30mHA-IOV: Applying Hardware-assisted Techniques to IO Virtualization Framework
18mOpen vSwitch with AF_XDP as a userspace datapath
32mSnabb Switch simple and fast packet networking
21mCo-opting Linux Processes for High-Performance Network Simulation
