Como posso melhorar o desempenho com o protocolo Spice?

Como posso melhorar o desempenho com o protocolo Spice?

Portanto, tenho várias VMs em execução no queu no Ubuntu 18.04. Tudo funciona bem, exceto acessar as VMs remotamente: quanto mais lenta a conexão, pior fica. Executando-os em monitor 4K. Usar remmina ou virt-viewer não faz diferença.

  • na máquina local, tudo é quase perfeito, a única degradação de qualidade perceptível é o vídeo em tela cheia.
  • LAN de 1gbit: atrasos perceptíveis na renderização, o vídeo fica granulado mesmo quando em uma janela pequena
  • LAN / Internet de 100 mbit: uma atualização de tela inteira pode levar alguns segundos
  • Internet de 20/4 mbit: quando é necessária uma atualização de tela inteira, posso observar os quadrados de 64x64 sendo renderizados na tela e isso leva vários segundos. Rolar uma janela do editor é uma operação que exige paciência. Conexão inútil, mas para as tarefas mais urgentes onde a paciência não é um problema. Até o X sobre ssh parece a melhor opção aqui.

Eu comparo isso ao Win10 RDP, que - na mesma conexão 20/4 - se comporta como se eu estivesse na máquina em questão, mesmo para vídeo em tela cheia.

As VMs estão todas configuradas assim:

  • Exibir Spice: Servidor Spice com tudo padrão, sem OpenGL
  • Vídeo VirtIO: modelo VirtIO, aceleração 3D: sim, cabeças:2, RAM 128MB

Tentei o vídeo: QXL, mas aquele sobrecarregou completamente minha LAN, mesmo em gbit, entregando pouco para a largura de banda consumida (tinha menos desempenho que o VirtIO).

Então, tenho procurado uma solução para esse problema, encontrando pouca importância. Mas eu tropecei em alguns commits nomestre de especiarias(há muito tempo). Pelo que pude ver, o patch foi mesclado, então deve estar disponível, mas o suporte de vídeo ainda é claramente MJPEG para mim.

Então, como posso ativar esse suporte ao gstreamer, dando-me um codec mais avançado, como VP8 ou mesmo H264? Ou estou fazendo algo errado e é isso que está me causando dor?

Responder1

Esta é uma questão antiga, mas há um aumento significativo de velocidade se você configurar seu servidor SPICE para escutar todas as interfaces e conectar-se dessa forma em vez do Virt-Viewer. Virt-Viewer está encapsulando SSH, o que adiciona muita latência.

Depois de configurar a VM para escutar todas as interfaces, você poderá conectar-se remotamente usando:

remote-viewer spice://remote_ip_address:port

informação relacionada