Uzak X oturumlarını hızlandırma


16

OS X 10.7.3'ten SSH üzerinden bağlandığım Ubuntu 11.10 Sunucusunu çalıştıran uzak bir makinem var:

Remote.example.com adresini barındırın
 ForwardX11 evet
 İleriX11Güvenli evet

Bazen orada bir GUI uygulaması başlatmak istiyorum (en önemlisi gitk). Ancak kullanıcı arayüzü oldukça yavaş. Hem uzak makinem hem de kendi Mac'im iyi bir internet bağlantısına sahip. Aralarında ping yaklaşık 55 ms'dir ve paket kaybı yoktur. İşleri hızlandırmak için yapabileceğim bir şey var mı?

Başka bir uzak masaüstü çözümü kurmak bir seçenektir, ancak bu uygulamaya çok sık ihtiyaç duymadığım için bundan kaçınmak istiyorum.


uygulamayı çağırırken sıkıştırmayı etkinleştirmeyi denediniz mi?
Journeyman Geek

1
Teşekkürler. Benim .ssh/configalıntıdan da görebileceğiniz gibi hayır. Ben ekledik Compression yesve CompressionLevel 9konak config. Şimdi biraz daha hızlı görünüyor, ama yine de rahat kullanım için yeterli değil. Yapabileceğim başka bir şey var mı?
Alexander Gladysh

@AlexanderGladysh Yukarı akış hızınız nedir?
EKW

scpo uzak makineye yükleme veya indirme yaparken , İSS'imin reklamını yaptığı sayıdır.
Alexander Gladysh

1
Mümkünse, sshfs veya başka bir ağ dosya sistemi kullanmak ve uygulamanızı yerel olarak çalıştırmak muhtemelen daha hızlı olacaktır (git repo'nuz gerçekten büyük değilse).
Mart'ta Eroen

Yanıtlar:


15

X11 iletimi için en iyi SSH seçenekleri makalesinde , daha iyi performans gösteren varsayılan AES şifresi, yaylı ve balon balığı şifreleri yerine kullanılması önerilir.

Bu nedenle:

ssh -c arcfour,blowfish-cbc -XC host.com

Seb'in teknik notları (site aşağıdaysa arşivlenmiş bir sürümü varsa ) şunu tavsiye eder:

ssh -Y -C -o CompressionLevel=9 -c arcfour,blowfish-cbc user@hostname

Bu, sıkıştırma ile önceden gözlemlediğiniz hız kazanımlarını biraz daha geliştirmeye yardımcı olabilir.


1
AES, arcfour ve blowflish sıkıştırma değildir; onlar kriptografidir. AES'den uzaklaşarak bağlantının güvenliğini azalttığınızı unutmayın; bazı durumlarda bu mümkün olmayabilir. Buradaki -Cseçenek önemlidir, çünkü bu sıkıştırmadır. Sıkıştırma seviyesini ayarlayarak dikkat edin, CPU üzerinde büyük bir etkisi olabileceğinden ölçtüğünüzden emin olun ...
Tamara Wijsman

Ayrıca, bazı CPU'lar AES şifrelemesi için donanım hızlandırmaya sahiptir.
soymak

6

Başka bir uzak masaüstü çözümü kurmak istemediğinizi, ancak performansı önemsediğinizi belirttiniz. X11 çok verimli bir protokol değildir, bu nedenle daha modern bir protokol kullanmadığınız sürece sadece küçük iyileştirmeler bekleyebilirsiniz.

NX (NoMachine) muhtemelen en iyi seçimdir. Hala ssh kullanıyor, bu yüzden güvenlik duvarı ayarlarında vb. Değişiklik gerektirebilecek diğer masaüstü protokollerine kıyasla çok fazla çaba sarf etmemeliyiz. Fedora için NX paketleri var, bu yüzden Ubuntu için de mevcut olduklarını varsayıyorum.

Soru sormaya zaman ayıracak performansa önem veriyorsanız, umarım NX öğrenmek için birkaç dakika daha harcayabilirsiniz.

DÜZENLEME: Neden ssh üzerinde X11 asla hızlı olmayacak açıklamak için: X protokolü, çizgiler ve daireler gibi düşük düzeyli çizim ve "fare 3 piksel sola hareket etti" gibi düşük düzeyli olayları ele alır. GTK ve Qt gibi modern GUI araç setleri çizgi çizmez, görüntü çizer. X11 SSH'yi geçtiğinde, sürekli olarak görüntü verileri ve düşük düzey fare olayları göndermelidir. NX, VNC veya Uzak Masaüstü gibi üst düzey bir protokol, araç setlerinin nasıl çalıştığının farkında olarak bant genişliğini ve gecikmeyi azaltabilir. Örneğin, fare olayları gönderme ihtiyacını önleyebilir, pencereler taşınırken binlerce yeniden çizmeyi önleyebilir ve ekranın menüler gibi alanlarını önbelleğe alabilirler. Performans küçük bir endişe bile olsa, ham X11 her zaman yanlış seçimdir. Neyse ki, yapılandırılması ve kullanımı kolay çok sayıda hızlı alternatif var.


Uzak masaüstünü kullanmak istemediğimden değil, ilk önce X11 bağlantımı optimize etmeye çalışmak istiyorum :-) Teşekkürler, NX'e bakacağım.
Alexander Gladysh
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.