SlideShare a Scribd company logo
Jun (Jim) Xu 
jun.xu@huawei.com 
Principal Engineer, 
Futurewei Technologies, Inc.
Linux 
KVM/QEMU 
Switch/Router 
NFV
Linux IP stack in Kernel 
All Applications will communicate via socket 
Limited raw socket applications 
A Perfect world (really ?) 
L2 
L3 
L4 
Socket Interface 
User Space 
TCP dump 
apache
‘KVM (Kernel-based Virtual Machine) is a virtualization infrastructure for the Linux kernel that turns it into a hypervisor, which was merged into the Linux kernel mainline in February 2007” * 
◦Supports multiple architectures 
◦Common use in network areas and ISP/SP 
KVM inherits majority of Linux Kernel functions, including its IP stack 
* From wikipedia 
KVM/Linux 
Bare Metal 
APP 
VM 
VM 
VM 
Hypervisor 
Memory Management 
Process scheduling 
TCP/IP Stack 
IO Driver 
More…. 
TCP/IP Stack 
IO Driver 
Memory Management 
Process scheduling 
APP 
APP 
APP
Intel Server 
vSwitch 
VM 
11.1.1.1/24 
VM 
11.1.1.2/24 
Huawei 
CE12800 
Huawei 
CE5800 
Intel Server 
VM 
11.1.1.1/24 
VM 11.1.1.2/24 
Huawei CE12800 
Huawei 
CE5800 
•Traffic pattern in DC: 
oTraffic across VM within the host 
oTraffic across hosts 
oTraffic aggregate to core and goes to Edge 
•Most traffics are the first two types (east-west) 
•To handle the first two cases, virtual switch is introduced
Intel Server 
VM 11.1.1.1/24 
VM 
11.1.1.2/24 
Huawei CE12800 
Huawei CE5800 
Intel Server 
Intel Server 
VM 
11.1.1.1/24 
VM 
11.1.1.2/24 
Huawei CE12800 
Huawei 
CE5800 
Intel Server 
vSwitch 
vSwitch 
•VxLAN, STT, NVGRE can be used in virtual switch 
•Distributed Router can be deployed in the host as well
•There is one open source virtual switch – OVS 
•Current OVS suitable for endpoint virtualization 
•A Perfect World! ( really ?) 
Hypervisor Linux Kernel 
VM 
11.1.1.1/24 
VM 11.1.1.2/24 
Virtual switch (e.g. OVS kernel module) 
Huawei CE5800 Switch 
NIC
VNFs will be executed in VMs (for now). 
The packet performance along with the functions of the virtual switches will put significant impact on the success of the NFV 
These introduce new challenges… 
Reference to www.etsi.org about NFV 
End Node VM1 
End 
Node 
VM2 
Bare Metal 
Virtualization Layer 
VNF1 
LB 
VNF2 Firewall 
VNF3 nat 
VNF4 
ipsec 
VNF5 router
Hypervisor Linux Kernel 
VM 11.1.1.1/24 
VM 
11.1.1.2/24 
Virtual switch (e.g. OVS kernel module) 
Physical Switch 
NIC 
Performance Challenges
From: Lothar Braun, Alexander Didebulidez, etc., “Comparing and Improving Current Packet Capturing Solutions based on Commodity Hardware” in Internet Measurement Conference, 2010 http://conferences.sigcomm.org/imc/2010/papers/p206.pdf
1.488 Mpps Tx rate 
50% CPU Utilization 
Intel Dual Core @1600Mhz 
Test result shows NETMAP with 60B packet costs ~1000cycles/packet 
* Netmap is a open source at http://info.iet.unipi.it/~luigi/netmap/
VM 
IP 
App 
App 
App 
VM 
IP 
App 
App 
App 
VM 
IP 
App 
App 
Virtual Switch/Virtual Router 
IP stack 
KVM/Linux Kernel 
vNIC 
vNIC 
vNIC 
NIC 
NIC 
SR-IOV is a possible solution, but yet introduces other problems
Intel Server 
Intel Server 
VM 11.1.1.1/24 
VM 
11.1.1.2/24 
Huawei 
CE12800 
Huawei CE5800 
VM 
IP 
App 
App 
App 
VM 
IP 
App 
App 
Virtual Switch/Virtual Router 
KVM/Linux Kernel 
vNIC 
vNIC 
vNIC 
Huawei 
CE12800 
Huawei CE5800 
In NFV, VM may not be the endpoint anymore 
VM 
11.1.1.2/24
Add (Distributed) Routing 
Add MPLS 
Add (Distributed) Firewall 
Add QOS 
Add IP Filter 
Add Packet Classifier 
Add Redirect 
Add Load Balance 
Plus existing L2 functions 
…. 
All into (Linux) Kernel 
OS/hypervisor/Network be the monolithic piece of all 
(Sounds familiar?) 
VxLAN 
DHCP 
Socket Interface 
User Space 
TCP dump 
apache 
IPv6 
GRE 
NVGRE 
VLAN 
ARP 
MPLS 
QOS 
Redirect 
Mirror 
LB 
Classifier 
IPv4 
NAT
Use ASIC to offload the switching function 
Common approach from Network Vendors 
Challenges to address portability, feature velocity in ASICs 
Switch ASIC 
NIC 
VM 
IP 
App 
App 
App 
VM 
IP 
App 
App 
App 
VM 
IP 
App 
App 
vNIC 
Hypervisor/ Linux Kernel 
vNIC
Network Service Appliance 
QEMU-KVM 
KVM 
Linux Kernel 
Guest Kernel 
Huawei CE5800 Switch 
NIC 
Guest Userspace Processes 
•SR-IOV provides the separated access to a network adaptor among various PCIe hardware functions. 
•It bypasses the virtual switch function in the kernel to allow network traffic directly goes between VF and VM 
•Combine with UIO, QEMU can access the FV and provide the IO to Guest Kernel 
•SR-IOV and UIO are orthogonal technology. Other IO solutions are also feasible. 
vNIC
DPDK demonstrates the desired network packet performance for NFV 
DPDK userspace design points to a better software approach 
Packet processing enhancement provides further opportunities: 
◦Integration of High Bandwidth PCIe Gen3 
◦ New AVX Extensions 
◦ Intel® Virtualization Technology (Intel® VT) 
◦ Intel® Data Direct I/O Technology (Intel® DDIO) 
*From Intel DPDK. For DPDK reference to http://www.intel.com/go/dpdk 
•Quad Core Intel® Core™ i7-3610QE Processor 2.30GHz (E1), 6MB L3 cache 
•Mobile Intel® QM77 Express Chipset (A1) 
•Emerald Lake 2 Platform (CRB) 
•DDR3 1600MHz, 2 x dual rank 4GB (total 8GB), Dual-Channel Configuration 
•2 x Intel® 82599 Dual Port PCI-Express x8 10 Gigabit Ethernet NIC
QEMU-KVM 
QEMU-KVM 
KVM Linux Kernel 
Guest Kernel 
Huawei CE5800 Switch 
NIC 
Guest Userspace Processes 
Guest Kernel 
Guest Userspace Processes 
•KVM/Linux Kernel back to what it is designed for, and yet robust. 
•Userspace Virtual Switch/Router uses UIO to directly access Physical NIC, and benefits from DDIO, PCIe Gen3, IOTLB, etc 
•Userspace Virtual Switch/Router provides vNIC for VM for accomplishing the inter-VM communication 
•Elastic performance with multi-core support. 
Userspace Virtual Switch/Router 
Network Service Appliance 
vNIC
QEMU-KVM 
QEMU-KVM 
KVM 
Linux Kernel 
Guest Kernel 
Huawei CE5800 Switch 
NIC 
Guest Userspace Processes 
Guest Kernel 
Guest Userspace Processes 
•Userspace packet path can be directly from VM to VM 
•Zero copy is possible for inter-VM packets in the same host when optimizing with Guest kernel UIO, and Frontend Driver in QEMU. 
Userspace Virtual Switch/Router 
Network Service Appliance 
vNIC
Support more IO types 
Less intrusive IO 
Feature Rich Userspace Switch/Router 
Multi-core expansion 
Multiple Instances to support Multi-tenancy
Monolithic hypervisors may not be extensible with NFV deployment 
Linux/KVM/hypervisor can focus on its main tasks, e.g. process scheduling, resource management, virtualization 
Userspace IP stack provides another approach for easy development environment, high packet performance, and compatible VM communication support.
Reference 
DPDK https://01.org/packet-processing/overview/dpdk-detail 
NETMAP http://info.iet.unipi.it/~luigi/netmap/ 
PR_RING http://www.ntop.org/products/pf_ring/ 
KVM http://www.linux-kvm.org/page/Main_Page 
Contact me at jun.xu@huawei.com

