51CTO首页
AI.x社区
博客
学堂
精品班
直播训练营
企业培训
鸿蒙开发者社区
WOT技术大会
AIGC创新中国行
公众号矩阵
移动端

负载均衡原理与技术实现

网络 网络优化 网络运维
负载均衡(Load Balance,简称LB)是一种服务器或网络设备的集群技术。负载均衡将特定的业务(网络服务、网络流量等)分担给多个服务器或网络设备,从而提高了业务处理能力,保证了业务的高可用性。负载均衡基本概念有:实服务、实服务组、虚服务、调度算法、持续性等,其常用应用场景主要是服务器负载均衡,链路负载均衡。......

负载均衡(Load Balance,简称LB)是一种服务器或网络设备的集群技术。负载均衡将特定的业务(网络服务、网络流量等)分担给多个服务器或网络设备,从而提高了业务处理能力,保证了业务的高可用性。负载均衡基本概念有:实服务、实服务组、虚服务、调度算法、持续性等,其常用应用场景主要是服务器负载均衡,链路负载均衡。

一 服务器负载均衡

服务器负载均衡根据LB设备处理到的报文层次,分为四层服务器负载均衡和七层负载均衡,四层处理到IP包的IP头,不解析报文四层以上载荷(L4 SLB);七层处理到报文载荷部分,比如HTTP,RTSP,SIP报文头,有时也包括报文内容部分(L7 SLB)。

1.四层服务器负载均衡技术

客户端将请求发送给服务器群前端的负载均衡设备,负载均衡设备上的虚服务接收客户端请求,通过调度算法,选择真实服务器,再通过网络地址转换,用真实服务器地址重写请求报文的目标地址后,将请求发送给选定的真实服务器;真实服务器的响应报文通过负载均衡设备时,报文的源地址被还原为虚服务的VSIP,再返回给客户,完成整个负载调度过程。报文交互流程如下:

新一代负载均衡产品技术实现 图1

NAT方式的服务器负载均衡报文交互流程图报文交互流程说明:

(1)Host发送服务请求报文,源IP为Host IP、目的IP为VSIP

(2)LB Device接收到请求报文后,借助调度算法计算出应该将请求分发给哪台Server

(3)LB Device使用DNAT技术分发报文,源IP为Host IP、目的IP为Server IP

(4)Server接收并处理请求报文,返回响应报文,源IP为Server IP、目的IP为Host IP

(5)LB Device接收响应报文,转换源IP后转发,源IP为VSIP、目的IP为Host IP

2.七层服务器负载均衡技术

七层负载均衡和四层负载均衡相比,只是进行负载均衡的依据不同,而选择确定的实服务器后,所做的处理基本相同,下面以HTTP应用的负载均衡为例来说明。

由于在TCP握手阶段,无法获得HTTP真正的请求内容,因此也就无法将客户的TCP握手报文直接转发给服务器, 必须由负载均衡设备先和客户完成TCP握手,等收到足够的七层内容后,再选择服务器,由负载均衡设备和所选服务器建立TCP连接。

七层负载均衡组网和四层负载均衡组网有一个显著的区别:四层负载均衡每个虚服务对应一个实服务组,实服务组内的所有实服务器提供相同的服务;七层负载均衡每个虚服务对应多个实服务组,每组实服务器提供相同的服务。根据报文内容选择对应的实服务组,然后根据实服务组调度算法选择某一个实服务器。

新一代负载均衡产品技术实现 图2

七层负载均衡组网图

上图中描述了基于HTTP的URI目录信息进行的七层负载均衡部署,报文交互流程图如下:

新一代负载均衡产品技术实现 图3

七层负载均衡报文交互流程图报文交互流程说明:

(1)-(3):Client和LB建立TCP连接;

(4):Client发送HTTP请求,目的IP为虚IP;

(5):LB设备分析报文,根据调度算法选择实服务器,注意此时会缓存该报文;

(6):LB设备向实服务器发Syn报文,序列号为Client的Syn报文序列号

(7):Server发送Syn/Ack报文,目的IP为Client;

(8):LB接收Server的Syn/Ack报文后,回应ACK报文

