Xen and the Art of Virtualization - Clarkson University

newshumansvilleData Management

Dec 16, 2012 (4 years and 7 months ago)


CS 654
Jim Owens
Response Paper
February 7, 2007
Xen and the Art of Virtualization
Here's the paper that apparently introduced Xen to the world after a great deal of work. As

stated in the concluding section, Xen was in beta when this paper was written, with a1.0 release to

follow soon after. Thus, the early sections are devoted to staking out Xen's place in the virtualization

universe. The issues involved in full virtualization are discussed rather briefly and then the authors

spend a fair amount of ink differentiating Xen from Denali, the
paravirtualization project. That so

little ink is spent on full virtualization in this introductory discussion starts to make sense later, when

Xen so clearly bests VMWare in the evaluation section. Denali is not a player here, since its application

is so narrowly defined.
I did find some interesting connections between Xen's design and that of some of the other

virtualization systems we've read about. Like Denali and other systems, Xen has as a goal to “separate

policy from mechanism wherever possible.” The implementation of this design goal results in a thin

hypervisor layer that leans on Domain0 for much implementation. This reminds me somewhat of

Denali's design. Simplicity in the hypervisor layer is bound to have beneficial outcomes in terms of

both security and efficiency of virtualization.
Interesting also is XenoLinux's use of a balloon driver, which seems to operate very much like

VMWare's device driver of the same name. Fewer details on the balloon driver's operation are given in

this paper, but its operation seems similar. There's also some discussion of the possibility of taking

advantage of paravirtualization to extend the driver's capabilities in ways that full virtualization

systems cannot. Again, not much detail is provided.
I found much of the detailed design discussion difficult to follow or place into context versus

other systems we have read about. At this stage, it would not be possible for me to reliably assess the

decisions made in Xen against those of other systems for their reasonableness or correctness.
The evaluation section appears to do a good job of putting virtualization systems through their

paces in comparison with a native Linux system in a variety of ways. But for the first test, using the

SPEC CPU suite, Xen leaves both VMWare and Usermode Linux in the dust; there's no comparison in

terms of performance. I was intrigued by the load that PostgreSQL puts on all the systems and

wondered whether this load is unique to PostgreSQL; I suspect not. I wondered whether it's really

necessary in general use to run separate database servers on the same hardware, as opposed to

managing multiple databases on the same server. I believe the hosting industry largely accomplishes

this without running individual servers for clients, including the provider I use. On the other hand, a

good case could made and it seems clear that running separate DB servers on different Xen guests

works better than attempting to do so on a standalone Linux system. Interestingly, it's no trouble at all

to run MySQL and PostgreSQL on the same system. I've done this for years.
Not much space is given to performance isolation, certainly not as much information is

provided as we saw in Clarkson's own paper. The results seem roughly the same, however. Both Xen

and VMware perform well in these tests, with VMware apparently doing so at an overall performance

cost. This result lines up well with the benchmark results reported earlier.
One additional point made in this paper made a big impression, and that's the language in end

user license agreements that apparently constrains testers from publishing the results of benchmark

testing. The most detailed discussion involved VMware Workstation, but I imagine the same would be

true of any commercial product. I wondered how these restrictions affect academic work in this area,

such as Clarkson's work on isolation testing. These kinds of restrictions would seem to seriously

hamper meaningful comparisons among virtualization technologies, leaving individual users to make

their decisions based on other considerations, such as cost, marketing, word of mouth, and other means.