Релиз протокола для взаимодействия с удаленным рабочим столом SPICE 0.12.0

Доступен стабильный релиз системы SPICE 0.12.0, позволяющей организовать удаленную работу с рабочим столом, функционирующим в виртуальном окружении под управлением QEMU/KVM. В отличие от таких протоколов как VNC (Virtual Network Computing), ICA (Citrix Independent Computing Architecture) и RDP (Microsoft Remote Desktop Protocol), в SPICE рендеринг содержимого экрана и обработка аудиопотоков производится на стороне клиента, а не на сервере, что, например, позволяет без лишней нагрузки на сервер просматривать видео или осуществлять VoIP звонки, делая для пользователя выполнение приложения на удаленном сервере максимально приближенным к локальному запуску программы.

Кроме того, SPICE дает возможность без лишней нагрузки на сервер организовать доступ к локальным аудио и USB устройствам, принтерам и другому оборудованию, находящемуся на стороне клиента. Другой особенностью SPICE является возможность прозрачной балансировки нагрузки, позволяющей распределять выполнение приложений по разным серверам, автоматически адаптируясь к возможностям графической подсистемы на стороне клиента и загруженности сетевого окружения. Производительности сервера с 16GB ОЗУ достаточно для одновременной работы 50 клиентов выполняющих типичные десктоп приложения, или 40 клиентов 20% из которых просматривают видео или прослушивают аудио. Изначально SPICE был разработан компанией Qumranet, но переведен в разряд свободных технологии и передан под покровительство проекта freedesktop.org, после поглощения Qumranet компанией Red Hat.

Из новшеств, добавленных в версии SPICE 0.12.0, можно отметить:

  • Поддержка управления конфигурацией монитора со стороны клиента
  • Поддержка сборки на платформах ARMv6+;
  • Поддержка бесшовной миграции окружений без потери транзитных сообщений (миграция пока не поддерживается при использовании проброса агентов, смарткарт и usb-устройств)
  • Поддержка трансляции вывода в композитном режиме, что позволяет значительно увеличить производительности гостевых систем на базе Linux;
  • Возможность передачи через один канал отображения произвольных разрешений экрана и вывода для нескольких мониторов;
  • Поддержка передачи информации об имени и UUID;
  • Поддержка платформы Solaris;
  • Улучшенная поддержка IPv6.

Базовые возможности SPICE:

  • Обработка и передача 2D графики;
  • Передача M-JPEG видеопотоков с эвристическим определением типа;
  • Поддержка различных алгоритмов сжатия изображений, включая QUIC, LZ и GLZ.
  • Обработка и передача команд управления курсором;
  • Кэширование изображений, палитр и курсоров;
  • Возможность live-миграции виртуального окружения с одного сервера на другой без прерывания работы;
  • Наличие QXL и VDI драйверов для Windows;
  • Поддержка многомониторных конфигураций;
  • Наличие клиентского ПО для Linux и Window, возможность легкого портирования на другие платформы;
  • Двунаправленная передача аудио, звуковые данные сжимаются с помощью технологии CELT;
  • Поддержка шифрования, с использованием OpenSSL;
  • Два режима управления мышью - на стороне клиента (более дружелюбный пользователю) и сервера (более точное позиционирование и полная синхронизация);
  • Lip-sync - синхронизация видео и аудио потоков;
  • Возможность выполнения Spice-агентов, работающих в гостевом окружении и выполняющих задачи для клиента.

Возможности, находящиеся в разработке или реализованные частино:

  • Сетевые туннели - задействование виртуального сетевого интерфейса для совместного использования сетевыми ресурсами;
  • Организация совместного использования сетевых ресурсов, например, принтеров;
  • Возможность организации совместной работы с буфером обмена на клиенте и сервере;
  • Возможность клиентам пробрасывать USB устройства и CD привода на сервер;
  • Direct Draw - организация прямого вывода на экран;
  • Разработка дружественной пользователю системы конфигурирования;
  • Добавление поддержки выбора активного экрана клиентом (переключение вывода на другие экраны);
  • Поддержка акселерации видео
  • Поддержка 3D-акселерации
  • Создание клиента для MacOS X;
  • Поддержка одновременного соединения нескольких клиентов к одному рабочему столу.

Одновременно вышел релиз свободного видеодрайвера xf86-video-qxl 0.1.0, предназначенного для обеспечения работы в гостевых системах виртуальной графической карты QXL, выступающей связующим звеном с сервером spice-server для обеспечения акселерированного вывода графики с использованием протокола SPICE. В новой версии добавлена достаточно большая порция значительных улучшений, таких как поддержка RENDER, возможность управления конфигурацией мониторов и выставления параметров на стороне клиента, поддержка 8-битовых пиксельных карт, расширенные средства отладки и т.д.

Также представлен релиз spice-gtk 0.14 - GTK-клиента для доступа к гостевым системам по протоколу SPICE. В новой версии обеспечена поддержка бесшовной миграции гостевых окружений и улучшена обработка клавиатурных событий в условиях больших сетевых задержек.

© OpenNet