{eval=Array;=+count(Array);}
当单个节点的服务,无法支持当前的大量请求时,我们会部署多个节点,即所谓的集群,此时要使每个节点收到的请求均匀的算法,这个策略就是所谓的负载均衡了。
常见的负载均衡算法,有权重随机、Hash、轮询。
1.权重随机
这个是最简单,也是最常用的负载均衡算法,即每个请求过来,会随机到任何一个服务节点上,主流的rpc框架Dubbo,默认使用基于权重随机算法。
2.Hash
可以将客服端即请求端的ip,通过hash计算,得到一个数值,再取服务节点数的模,分配到对应的服务节点上。
3.轮询
将请求按照顺序,依次分配到节点1、节点2、节点3等节点上,如此循环往复。
想想如果没有负载均衡算法,我们的请求有可能都打到同一节点上,有可能将这个节点给打死,而其他节点的机器闲置着没有提供服务,浪费资源。所以这就是负载均衡算法存在的意义了,可以将请求合理分发到各个节点,实现真正意义上多个节点提供服务的效果。
我举个简单的例子。
大家都逛过超市。小超市一般就一个收银台,而大超市一般有好几个收银台。为什么?因为大超市的人流量大啊。如果大超市只有一个收银台,那可能买个东西得好几个小时,那还不如去小超市
有了多个收银台,那就需要确保每个收银台的人基本都是差不多的。如果大家还是挤到一个收银台去结账,那其它收银台开了还有什么意义?
每个收银台平均时间内处理客户的数量就是负载。
每个收银台的负载基本相当,就是负载均衡。
确保每个收银台的负载基本相当的算法,就是负载均衡算法。
也就是大家选择哪个收银台的方法,就是负载均衡算法。
假设大家比较佛性,逛到哪个收银台就到哪个收银台结账,那这就是随机算法。
负载均衡通俗的说就是将业务流量平均分摊到多条不同链路上。
按照数据包来进行均衡,前一个数据包从第一条链路走,下一个数据包走第二条链路,这样往下轮流分配;
按照源地址或目的地址方式均衡,将相同的源或目的地走一条链路的方式;
其它标记的方式进行均衡;
物理链路叠加方式;
逻辑链路叠加方式;
路由协议方式;
为何要做负载均衡?
单条链路或者服务器性能不够,需要分摊;
我是猿说,专注于科技与互联网内容。
负载均衡的专业解释如下:
负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。负载均衡(Load Balance)其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。
这样说确实不好懂,咱们换个说法:
在去往A城市的高速公路收费站,很多车想要通行,但是每辆车都需要一定的收费时间,那么在只有一个收费口的时候,势必会造成堵塞,后面的车辆需要等待的时间会越长,久而久之,车主就很不耐烦。
我们可以把
去往A城市的高速路比喻为生产环境服务器
收费口比喻为操作单元(web服务等)
车辆车主比喻为互联网用户
所以负载均衡就是为了解决这个问题,一般的方法即为:开辟更多的收费口(即:分摊到多个操作单元)
说到这个顺便也谈谈分布式与负载均衡的简单比较,同样是上面的说法,分布式不同的是,它建立了多个地方去往A城市的高速路(即:多个地方的同步生产环境服务器),其他的操作形式与负载均衡一致。
文章为字节跳动作者 猿说 悟空问答原创专稿,未经允许转载、抄袭必究!我是一名互联网技术从业者、也是一位互联网观察者,原创文章以不同视角观察为主,不追逐热点,只观察有价值的,欢迎大家关注我的账号,我们一起探讨互联网与生活!
负载均衡产⽣生的背景
LB(Load Balance,负载均衡)是⼀一种集群技术,它将特定的业务(⽹网络服务、 ⽹网络流量量等)分担给多台⽹网络设备(包括服务器器、防⽕火墙等)或多条链路路,从⽽而 提⾼高了了业务处理理能⼒力力,保证了了业务的⾼高可靠性。
负载均衡技术具有⼀一下优势:
(1)⾼高性能:负载均衡技术将业务较均衡的分担到多台设备或链路路上,从⽽而提 ⾼高了了整个系统的性能;
(2)可扩展性:负载均衡技术可以⽅方便便的增加集群中设备或链路路的数量量,在不不 降低业务质量量的前提下满⾜足不不断增⻓长的业务需求;
(3)⾼高可靠性:单个甚⾄至多个设备或链路路法神故障也不不会导致业务中断,提⾼高 了了整个系统的可靠性;
(4)可管理理性:⼤大量量的管理理共组都集中在使⽤用负载均衡技术的设备上,设备集 群或链路路集群只需要维护通过的配置即可;
(5)透明性:对⽤用户⽽而⾔言,集群等于⼀一个或多个⾼高可靠性、⾼高性能的设备或链 路路,⽤用户感知不不到,也不不关⼼心具体的⽹网络结构,增加或减少设备或链路路数量量都不不 会影响正常的业务。
负载均衡技术分类:
(1) 服务器器负载均衡:在数据中⼼心等组⽹网环境中,可以采⽤用服务器器负载 均衡,将⽹网络服务分担给多台服务器器进⾏行行处理理,提⾼高数据中⼼心的业务处理理能⼒力力;
(2) 链路路负载均衡:在有多个运营商出接⼝口的组⽹网环境中,可以采⽤用出 ⽅方向多链路路动态负载均衡,实现链路路的动态选择,提⾼高服务的可靠性;
(3) 防⽕火墙负载均衡:在防⽕火墙处理理能⼒力力成为瓶颈的组⽹网环境中,可以 采⽤用防⽕火墙负载均衡,将⽹网络流量量分担给多台防⽕火墙设备,提⾼高防⽕火桥的处理理能 ⼒力力;
1.1 服务器器负载均衡 随着Internet的快速发展和业务量量的不不断提⾼高,基于⽹网络的数据访问流量量迅速增 ⻓长,特别是对数据中⼼心、⼤大型企业以及⻔门户⽹网站等的访问,其访问流量量甚⾄至达到 了了10Gb/s的级别;同时,服务器器⽹网站借助HTTP,FTP,SMTP等应⽤用程序,为 访问者提供了了越来越丰富的内容和信息,服务器器逐渐被数据淹没;另外,⼤大部分
⽹网站(尤其电⼦子商务等⽹网站)都需要提供不不间断24⼩小时服务,任何服务中断或通 信中的关键数据丢失都会造成直接的商业损失。这些都对应⽤用服务提出了了⾼高性能 和⾼高可靠性的需求。
但是,相对于⽹网络技术的发展,服务器器处理理器器速度和内存访问速度的增⻓长却远远
低于⽹网络带宽和应⽤用服务的增⻓长,⽹网络带宽增⻓长的同时带来的⽤用户数量量的增⻓长,
也使得服务器器资源消耗严重,因⽽而服务器器成为了了⽹网络瓶颈;传统的单机模式,也
往往成为⽹网络故障点。
1.1.1 服务器器负载均衡解决⽅方案 多台服务器器通过⽹网络设备相连组成⼀一个服务器器集群,每台服务器器都提供相同或相 似的⽹网络服务。服务器器集群前端部署⼀一台负载均衡设备,负责根据已配置均衡策 略略将⽤用户请求在服务器器集群中的分发,为⽤用户提供服务,并对服务器器可⽤用性的维 护。
该⽅方案的优势:
(1)低成本:按照业务量量增加服务器器个数即可;已有资源不不会浪费,新增资源 ⽆无需选择昂贵的⾼高端设备。
(2)可扩展性:当业务量量增⻓长时,系统可通过增加服务器器来满⾜足需求,且不不影 响已有业务,不不降低服务质量量。
(3)⾼高可靠性:单台服务器器故障时,由负载均衡设备将后续业务转向其他服务 器器,不不影响后续业务提供,7 × 24⼩小时业务不不中断。
1.2 链路路负载均衡 就互联⽹网接⼊入来说,众所周知,由于国内的两⼤大运营商---电信与⽹网通之间的瓶颈 问题,导致电信⽹网通⽤用户互访时出现延迟较,响应缓慢,更更有甚者会直接导致⽤用 户正常的业务⽆无法运⾏行行。⽽而且单条链路路存在单点故障的隐患,当互联⽹网链路路 DOWD掉时,可能引起的直接问题就是⽤用户所有依赖互联⽹网的业务及对互联⽹网的 访问都会因此⽽而⽆无法使⽤用,这对于⼀一个⽤用户来说是⽆无法想象的。
⽬目前在互联⽹网接⼊入时存在的主要问题: (1)电信⽹网通瓶颈问题
(2)单条链路路存在单点故障 (3)主备链路路需要⼈人⼯工切换
1.2.1 链路路负载均衡解决⽅方案 通过接⼊入电信⽹网通两条(或多条链路路)来保障⽹网络的连通性,持续性以及快速访 问。并提供各链路路间的智能备份,实现链路路级别的快速⾼高可⽤用。
1.2.1.1 outbound⽅方向链路路负载均衡(从内到外的链路路负载均衡) 通过电信、⽹网通双链路路的接⼊入,并使⽤用静态和动态相结合的多链路路负载均衡功能, 使内部⽤用户⽆无论是访问⽹网通资源还是电信资源,都可以从相应的线路路进⾏行行访问.解 决了了从内到外的电信⽹网通的互访瓶颈。
1.2.1.2 inbound⽅方向链路路负载均衡(从外到内的链路路负载均衡) 解决外部⽤用户访问内部服务器器时所遇到的不不同ISP的互访瓶颈.当ISP A的⽤用户访问 内部的www.abc.com时把ISP A接⼝口的地址解析给⽤用户,使其通过ISP A线路路来访问 www.abc.com. 当ISP B⽤用户来访问内部的www.abc.com时,再把ISP B接⼝口的地址 解析给⽤用户,使其通过ISP B的线路路来访问www.abc.com.
1.2.1.3 多条链并⾏行行使⽤用以及智能备份 多链路路负载均衡还提供了了链路路的⾃自动探测及备份功能,当某条链路路断掉时,⾃自动 将流量量切换到正常链路路上,同时对外提供的访问,也将只解析正常链路路的地址, 使访问⼈人员通过当前正常的链路路来访问内部的服务。从进出双向来保障链路路的正 常⼯工作。
1.3 ⽹网关负载均衡 SSL-VPN⽹网关,IPSec⽹网关,防⽕火墙⽹网关等⽹网关设备,因为业务处理理的复杂性, 往往成为⽹网络瓶颈,以防⽕火墙⽹网关为例例:防⽕火墙作为⽹网络部署的“警卫”,在⽹网络 中不不可或缺,但其往往不不得不不⾯面临这样的尴尬:⽹网络防卫越严格,需要越仔细盘
查过往的报⽂文,从⽽而导致转发性能越低,成为⽹网络瓶颈。
在这种情况,如果废弃现有设备去做⼤大量量的硬件升级,必将造成资源浪费,随着
业务量量的不不断提升,设备也将频繁升级。频繁升级的⾼高成本是相当可怕的。因此
将⽹网关设备等同于服务器器,组建⽹网关集群的⽅方案应运⽽而⽣生:将多个⽹网关设备并联
到⽹网络中,从⽽而形成集群处理理能⼒力力,提⾼高⽹网络处理理能⼒力力。
1.3.1 ⽹网关负载均衡解决⽅方案
防⽕火墙负载均衡包括以下⼏几个基本元素:
(1) 集群:提供⽹网络流量量负载均衡的群体,包括LB、Fireall;
(2) LB:负责分发请求发起⽅方的⽹网络流量量到多台Firewall设备,LB⼜又分为⼀一
级和⼆二级,如果请求发起⽅方的流量量⽅方向为Host A-àHost B,则LB A为⼀一级,LB B 为⼆二级;⽅方向类似;
(3) Firewall:正常处理理数据的防⽕火墙。 2 负载均衡调度算法
负载均和产品中的关键技术是调度,⽬目前常⽤用的调度算法有 轮询(Round Robin)
加权轮询(Weighted Round Robin)
最少连接(Least Connections)
加权最少连接(Weighted Least Connections)
随机(Random)
加权随机(Weighted Random)
源地址散列列(Source Hashing)
源地址端⼝口散列列(Source&Port Hashing)
2.1 负载均衡算法介绍 (1)轮询算法
u 新的连接被依次轮询分发到各个实服务上,⽐比如第⼀一个连接分发到第⼀一台服务 器器,第⼆二个连接分发到第⼆二台服务器器上;
u 轮询算法适⽤用于服务器器集群中所有服务器器都有相同的软硬件配置,并且平均服 务器器请求相对均衡的情况;
(2)加权轮询算法
u 根据服务器器不不同的处理理能⼒力力,给服务器器分配不不同的权值,使其能接受相应权值
的服务器器请求;
u 加权轮询算法能确保⾼高性能的服务器器能得到更更多的使⽤用率,避免低性能的服务 器器过载过重;
(3)最少连接数算法
u 最少连接数算法对内部需要负载的每⼀一台服务器器上的连接数都⼀一个记录,记录 当前该服务器器正在处理理的连接数,当有新的服务连接请求时,把请求分发给连接 数最少的服务器器,使均衡更更加符合实际情况,负载更更具啊均衡;
u 最少连接数算法适合⻓长时间处理理的请求,例例如:FTP。
u 加权最少连接数算法,即将加权与连接数配合使⽤用,根据连接数与加权的⽐比例例
计算出当前请求应该分发给哪个具体的服务器器; (4)随机算法
u 将新连接请求随机分发给各个服务器器;
u 加权随机算法,即将加权与随机算法配合使⽤用,根据随机数与加权的⽐比例例计算
出当前请求应该分发给哪个具体的服务器器; (5)源地址散列列
u 根据新连接请求的源IP地址进⾏行行散列列HASH的结果,决定将请求分发给具体的 服务器器;
u 来在相同客户端的连接会被分发到相同的服务器器上;
2.2 持续性 将多个连接持续重定向到同⼀一个服务器器的策略略,就是持续性功能。根据持续性原 则,建⽴立会话表项,保证后续业务报⽂文都送往同⼀一个服务器器处理理。⽐比如使⽤用源地 址建⽴立持续性表项,保证持续性。
u 基于源IP地址的持续性功能:
负载均衡设备接收到某⼀一客户端的某⼀一业务的⾸首次请求时,建⽴立持续性表项,记 录为该客户分配的服务器器情况,在会话表项⽣生存周期内,后续该业务报⽂文都将发 往该服务器器处理理。基于源IP地址持续性功能的特点是:实现简洁快速。
u Cookies保持 Cookies持续性利利⽤用客户机存储的cookies信息来吧客户机连接到合适的服务器器
上,其原理理如下:
(1) ⾸首次命中Http请求(不不带cookes)进⾏行行LB,此时LB任选⼀一台服务器器, 将请求转发⾄至该服务器器;
(2) 来⾃自该服务器器的Http回复报⽂文此时包括⼀一个空⽩白的cookies,LB重写 cookies,并再粘贴⼀一个特殊的cookies后将http报⽂文发送回去;
(3) 再次命中Http请求(带有与上⾯面形相同的cookies)进⼊入LB,LB设备借
助cookies信息确定合适的服务器器;
3 服务器器负载均衡技术介绍
3.1 概念介绍
u 虚服务:负载均衡设备对外提供的服务称为虚服务,虚服务由VPN实例例,虚服 务IP地址、服务协议、服务端⼝口号唯⼀一标识,配置负载均衡设备上,客户的访问 请求通过公关⽹网络或私有⽹网络到达负载均衡设备时,匹配到虚服务后,由负载均 衡设备按照既定的策略略分发给实服务;
u 实服务:实服务器器是真实服务器器提供⼀一种服务,该服务含义⽐比较⼴广泛,可以是 传统的FTP,HTTP等业务,也可以是⼴广泛的转发服务,如防⽕火墙⽹网关负载均衡 中,实服务只是报⽂文的转发路路径;
u 实服务组:为了了便便于对实服务进⾏行行管理理,将多个实服务的⼀一些共有属性提取出 来形成实服务组,⼀一个虚服务对应⼀一个实服务组,⼀一个实服务组对应多个实服 务,相同的实服务组不不能属于不不同的虚服务;
3.2 服务器器负载均衡⼯工作机制 服务器器负载均衡有两种⼯工作⽅方式:
u NAT(NetworkAddressTranslation,⽹网络地址转换)⽅方式
u 直接路路由(DirectRouting,简称DR)⽅方式
(1)NAT⽅方式 NAT⽅方式组⽹网灵活,后端服务器器可以位于不不同的物理理位置,不不同的局域⽹网内。
1、实现原理理
客户端将到VSIP的请求发送给服务器器群前端的负载均衡设备,负载均衡设备上的 虚服务接收客户端请求,通过调度算法,选择真实服务器器,再通过⽹网络地址转 换,⽤用真实服务器器地址重写请求报⽂文的⽬目标地址后,将请求发送给选定的真实服 务器器;真实服务器器的响应报⽂文通过负载均衡设备时,报⽂文的源地址被还原为虚服 务的VSIP,再返回给客户,完成整个负载调度过程。
2、技术特点
组⽹网灵活,对服务器器没有额外要求,不不需要修改服务器器配置,适⽤用于各种组⽹网。
步骤
说明
源IP
⽬目的IP
1 Host发放请求报⽂文 Host-IP
VIP
2 LB收到请求报⽂文后,根据调度算法计算出请求报⽂文分发给哪台服务器器 -
-
3
LB使⽤用DNAT技术分发报⽂文
Host-IP
Server IP
4
Server接收并处理理请求,返回相应报⽂文
Server IP
Host-IP
5 LB接收相应报⽂文,转换源IP后转发 VIP
Host-IP
(2)DR⽅方式
相对于NAT 组⽹网⽅方式,DR 组⽹网⽅方式,只有客户端的请求报⽂文通过LB,服务器器的
响应报⽂文不不经过LB,从⽽而减少了了LB的负载,有效的避免了了LB成为⽹网络瓶颈。 1、实现原理理
DR⽅方式的服务器器负载均衡时,除了了LB设备上配置了了VSIP,真实服务器器也都配置 了了VSIP址,配置的VSIP要求不不能响应ARP请求,例例如在环回接⼝口上配置VSIP。 发送给VSIP的报⽂文,由LB分发给相应的真实服务器器,从真实服务器器返回给客户 端的报⽂文直接通过交换机返回。
2、技术特点 只有单边报⽂文经过负载均衡设备,负载均衡设备负担⼩小,不不易易成为瓶颈,转发性
能更更强。
步骤 说明 源IP ⽬目的IP
1
Host发放请求报⽂文
Host-IP
VIP
2
General device收到请求后转发给LB,Server上的VIP不不能发送和相应ARP报⽂文, 因此General device只能将报⽂文转发给LB
Host-IP
VIP
3
LB使⽤用调度算法决定将报⽂文分发给哪台服务器器,在封装报⽂文时⽬目的IP为VIP,⽬目 的MAC为Server的⽬目的MAC(根据ARP请求Server IP获取)
-
-
4 LB转发报⽂文给Server服务器器 Host-IP
VIP
MAC=Server-MAC
5
Server接收并处理理请求,返回相应报⽂文给General device VIP
Host-IP
6
General device收到报⽂文后,直接转发给Host VIP
Host-IP
3.3 服务器器状态检查 所谓状态检查就是指负载均衡设备定期对真实服务器器运⾏行行状态进⾏行行探测,收集相 应信息,及时隔离⼯工作异常的服务器器。健康检查的结果除标识服务器器能否正常⼯工 作外,还可以统计出服务器器影响时间,作为选择服务器器的依据。负载均衡技术⽀支 持丰富的健康状态检查算法,可以有效地探测和检查服务器器的运⾏行行状态。
ICMP:向服务器器发送ICMPEcho报⽂文,若收到ICMP Reply,则服务器器正常; TCP:向服务器器的某端⼝口建⽴立TCP连接,若成功,则服务器器正常;
HTTP:和服务器器的80端⼝口建⽴立TCP连接,然后发出HTTP请求,若所收到的 HTTP应答内容争取,则服务器器正常;
FTP:和服务器器21端⼝口建⽴立连接,然后获取⼀一个服务器器相关⽬目录放置的⽂文件,若 所收到的⽂文件内容正确,则服务器器正常;
4 链路路负载技术介绍 链路路负载均衡根据业务流量量⽅方向可以分为outbound链路路负载均衡和inbound链路路 负载均衡两种情况。
4.1 outbound链路路负载均衡 内⽹网⽤用户和外⽹网之间存在多条链路路时,通过outbound链路路负载均衡可以实现在多 条链路路上分担内⽹网⽤用户访问外⽹网服务器器的流量量。
1、 实现原理理
Outbound链路路负载均衡中VSIP为内⽹网⽤用户发送报⽂文的⽬目的IP,⽤用户将访问VSIP 的报⽂文发送到负载均衡设备上后,负载均衡设备依次根据持续性、ACL策略略、就
近性、调度算法选择最佳的物理理链路路,并将内⽹网流量量分发到该链路路上。 2、 技术特点
可以和NAT应⽤用⽹网关共同组⽹网,不不同的链路路使⽤用不不同的源地址,从⽽而保证往返报 ⽂文穿过同⼀一条链路路;
通过健康性检查,可以检查链路路内任意节点的连通性,从⽽而有效保证整条链路路上
的可达性;
通过调度算法,在多条链路路间均衡流量量,并⽀支持按照带宽进⾏行行负载均衡;
利利⽤用就近性算法动态计算链路路的质量量,将流量量分发到当前最优链路路上。
步骤
说明
1
LB设备接收到内⽹网流量量
2 LB设备依据就近性,ACL策略略,持续性,调度算法选择链路路 3
LB设备将流量量分发到选择出的链路路上 4
LB接收外⽹网⽤用户流量量
5
LB将外⽹网⽤用户流量量转发给设备 4.2 inbound链路路负载均衡
内⽹网和外⽹网之间存在多条链路路时,通过inbound链路路负载均衡可以实现在多条链 路路上分担外⽹网⽤用户访问内⽹网服务器器的流量量。
1、 实现原理理
Inbound链路路负载均衡中,负载均衡设备作为权威服务器器记录域名与内⽹网服务器器 IP地址的映射关系,⼀一个域名可以映射多个IP地址,其中每个IP地址对应⼀一条物 理理链路路;
外⽹网⽤用户通过域名⽅方式访问内⽹网服务器器时 ,本地DNS服务器器将域名解析请求发送 给权威名称服务器器——负载均衡设备,负载均衡设备依据持续性、ACL策略略、就 近性等算法选择最⼤大的链路路,并将通过该链路路与外⽹网接⼝口的IP地址作为DNS解析 结果反馈给外⽹网⽤用户,外⽹网⽤用户通过该链路路访问内⽹网服务器器。
2、 技术特点 可以和服务器器负载均衡配置使⽤用,实现外⽹网⽤用户访问内⽹网服务器器的流量量在多条链
路路间均衡的同时,也实现了了流量量在多台服务器器间均衡;
通过健康检查,可以检查链路路内任意节点的连通性,从⽽而有效保证整条链路路的可
达性;
利利⽤用就近性算法动态计算链路路的质量量,保证转发流量量的链路路时当前最佳的链路路。
步骤
说明
1
外⽹网⽤用户通过域名访问内⽹网服务器器时,⾸首先要进⾏行行DNS解析,向本地DNS服务器器 发送DNS解析请求
本地DNS服务器器将DNS请求转发给权威的名称服务器器——LB 2
LB设备根据请求的域名,持续性,ACL策略略,就近性等算法选择最⽤用的物理理链 路路,并将给物理理链路路与外⽹网连接的接⼝口IP地址作为域名解析结果
3 LB设备将解析结果返回给本地DNS 4
本地DNS将结果返回给Host
5 ⽤用户使⽤用返回的结果对内⽹网发起访问 5 ⽹网关负载均衡
LB Device负载分发请求发起⽅方的⽹网络流量量到多个⽹网关设备,LB⼜又分为⼀一级和⼆二 级,如果请求发起⽅方的⽹网络流量量为Host A->Host B,则LB Device A为⼀一级,LB Device B为⼆二级;
⽹网络设备:正常处理理数据的⽹网络设备; 1、 实现原理理
防⽕火墙是基于会话开展业务的,即⼀一个会话的请求和应答报⽂文必须通过同⼀一个防 ⽕火墙,为了了保证防⽕火墙业务正常进⾏行行,内部组⽹网不不受影响,需要采⽤用双侧防⽕火 墙,即防⽕火墙三明治。在这种组⽹网环境中,对于流⼊入流量量⼀一级LB设备做防⽕火墙负 载均衡,⼆二级LB设备保证从哪个防⽕火墙进来的流量量,还要从哪个防⽕火墙返回;流 出链路路正好相反。
2、 技术特点 服务对象为防⽕火墙,提⾼高防⽕火墙组⽹网灵活性。没有特殊要求,适⽤用于任何组⽹网环
境。 步骤 说明
1
LB A接收⽹网络流量量
2
LB A根据调度算法将流量量转发给某台Firewall
3
Firewall将流量量转发给LB B
4
LB B记录转发流量量的防⽕火墙,并把流量量转发到⽬目的地 5
LB B接收来⾃自⽬目的地的回应流量量
6
LB B根据记录将流量量转发给相应的防⽕火墙
7
Firewall将流量量转发给LB A,LB A将流量量转发回源地址 防⽕火墙负载均衡也可以服务器器负载均衡配置使⽤用:
Cluster A为防⽕火墙负载均衡的集权,ClusterB为服务器器的负载均衡集群,综合组 ⽹网的⼯工作流程就是防⽕火墙和服务器器负载均衡的叠加,这种组⽹网⽅方式避免了了防⽕火墙 称为⽹网络中的瓶颈,也提⾼高了了⽹网络服务的性能和可⽤用性。
6 智能选路路 智能选路路系统——不不仅仅是⼀一项功能
智能选路路系统——是⼀一系列列功能组成的解决⽅方案
6.1 关键⽤用户⾛走某条优质链路路——默认路路由+策略略路路由
选路路原理理
关键⽤用户⾛走某条优质链路路
普通⽤用户按照流量量在出⼝口设备被均衡分配
优势
实现简单,业内路路由器器均可⽀支持
缺点
优质链路路跑满,关键⽤用户业务受影响
存在跨运营商现象,影响⽤用户上⽹网体验
6.2 从运营商下载IP列列表——静态路路由+默认路路由
选路路原理理
从运营商下载ISP的IP地址列列表 通过静态路路由的⽅方式静态选路路,访问电信的⾛走电信,访问联调的⾛走联调 其余流量量⾛走⼤大带宽链路路(默认路路由)
优势
解决了了跨运营商问题,
选择正确的IPS链路路,保证⽤用户体验 实现简单,业内标准路路由器器都可以⽀支持
缺点
1、ISP列列表变化频繁,第⼀一次实施后不不易易更更新和维护
2、若链路路跑满,路路由策略略⽆无法⾃自动变更更,例例如: (a)电信链路路跑满,联调链路路空闲,若⽤用户命中电信地址,仍然会选择电信链
路路,从⽽而造成丢包
(b)电信链路路空闲,默认路路由链路路跑满,后续命中默认路路由的数据仍会现则满 载链路路,造成丢包
6.3 智能选路路 链路路健康监测优先级最⾼高,若链路路失效,则链路路上所有路路由策略略都会失效
策略略路路由⾼高于过载保护,即使某条链路路负载已经超过设定的保护阀值,通过策略略
路路由仍可使⽤用该链路路
若应⽤用路路由、静态路路由、地址库路路由、默认路路由中,存在等价路路由,则可以通过 MLLB进⾏行行负载
6.4 链路路过载保护
链路路负载超过设置的阈值,后续流量量切换到其他链路路
切换的前提是NPE⾃自动探测到链路路到⽬目的IP地址可到
策略略路路由不不受过载保护的影响
6.5 应⽤用路路由 ⾸首包识别数据流的应⽤用,根据应⽤用做选路路,传统应⽤用路路由的难点:
u 基于应⽤用的路路由,⾸首先要把应⽤用识别出来; u ⽬目前应⽤用的识别⽆无外乎DPI,DFI等;
u DPI识别是通过7层特征识别,需要等待流的连接建⽴立完成,7层协议开始传出 后才能识别出来,简单的说,DPI的是被落后与连接的建⽴立,当DPI识别出该应⽤用 的时候,连接已经建⽴立起来,这时如果再做选路路,必须⾸首先要断掉之前建⽴立的流 连接;
6.5.1 ⼤大流量量协议识别
技术点 协议识别:
⼤大容量量传输的应⽤用通常有控制流量量和传输流量量,⽐比如:FTP,迅雷雷,BT,电驴, QVOD等
原理理
控制流量量不不做应⽤用路路由
识别传输流量量做应⽤用路路由
6.5.2 DNS识别
技术点
特定⽹网站,只需要截获DNS报⽂文,就可以知道其类型。
如:优酷、⼟土⾖豆、奇艺、新浪视频等
原理理
监测DNS报⽂文,发现URL请求是特定⽹网站,记录DNS回应报⽂文(即该⽹网站的IP) 进⾏行行路路由,影响IP流量量通过设备时会被路路由到特定的链路路上;
若⻔门户⽹网站包含视频,则只监控视频类。如新浪,只监控video.sina.com.cn
6.5.3 主动控制 技术点
P2P协议,如果断流,双⽅方会发起重传机制
原理理 对于P2P,在初期通过DPI、DFI识别后,主动将其切断; 通过NPE记录的流信息,根据应⽤用路路由重传请求; ⽤用户端不不会有任何感知;
6.5.4 地址库 技术点
某些应⽤用的⽬目的IP固定,且流量量⼤大,如⽹网盘、移动终端应⽤用下载等 原理理
⼈人⼯工收集此类应⽤用的⽬目的IP
6.6 DNS代理理
u DNS代理理不不属于路路由体系,但能影响选路路结果;所有的路路由体系的选路路都是⽬目 的IP通过DNS确认后,才开始⼯工作的;⽽而DNS代理理是帮助⽤用户获得更更合理理IP的技 术,所以其⽣生效是在路路由体系之前;
u 适⽤用范围:⽬目标URL拥有多个ISP的服务器器(⼀一般⼤大型⽹网站都如此);
u ⽤用户价值:在链路路负载过⾼高时,提升⽤用户体验,合理理分配⽬目的IP所属运营商, 结合地址库,使链路路利利⽤用更更均衡。(如,不不开此功能,⽤用户DHCP分配电信 DNS,则10个⽹网站解析出9个电信+1个联通,电信链路路压⼒力力⼤大;开启该功能后, 解析出5个电信+5个联通,减⼩小电信链路路压⼒力力);
6.6.1 DNS代理理实现原理理 原理理
u 设备上开启DNS代理理功能;
u 配置电信和联调的DNS服务器器;
u 当有DNS请求到达设备时,设备会根据链路路负载情况决定向电信DNS服务器器或 联调DNS服务器器发送DNS请求报⽂文;
u DNS回应报⽂文到达设备后,设备透传给Host 6.7 智能选路路实现效果
---------------------
来源:CSDN 原⽂文:https://blog.csdn.net/u013743253/article/details/80476116 版权声明:本⽂文为博主原创⽂文章,转载请附上博⽂文链接!
负载均衡是一种计算机技术,用来在多个计算机(集群)、网络连接、cpu、或其他资源中分配负载,以达到最佳化资源使用、最大化吞吐率、最小响应时间、同时避免过载的目的。
举例:假设有大量的用户同时登陆微信,微信需要对所有的用户进行鉴权,也就是判断密码是否正确,如果只是用一台机器的话,同时处理上亿条请求,那每条请求响应的时间就不能保证,机器的负载也会过高,有挂掉的风险,如果同时部署几十台服务器来进行处理,每台服务器处理一部分请求,那响应时间和负载都可以得到有效的控制。
简单来说,负载均衡就是将访问你网站的流量均衡地发送到服务器集群中的每一个服务器。比如我用的就是小鸟云的负载均衡,可以通过消除单点故障的能力提升整个系统的可用性,对接大流量涌进时所需的容量。
使用负载均衡的原因:当我们的网站只有一个服务器时,如果有大流量的访问,服务器很容易故障,造成网站无法访问,这时候我们就需要部署一个服务器集群,负载均衡就是在面对服务器集群时提供的一种流量分发,把大流量分均衡的分为几股不同的小流量,送到不同的服务器上,这样服务器不会故障,网络也能确保顺畅。
负载均衡(Load Balance)其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。
负载均衡是为了降低服务端压力还有服务风险,将流量分布到不同的机器上可以加强服务端处理能力,也规避了风险,采用单一服务器的话一旦出现流量爆发,服务端可能挂掉。但是负载均衡也带来了数据一致性的问题,session会话共享的问题也需要考虑。
8
回答6
回答0
回答2
回答0
回答6
回答0
回答2
回答0
回答10
回答