Прокрутка браузера через RDP прерывистая. Другие приложения ведут себя нормально. Зачем?

21275
Ha Ne

У меня есть Windows XP с пакетом обновления 3 (SP3) и машины с Windows 7, действующие как сервер в моей локальной сети. (это всего лишь 100 Мбит локальной сети, но нет глобальной сети).

Клиент Linux с последней скомпилированной последней версией FreeRDP 1.x.

Здесь проблема. Когда вы, скажем, открываете большой документ MS Office (Excel, Word, что угодно), вы можете прокручивать его нормально, и все работает очень плавно!

Но в браузерах это немного отрывисто. Так что я имею в виду, что это не проблема подключения.

Почему это происходит? Кстати, я попытался создать простой HTML-файл с большим количеством текста, и он все еще отрывистый. Так что речь идет не о «тяжелых» HTML-страницах с изображениями.

Также я пытался использовать разрешение 800х600 без посторонней помощи. Я что-то упустил.

Я пытался использовать много настроек. Я пытался использовать 16-битные, 24-битные, включение / отключение тем и т. Д.

Любая идея?

PS: На мощной машине с тем же клиентом (FreeRDP) все работает очень гладко.

5
Извините, вопрос не точный. Я просто думаю, что мне чего-то не хватает Ha Ne 12 лет назад 0
Имеет ли значение, какой браузер вы используете? Мне интересно, может ли быть проблема с каким-то аппаратным ускорением рендеринга. Der Hochstapler 12 лет назад 0
@OliverSalzburg нет, я проверял во всех браузерах. Chrome, IE, Firefox - без разницы. В Chrome, ну, наверное, немного быстрее. Ha Ne 12 лет назад 0
Я думаю, что проблема со сглаживанием шрифта, попробуйте включить / отключить их. Это могло бы помочь. Как использовать xfreerdp с флагом "-x 80" bakytn 12 лет назад 0
Уточните, что такое «мощная машина» в «PS: на мощной машине с тем же клиентом (FreeRDP) все работает очень гладко». Чем машина отличается? Если на этой другой машине вы не испытываете рывков, то решение есть. LawrenceC 12 лет назад 1
@ultrasawblade это не очень мощный. просто настоящий компьютер с видео Intel HD 3000, Intel Core i7, 8 Гб Ram. Но моя проблемная машина - 500 МГц с 1 Гб оперативной памяти и графическим процессором VIA Chrome 9 HC3 Ha Ne 12 лет назад 0

4 ответа на вопрос

5
Gurken Papst

Your problem is likely caused by the use of hardware acceleration in modern browsers. While this is usually faster on local systems it can become really slow when used on remote sessions, as there are no high level drawing routines, that could be captured by the server component of the remote software. So the remote software must fall back to sending bitmaps instead of GDI drawing commands.

Disable hardware acceleration in your browsers and you should be fine.

  • In Firefox
    1. go to Options->Advanced->General
    2. untick Use hardware acceleration when available
  • In Internet Explorer
    1. go to Internet Options->Advanced
    2. tick Use software rendering instead of GPU rendering
4
Shiki

Что я использовал для своих хостов Windows 7 Professional и Ultimate (я использовал Windows 7 в качестве RDP-клиента, но они должны работать):

Изменение алгоритма сжатия

Введите в строке поиска в меню Пуск: gpedit.msc
Computer Configuration> Administrative Templates> Windows Components> Remote Desktop Services> Remote Desktop Session Host>Remote Session Environment

Источник

Отключение автонастройки TCP (для хоста Windows Vista +)

  1. Откройте cmd.exeкак администратор.
  2. Введите: netsh interface tcp set global autotuning=disabled
  3. Чтобы проверить, сработало ли это: netsh interface tcp show global

Чтобы снова включить его: netsh interface tcp set global autotuning=normal

Источник

Также ... если у вас ничего не получится: вы можете попробовать TeamViewer с DirectIn (вы можете найти это в расширенных настройках сервера) или UltraVNC с его MirrorDriver. Оба работают очень хорошо. UltraVNC «более свободен». Но немного хлопот, чтобы настроить его. :) Shiki 12 лет назад 0
Спасибо, но это не сработало. Ha Ne 12 лет назад 0
Тогда извини. :) Надеюсь, у вас все получится. Shiki 12 лет назад 0
3
harrymc

В качестве первого шага вы должны загрузить и установить последние версии драйверов для плат сетевого интерфейса с сайта производителя по обе стороны соединения.

Ваш клиент для Linux, и, очевидно, существуют проблемы с производительностью клиента FreeRDP. Вы всегда можете попробовать старый и настоящий rdesktop, чтобы увидеть, может ли он работать лучше.

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

Вы также можете переключиться на один из вариантов VNC, хотя это может потребовать некоторой настройки. См. Thread1 и thread2 для совета по ускорению этого.

TeamViewer - еще одна отличная возможность.

Для клиента Windows статья Top RDP Enhancement Tweak - MinSendInterval предлагает в разделе реестра HKEY_CURRENT_USER\SOFTWARE\Microsoft\Terminal Server Clientсоздать новый DWORD с именем Min Send Interval(с пробелами) и установить его значение равным 10.

Мой клиент FreeRDP. Как вы думаете, я мог бы как-то использовать эту настройку со стороны сервера? Ha Ne 12 лет назад 0
@HaNe Я так не думаю, так как клиент "решает", как часто он отправляет события мыши. Итак, вы можете либо взломать код FreeRDP, либо попросить разработчиков добавить эту опцию. bakytn 12 лет назад 0
Извините, мой ответ был ориентирован на клиента Windows. Теперь я добавил больше информации для Linux. harrymc 12 лет назад 0
@HaNe: Спасибо за щедрость. Это помогло бы другим, если бы вы указали, какое решение сработало для вас, а также приняли мой ответ. harrymc 12 лет назад 0
2
Nye

I believe the reason browsers are different from eg MS Office or applications using native widgets is that the toolkit sends higher-level events over RDP. For example, if you scroll, the toolkit sends a scrolling event telling the client to move one rectangle, and only sends the new content that the client does not have.

Browsers on the other hand do their rendering to a bitmap in order to get precise control over the output, so every time there is any update the entire rectangle needs to be re-sent. It is compressed, so non-image-heavy pages will be better, but it's still far less efficient.

You can see other evidence of this by looking at the fonts: if you have anti-aliasing enabled on your server, but disabled in your RDP client options, any application which still shows anti-aliased text is likely to have this problem since that implies it's doing its own rendering.

I only have a reference for this WRT Chrome: http://code.google.com/p/chromium/issues/detail?id=805#c1, but I believe it to be true of others; maybe somebody else can confirm/deny?

(Notably, Opera appears to honour the RDP client's anti-aliasing option and does indeed seem to be faster over RDP in my completely unscientific testing, so perhaps is not doing its own rendering to a backing bitmap. On the other hand it's still a lot slower than scrolling in Thunderbird, for example, so I'm not sure there.)

Похожие вопросы