Chaque fois que je lance à distance de grandes interfaces graphiques avec un transfert X11, même avec le commutateur -C, l'expérience est très insensible. Ma question est la suivante: qu'est-ce qui se passe au niveau concept / protocole?
Avec ma connexion à 25 Mbits, je peux diffuser de la vidéo HD sur mon ordinateur sans aucun problème. D'autre part, le manque de réactivité des interfaces utilisateur graphiques lancées à distance avec transfert X11 se produit même sur un réseau local à 100 mbits, où la latence devrait être proche de zéro.
Je comprends que, contrairement au streaming vidéo, la latence sera au mieux doublée (car l’entrée doit être envoyée à la machine distante et c’est seulement après que l’application peut répondre), mais en interne, existe-t-il d’autres facteurs qui augmentent la latence même plus loin?
Deuxièmement, la bande passante. Pourquoi en mange-t-il tant? En ce qui concerne les formats d'image et de vidéo, de nombreuses méthodes sont utilisées pour réduire considérablement la taille.
Dans le cas de .bmp vs .png, par exemple, une grande image en carré noir prendra beaucoup moins en représentation .png car les informations ne sont pas stockées pour chaque pixel, mais de manière très variable, à ma connaissance.
Dans le cas de vidéos, beaucoup d'informations peuvent être sauvegardées en envoyant la différence entre les images plutôt que les images entières.
Je sais que cela est très simplifié, mais X11 n’utilise-t-il pas ces méthodes? Est-ce que cela se comporte dans un principe bitmap-ish ou non différentiel à un certain niveau? Et si non, pourquoi utilise-t-il autant de bande passante?
ssh -Y -c blowfish
pour minimiser les frais généraux tout en chiffrant. Si vous avez le contrôle total des deux bouts, apprenez à ssh à utiliser le chiffrement "aucun" pour obtenir une vitesse de transfert maximale sur la connexion.