Web应用作为全球使用最多的应用,HTTP协议可谓功不可没。无论是个人博客、电子交易平台或是新闻资讯,Web站点随处可见,而后台默默无闻支撑其运行的则是HTTP协议,因此,如果要运维和优化好关键的基于Web应用的核心业务系统,掌握HTTP协议基础和工作原理,常见故障分析和性能优化等技能必不可少。
Wireshark内置了强大的HTTP协议分析功能。本节将从Wireshark本身作为工具的角度,来介绍其如何分析HTTP协议,关于HTTP协议本身的内容,后期将会详细介绍。
如何使用HTTP分析工具
点击菜单统计——HTTP,就可以看到Wireshark内置的针对HTTP的分析功能列表,一共4个,分别是分组计数器、请求、负载分配和请求序列(Request Sequences)。如下图。
分组计数器:用来了解抓包文件中HTTP数据包的总数,以及其中HTTP请求数据包和HTTP响应数据包分别为多少。
请求:用来了解(主机)请求访问的Web站点的分布情况,以及所访问的Web站点上的具体资源(指向资源的URL)。
负载分配:用来了解抓包文件中HTTP数据包(包括HTTP请求和HTTP响应数据包)在各Web站点间的分布情况(即访问过哪些web站点)。
请求序列:HTTP请求序列使用HTTP的Referer和Location头部信息,将捕获的HTTP请求排序以树状显示。该功能可以让分析人员能够看到一个HTTP请求与下一个HTTP请求的关系。
企业级应用性能管理系统如何分析HTTP
尽管Wireshark自带的HTTP分析工具功能相对比较强大,但与企业级应用分析系统功能比较,则相差甚远。企业级分析系统除了统计功能外,重点侧重于分析最终用户体验,各个页面访问延时情况,以及页面延时较大的原因分析。
简单介绍一下企业级应用性能管理系统对HTTP的分析功能,以网深科技NetInside业务性能分析系统为例。
自动统计分析
企业级系统能够自动分析HTTP的访问数量,每个页面的延时大小,慢页面比例及慢页面个数。
深入钻取分析延时问题根本原因
针对页面延时较大的根本原因分析,只需点击对应的URL信息,就能看到客户端IP地址、访问时间、访问URL、服务器响应数量、页面时间、服务器时间和网络时间等信息。