SPICE je komunikační protokol určený pro vzdálený přístup k virtuálním prostředím. Jeho hlavním úkolem je přenášet obraz, zvuk a vstupy (myš, klávesnice) mezi virtualizovaným hostem (běžícím na serveru) a klientským zařízením uživatele.
V rámci ekosystému KVM/QEMU představuje SPICE moderní a výkonnější alternativu k protokolu VNC.
SPICE byl od počátku vyvíjen s ohledem na potřeby virtualizace, což mu dává několik výhod:
spice-vdagent).Protokol SPICE se skládá ze tří hlavních částí:
Běží uvnitř emulátoru QEMU. Stará se o autentizaci klientů a kódování grafických dat.
Aplikace, kterou používá uživatel (např. Virt-Viewer nebo integrovaný prohlížeč ve Virt-Manageru). Klient existuje pro Linux, Windows i macOS.
Aby SPICE fungoval naplno, musí být uvnitř virtuálního stroje nainstalovány ovladače (v Linuxu balíček spice-vdagent, ve Windows balíček virtio-win). Tyto ovladače zajišťují hladký pohyb myši a synchronizaci rozlišení.
| Vlastnost | VNC | SPICE |
|---|---|---|
| Zaměření | Obecné sdílení plochy | Specializované pro virtualizaci |
| Přenos zvuku | Standardně ne | Integrovaný (vysoká kvalita) |
| USB Redirect | Ne | Ano |
| Výkon | Nižší (přenáší bitmapy) | Vyšší (inteligentní komprese) |
| Kurzor myši | Často se „zpožďuje“ | Plynulý (hardware cursor) |
SPICE je výchozím protokolem v profesionálních virtualizačních nástrojích jako:
Protokol SPICE podporuje šifrování celého přenosu pomocí TLS. To je nezbytné, pokud ke svým virtuálním strojům přistupujete přes veřejný internet, aby nemohlo dojít k odposlechu hesel nebo obsahu obrazovky.
— Související termíny: QEMU, KVM, Virt-Manager, Virtio, VNC.