1) The document investigates virtual network performance on the Xen platform and examines how CPU allocation impacts forwarding rates of virtual routers.
2) Experiments show that assigning a single CPU core to Domain 0 provides the best forwarding performance, while sharing cores degrades performance.
3) The credit scheduler's "cap" parameter can be used to control each virtual router's packet forwarding rate by adjusting the percentage of CPU resources allocated. Adjusting caps allows guaranteeing different performance levels for each virtual router.
1) The document investigates virtual network performance on the Xen platform and examines how CPU allocation impacts forwarding rates of virtual routers.
2) Experiments show that assigning a single CPU core to Domain 0 provides the best forwarding performance, while sharing cores degrades performance.
3) The credit scheduler's "cap" parameter can be used to control each virtual router's packet forwarding rate by adjusting the percentage of CPU resources allocated. Adjusting caps allows guaranteeing different performance levels for each virtual router.
1) The document investigates virtual network performance on the Xen platform and examines how CPU allocation impacts forwarding rates of virtual routers.
2) Experiments show that assigning a single CPU core to Domain 0 provides the best forwarding performance, while sharing cores degrades performance.
3) The credit scheduler's "cap" parameter can be used to control each virtual router's packet forwarding rate by adjusting the percentage of CPU resources allocated. Adjusting caps allows guaranteeing different performance levels for each virtual router.
1) The document investigates virtual network performance on the Xen platform and examines how CPU allocation impacts forwarding rates of virtual routers.
2) Experiments show that assigning a single CPU core to Domain 0 provides the best forwarding performance, while sharing cores degrades performance.
3) The credit scheduler's "cap" parameter can be used to control each virtual router's packet forwarding rate by adjusting the percentage of CPU resources allocated. Adjusting caps allows guaranteeing different performance levels for each virtual router.
Copyright:
Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online from Scribd
Download as pdf or txt
You are on page 1of 1
1
CPU Allocation on Xen Virtual Networks
Rodrigo S. Couto, Hugo E. T. Carvalho, Lyno Henrique G. Ferraz, Miguel Elias M. Campista, Luı́s Henrique M. K. Costa and Otto Carlos M. B. Duarte Grupo de Teleinformática e Automação - PEE/COPPE - DEL/POLI Universidade Federal do Rio de Janeiro - Rio de Janeiro, Brazil Email:{souza,hugo,lyno,miguel,luish,otto}@gta.ufrj.br Abstract—In this work we investigate virtual network per- (TRs) passing through a traffic forwarder (TF). All machines formance using Xen. We perform experiments using scheduling run Debian Linux and TF runs Xen 3.4.2 system. parameters and static CPU allocation. Results indicate that the forwarding packet rate of each virtual router can be controlled A. Domain 0 CPU cores by adjusting CPU scheduling parameters. All packets destined to virtual routers must pass through I. I NTRODUCTION Domain 0. Thus, we need first to evaluate the performance The growing need to develop pluralist architectures for the of Domain 0 adjusting the number of CPU cores allocated future Internet leads to the use of virtual routers in platforms to it. In this experiment, we send packets from one of the such as Xen [1]. Xen implements a software layer called VMM TGs to one of the TRs at a fixed rate and vary the number (Virtual Machine Monitor) which controls how virtual ma- of CPU cores allocated to Domain 0. We run this test for chines, called Domains, access hardware resources. Domain 0 up to four virtual machines forwarding packets and sharing is a special Domain that implements an interface between the same TF physical network interfaces. On the one hand, abstract devices within virtual machines and physical devices. the performance of packet forwarding is severely impacted In the case of networking, packets destined to unprivileged when all Domains share one CPU core because of the high Domains must pass through Domain 0 before reaching virtual contention for CPU resources. On the other hand, the best interfaces. This communication between Domain 0 and other performance is achieved when Domain 0 has one exclusive Domain imposes limitations to network tasks due to high CPU core. Surprisingly, assigning more cores to Domain 0 results consumption. Moreover, in Xen environment the Domains in performance degradation in our scenario. This result shows share physical resources, including CPU. In this paper, we that the tasks that Domain 0 executes to forward packets aim at analyzing the impact of CPU resource allocation on through virtual machines are single-threaded and that these virtual routers performance. tasks are not well suitable for multi-core environments. The behavior observed in this test is independent of the number of II. X EN C REDIT S CHEDULER virtual machines concurrently forwarding packets. For each Domain running on a Xen environment is assigned B. Cap Adjustment a number of Virtual CPUs (VCPUs). These VCPUs correspond Credit Scheduler parameters can be used to offer different to the CPUs that the running processes in a Domain can see. service levels to virtual routers. In our case, we use the cap Xen implements the Credit Scheduler to manage CPU time to show how packet rate can be adjusted when the system given to each Domain. This scheduler dynamically allocates administrator has control of CPU resource sharing among a physical CPU core to each VCPU for a certain amount of virtual routers. The experiment consists in sending packets time. In Xen platform the administrator can also manually from a TG to TR at a fixed rate through each virtual router allocate a CPU core to a VCPU of a certain Domain but cannot in TF. In this experiment, TF has two virtual routers with guarantee if another VCPUs will share the same core. The each one having its own network interface pair and sharing basic idea of Xen Credit Scheduler is to assign credits to each the same CPU core. Thus, we ensure that the main resource Domain based on two parameters: weight and cap. Each time a that the virtual routers are sharing is the CPU. Domain 0 in Domain executes, i.e. each of its VCPUs, it consumes credits. this case has its own CPU core. Based on credit accounting, the scheduler determines which In this experiment we assign a fixed cap of 100 to a VCPU can run. The weight determines the share of CPU time virtual machine (VM2) and vary the cap of the other virtual each Domain can get and doesn’t represent an upper-limit, i.e machine (VM1). Results show that the performance of VM1 Domains can use more than its share when CPU is idle. The decreases when its cap is reduced whereas VM2 performance cap, in turn, is an absolute value that represents a percentage increases. Thus, we show that we can assure certain perfor- of CPU a Domain can use, i.e cap=50 is half CPU. The cap mance level to each virtual router, merely adjusting the cap. gives more control to the system administrator about the CPU Our future work aims at building a mechanism to dynamically usage by the Domains. adjust caps depending on each Domain performance level. III. P ERFORMANCE E VALUATION R EFERENCES We aim at analyzing how Domain 0 CPU allocation impacts [1] P. Barham, B. Dragovic, K. Fraser, S. Hand, , T. Harris, A. Ho, R. Neuge- forwarding performance and how can a system administrator bauer, I. Pratt, and A. Warfield, “Xen and the art of virtualization,” in manage CPU resources to guarantee a certain throughput to ACM SOSP, Oct. 2003, pp. 164–177. a virtual router. To accomplish this, we conduct two experi- ACKNOWLEDGMENT ments. These experiments were carried out in a testbed with This work was supported by CNPq, CAPES, FINEP, FUNTTEL, and traffic generators (TGs) sending packets to traffic receivers FAPERJ.