More Related Content

What's hot (20)

PPTX
DPDK summit 2015: It's kind of fun to do the impossible with DPDK
Lagopus SDN/OpenFlow switch
 
PDF
DPDK Summit 2015 - HP - Al Sanders
Jim St. Leger
 
PDF
DPDK Summit - 08 Sept 2014 - 6WIND - High Perf Networking Leveraging the DPDK...
Jim St. Leger
 
PDF
Accelerate Service Function Chaining Vertical Solution with DPDK
OPNFV
 
PDF
Disruptive IP Networking with Intel DPDK on Linux
Naoto MATSUMOTO
 
PDF
DPDK Summit 2015 - Aspera - Charles Shiflett
Jim St. Leger
 
PDF
Performance challenges in software networking
Stephen Hemminger
 
PDF
DPDK in Containers Hands-on Lab
Michelle Holley
 
PDF
DPDK Summit 2015 - Intel - Keith Wiles
Jim St. Leger
 
PDF
DPDK In Depth
Kernel TLV
 
PPTX
Packet Framework - Cristian Dumitrescu
harryvanhaaren
 
PPTX
Accelerating Neutron with Intel DPDK
Alexander Shalimov
 
PPTX
Dpdk applications
Vipin Varghese
 
ODP
Dpdk performance
Stephen Hemminger
 
