wireshark抓包分析http报文

转自:https://blog.csdn.net/qq_37352183/article/details/80723372

接着分析http报文


此时前面四条和三次握手报文相差不大,应该可以看懂,我们这里主要研究hypertext transfer protocal

 其中它由以下几个部分组成

请求行+请求头+空白行+body(请求体)

请求体如下


实际上request格式如下

那么响应报文是怎样的呢


其格式为


这里我们看一下body信息


这里http从请求到返回耗时0.41339100s,request in frame:204表示此请求报文frame:204,下一个请求在frame:208,下一个响应在frame:209

以上就分析了http报文格式,我们在继续看


这里是在建立三次握手之后传输数据的数据报文,就是一方发送http报文,对方收到之后,先给出ack应答报文,之后再发送响应报文,对方收到应答报文,在会送一个响应报文。这是第一次双方收发数据,之后就是下面断开连接,或者长时间没有发送报文,必须经历三次握手,但奇怪的是服务器在给出应答报文之前没有发送ack,之后都没有,只有第一次,这种情况好像最原始情况才出现,并不是说断开连接之后在连接,第一次就会出现上述情况,所以这种情况的出现,两个报文在一起了,有知道的麻烦告知一下,可能是tcp/ip协议栈在设计时出于安全和效率考虑,某种情况下第一次连接需要服务器在发送应答报文前发送ack,之后如果某一条件没有变化,那么服务器就不需要发送ack,节约时间,而客户端必须发送ack确认服务器的响应报文已经收到。



posted @ 2019-03-18 09:27  小雨转晴  阅读(7125)  评论(0编辑  收藏  举报