Comment accélérer VNC?


29

Je dois accéder à distance et utiliser mon ordinateur de travail plusieurs fois par semaine. J'utilise actuellement UltraVNC. Je veux utiliser VNC à cause du prix. J'ai déjà utilisé VNC, principalement sur mon propre réseau, où c'est rapide.

Cependant, VNC sur Internet est incroyablement lent. Même à 256 couleurs et moins, avec Aero désactivé, il est insupportablement lent. J'ai récemment utilisé Ammyy Admin pour me connecter pour faire quelque chose nécessitant un temps de réaction rapide. Ammyy était vraiment rapide, avec presque aucun décalage, et il fonctionnait en couleur avec Aero activé!

Comment puis-je rendre VNC plus rapide, comme Ammyy? J'utiliserais Ammyy, mais je rencontrerais probablement la limite de 15 heures par mois assez rapidement. Aucune suggestion?


Avez-vous installé et activé le pilote miroir comme suggéré par Dillie-O?
stukelly

Réponses:


19

VNC a certaines limitations inhérentes au protocole qu'il utilise. RFB, framebuffer distant, fonctionne en transmettant des rectangles de pixels sur un réseau. Plus la résolution et la profondeur de bits sont élevées, plus la bande passante requise pour envoyer des mises à jour est élevée. Il y a déjà quelques optimisations que les serveurs / clients VNC font:

  1. N'envoyer que les régions modifiées, en mettant en cache les régions inchangées sur le client.
  2. Copie des régions mises en cache sur le client lorsque des modifications se produisent.
  3. Différentes formes de compression sans perte et avec perte

Vous pouvez jouer avec les paramètres du client et du serveur pour voir quels paramètres fonctionnent le mieux pour votre connexion Internet. N'importe quel client peut se connecter à n'importe quel serveur car il négocie pour déterminer les fonctionnalités de protocole prises en charge, mais il est préférable d'utiliser un client et un serveur de la même société si vous souhaitez utiliser des fonctionnalités de protocole plus avancées.

Les protocoles RDP et X transmettent des instructions de dessin au lieu de patchs de pixels. C'est pourquoi, dans certaines conditions, ils sont supérieurs à VNC.

D'autres services d'accès à distance propriétaires peuvent utiliser des techniques similaires mais ne sont pas documentés. Les services d'accès à distance ont l'avantage de pouvoir traverser les pare-feu plus facilement que l'accès à distance direct, ils sont généralement plus faciles à configurer et ont une meilleure prise en charge du cryptage.

J'ai utilisé VNC, Remote Desktop, LogMeIn Free, PCAnywhere et remote X. Chacun a ses mérites:

  • VNC fonctionne en fait mieux que les autres protocoles sur des débits binaires extrêmement limités. (Pensez à la connexion par ligne commutée) Et cela fonctionne sur pratiquement toutes les plateformes.
  • Remote Desktop fonctionne bien sur les réseaux locaux et s'intègre parfaitement à ActiveDirectory.
  • LogMeIn est idéal pour accéder à un PC Windows via Internet et prend également en charge l'intégration ActiveDirectory. Il a des extensions ActiveX, Java, Firefox et même un client HTML. La version gratuite vous permet de gérer jusqu'à 5 PC. Les versions payantes augmentent ce nombre, ajoutent des fonctionnalités de transfert de fichiers et de gestion avancée.
  • PCAnywhere est similaire à VNC et Remote Desktop. Il prend en charge différents niveaux de cryptage, les transferts de fichiers et la configuration à distance. Les choses que vous devez assembler avec VNC et Remote Desktop.
  • X est l'équivalent mondial d'Unix de Remote Desktop. Pour être juste, cela fait beaucoup plus longtemps que n'importe quel autre protocole. Cela fonctionne très bien sur un LAN mais est trop bavard sur Internet. Plusieurs projets ont tenté d'améliorer cette situation avec différents degrés de succès. NoMachine NX, déjà mentionné, fait partie de ces projets.