PDF
Recent advance in netmap/VALE(mSwitch)
micchie
 
PPTX
Introduction to DPDK
Kernel TLV
 
PDF
100 M pps on PC.
Redge Technologies
 
PPTX
Netsft2017 day in_life_of_nfv
Intel
 
PPTX
Enable DPDK and SR-IOV for containerized virtual network functions with zun
heut2008
 
PDF
How to Speak Intel DPDK KNI for Web Services.
Naoto MATSUMOTO
 
DPDK summit 2015: It's kind of fun to do the impossible with DPDK
Lagopus SDN/OpenFlow switch
 
DPDK Summit 2015 - HP - Al Sanders
Jim St. Leger
 
DPDK Summit - 08 Sept 2014 - 6WIND - High Perf Networking Leveraging the DPDK...
Jim St. Leger
 
Accelerate Service Function Chaining Vertical Solution with DPDK
OPNFV
 
Disruptive IP Networking with Intel DPDK on Linux
Naoto MATSUMOTO
 
DPDK Summit 2015 - Aspera - Charles Shiflett
Jim St. Leger
 
Performance challenges in software networking
Stephen Hemminger
 
DPDK in Containers Hands-on Lab
Michelle Holley
 
DPDK Summit 2015 - Intel - Keith Wiles
Jim St. Leger
 
DPDK In Depth
Kernel TLV
 
Packet Framework - Cristian Dumitrescu
harryvanhaaren
 
Accelerating Neutron with Intel DPDK
Alexander Shalimov
 
Dpdk applications
Vipin Varghese
 
Dpdk performance
Stephen Hemminger
 
