业务系统应用交付解决方案

1、概述

太一星晨应用交付解决方案,可以对业务应用系统中的服务器实现流量负载以及基于硬件的SSL卸载、HTTP缓存、压缩。支持串行、三角传输及旁路部署,极大的简化了网络的复杂性,有效减轻服务器压力,提升业务访问效率。同时,T-Force应用交付产品还提供领先的应用安全防护功能。

2、服务器负载

通过T-Force服务器负载功能,可以将业务流量分配到多台服务器上,有效扩展性能的同时,提供了服务器之间的冗余,通过基于业务的健康检查算法,防止业务系统死机、中断,有效保障业务的连续性。

2.1 负载分担算法

T-FORCE应用交付产品支持丰富的负载分担策略,即可以根据预先配置的静态算法,也可以根据当前的运行状态进行动态算法的负载分担。

静态算法包括:

  • 轮询(Round Robin)-依次按照顺序把流量分配给每台服务器。
  • 比率(Ratio)-根据服务器的性能为每个服务器指定一个权值,按照这个比率给服务器分配流量。
  • 优先级(Priority)-当使用多组服务器时,为每个服务器组指定一个优先级,默认情况下优先向高优先级的服务器组分配流量,当该组服务器失效时选择备份服务器组。

动态算法包括:

  • 最小连接(Least Connection)-ADC优先把流量分配给当前连接数最少的服务器。
  • 最快模式(Fastest)-ADC通过比对服务器返回数据包的延迟情况,选择一个当前响应最快的服务器来分配流量。
  • SNMP监控-设备上通过SNMP客户端来读取服务器的实时运行状态,包括CPU,内存和I/O信息,为每种实时信息配置门限值,当超过这个门限值时不再向这台服务器分配报文。
  • 观察模式(Observed)-结合最小连接和最快模式两种结果,选择最佳平衡为依据为新的请求选择服务器。

2.2 服务器平滑接入和退出:

当有新的服务器接入或者服务器重新启动时,ADC系统可以把流量逐步分配给新接入的服务器,避免服务器的某些进程还没有加载完成而导致系统资源占用过高,或者应用响应缓慢的情况,实现服务器的平滑接入。管理员也可以手工方式操作把某台服务器退出流量分担机制,此时ADC系统不再分配新的流量给该服务器,该服务器的现有连接继续保持,直至连接结束。

2.3 健康检查

健康检查是指对服务器的运行状态定期进行实时检测,一旦发现服务器故障,将把该服务器移出流量分担的队列。T-FORCE应用交付产品提供丰富的健康检查策略,和负载分担算法组合到一起,就可以实现非常灵活的负载分担策略。常用的健康检查方式包括:

  • TCP SYN-向目标服务器发送TCP SYN报文,如果得到正确的回复表示服务器工作正常。
  • Ping-向目标服务器发送ICMP请求报文,如果得到正确回复表示服务器工作正常。
  • HTTP/HTTPS Get-向目标系统发送HTTP或HTTPS协议的Get报文,请求一个指定的URL,如果得到正确回复表示服务器工作正常。

2.4 会话保持

会话保持是指流量一旦按照负载分担策略分配给某个服务器后,后续的相关请求报文同样分配给同一台服务器,以保障业务的连续性。比如,很多电子商务相关的应用系统或者需要用户身份认证的系统,用户和服务器间会进行多次的数据交互才能完成一笔交易或者身份认证过程,必须把这个过程的交互报文分配给同一个服务器。

T-FORCE应用交付产品支持丰富的会话保持的方法,可以根据源IP地址,ServerID等静态信息来做会话保持,也可以通过Cookie插入和重写来实现更高级的会话保持方法。每种会话保持的效率,粒度和应用场景有所不同,对应用服务器的配置要求也不一样。基于源IP的会话保持只需要处理数据包的四层信息,所以效率最高,也不需要服务器做任何配置,但粒度比较粗。如果客户端存在普遍的NAT转换,或者某些IP段的业务请求量比较大,那么这些流量被保持发送给固定一台服务器,就会造成流量负载的不均衡。基于Cookie插入,Cookie重写,ServerID等七层信息的会话保持方式,使保持策略和浏览器的信息相互关联,可以做到细粒度和更均衡的流量分配,基于七层信息的会话保持方式,工作效率不如源IP会话保持。除Cookie插入方式以外,其他如serverid,sessionid, Cookie重写等方式一般需要应用程序做相应的配置。