Tous les protocoles d'accès à distance que j'ai mentionnés sont disponibles gratuitement (avec un système d'exploitation ou en téléchargement) à l'exception de PcAnywhere, qui est vendu par Symantec.

Personnellement, j'essaierais chacun d'eux et sélectionnerais celui qui correspond le mieux à vos besoins.


L'entreprise pour laquelle je travaillais l'a installé sur tous les PC de leurs clients. Cela a fonctionné efficacement jusqu'à ce que les clients commencent à devenir plus soucieux de la sécurité. Ensuite, il est devenu très compliqué de configurer le pare-feu de chaque client. Ils sont donc passés à une version informatique de GoToMyPC. Mais PCAnywhere était en fait un produit assez complet.
Kenneth Cochran

J'aimerais voir les performances de Chrome Remote Desktop par rapport aux options de cette réponse. Je l'ai trouvé très comparable à VNC lorsqu'il est utilisé sur des connexions à faible bande passante.
Nathan Osman

@NathanOsman Chrome Remote Desktop utilise le codec VP8 que Google a acheté à On2 il y a quelques années, donc j'imagine que c'est assez bon. Je ne l'ai pas examiné, mais je pense que CRD code simplement tout l'écran sous forme d'images en utilisant une compression avec perte similaire à des dizaines d'autres codecs vidéo. Avec la mort de la connexion à distance, il n'y a plus d'incitation à optimiser pour des débits aussi limités. C'est là que VNC a vraiment brillé.
Kenneth Cochran

13

Vous pouvez essayer NoMachine NX . Un de mes amis l'a utilisé avec un certain succès pour augmenter la vitesse du VNC.

Quant à moi, j'utilise RDP et je pense que c'est définitivement la voie à suivre pour les systèmes Windows. D'autres ont obtenu de bons résultats avec TeamViewer ou Remote Administrator .


J'allais suggérer NX. Juste un peu plus de détails: vous avez besoin d'une machine Linux à l'extrémité distante (c'est-à-dire votre bureau) pour exécuter le logiciel NX. Il dispose d'une passerelle VNC pour vous permettre de connecter le serveur NX aux serveurs VNC locaux sur son réseau. (Peut également faire de même avec RDP.)
Evan

> Un de mes amis l'a utilisé avec un certain succès pour augmenter la vitesse du VNC. Juste une piqûre, mais NX est complètement différent de VNC (bien qu'ils remplissent des fonctions similaires)
Jason Axelson

NX prend désormais en charge les serveurs OS X et Windows. Il est beaucoup plus rapide que le VNC traditionnel.
Indolering le

2

J'ai renoncé à cela, de nos jours j'utilise simplement LogMeIn Free quand je suis sur Windows et SSH avec le transfert X sur Linux.


J'avais l'habitude de l'utiliser il y a quelque temps. Je viens de faire un nouvel essai et il semble se porter plutôt bien. Cool. Merci!
NickAldwin

Je marquerais cela comme une réponse (je le veux vraiment), mais il offre une alternative au lieu d'une solution. Désolé. Cela a fonctionné pour moi, merci!
NickAldwin

2

Avez-vous étudié UltraVNC ? Ils ont un pilote vidéo miroir intégré à leur système qui permet d'accélérer certains des problèmes d'actualisation et de notification. Je pense que cela pourrait aider dans votre cas, et c'est toujours gratuit.


hehe, pas de soucis. Je sais qu'il y a un million de saveurs de VNC là-bas, je voulais juste jeter cette idée.
Dillie-O

1

Vous pouvez exécuter TeamViewer en tant que "local uniquement" si vous le faites, vous vous connectez à une machine en fonction de son adresse IP. C'est une énorme amélioration de la vitesse par rapport à VNC.


1

