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