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状态码的信息头(se rver header)用以响应浏览器的请求。HTTP状态码的英文为HTTP Status Code。

五种状态码:

1xx:信息提示,表示请求已被成功接收,继续处理。

2xx:请求被成功提交。

3xx:客户端被重定向到其他资源。

4xx:客户端错误状态码,格式错误或者不存在资源。

5xx:描述服务器内部错误。

向服务器发起一个HEAD请求,这个方法在不必传输整个响应内容的情况下,就可以获取包含在响应消息头中的元信息。

  1. 图中28、29、33、34数据包是tcp的4次挥手。
相关推荐
小璐猪头11 分钟前
专为 Spring Boot 设计的 Elasticsearch 日志收集 Starter
java
代码游侠17 分钟前
应用——智能配电箱监控系统
linux·服务器·数据库·笔记·算法·sqlite
Tisfy24 分钟前
网站访问耗时优化 - 从数十秒到几百毫秒的“零成本”优化过程
服务器·开发语言·性能优化·php·网站·建站
ps酷教程32 分钟前
HttpPostRequestDecoder源码浅析
java·http·netty
闲人编程32 分钟前
消息通知系统实现:构建高可用、可扩展的企业级通知服务
java·服务器·网络·python·消息队列·异步处理·分发器
XiaoHu020732 分钟前
Linux多线程(详细全解)
linux·运维·服务器·开发语言·c++·git
Xの哲學32 分钟前
Linux Platform驱动深度剖析: 从设计思想到实战解析
linux·服务器·网络·算法·边缘计算
栈与堆1 小时前
LeetCode-1-两数之和
java·数据结构·后端·python·算法·leetcode·rust
拖拉斯旋风1 小时前
从零开始:使用 Ollama 在本地部署开源大模型并集成到 React 应用
前端·javascript·ollama
gaize12131 小时前
服务器怎么选择与配置才能满足企业需求?
运维·服务器·架构