Recent advance in netmap/VALE(mSwitch)
micchie
 
Introduction to DPDK
Kernel TLV
 
100 M pps on PC.
Redge Technologies
 
Netsft2017 day in_life_of_nfv
Intel
 
Enable DPDK and SR-IOV for containerized virtual network functions with zun
heut2008
 
How to Speak Intel DPDK KNI for Web Services.
Naoto MATSUMOTO
 

Viewers also liked (20)

PDF
The linux networking architecture
hugo lu
 
PPT
Linux architecture
mcganesh
 
PDF
Library Operating System for Linux #netdev01
Hajime Tazaki
 
PDF
DPDK Summit 2015 - Intro - Tim O'Driscoll
Jim St. Leger
 
PDF
The Openflow Soft Switch
Krzysztof Rutka
 
PDF
Aag c45 697761
HP IN Rajesh Goel
 
PDF
Reverse, Multi-Process and Non-Stop Debugging come to the CDT
marckhouzam
 
PPT
Real time debugging: using non-intrusive tracepoints to debug live systems
marckhouzam
 
PPTX
OMFW 2012: Analyzing Linux Kernel Rootkits with Volatlity
Andrew Case
 
PPTX
A particle filter based scheme for indoor tracking on an Android Smartphone
Divye Kapoor
 
PDF
Rootkit 102 - Kernel-Based Rootkit
Chia-Hao Tsai
 
PDF
Linux performance
Will Sterling
 
PDF
Kernel Recipes 2015: The stable Linux Kernel Tree - 10 years of insanity
Anne Nicolas
 
PPTX
Cybermania Prelims
Divye Kapoor
 
PPTX
Cybermania Mains
Divye Kapoor
 
PDF
Working Remotely (via SSH) Rocks!
Kent Chen
 
ODP
Linux Internals - Kernel/Core
Shay Cohen
 
PDF
The TCP/IP stack in the FreeBSD kernel COSCUP 2014
Kevin Lo
 
PPTX
Advanced Debugging with GDB
David Khosid
 
PDF
LAS16-403 - GDB Linux Kernel Awareness
Peter Griffin
 
The linux networking architecture
hugo lu
 
Linux architecture
mcganesh
 
Library Operating System for Linux #netdev01
Hajime Tazaki
 
DPDK Summit 2015 - Intro - Tim O'Driscoll
Jim St. Leger
 
The Openflow Soft Switch
Krzysztof Rutka
 
Aag c45 697761
HP IN Rajesh Goel
 
Reverse, Multi-Process and Non-Stop Debugging come to the CDT
marckhouzam
 
Real time debugging: using non-intrusive tracepoints to debug live systems
marckhouzam
 
OMFW 2012: Analyzing Linux Kernel Rootkits with Volatlity
Andrew Case
 
A particle filter based scheme for indoor tracking on an Android Smartphone
Divye Kapoor
 
Rootkit 102 - Kernel-Based Rootkit
Chia-Hao Tsai
 
Linux performance
Will Sterling
 
Kernel Recipes 2015: The stable Linux Kernel Tree - 10 years of insanity
Anne Nicolas
 
Cybermania Prelims
Divye Kapoor
 
Cybermania Mains
Divye Kapoor
 
Working Remotely (via SSH) Rocks!
Kent Chen
 
Linux Internals - Kernel/Core
Shay Cohen
 
The TCP/IP stack in the FreeBSD kernel COSCUP 2014
Kevin Lo
 
Advanced Debugging with GDB
David Khosid
 
LAS16-403 - GDB Linux Kernel Awareness
Peter Griffin
 
Ad

Similar to DPDK Summit - 08 Sept 2014 - Futurewei - Jun Xu - Revisit the IP Stack in Linux with Network Virtualization (20)

PPT
Linux virtualization
Google
 
PDF
XPDS14 - Xen as High-Performance NFV Platform - Jun Nakajima, Intel
The Linux Foundation
 
PDF
Openstack v4 0
sprdd
 
