Может кто-нибудь объяснить, как работает NX?
Я не могу найти много о том, как на самом деле работает протокол NX. Я слышал, что это что-то делает с отправкой команд X11. Но значит ли это, что прослушивающим клиентам нужен x-сервер для запуска реальных команд и их отображения?
3 ответа
Очень упрощенный ответ: это больше похоже на VNC, где в системе, работающей на рабочем столе, работает компонент "сервер", а в системе, где находится пользователь, - компонент "клиент".
И в случае VNC, и в NX компонент "сервер" имеет X-подобный дисплей, к которому локальные программы подключаются и обрабатывают, как если бы это был X-дисплей.
Затем пользователь запускает "клиентскую" программу, которая подключается к серверу, и сервер использует свой протокол для отправки дисплея обратно клиенту и получения ввода от сервера.
Как и VNC, NX можно настроить так, чтобы клиент мог отключиться от сеанса NX и подключиться позже (и из других мест).
У NX есть опции, которые могут сделать его более отзывчивым по линиям, которые работают медленнее и имеют большую задержку, они могут быть выбраны клиентом до установления соединений.
По моему опыту, NX немного более гибок, чем сеансы VNC; однако я обнаружил, что действительно старые приложения X по какой-то причине пострадают; У меня есть программа управления резервным копированием, которая не отображает определенную информацию в NX, как в VNC. Я считаю, что это как-то связано с установкой шрифтов на стороне клиента. Отзывчивость зависит от того, что вы делаете, по сравнению с VNC, так как нужно сказать, что никто не будет транслировать видео через него. VNC более распространен, и больше людей имеют опыт работы с ним. Единственная особенность, которая может заинтересовать VNC, - это возможность "делиться рабочим столом" с ней ( например), я не верю, что NX сделает это.
Лично я внедряю NX в ситуациях, когда люди собираются использовать систему для высоконадежных приложений (инструменты CAD и т. П.) И имеют свои собственные локальные рабочие столы (которые в наши дни обычно являются окнами), и использую VNC в ситуациях, когда у людей есть рабочие столы linux и они хотят делиться ими.
Вы можете думать об этом как о системе отображения X, которая высоко оптимизирована для работы в сетях. Я мог бы перечислить более подробную информацию, но, честно говоря, в статье из NX-Википедии есть масса отличной информации, поэтому я предлагаю вам прочитать там.
Чтобы ответить на ваш вопрос, нет, клиентам не нужно запускать полный X-сервер. Однако им нужно будет запустить клиент NX.