Presentation for KVM Forum 2011 Alon Levy, Red Hat SPICE Roadmap The future of Open Remote Computing Presentation for KVM Forum 2011 Alon Levy, Red Hat
Overview Demo What is Spice Architecture Why Spice New stuff from last year Short term plan Long term plan Possible to use openoffice on a vm to do the presentation. Linux Demo Mouse seamless Copy paste (text + printscreen) Sound Video (wildlife) Explorer Device manager
What is Spice?
What is Spice? An Open Remote Computing / Virtual Desktop Interface protocol Free LGPL implementation Remote display through paravirtual graphics to the host server to the client Additional channels for: Sound & Inputs (keyboard and mice) CAC Smartcard USB Redirection Future extenstions
Advantages
Advantages Use para-virtual device => natural API, not screen scraping Minimize guest exits Client side rendering Multiple sockets Occlusions Display Tree Audio and Video
Advantages (cont) Copy-paste Sound USB Smartcard From boot (VGA emulation) Open Source
Changes from 2010 WAN support (wip) Copy paste First class Linux support GTK Widget Virt-manager and virt-viewer X driver improvements agent Smartcard channel Wan: Added lossy compression with fallback taking into accound dependencies C&P: Text and images Wan support: bandwidth detection Jpeg (tricky) More compression Guest feature reduction X driver improvements Reaching for XRANDR next
Roadmap http://www.spice-space.org/page/PlannedFeatures
Short term USB channel Replace current proprietary solution Isochronous + 2.0 Multiple concurrent client support
Mid Term Rootless windows / Desktop Integration Testing infrastructure – autotest Performance No rate limiting Better compression Surfaces introduced, but not used correctly Mac client (GTK)
Long Term Agent consolidation More clients (android, iOS) 3D Support (BoF) Video acceleration Guest OS level API's Gallium helps? Gstreamer Agent consolidation – matahari / virt-agent?
Long Term - Discuss-able Virtio rewrite? Flash passthrough Use glib? Virtio rewrite Support more architectures Less driver work (but graphics is different) Use glib Remove NIH event loops, gain debugging, easy scriptability, gtk backend?
Questions? Thanks for Listening!
Architecture Explain calmly and slowly. GDI was invented at ___ Rendering is client side. Errors: Driver above should be virtio-driver Color of Guest OS should be different then color of Spice server?
QXL graphics workflow Without a driver we fall back to VGA emulation (i.e. Everything works even without a driver, for example in the BIOS)