This series examines the virtio-networking community work aiming to enhance the open standard virtio networking interface. This includes supporting wirespeed network interfaces for VMs and containers in on-prem and hybrid cloud environments.
The series includes solution overviews, technical deep dive and hands on blogs:
Solution overview blogs provide the readers with a high level overview of each topic focusing on the what and the why. Technical deep-dive blogs provide the reader with the a detailed explanation of each topic focusing on the how. Hands on blogs provide the reader with instruction on how to try for himself each topic, and Ansible scripts are also provided for those who are short on time.
September 5, 2019 | Ariel Adam, Amnon Ilan, Thomas Nadeau
If we’ve learned one thing about IT at-scale over the past several years, it’s that there is no "silver bullet" when it comes to choosing deployment environments. Virtualization, private cloud, public cloud, and Kubernetes have all entered the arena, but there is no clear winner—yet. Instead, IT organizations face layers of complex infrastructure technologies, each with various facets of abstraction and their own "rules" with the added challenge of making these disparate stacks play nicely together for the benefit of the business at-large. Read the entire post on the Red Hat Blog.
Introduction to virtio-networking and vhost-net (solution overview)
September 9, 2019 | Ariel Adam, Amnon Ilan, Thomas Nadeau
Virtio was developed as a standardized open interface for virtual machines (VMs) to access simplified devices such as block devices and network adaptors. Virtio-net is a virtual ethernet card and is the most complex device supported so far by virtio. Read the entire post on the Red Hat Blog.
Deep dive into Virtio-networking and vhost-net (technical deep-dive)
September 12, 2019 | Eugenio Perez Martin
In this post we will explain the vhost-net architecture described in the introduction, to make it clear how everything works together from a technical point of view. This is part of the series of blogs that introduces you to the realm of virtio-networking which brings together the world of virtualization and the world of networking. Read the entire post on the Red Hat Blog.
September 18, 2019 | Eugenio Perez Martin, Adrian Moreno
Vhost-net has silently become the default traffic offloading mechanism for qemu-kvm based virtual environments leveraging the standard virtio networking interface. This mechanism allows the network processing to be performed in a kernel module freeing the qemu process and improving the overall network performance. Read the entire post on the Red Hat Blog.
How vhost-user came into being: Virtio-networking and DPDK (solution overview)
September 20, 2019 | Ariel Adam, Amnon Ilan
In this post we will provide a high level solution overview of a virtio architecture based on Data Plane Development Kit (DPDK) in the host and guest. The blog will be followed by a technical deep dive blog intended for architects/developers and a hands on blog for those who enjoy getting their hands dirty. Read the entire post on the Red Hat Blog.
A journey to the vhost-users realm (technical deep-dive)
September 24, 2019 | Eugenio Perez Martin, Adrian Moreno
This post is a technical deep dive into the vhost-user/virtio-pmd architecture targeting high performance userland networking using DPDK, building on the introduction provided by the solution overview post. It is intended for architects and developers who are interested in understanding the nuts and bolts of this architecture, and will be followed by a complementary hands on blog to explore these concepts first handed. Read the entire post on the Red Hat Blog.
Hands on vhost-user: A warm welcome to DPDK (hands on)
September 26, 2019 | Jens Freimann, Eugenio Perez Martin, Adrian Moreno Zapata
In this post we will set up an environment and run a DPDK based application in a virtual machine. We will go over all steps required to set up a simple virtual switch in the host system which connects to the application in a VM. This includes a description of how to create, install and run a VM and install the application in it. You will learn how to create a simple setup where you sent packets via the application in the guest to a virtual switch in the host system and back. Based on this setup you will learn how to tune settings to achieve optimal performance. Read the entire post on the Red Hat Blog.
Achieving network wirespeed in an open standard manner: introducing vDPA (solution overview)
October 2, 2019 | Ariel Adam, Amnon Ilan
In the past few posts we have discussed the existing virtio-networking architecture both the kernel based (vhost-net/virtio-net) and the userspace/DPDK based (vhost-user/virtio-pmd). Now we'll turn our attention to emerging virtio-networking architectures aiming at providing wirespeed performance to VMs. Read the entire post on the Red Hat Blog.
How deep does the vDPA rabbit hole go? (technical deep-dive)
October 4, 2019 | Jason Wang, Maxime Coquelin, Michael S. Tsirkin
In this post we will be leading you through the different building blocks used for implementing the virtio full HW offloading and the vDPA solutions. This effort is still in progress, thus some bits may change in the future, however the governing building blocks are expected to stay the same. Read the entire post on the Red Hat Blog.
vDPA hands on: The proof is in the pudding (hands on)
October 9, 2019 | Maxime Coquelin
In this post, we will set up vDPA using its DPDK framework. Since vDPA compatible HW cards are in the process of being commonly available on the market, we will work around the HW constraint by using a paravirtualized Virtio-net device in a guest as if it was a full Virtio HW offload NIC. Read the entire post on the Red Hat Blog.
Breaking cloud native network performance barriers (solution overview)
October 17, 2019 | Thomas F. Herbert, Billy McFall, Thomas Nadeau, Feng Pan
Up until now we have covered virtio-networking and its usage in VMs. We started with the original vhost-net/virtio-net architecture, moved on to the vhost-user/virito-pmd architecture and continued to vDPA (vHost Data Path Acceleration) where the virtio ring layout was pushed all the way into the NIC providing wiresspeed/wirelatency to VMs. Read the entire post on the Red Hat Blog.
Making high performance networking applications work on hybrid clouds (solution overview)
November 13, 2019 | Maxime Coquelin, Jason Wang, Ariel Adam
In the previous post we covered the details of a vDPA related proof-of-concept (PoC) showing how Containerized Network Functions (CNFs) could be accelerated using a combination of vDPA interfaces and DPDK libraries. This was accomplished by using the Multus CNI plugin adding vDPA as secondary interfaces to kubernetes containers. Read the entire post on the Red Hat Blog.
Virtio-networking: first series finale and plans for 2020 (series recap)
November 18, 2019 | Amnon Ilan, Michael S. Tsirkin, Jason Wang, Ariel Adam
Let's take a short recap of the Virtio-networking series that we've been running the past few months. We've covered a lot of ground! Looking at this series from a high level, let's revisit some of the topics we covered... Read the entire post on the Red Hat Blog.