- Главная
- →
- Архитектуры, масштабируемость
Linux kernel TLS и HTTPS Архитектуры, масштабируемость
Основатель и системный архитектор Tempesta Technologies, эксперт в области высокопроизводительных вычислений в Linux/x86-64.
Тезисы
Наверное, уже ни для кого не секрет, что в Linux kernel интегрируется поддержка TLS: он уже есть в текущем RC Linux 4.13.
В докладе я хочу рассказать, зачем вносится TLS в ядро Linux и о подходах к Linux kernel TLS от Facebook/RedHat, Mellanox и нашего проекта Tempesta FW. Также рассажу о специфичных для ядра проблемах реализации TLS.
Т.к. одной из основных задач Tempesta FW является фильтрация нелегитимного HTTP(S)-трафика, в том числе DDoS-атак, то нам, в отличие от сценария Facebook, приходится решать задачу быстрого установления соединений. Для этого мы портировали библиотеку mbed TLS (https://tls.mbed.org/) в ядро.
Для максимальной скорости обработки HTTPS-трафика в Tempesta FW применяется ряд независимых от ядра техник, таких как: zero-copy модификация HTTP-заголовков с учетом segmentation offload сетевой карты и inter-CPU транспорт для снижения данных, передаваемых между процессорами при проксировании сетевого трафика.