Home  >  Article  >  System Tutorial  >  DPVS: an open source load balancer

DPVS: an open source load balancer

PHPz
PHPzforward
2024-01-10 19:10:421306browse
introduce

DPVS: an open source load balancer
DPVS is a high-performance layer 4 load balancer based on DPDK. Modified based on Alibaba/LVS, out of blue and better than blue.

The full name of DPDK is “DPDK-LVS”.

In order to achieve high performance, a variety of different technologies are used

  • Kernel bypass (user space implementation)
  • No CPU, no key data (no lock)
  • RX steering and CPU binding (avoiding context switching)
  • Batch TX/RX
  • Zero replication (avoid packet replication and system calls).
  • Polling replacement interrupt.
  • Lock-free information for high-performance ICP.
  • Other technologies enhanced by DPDK

The main features of DPVS include:

L4 load balancer, including FNAT, DR mode, etc.

Different scheduling algorithms, such as RR, WLC, WRR, etc.

Userspace Lite IP stack (IPv4, routing, ARP, ICMP...).

SNAT mode, used to access the Internet from the internal network.

Supports KNI, VLAN, and binding of different IDC environments.

In terms of security, it supports TCP syn-proxy, Conn-Limit, and blacklist.

QoS: Flow Control (persistent)

The DPVS function module is shown in the figure below:

DPVS: an open source load balancer

Quick Start test environment

You can quickly start testing in the following environment.

Linux distribution: CentOS 7.2

Kernel: 3.10.0-327.el7.x86_64

CPU: Intel(R) Xeon(R) CPU E5-2650 v3 @ 2.30GHz

NIC: Intel X540

Memory: 64G and NUMA system.

GCC: gcc version 4.8.5 20150623 (Red Hat 4.8.5-4)

If DPDK works, other environments will too, check out dpdk.org for more information.

The installation process is abbreviated, you can check the details on the official website.

Test Full-NAT load balancing

The test topology diagram is as follows:

DPVS: an open source load balancer

Set VIP and local IP (LIP required for full NAT mode) on DPVS. We put the command in setup.sh. You can check it through ./ipvsadm -ln, ./dpip addr show.

DPVS: an open source load balancer

Accessing VIP from the client looks normal!

DPVS: an open source load balancer

Performance Testing

DPVS: an open source load balancer

The above is the detailed content of DPVS: an open source load balancer. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:linuxprobe.com. If there is any infringement, please contact admin@php.cn delete