业务需求驱动下的负载均衡技术研究与应用_第1页
业务需求驱动下的负载均衡技术研究与应用_第2页
业务需求驱动下的负载均衡技术研究与应用_第3页
业务需求驱动下的负载均衡技术研究与应用_第4页
业务需求驱动下的负载均衡技术研究与应用_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

业务需求驱动下的负载均衡技术研究与应用蒋鸿城1,洪建光1,谢知寒2(1.浙江省电力公司,浙江 杭州 310007;2.杭州市电力局 城北供电局,浙江 杭州 310004)摘 要:Web-Base的应用已成为主流的应用模式,大型应用的“Web化”,从传统的客户端服务器模式向基于浏览器服务器模式进行迁移是合理的发展趋势,浏览器作为通用客户端,在 大型应用中能够显著降低成本、降低用户应用系统的复杂性并提高其工作效率。应用供应商大 部分都提供基于Web的应用程序版本,来适应这样业务需求的改变。论述传统的负载均衡技术在 大型应用向Web化转变过程中存在的技术上的不足,研究新一代负载均衡技术的技术要求、 特点和技术发展趋势,并阐述实现这些技术的原理。关键词:大型应用;Web化;负载均衡0 引言负载均衡技术是指在均衡服务 器集群中所有服务器和应用程序之间 的流量负载的应用,目前负载均衡技 术大多数是用于提高Internet服务器 程序的可用性和可伸缩性,诸如应用 在Web服务器、Ftp服务器或其他关 键任务服务器上。负载均衡技术的发展经历了以 下过程。(1)第度代负载均衡技术特 点。第代第层负载均衡技术,功 能大多通过软件实现。其负载均衡技 术在多个服务器上分配来自客户的连 接负载,将多个单独服务器作为一个 虚拟的大型服务器有效呈现给外界。 其实现的原理是,创建一个虚拟(IP) 地址,然后将浏览器的数据包转发到 带真实IP地址的多个真实服务器中。 第4层服务器负载均衡(server loadbalance,以下简称SLB)技术,依此也统称第47层负载均衡。第代负载均衡技术还具有简单的层以 上数据深层检测的能力。通过硬件或 基于ASIC的独特架构,提高数据包 处理性能。可基于Http报头中发送 的cookie值做出负载均衡决策,这是 一个重要技术进步标志,还能实现简 单防火墙、网桥和不带IP地址均衡功 能等粒度更细的第4层功能控制。但 其第层SLB的技术与第代负载均 衡技术极其相似,第层功能也相对 简单,数据处理能力也非常有效。可 以说第2代数据均衡技术中间过渡技 术特点明显,最终将被能够处理应用 级数据并执行SLB功能的新一代负载均衡技术平台淘汰。赖数据包的IP地址和TCP端口等简单的TCP/IP信息做出负载均衡决 策。(2)第代负载均衡技术特 点。第47层SLB,部分功能由专门 的硬件实现。第代负载均衡技术能提供第层以上的负载均衡功能,因1 新一代负载均衡技术特点新一代负载均衡技术的特征是性 能上将大幅降低服务器群集上的负载,最大限度地发挥Web和应用服务2008 年浙江电力营销专辑ELECTRI C POWER IT69浙江电力营销专辑器的处理性能。由于前2代负载均衡技术限制而 使数据中心必须通过多种设备才能满 足数据中心的需求,这和IT管理者 要求数据中心的基础设施尽量简 化,同时还需要具备控制能力、可 靠性、性能、智能、安全性、价值 和低投入成本要求不符。通过图1可 以看出,新一代负载均衡技术和前2 代负载均衡技术对数据中心架构的 影响。新一代的负载均衡技术在全面 考虑用户、会话和业务内容上下文的 情况下高效处理应用数据,通过对 Http请求优化整合来降低Web服务 器的负担,提高服务器处理上的效 率。除了有传统的第47层流量管 理功能外,还简化了数据中心整体架构,简化了管理和维护方面的复杂性。新一代负载均衡技术需要实现以下技术特点。(1)性能。通过 TCP连接管 理、SSL处理、数据压缩等特性,极 大地提高了Web服务器和后台应用 服务器对Http请求的处理效率,改 善并增强了整体应用系统的处理性 能,保证了最终用户对应用系统的性 能要求。(2)可靠性和可扩展性。针对 Web或应用服务器提供基于Http请 求状态进行判断的负载均衡算法,更 有效地将Http负载进行合理分发。 同时负载均衡设备本身还支持多台设 备集群能力,可以根据实际应用的负 载情况,轻松灵活地进行拓展。(3)灵活有效的管理性。提供 应用规则策略修改功能,能够高效快 速地对Web应用进行深层检测,并根据策略灵活处理应用数据,应对现在和将来可能产生的潜在问题。(4)安全保障。屏蔽用户与服 务器之间的直接连接,在理论上已经 实现了Web或应用服务器网络层面 的安全保障,Web服务器仅仅和负 载均衡设备进行通信,负载均衡设备 作为反向代理来代替Web服务器响 应用户的请求,极大地加强了架构层 的安全性。负载均衡设备本身要有防 范 Dos、 DDos以及常见攻击的手 段,对Http应用数据具有应用层的 安全保护功能。(5)价值。多功能平台有效地 减少了需要由多种设备才能实现的功 能,降低了投资。新一代的负载均衡技术为Web化 的数据中心实现以下目标:1)提高应用响应时间;2)压缩数据,降低50%2008 年浙江电力营销专辑ELECTRI C POWER IT70图 2 负载均衡处理Http连接方式图 3 负载均衡优化链接浙江电力营销专辑带宽,提高带宽利用率;3)提高服务器运行效率;4)增加系统联机处理能 力;5)缩减服务器的投资成本;6) 多台设备的集群能力保障本身的可靠 性;7)提供网络及应用层的安全保 障;8)提供无需改变应用本身而改变 应用行为的能力;9)基于内存的 Cache加速;10)降低管理开销及复 杂性;11)支持线速SSL处理;12)提供全面的安全认证审核功能。分发给每一个用户,通过TCP的有效复用,降低了服务器管理TCP连 接所花费的资源和时间,降低了应用 服务器直接处理大量连接管理所带来 的系统开销。上述过程如图3所示。负载均衡设备支持与最终用户之间的数据通信以压缩的形式进 行,负载均衡设备将Http的响应数 据以标准的压缩算法Deflate或Gzip 方式进行压缩,将减少4080 的数据流量,降低数据流对带宽的 要求的同时也加快了数据在广域网 上传输的时间,提升了应用系统性能。2.1.2 SSL 处理应用服务器处理的SSL数据流转 移到负载均衡设备上来处理,通过由 负载均衡设备上专门的硬件SSL处理 芯片来执行SSL处理,为数据传送提 供较高的安全性,而且处理速度相比 服务器要快得多。同时由于负载均衡 设备替代服务器进行SSL处理也会降 低应用服务器开销,使应用服务器有更多的资源处理Http请求。2.2系统可靠性保证2.2.1 负载均衡算法负载均衡算法设计的好坏直接 决定了负载均衡设备的性能和效率, 设计不好的算法,不但不能有效地 缓解负载的不平衡状况,还可能由 于负载信息收集、进程的动态调度额外增加通信、策划、连接等开 2 新一代负载均衡主要技术实现原理2.1 Web 加速技术负载均衡设备实时优化并压缩 所有发出的Web数据。服务器卸装 (Server Offload)功能能够有效降低 Web服务器的负载,负载均衡设备 作为Web服务器的反向代理来管理 服务器与用户间的所有连接和请求, 经过优化整合后仅以极少量的连接将 Http的请求发给Web服务器,提高了Web服务器的运行效率和能力。2.1.3 数据压缩2.1.1 连接优化负载均衡设备实施采用反向代 理的方式,对于客户端用户的Http 请求,负载均衡设备作为反向代理终 结所有的Http连接。负载均衡设备 与后台Web服务器或应用服务器直 接建立永久的连接。但是随着实际的 Http请求量的增加,负载均衡设备 与服务器之间的连接可以相应增加, 来适应负载的变化情况,而这一切都 由负载均衡设备自身动态来调整(见 图2)。客户端发起的Http连接请求都 暂时缓冲在负载均衡设备上,负载均 衡设备优化整合这些Http请求,然 后以最佳的请求方式向应用服务器发出请求,并将应用服务器返回的结果2008 年浙江电力营销专辑ELECTRI C POWER IT71浙江电力营销专辑销,增加系统的响应时间。新一代负载均衡技术通过改进的负载均衡 算法来保证系统的可靠性外,还支 持灵活的脚本健康状况检查功能来 执行健康状况检查,保证系统的可 靠。(1)改进最小未完成请求算法 (Fewest Outstanding Request)。 改进的“最小未完成请求算法 ”是 基于Http应用层的基本对象,针对7 层信息进行策略分发。这些应用层面 的对象请求(例如get xxx.html/ get xxx.gif),都通过负载均衡设 备分发给后台真实服务器,同时负载 均衡设备记录每台服务器处理请求的 情况,计算并选举出未完成请求数量 最少的服务器作为新的Http请求分 发对象。它避免了常规负载分发算法 的弊病,因为常规算法只注重TCP 连接(4层)的平衡,但是对于Http 协议来说,一个简单的页面和一个复 杂的页面,从TCP连接层面看和从 应用层面看两者的差异非常大,因此 算法更为合理。除此之外,此算法不是通过获 取应用服务器的 CPU/Memory等指 标来判断,而是根据应用服务器处理 的效率来判断,因为效率高的服务 器,其未处理完成的Http请求就 少。这样负载均衡设备不需要花费资 源去提取服务器指标判断哪个服务器 的效率更高,这种算法节省大量的负 载均衡设备系统开销。( 2) 轮 询 算 法 ( Round Robin)。顺序循环将Http请求连 接到每个服务器。算法如下:假设有 一组服务器S=S0,S1, ,Sn-1, 一个指示变量i表示上一次选择的服 务器,W(Si)表示服务器Si的权值。变量i被初始化为n-1,其中n0。假设有一组服务器 S=S0,S1,.,Sn-1,W(Si)表示服务器 Si的权值,C(Si)表示服务器Si 的当前连接数。(3)加权轮询算法(WeightedRound-Robin)。给每个服务器分配 一个加权值为比例,根据这个比例, 把用户的请求分配到每个服务器。算 法如下:假设有一组服务器 S = S0,S1, Sn-1,W(Si)表示服务器Si的权值,一个指示变量i表示上一次选择的服务器,指示变量cw表示 当前调度的权值,max(S)表示集合 S中所有服务器的最大权值,gcd(S) 表示集合S中所有服务器权值的最大 公约数。变量i和cw最初都被初始化为零。( 5)加权最少的连接算法 (Weighted Least Connection)是最 小连接算法的超集,各个服务器用相 应的权值表示其处理性能。服务器的 缺省权值为1,系统管理员可以动态 地设置服务器的权值。加权最小连接 算法在调度新连接时尽可能使服务器 的已建立连接数和其权值成比例。算 法如下:假设有一组服务器 S=S0, S1,.,Sn-1,W(Si)表示服务器 Si的权值,C(Si)表示服务器Si的当 前连接数。所有服务器当前连接数的 总和为CSUM=C(Si)(i=0,1,., n-1)。当前的新连接请求会被发送 到服务器Sm,当且仅当服务器Sm满 足以下条件:(C(Sm)/CSUM)/W(Sm)=min(C(Si)/CSUM)/W(Si)(i=0,1,.,n-1)其中W(Si)不为零。因为 CSUM在这一轮查找中是 个常数,所以判断条件可以简化为:C(Sm)/W(Sm)=minC(Si)/W(4)最少的连接算法(LeastConnection)。根据服务器建立的 TCP连接数量,传递新的连接给那 些连接数最小的服务器。算法如下:2008 年浙江电力营销专辑ELECTRI C POWER IT72while(true)if(i=0)cw =cw-gcd(S);if(cw=cw)return Si;for(m=0;m0) for(i=m+1;in;i+) if(W(Si)=0) continue; if(C(Si)0) i=j;return Si;while(j!=i);return NULL;浙江电力营销专辑现协议异常行为,可以有效阻断此连接,并且可以对 Http 协议整 理,发送无缺陷的数据包,阻止非 法请求等。例如类似正常的Http请求,如 果在 Header中故意将 GET/index. html Http/1.1改 写 成 GER/ index.html Http/1.1,这类恶意 的攻击请求都可以绕过一般的防火墙 产品,如果存在大量此类攻击, Web服务器将会造成极大资源浪费 来响应这些“bad request”,甚至 会产生内存溢出的异常现象。而负载 均衡设备具有对协议异常行为的判断 能力,因此它一旦发现此类恶意请 求,就会丢弃它,并将这些连接关 闭。具体实现如图4所示。2.4 灵活的应用管理功能(Si)(i=0,1,.,n-1)其中W(Si)不为零。(6)Url hash算法。根据Url 的内容进行hash计算,然后依据计 算值来选择接收新请求的服务器。算 法如下:假设有一组服务器 S=S0, S1,.,Sn-1,W(Si)表示服务器 Si的权值,C(Si)表示服务器Si的当 前连接数。ServerNode是一个有256个桶(Bucket)的Hash表,一 般来说服务器的数目会远小于256, 当然表的大小也是可以调整的。算法 的初始化是将所有服务器顺序、循环 地放置到ServerNode表中。若服务 器的连接数目大于2倍的权值,则表 示服务器已超载。虚拟IP地址的流量,可以在不影响业务的情况下添加、维护、隔离设 备。2.3 系统安全保护新一代负载均衡技术不仅仅对 Http数据流提供优化功能,还具有 很强的应用安全保护功能,这主要体现在网络层和应用层个方面。2.3.1 网络层应用安全保障新一代负载均衡技术采用反向 代理模式,用户端的连接都终结在负 载均衡设备上,从理论上有效屏蔽了 对Web服务器的网络层攻击。这样 所有的防御都集中到负载均衡设备本 身上来,负载均衡设备内置防攻击模 块,可以抵御来自外界的攻击,如公 认难防御的Dos/DDos(拒绝服务攻 击 ),还可防御 Ping of Death、 ICMP Ping Flood、 Smurf Attack、 Tear Drop and others、SYN flood等类型的Dos。2.4.1 应用系统统计报告新一代负载均衡技术能提供多 种实时统计数据,以提供流进及流出 流量的各种详细信息。可通过在线图 表简便地按时间段的历史数据,可简 化容量规划、趋势分析以及应用和网 络问题的故障诊断,对所连接的应用 服务器,负载均衡设备可方便地实现Web日志数据整合,以简化管理工2.3.2 Http流量应用层安全保障新一代负载均衡技术的7层检测 数据流检测能力,可保护关键区域 中的 Web 服务器免受潜在的 TCP 和 Http/Web 恶意攻击,防止 Http 协议范围外的行为。如果发 2.2.2 会话保持一些特殊的应用要求有会话保 持的业务要求,需要将个主要的关 联应用进行应用级别的会话保持。因 此负载被分配到哪个服务器直接影响 应用的正常使用,而这些用户相关数 据跟每个会话都有紧密联系并相对独 立,这些数据并不与其他服务器动态 共享,应用的会话保持的这个特点直 接决定负载均衡设备是否满足业务的需求。2.2.3 负载均衡设备本身集群功能负载均衡设备除了提供了完整 的第47层服务器负载均衡外,设 备本身还应该支持多台负载均衡设 备进行灵活的扩展配置,支持负载均衡设备集群,以处理相同或不同2008 年浙江电力营销专辑ELECTRI C POWER IT73n=ServerNodehashkey(dest_ip);if(n is dead)OR (W(n)=0)OR (C(n)2*W(n) then return NULL;return n.浙江电力营销专辑作。基于角色的管理功能也可将管理责任分摊,将管理员的权限限制在特 定区域,提高网管的责任心。传入的用户请求和发出的服务器响应中各种因素的任意组合来支持对数据 流进行不受限制的内容处理操作。功 能还可用来检查每个响应的准确性, 并采取可配置的操作来消除故障,以最大限度提高应用的可用性。术的选型、实施有很高的参考价值。责任编辑 张钦芝收稿日期:2008-06-122.4.2 应用系统灵活控制新一代负载均衡技术控制环境 是一个开放的“用户API”,能够在 不更改应用本身的情况下依据策略改 变应用的行为。此功能能够改变、更 新、附加、预先设计和删除 Request、 response头 、 POST数 据,甚至返回的内容本身,而不管是 采用HTML、JavaScript、CSS(叠 层样式表单)、XML、还是其他格 式。用户使用此功能,只需使用类似 直观语句的控制语言编写“ if-then”即可。这种控制语言可基于3 结语新一代负载均衡技术在超大规 模的应用系统浙江电力全省大集 中的营销管理及决策系统的实施中进 一步验证了其在性能、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论