PDF
High performance and flexible networking
John Berkmans
 
PDF
OpenStack Paris Meetup on Nfv 2014/10/07
Nicolas (Nick) Barcet
 
PDF
Achieving the Ultimate Performance with KVM
data://disrupted®
 
PDF
Devconf.cz 2016 Linux as a guest on Hyper-V
Vitaly Kuznetsov
 
PDF
Known basic of NFV Features
Raul Leite
 
PDF
Achieving the Ultimate Performance with KVM
DevOps.com
 
PPTX
Server virtualization
Kingston Smiler
 
PPTX
Erez Cohen & Aviram Bar Haim, Mellanox - Enhancing Your OpenStack Cloud With ...
Cloud Native Day Tel Aviv
 
PDF
Platforms for Accelerating the Software Defined and Virtual Infrastructure
6WIND
 
PPTX
VMs All the Way Down (BSides Delaware 2016)
John Hubbard
 
PDF
OpenVZ Linux Containers
Kirill Kolyshkin
 
PPTX
VMware Networking, CISCO Nexus 1000V, and CISCO UCS VM-FEX
David Pasek
 
PPTX
Thebasicintroductionofopenvswitch
Ramses Ramirez
 
PPTX
Virtualization technolegys for amdocs
Samuel Dratwa
 
PDF
Data Center Networks:Virtual Bridging
rjain51
 
PDF
Nvp deep dive_session_cee-day
yfauser
 
PDF
100Gbps OpenStack For Providing High-Performance NFV
NTT Communications Technology Development
 
Linux virtualization
Google
 
XPDS14 - Xen as High-Performance NFV Platform - Jun Nakajima, Intel
The Linux Foundation
 
Openstack v4 0
sprdd
 
High performance and flexible networking
John Berkmans
 
OpenStack Paris Meetup on Nfv 2014/10/07
Nicolas (Nick) Barcet
 
Achieving the Ultimate Performance with KVM
data://disrupted®
 
Devconf.cz 2016 Linux as a guest on Hyper-V
Vitaly Kuznetsov
 
Known basic of NFV Features
Raul Leite
 
Achieving the Ultimate Performance with KVM
DevOps.com
 
Server virtualization
Kingston Smiler
 
Erez Cohen & Aviram Bar Haim, Mellanox - Enhancing Your OpenStack Cloud With ...
Cloud Native Day Tel Aviv
 
Platforms for Accelerating the Software Defined and Virtual Infrastructure
6WIND
 
VMs All the Way Down (BSides Delaware 2016)
John Hubbard
 
OpenVZ Linux Containers
Kirill Kolyshkin
 
VMware Networking, CISCO Nexus 1000V, and CISCO UCS VM-FEX
David Pasek
 
Thebasicintroductionofopenvswitch
Ramses Ramirez
 
Virtualization technolegys for amdocs
Samuel Dratwa
 
Data Center Networks:Virtual Bridging
rjain51
 
Nvp deep dive_session_cee-day
yfauser
 
100Gbps OpenStack For Providing High-Performance NFV
NTT Communications Technology Development
 
Ad

More from Jim St. Leger (8)

PDF
DPDK Summit 2015 - Sprint - Arun Rajagopal
Jim St. Leger
 
PDF
DPDK Summit - 08 Sept 2014 - Intel - Closing Remarks
Jim St. Leger
 
PDF
DPDK Summit - 08 Sept 2014 - Intel - Networking Workloads on Intel Architecture
Jim St. Leger
 
PDF
DPDK Summit - 08 Sept 2014 - Microsoft- PacketDirect
Jim St. Leger
 
PDF
DPDK Summit - 08 Sept 2014 - Ericsson - A Multi-Socket Ferrari for NFV
Jim St. Leger
 
PDF
DPDK Summit - 08 Sept 2014 - Introduction - St Leger
Jim St. Leger
 
PDF
Transforming Communications Networks
Jim St. Leger
 
