From http:// OS .51cto.com/art/201201/311464.htm
Spice (simple protocol for independent computing environments) is one of the three major technical components of the Red Hat Enterprise Virtualization desktop edition. It has an adaptive remote submission protocol, it provides the same end user experience as physical desktops. It contains three components:
Spice driver: The component where the spice driver exists in each virtual desktop;
Spice device: component that spice devices exist in Red Hat Enterprise Virtualization hypervisor;
Spice client: a component of the spice client on a terminal device. It can be a thin client or a dedicated PC used to access each virtual desktop.
These three components work collaboratively to determine the most efficient location for processing graphics, so as to maximize user experience and reduce system load. If the client is strong enough, spice sends graphical commands to the client and processes the graphics in the client, significantly reducing the server load. On the other hand, if the client is not powerful enough, spice does not require much cost for graphics processing on the host from the CPU point of view. Figure-1 shows three spice components.
Figure-1 Three spice Components
Spice architecture 2.
Figure 2 spice Architecture
Spice works by creating several common interfaces or "channels" which are highly abstract and can be used on various platforms. There are six channels:
- Main Channel
- Display Channel
- Input Channel
- Mouse Control CHannel
- Playback Channel
- Record Channel
Each channel can be a separate data stream. The spice protocol was originally used by qumranet's main product, solidice, to provide the same user experience as the real PC. With spice, we can directly play HD videos and audios in virtual machines, this is incomparable to VNC. For example, table-1.
|
Spice |
VNC |
BiOS Screen Display |
Yes |
Yes |
Full Color support |
Yes |
Yes |
Change resolution |
Yes |
Yes |
Multiple monitors |
Multi-monitor support (up to 4 screens) |
Only one screen |
Image Transmission |
Image and graphics Transmission |
Image Transmission |
Video Playback support |
GPU acceleration support |
No |
Audio Transmission |
Bidirectional Speech Control |
No |
Mouse control |
All client servers can be controlled |
Server Control |
USB transmission |
USB can be transmitted over the network |
No |
Encryption |
Communication can be encrypted using SSL |
No |
Future features of SPICE:
- Uses DirectX and APIs to implement a virtual video card. Accelerate CAD and multimedia applications. Faster switching and direct rendering of game images reduce flickering.
- The video acceleration (dxva) video playback application supports dxva, such as Windows Media Player, which can reduce the CPU usage on the client.
- 3D acceleration runs faster on a virtual desktop, such as OpenGL and 3D applications,
- Windows aero support. Windows Vista and 7 cannot be used when using virtual desktops. You can dynamically change the resolution of a virtual desktop.
- Compatible with iPhone and iPad controlled by smartphones, such as iPhone and iPad.
- Clipboard sharing you can share the clipboard with the virtual desktop environment, and data can be used for seamless connection.
- Network printer sharing: the printer is accessible from the network to improve availability.