Catalog Details
CATEGORY
deploymentCREATED BY
UPDATED AT
March 13, 2025VERSION
0.0.1-
MODELS
What This Pattern Does:
Depending upon use cases, when an ingress gateway must handle a large number of incoming TLS and secured service-to-service connections through sidecar proxies, the load on Envoy increases. The potential performance depends on many factors, such as size of the cpuset on which Envoy is running, incoming traffic patterns, and key size. These factors can impact Envoy serving many new incoming TLS requests. To achieve performance improvements and accelerated handshakes, a new feature was introduced in Envoy 1.20 and Istio 1.14. It can be achieved with 3rd Gen Intel® Xeon® Scalable processors, the Intel® Integrated Performance Primitives (Intel® IPP) crypto library, CryptoMB Private Key Provider Method support in Envoy, and Private Key Provider configuration in Istio using ProxyConfig.\\\\\\\\\\\\\\
\\\\\\\\\\\\\\
Envoy uses BoringSSL as the default TLS library. BoringSSL supports setting private key methods for offloading asynchronous private key operations, and Envoy implements a private key provider framework to allow creation of Envoy extensions which handle TLS handshakes private key operations (signing and decryption) using the BoringSSL hooks.\\\\\\\\\\\\\\
\\\\\\\\\\\\\\
CryptoMB private key provider is an Envoy extension which handles BoringSSL TLS RSA operations using Intel AVX-512 multi-buffer acceleration. When a new handshake happens, BoringSSL invokes the private key provider to request the cryptographic operation, and then the control returns to Envoy. The RSA requests are gathered in a buffer. When the buffer is full or the timer expires, the private key provider invokes Intel AVX-512 processing of the buffer. When processing is done, Envoy is notified that the cryptographic operation is done and that it may continue with the handshakes.
Caveats and Consideration:
None
Compatibility:
Recent Discussions with "meshery" Tag
- Mar 12 | Meshery Development Meeting | March 12th, 2025
- Mar 10 | How to Contribute to Sistent!
- Mar 07 | Looking for a MeshMate for guidance to start first issue
- Mar 05 | Meshery Development Meeting | March 5th, 2025
- Mar 04 | Looking for a MeshMate as new to open source
- Mar 04 | 🤔 Understanding the Role of GraphQL and RTK Query in Meshery UI
- Mar 04 | 🌍 A Growing Guide for New Contributors: MeshMates, Share Your Journey & Insights!
- Feb 28 | Testing Local Sistent Changes in Meshery
- Mar 03 | Color changes not visible while testing UI changes
- Feb 28 | Getting error while building meshery ui with make ui-build