Prosty protokół dla niezależnych środowisk obliczeniowych — Simple Protocol for Independent Computing Environments
Pierwotny autor (autorzy) | Qumranet |
---|---|
Deweloper(zy) | czerwony kapelusz |
Wersja stabilna | |
Napisane w | C , C++ |
System operacyjny | Linux , Windows , Android (klient) |
Rodzaj | Serwer, klient |
Licencja | GPL , LGPL i BSD |
Strona internetowa | spice-space.org |
Pakiet protokołów internetowych |
---|
Warstwa aplikacji |
Warstwa transportowa |
Warstwa internetowa |
Warstwa łącza |
W obliczeniowej , SPICE (the Prosty Protokół Independent Computing Environments ) jest zdalnie wyświetlacz System zbudowany dla środowisk wirtualnych , która pozwala użytkownikom przeglądać computing „desktop” środowisko - nie tylko na swoim komputerze komputer-serwer, ale także z dowolnego miejsca Internet – przy użyciu szerokiej gamy architektur maszynowych .
Qumranet pierwotnie opracował SPICE przy użyciu bazy kodu o zamkniętym kodzie źródłowym w 2007 roku. Red Hat, Inc nabył Qumranet w 2008 roku, aw grudniu 2009 roku wydał kod na licencji open source i uczynił protokół otwartym standardem.
Bezpieczeństwo
Połączenie klienta SPICE z serwerem zdalnego pulpitu składa się z wielu kanałów danych, z których każdy jest uruchamiany przez oddzielne połączenie z gniazdem TCP lub UNIX. Kanał danych można wyznaczyć do działania w trybie zwykłego tekstu lub TLS , co pozwala administratorowi na kompromis między poziomem bezpieczeństwa a wydajnością. Tryb TLS zapewnia silne szyfrowanie całego ruchu przesyłanego w kanale danych.
Oprócz szyfrowania protokół SPICE pozwala na wybór schematów uwierzytelniania. Oryginalny protokół SPICE definiował schemat uwierzytelniania oparty na biletach przy użyciu wspólnego sekretu. Serwer będzie generować RSA publiczny / prywatny parę kluczy i wysłać swój klucz publiczny do klienta. Klient zaszyfrowałby bilet (hasło) kluczem publicznym i odesłał wynik z powrotem do serwera, który odszyfrowałby i zweryfikował bilet. Obecny protokół SPICE pozwala również na korzystanie z protokołu uwierzytelniania SASL , umożliwiając tym samym obsługę szerokiego zakresu mechanizmów uwierzytelniania konfigurowalnych przez administratora, w szczególności Kerberos .
Realizacje
Chociaż istnieje tylko jedna implementacja serwera, kilku programistów opracowało nowe implementacje po stronie klienta SPICE od czasu open-sourcingu SPICE.
- protokół przypraw
- Moduł protokołu spice definiuje formaty protokołów przewodowych SPICE. Jest to udostępniane na licencji BSD i można je przenosić na platformy Linux i Windows.
- przyprawa
- Moduł spice zapewnia referencyjną implementację protokołu SPICE po stronie serwera. Serwer jest dostarczany jako biblioteka dynamiczna, którą można połączyć z dowolną aplikacją, która chce udostępnić serwer SPICE. Od 2013 r. QEMU używa tego, aby zapewnić interfejs SPICE dla maszyn wirtualnych. Baza kodu spice jest dostępna na licencji LGPL v2+.
- Część kliencka bazy kodowej spice o nazwie spicec została usunięta w grudniu 2014 r.
- przyprawy-gtk
- Moduł spice-gtk implementuje klienta SPICE przy użyciu systemu typu GObject i zestawu narzędzi GTK widget . Składa się z niskopoziomowej biblioteki spice-client-glib, która implementuje kod protokołu klienta, oraz wysokopoziomowego zestawu widżetów, które zapewniają graficzne możliwości klienta przy użyciu GTK. Jest on udostępniany na licencji LGPLv2+ i można go przenosić na platformy Linux, OS X i Windows.
- przyprawa-html5
- Moduł spice-html5 implementuje klienta SPICE, który używa JavaScript i jest przeznaczony do działania w przeglądarce internetowej obsługującej HTML5 . Chociaż implementuje protokół SPICE, nie może komunikować się bezpośrednio ze zwykłym serwerem SPICE. Musi łączyć się z serwerem pośrednio przez proxy WebSocket . Jest to dostępne w ramach kombinacji licencji GPLv3+ i LGPLv3+.
Aplikacje
Protokół SPICE powstał, aby zapewnić ulepszone możliwości zdalnego pulpitu w rozwidleniu bazy kodu KVM.
- QEMU/KVM
- Opiekunowie QEMU połączyli wsparcie dla zapewnienia możliwości zdalnego pulpitu SPICE dla wszystkich maszyn wirtualnych QEMU w marcu 2010. Binarne linki QEMU do biblioteki spice-server, aby zapewnić tę możliwość i implementują parawirtualizowane urządzenie bufora ramki QXL, aby umożliwić systemowi gościa korzystanie z wydajność korzystna, którą oferuje protokół SPICE. System gościa może również korzystać ze zwykłej karty VGA, aczkolwiek z gorszą wydajnością w porównaniu z QXL.
- Xspice
- Sterownik X.Org Server dla urządzenia buforującego ramki QXL zawiera skrypt opakowujący, który umożliwia uruchomienie serwera Xorg, którego wyświetlanie jest eksportowane za pomocą protokołu SPICE. Umożliwia to korzystanie z SPICE w środowisku zdalnego pulpitu, bez konieczności wirtualizacji QEMU/KVM.
- wirtualna przeglądarka
virt-viewer
Program korzysta z biblioteki klienta przyprawa-gtk podłączyć do maszyn wirtualnych z wykorzystaniem przyprawa, jako alternatywa dla poprzedniej wsparcia VNC .- o Virt
- SPICE jest zintegrowany z oprogramowaniem do zarządzania chmurą prywatną oVirt , umożliwiając użytkownikom łączenie się z maszynami wirtualnymi za pośrednictwem SPICE.