Почему VNC в Windows работает так медленно?

в тесте, я мог бы поток полный фильм HD через нашу сеть с компьютера моего друга, без проблем.
Это так быстро, как мне хотелось бы.

но VNC мучительно медленный. Мы пробовали настоящий VNC и плотный VNC, я играл с Capture Method настройки, но ничего, кажется, сделать разницу; это просто так медленно.

есть ли у кого-нибудь советы по использованию VNC, о том, как улучшить скорость, или, возможно, какие-либо альтернативы?

это природа неспособности обратите внимание на недействительные части экрана достаточно быстро, или есть сетевая вещь, замедляющая его, возможно?

мы оба используем Windows 7.

мы должны иметь возможность просматривать и контролировать друг друга ПК без блокировка хоста, поэтому RDP не будет работать (если кто-то не знает иначе).

6
задан Scott
24.02.2023 1:12 Количество просмотров материала 3290
Распечатать страницу

8 ответов

VNC просто неэффективен. VNC работает в значительной степени, принимая серию скриншотов, сжимая их и бросая их по сети

на Windows, RDP даст вам лучшую производительность, но вам нужен профессионал или лучше на конце сервера/источника для правильного RDP я считаю.

wierdly удаленный помощник может работать лучше для ваших нужд - его RDP как с пользователем на терминале, так и с пользователем на удаленной системе, видя то же самое экран

EDIT: 4 года, я использую nomachine для аналогичных задач-будет работать через операционные системы, и делает несколько других полезных вещей.

19
отвечен Journeyman Geek 2023-02-25 09:00

VNC не сравним с потоковым видео. В потоковой передаче видео вы обычно передаете предварительно сжатый видеопоток по сети. Для HD потоков это часто кодируется H. 264. Если вы используете VNC, то ваш хост-компьютер должен делать снимки экрана и сжимать их перед отправкой в сеть. Здесь есть несколько ограничений:

  • сильное сжатие требует большой мощности процессора. Например, кодирование 90-минутного фильма в формате H. 264 в высоком качестве часто занимает более 4 часа времени сжатия на моем сервере Athlon X2 4450e. Обычно такое сильное сжатие не подходит для приложений реального времени, таких как дистанционное управление.
  • менее сильное сжатие, в свою очередь, потребует большей пропускной способности сети, что может стать проблемой для соединений с низкой пропускной способностью, таких как интернет.

Ну, есть несколько "трюков", которые применяются видеокодеки и утилиты дистанционного управления и совместного использования экрана. Прежде всего, они пытаются обнаружить экран изменяет и передает (сжатое) изображение только изменений. Это обычно сохраняет много bandwith и мощность обработки. Однако для полноэкранной передачи видео это не очень помогает, так как весь экран приходится переносить слишком часто. Как написано выше, текущие машины, вероятно, не смогут повторно кодировать содержимое экрана в Full-HD и передавать его в приложение дистанционного управления, так как вашему хосту придется декодировать видеоконтент, а затем повторно кодировать необработанные изображения раньше отправляю их в сеть. Некоторые старые двухъядерные компьютеры находятся даже на пределе при декодировании видеоконтента Full-HD. Даже не говоря о том, чтобы снова перекодировать изображения Full-HD на экране, прежде чем отправлять их клиенту VNC.

для того чтобы улучшить вашу скорость дистанционного управления VNC вы можете сделать следующее:

  • большинство VNC-серверов / клиентов поддерживают несколько алгоритмов сжатия. Некоторые из них оптимизированы для небольшой полосы пропускания, некоторые для хорошего качества изображения, а некоторые для низкой латентности. Это касается еще одного аспекта дистанционного управления. Поскольку сервис имеет интерактивное значение задержки (вы не хотите видеть реакцию на щелчок мыши сразу после 5 минут кодирования).
  • попробуйте уменьшить количество изменений экрана на вашем компьютере. Например, попробуйте отключить рабочий стол Windows эффектов, анимации и т. д. Это экономит полоса подключения к провайдеру, а только изменившиеся части экрана передаются по сети.
  • попробуйте отключить визуальные эффекты хозяин, как прозрачность. Прозрачные окна как перспектива/Win7 уменьшить "compressability" изображений. Одноцветные / "плоские" области гораздо более эффективны для сжатия, чем яркие цвета и причудливые детали. Таким образом, отключение прозрачности Aero и эффекты рабочего стола действительно ускорить опыт дистанционного управления. Большинство инструментов удаленного управления даже позволяют автоматически отключать такие эффекты при подключении (например, Microsoft RDP и некоторые реализации VNC).
  • же касается и фоновые картинки. Пытаться используя одноцветный фон вместо картинки HD.