Les a tous testés récemment et Ammy Admin est le meilleur de la liste à des fins générales. Temviewer fonctionne également parfaitement et prend en charge Android et Mac, c'est donc une excellente option lors de la connexion depuis / vers un autre système d'exploitation. Ammy Admin et TeamViewer prennent tous deux en charge Directx, vous pouvez donc jouer ou voir des jeux à l'écran, mais Team Viewer est vraiment lent et je ne le recommanderais pas pour les jeux. Testé avec Guild Wars 2 et Diablo 3. Également testé Directx avec UltraVNC, TightVNC et RealVNC mais je n'ai pas pu les faire fonctionner avec les jeux Directx. Une seule fenêtre noire s'affiche une fois que vous entrez dans le jeu. (l'ordinateur n'est pas bloqué, affiche simplement une fenêtre noire que vous pouvez minimiser).

Team Viewer a un excellent support et ils répondent aux e-mails avec frecuence.

Le pire à propos d'Ammy Admin est le prix et le support, car vous avez besoin d'une licence pour chaque ordinateur, une pour le client et une autre pour le serveur, environ (70 + 70) 140 euros avec une licence Premium.

D'un autre côté, les VNC n'ont pas autant de support car ils sont gratuits.

La meilleure option est de les tester tous et de voir lequel va mieux dans votre système.


1

Essayez d'utiliser ceci:

-snapfb

Au lieu d'interroger le tampon d'affichage X (fb) pour les modifications, copiez périodiquement tous les fb d'affichage X dans la mémoire principale et examinez cette copie pour les modifications. Dans certaines circonstances, cela améliorera la réponse interactive, ou du moins rendra les choses plus lisses, mais dans d'autres (la plupart!), Cela aggravera la réponse. Si la vidéo h / w fb est telle que la lecture de petites tuiles est très lente, ce mode peut vous aider. Pour conserver le "framerate", la taille de l'écran x bpp ne peut pas être trop grande. Notez que ce mode gaspille beaucoup de ressources d'E / S mémoire (il fait des copies plein écran même si rien ne change). Il peut être utile dans des applications de type capture vidéo ou lorsque le déchirement de la fenêtre est un problème.

Cela a résolu le problème pour moi.


0

J'ai trouvé que le VNC gratuit était douloureusement lent. Ils ont une version payante - vous ne savez pas si ce sera beaucoup mieux?

Si vous êtes dans un environnement Windows, j'ai eu beaucoup de chance avec RDC (Remote Desktop Connection).


1
+1 Par coïncidence, hier, je suis passé au RDC, et il semble définitivement être beaucoup plus rapide et plus configurable pour les ordinateurs Windows. J'utiliserai toujours VNC pour d'autres systèmes d'exploitation, mais RDC pour Windows.
Jorge Israel Peña

RDC utilise RDP dessous pour son protocole, je crois? Dommage que ses fenêtres seulement, il soit agréable et rapide :)
rogerdpack

0

Il existe une version de VNC pour les réseaux plus lents appelée TightVNC .


IMO TightVNC est tout aussi lent, et j'ai beaucoup modifié les paramètres en essayant de trouver quelque chose de mieux
zildjohn01

TightVNC a une meilleure compression que le client VNC "normal", mais ce n'est pas beaucoup plus rapide. RDP est la voie à suivre avec les systèmes Windows au moins.
Joey

J'utilise UltraVNC, dont j'ai entendu dire qu'il pouvait être plus rapide que TightVNC.
NickAldwin

UltranVNC a les améliorations de protocole de TightVNC.
Evan

0

J'ai eu une terrible expérience utilisateur en utilisant VNC sur le réseau local, cependant lorsque j'ai essayé de me connecter en:

ssh -X -C 

et en utilisant

xtightvncviewer :$THEDISPLAY

les performances sont bien meilleures, par rapport à toutes les autres combinaisons ...

VNC server default format:
      16 bits per pixel.
      Least significant byte first in each pixel.
      True colour: max red 31 green 63 blue 31, shift red 11 green 5 blue 0
    Using default colormap which is TrueColor.  Pixel format:
      32 bits per pixel.
      Least significant byte first in each pixel.
      True colour: max red 255 green 255 blue 255, shift red 16 green 8 blue 0
    Same machine: preferring raw encoding
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.