(9):修改步骤(5)中缓存的报文目的IP和TCP序列号,然后发给Server;

(10):Server发送响应报文到LB;

(11):LB修改步骤(9)中的报文的源地址和TCP序列号后转发给Client。

#p#

二 链路负载均衡

在企业网、运营商链路出口需要部署LB设备以优化链路选择,提升访问体验,链路负载均衡按照流量发起方向分为Inbound负载均衡和Outbound负载均衡

1.Inbound入方向负载均衡

Inbound负载均衡技术是DNS智能解析的一种,外网用户通过域名访问内部服务器时,Local DNS的地址解析请求到达LB设备,LB根据对Local DNS的就近性探测结果响应一个最优的IP地址,外网用户根据这个最优的IP响应进行对内部服务器的访问。

新一代负载均衡产品技术实现 图4

Inbound链路负载均衡组网图

新一代负载均衡产品技术实现 图5

 入方向负载均衡

流程简述如下:

(1)外部用户进行资源访问前先进行DNS解析,向其本地DNS服务器发送DNS请求。

(2)本地DNS服务器将DNS请求的源IP地址替换为自己的IP地址,并转发给域名对应的权威服务器——LB device。

(3)LB device根据DNS请求的域名和配置的Inbound链路负载均衡规则进行域名解析。

(4)LB device按照域名解析的结果,将DNS应答发送给本地DNS服务器。

(5)本地DNS服务器将解析结果转发给用户。

(6)用户使用解析结果选择的链路,直接对LB device进行资源访问。

2.Outbound出方向负载均衡

内网用户访问Internet上其他服务器。 Outbound链路负载均衡中VSIP为内网用户发送报文的目的网段。用户将访问VSIP的报文发送到负载均衡设备后,负载均衡设备依次根据策略、持续性功能、就近性算法、调度算法选择最佳的链路,并将内网访问外网的业务流量分发到该链路。

新一代负载均衡产品技术实现 图6

 

Outbound链路负载均衡组网图

Outbound负载均衡报文交互流程如下:

新一代负载均衡产品技术实现 图7

 Outbound 链路负载均衡流程图

Outbound负载均衡报文交互流程说明:

(1)LB Device接收内网用户流量 -

(2)LB Device依次根据策略、持续性功能、就近性算法、调度算法进行链路选择 在Outbound链路负载均衡组网中,通常使用就近性算法或带宽调度算法实现流量分发

(3)LB device按照链路选择的结果将流量转发给选定的链路 -

(4)LB Device接收外网用户流量 -

(5)LB Device将流量转发给内网用户

#p#

三 负载均衡优化及应用

1.TCP连接复用

连接复用功能通过使用连接池技术,可以将前端大量的客户的HTTP请求复用到后端与服务器建立的少量的TCP长连接上,大大减小服务器的性能负载,减小与服务器之间新建TCP连接所带来的延时,并最大限度减少后端服务器的并发连接数,降低服务器的资源占用。

新一代负载均衡产品技术实现 图8

TCP连接复用示意图上图给出了TCP连接复用的简单过程描述。由Client端发送的Req1/ Req2/ Req3三个HTTP请求,经过LB设备后,复用了LB设备和Server端已经建立好的连接,将Client端的三个请求通过两个TCP连接发送给了服务器端。

2.SSL卸载

为了避免明文传输出现的安全问题,对于敏感信息,一般采用SSL协议,如HTTPS,对HTTP协议进行加密,以保证整个HTTP传输过程的安全性。SSL是需要耗费大量CPU资源的一种安全技术,如果由后端的服务器来承担,则会消耗很大的处理能力。应用交付设备为了提升用户的体验,分担服务器的处理压力,将SSL加解密集中在自身的处理上,相对于服务器来说LB能提供更高的SSL处理性能,还能够简化对证书的管理,减少日常管理的工作量,LB的该功能又称为SSL卸载。

下图中Client端发送给Server的所有的HTTPS流量都被LB设备终结,LB设备将SSL终结后,与Server之间可采用HTTP或者弱加密的HTTPS进行通讯。LB设备承担了SSL的卸载工作,从而极大的减小了服务器端对SSL处理的压力,将服务器的处理能力释放出来,更加专注于处理服务器本身承担的业务逻辑。