2.5 内容交换

四层交换主要是依赖IP和TCP/UDP层的信息进行流量的分配,而随着应用自身的复杂性和不断改善用户体验的需求,有时候需要为不同的用户类型返回不同的呈现内容,例如:

  • 把移动用户的手机/pad浏览器请求分发给专门经针对性过优化的服务器。
  • 把请求图片,文档,视频等静态内容分发给缓存服务器。
  • 根据浏览器自身的语言设置,为不同语言区域的用户返回相应的页面
  • 可以根据HTTP请求的方法实现读写分离,HTTP读(get)请求分配给缓存服务器,HTTP写(post)请求分配给处理动态内容的服务器。

T-FORCE应用交付产品的七层内容交换可以识别用户请求报文的内容,如URL信息,应用数据类型,Cookie信息,浏览器类型,HTTP方法等内容,将流量分配给相应的应用服务器。

T-Force应用交付产品通过http-class来标识一个业务分类,http-class由管理员配置的主机地址,URI路径,头信息和Cookie来定义,每个http-class可以关联一个服务器地址池,然后再虚拟服务(VS)的配置中,引用一个或者多个http-class。当客户端请求访问虚拟服务时,T-Force应用交付产品进行http-class匹配,匹配成功的请求被分配给对应的地址池。

3、应用优化与加速

通过部署T-Force应用交付产品,用户可通过专用的高性能硬件SSL加速,代替服务器处理加密数据。此外,通过开启TCP连接复用、HTTP管线、缓存、压缩等功能,可有效减轻服务器负担,提升系统性能,节省服务器投资,改善用户体验。

3.1 SSL硬件加速与卸载

T-FORCE应用交付产品通过内置的专业级高性能硬件加速芯片,完成对SSL协议的加速和卸载,而在数据中心内部,T-FORCE应用交付产品和服务器之间通过明文进行传输,极大的提升服务器的业务处理能力。企业可以把应用全部应用实现SSL协议,实现高安全性的同时,不会给业务带来任何的性能瓶颈。

3.2 本地RAM Cache

本地高速缓存(Cache),通过在T-FORCE应用交付产品上开辟一段专用的内存空间(RAM)来存储服务器上的一些静态文件,如图片,文档,视频文件等,开启本地Cache后,客户端请求首先在T-Force的本地Cache中查找,命中以后直接返回给客户端。命中失败才向服务器端发送请求,同时对服务器返回的内容进行本地Cache。T-FORCE应用交付产品支持为不同的应用提供各自的Cache空间及参数设置,这样可以把服务器从重复的处理中解脱出来,提升整体效能。

3.3 内容压缩

通过压缩HTTP响应的数据,可以有效提升带宽利用率和缩短下载时间。T-FORCE应用交付产品提供的高性能压缩技术,最大可以使带宽利用率增加80%,应用性能提升4倍以上。同时在客户端浏览器和T-FORCE应用交付产品间经过一定的算法进行压缩,也起到一定安全传输的作用。

T-FORCE应用交付产品支持浏览器最常用的GZIP和DEFLATE两种压缩算法,提供基于七层的精细化压缩控制策略,包括URI,Content Type等。管理员可以定义对“¥.txt,“¥.doc“¥.htlm等文档类型和静态页面数据进行压缩,也可以排除PDF,IMG等压缩效果不明显的不必要操作。

3.4 TCP连接复用

TCP连接复用技术使多个客户端共享一个到服务器的TCP连接,可以提升应用服务器的整体性能,使应用服务器从维护海量的TCP连接,并不断的进行TCP建立和拆除维护中解脱出来,极大的提升单台服务器的承载能力。

