Корпорации Samsung, Google и другие участники индустрии анонсировали создание спецификации TP4193: PCIe Exported NVM Subsystem Migration. Этот стандарт направлен на расширение функциональности и повышение эффективности виртуализации накопителей на базе SSD. Новая версия протокола была утверждена в рамках технологии NVMe (Non-Volatile Memory Express).
Как подчёркивает Samsung, традиционно виртуализация хранилищ реализуется поверх SSD — к примеру, на уровне гипервизора или программного обеспечения хоста. Такой метод обеспечивает определённую гибкость, однако имеет и свои минусы. В частности, значительно усложняется работа самого гипервизора: ему необходимо управлять сопоставлением пространств имён, обеспечивать изоляцию, выполнять миграцию и перенаправлять административные команды. Кроме того, при миграции могут возникать определённые сложности. Наконец, увеличивается время задержки из-за удлинения пути ввода-вывода. Спецификация TP4193 призвана решить все перечисленные проблемы.
Источник изображения: Samsung
Обычно области хранения данных на SSD выделяются виртуальным машинам через механизм прямого назначения — как правило, он реализуется в виде логического разделения на уровне PCIe. Это возможно осуществить двумя способами: либо путём предоставления нескольких физических функций PCIe (PF), либо с помощью технологии Single-Root I/O Virtualization (SR-IOV) Extended Capability, которая логически делит SSD на одну физическую и несколько виртуальных функций (VF). Для хоста интерфейс контроллера NVMe, предоставляемый через VF, неотличим от интерфейса на базе PF. В итоге виртуальная машина получает доступ к функции PCIe так, словно она подключена напрямую.
Однако у схемы прямого назначения есть свои ограничения и недостатки. Каждый регистр NVMe передаётся виртуальной машине в неизменном виде, из-за чего эта машина получает доступ ко всем характеристикам SSD, включая информацию о модели и уникальных идентификаторах. Более того, может передаваться и информация о других контроллерах и пространствах имён — даже если они недоступны для данной виртуальной машины напрямую.
Спецификация TP4193: PCIe Exported NVM Subsystem Migration устраняет ограничения, присущие программной виртуализации. Вместо того чтобы хост добавлял уровни абстракции поверх «сырого» SSD, сам накопитель предоставляет логические виртуализированные структуры хранения с предопределённым поведением. Другими словами, при таком подходе хост выполняет роль оркестратора, а не непосредственного исполнителя. В сочетании с другими возможностями PCIe и NVMe новый механизм позволяет упростить гипервизор, привести к норме топологию и атрибуты виртуализированного SSD, предложить стандартизированное описание конфигурации виртуального накопителя и обеспечить ряд дополнительных преимуществ.
Источник: