Performance/Qualidade-Raspberry-Thin Client
Raspberry Pi como Thin Client
Atenção!
Esse trabalho está em andamento, em qualquer momento podemos fazer atualizações
ou alterações neste documento.Recomendamos que você faça um acompanhamento diário. E se você tiver
alguma dica, contribua comentando no final desse post..
Se
você estiver utilizando o Raspberry Pi como um cliente Thin Client e
está querendo melhorar o seu desempenho, veio no local certo!!
O objetivo desse estudo é melhorar a performance
do Raspberry Pi, como
um cliente Thin Client, para
acesso a máquinas remotas Windows via protocolo RDP. Para isso, realizamos um
estudo onde foi levado em consideração Performance e Qualidade na visualização (imagem,
fonte vídeo, áudio...)
Procuramos configurar o Raspberry Pi de
uma forma que o cliente tenha a impressão de estar em sua própria máquina,
fisicamente. As configurações abaixo, podem melhorar em até 70% a performance e
qualidade do thin cliente.
A etapa de configuração será dividida
em duas partes: Configurando Ambiente
Windows e Configurando o Raspberry
Pi como Thin Client
Os nossos testes foram realizados com o
Raspberry Pi 2B acessando remotamente via RDP um cliente com SO Windows 7 e
outro com Windows 10.
Configuração do Raspberry Pi 2 B:
·
CPU:
900MHz
·
Memória
RAM: 1GB
·
Fonte
de alimentção 5V/2A
·
Ethernet
10/100 (RJ45)
·
Cartão
MicroSD Classe 4 (aconselhável
classe 10, melhor desempenho)
Configurando Ambiente Windows
Nesta etapa será realizado algumas configurações que são de grande importância para o nosso objetivo: Configurando máquina Windows para realizar conexão RDP, alterando o algoritmo de compressão e configurando melhorias para conexões RDP no Windows.
1. Clicar no menu Iniciar e pesquisar por gpedit.msc e clicar com o lado direito do mouse e escolher a opção Executar como administrador
2. Navegar para Configuração do Computador, Modelos
Administrativos, Componentes do Windows, Serviços de Área de Trabalho
Remotas e Host de Sessão da Área de Trabalho Remota
3. Configure os itens desejados ou siga o modelo de
configurações das imagens abaixo:
4. Em alguns casos, você pode escolher o melhor parâmetro que se adequar a suas necessidades
5. Aqui, configuramos o algoritmo de compactação de RDP para Otimizado para usar menos memória. Configure ao seu modo.6. Nesta etapa, damos prioridade o modo Otimizar para escalabilidade do servidor
Será necessário realizar mais algumas configurações
no Windows, como habilitar o Acesso Remoto e desabilitar o auto-tuning
TCP.
Habilitar o Acesso Remoto no Windows
1. Abrir Prompt de Comando como Administrador;
2. No Prompt de Comando, entre
com os seguintes parâmetros:
reg
add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal
Server" /t REG_DWORD /v "fDenyTSConnections" /d 0 /f {Enter}
reg
add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal
Server\WinStations\RDP-Tcp" /t REG_DWORD /v "UserAuthentication"
/d 0 /f {Enter}
fDenyTSConnections – Habilita(0) ou Desabilita(1)
o RDP do Windows
UserAuthentication – Define se
o modo de autenticação será em nível
de rede ou não. Para máquinas, principalmente
distro Linux, que não estão no AD realizar uma conexão RDP, o valor deve ficar
como “0”.
Habilitar
o auto-tuning TCP
1. Abrir Prompt de Comando como Administrador;
2. No Prompt de Comando, entre
com os seguintes parâmetros:
netsh interface tcp set global autotuning=disabled {Enter}
Para verificar se foi desabilitado: netsh
interface tcp show global
Caso queira reativá-lo: netsh
interface tcp set global autotuning=normal
Configurando o Raspberry Pi
Estamos considerando que você já tem uma imagem instalada no seu Raspberry Pi.
Instalar o cliente FreeRDP
1. Abrir o terminar e entrar com os seguintes parâmetros:
sudo apt-get update
sudo apt-get install
freerdp-x11-dbg
Assim que o pacote for instalado, realize um teste no terminal com o seguinte
parâmetro:
xfreerdp -sec-nla
/v:NomeDoComputadorRemoto
O parâmetro -sec-nla, serve para evitar que seja solicitado
suas credências ainda no terminal, o /v:
é onde dever ser informado o nome da máquina remota
Para consultar uma lista completa de todos os
parâmetros, digite no terminal xfreerdp
--help
Parâmetros do FreeRDP Testado
Testamos uma grande maioria dos parâmetros do xfrerrdp que listamos abaixo o que tivemos um melhor resultado.
Parâmetros que testamos e tivemos um melhor desempenho e qualidade:
xfreerdp +fonts
-sec-nla --rfx-mode:video --nsc /jpeg-quality:82% --disable-wallpaper
--disable-full-window-drag /cert-ignore -x l /gdi:hw --yes-osb --yes-bmp-cache
/sound:sys:alsa -- /f /w:1920 /h:1080 /v:NomeDoComputador
Script para automatizar conexão
Se quiser automatizar sua conexão, é só criar um arquivo com os seguintes parâmetros:
echo " ____ ___ _____ _____ ____
| _ \ / _ \ | ___| |_ _| / ___|
| | | | | | | | | |_ _____ | | | |
| |_| | | |_| | | _| |_____| | | | |___
|____/ \__\_\ |_| |_| \____|
"
echo "DicasQueFunfa - Thin Client"
echo ""
check_process() {
echo "$ts: checking $1"
[ "$1" = "" ] && return 0
[ `pgrep -n $1` ] && return 1 || return 0
}
while [ 1 ]; do
# timestamp
ts=`date +%T`
echo " _ _ ___ __ __ _____ ____ ___ ____ ____
| \ | | / _ \ | \/ | | ____| | _ \ / _ \ | _ \ / ___| _
| \| | | | | | | |\/| | | _| | | | | | | | | | |_) | | | (_)
| |\ | | |_| | | | | | | |___ | |_| | | |_| | | __/ | |___ _
|_| \_| \___/ |_| |_| |_____| |____/ \___/ |_| \____| (_)
"
read host;
xfree="xfreerdp +fonts -sec-nla --rfx-mode:video --nsc /jpeg-quality:82% --disable-wallpaper --disable-full-window-drag /cert-ignore -x l /gdi:hw --yes-osb --yes-bmp-cache /sound:sys:alsa /f /v:$host"
echo "$ts: begin checking..."
check_process "xfreerdp"
[ $? -eq 0 ] && echo "$ts: not running, restarting..." && `$xfree`
sleep 5
done
Lembre de alterar a permissão do arquivo. Exemplo, caso você tenha criado um arquivo com o nome AutoRunRDP, abra o terminar e escreva
chmod +x AutoRunRDP
chmod +x AutoRunRDP
Lembrando que esse trabalho está em andamento,
em qualquer momento podemos fazer atualizações ou alterações neste documento.
Olá. To ensaiando pra colocar uma solução dessa em um cliente. Voce sabe me dizer se ele lê certificado digital pelo client rdp do raspberry? ele é agil ou o mouse fica meio se arrastando pra usar com o windows 10 já configurado pra usar um grafico bem simples?
ResponderExcluir