RemoteFX. Часть 3 — Remote Desktop Session Host (RDSH, Terminal Services)


Говоря об архитектуре RemoteFX, мы не могли не упомянуть о том, как эта новая технология встраивается в существующий протокол «Удалённого рабочего стола» (Remote Desktop Protocol, RDP). После осознания этого факта сам собой напрашивается вопрос — а можно ли получить преимущества RemoteFX в сценарии не виртуальных рабочих мест (VDI), а традиционного сервера «Удалённых рабочих столов» (Remote Desktop Session Host, RDSH — он же ранее известный под именем Terminal Server)? Ответ, как это часто бывает в таких случаях, неоднозначен: и да, и нет.

Самая «интересная» часть RemoteFX — отрисовка изображений с использованием видеокарты физического сервера (Render) и их последующий захват (Capture) — работать, увы, не будет. Почему? Потому что для этого потребовалась бы виртуальная синтетическая видеокарта, а также компонент RCC — которые, очевидно, работают только с Hyper-V. Более того, один экземлпяр RCC способен обслуживать строго одну виртуальную видеокарту, а значит — одну пользователькую сессию. Всё это совершенно не соответствует парадигме сервера Удалённых рабочих столов (RDSH), где в пределах одной ОС (а значит — одного комплекта оборудования) выполняется сразу множество пользовательских сессий.

Что это значит? В сценарии RDSH вы не получите никаких новых возможностей вроде высокопроизводительной графики, поддержки DirectX или потокового видео. Это отнюдь не значит, что работая с сервером Удалённых рабочих столов пользователь ни в коем случае не сможет, например, насладиться Windows Aero. Просто для поддержки этих возможностей они должны быть реализованы на стороне клиента — как и раньше, при использовании RDP версии 7.0 и более ранних.

Однако, что же остаётся? Третья составляющая RemoteFX — а именно, сжатие. Именно этот компонент как раз доступен при работе сервера Удалённых рабочих столов под управлением Windows Server 2008 R2 Service Pack 1. Это распространятеся как на чисто программную реализацию, выполняющуюся полностью на CPU (помните, что в сценарии RDSH видеокарта сервера не используется!), так и на аппаратную — с использованием чипа ASIC.

Из этого следуют достаточно интересные выводы. Во-первых, если для реализации RemoteFX в сценарии VDI вам обязательно необходимо новейшее оборудование — процессор с поддержкой SLAT и мощная профессиональная видеокарта — то в случае RDSH это совершенно не так. Всё, что вам потребуется — это поддержка процессором набора инструкций Streaming SIMD Extensions 2 (SSE2). А ведь это — уже вполне щадящее требование. Абсолютное большинство серверов, которые находятся сейчас в эксплуатации, удовлетворяют этому условию. В результате вы почти наверняка сможете воспользоваться сжатием RemoteFX на своём существующем сервере Удалённых рабочих столов.

Во-вторых, в результате пользователи смогут получить то же качество изображения, что и раньше, — но это будет требовать меньшей полосы пропускания. В-третьих, для того, чтобы снять нагрузку по сжатию с процессора и увеличить масштабируемость, вы по-прежнему можете воспользоваться аппаратной реализацией кодека RemoteFX и приобрести для сервера Удалённых рабочих столов плату ASIC. Ну и в-четвёртых, требования к клиентским рабочим местам остаются такими же, как и в случае использования RemoteFX в сценарии VDI — и об этом мы подробно поговорим завтра.

Архитектурно RemoteFX в сценарии с Remote Desktop Session Host (без Hyper-V) выглядит следующим образом. Ещё раз обращаю ваше внимание на то, что компоненту RCC в этом сценарии места не нашлось.

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

