В нашем беспокойном мире забота о собственной информационной безопасности уже давно перестала рассматриваться как разновидность паранойи, и с этим приходится считаться разработчикам приложений — при прочих равных пользователь выберет то, которое лучше защищает его данные. Чтобы упростить программистам жизнь, Intel в рамках своей open source программы разработала технологию ускорения шифрования и сжатия QuickAssist (QAT). Давайте познакомимся с ней поближе.



Итак, как уже говорилось, QAT может пригодиться для решения следующих задач:

  • шифрование потоков данных: симметричное шифрование и аутентификация, операции с шифром;
  • криптография с открытым ключом: асимметричное шифрование, цифровые подписи, обмен ключами;
  • сжатие: сжатие данных без потерь «на лету» и статических объектов.

Intel QuickAssist представляет из себя комбинированное аппаратно-программное решение. С программной точки зрения QuickAssist — это набор API, реализующих алгоритмы шифрования и сжатия на определенном специфическом «железе». Для некоторых популярных open source продуктов, таких как zLib, NGINX, Hadoop предусмотрены патчи, позволяющие использовать QuickAssist, вообще не разбираясь в его внутреннем устройстве. В качестве программной основы может выступать любая ОС семейства Linux.



Теперь о железе. Для функционирования QuickAssist сервер должен иметь один из следующих аппаратных компонентов:

  • либо специализированный QuickAssist адаптер (Intel QuickAssist Adapter), в настоящее время имеется две их разновидности, 8920 и 8950
  • либо материнскую плату с чипсетами 8920 или 8950 и процессорами Intel Xeon

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


Внешний вид Intel QuickAssist Adapter

Естественно, возникает вопрос: на сколько использование QuickAssist увеличивает производительность приложений? Полученные результаты тестирования впечатляют. Так, работа Hadoop в связке с QuickAssist ускоряется на 30%. Применение QuickAssist вместе с OpenSSL увеличивает число соединений в секунду в 6 раз! Определенно, в некоторых случаях QuickAssist может очень помочь. Кстати, небольшая подсказка для заинтересовавшихся: хоть об этом и умалчивает сайт Intel, но поддержка QAT есть также и в линейке процессоров Intel Atom C2000.

Напоследок приведу небольшой список ссылок для изучения QAT:

Поделиться с друзьями
-->

Комментарии (1)


  1. dmitry_ch
    27.01.2017 10:37

    Редко кому нужное редко встречающееся решение, которое, ко всему, еще и поддержку имеет в виде патчей (а не встроенную в тот же Nginx) — как тот неуловимый Джо.

    Вопрос — зачем его Quick называть, ведь оно настолько не для всех и настолько редко будет ставиться, что лишние полчаса на установку на его популярнойсть ну вот никак-никак не повляет?

    А из практических вопросов: как эту мегафункциональность можно внутри виртуальных машин пробросить?