Як пришвидшити X через SSH на повільному підключенні до мережі?


32

Чи є якісь конкретні рекомендації щодо прискорення роботи X-програм через ssh на повільному мережевому з'єднанні? У цьому конкретному випадку я отримую доступ до сервера, розташованого на західному узбережжі, від ноутбука на східному узбережжі, а також через не надто швидке з'єднання DSL.

Будь-які налаштування для ssh? Якісь поради взагалі?

Відповіді:


15

Напевно, ви побачите найбільш основні переваги, скориставшись компресією за допомогою -Cпараметра. Ви також можете ввімкнути його у своєму sshd_config, скориставшись наступним рядком:

Compression yes

1
Якщо час у зворотній зв'язок великий, стискання не дуже допомагає. Стандартний протокол X з безліччю повідомлень пінг-понгу не підходить для маршрутів із помітною RTT.
Лінулін

Ось тільки природа протоколу, з яким ми маємо справу. Запитуючий заявив, що він не може змінити працюючий SSH-сервер, тому це найкращий варіант клієнтової системи, припускаючи, що сервер нічого не може зробити.
Кріс Даун

6
Як повідомляється, на деяких сайтах використовується простий і швидкий чіппер, наприклад, blowfish: ssh -X -C -c blowfish-cbc,arcfour$ hostname
математика

Існує подібне запитання, рекомендуючи додаткові варіанти: superuser.com/questions/400136/speeding-up-remote-x-sesions
математика

(старе запитання, але воно позначене як "посилання" в іншому запитанні, яке закрилося як дублікат цього) Причиною, через яку запускаються програми X через ssh-з'єднання (або фактично в будь-якому віддаленому місці), є сам X-протокол . Я відповів на цю відповідь, оскільки точна настройка налаштувань ssh на практиці не допоможе. Вам потрібно скористатися інструментом "стиснення протоколу", щоб зробити програму зручною, найкращим варіантом X2GO чи іншим інструментом на основі NX. Дивіться, наприклад, unix.stackexchange.com/a/187420/104833 .
Аріель

15

Якщо у вас є можливість, спробуйте протестувати NX (хоча це болісно), оскільки він буде відчувати себе набагато швидше, ніж тунелювання X над ssh ...


3
NX за замовчуванням працює і над ssh тунелем. Тож вам не доведеться турбуватися про відкриття будь-яких інших портів.
wm_eddie

NX насправді супер швидкий. Краще, ніж VNC, краще, ніж компресія над X. Працює солодко.
vivekian2

Я б фактично позначив це правильною відповіддю для того, хто може запустити NX на стороні сервера. Не всі функції інтерфейсу доступні (принаймні на гномі), але швидкість того варта.
vivekian2

Ніколи не пробував NX, але VNC є хорошою альтернативою SSH -X
baptx

Це має бути прийнятою відповіддю, немає сенсу намагатися прискорити налаштування параметрів ssh (d). Найкраща альтернатива самому NX (який досить болісно конфігурувати) - це X2GO, також заснована на NX-бібліотеках, але простіше запустити роботу.
Аріель

8

Минув час, як я спробував це, але DXPC (Differential X Protocol Compression) використовується для того, щоб X11 над комутованим ППП працював помітно швидше. Можливо, параметр стиснення SSH буде працювати для вас краще, але це стиснення характерне для X11 і просто може працювати швидше.


4

Можливо, варто вивчити високу продуктивність. З міркувань безпеки opensh у багатьох місцях використовує статичні буфери. Проект HPH-SSH повторно реалізує його біти для використання динамічних буферів. Також здається, що вони впровадили багатопотокові шифри в останніх редакціях.

https://www.psc.edu/hpn-ssh


Чи потрібні це зміни на сервері ssh, який працює на стороні сервера? Можливо, це те, що я не можу контролювати.
vivekian2

1
Ні, це не так. Зі сторінки:> Ми створили патч, який видалить вузькі місця в OpenSSH і повністю взаємодіє з іншими серверами та клієнтами. Крім того, клієнти HPN зможуть швидше завантажуватись із серверів, що не входять у HPN
jmtd

1

X2Go вирішить вашу проблему. Я звертаюся до малинового пі в Аргентині із Силіконової долини. Є невелика затримка, але працювати так само зручно, як і мій настільний комп’ютер.

VNC - ваш другий вибір.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.