Ao usar sinergia, às vezes fica atrasado

9

Atualização: Eles corrigiram o atraso do wifi do macOS no Synergy 1.9.0! https://symless.com/forums/topic/2587-download-synergy-190-to-fix-the-wifi-macos-bug/

Eu uso synergy. Meu desktop linux atua como servidor, e meu macbook se conecta como cliente. Ao usar a sinergia, os dois são conectados a um roteador Linksys WRT-45GL, ambos usando uma conexão com fio.

Às vezes, quando eu passo o mouse sobre o meu macbook, a conexão fica lenta. Por exemplo, moverei o mouse, mas o cursor não se moverá por 2 ou 3 segundos. Ou digito algo, não vai aparecer nem um pouco. Isso acontece esporadicamente. Geralmente apenas durante o primeiro minuto ou mais de mudar para o mac, mas não necessariamente.

Oque posso fazer para consertar isso?

Tentei verificar o uso da CPU em ambas as máquinas e não vi um pico lá que corresponda ao atraso. Presumo que o gargalo esteja no tráfego da rede, mas não sei como confirmar isso ou como corrigi-lo.

David Oneill
fonte
2
Você já tentou reverter os papéis das máquinas para ver se elas replicam o comportamento? Então você está pelo menos descartando algumas opções.
Eu não tenho, embora isso não seja uma opção: usar o mac como o cliente faz com que as chaves fiquem na área de trabalho (que é a minha máquina principal); tentarei quando tiver uma chance ...
David Oneill
Você resolveu isso? A resposta aceita é apenas dicas de solução de problemas. Qual foi a causa / solução para você?
Albert Bori
@AlbertBori uau - isso foi de 4 anos atrás. Não está acontecendo neste momento para mim, mas eu tenho novas instalações de sistemas operacionais e um computador desktop diferente desde então ... Não me lembro qual foi o problema. Desculpe
David Oneill
11
Não se preocupe, David. Este foi o único post que pude encontrar sobre o problema que eu estava tendo. Acontece que alguma forma de reiniciar os serviços / computadores envolvidos geralmente resolve o problema.
Albert Bori

Respostas:

3

Bem, você sabe que não pode ser a camada 2 se apenas dois dispositivos estiverem conectados (a tabela mac NÃO PODE encher). Se você tiver mapeamentos de host estáticos, não poderá ser a camada três. Isso deixa largura de banda, colisões e software. O Wireshark pode falar sobre largura de banda e às vezes pode indicar colisões. Eu deixaria cair algum hardware barato no meio que possua registro de colisões disponíveis para verificar isso. Então você está pronto para a aplicação.

RobotHumans
fonte
11
Isso foi corrigido! Corrigimos o atraso do wifi do macOS no Synergy 1.9.0! symless.com/forums/topic/...
Nick Bolton
@NickBolton Não é fixo para muitos usuários, consulte symless.com/forums/topic/… Além disso, o 1.9.0 trava na inicialização para mim e outras pessoas.
28817 PabloC
3

Eu tive o mesmo problema há apenas um segundo, tentei todas as outras correções (exceto a Ethernet para o meu mac).

No PC host (janelas), vá para o Gerenciador de Tarefas (Ctrl + Shift + Esc), em seguida, clique na guia detalhes no topo, em seguida, procurar synergy.exe, synergyd.exe, synergys.exee, em seguida, clique direito sobre elas e sob o menu sub conjunto prioridade escolher High.

Dylan Larsen
fonte
não funcionou :( Alguma idéia adicional?
DrCord
3

Resumo de plano de fundo e solução

Isso é um pouco longo, mas o objetivo é educar através da seção Instruções detalhadas. Se você já é educado, basta ler esta seção e possivelmente a conclusão ;-)

Uso Synergy no Linux e Windows em suas várias formas desde os anos 90, e essa pergunta aparece com frequência. Existem duas causas comuns, e eu trato aqui apenas da primeira.

Geralmente, é um problema no nível do sistema operacional, sendo a prioridade do agendador do cliente; portanto, a solução é simplesmente aumentar a prioridade do cliente. Isso melhorará as coisas, mas a experiência geral ainda será baseada nas visões do agendador sobre a importância de atualizar a tela etc. Veja no final mais informações sobre isso.

