Successfully reported this slideshow.
Your SlideShare is downloading. ×

LinuxCon Japan 13 : 10 years of Xen and Beyond

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 54 Ad
Advertisement

More Related Content

Slideshows for you (20)

Advertisement

Similar to LinuxCon Japan 13 : 10 years of Xen and Beyond (20)

More from The Linux Foundation (20)

Advertisement

Recently uploaded (20)

LinuxCon Japan 13 : 10 years of Xen and Beyond

  1. 1. Lars Kurth Xen Project Community Manager lars.kurth@xen.org 10 Years of Xen and beyond … @lars_kurth FREENODE: lars_kurth
  2. 2. Xen.org becomes XenProject.org Xen.org (single vendor Open Source) XenProject.org (truly vendor neutral Open Source)
  3. 3. Xen contributor community is diversifying 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% 2010 2011 2012 Citrix UPC SUSE Amazon University AMD GridCentric Individual NSA Intel Fujitsu iWeb Misc Oracle Spectralogic University of British Columbia • The number of “significant” active vendors is increasing • New feature development driving new participation • Linux Foundation Collaborative Project was next logical step
  4. 4. Xen : The Gears of the Cloud • Large user base more than 10 million individuals users • Powers the largest clouds in production • Not just for Servers
  5. 5. • Teams aka sub-projects – Hypervisor – XAPI – ARM Hypervisor (for Servers as well as Mobile Devices) – Mirage OS (a Xen Library OS) • Governance : mixture between Linux Kernel and Apache XenProject.org Overview
  6. 6. Hypervisor Architecture
  7. 7. Hypervisor Architectures Type 1: Bare metal Hypervisor A pure Hypervisor that runs directly on the hardware and hosts Guest OS’s. Provides partition isolation + reliability, higher security Host HW Memory CPUsI/O HypervisorScheduler MMUDevice Drivers/Models VMn VM1 VM0 Guest OS and Apps
  8. 8. Hypervisor Architectures Type 1: Bare metal Hypervisor A pure Hypervisor that runs directly on the hardware and hosts Guest OS’s. Type 2: OS ‘Hosted’ A Hypervisor that runs within a Host OS and hosts Guest OS’s inside of it, using the host OS services to provide the virtual environment. Provides partition isolation + reliability, higher security Low cost, no additional drivers Ease of use & installation Host HW Memory CPUsI/O Host HW Memory CPUsI/O HypervisorScheduler MMUDevice Drivers/Models VMn VM1 VM0 Guest OS and Apps Host OS Device Drivers Ring-0 VM Monitor “Kernel “ VMn VM1 VM0 Guest OS and Apps User Apps User-level VMM Device Models
  9. 9. Xen: Type 1 with a Twist Type 1: Bare metal Hypervisor Host HW Memory CPUsI/O HypervisorScheduler MMUDevice Drivers/Models VMn VM1 VM0 Guest OS and Apps
  10. 10. Xen: Type 1 with a Twist Type 1: Bare metal Hypervisor Host HW Memory CPUsI/O HypervisorScheduler MMUDevice Drivers/Models VMn VM1 VM0 Guest OS and Apps Host HW Memory CPUsI/O Hypervisor VMn VM1 VM0 Guest OS and Apps Xen Architecture Scheduler MMU
  11. 11. Xen: Type 1 with a Twist Type 1: Bare metal Hypervisor Host HW Memory CPUsI/O HypervisorScheduler MMUDevice Drivers/Models VMn VM1 VM0 Guest OS and Apps Host HW Memory CPUsI/O Hypervisor VMn VM1 VM0 Guest OS and Apps Xen Architecture Scheduler MMU Control domain (dom0) Drivers Device Models Linux & BSD
  12. 12. Xen Project and Linux • Xen Hypervisor is not in the Linux kernel • BUT: everything Xen and Xen Guests need to run is! – Linux Kernel 3.0+ is Xen-enabled • Xen packages are in all Linux distros (except RHEL6) – Install Dom0 Linux distro – Install Xen package(s) or meta package – Reboot – Config stuff: set up disks, peripherals, etc. More info: wiki.xen.org/wiki/Category:Host_Install
  13. 13. Basic Xen Concepts 13 Control domain (dom0) Host HW VMn VM1 VM0 Guest OS and Apps Memory CPUsI/O Console • Interface to the outside world Control Domain aka Dom0 • Dom0 kernel with drivers • Xen Management Toolstack Guest Domains • Your apps Driver/Stub/Service Domain(s) • A “driver, device model or control service in a box” • De-privileged and isolated • Lifetime: start, stop, kill Dom0 Kernel HypervisorScheduler MMU XSM Trusted Computing Base
  14. 14. Basic Xen Concepts 14 Control domain (dom0) Host HW VMn VM1 VM0 Guest OS and Apps Console Memory CPUsI/O Dom0 Kernel Toolstack HypervisorScheduler MMU XSM Console • Interface to the outside world Control Domain aka Dom0 • Dom0 kernel with drivers • Xen Management Toolstack Guest Domains • Your apps Driver/Stub/Service Domain(s) • A “driver, device model or control service in a box” • De-privileged and isolated • Lifetime: start, stop, kill Trusted Computing Base
  15. 15. Basic Xen Concepts 15 Control domain (dom0) Host HW VMn VM1 VM0 Guest OS and Apps Console Memory CPUsI/O One or more driver, stub or service domains Dom0 Kernel Toolstack HypervisorScheduler MMU XSM Console • Interface to the outside world Control Domain aka Dom0 • Dom0 kernel with drivers • Xen Management Toolstack Guest Domains • Your apps Driver/Stub/Service Domain(s) • A “driver, device model or control service in a box” • De-privileged and isolated • Lifetime: start, stop, kill Trusted Computing Base
  16. 16. Xen : Types of Virtualization
  17. 17. 17 Xen Hypervisor Control domain (dom0) Host HW Guest VMn Apps Memory CPUsI/O Technology: • Paravirtualization Linux PV guests have limitations: • limited to a subset of set of virtual HW Advantages • Fast • Works on any system (even without virt extensions) HW Drivers PV Back Ends PV Front Ends Guest OSDom0 Kernel PV Domains
  18. 18. 18 Xen Hypervisor Control domain (dom0) Host HW Guest VMn Apps Memory CPUsI/O Technology: • Paravirtualization Linux PV guests have limitations: • limited to a subset of virtual HW Advantages • Fast • Works on any system (even without virt extensions) Driver Domains • Security • Isolation • Reliability and Robustness HW Drivers PV Back Ends PV Front Ends Driver Domain e.g. • Disk • Network HW Driver PV Back End Dom0 Kernel* *) Can be MiniOS Guest OSDom0 Kernel PV Domains & Driver Domains
  19. 19. 19 Xen Hypervisor Dom0 Host HW Guest VMn Technology: • Shows emulation using QEMU/Device Model (SW Virtualization) • In other situation HW can be used Disadvantages • Emulation slower than PV (mainly I/O devices) Advantages • No kernel support needed Device Model IO Emulation IO Event VMEXITDom0 Kernel HVM Memory CPUsI/O
  20. 20. 20 Xen Hypervisor Dom0 Host HW Guest VMn Technology: • Shows emulation using QEMU/Device Model (SW Virtualization) • In other situation HW can be used Disadvantages • Emulation slower than PV (mainly I/O devices) Advantages • No kernel support needed Stub Domains • Security • Isolation • Reliability and Robustness Device Model IO Emulation IO Event VMEXIT Stubdomn Device Model Mini OS Guest VMn IO Emulation IO Event VMEXITDom0 Kernel HVM & Stub Domains Memory CPUsI/O
  21. 21. The Virtualization Spectrum Fully Virtualized (FV) VS VS VS VH FV with PV for disk & network P VS VS VH PVHVM P P VS VH PVH P P P VH Fully Paravirtualized (PV) P P P P VH Virtualized (HW) P Paravirtualized VS Virtualized (SW) HVM mode/domain PV mode/domain Xen 4.4
  22. 22. The Virtualization Spectrum Fully Virtualized (FV) VS VS VS VH FV with PV for disk & network P VS VS VH PVHVM P P VS VH PVH P P P VH Fully Paravirtualized (PV) P P P P Scope for improvement Poor performance Optimal performance HVM mode/domain Xen 4.4 PV mode/domain
  23. 23. The Virtualization Spectrum Fully Virtualized (FV) VS VS VS VH FV with PV for disk & network P VS VS VH PVHVM P P VS VH PVH P P P VH Fully Paravirtualized (PV) P P P P Scope for improvement Poor performance Optimal performance HVM mode/domain Xen 4.4 PV mode/domain Important: Xen automatically picks the best option based on HW & OS capabilities and available drivers. As a Xen user I chose a HVM or PV domain.
  24. 24. Xen Variants
  25. 25. 25 Xen Variants for Server & Cloud Xen HypervisorHypervisor
  26. 26. Single Host Basic Functions Multiple Hosts Additional Functionality Xen Variants for Server & Cloud Increased level of functionality and integration with other components Default / XL (XM)Toolstack / Console Libvirt / VIRSH XAPI / XE Hypervisor Single Host Additional Functionality Xen Hypervisor
  27. 27. 27 Xen Variants for Server & Cloud Default / XL (XM)Toolstack / Console Libvirt / VIRSH Project XAPI / XE Xen Hypervisor Cloud Orchestration
  28. 28. 28 Xen Variants for Server & Cloud Default / XL (XM)Toolstack / Console Libvirt / VIRSH Products Oracle VM Huawei UVP Citrix XenServer Project XAPI / XE Xen Hypervisor
  29. 29. 29 Xen Variants for Server & Cloud Default / XL (XM)Toolstack / Console Libvirt / VIRSH Used by … Project XAPI / XE Xen Hypervisor
  30. 30. XAPI, XCP and XCP-XAPI
  31. 31. XAPI : What do I get? Multiple Hosts Additional Functionality XAPI / XE Xen Hypervisor • VM lifecycle: live snapshots, checkpoint, migration • Storage XenMotion: Migrate VMs between hosts or pools without shared storage (while the VM is running) • Resource pools: flexible storage and networking • Event tracking: progress, notification • Upgrade and patching capabilities • Real-time performance monitoring and alerting • Templates for Windows and Linux guests • Open vSwitch support built-in (default) More info: wiki.xen.org/wiki/XCP_Release_Features
  32. 32. XAPI : two variants! Multiple Hosts Additional Functionality XAPI / XE Xen Hypervisor XCP ISO (at v1.6) Xen 4.1.3 + XAPI CentOS 5.3 Kernel (v2.6.32.43) OVS 1.4.2 XCP-XAPI packages Debian Wheezy Ubuntu 12.04 LTS CentOS 6.4 soon
  33. 33. Challenges for FOSS hypervisors
  34. 34. System characteristics cloud users care about: “Robustness, Performance & Security” Results XCP User Survey 2013 – users quoted these as most important attributes
  35. 35. Split Control Domain into Driver, Stub and Service Domains – See: ”Breaking up is hard to do” @ Xen Papers – See: “Domain 0 Disaggregation for XCP and XenServer” Used today by Qubes OS and Citrix XenClient XT Prototypes for XAPI Disaggregation See qubes-os.org Different windows run in different VMs
  36. 36. More Security Increased serviceability and flexibility Better Robustness Better Performance Better Scalability Benefits of Disaggregation Ability to safely restart parts of the system (e.g. just 275ms outage from failed Ethernet driver)
  37. 37. Next: XAPI Architecture Diagram Before and After Disaggregation
  38. 38. CPUCPU RAM RAMNIC (or SR- IOV VF) NIC (or SR- IOV VF) NIC (or SR- IOV VF) NIC (or SR- IOV VF) RAID Xen Dom0Network drivers NFS/ iSCSI drivers Qemu xapi Local storage drivers NFS/ iSCSI drivers Network drivers Qemu eth eth eth eth scsi User VM User VM NB gntdev NB NF BF NF BF qemu qemu xapi vswitch networkd tapdisk blktap3 storaged syslogd vswitch networkd tapdisk blktap3 storaged tapdisk blktap3 storaged gntdev gntdev Dom0 xenopsd libxl healthd Domain manager Dom0 . . . . Xen xapi
  39. 39. CPUCPU RAM RAMNIC (or SR- IOV VF) NIC (or SR- IOV VF) NIC (or SR- IOV VF) NIC (or SR- IOV VF) RAID Dom0 Network driver domain NFS/ iSCSI driver domain Qemu domain xapi domain Logging domain Local storage driver domain NFS/ iSCSI driver domain Network driver domain User VM User VM NB gntdev NB NF BF NF BF dbus over v4v qemu xapi xenopsd libxl healthd Domain manager vswitch networkd tapdisk blktap3 storaged syslogd vswitch networkd tapdisk blktap3 storaged tapdisk blktap3 storaged gntdev gntdev eth eth eth eth scsi Xen Xen D o m 0 dbus over v4v . . .
  40. 40. 40 XSM is Xen equivalent of LSM FLASK is Xen equivalent of SELinux Developed, maintained and contributed to Xen by NSA Compatible with SELinux (tools, architecture) XSM object classes maps onto Xen features Xen Security Modules (XSM) & FLASK
  41. 41. CPUCPU RAM RAMNIC (or SR- IOV VF) NIC (or SR- IOV VF) NIC (or SR- IOV VF) NIC (or SR- IOV VF) RAID Xen Dom0 Network driver domain NFS/ iSCSI driver domain Qemu domain xapi domain Logging domain Local storage driver domain NFS/ iSCSI driver domain Network driver domain eth eth eth eth scsi User VM User VM NB gntdev NB NF BF NF BF qemu xapi xenopsd libxl healthd Domain manager vswitch networkd tapdisk blktap3 storaged syslogd vswitch networkd tapdisk blktap3 storaged tapdisk blktap3 storaged gntdev gntdev FLASK policy restricting access D o m 0 . . . dbus over v4v dbus over v4v Xen
  42. 42. 42 Xen Security Advantages • Even without Advanced Security Features – Well-defined trusted computing base (much smaller than on type-2 HV) – Minimal services in hypervisor layer • Advanced Security Features – Xen has many Advanced Security Features – Most are not switched on by default – Although most are simple to use, some seen complicated More info: http://www.slideshare.net/xen_com_mgr/ a-brief-tutorial-on-xens-advanced-security-features
  43. 43. ARM Hypervisor
  44. 44. ARM Servers Coming to Market 4GB RAM, 4 cores per node 3 x 6 x 4 x 4 = 288 cores per 4 RU Xen for ARM Servers : Why ? Single node virtualization capability Manageability
  45. 45. Fully functional for ARM v7 & v8 ARM v7: Versatile Express, Arndale & Samsung Chromebook ARM v8: Fast Model Xen 4.3 for ARM Servers
  46. 46. ARM SOC Xen + ARM = a perfect Match ARM Architecture Features for Virtualization Hypervisor mode : EL2 Kernel mode : EL1 User mode : EL0 GIC v2 GT 2 stage MMU I/O Device Tree describes … Hypercall Interface HVC
  47. 47. ARM SOC ARM Architecture Features for Virtualization EL2 EL1 EL0 GIC v2 GT 2 stage MMU I/O Device Tree describes … HVC Xen + ARM = a perfect Match Xen Hypervisor Dom0 only Any Xen Guest VM (including Dom0) Kernel User Space I/O PV back PV frontI/O HVC
  48. 48. One mode to rule them all x86: PVHVM P P VS VH x86: PV P P P P ARM v7 & v8 P VH VH VH Scope for improvement Optimal performance HVM mode/domain PV mode/domain
  49. 49. What’s Next?
  50. 50. • Release candidates & Xen Test Days (June 5th) • Xen ARM for Servers • Extend scope of Xen Security Modules • Default to QEMU upstream • Updated and improved libvirt drivers for Xen • Lots of other stuff: – scalability, performance, better NUMA support, … Xen 4.3 Release (June 2013) More info: http://lists.xen.org/archives/html/xen-devel/2013-05/msg01134.html
  51. 51. “For about a year members of the Xen Project, the CentOS community and large Xen Users have worked on bringing Xen and XAPI to CentOS 6” Driven by demand from the community : • Can run Xen on CentOS 6 today, but non-trivial • We wanted “YUM INSTALL XEN” • Mostly a packaging problem • Teams from CentOS, Citrix, Go Daddy & Rackspace • QA and usability sanity checks Xen 4 + XAPI in CentOS 6 (June 2013)
  52. 52. “Growth is leading to more structure & more collaboration & more openness!” • Establishing a shared and open test infrastructure – Goal: Increase development velocity and quality • Improved usability and better distro-integration – Xen + XAPI in CentOS 6.4 • More focus on downstreams – OpenStack and Xen Orchestra – Better libvirt and virt-manager integration • Changing the XAPI / XCP release model • Xen on ARM and collaboration with Linaro The Xen Community is Changing
  53. 53. Online : xenproject.org > User & Help menus • Mailing Lists and IRC • Q&A System • Find me and I can get you hooked up! Events : xenproject.org/about/events.html • Test Days (IRC at #xentest) … next one June 5th • Document Days (IRC at #xendocs) … the next one is June 24th • User (Sept 18, New Orleans) and Developer Summits (Oct 24-25, Edinburgh) • Hackathons – see http://blog.xen.org/index.php/2013/05/28/ event-report-xen-hackathon-2013/ Getting Started with Xen Projects
  54. 54. Thank You! Slides available under CC-BY-SA 3.0 From www.slideshare.net/xen_com_mgr @lars_kurth FREENODE: lars_kurth • News: blog.xenproject.org • Web: xenproject.org – Help for IRC, Lists, … – Stackoverflow like Q&A • Wiki: wiki.xenproject.org • Presentations: slideshare.net/xen_com_mgr • Videos: vimeo.com/channels/xen

Editor's Notes

  • Key points not on the slides:Governance: same roles, same license, DCO, …Vendors: the link shows a breakdown of contributions to Xen 4.2
  • Key points not on the slides:Governance: same roles, same license, DCO, …Vendors: the link shows a breakdown of contributions to Xen 4.2
  • Color code: green + bright green = trusted computing baseType 1 hypervisor: example ESXSimple architecture; Hypervisor replaces the kernel entirelyNo need to provide rich “process” semantics, like “user”, filesystems, etc.BUT: Device drivers and Device Models need to be rewritten for each hardware platformThis meansisolation and higher security by designis traded off against maintainability and re-use of driversType 2 is hosted: example KVM- The hypervisor is just a driver that works with user-level monitor and the host OS kernelHW access is intercepted by the ring 0- VM monitor passed to the User level Virtual Monitor, which passes requests to the kernelThis meansRe-use of device drivers and host OS kernel infrastructureis traded off against security and a large trusted computing base
  • Color code: green + bright green = trusted computing baseType 1 hypervisor: example ESXSimple architecture; Hypervisor replaces the kernel entirelyNo need to provide rich “process” semantics, like “user”, filesystems, etc.BUT: Device drivers and Device Models need to be rewritten for each hardware platformThis meansisolation and higher security by designis traded off against maintainability and re-use of driversType 2 is hosted: example KVM- The hypervisor is just a driver that works with user-level monitor and the host OS kernelHW access is intercepted by the ring 0- VM monitor passed to the User level Virtual Monitor, which passes requests to the kernelThis meansRe-use of device drivers and host OS kernel infrastructureis traded off against security and a large trusted computing base
  • Thinner hypervisorOnly Contains: Scheduler and Memory Management
  • Thinner hypervisorOnly Contains: Scheduler and Memory Management
  • Domain 0:Special Virtual Machine that co-operates with the HypervisorContains a Xen enabled Kernel: Linux 3.x or NetBSDUses Device Drivers and Device Models (QEMU)For Linux: Using Linux PV OPSExposes support for various virtualization modes: PV, PV on HVM and PVH modesSharing components with KVM (e.g. QEMU based Device Drivers)
  • As we talked a little bit about Xen and Linux already it is worth point out a few things to Xen and LinuxSome people argue that KVM is better than Xen, because KVM is in the kernelThis argument is bogusSoftware should be compared on the basis of features and system characteristicsNOT on where the source code livesSo, although Xen is NOT in the Linux KernelBUT from linux 3.0 onwards EVERYTHING that Xen and Xen Guests need to run isAnd all modern Linux distros (with the exception of RHEL6) contain Xen packagesTHIS MEANS:The user experience for Linux users for Xen and KVM is VERY similarYou choose your favourite distro and install (that is true for Xen and KVM)You download and install the Xen packages (KVM-QEMU package) via your package managerTHE only difference is that for Xen you reboot, after which Xen runs underneath your Dom 0Then you configure your systemThe point is: from a users perspective it doesn’t matter whether Xen is in Linux or not, as long as distros contain Xen packages
  • This is the architecture that we have explained beforeLet’s add a few more things!
  • Added theToolstackExposes an RPC type interface such that the system can be controlled from the outside worldXen has a few options for toolstacks (see later)Added the ConsoleA CLIA UIOr an interface to a cloud orchestration stack Controls the system (for operations such as starting, stopping VMs, etc.)
  • A unique feature of Xen is called disaggregationThis means:I can take a Device DriverA Device ModelA service (e.g. the toolstack)That normally runs in Domain 0 and run it in a separate VM.That VM is de-priviliged (it is not part of the trusted computing base)It can be restarted (if needed) without affecting the rest of the systemThis is something unique to Xen’s architecture. More later.
  • Remember the concept of disaggregation I mentioned earlier?With Driver Domains, I can take an individual driver (e.g. disk or network) and run it in its own domain (aka VM)In terms of how PV works: it is exactly the same as with drivers running in Dom0, only that Xen knows that the driver runs in its own driver domain
  • Device Model emulated in QEMUModels for newer devices are much fasterBut for IO operations PV is even faster
  • Remember the concept of disaggregation I mentioned earlier and Driver Domains?Stub Domains: Run an individual device model (QEMU instance) in its own domain Again, these work identical to Device Models within a Dom0.For scalability there is one stub domain per VM
  • On Xen.org, you will come by two main projects:The Xen HypervisorThe Xen Cloud PlatformAt a very high level, we will you show you the various options to build a system.
  • Let’s first look at choices of Xen Management Toolstacks:The Default with XL as CLI console Single Host, with basic functionalityLibvirt with VIRSH as CLI console (can also use virt-manager)Multiple Hosts, more functionalityXAPI (or Xen API) and XE as CLI (a number of UI options available)Multiple Hosts, even more functionality than LibvirtTypically when a Xen system contains XAPI, we call it Xen Cloud Platform
  • Lots of services use various of these combinationsWe picked out a few for these different configurationsAWS uses Xen with DefaultSuse Cloud uses Xen with LIBVIRTRackspace Cloud Servers uses XAPIThere are loads more large users: check out en.org/community/ecosystem.html If you want to know more about AWS and Rackspace, check out xen.org/community/presentations.html We also have some user case studies
  • A number of different commercial products use these combinations:Oracle VM based on Xen, the default stack with additionsHuawei UVP, which uses Xen + LibvirtCitrix XenServer which uses Xen + XAPI
  • Lots of services use various of these combinationsWe picked out a few for these different configurationsAWS uses Xen with DefaultSuse Cloud uses Xen with LIBVIRTRackspace Cloud Servers uses XAPIThere are loads more large users: check out en.org/community/ecosystem.html If you want to know more about AWS and Rackspace, check out xen.org/community/presentations.html We also have some user case studies
  • This is information from our own XCP survey (Q4 2012).Basically users were asked to rate system attributes according to importance on a scale of 1-5 90% of all users that use XCP for the cloud ratedRobustness, Performance, Scalability and Security at a 5Many other system attributes ranged from 3-4
  • We introduced disaggregation earlier under architectural concepts. To remind you, in a nutshell it means distributing system components running in Dom0 into separate VM’s.If you want to know more about the concept: There are the two papers listed above.The first takes disaggregation to the extreme!Disaggregation is in use by OSS and commercial products for Desktop Was originally developed for NSA:Every person with a specific security clearance has to have one terminal (desktop computer) per clearance levelTypically every employee had several TerminalsProducts using disaggregation are deemed secure enough by the NSA (and similar orgs) to Prototypes for server and cloud products
  • Good for SecurityReduces Trusted Computing BaseBetter defined interfaces (better for security audits)Can kill-start domains on a timer to wipe security risksIt is also good for robustness:You can basically restart parts of the system without affecting the rest of the system Latency for this is low (see the graph – in the order of 100 of ms)Incidentally this is also good for serviceability: in other words I can upgrade parts of my system while leaving others untouched and runningGood for performance and scalability:Removes Dom 0 as a bottleneck when many VM’s are runningPlaces more emphasis on the Xen scheduler vs. the Dom0 scheduler, which tends to lead to better performanceYou can chose better performing OS+driver combinations (e.g. BSD)
  • This shows a diagram of the type of services running in a normal XCP instance.The picture shows:1) Two Hosts2) User VMs per Host (on top instead of on the side due as in due to space constraints on the slide) 3) Dom0 with Xen per host (green boxes – also Trusted Computing base)4) Services and processes running within each Dom0Note: that inter-host communication is handled by the XAPI component Also note: this is an approximation as there is not enough space to cram everything in! There is stuff missing!NOW LETS LOOK WHAT DISAGGREGATION DOES!
  • This shows a diagram of the type of services running in the XCP disaggregation prototype.What is different:Key services are running in their own domainsEach host has a fast inter-domain communication mechanism called DBUS that allows direct VM to VM communicationThe Trusted Computing base has become a lot smaller (look at the green)
  • Now looked at disaggregation:It is worth to remind ourselves of existing Xen Security advantages: more modular, smaller TCBThere are also additional features, the most noteworthy is XSMDeveloped and maintained by the NSA (who contribute 3-4% of code per year to Xen)Follows the same architecture as SELinux (including compatibility with policy checking and dev tools for SELinux)Can be used together with SELinuxThe main difference is that XSM exposes objects that map to Xen featuresAlthough XSM alone is useful, it becomes REALLY INTERESTING when used with disaggregation!See WHY IN THE NEXT SLIDE!
  • The RED BOX, shows how we can use XSM and SELinux to secure our system.Per domain, I can restrict what can be started in a domainI can restrict what hypervisor interfaces (PV or hypercalls) a class of domain can access. In this example, I can ensure that only Linux and Xen functionality that is necessary to operate the Network Driver Domain can be accessed or launched
  • Now looked at disaggregation:It is worth to remind ourselves of existing Xen Security advantages: more modular, smaller TCBThere are also additional features, the most noteworthy is XSMDeveloped and maintained by the NSA (who contribute 3-4% of code per year to Xen)Follows the same architecture as SELinux (including compatibility with policy checking and dev tools for SELinux)Can be used together with SELinuxThe main difference is that XSM exposes objects that map to Xen featuresAlthough XSM alone is useful, it becomes REALLY INTERESTING when used with disaggregation!See WHY IN THE NEXT SLIDE!
  • A unique feature of Xen is called disaggregationThis means:I can take a Device DriverA Device ModelA service (e.g. the toolstack)That normally runs in Domain 0 and run it in a separate VM.That VM is de-priviliged (it is not part of the trusted computing base)It can be restarted (if needed) without affecting the rest of the systemThis is something unique to Xen’s architecture. More later.
  • A unique feature of Xen is called disaggregationThis means:I can take a Device DriverA Device ModelA service (e.g. the toolstack)That normally runs in Domain 0 and run it in a separate VM.That VM is de-priviliged (it is not part of the trusted computing base)It can be restarted (if needed) without affecting the rest of the systemThis is something unique to Xen’s architecture. More later.

×