版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 F5 Web Accelerator应用加速技术白皮书F5 Web Accelerator应用加速技术白皮书F5 Networks杨明非目录1. HTTPS Offload32. One Connect降低服务器TCP连接数量43. HTTP页面压缩降低带宽占用和提高客户端响应速度44. RAM Cache减小服务器端压力64.1 使用RAM高速缓存的时机74.2 可以缓存的项目74.3 了解RAM高速缓存机制74.4 清空高速缓存中的项目85. 应用智能缓存优化动态内容86. IBR 浏览器智能控制97. Express Documents加速文档下载118. Express Connec
2、ts并行处理页面下载129. 结论131. HTTPS Offload在SSL处理过程中,所有的传输内容均采用加密算法处理。其中最重要的两个部分为SSL握手时交换秘钥的非对称加密和数据传输时的对称加密。在现有的系统中,通常非对成加密采用1024位的密钥进行加解密,因此对服务器的CPU占用率非常高。在一台最新型号的双Xeon服务器上,大约每秒钟400次非对称加解密就能导致CPU占用率100%。同时对称加密通常采用128位,最高256位加密的加解密也会导致服务器CPU占用率居高不下,同样的服务器SSL流量大约能达到150Mbps。因此当我们在部署SSL应用时,必须考虑到以下参数:lTPS:Tran
3、section Per Second,也就是每秒钟完成的非对称加解密次数lBulk:SSL对称加解密的吞吐能力,通常以Mbps来进行衡量。当SSL的客户端压力超过400TPS时,单台服务器就很难处理请求了。因此,必须采用SSL加速设备来进行处理。BIGIP-LTM/WA系列可从最低2000TPS到480,00TPS实现全硬件处理SSL非对称加密和对称加密流量。其实现的结构如下:所有的SSL流量均在BIGIP-LTM/WA上终结,BIGIP-LTM/WA与服务器之间可采用HTTP或者弱加密的SSL进行通讯。这样,就极大的减小了服务器端对HTTPS处理的压力,可将服务器的处理能力释放出来,更加专注
4、的处理业务逻辑。在BIGIP-LTM/WA可处理单向SSL连接,双向SSL连接。并且可同时处理多种类型和多个应用的SSL加解密处理。2. One Connect降低服务器TCP连接数量用户因连接和断开网络连接而产生的周期性网络请求会耗费掉企业宝贵的 web 应用资源。即使每个连接开销很小,但合到一起,它们将影响到总的应用负载,对于电子商务站点和拥有大量用户的企业应用来说,这一点尤为明显。在Apache Server的标准配置中,一台服务器的最高并发连接数为1024个,而MicroSoft IIS可配置为2048个。可见连接数对于服务器是一个极大的限制,在应用服务器上比如Weblogic,Web
5、Sphere上,连接数的增加将会给系统增加大量的开销。 连接优化将处理连接的责任移交给了 F5 BIGIP-LTM/WA。网络流量在 BIGIP-LTM/WA和源应用之间的小型资源池和永久连接中进行多路传输。BIGIP-LTM/WA将成千上万个用户的连接汇聚成为少数的服务器连接,最终可显著降低源应用的负载。 与其它的连接优化技术不同,F5 采用了动态连接池的方式,当每一个用户请求发送到BIGIP-LTM/WA时,根据负载均衡策略,BIGIP-LTM/WA将在请求将被发送到的服务器端寻找空闲的连接,如果有空闲连接,则直接将请求通过该连接发送到服务器,如果没有空闲连接,则新建一个连接与服务器端通讯
6、。这样,既保证了在服务器端始终维持最小的连接数,又避免了由于没有空闲连接而导致的客户端请求排队的现象。3. HTTP页面压缩降低带宽占用和提高客户端响应速度应用和网络延迟问题进一步降低了 web 内容的传输速度。BIGIP-LTM/Web Accelerator专利技术 Express 压缩技术能够消除因压缩算法所带来的延迟,为拨号和宽带用户带来额外的性能提升。事实上,借助 Express 压缩,拨号用户的访问速率将比原来快 5 到 10 倍,同时带宽利用率和成本将降低 70%-80%。 Web ServerClient 1Client 2BIG-IP/WACompression on the
7、 BIG-IP/WA响应时间的加快,带来了用户满意度和员工效率的提升,从而使基于 web 的应用得到更加广泛的应用。单在更低带宽成本方面所节约的费用(尤其在远程销售办公机构或人员方面所节省的费用),就足以补偿在设备购置方面的投资,甚至是后者的好几倍。使用工业标准的GZIP和Deflate压缩算法来压缩HTTP流量;降低带宽消耗、缩短最终用户在慢速 / 低带宽连接条件下的下载时间。 一个典型的HTTP压缩处理的流程如下:BIGIP-LTM/WA接收到浏览器的HTTP请求后,根据浏览器的accept-encoding字段头检查浏览器是否支持HTTP压缩; 如果浏览器支持HTTP压缩,WA则检查请求
8、Match的Policy,如果Policy选择了内容压缩,并且可Cache,则开始的内容是否在自身Cache内有存放; 如果在WA本地(包括内存和硬盘)上已经有请求内容存在,则直接将请求内容;如果可Cache但在WA本地无法找到相应内容,WA则将请求转发到服务器,在服务器返回内容后,将页面进行压缩后,缓存在本地,再将请求返回给发起请求的客户端。在开启HTTP压缩功能后,对于HTML页面,CSS等文本类型的数据,通常可以取得80%左右的压缩率,而对于一些已经压缩过的文件类型,如jpg,gif,pdf等文件,压缩则可能获得完全相反的结果。在BIGIP-LTM/WA的配置中,可以灵活的定义那些内容需
9、要压缩,那些类型不进行压缩,甚至可以定义到特定的URI来进行压缩处理。广域网访问的网络延时与带宽瓶颈经常给用户的WEB应用的正常访问带来不便,通过在F5 BIGIP-LTM/WA上启用HTTP压缩功能,可以带来以下好处:l 更快的页面下载速度:在采用压缩技术后,同样的页面传递到客户端的时间和包数量大大减小,从而提高了客户端的页面下载速度。l 更小的带宽消耗:支持广泛数据类型的压缩:例如HTTP, XML, Javascript, J2EE applications and many others,启用带宽压缩所带来的带宽节省可以达到80%。l 客户端自适应的压缩处理能力(技术专利):F5 BI
10、G-IP-LTM可以通过探测到客户端的Round Trip Time来识别用户是通过宽带还是窄带方式上网,然后决定是否要对该用户启用HTTP压缩功能。l 对用户完全透明,不需要在客户端安装程序:F5 BIG-IP-LTM/WA应用交换机采用的压缩算法是目前常用WEB浏览器广泛支持的GZIP和Deflate算法,因此对用户完全透明,不需要预先安装客户端解压程序。4. RAM Cache减小服务器端压力在BIGIP-LTM上,可以通过配置内存Cache来提高系统响应速度,并减小服务器端的压力。通过内存Cache机制,BIGIP-LTM/WA可以把频繁访问的内容存放在内存中,当下一次请求到达时,直接
11、从内存返回用户请求的页面。从而降低了服务器的请求压力。4.1 使用RAM高速缓存的时机使用RAM高速缓存特性可以降低后台服务器的流量负载。如果站点上的某个对象会频繁用到,站点有大量的静态内容,或者站点上的对象经过压缩,那么此功能非常有用。· 频繁用到的对象如果在一些时期内,频繁用到站点上的某些特定内容,那么便可使用此特性。通过对RAM高速缓存的配置,内容服务器仅需在每个有效期内向BIG-IP系统提供一次相关内容。· 静态内容如果站点由大量静态内容组成,例如CSS、javascript、图像或徽标,此特性也很有用。· 内容压缩对于可压缩数据,RAM高速缓存能够针对可
12、接受压缩数据的客户端存储数据。在BIG-IP系统上与压缩特性一起使用时,RAM高速缓存可以减轻BIG-IP系统和内容服务器的压力。4.2 可以缓存的项目RAM高速缓存特性完全兼容RFC 2616“超文本传输协议HTTP/1.1”中规定的高速缓存规则。这意味着,可以将RAM高速缓存配置为缓存以下内容类型:· 200、203、206、300、301和410响应;· 缺省响应GET方法;· 用于URI“包含”列表中指定的URI的其它HTTP方法,或iRule中指定的其它HTTP方法;· 基于User-Agent和Accept-Encoding值的内容。RAM高
13、速缓存为Vary标头存有不同的内容。RAM高速缓存不缓存的项目包括:· 高速缓存控制标头指定的私有数据;· 默认情况下,RAM高速缓存不缓存HEAD、PUT、DELETE、TRACE和CONNECT方法。4.3 了解RAM高速缓存机制缺省的RAM高速缓存配置仅缓存HTTP GET方法。通过在URI“包含”列表中指定URI,或者编写iRule,可以使用RAM高速缓存来同时缓存GET方法和其它方法,包括非HTTP方法。表1.1描述了高速缓存用来存储缓存内容的机制。操作缓存的内容删除删除所有cookie标头。修改提供时,逐个中继地修改标头。这些标头包括:Connection、Ke
14、ep-Alive和Transfer Encoding。添加添加Date标头,其中包含BIG-IP系统上的当前时间。添加Age标头,它反映了项目在缓存中存在的总时长。请注意,此设置在配置文件中缺省为开。通过在配置文件中,将Insert Age Header属性变为off可以禁用此设置。表1.1高速缓存的存储机制4.4 清空高速缓存中的项目RAM高速缓存可以删除高速缓存中使用最不频繁的项目。这将防止选择新项目进行缓存时,较早的项目仍然占用着高速缓存的空间。高速缓存还使用计分系统,在一段时间之后删除较早的项目。缓存的项目达到其生存时间期限时,便认为它在高速缓存中已过期。使用HTTP配置文件属性可以控
15、制每个高速缓存实例的大小,以及项目在高速缓存中过期的速度。5. 应用智能缓存优化动态内容应用智能缓存 (Application Smart Cache) 完全改变了传统的静态高速缓存模式,能够高速缓存种类更广泛的内容,包括高级动态 web 页面和 XML 对象。该项专利技术为 F5 公司独有专利技术。ASC 关注应用逻辑与行为,而不仅仅是单个 web 对象。通过描述某项应用的高级逻辑(可高速缓存与不可高速缓存的内容、可导致失败的事件等),WebAccelerator 可消除对复杂 web 请求的重复处理。借助应用智能高速缓存技术,WebAccelerator 系统可决定何时使对象无效及如何识别
16、可复用的内容块。直观的用户界面、功能强大、基于 XML 的API 以及基于 HTTP 请求的触发装置相结合,为用户提供了功能齐全的控件,从而可使内容生效或无效。 现有的高速缓存解决方案未采用 WebAccelerator 和 ASC,仅将对象的失效日期作为参考指南。ASC 支持高速缓存查看 HTTP 请求中的全部内容(无论是 URL、cookie、查询参数还是其它标头)并生成“智能”无效信息与高速缓存密钥。通过采用以下两种密钥性能,WebAccelerator 解决了长期以来无法解决的对动态内容进行高速缓存的问题: l 由应用和用户事件触发的一种高速缓存无效机制。 l 可将符合条件的用户请求与
17、高速缓存的内容连接起来的一种完善的匹配算法。 下图是对一个动态站点的真实情况分析结果:对于使用率较高的应用而言,典型的静态高速缓存仅可响应 20% 的 HTTP 请求。这是因为多数应用都十分复杂,需要与其它应用和数据库进行大量的交互操作,因此,静态解决方案并不能满足对象高速缓存的要求。借助 ASC,WebAccelerator 可直接响应高达 80% 的用户请求(此类请求占用大量计算资源),且无需利用站点的其它基础设施。WA的ASC在具体实现中,针对同样请求的URI,比如都请求 recordId=12913,传统的静态Cache会认为这是一个动态页面,不进行Cache,但在WA工作状态下,可根
18、据变量存在的位置来进行区分,这些变量名称的变化的时候,WA 就认为是不同的页面,所以在Cache时存放的也是不同的页面。当客户端访问时,WA则只有在所有的变量都相同的情况下,从本地缓存返回给用户。这样,就不需要到服务器再进行查询了。前提是可以接受一定的刷新时间,比如10分钟。默认值为根据域名、路径和查询的参数来对Cache内容进行区分不同的页面内容。其他的如Cookie,用户Agent,客户端IP等则认为是同样的请求。而这些都是可以根据实际的应用站点进行精确调整的。比如请求: recordId=12913和 recordId=12914,由于请求的query parameter (record
19、Id) 不同。则在WA内Cache是两个页面,而不管用户过来的Cookie和浏览器类型是什么,只要是相同的query parameter,在有效期内都用缓存的页面进行回应。6. IBR 浏览器智能控制多数上传请求仅仅检查嵌入对象和大图片的有效性及其更新情况。这就造成不必要的延迟进而引起应用性能下降。WebAccelerator 的 Express Loader 技术消除了大量上传内容更新请求、极大减少了页面加载的时间以及网络的流量。当内容变动时,WebAccelerator 引导浏览器至新的版本,同时正确的内容总能得以维护。如果内容并未变动,它会立即引导浏览器从本地高速缓存加载先前的版本。当我
20、们对于一个动态站点(通常是基于中间件的业务系统,如Bea Weblogic, IBM WebSphere, Oracle IAS等)进行分析时,在往返的几次访问中,能看见大量的重复内容在不停的传送,至少,能看见HTTP 304请求到服务器询问该内容是否改变。这样,引起了大量的不必要请求,加重了服务器的负担,同时增加了网络的消耗,引起客户端页面打开速度的变慢。以一个典型的银行网银系统为例,在用户登录后,所有的内容都变成了动态内容,通常客户端都会得到一个no-cache或者private的Cache指令,导致客户端浏览器在每次请求这些Object的时候都需要重复获取或者发送HTTP 304指令到服
21、务器端询问是否改变。但实际上,在一定的时间范围内,除了用户的帐号和查询结果外,大量的内容均是没有改变的内容。在一个较为漂亮的网页中,至少包含有40个以上的Object(CSS, JS, JPG, GIF等),这就意味着用户需要发送40个HTTP请求来确定这些内容是否改变。在宽带的情况下,这些请求可以快速完成,但在带宽或延迟较大的情况下,打开页面的速度就变得非常慢了。在采用IBR技术后,WA将对页面中包含的每一个Object进行分析,并在返回的HTML页面中对每一个Object打上标记,同时,将Object设置为可在客户端进行缓存并设置较长的缓存时间。在用户下一次请求时,将由WA和服务器端询问内
22、容是否真正改变,如果没有改变,则在返回的页面中保持原有的标记不变,这时,客户端在收到HTML页面后,就会从本地缓存中直接读取内容,而不向站点发送更新请求。如果Object发生了改变,则WA将会在返回HTML页面中改变标记,使客户端浏览器缓存的内容实效,从而向站点重新发起请求获得更新内容。由于WA通常与服务器部署在同一物理位置,因此,WA向服务器发起的更新请求可以非常快速完成,从而减小了客户端在广域网上发起的更新请求。这样,既减小了网络的传输数据量,又保证了用户始终能拿到最新的内容。 简单的说,IBR就是发动浏览器,让每个客户端的浏览器都变成WA的Cache空间。WA对所有通过的流量进行分析,然
23、后把真正的动态部分和相对静态部分进行分离。让动态部分在网络上进行传输而静态部分尽量在浏览器的本地Cache,这样,当客户端再次访问同样的网页时,就无需重复下载图片、CSS、JS、文档等内容,而只需要从本地的浏览器Cache直接读取即可。随之而来的结果是:页面加载速度变快,HTTP 连接处理方面的开销减少了 90%。另外,用户和 web 服务器间的流量显著下降,下载速度提高了 10 倍或 10 倍以上(即使对于拨号用户亦是如此)。7. Express Documents加速文档下载Express Documents能够简化工作任务,并与诸如 Word、PowerPoint、Excel、PDF 以
24、及其它文档协同工作。通过充分利用边缘和浏览器高速缓存,在不影响文档精度的情况下,Express Documents能够加快频繁访问文档的存储及其服务。 和IBR类似,WA可以对每一个下载的文档打上特定的标记,在文档第一次被客户端下载时,将文档转换为静态可Cache内容,保存在客户端本地或者客户端的Proxy服务器上。使客户端可以在本地下载和打开文档。而在文档发生改变的时候,WA通过改变文档标记,使客户端或本地Proxy服务器重新获取更新后的文档。这样,极大地减小了文档本身在广域网上的传输量。另外,WebAccelerator 支持 HTTP “范围请求”,这样,大量文档可分成不同部分分别下载并立即显示,而不是等到所有内容全部下载完成才显示。诸如较大的 PDF 文件等复杂文档可在几秒
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论