Tempesta Technologies
  • Home
  • Tempesta FW
    • Features
      • Web acceleration
      • Load balancing
      • Application performance monitoring
    • Performance
    • How it works
    • Deployment
    • Support
    • Knowledge base
  • Services
    • Software development
      • High performance
      • Networking
      • Databases
      • Linux kernel
      • Machine learning
      • How we work
      • Case studies
    • Performance analysis
    • Network security
      • DDoS protection
      • Application security
      • Cryptography
      • Security assessment
      • How we work
      • Case Studies
  • Solutions
    • DDoS Protection
    • Web Acceleration
  • Blog
  • Company
    • Research
    • Careers
    • Contact
Tempesta Technologies

Performance

The chapter describes performance benchmarks, the results itself as well as scenarios to reproduce the results.

Benchmarks๐Ÿ”—

  1. HTTP cache performance
  2. Tempesta TLS handshakes performance
  3. HTTP transactions performance under KVM with no vAPIC

Intelpocalypse๐Ÿ”—

Opposite to traditional user-space HTTP proxies like HAproxy or Nginx, Tempesta FW works in kernel space, so it doesn’t pay the price for heavyweight prevention of Meltdown and MDS (aka ZombieLoad) Intel vulnerabilities.

The most price for the user-space daemons comes from Kernel page table isolation (KPTI) which degrades Nginx performance up to 20%.

There are no context switches for Tempesta FW, so there is no extra cost to be Metdown and MDS safe.

Tips for Linux performance settings๐Ÿ”—

Kernel configuration๐Ÿ”—

  • turn on CONFIG_PREEMPT_NONE to eliminate preemption management overhead.
  • switch off CONFIG_FRAME_POINTER
  • Switch off debugging facilities, e.g. CONFIG_DEBUG_KMEMLEAK and CONFIG_KASAN. Check all the CONFIG_DEBUG options in your .config.

CPU๐Ÿ”—

  • Set /sys/devices/system/cpu/cpuX/cpufreq/scaling_governor for all CPUs to performance
  • Set processor.max_cstate=0 intel_idle.max_cstate=0 for the Linux kernel boot parameters
  • Disable Turbo Boost, Hyper Threading and Enhanced Intel Speedstep Tech in BIOS
  • All the CPUs participating in the workload must be in isolcpus

NIC๐Ÿ”—

  • If you have a Mellanox ConnectX network adapter, the make sure you use a EN or OFED driver.

Linux services๐Ÿ”—

  • Turn off IRQbalance
  • Turn off Network manager

Resources๐Ÿ”—

  • Brendan Gregg’s blog: Linux performance
  • Optimizing web servers for high throughput and low latency, Dropbox, 2017.
  • Intelpocalypse: goodbye fast system calls
  • Benchmarking Methodology for Network Security Device Performance (an RFC draft).
  • Linux ACL Performance Analysis
  • NVIDIA performance tuning for Mellanox adapters

Share this article
  • Home
  • Requirements
  • Installation
    • Install from packages
    • Install from Sources
  • Configuration
    • Migration from Nginx
    • On the fly Reconfiguration
    • Handling clients
    • Backend servers
    • Scheduling and Load Balancing
    • Caching Responses
    • Non Idempotent Requests
    • Modify HTTP Messages
    • Virtual hosts and locations
    • Sticky Cookie
    • HTTP tables
    • HTTP security
    • Header Via
    • Health monitor
    • Tempesta TLS
    • Vhost Confusion
    • Traffic Filtering by Fingerprints
    • Access Log Analytics
  • Run and stop
  • Application Performance Monitoring
    • Performance statistics
    • Servers statistics
  • Use cases
    • Clouds
    • High availability
    • DDoS mitigation
    • Web security
    • WAF acceleration
    • Best practices
    • WordPress tips and tricks
  • Performance
    • Hardware virtualization performance
    • HTTP cache performance
    • HTTP transactions performance
    • HTTPS performance
    • HTTP2 streams prioritization
  • Bot Protection
    • Tempesta Webshield
    • Setup and Run The Webshield
    • Webshield Configuration
    • Webshield Detectors
    • Webshield Observability
    • Webshield Use Cases
  • Contributing
    • Report issues and send patches
    • Development guidelines
    • Memory safety guideline
    • Debugging and troubleshooting
    • Prepare a new release
    • Testing
    • QTCreator project

Powered by Tempesta FW

Stay up to date with our latest developments

Useful Links

Home
Blog

Tempestaยฎ FW

Features
Performance
Deployment
Support
Knowledge Base

Services

Software Development
Performance analysis
Network Security

Solutions

DDoS Protection

Web Acceleration

Company

Research
Careers
Contact