-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Description
Title:
Add Intel® QuickAssist Technology (Intel® QAT) support as contrib extensions
Description:
Next generation Intel® QAT support with Intel® Xeon® Scalable processors will feature an Intel® QAT cryptography and compression acceleration engine. In order to use it, two new Envoy contrib extensions are proposed:
- QATzip compression extension. This extension uses QATzip library (https://github.com/intel/QATzip) to implement accelerated HTTP compression. This can have a valid use case in scenarios such as service meshes, where the traffic within the mesh may be compressed without consuming CPU cycles.
- QAT private key provider. This extension will use qatlib library (https://github.com/intel/qatlib) to accelerate RSA operations in handshakes. The extension will look a bit like the existing cryptomb private key provider. The use case is to move the expensive cryptographic operations away from the CPU to the accelerator device, leaving CPU cycles for other use.
Two new library dependencies would be added: QATzip library for compression and qatlib for accessing the hardware. Support for Intel® QAT is already present in the mainline Linux kernel and in Kubernetes device plugins (to expose the device files to containers). There are previous generations of Intel QAT® hardware devices, but they are not supported by these extensions.
Relevant links:
https://github.com/intel/intel-device-plugins-for-kubernetes/blob/main/cmd/qat_plugin/README.md
https://www.intel.com/content/www/us/en/architecture-and-technology/intel-quick-assist-technology-overview.html
https://www.intel.com/content/www/us/en/developer/topic-technology/open/quick-assist-technology/overview.html