T-FORCE应用交付产品在接到一个客户端HTTP请求后,通过负载分担算法会选择一台服务器建立连接。如果接收到正常的服务器响应,T-FORCE应用交付产品会把这个连接放入到“连接复用池”里面,当另外一个新的客户端发起HTTP连接请求时,T-FORCE应用交付产品从现有的连接池里面选择一个可用的连接来和服务器的进行数据交互,而不是重新创建一个到服务器的连接。通过这种优化,可以把服务器负载降低到原来的10%

3.5 TCP单边加速

标准TCP协议在设计时很少的考虑到高带宽和夸Internet传输的问题,现在随着高速带宽的普及,标准的TCP协议表现出很多的不足,在网络拥塞控制和丢包重传机制上,往往效率比较低下,而且基本不具备根据网络环境实时进行调解的能力。T-FORCE应用交付产品提供智能单边加速的功能,通过对标准TCP协议的慢启动控制,拥塞避免,重传和恢复几个方面进行优化,来达到整体网络加速的效果。同时,T-FORCE应用交付产品可以根据当前的网络状态,和承载的协议类型智能的选择一种效率最高的算法。

T-FORCE应用交付产品的单边加速对客户端和服务器来说都是透明的,T-FORCE应用交付产品和服务器之间仍然按照标准TCP协议运行,T-FORCE应用交付产品和客户端之间进行单边加速,客户端不需要做任何修改。

3.6 HTTP管线(Pipelining)

传统的HTTP协议是当一个请求发出,等接收到完整的响应数据后,才进行下一个请求,这在高延迟的网络环境中会导致整个数据交互的效率比较低。HTTP管线技术(Pipelining)可以将多个HTTP请求同时提交,而不用等待顺序的请求回应。

T-FORCE应用交付产品可以和支持Pipelining的客户端浏览器智能协商开启,T-FORCE和服务器间还是正常的HTTP协议流程。

3.7 窄带用户应用加速

当客户端通过窄带线路比如通过ADSL拨号或者智能手机,pad移动终端上网时,对于应用服务器的响应,可能会由于客户端侧带宽不足,或者带宽质量不好而导致报文的拥塞和丢包。这时客户端就会发起重传请求,如果大量的窄带用户同时访问,就会出现应用服务器反复处理这些重传请求的压力增大而降低效率。

T-FORCE应用交付产品使用TCP数据缓存技术,自动检测客户端对服务器响应的处理能力,对于窄带用户,ADC会在自身平台开辟出缓存空间来存储服务器返回的数据,以客户端能够适应的速度完成数据交互,避免出现大量的重传。服务器只要处理完成用户的请求后,就可以释放出来处理其他工作,不用再去处理丢包重传的情况。

 

4、应用安全防护

传统的负载均衡产品基本不具备安全功能,或者只能具备基本的网络访问控制功能。太一星晨依托自身的安全基因,除了具备基础的网络层访问控制外,还具备标准的防火墙的防扫描、防攻击功能。可以完全代替防火墙运行。作为一款应用交付产品,太一星晨T-Force应用交付产品,在做应用的分发同时,还支持对应用层的安全检测及访问控制功能。

4.1 网络防火墙与攻击防护

太一星晨T-Force应用交付产品具备标准防火墙功能,能够基于源、目的IP、协议、端口、时间、接口等信息做访问控制。此外,通过分析网络层报文的行为特征判断报文是否具有攻击性,并且对攻击行为采取措施以保护网络主机或者网络设备。

T-Force应用交付产品通过包检测、包速率、连接数限制功能可有效抵御常见网络攻击报文,如:SynFlood/Jolt2/Land-base/ping of death/Tear drop/winnuke/smurf/TCP flag/ ARP攻击/TCP扫描/UDP扫描/ping扫描。

4.2 应用层DDoS防护功能