新一代负载均衡产品技术实现 图9

SSL卸载示意图

SSL卸载的处理流程如下:

新一代负载均衡产品技术实现 图10

SSL卸载过程

(1)客户端向服务器端发送SSL握手请求。

(2)LB设备作为中间的卸载设备,代替服务器端和客户端交互,完成SSL握手过程。

(3)客户端发送SSL加密后的请求数据。

(4)LB设备解密数据。

(5)LB设备将解密后的明文发送给Server。

(6)服务器返回给LB设备回应报文。

(7)LB设备将返回的应答报文加密。

(8)LB设备将加密后的应答报文传给客户端。

3.DRX云环境应用交付

业务负载监控平台通过H3C负载均衡设备的参数设定和监控可以动态感知业务负载变化,并通知云管理平台动态调整业务资源。由此实现用户业务资源的实时动态调整、业务资源优化调配。

当业务负载监控平台发现业务资源需要调整时:业务负载超限—增加资源;业务资源过剩——回收资源,云管理平台通过自动创建、启动或者删除停止虚拟机的方式为业务进行资源动态调整。

四 结束语

负载均衡技术不管应用于用户访问服务器资源,还是应用于多链路出口,均大大提高了对资源的高效利用,显著降低了用户的网络布署成本,提升了用户的网络使用体验。随着云计算的发展,负载均衡的技术实现还将与云计算相结合,在虚拟化和NFV软件定义网关等方面持续发展。

责任编辑:何妍 来源: 《新IT领航第二期(大安全之道)》
相关推荐
解析防火墙负载均衡技术功能实现原理
在谈及负载均衡应用的时候,说的最多的就是流量控制,网站负载,以及服务器负载等等。那么现在要给大家介绍的是防火墙负载均衡的应用。

2012-10-19 10:45:22

防火墙 负载均衡 防火墙负载均衡
浅谈负载均衡技术分类
负载均衡主要有两种常用技术。第一种是将大量的同时发送的数据流在多个节点上进行处理。第二种是将单一负载的大量分担在多个节点上进行并行处理,并且在所有节点都完成处理后将结果合并起来输出给用户。

2018-02-23 14:44:41

负载均衡 技术 分类
linux中的IP负载均衡实现原理
文章介绍了IP负载均衡技术在LVS中的使用。从集群的层次结构出发,深入对负载均衡的解析。从而,让您学透这方面的知识。

2010-05-06 12:18:34

IP负载均衡
浅析网络负载均衡技术实现策略
如何在完成同样功能的多个网络设备之间实现合理的业务量分配,使之不会出现一台设备过忙、而其他的设备却没有充分发挥处理能力的情况。要解决这一问题,可以采用负载均衡的方法。

2009-02-27 10:59:00

网络技术 负载均衡
负载均衡原理最全详解
总的来说,一般是LVS做4层负载,Nginx或者Haproxy做7层负载,性能上LVSHANginx,功能性和便利性上NginxHALVS。

2024-03-28 13:10:20

负载均衡 LVS Haproxy
负载均衡的几种算法原理及代码实现
轮询算法:将接收到的请求依次转发到后端服务器上,它均衡对待(一视同仁)所有服务器,而不关心当前服务器实际连接数及当前系统负载。

2018-07-27 08:39:44

负载均衡 算法 实现
实现高可用?先搞定负载均衡原理
在互联网大行其道的今天,随着业务的迅猛增长,技术上我们常常要面对高并发,大流量。

2019-08-26 08:36:09

负载均衡 高可用 Nginx
Nginx 动静分离负载均衡实现
企业中,随着用户的增长,数据量也几乎成几何增长,数据越来越大,随之也就出现了各种应用的瓶颈问题。

2020-04-20 20:27:59

Nginx 动静分离 负载均衡
负载均衡技术将被取代?
本文详细介绍了负载均衡的基本内容和应用交付概念。其中我们分析了现在的市场需求,以及网络结构中的概念分析。那么更具体的情况请见下文。

2010-04-21 11:35:30

