Простой протокол для независимых вычислительных сред
Оригинальный автор(ы) | Кумранет |
---|---|
Разработчик(и) | Красная шляпа |
Стабильная версия | |
Написано в | С , С++ |
Операционная система | Linux , Windows , Android (клиент) |
Тип | Сервер, клиент |
Лицензия | GPL , LGPL и BSD |
Веб-сайт | spice-space.org |
Набор интернет-протоколов |
---|
Прикладной уровень |
Транспортный уровень |
Интернет-слой |
Слой связи |
В области SPICE вычислений ( Простой протокол для независимых вычислительных сред ) представляет собой систему удаленного отображения, созданную для виртуальных сред , которая позволяет пользователям просматривать компьютерную среду «настольного компьютера» — не только на компьютере-сервере, но и из любой точки мира. Интернет – использование самых разных машинных архитектур .
Первоначально Qumranet разработала SPICE с использованием с закрытым исходным кодом кодовой базы в 2007 году. Red Hat, Inc приобрела Qumranet в 2008 году, а в декабре 2009 года выпустила код под лицензией с открытым исходным кодом и сделала протокол открытым стандартом. [4] [5]
Безопасность
[ редактировать ]Соединение клиента SPICE с сервером удаленного рабочего стола состоит из нескольких каналов данных , каждый из которых выполняется через отдельное TCP или UNIX соединение через сокет . Канал данных может быть назначен для работы в режиме открытого текста или в режиме TLS , что позволяет администратору выбирать между уровнем безопасности и производительностью. Режим TLS обеспечивает надежное шифрование всего трафика, передаваемого по каналу данных.
Помимо шифрования, протокол SPICE допускает выбор схем аутентификации. Исходный протокол SPICE определял схему аутентификации на основе билетов с использованием общего секрета. Сервер сгенерирует пару RSA открытого/закрытого ключей и отправит свой открытый ключ клиенту. Клиент зашифрует билет (пароль) с помощью открытого ключа и отправит результат обратно на сервер, который расшифровает и проверит билет. Текущий протокол SPICE также позволяет использовать протокол аутентификации SASL , что обеспечивает поддержку широкого спектра настраиваемых администратором механизмов аутентификации, в частности Kerberos .
Реализации
[ редактировать ]Хотя существует только одна реализация сервера, несколько программистов разработали новые реализации клиентской части SPICE с момента открытия SPICE.
- протокол специй
- Модуль spice-протокола [6] определяет форматы проводного протокола SPICE. Он доступен по лицензии BSD и переносим на платформы Linux и Windows .
- специя
- Модуль специй [7] предоставляет эталонную реализацию серверной части протокола SPICE. Сервер предоставляется в виде динамической библиотеки , которую можно связать с любым приложением, желающим использовать сервер SPICE. По состоянию на 2013 год [update]QEMU использует это для предоставления интерфейса SPICE для виртуальных машин . Кодовая база Spice доступна по лицензии LGPL v2+.
- Клиентская часть кодовой базы Spice под названием spicec была удалена в декабре 2014 года.
- специя-GTK
- Модуль spice-gtk [8] реализует клиент SPICE, используя систему типов GObject и GTK набор инструментов виджетов . Он включает в себя низкоуровневую библиотеку spice-client-glib, которая реализует код клиентского протокола, и высокоуровневый набор виджетов , которые обеспечивают графические возможности клиента с использованием GTK. Он доступен по лицензии LGPLv2+ и переносим на платформы Linux, OS X и Windows.
- специя-html5
- Модуль spice-html5 [9] реализует клиент SPICE, который использует JavaScript и предназначен для запуска в веб-браузере, поддерживающем HTML5 . Хотя он реализует протокол SPICE, он не может напрямую взаимодействовать с обычным сервером SPICE. Он должен подключаться к серверу косвенно через прокси-сервер WebSocket . [10] Это доступно под комбинацией лицензий GPLv3+ и LGPLv3+.
Приложения
[ редактировать ]Протокол SPICE был создан для обеспечения улучшенных удаленного рабочего стола возможностей в ответвлении кодовой базы KVM.
- КЭМУ/КВМ
- В марте 2010 года сопровождающие QEMU объединили поддержку предоставления возможностей удаленного рабочего стола SPICE для всех виртуальных машин QEMU. Двоичный файл QEMU связывается с библиотекой spice-server, чтобы обеспечить эту возможность, и реализует паравиртуализированное устройство кадрового буфера QXL, позволяющее гостевой ОС использовать преимущества преимущества производительности, предлагаемые протоколом SPICE. Гостевая ОС также может использовать обычную карту VGA , хотя и с ухудшенной производительностью по сравнению с QXL. [11]
- Xspice
- Драйвер сервера X.Org QXL для устройства кадрового буфера включает в себя скрипт- оболочку , [12] что позволяет запустить сервер Xorg, отображение которого экспортируется по протоколу SPICE. Это позволяет использовать SPICE в среде удаленного рабочего стола без необходимости виртуализации QEMU/KVM.
- виртуальный просмотрщик
- The
virt-viewer
Программа использует клиентскую библиотеку spice-gtk для подключения к виртуальным машинам с помощью SPICE в качестве альтернативы предыдущей поддержке VNC . - oVirt
- SPICE интегрирован в oVirt программное обеспечение для управления частным облаком , что позволяет пользователям подключаться к виртуальным машинам через SPICE.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Выпуск Spice 0.14.4» . gitlab.freedesktop.org . Проверено 24 октября 2022 г.
- ^ «Выпуск Spice 0.15.1» . gitlab.freedesktop.org . Проверено 24 октября 2022 г.
- ^ «выпуск spice-gtk 0.41» . gitlab.freedesktop.org . Проверено 24 октября 2022 г.
- ^ «Red Hat SPICE с открытым исходным кодом» . Красная шляпа . 9 декабря 2009 года . Проверено 25 октября 2013 г.
- ^ «Сайт проекта» . spice-space.org . Проверено 25 декабря 2019 г.
- ^ «GIT-репозиторий spice-протокола» . cgit.freedesktop.org . Проверено 25 октября 2013 г.
- ^ «специя/специя» . cgit.freedesktop.org . Проверено 5 января 2023 г.
- ^ «GIT-репозиторий spice-gtk» . cgit.freedesktop.org. 10 октября 2013 г. Проверено 25 октября 2013 г.
- ^ «GIT-репозиторий spice-html5» . cgit.freedesktop.org . Проверено 25 октября 2013 г.
- ^ websockify на GitHub
- ^ «Виртуальные машины QEMU/KVM» . pve.proxmox.com . Проверено 18 сентября 2023 г.
- ^ «README XSpice» . cgit.freedesktop.org . Проверено 25 октября 2013 г.