PDF
3D Printing Overview
Jim St. Leger
 
DPDK Summit 2015 - Sprint - Arun Rajagopal
Jim St. Leger
 
DPDK Summit - 08 Sept 2014 - Intel - Closing Remarks
Jim St. Leger
 
DPDK Summit - 08 Sept 2014 - Intel - Networking Workloads on Intel Architecture
Jim St. Leger
 
DPDK Summit - 08 Sept 2014 - Microsoft- PacketDirect
Jim St. Leger
 
DPDK Summit - 08 Sept 2014 - Ericsson - A Multi-Socket Ferrari for NFV
Jim St. Leger
 
DPDK Summit - 08 Sept 2014 - Introduction - St Leger
Jim St. Leger
 
Transforming Communications Networks
Jim St. Leger
 
3D Printing Overview
Jim St. Leger
 

Recently uploaded (20)

PPTX
In From the Cold: Open Source as Part of Mainstream Software Asset Management
Shane Coughlan
 
PDF
Digger Solo: Semantic search and maps for your local files
seanpedersen96
 
PDF
[Solution] Why Choose the VeryPDF DRM Protector Custom-Built Solution for You...
Lingwen1998
 
PPTX
OpenChain @ OSS NA - In From the Cold: Open Source as Part of Mainstream Soft...
Shane Coughlan
 
PDF
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
PDF
SAP Firmaya İade ABAB Kodları - ABAB ile yazılmıl hazır kod örneği
Salih Küçük
 
PDF
Wondershare PDFelement Pro Crack for MacOS New Version Latest 2025
bashirkhan333g
 
PDF
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
PDF
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
PDF
vMix Pro 28.0.0.42 Download vMix Registration key Bundle
kulindacore
 
PDF
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
PDF
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
PDF
Empower Your Tech Vision- Why Businesses Prefer to Hire Remote Developers fro...
logixshapers59
 
PDF
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pdf
Varsha Nayak
 
PDF
The 5 Reasons for IT Maintenance - Arna Softech
Arna Softech
 
PPTX
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PPTX
Agentic Automation: Build & Deploy Your First UiPath Agent
klpathrudu
 
PPTX
Milwaukee Marketo User Group - Summer Road Trip: Mapping and Personalizing Yo...
bbedford2
 
PPTX
Help for Correlations in IBM SPSS Statistics.pptx
Version 1 Analytics
 
PDF
MiniTool Partition Wizard 12.8 Crack License Key LATEST
hashhshs786
 
In From the Cold: Open Source as Part of Mainstream Software Asset Management
Shane Coughlan
 
Digger Solo: Semantic search and maps for your local files
seanpedersen96
 
[Solution] Why Choose the VeryPDF DRM Protector Custom-Built Solution for You...
Lingwen1998
 
OpenChain @ OSS NA - In From the Cold: Open Source as Part of Mainstream Soft...
Shane Coughlan
 
HiHelloHR – Simplify HR Operations for Modern Workplaces
HiHelloHR
 
SAP Firmaya İade ABAB Kodları - ABAB ile yazılmıl hazır kod örneği
Salih Küçük
 
Wondershare PDFelement Pro Crack for MacOS New Version Latest 2025
bashirkhan333g
 
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
vMix Pro 28.0.0.42 Download vMix Registration key Bundle
kulindacore
 
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
Empower Your Tech Vision- Why Businesses Prefer to Hire Remote Developers fro...
logixshapers59
 
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pdf
Varsha Nayak
 
The 5 Reasons for IT Maintenance - Arna Softech
Arna Softech
 
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Agentic Automation: Build & Deploy Your First UiPath Agent
klpathrudu
 
Milwaukee Marketo User Group - Summer Road Trip: Mapping and Personalizing Yo...
bbedford2
 
Help for Correlations in IBM SPSS Statistics.pptx
Version 1 Analytics
 
MiniTool Partition Wizard 12.8 Crack License Key LATEST
hashhshs786
 

