Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Пару недель назад Microsoft представила общедоступную предварительную версию первого Пакета обновления (Service Pack 1) для Windows 7 и Windows Server 2008 R2, о чём мы тогда писали. Ключевыми нововведениями в представленном пакете обновлений стали поддержка динамической памяти (Hyper-V Dynamic Memory) и технология RemoteFX. Статью о первой мы скоро представим, пока же поговорим о RemoteFX.
Итак, что же скрывается за названием RemoteFX? Два года назад Microsoft купила компанию Calista Technologies, разрабатывающую решения для передачи по сети видео и прочих данных. Доработанная версия RemoteFX позволяет пользователю комфортно работать по протоколу Удалённого рабочего стола (Remote Desktop Protocol, RDP) с видео высокой чёткости и прочей сложной графикой в любых форматах — включая Silverlight, Direct3D 9.0c, трёхмерные модели и, конечно, Windows Aero. Кроме того, он обеспечивает полную поддержку двухсторонней синхронной аудиопередачи и низкоуровневое подключение любых устройств USB к удалённой рабочей станции, но это мы обсудим в одной из следующих статей.
RemoteFX накладывает существенные аппаратные требования на серверы виртуализации. Именно поэтому предполагается, что в основной массе RemoteFX найдёт применение в новых проектах VDI, а не при усовершенствовании уже существующих инфраструктур.
- Процессоры на сервере должны поддерживать Second Level Address Translation (SLAT) — т.е. Intel Extended page tables (EPT) или AMD Rapid Virtualization Indexing (RVI).
- Видеокарта на сервере должна поддерживать DirectX 9.0c и DirectX 10.0 и иметь достаточный объем видеопамяти, которого хватит на выполнение задач во всех виртуальных машинах в зависимости от разрешения экрана. Поддерживаются как встроенные видеокарты, так и внешние устройства формата appliance.
- Если в сервере установлено несколько видеокарт или подключено несколько устройств формата appliance, то такие устройства должны быть на одинаковых графических чипах. (Всего сейчас поддерживается до четырёх видеокарт в одном сервере).
- Живая миграция виртуальных машин, в которых используется RemoteFX, требует наличия на серверах одинаковых видеокарт.
Какие видеокарты поддерживают RemoteFX? Технически, работать она должна на любом устройстве, совместимом с DirectX 10. Однако, мы вкладываем в слово «поддержка» особое значение, так что для получения официальной технической поддержки требуем подтверждения работоспособности в лабораторных условиях. На данный момент протестированы следующие решения. К моменту окончательного выхода Windows Server 2008 R2 Service Pack 1 их число должно расшириться.
Производитель | ATI |
NVidia |
Чипы, прошедшие проверку и получившие логотип |
|
|
Внешние устройства формата appliance |
– |
Quadroplex 2200 S4 (960 ядер CUDA и 16ГБ видеопамяти в форм-факторе 1U. Одного такого модуля хватит на полсотни пользователей с активной 3D графикой). |
Технически RemoteFX состоит из следующих элементов.
- с точки зрения Hyper-V — очередная пара компонентов, обменивающихся данными через VMBus:
- VSC (Virtualization Services Consumer) в виртуальной машине — новое синтетическое виртуальное устройство, видеокарта. Приложения, запущенные в виртуальной машине, работают с ней как с обычной видеокартой, поддерживающей DirectX 9;
- в роли VSP (Virtualization Service Provider) выступает компонент под названием RCC (Render, Capture, Compress), который выполняется в родительском разделе (по одному экземпляру для каждой ВМ, использующей RemoteFX);
- с точки зрения RDP — новый тип данных в «Виртуальном канале» (Virtual Channel, VC) передачи видео.
Как же выглядит архитектура взаимодействия служб интеграции Hyper-V с физическим оборудованием и компонентами ОС на сервере виртуализации?
Этап отрисовки графики (Render) происходит по следующей схеме.
Здесь компонент RCC играет роль посредника по передаче инструкций DirectX 9 от виртуальной машины физической видеокарте, установленной в сервере.
Захват и кодирования видеопотока (Capture and Compress) выглядит примерно так.
Обратите внимание на то, что первый этап сжатия выполняется на видеокарте, и здесь уже используются алгоритмы DirectX 10. Второй этап сжатия выполянется на процессоре (CPU).
Для того, чтобы увеличить производительность и масштабирование, вы можете воспользоваться устройством нового типа, который называется RemoteFX ASIC (Application-Specific Integrated Circuit). Это устройство фактически реализует кодек RemoteFX на аппаратном уровне, что снимает нагрузку по сжатию с видеокарты и процессора. (Надо понимать, что задачи отрисовки, показанные на предыщуей схеме, по-прежнему остаются на видеокарте. Так что ASIC не заменяет, а дополняет её). Очевидно, что использование такого устройства не является необходимым условием для работы RemoteFX. Однако мы ожидаем, что в скором будущем большинство серверов, предназначенных для выполнения роли VDI, будут оснащены микросхемами RemoteFX ASIC — это значит, что вам не придётся отдельно задумываться об этом и покупать дополнительные устройства.
Кроме того, из последней схемы становится понятно, почему для задач виртуализации RemoteFX работает только с Hyper-V, но не с другими платформами виртуализации. Посудите сами — ведь в виртуальной машине вы устанавливается компонент VSC, для работы которого необходим RCC на стороне гипервизора.
В заключение предлагаю всем посмотреть на пример RemoteFX в действии.
[Video]
Comments
Anonymous
January 01, 2003
Спасибо, а можете пояснить, почему так обижена Windows Embedded Compact 7 ?Anonymous
January 01, 2003
Также уже пояснялось :) Windows CE (Embedded Compact) не продается и не распространяется Microsoft. Этим занимаются вендоры, они и будут делать имплементацию при необходимости. Дело в том, что ASIC в каждом устройстве свой, так что участие производителя оборудования требуется по любому.Anonymous
January 01, 2003
Алексей, а есть планы сделать RemoteFX для гостя с Windows XP?Anonymous
January 01, 2003
А поддержка RemoteFX в клиентах для ОС тонких клиентов будет? Относительно Linux понятно - когда реализуют производители, а что с Windows Compact (WinCE6) и Windows Standard (WinXPe)?Anonymous
January 01, 2003
Я уже отвечал недавно на этот вопрос в другой теме. Будет поддержка в Windows Embedded 7 (Standard и Enterprise) и Windows Phone 7. Очевидно, что для XP Embedded ничего не будет, равно как и для обычной XP. Для сторонних ОС Microsoft ничего писать не будет, но протокол RDP лицензируется, любой купивший лицензию может написать под любую ОС (Речи о GPL в этом случае не идет, у Microsoft своё видение лицензирования исходных кодов).Anonymous
January 01, 2003
На сегодня таких планов нет. Поддержка Windows XP не планируется ни в качестве гостевой системы для VDI, ни в качестве клиента RemoteFX. И если второе ещё может измениться — то первое вряд ли. Хотя, конечно, окончательно всё сможет решить только реальный спрос на рынке.- Anonymous
November 10, 2016
Добрый день!А доманшние редакции Windows тоже не могут выступать в роли клиента RemoteFX?- Anonymous
December 15, 2016
Нет, не могут.
- Anonymous
- Anonymous
Anonymous
January 01, 2003
Evg, по повододу Quadroplex-а — да, согласно информации NVidia сценарий подключения одного устройства сразу к нескольким серверам возможен. По поводу ASIC — он работает с одним устройством. Во всяком случае, таково виденье Microsoft. Но не забывайте, что настоящие устройства разрабатываются партнёрами, и у них может быть своё представление. Конкретные модели и их характеристики станут известны ближе к дате окончательного выпуска Service Pack 1.Anonymous
August 31, 2010
Подскажите,
- можно как-нибудь ресурсы Quadroplex-а раздать на несколько серверов? Т.е. не покупать несколько серверов с видеокартами, а купить один Quadroplex?
- аналогичный вопрос по RemoteFX ASIC - это чип, работающий только с конкретным сервером, или бывает некое устройство на его базе, которое может работать для всей серверной инфраструктуры (типа Citrix NetScaler, если не путаю)?