远程桌面协议 SPICE 介绍.pdf
文本预览下载声明
Spice for Newbies
Draft 2
Copyright © 2009 Red Hat, Inc.
Licensed under a Creative Commons Attribution-Share Alike 3.0
United States License (see
/licenses/by-sa/3.0/us/legalcode).
Table of Contents
1 Introduction3
2 Basic Architecture3
2.1 Graphic Commands Flow3
2.2 Agent Commands Flow4
2.3 Spice Client5
2.3.1 Client Basic Structure5
2.3.2 Client Classes5
Channels5
Screens and Windows6
2.4 Spice Server6
2.4.1 Server Structure7
Red Server (reds.c)7
Graphics subsystem8
2.5 Spice Protocol9
2.6 QXL Device9
2.7 QXL Guest Drivers9
2.8 Spice Agent10
2.9 VDIPort Device and Driver10
3 Features10
3.1 Graphic Commands10
3.2 Hardware Acceleration10
3.3 Image Compression10
3.4 Video Compression11
3.5 Caching11
3.6 Mouse Modes11
3.7 Multiple Monitors12
3.8 2-way Audio and Lip-sync12
3.9 Hardware Cursor12
3.10 Live Migration12
4 References12
1 Introduction
Spice is an open remote computing solution, providing client access to remote machine display and
devices (e.g., keyboard, mouse, audio). Spice achieves a user experience similar to an interaction
with a local machine, while trying to offload most of the intensive CPU and GPU tasks to the client.
Spice is suitable for both LAN and WAN usage, without compromising on the user experience.
2 Basic Architecture
Spice basic building blocks are the Spice protocol, Spice server and Spice client. Spice-related
components include the QXL device and guest QXL driver.
2.1 Graphic Commands Flow
Guest OS QEMU Client OS
User Application
显示全部