应用层DoS攻击是一种与高层服务相结合的攻击方法,目前最常见就是HTTP Flood攻击(如:CC攻击)。与传统的基于网络层的DoS攻击相比,应用层DoS具有更加显著的攻击效果,而且更加难以检测。HTTP Flood是指从一个或者多个客户端,频繁向Web服务器请求资源,导致Web服务器拒绝服务的攻击。通常Web服务器有些页面是比较耗资源的,例如一些资源要查询数据库或者做复杂计算,对这种资源频繁请求时,会导致服务器繁忙从而实现拒绝服务目的。

针对HTTP Flood攻击,T-Force应用交付产品能够有效识别出攻击行为和正常请求,在Web服务器受到HTTP Flood攻击时,过滤攻击行为,抑制异常用户对Web服务器的资源消耗,同时响应正常请求,确保Web业务的可用性及连续性。启用抗 CC 攻击后,T-Force应用交付产品会在服务器返回的 Http 响应中动态插入一段专用的 Cookie,正常的浏览器访问时,该 Cookie 会被携带回来,而“攻击者”的代理服务器则无法识别该 Cookie(HTTP Flood是由程序模拟HTTP请求,一般来说不会解析服务端返回数据,更不会解析JS之类代码。),并不会在下次请求中携带,这样 应用交付就可以区分出正常流量和攻击流量,并把攻击流量直接丢弃。

4.3 应用层访问控制.

标准防火墙主要通过源、目的IP地址、协议、接口的识别和控制达到防范入侵的方法。这种工作模式下,并不能精确解析应用层数据,更无法结合WEB系统对请求进行深入分析,针对WEB端口的攻击可以轻松的通过合法端口突破防火墙的防护。T-Force应用交付产品具备基于七层应用层的访问控制功能。基于应用层的访问控制恰好弥补了网络防火墙的不足,与传统防火墙相比,基于应用的访问控制体现在:

  • 完整解析HTTP协议,包含HTTP头、URI、Cookie,提供HTTP协议合法性检查,避免非法攻击报文混入;
  • 提供应用层控制规则,仅允许合法用户的输入通过。太一星晨可实现基于HTTP head、Cookie、请求速率、VS地址、URI的访问控制。防止WEB的非授权访问。
  • 实现对URI的限制,只允许用户访问设定的URI,防止服务器资源泄露;
  • 实现对特定URL的流量控制,根据Web服务器的处理性能对Web页面访问频率进行控制,确保一些性能消耗比较大的Web页面能在Web服务器承受的性能范围之内被访问;

4.4 SQL、XSS攻击防护

SQL注入攻击利用Web应用程序不对输入数据进行检查过滤的缺陷,将恶意的SQL命令注入到后台数据库引擎执行,达到偷取数据甚至控制数据库服务器目的。XSS攻击,指恶意攻击者往Web页面里插入恶意HTML代码,当受害者浏览该Web页面时,嵌入其中的HTML代码会被受害者Web客户端执行,达到恶意目的。

T-Force应用交付产品应用了一套HTTP会话规则集,这些规则涵盖诸如SQL注入、以及XSS等常见的Web攻击。同时通过自定义规则,识别并阻止更多攻击。解决诸如防火墙、IPS等传统设备束手无策的Web系统安全问题。

4.5 服务器连接数管理

T-Force应用交付产品可以为每种应用指定一个的最大并发连接数门限,一方面保护应用服务器的资源,同时也防止某种应用过多的占用系统资源,而导致其他应用无法得到正常的服务。

4.6 信息防泄漏

HTTP头部信息隐藏:T-Force应用交付产品可以在服务器响应报文中,擦除响应头的中指定信息,比如web服务器名称,版本号等。也可以修改服务器的真实链接目录,达到隐藏服务器关键信息的目的。也可以通过定义在Response中允许的header,而把其他所有不满足的header信息从报文中删除。

Cookie加密:把服务器响应报文的中的明文Cookie信息进行加密,然后再发送给客户端,防止某些利用Cookie存储的关键信息如用户账号,网银数据等在传输过程中被截获。在客户端回应过程中,把Cookie信息解密发送给应用服务器,即方便应用系统的统一管理,也降低了应用系统的压力。