еще одна проблема для VNC является то, что он должен обнаружить изменения на экране. Некоторые реализации VNC делают "немые" скриншоты и сравнивают их с предыдущим скриншотом для обнаружения изменений. Это уже отнимает много энергии. Некоторые более продвинутые реализации, работа со специальными драйверами дисплея (проверка диска), которые более эффективны, но требуют установки специальных драйверов.

конечно все это не поможет, если вы воспроизводите видео на хост-машине. В этом случае VNC придется перекодировать ~30 полноэкранных изображений в секунду и отправлять их по сети. На большинстве сжатий, которые могут быть выполнены в режиме реального времени сегодняшними процессорами, такой поток займет > 8 Мбит / с пропускной способности. Таким образом, это неподходящее для большинства интернет-соединений (особенно подумайте об асимметричных DSL-соединениях с обычно скоростью передачи менее 1 Мбит / с, и да, это скорость загрузки, которая имеет значение на хосте сторона.)

Это может быть подходящим для использования в локальной сети, но здесь вы должны, вероятно, больше думать о настройке медиа-сервер или поделиться своими СМИ с помощью DLNA/UPnP медиа-сервер (даже Win7 media player может сделать это). Затем используйте клиент DLNA для воспроизведения общих носителей.

13
отвечен SkyBeam 2023-02-25 11:17

самый быстрый вариант VNC, который я когда-либо использовал,UltraVNC С Драйвер Видео Зеркало установлен. RDP все еще заметно быстрее, но это не так плохо.

Я также слышал очень хорошие вещи о ZeroRemote, но никогда не проверял. Похоже, что TrueRemote является его правопреемником.

2
отвечен afrazier 2023-02-25 13:34

Если вы пытаетесь смотреть видео по локальной сети, Самое быстрое решение с точки зрения скорости рисования экрана, вероятно,Radmin.

1
отвечен Shinrai 2023-02-25 15:51

Как говорит @ Journeyman Geek, VNC неэффективен. Это по дизайну, так что VNC не должен "понимать", что удаленный клиент пытается отобразить.

RDP на самом деле делает, так что он может принимать ярлыки и визуализировать изображения быстрее. RDP говорит другой конец, например, "клиент открыл окно в этом месте" вместо отправки растровых данных, представляющих изменение экрана.

есть "терминальный сервер" хаки там, что добавит возможность RDP к версии Windows, которые не имеют их, но я официально не рекомендую их, и вы используете их на свой страх и риск. Тем не менее, я думаю, что даже "стартовые" версии Windows 7 поставляются с "удаленной помощью" (msra.exe), который вы можете попробовать использовать.

вещей, которые вы можете сделать, однако, чтобы улучшить производительность ВЧС, включают снижения дисплей глубина: 8 бит, уменьшение разрешения экрана клиента, и через клиентское кэширование. Это означает, что VNC должен отправлять меньше данных по проводу и вы ощутите лучшую производительность (но это не будет выглядеть красиво).

1
отвечен LawrenceC 2023-02-25 18:08

вы также можете попробовать TeamViewer, он бесплатный для некоммерческого использования и был довольно быстрым для меня. Я не проверял на HD-видео.

1
отвечен wizzard0 2023-02-25 20:25

Если вы ищете производительность, вам не нужно использовать VNC, попробуйте что-то вроде LogMeIn. Это бесплатно и работает хорошо.

0
отвечен Jeff F. 2023-02-25 22:42

для меня, даже через интернет (с пингом > 50 мс и достойные bandwithd > 1Мбит/с) на меня очень хорошее поведение на диска. Магия приходит с изменением настроек подключения.

после запуска вьювера, перейдите в раздел "параметры подключения", отключите" автоматический выбор лучших настроек", включите" Tight "и понизьте" Jpeg " до более низкого качества, если это необходимо (2-4 хорошо работает).

Это единственный известный мне способ получить полные цвета с достойной производительностью. Вы получите несколько кадров в секунду после этого достаточно получить быстрое слайд-шоу на полноэкранном фильме (достаточно для всего, что я делаю, включая удаленную разработку, для просмотра реального фильма слишком медленно, а также нет звука).

кроме того, в сервера "свойства", это помогает иметь (если не через зеркало водителя, что значительно повышает производительность), чтобы "опрос на весь экран", "окно опрос", "опрос окна под курсором", "системы HookDll", "низкая точность" включен. В принципе, почти все слева.

0
отвечен Andreas Reiff 2023-02-26 00:59

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх