DPVS 介绍
DPVS架构图
介绍
DPVS是爱奇艺公司基于DPDK开发的高性能第4层负载均衡器。基于阿里巴巴/
LVS修改而来,出于蓝而胜于蓝。
DPVS全称为 “DPDK-LVS”.
为了达到高性能,使用了多种不同技术
-
内核旁路(用户空间实现)
-
per-CPU,关键数据无锁化
-
RS Steering和CPU绑定(避免上下文切换)
-
批处理TX / RX
-
零拷贝(避免数据包复制和系统调用)
-
轮询替换中断
-
高性能IPC和无锁消息
-
其他由DPDK实现的性能增强技术
DPVS的主要特点包括:
L4负载均衡器,包括FNAT,DR模式等
不同的调度算法,如RR、WLC、WRR等
用户空间轻量级IP协议栈(IPv4,路由,ARP,ICMP …)。
SNAT模式,用于从内部网络访问Internet。
支持KNI,VLAN,不同IDC环境的绑定。
安全方面,支持TCP syn-proxy,Conn-Limit,黑名单。
QoS:流量控制(开发中)
DPVS功能模块如下图所示:
quick start
快速搭建:
Linux发行版:CentOS 7.2
内核:3.10.0-327.el7.x86_64
CPU:Intel(R)Xeon(R)CPU E5-2650 v3 @ 2.30GHz
NIC:Intel X540
内存:64G和NUMA系统。
GCC:gcc版本4.8.5 20150623(红帽4.8.5-4)
DPDK可以正常工作的环境应该也能运行DPVS,请查看dpdk.org了解更多信息。
安装过程略,可以到官网查看详情。
测试 Full-NAT 负载均衡
测试拓扑图如下所示:
在DPVS上设置VIP和本地IP(Full-NAT模式所需的LIP)。 我们把命令放到setup.sh中。 你可以通过./ipvsadm
-ln,./dpip addr show来检查一下。
从客户端访问VIP,看起来正常!
性能测试
我们的测试显示,DPVS的转发速度(pps)是LVS的几倍,与Google的Maglev一样好。
DPVS 官网
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。