Comments (24)

  1. Alex A says:

    Для RDVH сценария нужна DX 10 совместимая видеокарта - список "поддерживаемых" был в соотвтетсвующей статье, но сойдет любая. Процессор с SLAT. Можно закупать сейчас.

    Для RDSH видеокарта не нужна.

  2. Alex A says:

    Это нормально. Через 180 дней вы не сможете обращаться к вашему серверу по RDP обычными (не административными) сессиями до выдачи лицензии.

    Если вы собираетесь работать не более чем двумя сессиями, имея права администратора на сервере, проблем не будет.

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

  3. Alex A says:

    Да, именно так.

    С пониманием, что AutoDesk не *поддерживает* использование своих продуктов на ОС Windows Server. И использование AutoCAD по терминалу нарушит лицензионное соглашение.

    Корректный сценарий это ферма клиентских ОС с AutoCAD. При этом будет использоваться видеокарта сервера.

  4. Alex A says:

    Максим, у RemoteFX есть две ипостаси - VDI сценарии (виртуальные машины Windows 7 Enterprise/Ultimate на хосте Hyper-V), требующий именно клиентскую ОС в ВМ и видеокарту DX10. И сценарий RDSH - не важно в ВМ установлен Server R2 SP1 или на хосте. Ваш случай - сервер в ВМ.

    В этом случае поддержка отрисовки видео отдаётся на сторону клиента. Вот только до выхода Release Candidate я не готов сказать, будет ли Win7 PRO поддерживаемым клиентом для вашего результата, или таки нужен ENT/ULT.

    Возможно, Артём добавит мыслей.

  5. Anonymous says:

    В том то и дело, Артем, что при включении компрессии Аеро пропадает. А если компрессию RemoteFX выключить, то Аеро работает. В чем дело? Помогите пожалуйста.

  6. Alex A says:

    Нет.

    В RDSH при компрессии у вас никогда не будет AERO/DWM. Зато будет в RDVH (VDI) сценарии.

    Вот ответ разработчика:

    "Unfortunately no.  Using the asic for encoding on the server side or decoding on the client side will give you the benefit of offloading some of the processing from the CPU/GPU for rdvh, CPU for rdsh and allow a very small SOC devices (ultras thin clients) to render the full high fidelity experience using the asic decoder.  In order to get aero in rdsh with remotefx ideally you would need a 3d capable display adaptor.  You get the compression benefits and the rich experience for rich graphical apps, video...just not dwm/aero on rdsh."

  7. Anonymous says:

    Понятно. Спасибо Алексей. Насколько я понял, если в будущем использовать вместо полноценного десктопа - ультратонкий клиент с аппаратным RemoteFX декодером то Аеро будет?

  8. Pronichkin says:

    Главная мысль заключается вот в чём. ДО включения сжатия RemoteFX у вас Aero работало? Если нет — то нужно пока отключить RemoteFX и добиться того, чтобы Aero заработало БЕЗ него. Потому что в сценарии RDSH вам RemoteFX не поможет сделать Aero там, где его не было без RemoteFX (в статье подробно описано, почему это так).

    Если без RemoteFX оно работает, тогда да, налицо определённая несовместимость сжатия RemoteFX с Aero. Я сам в это слабо верю, но если это действительно так — пишите подробнее, будем решать.

  9. Pronichkin says:

    > 32 бита на (!!!) виртуальном RDSH я никак не могу получить - максимум 16.

    Простите, я могу. Что я делаю не так?

    Значения свойства «ColorDepth»
    описаны на MSDN
    . К сожалению, значения «5» в таблице нету. Но из остальных приведённых вариантов (1...4) становится понятно, что «5» — это и есть 32 bits per pixel.

    > было что-то подобное в новостях про W2K8 еще - Microsoft буквально в последнем RC отрисовку графики перенесла с сервера на клиент.

    Хм. Можно чуть-чуть подробнее об этом? Насколько я знаю, в RDP всегда отрисовкой графики по возможности занимался клиент (исключая случаи, когда он этого сделать оказывался не в состоянии).

    > Я так понимаю, чтобы крутить AutoCAD в терминале мне все равно понадобится мощный видео адаптер у клиента ?

    Ну если вы желаете делать это не взирая на отсутствие поддержки производителя, то вы
    можете делать это хоть сегодня. Просто надо понимать, что — да — вся отрисовка будет вестись на стороне клиента, и мощная видеокарта понадобится именно ему. А серверу понадобится широкий канал. Подробнее о том, почему это так, написано

    в нашей сегодняшней заметке
    . От RemoteFX вы в этом ситуации тоже можете
    выиграть — но только в части сжатия данных.

  10. Alex A says:

    Увы, - вот ответ от разработчиков:

    "No problem Aero is not supported when using RemoteFX compression on RDSH:

    If a user connects from rich client and enables Aero glass we will fall back to WS2008 R2 behavior.

    Why? When RemoteFX codec is used in RDSH, the display driver is RDP’s XPDM driver which does not support 3D rendering. One is able to experience Aero in RDVH since we use the GPU rendering and we use a virtual WDDM driver."

  11. Anonymous says:

    Вопрос в том, а можно ли будет установить GPU скажем в сервер HP Proliant ML150G6 или в DL380G6 (сервера которые эксплуатируются уже сейчас) после официального релиза SP1. Или нужно ждать специальных RemoteFX-capable серверов (которые появятся также после официального релиза)

  12. Anonymous says:

    "Если вы собираетесь работать не более чем двумя сессиями, имея права администратора на сервере, проблем не будет."

    Еще раз спасибо!

    P.S. Есть ли цифры степени сжатия потока RFX? Т.е. есть ли смысл его использовать? Теоретически - да, а практически - какова величина сжатия потока?

  13. Anonymous says:

    "Как появятся документы с цифрами, я напишу отдельную заметку."

    Будем ждать.

  14. Alex A says:

    У меня таких цифр пока что нет

    Как появятся документы с цифрами, я напишу отдельную заметку.

  15. Alex A says:

    AutoCAD *не поддерживается* на Windows Server. Так что ваш путь - это Hyper-V виртуальные машины с Windows 7 Enterprise и RDVH на хосте. Обращаться к виртуальным Windows7+AutoCAD вы будете по RDP 7.1. При этом будет использоваться  видеокарта сервера благодаря RemoteFX.

  16. Alex A says:

    Нет, не доступна.

    RemoteFX - часть терминального сервера. На обычном RemoteDesktop работать не будет.

  17. Pronichkin says:

    Стас, 32 бита вы можете получить и сейчас, если у вас широкий канал и мощное оборудование на клиентских местах 🙂

    Если вы говорите об отрисовке графики с помощью RemoteFX на стороне сервера — то нет, в SP1 этого для RDSH не будет. Думаю, если запрос со стороны заказчиков будет силён — эта возможность появится в одной из будущих версий Windows Server. На сегодня этой возможности нет по архитектурным причинам, изложенным в статье. Если я что-то объяснил недостаточно понятно — спрашивайте, постараюсь расписать подробнее.

  18. Anonymous says:

    Столкнулся с проблемой. Установил SP1 на сервер терминалов WS08R2(виртуализован под Hyper-V Server 2008 R2). Установил SP1 на свою рабочую станцию. Настроил включение компрессии RemoteFX в реестре сервера терминалов. Включил 32 бита цветность. Пытаюсь подключиться по rdp к серверу терминалов и не вижу интерфейс AERO... в чем может быть причина? (в свойствах клиента на вкладке Experience установлены все галочки)

  19. Anonymous says:

    Получается, имея ультратонкого клиента и RDSH сервер с включенной RemoteFX компрессией мы сможем запускать скажем Автокад или какие-то программы работающие с 3D но...без Аеро...так?

  20. Anonymous says:

    Спасибо за ответ!

    После включения роли "Удаленных рабочих столов" только в части "Узла виртуализации удаленных рабочих столов" появляется сообщение/предупреждение о (привожу по памяти) необходимости лицензирования (или что-то связанное с лицензированием). Планирую использовать сжатие RFX без использования терминальных сессий, а простым подключением к удаленному рабочему столу. Или при включении роли удаленных рабочих столов, RDP "превращается" в "терминальный" доступ?

  21. Anonymous says:

    1. Спасибо за информацию о Hyper-V на русском языке 🙂

    2. Доступна ли "Третья составляющая RemoteFX — а именно, сжатие." без включения роли "Удаленных рабочих столов"?

  22. Stas says:

    Подскажите, пожалуйста:

    Наш основной сценарий использования W2K8 R2 - это виртуальные RDSH. Очень ждали выход SP1 для того, чтобы на этих смых виртуальных RDSH получить 32 бита цветности и возможность работать с графикой. Вот выйдет SP1, купим видеокарточки, настанет счастье... Напрасно ждали? Счастье будет только если каждый пользователь получит персональный виртуальный десктоп ?

  23. artem says:

    32 бита на (!!!) виртуальном RDSH я никак не могу получить - максимум 16. Ожидал, что с выходом SP1 и установкой в сервер видеокарты такая возможность появится. Про отрисовку графики понял, было что-то подобное в новостях про W2K8 еще - Microsoft буквально в последнем RC отрисовку графики перенесла с сервера на клиент. Я так понимаю, чтобы крутить AutoCAD в терминале мне все равно понадобится мощный видео адаптер у клиента ?

  24. maxim says:

    Установил SP1 на сервер терминалов WS08R2(виртуализован под Hyper-V Server 2008 R2) и на свою рабочую станцию (под Windows 7 Professional). Включил в реестре компрессию RemoteFX, установил 32 бита цвет, однако при подключении к серверу терминалов через RDP я не вижу обещанного интерфейса Aero. Подскажите пожалуйста, в чем причина

Skip to main content