Bigip V9 新功能系列之—http 压缩
功能实现:
通过压缩Http服务器的回应内容而提高Web用户访问速度, 降低服务器回应的网络流量
试验环境:
在试验过程中先配置好VIP 并且应用http compress profile
在192.168.150.223的位置上: 直接访问不作压缩处理的服务器抓包分析 然后在211.155.162.35的位置上:
访问VIP 211.155.162.39, 压缩并负载均衡到服务器
访问192.168.150.104 通过bigip上的192.168.0.0:80的Wild Card VS 压缩并路由到服务器
F5 Networks, Inc. China Office Tel: 86-10-65052375 Fax: 86-10-65052287 Support Tel: 86-10-65052267 www.f5.com.cn
实现原理:
HTTP 压缩是一个web browsers 和 web servers常用的技术.
用户的 browser 在“Accept-Encoding:” header中通知server采用那种压缩模式. Server就可以在可协商的范围内选择其中一种方式并压缩回应的包.
Server另外插入一个“Content-Encoding:” header 显示采用的压缩方式.
用户访问采用压缩技术的VIP发出的请求包:
VIP采用压缩技术回应用户返回包:
F5 Networks, Inc. China Office Tel: 86-10-65052375 Fax: 86-10-65052287 Support Tel: 86-10-65052267 www.f5.com.cn
对比观察直接访问服务器, 而没有压缩的过程:
用户直接访问没有压缩处理的服务器的请求包:
服务器没有压缩的返回包
F5 Networks, Inc. China Office Tel: 86-10-65052375 Fax: 86-10-65052287 Support Tel: 86-10-65052267 www.f5.com.cn
实际结果
采用Sniffer抓包分析的对比结果:
1. 直接访问服务器和访问VIP with Http Compress Profile对比
2. 直接访问服务器和通过Wildcard VS with Http Compress Profile路由访问的对比
对比分析可以得出结论: 2.txt的文件在压缩和不压缩的情况下网络流量的节约是(403607-80658)/403607 = 80.0157% .
打开每个包的内容对比可以观测到的是压缩后的网络传送内容为乱码, 而非压缩的内容是可读的标准内容; 另外在返回时间上也有一个特别的注意: 压缩后的包返回时间比不压缩
F5 Networks, Inc. China Office Tel: 86-10-65052375 Fax: 86-10-65052287 Support Tel: 86-10-65052267 www.f5.com.cn
的时间反而慢, 最主要是因为压缩后的传送本来就有压缩的过程需要耗费一些时间, 关于这个问题在下面的优化中会有进一步讨论.
F5 Networks, Inc. China Office Tel: 86-10-65052375 Fax: 86-10-65052287 Support Tel: 86-10-65052267 www.f5.com.cn
压缩配置微调
针对压缩处理的微调
Minimum Content-Length for Compression - 参数调节服务器回应内容的最小
压缩长度(in bytes) .
Gzip Memory Level – 规定每个压缩回应时用来处理压缩的内存数量, 数值小的
时候就会慢, 并且压缩比例也就小, 数值大会快并且压缩比也大些.
gzip Window Size – 规定在服务器压缩回应时针对windows size (the
compression history buffer)的内存大小(in bytes). 更大的数值会提高更大的压缩比, 但也会消耗更大的内存.
Observed TCP Latency – 压缩的处理在宽带用户, 传输带宽足够快的情况下并不会
提高用户访问速度, 就像前面显示的情况, 在试验室环境内因为用户和bigip直接连接在一起, 压缩反而会造成访问的回应时间延迟的情况. 压缩技术使用的关键就是如何确认压缩对用户是更有效的, 如何区分用户是否需要压缩处理. 为了解决这个问题, F5 开发了一个关于自动探测用户连接的延迟状况, 并用来定位更适合压缩的目标用户的专利技术. 不需要任何的探测技术, bigip观察用户连接的 TCP RTT来动态计算用户连接的延迟状况. 这让BIG-IP的压缩技术为用户提供最大的实际效果.
压缩可选内容 – 在用户访问的Http Header中的URI可以判断用户访问的文件内容
的类型, 从而判断是否要压缩处理,例如: “.*\\.txt”,
“.*\\.htm” ,“.*\\.html”. ; 或从服务器回应的Http Header中的Content Types也可以判断回应的文件类型, 从而确认是否要采用压缩处理, 例如:
“application/pdf” ,“image/.*”, “text/.*”, “text/(?!css$)”等. 压缩效果比较好的:
text html
other white space rich data
压缩效果比较不好的:Images(注意, 图片一般都会出现Cache的现象)
PDFs
Other file types that are already compressed
F5 Networks, Inc. China Office Tel: 86-10-65052375 Fax: 86-10-65052287 Support Tel: 86-10-65052267 www.f5.com.cn
配置方法
先生成一个http compress 的 profile , 告诉bigip如果在这个profile的流量内要进行http 压缩处理
F5 Networks, Inc. China Office Tel: 86-10-65052375 Fax: 86-10-65052287 Support Tel: 86-10-65052267 www.f5.com.cn
F5 Networks, Inc. China Office Tel: 86-10-65052375 Fax: 86-10-65052287 Support Tel: 86-10-65052267 www.f5.com.cn
然后生成VS, 采用刚才添加的profile作为处理http流量的profile就可以了.
F5 Networks, Inc. China Office Tel: 86-10-65052375 Fax: 86-10-65052287 Support Tel: 86-10-65052267 www.f5.com.cn