Às vezes, há outro motivo: um ou ambos os processos do servidor ou cliente morrem e são reiniciados; nesse caso, você deve ativar o log no nível de depuração no servidor e no cliente Synergy e levá-lo a partir daí. Depois de resolver isso , implemente o acima.

Instruções detalhadas

Aumentando a prioridade do agendador do cliente Windows

Usando o Windows 7, não conheço os atalhos nas versões mais recentes.

  1. Abra o Gerenciador de tarefas (Ctrl-Alt-Esc) e clique na guia Processos.

  2. Clique com o botão direito do mouse em synergy.exe, clique em "Definir prioridade" e escolha Alto ou Realtime.

  3. Repita o procedimento para synergyc.exe.

  4. Se o servidor Synergy estiver muito lento, seu processo será synergys.exe.

Aumentando a prioridade do planejador de cliente Linux

Algo semelhante deve funcionar no Mac. Você pode saber como fazer isso na GUI, mas eu uso a linha de comando. A menos que você faça o seguinte como root ( sudo su -), terá que brincar (como root) visudoe configurar os direitos relevantes de uso renice.

ps -eo pid,ni,cmd |\
grep synergy |\
grep -v grep |\
cut -d" " -f2 |\
while read pid; do echo -n $pid" "; done |\
xargs renice -19

Você pode copiar e colar o texto acima ou colocá-lo em uma linha removendo todos os \caracteres e quebras de linha. Se você quiser ver o que será executado sem realmente fazê-lo, altere o último comando para xargs echo renice -19.

Como afirmado acima, isso ainda está sob a visão do planejador sobre a importância de muitos outros processos. Se você quiser aprender um pouco, faça o seguinte.

Vendo processos do Windows

Abra o Gerenciador de tarefas. Na guia Processos, clique no botão "Mostrar processos de todos os usuários". Em seguida, clique no menu Exibir e em "Selecionar colunas ...". Verifique se apenas o seguinte está marcado: Nome do usuário, Uso da CPU, Tempo da CPU, Prioridade da base, Linha de comando. Você pode clicar em Descrição também, se desejar.

Você pode arrastar a janela e as colunas maiores para facilitar a leitura. Clique no cabeçalho de uma coluna para classificá-lo. Você também pode clicar com o botão direito do mouse no nome de uma imagem e, por exemplo, acessar os serviços associados. Isso é útil para nomes de imagens sem graça como svchost.exe. Se você deseja usar uma ferramenta realmente poderosa (tenha cuidado!), Tente o ProcessHacker .

Vendo processos Linux

Execute ps -eo pid,ni,cmd | lesspara ver todos os processos em execução. Cada linha representa um status do processo e as colunas são: o ID do processo, sua prioridade e a linha de comando em questão. Um problema é que, no Unix, quanto menor o bom valor, maior a prioridade.

Conclusão

O fato é que o Synergy depende de muitos outros processos para fazer parte de seu trabalho (como lidar com o SSL no Pro), e cada um desses processos tem uma prioridade atribuída a ele pelo agendador do SO. Portanto, não há realmente uma solução simples.

Mesmo depois de aplicar a "correção" mencionada acima, muitas vezes as coisas ficam lentas depois de entrar na tela do cliente em que você não está há um tempo, e isso se deve a toda essa família de processos ser colocada em segundo plano, de modo a falar. Atualmente, a maioria dos agendadores é adaptável e diminui a prioridade dos processos do usuário que estão ociosos há algum tempo. Para o agendador vê-los como importantes novamente, é necessário um uso continuado por um tempo, como mover o mouse muito depois que você entra na tela. É uma dor, mas é assim que os agendadores de SO funcionam em sistemas operacionais não em tempo real.

Existem maneiras de ajustar isso, mas é muito específico para cada sistema operacional (mesmo versões diferentes) e frágil (leia-se: quebra facilmente nos patches do sistema operacional). Sem olhar para o código, espero que a Nick & team realmente resolva isso empurrando o Synergy para o nível do driver do kernel, o que tornaria o modo mais frágil e causaria um aumento significativo nos preços.

b3ta
fonte