迪普科技负载均衡技术白皮书Word文档格式.docx
《迪普科技负载均衡技术白皮书Word文档格式.docx》由会员分享,可在线阅读,更多相关《迪普科技负载均衡技术白皮书Word文档格式.docx(33页珍藏版)》请在冰豆网上搜索。
NetworkAddressTranslation
网络地址转换
RTT
RoundTripTime
往返时间
DNS
DomainNameService
域名服务
SSL
SecureSocketLayer
安全套接层
TTL
TimeToLive
生存时间
VPN
VirtualPrivateNetwork
虚拟专用网络
VRRP
VirtualRouterRedundancyProtocol
虚拟路由器冗余协议
DR
DirectRouting
直接路由
XSS(CSS)
CrossSiteScript
跨站脚本攻击
1负载均衡技术概述
1.1负载均衡技术背景
1.1.1服务器负载均衡技术背景
随着Internet的快速发展和业务量的不断提高,基于网络的数据访问流量迅速增长,特别是对数据中心、大型企业以及门户网站等的访问,其访问流量甚至达到了10Gb/s的级别;
同时,服务器网站借助HTTP、FTP、SMTP等应用程序,为访问者提供了越来越丰富的内容和信息,服务器逐渐被数据淹没;
另外,大部分网站(尤其电子商务等网站)都需要提供不间断24小时服务,任何服务中断或通信中的关键数据丢失都会造成直接的商业损失。
所有这些都对应用服务提出了高性能和高可靠性的需求。
但是,相对于网络技术的发展,服务器处理速度和内存访问速度的增长却远远低于网络带宽和应用服务的增长,网络带宽增长的同时带来的用户数量的增长,也使得服务器资源消耗严重,因而服务器成为了网络瓶颈。
传统的单机模式,也往往成为网络故障点。
图1现有网络的不足
针对以上情况,有以下几种解决方案:
2.服务器进行硬件升级:
采用高性能服务器替换现有低性能服务器。
该方案的弊端:
●高成本:
高性能服务器价格昂贵,需要高额成本投入,而原有低性能服务器被闲置,造成资源浪费。
●可扩展性差:
每一次业务量的提升,都将导致再一次硬件升级的高额成本投入,性能再卓越的设备也无法满足当前业务量的发展趋势。
●无法完全解决现在网络中面临的问题:
如单点故障问题,服务器资源不够用问题等。
3.组建服务器集群,利用负载均衡技术在服务器集群间进行业务均衡。
多台服务器通过网络设备相连组成一个服务器集群,每台服务器都提供相同或相似的网络服务。
服务器集群前端部署一台负载均衡设备,负责根据已配置的均衡策略将用户请求在服务器集群中分发,为用户提供服务,并对服务器可用性进行维护。
该方案的优势:
●低成本:
按照业务量增加服务器个数即可;
已有资源不会浪费,新增资源无需选择昂贵的高端设备。
●可扩展性:
当业务量增长时,系统可通过增加服务器来满足需求,且不影响已有业务,不降低服务质量。
●高可靠性:
单台服务器故障时,由负载均衡设备将后续业务转向其他服务器,不影响后续业务提供,保证业务不中断。
图1负载均衡技术
1.1.2网关负载均衡技术背景
SSLVPN网关、IPsec网关、防火墙网关等网关设备,因为业务处理的复杂性,往往成为网络瓶颈。
以防火墙网关为例:
防火墙作为网络部署的“警卫”,在网络中不可或缺,但其往往不得不面临这样的尴尬:
网络防卫越严格,需要越仔细盘查过往的报文,从而导致转发性能越低,成为网络瓶颈。
在这种情况,如果废弃现有设备去做大量的硬件升级,必将造成资源浪费,随着业务量的不断提升,设备也将频繁升级。
频繁升级的高成本是相当可怕的。
因此将网关设备等同于服务器,组建网关集群的方案应运而生:
将多个网关设备并联到网络中,从而形成集群,提高网络处理能力。
1.1.3链路负载均衡技术背景
信息时代,工作越来越离不开网络,为了规避运营商出口故障带来的网络可用性风险,和解决网络带宽不足带来的网络访问问题,企业往往会租用两个或多个运营商出口(如:
电信、网通等)。
如何合理运用多个运营商出口,既不造成资源浪费,又能很好的服务于企业?
传统的策略路由可以在一定程度上解决该问题,但是策略路由配置不方便,而且不够灵活,无法动态适应网络结构变化,且策略路由无法根据带宽进行报文分发,造成高吞吐量的链路无法得到充分利用。
链路负载均衡技术通过动态算法,能够在多条链路中进行负载均衡,算法配置简单,且具有自适应能力,能很好的解决上述问题。
1.2负载均衡技术优点分析
负载均衡提供了一种廉价、有效、透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力,提高网络的灵活性和可用性。
负载均衡技术具有如下优点:
●高性能:
通过调度算法,将客户端请求合理地均衡到后端各台服务器上,消除系统可能存在的瓶颈。
当服务的负载增长时,系统能被扩展来满足需求,且不降低服务质量。
●高可用性:
通过健康性检测功能,能实时监测应用服务器的状态,保证在部分硬件和软件发生故障的情况下,整个系统的服务仍然可用。
●透明性:
高效地使由多个独立计算机组成的松耦合的服务系统构成一个虚服务器;
客户端应用程序与服务系统交互时,就像与一台高性能、高可用的服务器交互一样,客户端无须作任何修改。
部分服务器的切入和切出不会中断服务,而用户觉察不到这些变化。
2负载均衡具体技术实现
2.1负载均衡相关概念介绍
●虚服务
负载均衡设备对外提供的服务称为虚服务。
虚服务由VPN实例、虚服务IP地址、服务协议、服务端口号唯一标识,配置在负载均衡设备上。
客户的访问请求通过公共或私有网络到达负载均衡设备,匹配到虚服务后,由负载均衡设备按照既定策略分发给真实服务。
●实服务
实服务是真实服务器提供的一种服务。
该服务含义比较广泛,可以是传统的FTP、HTTP等业务应用,也可以是广义的转发服务,如防火墙网关负载均衡中,实服务只是报文转发路径。
●持续性功能
持续性功能将属于同一个应用层会话的多个连接定向到同一服务器,从而保证同一业务由同一个服务器处理(或链路转发),并减少负载均衡设备对服务和流量进行分发的次数。
●负载均衡调度算法
负载均衡设备需要将业务流量根据某种算法分发给不同的实服务(实服务对应服务器负载均衡中的服务器、网关负载均衡中的网关设备和链路负载均衡中的链路),这个分发算法就是负载均衡调度算法。
●就近性算法
就近性算法是指在链路负载均衡中,实时探测链路的状态,并根据探测结果选择最优链路,保证流量通过最优链路转发。
●健康性检测功能
健康性功能是指负载均衡设备对真实的服务器是否能够提供服务进行探测。
依据不同的探测方法(即健康性检测方法)可以探测出服务器是否存在,以及是否可以正常提供服务。
2.2服务器负载均衡基本概念和技术
服务器负载均衡,顾名思义就是对一组服务器提供负载均衡业务。
这一组服务器一般来说都处于同一个局域网络内,并同时对外提供一组(或多组)相同(或相似)的服务。
服务器负载均衡是数据中心最常见的组网模型。
服务器负载均衡包括以下几个基本元素:
●负载均衡设备:
负责分发各种服务请求到多个Server的设备。
●Server:
负责响应和处理各种服务请求的服务器。
●VSIP:
对外提供的虚拟IP,供用户请求服务时使用。
●ServerIP:
服务器的IP地址,供负载均衡设备分发服务请求时使用。
依据转发方式,服务器负载均衡分为NAT方式和DR方式。
两种方式的处理思路相同:
负载均衡设备提供VSIP,用户访问VSIP请求服务后,负载均衡设备根据调度算法分发请求到各个实服务。
而在具体的处理方式上有所区别:
●NAT方式:
负载均衡设备分发服务请求时,进行目的IP地址转换(目的IP地址为实服务的IP),通过路由将报文转发给各个实服务。
●DR方式:
负载均衡设备分发服务请求时,不改变目的IP地址,而将报文的目的MAC替换为实服务的MAC后直接把报文转发给实服务。
以下将分别对两种方式进行详细介绍。
2.2.1NAT方式的服务器负载均衡
NAT方式组网灵活,后端服务器可以位于不同的物理位置,不同的局域网内。
NAT方式典型组网如图3所示。
图1NAT方式的服务器负载均衡
2.实现原理
客户端将到VSIP的请求发送给服务器群前端的负载均衡设备,负载均衡设备上的虚服务接收客户端请求,依次根据持续性功能、调度算法,选择真实服务器,再通过网络地址转换,用真实服务器地址重写请求报文的目标地址后,将请求发送给选定的真实服务器;
真实服务器的响应报文通过负载均衡设备时,报文的源地址被还原为虚服务的VSIP,再返回给客户,完成整个负载调度过程。
3.工作流程
NAT方式的服务器负载均衡的工作流程图如图4所示。
图1NAT方式的服务器负载均衡流程图
流程简述如下:
(1)客户端发送服务请求报文(源IP为客户端IP、目的IP为VSIP)
(2)负载均衡设备ADX接收到请求报文后,借助持续性功能或调度算法计算出应该将请求分发给哪台Server
(3)负载均衡设备ADX使用DNAT技术分发报文(源IP为客户端IP、目的IP为ServerIP)
(4)Server接收并处理请求报文,返回响应报文(源IP为ServerIP、目的IP为客户端IP)
(5)负载均衡设备ADX接收响应报文,转换源IP后转发(源IP为VSIP、目的IP为客户端IP)
从以上一系列的说明可以看出——在负载均衡时使用网络地址转换技术,NAT方式因此而得名。
4.技术特点
组网灵活,对服务器没有额外要求,不需要修改服务器配置,适用于各种组网。
2.2.2DR方式的服务器负载均衡
相对于NAT组网方式,DR组网方式中只有客户端的请求报文通过负载均衡设备,服务器的响应报文不经过负载均衡设备,从而减少了负载均衡设备的负载,有效的避免了负载均衡设备成为网络瓶颈。
DR方式典型组网如图5所示。
图1DR方式的服务器负载均衡
DR方式的服务器负载均衡时,除了负载均衡设备设备上配置了VSIP,真实服务器也都配置了VSIP,配置的VSIP要求不能响应ARP请求,例如在环回接口上配置VSIP。
实服务除了VSIP,还需要配置一个真实IP,用于和ADX通信,负载均衡设备ADX和真实服务器在同一个链路域内。
发送给VSIP的报文,由ADX分发给相应的真实服务器,从真实服务器返回给客户端的报文直接通过交换机返回。
DR方式的服务器负载均衡的工作流程图如图6所示。
图1DR方式的服务器负载均衡流程图
(2)GeneralDevice收到请求后转发给负载均衡设备ADX(Server上的VSIP不会响应ARP请求)
(3)负载均衡设备ADX接收到请求报文后,借助持续性功能或调度算法计算出应该将请求分发给哪台Server
(4)负载均衡设备ADX分发报文(源IP为客户端IP,目的IP为VSIP,目的MAC为Server的MAC地址)
(5)Server接收并处理请求报文,返回响应报文(源IP为VSIP、目的IP为客户端IP)
(6)GeneralDevice收到响应报文后,直接将报文转发给客户端
从以上一系列的说明可以看出——负载均衡设备没有采用传统的转发方式(查找路由表)来分发请求报文,而是通过修改目的MAC直接路由给服务器,DR方式也因此而得名。
只有单边报文经过负载均衡设备,负载均衡设备负担小,不易成为瓶颈,转发性能更强。
2.3网关负载均衡基本概念和技术
网关负载均衡包括以下几个基本元素:
●负载均衡设备ADX:
负责分发请求发起方的网络流量到多个网关设备。
负载均衡设备ADX又分为一级和二级。
如图7所示,如果请求发起方的网络流量方向为客户端A>
客户端B,则负载均衡设备ADXA为一级,负载均衡设备ADXB为二级;
如果请求发起方的网络流量方向为客户端B>
客户端A,则负载均衡设备ADXB为一级,负载均衡设备ADXA为二级。
●网关设备:
正常处理数据的网关设备,如:
SSLVPN网关,IPsec网关,防火墙网关等。
以防火墙网关负载均衡为例,组网应用如图7所示。
图1双侧防火墙网关(三明治)负载均衡
防火墙是基于会话开展业务的,即一个会话的请求和应答报文必须通过同一个防火墙。
为了保证防火墙业务正常进行,内部组网不受影响,需要采用双侧负载均衡,即防火墙三明治。
在这种组网环境中,对于流入流量,一级负载均衡设备做防火墙负载均衡,二级负载均衡设备保证从哪个防火墙进来的流量,还要从这个防火墙返回。
流出流量正好相反。
图1防火墙负载均衡流程图
(1)负载均衡设备ADXA接收流量
(2)负载均衡设备ADXA依次根据持续性功能、负载均衡调度算法选择一个Firewall,并将流量转发给该Firewall(由于防火墙基于会话开展业务,建议优先选用源地址散列算法)
(3)Firewall将流量转发给负载均衡设备ADXB
(4)负载均衡设备ADXB作为二级负载均衡设备ADX,记录转发该流量的防火墙,并将流量转发到目的地
(5)负载均衡设备ADXB接收目的地发回的流量
(6)负载均衡设备ADXB根据(4)中的记录将流量转发给同一个Firewall
(7)Firewall将流量转发给负载均衡设备ADXA
(8)负载均衡设备ADXA将流量转发回源地址
从以上一系列的说明可以看出——两台负载均衡设备ADX之间并联的防火墙进行网络流量的负载分担,提高了网络的性能。
两侧的负载均衡设备ADX和中间并联的防火墙——我们称之为三明治负载均衡。
服务对象为防火墙,提高防火墙组网灵活性。
没有特殊要求,适用于任何组网环境。
2.4服务器负载均衡和网关负载均衡融合
网关负载均衡也可以和服务器负载均衡融合使用,以防火墙网关和服务器负载均衡综合组网为例,具体组网如图9所示。
图1防火墙网关、服务器负载均衡综合组网图
图中ClusterA为防火墙负载均衡的集群,ClusterB为NAT方式服务器负载均衡的集群。
综合组网的工作流程就是防火墙、服务器负载均衡流程的叠加。
这样的组网方式既避免了防火墙成为网络中的瓶颈,也提高了各种网络服务(如HTTP、FTP)的性能和可用性。
2.5链路负载均衡基本概念和技术
链路负载均衡根据业务流量方向可以分为Outbound链路负载均衡和Inbound链路负载均衡两种情况。
2.5.1Outbound链路负载均衡
内网和外网之间存在多条链路时,通过Outbound链路负载均衡可以实现在多条链路上分担内网用户访问外网服务器的流量。
Outbound链路负载均衡的典型组网如图10所示。
图1Outbound链路负载均衡组网图
Outbound链路负载均衡包括以下几个基本元素:
负责将内网到外网流量分发到多条物理链路的设备。
●物理链路:
运营商提供的实际链路。
对外提供的虚服务IP,即用户发送报文的目的网段。
Outbound链路负载均衡中VSIP为内网用户发送报文的目的网段。
用户将访问VSIP的报文发送到负载均衡设备后,负载均衡设备依次根据持续性功能、ACL策略、就近性算法、调度算法选择最佳的物理链路,并将内网访问外网的业务流量分发到该链路。
图1Outbound链路负载均衡流程图
(1)负载均衡设备ADX接收内网用户流量
(2)负载均衡设备ADX依次根据持续性功能、ACL策略、就近性算法、调度算法进行链路选择(在Outbound链路负载均衡组网中,通常使用就近性算法或带宽调度算法实现流量分发)
(3)负载均衡设备ADX按照链路选择的结果将流量转发给选定的链路
(4)负载均衡设备ADX接收外网用户流量
(5)负载均衡设备ADX将流量转发给内网用户
●可以和NAT应用网关共同组网,不同的链路使用不同的源地址,从而保证往返报文穿过同一条链路。
●通过健康性检测,可以检查链路内任意节点的连通性,从而有效保证整条路径的可达性。
●通过调度算法,在多条链路间均衡流量,并支持按照带宽进行负载均衡。
●利用就近性算法动态计算链路的质量,将流量分发到当前最优链路上。
2.5.2Inbound链路负载均衡
内网和外网之间存在多条链路时,通过Inbound链路负载均衡可以实现在多条链路上分担外网用户访问内网服务器的流量。
Inbound链路负载均衡的典型组网如图12所示。
图1Inbound链路负载均衡组网图
Inbound链路负载均衡包括以下几个基本元素:
负责引导外网流量通过不同物理链路转发到内网,从而实现流量在多条物理链路上分担的设备。
同时,负载均衡设备ADX还需要作为待解析域名的权威名称服务器。
●本地DNS服务器:
负责解析外网用户发送的DNS请求、并将该请求转发给权威名称服务器——负载均衡设备ADX的本地DNS服务器。
Inbound链路负载均衡中,负载均衡设备作为权威名称服务器记录域名与内网服务器IP地址的映射关系。
一个域名可以映射为多个IP地址,其中每个IP地址对应一条物理链路。
外网用户通过域名方式访问内网服务器时,本地DNS服务器将域名解析请求转发给权威名称服务器——负载均衡设备,负载均衡设备依次根据持续性功能、ACL策略、就近性算法选择最佳的物理链路,并将通过该链路与外网连接的接口IP地址作为DNS域名解析结果反馈给外网用户,外网用户通过该链路访问内网服务器。
图1Inbound链路负载均衡流程图
(1)外网用户通过域名访问内网服务器时,首先要进行DNS解析,向其本地DNS服务器发送DNS请求
(2)本地DNS服务器将DNS请求转发给域名对应的权威名称服务器——负载均衡设备ADX
(3)负载均衡设备ADX根据DNS请求的域名、持续性功能、ACL策略、就近性算法选择最优的物理链路,并将通过该物理链路与外网连接的接口IP地址作为域名解析结果(在Inbound链路负载均衡组网中,通常使用就近性算法实现外网到内网流量在多条链路间均衡)
(4)负载均衡设备ADX按照域名解析的结果,将DNS应答发送给本地DNS服务器
(5)本地DNS服务器将解析结果转发给用户
(6)用户使用解析结果选择的链路,对内网服务器进行访问
●可以和服务器负载均衡配合适用,实现外网用户访问内网服务器流量在多条链路间均衡的同时,也实现了流量在多台服务器间均衡。
●利用就近性算法动态计算链路的质量,保证转发流量的链路是当前最优的链路。
2.6负载均衡设备的双机热备
无论是服务器负载均衡、网关负载均衡,还是链路负载均衡,负载均衡设备均处于关键路径,负载均衡设备的稳定性和安全性直接影响了网络的可用性。
为了避免单点故障,负载均衡设备必须支持双机热备,即在两台负载均衡设备之间通过备份链路备份对端设备上的业务,保证两台设备上的业务状态是一致的。
当其中一台设备发生故障时,利用VRRP或动态路由(例如OSPF)机制将业务流量切换到另一台设备,由于另一台设备已经备份了故障设备上的业务信息,业务数据流便可以从该设备上通过,从而在很大程度上避免了网络业务的中断。
负载均衡设备双机热备方案支持两种工作模式:
●主备模式:
两台负载均衡设备中一台作为主设备,另一台作为备份设备。
主设备处理所有业务,并将产生的业务信息通过备份链路传送到备份设备;
备份设备不处理业务,只用做备份。
当主设备故障,备份设备接替主设备处理业务,从而保证新发起的负载均衡业务能正常处理,当前正在进行的负载均衡业务也不会中断。
●负载分担模式:
两台负载均衡设备均为主设备,都处理业务流量,同时又作为另一台设备的备份设备,备份对端的业务信息。
当其中一台设备故障后,另一台设备负责处理全部业务,从而保证新发起的负载均衡业务能正常处理,当前正在进行的负载均衡业务也不会中断。
以网关负载均衡为例,负载均衡双机热备的组网如图14所示。
图1网关负载均衡双机热备组网图
2.7负载均衡设备的的部署方式
负载均衡设备通常以直联和单臂两种方式部署在网络中。
2.7.1对称方式
如图15所示,对称方式,即负载均衡设备直接部署在网络的主干中,服务器和客户端之间的负载均衡报文直接由负载均衡设备进行路由。
图1直联方式示意图
2.7.2单臂模式
如图16所示,单臂模式指负载均衡设备不作为服务器和客户端之间的路由设备,而是单臂在路由设备上。
在DR方式中,负载均衡设备只能使用单臂模式。
图1单臂模式示意图
单臂模式中,用于中转的路由交换设备上的配置至关重要。
从客户端至服务器的流量如果要达到负载均衡设备,必须在路由交换设备上设置到VSIP的路由。
从服务器到客户端的流量如果不必经过负载均衡设备,则可以通过中转设备直接返回客户端,如果需要返回负载均衡设备,则有几种方式:
●服务器和负载均衡设备在同一个二层网络,服务器设置其网关为负载均衡设备。
●中转设备上配置策略路由,将从服务器返回的流量定向到负载均衡设备。
●负载均衡设备在转发客户端流量时进行源NAT。
3迪普科技负载均衡技术特色
3.1多种负载均衡调度算法
调度算法指对需要负载均衡的流量,按照一定的策略分发到指定的服务器群中的服务器或指定链路组的某条链路上,使得各台服务器或链路尽可能地保持负载均衡。
调度算法以连接为粒度,同一条连接的所有报文都会分发到同一个服务器或链路上。
这种细粒度的调度在一定程度上可以避免单个用户访问的突发性引起服务器或链路间的负载不平衡。
负载均衡技术持丰富的负载均衡调度算法。
不同调度算法所实现的负载均衡效果不同,可以需要根据具体的应用场景,采用不同的算法。
3.1.1静态调度算法
静态算法,即按照预先设定策略,进行分发,不考虑当前各实服务或链路的实际负载情况。
算法特点:
实现简单,调度快捷。
●轮转(RoundRobinScheduling)
依次将请求分发到不同的服务器或链路上,使得各个真实服务器或链路平均分担用户的连接请求。
如:
实服务群中包含三个实服务A、B、C,假设各实服务均未达到连接上限,最后分发给A、B、C的连接数之比为1:
1:
1。
适用场景:
服务器集群中各服务器性能或链路群中各链路带宽相当,无优劣之分。
●加权轮转(WeightedRoundRobinScheduling)
按照权值大小,依次将请