web-dev-qa-db-fra.com

Comment puis-je rendre VNC plus rapide?

J'ai besoin d'accéder à distance à mon ordinateur de travail et de l'utiliser 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 éteint, la lenteur est insupportablement lente. J'ai récemment utilisé Ammyy Admin pour établir une connexion nécessitant un temps de réaction rapide. Ammyy était vraiment rapide, avec presque pas de décalage, et ça tournait en couleur avec Aero!

Comment puis-je rendre VNC plus rapide, comme Ammyy? J'utiliserais Ammyy, mais la limite de 15 heures/mois serait probablement très rapide. Aucune suggestion?

26
NickAldwin

VNC a certaines limitations inhérentes au protocole utilisé. RFB, framebuffer distant, fonctionne en transmettant des rectangles de pixels sur un réseau. Plus la résolution et la résolution sont élevées, plus la bande passante requise pour envoyer les mises à jour est importante. Il existe quelques optimisations déjà effectuées par les serveurs/clients VNC:

  1. N'envoyez que les régions modifiées, en mettant en cache les régions non modifiées sur le client.
  2. Copier les régions mises en cache sur le client lorsque des modifications sont apportées.
  3. Diverses formes de compression sans perte et avec perte

Vous pouvez modifier les paramètres du client et du serveur pour déterminer ceux qui conviennent le mieux à votre connexion Internet. Tous les clients peuvent se connecter à n’importe quel serveur car ils négocient 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 distant propriétaires peuvent utiliser des techniques similaires mais ne sont pas documentés. Les services d'accès distant ont l'avantage de pouvoir passer à travers les pare-feu plus facilement que les accès directs à distance. Ils sont généralement plus faciles à configurer et prennent mieux en charge le cryptage.

J'ai utilisé VNC, le Bureau à distance, LogMeIn Free, PCAnywhere et le X distant. Chacun a ses avantages:

  • VNC fonctionne réellement mieux que les autres protocoles avec des débits extrêmement limités. (Pensez connexion par modem) Et cela fonctionne sur pratiquement n'importe quelle plate-forme.
  • Remote Desktop fonctionne bien sur les réseaux locaux et s'intègre de manière transparente à ActiveDirectory.
  • LogMeIn est idéal pour accéder à un PC Windows via Internet et prend également en charge l'intégration ActiveDirectory. Il possède des extensions ActiveX, Java, Firefox et même un client basé sur HTML. La version gratuite vous permet de gérer jusqu'à 5 PC. Les versions payées 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 divers niveaux de cryptage, de transferts de fichiers et de configuration à distance. Ce que vous devez assembler avec VNC et Remote Desktop.
  • X est l'équivalent mondial de Remote Desktop. Pour être juste, cela fait beaucoup plus longtemps que tous les autres protocoles. Cela fonctionne très bien sur un réseau local, mais est trop bavard sur Internet. Plusieurs projets ont tenté d'améliorer cela avec plus ou moins de succès. NoMachine NX, déjà mentionné, est l'un de ces projets.

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

Personnellement, j'essayerais chacun d'eux et choisirais celui qui répondait le mieux à vos besoins.

18
Kenneth Cochran

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

Quant à moi, j'utilise RDP et je pense que c'est vraiment la voie à suivre pour les systèmes Windows. D'autres ont eu de bons résultats avec TeamViewer ou Administrateur distant .

13
Joey

J'ai abandonné cela, maintenant je viens d'utiliser LogMeIn Free lorsque je suis sur Windows et ssh avec X forwarding sur linux.

2
Nifle

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

1
Eric

Les a tous testés récemment et Ammy Admin est le meilleur de la liste en général. Temviewer fonctionne également parfaitement et prend en charge Android et Mac, ce qui en fait une excellente option pour 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 très lent et je ne le recommanderais pas pour les jeux. Testé avec Guild Wars 2 et Diablo 3. Egalement testé Directx avec UltraVNC, TightVNC et RealVNC, mais je ne pouvais pas les faire fonctionner avec des jeux Directx. Une fenêtre noire apparaît une fois que vous entrez dans la partie. (L’ordinateur n’est pas bloqué mais affiche une fenêtre noire que vous pouvez réduire).

Team Viewer est très bien supporté et répond fréquemment aux emails.

La pire chose à 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 la licence Premium.

De l’autre côté, les VNC n’ont pas autant de soutien car ils sont gratuits.

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

1
xtrm

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

1
Dillie-O

Essayez d'utiliser ceci:

-snapfb

Au lieu d'interroger le framebuffer d'affichage X (fb) à la recherche de modifications, copiez périodiquement tout le fb d'affichage X dans la mémoire principale et examinez cette copie à la recherche de modifications. Dans certaines circonstances, cela améliorera la réponse interactive ou, du moins, rendra les choses plus fluides, mais dans d'autres (la plupart!), Cela rendra la réponse pire. Si la vidéo h/w fb est telle que la lecture de petites mosaïques est très lente, ce mode pourrait vous aider. Garder le "framerate" de la taille de l'écran x bpp ne peut pas être trop grand. Notez que ce mode gaspille beaucoup de ressources d'E/S mémoire (il effectue des copies en plein écran même si rien ne change). Cela peut être utile dans les applications de type capture vidéo, ou lorsque la déchirure de la fenêtre pose un problème.

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

0
Denis

J'avais un UX épouvantable à utiliser VNC sur un réseau local, mais lorsque j'ai essayé de me connecter par:

ssh -X -C 

et en utilisant

xtightvncviewer :$THEDISPLAY

les performances sont bien meilleures, comparées à d'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
0
Stanley Kaleta

J'ai trouvé le VNC gratuit extrêmement 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).

0
NoCarrier

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

0
Nippysaurus