TCP三次握手建立连接成功后,客户端按照指定的格式开始向服务端发送HTTP请求,服务端接收请求后,解析HTTP请求,处理完业务逻辑,最后返回一个具有标准格式的HTTP响应给客户端。
如上图所示HTTP请求格式如下所示四部分组成,分别是请求行、请求头、空行、消息体,每部分内容占一行。
请求行:由三部分组成:分别是请求方法(GET/POST/DELETE/PUT/HEAD)、URI路径、HTTP版本号。
请求头:缓存相关信息(Cache-Control,If-Modified-Since)、客户端身份信息(User-Agent)等键值对信息。
空行。
主体:客户端发给服务端的请求数据,这部分数据并不是每个请求必须的。
服务器响应HTTP请求
传输过程中不免发生传输错误,例如丢包、乱序,TCP协议在此过程中及时纠错保证数据正确到达。图中标黑的包就是发生的错误,错误是接收方通过判断收到包的序列号seq和包长度等参数是否有误发现的。