Wireshark 中的 http 协议包分析
Wireshark 可以跟踪网络协议的通讯过程,本节通过 http 协议,在了解 Wireshark 使用的基础上,重温 http 协议的通讯过程。
TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。
HTTP(HyperText Transfer Protocol,超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应用层协议,是万维网的数据通信的基础。
下图是访问百度页面的头部文件的 Wireshark 数据包截取图,以下几点说明如下:
1. 通过 tcp 的筛选条件,是由于 tcp 位于 http 协议的低层协议,可以完整抓取 http 的通讯过程。
2. 图中 10、12、13 号数据包是 tcp 的 3 次握手。
3. 从 14、15、16、17 是一个完整的 http 通讯过程。
浏览器向网页服务器发出请求,当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含 HTTP 状态码的信息头(server header)用以响应浏览器的请求。HTTP 状态码的英文为 HTTP Status Code。
五种状态码:
1xx:信息提示,表示请求已被成功接收,继续处理。
2xx:请求被成功提交。
3xx:客户端被重定向到其他资源。
4xx:客户端错误状态码,格式错误或者不存在资源。
5xx:描述服务器内部错误。
向服务器发起一个 HEAD 请求,这个方法在不必传输整个响应内容的情况下,就可以获取包含在响应消息头中的元信息。
4.图中 28、29、33、34 数据包是 tcp 的 4 次挥手。
评论