2012-10-19 33 views
7

Amerika Birleşik Devletleri'nin doğu kıyısında, SSHing Batı sahillerinde bir sunucuya çalışıyorum.SSH sıkıştırması

X11 yönlendirme işlemini almayı başardım, böylece yardımcı olduğu belirli görevler için GUI uygulamalarını başlatabilirim. Ancak, tüm X11 iletimli uygulamalar için (özellikle !) Girdi (tuş vuruşları, fare tıklamaları, vb.) Arasında çok fazla gecikme ve bazen inanılmaz derecede sinir bozucu olmaktan çıkma olasılığına karşı tepki verdiğim zaman A yapmak, ama B olur çünkü gecikme çok büyüktür.

SSH sıkıştırması potansiyel bir suçlu mu? Ne tür bir sıkıştırma kullanmalıyım?

cevap

14

X11 grafikleri çok fazla bant genişliği alır. Uzak ana makineniz biraz uzaktaysa (yani LAN'da değil), dışa aktarılan X11 uygulamalarınızda muhtemelen durgunluk çekersiniz.

SSH sıkıştırması hakkında emin değilim. Performans, CPU performansı gibi diğer faktörlere bağlı olabilir. ssh adam sayfasından: Bunun yerine X11 yönlendirmesi kullanarak GUI ile etkileşime

  • daha vardır başka bir şey düşünün: İşte
      -C  Requests compression of all data (including stdin, stdout, 
          stderr, and data for forwarded X11 and TCP connections). The 
          compression algorithm is the same used by gzip(1), and the 
          “level” can be controlled by the CompressionLevel option for pro‐ 
          tocol version 1. Compression is desirable on modem lines and 
          other slow connections, but will only slow down things on fast 
          networks. The default value can be set on a host-by-host basis 
          in the configuration files; see the Compression option. 
    

    diğer bazı geçici çözümler vardır daha hızlı işler yapmak için kullanabilirsiniz VNC veya NX/FreeNX gibi optimizasyon/sıkıştırma.
  • GUI sürümü yerine emacs terminal sürümünü kullanın.
+0

Sorunumun yapılandırmayla ilgili olmadığını tahmin et - seçtiğim araçlar hakkında. VNC'nin daha önce çalışması için bazı sıkıntılarım vardı, ama belki başka bir çekime değdi. Teşekkürler! – Zearin

+3

Aslında iyi yazılmış X11 programları çok fazla bant genişliği tüketmiyor. X11 ile ilgili temel sorun, hemen hemen her işlem için tam senkronize bir gidiş gelişi gerçekleştiren kötü yazılı Xlib'dir, birçok işlem ise eşzamansız olarak gerçekleştirilebilir. Xcb gibi başka bir X11 protokolü arka uç kullanıyorsa ve istemci üzerindeki tüm GUI'yi rasterleştirmek gibi moronik şeyler yapmıyorsa ve ağ üzerinden çok kötü bir şey karıştırıyorsa, X11 üzerinden TCP üzerinden düşük bant genişliği, yüksek gecikmeli bağlantı aslında çok kullanışlıdır. Ancak birçok program kötü yazılmıştır. NX veya ssh ekli Xpra – datenwolf

+0

+ 1'i @datenwolf için önerir. Gecikme ve bant genişliğinden daha fazla gidiş dönüş sayısı hakkında daha fazla bilgi ve Xlib x11 protokolünün tam dupleks async doğasını kullanmada çok kötü bir iş yapıyor (protokolün kendisi gecikme için çok iyi bir şekilde optimize edilmiştir) –

1

özel olarak emacs belirtildiği gibi: (sadece karakter transferinin olduğu gibi, yeniden çizme değil ssh üzerinden çalışırken bu çok daha hızlı olabilir komut satırı seçeneği

-nw, --no-window-system 
      Tell Emacs not to create a graphical frame. If you use 
      this switch when invoking Emacs from an xterm(1) window, 
      display is done in that window. 

var X11'in üzerindeki tüm ekran).