Intereting Posts
Связь между процессами запуска оболочки и средой родительского процесса Найти строку в одном разделе файла с несколькими разделами Разделение ядра: когда патч терпит неудачу по какой-то причине, кроме оригинальной цели бисекции, что вы делаете? Добавить переменную строку к себе Есть ли стандарт, как команды, запускающие другие команды, обрабатывают конструкции оболочки как перенаправления? Как сделать несколько профилей «startx»? Взяв 30 секунд до загрузки после обновления с jessie, чтобы растянуть Поиск слова из определенного файла словаря в sdcv (консольная версия словаря Stardict) Связывание проблем с libjpeg Как загружать и загружать ISO по GRUB2 Kali Linux зависает при загрузке после жесткого сброса Что означают \ t и \ a в сценарии оболочки? Использование ip addr вместо ifconfig отчетов «RTNETLINK ответы: файл существует» в Debian Почему я не могу установить командира полуночи на Debian? Параллельное выполнение сценария sh на нескольких серверах

Почему клиенты RDP в Linux намного медленнее, чем в Windows?

У меня есть удаленный ПК Windows 8.1, к которому я подключаюсь, используя RDP от клиентов Windows 7 и Linux. Я заметил, что производительность, например, при прокрутке намного лучше в Windows, чем в любом дистрибутиве Linux. Я использую rdesktop, Remmina, GNOME-RDP, везде, где обновление экрана происходит медленно и прерывисто, например VNC. Но RDP не работает, как VNC , или делает это? Почему это так и что является самым быстрым клиентом RDP для Linux? Возможно, клиент для подключения к удаленному рабочему столу под Wine?

  1. Существует несколько версий протокола RDP:

    • оригинал 4.0, который является клоном протокола ITU-T T.128
    • 5.0 – который все еще используется rdesktop (и даже не полностью)
    • 5.1, 5.2, 6.0, 6.1, 7.0, 8.1 и 8.1

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

  1. Как я уже писал выше, rdesktop по-прежнему реализует только подмножество протокола RDP 5.0 (версия, используемая в Windows 2000). Эта версия менее оптимизирована, чем минимум 6.0 (выпущена в Windows Vista), что значительно улучшило производительность.

  2. Кроме того, вся оконная система X11, используемая в Linux, представляет собой группу пользовательских приложений, а Microsoft Windows обрабатывает графические события (например, прокрутку экрана) непосредственно в своем ядре.

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

А это также влияет на производительность каждой реализации RDP.

Как видно из ответа gwilli, RDP не является RDP, потому что существует много разных версий протокола со многими расширениями, а клиент и сервер ведут переговоры о версии протокола, которую они оба понимают.

По сути, две версии Windows, по-видимому, соглашаются на новую и более эффективную версию протокола.

Я не могу сказать ничего квалифицированного относительно производительности Linux RDP-клиента, потому что я не знаю каких-либо тестов относительно реализации RDP с открытым исходным кодом. Если вы хотите сравнить клиентов, вы должны посмотреть, какие библиотеки используются клиентами, а не только клиентом. Это сделает ваш поиск более эффективным.