DPDK Summit - 08 Sept 2014 - Futurewei - Jun Xu - Revisit the IP Stack in Linux with Network Virtualization

  • 1. Jun (Jim) Xu [email protected] Principal Engineer, Futurewei Technologies, Inc.
  • 3. Linux IP stack in Kernel All Applications will communicate via socket Limited raw socket applications A Perfect world (really ?) L2 L3 L4 Socket Interface User Space TCP dump apache
  • 4. ‘KVM (Kernel-based Virtual Machine) is a virtualization infrastructure for the Linux kernel that turns it into a hypervisor, which was merged into the Linux kernel mainline in February 2007” * ◦Supports multiple architectures ◦Common use in network areas and ISP/SP KVM inherits majority of Linux Kernel functions, including its IP stack * From wikipedia KVM/Linux Bare Metal APP VM VM VM Hypervisor Memory Management Process scheduling TCP/IP Stack IO Driver More…. TCP/IP Stack IO Driver Memory Management Process scheduling APP APP APP
  • 5. Intel Server vSwitch VM 11.1.1.1/24 VM 11.1.1.2/24 Huawei CE12800 Huawei CE5800 Intel Server VM 11.1.1.1/24 VM 11.1.1.2/24 Huawei CE12800 Huawei CE5800 •Traffic pattern in DC: oTraffic across VM within the host oTraffic across hosts oTraffic aggregate to core and goes to Edge •Most traffics are the first two types (east-west) •To handle the first two cases, virtual switch is introduced
  • 6. Intel Server VM 11.1.1.1/24 VM 11.1.1.2/24 Huawei CE12800 Huawei CE5800 Intel Server Intel Server VM 11.1.1.1/24 VM 11.1.1.2/24 Huawei CE12800 Huawei CE5800 Intel Server vSwitch vSwitch •VxLAN, STT, NVGRE can be used in virtual switch •Distributed Router can be deployed in the host as well
  • 7. •There is one open source virtual switch – OVS •Current OVS suitable for endpoint virtualization •A Perfect World! ( really ?) Hypervisor Linux Kernel VM 11.1.1.1/24 VM 11.1.1.2/24 Virtual switch (e.g. OVS kernel module) Huawei CE5800 Switch NIC
  • 8. VNFs will be executed in VMs (for now). The packet performance along with the functions of the virtual switches will put significant impact on the success of the NFV These introduce new challenges… Reference to www.etsi.org about NFV End Node VM1 End Node VM2 Bare Metal Virtualization Layer VNF1 LB VNF2 Firewall VNF3 nat VNF4 ipsec VNF5 router
  • 9. Hypervisor Linux Kernel VM 11.1.1.1/24 VM 11.1.1.2/24 Virtual switch (e.g. OVS kernel module) Physical Switch NIC Performance Challenges
  • 10. From: Lothar Braun, Alexander Didebulidez, etc., “Comparing and Improving Current Packet Capturing Solutions based on Commodity Hardware” in Internet Measurement Conference, 2010 http://conferences.sigcomm.org/imc/2010/papers/p206.pdf
  • 11. 1.488 Mpps Tx rate 50% CPU Utilization Intel Dual Core @1600Mhz Test result shows NETMAP with 60B packet costs ~1000cycles/packet * Netmap is a open source at http://info.iet.unipi.it/~luigi/netmap/
  • 12. VM IP App App App VM IP App App App VM IP App App Virtual Switch/Virtual Router IP stack KVM/Linux Kernel vNIC vNIC vNIC NIC NIC SR-IOV is a possible solution, but yet introduces other problems
  • 13. Intel Server Intel Server VM 11.1.1.1/24 VM 11.1.1.2/24 Huawei CE12800 Huawei CE5800 VM IP App App App VM IP App App Virtual Switch/Virtual Router KVM/Linux Kernel vNIC vNIC vNIC Huawei CE12800 Huawei CE5800 In NFV, VM may not be the endpoint anymore VM 11.1.1.2/24
  • 14. Add (Distributed) Routing Add MPLS Add (Distributed) Firewall Add QOS Add IP Filter Add Packet Classifier Add Redirect Add Load Balance Plus existing L2 functions …. All into (Linux) Kernel OS/hypervisor/Network be the monolithic piece of all (Sounds familiar?) VxLAN DHCP Socket Interface User Space TCP dump apache IPv6 GRE NVGRE VLAN ARP MPLS QOS Redirect Mirror LB Classifier IPv4 NAT
  • 15. Use ASIC to offload the switching function Common approach from Network Vendors Challenges to address portability, feature velocity in ASICs Switch ASIC NIC VM IP App App App VM IP App App App VM IP App App vNIC Hypervisor/ Linux Kernel vNIC
  • 16. Network Service Appliance QEMU-KVM KVM Linux Kernel Guest Kernel Huawei CE5800 Switch NIC Guest Userspace Processes •SR-IOV provides the separated access to a network adaptor among various PCIe hardware functions. •It bypasses the virtual switch function in the kernel to allow network traffic directly goes between VF and VM •Combine with UIO, QEMU can access the FV and provide the IO to Guest Kernel •SR-IOV and UIO are orthogonal technology. Other IO solutions are also feasible. vNIC
  • 17. DPDK demonstrates the desired network packet performance for NFV DPDK userspace design points to a better software approach Packet processing enhancement provides further opportunities: ◦Integration of High Bandwidth PCIe Gen3 ◦ New AVX Extensions ◦ Intel® Virtualization Technology (Intel® VT) ◦ Intel® Data Direct I/O Technology (Intel® DDIO) *From Intel DPDK. For DPDK reference to http://www.intel.com/go/dpdk •Quad Core Intel® Core™ i7-3610QE Processor 2.30GHz (E1), 6MB L3 cache •Mobile Intel® QM77 Express Chipset (A1) •Emerald Lake 2 Platform (CRB) •DDR3 1600MHz, 2 x dual rank 4GB (total 8GB), Dual-Channel Configuration •2 x Intel® 82599 Dual Port PCI-Express x8 10 Gigabit Ethernet NIC
  • 18. QEMU-KVM QEMU-KVM KVM Linux Kernel Guest Kernel Huawei CE5800 Switch NIC Guest Userspace Processes Guest Kernel Guest Userspace Processes •KVM/Linux Kernel back to what it is designed for, and yet robust. •Userspace Virtual Switch/Router uses UIO to directly access Physical NIC, and benefits from DDIO, PCIe Gen3, IOTLB, etc •Userspace Virtual Switch/Router provides vNIC for VM for accomplishing the inter-VM communication •Elastic performance with multi-core support. Userspace Virtual Switch/Router Network Service Appliance vNIC
  • 19. QEMU-KVM QEMU-KVM KVM Linux Kernel Guest Kernel Huawei CE5800 Switch NIC Guest Userspace Processes Guest Kernel Guest Userspace Processes •Userspace packet path can be directly from VM to VM •Zero copy is possible for inter-VM packets in the same host when optimizing with Guest kernel UIO, and Frontend Driver in QEMU. Userspace Virtual Switch/Router Network Service Appliance vNIC
  • 20. Support more IO types Less intrusive IO Feature Rich Userspace Switch/Router Multi-core expansion Multiple Instances to support Multi-tenancy
  • 21. Monolithic hypervisors may not be extensible with NFV deployment Linux/KVM/hypervisor can focus on its main tasks, e.g. process scheduling, resource management, virtualization Userspace IP stack provides another approach for easy development environment, high packet performance, and compatible VM communication support.
  • 22. Reference DPDK https://01.org/packet-processing/overview/dpdk-detail NETMAP http://info.iet.unipi.it/~luigi/netmap/ PR_RING http://www.ntop.org/products/pf_ring/ KVM http://www.linux-kvm.org/page/Main_Page Contact me at [email protected]