Best Paper Award IOVTee : A Fast and Pragmatic Software-based Zero-copy/Pass-through Mechanism for NFV-nodes Assist. Prof. Ryota Kawashima Nagoya Institute of Technology, Japan
1 Contents 1 Backgrounds 2 Related Work 3 IOVTee 4 Evaluation 5 Conclusion
2 Softwarization for Ultimate Flexibility Traditional Networks Functions Multi-Slicing Forwarding Convergenced Convergenced Convergenced Highly flexible infrastructures are crucial for 5G/cloud services Softwarized Networks
3 High-Speed Communications Core Network Traffic Hardwares 400G Ethernet Softwares Marcus K. Weldon, “The Future X Networks” Are software-based approaches viable ?
4 White Box Switches vs. COTS Servers D-Plane C-Plane White Box Switch Mgmt. OS NF HIGH PERFORMANCE ASIC TCAM CPU Memory D-Plane C-Plane LOW PERFORMANCE VNF VNF DPDK DPDK vHW VNF Virtual Switch Mgmt. OS DPDK CPU Memory CPU Memory COTS Server
5 The Reality of NFV-nodes (COTS Servers) Basic Forwarding Throughput (64B) [Mpps] 160 100G 140 120 100 80 40G 60 40 10G 20 0 H/W Baremetal Container VM NFV-node The cost of flexibility is too (single datapath) high a price !
6 Contents 1 Backgrounds 2 Related Work 3 IOVTee 4 Evaluation 5 Conclusion
7 vhost-user (de-facto) Container VM VNF VNF DPDK DPDK User-space to User-space Driver Driver virtio virtio Packet copy vhost-user (each direction) Virtual Switch Tx zero-copy DPDK (optional) Driver NIC
8 Zero-copy Approaches NetVM* Zcopy-vhost** VM VM VM VNF VNF VNF Direct access NetLib NetLib DPDK Emulated PCI Emulated PCI Phy-Vir Phy-Vir Zero-copy Virtual Switch Shared by VMs Packet Core Swapped Packet Pool Engine Vir-Phy Vir-Phy DPDK Forwarding Phy-Phy Phy-Phy Phy-Phy Phy-Phy Driver Decision NIC Packet Packet * J. Hwang, et al., “NetVM: High Performance and Flexible Networking Using Virtualization on Commodity Platforms”, IEEE TNSM, vol. 12, no. 1, pp. 34-47, 2015 ** D. Wang, et al., “ Zcopy-vhost : Eliminating Packet Copying in Virtual Network I/O”, Proc. IEEE LCN, pp. 632 -639, 2017
9 (H/W) Pass-through Approaches SR-IOV VM Container VNF VNF Dedicated to DPDK DPDK the physical NIC VF Driver VF Driver Pass-through Bypassed Virtual Switch Hairpin routing for inter-guest comm. VF NIC VF
10 Problem Statements Concerns Description Methods Security Exposing the host memory NetVM, IVSHMEM Transparency VNFs are aware of the host NetVM, IVSHMEM, environment Zcopy-vhost, SR-IOV Portability The method broadly depends on other Zcopy-vhost system components Traceability Internal behaviors are hidden SR-IOV Container Container-based VNFs are not IVSHMEM, Zcopy- supported vhost The existing methods have pragmatic problems A yet another practical approach is needed
11 Contents 1 Backgrounds 2 Related Work 3 IOVTee 4 Evaluation 5 Conclusion
12 Proposed Approach (IOVTee) Container VM VNF VNF Rx Queue Mapping DPDK DPDK (DMA-to-VNF) Driver Driver virtio virtio Packet Processing vhost-user on the Host Virtual Switch DPDK Vhost-user Interface Driver NIC DMA
13 Step-by-Step Description VNF 8. VNF’s processing 7. MBufs are created Mempool DPDK MBuf Packet Buffer 0. The Rx queue points to the memory buffer Driver 6. Updated virtio 6. vhost-user comm. (Zero-copy) 3. Packets are DMAed (DMA-to-VNF) 5. vSwitch’s processing Virtual Switch 1. The points are redirected Mempool (Rx Queue Mapping) DPDK MBuf Buffer X 0. The Rx queue points to the memory buffer Driver 4. MBufs are created NIC Packet 2. Packets are stored in the NIC’s physical queue 3. Updated
14 Are Problems Resolved ? Concerns Description Resolved? Security Host memory is NOT exposed to VNFs Transparency IOVTee is completely hidden by the vhost-user interface Portability IOVTee is implemented only within the host DPDK internals Traceability IOVTee is a complete software-based approach Container The vhost-user interface is not changed IOVTee is a pragmatic zero-copy/pass-through mechanism What about the performance ?
15 Contents 1 Backgrounds 2 Related Work 3 IOVTee 4 Evaluation 5 Conclusion
16 Three Experiments VNF Various Rx Queue DPDK 1 1. Rx Queue Size Sizes Driver virtio Various Tx/Rx 2. Tx/Rx Optimizations 2 Optimizations Virtual Switch DPDK 3 Various Packet Sizes 1. Rx Queue Size Driver NIC 3. Packet Size Packet Packet
17 Environment Device under Test Single CPU core VNF DPDK Driver virtio Dual CPU cores (Rx/Tx) Tester MoonGen Virtual Switch DPDK DPDK Driver Driver NIC NIC 100 GbE
18 Exp1: Physical/Virtual Ring Sizes Default vhost-user Lower cache hit ratio IOVTee Higher cache hit ratio Virtual must be greater than Physical
19 Exp2: Tx/Rx Zero-copy Methods Tx: fake-zero-copy Tx: copy Tx: SR-IOV Tx: zero-copy Overhead of IOVTee 20% boost Tx: zero-copy Unstable and worsens performance poor performance Zero-copy for Rx path is effective Current implementation could be further optimized
20 Exp3: Packet Sizes 19 Mpps for 64-byte packets Tx: zero-copy/SR-IOV are effective for large-size packets Worst performance 90 Gbps for for mid-size packets 1518-byte packets IOVTee is superior for any packet size
21 Baremetal vs. Virtual Machine Basic Forwarding Throughput [Mpps] 70 40G 60 50 What causes 40 this gap ? 30 20 10G 10 0 Baremetal Default IOVTee (64-byte packets, Single datapath) Zero-copy is effective, but not enough
22 Contents 1 Backgrounds 2 Related Work 3 IOVTee 4 Evaluation 5 Conclusion
23 Summary IOVTee: A yet another Zero-copy/Pass-through method Fast Pragmatic Security Transparency 19 Mpps (64-byte) Portability Traceability 90 Gbps (1518-byte) Container Future Work • Further optimizing current implementation • Identifying actual performance bottleneck
Recommend
More recommend