负载均衡技术
常用负载均衡技术介绍
我们来介绍一下负载均衡技术的相关内容。我们首先从集群概念引入,之后罗列了几种常用的负载均衡技术,之后详述了tomcat负载均衡的相关内容。

2010-04-21 17:53:09

负载均衡技术
关于DNS负载均衡技术
对于DNS负载均衡的一个应用举例介绍,通过对这个案例的分析,我们能学到相关的原理知识和网络构架。希望对大家有所帮助。

2010-04-26 17:19:26

DNS负载均衡
实践 | Nginx动静分离负载均衡实现
企业中,随着用户的增长,数据量也几乎成几何增长,数据越来越大,随之也就出现了各种应用的瓶颈问题。

2019-03-13 12:04:41

Nginx 负载均衡 动静分离
VRRP路由技术如何实现路由冗余以及负载均衡
文章主要针对VRRP路由技术进行了详细的讲解,同时目前VRRP路由技术的应用也很广泛,相信随着通信行业的发展,路由器技术也会更加的完善稳定,给用户带来良好的网络环境。

2009-11-11 16:56:46

VRRP路由技术
负载均衡层设计方案之负载均衡技术总结篇
通过前面文章的介绍,并不能覆盖负载均衡层的所有技术,但是可以作为一个引子,告诉各位读者一个学习和使用负载均衡技术的思路。虽然后面我们将转向“业务层”和“业务通信”层的介绍,但是对负载均衡层的介绍也不会停止。

2019-09-27 08:18:13

负载均衡 核心 Key
Web服务器Tomcat集群负载均衡技术
如果该服务器坏掉,那么网站就立刻无法运作了。不论是因为要有较佳的扩充性还是容错能力,我们都会想在一台以上的服务器计算机上执行WEB应用程序。所以,这时候我们就需要用到集群和负载均衡技术了。

2010-09-15 14:50:57

集群 负载均衡 Tomcat
Spring Cloud 远程接口调用OpenFeign负载均衡实现原理详解
容器在启动过程中会找到所有FeignClient的接口类,然后将这些类注册为容器Bean,而每一个Feign客户端对应的是FactoryBean对象FeignClientFactoryBean。

2023-07-13 09:01:39

Bean 接口 容器
夯实基础之负载均衡技术
本文摘要:本文介绍了负载均衡技术的相关基础知识。包括概述,分类,和算法这是三个大的方面。通过这三个方面的知识掌握,我们基本上能理解了这个技术的作用了。

2010-05-10 14:20:24

负载均衡技术
负载均衡技术也谈融合
本文详细介绍了负载均衡技术的基本概念,从此谈起它的应用和发展,以及现在的应用交付和大应用交付的概念。具体内容详见下文。

2010-04-21 11:55:34

基于开源的负载均衡技术
本文所阐述的负载均衡技术主要基于网络加速方面的角度。通过负载均衡技术的实施达到广域网加速的目的。现在我们就从一些细化的方面来分析吧。

2010-05-10 14:17:46

负载均衡技术
各种网站负载均衡技术介绍
由于目前现有网络的各个核心部分随着业务量的提高,访问量和数据流量的快速增长,其处理能力和计算强度也相应地增大,使得单一的服务器设备根本无法承担。

2011-11-03 14:48:41

负载均衡 服务器

深圳SEO优化公司东营关键词按天收费报价爱联百度爱采购芜湖百度关键词包年推广多少钱呼和浩特建设网站多少钱襄樊品牌网站设计价格资阳推广网站推荐黄南建网站多少钱长春外贸网站建设多少钱延边网站推广哪家好长葛外贸网站设计报价昌吉百度网站优化排名多少钱泰州网站关键词优化哪家好苏州设计网站哪家好自贡关键词按天计费多少钱抚顺网络广告推广报价包头关键词按天收费报价庆阳关键词按天计费多少钱文山外贸网站设计多少钱咸阳网站关键词优化价格营口阿里店铺托管多少钱保定建网站吉安网站优化软件公司大庆网站优化软件公司崇左关键词排名包年推广公司阿坝关键词排名多少钱盘锦阿里店铺运营哪家好伊犁网站推广多少钱邯郸阿里店铺托管价格中山企业网站改版价格苏州网站优化多少钱歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化